| /* 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 = []; |
| |
| // 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 ow81632121 = window; |
| var f81632121_0; |
| var o0; |
| var o1; |
| var o2; |
| var f81632121_4; |
| var f81632121_7; |
| var f81632121_11; |
| var f81632121_12; |
| var f81632121_13; |
| var f81632121_14; |
| var f81632121_15; |
| var o3; |
| var o4; |
| var o5; |
| var f81632121_49; |
| var o6; |
| var f81632121_51; |
| var o7; |
| var f81632121_53; |
| var f81632121_54; |
| var f81632121_57; |
| var f81632121_59; |
| var f81632121_60; |
| var f81632121_61; |
| var f81632121_62; |
| var f81632121_70; |
| var f81632121_71; |
| var f81632121_151; |
| var f81632121_156; |
| var f81632121_270; |
| var f81632121_417; |
| var f81632121_463; |
| var f81632121_466; |
| var f81632121_467; |
| var f81632121_468; |
| var f81632121_469; |
| var f81632121_471; |
| var o8; |
| var o9; |
| var f81632121_474; |
| var f81632121_476; |
| var o10; |
| var f81632121_478; |
| var f81632121_481; |
| var f81632121_482; |
| var o11; |
| var o12; |
| var o13; |
| var o14; |
| var o15; |
| var o16; |
| var o17; |
| var f81632121_502; |
| var f81632121_503; |
| var f81632121_504; |
| var f81632121_506; |
| var f81632121_507; |
| var f81632121_508; |
| var o18; |
| var o19; |
| var f81632121_513; |
| var o20; |
| var o21; |
| var o22; |
| var o23; |
| var o24; |
| var f81632121_521; |
| var o25; |
| var o26; |
| var o27; |
| var o28; |
| var o29; |
| var o30; |
| var o31; |
| var o32; |
| var o33; |
| var o34; |
| var fo81632121_553_firstChild; |
| var o35; |
| var o36; |
| var o37; |
| var o38; |
| var fo81632121_563_firstChild; |
| var f81632121_572; |
| var f81632121_575; |
| var f81632121_576; |
| var o39; |
| var o40; |
| var fo81632121_582_firstChild; |
| var f81632121_585; |
| var f81632121_598; |
| var o41; |
| var f81632121_602; |
| var o42; |
| var o43; |
| var f81632121_645; |
| var fo81632121_700_firstChild; |
| var o44; |
| var o45; |
| var o46; |
| var o47; |
| var fo81632121_795_firstChild; |
| var o48; |
| var o49; |
| var o50; |
| var o51; |
| var fo81632121_897_firstChild; |
| var o52; |
| var o53; |
| var o54; |
| var o55; |
| var o56; |
| var o57; |
| var o58; |
| var o59; |
| var f81632121_1000; |
| var fo81632121_1_cookie; |
| var o60; |
| var f81632121_1002; |
| var o61; |
| var f81632121_1005; |
| var o62; |
| var f81632121_1007; |
| var o63; |
| var o64; |
| var o65; |
| var o66; |
| var o67; |
| var o68; |
| var o69; |
| var o70; |
| var o71; |
| var o72; |
| var o73; |
| var o74; |
| var o75; |
| var o76; |
| var o77; |
| var o78; |
| var o79; |
| var o80; |
| var o81; |
| var o82; |
| var o83; |
| var o84; |
| var o85; |
| var f81632121_1110; |
| var f81632121_1111; |
| var f81632121_1112; |
| var f81632121_1114; |
| var f81632121_1117; |
| var f81632121_1118; |
| var f81632121_1122; |
| var f81632121_1123; |
| var f81632121_1124; |
| var f81632121_1126; |
| var f81632121_1127; |
| var f81632121_1156; |
| var f81632121_1157; |
| var fo81632121_1165_firstChild; |
| var o86; |
| var o87; |
| var fo81632121_1201_firstChild; |
| var o88; |
| var o89; |
| var o90; |
| var o91; |
| var o92; |
| var o93; |
| var o94; |
| var o95; |
| var fo81632121_1218_firstChild; |
| var o96; |
| var o97; |
| var f81632121_1294; |
| var f81632121_1295; |
| var f81632121_1296; |
| var f81632121_1298; |
| var o98; |
| var o99; |
| var o100; |
| var o101; |
| var o102; |
| var o103; |
| var o104; |
| var o105; |
| var o106; |
| var o107; |
| var o108; |
| var o109; |
| var o110; |
| var o111; |
| var o112; |
| var o113; |
| var o114; |
| var o115; |
| var o116; |
| var o117; |
| var f81632121_1332; |
| var f81632121_1333; |
| var f81632121_1334; |
| var o118; |
| var f81632121_1336; |
| var f81632121_1337; |
| var f81632121_1338; |
| var f81632121_1339; |
| var f81632121_1340; |
| var f81632121_1341; |
| var f81632121_1342; |
| var o119; |
| var f81632121_1344; |
| var o120; |
| var f81632121_1347; |
| var f81632121_1348; |
| var f81632121_1349; |
| var f81632121_1350; |
| var f81632121_1351; |
| var f81632121_1352; |
| var f81632121_1353; |
| var f81632121_1355; |
| var o121; |
| var o122; |
| var o123; |
| var o124; |
| var o125; |
| var o126; |
| var o127; |
| var o128; |
| var o129; |
| var o130; |
| var o131; |
| var o132; |
| var o133; |
| var f81632121_1398; |
| var f81632121_1413; |
| var f81632121_1417; |
| var f81632121_1418; |
| var o134; |
| var o135; |
| var o136; |
| var o137; |
| var o138; |
| var fo81632121_1423_firstChild; |
| var o139; |
| var f81632121_1442; |
| var o140; |
| var o141; |
| var o142; |
| var o143; |
| var o144; |
| var f81632121_1457; |
| var o145; |
| var o146; |
| var fo81632121_1467_style; |
| var fo81632121_1465_style; |
| var f81632121_1481; |
| var o147; |
| var o148; |
| var fo81632121_1527_firstChild; |
| var fo81632121_1562_firstChild; |
| var f81632121_1608; |
| var f81632121_1610; |
| var f81632121_1611; |
| var f81632121_1612; |
| var f81632121_1613; |
| var f81632121_1615; |
| var f81632121_1616; |
| var f81632121_1617; |
| var f81632121_1619; |
| var f81632121_1620; |
| var f81632121_1622; |
| var f81632121_1624; |
| var f81632121_1626; |
| var f81632121_1629; |
| var f81632121_1630; |
| var f81632121_1631; |
| var f81632121_1632; |
| var f81632121_1633; |
| var f81632121_1634; |
| var f81632121_1636; |
| var f81632121_1638; |
| var o149; |
| var f81632121_1640; |
| var f81632121_1642; |
| var f81632121_1644; |
| var o150; |
| var f81632121_1646; |
| var o151; |
| var f81632121_1648; |
| var f81632121_1659; |
| var f81632121_1662; |
| var o152; |
| var o153; |
| var o154; |
| var o155; |
| var f81632121_1669; |
| var o156; |
| var o157; |
| var o158; |
| var f81632121_1673; |
| var f81632121_1674; |
| var o159; |
| var o160; |
| var o161; |
| var o162; |
| var o163; |
| var o164; |
| var o165; |
| var o166; |
| var o167; |
| var o168; |
| var o169; |
| var o170; |
| var f81632121_1731; |
| var o171; |
| var o172; |
| var o173; |
| var o174; |
| var o175; |
| var o176; |
| var f81632121_1740; |
| var o177; |
| var o178; |
| var o179; |
| var o180; |
| var f81632121_1746; |
| var o181; |
| var f81632121_1756; |
| var o182; |
| var o183; |
| var o184; |
| var o185; |
| var o186; |
| var o187; |
| var o188; |
| var o189; |
| var fo81632121_1605_readyState; |
| var f81632121_1821; |
| var f81632121_1852; |
| var f81632121_1871; |
| var o190; |
| var f81632121_2117; |
| var f81632121_2118; |
| var f81632121_2129; |
| var f81632121_2135; |
| var f81632121_2141; |
| var f81632121_2143; |
| var o191; |
| var o192; |
| var o193; |
| var o194; |
| var o195; |
| var o196; |
| var f81632121_2152; |
| var f81632121_2153; |
| var f81632121_2154; |
| var f81632121_2155; |
| var f81632121_2156; |
| var f81632121_2160; |
| var o197; |
| var o198; |
| var o199; |
| var o200; |
| var f81632121_2241; |
| var fo81632121_2264_firstChild; |
| var f81632121_2270; |
| var fo81632121_2240_Shockwave_Flash; |
| var fo81632121_2273_application_x_shockwave_flash; |
| var f81632121_2281; |
| var f81632121_2446; |
| var f81632121_2447; |
| var f81632121_2709; |
| var f81632121_2710; |
| var f81632121_2711; |
| var f81632121_2758; |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1 = []; |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199 = []; |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_175 = []; |
| JSBNG_Replay.s1da4c91f736d950de61ac9962e5a050e9ae4a4ed_565 = []; |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_178 = []; |
| JSBNG_Replay.s1da4c91f736d950de61ac9962e5a050e9ae4a4ed_104 = []; |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_231 = []; |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_234 = []; |
| JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286 = []; |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_55 = []; |
| JSBNG_Replay.sb400e2fc5b4578cec05af7646f5430d8d67f9e1b_61 = []; |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_413 = []; |
| JSBNG_Replay.s5f7fb1571d9ddaabf0918a66ba121ad96869441c_256 = []; |
| JSBNG_Replay.s1406cdb8f82a4497c9e210b291001f76845e62bf_379 = []; |
| JSBNG_Replay.s1406cdb8f82a4497c9e210b291001f76845e62bf_361 = []; |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_404 = []; |
| JSBNG_Replay.s745724cb144ffb0314d39065d8a453b0cfbd0f73_148 = []; |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_235 = []; |
| // 1 |
| // record generated by JSBench 59c4c1419900 at 2013-07-26T15:05:50.801Z |
| // 2 |
| // 3 |
| f81632121_0 = function() { return f81632121_0.returns[f81632121_0.inst++]; }; |
| f81632121_0.returns = []; |
| f81632121_0.inst = 0; |
| // 4 |
| ow81632121.JSBNG__Date = f81632121_0; |
| // 5 |
| o0 = {}; |
| // 6 |
| ow81632121.JSBNG__document = o0; |
| // 7 |
| o1 = {}; |
| // 8 |
| ow81632121.JSBNG__sessionStorage = o1; |
| // 9 |
| o2 = {}; |
| // 10 |
| ow81632121.JSBNG__localStorage = o2; |
| // 11 |
| f81632121_4 = function() { return f81632121_4.returns[f81632121_4.inst++]; }; |
| f81632121_4.returns = []; |
| f81632121_4.inst = 0; |
| // 12 |
| ow81632121.JSBNG__getComputedStyle = f81632121_4; |
| // 17 |
| f81632121_7 = function() { return f81632121_7.returns[f81632121_7.inst++]; }; |
| f81632121_7.returns = []; |
| f81632121_7.inst = 0; |
| // 18 |
| ow81632121.JSBNG__addEventListener = f81632121_7; |
| // 19 |
| ow81632121.JSBNG__top = ow81632121; |
| // 24 |
| ow81632121.JSBNG__scrollX = 0; |
| // 25 |
| ow81632121.JSBNG__scrollY = 0; |
| // 28 |
| f81632121_11 = function() { return f81632121_11.returns[f81632121_11.inst++]; }; |
| f81632121_11.returns = []; |
| f81632121_11.inst = 0; |
| // 29 |
| ow81632121.JSBNG__scrollBy = f81632121_11; |
| // 30 |
| f81632121_12 = function() { return f81632121_12.returns[f81632121_12.inst++]; }; |
| f81632121_12.returns = []; |
| f81632121_12.inst = 0; |
| // 31 |
| ow81632121.JSBNG__setTimeout = f81632121_12; |
| // 32 |
| f81632121_13 = function() { return f81632121_13.returns[f81632121_13.inst++]; }; |
| f81632121_13.returns = []; |
| f81632121_13.inst = 0; |
| // 33 |
| ow81632121.JSBNG__setInterval = f81632121_13; |
| // 34 |
| f81632121_14 = function() { return f81632121_14.returns[f81632121_14.inst++]; }; |
| f81632121_14.returns = []; |
| f81632121_14.inst = 0; |
| // 35 |
| ow81632121.JSBNG__clearTimeout = f81632121_14; |
| // 36 |
| f81632121_15 = function() { return f81632121_15.returns[f81632121_15.inst++]; }; |
| f81632121_15.returns = []; |
| f81632121_15.inst = 0; |
| // 37 |
| ow81632121.JSBNG__clearInterval = f81632121_15; |
| // 42 |
| ow81632121.JSBNG__frames = ow81632121; |
| // 45 |
| ow81632121.JSBNG__self = ow81632121; |
| // 46 |
| o3 = {}; |
| // 47 |
| ow81632121.JSBNG__navigator = o3; |
| // 50 |
| o4 = {}; |
| // 51 |
| ow81632121.JSBNG__history = o4; |
| // 62 |
| ow81632121.JSBNG__closed = false; |
| // 65 |
| ow81632121.JSBNG__opener = null; |
| // 66 |
| ow81632121.JSBNG__defaultStatus = ""; |
| // 67 |
| o5 = {}; |
| // 68 |
| ow81632121.JSBNG__location = o5; |
| // 69 |
| ow81632121.JSBNG__innerWidth = 1034; |
| // 70 |
| ow81632121.JSBNG__innerHeight = 727; |
| // 71 |
| ow81632121.JSBNG__outerWidth = 1050; |
| // 72 |
| ow81632121.JSBNG__outerHeight = 840; |
| // 73 |
| ow81632121.JSBNG__screenX = 60; |
| // 74 |
| ow81632121.JSBNG__screenY = 60; |
| // 75 |
| ow81632121.JSBNG__pageXOffset = 0; |
| // 76 |
| ow81632121.JSBNG__pageYOffset = 0; |
| // 101 |
| ow81632121.JSBNG__frameElement = null; |
| // 118 |
| f81632121_49 = function() { return f81632121_49.returns[f81632121_49.inst++]; }; |
| f81632121_49.returns = []; |
| f81632121_49.inst = 0; |
| // 119 |
| ow81632121.JSBNG__webkitIDBTransaction = f81632121_49; |
| // 120 |
| o6 = {}; |
| // 121 |
| ow81632121.JSBNG__webkitNotifications = o6; |
| // 122 |
| f81632121_51 = function() { return f81632121_51.returns[f81632121_51.inst++]; }; |
| f81632121_51.returns = []; |
| f81632121_51.inst = 0; |
| // 123 |
| ow81632121.JSBNG__webkitIDBIndex = f81632121_51; |
| // 124 |
| o7 = {}; |
| // 125 |
| ow81632121.JSBNG__webkitIndexedDB = o7; |
| // 126 |
| ow81632121.JSBNG__screenLeft = 60; |
| // 127 |
| f81632121_53 = function() { return f81632121_53.returns[f81632121_53.inst++]; }; |
| f81632121_53.returns = []; |
| f81632121_53.inst = 0; |
| // 128 |
| ow81632121.JSBNG__webkitIDBFactory = f81632121_53; |
| // 129 |
| ow81632121.JSBNG__clientInformation = o3; |
| // 130 |
| f81632121_54 = function() { return f81632121_54.returns[f81632121_54.inst++]; }; |
| f81632121_54.returns = []; |
| f81632121_54.inst = 0; |
| // 131 |
| ow81632121.JSBNG__webkitIDBCursor = f81632121_54; |
| // 132 |
| ow81632121.JSBNG__defaultstatus = ""; |
| // 137 |
| f81632121_57 = function() { return f81632121_57.returns[f81632121_57.inst++]; }; |
| f81632121_57.returns = []; |
| f81632121_57.inst = 0; |
| // 138 |
| ow81632121.JSBNG__webkitIDBDatabase = f81632121_57; |
| // 141 |
| f81632121_59 = function() { return f81632121_59.returns[f81632121_59.inst++]; }; |
| f81632121_59.returns = []; |
| f81632121_59.inst = 0; |
| // 142 |
| ow81632121.JSBNG__webkitIDBRequest = f81632121_59; |
| // 143 |
| f81632121_60 = function() { return f81632121_60.returns[f81632121_60.inst++]; }; |
| f81632121_60.returns = []; |
| f81632121_60.inst = 0; |
| // 144 |
| ow81632121.JSBNG__webkitIDBObjectStore = f81632121_60; |
| // 145 |
| ow81632121.JSBNG__devicePixelRatio = 1; |
| // 146 |
| f81632121_61 = function() { return f81632121_61.returns[f81632121_61.inst++]; }; |
| f81632121_61.returns = []; |
| f81632121_61.inst = 0; |
| // 147 |
| ow81632121.JSBNG__webkitURL = f81632121_61; |
| // 148 |
| f81632121_62 = function() { return f81632121_62.returns[f81632121_62.inst++]; }; |
| f81632121_62.returns = []; |
| f81632121_62.inst = 0; |
| // 149 |
| ow81632121.JSBNG__webkitIDBKeyRange = f81632121_62; |
| // 150 |
| ow81632121.JSBNG__offscreenBuffering = true; |
| // 151 |
| ow81632121.JSBNG__screenTop = 60; |
| // 166 |
| f81632121_70 = function() { return f81632121_70.returns[f81632121_70.inst++]; }; |
| f81632121_70.returns = []; |
| f81632121_70.inst = 0; |
| // 167 |
| ow81632121.JSBNG__XMLHttpRequest = f81632121_70; |
| // 168 |
| f81632121_71 = function() { return f81632121_71.returns[f81632121_71.inst++]; }; |
| f81632121_71.returns = []; |
| f81632121_71.inst = 0; |
| // 169 |
| ow81632121.JSBNG__Image = f81632121_71; |
| // 170 |
| ow81632121.JSBNG__URL = f81632121_61; |
| // 171 |
| ow81632121.JSBNG__name = ""; |
| // 178 |
| ow81632121.JSBNG__status = ""; |
| // 331 |
| f81632121_151 = function() { return f81632121_151.returns[f81632121_151.inst++]; }; |
| f81632121_151.returns = []; |
| f81632121_151.inst = 0; |
| // 332 |
| ow81632121.JSBNG__WebKitTransitionEvent = f81632121_151; |
| // 341 |
| f81632121_156 = function() { return f81632121_156.returns[f81632121_156.inst++]; }; |
| f81632121_156.returns = []; |
| f81632121_156.inst = 0; |
| // 342 |
| ow81632121.JSBNG__Document = f81632121_156; |
| // 569 |
| f81632121_270 = function() { return f81632121_270.returns[f81632121_270.inst++]; }; |
| f81632121_270.returns = []; |
| f81632121_270.inst = 0; |
| // 570 |
| ow81632121.JSBNG__Event = f81632121_270; |
| // 615 |
| ow81632121.JSBNG__XMLDocument = f81632121_156; |
| // 834 |
| ow81632121.JSBNG__TEMPORARY = 0; |
| // 835 |
| ow81632121.JSBNG__PERSISTENT = 1; |
| // 866 |
| f81632121_417 = function() { return f81632121_417.returns[f81632121_417.inst++]; }; |
| f81632121_417.returns = []; |
| f81632121_417.inst = 0; |
| // 867 |
| ow81632121.JSBNG__WebKitMutationObserver = f81632121_417; |
| // 886 |
| ow81632121.JSBNG__indexedDB = o7; |
| // undefined |
| o7 = null; |
| // 887 |
| o7 = {}; |
| // 888 |
| ow81632121.JSBNG__Intl = o7; |
| // 889 |
| ow81632121.JSBNG__v8Intl = o7; |
| // undefined |
| o7 = null; |
| // 940 |
| ow81632121.JSBNG__IDBTransaction = f81632121_49; |
| // 941 |
| ow81632121.JSBNG__IDBRequest = f81632121_59; |
| // 944 |
| ow81632121.JSBNG__IDBObjectStore = f81632121_60; |
| // 945 |
| ow81632121.JSBNG__IDBKeyRange = f81632121_62; |
| // 946 |
| ow81632121.JSBNG__IDBIndex = f81632121_51; |
| // 947 |
| ow81632121.JSBNG__IDBFactory = f81632121_53; |
| // 948 |
| ow81632121.JSBNG__IDBDatabase = f81632121_57; |
| // 951 |
| ow81632121.JSBNG__IDBCursor = f81632121_54; |
| // 952 |
| ow81632121.JSBNG__MutationObserver = f81632121_417; |
| // 953 |
| ow81632121.JSBNG__TransitionEvent = f81632121_151; |
| // 970 |
| f81632121_463 = function() { return f81632121_463.returns[f81632121_463.inst++]; }; |
| f81632121_463.returns = []; |
| f81632121_463.inst = 0; |
| // 971 |
| ow81632121.JSBNG__requestAnimationFrame = f81632121_463; |
| // 974 |
| ow81632121.JSBNG__onerror = null; |
| // 977 |
| f81632121_466 = function() { return f81632121_466.returns[f81632121_466.inst++]; }; |
| f81632121_466.returns = []; |
| f81632121_466.inst = 0; |
| // 978 |
| ow81632121.Math.JSBNG__random = f81632121_466; |
| // 979 |
| // 983 |
| f81632121_467 = function() { return f81632121_467.returns[f81632121_467.inst++]; }; |
| f81632121_467.returns = []; |
| f81632121_467.inst = 0; |
| // 984 |
| f81632121_0.now = f81632121_467; |
| // 985 |
| f81632121_467.returns.push(1374851210822); |
| // 986 |
| o5.search = ""; |
| // 1001 |
| // 1002 |
| // 1004 |
| f81632121_468 = function() { return f81632121_468.returns[f81632121_468.inst++]; }; |
| f81632121_468.returns = []; |
| f81632121_468.inst = 0; |
| // 1005 |
| o0.JSBNG__addEventListener = f81632121_468; |
| // 1006 |
| o3.userAgent = "Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.72 Safari/537.36"; |
| // 1008 |
| f81632121_468.returns.push(undefined); |
| // 1009 |
| f81632121_469 = function() { return f81632121_469.returns[f81632121_469.inst++]; }; |
| f81632121_469.returns = []; |
| f81632121_469.inst = 0; |
| // 1010 |
| ow81632121.JSBNG__onload = f81632121_469; |
| // 1018 |
| o7 = {}; |
| // 1025 |
| o0.documentMode = void 0; |
| // 1027 |
| f81632121_471 = function() { return f81632121_471.returns[f81632121_471.inst++]; }; |
| f81632121_471.returns = []; |
| f81632121_471.inst = 0; |
| // 1028 |
| o0.getElementsByTagName = f81632121_471; |
| // 1029 |
| o8 = {}; |
| // 1030 |
| f81632121_471.returns.push(o8); |
| // 1031 |
| o8.length = 1; |
| // 1032 |
| o9 = {}; |
| // 1033 |
| o8["0"] = o9; |
| // undefined |
| o8 = null; |
| // 1034 |
| f81632121_474 = function() { return f81632121_474.returns[f81632121_474.inst++]; }; |
| f81632121_474.returns = []; |
| f81632121_474.inst = 0; |
| // 1035 |
| o0.createDocumentFragment = f81632121_474; |
| // 1036 |
| o8 = {}; |
| // 1037 |
| f81632121_474.returns.push(o8); |
| // 1039 |
| f81632121_467.returns.push(1374851210834); |
| // 1040 |
| f81632121_476 = function() { return f81632121_476.returns[f81632121_476.inst++]; }; |
| f81632121_476.returns = []; |
| f81632121_476.inst = 0; |
| // 1041 |
| o0.createElement = f81632121_476; |
| // 1042 |
| o10 = {}; |
| // 1043 |
| f81632121_476.returns.push(o10); |
| // 1044 |
| // 1045 |
| // 1046 |
| // 1047 |
| // 1048 |
| // 1049 |
| // 1050 |
| f81632121_478 = function() { return f81632121_478.returns[f81632121_478.inst++]; }; |
| f81632121_478.returns = []; |
| f81632121_478.inst = 0; |
| // 1051 |
| o8.appendChild = f81632121_478; |
| // 1052 |
| f81632121_478.returns.push(o10); |
| // undefined |
| o10 = null; |
| // 1054 |
| f81632121_467.returns.push(1374851210835); |
| // 1056 |
| o10 = {}; |
| // 1057 |
| f81632121_476.returns.push(o10); |
| // 1058 |
| // 1059 |
| // 1060 |
| // 1061 |
| // 1062 |
| // 1063 |
| // 1065 |
| f81632121_478.returns.push(o10); |
| // undefined |
| o10 = null; |
| // 1067 |
| f81632121_467.returns.push(1374851210835); |
| // 1069 |
| o10 = {}; |
| // 1070 |
| f81632121_476.returns.push(o10); |
| // 1071 |
| // 1072 |
| // 1073 |
| // 1074 |
| // 1075 |
| // 1076 |
| // 1078 |
| f81632121_478.returns.push(o10); |
| // undefined |
| o10 = null; |
| // 1079 |
| o9.appendChild = f81632121_478; |
| // 1080 |
| f81632121_478.returns.push(o8); |
| // undefined |
| o8 = null; |
| // 1089 |
| f81632121_466.returns.push(0.8583255198318511); |
| // 1090 |
| f81632121_481 = function() { return f81632121_481.returns[f81632121_481.inst++]; }; |
| f81632121_481.returns = []; |
| f81632121_481.inst = 0; |
| // 1091 |
| ow81632121.JSBNG__onunload = f81632121_481; |
| // 1093 |
| f81632121_467.returns.push(1374851212533); |
| // 1094 |
| f81632121_482 = function() { return f81632121_482.returns[f81632121_482.inst++]; }; |
| f81632121_482.returns = []; |
| f81632121_482.inst = 0; |
| // 1095 |
| o1.getItem = f81632121_482; |
| // 1096 |
| f81632121_482.returns.push(null); |
| // 1098 |
| f81632121_467.returns.push(1374851212534); |
| // 1099 |
| f81632121_14.returns.push(undefined); |
| // 1100 |
| f81632121_12.returns.push(1); |
| // 1104 |
| o8 = {}; |
| // 1105 |
| o0.documentElement = o8; |
| // 1106 |
| o8.className = "highContrast no_js"; |
| // 1107 |
| // 1109 |
| o0.domain = "jsbngssl.www.facebook.com"; |
| // 1110 |
| // 1112 |
| o5.href = "https://www.facebook.com/LawlabeeTheWallaby"; |
| // 1117 |
| // 1118 |
| o10 = {}; |
| // 1119 |
| f81632121_270.prototype = o10; |
| // 1121 |
| // 1122 |
| // 1123 |
| // 1124 |
| // 1125 |
| // 1126 |
| // 1128 |
| // 1129 |
| // 1130 |
| // 1131 |
| // 1132 |
| // 1133 |
| // undefined |
| o10 = null; |
| // 1134 |
| // 1135 |
| // 1136 |
| // 1137 |
| // 1138 |
| // 1139 |
| // 1140 |
| // 1141 |
| // 1142 |
| // 1143 |
| // 1144 |
| // 1145 |
| o3.msPointerEnabled = void 0; |
| // 1147 |
| // 1148 |
| // 1149 |
| o10 = {}; |
| // 1150 |
| o11 = {}; |
| // 1152 |
| o10.nodeType = void 0; |
| // 1153 |
| o10.length = 1; |
| // 1154 |
| o10["0"] = "OH3xD"; |
| // 1159 |
| o12 = {}; |
| // 1160 |
| o13 = {}; |
| // 1162 |
| o12.nodeType = void 0; |
| // 1163 |
| o12.length = 1; |
| // 1164 |
| o12["0"] = "XH2Cu"; |
| // 1169 |
| o14 = {}; |
| // 1170 |
| o15 = {}; |
| // 1172 |
| o14.nodeType = void 0; |
| // 1173 |
| o14.length = 1; |
| // 1174 |
| o14["0"] = "ociRJ"; |
| // 1205 |
| o16 = {}; |
| // 1206 |
| f81632121_471.returns.push(o16); |
| // 1207 |
| o16.length = 9; |
| // 1208 |
| o17 = {}; |
| // 1209 |
| o16["0"] = o17; |
| // 1210 |
| o17.rel = "alternate"; |
| // undefined |
| o17 = null; |
| // 1212 |
| o17 = {}; |
| // 1213 |
| o16["1"] = o17; |
| // 1214 |
| o17.rel = "stylesheet"; |
| // 1216 |
| o17.href = "http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yM/r/IqonxdwHUtT.css"; |
| // undefined |
| o17 = null; |
| // 1225 |
| o17 = {}; |
| // 1226 |
| o16["2"] = o17; |
| // 1227 |
| o17.rel = "stylesheet"; |
| // 1229 |
| o17.href = "http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yP/r/9mw4nQDxDC9.css"; |
| // undefined |
| o17 = null; |
| // 1238 |
| o17 = {}; |
| // 1239 |
| o16["3"] = o17; |
| // 1240 |
| o17.rel = "stylesheet"; |
| // 1242 |
| o17.href = "http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y1/r/i2fjJiK4liE.css"; |
| // undefined |
| o17 = null; |
| // 1245 |
| o17 = {}; |
| // 1246 |
| o16["4"] = o17; |
| // 1247 |
| o17.rel = "stylesheet"; |
| // 1249 |
| o17.href = "http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yL/r/OO7ppcHlCNm.css"; |
| // undefined |
| o17 = null; |
| // 1254 |
| o17 = {}; |
| // 1255 |
| o16["5"] = o17; |
| // 1256 |
| o17.rel = "stylesheet"; |
| // 1258 |
| o17.href = "http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yi/r/4oH7eQzJjdc.css"; |
| // undefined |
| o17 = null; |
| // 1263 |
| o17 = {}; |
| // 1264 |
| o16["6"] = o17; |
| // 1265 |
| o17.rel = "stylesheet"; |
| // 1267 |
| o17.href = "http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/ys/r/1DOzCljCl3K.css"; |
| // undefined |
| o17 = null; |
| // 1272 |
| o17 = {}; |
| // 1273 |
| o16["7"] = o17; |
| // 1274 |
| o17.rel = "shortcut icon"; |
| // undefined |
| o17 = null; |
| // 1276 |
| o17 = {}; |
| // 1277 |
| o16["8"] = o17; |
| // undefined |
| o16 = null; |
| // 1278 |
| o17.rel = "stylesheet"; |
| // 1280 |
| o17.href = "http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yD/r/OWwnO_yMqhK.css"; |
| // undefined |
| o17 = null; |
| // 1360 |
| f81632121_467.returns.push(1374851214075); |
| // 1362 |
| f81632121_467.returns.push(1374851214075); |
| // 1363 |
| f81632121_14.returns.push(undefined); |
| // 1364 |
| f81632121_12.returns.push(2); |
| // 1369 |
| f81632121_467.returns.push(1374851214076); |
| // 1370 |
| o16 = {}; |
| // 1371 |
| o0.body = o16; |
| // 1372 |
| f81632121_502 = function() { return f81632121_502.returns[f81632121_502.inst++]; }; |
| f81632121_502.returns = []; |
| f81632121_502.inst = 0; |
| // 1373 |
| o16.getElementsByTagName = f81632121_502; |
| // 1374 |
| f81632121_503 = function() { return f81632121_503.returns[f81632121_503.inst++]; }; |
| f81632121_503.returns = []; |
| f81632121_503.inst = 0; |
| // 1375 |
| o0.querySelectorAll = f81632121_503; |
| // 1376 |
| f81632121_504 = function() { return f81632121_504.returns[f81632121_504.inst++]; }; |
| f81632121_504.returns = []; |
| f81632121_504.inst = 0; |
| // 1377 |
| o16.querySelectorAll = f81632121_504; |
| // 1378 |
| o17 = {}; |
| // 1379 |
| f81632121_504.returns.push(o17); |
| // 1380 |
| o17.length = 0; |
| // undefined |
| o17 = null; |
| // 1381 |
| f81632121_14.returns.push(undefined); |
| // 1382 |
| f81632121_12.returns.push(3); |
| // 1388 |
| o8.clientWidth = 1017; |
| // 1404 |
| o8.nodeName = "HTML"; |
| // 1405 |
| o8.__FB_TOKEN = void 0; |
| // 1406 |
| // 1407 |
| f81632121_506 = function() { return f81632121_506.returns[f81632121_506.inst++]; }; |
| f81632121_506.returns = []; |
| f81632121_506.inst = 0; |
| // 1408 |
| o8.getAttribute = f81632121_506; |
| // 1409 |
| f81632121_507 = function() { return f81632121_507.returns[f81632121_507.inst++]; }; |
| f81632121_507.returns = []; |
| f81632121_507.inst = 0; |
| // 1410 |
| o8.hasAttribute = f81632121_507; |
| // 1412 |
| f81632121_507.returns.push(false); |
| // 1413 |
| o8.JSBNG__addEventListener = f81632121_468; |
| // 1415 |
| f81632121_468.returns.push(undefined); |
| // 1416 |
| o8.JSBNG__onmousewheel = null; |
| // 1421 |
| f81632121_508 = function() { return f81632121_508.returns[f81632121_508.inst++]; }; |
| f81632121_508.returns = []; |
| f81632121_508.inst = 0; |
| // 1422 |
| o0.getElementById = f81632121_508; |
| // 1423 |
| o17 = {}; |
| // 1424 |
| f81632121_508.returns.push(o17); |
| // 1425 |
| o17.getElementsByTagName = f81632121_502; |
| // 1427 |
| o17.querySelectorAll = f81632121_504; |
| // 1428 |
| o18 = {}; |
| // 1429 |
| f81632121_504.returns.push(o18); |
| // 1430 |
| o18.length = 1; |
| // 1431 |
| o19 = {}; |
| // 1432 |
| o18["0"] = o19; |
| // undefined |
| o18 = null; |
| // 1433 |
| o19.value = "Gregor Richards"; |
| // 1434 |
| o18 = {}; |
| // 1435 |
| o19.classList = o18; |
| // 1437 |
| f81632121_513 = function() { return f81632121_513.returns[f81632121_513.inst++]; }; |
| f81632121_513.returns = []; |
| f81632121_513.inst = 0; |
| // 1438 |
| o18.contains = f81632121_513; |
| // 1439 |
| f81632121_513.returns.push(false); |
| // 1445 |
| o0.activeElement = o16; |
| // 1447 |
| o16.getAttribute = f81632121_506; |
| // 1448 |
| f81632121_506.returns.push(null); |
| // 1450 |
| f81632121_506.returns.push(null); |
| // 1454 |
| f81632121_468.returns.push(undefined); |
| // 1456 |
| f81632121_468.returns.push(undefined); |
| // 1469 |
| // 1470 |
| // 1471 |
| // 1474 |
| f81632121_468.returns.push(undefined); |
| // 1484 |
| f81632121_467.returns.push(1374851214103); |
| // 1490 |
| f81632121_467.returns.push(1374851214104); |
| // 1492 |
| f81632121_467.returns.push(1374851214104); |
| // 1496 |
| f81632121_467.returns.push(1374851214105); |
| // 1499 |
| f81632121_467.returns.push(1374851214105); |
| // 1502 |
| f81632121_467.returns.push(1374851214105); |
| // 1504 |
| f81632121_467.returns.push(1374851214105); |
| // 1508 |
| o20 = {}; |
| // 1509 |
| f81632121_474.returns.push(o20); |
| // 1511 |
| f81632121_467.returns.push(1374851214106); |
| // 1512 |
| o0.createStyleSheet = void 0; |
| // 1514 |
| o21 = {}; |
| // 1515 |
| f81632121_476.returns.push(o21); |
| // 1516 |
| // 1517 |
| // 1518 |
| // 1520 |
| o22 = {}; |
| // 1521 |
| f81632121_476.returns.push(o22); |
| // 1522 |
| // 1523 |
| o20.appendChild = f81632121_478; |
| // 1524 |
| f81632121_478.returns.push(o22); |
| // 1526 |
| f81632121_467.returns.push(1374851214112); |
| // 1527 |
| f81632121_13.returns.push(4); |
| // 1529 |
| o23 = {}; |
| // 1530 |
| f81632121_476.returns.push(o23); |
| // 1531 |
| // 1532 |
| // 1533 |
| // 1535 |
| f81632121_478.returns.push(o23); |
| // 1537 |
| f81632121_478.returns.push(o21); |
| // undefined |
| o21 = null; |
| // 1539 |
| f81632121_478.returns.push(o20); |
| // undefined |
| o20 = null; |
| // 1542 |
| f81632121_467.returns.push(1374851214114); |
| // 1548 |
| f81632121_467.returns.push(1374851214115); |
| // 1550 |
| f81632121_467.returns.push(1374851214115); |
| // 1554 |
| f81632121_467.returns.push(1374851214116); |
| // 1557 |
| f81632121_467.returns.push(1374851214119); |
| // 1560 |
| f81632121_467.returns.push(1374851214119); |
| // 1562 |
| o20 = {}; |
| // 1563 |
| f81632121_508.returns.push(o20); |
| // 1565 |
| o21 = {}; |
| // 1566 |
| f81632121_508.returns.push(o21); |
| // 1567 |
| o24 = {}; |
| // 1568 |
| o21.firstChild = o24; |
| // 1570 |
| o24.nodeType = 8; |
| // 1572 |
| o24.nodeValue = " <div id=\"pagelet_main_column_personal\" data-referrer=\"pagelet_main_column_personal_timeline\"></div> "; |
| // undefined |
| o24 = null; |
| // 1573 |
| o21.parentNode = o16; |
| // 1574 |
| f81632121_521 = function() { return f81632121_521.returns[f81632121_521.inst++]; }; |
| f81632121_521.returns = []; |
| f81632121_521.inst = 0; |
| // 1575 |
| o16.removeChild = f81632121_521; |
| // 1576 |
| f81632121_521.returns.push(o21); |
| // undefined |
| o21 = null; |
| // 1577 |
| // 1578 |
| o20.getAttribute = f81632121_506; |
| // 1579 |
| f81632121_506.returns.push("pagelet_timeline_main_column"); |
| // 1582 |
| f81632121_467.returns.push(1374851214121); |
| // 1586 |
| o21 = {}; |
| // 1587 |
| f81632121_474.returns.push(o21); |
| // 1589 |
| f81632121_478.returns.push(o21); |
| // undefined |
| o21 = null; |
| // 1595 |
| f81632121_467.returns.push(1374851214131); |
| // 1597 |
| f81632121_467.returns.push(1374851214132); |
| // 1601 |
| f81632121_467.returns.push(1374851214132); |
| // 1604 |
| f81632121_467.returns.push(1374851214132); |
| // 1607 |
| f81632121_467.returns.push(1374851214132); |
| // 1609 |
| o21 = {}; |
| // 1610 |
| f81632121_508.returns.push(o21); |
| // 1612 |
| o24 = {}; |
| // 1613 |
| f81632121_508.returns.push(o24); |
| // 1614 |
| o25 = {}; |
| // 1615 |
| o24.firstChild = o25; |
| // 1617 |
| o25.nodeType = 8; |
| // 1619 |
| o25.nodeValue = " <div class=\"fbTimelineTopSectionBase -cx-PRIVATE-fbTimelineLightHeader__root -cx-PUBLIC-fbTimelineLightHeader__loading\"><div id=\"pagelet_above_header_timeline\" data-referrer=\"pagelet_above_header_timeline\"></div><div id=\"above_header_timeline_placeholder\"></div><div class=\"fbTimelineSection mtm fbTimelineTopSection\"><div id=\"fbProfileCover\"><div class=\"cover\" id=\"u_0_j\"><a class=\"coverWrap coverImage\" href=\"http://jsbngssl.www.facebook.com/photo.php?fbid=10200268472248551&set=a.3353777797334.2140697.1055580469&type=1\" rel=\"theater\" ajaxify=\"http://jsbngssl.www.facebook.com/photo.php?fbid=10200268472248551&set=a.3353777797334.2140697.1055580469&type=1&src=https%3A%2F%2Fsphotos-a-iad.xx.fbcdn.net%2Fhphotos-ash3%2F1017486_10200268472248551_842609840_n.jpg&size=851%2C315&source=10\" id=\"fbCoverImageContainer\"><img class=\"coverPhotoImg photo img\" src=\"http://jsbngssl.sphotos-a-iad.xx.fbcdn.net/hphotos-ash3/1017486_10200268472248551_842609840_n.jpg\" alt=\"Cover Photo\" style=\"top:0px;width:100%\" data-fbid=\"10200268472248551\" /><div class=\"coverBorder\"></div><img class=\"coverChangeThrobber img\" src=\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yk/r/LOOn0JtHNzb.gif\" alt=\"\" width=\"16\" height=\"16\" /></a><div class=\"-cx-PRIVATE-fbTimelineLightHeader__headline\"><h2 class=\"-cx-PRIVATE-fbTimelineLightHeader__name\"><a class=\"-cx-PRIVATE-fbTimelineLightHeader__namelink\" href=\"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby\">Gregor Richards</a></h2></div></div><div id=\"fbTimelineHeadline\" class=\"clearfix\"><div class=\"-cx-PRIVATE-fbTimelineLightHeader__actionbuttonswrap\"><div class=\"actions -cx-PRIVATE-fbTimelineLightHeader__actionbuttons\"><div class=\"actionsDropdown\" id=\"pagelet_timeline_profile_actions\" data-referrer=\"pagelet_timeline_profile_actions\"></div></div></div><div class=\"-cx-PRIVATE-fbTimelineLightHeader__navwrapper\"><div class=\"-cx-PRIVATE-fbTimelineNavLight__root clearfix\" data-referrer=\"timeline_light_nav_top\" id=\"u_0_k\"><a class=\"-cx-PRIVATE-fbTimelineNavLight__item -cx-PRIVATE-fbTimelineNavLight__activeitem\" href=\"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby\">Timeline<span class=\"-cx-PRIVATE-fbTimelineNavLight__tabnub\"></span></a><a class=\"-cx-PRIVATE-fbTimelineNavLight__item\" href=\"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby/about\" data-medley-id=\"pagelet_timeline_medley_about\">About<span class=\"-cx-PRIVATE-fbTimelineNavLight__tabnub\"></span></a><a class=\"-cx-PRIVATE-fbTimelineNavLight__item\" href=\"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby/photos\" data-medley-id=\"pagelet_timeline_medley_photos\">Photos<span class=\"-cx-PRIVATE-fbTimelineNavLight__tabnub\"></span></a><a class=\"-cx-PRIVATE-fbTimelineNavLight__item\" href=\"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby/friends\" data-medley-id=\"pagelet_timeline_medley_friends\">Friends<span class=\"-cx-PRIVATE-fbTimelineNavLight__tabnub\"></span></a><div class=\"-cx-PRIVATE-uiInlineBlock__root uiPopover -cx-PRIVATE-fbTimelineNavLight__item -cx-PRIVATE-fbTimelineNavLight__itemdropdown\" id=\"u_0_l\"><a class=\"-cx-PRIVATE-fbTimelineNavLight__dropdownitembutton -cx-PRIVATE-uiPopover__trigger\" href=\"#\" aria-haspopup=\"true\" aria-expanded=\"false\" rel=\"toggle\" role=\"button\" id=\"u_0_m\">More<i class=\"-cx-PRIVATE-fbTimelineNavLight__dropdownitemarrow img sp_4p6kmz sx_4f53fc\"></i></a></div></div></div><div class=\"name\"><div class=\"photoContainer\"><a class=\"profilePicThumb\" id=\"profile_pic_education\" href=\"http://jsbngssl.www.facebook.com/photo.php?fbid=10200268473688587&set=a.1468918877039.2062262.1055580469&type=1&source=11\" rel=\"theater\"><img class=\"profilePic img\" src=\"http://jsbngssl.fbcdn-profile-a.akamaihd.net/hprofile-ak-frc3/c55.0.552.552/s160x160/993004_10200268473688587_517108607_n.jpg\" alt=\"Gregor Richards\" /></a><meta itemprop=\"image\" content=\"http://jsbngssl.fbcdn-profile-a.akamaihd.net/hprofile-ak-prn2/276274_1055580469_962040234_q.jpg\" /></div></div></div><div id=\"timeline_sticky_header\" data-referrer=\"timeline_sticky_header\"></div></div><div id=\"fbSuggestionsPlaceHolder\"></div></div><div id=\"pagelet_escape_hatch\" data-referrer=\"pagelet_escape_hatch\"></div></div><div id=\"timeline_tab_content\"><div id=\"pagelet_timeline_recent\" data-referrer=\"pagelet_timeline_recent\"></div><div id=\"timeline_tab_content_extra\"></div></div> "; |
| // undefined |
| o25 = null; |
| // 1620 |
| o24.parentNode = o16; |
| // 1622 |
| f81632121_521.returns.push(o24); |
| // undefined |
| o24 = null; |
| // 1623 |
| // 1624 |
| o21.getAttribute = f81632121_506; |
| // 1625 |
| f81632121_506.returns.push("pagelet_main_column_personal_timeline"); |
| // 1633 |
| o24 = {}; |
| // 1634 |
| f81632121_476.returns.push(o24); |
| // 1635 |
| // 1636 |
| // 1637 |
| o24.getElementsByTagName = f81632121_502; |
| // 1638 |
| o25 = {}; |
| // 1639 |
| f81632121_502.returns.push(o25); |
| // 1640 |
| o25.length = 0; |
| // undefined |
| o25 = null; |
| // 1642 |
| o25 = {}; |
| // 1643 |
| o24.childNodes = o25; |
| // undefined |
| o24 = null; |
| // 1644 |
| o25.nodeType = void 0; |
| // 1645 |
| o25.getAttributeNode = void 0; |
| // 1646 |
| o25.getElementsByTagName = void 0; |
| // 1647 |
| o25.childNodes = void 0; |
| // 1659 |
| o24 = {}; |
| // 1660 |
| f81632121_508.returns.push(o24); |
| // 1664 |
| o16.scrollWidth = 1017; |
| // 1665 |
| o16.scrollHeight = 727; |
| // 1667 |
| f81632121_508.returns.push(o20); |
| // 1668 |
| o26 = {}; |
| // 1669 |
| o20.style = o26; |
| // 1670 |
| // undefined |
| o26 = null; |
| // 1671 |
| f81632121_11.returns.push(undefined); |
| // 1683 |
| f81632121_467.returns.push(1374851214231); |
| // 1687 |
| o26 = {}; |
| // 1688 |
| f81632121_474.returns.push(o26); |
| // 1690 |
| f81632121_478.returns.push(o26); |
| // undefined |
| o26 = null; |
| // 1696 |
| f81632121_467.returns.push(1374851214232); |
| // 1698 |
| f81632121_467.returns.push(1374851214232); |
| // 1702 |
| f81632121_467.returns.push(1374851214232); |
| // 1705 |
| f81632121_467.returns.push(1374851214233); |
| // 1708 |
| f81632121_467.returns.push(1374851214233); |
| // 1710 |
| o26 = {}; |
| // 1711 |
| f81632121_508.returns.push(o26); |
| // 1713 |
| o27 = {}; |
| // 1714 |
| f81632121_508.returns.push(o27); |
| // 1715 |
| o28 = {}; |
| // 1716 |
| o27.firstChild = o28; |
| // 1718 |
| o28.nodeType = 8; |
| // 1720 |
| o28.nodeValue = " <div class=\"escapeHatchMinimal -cx-PRIVATE-fbTimelineEscapeHatch__root\"><div class=\"-cx-PRIVATE-fbTimelineLightReportHeader__root -cx-PRIVATE-fbTimelineEscapeHatch__header\"><div class=\"-cx-PRIVATE-fbTimelineLightReportHeader__titlecontainer\" data-ft=\"{"tn":"C"}\"><div class=\"fsm fwn fcg\"><span class=\"-cx-PRIVATE-fbTimelineLightReportHeader__text -cx-PRIVATE-fbTimelineLightReportHeader__title\"><span>Do you know Gregor?</span></span></div></div></div><div class=\"pam uiBoxWhite noborder\"><div><div class=\"-cx-PRIVATE-fbTimelineEscapeHatch__addfriendbutton\"><div class=\"FriendButton\" id=\"u_0_q\"><label class=\"FriendRequestAdd addButton selected uiButton uiButtonSpecial uiButtonLarge\" for=\"u_0_r\"><i class=\"mrs img sp_at8kd9 sx_aad3a2\"></i><input value=\"Add Friend\" type=\"button\" id=\"u_0_r\" /></label><a class=\"FriendRequestOutgoing enableFriendListFlyout outgoingButton enableFriendListFlyout hidden_elem selected uiButton uiButtonSpecial uiButtonLarge\" href=\"#\" role=\"button\" data-profileid=\"1055580469\" data-flloc=\"escape_hatch\" data-cansuggestfriends=\"false\"><i class=\"mrs img sp_at8kd9 sx_aad3a2\"></i><span class=\"uiButtonText\">Friend Request Sent</span></a></div></div><div class=\"phs pbs -cx-PRIVATE-fbTimelineEscapeHatch__noticetext\"><div class=\"pbs prm fsl\"></div><span class=\"fsl fcg\"><span id=\"u_0_s\"><span class=\"addFriendText\">To see what he shares with friends, <a class=\"addButton\" href=\"#\" role=\"button\">send him a friend request.</a></span><span class=\"hidden_elem enableFriendListFlyout outgoingButton\" data-profileid=\"1055580469\">Request Sent.</span></span></span></div></div></div><div id=\"fbSuggestionsHatchPlaceHolder\"></div></div> "; |
| // undefined |
| o28 = null; |
| // 1721 |
| o27.parentNode = o16; |
| // 1723 |
| f81632121_521.returns.push(o27); |
| // undefined |
| o27 = null; |
| // 1724 |
| // 1725 |
| o26.getAttribute = f81632121_506; |
| // 1726 |
| f81632121_506.returns.push("pagelet_escape_hatch"); |
| // 1737 |
| f81632121_467.returns.push(1374851214252); |
| // 1741 |
| o27 = {}; |
| // 1742 |
| f81632121_474.returns.push(o27); |
| // 1744 |
| f81632121_478.returns.push(o27); |
| // undefined |
| o27 = null; |
| // 1750 |
| f81632121_467.returns.push(1374851214263); |
| // 1752 |
| f81632121_467.returns.push(1374851214263); |
| // 1756 |
| f81632121_467.returns.push(1374851214264); |
| // 1759 |
| f81632121_467.returns.push(1374851214264); |
| // 1762 |
| f81632121_467.returns.push(1374851214264); |
| // 1764 |
| o27 = {}; |
| // 1765 |
| f81632121_508.returns.push(o27); |
| // 1766 |
| o27.getAttribute = f81632121_506; |
| // 1767 |
| f81632121_506.returns.push("pagelet_above_header_timeline"); |
| // 1783 |
| f81632121_467.returns.push(1374851214270); |
| // 1787 |
| o28 = {}; |
| // 1788 |
| f81632121_474.returns.push(o28); |
| // 1790 |
| f81632121_478.returns.push(o28); |
| // undefined |
| o28 = null; |
| // 1796 |
| f81632121_467.returns.push(1374851214276); |
| // 1798 |
| f81632121_467.returns.push(1374851214277); |
| // 1802 |
| f81632121_467.returns.push(1374851214277); |
| // 1805 |
| f81632121_467.returns.push(1374851214277); |
| // 1808 |
| f81632121_467.returns.push(1374851214277); |
| // 1810 |
| o28 = {}; |
| // 1811 |
| f81632121_508.returns.push(o28); |
| // 1813 |
| o29 = {}; |
| // 1814 |
| f81632121_508.returns.push(o29); |
| // 1815 |
| o30 = {}; |
| // 1816 |
| o29.firstChild = o30; |
| // 1818 |
| o30.nodeType = 8; |
| // 1820 |
| o30.nodeValue = " <span class=\"uiButtonGroup uiButtonGroupOverlay\" id=\"u_0_u\"><span class=\"firstItem lastItem uiButtonGroupItem buttonItem\"><div class=\"profileHeaderButton FriendButton\" id=\"u_0_16\"><label class=\"FriendRequestAdd addButton uiButton uiButtonOverlay uiButtonLarge\" for=\"u_0_17\"><i class=\"mrs img sp_at8kd9 sx_aad3a2\"></i><input value=\"Add Friend\" type=\"button\" id=\"u_0_17\" /></label><a class=\"FriendRequestOutgoing enableFriendListFlyout outgoingButton enableFriendListFlyout hidden_elem uiButton uiButtonOverlay uiButtonLarge\" href=\"#\" role=\"button\" data-profileid=\"1055580469\" data-flloc=\"fbx_top_bar\" data-cansuggestfriends=\"false\"><i class=\"mrs img sp_at8kd9 sx_aad3a2\"></i><span class=\"uiButtonText\">Friend Request Sent</span></a></div></span></span><span class=\"uiButtonGroup uiButtonGroupOverlay\" id=\"u_0_v\"><span class=\"firstItem lastItem uiButtonGroupItem buttonItem\"><span class=\"-cx-PRIVATE-uiSwapButton__root -cx-PRIVATE-fbSubscribeButton__root profileHeaderButton\"><a class=\"uiButton uiButtonOverlay uiButtonLarge\" href=\"#\" role=\"button\" ajaxify=\"/ajax/follow/follow_profile.php?profile_id=1055580469&location=1\" rel=\"async-post\" id=\"u_0_12\"><i class=\"mrs img sp_at8kd9 sx_dedf3e\"></i><span class=\"uiButtonText\">Follow</span></a><label class=\"profileFollowButton -cx-PUBLIC-uiHoverButton__root -cx-PRIVATE-uiSwapButton__secondbutton hidden_elem uiButton uiButtonOverlay uiButtonLarge\" id=\"u_0_13\" for=\"u_0_15\"><i class=\"mrs img sp_at8kd9 sx_d4ea38\"></i><input value=\"Following\" aria-haspopup=\"1\" data-profileid=\"1055580469\" type=\"submit\" id=\"u_0_15\" /></label></span></span></span><span class=\"uiButtonGroup actionsContents uiButtonGroupOverlay\" id=\"u_0_w\"><span class=\"firstItem uiButtonGroupItem buttonItem\"><a class=\"uiButton uiButtonOverlay uiButtonLarge\" href=\"/messages/LawlabeeTheWallaby\" role=\"button\" ajaxify=\"/ajax/messaging/composer.php?ids%5B0%5D=1055580469&ref=timeline\" rel=\"dialog\"><span class=\"uiButtonText\">Message</span></a></span><span class=\"lastItem uiButtonGroupItem selectorItem\"><div class=\"uiSelector inlineBlock fbTimelineActionSelector uiSelectorRight\"><div class=\"uiToggle wrap\"><a class=\"fbTimelineActionSelectorButton uiSelectorButton uiButton uiButtonOverlay uiButtonLarge uiButtonNoText\" href=\"#\" role=\"button\" aria-label=\"Other actions\" aria-haspopup=\"1\" rel=\"toggle\"><i class=\"mrs img sp_at8kd9 sx_7e8063\"></i><span class=\"uiButtonText\"></span></a><div class=\"uiSelectorMenuWrapper uiToggleFlyout\"><div class=\"uiMenuContainer uiSelectorMenu\"><div role=\"menu\" class=\"uiMenu\" id=\"u_0_y\"><ul class=\"uiMenuInner\"><li class=\"uiMenuItem\" data-label=\"Add to Interest Lists...\" id=\"u_0_z\"><a class=\"itemAnchor\" role=\"menuitem\" tabindex=\"0\" href=\"#\"><span class=\"itemLabel fsm\">Add to Interest Lists...</span></a></li><li class=\"uiMenuSeparator\"></li><li class=\"uiMenuItem\" data-label=\"Report/Block...\"><a class=\"itemAnchor\" role=\"menuitem\" tabindex=\"-1\" href=\"/ajax/report/social.php?content_type=0&cid=1055580469&rid=1055580469&from_gear=timeline\" rel=\"dialog\"><span class=\"itemLabel fsm\">Report/Block...</span></a></li></ul></div><div role=\"menu\" class=\"uiMenu hidden_elem\" id=\"u_0_x\"><ul class=\"uiMenuInner\"><li class=\"uiMenuItem\" data-label=\"Go Back\" id=\"u_0_10\"><a class=\"itemAnchor\" role=\"menuitem\" tabindex=\"0\" href=\"#\"><span class=\"itemLabel fsm\">Go Back</span></a></li><li class=\"uiMenuSeparator\"></li><img class=\"mal pal center img\" src=\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yk/r/LOOn0JtHNzb.gif\" alt=\"\" id=\"u_0_11\" width=\"16\" height=\"16\" /></ul></div></div></div></div></div></span></span> "; |
| // undefined |
| o30 = null; |
| // 1821 |
| o29.parentNode = o16; |
| // 1823 |
| f81632121_521.returns.push(o29); |
| // undefined |
| o29 = null; |
| // 1824 |
| // 1825 |
| o28.getAttribute = f81632121_506; |
| // 1826 |
| f81632121_506.returns.push("pagelet_timeline_profile_actions"); |
| // 1834 |
| o29 = {}; |
| // 1835 |
| f81632121_476.returns.push(o29); |
| // 1836 |
| // 1837 |
| // 1838 |
| o29.getElementsByTagName = f81632121_502; |
| // 1839 |
| o30 = {}; |
| // 1840 |
| f81632121_502.returns.push(o30); |
| // 1841 |
| o30.length = 0; |
| // undefined |
| o30 = null; |
| // 1843 |
| o30 = {}; |
| // 1844 |
| o29.childNodes = o30; |
| // undefined |
| o29 = null; |
| // 1845 |
| o30.nodeType = void 0; |
| // 1846 |
| o30.getAttributeNode = void 0; |
| // 1847 |
| o30.getElementsByTagName = void 0; |
| // 1848 |
| o30.childNodes = void 0; |
| // 1876 |
| f81632121_467.returns.push(1374851214307); |
| // 1880 |
| o29 = {}; |
| // 1881 |
| f81632121_474.returns.push(o29); |
| // 1883 |
| f81632121_478.returns.push(o29); |
| // undefined |
| o29 = null; |
| // 1886 |
| f81632121_467.returns.push(1374851214307); |
| // 1892 |
| f81632121_467.returns.push(1374851214308); |
| // 1894 |
| f81632121_467.returns.push(1374851214308); |
| // 1898 |
| f81632121_467.returns.push(1374851214309); |
| // 1901 |
| f81632121_467.returns.push(1374851214309); |
| // 1904 |
| f81632121_467.returns.push(1374851214309); |
| // 1906 |
| o29 = {}; |
| // 1907 |
| f81632121_508.returns.push(o29); |
| // 1909 |
| o31 = {}; |
| // 1910 |
| f81632121_508.returns.push(o31); |
| // 1911 |
| o32 = {}; |
| // 1912 |
| o31.firstChild = o32; |
| // 1914 |
| o32.nodeType = 8; |
| // 1916 |
| o32.nodeValue = " <div class=\"fbTimelineSection fbTimelineCompactSection fbTimelineSectionTransparent\" id=\"u_0_1a\"><div class=\"fbTimelineCapsule clearfix\" data-referrer=\"pagelet_timeline_recent_ocm\" data-start=\"1359397174\" data-end=\"1375340399\" id=\"u_0_19\"><div class=\"-cx-PUBLIC-timelineOneColMin__leftcapsulecontainer\"><ol class=\"-cx-PUBLIC-timelineOneColMin__leftcapsule clearfix\" data-referrer=\"pagelet_timeline_recent_ocm\" id=\"u_0_19_left\"></ol><div id=\"pagelet_timeline_recent_more_pager\"></div></div><div class=\"-cx-PUBLIC-timelineOneColMin__rightcapsulecontainer\"><ol class=\"-cx-PUBLIC-timelineOneColMin__rightcapsule clearfix\" data-referrer=\"pagelet_timeline_recent_ocm\" id=\"u_0_19_right\"></ol></div></div><div class=\"fbTimelineSubSections\"></div></div><div class=\"hidden_elem fbTimelineSectionExpandPager fbTimelineShowOlderSections\" id=\"u_0_1a_scroll_trigger\"><div class=\"uiMorePager\"><a class=\"uiMorePagerPrimary\" href=\"#\" role=\"button\">Show Older Stories</a></div></div> "; |
| // undefined |
| o32 = null; |
| // 1917 |
| o31.parentNode = o16; |
| // 1919 |
| f81632121_521.returns.push(o31); |
| // undefined |
| o31 = null; |
| // 1920 |
| // 1921 |
| o29.getAttribute = f81632121_506; |
| // 1922 |
| f81632121_506.returns.push("pagelet_timeline_recent"); |
| // 1930 |
| f81632121_467.returns.push(1374851214320); |
| // 1934 |
| o31 = {}; |
| // 1935 |
| f81632121_474.returns.push(o31); |
| // 1937 |
| f81632121_478.returns.push(o31); |
| // undefined |
| o31 = null; |
| // 1943 |
| f81632121_467.returns.push(1374851214322); |
| // 1945 |
| f81632121_467.returns.push(1374851214323); |
| // 1949 |
| f81632121_467.returns.push(1374851214323); |
| // 1952 |
| f81632121_467.returns.push(1374851214324); |
| // 1955 |
| f81632121_467.returns.push(1374851214324); |
| // 1957 |
| o31 = {}; |
| // 1958 |
| f81632121_508.returns.push(o31); |
| // 1959 |
| o31.getAttribute = f81632121_506; |
| // 1960 |
| f81632121_506.returns.push("pagelet_timeline_recent_ocm"); |
| // 1962 |
| f81632121_467.returns.push(1374851214325); |
| // 1966 |
| o32 = {}; |
| // 1967 |
| f81632121_474.returns.push(o32); |
| // 1969 |
| f81632121_478.returns.push(o32); |
| // undefined |
| o32 = null; |
| // 1975 |
| f81632121_467.returns.push(1374851214353); |
| // 1977 |
| f81632121_467.returns.push(1374851214353); |
| // 1981 |
| f81632121_467.returns.push(1374851214354); |
| // 1984 |
| f81632121_467.returns.push(1374851214354); |
| // 1987 |
| f81632121_467.returns.push(1374851214354); |
| // 1989 |
| f81632121_508.returns.push(o31); |
| // 1991 |
| o32 = {}; |
| // 1992 |
| f81632121_508.returns.push(o32); |
| // 1993 |
| o33 = {}; |
| // 1994 |
| o32.firstChild = o33; |
| // 1996 |
| o33.nodeType = 8; |
| // 1998 |
| o33.nodeValue = " <li class=\"fbTimelineUnit fbTimelineTwoColumn clearfix\" data-side=\"l\" data-fixed=\"1\" data-size=\"1\" id=\"tl_unit_1267290328123522761\"><div class=\"topBorder\"></div><div class=\"timelineUnitContainer\" id=\"u_0_1l\" data-gt=\"{"eventtime":"1374851147","viewerid":"100006118350059","profileownerid":"1055580469","unitimpressionid":"b1113c18","contentid":"1267290328123522761","timeline_unit_type":"AddSinglePhotoUnit","timewindowsize":"3","query_type":"39","contextwindowstart":"0","contextwindowend":"1375340399"}\" data-time=\"1374637162\"><div class=\"\"><div role=\"article\"><div class=\"clearfix mbs pbs -cx-PRIVATE-fbTimelineUnitActor__root\"><a class=\"-cx-PUBLIC-fbTimelineUnitActor__imagewrap -cx-PRIVATE-uiImageBlockDeprecated__image -cx-PRIVATE-uiImageBlockDeprecated__smallimage\" href=\"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby?hc_location=timeline\" data-ft=\"{"tn":"\\\\u003C"}\" tabindex=\"-1\" aria-hidden=\"true\" data-hovercard=\"/ajax/hovercard/user.php?id=1055580469&extragetparams=%7B%22hc_location%22%3A%22timeline%22%7D\"><img class=\"-cx-PRIVATE-fbTimelineUnitActor__image img\" src=\"http://jsbngssl.fbcdn-profile-a.akamaihd.net/hprofile-ak-prn2/276274_1055580469_962040234_q.jpg\" alt=\"\" /></a><div class=\"-cx-PRIVATE-uiImageBlockDeprecated__smallcontent -cx-PRIVATE-uiImageBlockDeprecated__content\"><h5 class=\"-cx-PRIVATE-fbTimelineUnitActor__header\" data-ft=\"{"tn":"C"}\"><span class=\"fcg\"><span class=\"fwb\" data-ft=\"{"tn":";"}\"><a href=\"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby?hc_location=timeline\" data-hovercard=\"/ajax/hovercard/user.php?id=1055580469&extragetparams=%7B%22hc_location%22%3A%22timeline%22%7D\">Gregor Richards</a></span></span> </h5><div class=\"-cx-PRIVATE-fbTimelineUnitActor__timestamp fsm fwn fcg\"><a class=\"uiLinkSubtle\" href=\"http://jsbngssl.www.facebook.com/photo.php?fbid=10200453104264236&set=a.1138433375108.2021456.1055580469&type=1\"><abbr title=\"Tuesday, July 23, 2013 at 11:39pm\" data-utime=\"1374647962\">Tuesday</abbr></a><a data-hover=\"tooltip\" aria-label=\"Public\" class=\"uiStreamPrivacy inlineBlock fbStreamPrivacy fbPrivacyAudienceIndicator -cx-PRIVATE-fbTimelineUnitActor__privacy\" href=\"#\" role=\"button\"><i class=\"lock img sp_at8kd9 sx_7236dd\"></i></a></div></div></div><div class=\"aboveUnitContent\"><div class=\"userContentWrapper\"><div class=\"-cx-PRIVATE-fbTimelineText__featured\"><span class=\"userContent\">Dammit Steam sale...</span> </div></div></div><div class=\"photoUnit clearfix\"><div class=\"-cx-PUBLIC-fbInlineActions__container uiScaledThumb photo photoWidth1\" data-gt=\"{"fbid":"10200453104264236"}\" data-ft=\"{"tn":"E"}\"><a class=\"-cx-PUBLIC-fbInlineActions__photolink\" href=\"http://jsbngssl.www.facebook.com/photo.php?fbid=10200453104264236&set=a.1138433375108.2021456.1055580469&type=1&relevant_count=1\" rel=\"theater\" ajaxify=\"http://jsbngssl.www.facebook.com/photo.php?fbid=10200453104264236&set=a.1138433375108.2021456.1055580469&type=1&relevant_count=1&src=https%3A%2F%2Ffbcdn-sphotos-h-a.akamaihd.net%2Fhphotos-ak-prn2%2F1069167_10200453104264236_1772112196_n.jpg&size=652%2C800&theater&source=9\"><div class=\"uiScaledImageContainer photoWrap\"><img class=\"scaledImageFitWidth img\" src=\"http://jsbngssl.fbcdn-sphotos-h-a.akamaihd.net/hphotos-ak-prn2/p480x480/1069167_10200453104264236_1772112196_n.jpg\" alt=\"Photo: Dammit Steam sale...\" width=\"504\" height=\"618\" /></div></a></div></div></div><div class=\"fbTimelineUFI uiCommentContainer\"><script type=\"text/javascript\">try {\n ((JSBNG_Record.scriptLoad)((\"function ef0e1392a4bcb2d0e3238da53a0cec251408776ad(event) {\\u000a return ((window.Event && Event.__inlineSubmit) && Event.__inlineSubmit(this, event));\\u000a};\"), (\"s772cabb23e047788ade71caa5fa2e1b1ffcf8e72\")));\n ((window.top.JSBNG_Record.callerJS) = (true));\n function ef0e1392a4bcb2d0e3238da53a0cec251408776ad(JSBNG__event) {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s772cabb23e047788ade71caa5fa2e1b1ffcf8e72_0\"), (s772cabb23e047788ade71caa5fa2e1b1ffcf8e72_0_instance), (this), (arguments)))\n };\n (null);\n return (((((JSBNG_Record.get)(window, (\"JSBNG__Event\")))[(\"JSBNG__Event\")]) && (((JSBNG_Record.get)(JSBNG__Event, (\"__inlineSubmit\")))[(\"__inlineSubmit\")])) && (((JSBNG_Record.get)(JSBNG__Event, (\"__inlineSubmit\")))[(\"__inlineSubmit\")])(this, JSBNG__event));\n };\n var s772cabb23e047788ade71caa5fa2e1b1ffcf8e72_0_instance;\n ((s772cabb23e047788ade71caa5fa2e1b1ffcf8e72_0_instance) = ((JSBNG_Record.eventInstance)((\"s772cabb23e047788ade71caa5fa2e1b1ffcf8e72_0\"))));\n ((JSBNG_Record.markFunction)((ef0e1392a4bcb2d0e3238da53a0cec251408776ad)));\n} finally {\n ((window.top.JSBNG_Record.callerJS) = (false));\n ((window.top.JSBNG_Record.flushDeferredEvents)());\n};</script><form rel=\"async\" class=\"live_10200453104264236_316526391751760 commentable_item autoexpand_mode\" method=\"post\" action=\"/ajax/ufi/modify.php\" data-live=\"{"seq":"10200453104264236_3198160"}\" id=\"u_0_1r\" onsubmit=\"return ef0e1392a4bcb2d0e3238da53a0cec251408776ad.call(this, event);\"><input type=\"hidden\" name=\"charset_test\" value=\"€,´,€,´,水,Д,Є\" /><input type=\"hidden\" name=\"fb_dtsg\" value=\"AQApxIm6\" autocomplete=\"off\" /><input type=\"hidden\" autocomplete=\"off\" name=\"feedback_params\" value=\"{"actor":"1055580469","target_fbid":"10200453104264236","target_profile_id":"1055580469","type_id":"7","assoc_obj_id":"","source_app_id":"0","extra_story_params":[],"content_timestamp":"1374637148","check_hash":"AQCPr0Rvhc8ZTjjR","source":"13"}\" /><input type=\"hidden\" autocomplete=\"off\" name=\"data_only_response\" value=\"1\" /><input type=\"hidden\" autocomplete=\"off\" name=\"timeline_ufi\" value=\"1\" /><input type=\"hidden\" name=\"timeline_log_data\" value=\"AQBNptZHHmcHSBHH338FbJIldzhdcVkA422y6Sejlj24O_ESfCpT1dhcH8BotHbB73c3HUp4765d0qfNUgarP7Vf2rTTbV5euFgCJSt9-8B4i86TjWur6gJ3K29twN6V9lo7fU3rQepgiuZt5KILXg7MqgN_w213GHwJL6FGgcWbUZlVBhXGuoklz4varOFzrDvH_-rITQWylbk82zJBzOEix9PGZ6QnysZWTe0NbHgtmvvEgOVVTF_JPYYKjGJasYG-JYrNmL-tbERXVcwbZ5iFNz9l0M26pG6TZqE6wNK0_l10ScDeVnFbXwhuV6wk73AHZ58nAtgqevhrI3rGzBuPUx02KACTcf1ScQRa2UwIeybAIzG6SY3-kSka4I-DhWD1-EPGDFc5Ff7eeuTE6lPB\" /><div class=\"fbTimelineFeedbackHeader\"><div class=\"fbTimelineFeedbackActions clearfix\"><span></span><span class=\"UIActionLinks UIActionLinks_bottom\" data-ft=\"{"tn":"=","type":20}\"><button title=\"Like this item\" type=\"submit\" name=\"like\" class=\"like_link stat_elem as_link\" data-ft=\"{"tn":">","type":22}\"><span class=\"default_message\">Like</span><span class=\"saving_message\">Unlike</span></button> · <a class=\"share_action_link\" href=\"/ajax/sharer/?s=2&appid=2305272732&p%5B0%5D=1055580469&p%5B1%5D=1073741829&profile_id=1055580469&share_source_type=unknown\" rel=\"dialog\" data-ft=\"{"tn":"J","type":25}\" title=\"Send this to friends or post it on your timeline.\" role=\"button\">Share</a></span></div></div><div><div class=\"uiUfi UFIContainer\" id=\"u_0_1t\"></div></div></form></div><div class=\"-cx-PRIVATE-fbTimelineLightCurationControl__root\"><div class=\"-cx-PRIVATE-fbTimelineLightStarButton__root lfloat\"><i class=\"-cx-PRIVATE-fbTimelineLightStarButton__icon\"></i></div><div class=\"-cx-PRIVATE-uiInlineBlock__root uiPopover -cx-PRIVATE-fbTimelineLightCurationControl__options\" id=\"u_0_1m\"><a class=\"-cx-PRIVATE-fbEntstreamFeedObjectOptions__button -cx-PRIVATE-uiPopover__trigger\" href=\"#\" aria-haspopup=\"true\" aria-expanded=\"false\" rel=\"toggle\" role=\"button\" id=\"u_0_1n\"></a></div></div></div></div><i class=\"spinePointer\"></i><div class=\"bottomBorder\"></div></li><li class=\"fbTimelineUnit fbTimelineTwoColumn clearfix\" data-side=\"l\" data-fixed=\"1\" data-size=\"1\" id=\"tl_unit_5791137008599102559\"><div class=\"topBorder\"></div><div class=\"timelineUnitContainer\" id=\"u_0_1i\" data-gt=\"{"eventtime":"1374851147","viewerid":"100006118350059","profileownerid":"1055580469","unitimpressionid":"b1113c18","contentid":"5791137008599102559","timeline_unit_type":"StatusMessageUnit","timewindowsize":"3","query_type":"39","contextwindowstart":"0","contextwindowend":"1375340399"}\" data-time=\"1373991800\"><div class=\"\"><div role=\"article\"><div class=\"clearfix mbs pbs -cx-PRIVATE-fbTimelineUnitActor__root\"><a class=\"-cx-PUBLIC-fbTimelineUnitActor__imagewrap -cx-PRIVATE-uiImageBlockDeprecated__image -cx-PRIVATE-uiImageBlockDeprecated__smallimage\" href=\"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby?hc_location=timeline\" data-ft=\"{"tn":"\\\\u003C"}\" tabindex=\"-1\" aria-hidden=\"true\" data-hovercard=\"/ajax/hovercard/user.php?id=1055580469&extragetparams=%7B%22hc_location%22%3A%22timeline%22%7D\"><img class=\"-cx-PRIVATE-fbTimelineUnitActor__image img\" src=\"http://jsbngssl.fbcdn-profile-a.akamaihd.net/hprofile-ak-prn2/276274_1055580469_962040234_q.jpg\" alt=\"\" /></a><div class=\"-cx-PRIVATE-uiImageBlockDeprecated__smallcontent -cx-PRIVATE-uiImageBlockDeprecated__content\"><h5 class=\"-cx-PRIVATE-fbTimelineUnitActor__header\" data-ft=\"{"tn":"C"}\"><span class=\"fcg\"><span class=\"fwb\" data-ft=\"{"tn":";"}\"><a href=\"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby?hc_location=timeline\" data-hovercard=\"/ajax/hovercard/user.php?id=1055580469&extragetparams=%7B%22hc_location%22%3A%22timeline%22%7D\">Gregor Richards</a></span></span> </h5><div class=\"-cx-PRIVATE-fbTimelineUnitActor__timestamp fsm fwn fcg\"><a class=\"uiLinkSubtle\" href=\"/LawlabeeTheWallaby/posts/10200407437602598\"><abbr title=\"Tuesday, July 16, 2013 at 12:23pm\" data-utime=\"1374002600\">July 16</abbr></a><a data-hover=\"tooltip\" aria-label=\"Public\" class=\"uiStreamPrivacy inlineBlock fbStreamPrivacy fbPrivacyAudienceIndicator -cx-PRIVATE-fbTimelineUnitActor__privacy\" href=\"#\" role=\"button\"><i class=\"lock img sp_at8kd9 sx_7236dd\"></i></a></div></div></div><div class=\"-cx-PRIVATE-fbTimelineStatusUnit__root\"><div class=\"userContentWrapper\"><div class=\"-cx-PRIVATE-fbTimelineText__featured\"><div id=\"id_51f2904bb941a6d40448274\" class=\"text_exposed_root\"><span data-ft=\"{"tn":"K"}\" class=\"userContent\">(Guess what time it is!)<br /> <br /> Tomorrow marks the beginning of my 28th circumnavigation of the sun. Because we are a primitive, sun worshiping people, we feel the need to mark this event in various ways.<br /> <br /> As of the posting of this status and effective for forty-eight hours, all content-free birthday-related posts on my wall will be deleted. Comments on this status to that effect will also be deleted.<br /> <br /> <span class=\"text_exposed_hide\">...</span><span class=\"text_exposed_show\">You must consider what it is that you are doing. This is Facebook. It is a repository of information, it is a communication medium, it is many things. I prefer to keep my communication of a higher caliber. Plus the occasional misanthropic screed. Also ponies. Mostly communication of a higher caliber. But that's somewhat of an aside from the real crux of the issue.<br /> <br /> There is perhaps no gesture less sincere than the Facebook birthday well-wishing. You have been requested by a machine to post two words on my wall, likely followed by an obscene number of exclamation points. As a machine yourself, you have obeyed its request. This is not a polite salutation, it is a vacuous one. It is considerably worse than no gesture whatsoever. I neither require nor desire your mechanistic platitudes, and will, as such, react to eliminate them.<br /> <br /> I will keep note of who posts them before my deletion. If you're posting this without even bothering to read my own status, and hence see this rather unfriendly message, then that just emphasizes further the vapidity of the sentiment.<br /> <br /> Tomorrow marks the beginning of my 28th circumnavigation of the sun. I celebrate it by being a misanthrope.</span></span><span class=\"text_exposed_hide\"><span class=\"text_exposed_link\"><script type=\"text/javascript\">try {\n ((JSBNG_Record.scriptLoad)((\"function ed42996c769cb06dfc355d1c314974c5d5c8b9bf6(event) {\\u000a CSS.addClass($(\\\"id_51f2904bb941a6d40448274\\\"), \\\"text_exposed\\\");\\u000a Arbiter.inform(\\\"reflow\\\");\\u000a};\"), (\"sf96098d0f7c18cedea4747f29c3aa1b5b9d89936\")));\n ((window.top.JSBNG_Record.callerJS) = (true));\n function ed42996c769cb06dfc355d1c314974c5d5c8b9bf6(JSBNG__event) {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"sf96098d0f7c18cedea4747f29c3aa1b5b9d89936_0\"), (sf96098d0f7c18cedea4747f29c3aa1b5b9d89936_0_instance), (this), (arguments)))\n };\n (null);\n (((JSBNG_Record.get)(JSBNG__CSS, (\"addClass\")))[(\"addClass\")])($(\"id_51f2904bb941a6d40448274\"), \"text_exposed\");\n (((JSBNG_Record.get)(Arbiter, (\"inform\")))[(\"inform\")])(\"reflow\");\n };\n var sf96098d0f7c18cedea4747f29c3aa1b5b9d89936_0_instance;\n ((sf96098d0f7c18cedea4747f29c3aa1b5b9d89936_0_instance) = ((JSBNG_Record.eventInstance)((\"sf96098d0f7c18cedea4747f29c3aa1b5b9d89936_0\"))));\n ((JSBNG_Record.markFunction)((ed42996c769cb06dfc355d1c314974c5d5c8b9bf6)));\n} finally {\n ((window.top.JSBNG_Record.callerJS) = (false));\n ((window.top.JSBNG_Record.flushDeferredEvents)());\n};</script><a onclick=\"return ed42996c769cb06dfc355d1c314974c5d5c8b9bf6.call(this, event);\" data-ft=\"{"tn":"e"}\">See More</a></span></span></div></div></div></div></div><div class=\"fbTimelineUFI uiCommentContainer\"><script type=\"text/javascript\">try {\n ((JSBNG_Record.scriptLoad)((\"function ebba824ec8d66aa790e1b61baae7d64397386f739(event) {\\u000a return ((window.Event && Event.__inlineSubmit) && Event.__inlineSubmit(this, event));\\u000a};\"), (\"s3b0629883c3e506a08ac0cf99f0ba4cba461dbfb\")));\n ((window.top.JSBNG_Record.callerJS) = (true));\n function ebba824ec8d66aa790e1b61baae7d64397386f739(JSBNG__event) {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s3b0629883c3e506a08ac0cf99f0ba4cba461dbfb_0\"), (s3b0629883c3e506a08ac0cf99f0ba4cba461dbfb_0_instance), (this), (arguments)))\n };\n (null);\n return (((((JSBNG_Record.get)(window, (\"JSBNG__Event\")))[(\"JSBNG__Event\")]) && (((JSBNG_Record.get)(JSBNG__Event, (\"__inlineSubmit\")))[(\"__inlineSubmit\")])) && (((JSBNG_Record.get)(JSBNG__Event, (\"__inlineSubmit\")))[(\"__inlineSubmit\")])(this, JSBNG__event));\n };\n var s3b0629883c3e506a08ac0cf99f0ba4cba461dbfb_0_instance;\n ((s3b0629883c3e506a08ac0cf99f0ba4cba461dbfb_0_instance) = ((JSBNG_Record.eventInstance)((\"s3b0629883c3e506a08ac0cf99f0ba4cba461dbfb_0\"))));\n ((JSBNG_Record.markFunction)((ebba824ec8d66aa790e1b61baae7d64397386f739)));\n} finally {\n ((window.top.JSBNG_Record.callerJS) = (false));\n ((window.top.JSBNG_Record.flushDeferredEvents)());\n};</script><form rel=\"async\" class=\"live_10200407437602598_316526391751760 commentable_item autoexpand_mode\" method=\"post\" action=\"/ajax/ufi/modify.php\" data-live=\"{"seq":"10200407437602598_4996311"}\" id=\"u_0_1q\" onsubmit=\"return ebba824ec8d66aa790e1b61baae7d64397386f739.call(this, event);\"><input type=\"hidden\" name=\"charset_test\" value=\"€,´,€,´,水,Д,Є\" /><input type=\"hidden\" name=\"fb_dtsg\" value=\"AQApxIm6\" autocomplete=\"off\" /><input type=\"hidden\" autocomplete=\"off\" name=\"feedback_params\" value=\"{"actor":"1055580469","target_fbid":"10200407437602598","target_profile_id":"1055580469","type_id":"22","assoc_obj_id":"","source_app_id":"0","extra_story_params":[],"content_timestamp":"1373991799","check_hash":"AQA-jiNzd4pG_lck","source":"13"}\" /><input type=\"hidden\" autocomplete=\"off\" name=\"data_only_response\" value=\"1\" /><input type=\"hidden\" autocomplete=\"off\" name=\"timeline_ufi\" value=\"1\" /><input type=\"hidden\" name=\"timeline_log_data\" value=\"AQDQFbb-noUffn08-wYWq3sqYkrBn6PemZTva6mbp5t66h4yjEavOAYdkUoacT9VWRl0uDEW7vDbks_tWcJUANE75miHVSFsRLzVp0z6QRS8A-6U-bxgPk4MluQZyAw547yznIXQx6K5k79h3Q5XWXZCoLRpUsMobuUIt5V7QrU3wrLvqhL5bMnzwHbz3QzSYT6d5SwYbBLB-UDRNhNwiVw-SMynyyl0eYXm5Sh70OjHuBFTR0b0dpGqqRbsfSmcbiDTCwszsk-U82fECniRaqHQxpG7Kl5ystDd2c73YJ7j85bFpA6-N8fT1jM32e0sJM7oSj21k3xAu4cp7omIf5ObzedtL5uoB9-D2VKTHaFWRhDg-CzF1cwJDRSRPvlhZ5sWyw1hjgpeB2bGwZymew_x\" /><div class=\"fbTimelineFeedbackHeader\"><div class=\"fbTimelineFeedbackActions clearfix\"><span></span><span class=\"UIActionLinks UIActionLinks_bottom\" data-ft=\"{"tn":"=","type":20}\"><button title=\"Like this item\" type=\"submit\" name=\"like\" class=\"like_link stat_elem as_link\" data-ft=\"{"tn":">","type":22}\"><span class=\"default_message\">Like</span><span class=\"saving_message\">Unlike</span></button> · <a class=\"share_action_link\" href=\"/ajax/sharer/?s=22&appid=25554907596&p%5B0%5D=1055580469&p%5B1%5D=10200407437602598&profile_id=1055580469&share_source_type=unknown\" rel=\"dialog\" data-ft=\"{"tn":"J","type":25}\" title=\"Send this to friends or post it on your timeline.\" role=\"button\">Share</a></span></div></div><div><div class=\"uiUfi UFIContainer\" id=\"u_0_1x\"></div></div></form></div><div class=\"-cx-PRIVATE-fbTimelineLightCurationControl__root\"><div class=\"-cx-PRIVATE-fbTimelineLightStarButton__root lfloat\"><i class=\"-cx-PRIVATE-fbTimelineLightStarButton__icon\"></i></div><div class=\"-cx-PRIVATE-uiInlineBlock__root uiPopover -cx-PRIVATE-fbTimelineLightCurationControl__options\" id=\"u_0_1j\"><a class=\"-cx-PRIVATE-fbEntstreamFeedObjectOptions__button -cx-PRIVATE-uiPopover__trigger\" href=\"#\" aria-haspopup=\"true\" aria-expanded=\"false\" rel=\"toggle\" role=\"button\" id=\"u_0_1k\"></a></div></div></div></div><i class=\"spinePointer\"></i><div class=\"bottomBorder\"></div></li><li class=\"fbTimelineUnit fbTimelineTwoColumn clearfix\" data-side=\"l\" data-fixed=\"1\" data-size=\"1\" id=\"tl_unit_2953496614934485437\"><div class=\"topBorder\"></div><div class=\"timelineUnitContainer\" id=\"u_0_1f\" data-gt=\"{"eventtime":"1374851147","viewerid":"100006118350059","profileownerid":"1055580469","unitimpressionid":"b1113c18","contentid":"2953496614934485437","timeline_unit_type":"StatusMessageUnit","timewindowsize":"3","query_type":"39","contextwindowstart":"0","contextwindowend":"1375340399"}\" data-time=\"1373055341\"><div class=\"\"><div role=\"article\"><div class=\"clearfix mbs pbs -cx-PRIVATE-fbTimelineUnitActor__root\"><a class=\"-cx-PUBLIC-fbTimelineUnitActor__imagewrap -cx-PRIVATE-uiImageBlockDeprecated__image -cx-PRIVATE-uiImageBlockDeprecated__smallimage\" href=\"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby?hc_location=timeline\" data-ft=\"{"tn":"\\\\u003C"}\" tabindex=\"-1\" aria-hidden=\"true\" data-hovercard=\"/ajax/hovercard/user.php?id=1055580469&extragetparams=%7B%22hc_location%22%3A%22timeline%22%7D\"><img class=\"-cx-PRIVATE-fbTimelineUnitActor__image img\" src=\"http://jsbngssl.fbcdn-profile-a.akamaihd.net/hprofile-ak-prn2/276274_1055580469_962040234_q.jpg\" alt=\"\" /></a><div class=\"-cx-PRIVATE-uiImageBlockDeprecated__smallcontent -cx-PRIVATE-uiImageBlockDeprecated__content\"><h5 class=\"-cx-PRIVATE-fbTimelineUnitActor__header\" data-ft=\"{"tn":"C"}\"><span class=\"fcg\"><span class=\"fwb\" data-ft=\"{"tn":";"}\"><a href=\"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby?hc_location=timeline\" data-hovercard=\"/ajax/hovercard/user.php?id=1055580469&extragetparams=%7B%22hc_location%22%3A%22timeline%22%7D\">Gregor Richards</a></span></span> </h5><div class=\"-cx-PRIVATE-fbTimelineUnitActor__timestamp fsm fwn fcg\"><a class=\"uiLinkSubtle\" href=\"/LawlabeeTheWallaby/posts/10200350995551582\"><abbr title=\"Friday, July 5, 2013 at 4:15pm\" data-utime=\"1373066141\">July 5</abbr></a><a data-hover=\"tooltip\" aria-label=\"Public\" class=\"uiStreamPrivacy inlineBlock fbStreamPrivacy fbPrivacyAudienceIndicator -cx-PRIVATE-fbTimelineUnitActor__privacy\" href=\"#\" role=\"button\"><i class=\"lock img sp_at8kd9 sx_7236dd\"></i></a></div></div></div><div class=\"-cx-PRIVATE-fbTimelineStatusUnit__root\"><div class=\"userContentWrapper\"><div class=\"-cx-PRIVATE-fbTimelineText__featured\"><span data-ft=\"{"tn":"K"}\" class=\"userContent\">In the Place de la Comédie, there was an accordionist with a very nice, presumably authentic French, Musette accordion. A very French scene.<br /> <br /> This man could not play the Musette if his life depended on it. It made me sad. The twit didn't even TOUCH the bass manual. What an incompetent imbecile.</span></div></div></div></div><div class=\"fbTimelineUFI uiCommentContainer\"><script type=\"text/javascript\">try {\n ((JSBNG_Record.scriptLoad)((\"function ea50c220f0c56f9626ed836465287113b604bb8c2(event) {\\u000a return ((window.Event && Event.__inlineSubmit) && Event.__inlineSubmit(this, event));\\u000a};\"), (\"s5d477cde23cb1a7f57a088737efffe8a30cfd7d4\")));\n ((window.top.JSBNG_Record.callerJS) = (true));\n function ea50c220f0c56f9626ed836465287113b604bb8c2(JSBNG__event) {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s5d477cde23cb1a7f57a088737efffe8a30cfd7d4_0\"), (s5d477cde23cb1a7f57a088737efffe8a30cfd7d4_0_instance), (this), (arguments)))\n };\n (null);\n return (((((JSBNG_Record.get)(window, (\"JSBNG__Event\")))[(\"JSBNG__Event\")]) && (((JSBNG_Record.get)(JSBNG__Event, (\"__inlineSubmit\")))[(\"__inlineSubmit\")])) && (((JSBNG_Record.get)(JSBNG__Event, (\"__inlineSubmit\")))[(\"__inlineSubmit\")])(this, JSBNG__event));\n };\n var s5d477cde23cb1a7f57a088737efffe8a30cfd7d4_0_instance;\n ((s5d477cde23cb1a7f57a088737efffe8a30cfd7d4_0_instance) = ((JSBNG_Record.eventInstance)((\"s5d477cde23cb1a7f57a088737efffe8a30cfd7d4_0\"))));\n ((JSBNG_Record.markFunction)((ea50c220f0c56f9626ed836465287113b604bb8c2)));\n} finally {\n ((window.top.JSBNG_Record.callerJS) = (false));\n ((window.top.JSBNG_Record.flushDeferredEvents)());\n};</script><form rel=\"async\" class=\"live_10200350995551582_316526391751760 commentable_item autoexpand_mode\" method=\"post\" action=\"/ajax/ufi/modify.php\" data-live=\"{"seq":"10200350995551582_4955918"}\" id=\"u_0_1p\" onsubmit=\"return ea50c220f0c56f9626ed836465287113b604bb8c2.call(this, event);\"><input type=\"hidden\" name=\"charset_test\" value=\"€,´,€,´,水,Д,Є\" /><input type=\"hidden\" name=\"fb_dtsg\" value=\"AQApxIm6\" autocomplete=\"off\" /><input type=\"hidden\" autocomplete=\"off\" name=\"feedback_params\" value=\"{"actor":"1055580469","target_fbid":"10200350995551582","target_profile_id":"1055580469","type_id":"22","assoc_obj_id":"","source_app_id":"0","extra_story_params":[],"content_timestamp":"1373055341","check_hash":"AQCBBladrqmNC16S","source":"13"}\" /><input type=\"hidden\" autocomplete=\"off\" name=\"data_only_response\" value=\"1\" /><input type=\"hidden\" autocomplete=\"off\" name=\"timeline_ufi\" value=\"1\" /><input type=\"hidden\" name=\"timeline_log_data\" value=\"AQAlgopmGq0ZHy3R2kG5GCpd5xIfDZrje41Cn5hx-UlsHHRAwheTYxSzlwYwMpREMCS1JzMspOsjwHMvtkLT5mevdKJ5cVCAvAuX27rrKowEqOkMfTMLZUPN1rAxw6MGGS4mPIFncGunb2x4Zvciyb1ByglygI1yMRvuoa0v4NOWz9oh4WDi2m6Yy88oHchGKfGyFif0A5kPret2iWpsleSHzYdahUXoAaZMKVWrob8i3juFAvTKWa-tKVBuqqiY5_tJc35Sx0baaluOD2TWxJk6gE6A0q-OqdD3ula2NuhAZsxRB372jbu-OT-yYpSXLZvKCLeWcqezaITd_2k9ZLyRDI2-ZyHmhsluREWOeZsnozHStiTfaGOkH_uKR5zOCvqJMygffpWg7KXJ8QMncKZt\" /><div class=\"fbTimelineFeedbackHeader\"><div class=\"fbTimelineFeedbackActions clearfix\"><span></span><span class=\"UIActionLinks UIActionLinks_bottom\" data-ft=\"{"tn":"=","type":20}\"><button title=\"Like this item\" type=\"submit\" name=\"like\" class=\"like_link stat_elem as_link\" data-ft=\"{"tn":">","type":22}\"><span class=\"default_message\">Like</span><span class=\"saving_message\">Unlike</span></button> · <a class=\"share_action_link\" href=\"/ajax/sharer/?s=22&appid=25554907596&p%5B0%5D=1055580469&p%5B1%5D=10200350995551582&profile_id=1055580469&share_source_type=unknown\" rel=\"dialog\" data-ft=\"{"tn":"J","type":25}\" title=\"Send this to friends or post it on your timeline.\" role=\"button\">Share</a></span></div></div><div><div class=\"uiUfi UFIContainer\" id=\"u_0_1v\"></div></div></form></div><div class=\"-cx-PRIVATE-fbTimelineLightCurationControl__root\"><div class=\"-cx-PRIVATE-fbTimelineLightStarButton__root lfloat\"><i class=\"-cx-PRIVATE-fbTimelineLightStarButton__icon\"></i></div><div class=\"-cx-PRIVATE-uiInlineBlock__root uiPopover -cx-PRIVATE-fbTimelineLightCurationControl__options\" id=\"u_0_1g\"><a class=\"-cx-PRIVATE-fbEntstreamFeedObjectOptions__button -cx-PRIVATE-uiPopover__trigger\" href=\"#\" aria-haspopup=\"true\" aria-expanded=\"false\" rel=\"toggle\" role=\"button\" id=\"u_0_1h\"></a></div></div></div></div><i class=\"spinePointer\"></i><div class=\"bottomBorder\"></div></li><li class=\"fbTimelineUnit fbTimelineTwoColumn clearfix\" data-side=\"l\" data-fixed=\"1\" data-size=\"1\" id=\"tl_unit_4498726532280095426\"><div class=\"topBorder\"></div><div class=\"timelineUnitContainer\" id=\"u_0_1c\" data-gt=\"{"eventtime":"1374851147","viewerid":"100006118350059","profileownerid":"1055580469","unitimpressionid":"b1113c18","contentid":"4498726532280095426","timeline_unit_type":"StatusMessageUnit","timewindowsize":"3","query_type":"39","contextwindowstart":"0","contextwindowend":"1375340399"}\" data-time=\"1372923465\"><div class=\"\"><div role=\"article\"><div class=\"clearfix mbs pbs -cx-PRIVATE-fbTimelineUnitActor__root\"><a class=\"-cx-PUBLIC-fbTimelineUnitActor__imagewrap -cx-PRIVATE-uiImageBlockDeprecated__image -cx-PRIVATE-uiImageBlockDeprecated__smallimage\" href=\"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby?hc_location=timeline\" data-ft=\"{"tn":"\\\\u003C"}\" tabindex=\"-1\" aria-hidden=\"true\" data-hovercard=\"/ajax/hovercard/user.php?id=1055580469&extragetparams=%7B%22hc_location%22%3A%22timeline%22%7D\"><img class=\"-cx-PRIVATE-fbTimelineUnitActor__image img\" src=\"http://jsbngssl.fbcdn-profile-a.akamaihd.net/hprofile-ak-prn2/276274_1055580469_962040234_q.jpg\" alt=\"\" /></a><div class=\"-cx-PRIVATE-uiImageBlockDeprecated__smallcontent -cx-PRIVATE-uiImageBlockDeprecated__content\"><h5 class=\"-cx-PRIVATE-fbTimelineUnitActor__header\" data-ft=\"{"tn":"C"}\"><span class=\"fcg\"><span class=\"fwb\" data-ft=\"{"tn":";"}\"><a href=\"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby?hc_location=timeline\" data-hovercard=\"/ajax/hovercard/user.php?id=1055580469&extragetparams=%7B%22hc_location%22%3A%22timeline%22%7D\">Gregor Richards</a></span></span> </h5><div class=\"-cx-PRIVATE-fbTimelineUnitActor__timestamp fsm fwn fcg\"><a class=\"uiLinkSubtle\" href=\"/LawlabeeTheWallaby/posts/10200343222477260\"><abbr title=\"Thursday, July 4, 2013 at 3:37am\" data-utime=\"1372934265\">July 4</abbr></a><a data-hover=\"tooltip\" aria-label=\"Public\" class=\"uiStreamPrivacy inlineBlock fbStreamPrivacy fbPrivacyAudienceIndicator -cx-PRIVATE-fbTimelineUnitActor__privacy\" href=\"#\" role=\"button\"><i class=\"lock img sp_at8kd9 sx_7236dd\"></i></a></div></div></div><div class=\"-cx-PRIVATE-fbTimelineStatusUnit__root\"><div class=\"userContentWrapper\"><div class=\"-cx-PRIVATE-fbTimelineText__featured\"><span data-ft=\"{"tn":"K"}\" class=\"userContent\">This is the second time I've been in France on American Independence Day...</span></div></div></div></div><div class=\"fbTimelineUFI uiCommentContainer\"><script type=\"text/javascript\">try {\n ((JSBNG_Record.scriptLoad)((\"function e2e5acfc36cc20d373a9d0d0e9e3546adb0bbe5af(event) {\\u000a return ((window.Event && Event.__inlineSubmit) && Event.__inlineSubmit(this, event));\\u000a};\"), (\"sebf71c05c97e4e230be0ee4c1136c69e88ab589a\")));\n ((window.top.JSBNG_Record.callerJS) = (true));\n function e2e5acfc36cc20d373a9d0d0e9e3546adb0bbe5af(JSBNG__event) {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"sebf71c05c97e4e230be0ee4c1136c69e88ab589a_0\"), (sebf71c05c97e4e230be0ee4c1136c69e88ab589a_0_instance), (this), (arguments)))\n };\n (null);\n return (((((JSBNG_Record.get)(window, (\"JSBNG__Event\")))[(\"JSBNG__Event\")]) && (((JSBNG_Record.get)(JSBNG__Event, (\"__inlineSubmit\")))[(\"__inlineSubmit\")])) && (((JSBNG_Record.get)(JSBNG__Event, (\"__inlineSubmit\")))[(\"__inlineSubmit\")])(this, JSBNG__event));\n };\n var sebf71c05c97e4e230be0ee4c1136c69e88ab589a_0_instance;\n ((sebf71c05c97e4e230be0ee4c1136c69e88ab589a_0_instance) = ((JSBNG_Record.eventInstance)((\"sebf71c05c97e4e230be0ee4c1136c69e88ab589a_0\"))));\n ((JSBNG_Record.markFunction)((e2e5acfc36cc20d373a9d0d0e9e3546adb0bbe5af)));\n} finally {\n ((window.top.JSBNG_Record.callerJS) = (false));\n ((window.top.JSBNG_Record.flushDeferredEvents)());\n};</script><form rel=\"async\" class=\"live_10200343222477260_316526391751760 commentable_item autoexpand_mode\" method=\"post\" action=\"/ajax/ufi/modify.php\" data-live=\"{"seq":"10200343222477260_4950571"}\" id=\"u_0_1o\" onsubmit=\"return e2e5acfc36cc20d373a9d0d0e9e3546adb0bbe5af.call(this, event);\"><input type=\"hidden\" name=\"charset_test\" value=\"€,´,€,´,水,Д,Є\" /><input type=\"hidden\" name=\"fb_dtsg\" value=\"AQApxIm6\" autocomplete=\"off\" /><input type=\"hidden\" autocomplete=\"off\" name=\"feedback_params\" value=\"{"actor":"1055580469","target_fbid":"10200343222477260","target_profile_id":"1055580469","type_id":"22","assoc_obj_id":"","source_app_id":"0","extra_story_params":[],"content_timestamp":"1372923465","check_hash":"AQA0MfY19rbYGyj6","source":"13"}\" /><input type=\"hidden\" autocomplete=\"off\" name=\"data_only_response\" value=\"1\" /><input type=\"hidden\" autocomplete=\"off\" name=\"timeline_ufi\" value=\"1\" /><input type=\"hidden\" name=\"timeline_log_data\" value=\"AQAr9lR2vZdldJ-VKsQo7OWaxXGctSzumkX_OWY9tMv34KoO2FztCqmqb8QBDYnKVWW99VqdbOskntjWhjy7W_MUFXYbmHi4oEJJ321uNu0XUYOzGWm_7u7pnY0zKn9thJ5ghe3h9Y4OukyraP07GphpWlsRiSVa_A-1EMIWIdeKmf-CJmEKmfCxEsM18xb2jjadO65ng8zpr6Dn3Z4o7hjV6OmtF3SCq3PgmXDdmdeFwvX8OgXFZncq4jrAd-dd1qH-0sddZKJuEM2b9WV5eyh_PipSNsi3uC6SpYHby30MLarSM5sgjVZxzOxLhdYkWGiF5kRqMgD0DZdRN5FoDtL6gTy-\\-\\Mt8pP_wYiB8kl7IExZc3NIFNruO-xiWNXHnSp7mFJ4K4onngXPGTiY4s_d4\" /><div class=\"fbTimelineFeedbackHeader\"><div class=\"fbTimelineFeedbackActions clearfix\"><span></span><span class=\"UIActionLinks UIActionLinks_bottom\" data-ft=\"{"tn":"=","type":20}\"><button title=\"Like this item\" type=\"submit\" name=\"like\" class=\"like_link stat_elem as_link\" data-ft=\"{"tn":">","type":22}\"><span class=\"default_message\">Like</span><span class=\"saving_message\">Unlike</span></button> · <a class=\"share_action_link\" href=\"/ajax/sharer/?s=22&appid=25554907596&p%5B0%5D=1055580469&p%5B1%5D=10200343222477260&profile_id=1055580469&share_source_type=unknown\" rel=\"dialog\" data-ft=\"{"tn":"J","type":25}\" title=\"Send this to friends or post it on your timeline.\" role=\"button\">Share</a></span></div></div><div><div class=\"uiUfi UFIContainer\" id=\"u_0_1z\"></div></div></form></div><div class=\"-cx-PRIVATE-fbTimelineLightCurationControl__root\"><div class=\"-cx-PRIVATE-fbTimelineLightStarButton__root lfloat\"><i class=\"-cx-PRIVATE-fbTimelineLightStarButton__icon\"></i></div><div class=\"-cx-PRIVATE-uiInlineBlock__root uiPopover -cx-PRIVATE-fbTimelineLightCurationControl__options\" id=\"u_0_1d\"><a class=\"-cx-PRIVATE-fbEntstreamFeedObjectOptions__button -cx-PRIVATE-uiPopover__trigger\" href=\"#\" aria-haspopup=\"true\" aria-expanded=\"false\" rel=\"toggle\" role=\"button\" id=\"u_0_1e\"></a></div></div></div></div><i class=\"spinePointer\"></i><div class=\"bottomBorder\"></div></li> "; |
| // undefined |
| o33 = null; |
| // 1999 |
| o32.parentNode = o16; |
| // 2001 |
| f81632121_521.returns.push(o32); |
| // undefined |
| o32 = null; |
| // 2003 |
| o32 = {}; |
| // 2004 |
| f81632121_476.returns.push(o32); |
| // 2005 |
| // 2007 |
| o33 = {}; |
| // 2008 |
| f81632121_474.returns.push(o33); |
| // 2009 |
| o34 = {}; |
| // undefined |
| fo81632121_553_firstChild = function() { return fo81632121_553_firstChild.returns[fo81632121_553_firstChild.inst++]; }; |
| fo81632121_553_firstChild.returns = []; |
| fo81632121_553_firstChild.inst = 0; |
| defineGetter(o32, "firstChild", fo81632121_553_firstChild, undefined); |
| // undefined |
| o32 = null; |
| // undefined |
| fo81632121_553_firstChild.returns.push(o34); |
| // 2011 |
| o33.appendChild = f81632121_478; |
| // undefined |
| fo81632121_553_firstChild.returns.push(o34); |
| // 2013 |
| f81632121_478.returns.push(o34); |
| // 2014 |
| o32 = {}; |
| // undefined |
| fo81632121_553_firstChild.returns.push(o32); |
| // undefined |
| fo81632121_553_firstChild.returns.push(o32); |
| // 2018 |
| f81632121_478.returns.push(o32); |
| // undefined |
| o32 = null; |
| // 2019 |
| o32 = {}; |
| // undefined |
| fo81632121_553_firstChild.returns.push(o32); |
| // undefined |
| fo81632121_553_firstChild.returns.push(o32); |
| // 2023 |
| f81632121_478.returns.push(o32); |
| // undefined |
| o32 = null; |
| // 2024 |
| o32 = {}; |
| // undefined |
| fo81632121_553_firstChild.returns.push(o32); |
| // undefined |
| fo81632121_553_firstChild.returns.push(o32); |
| // 2028 |
| f81632121_478.returns.push(o32); |
| // undefined |
| o32 = null; |
| // undefined |
| fo81632121_553_firstChild.returns.push(null); |
| // 2030 |
| o31.appendChild = f81632121_478; |
| // 2031 |
| f81632121_478.returns.push(o33); |
| // undefined |
| o33 = null; |
| // 2033 |
| f81632121_506.returns.push("pagelet_timeline_recent_ocm"); |
| // 2098 |
| o32 = {}; |
| // 2099 |
| f81632121_508.returns.push(o32); |
| // 2100 |
| o32.id = "u_0_1o"; |
| // 2104 |
| o33 = {}; |
| // 2105 |
| f81632121_508.returns.push(o33); |
| // 2106 |
| o33.id = "u_0_1p"; |
| // 2110 |
| o35 = {}; |
| // 2111 |
| f81632121_508.returns.push(o35); |
| // 2112 |
| o35.id = "u_0_1q"; |
| // 2116 |
| o36 = {}; |
| // 2117 |
| f81632121_508.returns.push(o36); |
| // 2118 |
| o36.id = "u_0_1r"; |
| // 2121 |
| o37 = {}; |
| // 2122 |
| f81632121_476.returns.push(o37); |
| // 2123 |
| // 2124 |
| o38 = {}; |
| // undefined |
| fo81632121_563_firstChild = function() { return fo81632121_563_firstChild.returns[fo81632121_563_firstChild.inst++]; }; |
| fo81632121_563_firstChild.returns = []; |
| fo81632121_563_firstChild.inst = 0; |
| defineGetter(o37, "firstChild", fo81632121_563_firstChild, undefined); |
| // undefined |
| fo81632121_563_firstChild.returns.push(o38); |
| // undefined |
| o38 = null; |
| // 2126 |
| // undefined |
| fo81632121_563_firstChild.returns.push(null); |
| // 2128 |
| // undefined |
| fo81632121_563_firstChild.returns.push(null); |
| // 2130 |
| // undefined |
| fo81632121_563_firstChild.returns.push(null); |
| // 2132 |
| // 2133 |
| o38 = {}; |
| // undefined |
| fo81632121_563_firstChild.returns.push(o38); |
| // undefined |
| o38 = null; |
| // 2135 |
| // 2136 |
| o38 = {}; |
| // undefined |
| fo81632121_563_firstChild.returns.push(o38); |
| // undefined |
| o38 = null; |
| // 2138 |
| // 2139 |
| o38 = {}; |
| // undefined |
| fo81632121_563_firstChild.returns.push(o38); |
| // undefined |
| o38 = null; |
| // 2141 |
| // 2142 |
| o38 = {}; |
| // undefined |
| fo81632121_563_firstChild.returns.push(o38); |
| // undefined |
| o38 = null; |
| // 2144 |
| // undefined |
| fo81632121_563_firstChild.returns.push(null); |
| // 2146 |
| // undefined |
| fo81632121_563_firstChild.returns.push(null); |
| // 2148 |
| // undefined |
| fo81632121_563_firstChild.returns.push(null); |
| // 2150 |
| // undefined |
| fo81632121_563_firstChild.returns.push(null); |
| // 2152 |
| // undefined |
| fo81632121_563_firstChild.returns.push(null); |
| // 2154 |
| // undefined |
| fo81632121_563_firstChild.returns.push(null); |
| // 2156 |
| // undefined |
| o37 = null; |
| // 2157 |
| o37 = {}; |
| // undefined |
| fo81632121_563_firstChild.returns.push(o37); |
| // undefined |
| o37 = null; |
| // 2160 |
| o37 = {}; |
| // 2161 |
| f81632121_476.returns.push(o37); |
| // 2162 |
| o38 = {}; |
| // 2163 |
| o0.implementation = o38; |
| // 2165 |
| f81632121_572 = function() { return f81632121_572.returns[f81632121_572.inst++]; }; |
| f81632121_572.returns = []; |
| f81632121_572.inst = 0; |
| // 2166 |
| o38.hasFeature = f81632121_572; |
| // undefined |
| o38 = null; |
| // 2169 |
| f81632121_572.returns.push(false); |
| // 2171 |
| o38 = {}; |
| // 2172 |
| f81632121_476.returns.push(o38); |
| // undefined |
| o38 = null; |
| // 2174 |
| o38 = {}; |
| // 2175 |
| f81632121_476.returns.push(o38); |
| // 2176 |
| f81632121_575 = function() { return f81632121_575.returns[f81632121_575.inst++]; }; |
| f81632121_575.returns = []; |
| f81632121_575.inst = 0; |
| // 2177 |
| o38.setAttribute = f81632121_575; |
| // 2178 |
| f81632121_575.returns.push(undefined); |
| // 2179 |
| o38.JSBNG__onchange = null; |
| // 2181 |
| // 2182 |
| f81632121_576 = function() { return f81632121_576.returns[f81632121_576.inst++]; }; |
| f81632121_576.returns = []; |
| f81632121_576.inst = 0; |
| // 2183 |
| o38.removeAttribute = f81632121_576; |
| // undefined |
| o38 = null; |
| // 2184 |
| f81632121_576.returns.push(undefined); |
| // 2186 |
| o38 = {}; |
| // 2187 |
| f81632121_476.returns.push(o38); |
| // 2188 |
| o38.setAttribute = f81632121_575; |
| // 2189 |
| f81632121_575.returns.push(undefined); |
| // 2190 |
| o38.JSBNG__oninput = null; |
| // 2192 |
| // 2193 |
| o38.removeAttribute = f81632121_576; |
| // undefined |
| o38 = null; |
| // 2194 |
| f81632121_576.returns.push(undefined); |
| // 2195 |
| o38 = {}; |
| // 2196 |
| f81632121_70.returns.push(o38); |
| // undefined |
| o38 = null; |
| // 2197 |
| ow81632121.JSBNG__attachEvent = undefined; |
| // 2198 |
| f81632121_466.returns.push(0.7659583722706884); |
| // 2200 |
| o38 = {}; |
| // 2201 |
| f81632121_476.returns.push(o38); |
| // 2202 |
| // 2203 |
| // 2204 |
| o38.getElementsByTagName = f81632121_502; |
| // 2205 |
| o39 = {}; |
| // 2206 |
| f81632121_502.returns.push(o39); |
| // 2207 |
| o39.length = 0; |
| // undefined |
| o39 = null; |
| // 2209 |
| o39 = {}; |
| // 2210 |
| o38.childNodes = o39; |
| // undefined |
| o38 = null; |
| // 2211 |
| o39.nodeType = void 0; |
| // undefined |
| o39 = null; |
| // 2213 |
| o38 = {}; |
| // 2214 |
| f81632121_508.returns.push(o38); |
| // 2215 |
| o38.id = "u_0_1t"; |
| // 2216 |
| o38.getElementsByTagName = f81632121_502; |
| // 2217 |
| o39 = {}; |
| // 2218 |
| o38.parentNode = o39; |
| // 2236 |
| f81632121_467.returns.push(1374851214506); |
| // 2241 |
| o40 = {}; |
| // 2242 |
| f81632121_504.returns.push(o40); |
| // 2243 |
| o40.length = 0; |
| // undefined |
| o40 = null; |
| // 2244 |
| f81632121_14.returns.push(undefined); |
| // 2245 |
| f81632121_12.returns.push(5); |
| // undefined |
| fo81632121_582_firstChild = function() { return fo81632121_582_firstChild.returns[fo81632121_582_firstChild.inst++]; }; |
| fo81632121_582_firstChild.returns = []; |
| fo81632121_582_firstChild.inst = 0; |
| defineGetter(o38, "firstChild", fo81632121_582_firstChild, undefined); |
| // undefined |
| fo81632121_582_firstChild.returns.push(null); |
| // undefined |
| fo81632121_582_firstChild.returns.push(null); |
| // 2258 |
| f81632121_7.returns.push(undefined); |
| // 2259 |
| ow81632121.JSBNG__onJSBNG__scroll = undefined; |
| // 2260 |
| f81632121_7.returns.push(undefined); |
| // 2261 |
| f81632121_585 = function() { return f81632121_585.returns[f81632121_585.inst++]; }; |
| f81632121_585.returns = []; |
| f81632121_585.inst = 0; |
| // 2262 |
| ow81632121.JSBNG__onresize = f81632121_585; |
| // 2265 |
| o0.nodeName = "#document"; |
| // 2266 |
| o0.__FB_TOKEN = void 0; |
| // 2267 |
| // 2268 |
| o0.getAttribute = void 0; |
| // 2271 |
| f81632121_468.returns.push(undefined); |
| // 2272 |
| o0.JSBNG__onmouseover = null; |
| // 2277 |
| f81632121_468.returns.push(undefined); |
| // 2278 |
| o0.JSBNG__onmousedown = null; |
| // 2283 |
| f81632121_468.returns.push(undefined); |
| // 2284 |
| o0.JSBNG__onmouseup = null; |
| // 2289 |
| f81632121_468.returns.push(undefined); |
| // 2290 |
| o0.JSBNG__onmousemove = null; |
| // 2295 |
| f81632121_468.returns.push(undefined); |
| // 2296 |
| o0.JSBNG__onmouseout = null; |
| // 2301 |
| f81632121_468.returns.push(undefined); |
| // 2302 |
| o0.JSBNG__onclick = null; |
| // 2307 |
| f81632121_468.returns.push(undefined); |
| // 2308 |
| o0.JSBNG__ondblclick = null; |
| // 2313 |
| f81632121_468.returns.push(undefined); |
| // 2314 |
| o0.JSBNG__onkeyup = null; |
| // 2319 |
| f81632121_468.returns.push(undefined); |
| // 2320 |
| o0.JSBNG__onkeypress = null; |
| // 2325 |
| f81632121_468.returns.push(undefined); |
| // 2326 |
| o0.JSBNG__onkeydown = null; |
| // 2331 |
| f81632121_468.returns.push(undefined); |
| // 2332 |
| o0.JSBNG__oninput = null; |
| // 2337 |
| f81632121_468.returns.push(undefined); |
| // 2338 |
| o0.JSBNG__onchange = null; |
| // 2343 |
| f81632121_468.returns.push(undefined); |
| // 2344 |
| o0.JSBNG__onselectionchange = null; |
| // 2349 |
| f81632121_468.returns.push(undefined); |
| // 2350 |
| o0.JSBNG__onDOMCharacterDataModified = void 0; |
| // 2353 |
| o40 = {}; |
| // 2354 |
| f81632121_476.returns.push(o40); |
| // 2355 |
| o40.setAttribute = f81632121_575; |
| // 2356 |
| f81632121_575.returns.push(undefined); |
| // 2357 |
| o40.JSBNG__ondrag = null; |
| // 2359 |
| // 2360 |
| o40.removeAttribute = f81632121_576; |
| // undefined |
| o40 = null; |
| // 2361 |
| f81632121_576.returns.push(undefined); |
| // 2363 |
| o40 = {}; |
| // 2364 |
| f81632121_476.returns.push(o40); |
| // 2365 |
| o40.setAttribute = f81632121_575; |
| // 2366 |
| f81632121_575.returns.push(undefined); |
| // 2367 |
| o40.JSBNG__onwheel = void 0; |
| // 2369 |
| o40.removeAttribute = f81632121_576; |
| // undefined |
| o40 = null; |
| // 2370 |
| f81632121_576.returns.push(undefined); |
| // 2373 |
| f81632121_572.returns.push(false); |
| // 2375 |
| o40 = {}; |
| // 2376 |
| f81632121_476.returns.push(o40); |
| // 2377 |
| o40.setAttribute = f81632121_575; |
| // 2378 |
| f81632121_575.returns.push(undefined); |
| // 2379 |
| o40.JSBNG__onmousewheel = null; |
| // 2381 |
| // 2382 |
| o40.removeAttribute = f81632121_576; |
| // undefined |
| o40 = null; |
| // 2383 |
| f81632121_576.returns.push(undefined); |
| // 2387 |
| f81632121_468.returns.push(undefined); |
| // 2388 |
| o0.JSBNG__onDOMMouseScroll = void 0; |
| // 2390 |
| o37.JSBNG__addEventListener = f81632121_468; |
| // undefined |
| o37 = null; |
| // 2392 |
| o37 = {}; |
| // 2393 |
| f81632121_476.returns.push(o37); |
| // 2394 |
| o37.setAttribute = f81632121_575; |
| // 2395 |
| f81632121_575.returns.push(undefined); |
| // 2396 |
| o37.JSBNG__onJSBNG__scroll = void 0; |
| // 2398 |
| o37.removeAttribute = f81632121_576; |
| // undefined |
| o37 = null; |
| // 2399 |
| f81632121_576.returns.push(undefined); |
| // 2405 |
| o37 = {}; |
| // 2406 |
| f81632121_476.returns.push(o37); |
| // 2407 |
| o37.setAttribute = f81632121_575; |
| // 2408 |
| f81632121_575.returns.push(undefined); |
| // 2409 |
| o37.JSBNG__onJSBNG__focus = void 0; |
| // 2411 |
| o37.removeAttribute = f81632121_576; |
| // undefined |
| o37 = null; |
| // 2412 |
| f81632121_576.returns.push(undefined); |
| // 2414 |
| o37 = {}; |
| // 2415 |
| f81632121_476.returns.push(o37); |
| // 2416 |
| o37.setAttribute = f81632121_575; |
| // 2417 |
| f81632121_575.returns.push(undefined); |
| // 2418 |
| o37.JSBNG__onfocusin = void 0; |
| // 2420 |
| o37.removeAttribute = f81632121_576; |
| // undefined |
| o37 = null; |
| // 2421 |
| f81632121_576.returns.push(undefined); |
| // undefined |
| fo81632121_582_firstChild.returns.push(null); |
| // 2423 |
| f81632121_466.returns.push(0.982902241172269); |
| // 2425 |
| f81632121_467.returns.push(1374851214525); |
| // 2427 |
| f81632121_467.returns.push(1374851214526); |
| // 2429 |
| o16.nodeName = "BODY"; |
| // 2431 |
| o16.contentEditable = "inherit"; |
| // 2433 |
| f81632121_467.returns.push(1374851214540); |
| // 2435 |
| f81632121_467.returns.push(1374851214540); |
| // 2437 |
| f81632121_467.returns.push(1374851214540); |
| // 2439 |
| f81632121_467.returns.push(1374851214540); |
| // 2441 |
| f81632121_467.returns.push(1374851214540); |
| // 2442 |
| o38.nodeType = 1; |
| // 2446 |
| o37 = {}; |
| // 2447 |
| f81632121_474.returns.push(o37); |
| // 2449 |
| f81632121_467.returns.push(1374851214554); |
| // 2451 |
| o40 = {}; |
| // 2452 |
| f81632121_476.returns.push(o40); |
| // 2453 |
| // 2454 |
| // 2455 |
| // 2456 |
| // 2457 |
| // 2458 |
| // 2459 |
| o37.appendChild = f81632121_478; |
| // 2460 |
| f81632121_478.returns.push(o40); |
| // undefined |
| o40 = null; |
| // 2462 |
| f81632121_467.returns.push(1374851214554); |
| // 2464 |
| o40 = {}; |
| // 2465 |
| f81632121_476.returns.push(o40); |
| // 2466 |
| // 2467 |
| // 2468 |
| // 2469 |
| // 2470 |
| // 2471 |
| // 2473 |
| f81632121_478.returns.push(o40); |
| // undefined |
| o40 = null; |
| // 2475 |
| f81632121_467.returns.push(1374851214555); |
| // 2477 |
| o40 = {}; |
| // 2478 |
| f81632121_476.returns.push(o40); |
| // 2479 |
| // 2480 |
| // 2481 |
| // 2482 |
| // 2483 |
| // 2484 |
| // 2486 |
| f81632121_478.returns.push(o40); |
| // undefined |
| o40 = null; |
| // 2488 |
| f81632121_478.returns.push(o37); |
| // undefined |
| o37 = null; |
| // 2490 |
| o37 = {}; |
| // 2491 |
| f81632121_476.returns.push(o37); |
| // 2492 |
| o37.setAttribute = f81632121_575; |
| // 2494 |
| f81632121_575.returns.push(undefined); |
| // 2495 |
| // 2496 |
| o37.firstChild = null; |
| // 2498 |
| o40 = {}; |
| // 2499 |
| f81632121_474.returns.push(o40); |
| // 2500 |
| f81632121_598 = function() { return f81632121_598.returns[f81632121_598.inst++]; }; |
| f81632121_598.returns = []; |
| f81632121_598.inst = 0; |
| // 2501 |
| o0.createTextNode = f81632121_598; |
| // 2502 |
| o41 = {}; |
| // 2503 |
| f81632121_598.returns.push(o41); |
| // 2504 |
| o40.appendChild = f81632121_478; |
| // 2505 |
| f81632121_478.returns.push(o41); |
| // undefined |
| o41 = null; |
| // 2506 |
| o37.appendChild = f81632121_478; |
| // 2507 |
| f81632121_478.returns.push(o40); |
| // undefined |
| o40 = null; |
| // 2509 |
| o40 = {}; |
| // 2510 |
| f81632121_476.returns.push(o40); |
| // 2511 |
| // 2512 |
| // 2513 |
| o41 = {}; |
| // 2514 |
| o40.classList = o41; |
| // 2516 |
| f81632121_602 = function() { return f81632121_602.returns[f81632121_602.inst++]; }; |
| f81632121_602.returns = []; |
| f81632121_602.inst = 0; |
| // 2517 |
| o41.add = f81632121_602; |
| // undefined |
| o41 = null; |
| // 2518 |
| f81632121_602.returns.push(undefined); |
| // 2520 |
| o41 = {}; |
| // 2521 |
| f81632121_476.returns.push(o41); |
| // 2522 |
| o41.firstChild = null; |
| // 2524 |
| o42 = {}; |
| // 2525 |
| f81632121_474.returns.push(o42); |
| // 2527 |
| o43 = {}; |
| // 2528 |
| f81632121_598.returns.push(o43); |
| // 2529 |
| o42.appendChild = f81632121_478; |
| // 2530 |
| f81632121_478.returns.push(o43); |
| // undefined |
| o43 = null; |
| // 2531 |
| o37.__html = void 0; |
| // undefined |
| o37 = null; |
| // 2532 |
| o40.__html = void 0; |
| // undefined |
| o40 = null; |
| // 2533 |
| o41.appendChild = f81632121_478; |
| // 2534 |
| f81632121_478.returns.push(o42); |
| // undefined |
| o42 = null; |
| // 2535 |
| o41.innerHTML = "When you add a hat it removes the long hair "; |
| // undefined |
| o41 = null; |
| // 2537 |
| f81632121_467.returns.push(1374851214574); |
| // 2541 |
| o37 = {}; |
| // 2542 |
| f81632121_474.returns.push(o37); |
| // 2544 |
| f81632121_478.returns.push(o37); |
| // undefined |
| o37 = null; |
| // 2546 |
| o37 = {}; |
| // 2547 |
| f81632121_476.returns.push(o37); |
| // 2548 |
| o37.firstChild = null; |
| // 2550 |
| o40 = {}; |
| // 2551 |
| f81632121_474.returns.push(o40); |
| // 2553 |
| o41 = {}; |
| // 2554 |
| f81632121_598.returns.push(o41); |
| // 2555 |
| o40.appendChild = f81632121_478; |
| // 2556 |
| f81632121_478.returns.push(o41); |
| // undefined |
| o41 = null; |
| // 2557 |
| o37.appendChild = f81632121_478; |
| // 2558 |
| f81632121_478.returns.push(o40); |
| // undefined |
| o40 = null; |
| // 2559 |
| o37.innerHTML = "so.. the hair is a hat? steam's not down with hats on hats?"; |
| // undefined |
| o37 = null; |
| // 2561 |
| f81632121_467.returns.push(1374851214586); |
| // 2565 |
| o37 = {}; |
| // 2566 |
| f81632121_474.returns.push(o37); |
| // 2568 |
| f81632121_478.returns.push(o37); |
| // undefined |
| o37 = null; |
| // 2570 |
| o37 = {}; |
| // 2571 |
| f81632121_476.returns.push(o37); |
| // 2572 |
| o37.firstChild = null; |
| // 2574 |
| o40 = {}; |
| // 2575 |
| f81632121_474.returns.push(o40); |
| // 2577 |
| o41 = {}; |
| // 2578 |
| f81632121_598.returns.push(o41); |
| // 2579 |
| o40.appendChild = f81632121_478; |
| // 2580 |
| f81632121_478.returns.push(o41); |
| // undefined |
| o41 = null; |
| // 2581 |
| o37.appendChild = f81632121_478; |
| // 2582 |
| f81632121_478.returns.push(o40); |
| // undefined |
| o40 = null; |
| // 2583 |
| o37.innerHTML = "(This is Saints Row the Third, so can't really blame Steam)"; |
| // undefined |
| o37 = null; |
| // 2585 |
| o37 = {}; |
| // 2586 |
| f81632121_476.returns.push(o37); |
| // 2587 |
| o37.firstChild = null; |
| // 2589 |
| o40 = {}; |
| // 2590 |
| f81632121_474.returns.push(o40); |
| // 2592 |
| o41 = {}; |
| // 2593 |
| f81632121_598.returns.push(o41); |
| // 2594 |
| o40.appendChild = f81632121_478; |
| // 2595 |
| f81632121_478.returns.push(o41); |
| // undefined |
| o41 = null; |
| // 2596 |
| o37.appendChild = f81632121_478; |
| // 2597 |
| f81632121_478.returns.push(o40); |
| // undefined |
| o40 = null; |
| // 2598 |
| o37.innerHTML = "No, hats are a separate customization option, but it wouldn't let you combine long hair with the hat. It's like he stuffed all the hair into his hat."; |
| // undefined |
| o37 = null; |
| // 2600 |
| f81632121_467.returns.push(1374851214595); |
| // 2604 |
| o37 = {}; |
| // 2605 |
| f81632121_474.returns.push(o37); |
| // 2607 |
| f81632121_478.returns.push(o37); |
| // undefined |
| o37 = null; |
| // 2609 |
| o37 = {}; |
| // 2610 |
| f81632121_476.returns.push(o37); |
| // 2611 |
| o37.setAttribute = f81632121_575; |
| // 2613 |
| f81632121_575.returns.push(undefined); |
| // 2614 |
| // 2615 |
| o37.firstChild = null; |
| // 2617 |
| o40 = {}; |
| // 2618 |
| f81632121_474.returns.push(o40); |
| // 2620 |
| o41 = {}; |
| // 2621 |
| f81632121_598.returns.push(o41); |
| // 2622 |
| o40.appendChild = f81632121_478; |
| // 2623 |
| f81632121_478.returns.push(o41); |
| // undefined |
| o41 = null; |
| // 2624 |
| o37.appendChild = f81632121_478; |
| // 2625 |
| f81632121_478.returns.push(o40); |
| // undefined |
| o40 = null; |
| // 2627 |
| o40 = {}; |
| // 2628 |
| f81632121_476.returns.push(o40); |
| // 2629 |
| // 2630 |
| // 2631 |
| o41 = {}; |
| // 2632 |
| o40.classList = o41; |
| // 2634 |
| o41.add = f81632121_602; |
| // undefined |
| o41 = null; |
| // 2635 |
| f81632121_602.returns.push(undefined); |
| // 2637 |
| o41 = {}; |
| // 2638 |
| f81632121_476.returns.push(o41); |
| // 2639 |
| o41.firstChild = null; |
| // 2641 |
| o42 = {}; |
| // 2642 |
| f81632121_474.returns.push(o42); |
| // 2644 |
| o43 = {}; |
| // 2645 |
| f81632121_598.returns.push(o43); |
| // 2646 |
| o42.appendChild = f81632121_478; |
| // 2647 |
| f81632121_478.returns.push(o43); |
| // undefined |
| o43 = null; |
| // 2648 |
| o37.__html = void 0; |
| // undefined |
| o37 = null; |
| // 2649 |
| o40.__html = void 0; |
| // undefined |
| o40 = null; |
| // 2650 |
| o41.appendChild = f81632121_478; |
| // 2651 |
| f81632121_478.returns.push(o42); |
| // undefined |
| o42 = null; |
| // 2652 |
| o41.innerHTML = "You finally tried Saints Row the Third? "; |
| // undefined |
| o41 = null; |
| // 2654 |
| f81632121_467.returns.push(1374851214609); |
| // 2656 |
| o38.nextSibling = null; |
| // 2657 |
| o39.removeChild = f81632121_521; |
| // 2658 |
| f81632121_521.returns.push(o38); |
| // 2659 |
| // 2660 |
| o39.appendChild = f81632121_478; |
| // 2661 |
| f81632121_478.returns.push(o38); |
| // 2663 |
| f81632121_467.returns.push(1374851214619); |
| // 2665 |
| f81632121_467.returns.push(1374851214619); |
| // 2668 |
| f81632121_467.returns.push(1374851214619); |
| // 2670 |
| f81632121_467.returns.push(1374851214620); |
| // 2672 |
| f81632121_467.returns.push(1374851214620); |
| // 2674 |
| f81632121_467.returns.push(1374851214620); |
| // 2675 |
| o37 = {}; |
| // undefined |
| fo81632121_582_firstChild.returns.push(o37); |
| // 2677 |
| o37.getAttribute = f81632121_506; |
| // 2679 |
| f81632121_506.returns.push(".r[5uo4e]"); |
| // 2680 |
| o40 = {}; |
| // 2681 |
| o37.firstChild = o40; |
| // 2682 |
| o40.getAttribute = f81632121_506; |
| // 2684 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][0]"); |
| // 2685 |
| o41 = {}; |
| // 2686 |
| o40.firstChild = o41; |
| // undefined |
| o41 = null; |
| // 2687 |
| o41 = {}; |
| // 2688 |
| o40.nextSibling = o41; |
| // undefined |
| o40 = null; |
| // 2689 |
| o41.getAttribute = f81632121_506; |
| // 2691 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195897}"); |
| // 2692 |
| o40 = {}; |
| // 2693 |
| o41.firstChild = o40; |
| // 2694 |
| o40.getAttribute = f81632121_506; |
| // 2696 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195897}.[0]"); |
| // 2697 |
| o42 = {}; |
| // 2698 |
| o40.firstChild = o42; |
| // undefined |
| o40 = null; |
| // 2699 |
| o42.getAttribute = f81632121_506; |
| // 2701 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195897}.[0].[left]"); |
| // 2702 |
| o40 = {}; |
| // 2703 |
| o42.firstChild = o40; |
| // undefined |
| o40 = null; |
| // 2704 |
| o40 = {}; |
| // 2705 |
| o42.nextSibling = o40; |
| // undefined |
| o42 = null; |
| // 2706 |
| o40.getAttribute = f81632121_506; |
| // 2708 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195897}.[0].[right]"); |
| // 2709 |
| o42 = {}; |
| // 2710 |
| o40.firstChild = o42; |
| // undefined |
| o40 = null; |
| // 2711 |
| o42.getAttribute = f81632121_506; |
| // 2713 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195897}.[0].[right].[0]"); |
| // 2714 |
| o40 = {}; |
| // 2715 |
| o42.firstChild = o40; |
| // undefined |
| o42 = null; |
| // 2716 |
| o40.getAttribute = f81632121_506; |
| // 2718 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195897}.[0].[right].[0].[left]"); |
| // 2719 |
| o42 = {}; |
| // 2720 |
| o40.firstChild = o42; |
| // undefined |
| o40 = null; |
| // 2721 |
| o42.getAttribute = f81632121_506; |
| // 2723 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195897}.[0].[right].[0].[left].[0]"); |
| // 2724 |
| o40 = {}; |
| // 2725 |
| o42.firstChild = o40; |
| // undefined |
| o42 = null; |
| // 2726 |
| o40.getAttribute = f81632121_506; |
| // 2728 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195897}.[0].[right].[0].[left].[0].[0]"); |
| // 2729 |
| o42 = {}; |
| // 2730 |
| o40.firstChild = o42; |
| // undefined |
| o40 = null; |
| // 2731 |
| o42.getAttribute = f81632121_506; |
| // 2733 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195897}.[0].[right].[0].[left].[0].[0].[0][0]"); |
| // 2734 |
| o40 = {}; |
| // 2735 |
| o42.firstChild = o40; |
| // undefined |
| o40 = null; |
| // 2736 |
| o40 = {}; |
| // 2737 |
| o42.nextSibling = o40; |
| // undefined |
| o42 = null; |
| // 2738 |
| o40.getAttribute = f81632121_506; |
| // 2740 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195897}.[0].[right].[0].[left].[0].[0].[0][1]"); |
| // 2741 |
| o42 = {}; |
| // 2742 |
| o40.firstChild = o42; |
| // undefined |
| o42 = null; |
| // 2743 |
| o42 = {}; |
| // 2744 |
| o40.nextSibling = o42; |
| // undefined |
| o40 = null; |
| // 2745 |
| o42.getAttribute = f81632121_506; |
| // 2747 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195897}.[0].[right].[0].[left].[0].[0].[0][2]"); |
| // 2748 |
| o40 = {}; |
| // 2749 |
| o42.firstChild = o40; |
| // undefined |
| o40 = null; |
| // 2750 |
| o40 = {}; |
| // 2751 |
| o42.nextSibling = o40; |
| // undefined |
| o42 = null; |
| // 2752 |
| o40.getAttribute = f81632121_506; |
| // undefined |
| o40 = null; |
| // 2754 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195897}.[0].[right].[0].[left].[0].[0].[3]"); |
| // 2757 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195897}"); |
| // 2758 |
| f81632121_645 = function() { return f81632121_645.returns[f81632121_645.inst++]; }; |
| f81632121_645.returns = []; |
| f81632121_645.inst = 0; |
| // 2759 |
| o38.contains = f81632121_645; |
| // 2761 |
| f81632121_645.returns.push(true); |
| // undefined |
| fo81632121_582_firstChild.returns.push(o37); |
| // 2765 |
| f81632121_506.returns.push(".r[5uo4e]"); |
| // 2769 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][0]"); |
| // 2774 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195897}"); |
| // 2776 |
| o40 = {}; |
| // 2777 |
| o41.nextSibling = o40; |
| // undefined |
| o41 = null; |
| // 2778 |
| o40.getAttribute = f81632121_506; |
| // 2780 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195898}"); |
| // 2781 |
| o41 = {}; |
| // 2782 |
| o40.firstChild = o41; |
| // 2783 |
| o41.getAttribute = f81632121_506; |
| // 2785 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195898}.[0]"); |
| // 2786 |
| o42 = {}; |
| // 2787 |
| o41.firstChild = o42; |
| // undefined |
| o41 = null; |
| // 2788 |
| o42.getAttribute = f81632121_506; |
| // 2790 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195898}.[0].[left]"); |
| // 2791 |
| o41 = {}; |
| // 2792 |
| o42.firstChild = o41; |
| // undefined |
| o41 = null; |
| // 2793 |
| o41 = {}; |
| // 2794 |
| o42.nextSibling = o41; |
| // undefined |
| o42 = null; |
| // 2795 |
| o41.getAttribute = f81632121_506; |
| // 2797 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195898}.[0].[right]"); |
| // 2798 |
| o42 = {}; |
| // 2799 |
| o41.firstChild = o42; |
| // undefined |
| o41 = null; |
| // 2800 |
| o42.getAttribute = f81632121_506; |
| // 2802 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195898}.[0].[right].[0]"); |
| // 2803 |
| o41 = {}; |
| // 2804 |
| o42.firstChild = o41; |
| // undefined |
| o42 = null; |
| // 2805 |
| o41.getAttribute = f81632121_506; |
| // 2807 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195898}.[0].[right].[0].[left]"); |
| // 2808 |
| o42 = {}; |
| // 2809 |
| o41.firstChild = o42; |
| // undefined |
| o41 = null; |
| // 2810 |
| o42.getAttribute = f81632121_506; |
| // 2812 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195898}.[0].[right].[0].[left].[0]"); |
| // 2813 |
| o41 = {}; |
| // 2814 |
| o42.firstChild = o41; |
| // undefined |
| o42 = null; |
| // 2815 |
| o41.getAttribute = f81632121_506; |
| // 2817 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195898}.[0].[right].[0].[left].[0].[0]"); |
| // 2818 |
| o42 = {}; |
| // 2819 |
| o41.firstChild = o42; |
| // undefined |
| o41 = null; |
| // 2820 |
| o42.getAttribute = f81632121_506; |
| // 2822 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195898}.[0].[right].[0].[left].[0].[0].[0][0]"); |
| // 2823 |
| o41 = {}; |
| // 2824 |
| o42.firstChild = o41; |
| // undefined |
| o41 = null; |
| // 2825 |
| o41 = {}; |
| // 2826 |
| o42.nextSibling = o41; |
| // undefined |
| o42 = null; |
| // 2827 |
| o41.getAttribute = f81632121_506; |
| // 2829 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195898}.[0].[right].[0].[left].[0].[0].[0][1]"); |
| // 2830 |
| o42 = {}; |
| // 2831 |
| o41.firstChild = o42; |
| // undefined |
| o42 = null; |
| // 2832 |
| o42 = {}; |
| // 2833 |
| o41.nextSibling = o42; |
| // undefined |
| o41 = null; |
| // 2834 |
| o42.getAttribute = f81632121_506; |
| // 2836 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195898}.[0].[right].[0].[left].[0].[0].[0][2]"); |
| // 2837 |
| o41 = {}; |
| // 2838 |
| o42.firstChild = o41; |
| // undefined |
| o41 = null; |
| // 2839 |
| o41 = {}; |
| // 2840 |
| o42.nextSibling = o41; |
| // undefined |
| o42 = null; |
| // 2841 |
| o41.getAttribute = f81632121_506; |
| // undefined |
| o41 = null; |
| // 2843 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195898}.[0].[right].[0].[left].[0].[0].[3]"); |
| // 2846 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195898}"); |
| // 2849 |
| f81632121_645.returns.push(true); |
| // undefined |
| fo81632121_582_firstChild.returns.push(o37); |
| // 2853 |
| f81632121_506.returns.push(".r[5uo4e]"); |
| // 2857 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][0]"); |
| // 2862 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195897}"); |
| // 2867 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195898}"); |
| // 2869 |
| o41 = {}; |
| // 2870 |
| o40.nextSibling = o41; |
| // undefined |
| o40 = null; |
| // 2871 |
| o41.getAttribute = f81632121_506; |
| // 2873 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195907}"); |
| // 2874 |
| o40 = {}; |
| // 2875 |
| o41.firstChild = o40; |
| // 2876 |
| o40.getAttribute = f81632121_506; |
| // 2878 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195907}.[0]"); |
| // 2879 |
| o42 = {}; |
| // 2880 |
| o40.firstChild = o42; |
| // undefined |
| o40 = null; |
| // 2881 |
| o42.getAttribute = f81632121_506; |
| // 2883 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195907}.[0].[left]"); |
| // 2884 |
| o40 = {}; |
| // 2885 |
| o42.firstChild = o40; |
| // undefined |
| o40 = null; |
| // 2886 |
| o40 = {}; |
| // 2887 |
| o42.nextSibling = o40; |
| // undefined |
| o42 = null; |
| // 2888 |
| o40.getAttribute = f81632121_506; |
| // 2890 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195907}.[0].[right]"); |
| // 2891 |
| o42 = {}; |
| // 2892 |
| o40.firstChild = o42; |
| // undefined |
| o40 = null; |
| // 2893 |
| o42.getAttribute = f81632121_506; |
| // 2895 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195907}.[0].[right].[0]"); |
| // 2896 |
| o40 = {}; |
| // 2897 |
| o42.firstChild = o40; |
| // undefined |
| o42 = null; |
| // 2898 |
| o40.getAttribute = f81632121_506; |
| // 2900 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195907}.[0].[right].[0].[left]"); |
| // 2901 |
| o42 = {}; |
| // 2902 |
| o40.firstChild = o42; |
| // undefined |
| o40 = null; |
| // 2903 |
| o42.getAttribute = f81632121_506; |
| // 2905 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195907}.[0].[right].[0].[left].[0]"); |
| // 2906 |
| o40 = {}; |
| // 2907 |
| o42.firstChild = o40; |
| // undefined |
| o42 = null; |
| // 2908 |
| o40.getAttribute = f81632121_506; |
| // 2910 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195907}.[0].[right].[0].[left].[0].[0]"); |
| // 2911 |
| o42 = {}; |
| // 2912 |
| o40.firstChild = o42; |
| // undefined |
| o40 = null; |
| // 2913 |
| o42.getAttribute = f81632121_506; |
| // 2915 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195907}.[0].[right].[0].[left].[0].[0].[0][0]"); |
| // 2916 |
| o40 = {}; |
| // 2917 |
| o42.firstChild = o40; |
| // undefined |
| o40 = null; |
| // 2918 |
| o40 = {}; |
| // 2919 |
| o42.nextSibling = o40; |
| // undefined |
| o42 = null; |
| // 2920 |
| o40.getAttribute = f81632121_506; |
| // 2922 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195907}.[0].[right].[0].[left].[0].[0].[0][1]"); |
| // 2923 |
| o42 = {}; |
| // 2924 |
| o40.firstChild = o42; |
| // undefined |
| o42 = null; |
| // 2925 |
| o42 = {}; |
| // 2926 |
| o40.nextSibling = o42; |
| // undefined |
| o40 = null; |
| // 2927 |
| o42.getAttribute = f81632121_506; |
| // 2929 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195907}.[0].[right].[0].[left].[0].[0].[0][2]"); |
| // 2930 |
| o40 = {}; |
| // 2931 |
| o42.firstChild = o40; |
| // undefined |
| o40 = null; |
| // 2932 |
| o40 = {}; |
| // 2933 |
| o42.nextSibling = o40; |
| // undefined |
| o42 = null; |
| // 2934 |
| o40.getAttribute = f81632121_506; |
| // undefined |
| o40 = null; |
| // 2936 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195907}.[0].[right].[0].[left].[0].[0].[3]"); |
| // 2939 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195907}"); |
| // 2942 |
| f81632121_645.returns.push(true); |
| // undefined |
| fo81632121_582_firstChild.returns.push(o37); |
| // undefined |
| o37 = null; |
| // 2946 |
| f81632121_506.returns.push(".r[5uo4e]"); |
| // 2950 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][0]"); |
| // 2955 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195897}"); |
| // 2960 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195898}"); |
| // 2965 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3195907}"); |
| // 2967 |
| o37 = {}; |
| // 2968 |
| o41.nextSibling = o37; |
| // undefined |
| o41 = null; |
| // 2969 |
| o37.getAttribute = f81632121_506; |
| // 2971 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3198160}"); |
| // 2972 |
| o40 = {}; |
| // 2973 |
| o37.firstChild = o40; |
| // undefined |
| o37 = null; |
| // 2974 |
| o40.getAttribute = f81632121_506; |
| // 2976 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3198160}.[0]"); |
| // 2977 |
| o37 = {}; |
| // 2978 |
| o40.firstChild = o37; |
| // undefined |
| o40 = null; |
| // 2979 |
| o37.getAttribute = f81632121_506; |
| // 2981 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3198160}.[0].[left]"); |
| // 2982 |
| o40 = {}; |
| // 2983 |
| o37.firstChild = o40; |
| // undefined |
| o40 = null; |
| // 2984 |
| o40 = {}; |
| // 2985 |
| o37.nextSibling = o40; |
| // undefined |
| o37 = null; |
| // 2986 |
| o40.getAttribute = f81632121_506; |
| // 2988 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3198160}.[0].[right]"); |
| // 2989 |
| o37 = {}; |
| // 2990 |
| o40.firstChild = o37; |
| // undefined |
| o40 = null; |
| // 2991 |
| o37.getAttribute = f81632121_506; |
| // 2993 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3198160}.[0].[right].[0]"); |
| // 2994 |
| o40 = {}; |
| // 2995 |
| o37.firstChild = o40; |
| // undefined |
| o37 = null; |
| // 2996 |
| o40.getAttribute = f81632121_506; |
| // 2998 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3198160}.[0].[right].[0].[left]"); |
| // 2999 |
| o37 = {}; |
| // 3000 |
| o40.firstChild = o37; |
| // undefined |
| o40 = null; |
| // 3001 |
| o37.getAttribute = f81632121_506; |
| // 3003 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3198160}.[0].[right].[0].[left].[0]"); |
| // 3004 |
| o40 = {}; |
| // 3005 |
| o37.firstChild = o40; |
| // undefined |
| o37 = null; |
| // 3006 |
| o40.getAttribute = f81632121_506; |
| // 3008 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3198160}.[0].[right].[0].[left].[0].[0]"); |
| // 3009 |
| o37 = {}; |
| // 3010 |
| o40.firstChild = o37; |
| // undefined |
| o40 = null; |
| // 3011 |
| o37.getAttribute = f81632121_506; |
| // 3013 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3198160}.[0].[right].[0].[left].[0].[0].[0][0]"); |
| // 3014 |
| o40 = {}; |
| // 3015 |
| o37.firstChild = o40; |
| // undefined |
| o40 = null; |
| // 3016 |
| o40 = {}; |
| // 3017 |
| o37.nextSibling = o40; |
| // undefined |
| o37 = null; |
| // 3018 |
| o40.getAttribute = f81632121_506; |
| // 3020 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3198160}.[0].[right].[0].[left].[0].[0].[0][1]"); |
| // 3021 |
| o37 = {}; |
| // 3022 |
| o40.firstChild = o37; |
| // undefined |
| o37 = null; |
| // 3023 |
| o37 = {}; |
| // 3024 |
| o40.nextSibling = o37; |
| // undefined |
| o40 = null; |
| // 3025 |
| o37.getAttribute = f81632121_506; |
| // 3027 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3198160}.[0].[right].[0].[left].[0].[0].[0][2]"); |
| // 3028 |
| o40 = {}; |
| // 3029 |
| o37.firstChild = o40; |
| // undefined |
| o40 = null; |
| // 3030 |
| o40 = {}; |
| // 3031 |
| o37.nextSibling = o40; |
| // undefined |
| o37 = null; |
| // 3032 |
| o40.getAttribute = f81632121_506; |
| // undefined |
| o40 = null; |
| // 3034 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3198160}.[0].[right].[0].[left].[0].[0].[3]"); |
| // 3037 |
| f81632121_506.returns.push(".r[5uo4e].[1][4][1]{comment10200453104264236_3198160}"); |
| // 3040 |
| f81632121_645.returns.push(true); |
| // 3042 |
| f81632121_467.returns.push(1374851214645); |
| // 3047 |
| o37 = {}; |
| // 3048 |
| f81632121_504.returns.push(o37); |
| // 3049 |
| o37.length = 4; |
| // 3050 |
| o40 = {}; |
| // 3051 |
| o37["0"] = o40; |
| // 3052 |
| o41 = {}; |
| // 3053 |
| o37["1"] = o41; |
| // 3054 |
| o42 = {}; |
| // 3055 |
| o37["2"] = o42; |
| // 3056 |
| o43 = {}; |
| // 3057 |
| o37["3"] = o43; |
| // undefined |
| o37 = null; |
| // 3058 |
| f81632121_14.returns.push(undefined); |
| // 3059 |
| f81632121_12.returns.push(6); |
| // 3060 |
| o38.nodeName = "DIV"; |
| // undefined |
| o38 = null; |
| // 3062 |
| o39.nodeName = "DIV"; |
| // 3063 |
| o39.parentNode = o36; |
| // undefined |
| o39 = null; |
| // 3064 |
| o36.nodeName = "FORM"; |
| // 3068 |
| o37 = {}; |
| // 3069 |
| f81632121_474.returns.push(o37); |
| // 3071 |
| f81632121_478.returns.push(o37); |
| // undefined |
| o37 = null; |
| // 3084 |
| o37 = {}; |
| // 3085 |
| f81632121_508.returns.push(o37); |
| // 3086 |
| o37.id = "u_0_1v"; |
| // 3087 |
| o37.getElementsByTagName = f81632121_502; |
| // 3088 |
| o38 = {}; |
| // 3089 |
| o37.parentNode = o38; |
| // 3106 |
| f81632121_467.returns.push(1374851214684); |
| // 3111 |
| o39 = {}; |
| // 3112 |
| f81632121_504.returns.push(o39); |
| // 3113 |
| o39.length = 4; |
| // 3114 |
| o39["0"] = o40; |
| // 3115 |
| o39["1"] = o41; |
| // 3116 |
| o39["2"] = o42; |
| // 3117 |
| o39["3"] = o43; |
| // undefined |
| o39 = null; |
| // 3118 |
| f81632121_14.returns.push(undefined); |
| // 3119 |
| f81632121_12.returns.push(7); |
| // undefined |
| fo81632121_700_firstChild = function() { return fo81632121_700_firstChild.returns[fo81632121_700_firstChild.inst++]; }; |
| fo81632121_700_firstChild.returns = []; |
| fo81632121_700_firstChild.inst = 0; |
| defineGetter(o37, "firstChild", fo81632121_700_firstChild, undefined); |
| // undefined |
| fo81632121_700_firstChild.returns.push(null); |
| // undefined |
| fo81632121_700_firstChild.returns.push(null); |
| // undefined |
| fo81632121_700_firstChild.returns.push(null); |
| // 3132 |
| f81632121_466.returns.push(0.4838148937560618); |
| // 3134 |
| f81632121_467.returns.push(1374851214688); |
| // 3136 |
| f81632121_467.returns.push(1374851214688); |
| // 3142 |
| f81632121_467.returns.push(1374851214688); |
| // 3144 |
| f81632121_467.returns.push(1374851214689); |
| // 3146 |
| f81632121_467.returns.push(1374851214689); |
| // 3148 |
| f81632121_467.returns.push(1374851214689); |
| // 3150 |
| f81632121_467.returns.push(1374851214689); |
| // 3151 |
| o37.nodeType = 1; |
| // 3155 |
| o39 = {}; |
| // 3156 |
| f81632121_474.returns.push(o39); |
| // 3158 |
| f81632121_478.returns.push(o39); |
| // undefined |
| o39 = null; |
| // 3162 |
| o39 = {}; |
| // 3163 |
| f81632121_474.returns.push(o39); |
| // 3165 |
| f81632121_478.returns.push(o39); |
| // undefined |
| o39 = null; |
| // 3167 |
| o39 = {}; |
| // 3168 |
| f81632121_476.returns.push(o39); |
| // 3169 |
| o39.firstChild = null; |
| // 3171 |
| o44 = {}; |
| // 3172 |
| f81632121_474.returns.push(o44); |
| // 3174 |
| o45 = {}; |
| // 3175 |
| f81632121_598.returns.push(o45); |
| // 3176 |
| o44.appendChild = f81632121_478; |
| // 3177 |
| f81632121_478.returns.push(o45); |
| // undefined |
| o45 = null; |
| // 3178 |
| o39.appendChild = f81632121_478; |
| // 3179 |
| f81632121_478.returns.push(o44); |
| // undefined |
| o44 = null; |
| // 3180 |
| o39.innerHTML = "You should have snatched it out of his hands, and played it/"; |
| // undefined |
| o39 = null; |
| // 3182 |
| f81632121_467.returns.push(1374851214713); |
| // 3186 |
| o39 = {}; |
| // 3187 |
| f81632121_474.returns.push(o39); |
| // 3189 |
| f81632121_478.returns.push(o39); |
| // undefined |
| o39 = null; |
| // 3191 |
| o39 = {}; |
| // 3192 |
| f81632121_476.returns.push(o39); |
| // 3193 |
| o39.firstChild = null; |
| // 3195 |
| o44 = {}; |
| // 3196 |
| f81632121_474.returns.push(o44); |
| // 3198 |
| o45 = {}; |
| // 3199 |
| f81632121_598.returns.push(o45); |
| // 3200 |
| o44.appendChild = f81632121_478; |
| // 3201 |
| f81632121_478.returns.push(o45); |
| // undefined |
| o45 = null; |
| // 3202 |
| o39.appendChild = f81632121_478; |
| // 3203 |
| f81632121_478.returns.push(o44); |
| // undefined |
| o44 = null; |
| // 3204 |
| o39.innerHTML = "I've found that stealing musical instruments in non-English-speaking countries hasn't brought me great luck in the past."; |
| // undefined |
| o39 = null; |
| // 3206 |
| f81632121_467.returns.push(1374851214723); |
| // 3210 |
| o39 = {}; |
| // 3211 |
| f81632121_474.returns.push(o39); |
| // 3213 |
| f81632121_478.returns.push(o39); |
| // undefined |
| o39 = null; |
| // 3215 |
| o39 = {}; |
| // 3216 |
| f81632121_476.returns.push(o39); |
| // 3217 |
| o39.firstChild = null; |
| // 3219 |
| o44 = {}; |
| // 3220 |
| f81632121_474.returns.push(o44); |
| // 3222 |
| o45 = {}; |
| // 3223 |
| f81632121_598.returns.push(o45); |
| // 3224 |
| o44.appendChild = f81632121_478; |
| // 3225 |
| f81632121_478.returns.push(o45); |
| // undefined |
| o45 = null; |
| // 3226 |
| o39.appendChild = f81632121_478; |
| // 3227 |
| f81632121_478.returns.push(o44); |
| // undefined |
| o44 = null; |
| // 3228 |
| o39.innerHTML = "But in English-speaking countries it's just fine."; |
| // undefined |
| o39 = null; |
| // 3230 |
| f81632121_467.returns.push(1374851214731); |
| // 3234 |
| o39 = {}; |
| // 3235 |
| f81632121_474.returns.push(o39); |
| // 3237 |
| f81632121_478.returns.push(o39); |
| // undefined |
| o39 = null; |
| // 3239 |
| o39 = {}; |
| // 3240 |
| f81632121_476.returns.push(o39); |
| // 3241 |
| o39.firstChild = null; |
| // 3243 |
| o44 = {}; |
| // 3244 |
| f81632121_474.returns.push(o44); |
| // 3246 |
| o45 = {}; |
| // 3247 |
| f81632121_598.returns.push(o45); |
| // 3248 |
| o44.appendChild = f81632121_478; |
| // 3249 |
| f81632121_478.returns.push(o45); |
| // undefined |
| o45 = null; |
| // 3250 |
| o39.appendChild = f81632121_478; |
| // 3251 |
| f81632121_478.returns.push(o44); |
| // undefined |
| o44 = null; |
| // 3252 |
| o39.innerHTML = "Naturally."; |
| // undefined |
| o39 = null; |
| // 3254 |
| f81632121_467.returns.push(1374851214741); |
| // 3256 |
| o37.nextSibling = null; |
| // 3257 |
| o38.removeChild = f81632121_521; |
| // 3258 |
| f81632121_521.returns.push(o37); |
| // 3259 |
| // 3260 |
| o38.appendChild = f81632121_478; |
| // 3261 |
| f81632121_478.returns.push(o37); |
| // 3263 |
| f81632121_467.returns.push(1374851214759); |
| // 3265 |
| f81632121_467.returns.push(1374851214759); |
| // 3268 |
| f81632121_467.returns.push(1374851214759); |
| // 3270 |
| f81632121_467.returns.push(1374851214759); |
| // 3272 |
| f81632121_467.returns.push(1374851214759); |
| // 3274 |
| f81632121_467.returns.push(1374851214759); |
| // 3275 |
| o39 = {}; |
| // undefined |
| fo81632121_700_firstChild.returns.push(o39); |
| // 3277 |
| o39.getAttribute = f81632121_506; |
| // 3279 |
| f81632121_506.returns.push(".r[2vp51]"); |
| // 3280 |
| o44 = {}; |
| // 3281 |
| o39.firstChild = o44; |
| // 3282 |
| o44.getAttribute = f81632121_506; |
| // 3284 |
| f81632121_506.returns.push(".r[2vp51].[1][0]"); |
| // 3285 |
| o45 = {}; |
| // 3286 |
| o44.firstChild = o45; |
| // undefined |
| o45 = null; |
| // 3287 |
| o45 = {}; |
| // 3288 |
| o44.nextSibling = o45; |
| // undefined |
| o44 = null; |
| // 3289 |
| o45.getAttribute = f81632121_506; |
| // 3291 |
| f81632121_506.returns.push(".r[2vp51].[1][4][0]"); |
| // 3292 |
| o44 = {}; |
| // 3293 |
| o45.firstChild = o44; |
| // undefined |
| o44 = null; |
| // 3294 |
| o44 = {}; |
| // 3295 |
| o45.nextSibling = o44; |
| // undefined |
| o45 = null; |
| // 3296 |
| o44.getAttribute = f81632121_506; |
| // 3298 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4954379}"); |
| // 3299 |
| o45 = {}; |
| // 3300 |
| o44.firstChild = o45; |
| // 3301 |
| o45.getAttribute = f81632121_506; |
| // 3303 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4954379}.[0]"); |
| // 3304 |
| o46 = {}; |
| // 3305 |
| o45.firstChild = o46; |
| // undefined |
| o45 = null; |
| // 3306 |
| o46.getAttribute = f81632121_506; |
| // 3308 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4954379}.[0].[left]"); |
| // 3309 |
| o45 = {}; |
| // 3310 |
| o46.firstChild = o45; |
| // undefined |
| o45 = null; |
| // 3311 |
| o45 = {}; |
| // 3312 |
| o46.nextSibling = o45; |
| // undefined |
| o46 = null; |
| // 3313 |
| o45.getAttribute = f81632121_506; |
| // 3315 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4954379}.[0].[right]"); |
| // 3316 |
| o46 = {}; |
| // 3317 |
| o45.firstChild = o46; |
| // undefined |
| o45 = null; |
| // 3318 |
| o46.getAttribute = f81632121_506; |
| // 3320 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4954379}.[0].[right].[0]"); |
| // 3321 |
| o45 = {}; |
| // 3322 |
| o46.firstChild = o45; |
| // undefined |
| o46 = null; |
| // 3323 |
| o45.getAttribute = f81632121_506; |
| // 3325 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4954379}.[0].[right].[0].[left]"); |
| // 3326 |
| o46 = {}; |
| // 3327 |
| o45.firstChild = o46; |
| // undefined |
| o45 = null; |
| // 3328 |
| o46.getAttribute = f81632121_506; |
| // 3330 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4954379}.[0].[right].[0].[left].[0]"); |
| // 3331 |
| o45 = {}; |
| // 3332 |
| o46.firstChild = o45; |
| // undefined |
| o46 = null; |
| // 3333 |
| o45.getAttribute = f81632121_506; |
| // 3335 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4954379}.[0].[right].[0].[left].[0].[0]"); |
| // 3336 |
| o46 = {}; |
| // 3337 |
| o45.firstChild = o46; |
| // undefined |
| o45 = null; |
| // 3338 |
| o46.getAttribute = f81632121_506; |
| // 3340 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4954379}.[0].[right].[0].[left].[0].[0].[0][0]"); |
| // 3341 |
| o45 = {}; |
| // 3342 |
| o46.firstChild = o45; |
| // undefined |
| o45 = null; |
| // 3343 |
| o45 = {}; |
| // 3344 |
| o46.nextSibling = o45; |
| // undefined |
| o46 = null; |
| // 3345 |
| o45.getAttribute = f81632121_506; |
| // 3347 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4954379}.[0].[right].[0].[left].[0].[0].[0][1]"); |
| // 3348 |
| o46 = {}; |
| // 3349 |
| o45.firstChild = o46; |
| // undefined |
| o46 = null; |
| // 3350 |
| o46 = {}; |
| // 3351 |
| o45.nextSibling = o46; |
| // undefined |
| o45 = null; |
| // 3352 |
| o46.getAttribute = f81632121_506; |
| // 3354 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4954379}.[0].[right].[0].[left].[0].[0].[0][2]"); |
| // 3355 |
| o45 = {}; |
| // 3356 |
| o46.firstChild = o45; |
| // undefined |
| o45 = null; |
| // 3357 |
| o45 = {}; |
| // 3358 |
| o46.nextSibling = o45; |
| // undefined |
| o46 = null; |
| // 3359 |
| o45.getAttribute = f81632121_506; |
| // undefined |
| o45 = null; |
| // 3361 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4954379}.[0].[right].[0].[left].[0].[0].[3]"); |
| // 3364 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4954379}"); |
| // 3365 |
| o37.contains = f81632121_645; |
| // 3367 |
| f81632121_645.returns.push(true); |
| // undefined |
| fo81632121_700_firstChild.returns.push(o39); |
| // 3371 |
| f81632121_506.returns.push(".r[2vp51]"); |
| // 3375 |
| f81632121_506.returns.push(".r[2vp51].[1][0]"); |
| // 3380 |
| f81632121_506.returns.push(".r[2vp51].[1][4][0]"); |
| // 3385 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4954379}"); |
| // 3387 |
| o45 = {}; |
| // 3388 |
| o44.nextSibling = o45; |
| // undefined |
| o44 = null; |
| // 3389 |
| o45.getAttribute = f81632121_506; |
| // 3391 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955913}"); |
| // 3392 |
| o44 = {}; |
| // 3393 |
| o45.firstChild = o44; |
| // 3394 |
| o44.getAttribute = f81632121_506; |
| // 3396 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955913}.[0]"); |
| // 3397 |
| o46 = {}; |
| // 3398 |
| o44.firstChild = o46; |
| // undefined |
| o44 = null; |
| // 3399 |
| o46.getAttribute = f81632121_506; |
| // 3401 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955913}.[0].[left]"); |
| // 3402 |
| o44 = {}; |
| // 3403 |
| o46.firstChild = o44; |
| // undefined |
| o44 = null; |
| // 3404 |
| o44 = {}; |
| // 3405 |
| o46.nextSibling = o44; |
| // undefined |
| o46 = null; |
| // 3406 |
| o44.getAttribute = f81632121_506; |
| // 3408 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955913}.[0].[right]"); |
| // 3409 |
| o46 = {}; |
| // 3410 |
| o44.firstChild = o46; |
| // undefined |
| o44 = null; |
| // 3411 |
| o46.getAttribute = f81632121_506; |
| // 3413 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955913}.[0].[right].[0]"); |
| // 3414 |
| o44 = {}; |
| // 3415 |
| o46.firstChild = o44; |
| // undefined |
| o46 = null; |
| // 3416 |
| o44.getAttribute = f81632121_506; |
| // 3418 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955913}.[0].[right].[0].[left]"); |
| // 3419 |
| o46 = {}; |
| // 3420 |
| o44.firstChild = o46; |
| // undefined |
| o44 = null; |
| // 3421 |
| o46.getAttribute = f81632121_506; |
| // 3423 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955913}.[0].[right].[0].[left].[0]"); |
| // 3424 |
| o44 = {}; |
| // 3425 |
| o46.firstChild = o44; |
| // undefined |
| o46 = null; |
| // 3426 |
| o44.getAttribute = f81632121_506; |
| // 3428 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955913}.[0].[right].[0].[left].[0].[0]"); |
| // 3429 |
| o46 = {}; |
| // 3430 |
| o44.firstChild = o46; |
| // undefined |
| o44 = null; |
| // 3431 |
| o46.getAttribute = f81632121_506; |
| // 3433 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955913}.[0].[right].[0].[left].[0].[0].[0][0]"); |
| // 3434 |
| o44 = {}; |
| // 3435 |
| o46.firstChild = o44; |
| // undefined |
| o44 = null; |
| // 3436 |
| o44 = {}; |
| // 3437 |
| o46.nextSibling = o44; |
| // undefined |
| o46 = null; |
| // 3438 |
| o44.getAttribute = f81632121_506; |
| // 3440 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955913}.[0].[right].[0].[left].[0].[0].[0][1]"); |
| // 3441 |
| o46 = {}; |
| // 3442 |
| o44.firstChild = o46; |
| // undefined |
| o46 = null; |
| // 3443 |
| o46 = {}; |
| // 3444 |
| o44.nextSibling = o46; |
| // undefined |
| o44 = null; |
| // 3445 |
| o46.getAttribute = f81632121_506; |
| // 3447 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955913}.[0].[right].[0].[left].[0].[0].[0][2]"); |
| // 3448 |
| o44 = {}; |
| // 3449 |
| o46.firstChild = o44; |
| // undefined |
| o44 = null; |
| // 3450 |
| o44 = {}; |
| // 3451 |
| o46.nextSibling = o44; |
| // undefined |
| o46 = null; |
| // 3452 |
| o44.getAttribute = f81632121_506; |
| // undefined |
| o44 = null; |
| // 3454 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955913}.[0].[right].[0].[left].[0].[0].[3]"); |
| // 3457 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955913}"); |
| // 3460 |
| f81632121_645.returns.push(true); |
| // undefined |
| fo81632121_700_firstChild.returns.push(o39); |
| // 3464 |
| f81632121_506.returns.push(".r[2vp51]"); |
| // 3468 |
| f81632121_506.returns.push(".r[2vp51].[1][0]"); |
| // 3473 |
| f81632121_506.returns.push(".r[2vp51].[1][4][0]"); |
| // 3478 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4954379}"); |
| // 3483 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955913}"); |
| // 3485 |
| o44 = {}; |
| // 3486 |
| o45.nextSibling = o44; |
| // undefined |
| o45 = null; |
| // 3487 |
| o44.getAttribute = f81632121_506; |
| // 3489 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955915}"); |
| // 3490 |
| o45 = {}; |
| // 3491 |
| o44.firstChild = o45; |
| // 3492 |
| o45.getAttribute = f81632121_506; |
| // 3494 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955915}.[0]"); |
| // 3495 |
| o46 = {}; |
| // 3496 |
| o45.firstChild = o46; |
| // undefined |
| o45 = null; |
| // 3497 |
| o46.getAttribute = f81632121_506; |
| // 3499 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955915}.[0].[left]"); |
| // 3500 |
| o45 = {}; |
| // 3501 |
| o46.firstChild = o45; |
| // undefined |
| o45 = null; |
| // 3502 |
| o45 = {}; |
| // 3503 |
| o46.nextSibling = o45; |
| // undefined |
| o46 = null; |
| // 3504 |
| o45.getAttribute = f81632121_506; |
| // 3506 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955915}.[0].[right]"); |
| // 3507 |
| o46 = {}; |
| // 3508 |
| o45.firstChild = o46; |
| // undefined |
| o45 = null; |
| // 3509 |
| o46.getAttribute = f81632121_506; |
| // 3511 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955915}.[0].[right].[0]"); |
| // 3512 |
| o45 = {}; |
| // 3513 |
| o46.firstChild = o45; |
| // undefined |
| o46 = null; |
| // 3514 |
| o45.getAttribute = f81632121_506; |
| // 3516 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955915}.[0].[right].[0].[left]"); |
| // 3517 |
| o46 = {}; |
| // 3518 |
| o45.firstChild = o46; |
| // undefined |
| o45 = null; |
| // 3519 |
| o46.getAttribute = f81632121_506; |
| // 3521 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955915}.[0].[right].[0].[left].[0]"); |
| // 3522 |
| o45 = {}; |
| // 3523 |
| o46.firstChild = o45; |
| // undefined |
| o46 = null; |
| // 3524 |
| o45.getAttribute = f81632121_506; |
| // 3526 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955915}.[0].[right].[0].[left].[0].[0]"); |
| // 3527 |
| o46 = {}; |
| // 3528 |
| o45.firstChild = o46; |
| // undefined |
| o45 = null; |
| // 3529 |
| o46.getAttribute = f81632121_506; |
| // 3531 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955915}.[0].[right].[0].[left].[0].[0].[0][0]"); |
| // 3532 |
| o45 = {}; |
| // 3533 |
| o46.firstChild = o45; |
| // undefined |
| o45 = null; |
| // 3534 |
| o45 = {}; |
| // 3535 |
| o46.nextSibling = o45; |
| // undefined |
| o46 = null; |
| // 3536 |
| o45.getAttribute = f81632121_506; |
| // 3538 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955915}.[0].[right].[0].[left].[0].[0].[0][1]"); |
| // 3539 |
| o46 = {}; |
| // 3540 |
| o45.firstChild = o46; |
| // undefined |
| o46 = null; |
| // 3541 |
| o46 = {}; |
| // 3542 |
| o45.nextSibling = o46; |
| // undefined |
| o45 = null; |
| // 3543 |
| o46.getAttribute = f81632121_506; |
| // 3545 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955915}.[0].[right].[0].[left].[0].[0].[0][2]"); |
| // 3546 |
| o45 = {}; |
| // 3547 |
| o46.firstChild = o45; |
| // undefined |
| o45 = null; |
| // 3548 |
| o45 = {}; |
| // 3549 |
| o46.nextSibling = o45; |
| // undefined |
| o46 = null; |
| // 3550 |
| o45.getAttribute = f81632121_506; |
| // undefined |
| o45 = null; |
| // 3552 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955915}.[0].[right].[0].[left].[0].[0].[3]"); |
| // 3555 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955915}"); |
| // 3558 |
| f81632121_645.returns.push(true); |
| // undefined |
| fo81632121_700_firstChild.returns.push(o39); |
| // undefined |
| o39 = null; |
| // 3562 |
| f81632121_506.returns.push(".r[2vp51]"); |
| // 3566 |
| f81632121_506.returns.push(".r[2vp51].[1][0]"); |
| // 3571 |
| f81632121_506.returns.push(".r[2vp51].[1][4][0]"); |
| // 3576 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4954379}"); |
| // 3581 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955913}"); |
| // 3586 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955915}"); |
| // 3588 |
| o39 = {}; |
| // 3589 |
| o44.nextSibling = o39; |
| // undefined |
| o44 = null; |
| // 3590 |
| o39.getAttribute = f81632121_506; |
| // 3592 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955918}"); |
| // 3593 |
| o44 = {}; |
| // 3594 |
| o39.firstChild = o44; |
| // undefined |
| o39 = null; |
| // 3595 |
| o44.getAttribute = f81632121_506; |
| // 3597 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955918}.[0]"); |
| // 3598 |
| o39 = {}; |
| // 3599 |
| o44.firstChild = o39; |
| // undefined |
| o44 = null; |
| // 3600 |
| o39.getAttribute = f81632121_506; |
| // 3602 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955918}.[0].[left]"); |
| // 3603 |
| o44 = {}; |
| // 3604 |
| o39.firstChild = o44; |
| // undefined |
| o44 = null; |
| // 3605 |
| o44 = {}; |
| // 3606 |
| o39.nextSibling = o44; |
| // undefined |
| o39 = null; |
| // 3607 |
| o44.getAttribute = f81632121_506; |
| // 3609 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955918}.[0].[right]"); |
| // 3610 |
| o39 = {}; |
| // 3611 |
| o44.firstChild = o39; |
| // undefined |
| o44 = null; |
| // 3612 |
| o39.getAttribute = f81632121_506; |
| // 3614 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955918}.[0].[right].[0]"); |
| // 3615 |
| o44 = {}; |
| // 3616 |
| o39.firstChild = o44; |
| // undefined |
| o39 = null; |
| // 3617 |
| o44.getAttribute = f81632121_506; |
| // 3619 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955918}.[0].[right].[0].[left]"); |
| // 3620 |
| o39 = {}; |
| // 3621 |
| o44.firstChild = o39; |
| // undefined |
| o44 = null; |
| // 3622 |
| o39.getAttribute = f81632121_506; |
| // 3624 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955918}.[0].[right].[0].[left].[0]"); |
| // 3625 |
| o44 = {}; |
| // 3626 |
| o39.firstChild = o44; |
| // undefined |
| o39 = null; |
| // 3627 |
| o44.getAttribute = f81632121_506; |
| // 3629 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955918}.[0].[right].[0].[left].[0].[0]"); |
| // 3630 |
| o39 = {}; |
| // 3631 |
| o44.firstChild = o39; |
| // undefined |
| o44 = null; |
| // 3632 |
| o39.getAttribute = f81632121_506; |
| // 3634 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955918}.[0].[right].[0].[left].[0].[0].[0][0]"); |
| // 3635 |
| o44 = {}; |
| // 3636 |
| o39.firstChild = o44; |
| // undefined |
| o44 = null; |
| // 3637 |
| o44 = {}; |
| // 3638 |
| o39.nextSibling = o44; |
| // undefined |
| o39 = null; |
| // 3639 |
| o44.getAttribute = f81632121_506; |
| // 3641 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955918}.[0].[right].[0].[left].[0].[0].[0][1]"); |
| // 3642 |
| o39 = {}; |
| // 3643 |
| o44.firstChild = o39; |
| // undefined |
| o39 = null; |
| // 3644 |
| o39 = {}; |
| // 3645 |
| o44.nextSibling = o39; |
| // undefined |
| o44 = null; |
| // 3646 |
| o39.getAttribute = f81632121_506; |
| // 3648 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955918}.[0].[right].[0].[left].[0].[0].[0][2]"); |
| // 3649 |
| o44 = {}; |
| // 3650 |
| o39.firstChild = o44; |
| // undefined |
| o44 = null; |
| // 3651 |
| o44 = {}; |
| // 3652 |
| o39.nextSibling = o44; |
| // undefined |
| o39 = null; |
| // 3653 |
| o44.getAttribute = f81632121_506; |
| // undefined |
| o44 = null; |
| // 3655 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955918}.[0].[right].[0].[left].[0].[0].[3]"); |
| // 3658 |
| f81632121_506.returns.push(".r[2vp51].[1][4][1]{comment10200350995551582_4955918}"); |
| // 3661 |
| f81632121_645.returns.push(true); |
| // 3663 |
| f81632121_467.returns.push(1374851214792); |
| // 3668 |
| o39 = {}; |
| // 3669 |
| f81632121_504.returns.push(o39); |
| // 3670 |
| o39.length = 8; |
| // 3671 |
| o39["0"] = o40; |
| // 3672 |
| o39["1"] = o41; |
| // 3673 |
| o39["2"] = o42; |
| // 3674 |
| o39["3"] = o43; |
| // 3675 |
| o44 = {}; |
| // 3676 |
| o39["4"] = o44; |
| // 3677 |
| o45 = {}; |
| // 3678 |
| o39["5"] = o45; |
| // 3679 |
| o46 = {}; |
| // 3680 |
| o39["6"] = o46; |
| // 3681 |
| o47 = {}; |
| // 3682 |
| o39["7"] = o47; |
| // undefined |
| o39 = null; |
| // 3683 |
| f81632121_14.returns.push(undefined); |
| // 3684 |
| f81632121_12.returns.push(8); |
| // 3685 |
| o37.nodeName = "DIV"; |
| // undefined |
| o37 = null; |
| // 3687 |
| o38.nodeName = "DIV"; |
| // 3688 |
| o38.parentNode = o33; |
| // undefined |
| o38 = null; |
| // 3689 |
| o33.nodeName = "FORM"; |
| // 3693 |
| o37 = {}; |
| // 3694 |
| f81632121_474.returns.push(o37); |
| // 3696 |
| f81632121_478.returns.push(o37); |
| // undefined |
| o37 = null; |
| // 3701 |
| o37 = {}; |
| // 3702 |
| f81632121_508.returns.push(o37); |
| // 3703 |
| o37.id = "u_0_1x"; |
| // 3704 |
| o37.getElementsByTagName = f81632121_502; |
| // 3705 |
| o38 = {}; |
| // 3706 |
| o37.parentNode = o38; |
| // 3724 |
| f81632121_467.returns.push(1374851214824); |
| // 3729 |
| o39 = {}; |
| // 3730 |
| f81632121_504.returns.push(o39); |
| // 3731 |
| o39.length = 8; |
| // 3732 |
| o39["0"] = o40; |
| // 3733 |
| o39["1"] = o41; |
| // 3734 |
| o39["2"] = o42; |
| // 3735 |
| o39["3"] = o43; |
| // 3736 |
| o39["4"] = o44; |
| // 3737 |
| o39["5"] = o45; |
| // 3738 |
| o39["6"] = o46; |
| // 3739 |
| o39["7"] = o47; |
| // undefined |
| o39 = null; |
| // 3740 |
| f81632121_14.returns.push(undefined); |
| // 3741 |
| f81632121_12.returns.push(9); |
| // undefined |
| fo81632121_795_firstChild = function() { return fo81632121_795_firstChild.returns[fo81632121_795_firstChild.inst++]; }; |
| fo81632121_795_firstChild.returns = []; |
| fo81632121_795_firstChild.inst = 0; |
| defineGetter(o37, "firstChild", fo81632121_795_firstChild, undefined); |
| // undefined |
| fo81632121_795_firstChild.returns.push(null); |
| // undefined |
| fo81632121_795_firstChild.returns.push(null); |
| // undefined |
| fo81632121_795_firstChild.returns.push(null); |
| // 3756 |
| f81632121_466.returns.push(0.9252282343804836); |
| // 3758 |
| f81632121_467.returns.push(1374851214828); |
| // 3760 |
| f81632121_467.returns.push(1374851214829); |
| // 3766 |
| f81632121_467.returns.push(1374851214829); |
| // 3768 |
| f81632121_467.returns.push(1374851214829); |
| // 3770 |
| f81632121_467.returns.push(1374851214835); |
| // 3772 |
| f81632121_467.returns.push(1374851214835); |
| // 3774 |
| f81632121_467.returns.push(1374851214835); |
| // 3775 |
| o37.nodeType = 1; |
| // 3779 |
| o39 = {}; |
| // 3780 |
| f81632121_474.returns.push(o39); |
| // 3782 |
| f81632121_478.returns.push(o39); |
| // undefined |
| o39 = null; |
| // 3784 |
| o39 = {}; |
| // 3785 |
| f81632121_476.returns.push(o39); |
| // 3786 |
| o39.firstChild = null; |
| // 3788 |
| o48 = {}; |
| // 3789 |
| f81632121_474.returns.push(o48); |
| // 3791 |
| o49 = {}; |
| // 3792 |
| f81632121_598.returns.push(o49); |
| // 3793 |
| o48.appendChild = f81632121_478; |
| // 3794 |
| f81632121_478.returns.push(o49); |
| // undefined |
| o49 = null; |
| // 3795 |
| o39.appendChild = f81632121_478; |
| // 3796 |
| f81632121_478.returns.push(o48); |
| // undefined |
| o48 = null; |
| // 3797 |
| o39.innerHTML = "You are the antithesis of what my husband has been writing his dissertation about."; |
| // undefined |
| o39 = null; |
| // 3800 |
| f81632121_467.returns.push(1374851214859); |
| // 3804 |
| o39 = {}; |
| // 3805 |
| f81632121_474.returns.push(o39); |
| // 3807 |
| f81632121_478.returns.push(o39); |
| // undefined |
| o39 = null; |
| // 3809 |
| o39 = {}; |
| // 3810 |
| f81632121_476.returns.push(o39); |
| // 3811 |
| o39.firstChild = null; |
| // 3813 |
| o48 = {}; |
| // 3814 |
| f81632121_474.returns.push(o48); |
| // 3816 |
| o49 = {}; |
| // 3817 |
| f81632121_598.returns.push(o49); |
| // 3818 |
| o48.appendChild = f81632121_478; |
| // 3819 |
| f81632121_478.returns.push(o49); |
| // undefined |
| o49 = null; |
| // 3820 |
| o39.appendChild = f81632121_478; |
| // 3821 |
| f81632121_478.returns.push(o48); |
| // undefined |
| o48 = null; |
| // 3822 |
| o39.innerHTML = "Harry: I'm turning 27, not 4½..."; |
| // undefined |
| o39 = null; |
| // 3824 |
| o39 = {}; |
| // 3825 |
| f81632121_476.returns.push(o39); |
| // 3826 |
| o39.firstChild = null; |
| // 3828 |
| o48 = {}; |
| // 3829 |
| f81632121_474.returns.push(o48); |
| // 3831 |
| o49 = {}; |
| // 3832 |
| f81632121_598.returns.push(o49); |
| // 3833 |
| o48.appendChild = f81632121_478; |
| // 3834 |
| f81632121_478.returns.push(o49); |
| // undefined |
| o49 = null; |
| // 3835 |
| o39.appendChild = f81632121_478; |
| // 3836 |
| f81632121_478.returns.push(o48); |
| // undefined |
| o48 = null; |
| // 3837 |
| o39.innerHTML = "Chrissi: Oh?"; |
| // undefined |
| o39 = null; |
| // 3839 |
| f81632121_467.returns.push(1374851214869); |
| // 3843 |
| o39 = {}; |
| // 3844 |
| f81632121_474.returns.push(o39); |
| // 3846 |
| f81632121_478.returns.push(o39); |
| // undefined |
| o39 = null; |
| // 3848 |
| o39 = {}; |
| // 3849 |
| f81632121_476.returns.push(o39); |
| // 3850 |
| o39.firstChild = null; |
| // 3852 |
| o48 = {}; |
| // 3853 |
| f81632121_474.returns.push(o48); |
| // 3855 |
| o49 = {}; |
| // 3856 |
| f81632121_598.returns.push(o49); |
| // 3857 |
| o48.appendChild = f81632121_478; |
| // 3858 |
| f81632121_478.returns.push(o49); |
| // undefined |
| o49 = null; |
| // 3859 |
| o39.appendChild = f81632121_478; |
| // 3860 |
| f81632121_478.returns.push(o48); |
| // undefined |
| o48 = null; |
| // 3861 |
| o39.innerHTML = "irony vs satire/sarcasm, pragmatism, william james type stuff"; |
| // undefined |
| o39 = null; |
| // 3864 |
| f81632121_467.returns.push(1374851214880); |
| // 3868 |
| o39 = {}; |
| // 3869 |
| f81632121_474.returns.push(o39); |
| // 3871 |
| f81632121_478.returns.push(o39); |
| // undefined |
| o39 = null; |
| // 3873 |
| o39 = {}; |
| // 3874 |
| f81632121_476.returns.push(o39); |
| // 3875 |
| o39.setAttribute = f81632121_575; |
| // 3877 |
| f81632121_575.returns.push(undefined); |
| // 3878 |
| // 3879 |
| o39.firstChild = null; |
| // 3881 |
| o48 = {}; |
| // 3882 |
| f81632121_474.returns.push(o48); |
| // 3884 |
| o49 = {}; |
| // 3885 |
| f81632121_598.returns.push(o49); |
| // 3886 |
| o48.appendChild = f81632121_478; |
| // 3887 |
| f81632121_478.returns.push(o49); |
| // undefined |
| o49 = null; |
| // 3888 |
| o39.appendChild = f81632121_478; |
| // 3889 |
| f81632121_478.returns.push(o48); |
| // undefined |
| o48 = null; |
| // 3891 |
| o48 = {}; |
| // 3892 |
| f81632121_476.returns.push(o48); |
| // 3893 |
| // 3894 |
| // 3895 |
| o49 = {}; |
| // 3896 |
| o48.classList = o49; |
| // 3898 |
| o49.add = f81632121_602; |
| // undefined |
| o49 = null; |
| // 3899 |
| f81632121_602.returns.push(undefined); |
| // 3901 |
| o49 = {}; |
| // 3902 |
| f81632121_476.returns.push(o49); |
| // 3903 |
| o49.firstChild = null; |
| // 3905 |
| o50 = {}; |
| // 3906 |
| f81632121_474.returns.push(o50); |
| // 3908 |
| o51 = {}; |
| // 3909 |
| f81632121_598.returns.push(o51); |
| // 3910 |
| o50.appendChild = f81632121_478; |
| // 3911 |
| f81632121_478.returns.push(o51); |
| // undefined |
| o51 = null; |
| // 3912 |
| o39.__html = void 0; |
| // undefined |
| o39 = null; |
| // 3913 |
| o48.__html = void 0; |
| // undefined |
| o48 = null; |
| // 3914 |
| o49.appendChild = f81632121_478; |
| // 3915 |
| f81632121_478.returns.push(o50); |
| // undefined |
| o50 = null; |
| // 3916 |
| o49.innerHTML = ""; |
| // undefined |
| o49 = null; |
| // 3919 |
| f81632121_467.returns.push(1374851214900); |
| // 3921 |
| o37.nextSibling = null; |
| // 3922 |
| o38.removeChild = f81632121_521; |
| // 3923 |
| f81632121_521.returns.push(o37); |
| // 3924 |
| // 3925 |
| o38.appendChild = f81632121_478; |
| // 3926 |
| f81632121_478.returns.push(o37); |
| // 3928 |
| f81632121_467.returns.push(1374851214913); |
| // 3930 |
| f81632121_467.returns.push(1374851214913); |
| // 3933 |
| f81632121_467.returns.push(1374851214913); |
| // 3935 |
| f81632121_467.returns.push(1374851214913); |
| // 3937 |
| f81632121_467.returns.push(1374851214913); |
| // 3939 |
| f81632121_467.returns.push(1374851214913); |
| // 3940 |
| o39 = {}; |
| // undefined |
| fo81632121_795_firstChild.returns.push(o39); |
| // 3942 |
| o39.getAttribute = f81632121_506; |
| // 3944 |
| f81632121_506.returns.push(".r[5ib3u]"); |
| // 3945 |
| o48 = {}; |
| // 3946 |
| o39.firstChild = o48; |
| // 3947 |
| o48.getAttribute = f81632121_506; |
| // 3949 |
| f81632121_506.returns.push(".r[5ib3u].[1][0]"); |
| // 3950 |
| o49 = {}; |
| // 3951 |
| o48.firstChild = o49; |
| // undefined |
| o49 = null; |
| // 3952 |
| o49 = {}; |
| // 3953 |
| o48.nextSibling = o49; |
| // undefined |
| o48 = null; |
| // 3954 |
| o49.getAttribute = f81632121_506; |
| // 3956 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][0]"); |
| // 3957 |
| o48 = {}; |
| // 3958 |
| o49.firstChild = o48; |
| // undefined |
| o48 = null; |
| // 3959 |
| o48 = {}; |
| // 3960 |
| o49.nextSibling = o48; |
| // undefined |
| o49 = null; |
| // 3961 |
| o48.getAttribute = f81632121_506; |
| // 3963 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992459}"); |
| // 3964 |
| o49 = {}; |
| // 3965 |
| o48.firstChild = o49; |
| // 3966 |
| o49.getAttribute = f81632121_506; |
| // 3968 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992459}.[0]"); |
| // 3969 |
| o50 = {}; |
| // 3970 |
| o49.firstChild = o50; |
| // undefined |
| o49 = null; |
| // 3971 |
| o50.getAttribute = f81632121_506; |
| // 3973 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992459}.[0].[left]"); |
| // 3974 |
| o49 = {}; |
| // 3975 |
| o50.firstChild = o49; |
| // undefined |
| o49 = null; |
| // 3976 |
| o49 = {}; |
| // 3977 |
| o50.nextSibling = o49; |
| // undefined |
| o50 = null; |
| // 3978 |
| o49.getAttribute = f81632121_506; |
| // 3980 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992459}.[0].[right]"); |
| // 3981 |
| o50 = {}; |
| // 3982 |
| o49.firstChild = o50; |
| // undefined |
| o49 = null; |
| // 3983 |
| o50.getAttribute = f81632121_506; |
| // 3985 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992459}.[0].[right].[0]"); |
| // 3986 |
| o49 = {}; |
| // 3987 |
| o50.firstChild = o49; |
| // undefined |
| o50 = null; |
| // 3988 |
| o49.getAttribute = f81632121_506; |
| // 3990 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992459}.[0].[right].[0].[left]"); |
| // 3991 |
| o50 = {}; |
| // 3992 |
| o49.firstChild = o50; |
| // undefined |
| o49 = null; |
| // 3993 |
| o50.getAttribute = f81632121_506; |
| // 3995 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992459}.[0].[right].[0].[left].[0]"); |
| // 3996 |
| o49 = {}; |
| // 3997 |
| o50.firstChild = o49; |
| // undefined |
| o50 = null; |
| // 3998 |
| o49.getAttribute = f81632121_506; |
| // 4000 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992459}.[0].[right].[0].[left].[0].[0]"); |
| // 4001 |
| o50 = {}; |
| // 4002 |
| o49.firstChild = o50; |
| // undefined |
| o49 = null; |
| // 4003 |
| o50.getAttribute = f81632121_506; |
| // 4005 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992459}.[0].[right].[0].[left].[0].[0].[0][0]"); |
| // 4006 |
| o49 = {}; |
| // 4007 |
| o50.firstChild = o49; |
| // undefined |
| o49 = null; |
| // 4008 |
| o49 = {}; |
| // 4009 |
| o50.nextSibling = o49; |
| // undefined |
| o50 = null; |
| // 4010 |
| o49.getAttribute = f81632121_506; |
| // 4012 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992459}.[0].[right].[0].[left].[0].[0].[0][1]"); |
| // 4013 |
| o50 = {}; |
| // 4014 |
| o49.firstChild = o50; |
| // undefined |
| o50 = null; |
| // 4015 |
| o50 = {}; |
| // 4016 |
| o49.nextSibling = o50; |
| // undefined |
| o49 = null; |
| // 4017 |
| o50.getAttribute = f81632121_506; |
| // 4019 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992459}.[0].[right].[0].[left].[0].[0].[0][2]"); |
| // 4020 |
| o49 = {}; |
| // 4021 |
| o50.firstChild = o49; |
| // undefined |
| o49 = null; |
| // 4022 |
| o49 = {}; |
| // 4023 |
| o50.nextSibling = o49; |
| // undefined |
| o50 = null; |
| // 4024 |
| o49.getAttribute = f81632121_506; |
| // undefined |
| o49 = null; |
| // 4026 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992459}.[0].[right].[0].[left].[0].[0].[3]"); |
| // 4029 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992459}"); |
| // 4030 |
| o37.contains = f81632121_645; |
| // 4032 |
| f81632121_645.returns.push(true); |
| // undefined |
| fo81632121_795_firstChild.returns.push(o39); |
| // 4036 |
| f81632121_506.returns.push(".r[5ib3u]"); |
| // 4040 |
| f81632121_506.returns.push(".r[5ib3u].[1][0]"); |
| // 4045 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][0]"); |
| // 4050 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992459}"); |
| // 4052 |
| o49 = {}; |
| // 4053 |
| o48.nextSibling = o49; |
| // undefined |
| o48 = null; |
| // 4054 |
| o49.getAttribute = f81632121_506; |
| // 4056 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992465}"); |
| // 4057 |
| o48 = {}; |
| // 4058 |
| o49.firstChild = o48; |
| // 4059 |
| o48.getAttribute = f81632121_506; |
| // 4061 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992465}.[0]"); |
| // 4062 |
| o50 = {}; |
| // 4063 |
| o48.firstChild = o50; |
| // undefined |
| o48 = null; |
| // 4064 |
| o50.getAttribute = f81632121_506; |
| // 4066 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992465}.[0].[left]"); |
| // 4067 |
| o48 = {}; |
| // 4068 |
| o50.firstChild = o48; |
| // undefined |
| o48 = null; |
| // 4069 |
| o48 = {}; |
| // 4070 |
| o50.nextSibling = o48; |
| // undefined |
| o50 = null; |
| // 4071 |
| o48.getAttribute = f81632121_506; |
| // 4073 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992465}.[0].[right]"); |
| // 4074 |
| o50 = {}; |
| // 4075 |
| o48.firstChild = o50; |
| // undefined |
| o48 = null; |
| // 4076 |
| o50.getAttribute = f81632121_506; |
| // 4078 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992465}.[0].[right].[0]"); |
| // 4079 |
| o48 = {}; |
| // 4080 |
| o50.firstChild = o48; |
| // undefined |
| o50 = null; |
| // 4081 |
| o48.getAttribute = f81632121_506; |
| // 4083 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992465}.[0].[right].[0].[left]"); |
| // 4084 |
| o50 = {}; |
| // 4085 |
| o48.firstChild = o50; |
| // undefined |
| o48 = null; |
| // 4086 |
| o50.getAttribute = f81632121_506; |
| // 4088 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992465}.[0].[right].[0].[left].[0]"); |
| // 4089 |
| o48 = {}; |
| // 4090 |
| o50.firstChild = o48; |
| // undefined |
| o50 = null; |
| // 4091 |
| o48.getAttribute = f81632121_506; |
| // 4093 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992465}.[0].[right].[0].[left].[0].[0]"); |
| // 4094 |
| o50 = {}; |
| // 4095 |
| o48.firstChild = o50; |
| // undefined |
| o48 = null; |
| // 4096 |
| o50.getAttribute = f81632121_506; |
| // 4098 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992465}.[0].[right].[0].[left].[0].[0].[0][0]"); |
| // 4099 |
| o48 = {}; |
| // 4100 |
| o50.firstChild = o48; |
| // undefined |
| o48 = null; |
| // 4101 |
| o48 = {}; |
| // 4102 |
| o50.nextSibling = o48; |
| // undefined |
| o50 = null; |
| // 4103 |
| o48.getAttribute = f81632121_506; |
| // 4105 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992465}.[0].[right].[0].[left].[0].[0].[0][1]"); |
| // 4106 |
| o50 = {}; |
| // 4107 |
| o48.firstChild = o50; |
| // undefined |
| o50 = null; |
| // 4108 |
| o50 = {}; |
| // 4109 |
| o48.nextSibling = o50; |
| // undefined |
| o48 = null; |
| // 4110 |
| o50.getAttribute = f81632121_506; |
| // 4112 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992465}.[0].[right].[0].[left].[0].[0].[0][2]"); |
| // 4113 |
| o48 = {}; |
| // 4114 |
| o50.firstChild = o48; |
| // undefined |
| o48 = null; |
| // 4115 |
| o48 = {}; |
| // 4116 |
| o50.nextSibling = o48; |
| // undefined |
| o50 = null; |
| // 4117 |
| o48.getAttribute = f81632121_506; |
| // undefined |
| o48 = null; |
| // 4119 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992465}.[0].[right].[0].[left].[0].[0].[3]"); |
| // 4122 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992465}"); |
| // 4125 |
| f81632121_645.returns.push(true); |
| // undefined |
| fo81632121_795_firstChild.returns.push(o39); |
| // 4129 |
| f81632121_506.returns.push(".r[5ib3u]"); |
| // 4133 |
| f81632121_506.returns.push(".r[5ib3u].[1][0]"); |
| // 4138 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][0]"); |
| // 4143 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992459}"); |
| // 4148 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992465}"); |
| // 4150 |
| o48 = {}; |
| // 4151 |
| o49.nextSibling = o48; |
| // undefined |
| o49 = null; |
| // 4152 |
| o48.getAttribute = f81632121_506; |
| // 4154 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992473}"); |
| // 4155 |
| o49 = {}; |
| // 4156 |
| o48.firstChild = o49; |
| // 4157 |
| o49.getAttribute = f81632121_506; |
| // 4159 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992473}.[0]"); |
| // 4160 |
| o50 = {}; |
| // 4161 |
| o49.firstChild = o50; |
| // undefined |
| o49 = null; |
| // 4162 |
| o50.getAttribute = f81632121_506; |
| // 4164 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992473}.[0].[left]"); |
| // 4165 |
| o49 = {}; |
| // 4166 |
| o50.firstChild = o49; |
| // undefined |
| o49 = null; |
| // 4167 |
| o49 = {}; |
| // 4168 |
| o50.nextSibling = o49; |
| // undefined |
| o50 = null; |
| // 4169 |
| o49.getAttribute = f81632121_506; |
| // 4171 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992473}.[0].[right]"); |
| // 4172 |
| o50 = {}; |
| // 4173 |
| o49.firstChild = o50; |
| // undefined |
| o49 = null; |
| // 4174 |
| o50.getAttribute = f81632121_506; |
| // 4176 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992473}.[0].[right].[0]"); |
| // 4177 |
| o49 = {}; |
| // 4178 |
| o50.firstChild = o49; |
| // undefined |
| o50 = null; |
| // 4179 |
| o49.getAttribute = f81632121_506; |
| // 4181 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992473}.[0].[right].[0].[left]"); |
| // 4182 |
| o50 = {}; |
| // 4183 |
| o49.firstChild = o50; |
| // undefined |
| o49 = null; |
| // 4184 |
| o50.getAttribute = f81632121_506; |
| // 4186 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992473}.[0].[right].[0].[left].[0]"); |
| // 4187 |
| o49 = {}; |
| // 4188 |
| o50.firstChild = o49; |
| // undefined |
| o50 = null; |
| // 4189 |
| o49.getAttribute = f81632121_506; |
| // 4191 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992473}.[0].[right].[0].[left].[0].[0]"); |
| // 4192 |
| o50 = {}; |
| // 4193 |
| o49.firstChild = o50; |
| // undefined |
| o49 = null; |
| // 4194 |
| o50.getAttribute = f81632121_506; |
| // 4196 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992473}.[0].[right].[0].[left].[0].[0].[0][0]"); |
| // 4197 |
| o49 = {}; |
| // 4198 |
| o50.firstChild = o49; |
| // undefined |
| o49 = null; |
| // 4199 |
| o49 = {}; |
| // 4200 |
| o50.nextSibling = o49; |
| // undefined |
| o50 = null; |
| // 4201 |
| o49.getAttribute = f81632121_506; |
| // 4203 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992473}.[0].[right].[0].[left].[0].[0].[0][1]"); |
| // 4204 |
| o50 = {}; |
| // 4205 |
| o49.firstChild = o50; |
| // undefined |
| o50 = null; |
| // 4206 |
| o50 = {}; |
| // 4207 |
| o49.nextSibling = o50; |
| // undefined |
| o49 = null; |
| // 4208 |
| o50.getAttribute = f81632121_506; |
| // 4210 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992473}.[0].[right].[0].[left].[0].[0].[0][2]"); |
| // 4211 |
| o49 = {}; |
| // 4212 |
| o50.firstChild = o49; |
| // undefined |
| o49 = null; |
| // 4213 |
| o49 = {}; |
| // 4214 |
| o50.nextSibling = o49; |
| // undefined |
| o50 = null; |
| // 4215 |
| o49.getAttribute = f81632121_506; |
| // undefined |
| o49 = null; |
| // 4217 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992473}.[0].[right].[0].[left].[0].[0].[3]"); |
| // 4220 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992473}"); |
| // 4223 |
| f81632121_645.returns.push(true); |
| // undefined |
| fo81632121_795_firstChild.returns.push(o39); |
| // undefined |
| o39 = null; |
| // 4227 |
| f81632121_506.returns.push(".r[5ib3u]"); |
| // 4231 |
| f81632121_506.returns.push(".r[5ib3u].[1][0]"); |
| // 4236 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][0]"); |
| // 4241 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992459}"); |
| // 4246 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992465}"); |
| // 4251 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4992473}"); |
| // 4253 |
| o39 = {}; |
| // 4254 |
| o48.nextSibling = o39; |
| // undefined |
| o48 = null; |
| // 4255 |
| o39.getAttribute = f81632121_506; |
| // 4257 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4996311}"); |
| // 4258 |
| o48 = {}; |
| // 4259 |
| o39.firstChild = o48; |
| // undefined |
| o39 = null; |
| // 4260 |
| o48.getAttribute = f81632121_506; |
| // 4262 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4996311}.[0]"); |
| // 4263 |
| o39 = {}; |
| // 4264 |
| o48.firstChild = o39; |
| // undefined |
| o48 = null; |
| // 4265 |
| o39.getAttribute = f81632121_506; |
| // 4267 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4996311}.[0].[left]"); |
| // 4268 |
| o48 = {}; |
| // 4269 |
| o39.firstChild = o48; |
| // undefined |
| o48 = null; |
| // 4270 |
| o48 = {}; |
| // 4271 |
| o39.nextSibling = o48; |
| // undefined |
| o39 = null; |
| // 4272 |
| o48.getAttribute = f81632121_506; |
| // 4274 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4996311}.[0].[right]"); |
| // 4275 |
| o39 = {}; |
| // 4276 |
| o48.firstChild = o39; |
| // undefined |
| o48 = null; |
| // 4277 |
| o39.getAttribute = f81632121_506; |
| // 4279 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4996311}.[0].[right].[0]"); |
| // 4280 |
| o48 = {}; |
| // 4281 |
| o39.firstChild = o48; |
| // undefined |
| o39 = null; |
| // 4282 |
| o48.getAttribute = f81632121_506; |
| // 4284 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4996311}.[0].[right].[0].[left]"); |
| // 4285 |
| o39 = {}; |
| // 4286 |
| o48.firstChild = o39; |
| // undefined |
| o48 = null; |
| // 4287 |
| o39.getAttribute = f81632121_506; |
| // 4289 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4996311}.[0].[right].[0].[left].[0]"); |
| // 4290 |
| o48 = {}; |
| // 4291 |
| o39.firstChild = o48; |
| // undefined |
| o39 = null; |
| // 4292 |
| o48.getAttribute = f81632121_506; |
| // 4294 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4996311}.[0].[right].[0].[left].[0].[0]"); |
| // 4295 |
| o39 = {}; |
| // 4296 |
| o48.firstChild = o39; |
| // undefined |
| o48 = null; |
| // 4297 |
| o39.getAttribute = f81632121_506; |
| // 4299 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4996311}.[0].[right].[0].[left].[0].[0].[0][0]"); |
| // 4300 |
| o48 = {}; |
| // 4301 |
| o39.firstChild = o48; |
| // undefined |
| o48 = null; |
| // 4302 |
| o48 = {}; |
| // 4303 |
| o39.nextSibling = o48; |
| // undefined |
| o39 = null; |
| // 4304 |
| o48.getAttribute = f81632121_506; |
| // 4306 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4996311}.[0].[right].[0].[left].[0].[0].[0][1]"); |
| // 4307 |
| o39 = {}; |
| // 4308 |
| o48.firstChild = o39; |
| // undefined |
| o39 = null; |
| // 4309 |
| o39 = {}; |
| // 4310 |
| o48.nextSibling = o39; |
| // undefined |
| o48 = null; |
| // 4311 |
| o39.getAttribute = f81632121_506; |
| // 4313 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4996311}.[0].[right].[0].[left].[0].[0].[0][2]"); |
| // 4314 |
| o48 = {}; |
| // 4315 |
| o39.firstChild = o48; |
| // undefined |
| o48 = null; |
| // 4316 |
| o48 = {}; |
| // 4317 |
| o39.nextSibling = o48; |
| // undefined |
| o39 = null; |
| // 4318 |
| o48.getAttribute = f81632121_506; |
| // undefined |
| o48 = null; |
| // 4320 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4996311}.[0].[right].[0].[left].[0].[0].[3]"); |
| // 4323 |
| f81632121_506.returns.push(".r[5ib3u].[1][4][1]{comment10200407437602598_4996311}"); |
| // 4326 |
| f81632121_645.returns.push(true); |
| // 4328 |
| f81632121_467.returns.push(1374851214951); |
| // 4333 |
| o39 = {}; |
| // 4334 |
| f81632121_504.returns.push(o39); |
| // 4335 |
| o39.length = 12; |
| // 4336 |
| o39["0"] = o40; |
| // 4337 |
| o39["1"] = o41; |
| // 4338 |
| o39["2"] = o42; |
| // 4339 |
| o39["3"] = o43; |
| // 4340 |
| o48 = {}; |
| // 4341 |
| o39["4"] = o48; |
| // 4342 |
| o49 = {}; |
| // 4343 |
| o39["5"] = o49; |
| // 4344 |
| o50 = {}; |
| // 4345 |
| o39["6"] = o50; |
| // 4346 |
| o51 = {}; |
| // 4347 |
| o39["7"] = o51; |
| // 4348 |
| o39["8"] = o44; |
| // 4349 |
| o39["9"] = o45; |
| // 4350 |
| o39["10"] = o46; |
| // 4351 |
| o39["11"] = o47; |
| // undefined |
| o39 = null; |
| // 4352 |
| f81632121_14.returns.push(undefined); |
| // 4353 |
| f81632121_12.returns.push(10); |
| // 4354 |
| o37.nodeName = "DIV"; |
| // undefined |
| o37 = null; |
| // 4356 |
| o38.nodeName = "DIV"; |
| // 4357 |
| o38.parentNode = o35; |
| // undefined |
| o38 = null; |
| // 4358 |
| o35.nodeName = "FORM"; |
| // 4362 |
| o37 = {}; |
| // 4363 |
| f81632121_474.returns.push(o37); |
| // 4365 |
| f81632121_478.returns.push(o37); |
| // undefined |
| o37 = null; |
| // 4370 |
| o37 = {}; |
| // 4371 |
| f81632121_508.returns.push(o37); |
| // 4372 |
| o37.id = "u_0_1z"; |
| // 4373 |
| o37.getElementsByTagName = f81632121_502; |
| // 4374 |
| o38 = {}; |
| // 4375 |
| o37.parentNode = o38; |
| // 4394 |
| f81632121_467.returns.push(1374851214979); |
| // 4399 |
| o39 = {}; |
| // 4400 |
| f81632121_504.returns.push(o39); |
| // 4401 |
| o39.length = 12; |
| // 4402 |
| o39["0"] = o40; |
| // 4403 |
| o39["1"] = o41; |
| // 4404 |
| o39["2"] = o42; |
| // 4405 |
| o39["3"] = o43; |
| // 4406 |
| o39["4"] = o48; |
| // 4407 |
| o39["5"] = o49; |
| // 4408 |
| o39["6"] = o50; |
| // 4409 |
| o39["7"] = o51; |
| // 4410 |
| o39["8"] = o44; |
| // 4411 |
| o39["9"] = o45; |
| // 4412 |
| o39["10"] = o46; |
| // 4413 |
| o39["11"] = o47; |
| // undefined |
| o39 = null; |
| // 4414 |
| f81632121_14.returns.push(undefined); |
| // 4415 |
| f81632121_12.returns.push(11); |
| // undefined |
| fo81632121_897_firstChild = function() { return fo81632121_897_firstChild.returns[fo81632121_897_firstChild.inst++]; }; |
| fo81632121_897_firstChild.returns = []; |
| fo81632121_897_firstChild.inst = 0; |
| defineGetter(o37, "firstChild", fo81632121_897_firstChild, undefined); |
| // undefined |
| fo81632121_897_firstChild.returns.push(null); |
| // undefined |
| fo81632121_897_firstChild.returns.push(null); |
| // undefined |
| fo81632121_897_firstChild.returns.push(null); |
| // 4432 |
| f81632121_466.returns.push(0.032721861032769084); |
| // 4434 |
| f81632121_467.returns.push(1374851214985); |
| // 4436 |
| f81632121_467.returns.push(1374851214997); |
| // 4442 |
| f81632121_467.returns.push(1374851214998); |
| // 4444 |
| f81632121_467.returns.push(1374851214998); |
| // 4446 |
| f81632121_467.returns.push(1374851214998); |
| // 4448 |
| f81632121_467.returns.push(1374851214998); |
| // 4450 |
| f81632121_467.returns.push(1374851214998); |
| // 4451 |
| o37.nodeType = 1; |
| // 4455 |
| o39 = {}; |
| // 4456 |
| f81632121_474.returns.push(o39); |
| // 4458 |
| f81632121_478.returns.push(o39); |
| // undefined |
| o39 = null; |
| // 4460 |
| o39 = {}; |
| // 4461 |
| f81632121_476.returns.push(o39); |
| // 4462 |
| o39.setAttribute = f81632121_575; |
| // 4464 |
| f81632121_575.returns.push(undefined); |
| // 4465 |
| // 4466 |
| o39.firstChild = null; |
| // 4468 |
| o52 = {}; |
| // 4469 |
| f81632121_474.returns.push(o52); |
| // 4471 |
| o53 = {}; |
| // 4472 |
| f81632121_598.returns.push(o53); |
| // 4473 |
| o52.appendChild = f81632121_478; |
| // 4474 |
| f81632121_478.returns.push(o53); |
| // undefined |
| o53 = null; |
| // 4475 |
| o39.appendChild = f81632121_478; |
| // 4476 |
| f81632121_478.returns.push(o52); |
| // undefined |
| o52 = null; |
| // 4478 |
| o52 = {}; |
| // 4479 |
| f81632121_476.returns.push(o52); |
| // 4480 |
| // 4481 |
| // 4482 |
| o53 = {}; |
| // 4483 |
| o52.classList = o53; |
| // 4485 |
| o53.add = f81632121_602; |
| // undefined |
| o53 = null; |
| // 4486 |
| f81632121_602.returns.push(undefined); |
| // 4488 |
| o53 = {}; |
| // 4489 |
| f81632121_476.returns.push(o53); |
| // 4490 |
| o53.firstChild = null; |
| // 4492 |
| o54 = {}; |
| // 4493 |
| f81632121_474.returns.push(o54); |
| // 4495 |
| o55 = {}; |
| // 4496 |
| f81632121_598.returns.push(o55); |
| // 4497 |
| o54.appendChild = f81632121_478; |
| // 4498 |
| f81632121_478.returns.push(o55); |
| // undefined |
| o55 = null; |
| // 4499 |
| o39.__html = void 0; |
| // undefined |
| o39 = null; |
| // 4500 |
| o52.__html = void 0; |
| // undefined |
| o52 = null; |
| // 4501 |
| o53.appendChild = f81632121_478; |
| // 4502 |
| f81632121_478.returns.push(o54); |
| // undefined |
| o54 = null; |
| // 4503 |
| o53.innerHTML = "Does it have a sense of the surreal or are you just sharing a data point? "; |
| // undefined |
| o53 = null; |
| // 4505 |
| f81632121_467.returns.push(1374851215036); |
| // 4509 |
| o39 = {}; |
| // 4510 |
| f81632121_474.returns.push(o39); |
| // 4512 |
| f81632121_478.returns.push(o39); |
| // undefined |
| o39 = null; |
| // 4514 |
| o39 = {}; |
| // 4515 |
| f81632121_476.returns.push(o39); |
| // 4516 |
| o39.firstChild = null; |
| // 4518 |
| o52 = {}; |
| // 4519 |
| f81632121_474.returns.push(o52); |
| // 4521 |
| o53 = {}; |
| // 4522 |
| f81632121_598.returns.push(o53); |
| // 4523 |
| o52.appendChild = f81632121_478; |
| // 4524 |
| f81632121_478.returns.push(o53); |
| // undefined |
| o53 = null; |
| // 4525 |
| o39.appendChild = f81632121_478; |
| // 4526 |
| f81632121_478.returns.push(o52); |
| // undefined |
| o52 = null; |
| // 4527 |
| o39.innerHTML = "Merely minor amusement."; |
| // undefined |
| o39 = null; |
| // 4529 |
| f81632121_467.returns.push(1374851215042); |
| // 4533 |
| o39 = {}; |
| // 4534 |
| f81632121_474.returns.push(o39); |
| // 4536 |
| f81632121_478.returns.push(o39); |
| // undefined |
| o39 = null; |
| // 4538 |
| o39 = {}; |
| // 4539 |
| f81632121_476.returns.push(o39); |
| // 4540 |
| o39.firstChild = null; |
| // 4542 |
| o52 = {}; |
| // 4543 |
| f81632121_474.returns.push(o52); |
| // 4545 |
| o53 = {}; |
| // 4546 |
| f81632121_598.returns.push(o53); |
| // 4547 |
| o52.appendChild = f81632121_478; |
| // 4548 |
| f81632121_478.returns.push(o53); |
| // undefined |
| o53 = null; |
| // 4549 |
| o39.appendChild = f81632121_478; |
| // 4550 |
| f81632121_478.returns.push(o52); |
| // undefined |
| o52 = null; |
| // 4551 |
| o39.innerHTML = "Did you wear "; |
| // undefined |
| o39 = null; |
| // 4553 |
| f81632121_467.returns.push(1374851215052); |
| // 4557 |
| o39 = {}; |
| // 4558 |
| f81632121_474.returns.push(o39); |
| // 4560 |
| f81632121_478.returns.push(o39); |
| // undefined |
| o39 = null; |
| // 4562 |
| o39 = {}; |
| // 4563 |
| f81632121_476.returns.push(o39); |
| // 4564 |
| o39.firstChild = null; |
| // 4566 |
| o52 = {}; |
| // 4567 |
| f81632121_474.returns.push(o52); |
| // 4569 |
| o53 = {}; |
| // 4570 |
| f81632121_598.returns.push(o53); |
| // 4571 |
| o52.appendChild = f81632121_478; |
| // 4572 |
| f81632121_478.returns.push(o53); |
| // undefined |
| o53 = null; |
| // 4573 |
| o39.appendChild = f81632121_478; |
| // 4574 |
| f81632121_478.returns.push(o52); |
| // undefined |
| o52 = null; |
| // 4575 |
| o39.innerHTML = "That's the most delightfully offensive piece of apparel I've seen in quite some time."; |
| // undefined |
| o39 = null; |
| // 4577 |
| f81632121_467.returns.push(1374851215058); |
| // 4579 |
| o37.nextSibling = null; |
| // 4580 |
| o38.removeChild = f81632121_521; |
| // 4581 |
| f81632121_521.returns.push(o37); |
| // 4582 |
| // 4583 |
| o38.appendChild = f81632121_478; |
| // 4584 |
| f81632121_478.returns.push(o37); |
| // 4586 |
| f81632121_467.returns.push(1374851215069); |
| // 4588 |
| f81632121_467.returns.push(1374851215070); |
| // 4591 |
| f81632121_467.returns.push(1374851215070); |
| // 4593 |
| f81632121_467.returns.push(1374851215070); |
| // 4595 |
| f81632121_467.returns.push(1374851215070); |
| // 4597 |
| f81632121_467.returns.push(1374851215070); |
| // 4598 |
| o39 = {}; |
| // undefined |
| fo81632121_897_firstChild.returns.push(o39); |
| // 4600 |
| o39.getAttribute = f81632121_506; |
| // 4602 |
| f81632121_506.returns.push(".r[70hf]"); |
| // 4603 |
| o52 = {}; |
| // 4604 |
| o39.firstChild = o52; |
| // 4605 |
| o52.getAttribute = f81632121_506; |
| // 4607 |
| f81632121_506.returns.push(".r[70hf].[1][0]"); |
| // 4608 |
| o53 = {}; |
| // 4609 |
| o52.firstChild = o53; |
| // undefined |
| o53 = null; |
| // 4610 |
| o53 = {}; |
| // 4611 |
| o52.nextSibling = o53; |
| // undefined |
| o52 = null; |
| // 4612 |
| o53.getAttribute = f81632121_506; |
| // 4614 |
| f81632121_506.returns.push(".r[70hf].[1][4][0]"); |
| // 4615 |
| o52 = {}; |
| // 4616 |
| o53.firstChild = o52; |
| // undefined |
| o52 = null; |
| // 4617 |
| o52 = {}; |
| // 4618 |
| o53.nextSibling = o52; |
| // undefined |
| o53 = null; |
| // 4619 |
| o52.getAttribute = f81632121_506; |
| // 4621 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4946958}"); |
| // 4622 |
| o53 = {}; |
| // 4623 |
| o52.firstChild = o53; |
| // 4624 |
| o53.getAttribute = f81632121_506; |
| // 4626 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4946958}.[0]"); |
| // 4627 |
| o54 = {}; |
| // 4628 |
| o53.firstChild = o54; |
| // undefined |
| o53 = null; |
| // 4629 |
| o54.getAttribute = f81632121_506; |
| // 4631 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4946958}.[0].[left]"); |
| // 4632 |
| o53 = {}; |
| // 4633 |
| o54.firstChild = o53; |
| // undefined |
| o53 = null; |
| // 4634 |
| o53 = {}; |
| // 4635 |
| o54.nextSibling = o53; |
| // undefined |
| o54 = null; |
| // 4636 |
| o53.getAttribute = f81632121_506; |
| // 4638 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4946958}.[0].[right]"); |
| // 4639 |
| o54 = {}; |
| // 4640 |
| o53.firstChild = o54; |
| // undefined |
| o53 = null; |
| // 4641 |
| o54.getAttribute = f81632121_506; |
| // 4643 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4946958}.[0].[right].[0]"); |
| // 4644 |
| o53 = {}; |
| // 4645 |
| o54.firstChild = o53; |
| // undefined |
| o54 = null; |
| // 4646 |
| o53.getAttribute = f81632121_506; |
| // 4648 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4946958}.[0].[right].[0].[left]"); |
| // 4649 |
| o54 = {}; |
| // 4650 |
| o53.firstChild = o54; |
| // undefined |
| o53 = null; |
| // 4651 |
| o54.getAttribute = f81632121_506; |
| // 4653 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4946958}.[0].[right].[0].[left].[0]"); |
| // 4654 |
| o53 = {}; |
| // 4655 |
| o54.firstChild = o53; |
| // undefined |
| o54 = null; |
| // 4656 |
| o53.getAttribute = f81632121_506; |
| // 4658 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4946958}.[0].[right].[0].[left].[0].[0]"); |
| // 4659 |
| o54 = {}; |
| // 4660 |
| o53.firstChild = o54; |
| // undefined |
| o53 = null; |
| // 4661 |
| o54.getAttribute = f81632121_506; |
| // 4663 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4946958}.[0].[right].[0].[left].[0].[0].[0][0]"); |
| // 4664 |
| o53 = {}; |
| // 4665 |
| o54.firstChild = o53; |
| // undefined |
| o53 = null; |
| // 4666 |
| o53 = {}; |
| // 4667 |
| o54.nextSibling = o53; |
| // undefined |
| o54 = null; |
| // 4668 |
| o53.getAttribute = f81632121_506; |
| // 4670 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4946958}.[0].[right].[0].[left].[0].[0].[0][1]"); |
| // 4671 |
| o54 = {}; |
| // 4672 |
| o53.firstChild = o54; |
| // undefined |
| o54 = null; |
| // 4673 |
| o54 = {}; |
| // 4674 |
| o53.nextSibling = o54; |
| // undefined |
| o53 = null; |
| // 4675 |
| o54.getAttribute = f81632121_506; |
| // 4677 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4946958}.[0].[right].[0].[left].[0].[0].[0][2]"); |
| // 4678 |
| o53 = {}; |
| // 4679 |
| o54.firstChild = o53; |
| // undefined |
| o53 = null; |
| // 4680 |
| o53 = {}; |
| // 4681 |
| o54.nextSibling = o53; |
| // undefined |
| o54 = null; |
| // 4682 |
| o53.getAttribute = f81632121_506; |
| // undefined |
| o53 = null; |
| // 4684 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4946958}.[0].[right].[0].[left].[0].[0].[3]"); |
| // 4687 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4946958}"); |
| // 4688 |
| o37.contains = f81632121_645; |
| // 4690 |
| f81632121_645.returns.push(true); |
| // undefined |
| fo81632121_897_firstChild.returns.push(o39); |
| // 4694 |
| f81632121_506.returns.push(".r[70hf]"); |
| // 4698 |
| f81632121_506.returns.push(".r[70hf].[1][0]"); |
| // 4703 |
| f81632121_506.returns.push(".r[70hf].[1][4][0]"); |
| // 4708 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4946958}"); |
| // 4710 |
| o53 = {}; |
| // 4711 |
| o52.nextSibling = o53; |
| // undefined |
| o52 = null; |
| // 4712 |
| o53.getAttribute = f81632121_506; |
| // 4714 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}"); |
| // 4715 |
| o52 = {}; |
| // 4716 |
| o53.firstChild = o52; |
| // 4717 |
| o52.getAttribute = f81632121_506; |
| // 4719 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}.[0]"); |
| // 4720 |
| o54 = {}; |
| // 4721 |
| o52.firstChild = o54; |
| // undefined |
| o52 = null; |
| // 4722 |
| o54.getAttribute = f81632121_506; |
| // 4724 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}.[0].[left]"); |
| // 4725 |
| o52 = {}; |
| // 4726 |
| o54.firstChild = o52; |
| // undefined |
| o52 = null; |
| // 4727 |
| o52 = {}; |
| // 4728 |
| o54.nextSibling = o52; |
| // undefined |
| o54 = null; |
| // 4729 |
| o52.getAttribute = f81632121_506; |
| // 4731 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}.[0].[right]"); |
| // 4732 |
| o54 = {}; |
| // 4733 |
| o52.firstChild = o54; |
| // undefined |
| o52 = null; |
| // 4734 |
| o54.getAttribute = f81632121_506; |
| // 4736 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}.[0].[right].[0]"); |
| // 4737 |
| o52 = {}; |
| // 4738 |
| o54.firstChild = o52; |
| // undefined |
| o54 = null; |
| // 4739 |
| o52.getAttribute = f81632121_506; |
| // 4741 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}.[0].[right].[0].[left]"); |
| // 4742 |
| o54 = {}; |
| // 4743 |
| o52.firstChild = o54; |
| // undefined |
| o52 = null; |
| // 4744 |
| o54.getAttribute = f81632121_506; |
| // 4746 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}.[0].[right].[0].[left].[0]"); |
| // 4747 |
| o52 = {}; |
| // 4748 |
| o54.firstChild = o52; |
| // 4749 |
| o52.getAttribute = f81632121_506; |
| // 4751 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}.[0].[right].[0].[left].[0].[0]"); |
| // 4752 |
| o55 = {}; |
| // 4753 |
| o52.firstChild = o55; |
| // 4754 |
| o55.getAttribute = f81632121_506; |
| // 4756 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}.[0].[right].[0].[left].[0].[0].[0][0]"); |
| // 4757 |
| o56 = {}; |
| // 4758 |
| o55.firstChild = o56; |
| // undefined |
| o56 = null; |
| // 4759 |
| o56 = {}; |
| // 4760 |
| o55.nextSibling = o56; |
| // undefined |
| o55 = null; |
| // 4761 |
| o56.getAttribute = f81632121_506; |
| // 4763 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}.[0].[right].[0].[left].[0].[0].[0][1]"); |
| // 4764 |
| o55 = {}; |
| // 4765 |
| o56.firstChild = o55; |
| // undefined |
| o55 = null; |
| // 4766 |
| o55 = {}; |
| // 4767 |
| o56.nextSibling = o55; |
| // undefined |
| o56 = null; |
| // 4768 |
| o55.getAttribute = f81632121_506; |
| // 4770 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}.[0].[right].[0].[left].[0].[0].[0][2]"); |
| // 4771 |
| o56 = {}; |
| // 4772 |
| o55.firstChild = o56; |
| // undefined |
| o56 = null; |
| // 4773 |
| o56 = {}; |
| // 4774 |
| o55.nextSibling = o56; |
| // undefined |
| o55 = null; |
| // 4775 |
| o56.getAttribute = f81632121_506; |
| // undefined |
| o56 = null; |
| // 4777 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}.[0].[right].[0].[left].[0].[0].[3]"); |
| // 4780 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}"); |
| // 4783 |
| f81632121_645.returns.push(true); |
| // undefined |
| fo81632121_897_firstChild.returns.push(o39); |
| // 4787 |
| f81632121_506.returns.push(".r[70hf]"); |
| // 4791 |
| f81632121_506.returns.push(".r[70hf].[1][0]"); |
| // 4796 |
| f81632121_506.returns.push(".r[70hf].[1][4][0]"); |
| // 4801 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4946958}"); |
| // 4806 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}"); |
| // 4808 |
| o55 = {}; |
| // 4809 |
| o53.nextSibling = o55; |
| // 4810 |
| o55.getAttribute = f81632121_506; |
| // 4812 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4950566}"); |
| // 4813 |
| o56 = {}; |
| // 4814 |
| o55.firstChild = o56; |
| // 4815 |
| o56.getAttribute = f81632121_506; |
| // 4817 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4950566}.[0]"); |
| // 4818 |
| o57 = {}; |
| // 4819 |
| o56.firstChild = o57; |
| // undefined |
| o56 = null; |
| // 4820 |
| o57.getAttribute = f81632121_506; |
| // 4822 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4950566}.[0].[left]"); |
| // 4823 |
| o56 = {}; |
| // 4824 |
| o57.firstChild = o56; |
| // undefined |
| o56 = null; |
| // 4825 |
| o56 = {}; |
| // 4826 |
| o57.nextSibling = o56; |
| // undefined |
| o57 = null; |
| // 4827 |
| o56.getAttribute = f81632121_506; |
| // 4829 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4950566}.[0].[right]"); |
| // 4830 |
| o57 = {}; |
| // 4831 |
| o56.firstChild = o57; |
| // undefined |
| o56 = null; |
| // 4832 |
| o57.getAttribute = f81632121_506; |
| // 4834 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4950566}.[0].[right].[0]"); |
| // 4835 |
| o56 = {}; |
| // 4836 |
| o57.firstChild = o56; |
| // undefined |
| o57 = null; |
| // 4837 |
| o56.getAttribute = f81632121_506; |
| // 4839 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4950566}.[0].[right].[0].[left]"); |
| // 4840 |
| o57 = {}; |
| // 4841 |
| o56.firstChild = o57; |
| // undefined |
| o56 = null; |
| // 4842 |
| o57.getAttribute = f81632121_506; |
| // 4844 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4950566}.[0].[right].[0].[left].[0]"); |
| // 4845 |
| o56 = {}; |
| // 4846 |
| o57.firstChild = o56; |
| // undefined |
| o57 = null; |
| // 4847 |
| o56.getAttribute = f81632121_506; |
| // 4849 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4950566}.[0].[right].[0].[left].[0].[0]"); |
| // 4850 |
| o57 = {}; |
| // 4851 |
| o56.firstChild = o57; |
| // undefined |
| o56 = null; |
| // 4852 |
| o57.getAttribute = f81632121_506; |
| // 4854 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4950566}.[0].[right].[0].[left].[0].[0].[0][0]"); |
| // 4855 |
| o56 = {}; |
| // 4856 |
| o57.firstChild = o56; |
| // undefined |
| o56 = null; |
| // 4857 |
| o56 = {}; |
| // 4858 |
| o57.nextSibling = o56; |
| // undefined |
| o57 = null; |
| // 4859 |
| o56.getAttribute = f81632121_506; |
| // 4861 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4950566}.[0].[right].[0].[left].[0].[0].[0][1]"); |
| // 4862 |
| o57 = {}; |
| // 4863 |
| o56.firstChild = o57; |
| // undefined |
| o57 = null; |
| // 4864 |
| o57 = {}; |
| // 4865 |
| o56.nextSibling = o57; |
| // undefined |
| o56 = null; |
| // 4866 |
| o57.getAttribute = f81632121_506; |
| // 4868 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4950566}.[0].[right].[0].[left].[0].[0].[0][2]"); |
| // 4869 |
| o56 = {}; |
| // 4870 |
| o57.firstChild = o56; |
| // undefined |
| o56 = null; |
| // 4871 |
| o56 = {}; |
| // 4872 |
| o57.nextSibling = o56; |
| // undefined |
| o57 = null; |
| // 4873 |
| o56.getAttribute = f81632121_506; |
| // undefined |
| o56 = null; |
| // 4875 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4950566}.[0].[right].[0].[left].[0].[0].[3]"); |
| // 4878 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4950566}"); |
| // 4881 |
| f81632121_645.returns.push(true); |
| // undefined |
| fo81632121_897_firstChild.returns.push(o39); |
| // 4885 |
| f81632121_506.returns.push(".r[70hf]"); |
| // 4889 |
| f81632121_506.returns.push(".r[70hf].[1][0]"); |
| // 4894 |
| f81632121_506.returns.push(".r[70hf].[1][4][0]"); |
| // 4899 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4946958}"); |
| // 4904 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}"); |
| // 4909 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4950566}"); |
| // 4911 |
| o56 = {}; |
| // 4912 |
| o55.nextSibling = o56; |
| // undefined |
| o55 = null; |
| // 4913 |
| o56.getAttribute = f81632121_506; |
| // 4915 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4950571}"); |
| // 4916 |
| o55 = {}; |
| // 4917 |
| o56.firstChild = o55; |
| // undefined |
| o56 = null; |
| // 4918 |
| o55.getAttribute = f81632121_506; |
| // 4920 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4950571}.[0]"); |
| // 4921 |
| o56 = {}; |
| // 4922 |
| o55.firstChild = o56; |
| // undefined |
| o55 = null; |
| // 4923 |
| o56.getAttribute = f81632121_506; |
| // 4925 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4950571}.[0].[left]"); |
| // 4926 |
| o55 = {}; |
| // 4927 |
| o56.firstChild = o55; |
| // undefined |
| o55 = null; |
| // 4928 |
| o55 = {}; |
| // 4929 |
| o56.nextSibling = o55; |
| // undefined |
| o56 = null; |
| // 4930 |
| o55.getAttribute = f81632121_506; |
| // 4932 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4950571}.[0].[right]"); |
| // 4933 |
| o56 = {}; |
| // 4934 |
| o55.firstChild = o56; |
| // undefined |
| o55 = null; |
| // 4935 |
| o56.getAttribute = f81632121_506; |
| // 4937 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4950571}.[0].[right].[0]"); |
| // 4938 |
| o55 = {}; |
| // 4939 |
| o56.firstChild = o55; |
| // undefined |
| o56 = null; |
| // 4940 |
| o55.getAttribute = f81632121_506; |
| // 4942 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4950571}.[0].[right].[0].[left]"); |
| // 4943 |
| o56 = {}; |
| // 4944 |
| o55.firstChild = o56; |
| // undefined |
| o55 = null; |
| // 4945 |
| o56.getAttribute = f81632121_506; |
| // 4947 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4950571}.[0].[right].[0].[left].[0]"); |
| // 4948 |
| o55 = {}; |
| // 4949 |
| o56.firstChild = o55; |
| // undefined |
| o56 = null; |
| // 4950 |
| o55.getAttribute = f81632121_506; |
| // 4952 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4950571}.[0].[right].[0].[left].[0].[0]"); |
| // 4953 |
| o56 = {}; |
| // 4954 |
| o55.firstChild = o56; |
| // undefined |
| o55 = null; |
| // 4955 |
| o56.getAttribute = f81632121_506; |
| // 4957 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4950571}.[0].[right].[0].[left].[0].[0].[0][0]"); |
| // 4958 |
| o55 = {}; |
| // 4959 |
| o56.firstChild = o55; |
| // undefined |
| o55 = null; |
| // 4960 |
| o55 = {}; |
| // 4961 |
| o56.nextSibling = o55; |
| // undefined |
| o56 = null; |
| // 4962 |
| o55.getAttribute = f81632121_506; |
| // 4964 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4950571}.[0].[right].[0].[left].[0].[0].[0][1]"); |
| // 4965 |
| o56 = {}; |
| // 4966 |
| o55.firstChild = o56; |
| // undefined |
| o56 = null; |
| // 4967 |
| o56 = {}; |
| // 4968 |
| o55.nextSibling = o56; |
| // undefined |
| o55 = null; |
| // 4969 |
| o56.getAttribute = f81632121_506; |
| // 4971 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4950571}.[0].[right].[0].[left].[0].[0].[0][2]"); |
| // 4972 |
| o55 = {}; |
| // 4973 |
| o56.firstChild = o55; |
| // undefined |
| o55 = null; |
| // 4974 |
| o55 = {}; |
| // 4975 |
| o56.nextSibling = o55; |
| // undefined |
| o56 = null; |
| // 4976 |
| o55.getAttribute = f81632121_506; |
| // undefined |
| o55 = null; |
| // 4978 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4950571}.[0].[right].[0].[left].[0].[0].[3]"); |
| // 4981 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4950571}"); |
| // 4984 |
| f81632121_645.returns.push(true); |
| // 4986 |
| f81632121_467.returns.push(1374851215098); |
| // 4991 |
| o55 = {}; |
| // 4992 |
| f81632121_504.returns.push(o55); |
| // 4993 |
| o55.length = 16; |
| // 4994 |
| o55["0"] = o40; |
| // 4995 |
| o55["1"] = o41; |
| // 4996 |
| o55["2"] = o42; |
| // 4997 |
| o55["3"] = o43; |
| // 4998 |
| o55["4"] = o48; |
| // 4999 |
| o55["5"] = o49; |
| // 5000 |
| o55["6"] = o50; |
| // 5001 |
| o55["7"] = o51; |
| // 5002 |
| o55["8"] = o44; |
| // 5003 |
| o55["9"] = o45; |
| // 5004 |
| o55["10"] = o46; |
| // 5005 |
| o55["11"] = o47; |
| // 5006 |
| o56 = {}; |
| // 5007 |
| o55["12"] = o56; |
| // 5008 |
| o57 = {}; |
| // 5009 |
| o55["13"] = o57; |
| // 5010 |
| o58 = {}; |
| // 5011 |
| o55["14"] = o58; |
| // 5012 |
| o59 = {}; |
| // 5013 |
| o55["15"] = o59; |
| // undefined |
| o55 = null; |
| // 5014 |
| f81632121_14.returns.push(undefined); |
| // 5015 |
| f81632121_12.returns.push(12); |
| // 5016 |
| o37.nodeName = "DIV"; |
| // undefined |
| o37 = null; |
| // 5018 |
| o38.nodeName = "DIV"; |
| // 5019 |
| o38.parentNode = o32; |
| // undefined |
| o38 = null; |
| // 5020 |
| o32.nodeName = "FORM"; |
| // 5024 |
| o37 = {}; |
| // 5025 |
| f81632121_474.returns.push(o37); |
| // 5027 |
| f81632121_478.returns.push(o37); |
| // undefined |
| o37 = null; |
| // 5029 |
| f81632121_467.returns.push(1374851215100); |
| // 5033 |
| o37 = {}; |
| // 5034 |
| f81632121_474.returns.push(o37); |
| // 5036 |
| f81632121_478.returns.push(o37); |
| // undefined |
| o37 = null; |
| // 5039 |
| f81632121_467.returns.push(1374851215101); |
| // 5041 |
| f81632121_467.returns.push(1374851215101); |
| // 5042 |
| o37 = {}; |
| // 5044 |
| o23.parentNode = o9; |
| // 5045 |
| o9.removeChild = f81632121_521; |
| // 5046 |
| f81632121_521.returns.push(o23); |
| // 5054 |
| o38 = {}; |
| // 5055 |
| o55 = {}; |
| // 5057 |
| o38.nodeType = void 0; |
| // 5058 |
| o38.length = 1; |
| // 5059 |
| o38["0"] = "/MWWQ"; |
| // 5070 |
| f81632121_468.returns.push(undefined); |
| // 5071 |
| o8.JSBNG__oninput = null; |
| // 5076 |
| f81632121_468.returns.push(undefined); |
| // 5077 |
| o8.JSBNG__onkeyup = null; |
| // 5084 |
| f81632121_468.returns.push(undefined); |
| // 5085 |
| f81632121_1000 = function() { return f81632121_1000.returns[f81632121_1000.inst++]; }; |
| f81632121_1000.returns = []; |
| f81632121_1000.inst = 0; |
| // 5086 |
| o8.JSBNG__onsubmit = f81632121_1000; |
| // 5089 |
| // 5094 |
| o5.protocol = "https:"; |
| // undefined |
| fo81632121_1_cookie = function() { return fo81632121_1_cookie.returns[fo81632121_1_cookie.inst++]; }; |
| fo81632121_1_cookie.returns = []; |
| fo81632121_1_cookie.inst = 0; |
| defineGetter(o0, "cookie", fo81632121_1_cookie, undefined); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; highContrastMode=1; wd=1034x727"); |
| // 5097 |
| f81632121_467.returns.push(1374851215241); |
| // 5098 |
| o60 = {}; |
| // 5099 |
| f81632121_0.returns.push(o60); |
| // 5100 |
| f81632121_1002 = function() { return f81632121_1002.returns[f81632121_1002.inst++]; }; |
| f81632121_1002.returns = []; |
| f81632121_1002.inst = 0; |
| // 5101 |
| o60.toGMTString = f81632121_1002; |
| // undefined |
| o60 = null; |
| // 5102 |
| f81632121_1002.returns.push("Fri, 02 Aug 2013 15:06:55 GMT"); |
| // 5103 |
| o5.hostname = "jsbngssl.www.facebook.com"; |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; highContrastMode=1; wd=1034x727"); |
| // 5106 |
| f81632121_467.returns.push(1374851215242); |
| // 5108 |
| f81632121_482.returns.push("1;1"); |
| // 5113 |
| // 5116 |
| o60 = {}; |
| // 5117 |
| o61 = {}; |
| // 5119 |
| o60.nodeType = void 0; |
| // 5120 |
| o60.length = 1; |
| // 5121 |
| o60["0"] = "AVmr9"; |
| // 5131 |
| f81632121_468.returns.push(undefined); |
| // 5132 |
| o8.JSBNG__onkeydown = null; |
| // 5142 |
| f81632121_468.returns.push(undefined); |
| // 5143 |
| f81632121_1005 = function() { return f81632121_1005.returns[f81632121_1005.inst++]; }; |
| f81632121_1005.returns = []; |
| f81632121_1005.inst = 0; |
| // 5144 |
| o8.JSBNG__onclick = f81632121_1005; |
| // 5147 |
| // 5151 |
| o62 = {}; |
| // 5152 |
| f81632121_476.returns.push(o62); |
| // 5157 |
| f81632121_468.returns.push(undefined); |
| // 5158 |
| o8.JSBNG__onmousedown = null; |
| // 5166 |
| f81632121_468.returns.push(undefined); |
| // 5167 |
| f81632121_1007 = function() { return f81632121_1007.returns[f81632121_1007.inst++]; }; |
| f81632121_1007.returns = []; |
| f81632121_1007.inst = 0; |
| // 5168 |
| o8.JSBNG__onmouseover = f81632121_1007; |
| // 5171 |
| // 5183 |
| o63 = {}; |
| // 5184 |
| f81632121_508.returns.push(o63); |
| // 5185 |
| o63.getElementsByTagName = f81632121_502; |
| // 5187 |
| o63.querySelectorAll = f81632121_504; |
| // 5188 |
| o64 = {}; |
| // 5189 |
| f81632121_504.returns.push(o64); |
| // 5190 |
| o64.length = 1; |
| // 5191 |
| o65 = {}; |
| // 5192 |
| o64["0"] = o65; |
| // undefined |
| o64 = null; |
| // 5193 |
| o65.getElementsByTagName = f81632121_502; |
| // 5195 |
| o65.querySelectorAll = f81632121_504; |
| // 5196 |
| o64 = {}; |
| // 5197 |
| f81632121_504.returns.push(o64); |
| // 5198 |
| o64.length = 1; |
| // 5199 |
| o66 = {}; |
| // 5200 |
| o64["0"] = o66; |
| // undefined |
| o64 = null; |
| // 5201 |
| o66.getElementsByTagName = f81632121_502; |
| // 5203 |
| o66.querySelectorAll = f81632121_504; |
| // undefined |
| o66 = null; |
| // 5204 |
| o64 = {}; |
| // 5205 |
| f81632121_504.returns.push(o64); |
| // 5206 |
| o64.length = 1; |
| // 5207 |
| o66 = {}; |
| // 5208 |
| o64["0"] = o66; |
| // undefined |
| o64 = null; |
| // 5212 |
| o64 = {}; |
| // 5213 |
| f81632121_504.returns.push(o64); |
| // 5214 |
| o64.length = 1; |
| // 5215 |
| o67 = {}; |
| // 5216 |
| o64["0"] = o67; |
| // undefined |
| o64 = null; |
| // 5217 |
| o67.getElementsByTagName = f81632121_502; |
| // 5219 |
| o67.querySelectorAll = f81632121_504; |
| // 5220 |
| o64 = {}; |
| // 5221 |
| f81632121_504.returns.push(o64); |
| // 5222 |
| o64.length = 1; |
| // 5223 |
| o68 = {}; |
| // 5224 |
| o64["0"] = o68; |
| // undefined |
| o64 = null; |
| // 5225 |
| f81632121_12.returns.push(13); |
| // 5226 |
| o65.nodeName = "DIV"; |
| // 5227 |
| o65.__FB_TOKEN = void 0; |
| // 5228 |
| // 5229 |
| o65.getAttribute = f81632121_506; |
| // 5230 |
| o65.hasAttribute = f81632121_507; |
| // 5232 |
| f81632121_507.returns.push(false); |
| // 5233 |
| o65.JSBNG__addEventListener = f81632121_468; |
| // 5235 |
| f81632121_468.returns.push(undefined); |
| // 5236 |
| o65.JSBNG__onJSBNG__scroll = void 0; |
| // 5238 |
| o63.nodeName = "DIV"; |
| // 5239 |
| o63.__FB_TOKEN = void 0; |
| // 5240 |
| // 5241 |
| o63.getAttribute = f81632121_506; |
| // 5242 |
| o63.hasAttribute = f81632121_507; |
| // 5244 |
| f81632121_507.returns.push(false); |
| // 5245 |
| o63.JSBNG__addEventListener = f81632121_468; |
| // 5247 |
| f81632121_468.returns.push(undefined); |
| // 5248 |
| o63.JSBNG__onmousemove = null; |
| // 5250 |
| o67.nodeName = "DIV"; |
| // 5251 |
| o67.__FB_TOKEN = void 0; |
| // 5252 |
| // 5253 |
| o67.getAttribute = f81632121_506; |
| // 5254 |
| o67.hasAttribute = f81632121_507; |
| // 5256 |
| f81632121_507.returns.push(false); |
| // 5257 |
| o67.JSBNG__addEventListener = f81632121_468; |
| // 5259 |
| f81632121_468.returns.push(undefined); |
| // 5260 |
| o67.JSBNG__onclick = null; |
| // 5262 |
| o64 = {}; |
| // 5263 |
| o62.style = o64; |
| // 5265 |
| // 5267 |
| // undefined |
| o64 = null; |
| // 5269 |
| o62.__html = void 0; |
| // 5271 |
| o64 = {}; |
| // 5272 |
| f81632121_474.returns.push(o64); |
| // 5274 |
| o8.appendChild = f81632121_478; |
| // 5275 |
| f81632121_478.returns.push(o64); |
| // undefined |
| o64 = null; |
| // 5276 |
| o64 = {}; |
| // 5277 |
| f81632121_4.returns.push(o64); |
| // 5278 |
| o64.pointerEvents = ""; |
| // undefined |
| o64 = null; |
| // 5279 |
| o62.parentNode = null; |
| // 5283 |
| f81632121_468.returns.push(undefined); |
| // 5284 |
| o63.JSBNG__onmouseover = null; |
| // 5289 |
| f81632121_468.returns.push(undefined); |
| // 5290 |
| o63.JSBNG__onmouseout = null; |
| // 5295 |
| f81632121_468.returns.push(undefined); |
| // 5296 |
| o63.JSBNG__onfocusin = void 0; |
| // 5301 |
| f81632121_468.returns.push(undefined); |
| // 5302 |
| o63.JSBNG__onfocusout = void 0; |
| // 5307 |
| f81632121_468.returns.push(undefined); |
| // 5308 |
| o63.JSBNG__onmousedown = null; |
| // 5310 |
| o68.nodeName = "DIV"; |
| // 5311 |
| o68.__FB_TOKEN = void 0; |
| // 5312 |
| // 5313 |
| o68.getAttribute = f81632121_506; |
| // 5314 |
| o68.hasAttribute = f81632121_507; |
| // 5316 |
| f81632121_507.returns.push(false); |
| // 5317 |
| o68.JSBNG__addEventListener = f81632121_468; |
| // 5319 |
| f81632121_468.returns.push(undefined); |
| // 5320 |
| o68.JSBNG__onmousedown = null; |
| // 5322 |
| o64 = {}; |
| // 5323 |
| o63.classList = o64; |
| // 5325 |
| o64.add = f81632121_602; |
| // 5326 |
| f81632121_602.returns.push(undefined); |
| // 5329 |
| o69 = {}; |
| // 5330 |
| f81632121_508.returns.push(o69); |
| // 5331 |
| o69.getElementsByTagName = f81632121_502; |
| // 5333 |
| o69.querySelectorAll = f81632121_504; |
| // 5334 |
| o70 = {}; |
| // 5335 |
| f81632121_504.returns.push(o70); |
| // 5336 |
| o70.length = 1; |
| // 5337 |
| o71 = {}; |
| // 5338 |
| o70["0"] = o71; |
| // undefined |
| o70 = null; |
| // 5339 |
| o71.getElementsByTagName = f81632121_502; |
| // 5341 |
| o71.querySelectorAll = f81632121_504; |
| // 5342 |
| o70 = {}; |
| // 5343 |
| f81632121_504.returns.push(o70); |
| // 5344 |
| o70.length = 1; |
| // 5345 |
| o72 = {}; |
| // 5346 |
| o70["0"] = o72; |
| // undefined |
| o70 = null; |
| // 5347 |
| o72.getElementsByTagName = f81632121_502; |
| // 5349 |
| o72.querySelectorAll = f81632121_504; |
| // undefined |
| o72 = null; |
| // 5350 |
| o70 = {}; |
| // 5351 |
| f81632121_504.returns.push(o70); |
| // 5352 |
| o70.length = 1; |
| // 5353 |
| o72 = {}; |
| // 5354 |
| o70["0"] = o72; |
| // undefined |
| o70 = null; |
| // 5358 |
| o70 = {}; |
| // 5359 |
| f81632121_504.returns.push(o70); |
| // 5360 |
| o70.length = 1; |
| // 5361 |
| o73 = {}; |
| // 5362 |
| o70["0"] = o73; |
| // undefined |
| o70 = null; |
| // 5363 |
| o73.getElementsByTagName = f81632121_502; |
| // 5365 |
| o73.querySelectorAll = f81632121_504; |
| // 5366 |
| o70 = {}; |
| // 5367 |
| f81632121_504.returns.push(o70); |
| // 5368 |
| o70.length = 1; |
| // 5369 |
| o74 = {}; |
| // 5370 |
| o70["0"] = o74; |
| // undefined |
| o70 = null; |
| // 5371 |
| f81632121_12.returns.push(14); |
| // 5372 |
| o71.nodeName = "DIV"; |
| // 5373 |
| o71.__FB_TOKEN = void 0; |
| // 5374 |
| // 5375 |
| o71.getAttribute = f81632121_506; |
| // 5376 |
| o71.hasAttribute = f81632121_507; |
| // 5378 |
| f81632121_507.returns.push(false); |
| // 5379 |
| o71.JSBNG__addEventListener = f81632121_468; |
| // 5381 |
| f81632121_468.returns.push(undefined); |
| // 5382 |
| o71.JSBNG__onJSBNG__scroll = void 0; |
| // 5384 |
| o69.nodeName = "DIV"; |
| // 5385 |
| o69.__FB_TOKEN = void 0; |
| // 5386 |
| // 5387 |
| o69.getAttribute = f81632121_506; |
| // 5388 |
| o69.hasAttribute = f81632121_507; |
| // 5390 |
| f81632121_507.returns.push(false); |
| // 5391 |
| o69.JSBNG__addEventListener = f81632121_468; |
| // 5393 |
| f81632121_468.returns.push(undefined); |
| // 5394 |
| o69.JSBNG__onmousemove = null; |
| // 5396 |
| o73.nodeName = "DIV"; |
| // 5397 |
| o73.__FB_TOKEN = void 0; |
| // 5398 |
| // 5399 |
| o73.getAttribute = f81632121_506; |
| // 5400 |
| o73.hasAttribute = f81632121_507; |
| // 5402 |
| f81632121_507.returns.push(false); |
| // 5403 |
| o73.JSBNG__addEventListener = f81632121_468; |
| // 5405 |
| f81632121_468.returns.push(undefined); |
| // 5406 |
| o73.JSBNG__onclick = null; |
| // 5411 |
| f81632121_468.returns.push(undefined); |
| // 5412 |
| o69.JSBNG__onmouseover = null; |
| // 5417 |
| f81632121_468.returns.push(undefined); |
| // 5418 |
| o69.JSBNG__onmouseout = null; |
| // 5423 |
| f81632121_468.returns.push(undefined); |
| // 5424 |
| o69.JSBNG__onfocusin = void 0; |
| // 5429 |
| f81632121_468.returns.push(undefined); |
| // 5430 |
| o69.JSBNG__onfocusout = void 0; |
| // 5435 |
| f81632121_468.returns.push(undefined); |
| // 5436 |
| o69.JSBNG__onmousedown = null; |
| // 5438 |
| o74.nodeName = "DIV"; |
| // 5439 |
| o74.__FB_TOKEN = void 0; |
| // 5440 |
| // 5441 |
| o74.getAttribute = f81632121_506; |
| // 5442 |
| o74.hasAttribute = f81632121_507; |
| // 5444 |
| f81632121_507.returns.push(false); |
| // 5445 |
| o74.JSBNG__addEventListener = f81632121_468; |
| // 5447 |
| f81632121_468.returns.push(undefined); |
| // 5448 |
| o74.JSBNG__onmousedown = null; |
| // 5452 |
| o70 = {}; |
| // 5453 |
| f81632121_508.returns.push(o70); |
| // 5454 |
| o70.getElementsByTagName = f81632121_502; |
| // 5456 |
| o70.querySelectorAll = f81632121_504; |
| // 5457 |
| o75 = {}; |
| // 5458 |
| f81632121_504.returns.push(o75); |
| // 5459 |
| o75.length = 1; |
| // 5460 |
| o76 = {}; |
| // 5461 |
| o75["0"] = o76; |
| // undefined |
| o75 = null; |
| // 5462 |
| o76.getElementsByTagName = f81632121_502; |
| // 5464 |
| o76.querySelectorAll = f81632121_504; |
| // 5465 |
| o75 = {}; |
| // 5466 |
| f81632121_504.returns.push(o75); |
| // 5467 |
| o75.length = 1; |
| // 5468 |
| o77 = {}; |
| // 5469 |
| o75["0"] = o77; |
| // undefined |
| o75 = null; |
| // 5470 |
| o77.getElementsByTagName = f81632121_502; |
| // 5472 |
| o77.querySelectorAll = f81632121_504; |
| // undefined |
| o77 = null; |
| // 5473 |
| o75 = {}; |
| // 5474 |
| f81632121_504.returns.push(o75); |
| // 5475 |
| o75.length = 1; |
| // 5476 |
| o77 = {}; |
| // 5477 |
| o75["0"] = o77; |
| // undefined |
| o75 = null; |
| // 5481 |
| o75 = {}; |
| // 5482 |
| f81632121_504.returns.push(o75); |
| // 5483 |
| o75.length = 1; |
| // 5484 |
| o78 = {}; |
| // 5485 |
| o75["0"] = o78; |
| // undefined |
| o75 = null; |
| // 5486 |
| o78.getElementsByTagName = f81632121_502; |
| // 5488 |
| o78.querySelectorAll = f81632121_504; |
| // 5489 |
| o75 = {}; |
| // 5490 |
| f81632121_504.returns.push(o75); |
| // 5491 |
| o75.length = 1; |
| // 5492 |
| o79 = {}; |
| // 5493 |
| o75["0"] = o79; |
| // undefined |
| o75 = null; |
| // 5494 |
| f81632121_12.returns.push(15); |
| // 5495 |
| o76.nodeName = "DIV"; |
| // 5496 |
| o76.__FB_TOKEN = void 0; |
| // 5497 |
| // 5498 |
| o76.getAttribute = f81632121_506; |
| // 5499 |
| o76.hasAttribute = f81632121_507; |
| // 5501 |
| f81632121_507.returns.push(false); |
| // 5502 |
| o76.JSBNG__addEventListener = f81632121_468; |
| // 5504 |
| f81632121_468.returns.push(undefined); |
| // 5505 |
| o76.JSBNG__onJSBNG__scroll = void 0; |
| // 5507 |
| o70.nodeName = "DIV"; |
| // 5508 |
| o70.__FB_TOKEN = void 0; |
| // 5509 |
| // 5510 |
| o70.getAttribute = f81632121_506; |
| // 5511 |
| o70.hasAttribute = f81632121_507; |
| // 5513 |
| f81632121_507.returns.push(false); |
| // 5514 |
| o70.JSBNG__addEventListener = f81632121_468; |
| // 5516 |
| f81632121_468.returns.push(undefined); |
| // 5517 |
| o70.JSBNG__onmousemove = null; |
| // 5519 |
| o78.nodeName = "DIV"; |
| // 5520 |
| o78.__FB_TOKEN = void 0; |
| // 5521 |
| // 5522 |
| o78.getAttribute = f81632121_506; |
| // 5523 |
| o78.hasAttribute = f81632121_507; |
| // 5525 |
| f81632121_507.returns.push(false); |
| // 5526 |
| o78.JSBNG__addEventListener = f81632121_468; |
| // 5528 |
| f81632121_468.returns.push(undefined); |
| // 5529 |
| o78.JSBNG__onclick = null; |
| // 5534 |
| f81632121_468.returns.push(undefined); |
| // 5535 |
| o70.JSBNG__onmouseover = null; |
| // 5540 |
| f81632121_468.returns.push(undefined); |
| // 5541 |
| o70.JSBNG__onmouseout = null; |
| // 5546 |
| f81632121_468.returns.push(undefined); |
| // 5547 |
| o70.JSBNG__onfocusin = void 0; |
| // 5552 |
| f81632121_468.returns.push(undefined); |
| // 5553 |
| o70.JSBNG__onfocusout = void 0; |
| // 5558 |
| f81632121_468.returns.push(undefined); |
| // 5559 |
| o70.JSBNG__onmousedown = null; |
| // 5561 |
| o79.nodeName = "DIV"; |
| // 5562 |
| o79.__FB_TOKEN = void 0; |
| // 5563 |
| // 5564 |
| o79.getAttribute = f81632121_506; |
| // 5565 |
| o79.hasAttribute = f81632121_507; |
| // 5567 |
| f81632121_507.returns.push(false); |
| // 5568 |
| o79.JSBNG__addEventListener = f81632121_468; |
| // 5570 |
| f81632121_468.returns.push(undefined); |
| // 5571 |
| o79.JSBNG__onmousedown = null; |
| // 5573 |
| o75 = {}; |
| // 5574 |
| o70.classList = o75; |
| // 5576 |
| o75.add = f81632121_602; |
| // 5577 |
| f81632121_602.returns.push(undefined); |
| // 5580 |
| o80 = {}; |
| // 5581 |
| f81632121_476.returns.push(o80); |
| // 5582 |
| // 5583 |
| // 5584 |
| o80.getElementsByTagName = f81632121_502; |
| // 5585 |
| o81 = {}; |
| // 5586 |
| f81632121_502.returns.push(o81); |
| // 5587 |
| o81.length = 0; |
| // undefined |
| o81 = null; |
| // 5589 |
| o81 = {}; |
| // 5590 |
| o80.childNodes = o81; |
| // undefined |
| o80 = null; |
| // 5591 |
| o81.nodeType = void 0; |
| // 5592 |
| o81.getElementsByTagName = void 0; |
| // 5593 |
| o81.__html = void 0; |
| // 5594 |
| o81.mountComponentIntoNode = void 0; |
| // 5595 |
| o81.classList = void 0; |
| // 5597 |
| o81.className = void 0; |
| // 5599 |
| // undefined |
| o81 = null; |
| // 5601 |
| o80 = {}; |
| // 5602 |
| f81632121_476.returns.push(o80); |
| // 5603 |
| o80.firstChild = null; |
| // 5605 |
| o81 = {}; |
| // 5606 |
| f81632121_474.returns.push(o81); |
| // 5608 |
| o80.appendChild = f81632121_478; |
| // 5609 |
| f81632121_478.returns.push(o81); |
| // undefined |
| o81 = null; |
| // 5611 |
| o81 = {}; |
| // 5612 |
| f81632121_476.returns.push(o81); |
| // 5613 |
| // 5614 |
| o81.firstChild = null; |
| // 5615 |
| o80.__html = void 0; |
| // 5617 |
| o82 = {}; |
| // 5618 |
| f81632121_474.returns.push(o82); |
| // 5620 |
| o81.appendChild = f81632121_478; |
| // 5621 |
| f81632121_478.returns.push(o82); |
| // undefined |
| o82 = null; |
| // 5623 |
| o82 = {}; |
| // 5624 |
| f81632121_476.returns.push(o82); |
| // 5625 |
| // 5626 |
| o82.firstChild = null; |
| // 5627 |
| o81.__html = void 0; |
| // undefined |
| o81 = null; |
| // 5629 |
| o81 = {}; |
| // 5630 |
| f81632121_474.returns.push(o81); |
| // 5632 |
| o82.appendChild = f81632121_478; |
| // 5633 |
| f81632121_478.returns.push(o81); |
| // undefined |
| o81 = null; |
| // 5634 |
| o81 = {}; |
| // 5635 |
| o82.classList = o81; |
| // 5637 |
| o81.add = f81632121_602; |
| // undefined |
| o81 = null; |
| // 5638 |
| f81632121_602.returns.push(undefined); |
| // 5639 |
| o81 = {}; |
| // 5640 |
| o80.style = o81; |
| // undefined |
| o80 = null; |
| // 5641 |
| // undefined |
| o81 = null; |
| // 5645 |
| f81632121_602.returns.push(undefined); |
| // 5646 |
| o82.__FB_TOKEN = void 0; |
| // 5647 |
| // 5648 |
| o82.nodeName = "DIV"; |
| // 5649 |
| o82.getAttribute = f81632121_506; |
| // 5650 |
| o82.hasAttribute = f81632121_507; |
| // 5652 |
| f81632121_507.returns.push(false); |
| // 5653 |
| o82.JSBNG__addEventListener = f81632121_468; |
| // 5655 |
| f81632121_468.returns.push(undefined); |
| // 5656 |
| o82.JSBNG__onclick = null; |
| // 5661 |
| f81632121_468.returns.push(undefined); |
| // 5662 |
| o82.JSBNG__onsubmit = null; |
| // 5667 |
| f81632121_468.returns.push(undefined); |
| // 5668 |
| o82.JSBNG__onsuccess = void 0; |
| // 5673 |
| f81632121_468.returns.push(undefined); |
| // 5674 |
| o82.JSBNG__onerror = null; |
| // undefined |
| o82 = null; |
| // 5676 |
| f81632121_12.returns.push(16); |
| // 5679 |
| o80 = {}; |
| // 5680 |
| f81632121_476.returns.push(o80); |
| // 5681 |
| // 5682 |
| // 5683 |
| o80.getElementsByTagName = f81632121_502; |
| // 5684 |
| o81 = {}; |
| // 5685 |
| f81632121_502.returns.push(o81); |
| // 5686 |
| o81.length = 0; |
| // undefined |
| o81 = null; |
| // 5688 |
| o81 = {}; |
| // 5689 |
| o80.childNodes = o81; |
| // undefined |
| o80 = null; |
| // 5690 |
| o81.nodeType = void 0; |
| // 5691 |
| o81.getElementsByTagName = void 0; |
| // 5692 |
| o81.__html = void 0; |
| // 5693 |
| o81.mountComponentIntoNode = void 0; |
| // 5694 |
| o81.classList = void 0; |
| // 5696 |
| o81.className = void 0; |
| // 5698 |
| // undefined |
| o81 = null; |
| // 5700 |
| o80 = {}; |
| // 5701 |
| f81632121_476.returns.push(o80); |
| // 5702 |
| o80.firstChild = null; |
| // 5704 |
| o81 = {}; |
| // 5705 |
| f81632121_474.returns.push(o81); |
| // 5707 |
| o80.appendChild = f81632121_478; |
| // 5708 |
| f81632121_478.returns.push(o81); |
| // undefined |
| o81 = null; |
| // 5710 |
| o81 = {}; |
| // 5711 |
| f81632121_476.returns.push(o81); |
| // 5712 |
| // 5713 |
| o81.firstChild = null; |
| // 5714 |
| o80.__html = void 0; |
| // 5716 |
| o82 = {}; |
| // 5717 |
| f81632121_474.returns.push(o82); |
| // 5719 |
| o81.appendChild = f81632121_478; |
| // 5720 |
| f81632121_478.returns.push(o82); |
| // undefined |
| o82 = null; |
| // 5722 |
| o82 = {}; |
| // 5723 |
| f81632121_476.returns.push(o82); |
| // 5724 |
| // 5725 |
| o82.firstChild = null; |
| // 5726 |
| o81.__html = void 0; |
| // undefined |
| o81 = null; |
| // 5728 |
| o81 = {}; |
| // 5729 |
| f81632121_474.returns.push(o81); |
| // 5731 |
| o82.appendChild = f81632121_478; |
| // 5732 |
| f81632121_478.returns.push(o81); |
| // undefined |
| o81 = null; |
| // 5733 |
| o81 = {}; |
| // 5734 |
| o82.classList = o81; |
| // 5736 |
| o81.add = f81632121_602; |
| // undefined |
| o81 = null; |
| // 5737 |
| f81632121_602.returns.push(undefined); |
| // 5738 |
| o81 = {}; |
| // 5739 |
| o80.style = o81; |
| // undefined |
| o80 = null; |
| // 5740 |
| // undefined |
| o81 = null; |
| // 5744 |
| f81632121_602.returns.push(undefined); |
| // 5745 |
| o82.__FB_TOKEN = void 0; |
| // 5746 |
| // undefined |
| o82 = null; |
| // 5749 |
| o80 = {}; |
| // 5750 |
| f81632121_476.returns.push(o80); |
| // 5751 |
| // 5752 |
| // 5753 |
| o80.getElementsByTagName = f81632121_502; |
| // 5754 |
| o81 = {}; |
| // 5755 |
| f81632121_502.returns.push(o81); |
| // 5756 |
| o81.length = 0; |
| // undefined |
| o81 = null; |
| // 5758 |
| o81 = {}; |
| // 5759 |
| o80.childNodes = o81; |
| // undefined |
| o80 = null; |
| // 5760 |
| o81.nodeType = void 0; |
| // 5761 |
| o81.getElementsByTagName = void 0; |
| // 5762 |
| o81.__html = void 0; |
| // 5763 |
| o81.mountComponentIntoNode = void 0; |
| // 5764 |
| o81.classList = void 0; |
| // 5766 |
| o81.className = void 0; |
| // 5768 |
| // undefined |
| o81 = null; |
| // 5770 |
| o80 = {}; |
| // 5771 |
| f81632121_476.returns.push(o80); |
| // 5772 |
| o80.firstChild = null; |
| // 5774 |
| o81 = {}; |
| // 5775 |
| f81632121_474.returns.push(o81); |
| // 5777 |
| o80.appendChild = f81632121_478; |
| // 5778 |
| f81632121_478.returns.push(o81); |
| // undefined |
| o81 = null; |
| // 5780 |
| o81 = {}; |
| // 5781 |
| f81632121_476.returns.push(o81); |
| // 5782 |
| // 5783 |
| o81.firstChild = null; |
| // 5784 |
| o80.__html = void 0; |
| // 5786 |
| o82 = {}; |
| // 5787 |
| f81632121_474.returns.push(o82); |
| // 5789 |
| o81.appendChild = f81632121_478; |
| // 5790 |
| f81632121_478.returns.push(o82); |
| // undefined |
| o82 = null; |
| // 5792 |
| o82 = {}; |
| // 5793 |
| f81632121_476.returns.push(o82); |
| // 5794 |
| // 5795 |
| o82.firstChild = null; |
| // 5796 |
| o81.__html = void 0; |
| // undefined |
| o81 = null; |
| // 5798 |
| o81 = {}; |
| // 5799 |
| f81632121_474.returns.push(o81); |
| // 5801 |
| o82.appendChild = f81632121_478; |
| // 5802 |
| f81632121_478.returns.push(o81); |
| // undefined |
| o81 = null; |
| // 5803 |
| o81 = {}; |
| // 5804 |
| o82.classList = o81; |
| // 5806 |
| o81.add = f81632121_602; |
| // undefined |
| o81 = null; |
| // 5807 |
| f81632121_602.returns.push(undefined); |
| // 5808 |
| o81 = {}; |
| // 5809 |
| o80.style = o81; |
| // undefined |
| o80 = null; |
| // 5810 |
| // undefined |
| o81 = null; |
| // 5814 |
| f81632121_602.returns.push(undefined); |
| // 5815 |
| o82.__FB_TOKEN = void 0; |
| // 5816 |
| // undefined |
| o82 = null; |
| // 5819 |
| o80 = {}; |
| // 5820 |
| f81632121_476.returns.push(o80); |
| // 5821 |
| // 5822 |
| // 5823 |
| o80.getElementsByTagName = f81632121_502; |
| // 5824 |
| o81 = {}; |
| // 5825 |
| f81632121_502.returns.push(o81); |
| // 5826 |
| o81.length = 0; |
| // undefined |
| o81 = null; |
| // 5828 |
| o81 = {}; |
| // 5829 |
| o80.childNodes = o81; |
| // undefined |
| o80 = null; |
| // 5830 |
| o81.nodeType = void 0; |
| // 5831 |
| o81.getElementsByTagName = void 0; |
| // 5832 |
| o81.__html = void 0; |
| // 5833 |
| o81.mountComponentIntoNode = void 0; |
| // 5834 |
| o81.classList = void 0; |
| // 5836 |
| o81.className = void 0; |
| // 5838 |
| // undefined |
| o81 = null; |
| // 5840 |
| o80 = {}; |
| // 5841 |
| f81632121_476.returns.push(o80); |
| // 5842 |
| o80.firstChild = null; |
| // 5844 |
| o81 = {}; |
| // 5845 |
| f81632121_474.returns.push(o81); |
| // 5847 |
| o80.appendChild = f81632121_478; |
| // 5848 |
| f81632121_478.returns.push(o81); |
| // undefined |
| o81 = null; |
| // 5850 |
| o81 = {}; |
| // 5851 |
| f81632121_476.returns.push(o81); |
| // 5852 |
| // 5853 |
| o81.firstChild = null; |
| // 5854 |
| o80.__html = void 0; |
| // 5856 |
| o82 = {}; |
| // 5857 |
| f81632121_474.returns.push(o82); |
| // 5859 |
| o81.appendChild = f81632121_478; |
| // 5860 |
| f81632121_478.returns.push(o82); |
| // undefined |
| o82 = null; |
| // 5862 |
| o82 = {}; |
| // 5863 |
| f81632121_476.returns.push(o82); |
| // 5864 |
| // 5865 |
| o82.firstChild = null; |
| // 5866 |
| o81.__html = void 0; |
| // undefined |
| o81 = null; |
| // 5868 |
| o81 = {}; |
| // 5869 |
| f81632121_474.returns.push(o81); |
| // 5871 |
| o82.appendChild = f81632121_478; |
| // 5872 |
| f81632121_478.returns.push(o81); |
| // undefined |
| o81 = null; |
| // 5873 |
| o81 = {}; |
| // 5874 |
| o82.classList = o81; |
| // 5876 |
| o81.add = f81632121_602; |
| // undefined |
| o81 = null; |
| // 5877 |
| f81632121_602.returns.push(undefined); |
| // 5878 |
| o81 = {}; |
| // 5879 |
| o80.style = o81; |
| // undefined |
| o80 = null; |
| // 5880 |
| // undefined |
| o81 = null; |
| // 5884 |
| f81632121_602.returns.push(undefined); |
| // 5885 |
| o82.__FB_TOKEN = void 0; |
| // 5886 |
| // undefined |
| o82 = null; |
| // 5890 |
| o30.__html = void 0; |
| // 5891 |
| o30.mountComponentIntoNode = void 0; |
| // 5892 |
| o30.classList = void 0; |
| // 5894 |
| o30.className = void 0; |
| // 5896 |
| // undefined |
| o30 = null; |
| // 5898 |
| o30 = {}; |
| // 5899 |
| f81632121_476.returns.push(o30); |
| // 5900 |
| o30.firstChild = null; |
| // 5902 |
| o80 = {}; |
| // 5903 |
| f81632121_474.returns.push(o80); |
| // 5905 |
| o30.appendChild = f81632121_478; |
| // 5906 |
| f81632121_478.returns.push(o80); |
| // undefined |
| o80 = null; |
| // 5908 |
| o80 = {}; |
| // 5909 |
| f81632121_476.returns.push(o80); |
| // 5910 |
| // 5911 |
| o80.firstChild = null; |
| // 5912 |
| o30.__html = void 0; |
| // 5914 |
| o81 = {}; |
| // 5915 |
| f81632121_474.returns.push(o81); |
| // 5917 |
| o80.appendChild = f81632121_478; |
| // 5918 |
| f81632121_478.returns.push(o81); |
| // undefined |
| o81 = null; |
| // 5920 |
| o81 = {}; |
| // 5921 |
| f81632121_476.returns.push(o81); |
| // 5922 |
| // 5923 |
| o81.firstChild = null; |
| // 5924 |
| o80.__html = void 0; |
| // undefined |
| o80 = null; |
| // 5926 |
| o80 = {}; |
| // 5927 |
| f81632121_474.returns.push(o80); |
| // 5929 |
| o81.appendChild = f81632121_478; |
| // 5930 |
| f81632121_478.returns.push(o80); |
| // undefined |
| o80 = null; |
| // 5931 |
| o80 = {}; |
| // 5932 |
| o81.classList = o80; |
| // 5934 |
| o80.add = f81632121_602; |
| // undefined |
| o80 = null; |
| // 5935 |
| f81632121_602.returns.push(undefined); |
| // 5936 |
| o80 = {}; |
| // 5937 |
| o30.style = o80; |
| // undefined |
| o30 = null; |
| // 5938 |
| // undefined |
| o80 = null; |
| // 5942 |
| f81632121_602.returns.push(undefined); |
| // 5943 |
| o81.__FB_TOKEN = void 0; |
| // 5944 |
| // undefined |
| o81 = null; |
| // 5949 |
| o30 = {}; |
| // 5950 |
| f81632121_476.returns.push(o30); |
| // undefined |
| o30 = null; |
| // 5952 |
| o30 = {}; |
| // 5953 |
| f81632121_476.returns.push(o30); |
| // undefined |
| o30 = null; |
| // 5954 |
| o30 = {}; |
| // 5955 |
| o80 = {}; |
| // 5957 |
| o30.nodeType = void 0; |
| // 5958 |
| o30.length = 1; |
| // 5959 |
| o30["0"] = "f7Tpb"; |
| // 5982 |
| o81 = {}; |
| // 5985 |
| o82 = {}; |
| // 5986 |
| o81.srcElement = o82; |
| // 5988 |
| o81.target = o82; |
| // 5990 |
| o82.nodeType = 1; |
| // 5991 |
| o82.parentNode = o16; |
| // 5993 |
| o82.getAttribute = f81632121_506; |
| // 5995 |
| f81632121_506.returns.push(null); |
| // 5997 |
| o16.parentNode = o8; |
| // 5998 |
| o16.nodeType = 1; |
| // 6001 |
| f81632121_506.returns.push(null); |
| // 6003 |
| o8.parentNode = o0; |
| // 6004 |
| o8.nodeType = 1; |
| // 6007 |
| f81632121_506.returns.push(null); |
| // 6009 |
| o0.parentNode = null; |
| // 6010 |
| o0.nodeType = 9; |
| // 6012 |
| o81.JSBNG__screenX = 1070; |
| // 6013 |
| o81.JSBNG__screenY = 414; |
| // 6014 |
| o81.altKey = false; |
| // 6015 |
| o81.bubbles = true; |
| // 6016 |
| o81.button = 0; |
| // 6017 |
| o81.buttons = void 0; |
| // 6018 |
| o81.cancelable = false; |
| // 6019 |
| o81.clientX = 1002; |
| // 6020 |
| o81.clientY = 249; |
| // 6021 |
| o81.ctrlKey = false; |
| // 6022 |
| o81.currentTarget = o0; |
| // 6023 |
| o81.defaultPrevented = false; |
| // 6024 |
| o81.detail = 0; |
| // 6025 |
| o81.eventPhase = 3; |
| // 6026 |
| o81.isTrusted = void 0; |
| // 6027 |
| o81.metaKey = false; |
| // 6028 |
| o81.pageX = 1002; |
| // 6029 |
| o81.pageY = 408; |
| // 6030 |
| o81.relatedTarget = null; |
| // 6031 |
| o81.fromElement = null; |
| // 6034 |
| o81.shiftKey = false; |
| // 6037 |
| o81.timeStamp = 1374851215437; |
| // 6038 |
| o81.type = "mousemove"; |
| // 6039 |
| o81.view = ow81632121; |
| // 6041 |
| o81.returnValue = true; |
| // 6042 |
| o81.cancelBubble = false; |
| // undefined |
| o81 = null; |
| // 6049 |
| f81632121_467.returns.push(1374851215451); |
| // 6051 |
| f81632121_467.returns.push(1374851215452); |
| // 6055 |
| f81632121_467.returns.push(1374851215452); |
| // 6059 |
| o81 = {}; |
| // 6060 |
| f81632121_474.returns.push(o81); |
| // 6062 |
| f81632121_467.returns.push(1374851215452); |
| // 6065 |
| o83 = {}; |
| // 6066 |
| f81632121_476.returns.push(o83); |
| // 6067 |
| // 6068 |
| // 6069 |
| // 6070 |
| // 6071 |
| // 6072 |
| o81.appendChild = f81632121_478; |
| // 6073 |
| f81632121_478.returns.push(o83); |
| // 6075 |
| f81632121_478.returns.push(o81); |
| // undefined |
| o81 = null; |
| // 6081 |
| f81632121_467.returns.push(1374851215461); |
| // 6083 |
| f81632121_467.returns.push(1374851215461); |
| // 6087 |
| f81632121_467.returns.push(1374851215462); |
| // 6091 |
| o81 = {}; |
| // 6092 |
| f81632121_474.returns.push(o81); |
| // 6094 |
| f81632121_467.returns.push(1374851215462); |
| // 6097 |
| o84 = {}; |
| // 6098 |
| f81632121_476.returns.push(o84); |
| // 6099 |
| // 6100 |
| // 6101 |
| // 6102 |
| // 6103 |
| // 6104 |
| o81.appendChild = f81632121_478; |
| // 6105 |
| f81632121_478.returns.push(o84); |
| // 6107 |
| f81632121_467.returns.push(1374851215463); |
| // 6110 |
| o85 = {}; |
| // 6111 |
| f81632121_476.returns.push(o85); |
| // 6112 |
| // 6113 |
| // 6114 |
| // 6115 |
| // 6116 |
| // 6118 |
| f81632121_478.returns.push(o85); |
| // 6120 |
| f81632121_478.returns.push(o81); |
| // undefined |
| o81 = null; |
| // 6121 |
| o81 = {}; |
| // 6123 |
| f81632121_1110 = function() { return f81632121_1110.returns[f81632121_1110.inst++]; }; |
| f81632121_1110.returns = []; |
| f81632121_1110.inst = 0; |
| // 6124 |
| o81._needsGripper = f81632121_1110; |
| // 6125 |
| f81632121_1111 = function() { return f81632121_1111.returns[f81632121_1111.inst++]; }; |
| f81632121_1111.returns = []; |
| f81632121_1111.inst = 0; |
| // 6126 |
| o81._throttledComputeHeights = f81632121_1111; |
| // 6128 |
| f81632121_467.returns.push(1374851215477); |
| // 6129 |
| o70.clientHeight = 0; |
| // undefined |
| o70 = null; |
| // 6130 |
| o77.offsetHeight = 0; |
| // undefined |
| o77 = null; |
| // 6131 |
| o78.offsetHeight = 0; |
| // undefined |
| o78 = null; |
| // 6132 |
| f81632121_12.returns.push(17); |
| // 6133 |
| f81632121_1111.returns.push(undefined); |
| // 6134 |
| o81._gripperHeight = NaN; |
| // 6135 |
| o81._trackHeight = 0; |
| // 6136 |
| f81632121_1110.returns.push(false); |
| // 6137 |
| f81632121_1112 = function() { return f81632121_1112.returns[f81632121_1112.inst++]; }; |
| f81632121_1112.returns = []; |
| f81632121_1112.inst = 0; |
| // 6138 |
| o81._throttledShowGripperAndShadows = f81632121_1112; |
| // 6140 |
| f81632121_467.returns.push(1374851215487); |
| // 6142 |
| f81632121_467.returns.push(1374851215487); |
| // 6143 |
| o70 = {}; |
| // 6144 |
| o79.classList = o70; |
| // undefined |
| o79 = null; |
| // 6146 |
| o70.add = f81632121_602; |
| // undefined |
| o70 = null; |
| // 6147 |
| f81632121_602.returns.push(undefined); |
| // 6148 |
| o76.scrollTop = 0; |
| // 6151 |
| f81632121_1114 = function() { return f81632121_1114.returns[f81632121_1114.inst++]; }; |
| f81632121_1114.returns = []; |
| f81632121_1114.inst = 0; |
| // 6152 |
| o75.remove = f81632121_1114; |
| // undefined |
| o75 = null; |
| // 6153 |
| f81632121_1114.returns.push(undefined); |
| // 6158 |
| f81632121_1114.returns.push(undefined); |
| // 6159 |
| f81632121_12.returns.push(18); |
| // 6160 |
| f81632121_1112.returns.push(undefined); |
| // 6161 |
| o70 = {}; |
| // 6164 |
| o70.srcElement = o82; |
| // 6166 |
| o70.target = o82; |
| // 6173 |
| f81632121_506.returns.push(null); |
| // 6179 |
| f81632121_506.returns.push(null); |
| // 6185 |
| f81632121_506.returns.push(null); |
| // 6190 |
| o70.JSBNG__screenX = 1072; |
| // 6191 |
| o70.JSBNG__screenY = 414; |
| // 6192 |
| o70.altKey = false; |
| // 6193 |
| o70.bubbles = true; |
| // 6194 |
| o70.button = 0; |
| // 6195 |
| o70.buttons = void 0; |
| // 6196 |
| o70.cancelable = false; |
| // 6197 |
| o70.clientX = 1004; |
| // 6198 |
| o70.clientY = 249; |
| // 6199 |
| o70.ctrlKey = false; |
| // 6200 |
| o70.currentTarget = o0; |
| // 6201 |
| o70.defaultPrevented = false; |
| // 6202 |
| o70.detail = 0; |
| // 6203 |
| o70.eventPhase = 3; |
| // 6204 |
| o70.isTrusted = void 0; |
| // 6205 |
| o70.metaKey = false; |
| // 6206 |
| o70.pageX = 1004; |
| // 6207 |
| o70.pageY = 408; |
| // 6208 |
| o70.relatedTarget = null; |
| // 6209 |
| o70.fromElement = null; |
| // 6212 |
| o70.shiftKey = false; |
| // 6215 |
| o70.timeStamp = 1374851215542; |
| // 6216 |
| o70.type = "mousemove"; |
| // 6217 |
| o70.view = ow81632121; |
| // 6219 |
| o70.returnValue = true; |
| // 6220 |
| o70.cancelBubble = false; |
| // undefined |
| o70 = null; |
| // 6222 |
| o70 = {}; |
| // 6224 |
| o70._needsGripper = f81632121_1110; |
| // 6225 |
| f81632121_1117 = function() { return f81632121_1117.returns[f81632121_1117.inst++]; }; |
| f81632121_1117.returns = []; |
| f81632121_1117.inst = 0; |
| // 6226 |
| o70._throttledComputeHeights = f81632121_1117; |
| // 6228 |
| f81632121_467.returns.push(1374851215544); |
| // 6229 |
| o63.clientHeight = 0; |
| // 6230 |
| o66.offsetHeight = 0; |
| // undefined |
| o66 = null; |
| // 6231 |
| o67.offsetHeight = 0; |
| // undefined |
| o67 = null; |
| // 6232 |
| f81632121_12.returns.push(19); |
| // 6233 |
| f81632121_1117.returns.push(undefined); |
| // 6234 |
| o70._gripperHeight = NaN; |
| // 6235 |
| o70._trackHeight = 0; |
| // 6236 |
| f81632121_1110.returns.push(false); |
| // 6237 |
| f81632121_1118 = function() { return f81632121_1118.returns[f81632121_1118.inst++]; }; |
| f81632121_1118.returns = []; |
| f81632121_1118.inst = 0; |
| // 6238 |
| o70._throttledShowGripperAndShadows = f81632121_1118; |
| // 6240 |
| f81632121_467.returns.push(1374851215548); |
| // 6242 |
| f81632121_467.returns.push(1374851215548); |
| // 6243 |
| o66 = {}; |
| // 6244 |
| o68.classList = o66; |
| // undefined |
| o68 = null; |
| // 6246 |
| o66.add = f81632121_602; |
| // undefined |
| o66 = null; |
| // 6247 |
| f81632121_602.returns.push(undefined); |
| // 6248 |
| o65.scrollTop = 0; |
| // undefined |
| o65 = null; |
| // 6251 |
| o64.remove = f81632121_1114; |
| // undefined |
| o64 = null; |
| // 6252 |
| f81632121_1114.returns.push(undefined); |
| // 6257 |
| f81632121_1114.returns.push(undefined); |
| // 6258 |
| f81632121_12.returns.push(20); |
| // 6259 |
| f81632121_1118.returns.push(undefined); |
| // 6262 |
| f81632121_467.returns.push(1374851215549); |
| // 6263 |
| o64 = {}; |
| // 6264 |
| f81632121_4.returns.push(o64); |
| // 6265 |
| o64.height = "42px"; |
| // undefined |
| o64 = null; |
| // 6266 |
| o22.parentNode = o9; |
| // undefined |
| o9 = null; |
| // 6268 |
| f81632121_521.returns.push(o22); |
| // undefined |
| o22 = null; |
| // 6270 |
| f81632121_467.returns.push(1374851215549); |
| // 6271 |
| f81632121_15.returns.push(undefined); |
| // 6272 |
| o9 = {}; |
| // 6278 |
| f81632121_467.returns.push(1374851215550); |
| // 6279 |
| f81632121_1122 = function() { return f81632121_1122.returns[f81632121_1122.inst++]; }; |
| f81632121_1122.returns = []; |
| f81632121_1122.inst = 0; |
| // 6280 |
| o4.pushState = f81632121_1122; |
| // 6281 |
| o0.JSBNG__URL = "http://jsbngssl.www.facebook.com/LawlabeeTheWallaby"; |
| // 6282 |
| f81632121_1123 = function() { return f81632121_1123.returns[f81632121_1123.inst++]; }; |
| f81632121_1123.returns = []; |
| f81632121_1123.inst = 0; |
| // 6283 |
| o4.replaceState = f81632121_1123; |
| // undefined |
| o4 = null; |
| // 6284 |
| f81632121_1123.returns.push(undefined); |
| // 6285 |
| f81632121_7.returns.push(undefined); |
| // 6286 |
| f81632121_1124 = function() { return f81632121_1124.returns[f81632121_1124.inst++]; }; |
| f81632121_1124.returns = []; |
| f81632121_1124.inst = 0; |
| // 6287 |
| ow81632121.JSBNG__onpopstate = f81632121_1124; |
| // 6294 |
| f81632121_468.returns.push(undefined); |
| // 6295 |
| o0.JSBNG__onsubmit = null; |
| // 6300 |
| o4 = {}; |
| // 6302 |
| o4._needsGripper = f81632121_1110; |
| // 6303 |
| f81632121_1126 = function() { return f81632121_1126.returns[f81632121_1126.inst++]; }; |
| f81632121_1126.returns = []; |
| f81632121_1126.inst = 0; |
| // 6304 |
| o4._throttledComputeHeights = f81632121_1126; |
| // 6306 |
| f81632121_467.returns.push(1374851215552); |
| // 6307 |
| o69.clientHeight = 0; |
| // 6308 |
| o72.offsetHeight = 0; |
| // undefined |
| o72 = null; |
| // 6309 |
| o73.offsetHeight = 0; |
| // undefined |
| o73 = null; |
| // 6310 |
| f81632121_12.returns.push(21); |
| // 6311 |
| f81632121_1126.returns.push(undefined); |
| // 6312 |
| o4._gripperHeight = NaN; |
| // 6313 |
| o4._trackHeight = 0; |
| // 6314 |
| f81632121_1110.returns.push(false); |
| // 6315 |
| f81632121_1127 = function() { return f81632121_1127.returns[f81632121_1127.inst++]; }; |
| f81632121_1127.returns = []; |
| f81632121_1127.inst = 0; |
| // 6316 |
| o4._throttledShowGripperAndShadows = f81632121_1127; |
| // 6318 |
| f81632121_467.returns.push(1374851215552); |
| // 6320 |
| f81632121_467.returns.push(1374851215552); |
| // 6321 |
| o22 = {}; |
| // 6322 |
| o74.classList = o22; |
| // undefined |
| o74 = null; |
| // 6324 |
| o22.add = f81632121_602; |
| // undefined |
| o22 = null; |
| // 6325 |
| f81632121_602.returns.push(undefined); |
| // 6326 |
| o71.scrollTop = 0; |
| // undefined |
| o71 = null; |
| // 6327 |
| o22 = {}; |
| // 6328 |
| o69.classList = o22; |
| // 6330 |
| o22.remove = f81632121_1114; |
| // 6331 |
| f81632121_1114.returns.push(undefined); |
| // 6336 |
| f81632121_1114.returns.push(undefined); |
| // 6337 |
| f81632121_12.returns.push(22); |
| // 6338 |
| f81632121_1127.returns.push(undefined); |
| // 6339 |
| o64 = {}; |
| // undefined |
| o64 = null; |
| // 6340 |
| // 6341 |
| // undefined |
| o83 = null; |
| // 6344 |
| f81632121_467.returns.push(1374851215557); |
| // 6347 |
| f81632121_467.returns.push(1374851215558); |
| // 6349 |
| o64 = {}; |
| // 6350 |
| f81632121_508.returns.push(o64); |
| // 6352 |
| o65 = {}; |
| // 6353 |
| f81632121_508.returns.push(o65); |
| // 6354 |
| o66 = {}; |
| // 6355 |
| o65.firstChild = o66; |
| // 6357 |
| o66.nodeType = 8; |
| // 6359 |
| o66.nodeValue = " <div class=\"fbChatSidebar fixed_always hidden_elem\" id=\"u_0_22\"><div class=\"fbChatSidebarBody\"><div class=\"uiScrollableArea scrollableOrderedList fade\" style=\"width:205px;\" id=\"u_0_23\"><div class=\"uiScrollableAreaWrap scrollable\" aria-label=\"Scrollable region\" tabindex=\"0\"><div class=\"uiScrollableAreaBody\" style=\"width:205px;\"><div class=\"uiScrollableAreaContent\"><div id=\"u_0_29\"><ul class=\"fbChatOrderedList clearfix\"><li><div class=\"phs fcg\"><span data-jsid=\"message\">Loading...</span></div></li></ul></div></div></div></div><div class=\"uiScrollableAreaTrack invisible_elem\"><div class=\"uiScrollableAreaGripper\"></div></div></div><div class=\"fbChatTypeaheadView hidden_elem\" id=\"u_0_21\"></div></div><div class=\"fbChatSidebarMessage clearfix\"><img class=\"img\" src=\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y4/r/-PAXP-deijE.gif\" alt=\"\" width=\"1\" height=\"1\" /><div class=\"message fcg\"></div></div><table class=\"uiGrid -cx-PRIVATE-fbChatSidebarFooter__root\" cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td><div class=\"uiTypeahead uiClearableTypeahead fbChatTypeahead\" id=\"u_0_24\"><div class=\"wrap\"><script type=\"text/javascript\">try {\n ((JSBNG_Record.scriptLoad)((\"function e31920a0c3d7535092c23ec61a3987f2d3bc254ed(event) {\\u000a\\u000a};\"), (\"s86d711f4a82117e4ddc059f9b64fc2aa5687ef8d\")));\n ((window.top.JSBNG_Record.callerJS) = (true));\n function e31920a0c3d7535092c23ec61a3987f2d3bc254ed(JSBNG__event) {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s86d711f4a82117e4ddc059f9b64fc2aa5687ef8d_0\"), (s86d711f4a82117e4ddc059f9b64fc2aa5687ef8d_0_instance), (this), (arguments)))\n };\n (null);\n ;\n };\n var s86d711f4a82117e4ddc059f9b64fc2aa5687ef8d_0_instance;\n ((s86d711f4a82117e4ddc059f9b64fc2aa5687ef8d_0_instance) = ((JSBNG_Record.eventInstance)((\"s86d711f4a82117e4ddc059f9b64fc2aa5687ef8d_0\"))));\n ((JSBNG_Record.markFunction)((e31920a0c3d7535092c23ec61a3987f2d3bc254ed)));\n} finally {\n ((window.top.JSBNG_Record.callerJS) = (false));\n ((window.top.JSBNG_Record.flushDeferredEvents)());\n};</script><button class=\"-cx-PRIVATE-abstractButton__root -cx-PRIVATE-xuiCloseButton__root clear uiTypeaheadCloseButton -cx-PRIVATE-xuiCloseButton__medium -cx-PRIVATE-xuiCloseButton__dark\" title=\"Remove\" onclick=\"return e31920a0c3d7535092c23ec61a3987f2d3bc254ed.call(this, event);\" type=\"button\" id=\"u_0_25\">Remove</button><input type=\"hidden\" autocomplete=\"off\" class=\"hiddenInput\" /><div class=\"innerWrap\"><input type=\"text\" class=\"inputtext inputsearch textInput DOMControl_placeholder\" autocomplete=\"off\" placeholder=\"Search\" aria-autocomplete=\"list\" aria-expanded=\"false\" aria-owns=\"typeahead_list_u_0_24\" role=\"combobox\" spellcheck=\"false\" value=\"Search\" aria-label=\"Search\" id=\"u_0_26\" /></div><img class=\"throbber uiLoadingIndicatorAsync img\" src=\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yb/r/GsNJNwuI-UM.gif\" alt=\"\" width=\"16\" height=\"11\" /></div></div></td><td><div><div class=\"uiSelector inlineBlock fbChatSidebarDropdown button uiSelectorBottomUp uiSelectorRight\" id=\"u_0_27\" data-multiple=\"1\"><div class=\"uiToggle wrap\"><a data-hover=\"tooltip\" aria-label=\"Options\" class=\"uiSelectorButton uiCloseButton\" href=\"#\" role=\"button\" aria-haspopup=\"1\" rel=\"toggle\"></a><div class=\"uiSelectorMenuWrapper uiToggleFlyout\"><div role=\"menu\" class=\"uiMenu uiSelectorMenu\"><ul class=\"uiMenuInner\"><li class=\"uiMenuItem hidden_elem\" data-label=\"Chat from Desktop...\" id=\"sidebar-messenger-install-link\"><script type=\"text/javascript\">try {\n ((JSBNG_Record.scriptLoad)((\"function ec0ed8ac6a7048f67ceaa2e8950b774f895367494(event) {\\u000a FbdConversionTracking.logClick(\\\"chat_sidebar_gear_promo\\\");\\u000a};\"), (\"sa9759c52f0d107df16c372092cc1619071e70a16\")));\n ((window.top.JSBNG_Record.callerJS) = (true));\n function ec0ed8ac6a7048f67ceaa2e8950b774f895367494(JSBNG__event) {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"sa9759c52f0d107df16c372092cc1619071e70a16_0\"), (sa9759c52f0d107df16c372092cc1619071e70a16_0_instance), (this), (arguments)))\n };\n (null);\n (((JSBNG_Record.get)(FbdConversionTracking, (\"logClick\")))[(\"logClick\")])(\"chat_sidebar_gear_promo\");\n };\n var sa9759c52f0d107df16c372092cc1619071e70a16_0_instance;\n ((sa9759c52f0d107df16c372092cc1619071e70a16_0_instance) = ((JSBNG_Record.eventInstance)((\"sa9759c52f0d107df16c372092cc1619071e70a16_0\"))));\n ((JSBNG_Record.markFunction)((ec0ed8ac6a7048f67ceaa2e8950b774f895367494)));\n} finally {\n ((window.top.JSBNG_Record.callerJS) = (false));\n ((window.top.JSBNG_Record.flushDeferredEvents)());\n};</script><a class=\"itemAnchor\" role=\"menuitem\" tabindex=\"0\" href=\"/about/messenger?src=chat_sidebar_gear_promo\" onclick=\"return ec0ed8ac6a7048f67ceaa2e8950b774f895367494.call(this, event);\"><span class=\"itemLabel fsm\">Chat from Desktop...</span></a></li><li class=\"uiMenuSeparator hidden_elem\" id=\"sidebar-messenger-install-separator\"></li><li class=\"uiMenuItem uiMenuItemCheckbox uiSelectorOption checked\" data-label=\"Chat Sounds\"><a class=\"itemAnchor\" role=\"menuitemcheckbox\" tabindex=\"-1\" href=\"#\" aria-checked=\"true\"><span class=\"itemLabel fsm\">Chat Sounds</span></a></li><li class=\"uiMenuItem uiMenuItemCheckbox uiSelectorOption\" data-label=\"Advanced Settings...\"><a class=\"itemAnchor\" role=\"menuitemcheckbox\" tabindex=\"-1\" href=\"/ajax/chat/privacy/settings_dialog.php\" aria-checked=\"false\" rel=\"dialog\"><span class=\"itemLabel fsm\">Advanced Settings...</span></a></li><li class=\"uiMenuSeparator\"></li><li class=\"uiMenuItem uiMenuItemCheckbox uiSelectorOption fbChatGoOnlineItem\" data-label=\"Turn On Chat\"><a class=\"itemAnchor\" role=\"menuitemcheckbox\" tabindex=\"-1\" href=\"#\" aria-checked=\"false\"><span class=\"itemLabel fsm\">Turn On Chat</span></a></li><li class=\"uiMenuItem uiMenuItemCheckbox uiSelectorOption fbChatGoOfflineItem\" data-label=\"Turn Off Chat\"><a class=\"itemAnchor\" role=\"menuitemcheckbox\" tabindex=\"-1\" href=\"#\" aria-checked=\"false\"><span class=\"itemLabel fsm\">Turn Off Chat</span></a></li></ul></div></div></div><select multiple=\"1\"><option value=\"\" disabled=\"1\"></option><option value=\"sound\" selected=\"1\">Chat Sounds</option><option value=\"advanced_settings\">Advanced Settings...</option><option value=\"online\">Turn On Chat</option><option value=\"offline\">Turn Off Chat</option></select></div></div></td><td><div></div></td><td><script type=\"text/javascript\">try {\n ((JSBNG_Record.scriptLoad)((\"function e896d84f5f56a7323d155a78f7f59a073aabbee70(event) {\\u000a Chat.toggleSidebar();\\u000a};\"), (\"s40cde328520d54a3af91e3baeccea43d236a716c\")));\n ((window.top.JSBNG_Record.callerJS) = (true));\n function e896d84f5f56a7323d155a78f7f59a073aabbee70(JSBNG__event) {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s40cde328520d54a3af91e3baeccea43d236a716c_0\"), (s40cde328520d54a3af91e3baeccea43d236a716c_0_instance), (this), (arguments)))\n };\n (null);\n (((JSBNG_Record.get)(Chat, (\"toggleSidebar\")))[(\"toggleSidebar\")])();\n };\n var s40cde328520d54a3af91e3baeccea43d236a716c_0_instance;\n ((s40cde328520d54a3af91e3baeccea43d236a716c_0_instance) = ((JSBNG_Record.eventInstance)((\"s40cde328520d54a3af91e3baeccea43d236a716c_0\"))));\n ((JSBNG_Record.markFunction)((e896d84f5f56a7323d155a78f7f59a073aabbee70)));\n} finally {\n ((window.top.JSBNG_Record.callerJS) = (false));\n ((window.top.JSBNG_Record.flushDeferredEvents)());\n};</script><a data-hover=\"tooltip\" aria-label=\"Hide sidebar\" data-tooltip-alignh=\"right\" class=\"toggle button\" href=\"#\" onclick=\"return e896d84f5f56a7323d155a78f7f59a073aabbee70.call(this, event);\" role=\"button\"></a></td></tr></tbody></table></div> "; |
| // undefined |
| o66 = null; |
| // 6360 |
| o65.parentNode = o16; |
| // 6362 |
| f81632121_521.returns.push(o65); |
| // undefined |
| o65 = null; |
| // 6363 |
| // 6364 |
| o64.getAttribute = f81632121_506; |
| // 6365 |
| f81632121_506.returns.push("pagelet_sidebar"); |
| // 6394 |
| o65 = {}; |
| // 6395 |
| f81632121_476.returns.push(o65); |
| // 6396 |
| // 6397 |
| // 6398 |
| o65.getElementsByTagName = f81632121_502; |
| // 6399 |
| o66 = {}; |
| // 6400 |
| f81632121_502.returns.push(o66); |
| // 6401 |
| o66.length = 0; |
| // undefined |
| o66 = null; |
| // 6403 |
| o66 = {}; |
| // 6404 |
| o65.childNodes = o66; |
| // undefined |
| o65 = null; |
| // 6405 |
| o66.nodeType = void 0; |
| // 6406 |
| o66.getAttributeNode = void 0; |
| // 6407 |
| o66.getElementsByTagName = void 0; |
| // 6408 |
| o66.childNodes = void 0; |
| // undefined |
| o66 = null; |
| // 6412 |
| o65 = {}; |
| // 6413 |
| f81632121_476.returns.push(o65); |
| // 6414 |
| // 6415 |
| // 6416 |
| o65.getElementsByTagName = f81632121_502; |
| // 6417 |
| o66 = {}; |
| // 6418 |
| f81632121_502.returns.push(o66); |
| // 6419 |
| o66.length = 0; |
| // undefined |
| o66 = null; |
| // 6421 |
| o66 = {}; |
| // 6422 |
| o65.childNodes = o66; |
| // undefined |
| o65 = null; |
| // 6423 |
| o66.nodeType = void 0; |
| // 6424 |
| o66.getAttributeNode = void 0; |
| // 6425 |
| o66.getElementsByTagName = void 0; |
| // 6426 |
| o66.childNodes = void 0; |
| // undefined |
| o66 = null; |
| // 6430 |
| o65 = {}; |
| // 6431 |
| f81632121_476.returns.push(o65); |
| // 6432 |
| // 6433 |
| // 6434 |
| o65.getElementsByTagName = f81632121_502; |
| // 6435 |
| o66 = {}; |
| // 6436 |
| f81632121_502.returns.push(o66); |
| // 6437 |
| o66.length = 0; |
| // undefined |
| o66 = null; |
| // 6439 |
| o66 = {}; |
| // 6440 |
| o65.childNodes = o66; |
| // undefined |
| o65 = null; |
| // 6441 |
| o66.nodeType = void 0; |
| // 6442 |
| o66.getAttributeNode = void 0; |
| // 6443 |
| o66.getElementsByTagName = void 0; |
| // 6444 |
| o66.childNodes = void 0; |
| // undefined |
| o66 = null; |
| // 6463 |
| o65 = {}; |
| // 6464 |
| f81632121_508.returns.push(o65); |
| // 6465 |
| o65.getElementsByTagName = f81632121_502; |
| // 6467 |
| o65.querySelectorAll = f81632121_504; |
| // 6468 |
| o66 = {}; |
| // 6469 |
| f81632121_504.returns.push(o66); |
| // 6470 |
| o66.length = 1; |
| // 6471 |
| o67 = {}; |
| // 6472 |
| o66["0"] = o67; |
| // undefined |
| o66 = null; |
| // 6473 |
| o67.getElementsByTagName = f81632121_502; |
| // 6475 |
| o67.querySelectorAll = f81632121_504; |
| // 6476 |
| o66 = {}; |
| // 6477 |
| f81632121_504.returns.push(o66); |
| // 6478 |
| o66.length = 1; |
| // 6479 |
| o68 = {}; |
| // 6480 |
| o66["0"] = o68; |
| // undefined |
| o66 = null; |
| // 6481 |
| o68.getElementsByTagName = f81632121_502; |
| // 6483 |
| o68.querySelectorAll = f81632121_504; |
| // 6484 |
| o66 = {}; |
| // 6485 |
| f81632121_504.returns.push(o66); |
| // 6486 |
| o66.length = 1; |
| // 6487 |
| o71 = {}; |
| // 6488 |
| o66["0"] = o71; |
| // undefined |
| o66 = null; |
| // 6492 |
| o66 = {}; |
| // 6493 |
| f81632121_504.returns.push(o66); |
| // 6494 |
| o66.length = 1; |
| // 6495 |
| o72 = {}; |
| // 6496 |
| o66["0"] = o72; |
| // undefined |
| o66 = null; |
| // 6497 |
| o72.getElementsByTagName = f81632121_502; |
| // 6499 |
| o72.querySelectorAll = f81632121_504; |
| // 6500 |
| o66 = {}; |
| // 6501 |
| f81632121_504.returns.push(o66); |
| // 6502 |
| o66.length = 1; |
| // 6503 |
| o73 = {}; |
| // 6504 |
| o66["0"] = o73; |
| // undefined |
| o66 = null; |
| // 6505 |
| f81632121_12.returns.push(23); |
| // 6506 |
| o67.nodeName = "DIV"; |
| // 6507 |
| o67.__FB_TOKEN = void 0; |
| // 6508 |
| // 6509 |
| o67.getAttribute = f81632121_506; |
| // 6510 |
| o67.hasAttribute = f81632121_507; |
| // 6512 |
| f81632121_507.returns.push(false); |
| // 6513 |
| o67.JSBNG__addEventListener = f81632121_468; |
| // 6515 |
| f81632121_468.returns.push(undefined); |
| // 6516 |
| o67.JSBNG__onJSBNG__scroll = void 0; |
| // 6518 |
| o65.nodeName = "DIV"; |
| // 6519 |
| o65.__FB_TOKEN = void 0; |
| // 6520 |
| // 6521 |
| o65.getAttribute = f81632121_506; |
| // 6522 |
| o65.hasAttribute = f81632121_507; |
| // 6524 |
| f81632121_507.returns.push(false); |
| // 6525 |
| o65.JSBNG__addEventListener = f81632121_468; |
| // 6527 |
| f81632121_468.returns.push(undefined); |
| // 6528 |
| o65.JSBNG__onmousemove = null; |
| // 6530 |
| o72.nodeName = "DIV"; |
| // 6531 |
| o72.__FB_TOKEN = void 0; |
| // 6532 |
| // 6533 |
| o72.getAttribute = f81632121_506; |
| // 6534 |
| o72.hasAttribute = f81632121_507; |
| // 6536 |
| f81632121_507.returns.push(false); |
| // 6537 |
| o72.JSBNG__addEventListener = f81632121_468; |
| // 6539 |
| f81632121_468.returns.push(undefined); |
| // 6540 |
| o72.JSBNG__onclick = null; |
| // 6545 |
| f81632121_468.returns.push(undefined); |
| // 6546 |
| o65.JSBNG__onmouseover = null; |
| // 6551 |
| f81632121_468.returns.push(undefined); |
| // 6552 |
| o65.JSBNG__onmouseout = null; |
| // 6557 |
| f81632121_468.returns.push(undefined); |
| // 6558 |
| o65.JSBNG__onfocusin = void 0; |
| // 6563 |
| f81632121_468.returns.push(undefined); |
| // 6564 |
| o65.JSBNG__onfocusout = void 0; |
| // 6569 |
| f81632121_468.returns.push(undefined); |
| // 6570 |
| o65.JSBNG__onmousedown = null; |
| // 6572 |
| o73.nodeName = "DIV"; |
| // 6573 |
| o73.__FB_TOKEN = void 0; |
| // 6574 |
| // 6575 |
| o73.getAttribute = f81632121_506; |
| // 6576 |
| o73.hasAttribute = f81632121_507; |
| // 6578 |
| f81632121_507.returns.push(false); |
| // 6579 |
| o73.JSBNG__addEventListener = f81632121_468; |
| // 6581 |
| f81632121_468.returns.push(undefined); |
| // 6582 |
| o73.JSBNG__onmousedown = null; |
| // 6584 |
| o66 = {}; |
| // 6585 |
| o65.classList = o66; |
| // 6587 |
| o66.add = f81632121_602; |
| // 6588 |
| f81632121_602.returns.push(undefined); |
| // 6598 |
| f81632121_467.returns.push(1374851215631); |
| // 6599 |
| o74 = {}; |
| // 6601 |
| o74._needsGripper = f81632121_1110; |
| // 6602 |
| f81632121_1156 = function() { return f81632121_1156.returns[f81632121_1156.inst++]; }; |
| f81632121_1156.returns = []; |
| f81632121_1156.inst = 0; |
| // 6603 |
| o74._throttledComputeHeights = f81632121_1156; |
| // 6605 |
| f81632121_467.returns.push(1374851215632); |
| // 6606 |
| o65.clientHeight = 0; |
| // 6607 |
| o71.offsetHeight = 0; |
| // 6608 |
| o72.offsetHeight = 0; |
| // undefined |
| o72 = null; |
| // 6609 |
| f81632121_12.returns.push(24); |
| // 6610 |
| f81632121_1156.returns.push(undefined); |
| // 6611 |
| o74._gripperHeight = NaN; |
| // 6612 |
| o74._trackHeight = 0; |
| // 6613 |
| f81632121_1110.returns.push(false); |
| // 6614 |
| f81632121_1157 = function() { return f81632121_1157.returns[f81632121_1157.inst++]; }; |
| f81632121_1157.returns = []; |
| f81632121_1157.inst = 0; |
| // 6615 |
| o74._throttledShowGripperAndShadows = f81632121_1157; |
| // 6617 |
| f81632121_467.returns.push(1374851215639); |
| // 6619 |
| f81632121_467.returns.push(1374851215640); |
| // 6620 |
| o72 = {}; |
| // 6621 |
| o73.classList = o72; |
| // undefined |
| o73 = null; |
| // 6623 |
| o72.add = f81632121_602; |
| // undefined |
| o72 = null; |
| // 6624 |
| f81632121_602.returns.push(undefined); |
| // 6625 |
| o67.scrollTop = 0; |
| // 6628 |
| o66.remove = f81632121_1114; |
| // 6629 |
| f81632121_1114.returns.push(undefined); |
| // 6634 |
| f81632121_1114.returns.push(undefined); |
| // 6635 |
| f81632121_12.returns.push(25); |
| // 6636 |
| f81632121_1157.returns.push(undefined); |
| // 6637 |
| o72 = {}; |
| // undefined |
| o72 = null; |
| // 6638 |
| // 6639 |
| // undefined |
| o85 = null; |
| // 6645 |
| f81632121_467.returns.push(1374851215713); |
| // 6647 |
| f81632121_467.returns.push(1374851215713); |
| // 6654 |
| f81632121_467.returns.push(1374851215736); |
| // 6656 |
| f81632121_467.returns.push(1374851215737); |
| // 6663 |
| f81632121_467.returns.push(1374851215739); |
| // 6665 |
| f81632121_467.returns.push(1374851215739); |
| // 6672 |
| f81632121_467.returns.push(1374851215744); |
| // 6674 |
| f81632121_467.returns.push(1374851215744); |
| // 6681 |
| f81632121_467.returns.push(1374851215749); |
| // 6683 |
| f81632121_467.returns.push(1374851215749); |
| // 6690 |
| f81632121_467.returns.push(1374851215750); |
| // 6692 |
| f81632121_467.returns.push(1374851215750); |
| // 6699 |
| f81632121_467.returns.push(1374851215751); |
| // 6701 |
| f81632121_467.returns.push(1374851215751); |
| // 6708 |
| f81632121_467.returns.push(1374851215760); |
| // 6710 |
| f81632121_467.returns.push(1374851215761); |
| // 6716 |
| f81632121_467.returns.push(1374851215761); |
| // 6718 |
| f81632121_467.returns.push(1374851215761); |
| // 6720 |
| o72 = {}; |
| // 6722 |
| o73 = {}; |
| // undefined |
| o73 = null; |
| // 6723 |
| // 6724 |
| // undefined |
| o84 = null; |
| // 6727 |
| f81632121_467.returns.push(1374851215773); |
| // 6730 |
| f81632121_467.returns.push(1374851215774); |
| // 6732 |
| o73 = {}; |
| // 6733 |
| f81632121_508.returns.push(o73); |
| // 6735 |
| o75 = {}; |
| // 6736 |
| f81632121_508.returns.push(o75); |
| // 6737 |
| o77 = {}; |
| // 6738 |
| o75.firstChild = o77; |
| // 6740 |
| o77.nodeType = 8; |
| // 6742 |
| o77.nodeValue = " <li class=\"fbTimelineUnit fbTimelineTwoColumn clearfix\" data-side=\"r\" data-fixed=\"1\" data-size=\"1\" id=\"tl_unit_380562705353186_recent\"><div class=\"topBorder\"></div><div class=\"timelineReportContainer\" id=\"u_0_2i\" data-gt=\"{"eventtime":"1374851148","viewerid":"100006118350059","profileownerid":"1055580469","unitimpressionid":"b1113c18","contentid":"","timeline_unit_type":"TimelineAboutReportUnit","timewindowsize":"3","query_type":"39","contextwindowstart":"0","contextwindowend":"1375340399"}\" role=\"complementary\"><div class=\"\"><div role=\"article\"><div class=\"-cx-PRIVATE-fbTimelineLightReportHeader__root\"><div class=\"-cx-PRIVATE-fbTimelineLightReportHeader__titlecontainer\" data-ft=\"{"tn":"C"}\"><a class=\"-cx-PRIVATE-fbTimelineLightReportHeader__backgroundanchor\" href=\"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby/info\"></a><div class=\"fsm fwn fcg\"><a class=\"-cx-PRIVATE-fbTimelineLightReportHeader__text -cx-PRIVATE-fbTimelineLightReportHeader__title\" href=\"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby/info\">About</a></div></div></div><div class=\"timelineReportContent timelineNoSubheaderReport\"><div class=\"timelineUnitContainer -cx-PRIVATE-fbTimelineAboutUnit__root ogProfileLastUnit\" id=\"timeline_about_unit\" data-gt=\"{"eventtime":"1374851148","viewerid":"100006118350059","profileownerid":"1055580469","unitimpressionid":"b1113c18","contentid":"","timeline_unit_type":"TimelineAboutUnit","timewindowsize":"3","query_type":"39","contextwindowstart":"0","contextwindowend":"1375340399"}\" data-time=\"0\"><div class=\"\"><div role=\"article\"><div><ul><li data-token=\"1\" class=\"-cx-PRIVATE-fbTimelineAboutUnit__rowcontainer\" id=\"u_0_2m\"><div class=\"-cx-PRIVATE-fbTimelineAboutUnit__row\"><div class=\"clearfix\"><img class=\"-cx-PRIVATE-uiSquareImage__root -cx-PUBLIC-fbTimelineAboutUnit__rowicon -cx-PRIVATE-uiImageBlock__image -cx-PRIVATE-uiImageBlock__smallimage lfloat -cx-PRIVATE-uiSquareImage__size16 img\" src=\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yw/r/3LFVMmKZeUX.png\" alt=\"\" width=\"16\" height=\"16\" /><div class=\"-cx-PRIVATE-uiImageBlock__smallcontent -cx-PRIVATE-uiFlexibleBlock__flexiblecontent\"><ul class=\"uiList -cx-PRIVATE-fbTimelineAboutUnit__summary -cx-PRIVATE-uiList__vert\"><li class=\"-cx-PRIVATE-fbTimelineAboutUnit__title\">Works at <a class=\"profileLink\" href=\"http://jsbngssl.www.facebook.com/PurdueUniversity?ref=br_rs\" data-hovercard=\"/ajax/hovercard/page.php?id=100526673914\">Purdue University</a></li><li class=\"-cx-PRIVATE-fbTimelineAboutUnit__subtitle\">September 2008 to present</li></ul></div></div></div></li><li data-token=\"2\" class=\"-cx-PRIVATE-fbTimelineAboutUnit__rowcontainer\" id=\"u_0_2n\"><div class=\"-cx-PRIVATE-fbTimelineAboutUnit__row\"><div class=\"clearfix\"><img class=\"-cx-PRIVATE-uiSquareImage__root -cx-PUBLIC-fbTimelineAboutUnit__rowicon -cx-PRIVATE-uiImageBlock__image -cx-PRIVATE-uiImageBlock__smallimage lfloat -cx-PRIVATE-uiSquareImage__size16 img\" src=\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yb/r/wKvDSXpnqkB.png\" alt=\"\" width=\"16\" height=\"16\" /><div class=\"-cx-PRIVATE-uiImageBlock__smallcontent -cx-PRIVATE-uiFlexibleBlock__flexiblecontent\"><ul class=\"uiList -cx-PRIVATE-fbTimelineAboutUnit__summary -cx-PRIVATE-uiList__vert\"><li class=\"-cx-PRIVATE-fbTimelineAboutUnit__title\">Studies Computer Science at <a class=\"profileLink\" href=\"http://jsbngssl.www.facebook.com/PurdueUniversity?ref=br_rs\" data-hovercard=\"/ajax/hovercard/page.php?id=100526673914\">Purdue University</a></li><li class=\"-cx-PRIVATE-fbTimelineAboutUnit__subtitle\">Past: <a class=\"profileLink\" href=\"http://jsbngssl.www.facebook.com/pages/Portland-State-University/113512491992878\" data-hovercard=\"/ajax/hovercard/page.php?id=113512491992878\">Portland State University</a> and <a class=\"profileLink\" href=\"http://jsbngssl.www.facebook.com/pages/Milwaukie-High-School/109486142404101\" data-hovercard=\"/ajax/hovercard/page.php?id=109486142404101\">Milwaukie High School</a></li></ul></div></div></div></li><li data-token=\"3\" class=\"-cx-PRIVATE-fbTimelineAboutUnit__rowcontainer\" id=\"u_0_2o\"><div class=\"-cx-PRIVATE-fbTimelineAboutUnit__row\"><div class=\"clearfix\"><img class=\"-cx-PRIVATE-uiSquareImage__root -cx-PUBLIC-fbTimelineAboutUnit__rowicon -cx-PRIVATE-uiImageBlock__image -cx-PRIVATE-uiImageBlock__smallimage lfloat -cx-PRIVATE-uiSquareImage__size16 img\" src=\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yI/r/jg7lQrpjdKk.png\" alt=\"\" width=\"16\" height=\"16\" /><div class=\"-cx-PRIVATE-uiImageBlock__smallcontent -cx-PRIVATE-uiFlexibleBlock__flexiblecontent\"><ul class=\"uiList -cx-PRIVATE-fbTimelineAboutUnit__summary -cx-PRIVATE-fbTimelineAboutUnit__nosubtitle -cx-PRIVATE-uiList__vert\"><li class=\"-cx-PRIVATE-fbTimelineAboutUnit__title\">Lives in <a class=\"profileLink\" href=\"http://jsbngssl.www.facebook.com/pages/West-Lafayette-Indiana/112305682116972?ref=br_rs\" data-hovercard=\"/ajax/hovercard/page.php?id=112305682116972\">West Lafayette, Indiana</a></li></ul></div></div></div></li><li data-token=\"4\" class=\"-cx-PRIVATE-fbTimelineAboutUnit__rowcontainer\" id=\"u_0_2p\"><div class=\"-cx-PRIVATE-fbTimelineAboutUnit__row\"><div class=\"clearfix\"><img class=\"-cx-PRIVATE-uiSquareImage__root -cx-PUBLIC-fbTimelineAboutUnit__rowicon -cx-PRIVATE-uiImageBlock__image -cx-PRIVATE-uiImageBlock__smallimage lfloat -cx-PRIVATE-uiSquareImage__size16 img\" src=\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yZ/r/kBTlO7fdcY0.png\" alt=\"\" width=\"16\" height=\"16\" /><div class=\"-cx-PRIVATE-uiImageBlock__smallcontent -cx-PRIVATE-uiFlexibleBlock__flexiblecontent\"><ul class=\"uiList -cx-PRIVATE-fbTimelineAboutUnit__summary -cx-PRIVATE-fbTimelineAboutUnit__nosubtitle -cx-PRIVATE-uiList__vert\"><li class=\"-cx-PRIVATE-fbTimelineAboutUnit__title\">From <a class=\"profileLink\" href=\"http://jsbngssl.www.facebook.com/pages/Portland-Oregon/112548152092705?ref=br_rs\" data-hovercard=\"/ajax/hovercard/page.php?id=112548152092705\">Portland, Oregon</a></li></ul></div></div></div></li><li data-token=\"6\" class=\"-cx-PRIVATE-fbTimelineAboutUnit__rowcontainer\" id=\"u_0_2q\"><div class=\"-cx-PRIVATE-fbTimelineAboutUnit__row\"><div class=\"clearfix\"><img class=\"-cx-PRIVATE-uiSquareImage__root -cx-PUBLIC-fbTimelineAboutUnit__rowicon -cx-PRIVATE-uiImageBlock__image -cx-PRIVATE-uiImageBlock__smallimage lfloat -cx-PRIVATE-uiSquareImage__size16 img\" src=\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yd/r/kz0_p5XcuSq.png\" alt=\"\" width=\"16\" height=\"16\" /><div class=\"-cx-PRIVATE-uiImageBlock__smallcontent -cx-PRIVATE-uiFlexibleBlock__flexiblecontent\"><ul class=\"uiList -cx-PRIVATE-fbTimelineAboutUnit__summary -cx-PRIVATE-fbTimelineAboutUnit__nosubtitle -cx-PRIVATE-uiList__vert\"><li class=\"-cx-PRIVATE-fbTimelineAboutUnit__title\">Followed by <a href=\"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby/followers\">10 people</a></li></ul></div></div></div></li></ul></div></div></div></div></div></div></div></div><i class=\"spinePointer\"></i><div class=\"bottomBorder\"></div></li><li class=\"fbTimelineUnit fbTimelineTwoColumn clearfix\" data-side=\"r\" data-fixed=\"1\" data-size=\"1\" id=\"u_0_2f\"><div class=\"topBorder\"></div><div class=\"timelineReportContainer -cx-PRIVATE-fbTimelineAppSectionEgo__photos\" id=\"u_0_2j\" data-gt=\"{"eventtime":"1374851148","viewerid":"100006118350059","profileownerid":"1055580469","unitimpressionid":"b1113c18","contentid":"","timeline_unit_type":"AppSectionEgoUnit","timewindowsize":"3","query_type":"39","contextwindowstart":"0","contextwindowend":"1375340399","timeline_og_unit_click":"1","unit_id":"288381481237582","event_source":"38","app_id":"2305272732","action_type_id":""}\" data-time=\"0\"><div class=\"\"><div role=\"article\"><div class=\"-cx-PRIVATE-fbTimelineLightReportHeader__root\"><div class=\"-cx-PRIVATE-fbTimelineLightReportHeader__titlecontainer\" data-ft=\"{"tn":"C"}\"><a class=\"-cx-PRIVATE-fbTimelineLightReportHeader__backgroundanchor\" href=\"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby/photos\"></a><div class=\"fsm fwn fcg\"><a class=\"-cx-PRIVATE-fbTimelineLightReportHeader__text -cx-PRIVATE-fbTimelineLightReportHeader__title\" href=\"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby/photos\">Photos</a> · <span class=\"-cx-PRIVATE-fbTimelineLightReportHeader__text\"><a href=\"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby/photos\"><span class=\"fwn fcg\">242</span></a></span></div></div></div><div id=\"pagelet_timeline_app_collection_report_5\" class=\"-cx-PRIVATE-fbTimelineAppSectionEgo__collectioncontent\"><div data-referrer=\"photos_ego\"><table class=\"uiGrid -cx-PRIVATE-fbTimelinePhotosEgo__root -cx-PRIVATE-fbTimelineAppSectionEgo__photogrid\" cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td><a href=\"http://jsbngssl.www.facebook.com/photo.php?fbid=10200453104264236&set=a.1138433375108.2021456.1055580469&type=1\" rel=\"theater\" ajaxify=\"http://jsbngssl.www.facebook.com/photo.php?fbid=10200453104264236&set=a.1138433375108.2021456.1055580469&type=1&src=https%3A%2F%2Ffbcdn-sphotos-h-a.akamaihd.net%2Fhphotos-ak-prn2%2F1069167_10200453104264236_1772112196_n.jpg&size=652%2C800&source=8\" data-ft=\"{"tn":"E"}\"><div class=\"-cx-PRIVATE-fbCroppedImage__container\" style=\"width:103px;height:103px;\"><img class=\"-cx-PRIVATE-fbCroppedImage__image img\" src=\"http://jsbngssl.fbcdn-photos-h-a.akamaihd.net/hphotos-ak-prn2/s168x128/1069167_10200453104264236_1772112196_a.jpg\" style=\"left:0px; top:0px;\" alt=\"Dammit Steam sale...\" width=\"104\" height=\"128\" /></div></a></td><td><a href=\"http://jsbngssl.www.facebook.com/photo.php?fbid=10200268473688587&set=a.1468918877039.2062262.1055580469&type=1\" rel=\"theater\" ajaxify=\"http://jsbngssl.www.facebook.com/photo.php?fbid=10200268473688587&set=a.1468918877039.2062262.1055580469&type=1&src=https%3A%2F%2Ffbcdn-sphotos-b-a.akamaihd.net%2Fhphotos-ak-frc3%2F993004_10200268473688587_517108607_n.jpg&size=640%2C640&source=8\" data-ft=\"{"tn":"E"}\"><div class=\"uiScaledImageContainer\" style=\"width:103px;height:103px;\"><img class=\"scaledImageFitWidth img\" src=\"http://jsbngssl.fbcdn-photos-b-a.akamaihd.net/hphotos-ak-frc3/p110x80/993004_10200268473688587_517108607_a.jpg\" alt=\"Gregor Richards's photo.\" width=\"103\" height=\"103\" /></div></a></td><td><a href=\"http://jsbngssl.www.facebook.com/photo.php?fbid=10200268472248551&set=a.3353777797334.2140697.1055580469&type=1\" rel=\"theater\" ajaxify=\"http://jsbngssl.www.facebook.com/photo.php?fbid=10200268472248551&set=a.3353777797334.2140697.1055580469&type=1&src=https%3A%2F%2Fsphotos-a-iad.xx.fbcdn.net%2Fhphotos-ash3%2F1017486_10200268472248551_842609840_n.jpg&size=851%2C315&source=8\" data-ft=\"{"tn":"E"}\"><div class=\"uiScaledImageContainer\" style=\"width:103px;height:103px;\"><img class=\"img\" src=\"http://jsbngssl.sphotos-a-iad.xx.fbcdn.net/hphotos-ash3/s280x280/1017486_10200268472248551_842609840_n.jpg\" style=\"left:-88px;\" alt=\"Gregor Richards's photo.\" width=\"280\" height=\"103\" /></div></a></td></tr><tr><td><a href=\"http://jsbngssl.www.facebook.com/photo.php?fbid=4986916864790&set=a.1138433375108.2021456.1055580469&type=1\" rel=\"theater\" ajaxify=\"http://jsbngssl.www.facebook.com/photo.php?fbid=4986916864790&set=a.1138433375108.2021456.1055580469&type=1&src=https%3A%2F%2Ffbcdn-sphotos-h-a.akamaihd.net%2Fhphotos-ak-frc1%2F913679_4986916864790_91703778_o.jpg&smallsrc=https%3A%2F%2Fsphotos-b-iad.xx.fbcdn.net%2Fhphotos-prn2%2F178992_4986916864790_91703778_n.jpg&size=2048%2C1536&source=8\" data-ft=\"{"tn":"E"}\"><div class=\"uiScaledImageContainer\" style=\"width:103px;height:103px;\"><img class=\"img\" src=\"http://jsbngssl.sphotos-b-iad.xx.fbcdn.net/hphotos-prn2/p118x118/178992_4986916864790_91703778_n.jpg\" alt=\"Today I learned that Dr. Gorman is actually another alternate identity for Clark Kent.\" width=\"138\" height=\"103\" /></div></a></td><td><a href=\"http://jsbngssl.www.facebook.com/photo.php?fbid=4897864518537&set=a.1138433375108.2021456.1055580469&type=1\" rel=\"theater\" ajaxify=\"http://jsbngssl.www.facebook.com/photo.php?fbid=4897864518537&set=a.1138433375108.2021456.1055580469&type=1&src=https%3A%2F%2Ffbcdn-sphotos-c-a.akamaihd.net%2Fhphotos-ak-frc1%2F422167_4897864518537_1503459754_n.jpg&size=538%2C404&source=8\" data-ft=\"{"tn":"E"}\"><div class=\"uiScaledImageContainer\" style=\"width:103px;height:103px;\"><img class=\"img\" src=\"http://jsbngssl.fbcdn-sphotos-c-a.akamaihd.net/hphotos-ak-frc1/p118x118/422167_4897864518537_1503459754_n.jpg\" style=\"left:-17px;\" alt=\"No parking gais. For realsies. They'll tow your boat.\" width=\"138\" height=\"103\" /></div></a></td><td><a href=\"http://jsbngssl.www.facebook.com/photo.php?fbid=4897839437910&set=a.1138433375108.2021456.1055580469&type=1\" rel=\"theater\" ajaxify=\"http://jsbngssl.www.facebook.com/photo.php?fbid=4897839437910&set=a.1138433375108.2021456.1055580469&type=1&src=https%3A%2F%2Ffbcdn-sphotos-h-a.akamaihd.net%2Fhphotos-ak-frc1%2F920971_4897839437910_1063615079_o.jpg&smallsrc=https%3A%2F%2Ffbcdn-sphotos-h-a.akamaihd.net%2Fhphotos-ak-frc1%2F644616_4897839437910_1063615079_n.jpg&size=2048%2C473&source=8\" data-ft=\"{"tn":"E"}\"><div class=\"uiScaledImageContainer\" style=\"width:103px;height:103px;\"><img class=\"img\" src=\"http://jsbngssl.fbcdn-sphotos-h-a.akamaihd.net/hphotos-ak-frc1/s480x480/644616_4897839437910_1063615079_n.jpg\" style=\"left:-173px;\" alt=\"So yeah, there's a LITTLE bit of flooding 'round these parts.\" width=\"450\" height=\"103\" /></div></a></td></tr><tr><td><a href=\"http://jsbngssl.www.facebook.com/photo.php?fbid=4875948970662&set=a.1138433375108.2021456.1055580469&type=1\" rel=\"theater\" ajaxify=\"http://jsbngssl.www.facebook.com/photo.php?fbid=4875948970662&set=a.1138433375108.2021456.1055580469&type=1&src=https%3A%2F%2Fsphotos-b-iad.xx.fbcdn.net%2Fhphotos-ash3%2F150431_4875948970662_1470457029_n.jpg&size=944%2C834&source=8\" data-ft=\"{"tn":"E"}\"><div class=\"-cx-PRIVATE-fbCroppedImage__container\" style=\"width:103px;height:103px;\"><img class=\"-cx-PRIVATE-fbCroppedImage__image img\" src=\"http://jsbngssl.photos-b-iad.xx.fbcdn.net/hphotos-ash3/p118x90/150431_4875948970662_1470457029_a.jpg\" style=\"left:-7px; top:0px;\" alt=\"Anyone who can spot the delightful (and delicious!) irony in this photo gets ten Internet points.\" width=\"118\" height=\"104\" /></div></a></td><td><a href=\"http://jsbngssl.www.facebook.com/photo.php?fbid=4691723285135&set=a.1138433375108.2021456.1055580469&type=1\" rel=\"theater\" ajaxify=\"http://jsbngssl.www.facebook.com/photo.php?fbid=4691723285135&set=a.1138433375108.2021456.1055580469&type=1&src=https%3A%2F%2Ffbcdn-sphotos-f-a.akamaihd.net%2Fhphotos-ak-ash3%2F577358_4691723285135_528345851_n.jpg&size=600%2C600&source=8\" data-ft=\"{"tn":"E"}\"><div class=\"uiScaledImageContainer\" style=\"width:103px;height:103px;\"><img class=\"scaledImageFitWidth img\" src=\"http://jsbngssl.fbcdn-photos-f-a.akamaihd.net/hphotos-ak-ash3/p110x80/577358_4691723285135_528345851_a.jpg\" alt=\"I, for one, blame my parents.\" width=\"103\" height=\"103\" /></div></a></td><td><a href=\"http://jsbngssl.www.facebook.com/photo.php?fbid=4441724315317&set=a.1138433375108.2021456.1055580469&type=1\" rel=\"theater\" ajaxify=\"http://jsbngssl.www.facebook.com/photo.php?fbid=4441724315317&set=a.1138433375108.2021456.1055580469&type=1&src=https%3A%2F%2Ffbcdn-sphotos-g-a.akamaihd.net%2Fhphotos-ak-prn1%2F793914_4441724315317_424104454_o.jpg&smallsrc=https%3A%2F%2Fsphotos-a-iad.xx.fbcdn.net%2Fhphotos-prn1%2F74137_4441724315317_424104454_n.jpg&size=1024%2C1024&source=8\" data-ft=\"{"tn":"E"}\"><div class=\"uiScaledImageContainer\" style=\"width:103px;height:103px;\"><img class=\"scaledImageFitWidth img\" src=\"http://jsbngssl.photos-a-iad.xx.fbcdn.net/hphotos-prn1/p110x80/74137_4441724315317_424104454_a.jpg\" alt=\"Bought myself some nostalgia in the form of a watch.\" width=\"103\" height=\"103\" /></div></a></td></tr></tbody></table></div></div></div></div></div><i class=\"spinePointer\"></i><div class=\"bottomBorder\"></div></li><li class=\"fbTimelineUnit fbTimelineTwoColumn clearfix\" data-side=\"r\" data-fixed=\"1\" data-size=\"1\" id=\"u_0_2g\"><div class=\"topBorder\"></div><div class=\"timelineReportContainer -cx-PRIVATE-fbTimelineAppSectionEgo__places\" id=\"u_0_2k\" data-gt=\"{"eventtime":"1374851148","viewerid":"100006118350059","profileownerid":"1055580469","unitimpressionid":"b1113c18","contentid":"","timeline_unit_type":"AppSectionEgoUnit","timewindowsize":"3","query_type":"39","contextwindowstart":"0","contextwindowend":"1375340399","timeline_og_unit_click":"1","unit_id":"288381481237582","event_source":"38","app_id":"302324425790","action_type_id":""}\" data-time=\"0\"><div class=\"\"><div role=\"article\"><div class=\"-cx-PRIVATE-fbTimelineLightReportHeader__root\"><div class=\"-cx-PRIVATE-fbTimelineLightReportHeader__titlecontainer\" data-ft=\"{"tn":"C"}\"><a class=\"-cx-PRIVATE-fbTimelineLightReportHeader__backgroundanchor\" href=\"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby/map\"></a><div class=\"fsm fwn fcg\"><a class=\"-cx-PRIVATE-fbTimelineLightReportHeader__text -cx-PRIVATE-fbTimelineLightReportHeader__title\" href=\"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby/map\">Places</a></div></div></div><div id=\"pagelet_timeline_app_collection_report_17\" class=\"-cx-PRIVATE-fbTimelineAppSectionEgo__collectioncontent\"><div class=\"-cx-PRIVATE-ogAppReport__listview\"><ul class=\"uiList -cx-PRIVATE-uiList__vert -cx-PRIVATE-uiList__mediumborder\"><li><div class=\"clearfix\"><a class=\"-cx-PRIVATE-uiImageBlock__image -cx-PRIVATE-uiImageBlock__largeimage lfloat\" href=\"http://jsbngssl.www.facebook.com/pages/Genova-Italy/106073859432101?ref=stream\" data-ft=\"{"tn":"k"}\" tabindex=\"-1\" aria-hidden=\"true\" data-hovercard=\"/ajax/hovercard/page.php?id=106073859432101\"><div class=\"uiScaledImageContainer -cx-PUBLIC-fbTimelineCollectionGrid__mapimage\"><img class=\"img\" src=\"http://jsbngssl.fbexternal-a.akamaihd.net/safe_image.php?d=AQAkJs97ODg-aCVh&w=180&h=540&url=http%3A%2F%2Fupload.wikimedia.org%2Fwikipedia%2Fcommons%2Fthumb%2Fa%2Fa7%2FCollage_Genova.jpg%2F720px-Collage_Genova.jpg&fallback=hub_city&prefix=d\" alt=\"\" width=\"86\" height=\"64\" itemprop=\"photo\" /></div></a><div class=\"-cx-PRIVATE-uiFlexibleBlock__flexiblecontent\"><div class=\"-cx-PRIVATE-uiInlineBlock__root -cx-PRIVATE-ogAppReport__caption\"><div class=\"-cx-PRIVATE-uiInlineBlock__root -cx-PRIVATE-uiInlineBlock__middle\" style=\"height:64px\"></div><div class=\"-cx-PRIVATE-uiInlineBlock__root -cx-PRIVATE-uiInlineBlock__middle\"><div><a href=\"http://jsbngssl.www.facebook.com/pages/Genova-Italy/106073859432101?ref=stream\" data-ft=\"{"tn":"k"}\" data-hovercard=\"/ajax/hovercard/page.php?id=106073859432101\">Genova, Italy</a><span class=\"fcg\" data-ft=\"{"tn":"l"}\"> — with <a href=\"http://jsbngssl.www.facebook.com/johan.ostlund.777?viewer_id=100006118350059\" data-ft=\"{"tn":";"}\" data-hovercard=\"/ajax/hovercard/user.php?id=735417817&extragetparams=%7B%22directed_target_id%22%3Anull%2C%22viewer_id%22%3A100006118350059%7D\">Johan Östlund</a> and <a href=\"http://jsbngssl.www.facebook.com/supercooldave?viewer_id=100006118350059\" data-ft=\"{"tn":"\\\\u0040"}\" data-hovercard=\"/ajax/hovercard/user.php?id=702266706&extragetparams=%7B%22directed_target_id%22%3Anull%2C%22viewer_id%22%3A100006118350059%7D\">Dave Clarke</a>.</span></div><a class=\"uiLinkSubtle\" href=\"http://jsbngssl.www.facebook.com/photo.php?fbid=1158894366620&set=a.1158828204966.2024661.1055580469&type=1\"><abbr title=\"Sunday, July 12, 2009 at 12:45pm\" data-utime=\"1247427913\" class=\"timestamp\">over a year ago</abbr></a></div></div></div></div></li><li><div class=\"clearfix\"><a class=\"-cx-PRIVATE-uiImageBlock__image -cx-PRIVATE-uiImageBlock__largeimage lfloat\" href=\"http://jsbngssl.www.facebook.com/pages/Portland-Oregon/112548152092705?ref=stream\" data-ft=\"{"tn":"k"}\" tabindex=\"-1\" aria-hidden=\"true\" data-hovercard=\"/ajax/hovercard/page.php?id=112548152092705\"><div class=\"uiScaledImageContainer -cx-PUBLIC-fbTimelineCollectionGrid__mapimage\"><img class=\"img\" src=\"http://jsbngssl.fbexternal-a.akamaihd.net/safe_image.php?d=AQBTwYBBb6Mi-jh0&w=180&h=540&url=http%3A%2F%2Fupload.wikimedia.org%2Fwikipedia%2Fcommons%2Fthumb%2F2%2F29%2FPortland_Skyline-02.jpg%2F720px-Portland_Skyline-02.jpg&fallback=hub_city&prefix=d\" alt=\"\" width=\"96\" height=\"64\" itemprop=\"photo\" /></div></a><div class=\"-cx-PRIVATE-uiFlexibleBlock__flexiblecontent\"><div class=\"-cx-PRIVATE-uiInlineBlock__root -cx-PRIVATE-ogAppReport__caption\"><div class=\"-cx-PRIVATE-uiInlineBlock__root -cx-PRIVATE-uiInlineBlock__middle\" style=\"height:64px\"></div><div class=\"-cx-PRIVATE-uiInlineBlock__root -cx-PRIVATE-uiInlineBlock__middle\"><div><a href=\"http://jsbngssl.www.facebook.com/pages/Portland-Oregon/112548152092705?ref=stream\" data-ft=\"{"tn":"k"}\" data-hovercard=\"/ajax/hovercard/page.php?id=112548152092705\">Portland, Oregon</a><span class=\"fcg\" data-ft=\"{"tn":"l"}\"> — with <a href=\"http://jsbngssl.www.facebook.com/michael.a.goss?viewer_id=100006118350059\" data-ft=\"{"tn":";"}\" data-hovercard=\"/ajax/hovercard/user.php?id=10715287&extragetparams=%7B%22directed_target_id%22%3Anull%2C%22viewer_id%22%3A100006118350059%7D\">Michael A Goss</a>.</span></div><a class=\"uiLinkSubtle\" href=\"http://jsbngssl.www.facebook.com/photo.php?fbid=544659356228&set=a.544659151638.2212647.10715287&type=1\"><abbr title=\"Monday, November 26, 2007 at 9:38pm\" data-utime=\"1196141914\" class=\"timestamp\">over a year ago</abbr></a></div></div></div></div></li></ul></div></div></div></div></div><i class=\"spinePointer\"></i><div class=\"bottomBorder\"></div></li><li class=\"fbTimelineUnit fbTimelineTwoColumn clearfix\" data-side=\"r\" data-fixed=\"1\" data-size=\"1\" id=\"u_0_2h\"><div class=\"topBorder\"></div><div class=\"timelineReportContainer\" id=\"u_0_2l\" data-gt=\"{"eventtime":"1374851148","viewerid":"100006118350059","profileownerid":"1055580469","unitimpressionid":"b1113c18","contentid":"","timeline_unit_type":"AppSectionEgoUnit","timewindowsize":"3","query_type":"39","contextwindowstart":"0","contextwindowend":"1375340399","timeline_og_unit_click":"1","unit_id":"288381481237582","event_source":"38","app_id":"2361831622","action_type_id":""}\" data-time=\"0\"><div class=\"\"><div role=\"article\"><div class=\"-cx-PRIVATE-fbTimelineLightReportHeader__root\"><div class=\"-cx-PRIVATE-fbTimelineLightReportHeader__titlecontainer\" data-ft=\"{"tn":"C"}\"><a class=\"-cx-PRIVATE-fbTimelineLightReportHeader__backgroundanchor\" href=\"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby/groups\"></a><div class=\"fsm fwn fcg\"><a class=\"-cx-PRIVATE-fbTimelineLightReportHeader__text -cx-PRIVATE-fbTimelineLightReportHeader__title\" href=\"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby/groups\">Groups</a> · <span class=\"-cx-PRIVATE-fbTimelineLightReportHeader__text\"><a href=\"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby/groups\"><span class=\"fwn fcg\">1</span></a></span></div></div></div><div id=\"pagelet_timeline_app_collection_report_66\" class=\"-cx-PRIVATE-fbTimelineAppSectionEgo__collectioncontent\"><div class=\"-cx-PRIVATE-ogAppReport__listview\"><ul class=\"uiList -cx-PRIVATE-uiList__vert -cx-PRIVATE-uiList__mediumborder\"><li><div class=\"clearfix\" data-ft=\"{"tn":"l"}\"><div class=\"listMemberFacepileLargeCollection listMemberFacepile -cx-PRIVATE-uiImageBlock__image -cx-PRIVATE-uiImageBlock__largeimage lfloat\"><img class=\"firstImg img\" src=\"http://jsbngssl.fbcdn-profile-a.akamaihd.net/hprofile-ak-prn2/276274_1055580469_962040234_q.jpg\" alt=\"\" /><img class=\"img\" src=\"http://jsbngssl.fbcdn-profile-a.akamaihd.net/static-ak/rsrc.php/v2/yo/r/UlIqmHJn-SK.gif\" alt=\"\" /><img class=\"img\" src=\"http://jsbngssl.fbcdn-profile-a.akamaihd.net/static-ak/rsrc.php/v2/yo/r/UlIqmHJn-SK.gif\" alt=\"\" /><img class=\"lastImg img\" src=\"http://jsbngssl.fbcdn-profile-a.akamaihd.net/static-ak/rsrc.php/v2/yo/r/UlIqmHJn-SK.gif\" alt=\"\" /></div><div class=\"-cx-PRIVATE-uiFlexibleBlock__flexiblecontent\"><div class=\"-cx-PRIVATE-uiInlineBlock__root -cx-PRIVATE-ogAppReport__caption\"><div class=\"-cx-PRIVATE-uiInlineBlock__root -cx-PRIVATE-uiInlineBlock__middle\" style=\"height:64px\"></div><div class=\"-cx-PRIVATE-uiInlineBlock__root -cx-PRIVATE-uiInlineBlock__middle\"><a href=\"/groups/26418081870/\" data-hovercard=\"/ajax/hovercard/group.php?id=26418081870\">Purdue Extreme Croquet</a><div><div class=\"fcg\">1 member</div></div><span class=\"-cx-PRIVATE-fbTimelineGroupsCollection__desc\">Enjoy the civilized and gentlemanly...</span></div></div></div></div></li></ul></div></div></div></div></div><i class=\"spinePointer\"></i><div class=\"bottomBorder\"></div></li><li class=\"-cx-PUBLIC-timelineOneColMin__endmarker hidden_elem\" data-endmarker=\"recent\" data-pageindex=\"0\"></li> "; |
| // undefined |
| o77 = null; |
| // 6743 |
| o75.parentNode = o16; |
| // 6745 |
| f81632121_521.returns.push(o75); |
| // undefined |
| o75 = null; |
| // 6747 |
| o75 = {}; |
| // 6748 |
| f81632121_476.returns.push(o75); |
| // 6749 |
| // 6751 |
| o77 = {}; |
| // 6752 |
| f81632121_474.returns.push(o77); |
| // 6753 |
| o78 = {}; |
| // undefined |
| fo81632121_1165_firstChild = function() { return fo81632121_1165_firstChild.returns[fo81632121_1165_firstChild.inst++]; }; |
| fo81632121_1165_firstChild.returns = []; |
| fo81632121_1165_firstChild.inst = 0; |
| defineGetter(o75, "firstChild", fo81632121_1165_firstChild, undefined); |
| // undefined |
| o75 = null; |
| // undefined |
| fo81632121_1165_firstChild.returns.push(o78); |
| // 6755 |
| o77.appendChild = f81632121_478; |
| // undefined |
| fo81632121_1165_firstChild.returns.push(o78); |
| // 6757 |
| f81632121_478.returns.push(o78); |
| // 6758 |
| o75 = {}; |
| // undefined |
| fo81632121_1165_firstChild.returns.push(o75); |
| // undefined |
| fo81632121_1165_firstChild.returns.push(o75); |
| // 6762 |
| f81632121_478.returns.push(o75); |
| // undefined |
| o75 = null; |
| // 6763 |
| o75 = {}; |
| // undefined |
| fo81632121_1165_firstChild.returns.push(o75); |
| // undefined |
| fo81632121_1165_firstChild.returns.push(o75); |
| // 6767 |
| f81632121_478.returns.push(o75); |
| // undefined |
| o75 = null; |
| // 6768 |
| o75 = {}; |
| // undefined |
| fo81632121_1165_firstChild.returns.push(o75); |
| // undefined |
| fo81632121_1165_firstChild.returns.push(o75); |
| // 6772 |
| f81632121_478.returns.push(o75); |
| // undefined |
| o75 = null; |
| // 6773 |
| o75 = {}; |
| // undefined |
| fo81632121_1165_firstChild.returns.push(o75); |
| // undefined |
| fo81632121_1165_firstChild.returns.push(o75); |
| // 6777 |
| f81632121_478.returns.push(o75); |
| // undefined |
| fo81632121_1165_firstChild.returns.push(null); |
| // 6779 |
| o73.appendChild = f81632121_478; |
| // 6780 |
| f81632121_478.returns.push(o77); |
| // undefined |
| o77 = null; |
| // 6781 |
| o73.getAttribute = f81632121_506; |
| // 6782 |
| f81632121_506.returns.push("pagelet_timeline_recent_ocm"); |
| // 6787 |
| f81632121_467.returns.push(1374851215850); |
| // 6790 |
| f81632121_467.returns.push(1374851215850); |
| // 6793 |
| f81632121_467.returns.push(1374851215851); |
| // 6796 |
| f81632121_467.returns.push(1374851215851); |
| // 6799 |
| f81632121_467.returns.push(1374851215851); |
| // 6801 |
| o77 = {}; |
| // 6802 |
| f81632121_508.returns.push(o77); |
| // 6804 |
| o79 = {}; |
| // 6805 |
| f81632121_508.returns.push(o79); |
| // 6806 |
| o83 = {}; |
| // 6807 |
| o79.firstChild = o83; |
| // 6809 |
| o83.nodeType = 8; |
| // 6811 |
| o83.nodeValue = " <div class=\"-cx-PRIVATE-fbTimelineStyleAds__root -cx-PRIVATE-fbTimelineStyleAds__vertical -cx-PRIVATE-fbTimelineStyleAds__offscreen\" id=\"u_0_2s\" data-referrer=\"u_0_2s\"></div> "; |
| // undefined |
| o83 = null; |
| // 6812 |
| o79.parentNode = o16; |
| // 6814 |
| f81632121_521.returns.push(o79); |
| // undefined |
| o79 = null; |
| // 6815 |
| // 6816 |
| o77.getAttribute = f81632121_506; |
| // 6817 |
| f81632121_506.returns.push("pagelet_side_ads"); |
| // 6821 |
| f81632121_467.returns.push(1374851215859); |
| // 6826 |
| o79 = {}; |
| // 6827 |
| f81632121_474.returns.push(o79); |
| // 6829 |
| f81632121_478.returns.push(o79); |
| // undefined |
| o79 = null; |
| // 6832 |
| f81632121_467.returns.push(1374851215860); |
| // 6836 |
| o79 = {}; |
| // 6837 |
| f81632121_474.returns.push(o79); |
| // 6839 |
| f81632121_467.returns.push(1374851215861); |
| // 6842 |
| o83 = {}; |
| // 6843 |
| f81632121_476.returns.push(o83); |
| // 6844 |
| // 6845 |
| // 6846 |
| // 6847 |
| // 6848 |
| // 6849 |
| o79.appendChild = f81632121_478; |
| // 6850 |
| f81632121_478.returns.push(o83); |
| // 6852 |
| f81632121_467.returns.push(1374851215865); |
| // 6855 |
| o84 = {}; |
| // 6856 |
| f81632121_476.returns.push(o84); |
| // 6857 |
| // 6858 |
| // 6859 |
| // 6860 |
| // 6861 |
| // 6863 |
| f81632121_478.returns.push(o84); |
| // 6865 |
| f81632121_478.returns.push(o79); |
| // undefined |
| o79 = null; |
| // 6868 |
| f81632121_467.returns.push(1374851215869); |
| // 6871 |
| f81632121_467.returns.push(1374851215869); |
| // 6874 |
| f81632121_467.returns.push(1374851215869); |
| // 6876 |
| o79 = {}; |
| // 6877 |
| f81632121_508.returns.push(o79); |
| // 6879 |
| o85 = {}; |
| // 6880 |
| f81632121_508.returns.push(o85); |
| // 6881 |
| o86 = {}; |
| // 6882 |
| o85.firstChild = o86; |
| // 6884 |
| o86.nodeType = 8; |
| // 6886 |
| o86.nodeValue = " <div id=\"fbRequestsJewelLoading\"><div id=\"fbRequestsJewelLoadingContent\"><div class=\"uiHeader uiHeaderBottomBorder jewelHeader\"><div class=\"clearfix uiHeaderTop\"><div class=\"rfloat\"><h3 class=\"accessible_elem\">Friend Requests</h3><div class=\"uiHeaderActions fsm fwn fcg\"><a href=\"http://jsbngssl.www.facebook.com/?sk=ff\" accesskey=\"3\">Find Friends</a> · <a ajaxify=\"/ajax/settings/granular_privacy/can_friend.php\" rel=\"dialog\" href=\"#\" role=\"button\">Settings</a></div></div><div><h3 class=\"uiHeaderTitle\" aria-hidden=\"true\">Friend Requests</h3></div></div></div><img class=\"jewelLoading img\" src=\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yb/r/GsNJNwuI-UM.gif\" alt=\"\" width=\"16\" height=\"11\" /></div><div class=\"jewelFooter\"><a class=\"seeMore\" href=\"/friends/requests/\"><span>See All</span></a></div></div> "; |
| // undefined |
| o86 = null; |
| // 6887 |
| o85.parentNode = o16; |
| // 6889 |
| f81632121_521.returns.push(o85); |
| // undefined |
| o85 = null; |
| // 6890 |
| // 6891 |
| o79.getAttribute = f81632121_506; |
| // 6892 |
| f81632121_506.returns.push(null); |
| // 6893 |
| o79.setAttribute = f81632121_575; |
| // undefined |
| o79 = null; |
| // 6894 |
| f81632121_575.returns.push(undefined); |
| // 6896 |
| f81632121_467.returns.push(1374851215870); |
| // 6900 |
| o79 = {}; |
| // 6901 |
| f81632121_474.returns.push(o79); |
| // 6903 |
| f81632121_478.returns.push(o79); |
| // undefined |
| o79 = null; |
| // 6906 |
| f81632121_467.returns.push(1374851215871); |
| // 6909 |
| f81632121_467.returns.push(1374851215871); |
| // 6912 |
| f81632121_467.returns.push(1374851215871); |
| // 6914 |
| o79 = {}; |
| // 6915 |
| f81632121_508.returns.push(o79); |
| // 6917 |
| o85 = {}; |
| // 6918 |
| f81632121_508.returns.push(o85); |
| // 6919 |
| o86 = {}; |
| // 6920 |
| o85.firstChild = o86; |
| // 6922 |
| o86.nodeType = 8; |
| // 6924 |
| o86.nodeValue = " <div class=\"fbTimelineStickyHeader fixed_elem fbTimelineStickyHeaderHidden\" aria-hidden=\"true\" id=\"u_0_3s\"><div class=\"stickyHeaderWrap clearfix\"><div class=\"back\"></div><div class=\"name\"><a class=\"profileThumb\" href=\"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby\"><img class=\"-cx-PRIVATE-uiSquareImage__root -cx-PRIVATE-uiSquareImage__large img\" src=\"http://jsbngssl.fbcdn-profile-a.akamaihd.net/hprofile-ak-prn2/276274_1055580469_962040234_q.jpg\" alt=\"\" /></a><span class=\"uiButtonGroup fbStickyHeaderBreadcrumb uiButtonGroupOverlay\" id=\"u_0_3r\"><span class=\"firstItem uiButtonGroupItem buttonItem\"><a class=\"nameButton uiButton uiButtonOverlay\" href=\"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby\" role=\"button\"><span class=\"uiButtonText\">Gregor Richards</span></a></span><span class=\"uiButtonGroupItem selectorItem\"><div class=\"uiSelector inlineBlock pageMenu uiSelectorNormal uiSelectorDynamicLabel\"><div class=\"uiToggle wrap\"><a class=\"pageMenuButton uiSelectorButton uiButton uiButtonOverlay\" href=\"#\" role=\"button\" aria-haspopup=\"1\" data-label=\"Timeline\" data-length=\"30\" rel=\"toggle\"><span class=\"uiButtonText\">Timeline</span></a><div class=\"uiSelectorMenuWrapper uiToggleFlyout\"><div role=\"menu\" class=\"uiMenu uiSelectorMenu\"><ul class=\"uiMenuInner\"><li class=\"uiMenuItem uiMenuItemCheckbox checked\" data-label=\"Timeline\"><a class=\"itemAnchor itemWithIcon\" role=\"menuitemcheckbox\" tabindex=\"0\" href=\"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby\" aria-checked=\"true\"><i class=\"mrs itemIcon img sp_at8kd9 sx_c113b7\"></i><span class=\"itemLabel fsm\">Timeline</span></a></li><li class=\"uiMenuItem uiMenuItemCheckbox\" data-label=\"About\"><a class=\"itemAnchor itemWithIcon\" role=\"menuitemcheckbox\" tabindex=\"-1\" href=\"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby/about\" aria-checked=\"false\"><i class=\"mrs itemIcon img sp_4p6kmz sx_fb2987\"></i><span class=\"itemLabel fsm\">About</span></a></li><li class=\"uiMenuSeparator separator hidden_elem\"></li></ul></div></div></div></div></span><span class=\"lastItem uiButtonGroupItem selectorItem\"><div class=\"uiSelector inlineBlock sectionMenu uiSelectorNormal uiSelectorDynamicLabel\"><div class=\"uiToggle wrap\"><a class=\"uiSelectorButton uiButton uiButtonOverlay\" href=\"#\" role=\"button\" aria-haspopup=\"1\" data-length=\"30\" rel=\"toggle\"><span class=\"uiButtonText\">Recent</span></a><div class=\"uiSelectorMenuWrapper uiToggleFlyout\"><div role=\"menu\" class=\"uiMenu uiSelectorMenu\"><ul class=\"uiMenuInner\"><li class=\"uiMenuItem uiMenuItemRadio uiSelectorOption checked\" data-label=\"Recent\"><a class=\"itemAnchor\" role=\"menuitemradio\" tabindex=\"0\" href=\"#\" aria-checked=\"true\" data-key=\"recent\"><span class=\"itemLabel fsm\">Recent</span></a></li><li class=\"uiMenuItem uiMenuItemRadio uiSelectorOption\" data-label=\"2013\"><a class=\"itemAnchor\" role=\"menuitemradio\" tabindex=\"-1\" href=\"#\" aria-checked=\"false\" data-key=\"year_2013\"><span class=\"itemLabel fsm\">2013</span></a></li><li class=\"uiMenuItem uiMenuItemRadio uiSelectorOption\" data-label=\"2012\"><a class=\"itemAnchor\" role=\"menuitemradio\" tabindex=\"-1\" href=\"#\" aria-checked=\"false\" data-key=\"year_2012\"><span class=\"itemLabel fsm\">2012</span></a></li><li class=\"uiMenuItem uiMenuItemRadio uiSelectorOption\" data-label=\"2011\"><a class=\"itemAnchor\" role=\"menuitemradio\" tabindex=\"-1\" href=\"#\" aria-checked=\"false\" data-key=\"year_2011\"><span class=\"itemLabel fsm\">2011</span></a></li><li class=\"uiMenuItem uiMenuItemRadio uiSelectorOption\" data-label=\"2010\"><a class=\"itemAnchor\" role=\"menuitemradio\" tabindex=\"-1\" href=\"#\" aria-checked=\"false\" data-key=\"year_2010\"><span class=\"itemLabel fsm\">2010</span></a></li><li class=\"uiMenuItem uiMenuItemRadio uiSelectorOption\" data-label=\"2009\"><a class=\"itemAnchor\" role=\"menuitemradio\" tabindex=\"-1\" href=\"#\" aria-checked=\"false\" data-key=\"year_2009\"><span class=\"itemLabel fsm\">2009</span></a></li><li class=\"uiMenuItem uiMenuItemRadio uiSelectorOption\" data-label=\"2008\"><a class=\"itemAnchor\" role=\"menuitemradio\" tabindex=\"-1\" href=\"#\" aria-checked=\"false\" data-key=\"year_2008\"><span class=\"itemLabel fsm\">2008</span></a></li><li class=\"uiMenuItem uiMenuItemRadio uiSelectorOption\" data-label=\"Born\"><a class=\"itemAnchor\" role=\"menuitemradio\" tabindex=\"-1\" href=\"#\" aria-checked=\"false\" data-key=\"way_back\"><span class=\"itemLabel fsm\">Born</span></a></li></ul></div></div></div><select><option value=\"\"></option><option value=\"recent\" selected=\"1\">Recent</option><option value=\"year_2013\">2013</option><option value=\"year_2012\">2012</option><option value=\"year_2011\">2011</option><option value=\"year_2010\">2010</option><option value=\"year_2009\">2009</option><option value=\"year_2008\">2008</option><option value=\"way_back\">Born</option></select></div></span><span class=\"uiButtonGroupItem selectorItem hidden_elem\"><div class=\"uiSelector inlineBlock subsectionMenu uiSelectorNormal uiSelectorDynamicLabel\"><div class=\"uiToggle wrap\"><a class=\"uiSelectorButton uiButton uiButtonOverlay\" href=\"#\" role=\"button\" aria-haspopup=\"1\" data-length=\"30\" rel=\"toggle\"><span class=\"uiButtonText\">Highlights</span></a><div class=\"uiSelectorMenuWrapper uiToggleFlyout\"><div role=\"menu\" class=\"uiMenu uiSelectorMenu\"><ul class=\"uiMenuInner\"><li class=\"uiMenuItem uiMenuItemRadio uiSelectorOption highlights checked\" data-label=\"Highlights\"><a class=\"itemAnchor\" role=\"menuitemradio\" tabindex=\"0\" href=\"#\" aria-checked=\"true\"><span class=\"itemLabel fsm\">Highlights</span></a></li><li class=\"uiMenuItem uiMenuItemRadio uiSelectorOption allStories\" data-label=\"All Stories\"><a class=\"itemAnchor\" role=\"menuitemradio\" tabindex=\"-1\" href=\"#\" aria-checked=\"false\"><span class=\"itemLabel fsm\">All Stories</span></a></li><li class=\"uiMenuSeparator separator hidden_elem\"></li></ul></div></div></div><select><option value=\"\"></option><option value=\"highlights\" selected=\"1\">Highlights</option><option value=\"allStories\">All Stories</option></select></div></span></span></div><div class=\"actions\"><span class=\"uiButtonGroup fbTimelineConnectButtonGroup uiButtonGroupOverlay\" id=\"u_0_3k\"><span class=\"firstItem uiButtonGroupItem buttonItem\"><div class=\"FriendButton\" id=\"u_0_3p\"><label class=\"FriendRequestAdd addButton uiButton uiButtonOverlay uiButtonLarge\" for=\"u_0_3q\"><i class=\"mrs img sp_at8kd9 sx_aad3a2\"></i><input value=\"Add Friend\" type=\"button\" id=\"u_0_3q\" /></label><a class=\"FriendRequestOutgoing enableFriendListFlyout outgoingButton enableFriendListFlyout hidden_elem uiButton uiButtonOverlay uiButtonLarge\" href=\"#\" role=\"button\" data-profileid=\"1055580469\" data-flloc=\"sticky_header\" data-cansuggestfriends=\"false\"><i class=\"mrs img sp_at8kd9 sx_aad3a2\"></i><span class=\"uiButtonText\">Friend Request Sent</span></a></div></span><span class=\"lastItem uiButtonGroupItem buttonItem\"><span class=\"-cx-PRIVATE-uiSwapButton__root -cx-PRIVATE-fbSubscribeButton__root\"><a class=\"uiButton uiButtonOverlay uiButtonLarge\" href=\"#\" role=\"button\" ajaxify=\"/ajax/follow/follow_profile.php?profile_id=1055580469&location=1\" rel=\"async-post\" id=\"u_0_3l\"><i class=\"mrs img sp_at8kd9 sx_dedf3e\"></i><span class=\"uiButtonText\">Follow</span></a><label class=\"profileFollowButton -cx-PUBLIC-uiHoverButton__root -cx-PRIVATE-uiSwapButton__secondbutton hidden_elem uiButton uiButtonOverlay uiButtonLarge\" id=\"u_0_3m\" for=\"u_0_3o\"><i class=\"mrs img sp_at8kd9 sx_d4ea38\"></i><input value=\"Following\" aria-haspopup=\"1\" data-profileid=\"1055580469\" type=\"submit\" id=\"u_0_3o\" /></label></span></span></span></div></div></div> "; |
| // undefined |
| o86 = null; |
| // 6925 |
| o85.parentNode = o16; |
| // 6927 |
| f81632121_521.returns.push(o85); |
| // undefined |
| o85 = null; |
| // 6928 |
| // 6929 |
| o79.getAttribute = f81632121_506; |
| // undefined |
| o79 = null; |
| // 6930 |
| f81632121_506.returns.push("timeline_sticky_header"); |
| // 6934 |
| o79 = {}; |
| // 6935 |
| f81632121_476.returns.push(o79); |
| // 6936 |
| // 6937 |
| // 6938 |
| o79.getElementsByTagName = f81632121_502; |
| // 6939 |
| o85 = {}; |
| // 6940 |
| f81632121_502.returns.push(o85); |
| // 6941 |
| o85.length = 0; |
| // undefined |
| o85 = null; |
| // 6943 |
| o85 = {}; |
| // 6944 |
| o79.childNodes = o85; |
| // undefined |
| o79 = null; |
| // 6945 |
| o85.nodeType = void 0; |
| // 6946 |
| o85.getAttributeNode = void 0; |
| // 6947 |
| o85.getElementsByTagName = void 0; |
| // 6948 |
| o85.childNodes = void 0; |
| // 6967 |
| o85.__html = void 0; |
| // 6968 |
| o85.mountComponentIntoNode = void 0; |
| // 6969 |
| o85.classList = void 0; |
| // 6971 |
| o85.className = void 0; |
| // 6973 |
| // undefined |
| o85 = null; |
| // 6975 |
| o79 = {}; |
| // 6976 |
| f81632121_476.returns.push(o79); |
| // 6977 |
| o79.firstChild = null; |
| // 6979 |
| o85 = {}; |
| // 6980 |
| f81632121_474.returns.push(o85); |
| // 6982 |
| o79.appendChild = f81632121_478; |
| // 6983 |
| f81632121_478.returns.push(o85); |
| // undefined |
| o85 = null; |
| // 6985 |
| o85 = {}; |
| // 6986 |
| f81632121_476.returns.push(o85); |
| // 6987 |
| // 6988 |
| o85.firstChild = null; |
| // 6989 |
| o79.__html = void 0; |
| // 6991 |
| o86 = {}; |
| // 6992 |
| f81632121_474.returns.push(o86); |
| // 6994 |
| o85.appendChild = f81632121_478; |
| // 6995 |
| f81632121_478.returns.push(o86); |
| // undefined |
| o86 = null; |
| // 6997 |
| o86 = {}; |
| // 6998 |
| f81632121_476.returns.push(o86); |
| // 6999 |
| // 7000 |
| o86.firstChild = null; |
| // 7001 |
| o85.__html = void 0; |
| // undefined |
| o85 = null; |
| // 7003 |
| o85 = {}; |
| // 7004 |
| f81632121_474.returns.push(o85); |
| // 7006 |
| o86.appendChild = f81632121_478; |
| // 7007 |
| f81632121_478.returns.push(o85); |
| // undefined |
| o85 = null; |
| // 7008 |
| o85 = {}; |
| // 7009 |
| o86.classList = o85; |
| // 7011 |
| o85.add = f81632121_602; |
| // undefined |
| o85 = null; |
| // 7012 |
| f81632121_602.returns.push(undefined); |
| // 7013 |
| o85 = {}; |
| // 7014 |
| o79.style = o85; |
| // undefined |
| o79 = null; |
| // 7015 |
| // undefined |
| o85 = null; |
| // 7019 |
| f81632121_602.returns.push(undefined); |
| // 7020 |
| o86.__FB_TOKEN = void 0; |
| // 7021 |
| // undefined |
| o86 = null; |
| // 7027 |
| f81632121_467.returns.push(1374851215902); |
| // 7031 |
| o79 = {}; |
| // 7032 |
| f81632121_474.returns.push(o79); |
| // 7034 |
| f81632121_478.returns.push(o79); |
| // undefined |
| o79 = null; |
| // 7037 |
| f81632121_467.returns.push(1374851215903); |
| // 7040 |
| f81632121_467.returns.push(1374851215903); |
| // 7043 |
| f81632121_467.returns.push(1374851215903); |
| // 7045 |
| o79 = {}; |
| // 7046 |
| f81632121_508.returns.push(o79); |
| // 7048 |
| o85 = {}; |
| // 7049 |
| f81632121_508.returns.push(o85); |
| // 7050 |
| o86 = {}; |
| // 7051 |
| o85.firstChild = o86; |
| // 7053 |
| o86.nodeType = 8; |
| // 7055 |
| o86.nodeValue = " <div class=\"fbTimelineTimePeriod fbTimelineTimePeriodUnexpanded\" id=\"pagelet_timeline_year_current\"><div class=\"fbTimelineSection fbTimelineCompactSection fbTimelineSectionTransparent\"><div class=\"fbTimelinePeriodPlaceholder\"><div class=\"mbm -cx-PRIVATE-fbTimelineOneColumnHeader__header sectionHeader\"><div class=\"uiHeader\"><div class=\"clearfix uiHeaderTop\"><div><h3 class=\"uiHeaderTitle\">Earlier in 2013</h3></div></div></div><div class=\"-cx-PRIVATE-fbTimelineOneColumnHeader__line\"></div></div><div class=\"loadingContainer\"><a class=\"mbm phm forceLoad\" href=\"#\" role=\"button\" id=\"u_0_3u\"><span class=\"sectionLabel fwb\" data-year=\"2013\">Show 2013</span></a></div></div></div><img class=\"ptl loadingIndicator img\" src=\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yb/r/GsNJNwuI-UM.gif\" alt=\"\" width=\"16\" height=\"11\" /></div><div class=\"fbTimelineTimePeriod fbTimelineTimePeriodUnexpanded\" id=\"pagelet_timeline_year_last\"><div class=\"fbTimelineSection fbTimelineCompactSection fbTimelineSectionTransparent\"><div class=\"fbTimelinePeriodPlaceholder\"><div class=\"mbm -cx-PRIVATE-fbTimelineOneColumnHeader__header sectionHeader\"><div class=\"uiHeader\"><div class=\"clearfix uiHeaderTop\"><div><h3 class=\"uiHeaderTitle\">2012</h3></div></div></div><div class=\"-cx-PRIVATE-fbTimelineOneColumnHeader__line\"></div></div><div class=\"loadingContainer\"><a class=\"mbm phm forceLoad\" href=\"#\" role=\"button\" id=\"u_0_3v\"><span class=\"sectionLabel fwb\" data-year=\"2012\">Show 2012</span></a></div></div></div><img class=\"ptl loadingIndicator img\" src=\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yb/r/GsNJNwuI-UM.gif\" alt=\"\" width=\"16\" height=\"11\" /></div><div class=\"fbTimelineTimePeriod fbTimelineTimePeriodUnexpanded\" id=\"pagelet_timeline_year_2011\"><div class=\"fbTimelineSection fbTimelineCompactSection fbTimelineSectionTransparent\"><div class=\"fbTimelinePeriodPlaceholder\"><div class=\"mbm -cx-PRIVATE-fbTimelineOneColumnHeader__header sectionHeader\"><div class=\"uiHeader\"><div class=\"clearfix uiHeaderTop\"><div><h3 class=\"uiHeaderTitle\">2011</h3></div></div></div><div class=\"-cx-PRIVATE-fbTimelineOneColumnHeader__line\"></div></div><div class=\"loadingContainer\"><a class=\"mbm phm forceLoad\" href=\"#\" role=\"button\" id=\"u_0_3w\"><span class=\"sectionLabel fwb\" data-year=\"2011\">Show 2011</span></a></div></div></div><img class=\"ptl loadingIndicator img\" src=\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yb/r/GsNJNwuI-UM.gif\" alt=\"\" width=\"16\" height=\"11\" /></div><div class=\"fbTimelineTimePeriod fbTimelineTimePeriodUnexpanded\" id=\"pagelet_timeline_year_2010\"><div class=\"fbTimelineSection fbTimelineCompactSection fbTimelineSectionTransparent\"><div class=\"fbTimelinePeriodPlaceholder\"><div class=\"mbm -cx-PRIVATE-fbTimelineOneColumnHeader__header sectionHeader\"><div class=\"uiHeader\"><div class=\"clearfix uiHeaderTop\"><div><h3 class=\"uiHeaderTitle\">2010</h3></div></div></div><div class=\"-cx-PRIVATE-fbTimelineOneColumnHeader__line\"></div></div><div class=\"loadingContainer\"><a class=\"mbm phm forceLoad\" href=\"#\" role=\"button\" id=\"u_0_40\"><span class=\"sectionLabel fwb\" data-year=\"2010\">Show 2010</span></a></div></div></div><img class=\"ptl loadingIndicator img\" src=\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yb/r/GsNJNwuI-UM.gif\" alt=\"\" width=\"16\" height=\"11\" /></div><div class=\"fbTimelineTimePeriod fbTimelineTimePeriodUnexpanded\" id=\"pagelet_timeline_year_2009\"><div class=\"fbTimelineSection fbTimelineCompactSection fbTimelineSectionTransparent\"><div class=\"fbTimelinePeriodPlaceholder\"><div class=\"mbm -cx-PRIVATE-fbTimelineOneColumnHeader__header sectionHeader\"><div class=\"uiHeader\"><div class=\"clearfix uiHeaderTop\"><div><h3 class=\"uiHeaderTitle\">2009</h3></div></div></div><div class=\"-cx-PRIVATE-fbTimelineOneColumnHeader__line\"></div></div><div class=\"loadingContainer\"><a class=\"mbm phm forceLoad\" href=\"#\" role=\"button\" id=\"u_0_3z\"><span class=\"sectionLabel fwb\" data-year=\"2009\">Show 2009</span></a></div></div></div><img class=\"ptl loadingIndicator img\" src=\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yb/r/GsNJNwuI-UM.gif\" alt=\"\" width=\"16\" height=\"11\" /></div><div class=\"fbTimelineTimePeriod fbTimelineTimePeriodUnexpanded\" id=\"pagelet_timeline_year_2008\"><div class=\"fbTimelineSection fbTimelineCompactSection fbTimelineSectionTransparent\"><div class=\"fbTimelinePeriodPlaceholder\"><div class=\"mbm -cx-PRIVATE-fbTimelineOneColumnHeader__header sectionHeader\"><div class=\"uiHeader\"><div class=\"clearfix uiHeaderTop\"><div><h3 class=\"uiHeaderTitle\">2008</h3></div></div></div><div class=\"-cx-PRIVATE-fbTimelineOneColumnHeader__line\"></div></div><div class=\"loadingContainer\"><a class=\"mbm phm forceLoad\" href=\"#\" role=\"button\" id=\"u_0_3x\"><span class=\"sectionLabel fwb\" data-year=\"2008\">Show 2008</span></a></div></div></div><img class=\"ptl loadingIndicator img\" src=\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yb/r/GsNJNwuI-UM.gif\" alt=\"\" width=\"16\" height=\"11\" /></div><div class=\"fbTimelineTimePeriod fbTimelineTimePeriodUnexpanded\" id=\"pagelet_timeline_wayback\"><div class=\"fbTimelineSection fbTimelineCompactSection fbTimelineSectionTransparent\"><div class=\"fbTimelinePeriodPlaceholder\"><div class=\"mbm -cx-PRIVATE-fbTimelineOneColumnHeader__header sectionHeader\"><div class=\"uiHeader\"><div class=\"clearfix uiHeaderTop\"><div><h3 class=\"uiHeaderTitle\">Born</h3></div></div></div><div class=\"-cx-PRIVATE-fbTimelineOneColumnHeader__line\"></div></div><div class=\"loadingContainer\"><a class=\"mbm phm forceLoad\" href=\"#\" role=\"button\" id=\"u_0_3y\"><span class=\"sectionLabel fwb\" data-year=\"2007\">Show 2007</span></a></div></div></div><img class=\"ptl loadingIndicator img\" src=\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yb/r/GsNJNwuI-UM.gif\" alt=\"\" width=\"16\" height=\"11\" /></div> "; |
| // undefined |
| o86 = null; |
| // 7056 |
| o85.parentNode = o16; |
| // 7058 |
| f81632121_521.returns.push(o85); |
| // undefined |
| o85 = null; |
| // 7060 |
| o85 = {}; |
| // 7061 |
| f81632121_476.returns.push(o85); |
| // 7062 |
| // 7064 |
| o86 = {}; |
| // 7065 |
| f81632121_474.returns.push(o86); |
| // 7066 |
| o87 = {}; |
| // undefined |
| fo81632121_1201_firstChild = function() { return fo81632121_1201_firstChild.returns[fo81632121_1201_firstChild.inst++]; }; |
| fo81632121_1201_firstChild.returns = []; |
| fo81632121_1201_firstChild.inst = 0; |
| defineGetter(o85, "firstChild", fo81632121_1201_firstChild, undefined); |
| // undefined |
| o85 = null; |
| // undefined |
| fo81632121_1201_firstChild.returns.push(o87); |
| // 7068 |
| o86.appendChild = f81632121_478; |
| // undefined |
| fo81632121_1201_firstChild.returns.push(o87); |
| // 7070 |
| f81632121_478.returns.push(o87); |
| // 7071 |
| o85 = {}; |
| // undefined |
| fo81632121_1201_firstChild.returns.push(o85); |
| // undefined |
| fo81632121_1201_firstChild.returns.push(o85); |
| // 7075 |
| f81632121_478.returns.push(o85); |
| // 7076 |
| o88 = {}; |
| // undefined |
| fo81632121_1201_firstChild.returns.push(o88); |
| // undefined |
| fo81632121_1201_firstChild.returns.push(o88); |
| // 7080 |
| f81632121_478.returns.push(o88); |
| // 7081 |
| o89 = {}; |
| // undefined |
| fo81632121_1201_firstChild.returns.push(o89); |
| // undefined |
| fo81632121_1201_firstChild.returns.push(o89); |
| // 7085 |
| f81632121_478.returns.push(o89); |
| // 7086 |
| o90 = {}; |
| // undefined |
| fo81632121_1201_firstChild.returns.push(o90); |
| // undefined |
| fo81632121_1201_firstChild.returns.push(o90); |
| // 7090 |
| f81632121_478.returns.push(o90); |
| // 7091 |
| o91 = {}; |
| // undefined |
| fo81632121_1201_firstChild.returns.push(o91); |
| // undefined |
| fo81632121_1201_firstChild.returns.push(o91); |
| // 7095 |
| f81632121_478.returns.push(o91); |
| // 7096 |
| o92 = {}; |
| // undefined |
| fo81632121_1201_firstChild.returns.push(o92); |
| // undefined |
| fo81632121_1201_firstChild.returns.push(o92); |
| // 7100 |
| f81632121_478.returns.push(o92); |
| // undefined |
| fo81632121_1201_firstChild.returns.push(null); |
| // 7102 |
| o79.appendChild = f81632121_478; |
| // 7103 |
| f81632121_478.returns.push(o86); |
| // undefined |
| o86 = null; |
| // 7104 |
| o79.getAttribute = f81632121_506; |
| // 7105 |
| f81632121_506.returns.push(null); |
| // 7106 |
| o79.setAttribute = f81632121_575; |
| // undefined |
| o79 = null; |
| // 7107 |
| f81632121_575.returns.push(undefined); |
| // 7143 |
| f81632121_467.returns.push(1374851215925); |
| // 7147 |
| o79 = {}; |
| // 7148 |
| f81632121_474.returns.push(o79); |
| // 7150 |
| f81632121_478.returns.push(o79); |
| // undefined |
| o79 = null; |
| // 7153 |
| f81632121_467.returns.push(1374851215926); |
| // 7156 |
| f81632121_467.returns.push(1374851215926); |
| // 7159 |
| f81632121_467.returns.push(1374851215926); |
| // 7161 |
| o79 = {}; |
| // 7162 |
| f81632121_508.returns.push(o79); |
| // 7164 |
| o86 = {}; |
| // 7165 |
| f81632121_508.returns.push(o86); |
| // 7166 |
| o93 = {}; |
| // 7167 |
| o86.firstChild = o93; |
| // 7169 |
| o93.nodeType = 8; |
| // 7171 |
| o93.nodeValue = " <div class=\"fbTimelineSectionExpander fbTimelineHiddenPager stat_elem\" id=\"pagelet_timeline_recent_pager_1\"><div class=\"fbTimelineSectionExpandPager fbTimelineShowOlder\" data-gt=\"{"timeline_pager":"1","profile_id":"1055580469","page_index":"1","query_type":"39"}\" id=\"u_0_42\"><div class=\"clearfix uiMorePager stat_elem\"><a class=\"-cx-PUBLIC-timelineOneColMin__caret uiMorePagerSecondary rfloat\" href=\"#\" role=\"button\"></a><div><script type=\"text/javascript\">try {\n ((JSBNG_Record.scriptLoad)((\"function e54abfe526a2ad0769e7f20c510b65512590a089f(event) {\\u000a ((JSCC.get(\\\"jp1njVsiFS9h1xdp9Yi0\\\") && JSCC.get(\\\"jp1njVsiFS9h1xdp9Yi0\\\").getHandler()))();\\u000a return false;\\u000a};\"), (\"sfa3079759067df9a19fd325724f561bebeabc7e5\")));\n ((window.top.JSBNG_Record.callerJS) = (true));\n function e54abfe526a2ad0769e7f20c510b65512590a089f(JSBNG__event) {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"sfa3079759067df9a19fd325724f561bebeabc7e5_0\"), (sfa3079759067df9a19fd325724f561bebeabc7e5_0_instance), (this), (arguments)))\n };\n (null);\n (((((JSBNG_Record.get)(JSCC, (\"get\")))[(\"get\")])(\"jp1njVsiFS9h1xdp9Yi0\") && (((JSBNG_Record.get)((((JSBNG_Record.get)(JSCC, (\"get\")))[(\"get\")])(\"jp1njVsiFS9h1xdp9Yi0\"), (\"getHandler\")))[(\"getHandler\")])()))();\n return false;\n };\n var sfa3079759067df9a19fd325724f561bebeabc7e5_0_instance;\n ((sfa3079759067df9a19fd325724f561bebeabc7e5_0_instance) = ((JSBNG_Record.eventInstance)((\"sfa3079759067df9a19fd325724f561bebeabc7e5_0\"))));\n ((JSBNG_Record.markFunction)((e54abfe526a2ad0769e7f20c510b65512590a089f)));\n} finally {\n ((window.top.JSBNG_Record.callerJS) = (false));\n ((window.top.JSBNG_Record.flushDeferredEvents)());\n};</script><a class=\"pam uiBoxLightblue uiMorePagerPrimary\" onclick=\"return e54abfe526a2ad0769e7f20c510b65512590a089f.call(this, event);\" href=\"#\" role=\"button\">See More Recent Stories</a><span class=\"uiMorePagerLoader pam uiBoxLightblue\"><img class=\"img\" src=\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yb/r/GsNJNwuI-UM.gif\" alt=\"\" width=\"16\" height=\"11\" /></span></div></div></div></div> "; |
| // undefined |
| o93 = null; |
| // 7172 |
| o86.parentNode = o16; |
| // 7174 |
| f81632121_521.returns.push(o86); |
| // undefined |
| o86 = null; |
| // 7175 |
| // 7176 |
| o79.getAttribute = f81632121_506; |
| // 7177 |
| f81632121_506.returns.push(null); |
| // 7178 |
| o79.setAttribute = f81632121_575; |
| // 7179 |
| f81632121_575.returns.push(undefined); |
| // 7183 |
| f81632121_467.returns.push(1374851215936); |
| // 7187 |
| o86 = {}; |
| // 7188 |
| f81632121_474.returns.push(o86); |
| // 7190 |
| f81632121_478.returns.push(o86); |
| // undefined |
| o86 = null; |
| // 7193 |
| f81632121_467.returns.push(1374851215936); |
| // 7196 |
| f81632121_467.returns.push(1374851215936); |
| // 7199 |
| f81632121_467.returns.push(1374851215936); |
| // 7201 |
| o86 = {}; |
| // 7202 |
| f81632121_508.returns.push(o86); |
| // 7204 |
| o93 = {}; |
| // 7205 |
| f81632121_508.returns.push(o93); |
| // 7206 |
| o94 = {}; |
| // 7207 |
| o93.firstChild = o94; |
| // 7209 |
| o94.nodeType = 8; |
| // 7211 |
| o94.nodeValue = " <ul class=\"fbTimelineScrubber hidden_elem\" role=\"navigation\" data-gt=\"{"timeline_scrubber":"1","profile_id":"1055580469"}\" id=\"u_0_44\"><li data-key=\"recent\" class=\"selected\"><a href=\"/LawlabeeTheWallaby/timeline\" rel=\"ignore\">Recent</a></li><li data-key=\"year_2013\" class=\"clearfix\" data-rollup=\"2010s\" data-year=\"2013\"><a href=\"/LawlabeeTheWallaby/timeline/2013\" rel=\"ignore\" tabindex=\"-1\">2013</a><ul class=\"clearfix\"><li data-key=\"month_2013_1\"><a href=\"/LawlabeeTheWallaby/timeline/2013/1\" rel=\"ignore\">January</a></li></ul></li><li data-key=\"year_2012\" class=\"clearfix\" data-rollup=\"2010s\" data-year=\"2012\"><a href=\"/LawlabeeTheWallaby/timeline/2012\" rel=\"ignore\" tabindex=\"-1\">2012</a><ul class=\"clearfix\"><li data-key=\"month_2012_12\"><a href=\"/LawlabeeTheWallaby/timeline/2012/12\" rel=\"ignore\">December</a></li><li data-key=\"month_2012_11\"><a href=\"/LawlabeeTheWallaby/timeline/2012/11\" rel=\"ignore\">November</a></li><li data-key=\"month_2012_10\"><a href=\"/LawlabeeTheWallaby/timeline/2012/10\" rel=\"ignore\">October</a></li><li data-key=\"month_2012_9\"><a href=\"/LawlabeeTheWallaby/timeline/2012/9\" rel=\"ignore\">September</a></li><li data-key=\"month_2012_8\"><a href=\"/LawlabeeTheWallaby/timeline/2012/8\" rel=\"ignore\">August</a></li><li data-key=\"month_2012_7\"><a href=\"/LawlabeeTheWallaby/timeline/2012/7\" rel=\"ignore\">July</a></li><li data-key=\"month_2012_6\"><a href=\"/LawlabeeTheWallaby/timeline/2012/6\" rel=\"ignore\">June</a></li><li data-key=\"month_2012_5\"><a href=\"/LawlabeeTheWallaby/timeline/2012/5\" rel=\"ignore\">May</a></li><li data-key=\"month_2012_4\"><a href=\"/LawlabeeTheWallaby/timeline/2012/4\" rel=\"ignore\">April</a></li><li data-key=\"month_2012_3\"><a href=\"/LawlabeeTheWallaby/timeline/2012/3\" rel=\"ignore\">March</a></li><li data-key=\"month_2012_2\"><a href=\"/LawlabeeTheWallaby/timeline/2012/2\" rel=\"ignore\">February</a></li><li data-key=\"month_2012_1\"><a href=\"/LawlabeeTheWallaby/timeline/2012/1\" rel=\"ignore\">January</a></li></ul></li><li data-key=\"year_2011\" class=\"clearfix\" data-rollup=\"2010s\" data-year=\"2011\"><a href=\"/LawlabeeTheWallaby/timeline/2011\" rel=\"ignore\" tabindex=\"-1\">2011</a><ul class=\"clearfix\"><li data-key=\"month_2011_12\"><a href=\"/LawlabeeTheWallaby/timeline/2011/12\" rel=\"ignore\">December</a></li><li data-key=\"month_2011_11\"><a href=\"/LawlabeeTheWallaby/timeline/2011/11\" rel=\"ignore\">November</a></li><li data-key=\"month_2011_10\"><a href=\"/LawlabeeTheWallaby/timeline/2011/10\" rel=\"ignore\">October</a></li><li data-key=\"month_2011_9\"><a href=\"/LawlabeeTheWallaby/timeline/2011/9\" rel=\"ignore\">September</a></li><li data-key=\"month_2011_8\"><a href=\"/LawlabeeTheWallaby/timeline/2011/8\" rel=\"ignore\">August</a></li><li data-key=\"month_2011_7\"><a href=\"/LawlabeeTheWallaby/timeline/2011/7\" rel=\"ignore\">July</a></li><li data-key=\"month_2011_6\"><a href=\"/LawlabeeTheWallaby/timeline/2011/6\" rel=\"ignore\">June</a></li><li data-key=\"month_2011_5\"><a href=\"/LawlabeeTheWallaby/timeline/2011/5\" rel=\"ignore\">May</a></li><li data-key=\"month_2011_4\"><a href=\"/LawlabeeTheWallaby/timeline/2011/4\" rel=\"ignore\">April</a></li><li data-key=\"month_2011_3\"><a href=\"/LawlabeeTheWallaby/timeline/2011/3\" rel=\"ignore\">March</a></li><li data-key=\"month_2011_2\"><a href=\"/LawlabeeTheWallaby/timeline/2011/2\" rel=\"ignore\">February</a></li><li data-key=\"month_2011_1\"><a href=\"/LawlabeeTheWallaby/timeline/2011/1\" rel=\"ignore\">January</a></li></ul></li><li data-key=\"year_2010\" class=\"clearfix\" data-rollup=\"2010s\" data-year=\"2010\"><a href=\"/LawlabeeTheWallaby/timeline/2010\" rel=\"ignore\" tabindex=\"-1\">2010</a><ul class=\"clearfix\"><li data-key=\"month_2010_12\"><a href=\"/LawlabeeTheWallaby/timeline/2010/12\" rel=\"ignore\">December</a></li><li data-key=\"month_2010_11\"><a href=\"/LawlabeeTheWallaby/timeline/2010/11\" rel=\"ignore\">November</a></li><li data-key=\"month_2010_10\"><a href=\"/LawlabeeTheWallaby/timeline/2010/10\" rel=\"ignore\">October</a></li><li data-key=\"month_2010_9\"><a href=\"/LawlabeeTheWallaby/timeline/2010/9\" rel=\"ignore\">September</a></li><li data-key=\"month_2010_8\"><a href=\"/LawlabeeTheWallaby/timeline/2010/8\" rel=\"ignore\">August</a></li><li data-key=\"month_2010_7\"><a href=\"/LawlabeeTheWallaby/timeline/2010/7\" rel=\"ignore\">July</a></li><li data-key=\"month_2010_6\"><a href=\"/LawlabeeTheWallaby/timeline/2010/6\" rel=\"ignore\">June</a></li><li data-key=\"month_2010_5\"><a href=\"/LawlabeeTheWallaby/timeline/2010/5\" rel=\"ignore\">May</a></li><li data-key=\"month_2010_4\"><a href=\"/LawlabeeTheWallaby/timeline/2010/4\" rel=\"ignore\">April</a></li><li data-key=\"month_2010_3\"><a href=\"/LawlabeeTheWallaby/timeline/2010/3\" rel=\"ignore\">March</a></li><li data-key=\"month_2010_2\"><a href=\"/LawlabeeTheWallaby/timeline/2010/2\" rel=\"ignore\">February</a></li><li data-key=\"month_2010_1\"><a href=\"/LawlabeeTheWallaby/timeline/2010/1\" rel=\"ignore\">January</a></li></ul></li><li data-key=\"year_2009\" class=\"clearfix\" data-rollup=\"2000s\" data-year=\"2009\"><a href=\"/LawlabeeTheWallaby/timeline/2009\" rel=\"ignore\" tabindex=\"-1\">2009</a><ul class=\"clearfix\"><li data-key=\"month_2009_12\"><a href=\"/LawlabeeTheWallaby/timeline/2009/12\" rel=\"ignore\">December</a></li><li data-key=\"month_2009_11\"><a href=\"/LawlabeeTheWallaby/timeline/2009/11\" rel=\"ignore\">November</a></li><li data-key=\"month_2009_10\"><a href=\"/LawlabeeTheWallaby/timeline/2009/10\" rel=\"ignore\">October</a></li><li data-key=\"month_2009_9\"><a href=\"/LawlabeeTheWallaby/timeline/2009/9\" rel=\"ignore\">September</a></li><li data-key=\"month_2009_8\"><a href=\"/LawlabeeTheWallaby/timeline/2009/8\" rel=\"ignore\">August</a></li><li data-key=\"month_2009_7\"><a href=\"/LawlabeeTheWallaby/timeline/2009/7\" rel=\"ignore\">July</a></li><li data-key=\"month_2009_6\"><a href=\"/LawlabeeTheWallaby/timeline/2009/6\" rel=\"ignore\">June</a></li><li data-key=\"month_2009_5\"><a href=\"/LawlabeeTheWallaby/timeline/2009/5\" rel=\"ignore\">May</a></li><li data-key=\"month_2009_4\"><a href=\"/LawlabeeTheWallaby/timeline/2009/4\" rel=\"ignore\">April</a></li><li data-key=\"month_2009_3\"><a href=\"/LawlabeeTheWallaby/timeline/2009/3\" rel=\"ignore\">March</a></li><li data-key=\"month_2009_2\"><a href=\"/LawlabeeTheWallaby/timeline/2009/2\" rel=\"ignore\">February</a></li><li data-key=\"month_2009_1\"><a href=\"/LawlabeeTheWallaby/timeline/2009/1\" rel=\"ignore\">January</a></li></ul></li><li data-key=\"year_2008\" class=\"clearfix\" data-rollup=\"2000s\" data-year=\"2008\"><a href=\"/LawlabeeTheWallaby/timeline/2008\" rel=\"ignore\" tabindex=\"-1\">2008</a><ul class=\"clearfix\"><li data-key=\"month_2008_12\"><a href=\"/LawlabeeTheWallaby/timeline/2008/12\" rel=\"ignore\">December</a></li><li data-key=\"month_2008_11\"><a href=\"/LawlabeeTheWallaby/timeline/2008/11\" rel=\"ignore\">November</a></li><li data-key=\"month_2008_10\"><a href=\"/LawlabeeTheWallaby/timeline/2008/10\" rel=\"ignore\">October</a></li><li data-key=\"month_2008_9\"><a href=\"/LawlabeeTheWallaby/timeline/2008/9\" rel=\"ignore\">September</a></li><li data-key=\"month_2008_8\"><a href=\"/LawlabeeTheWallaby/timeline/2008/8\" rel=\"ignore\">August</a></li><li data-key=\"month_2008_7\"><a href=\"/LawlabeeTheWallaby/timeline/2008/7\" rel=\"ignore\">July</a></li><li data-key=\"month_2008_6\"><a href=\"/LawlabeeTheWallaby/timeline/2008/6\" rel=\"ignore\">June</a></li><li data-key=\"month_2008_5\"><a href=\"/LawlabeeTheWallaby/timeline/2008/5\" rel=\"ignore\">May</a></li><li data-key=\"month_2008_4\"><a href=\"/LawlabeeTheWallaby/timeline/2008/4\" rel=\"ignore\">April</a></li><li data-key=\"month_2008_3\"><a href=\"/LawlabeeTheWallaby/timeline/2008/3\" rel=\"ignore\">March</a></li><li data-key=\"month_2008_2\"><a href=\"/LawlabeeTheWallaby/timeline/2008/2\" rel=\"ignore\">February</a></li><li data-key=\"month_2008_1\"><a href=\"/LawlabeeTheWallaby/timeline/2008/1\" rel=\"ignore\">January</a></li></ul></li><li data-key=\"way_back\"><a href=\"/LawlabeeTheWallaby/timeline#way_back\" rel=\"ignore\" tabindex=\"-1\">Born</a></li></ul> "; |
| // undefined |
| o94 = null; |
| // 7212 |
| o93.parentNode = o16; |
| // 7214 |
| f81632121_521.returns.push(o93); |
| // undefined |
| o93 = null; |
| // 7216 |
| o93 = {}; |
| // 7217 |
| f81632121_476.returns.push(o93); |
| // 7218 |
| // 7220 |
| o94 = {}; |
| // 7221 |
| f81632121_474.returns.push(o94); |
| // 7222 |
| o95 = {}; |
| // undefined |
| fo81632121_1218_firstChild = function() { return fo81632121_1218_firstChild.returns[fo81632121_1218_firstChild.inst++]; }; |
| fo81632121_1218_firstChild.returns = []; |
| fo81632121_1218_firstChild.inst = 0; |
| defineGetter(o93, "firstChild", fo81632121_1218_firstChild, undefined); |
| // undefined |
| o93 = null; |
| // undefined |
| fo81632121_1218_firstChild.returns.push(o95); |
| // 7224 |
| o94.appendChild = f81632121_478; |
| // undefined |
| fo81632121_1218_firstChild.returns.push(o95); |
| // 7226 |
| f81632121_478.returns.push(o95); |
| // undefined |
| fo81632121_1218_firstChild.returns.push(null); |
| // 7228 |
| o86.appendChild = f81632121_478; |
| // 7229 |
| f81632121_478.returns.push(o94); |
| // undefined |
| o94 = null; |
| // 7230 |
| o86.getAttribute = f81632121_506; |
| // 7231 |
| f81632121_506.returns.push(null); |
| // 7232 |
| o86.setAttribute = f81632121_575; |
| // 7233 |
| f81632121_575.returns.push(undefined); |
| // 7235 |
| f81632121_467.returns.push(1374851215953); |
| // 7239 |
| o93 = {}; |
| // 7240 |
| f81632121_474.returns.push(o93); |
| // 7242 |
| f81632121_478.returns.push(o93); |
| // undefined |
| o93 = null; |
| // 7245 |
| f81632121_467.returns.push(1374851215954); |
| // 7248 |
| f81632121_467.returns.push(1374851215954); |
| // 7251 |
| f81632121_467.returns.push(1374851215954); |
| // 7253 |
| o93 = {}; |
| // 7254 |
| f81632121_508.returns.push(o93); |
| // 7256 |
| o94 = {}; |
| // 7257 |
| f81632121_508.returns.push(o94); |
| // 7258 |
| o96 = {}; |
| // 7259 |
| o94.firstChild = o96; |
| // 7261 |
| o96.nodeType = 8; |
| // 7263 |
| o96.nodeValue = " <div class=\"ego_column\"><div class=\"ego_section\" id=\"u_0_46\"><div class=\"uiHeader uiHeaderTopBorder mbs uiSideHeader\"><div class=\"clearfix uiHeaderTop\"><div class=\"rfloat\"><h6 class=\"accessible_elem\"><a href=\"/campaign/landing.php?placement=egot&campaign_id=366925476690229&extra_1=auto\"><span class=\"adsCategoryTitleLink\">Sponsored</span></a></h6><a class=\"uiHeaderActions\" href=\"/ads/adboard/?type=normal\">See All</a></div><div><h6 class=\"uiHeaderTitle\" aria-hidden=\"true\"><a href=\"/campaign/landing.php?placement=egot&campaign_id=366925476690229&extra_1=auto\"><span class=\"adsCategoryTitleLink\">Sponsored</span></a><a href=\"/campaign/landing.php?placement=egot&campaign_id=366925476690229&extra_1=auto\"><i class=\"mls adsCategoryIcon img sp_3yt8ar sx_06ab6d\"></i></a></h6></div></div></div><div class=\"ego_unit_container\"><div class=\"ego_unit\" data-ego-fbid=\"6011858202131\"><div class=\"-cx-PUBLIC-fbAdUnit__root\" data-ad=\"{"adid":6011858202131,"segment":"market"}\" id=\"6011858202131-id_51f2904c3d16d9b66803454\"><div class=\"-cx-PRIVATE-fbEmu__root -cx-PRIVATE-fbEmuEgo__unit\"><div class=\"uiSelector inlineBlock emu_x emuEventfad_hide -cx-PUBLIC-fbEmu__link uiSelectorRight\"><div class=\"uiToggle wrap\"><a class=\"uiSelectorButton uiCloseButton uiCloseButtonSmall\" href=\"#\" role=\"button\" title=\"About Facebook Ads\" rel=\"toggle\" ajaxify=\"/ajax/emu/end.php?eid=AQKeJQRxXzUhxhbYGaYgYDYhc3hQ30O_gQTSLytMewtlgvobJQH5MuaQJp4_fbqlG5W0Tung-9ZDLu-ztha3uNKKYrj85XEwPZJe-GO5gSUpcbVv7zETufLCcsIh674v1O83EtmtVxQup-\\-\\XRKCr8pDY6xXlObOVvP0yoR1v_0IsC_JNt4xvJexprbqQTr6TjUMjQqtWJuu_sR7XhSWsgEH77as7rCQK0ip1DLeFa5567J46KjYuY2hQDqbzl6Mn7OvS3aEBGU4eBGAY58-SYeJ3W9bKPJYqCx9Bkwjmr9B41iWSaz5Ki6YhderlMBA9Dfg8s-1uj70k8nthPqKnwV1w5lP8Y0wOJzgBx5REj425joGQHMG-M_8PpRRjctnVo0LFsHvpUwBFLO7MVy5Og1KQZjJbE40w4N-x7jjVGgZq3mmVr1m7FmevdJl8nrJTDv_61sG9Uw4skERHbsU3NMtwgzADe1akrFYllUuYsbHMLFGwEqD3-TfoHOV94O58Hq_kOSziDKTYYmlFw6eNCJjlthWbCrTLAH9HcCNJdJxdyWr9uUWB8uubJXGdnSjD7HJ3aApft4dhnW_AcVsiT0FvlWqla1mQYmmFc0CWULTtH-H1ePnhErOS6wUI-7bUXTGD8Npu2iUdkxK8l13OeUzhoqIw0cZweNRNFpjsV-wt043C0sr5JcldR5ptLS3Ka5X8VOnkoeczYv17rPjOgAzVJvV-RTTZA72Ll0zSKYma-N3NUhZ9x5EZzTYtbw8f9maqVWx7S1WU1AD8h7NcQq0Cl7orO5GHXP_1n1jVkp-KV9rALdyuek_JD5B8TTULG_AZrDe4S1HIPG1FE8wnH8-Q9Iy6s5zKVH2X-xlJNRqaIxNyaGLj0WH9PYYFaQU8YnakM4_r-3nFy6ki7-cEoDZK3qcw7PJCp9w-iSgN9hVe2WFESd0t8pfpI0WTc6lf5ErS0yfqFsj4LPsnQJjr8Ugn3-pX4_51v7LvRfVqnrwBcEJv_da-58RdvJw-hKx6uClKEfzl6Zm4phRloZSqpxb-Zq4UeR34E6ATI9aQYs46sfH5-CilrxxE-gHzA4WxTNGFXv0Nabb01JJVZx0qbuEfSuE-\\-\\_IiNWgOoF1vr9SiJfYXVQ9ofCEvj6viyzWx1jxp_a1PpUBVzpBMC9ZvXfPuxnrBqF7iQJeJGHETu7XrTrkW7RhAZSTWpJKN2ufGQjeAlCyZeKOaJkwtp7y4dC8M4KjVLz7L-1FenhrLC0_ERM1QoTmgAYBKV2sPS6tCjdkCK4PYQo76-U4OdzM_kG2s&f=0&ui=6011858202131-id_51f2904c3d16d9b66803454&en=fad_hide&ed=true&a=1&__tn__=v\" aria-haspopup=\"1\"></a></div></div><div class=\"title\"><script type=\"text/javascript\">try {\n ((JSBNG_Record.scriptLoad)((\"function e14338d925f9bf9db3a9f83cbec4d7eb15257906b(event) {\\u000a var meta = document.getElementById(\\\"meta_referrer\\\");\\u000a meta.content = \\\"origin\\\";\\u000a setTimeout(function() {\\u000a meta.content = \\\"default\\\";\\u000a }, 100);\\u000a var attribute = \\\"href\\\";\\u000a var ms = this.getAttribute(attribute).match(/([\\\\\\\\?|&]f=)([^&]*)/);\\u000a if (ms) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]f=[^&]*/, (ms[1] + 0)));\\u000a }\\u000a;\\u000a;\\u000a var attribute = \\\"href\\\";\\u000a var sig = this.getAttribute(attribute).match(/([\\\\\\\\?|&]sig=)([^&]*)/);\\u000a if (sig) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]sig=[^&]*/, (sig[1] + ((Math.floor((Math.random() * 65535)) + 65536)))));\\u000a }\\u000a;\\u000a;\\u000a};\"), (\"s97dfd0dd969505e65a9d012deafb18c1c93fe214\")));\n ((window.top.JSBNG_Record.callerJS) = (true));\n function e14338d925f9bf9db3a9f83cbec4d7eb15257906b(JSBNG__event) {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s97dfd0dd969505e65a9d012deafb18c1c93fe214_0\"), (s97dfd0dd969505e65a9d012deafb18c1c93fe214_0_instance), (this), (arguments)))\n };\n (null);\n var meta = (((JSBNG_Record.get)(JSBNG__document, (\"getElementById\")))[(\"getElementById\")])(\"meta_referrer\");\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"origin\"));\n JSBNG__setTimeout(((function() {\n var s97dfd0dd969505e65a9d012deafb18c1c93fe214_1_instance;\n ((s97dfd0dd969505e65a9d012deafb18c1c93fe214_1_instance) = ((JSBNG_Record.eventInstance)((\"s97dfd0dd969505e65a9d012deafb18c1c93fe214_1\"))));\n return ((JSBNG_Record.markFunction)((function() {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s97dfd0dd969505e65a9d012deafb18c1c93fe214_1\"), (s97dfd0dd969505e65a9d012deafb18c1c93fe214_1_instance), (this), (arguments)))\n };\n (null);\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"default\"));\n })));\n })()), 100);\n var attribute = \"href\";\n var ms = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]f=)([^&]*)/);\n if (ms) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]f=[^&]*/, ((((JSBNG_Record.get)(ms, 1))[1]) + 0)));\n }\n ;\n ;\n var attribute = \"href\";\n var sig = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]sig=)([^&]*)/);\n if (sig) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]sig=[^&]*/, ((((JSBNG_Record.get)(sig, 1))[1]) + (((((JSBNG_Record.get)(Math, (\"floor\")))[(\"floor\")])(((((JSBNG_Record.get)(Math, (\"JSBNG__random\")))[(\"JSBNG__random\")])() * 65535)) + 65536)))));\n }\n ;\n ;\n };\n var s97dfd0dd969505e65a9d012deafb18c1c93fe214_0_instance;\n ((s97dfd0dd969505e65a9d012deafb18c1c93fe214_0_instance) = ((JSBNG_Record.eventInstance)((\"s97dfd0dd969505e65a9d012deafb18c1c93fe214_0\"))));\n ((JSBNG_Record.markFunction)((e14338d925f9bf9db3a9f83cbec4d7eb15257906b)));\n} finally {\n ((window.top.JSBNG_Record.callerJS) = (false));\n ((window.top.JSBNG_Record.flushDeferredEvents)());\n};</script><a class=\"forceLTR emuEvent1 -cx-PUBLIC-fbEmu__link\" href=\"/ajax/emu/end.php?eid=AQKeJQRxXzUhxhbYGaYgYDYhc3hQ30O_gQTSLytMewtlgvobJQH5MuaQJp4_fbqlG5W0Tung-9ZDLu-ztha3uNKKYrj85XEwPZJe-GO5gSUpcbVv7zETufLCcsIh674v1O83EtmtVxQup-\\-\\XRKCr8pDY6xXlObOVvP0yoR1v_0IsC_JNt4xvJexprbqQTr6TjUMjQqtWJuu_sR7XhSWsgEH77as7rCQK0ip1DLeFa5567J46KjYuY2hQDqbzl6Mn7OvS3aEBGU4eBGAY58-SYeJ3W9bKPJYqCx9Bkwjmr9B41iWSaz5Ki6YhderlMBA9Dfg8s-1uj70k8nthPqKnwV1w5lP8Y0wOJzgBx5REj425joGQHMG-M_8PpRRjctnVo0LFsHvpUwBFLO7MVy5Og1KQZjJbE40w4N-x7jjVGgZq3mmVr1m7FmevdJl8nrJTDv_61sG9Uw4skERHbsU3NMtwgzADe1akrFYllUuYsbHMLFGwEqD3-TfoHOV94O58Hq_kOSziDKTYYmlFw6eNCJjlthWbCrTLAH9HcCNJdJxdyWr9uUWB8uubJXGdnSjD7HJ3aApft4dhnW_AcVsiT0FvlWqla1mQYmmFc0CWULTtH-H1ePnhErOS6wUI-7bUXTGD8Npu2iUdkxK8l13OeUzhoqIw0cZweNRNFpjsV-wt043C0sr5JcldR5ptLS3Ka5X8VOnkoeczYv17rPjOgAzVJvV-RTTZA72Ll0zSKYma-N3NUhZ9x5EZzTYtbw8f9maqVWx7S1WU1AD8h7NcQq0Cl7orO5GHXP_1n1jVkp-KV9rALdyuek_JD5B8TTULG_AZrDe4S1HIPG1FE8wnH8-Q9Iy6s5zKVH2X-xlJNRqaIxNyaGLj0WH9PYYFaQU8YnakM4_r-3nFy6ki7-cEoDZK3qcw7PJCp9w-iSgN9hVe2WFESd0t8pfpI0WTc6lf5ErS0yfqFsj4LPsnQJjr8Ugn3-pX4_51v7LvRfVqnrwBcEJv_da-58RdvJw-hKx6uClKEfzl6Zm4phRloZSqpxb-Zq4UeR34E6ATI9aQYs46sfH5-CilrxxE-gHzA4WxTNGFXv0Nabb01JJVZx0qbuEfSuE-\\-\\_IiNWgOoF1vr9SiJfYXVQ9ofCEvj6viyzWx1jxp_a1PpUBVzpBMC9ZvXfPuxnrBqF7iQJeJGHETu7XrTrkW7RhAZSTWpJKN2ufGQjeAlCyZeKOaJkwtp7y4dC8M4KjVLz7L-1FenhrLC0_ERM1QoTmgAYBKV2sPS6tCjdkCK4PYQo76-U4OdzM_kG2s&f=1&ui=6011858202131-id_51f2904c3d16d9b66803454&en=1&a=0&sig=71261&__tn__=wv\" onmousedown=\"return e14338d925f9bf9db3a9f83cbec4d7eb15257906b.call(this, event);\">S.V.S. Fine Jewelry</a></div><div class=\"clearfix image_body_block\"><script type=\"text/javascript\">try {\n ((JSBNG_Record.scriptLoad)((\"function e99ef0c69a11cb199218318ed6a88927763ad1717(event) {\\u000a var meta = document.getElementById(\\\"meta_referrer\\\");\\u000a meta.content = \\\"origin\\\";\\u000a setTimeout(function() {\\u000a meta.content = \\\"default\\\";\\u000a }, 100);\\u000a var attribute = \\\"href\\\";\\u000a var ms = this.getAttribute(attribute).match(/([\\\\\\\\?|&]f=)([^&]*)/);\\u000a if (ms) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]f=[^&]*/, (ms[1] + 0)));\\u000a }\\u000a;\\u000a;\\u000a var attribute = \\\"href\\\";\\u000a var sig = this.getAttribute(attribute).match(/([\\\\\\\\?|&]sig=)([^&]*)/);\\u000a if (sig) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]sig=[^&]*/, (sig[1] + ((Math.floor((Math.random() * 65535)) + 65536)))));\\u000a }\\u000a;\\u000a;\\u000a};\"), (\"sd68fd4a2dfa62f16eb4f1ee948762cde8f89efd2\")));\n ((window.top.JSBNG_Record.callerJS) = (true));\n function e99ef0c69a11cb199218318ed6a88927763ad1717(JSBNG__event) {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"sd68fd4a2dfa62f16eb4f1ee948762cde8f89efd2_0\"), (sd68fd4a2dfa62f16eb4f1ee948762cde8f89efd2_0_instance), (this), (arguments)))\n };\n (null);\n var meta = (((JSBNG_Record.get)(JSBNG__document, (\"getElementById\")))[(\"getElementById\")])(\"meta_referrer\");\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"origin\"));\n JSBNG__setTimeout(((function() {\n var sd68fd4a2dfa62f16eb4f1ee948762cde8f89efd2_1_instance;\n ((sd68fd4a2dfa62f16eb4f1ee948762cde8f89efd2_1_instance) = ((JSBNG_Record.eventInstance)((\"sd68fd4a2dfa62f16eb4f1ee948762cde8f89efd2_1\"))));\n return ((JSBNG_Record.markFunction)((function() {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"sd68fd4a2dfa62f16eb4f1ee948762cde8f89efd2_1\"), (sd68fd4a2dfa62f16eb4f1ee948762cde8f89efd2_1_instance), (this), (arguments)))\n };\n (null);\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"default\"));\n })));\n })()), 100);\n var attribute = \"href\";\n var ms = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]f=)([^&]*)/);\n if (ms) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]f=[^&]*/, ((((JSBNG_Record.get)(ms, 1))[1]) + 0)));\n }\n ;\n ;\n var attribute = \"href\";\n var sig = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]sig=)([^&]*)/);\n if (sig) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]sig=[^&]*/, ((((JSBNG_Record.get)(sig, 1))[1]) + (((((JSBNG_Record.get)(Math, (\"floor\")))[(\"floor\")])(((((JSBNG_Record.get)(Math, (\"JSBNG__random\")))[(\"JSBNG__random\")])() * 65535)) + 65536)))));\n }\n ;\n ;\n };\n var sd68fd4a2dfa62f16eb4f1ee948762cde8f89efd2_0_instance;\n ((sd68fd4a2dfa62f16eb4f1ee948762cde8f89efd2_0_instance) = ((JSBNG_Record.eventInstance)((\"sd68fd4a2dfa62f16eb4f1ee948762cde8f89efd2_0\"))));\n ((JSBNG_Record.markFunction)((e99ef0c69a11cb199218318ed6a88927763ad1717)));\n} finally {\n ((window.top.JSBNG_Record.callerJS) = (false));\n ((window.top.JSBNG_Record.flushDeferredEvents)());\n};</script><a class=\"forceLTR emuEvent1 -cx-PUBLIC-fbEmu__link image fbEmuImage -cx-PRIVATE-uiImageBlock__image -cx-PRIVATE-uiImageBlock__mediumimage lfloat\" tabindex=\"-1\" href=\"/ajax/emu/end.php?eid=AQKeJQRxXzUhxhbYGaYgYDYhc3hQ30O_gQTSLytMewtlgvobJQH5MuaQJp4_fbqlG5W0Tung-9ZDLu-ztha3uNKKYrj85XEwPZJe-GO5gSUpcbVv7zETufLCcsIh674v1O83EtmtVxQup-\\-\\XRKCr8pDY6xXlObOVvP0yoR1v_0IsC_JNt4xvJexprbqQTr6TjUMjQqtWJuu_sR7XhSWsgEH77as7rCQK0ip1DLeFa5567J46KjYuY2hQDqbzl6Mn7OvS3aEBGU4eBGAY58-SYeJ3W9bKPJYqCx9Bkwjmr9B41iWSaz5Ki6YhderlMBA9Dfg8s-1uj70k8nthPqKnwV1w5lP8Y0wOJzgBx5REj425joGQHMG-M_8PpRRjctnVo0LFsHvpUwBFLO7MVy5Og1KQZjJbE40w4N-x7jjVGgZq3mmVr1m7FmevdJl8nrJTDv_61sG9Uw4skERHbsU3NMtwgzADe1akrFYllUuYsbHMLFGwEqD3-TfoHOV94O58Hq_kOSziDKTYYmlFw6eNCJjlthWbCrTLAH9HcCNJdJxdyWr9uUWB8uubJXGdnSjD7HJ3aApft4dhnW_AcVsiT0FvlWqla1mQYmmFc0CWULTtH-H1ePnhErOS6wUI-7bUXTGD8Npu2iUdkxK8l13OeUzhoqIw0cZweNRNFpjsV-wt043C0sr5JcldR5ptLS3Ka5X8VOnkoeczYv17rPjOgAzVJvV-RTTZA72Ll0zSKYma-N3NUhZ9x5EZzTYtbw8f9maqVWx7S1WU1AD8h7NcQq0Cl7orO5GHXP_1n1jVkp-KV9rALdyuek_JD5B8TTULG_AZrDe4S1HIPG1FE8wnH8-Q9Iy6s5zKVH2X-xlJNRqaIxNyaGLj0WH9PYYFaQU8YnakM4_r-3nFy6ki7-cEoDZK3qcw7PJCp9w-iSgN9hVe2WFESd0t8pfpI0WTc6lf5ErS0yfqFsj4LPsnQJjr8Ugn3-pX4_51v7LvRfVqnrwBcEJv_da-58RdvJw-hKx6uClKEfzl6Zm4phRloZSqpxb-Zq4UeR34E6ATI9aQYs46sfH5-CilrxxE-gHzA4WxTNGFXv0Nabb01JJVZx0qbuEfSuE-\\-\\_IiNWgOoF1vr9SiJfYXVQ9ofCEvj6viyzWx1jxp_a1PpUBVzpBMC9ZvXfPuxnrBqF7iQJeJGHETu7XrTrkW7RhAZSTWpJKN2ufGQjeAlCyZeKOaJkwtp7y4dC8M4KjVLz7L-1FenhrLC0_ERM1QoTmgAYBKV2sPS6tCjdkCK4PYQo76-U4OdzM_kG2s&f=1&ui=6011858202131-id_51f2904c3d16d9b66803454&en=1&a=0&sig=125679&__tn__=ywv\" onmousedown=\"return e99ef0c69a11cb199218318ed6a88927763ad1717.call(this, event);\" aria-hidden=\"true\"><img class=\"img\" src=\"http://jsbngssl.creative-iad.xx.fbcdn.net/hads-prn1/s110x80/735357_6011669043531_889011985_n.png\" alt=\"\" /></a><div class=\"-cx-PRIVATE-uiFlexibleBlock__flexiblecontent\"><div class=\"body\"><script type=\"text/javascript\">try {\n ((JSBNG_Record.scriptLoad)((\"function eb9d86d457b698354ef73e187d68041c13a6747e5(event) {\\u000a var meta = document.getElementById(\\\"meta_referrer\\\");\\u000a meta.content = \\\"origin\\\";\\u000a setTimeout(function() {\\u000a meta.content = \\\"default\\\";\\u000a }, 100);\\u000a var attribute = \\\"href\\\";\\u000a var ms = this.getAttribute(attribute).match(/([\\\\\\\\?|&]f=)([^&]*)/);\\u000a if (ms) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]f=[^&]*/, (ms[1] + 0)));\\u000a }\\u000a;\\u000a;\\u000a var attribute = \\\"href\\\";\\u000a var sig = this.getAttribute(attribute).match(/([\\\\\\\\?|&]sig=)([^&]*)/);\\u000a if (sig) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]sig=[^&]*/, (sig[1] + ((Math.floor((Math.random() * 65535)) + 65536)))));\\u000a }\\u000a;\\u000a;\\u000a};\"), (\"sc5e6c333b267f15e0561ff6cf990d3adc7940e7f\")));\n ((window.top.JSBNG_Record.callerJS) = (true));\n function eb9d86d457b698354ef73e187d68041c13a6747e5(JSBNG__event) {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"sc5e6c333b267f15e0561ff6cf990d3adc7940e7f_0\"), (sc5e6c333b267f15e0561ff6cf990d3adc7940e7f_0_instance), (this), (arguments)))\n };\n (null);\n var meta = (((JSBNG_Record.get)(JSBNG__document, (\"getElementById\")))[(\"getElementById\")])(\"meta_referrer\");\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"origin\"));\n JSBNG__setTimeout(((function() {\n var sc5e6c333b267f15e0561ff6cf990d3adc7940e7f_1_instance;\n ((sc5e6c333b267f15e0561ff6cf990d3adc7940e7f_1_instance) = ((JSBNG_Record.eventInstance)((\"sc5e6c333b267f15e0561ff6cf990d3adc7940e7f_1\"))));\n return ((JSBNG_Record.markFunction)((function() {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"sc5e6c333b267f15e0561ff6cf990d3adc7940e7f_1\"), (sc5e6c333b267f15e0561ff6cf990d3adc7940e7f_1_instance), (this), (arguments)))\n };\n (null);\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"default\"));\n })));\n })()), 100);\n var attribute = \"href\";\n var ms = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]f=)([^&]*)/);\n if (ms) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]f=[^&]*/, ((((JSBNG_Record.get)(ms, 1))[1]) + 0)));\n }\n ;\n ;\n var attribute = \"href\";\n var sig = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]sig=)([^&]*)/);\n if (sig) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]sig=[^&]*/, ((((JSBNG_Record.get)(sig, 1))[1]) + (((((JSBNG_Record.get)(Math, (\"floor\")))[(\"floor\")])(((((JSBNG_Record.get)(Math, (\"JSBNG__random\")))[(\"JSBNG__random\")])() * 65535)) + 65536)))));\n }\n ;\n ;\n };\n var sc5e6c333b267f15e0561ff6cf990d3adc7940e7f_0_instance;\n ((sc5e6c333b267f15e0561ff6cf990d3adc7940e7f_0_instance) = ((JSBNG_Record.eventInstance)((\"sc5e6c333b267f15e0561ff6cf990d3adc7940e7f_0\"))));\n ((JSBNG_Record.markFunction)((eb9d86d457b698354ef73e187d68041c13a6747e5)));\n} finally {\n ((window.top.JSBNG_Record.callerJS) = (false));\n ((window.top.JSBNG_Record.flushDeferredEvents)());\n};</script><a class=\"forceLTR emuEvent1 -cx-PUBLIC-fbEmu__link\" href=\"/ajax/emu/end.php?eid=AQKeJQRxXzUhxhbYGaYgYDYhc3hQ30O_gQTSLytMewtlgvobJQH5MuaQJp4_fbqlG5W0Tung-9ZDLu-ztha3uNKKYrj85XEwPZJe-GO5gSUpcbVv7zETufLCcsIh674v1O83EtmtVxQup-\\-\\XRKCr8pDY6xXlObOVvP0yoR1v_0IsC_JNt4xvJexprbqQTr6TjUMjQqtWJuu_sR7XhSWsgEH77as7rCQK0ip1DLeFa5567J46KjYuY2hQDqbzl6Mn7OvS3aEBGU4eBGAY58-SYeJ3W9bKPJYqCx9Bkwjmr9B41iWSaz5Ki6YhderlMBA9Dfg8s-1uj70k8nthPqKnwV1w5lP8Y0wOJzgBx5REj425joGQHMG-M_8PpRRjctnVo0LFsHvpUwBFLO7MVy5Og1KQZjJbE40w4N-x7jjVGgZq3mmVr1m7FmevdJl8nrJTDv_61sG9Uw4skERHbsU3NMtwgzADe1akrFYllUuYsbHMLFGwEqD3-TfoHOV94O58Hq_kOSziDKTYYmlFw6eNCJjlthWbCrTLAH9HcCNJdJxdyWr9uUWB8uubJXGdnSjD7HJ3aApft4dhnW_AcVsiT0FvlWqla1mQYmmFc0CWULTtH-H1ePnhErOS6wUI-7bUXTGD8Npu2iUdkxK8l13OeUzhoqIw0cZweNRNFpjsV-wt043C0sr5JcldR5ptLS3Ka5X8VOnkoeczYv17rPjOgAzVJvV-RTTZA72Ll0zSKYma-N3NUhZ9x5EZzTYtbw8f9maqVWx7S1WU1AD8h7NcQq0Cl7orO5GHXP_1n1jVkp-KV9rALdyuek_JD5B8TTULG_AZrDe4S1HIPG1FE8wnH8-Q9Iy6s5zKVH2X-xlJNRqaIxNyaGLj0WH9PYYFaQU8YnakM4_r-3nFy6ki7-cEoDZK3qcw7PJCp9w-iSgN9hVe2WFESd0t8pfpI0WTc6lf5ErS0yfqFsj4LPsnQJjr8Ugn3-pX4_51v7LvRfVqnrwBcEJv_da-58RdvJw-hKx6uClKEfzl6Zm4phRloZSqpxb-Zq4UeR34E6ATI9aQYs46sfH5-CilrxxE-gHzA4WxTNGFXv0Nabb01JJVZx0qbuEfSuE-\\-\\_IiNWgOoF1vr9SiJfYXVQ9ofCEvj6viyzWx1jxp_a1PpUBVzpBMC9ZvXfPuxnrBqF7iQJeJGHETu7XrTrkW7RhAZSTWpJKN2ufGQjeAlCyZeKOaJkwtp7y4dC8M4KjVLz7L-1FenhrLC0_ERM1QoTmgAYBKV2sPS6tCjdkCK4PYQo76-U4OdzM_kG2s&f=1&ui=6011858202131-id_51f2904c3d16d9b66803454&en=1&a=0&sig=65690&__tn__=xywv\" onmousedown=\"return eb9d86d457b698354ef73e187d68041c13a6747e5.call(this, event);\">At SVS Fine Jewelry we have been honored to be selected as an IJO Master Jeweler. As a...</a></div></div></div><div class=\"inline\"><div class=\"action\"><a class=\"uiIconText emuEventfad_fan -cx-PUBLIC-fbEmu__link\" href=\"#\" style=\"padding-left: 17px;\" rel=\"async-post\" ajaxify=\"/ajax/emu/end.php?eid=AQKeJQRxXzUhxhbYGaYgYDYhc3hQ30O_gQTSLytMewtlgvobJQH5MuaQJp4_fbqlG5W0Tung-9ZDLu-ztha3uNKKYrj85XEwPZJe-GO5gSUpcbVv7zETufLCcsIh674v1O83EtmtVxQup-\\-\\XRKCr8pDY6xXlObOVvP0yoR1v_0IsC_JNt4xvJexprbqQTr6TjUMjQqtWJuu_sR7XhSWsgEH77as7rCQK0ip1DLeFa5567J46KjYuY2hQDqbzl6Mn7OvS3aEBGU4eBGAY58-SYeJ3W9bKPJYqCx9Bkwjmr9B41iWSaz5Ki6YhderlMBA9Dfg8s-1uj70k8nthPqKnwV1w5lP8Y0wOJzgBx5REj425joGQHMG-M_8PpRRjctnVo0LFsHvpUwBFLO7MVy5Og1KQZjJbE40w4N-x7jjVGgZq3mmVr1m7FmevdJl8nrJTDv_61sG9Uw4skERHbsU3NMtwgzADe1akrFYllUuYsbHMLFGwEqD3-TfoHOV94O58Hq_kOSziDKTYYmlFw6eNCJjlthWbCrTLAH9HcCNJdJxdyWr9uUWB8uubJXGdnSjD7HJ3aApft4dhnW_AcVsiT0FvlWqla1mQYmmFc0CWULTtH-H1ePnhErOS6wUI-7bUXTGD8Npu2iUdkxK8l13OeUzhoqIw0cZweNRNFpjsV-wt043C0sr5JcldR5ptLS3Ka5X8VOnkoeczYv17rPjOgAzVJvV-RTTZA72Ll0zSKYma-N3NUhZ9x5EZzTYtbw8f9maqVWx7S1WU1AD8h7NcQq0Cl7orO5GHXP_1n1jVkp-KV9rALdyuek_JD5B8TTULG_AZrDe4S1HIPG1FE8wnH8-Q9Iy6s5zKVH2X-xlJNRqaIxNyaGLj0WH9PYYFaQU8YnakM4_r-3nFy6ki7-cEoDZK3qcw7PJCp9w-iSgN9hVe2WFESd0t8pfpI0WTc6lf5ErS0yfqFsj4LPsnQJjr8Ugn3-pX4_51v7LvRfVqnrwBcEJv_da-58RdvJw-hKx6uClKEfzl6Zm4phRloZSqpxb-Zq4UeR34E6ATI9aQYs46sfH5-CilrxxE-gHzA4WxTNGFXv0Nabb01JJVZx0qbuEfSuE-\\-\\_IiNWgOoF1vr9SiJfYXVQ9ofCEvj6viyzWx1jxp_a1PpUBVzpBMC9ZvXfPuxnrBqF7iQJeJGHETu7XrTrkW7RhAZSTWpJKN2ufGQjeAlCyZeKOaJkwtp7y4dC8M4KjVLz7L-1FenhrLC0_ERM1QoTmgAYBKV2sPS6tCjdkCK4PYQo76-U4OdzM_kG2s&f=0&ui=6011858202131-id_51f2904c3d16d9b66803454&en=fad_fan&ed=406124561390&a=1&__tn__=wv\" role=\"button\"><i class=\"img sp_4p6kmz sx_bc56c4\" style=\"top: 1px;\"></i>Like</a> · <span class=\"fbEmuContext\">2,197 people like <script type=\"text/javascript\">try {\n ((JSBNG_Record.scriptLoad)((\"function e61f9797e9a470a89724555bc0d8ffb0093c5ba67(event) {\\u000a var meta = document.getElementById(\\\"meta_referrer\\\");\\u000a meta.content = \\\"origin\\\";\\u000a setTimeout(function() {\\u000a meta.content = \\\"default\\\";\\u000a }, 100);\\u000a var attribute = \\\"href\\\";\\u000a var ms = this.getAttribute(attribute).match(/([\\\\\\\\?|&]f=)([^&]*)/);\\u000a if (ms) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]f=[^&]*/, (ms[1] + 0)));\\u000a }\\u000a;\\u000a;\\u000a var attribute = \\\"href\\\";\\u000a var sig = this.getAttribute(attribute).match(/([\\\\\\\\?|&]sig=)([^&]*)/);\\u000a if (sig) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]sig=[^&]*/, (sig[1] + ((Math.floor((Math.random() * 65535)) + 65536)))));\\u000a }\\u000a;\\u000a;\\u000a};\"), (\"s3d260c2ec16dce7a2154b6ef4b44776dd6330abb\")));\n ((window.top.JSBNG_Record.callerJS) = (true));\n function e61f9797e9a470a89724555bc0d8ffb0093c5ba67(JSBNG__event) {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s3d260c2ec16dce7a2154b6ef4b44776dd6330abb_0\"), (s3d260c2ec16dce7a2154b6ef4b44776dd6330abb_0_instance), (this), (arguments)))\n };\n (null);\n var meta = (((JSBNG_Record.get)(JSBNG__document, (\"getElementById\")))[(\"getElementById\")])(\"meta_referrer\");\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"origin\"));\n JSBNG__setTimeout(((function() {\n var s3d260c2ec16dce7a2154b6ef4b44776dd6330abb_1_instance;\n ((s3d260c2ec16dce7a2154b6ef4b44776dd6330abb_1_instance) = ((JSBNG_Record.eventInstance)((\"s3d260c2ec16dce7a2154b6ef4b44776dd6330abb_1\"))));\n return ((JSBNG_Record.markFunction)((function() {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s3d260c2ec16dce7a2154b6ef4b44776dd6330abb_1\"), (s3d260c2ec16dce7a2154b6ef4b44776dd6330abb_1_instance), (this), (arguments)))\n };\n (null);\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"default\"));\n })));\n })()), 100);\n var attribute = \"href\";\n var ms = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]f=)([^&]*)/);\n if (ms) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]f=[^&]*/, ((((JSBNG_Record.get)(ms, 1))[1]) + 0)));\n }\n ;\n ;\n var attribute = \"href\";\n var sig = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]sig=)([^&]*)/);\n if (sig) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]sig=[^&]*/, ((((JSBNG_Record.get)(sig, 1))[1]) + (((((JSBNG_Record.get)(Math, (\"floor\")))[(\"floor\")])(((((JSBNG_Record.get)(Math, (\"JSBNG__random\")))[(\"JSBNG__random\")])() * 65535)) + 65536)))));\n }\n ;\n ;\n };\n var s3d260c2ec16dce7a2154b6ef4b44776dd6330abb_0_instance;\n ((s3d260c2ec16dce7a2154b6ef4b44776dd6330abb_0_instance) = ((JSBNG_Record.eventInstance)((\"s3d260c2ec16dce7a2154b6ef4b44776dd6330abb_0\"))));\n ((JSBNG_Record.markFunction)((e61f9797e9a470a89724555bc0d8ffb0093c5ba67)));\n} finally {\n ((window.top.JSBNG_Record.callerJS) = (false));\n ((window.top.JSBNG_Record.flushDeferredEvents)());\n};</script><a class=\"emuEventfad_pageclick -cx-PUBLIC-fbEmu__link\" href=\"/ajax/emu/end.php?eid=AQKeJQRxXzUhxhbYGaYgYDYhc3hQ30O_gQTSLytMewtlgvobJQH5MuaQJp4_fbqlG5W0Tung-9ZDLu-ztha3uNKKYrj85XEwPZJe-GO5gSUpcbVv7zETufLCcsIh674v1O83EtmtVxQup-\\-\\XRKCr8pDY6xXlObOVvP0yoR1v_0IsC_JNt4xvJexprbqQTr6TjUMjQqtWJuu_sR7XhSWsgEH77as7rCQK0ip1DLeFa5567J46KjYuY2hQDqbzl6Mn7OvS3aEBGU4eBGAY58-SYeJ3W9bKPJYqCx9Bkwjmr9B41iWSaz5Ki6YhderlMBA9Dfg8s-1uj70k8nthPqKnwV1w5lP8Y0wOJzgBx5REj425joGQHMG-M_8PpRRjctnVo0LFsHvpUwBFLO7MVy5Og1KQZjJbE40w4N-x7jjVGgZq3mmVr1m7FmevdJl8nrJTDv_61sG9Uw4skERHbsU3NMtwgzADe1akrFYllUuYsbHMLFGwEqD3-TfoHOV94O58Hq_kOSziDKTYYmlFw6eNCJjlthWbCrTLAH9HcCNJdJxdyWr9uUWB8uubJXGdnSjD7HJ3aApft4dhnW_AcVsiT0FvlWqla1mQYmmFc0CWULTtH-H1ePnhErOS6wUI-7bUXTGD8Npu2iUdkxK8l13OeUzhoqIw0cZweNRNFpjsV-wt043C0sr5JcldR5ptLS3Ka5X8VOnkoeczYv17rPjOgAzVJvV-RTTZA72Ll0zSKYma-N3NUhZ9x5EZzTYtbw8f9maqVWx7S1WU1AD8h7NcQq0Cl7orO5GHXP_1n1jVkp-KV9rALdyuek_JD5B8TTULG_AZrDe4S1HIPG1FE8wnH8-Q9Iy6s5zKVH2X-xlJNRqaIxNyaGLj0WH9PYYFaQU8YnakM4_r-3nFy6ki7-cEoDZK3qcw7PJCp9w-iSgN9hVe2WFESd0t8pfpI0WTc6lf5ErS0yfqFsj4LPsnQJjr8Ugn3-pX4_51v7LvRfVqnrwBcEJv_da-58RdvJw-hKx6uClKEfzl6Zm4phRloZSqpxb-Zq4UeR34E6ATI9aQYs46sfH5-CilrxxE-gHzA4WxTNGFXv0Nabb01JJVZx0qbuEfSuE-\\-\\_IiNWgOoF1vr9SiJfYXVQ9ofCEvj6viyzWx1jxp_a1PpUBVzpBMC9ZvXfPuxnrBqF7iQJeJGHETu7XrTrkW7RhAZSTWpJKN2ufGQjeAlCyZeKOaJkwtp7y4dC8M4KjVLz7L-1FenhrLC0_ERM1QoTmgAYBKV2sPS6tCjdkCK4PYQo76-U4OdzM_kG2s&f=1&ui=6011858202131-id_51f2904c3d16d9b66803454&en=fad_pageclick&ed=406124561390&a=0&mac=AQKoHjJls9-pk6xe&sig=112192&__tn__=zwv\" onmousedown=\"return e61f9797e9a470a89724555bc0d8ffb0093c5ba67.call(this, event);\">S.V.S. Fine Jewelry</a>.</span></div></div></div></div></div><div class=\"ego_unit\" data-ego-fbid=\"6007957621675\"><div class=\"-cx-PUBLIC-fbAdUnit__root\" data-ad=\"{"adid":6007957621675,"segment":"market"}\" id=\"6007957621675-id_51f2904c3d2240385237667\"><div class=\"-cx-PRIVATE-fbEmu__root -cx-PRIVATE-fbEmuEgo__unit\"><div class=\"uiSelector inlineBlock emu_x emuEventfad_hide -cx-PUBLIC-fbEmu__link uiSelectorRight\"><div class=\"uiToggle wrap\"><a class=\"uiSelectorButton uiCloseButton uiCloseButtonSmall\" href=\"#\" role=\"button\" title=\"About Facebook Ads\" rel=\"toggle\" ajaxify=\"/ajax/emu/end.php?eid=AQLVAEr0JNIXHSlB-t1lt9Eixl6c4gkbuzVzVjL2frflXuYtFtrkvniUnm1Ku41tGCz7o3_vAgaHc_cm0KSk80Qn5KeG7SBu4gMjRWo6WTgHRYBuM5oy8HMWqE2Pc679lHqnSR_shRQD-voE8av-VW6uhejuFIKsYxQla8mJLMIcQjP3YwlX6FBEpi3IVDI7GysDpA3w55At5HB5Z4onn49-VAvhzAroPkfTP4ed7wRi6oKUIM0AwqhWvC3FrpzbYJQIbYePYuwGg0CAbWsYVqmHHIDp2LDaZf1MyEHBSB4edMf2GSbcR0dckr9I7r5wjuhr0MNu6x1Sc-gKyyTNy7OlvCvkzo0KCx0W1IEMqrzTB5bUX8tpAHpI2ai-deBrz8z6wERn75PMsjuCU9Y0J1OON89nEwJfV7EEAXRKUUuTa_hVHUV7ivmvG6mIgiU0MnkXdt5V_Yq68vbPMu305u-1HqvHNJG0NAcM2fCCIDcFeYVMgDQEr2FmsPA4pEM_4wzNUrZ0zXILjZEsaEiCfsHAdLK4-vtwErPb4oMyBgM-mw7Q-7Vwz7HcDAQZPCdQwsJuwcxzsevzSdBGTLem4jFqySTOWOqAaNV-Zpe_H-GNPxgrMO6TBdKDo3LC2_XdWwWmZ0_qF8qpZMvxwLLn_iJkUdQiW8CFuM3V18oROQpnqij5FULDzEPAXXPDZgW76SG2ZKac8r_z-40vmvcVwJ5vYBw692SkNfAFr2xZy4r9Q4q0bm64Ynng_cGt3oJE8ACtqbIsrMDpasTUpbDt7YNTJBLwaYHUiyNTeRtZTuLbZuKfsS43LNJyRGrlCRdnG4Hg5wZyWBEbb8RAUQ9LTS75RCdUIv4-QvEGjZQOBQYnK-xUKXm9ee6pYyx5mvDsgVg4u9QuBEvz5rnUUV8Do8JGAkD3POmEw_1OeNp0oRY-N5zuvt8cg6p_ToCKlOlbHkDyzz0xRt1Zuv4t7_6SLlzBFt5ctsFLL_GuXd0l6VrKKb2E9XB3s_uWtGgzMMMth1RxVfm5RhCK-T35_udWEzRHQiE1ZZ7BAtx-Bck8Bvz_rqbXRRIP6OSKdpnu7DK5CnJKNu23VXkM6CwoeAh28lMZzPSyYdJovN7ZUVbWFbSEiHfJtT8pMwvpTsDQDM9DdYJz7eERqAu_C_XDIstBY9camapiI983pIS3A3UEoTMLjb3DmgF8M5WdkJvMv_ca0oMSZg0ZBE-xMNPypKnvrxkzFgiLKBCNk6Gy0ub2919oLCHe0yhL3C533CfOBq7fAQom3JAK21VmnzsndPjbsj24&f=0&ui=6007957621675-id_51f2904c3d2240385237667&en=fad_hide&ed=true&a=1&__tn__=v\" aria-haspopup=\"1\"></a></div></div><div class=\"title\"><script type=\"text/javascript\">try {\n ((JSBNG_Record.scriptLoad)((\"function ec6746832181e4465e84a15407c6358878a9524bf(event) {\\u000a var meta = document.getElementById(\\\"meta_referrer\\\");\\u000a meta.content = \\\"origin\\\";\\u000a setTimeout(function() {\\u000a meta.content = \\\"default\\\";\\u000a }, 100);\\u000a var attribute = \\\"href\\\";\\u000a var ms = this.getAttribute(attribute).match(/([\\\\\\\\?|&]f=)([^&]*)/);\\u000a if (ms) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]f=[^&]*/, (ms[1] + 0)));\\u000a }\\u000a;\\u000a;\\u000a var attribute = \\\"href\\\";\\u000a var sig = this.getAttribute(attribute).match(/([\\\\\\\\?|&]sig=)([^&]*)/);\\u000a if (sig) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]sig=[^&]*/, (sig[1] + ((Math.floor((Math.random() * 65535)) + 65536)))));\\u000a }\\u000a;\\u000a;\\u000a};\"), (\"sde041b355e2c79a548ccd93451be6ac81481aa7f\")));\n ((window.top.JSBNG_Record.callerJS) = (true));\n function ec6746832181e4465e84a15407c6358878a9524bf(JSBNG__event) {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"sde041b355e2c79a548ccd93451be6ac81481aa7f_0\"), (sde041b355e2c79a548ccd93451be6ac81481aa7f_0_instance), (this), (arguments)))\n };\n (null);\n var meta = (((JSBNG_Record.get)(JSBNG__document, (\"getElementById\")))[(\"getElementById\")])(\"meta_referrer\");\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"origin\"));\n JSBNG__setTimeout(((function() {\n var sde041b355e2c79a548ccd93451be6ac81481aa7f_1_instance;\n ((sde041b355e2c79a548ccd93451be6ac81481aa7f_1_instance) = ((JSBNG_Record.eventInstance)((\"sde041b355e2c79a548ccd93451be6ac81481aa7f_1\"))));\n return ((JSBNG_Record.markFunction)((function() {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"sde041b355e2c79a548ccd93451be6ac81481aa7f_1\"), (sde041b355e2c79a548ccd93451be6ac81481aa7f_1_instance), (this), (arguments)))\n };\n (null);\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"default\"));\n })));\n })()), 100);\n var attribute = \"href\";\n var ms = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]f=)([^&]*)/);\n if (ms) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]f=[^&]*/, ((((JSBNG_Record.get)(ms, 1))[1]) + 0)));\n }\n ;\n ;\n var attribute = \"href\";\n var sig = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]sig=)([^&]*)/);\n if (sig) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]sig=[^&]*/, ((((JSBNG_Record.get)(sig, 1))[1]) + (((((JSBNG_Record.get)(Math, (\"floor\")))[(\"floor\")])(((((JSBNG_Record.get)(Math, (\"JSBNG__random\")))[(\"JSBNG__random\")])() * 65535)) + 65536)))));\n }\n ;\n ;\n };\n var sde041b355e2c79a548ccd93451be6ac81481aa7f_0_instance;\n ((sde041b355e2c79a548ccd93451be6ac81481aa7f_0_instance) = ((JSBNG_Record.eventInstance)((\"sde041b355e2c79a548ccd93451be6ac81481aa7f_0\"))));\n ((JSBNG_Record.markFunction)((ec6746832181e4465e84a15407c6358878a9524bf)));\n} finally {\n ((window.top.JSBNG_Record.callerJS) = (false));\n ((window.top.JSBNG_Record.flushDeferredEvents)());\n};</script><a class=\"forceLTR emuEvent1 -cx-PUBLIC-fbEmu__link\" href=\"/ajax/emu/end.php?eid=AQLVAEr0JNIXHSlB-t1lt9Eixl6c4gkbuzVzVjL2frflXuYtFtrkvniUnm1Ku41tGCz7o3_vAgaHc_cm0KSk80Qn5KeG7SBu4gMjRWo6WTgHRYBuM5oy8HMWqE2Pc679lHqnSR_shRQD-voE8av-VW6uhejuFIKsYxQla8mJLMIcQjP3YwlX6FBEpi3IVDI7GysDpA3w55At5HB5Z4onn49-VAvhzAroPkfTP4ed7wRi6oKUIM0AwqhWvC3FrpzbYJQIbYePYuwGg0CAbWsYVqmHHIDp2LDaZf1MyEHBSB4edMf2GSbcR0dckr9I7r5wjuhr0MNu6x1Sc-gKyyTNy7OlvCvkzo0KCx0W1IEMqrzTB5bUX8tpAHpI2ai-deBrz8z6wERn75PMsjuCU9Y0J1OON89nEwJfV7EEAXRKUUuTa_hVHUV7ivmvG6mIgiU0MnkXdt5V_Yq68vbPMu305u-1HqvHNJG0NAcM2fCCIDcFeYVMgDQEr2FmsPA4pEM_4wzNUrZ0zXILjZEsaEiCfsHAdLK4-vtwErPb4oMyBgM-mw7Q-7Vwz7HcDAQZPCdQwsJuwcxzsevzSdBGTLem4jFqySTOWOqAaNV-Zpe_H-GNPxgrMO6TBdKDo3LC2_XdWwWmZ0_qF8qpZMvxwLLn_iJkUdQiW8CFuM3V18oROQpnqij5FULDzEPAXXPDZgW76SG2ZKac8r_z-40vmvcVwJ5vYBw692SkNfAFr2xZy4r9Q4q0bm64Ynng_cGt3oJE8ACtqbIsrMDpasTUpbDt7YNTJBLwaYHUiyNTeRtZTuLbZuKfsS43LNJyRGrlCRdnG4Hg5wZyWBEbb8RAUQ9LTS75RCdUIv4-QvEGjZQOBQYnK-xUKXm9ee6pYyx5mvDsgVg4u9QuBEvz5rnUUV8Do8JGAkD3POmEw_1OeNp0oRY-N5zuvt8cg6p_ToCKlOlbHkDyzz0xRt1Zuv4t7_6SLlzBFt5ctsFLL_GuXd0l6VrKKb2E9XB3s_uWtGgzMMMth1RxVfm5RhCK-T35_udWEzRHQiE1ZZ7BAtx-Bck8Bvz_rqbXRRIP6OSKdpnu7DK5CnJKNu23VXkM6CwoeAh28lMZzPSyYdJovN7ZUVbWFbSEiHfJtT8pMwvpTsDQDM9DdYJz7eERqAu_C_XDIstBY9camapiI983pIS3A3UEoTMLjb3DmgF8M5WdkJvMv_ca0oMSZg0ZBE-xMNPypKnvrxkzFgiLKBCNk6Gy0ub2919oLCHe0yhL3C533CfOBq7fAQom3JAK21VmnzsndPjbsj24&f=1&ui=6007957621675-id_51f2904c3d2240385237667&en=1&a=0&sig=127360&__tn__=wv\" onmousedown=\"return ec6746832181e4465e84a15407c6358878a9524bf.call(this, event);\">WOMEN on Facebook</a></div><div class=\"clearfix image_body_block\"><script type=\"text/javascript\">try {\n ((JSBNG_Record.scriptLoad)((\"function e2c113a9a386ab849c906a9d56b8165fc46d98f19(event) {\\u000a var meta = document.getElementById(\\\"meta_referrer\\\");\\u000a meta.content = \\\"origin\\\";\\u000a setTimeout(function() {\\u000a meta.content = \\\"default\\\";\\u000a }, 100);\\u000a var attribute = \\\"href\\\";\\u000a var ms = this.getAttribute(attribute).match(/([\\\\\\\\?|&]f=)([^&]*)/);\\u000a if (ms) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]f=[^&]*/, (ms[1] + 0)));\\u000a }\\u000a;\\u000a;\\u000a var attribute = \\\"href\\\";\\u000a var sig = this.getAttribute(attribute).match(/([\\\\\\\\?|&]sig=)([^&]*)/);\\u000a if (sig) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]sig=[^&]*/, (sig[1] + ((Math.floor((Math.random() * 65535)) + 65536)))));\\u000a }\\u000a;\\u000a;\\u000a};\"), (\"s28879714450be6a27c1abfe326e44e49840aca82\")));\n ((window.top.JSBNG_Record.callerJS) = (true));\n function e2c113a9a386ab849c906a9d56b8165fc46d98f19(JSBNG__event) {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s28879714450be6a27c1abfe326e44e49840aca82_0\"), (s28879714450be6a27c1abfe326e44e49840aca82_0_instance), (this), (arguments)))\n };\n (null);\n var meta = (((JSBNG_Record.get)(JSBNG__document, (\"getElementById\")))[(\"getElementById\")])(\"meta_referrer\");\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"origin\"));\n JSBNG__setTimeout(((function() {\n var s28879714450be6a27c1abfe326e44e49840aca82_1_instance;\n ((s28879714450be6a27c1abfe326e44e49840aca82_1_instance) = ((JSBNG_Record.eventInstance)((\"s28879714450be6a27c1abfe326e44e49840aca82_1\"))));\n return ((JSBNG_Record.markFunction)((function() {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s28879714450be6a27c1abfe326e44e49840aca82_1\"), (s28879714450be6a27c1abfe326e44e49840aca82_1_instance), (this), (arguments)))\n };\n (null);\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"default\"));\n })));\n })()), 100);\n var attribute = \"href\";\n var ms = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]f=)([^&]*)/);\n if (ms) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]f=[^&]*/, ((((JSBNG_Record.get)(ms, 1))[1]) + 0)));\n }\n ;\n ;\n var attribute = \"href\";\n var sig = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]sig=)([^&]*)/);\n if (sig) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]sig=[^&]*/, ((((JSBNG_Record.get)(sig, 1))[1]) + (((((JSBNG_Record.get)(Math, (\"floor\")))[(\"floor\")])(((((JSBNG_Record.get)(Math, (\"JSBNG__random\")))[(\"JSBNG__random\")])() * 65535)) + 65536)))));\n }\n ;\n ;\n };\n var s28879714450be6a27c1abfe326e44e49840aca82_0_instance;\n ((s28879714450be6a27c1abfe326e44e49840aca82_0_instance) = ((JSBNG_Record.eventInstance)((\"s28879714450be6a27c1abfe326e44e49840aca82_0\"))));\n ((JSBNG_Record.markFunction)((e2c113a9a386ab849c906a9d56b8165fc46d98f19)));\n} finally {\n ((window.top.JSBNG_Record.callerJS) = (false));\n ((window.top.JSBNG_Record.flushDeferredEvents)());\n};</script><a class=\"forceLTR emuEvent1 -cx-PUBLIC-fbEmu__link image fbEmuImage -cx-PRIVATE-uiImageBlock__image -cx-PRIVATE-uiImageBlock__mediumimage lfloat\" tabindex=\"-1\" href=\"/ajax/emu/end.php?eid=AQLVAEr0JNIXHSlB-t1lt9Eixl6c4gkbuzVzVjL2frflXuYtFtrkvniUnm1Ku41tGCz7o3_vAgaHc_cm0KSk80Qn5KeG7SBu4gMjRWo6WTgHRYBuM5oy8HMWqE2Pc679lHqnSR_shRQD-voE8av-VW6uhejuFIKsYxQla8mJLMIcQjP3YwlX6FBEpi3IVDI7GysDpA3w55At5HB5Z4onn49-VAvhzAroPkfTP4ed7wRi6oKUIM0AwqhWvC3FrpzbYJQIbYePYuwGg0CAbWsYVqmHHIDp2LDaZf1MyEHBSB4edMf2GSbcR0dckr9I7r5wjuhr0MNu6x1Sc-gKyyTNy7OlvCvkzo0KCx0W1IEMqrzTB5bUX8tpAHpI2ai-deBrz8z6wERn75PMsjuCU9Y0J1OON89nEwJfV7EEAXRKUUuTa_hVHUV7ivmvG6mIgiU0MnkXdt5V_Yq68vbPMu305u-1HqvHNJG0NAcM2fCCIDcFeYVMgDQEr2FmsPA4pEM_4wzNUrZ0zXILjZEsaEiCfsHAdLK4-vtwErPb4oMyBgM-mw7Q-7Vwz7HcDAQZPCdQwsJuwcxzsevzSdBGTLem4jFqySTOWOqAaNV-Zpe_H-GNPxgrMO6TBdKDo3LC2_XdWwWmZ0_qF8qpZMvxwLLn_iJkUdQiW8CFuM3V18oROQpnqij5FULDzEPAXXPDZgW76SG2ZKac8r_z-40vmvcVwJ5vYBw692SkNfAFr2xZy4r9Q4q0bm64Ynng_cGt3oJE8ACtqbIsrMDpasTUpbDt7YNTJBLwaYHUiyNTeRtZTuLbZuKfsS43LNJyRGrlCRdnG4Hg5wZyWBEbb8RAUQ9LTS75RCdUIv4-QvEGjZQOBQYnK-xUKXm9ee6pYyx5mvDsgVg4u9QuBEvz5rnUUV8Do8JGAkD3POmEw_1OeNp0oRY-N5zuvt8cg6p_ToCKlOlbHkDyzz0xRt1Zuv4t7_6SLlzBFt5ctsFLL_GuXd0l6VrKKb2E9XB3s_uWtGgzMMMth1RxVfm5RhCK-T35_udWEzRHQiE1ZZ7BAtx-Bck8Bvz_rqbXRRIP6OSKdpnu7DK5CnJKNu23VXkM6CwoeAh28lMZzPSyYdJovN7ZUVbWFbSEiHfJtT8pMwvpTsDQDM9DdYJz7eERqAu_C_XDIstBY9camapiI983pIS3A3UEoTMLjb3DmgF8M5WdkJvMv_ca0oMSZg0ZBE-xMNPypKnvrxkzFgiLKBCNk6Gy0ub2919oLCHe0yhL3C533CfOBq7fAQom3JAK21VmnzsndPjbsj24&f=1&ui=6007957621675-id_51f2904c3d2240385237667&en=1&a=0&sig=98096&__tn__=ywv\" onmousedown=\"return e2c113a9a386ab849c906a9d56b8165fc46d98f19.call(this, event);\" aria-hidden=\"true\"><img class=\"img\" src=\"http://jsbngssl.fbcdn-creative-a.akamaihd.net/hads-ak-ash3/s110x80/708194_6005058265675_41800_n.png\" alt=\"\" /></a><div class=\"-cx-PRIVATE-uiFlexibleBlock__flexiblecontent\"><div class=\"body\"><script type=\"text/javascript\">try {\n ((JSBNG_Record.scriptLoad)((\"function e7578d897dcc8420ac71be4b933b99feca73e313c(event) {\\u000a var meta = document.getElementById(\\\"meta_referrer\\\");\\u000a meta.content = \\\"origin\\\";\\u000a setTimeout(function() {\\u000a meta.content = \\\"default\\\";\\u000a }, 100);\\u000a var attribute = \\\"href\\\";\\u000a var ms = this.getAttribute(attribute).match(/([\\\\\\\\?|&]f=)([^&]*)/);\\u000a if (ms) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]f=[^&]*/, (ms[1] + 0)));\\u000a }\\u000a;\\u000a;\\u000a var attribute = \\\"href\\\";\\u000a var sig = this.getAttribute(attribute).match(/([\\\\\\\\?|&]sig=)([^&]*)/);\\u000a if (sig) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]sig=[^&]*/, (sig[1] + ((Math.floor((Math.random() * 65535)) + 65536)))));\\u000a }\\u000a;\\u000a;\\u000a};\"), (\"s03d5bc389712dc8fc1b5e4a7645b421017cf8073\")));\n ((window.top.JSBNG_Record.callerJS) = (true));\n function e7578d897dcc8420ac71be4b933b99feca73e313c(JSBNG__event) {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s03d5bc389712dc8fc1b5e4a7645b421017cf8073_0\"), (s03d5bc389712dc8fc1b5e4a7645b421017cf8073_0_instance), (this), (arguments)))\n };\n (null);\n var meta = (((JSBNG_Record.get)(JSBNG__document, (\"getElementById\")))[(\"getElementById\")])(\"meta_referrer\");\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"origin\"));\n JSBNG__setTimeout(((function() {\n var s03d5bc389712dc8fc1b5e4a7645b421017cf8073_1_instance;\n ((s03d5bc389712dc8fc1b5e4a7645b421017cf8073_1_instance) = ((JSBNG_Record.eventInstance)((\"s03d5bc389712dc8fc1b5e4a7645b421017cf8073_1\"))));\n return ((JSBNG_Record.markFunction)((function() {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s03d5bc389712dc8fc1b5e4a7645b421017cf8073_1\"), (s03d5bc389712dc8fc1b5e4a7645b421017cf8073_1_instance), (this), (arguments)))\n };\n (null);\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"default\"));\n })));\n })()), 100);\n var attribute = \"href\";\n var ms = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]f=)([^&]*)/);\n if (ms) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]f=[^&]*/, ((((JSBNG_Record.get)(ms, 1))[1]) + 0)));\n }\n ;\n ;\n var attribute = \"href\";\n var sig = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]sig=)([^&]*)/);\n if (sig) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]sig=[^&]*/, ((((JSBNG_Record.get)(sig, 1))[1]) + (((((JSBNG_Record.get)(Math, (\"floor\")))[(\"floor\")])(((((JSBNG_Record.get)(Math, (\"JSBNG__random\")))[(\"JSBNG__random\")])() * 65535)) + 65536)))));\n }\n ;\n ;\n };\n var s03d5bc389712dc8fc1b5e4a7645b421017cf8073_0_instance;\n ((s03d5bc389712dc8fc1b5e4a7645b421017cf8073_0_instance) = ((JSBNG_Record.eventInstance)((\"s03d5bc389712dc8fc1b5e4a7645b421017cf8073_0\"))));\n ((JSBNG_Record.markFunction)((e7578d897dcc8420ac71be4b933b99feca73e313c)));\n} finally {\n ((window.top.JSBNG_Record.callerJS) = (false));\n ((window.top.JSBNG_Record.flushDeferredEvents)());\n};</script><a class=\"forceLTR emuEvent1 -cx-PUBLIC-fbEmu__link\" href=\"/ajax/emu/end.php?eid=AQLVAEr0JNIXHSlB-t1lt9Eixl6c4gkbuzVzVjL2frflXuYtFtrkvniUnm1Ku41tGCz7o3_vAgaHc_cm0KSk80Qn5KeG7SBu4gMjRWo6WTgHRYBuM5oy8HMWqE2Pc679lHqnSR_shRQD-voE8av-VW6uhejuFIKsYxQla8mJLMIcQjP3YwlX6FBEpi3IVDI7GysDpA3w55At5HB5Z4onn49-VAvhzAroPkfTP4ed7wRi6oKUIM0AwqhWvC3FrpzbYJQIbYePYuwGg0CAbWsYVqmHHIDp2LDaZf1MyEHBSB4edMf2GSbcR0dckr9I7r5wjuhr0MNu6x1Sc-gKyyTNy7OlvCvkzo0KCx0W1IEMqrzTB5bUX8tpAHpI2ai-deBrz8z6wERn75PMsjuCU9Y0J1OON89nEwJfV7EEAXRKUUuTa_hVHUV7ivmvG6mIgiU0MnkXdt5V_Yq68vbPMu305u-1HqvHNJG0NAcM2fCCIDcFeYVMgDQEr2FmsPA4pEM_4wzNUrZ0zXILjZEsaEiCfsHAdLK4-vtwErPb4oMyBgM-mw7Q-7Vwz7HcDAQZPCdQwsJuwcxzsevzSdBGTLem4jFqySTOWOqAaNV-Zpe_H-GNPxgrMO6TBdKDo3LC2_XdWwWmZ0_qF8qpZMvxwLLn_iJkUdQiW8CFuM3V18oROQpnqij5FULDzEPAXXPDZgW76SG2ZKac8r_z-40vmvcVwJ5vYBw692SkNfAFr2xZy4r9Q4q0bm64Ynng_cGt3oJE8ACtqbIsrMDpasTUpbDt7YNTJBLwaYHUiyNTeRtZTuLbZuKfsS43LNJyRGrlCRdnG4Hg5wZyWBEbb8RAUQ9LTS75RCdUIv4-QvEGjZQOBQYnK-xUKXm9ee6pYyx5mvDsgVg4u9QuBEvz5rnUUV8Do8JGAkD3POmEw_1OeNp0oRY-N5zuvt8cg6p_ToCKlOlbHkDyzz0xRt1Zuv4t7_6SLlzBFt5ctsFLL_GuXd0l6VrKKb2E9XB3s_uWtGgzMMMth1RxVfm5RhCK-T35_udWEzRHQiE1ZZ7BAtx-Bck8Bvz_rqbXRRIP6OSKdpnu7DK5CnJKNu23VXkM6CwoeAh28lMZzPSyYdJovN7ZUVbWFbSEiHfJtT8pMwvpTsDQDM9DdYJz7eERqAu_C_XDIstBY9camapiI983pIS3A3UEoTMLjb3DmgF8M5WdkJvMv_ca0oMSZg0ZBE-xMNPypKnvrxkzFgiLKBCNk6Gy0ub2919oLCHe0yhL3C533CfOBq7fAQom3JAK21VmnzsndPjbsj24&f=1&ui=6007957621675-id_51f2904c3d2240385237667&en=1&a=0&sig=95219&__tn__=xywv\" onmousedown=\"return e7578d897dcc8420ac71be4b933b99feca73e313c.call(this, event);\">Thousands of local singles just one click away. Start now and find the date that fits you.</a></div></div></div><div class=\"inline\"><div class=\"action\"><script type=\"text/javascript\">try {\n ((JSBNG_Record.scriptLoad)((\"function e4c076a8f5a071f71549aed1a9c22793adf19833a(event) {\\u000a var meta = document.getElementById(\\\"meta_referrer\\\");\\u000a meta.content = \\\"origin\\\";\\u000a setTimeout(function() {\\u000a meta.content = \\\"default\\\";\\u000a }, 100);\\u000a var attribute = \\\"href\\\";\\u000a var ms = this.getAttribute(attribute).match(/([\\\\\\\\?|&]f=)([^&]*)/);\\u000a if (ms) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]f=[^&]*/, (ms[1] + 0)));\\u000a }\\u000a;\\u000a;\\u000a var attribute = \\\"href\\\";\\u000a var sig = this.getAttribute(attribute).match(/([\\\\\\\\?|&]sig=)([^&]*)/);\\u000a if (sig) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]sig=[^&]*/, (sig[1] + ((Math.floor((Math.random() * 65535)) + 65536)))));\\u000a }\\u000a;\\u000a;\\u000a};\"), (\"s07c77755fb0c3aa604c7a1ed60f8b0077299f67d\")));\n ((window.top.JSBNG_Record.callerJS) = (true));\n function e4c076a8f5a071f71549aed1a9c22793adf19833a(JSBNG__event) {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s07c77755fb0c3aa604c7a1ed60f8b0077299f67d_0\"), (s07c77755fb0c3aa604c7a1ed60f8b0077299f67d_0_instance), (this), (arguments)))\n };\n (null);\n var meta = (((JSBNG_Record.get)(JSBNG__document, (\"getElementById\")))[(\"getElementById\")])(\"meta_referrer\");\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"origin\"));\n JSBNG__setTimeout(((function() {\n var s07c77755fb0c3aa604c7a1ed60f8b0077299f67d_1_instance;\n ((s07c77755fb0c3aa604c7a1ed60f8b0077299f67d_1_instance) = ((JSBNG_Record.eventInstance)((\"s07c77755fb0c3aa604c7a1ed60f8b0077299f67d_1\"))));\n return ((JSBNG_Record.markFunction)((function() {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s07c77755fb0c3aa604c7a1ed60f8b0077299f67d_1\"), (s07c77755fb0c3aa604c7a1ed60f8b0077299f67d_1_instance), (this), (arguments)))\n };\n (null);\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"default\"));\n })));\n })()), 100);\n var attribute = \"href\";\n var ms = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]f=)([^&]*)/);\n if (ms) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]f=[^&]*/, ((((JSBNG_Record.get)(ms, 1))[1]) + 0)));\n }\n ;\n ;\n var attribute = \"href\";\n var sig = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]sig=)([^&]*)/);\n if (sig) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]sig=[^&]*/, ((((JSBNG_Record.get)(sig, 1))[1]) + (((((JSBNG_Record.get)(Math, (\"floor\")))[(\"floor\")])(((((JSBNG_Record.get)(Math, (\"JSBNG__random\")))[(\"JSBNG__random\")])() * 65535)) + 65536)))));\n }\n ;\n ;\n };\n var s07c77755fb0c3aa604c7a1ed60f8b0077299f67d_0_instance;\n ((s07c77755fb0c3aa604c7a1ed60f8b0077299f67d_0_instance) = ((JSBNG_Record.eventInstance)((\"s07c77755fb0c3aa604c7a1ed60f8b0077299f67d_0\"))));\n ((JSBNG_Record.markFunction)((e4c076a8f5a071f71549aed1a9c22793adf19833a)));\n} finally {\n ((window.top.JSBNG_Record.callerJS) = (false));\n ((window.top.JSBNG_Record.flushDeferredEvents)());\n};</script><a class=\"uiIconText emuEvent1 -cx-PUBLIC-fbEmu__link\" href=\"/ajax/emu/end.php?eid=AQLVAEr0JNIXHSlB-t1lt9Eixl6c4gkbuzVzVjL2frflXuYtFtrkvniUnm1Ku41tGCz7o3_vAgaHc_cm0KSk80Qn5KeG7SBu4gMjRWo6WTgHRYBuM5oy8HMWqE2Pc679lHqnSR_shRQD-voE8av-VW6uhejuFIKsYxQla8mJLMIcQjP3YwlX6FBEpi3IVDI7GysDpA3w55At5HB5Z4onn49-VAvhzAroPkfTP4ed7wRi6oKUIM0AwqhWvC3FrpzbYJQIbYePYuwGg0CAbWsYVqmHHIDp2LDaZf1MyEHBSB4edMf2GSbcR0dckr9I7r5wjuhr0MNu6x1Sc-gKyyTNy7OlvCvkzo0KCx0W1IEMqrzTB5bUX8tpAHpI2ai-deBrz8z6wERn75PMsjuCU9Y0J1OON89nEwJfV7EEAXRKUUuTa_hVHUV7ivmvG6mIgiU0MnkXdt5V_Yq68vbPMu305u-1HqvHNJG0NAcM2fCCIDcFeYVMgDQEr2FmsPA4pEM_4wzNUrZ0zXILjZEsaEiCfsHAdLK4-vtwErPb4oMyBgM-mw7Q-7Vwz7HcDAQZPCdQwsJuwcxzsevzSdBGTLem4jFqySTOWOqAaNV-Zpe_H-GNPxgrMO6TBdKDo3LC2_XdWwWmZ0_qF8qpZMvxwLLn_iJkUdQiW8CFuM3V18oROQpnqij5FULDzEPAXXPDZgW76SG2ZKac8r_z-40vmvcVwJ5vYBw692SkNfAFr2xZy4r9Q4q0bm64Ynng_cGt3oJE8ACtqbIsrMDpasTUpbDt7YNTJBLwaYHUiyNTeRtZTuLbZuKfsS43LNJyRGrlCRdnG4Hg5wZyWBEbb8RAUQ9LTS75RCdUIv4-QvEGjZQOBQYnK-xUKXm9ee6pYyx5mvDsgVg4u9QuBEvz5rnUUV8Do8JGAkD3POmEw_1OeNp0oRY-N5zuvt8cg6p_ToCKlOlbHkDyzz0xRt1Zuv4t7_6SLlzBFt5ctsFLL_GuXd0l6VrKKb2E9XB3s_uWtGgzMMMth1RxVfm5RhCK-T35_udWEzRHQiE1ZZ7BAtx-Bck8Bvz_rqbXRRIP6OSKdpnu7DK5CnJKNu23VXkM6CwoeAh28lMZzPSyYdJovN7ZUVbWFbSEiHfJtT8pMwvpTsDQDM9DdYJz7eERqAu_C_XDIstBY9camapiI983pIS3A3UEoTMLjb3DmgF8M5WdkJvMv_ca0oMSZg0ZBE-xMNPypKnvrxkzFgiLKBCNk6Gy0ub2919oLCHe0yhL3C533CfOBq7fAQom3JAK21VmnzsndPjbsj24&f=1&ui=6007957621675-id_51f2904c3d2240385237667&en=1&a=0&sig=127391&__tn__=wv\" onmousedown=\"return e4c076a8f5a071f71549aed1a9c22793adf19833a.call(this, event);\"><i class=\"img sp_3yt8ar sx_b302f8\"></i>Use Now</a> · <span class=\"fbEmuContext\">5,000,000 people used <script type=\"text/javascript\">try {\n ((JSBNG_Record.scriptLoad)((\"function e97629af3e63a9ce7d51401e7006d11e445ebd382(event) {\\u000a var meta = document.getElementById(\\\"meta_referrer\\\");\\u000a meta.content = \\\"origin\\\";\\u000a setTimeout(function() {\\u000a meta.content = \\\"default\\\";\\u000a }, 100);\\u000a var attribute = \\\"href\\\";\\u000a var ms = this.getAttribute(attribute).match(/([\\\\\\\\?|&]f=)([^&]*)/);\\u000a if (ms) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]f=[^&]*/, (ms[1] + 0)));\\u000a }\\u000a;\\u000a;\\u000a var attribute = \\\"href\\\";\\u000a var sig = this.getAttribute(attribute).match(/([\\\\\\\\?|&]sig=)([^&]*)/);\\u000a if (sig) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]sig=[^&]*/, (sig[1] + ((Math.floor((Math.random() * 65535)) + 65536)))));\\u000a }\\u000a;\\u000a;\\u000a};\"), (\"s28aaa87b44fa4424aad06df9289dc62a041116fd\")));\n ((window.top.JSBNG_Record.callerJS) = (true));\n function e97629af3e63a9ce7d51401e7006d11e445ebd382(JSBNG__event) {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s28aaa87b44fa4424aad06df9289dc62a041116fd_0\"), (s28aaa87b44fa4424aad06df9289dc62a041116fd_0_instance), (this), (arguments)))\n };\n (null);\n var meta = (((JSBNG_Record.get)(JSBNG__document, (\"getElementById\")))[(\"getElementById\")])(\"meta_referrer\");\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"origin\"));\n JSBNG__setTimeout(((function() {\n var s28aaa87b44fa4424aad06df9289dc62a041116fd_1_instance;\n ((s28aaa87b44fa4424aad06df9289dc62a041116fd_1_instance) = ((JSBNG_Record.eventInstance)((\"s28aaa87b44fa4424aad06df9289dc62a041116fd_1\"))));\n return ((JSBNG_Record.markFunction)((function() {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s28aaa87b44fa4424aad06df9289dc62a041116fd_1\"), (s28aaa87b44fa4424aad06df9289dc62a041116fd_1_instance), (this), (arguments)))\n };\n (null);\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"default\"));\n })));\n })()), 100);\n var attribute = \"href\";\n var ms = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]f=)([^&]*)/);\n if (ms) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]f=[^&]*/, ((((JSBNG_Record.get)(ms, 1))[1]) + 0)));\n }\n ;\n ;\n var attribute = \"href\";\n var sig = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]sig=)([^&]*)/);\n if (sig) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]sig=[^&]*/, ((((JSBNG_Record.get)(sig, 1))[1]) + (((((JSBNG_Record.get)(Math, (\"floor\")))[(\"floor\")])(((((JSBNG_Record.get)(Math, (\"JSBNG__random\")))[(\"JSBNG__random\")])() * 65535)) + 65536)))));\n }\n ;\n ;\n };\n var s28aaa87b44fa4424aad06df9289dc62a041116fd_0_instance;\n ((s28aaa87b44fa4424aad06df9289dc62a041116fd_0_instance) = ((JSBNG_Record.eventInstance)((\"s28aaa87b44fa4424aad06df9289dc62a041116fd_0\"))));\n ((JSBNG_Record.markFunction)((e97629af3e63a9ce7d51401e7006d11e445ebd382)));\n} finally {\n ((window.top.JSBNG_Record.callerJS) = (false));\n ((window.top.JSBNG_Record.flushDeferredEvents)());\n};</script><a class=\"emuEvent1 -cx-PUBLIC-fbEmu__link\" href=\"/ajax/emu/end.php?eid=AQLVAEr0JNIXHSlB-t1lt9Eixl6c4gkbuzVzVjL2frflXuYtFtrkvniUnm1Ku41tGCz7o3_vAgaHc_cm0KSk80Qn5KeG7SBu4gMjRWo6WTgHRYBuM5oy8HMWqE2Pc679lHqnSR_shRQD-voE8av-VW6uhejuFIKsYxQla8mJLMIcQjP3YwlX6FBEpi3IVDI7GysDpA3w55At5HB5Z4onn49-VAvhzAroPkfTP4ed7wRi6oKUIM0AwqhWvC3FrpzbYJQIbYePYuwGg0CAbWsYVqmHHIDp2LDaZf1MyEHBSB4edMf2GSbcR0dckr9I7r5wjuhr0MNu6x1Sc-gKyyTNy7OlvCvkzo0KCx0W1IEMqrzTB5bUX8tpAHpI2ai-deBrz8z6wERn75PMsjuCU9Y0J1OON89nEwJfV7EEAXRKUUuTa_hVHUV7ivmvG6mIgiU0MnkXdt5V_Yq68vbPMu305u-1HqvHNJG0NAcM2fCCIDcFeYVMgDQEr2FmsPA4pEM_4wzNUrZ0zXILjZEsaEiCfsHAdLK4-vtwErPb4oMyBgM-mw7Q-7Vwz7HcDAQZPCdQwsJuwcxzsevzSdBGTLem4jFqySTOWOqAaNV-Zpe_H-GNPxgrMO6TBdKDo3LC2_XdWwWmZ0_qF8qpZMvxwLLn_iJkUdQiW8CFuM3V18oROQpnqij5FULDzEPAXXPDZgW76SG2ZKac8r_z-40vmvcVwJ5vYBw692SkNfAFr2xZy4r9Q4q0bm64Ynng_cGt3oJE8ACtqbIsrMDpasTUpbDt7YNTJBLwaYHUiyNTeRtZTuLbZuKfsS43LNJyRGrlCRdnG4Hg5wZyWBEbb8RAUQ9LTS75RCdUIv4-QvEGjZQOBQYnK-xUKXm9ee6pYyx5mvDsgVg4u9QuBEvz5rnUUV8Do8JGAkD3POmEw_1OeNp0oRY-N5zuvt8cg6p_ToCKlOlbHkDyzz0xRt1Zuv4t7_6SLlzBFt5ctsFLL_GuXd0l6VrKKb2E9XB3s_uWtGgzMMMth1RxVfm5RhCK-T35_udWEzRHQiE1ZZ7BAtx-Bck8Bvz_rqbXRRIP6OSKdpnu7DK5CnJKNu23VXkM6CwoeAh28lMZzPSyYdJovN7ZUVbWFbSEiHfJtT8pMwvpTsDQDM9DdYJz7eERqAu_C_XDIstBY9camapiI983pIS3A3UEoTMLjb3DmgF8M5WdkJvMv_ca0oMSZg0ZBE-xMNPypKnvrxkzFgiLKBCNk6Gy0ub2919oLCHe0yhL3C533CfOBq7fAQom3JAK21VmnzsndPjbsj24&f=1&ui=6007957621675-id_51f2904c3d2240385237667&en=1&a=0&sig=70865&__tn__=%7Bzwv\" onmousedown=\"return e97629af3e63a9ce7d51401e7006d11e445ebd382.call(this, event);\">Zoosk</a>.</span></div></div></div></div></div><div class=\"ego_unit\" data-ego-fbid=\"6007651357550\"><div class=\"-cx-PUBLIC-fbAdUnit__root\" data-ad=\"{"adid":6007651357550,"segment":"market"}\" id=\"6007651357550-id_51f2904c3d26e5462905510\"><div class=\"-cx-PRIVATE-fbEmu__root -cx-PRIVATE-fbEmuEgo__unit\"><div class=\"uiSelector inlineBlock emu_x emuEventfad_hide -cx-PUBLIC-fbEmu__link uiSelectorRight\"><div class=\"uiToggle wrap\"><a class=\"uiSelectorButton uiCloseButton uiCloseButtonSmall\" href=\"#\" role=\"button\" title=\"About Facebook Ads\" rel=\"toggle\" ajaxify=\"/ajax/emu/end.php?eid=AQL1hMzGDmRq_jGTMlTKJmQ1tWzYqTX1hYaAqONxRw3GgGVHJ_gEb1mb_22W5RpjgPEvYQ6iUHKM7Zuyyyv0Cx5BMJPL788LwavUCp3eJO8EIfVcxsQxPEH65GZjzV8kd4cWTTBMtGV-ANChcFXZuY8pHwWEiGUZ037op7NgKVbOrBiq05kvjf9hNdk3-hEsflaGS1qDa89TjbLLOnKvBAXLgKaND10JtJptCNAq_FX7KuYV-WaG8ad1w2eDAqNch7LzuY7MzJT97imgiE0sE-hCSyZ7L7NQaeYtI6MrSEbqfKUe6SRgrrM66reyGiG6ixLR8kY1MdYRUfVJhoTf5lC_vekk8XdUHnTZfwze7pntL0e4WiAIeYIJwwvDxNZHwdWA0M6gXt6fUoyTEIYwqBdeaI2HtSujVcAqzPUNF9hp-m6Yf0xSf-orKOPv1-cxlFkE8qy3BIEzYNyB99gNIfdtaS3YuDT6x4gQIBGW4dnW0gWm88TzKhSkRfIJ8sW8L2PDPQ31mjN9_drR6NUQ0-L7-HrJpT3pTzqjJvdw8HVUwpDalb_MQ76ZhQ4A16iLvdV82D_530cZVYMA_T4Dh8eG4qlJzhU-qV10H6Iho0o47_ZeTJ8QLN_qvlSH9RHC6nsBwS7AAcbOHcAsp8wytPlE6nOrnR33s0ux81AAMhHPs1BKPbiC92mL6F9OAD6GfKPQxmS9g8G0V_8XikoObEJ1QzBF4jXejZ3-QZlUC8erxDfVLI2bOciLhwSefJl62CSFoQSLqzbF9Y5UgWRui190UNVDmRhONFD7ivW6YEX5iuYcY52eWyvQr32D_vA0uQOFRlklRgzNzyRLDmHVThIZYNwK_5JJvpRNLLEk8ILjYNU3inUUT4-SknA3VOUsEm8XNbSvhDuHqaIZKcV0ISy2dNO73ZPV1W1RosDZ_pcjYimQlQNjD-jOkXr-oVAqdwLLzowm2L0naT4FOzFosY28eKIWEkVkg_G0Na62L44u5PngWfy8SAgrfY7ZLEGVvbU4-3Ssh8aquPUTO6M8dNxJzdN0DXyoWJTNwW8GUD8gpqailll2w70R20ZWeSka1HaYxnlv9p_n_dCO64QjzEdPwg0l_3MtQDtx3LGquGoVBlR_neZYW5dKUYXDqEzMd8dMdqM6YcOYkLpE9RR3wAhqJVt-MCp7ZkitmQJ5adNq5_gB6TuQrNQVtY2qaoxckZsbrXlUFN2uEOGw31F0BEKD8FKbuWEyh5vUo5AG0G1Oo6QO1_kc8GJxPEkPXuzF1EwykkwuNPJZTWNJX5f-K_7W&f=0&ui=6007651357550-id_51f2904c3d26e5462905510&en=fad_hide&ed=true&a=1&__tn__=v\" aria-haspopup=\"1\"></a></div></div><div class=\"title\"><script type=\"text/javascript\">try {\n ((JSBNG_Record.scriptLoad)((\"function e8b07f25afabdb3609d715b9f07ba140eb225b64e(event) {\\u000a var meta = document.getElementById(\\\"meta_referrer\\\");\\u000a meta.content = \\\"origin\\\";\\u000a setTimeout(function() {\\u000a meta.content = \\\"default\\\";\\u000a }, 100);\\u000a var attribute = \\\"href\\\";\\u000a var ms = this.getAttribute(attribute).match(/([\\\\\\\\?|&]f=)([^&]*)/);\\u000a if (ms) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]f=[^&]*/, (ms[1] + 0)));\\u000a }\\u000a;\\u000a;\\u000a var attribute = \\\"href\\\";\\u000a var sig = this.getAttribute(attribute).match(/([\\\\\\\\?|&]sig=)([^&]*)/);\\u000a if (sig) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]sig=[^&]*/, (sig[1] + ((Math.floor((Math.random() * 65535)) + 65536)))));\\u000a }\\u000a;\\u000a;\\u000a};\"), (\"s08def55b89d61e64d4e002341f5538931eae4578\")));\n ((window.top.JSBNG_Record.callerJS) = (true));\n function e8b07f25afabdb3609d715b9f07ba140eb225b64e(JSBNG__event) {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s08def55b89d61e64d4e002341f5538931eae4578_0\"), (s08def55b89d61e64d4e002341f5538931eae4578_0_instance), (this), (arguments)))\n };\n (null);\n var meta = (((JSBNG_Record.get)(JSBNG__document, (\"getElementById\")))[(\"getElementById\")])(\"meta_referrer\");\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"origin\"));\n JSBNG__setTimeout(((function() {\n var s08def55b89d61e64d4e002341f5538931eae4578_1_instance;\n ((s08def55b89d61e64d4e002341f5538931eae4578_1_instance) = ((JSBNG_Record.eventInstance)((\"s08def55b89d61e64d4e002341f5538931eae4578_1\"))));\n return ((JSBNG_Record.markFunction)((function() {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s08def55b89d61e64d4e002341f5538931eae4578_1\"), (s08def55b89d61e64d4e002341f5538931eae4578_1_instance), (this), (arguments)))\n };\n (null);\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"default\"));\n })));\n })()), 100);\n var attribute = \"href\";\n var ms = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]f=)([^&]*)/);\n if (ms) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]f=[^&]*/, ((((JSBNG_Record.get)(ms, 1))[1]) + 0)));\n }\n ;\n ;\n var attribute = \"href\";\n var sig = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]sig=)([^&]*)/);\n if (sig) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]sig=[^&]*/, ((((JSBNG_Record.get)(sig, 1))[1]) + (((((JSBNG_Record.get)(Math, (\"floor\")))[(\"floor\")])(((((JSBNG_Record.get)(Math, (\"JSBNG__random\")))[(\"JSBNG__random\")])() * 65535)) + 65536)))));\n }\n ;\n ;\n };\n var s08def55b89d61e64d4e002341f5538931eae4578_0_instance;\n ((s08def55b89d61e64d4e002341f5538931eae4578_0_instance) = ((JSBNG_Record.eventInstance)((\"s08def55b89d61e64d4e002341f5538931eae4578_0\"))));\n ((JSBNG_Record.markFunction)((e8b07f25afabdb3609d715b9f07ba140eb225b64e)));\n} finally {\n ((window.top.JSBNG_Record.callerJS) = (false));\n ((window.top.JSBNG_Record.flushDeferredEvents)());\n};</script><a class=\"forceLTR emuEvent1 -cx-PUBLIC-fbEmu__link\" href=\"/ajax/emu/end.php?eid=AQL1hMzGDmRq_jGTMlTKJmQ1tWzYqTX1hYaAqONxRw3GgGVHJ_gEb1mb_22W5RpjgPEvYQ6iUHKM7Zuyyyv0Cx5BMJPL788LwavUCp3eJO8EIfVcxsQxPEH65GZjzV8kd4cWTTBMtGV-ANChcFXZuY8pHwWEiGUZ037op7NgKVbOrBiq05kvjf9hNdk3-hEsflaGS1qDa89TjbLLOnKvBAXLgKaND10JtJptCNAq_FX7KuYV-WaG8ad1w2eDAqNch7LzuY7MzJT97imgiE0sE-hCSyZ7L7NQaeYtI6MrSEbqfKUe6SRgrrM66reyGiG6ixLR8kY1MdYRUfVJhoTf5lC_vekk8XdUHnTZfwze7pntL0e4WiAIeYIJwwvDxNZHwdWA0M6gXt6fUoyTEIYwqBdeaI2HtSujVcAqzPUNF9hp-m6Yf0xSf-orKOPv1-cxlFkE8qy3BIEzYNyB99gNIfdtaS3YuDT6x4gQIBGW4dnW0gWm88TzKhSkRfIJ8sW8L2PDPQ31mjN9_drR6NUQ0-L7-HrJpT3pTzqjJvdw8HVUwpDalb_MQ76ZhQ4A16iLvdV82D_530cZVYMA_T4Dh8eG4qlJzhU-qV10H6Iho0o47_ZeTJ8QLN_qvlSH9RHC6nsBwS7AAcbOHcAsp8wytPlE6nOrnR33s0ux81AAMhHPs1BKPbiC92mL6F9OAD6GfKPQxmS9g8G0V_8XikoObEJ1QzBF4jXejZ3-QZlUC8erxDfVLI2bOciLhwSefJl62CSFoQSLqzbF9Y5UgWRui190UNVDmRhONFD7ivW6YEX5iuYcY52eWyvQr32D_vA0uQOFRlklRgzNzyRLDmHVThIZYNwK_5JJvpRNLLEk8ILjYNU3inUUT4-SknA3VOUsEm8XNbSvhDuHqaIZKcV0ISy2dNO73ZPV1W1RosDZ_pcjYimQlQNjD-jOkXr-oVAqdwLLzowm2L0naT4FOzFosY28eKIWEkVkg_G0Na62L44u5PngWfy8SAgrfY7ZLEGVvbU4-3Ssh8aquPUTO6M8dNxJzdN0DXyoWJTNwW8GUD8gpqailll2w70R20ZWeSka1HaYxnlv9p_n_dCO64QjzEdPwg0l_3MtQDtx3LGquGoVBlR_neZYW5dKUYXDqEzMd8dMdqM6YcOYkLpE9RR3wAhqJVt-MCp7ZkitmQJ5adNq5_gB6TuQrNQVtY2qaoxckZsbrXlUFN2uEOGw31F0BEKD8FKbuWEyh5vUo5AG0G1Oo6QO1_kc8GJxPEkPXuzF1EwykkwuNPJZTWNJX5f-K_7W&f=1&ui=6007651357550-id_51f2904c3d26e5462905510&en=1&a=0&sig=71707&__tn__=wv\" onmousedown=\"return e8b07f25afabdb3609d715b9f07ba140eb225b64e.call(this, event);\">Is this sweet or sour?</a></div><div class=\"clearfix image_body_block\"><script type=\"text/javascript\">try {\n ((JSBNG_Record.scriptLoad)((\"function ef0164f2bf1fd8d8e01d41d9655c31d18bdbdaea7(event) {\\u000a var meta = document.getElementById(\\\"meta_referrer\\\");\\u000a meta.content = \\\"origin\\\";\\u000a setTimeout(function() {\\u000a meta.content = \\\"default\\\";\\u000a }, 100);\\u000a var attribute = \\\"href\\\";\\u000a var ms = this.getAttribute(attribute).match(/([\\\\\\\\?|&]f=)([^&]*)/);\\u000a if (ms) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]f=[^&]*/, (ms[1] + 0)));\\u000a }\\u000a;\\u000a;\\u000a var attribute = \\\"href\\\";\\u000a var sig = this.getAttribute(attribute).match(/([\\\\\\\\?|&]sig=)([^&]*)/);\\u000a if (sig) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]sig=[^&]*/, (sig[1] + ((Math.floor((Math.random() * 65535)) + 65536)))));\\u000a }\\u000a;\\u000a;\\u000a};\"), (\"s290a2264d7a9097dc1470b1f1f9747457327661c\")));\n ((window.top.JSBNG_Record.callerJS) = (true));\n function ef0164f2bf1fd8d8e01d41d9655c31d18bdbdaea7(JSBNG__event) {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s290a2264d7a9097dc1470b1f1f9747457327661c_0\"), (s290a2264d7a9097dc1470b1f1f9747457327661c_0_instance), (this), (arguments)))\n };\n (null);\n var meta = (((JSBNG_Record.get)(JSBNG__document, (\"getElementById\")))[(\"getElementById\")])(\"meta_referrer\");\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"origin\"));\n JSBNG__setTimeout(((function() {\n var s290a2264d7a9097dc1470b1f1f9747457327661c_1_instance;\n ((s290a2264d7a9097dc1470b1f1f9747457327661c_1_instance) = ((JSBNG_Record.eventInstance)((\"s290a2264d7a9097dc1470b1f1f9747457327661c_1\"))));\n return ((JSBNG_Record.markFunction)((function() {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s290a2264d7a9097dc1470b1f1f9747457327661c_1\"), (s290a2264d7a9097dc1470b1f1f9747457327661c_1_instance), (this), (arguments)))\n };\n (null);\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"default\"));\n })));\n })()), 100);\n var attribute = \"href\";\n var ms = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]f=)([^&]*)/);\n if (ms) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]f=[^&]*/, ((((JSBNG_Record.get)(ms, 1))[1]) + 0)));\n }\n ;\n ;\n var attribute = \"href\";\n var sig = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]sig=)([^&]*)/);\n if (sig) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]sig=[^&]*/, ((((JSBNG_Record.get)(sig, 1))[1]) + (((((JSBNG_Record.get)(Math, (\"floor\")))[(\"floor\")])(((((JSBNG_Record.get)(Math, (\"JSBNG__random\")))[(\"JSBNG__random\")])() * 65535)) + 65536)))));\n }\n ;\n ;\n };\n var s290a2264d7a9097dc1470b1f1f9747457327661c_0_instance;\n ((s290a2264d7a9097dc1470b1f1f9747457327661c_0_instance) = ((JSBNG_Record.eventInstance)((\"s290a2264d7a9097dc1470b1f1f9747457327661c_0\"))));\n ((JSBNG_Record.markFunction)((ef0164f2bf1fd8d8e01d41d9655c31d18bdbdaea7)));\n} finally {\n ((window.top.JSBNG_Record.callerJS) = (false));\n ((window.top.JSBNG_Record.flushDeferredEvents)());\n};</script><a class=\"forceLTR emuEvent1 -cx-PUBLIC-fbEmu__link image fbEmuImage -cx-PRIVATE-uiImageBlock__image -cx-PRIVATE-uiImageBlock__mediumimage lfloat\" tabindex=\"-1\" href=\"/ajax/emu/end.php?eid=AQL1hMzGDmRq_jGTMlTKJmQ1tWzYqTX1hYaAqONxRw3GgGVHJ_gEb1mb_22W5RpjgPEvYQ6iUHKM7Zuyyyv0Cx5BMJPL788LwavUCp3eJO8EIfVcxsQxPEH65GZjzV8kd4cWTTBMtGV-ANChcFXZuY8pHwWEiGUZ037op7NgKVbOrBiq05kvjf9hNdk3-hEsflaGS1qDa89TjbLLOnKvBAXLgKaND10JtJptCNAq_FX7KuYV-WaG8ad1w2eDAqNch7LzuY7MzJT97imgiE0sE-hCSyZ7L7NQaeYtI6MrSEbqfKUe6SRgrrM66reyGiG6ixLR8kY1MdYRUfVJhoTf5lC_vekk8XdUHnTZfwze7pntL0e4WiAIeYIJwwvDxNZHwdWA0M6gXt6fUoyTEIYwqBdeaI2HtSujVcAqzPUNF9hp-m6Yf0xSf-orKOPv1-cxlFkE8qy3BIEzYNyB99gNIfdtaS3YuDT6x4gQIBGW4dnW0gWm88TzKhSkRfIJ8sW8L2PDPQ31mjN9_drR6NUQ0-L7-HrJpT3pTzqjJvdw8HVUwpDalb_MQ76ZhQ4A16iLvdV82D_530cZVYMA_T4Dh8eG4qlJzhU-qV10H6Iho0o47_ZeTJ8QLN_qvlSH9RHC6nsBwS7AAcbOHcAsp8wytPlE6nOrnR33s0ux81AAMhHPs1BKPbiC92mL6F9OAD6GfKPQxmS9g8G0V_8XikoObEJ1QzBF4jXejZ3-QZlUC8erxDfVLI2bOciLhwSefJl62CSFoQSLqzbF9Y5UgWRui190UNVDmRhONFD7ivW6YEX5iuYcY52eWyvQr32D_vA0uQOFRlklRgzNzyRLDmHVThIZYNwK_5JJvpRNLLEk8ILjYNU3inUUT4-SknA3VOUsEm8XNbSvhDuHqaIZKcV0ISy2dNO73ZPV1W1RosDZ_pcjYimQlQNjD-jOkXr-oVAqdwLLzowm2L0naT4FOzFosY28eKIWEkVkg_G0Na62L44u5PngWfy8SAgrfY7ZLEGVvbU4-3Ssh8aquPUTO6M8dNxJzdN0DXyoWJTNwW8GUD8gpqailll2w70R20ZWeSka1HaYxnlv9p_n_dCO64QjzEdPwg0l_3MtQDtx3LGquGoVBlR_neZYW5dKUYXDqEzMd8dMdqM6YcOYkLpE9RR3wAhqJVt-MCp7ZkitmQJ5adNq5_gB6TuQrNQVtY2qaoxckZsbrXlUFN2uEOGw31F0BEKD8FKbuWEyh5vUo5AG0G1Oo6QO1_kc8GJxPEkPXuzF1EwykkwuNPJZTWNJX5f-K_7W&f=1&ui=6007651357550-id_51f2904c3d26e5462905510&en=1&a=0&sig=121486&__tn__=ywv\" onmousedown=\"return ef0164f2bf1fd8d8e01d41d9655c31d18bdbdaea7.call(this, event);\" aria-hidden=\"true\"><img class=\"img\" src=\"http://jsbngssl.fbcdn-creative-a.akamaihd.net/hads-ak-ash3/s110x80/735347_6007651190750_477676589_n.png\" alt=\"\" /></a><div class=\"-cx-PRIVATE-uiFlexibleBlock__flexiblecontent\"><div class=\"body\"><script type=\"text/javascript\">try {\n ((JSBNG_Record.scriptLoad)((\"function ee7661523863a3beb371063b97f421fc12f5d5b5e(event) {\\u000a var meta = document.getElementById(\\\"meta_referrer\\\");\\u000a meta.content = \\\"origin\\\";\\u000a setTimeout(function() {\\u000a meta.content = \\\"default\\\";\\u000a }, 100);\\u000a var attribute = \\\"href\\\";\\u000a var ms = this.getAttribute(attribute).match(/([\\\\\\\\?|&]f=)([^&]*)/);\\u000a if (ms) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]f=[^&]*/, (ms[1] + 0)));\\u000a }\\u000a;\\u000a;\\u000a var attribute = \\\"href\\\";\\u000a var sig = this.getAttribute(attribute).match(/([\\\\\\\\?|&]sig=)([^&]*)/);\\u000a if (sig) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]sig=[^&]*/, (sig[1] + ((Math.floor((Math.random() * 65535)) + 65536)))));\\u000a }\\u000a;\\u000a;\\u000a};\"), (\"sb9cb25ccb0016e0dea02908bd1237349e2197d82\")));\n ((window.top.JSBNG_Record.callerJS) = (true));\n function ee7661523863a3beb371063b97f421fc12f5d5b5e(JSBNG__event) {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"sb9cb25ccb0016e0dea02908bd1237349e2197d82_0\"), (sb9cb25ccb0016e0dea02908bd1237349e2197d82_0_instance), (this), (arguments)))\n };\n (null);\n var meta = (((JSBNG_Record.get)(JSBNG__document, (\"getElementById\")))[(\"getElementById\")])(\"meta_referrer\");\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"origin\"));\n JSBNG__setTimeout(((function() {\n var sb9cb25ccb0016e0dea02908bd1237349e2197d82_1_instance;\n ((sb9cb25ccb0016e0dea02908bd1237349e2197d82_1_instance) = ((JSBNG_Record.eventInstance)((\"sb9cb25ccb0016e0dea02908bd1237349e2197d82_1\"))));\n return ((JSBNG_Record.markFunction)((function() {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"sb9cb25ccb0016e0dea02908bd1237349e2197d82_1\"), (sb9cb25ccb0016e0dea02908bd1237349e2197d82_1_instance), (this), (arguments)))\n };\n (null);\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"default\"));\n })));\n })()), 100);\n var attribute = \"href\";\n var ms = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]f=)([^&]*)/);\n if (ms) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]f=[^&]*/, ((((JSBNG_Record.get)(ms, 1))[1]) + 0)));\n }\n ;\n ;\n var attribute = \"href\";\n var sig = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]sig=)([^&]*)/);\n if (sig) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]sig=[^&]*/, ((((JSBNG_Record.get)(sig, 1))[1]) + (((((JSBNG_Record.get)(Math, (\"floor\")))[(\"floor\")])(((((JSBNG_Record.get)(Math, (\"JSBNG__random\")))[(\"JSBNG__random\")])() * 65535)) + 65536)))));\n }\n ;\n ;\n };\n var sb9cb25ccb0016e0dea02908bd1237349e2197d82_0_instance;\n ((sb9cb25ccb0016e0dea02908bd1237349e2197d82_0_instance) = ((JSBNG_Record.eventInstance)((\"sb9cb25ccb0016e0dea02908bd1237349e2197d82_0\"))));\n ((JSBNG_Record.markFunction)((ee7661523863a3beb371063b97f421fc12f5d5b5e)));\n} finally {\n ((window.top.JSBNG_Record.callerJS) = (false));\n ((window.top.JSBNG_Record.flushDeferredEvents)());\n};</script><a class=\"forceLTR emuEvent1 -cx-PUBLIC-fbEmu__link\" href=\"/ajax/emu/end.php?eid=AQL1hMzGDmRq_jGTMlTKJmQ1tWzYqTX1hYaAqONxRw3GgGVHJ_gEb1mb_22W5RpjgPEvYQ6iUHKM7Zuyyyv0Cx5BMJPL788LwavUCp3eJO8EIfVcxsQxPEH65GZjzV8kd4cWTTBMtGV-ANChcFXZuY8pHwWEiGUZ037op7NgKVbOrBiq05kvjf9hNdk3-hEsflaGS1qDa89TjbLLOnKvBAXLgKaND10JtJptCNAq_FX7KuYV-WaG8ad1w2eDAqNch7LzuY7MzJT97imgiE0sE-hCSyZ7L7NQaeYtI6MrSEbqfKUe6SRgrrM66reyGiG6ixLR8kY1MdYRUfVJhoTf5lC_vekk8XdUHnTZfwze7pntL0e4WiAIeYIJwwvDxNZHwdWA0M6gXt6fUoyTEIYwqBdeaI2HtSujVcAqzPUNF9hp-m6Yf0xSf-orKOPv1-cxlFkE8qy3BIEzYNyB99gNIfdtaS3YuDT6x4gQIBGW4dnW0gWm88TzKhSkRfIJ8sW8L2PDPQ31mjN9_drR6NUQ0-L7-HrJpT3pTzqjJvdw8HVUwpDalb_MQ76ZhQ4A16iLvdV82D_530cZVYMA_T4Dh8eG4qlJzhU-qV10H6Iho0o47_ZeTJ8QLN_qvlSH9RHC6nsBwS7AAcbOHcAsp8wytPlE6nOrnR33s0ux81AAMhHPs1BKPbiC92mL6F9OAD6GfKPQxmS9g8G0V_8XikoObEJ1QzBF4jXejZ3-QZlUC8erxDfVLI2bOciLhwSefJl62CSFoQSLqzbF9Y5UgWRui190UNVDmRhONFD7ivW6YEX5iuYcY52eWyvQr32D_vA0uQOFRlklRgzNzyRLDmHVThIZYNwK_5JJvpRNLLEk8ILjYNU3inUUT4-SknA3VOUsEm8XNbSvhDuHqaIZKcV0ISy2dNO73ZPV1W1RosDZ_pcjYimQlQNjD-jOkXr-oVAqdwLLzowm2L0naT4FOzFosY28eKIWEkVkg_G0Na62L44u5PngWfy8SAgrfY7ZLEGVvbU4-3Ssh8aquPUTO6M8dNxJzdN0DXyoWJTNwW8GUD8gpqailll2w70R20ZWeSka1HaYxnlv9p_n_dCO64QjzEdPwg0l_3MtQDtx3LGquGoVBlR_neZYW5dKUYXDqEzMd8dMdqM6YcOYkLpE9RR3wAhqJVt-MCp7ZkitmQJ5adNq5_gB6TuQrNQVtY2qaoxckZsbrXlUFN2uEOGw31F0BEKD8FKbuWEyh5vUo5AG0G1Oo6QO1_kc8GJxPEkPXuzF1EwykkwuNPJZTWNJX5f-K_7W&f=1&ui=6007651357550-id_51f2904c3d26e5462905510&en=1&a=0&sig=119784&__tn__=xywv\" onmousedown=\"return ee7661523863a3beb371063b97f421fc12f5d5b5e.call(this, event);\">Discover a world of intense flavors with Bon Bon Boom gum pops. Like us on Facebook now!</a></div></div></div><div class=\"inline\"><div class=\"action\"><a class=\"uiIconText emuEventfad_fan -cx-PUBLIC-fbEmu__link\" href=\"#\" style=\"padding-left: 17px;\" rel=\"async-post\" ajaxify=\"/ajax/emu/end.php?eid=AQL1hMzGDmRq_jGTMlTKJmQ1tWzYqTX1hYaAqONxRw3GgGVHJ_gEb1mb_22W5RpjgPEvYQ6iUHKM7Zuyyyv0Cx5BMJPL788LwavUCp3eJO8EIfVcxsQxPEH65GZjzV8kd4cWTTBMtGV-ANChcFXZuY8pHwWEiGUZ037op7NgKVbOrBiq05kvjf9hNdk3-hEsflaGS1qDa89TjbLLOnKvBAXLgKaND10JtJptCNAq_FX7KuYV-WaG8ad1w2eDAqNch7LzuY7MzJT97imgiE0sE-hCSyZ7L7NQaeYtI6MrSEbqfKUe6SRgrrM66reyGiG6ixLR8kY1MdYRUfVJhoTf5lC_vekk8XdUHnTZfwze7pntL0e4WiAIeYIJwwvDxNZHwdWA0M6gXt6fUoyTEIYwqBdeaI2HtSujVcAqzPUNF9hp-m6Yf0xSf-orKOPv1-cxlFkE8qy3BIEzYNyB99gNIfdtaS3YuDT6x4gQIBGW4dnW0gWm88TzKhSkRfIJ8sW8L2PDPQ31mjN9_drR6NUQ0-L7-HrJpT3pTzqjJvdw8HVUwpDalb_MQ76ZhQ4A16iLvdV82D_530cZVYMA_T4Dh8eG4qlJzhU-qV10H6Iho0o47_ZeTJ8QLN_qvlSH9RHC6nsBwS7AAcbOHcAsp8wytPlE6nOrnR33s0ux81AAMhHPs1BKPbiC92mL6F9OAD6GfKPQxmS9g8G0V_8XikoObEJ1QzBF4jXejZ3-QZlUC8erxDfVLI2bOciLhwSefJl62CSFoQSLqzbF9Y5UgWRui190UNVDmRhONFD7ivW6YEX5iuYcY52eWyvQr32D_vA0uQOFRlklRgzNzyRLDmHVThIZYNwK_5JJvpRNLLEk8ILjYNU3inUUT4-SknA3VOUsEm8XNbSvhDuHqaIZKcV0ISy2dNO73ZPV1W1RosDZ_pcjYimQlQNjD-jOkXr-oVAqdwLLzowm2L0naT4FOzFosY28eKIWEkVkg_G0Na62L44u5PngWfy8SAgrfY7ZLEGVvbU4-3Ssh8aquPUTO6M8dNxJzdN0DXyoWJTNwW8GUD8gpqailll2w70R20ZWeSka1HaYxnlv9p_n_dCO64QjzEdPwg0l_3MtQDtx3LGquGoVBlR_neZYW5dKUYXDqEzMd8dMdqM6YcOYkLpE9RR3wAhqJVt-MCp7ZkitmQJ5adNq5_gB6TuQrNQVtY2qaoxckZsbrXlUFN2uEOGw31F0BEKD8FKbuWEyh5vUo5AG0G1Oo6QO1_kc8GJxPEkPXuzF1EwykkwuNPJZTWNJX5f-K_7W&f=0&ui=6007651357550-id_51f2904c3d26e5462905510&en=fad_fan&ed=551477364890640&a=1&__tn__=wv\" role=\"button\"><i class=\"img sp_4p6kmz sx_bc56c4\" style=\"top: 1px;\"></i>Like</a> · <span class=\"fbEmuContext\">5,642 people like <script type=\"text/javascript\">try {\n ((JSBNG_Record.scriptLoad)((\"function e8e1a7aeebfe56c090d2cdde0e878c5d23b720f29(event) {\\u000a var meta = document.getElementById(\\\"meta_referrer\\\");\\u000a meta.content = \\\"origin\\\";\\u000a setTimeout(function() {\\u000a meta.content = \\\"default\\\";\\u000a }, 100);\\u000a var attribute = \\\"href\\\";\\u000a var ms = this.getAttribute(attribute).match(/([\\\\\\\\?|&]f=)([^&]*)/);\\u000a if (ms) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]f=[^&]*/, (ms[1] + 0)));\\u000a }\\u000a;\\u000a;\\u000a var attribute = \\\"href\\\";\\u000a var sig = this.getAttribute(attribute).match(/([\\\\\\\\?|&]sig=)([^&]*)/);\\u000a if (sig) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]sig=[^&]*/, (sig[1] + ((Math.floor((Math.random() * 65535)) + 65536)))));\\u000a }\\u000a;\\u000a;\\u000a};\"), (\"s314539d5f689824fc8c87b8a2a08fed2c0031085\")));\n ((window.top.JSBNG_Record.callerJS) = (true));\n function e8e1a7aeebfe56c090d2cdde0e878c5d23b720f29(JSBNG__event) {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s314539d5f689824fc8c87b8a2a08fed2c0031085_0\"), (s314539d5f689824fc8c87b8a2a08fed2c0031085_0_instance), (this), (arguments)))\n };\n (null);\n var meta = (((JSBNG_Record.get)(JSBNG__document, (\"getElementById\")))[(\"getElementById\")])(\"meta_referrer\");\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"origin\"));\n JSBNG__setTimeout(((function() {\n var s314539d5f689824fc8c87b8a2a08fed2c0031085_1_instance;\n ((s314539d5f689824fc8c87b8a2a08fed2c0031085_1_instance) = ((JSBNG_Record.eventInstance)((\"s314539d5f689824fc8c87b8a2a08fed2c0031085_1\"))));\n return ((JSBNG_Record.markFunction)((function() {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s314539d5f689824fc8c87b8a2a08fed2c0031085_1\"), (s314539d5f689824fc8c87b8a2a08fed2c0031085_1_instance), (this), (arguments)))\n };\n (null);\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"default\"));\n })));\n })()), 100);\n var attribute = \"href\";\n var ms = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]f=)([^&]*)/);\n if (ms) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]f=[^&]*/, ((((JSBNG_Record.get)(ms, 1))[1]) + 0)));\n }\n ;\n ;\n var attribute = \"href\";\n var sig = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]sig=)([^&]*)/);\n if (sig) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]sig=[^&]*/, ((((JSBNG_Record.get)(sig, 1))[1]) + (((((JSBNG_Record.get)(Math, (\"floor\")))[(\"floor\")])(((((JSBNG_Record.get)(Math, (\"JSBNG__random\")))[(\"JSBNG__random\")])() * 65535)) + 65536)))));\n }\n ;\n ;\n };\n var s314539d5f689824fc8c87b8a2a08fed2c0031085_0_instance;\n ((s314539d5f689824fc8c87b8a2a08fed2c0031085_0_instance) = ((JSBNG_Record.eventInstance)((\"s314539d5f689824fc8c87b8a2a08fed2c0031085_0\"))));\n ((JSBNG_Record.markFunction)((e8e1a7aeebfe56c090d2cdde0e878c5d23b720f29)));\n} finally {\n ((window.top.JSBNG_Record.callerJS) = (false));\n ((window.top.JSBNG_Record.flushDeferredEvents)());\n};</script><a class=\"emuEventfad_pageclick -cx-PUBLIC-fbEmu__link\" href=\"/ajax/emu/end.php?eid=AQL1hMzGDmRq_jGTMlTKJmQ1tWzYqTX1hYaAqONxRw3GgGVHJ_gEb1mb_22W5RpjgPEvYQ6iUHKM7Zuyyyv0Cx5BMJPL788LwavUCp3eJO8EIfVcxsQxPEH65GZjzV8kd4cWTTBMtGV-ANChcFXZuY8pHwWEiGUZ037op7NgKVbOrBiq05kvjf9hNdk3-hEsflaGS1qDa89TjbLLOnKvBAXLgKaND10JtJptCNAq_FX7KuYV-WaG8ad1w2eDAqNch7LzuY7MzJT97imgiE0sE-hCSyZ7L7NQaeYtI6MrSEbqfKUe6SRgrrM66reyGiG6ixLR8kY1MdYRUfVJhoTf5lC_vekk8XdUHnTZfwze7pntL0e4WiAIeYIJwwvDxNZHwdWA0M6gXt6fUoyTEIYwqBdeaI2HtSujVcAqzPUNF9hp-m6Yf0xSf-orKOPv1-cxlFkE8qy3BIEzYNyB99gNIfdtaS3YuDT6x4gQIBGW4dnW0gWm88TzKhSkRfIJ8sW8L2PDPQ31mjN9_drR6NUQ0-L7-HrJpT3pTzqjJvdw8HVUwpDalb_MQ76ZhQ4A16iLvdV82D_530cZVYMA_T4Dh8eG4qlJzhU-qV10H6Iho0o47_ZeTJ8QLN_qvlSH9RHC6nsBwS7AAcbOHcAsp8wytPlE6nOrnR33s0ux81AAMhHPs1BKPbiC92mL6F9OAD6GfKPQxmS9g8G0V_8XikoObEJ1QzBF4jXejZ3-QZlUC8erxDfVLI2bOciLhwSefJl62CSFoQSLqzbF9Y5UgWRui190UNVDmRhONFD7ivW6YEX5iuYcY52eWyvQr32D_vA0uQOFRlklRgzNzyRLDmHVThIZYNwK_5JJvpRNLLEk8ILjYNU3inUUT4-SknA3VOUsEm8XNbSvhDuHqaIZKcV0ISy2dNO73ZPV1W1RosDZ_pcjYimQlQNjD-jOkXr-oVAqdwLLzowm2L0naT4FOzFosY28eKIWEkVkg_G0Na62L44u5PngWfy8SAgrfY7ZLEGVvbU4-3Ssh8aquPUTO6M8dNxJzdN0DXyoWJTNwW8GUD8gpqailll2w70R20ZWeSka1HaYxnlv9p_n_dCO64QjzEdPwg0l_3MtQDtx3LGquGoVBlR_neZYW5dKUYXDqEzMd8dMdqM6YcOYkLpE9RR3wAhqJVt-MCp7ZkitmQJ5adNq5_gB6TuQrNQVtY2qaoxckZsbrXlUFN2uEOGw31F0BEKD8FKbuWEyh5vUo5AG0G1Oo6QO1_kc8GJxPEkPXuzF1EwykkwuNPJZTWNJX5f-K_7W&f=1&ui=6007651357550-id_51f2904c3d26e5462905510&en=fad_pageclick&ed=551477364890640&a=0&mac=AQKQ4s-yGdeSklgE&sig=84935&__tn__=zwv\" onmousedown=\"return e8e1a7aeebfe56c090d2cdde0e878c5d23b720f29.call(this, event);\">Bon Bon Boom</a>.</span></div></div></div></div></div><div class=\"ego_unit\" data-ego-fbid=\"6010680301716\"><div class=\"-cx-PUBLIC-fbAdUnit__root\" data-ad=\"{"adid":6010680301716,"segment":"market"}\" id=\"6010680301716-id_51f2904c3d2af8e11302550\"><div class=\"-cx-PRIVATE-fbEmu__root -cx-PRIVATE-fbEmuEgo__unit\"><div class=\"uiSelector inlineBlock emu_x emuEventfad_hide -cx-PUBLIC-fbEmu__link uiSelectorRight\"><div class=\"uiToggle wrap\"><a class=\"uiSelectorButton uiCloseButton uiCloseButtonSmall\" href=\"#\" role=\"button\" title=\"About Facebook Ads\" rel=\"toggle\" ajaxify=\"/ajax/emu/end.php?eid=AQJo2STH8Z0ZkcKUkpL2hG0UgOJaWQ_5aI4nWcbBbXwIiats8_aOWw7t38eQeUOzjUm131gL2k7B8ZEGOSUev1PnIQ29Cf-nBdHF3y70ivkN1B2vddCIDXIoN_FVZmH3Gyk4b7kEPu3CW39RpTOpADPjnm2LfNsR1NH8mKyrjjnlumXaJlyFbbOY-6vl4bm3XNmWDqWpbTYoYkJympNP4omv2CjnrDHRIXTrlZ91aQJl_oOVqIwapteoL_f0Wun0y8bxRvCZmYuhv87WdsOPxU3qUQzJcz5_hpkUTe0kXMYLqdHwL_1ekLvalEXygQARqQruPs_duth8n2zGqHnDomE6Cljswm4jMbqyyyKqPBeMJ10alWZlu3OyeC4fSZsvmi61BVxLs9JqBrcVbNV3O0MLEOkpDpFfeKMNwCjE-ExA7a_KedWBXgy5UgJWY5IN5KPthKxqV85hIJVQ4HEWTzGIdvtOmWaGGLNawRtfMWzWYoYa2CLGz5urEOfIwVa_s80O-ge0-hNlD0_sIrKmCLx7GtJ5cDjCgq0-KtyH9jVGXuXSyTpa3QwFtP8-iIgtKQ_vix6rOC82Zm1dn0cYHirhDdNRFLweDv-lYIWuUiXj614SxOZbZ_X1yZ6Y7-7DdvCSRTygqg5IArqVfv_g9n6GV-pdpOsOYjzzvnGrOaoBd-OFBY_YosMPZdBf0v34tBecySFUI5MmhFHwYpWWymiNwO-brhC1B0D8H7uUcZ1QR-dJ_z_R7PiMc15qESH87TGB41EP_HSefotdTxSow1t1XbKHcbofloRyKib_44cYTva0Unf0bXDh3nyhotODl9lRz_7X15XlMEuE7333f_8FE4rf7qr253yzjOecOC30o9GXo-Vcth091OhfqhXFLuRcv9tK-KQRqYOFSGPMyBdMC70TMzf2MxkLQVcfBNr2qheCwCENg_4AkXZFd6EGJIeofLNsVd-HkgGWelPJ2r_kq_n7phs27az3W4BEm36v5Rf43IJrZxpONnlWE9SrXCyi_pypjqsBNdzImyIRfRRBK6QN9ziiElkxUJNo9SZS4mnJ0wEKXuhT68l-graHuJf2OJHxRWFucPP5J6BgLrVvRSxFAzwHS04BuLdZwDW6M0ZGauto2kkgAhpD_-fWyseltQc_LKuVb9x9OX6SlDhGv4o-D65T9Yh62x_9GYMwsqXj8wpt02CtXStX8aBevpXR_aZ0zCJxC2Gllqne98B5AJFycvK4aPALPJxk5pwyyFyOoO0Sj-JGxb26r3dJIBE&f=0&ui=6010680301716-id_51f2904c3d2af8e11302550&en=fad_hide&ed=true&a=1&__tn__=v\" aria-haspopup=\"1\"></a></div></div><div class=\"title\"><script type=\"text/javascript\">try {\n ((JSBNG_Record.scriptLoad)((\"function e732bc6df7140aff102b8742f56356d4d7b96f2c1(event) {\\u000a var meta = document.getElementById(\\\"meta_referrer\\\");\\u000a meta.content = \\\"origin\\\";\\u000a setTimeout(function() {\\u000a meta.content = \\\"default\\\";\\u000a }, 100);\\u000a var attribute = \\\"href\\\";\\u000a var ms = this.getAttribute(attribute).match(/([\\\\\\\\?|&]f=)([^&]*)/);\\u000a if (ms) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]f=[^&]*/, (ms[1] + 0)));\\u000a }\\u000a;\\u000a;\\u000a var attribute = \\\"href\\\";\\u000a var sig = this.getAttribute(attribute).match(/([\\\\\\\\?|&]sig=)([^&]*)/);\\u000a if (sig) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]sig=[^&]*/, (sig[1] + ((Math.floor((Math.random() * 65535)) + 65536)))));\\u000a }\\u000a;\\u000a;\\u000a};\"), (\"sba53f6365b5fb9a70fb8011c430ca20670c5060c\")));\n ((window.top.JSBNG_Record.callerJS) = (true));\n function e732bc6df7140aff102b8742f56356d4d7b96f2c1(JSBNG__event) {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"sba53f6365b5fb9a70fb8011c430ca20670c5060c_0\"), (sba53f6365b5fb9a70fb8011c430ca20670c5060c_0_instance), (this), (arguments)))\n };\n (null);\n var meta = (((JSBNG_Record.get)(JSBNG__document, (\"getElementById\")))[(\"getElementById\")])(\"meta_referrer\");\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"origin\"));\n JSBNG__setTimeout(((function() {\n var sba53f6365b5fb9a70fb8011c430ca20670c5060c_1_instance;\n ((sba53f6365b5fb9a70fb8011c430ca20670c5060c_1_instance) = ((JSBNG_Record.eventInstance)((\"sba53f6365b5fb9a70fb8011c430ca20670c5060c_1\"))));\n return ((JSBNG_Record.markFunction)((function() {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"sba53f6365b5fb9a70fb8011c430ca20670c5060c_1\"), (sba53f6365b5fb9a70fb8011c430ca20670c5060c_1_instance), (this), (arguments)))\n };\n (null);\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"default\"));\n })));\n })()), 100);\n var attribute = \"href\";\n var ms = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]f=)([^&]*)/);\n if (ms) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]f=[^&]*/, ((((JSBNG_Record.get)(ms, 1))[1]) + 0)));\n }\n ;\n ;\n var attribute = \"href\";\n var sig = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]sig=)([^&]*)/);\n if (sig) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]sig=[^&]*/, ((((JSBNG_Record.get)(sig, 1))[1]) + (((((JSBNG_Record.get)(Math, (\"floor\")))[(\"floor\")])(((((JSBNG_Record.get)(Math, (\"JSBNG__random\")))[(\"JSBNG__random\")])() * 65535)) + 65536)))));\n }\n ;\n ;\n };\n var sba53f6365b5fb9a70fb8011c430ca20670c5060c_0_instance;\n ((sba53f6365b5fb9a70fb8011c430ca20670c5060c_0_instance) = ((JSBNG_Record.eventInstance)((\"sba53f6365b5fb9a70fb8011c430ca20670c5060c_0\"))));\n ((JSBNG_Record.markFunction)((e732bc6df7140aff102b8742f56356d4d7b96f2c1)));\n} finally {\n ((window.top.JSBNG_Record.callerJS) = (false));\n ((window.top.JSBNG_Record.flushDeferredEvents)());\n};</script><a class=\"forceLTR emuEvent1 -cx-PUBLIC-fbEmu__link\" href=\"/ajax/emu/end.php?eid=AQJo2STH8Z0ZkcKUkpL2hG0UgOJaWQ_5aI4nWcbBbXwIiats8_aOWw7t38eQeUOzjUm131gL2k7B8ZEGOSUev1PnIQ29Cf-nBdHF3y70ivkN1B2vddCIDXIoN_FVZmH3Gyk4b7kEPu3CW39RpTOpADPjnm2LfNsR1NH8mKyrjjnlumXaJlyFbbOY-6vl4bm3XNmWDqWpbTYoYkJympNP4omv2CjnrDHRIXTrlZ91aQJl_oOVqIwapteoL_f0Wun0y8bxRvCZmYuhv87WdsOPxU3qUQzJcz5_hpkUTe0kXMYLqdHwL_1ekLvalEXygQARqQruPs_duth8n2zGqHnDomE6Cljswm4jMbqyyyKqPBeMJ10alWZlu3OyeC4fSZsvmi61BVxLs9JqBrcVbNV3O0MLEOkpDpFfeKMNwCjE-ExA7a_KedWBXgy5UgJWY5IN5KPthKxqV85hIJVQ4HEWTzGIdvtOmWaGGLNawRtfMWzWYoYa2CLGz5urEOfIwVa_s80O-ge0-hNlD0_sIrKmCLx7GtJ5cDjCgq0-KtyH9jVGXuXSyTpa3QwFtP8-iIgtKQ_vix6rOC82Zm1dn0cYHirhDdNRFLweDv-lYIWuUiXj614SxOZbZ_X1yZ6Y7-7DdvCSRTygqg5IArqVfv_g9n6GV-pdpOsOYjzzvnGrOaoBd-OFBY_YosMPZdBf0v34tBecySFUI5MmhFHwYpWWymiNwO-brhC1B0D8H7uUcZ1QR-dJ_z_R7PiMc15qESH87TGB41EP_HSefotdTxSow1t1XbKHcbofloRyKib_44cYTva0Unf0bXDh3nyhotODl9lRz_7X15XlMEuE7333f_8FE4rf7qr253yzjOecOC30o9GXo-Vcth091OhfqhXFLuRcv9tK-KQRqYOFSGPMyBdMC70TMzf2MxkLQVcfBNr2qheCwCENg_4AkXZFd6EGJIeofLNsVd-HkgGWelPJ2r_kq_n7phs27az3W4BEm36v5Rf43IJrZxpONnlWE9SrXCyi_pypjqsBNdzImyIRfRRBK6QN9ziiElkxUJNo9SZS4mnJ0wEKXuhT68l-graHuJf2OJHxRWFucPP5J6BgLrVvRSxFAzwHS04BuLdZwDW6M0ZGauto2kkgAhpD_-fWyseltQc_LKuVb9x9OX6SlDhGv4o-D65T9Yh62x_9GYMwsqXj8wpt02CtXStX8aBevpXR_aZ0zCJxC2Gllqne98B5AJFycvK4aPALPJxk5pwyyFyOoO0Sj-JGxb26r3dJIBE&f=1&ui=6010680301716-id_51f2904c3d2af8e11302550&en=1&a=0&sig=114877&__tn__=wv\" onmousedown=\"return e732bc6df7140aff102b8742f56356d4d7b96f2c1.call(this, event);\">Marlene's Meal Makeovers</a></div><div class=\"clearfix image_body_block\"><script type=\"text/javascript\">try {\n ((JSBNG_Record.scriptLoad)((\"function ec6a6e5a6fbb2e5ee136fec2e14ab76e2ba4dac95(event) {\\u000a var meta = document.getElementById(\\\"meta_referrer\\\");\\u000a meta.content = \\\"origin\\\";\\u000a setTimeout(function() {\\u000a meta.content = \\\"default\\\";\\u000a }, 100);\\u000a var attribute = \\\"href\\\";\\u000a var ms = this.getAttribute(attribute).match(/([\\\\\\\\?|&]f=)([^&]*)/);\\u000a if (ms) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]f=[^&]*/, (ms[1] + 0)));\\u000a }\\u000a;\\u000a;\\u000a var attribute = \\\"href\\\";\\u000a var sig = this.getAttribute(attribute).match(/([\\\\\\\\?|&]sig=)([^&]*)/);\\u000a if (sig) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]sig=[^&]*/, (sig[1] + ((Math.floor((Math.random() * 65535)) + 65536)))));\\u000a }\\u000a;\\u000a;\\u000a};\"), (\"s92a2752a2b343ca2be7e7e9ecd19420beff0674e\")));\n ((window.top.JSBNG_Record.callerJS) = (true));\n function ec6a6e5a6fbb2e5ee136fec2e14ab76e2ba4dac95(JSBNG__event) {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s92a2752a2b343ca2be7e7e9ecd19420beff0674e_0\"), (s92a2752a2b343ca2be7e7e9ecd19420beff0674e_0_instance), (this), (arguments)))\n };\n (null);\n var meta = (((JSBNG_Record.get)(JSBNG__document, (\"getElementById\")))[(\"getElementById\")])(\"meta_referrer\");\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"origin\"));\n JSBNG__setTimeout(((function() {\n var s92a2752a2b343ca2be7e7e9ecd19420beff0674e_1_instance;\n ((s92a2752a2b343ca2be7e7e9ecd19420beff0674e_1_instance) = ((JSBNG_Record.eventInstance)((\"s92a2752a2b343ca2be7e7e9ecd19420beff0674e_1\"))));\n return ((JSBNG_Record.markFunction)((function() {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s92a2752a2b343ca2be7e7e9ecd19420beff0674e_1\"), (s92a2752a2b343ca2be7e7e9ecd19420beff0674e_1_instance), (this), (arguments)))\n };\n (null);\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"default\"));\n })));\n })()), 100);\n var attribute = \"href\";\n var ms = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]f=)([^&]*)/);\n if (ms) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]f=[^&]*/, ((((JSBNG_Record.get)(ms, 1))[1]) + 0)));\n }\n ;\n ;\n var attribute = \"href\";\n var sig = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]sig=)([^&]*)/);\n if (sig) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]sig=[^&]*/, ((((JSBNG_Record.get)(sig, 1))[1]) + (((((JSBNG_Record.get)(Math, (\"floor\")))[(\"floor\")])(((((JSBNG_Record.get)(Math, (\"JSBNG__random\")))[(\"JSBNG__random\")])() * 65535)) + 65536)))));\n }\n ;\n ;\n };\n var s92a2752a2b343ca2be7e7e9ecd19420beff0674e_0_instance;\n ((s92a2752a2b343ca2be7e7e9ecd19420beff0674e_0_instance) = ((JSBNG_Record.eventInstance)((\"s92a2752a2b343ca2be7e7e9ecd19420beff0674e_0\"))));\n ((JSBNG_Record.markFunction)((ec6a6e5a6fbb2e5ee136fec2e14ab76e2ba4dac95)));\n} finally {\n ((window.top.JSBNG_Record.callerJS) = (false));\n ((window.top.JSBNG_Record.flushDeferredEvents)());\n};</script><a class=\"forceLTR emuEvent1 -cx-PUBLIC-fbEmu__link image fbEmuImage -cx-PRIVATE-uiImageBlock__image -cx-PRIVATE-uiImageBlock__mediumimage lfloat\" tabindex=\"-1\" href=\"/ajax/emu/end.php?eid=AQJo2STH8Z0ZkcKUkpL2hG0UgOJaWQ_5aI4nWcbBbXwIiats8_aOWw7t38eQeUOzjUm131gL2k7B8ZEGOSUev1PnIQ29Cf-nBdHF3y70ivkN1B2vddCIDXIoN_FVZmH3Gyk4b7kEPu3CW39RpTOpADPjnm2LfNsR1NH8mKyrjjnlumXaJlyFbbOY-6vl4bm3XNmWDqWpbTYoYkJympNP4omv2CjnrDHRIXTrlZ91aQJl_oOVqIwapteoL_f0Wun0y8bxRvCZmYuhv87WdsOPxU3qUQzJcz5_hpkUTe0kXMYLqdHwL_1ekLvalEXygQARqQruPs_duth8n2zGqHnDomE6Cljswm4jMbqyyyKqPBeMJ10alWZlu3OyeC4fSZsvmi61BVxLs9JqBrcVbNV3O0MLEOkpDpFfeKMNwCjE-ExA7a_KedWBXgy5UgJWY5IN5KPthKxqV85hIJVQ4HEWTzGIdvtOmWaGGLNawRtfMWzWYoYa2CLGz5urEOfIwVa_s80O-ge0-hNlD0_sIrKmCLx7GtJ5cDjCgq0-KtyH9jVGXuXSyTpa3QwFtP8-iIgtKQ_vix6rOC82Zm1dn0cYHirhDdNRFLweDv-lYIWuUiXj614SxOZbZ_X1yZ6Y7-7DdvCSRTygqg5IArqVfv_g9n6GV-pdpOsOYjzzvnGrOaoBd-OFBY_YosMPZdBf0v34tBecySFUI5MmhFHwYpWWymiNwO-brhC1B0D8H7uUcZ1QR-dJ_z_R7PiMc15qESH87TGB41EP_HSefotdTxSow1t1XbKHcbofloRyKib_44cYTva0Unf0bXDh3nyhotODl9lRz_7X15XlMEuE7333f_8FE4rf7qr253yzjOecOC30o9GXo-Vcth091OhfqhXFLuRcv9tK-KQRqYOFSGPMyBdMC70TMzf2MxkLQVcfBNr2qheCwCENg_4AkXZFd6EGJIeofLNsVd-HkgGWelPJ2r_kq_n7phs27az3W4BEm36v5Rf43IJrZxpONnlWE9SrXCyi_pypjqsBNdzImyIRfRRBK6QN9ziiElkxUJNo9SZS4mnJ0wEKXuhT68l-graHuJf2OJHxRWFucPP5J6BgLrVvRSxFAzwHS04BuLdZwDW6M0ZGauto2kkgAhpD_-fWyseltQc_LKuVb9x9OX6SlDhGv4o-D65T9Yh62x_9GYMwsqXj8wpt02CtXStX8aBevpXR_aZ0zCJxC2Gllqne98B5AJFycvK4aPALPJxk5pwyyFyOoO0Sj-JGxb26r3dJIBE&f=1&ui=6010680301716-id_51f2904c3d2af8e11302550&en=1&a=0&sig=78807&__tn__=ywv\" onmousedown=\"return ec6a6e5a6fbb2e5ee136fec2e14ab76e2ba4dac95.call(this, event);\" aria-hidden=\"true\"><img class=\"img\" src=\"http://jsbngssl.creative-iad.xx.fbcdn.net/hads-ash3/s110x80/735358_6010487616516_1483820094_n.png\" alt=\"\" /></a><div class=\"-cx-PRIVATE-uiFlexibleBlock__flexiblecontent\"><div class=\"body\"><script type=\"text/javascript\">try {\n ((JSBNG_Record.scriptLoad)((\"function e51fc0459fd8ba1ed9ef4aea9396e75c6209247e8(event) {\\u000a var meta = document.getElementById(\\\"meta_referrer\\\");\\u000a meta.content = \\\"origin\\\";\\u000a setTimeout(function() {\\u000a meta.content = \\\"default\\\";\\u000a }, 100);\\u000a var attribute = \\\"href\\\";\\u000a var ms = this.getAttribute(attribute).match(/([\\\\\\\\?|&]f=)([^&]*)/);\\u000a if (ms) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]f=[^&]*/, (ms[1] + 0)));\\u000a }\\u000a;\\u000a;\\u000a var attribute = \\\"href\\\";\\u000a var sig = this.getAttribute(attribute).match(/([\\\\\\\\?|&]sig=)([^&]*)/);\\u000a if (sig) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]sig=[^&]*/, (sig[1] + ((Math.floor((Math.random() * 65535)) + 65536)))));\\u000a }\\u000a;\\u000a;\\u000a};\"), (\"sea2fefb043d9f9ace09f2e6fc4e78b841ec7dc22\")));\n ((window.top.JSBNG_Record.callerJS) = (true));\n function e51fc0459fd8ba1ed9ef4aea9396e75c6209247e8(JSBNG__event) {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"sea2fefb043d9f9ace09f2e6fc4e78b841ec7dc22_0\"), (sea2fefb043d9f9ace09f2e6fc4e78b841ec7dc22_0_instance), (this), (arguments)))\n };\n (null);\n var meta = (((JSBNG_Record.get)(JSBNG__document, (\"getElementById\")))[(\"getElementById\")])(\"meta_referrer\");\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"origin\"));\n JSBNG__setTimeout(((function() {\n var sea2fefb043d9f9ace09f2e6fc4e78b841ec7dc22_1_instance;\n ((sea2fefb043d9f9ace09f2e6fc4e78b841ec7dc22_1_instance) = ((JSBNG_Record.eventInstance)((\"sea2fefb043d9f9ace09f2e6fc4e78b841ec7dc22_1\"))));\n return ((JSBNG_Record.markFunction)((function() {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"sea2fefb043d9f9ace09f2e6fc4e78b841ec7dc22_1\"), (sea2fefb043d9f9ace09f2e6fc4e78b841ec7dc22_1_instance), (this), (arguments)))\n };\n (null);\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"default\"));\n })));\n })()), 100);\n var attribute = \"href\";\n var ms = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]f=)([^&]*)/);\n if (ms) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]f=[^&]*/, ((((JSBNG_Record.get)(ms, 1))[1]) + 0)));\n }\n ;\n ;\n var attribute = \"href\";\n var sig = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]sig=)([^&]*)/);\n if (sig) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]sig=[^&]*/, ((((JSBNG_Record.get)(sig, 1))[1]) + (((((JSBNG_Record.get)(Math, (\"floor\")))[(\"floor\")])(((((JSBNG_Record.get)(Math, (\"JSBNG__random\")))[(\"JSBNG__random\")])() * 65535)) + 65536)))));\n }\n ;\n ;\n };\n var sea2fefb043d9f9ace09f2e6fc4e78b841ec7dc22_0_instance;\n ((sea2fefb043d9f9ace09f2e6fc4e78b841ec7dc22_0_instance) = ((JSBNG_Record.eventInstance)((\"sea2fefb043d9f9ace09f2e6fc4e78b841ec7dc22_0\"))));\n ((JSBNG_Record.markFunction)((e51fc0459fd8ba1ed9ef4aea9396e75c6209247e8)));\n} finally {\n ((window.top.JSBNG_Record.callerJS) = (false));\n ((window.top.JSBNG_Record.flushDeferredEvents)());\n};</script><a class=\"forceLTR emuEvent1 -cx-PUBLIC-fbEmu__link\" href=\"/ajax/emu/end.php?eid=AQJo2STH8Z0ZkcKUkpL2hG0UgOJaWQ_5aI4nWcbBbXwIiats8_aOWw7t38eQeUOzjUm131gL2k7B8ZEGOSUev1PnIQ29Cf-nBdHF3y70ivkN1B2vddCIDXIoN_FVZmH3Gyk4b7kEPu3CW39RpTOpADPjnm2LfNsR1NH8mKyrjjnlumXaJlyFbbOY-6vl4bm3XNmWDqWpbTYoYkJympNP4omv2CjnrDHRIXTrlZ91aQJl_oOVqIwapteoL_f0Wun0y8bxRvCZmYuhv87WdsOPxU3qUQzJcz5_hpkUTe0kXMYLqdHwL_1ekLvalEXygQARqQruPs_duth8n2zGqHnDomE6Cljswm4jMbqyyyKqPBeMJ10alWZlu3OyeC4fSZsvmi61BVxLs9JqBrcVbNV3O0MLEOkpDpFfeKMNwCjE-ExA7a_KedWBXgy5UgJWY5IN5KPthKxqV85hIJVQ4HEWTzGIdvtOmWaGGLNawRtfMWzWYoYa2CLGz5urEOfIwVa_s80O-ge0-hNlD0_sIrKmCLx7GtJ5cDjCgq0-KtyH9jVGXuXSyTpa3QwFtP8-iIgtKQ_vix6rOC82Zm1dn0cYHirhDdNRFLweDv-lYIWuUiXj614SxOZbZ_X1yZ6Y7-7DdvCSRTygqg5IArqVfv_g9n6GV-pdpOsOYjzzvnGrOaoBd-OFBY_YosMPZdBf0v34tBecySFUI5MmhFHwYpWWymiNwO-brhC1B0D8H7uUcZ1QR-dJ_z_R7PiMc15qESH87TGB41EP_HSefotdTxSow1t1XbKHcbofloRyKib_44cYTva0Unf0bXDh3nyhotODl9lRz_7X15XlMEuE7333f_8FE4rf7qr253yzjOecOC30o9GXo-Vcth091OhfqhXFLuRcv9tK-KQRqYOFSGPMyBdMC70TMzf2MxkLQVcfBNr2qheCwCENg_4AkXZFd6EGJIeofLNsVd-HkgGWelPJ2r_kq_n7phs27az3W4BEm36v5Rf43IJrZxpONnlWE9SrXCyi_pypjqsBNdzImyIRfRRBK6QN9ziiElkxUJNo9SZS4mnJ0wEKXuhT68l-graHuJf2OJHxRWFucPP5J6BgLrVvRSxFAzwHS04BuLdZwDW6M0ZGauto2kkgAhpD_-fWyseltQc_LKuVb9x9OX6SlDhGv4o-D65T9Yh62x_9GYMwsqXj8wpt02CtXStX8aBevpXR_aZ0zCJxC2Gllqne98B5AJFycvK4aPALPJxk5pwyyFyOoO0Sj-JGxb26r3dJIBE&f=1&ui=6010680301716-id_51f2904c3d2af8e11302550&en=1&a=0&sig=66146&__tn__=xywv\" onmousedown=\"return e51fc0459fd8ba1ed9ef4aea9396e75c6209247e8.call(this, event);\">Like Us for healthy recipes, Cheaper, Better, and Faster with Cook Once, Produce Twice...</a></div></div></div><div class=\"inline\"><div class=\"action\"><a class=\"uiIconText emuEventfad_fan -cx-PUBLIC-fbEmu__link\" href=\"#\" style=\"padding-left: 17px;\" rel=\"async-post\" ajaxify=\"/ajax/emu/end.php?eid=AQJo2STH8Z0ZkcKUkpL2hG0UgOJaWQ_5aI4nWcbBbXwIiats8_aOWw7t38eQeUOzjUm131gL2k7B8ZEGOSUev1PnIQ29Cf-nBdHF3y70ivkN1B2vddCIDXIoN_FVZmH3Gyk4b7kEPu3CW39RpTOpADPjnm2LfNsR1NH8mKyrjjnlumXaJlyFbbOY-6vl4bm3XNmWDqWpbTYoYkJympNP4omv2CjnrDHRIXTrlZ91aQJl_oOVqIwapteoL_f0Wun0y8bxRvCZmYuhv87WdsOPxU3qUQzJcz5_hpkUTe0kXMYLqdHwL_1ekLvalEXygQARqQruPs_duth8n2zGqHnDomE6Cljswm4jMbqyyyKqPBeMJ10alWZlu3OyeC4fSZsvmi61BVxLs9JqBrcVbNV3O0MLEOkpDpFfeKMNwCjE-ExA7a_KedWBXgy5UgJWY5IN5KPthKxqV85hIJVQ4HEWTzGIdvtOmWaGGLNawRtfMWzWYoYa2CLGz5urEOfIwVa_s80O-ge0-hNlD0_sIrKmCLx7GtJ5cDjCgq0-KtyH9jVGXuXSyTpa3QwFtP8-iIgtKQ_vix6rOC82Zm1dn0cYHirhDdNRFLweDv-lYIWuUiXj614SxOZbZ_X1yZ6Y7-7DdvCSRTygqg5IArqVfv_g9n6GV-pdpOsOYjzzvnGrOaoBd-OFBY_YosMPZdBf0v34tBecySFUI5MmhFHwYpWWymiNwO-brhC1B0D8H7uUcZ1QR-dJ_z_R7PiMc15qESH87TGB41EP_HSefotdTxSow1t1XbKHcbofloRyKib_44cYTva0Unf0bXDh3nyhotODl9lRz_7X15XlMEuE7333f_8FE4rf7qr253yzjOecOC30o9GXo-Vcth091OhfqhXFLuRcv9tK-KQRqYOFSGPMyBdMC70TMzf2MxkLQVcfBNr2qheCwCENg_4AkXZFd6EGJIeofLNsVd-HkgGWelPJ2r_kq_n7phs27az3W4BEm36v5Rf43IJrZxpONnlWE9SrXCyi_pypjqsBNdzImyIRfRRBK6QN9ziiElkxUJNo9SZS4mnJ0wEKXuhT68l-graHuJf2OJHxRWFucPP5J6BgLrVvRSxFAzwHS04BuLdZwDW6M0ZGauto2kkgAhpD_-fWyseltQc_LKuVb9x9OX6SlDhGv4o-D65T9Yh62x_9GYMwsqXj8wpt02CtXStX8aBevpXR_aZ0zCJxC2Gllqne98B5AJFycvK4aPALPJxk5pwyyFyOoO0Sj-JGxb26r3dJIBE&f=0&ui=6010680301716-id_51f2904c3d2af8e11302550&en=fad_fan&ed=352352391912&a=1&__tn__=wv\" role=\"button\"><i class=\"img sp_4p6kmz sx_bc56c4\" style=\"top: 1px;\"></i>Like</a> · <span class=\"fbEmuContext\">3,263 people like <script type=\"text/javascript\">try {\n ((JSBNG_Record.scriptLoad)((\"function ebe75e181291e1f217f9de74db62fe89366bc0718(event) {\\u000a var meta = document.getElementById(\\\"meta_referrer\\\");\\u000a meta.content = \\\"origin\\\";\\u000a setTimeout(function() {\\u000a meta.content = \\\"default\\\";\\u000a }, 100);\\u000a var attribute = \\\"href\\\";\\u000a var ms = this.getAttribute(attribute).match(/([\\\\\\\\?|&]f=)([^&]*)/);\\u000a if (ms) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]f=[^&]*/, (ms[1] + 0)));\\u000a }\\u000a;\\u000a;\\u000a var attribute = \\\"href\\\";\\u000a var sig = this.getAttribute(attribute).match(/([\\\\\\\\?|&]sig=)([^&]*)/);\\u000a if (sig) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]sig=[^&]*/, (sig[1] + ((Math.floor((Math.random() * 65535)) + 65536)))));\\u000a }\\u000a;\\u000a;\\u000a};\"), (\"s399b54ad4f6c978693a6b0a963aeb42c71a41866\")));\n ((window.top.JSBNG_Record.callerJS) = (true));\n function ebe75e181291e1f217f9de74db62fe89366bc0718(JSBNG__event) {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s399b54ad4f6c978693a6b0a963aeb42c71a41866_0\"), (s399b54ad4f6c978693a6b0a963aeb42c71a41866_0_instance), (this), (arguments)))\n };\n (null);\n var meta = (((JSBNG_Record.get)(JSBNG__document, (\"getElementById\")))[(\"getElementById\")])(\"meta_referrer\");\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"origin\"));\n JSBNG__setTimeout(((function() {\n var s399b54ad4f6c978693a6b0a963aeb42c71a41866_1_instance;\n ((s399b54ad4f6c978693a6b0a963aeb42c71a41866_1_instance) = ((JSBNG_Record.eventInstance)((\"s399b54ad4f6c978693a6b0a963aeb42c71a41866_1\"))));\n return ((JSBNG_Record.markFunction)((function() {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s399b54ad4f6c978693a6b0a963aeb42c71a41866_1\"), (s399b54ad4f6c978693a6b0a963aeb42c71a41866_1_instance), (this), (arguments)))\n };\n (null);\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"default\"));\n })));\n })()), 100);\n var attribute = \"href\";\n var ms = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]f=)([^&]*)/);\n if (ms) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]f=[^&]*/, ((((JSBNG_Record.get)(ms, 1))[1]) + 0)));\n }\n ;\n ;\n var attribute = \"href\";\n var sig = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]sig=)([^&]*)/);\n if (sig) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]sig=[^&]*/, ((((JSBNG_Record.get)(sig, 1))[1]) + (((((JSBNG_Record.get)(Math, (\"floor\")))[(\"floor\")])(((((JSBNG_Record.get)(Math, (\"JSBNG__random\")))[(\"JSBNG__random\")])() * 65535)) + 65536)))));\n }\n ;\n ;\n };\n var s399b54ad4f6c978693a6b0a963aeb42c71a41866_0_instance;\n ((s399b54ad4f6c978693a6b0a963aeb42c71a41866_0_instance) = ((JSBNG_Record.eventInstance)((\"s399b54ad4f6c978693a6b0a963aeb42c71a41866_0\"))));\n ((JSBNG_Record.markFunction)((ebe75e181291e1f217f9de74db62fe89366bc0718)));\n} finally {\n ((window.top.JSBNG_Record.callerJS) = (false));\n ((window.top.JSBNG_Record.flushDeferredEvents)());\n};</script><a class=\"emuEventfad_pageclick -cx-PUBLIC-fbEmu__link\" href=\"/ajax/emu/end.php?eid=AQJo2STH8Z0ZkcKUkpL2hG0UgOJaWQ_5aI4nWcbBbXwIiats8_aOWw7t38eQeUOzjUm131gL2k7B8ZEGOSUev1PnIQ29Cf-nBdHF3y70ivkN1B2vddCIDXIoN_FVZmH3Gyk4b7kEPu3CW39RpTOpADPjnm2LfNsR1NH8mKyrjjnlumXaJlyFbbOY-6vl4bm3XNmWDqWpbTYoYkJympNP4omv2CjnrDHRIXTrlZ91aQJl_oOVqIwapteoL_f0Wun0y8bxRvCZmYuhv87WdsOPxU3qUQzJcz5_hpkUTe0kXMYLqdHwL_1ekLvalEXygQARqQruPs_duth8n2zGqHnDomE6Cljswm4jMbqyyyKqPBeMJ10alWZlu3OyeC4fSZsvmi61BVxLs9JqBrcVbNV3O0MLEOkpDpFfeKMNwCjE-ExA7a_KedWBXgy5UgJWY5IN5KPthKxqV85hIJVQ4HEWTzGIdvtOmWaGGLNawRtfMWzWYoYa2CLGz5urEOfIwVa_s80O-ge0-hNlD0_sIrKmCLx7GtJ5cDjCgq0-KtyH9jVGXuXSyTpa3QwFtP8-iIgtKQ_vix6rOC82Zm1dn0cYHirhDdNRFLweDv-lYIWuUiXj614SxOZbZ_X1yZ6Y7-7DdvCSRTygqg5IArqVfv_g9n6GV-pdpOsOYjzzvnGrOaoBd-OFBY_YosMPZdBf0v34tBecySFUI5MmhFHwYpWWymiNwO-brhC1B0D8H7uUcZ1QR-dJ_z_R7PiMc15qESH87TGB41EP_HSefotdTxSow1t1XbKHcbofloRyKib_44cYTva0Unf0bXDh3nyhotODl9lRz_7X15XlMEuE7333f_8FE4rf7qr253yzjOecOC30o9GXo-Vcth091OhfqhXFLuRcv9tK-KQRqYOFSGPMyBdMC70TMzf2MxkLQVcfBNr2qheCwCENg_4AkXZFd6EGJIeofLNsVd-HkgGWelPJ2r_kq_n7phs27az3W4BEm36v5Rf43IJrZxpONnlWE9SrXCyi_pypjqsBNdzImyIRfRRBK6QN9ziiElkxUJNo9SZS4mnJ0wEKXuhT68l-graHuJf2OJHxRWFucPP5J6BgLrVvRSxFAzwHS04BuLdZwDW6M0ZGauto2kkgAhpD_-fWyseltQc_LKuVb9x9OX6SlDhGv4o-D65T9Yh62x_9GYMwsqXj8wpt02CtXStX8aBevpXR_aZ0zCJxC2Gllqne98B5AJFycvK4aPALPJxk5pwyyFyOoO0Sj-JGxb26r3dJIBE&f=1&ui=6010680301716-id_51f2904c3d2af8e11302550&en=fad_pageclick&ed=352352391912&a=0&mac=AQKfXPSPqhiaF4n7&sig=97556&__tn__=zwv\" onmousedown=\"return ebe75e181291e1f217f9de74db62fe89366bc0718.call(this, event);\">marlene's meal makeovers</a>.</span></div></div></div></div></div><div class=\"ego_unit\" data-ego-fbid=\"6007882470930\"><div class=\"-cx-PUBLIC-fbAdUnit__root\" data-ad=\"{"adid":6007882470930,"segment":"market"}\" id=\"6007882470930-id_51f2904c3d2ef2f25249809\"><div class=\"-cx-PRIVATE-fbEmu__root -cx-PRIVATE-fbEmuEgo__unit\"><div class=\"uiSelector inlineBlock emu_x emuEventfad_hide -cx-PUBLIC-fbEmu__link uiSelectorRight\"><div class=\"uiToggle wrap\"><a class=\"uiSelectorButton uiCloseButton uiCloseButtonSmall\" href=\"#\" role=\"button\" title=\"About Facebook Ads\" rel=\"toggle\" ajaxify=\"/ajax/emu/end.php?eid=AQKxDHTm3nyv_XoZgRGgtFyuIx1Dl-9n9KW0L1jI-n5_opSFWrvem0PGojZ7-0RQzO_Tu3Iopn9rwuueiyZ5RFrEsiTTZTDtW5iMmkly6EQLyYfHQodVCV7m8Wvq-wfpSOIQPIHd_g2dXRMVBRH6wAp9bF0Ocv3Vf9hewGLIcMIZMXjU9zH4vh8hPOQxLRh1KfX_eF0__zzpS_2FYUERtJoaHTL3yukbYbhqVMylaq79mmWtMKz2oevMrBL6C9XfDJL8ZQatILXq8rH0GE1wjp6stwakFdPMcymodiW_gBgSIkgqgDoOBg0gTuptQbZQL-vOtG_4tSaE6u0zZ55AkBeWEIxoYaL8gdQxT6QF2gHsXsPY7iMfNhX_kDUz0yiwwoNVsHVNt0d5iGn2pI-nqWFXwXReMNpxMT3Dih2hszZ46hykc4-4efJk0x2y53rLD0aB72b3VNlSvxc2XYux0MeKqhaVZmkZ7IUBo5M3W1OET70-5X_hID2-ZL5vkKVowUbD8PRMRx6794x6_n5bs9DnagwWJv8Z5B6w3YfZK1iRnablKyFNGaiAaVkOi4mdLoFBe-rhRt2ZGi6lRpgh3YphAHVeVeX18YPqSIDfZZpoDkAcmhyd98QHnz4jKpYd09hEsnITc3GhbUKeLLvbevEcgDfVUEp2XdJUpujBFAtEVYuzlJQ6h81g69e7P9Ar2oB2sMbNSLEdXf8BqyRwajlmyL1hmAGXH0ctzJ5ObeQP9cRU-PTUeIB1XyXGwWyzvg5UMHpY5hu0yuyUXmwepvCxgpQoswwF5GrDdhIDifHAH7qdtPm0Ww5OWAuzJrXUrGnS-\\-\\HM3V5vU7XJu2pw4iXtN3EvWeyo8MOQFrP-xr2JNI5DyLeJteh1Lb0Ax29Ze8XO5OmARtSq3MYMZSfa8AytYsBXQHGrpq7XrdFOV4yw2GV9_PBCux9l-D4yCGDHHNhnS7vVVrv6s5C1Ea4sVx86PN8IbKLoXOeI3Xcob8L9FAlT6-blUkqPMVMxHGREiFQSSh-HzSpiWdME_lqa_DuMhzuuEiDqwaZhuL0dEoJ6dX3bxAnEq7EFiaUwtmPFDAEGBAfgmxjM8OrvQLJTDdGxr_jZWEM7RFz9ATw2CPwMB7Jfxp7RpejOpLo6S4JFKNn3VemDxNDPI2mR83ybvgkApOGautfNG-a1DdbNjTCP5i36NpXyomF5OFRsKmVjRtmIX1xXmidb2pMvlx-XMj8Js1ZWq0Z6HODjep7RHMvMe47C7eD3uzY5m4lVXN9rC34WgXa9387CnFxIBuEj9wHQ&f=0&ui=6007882470930-id_51f2904c3d2ef2f25249809&en=fad_hide&ed=true&a=1&__tn__=v\" aria-haspopup=\"1\"></a></div></div><div class=\"title\"><script type=\"text/javascript\">try {\n ((JSBNG_Record.scriptLoad)((\"function e4ca693ff3b871bfffd92997ec2c6db05cf16bb6a(event) {\\u000a var meta = document.getElementById(\\\"meta_referrer\\\");\\u000a meta.content = \\\"origin\\\";\\u000a setTimeout(function() {\\u000a meta.content = \\\"default\\\";\\u000a }, 100);\\u000a var attribute = \\\"href\\\";\\u000a var ms = this.getAttribute(attribute).match(/([\\\\\\\\?|&]f=)([^&]*)/);\\u000a if (ms) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]f=[^&]*/, (ms[1] + 0)));\\u000a }\\u000a;\\u000a;\\u000a var attribute = \\\"href\\\";\\u000a var sig = this.getAttribute(attribute).match(/([\\\\\\\\?|&]sig=)([^&]*)/);\\u000a if (sig) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]sig=[^&]*/, (sig[1] + ((Math.floor((Math.random() * 65535)) + 65536)))));\\u000a }\\u000a;\\u000a;\\u000a};\"), (\"s625458d2e43b662571072377a04c208a8c560d62\")));\n ((window.top.JSBNG_Record.callerJS) = (true));\n function e4ca693ff3b871bfffd92997ec2c6db05cf16bb6a(JSBNG__event) {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s625458d2e43b662571072377a04c208a8c560d62_0\"), (s625458d2e43b662571072377a04c208a8c560d62_0_instance), (this), (arguments)))\n };\n (null);\n var meta = (((JSBNG_Record.get)(JSBNG__document, (\"getElementById\")))[(\"getElementById\")])(\"meta_referrer\");\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"origin\"));\n JSBNG__setTimeout(((function() {\n var s625458d2e43b662571072377a04c208a8c560d62_1_instance;\n ((s625458d2e43b662571072377a04c208a8c560d62_1_instance) = ((JSBNG_Record.eventInstance)((\"s625458d2e43b662571072377a04c208a8c560d62_1\"))));\n return ((JSBNG_Record.markFunction)((function() {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s625458d2e43b662571072377a04c208a8c560d62_1\"), (s625458d2e43b662571072377a04c208a8c560d62_1_instance), (this), (arguments)))\n };\n (null);\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"default\"));\n })));\n })()), 100);\n var attribute = \"href\";\n var ms = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]f=)([^&]*)/);\n if (ms) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]f=[^&]*/, ((((JSBNG_Record.get)(ms, 1))[1]) + 0)));\n }\n ;\n ;\n var attribute = \"href\";\n var sig = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]sig=)([^&]*)/);\n if (sig) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]sig=[^&]*/, ((((JSBNG_Record.get)(sig, 1))[1]) + (((((JSBNG_Record.get)(Math, (\"floor\")))[(\"floor\")])(((((JSBNG_Record.get)(Math, (\"JSBNG__random\")))[(\"JSBNG__random\")])() * 65535)) + 65536)))));\n }\n ;\n ;\n };\n var s625458d2e43b662571072377a04c208a8c560d62_0_instance;\n ((s625458d2e43b662571072377a04c208a8c560d62_0_instance) = ((JSBNG_Record.eventInstance)((\"s625458d2e43b662571072377a04c208a8c560d62_0\"))));\n ((JSBNG_Record.markFunction)((e4ca693ff3b871bfffd92997ec2c6db05cf16bb6a)));\n} finally {\n ((window.top.JSBNG_Record.callerJS) = (false));\n ((window.top.JSBNG_Record.flushDeferredEvents)());\n};</script><a class=\"forceLTR emuEvent1 -cx-PUBLIC-fbEmu__link\" href=\"/ajax/emu/end.php?eid=AQKxDHTm3nyv_XoZgRGgtFyuIx1Dl-9n9KW0L1jI-n5_opSFWrvem0PGojZ7-0RQzO_Tu3Iopn9rwuueiyZ5RFrEsiTTZTDtW5iMmkly6EQLyYfHQodVCV7m8Wvq-wfpSOIQPIHd_g2dXRMVBRH6wAp9bF0Ocv3Vf9hewGLIcMIZMXjU9zH4vh8hPOQxLRh1KfX_eF0__zzpS_2FYUERtJoaHTL3yukbYbhqVMylaq79mmWtMKz2oevMrBL6C9XfDJL8ZQatILXq8rH0GE1wjp6stwakFdPMcymodiW_gBgSIkgqgDoOBg0gTuptQbZQL-vOtG_4tSaE6u0zZ55AkBeWEIxoYaL8gdQxT6QF2gHsXsPY7iMfNhX_kDUz0yiwwoNVsHVNt0d5iGn2pI-nqWFXwXReMNpxMT3Dih2hszZ46hykc4-4efJk0x2y53rLD0aB72b3VNlSvxc2XYux0MeKqhaVZmkZ7IUBo5M3W1OET70-5X_hID2-ZL5vkKVowUbD8PRMRx6794x6_n5bs9DnagwWJv8Z5B6w3YfZK1iRnablKyFNGaiAaVkOi4mdLoFBe-rhRt2ZGi6lRpgh3YphAHVeVeX18YPqSIDfZZpoDkAcmhyd98QHnz4jKpYd09hEsnITc3GhbUKeLLvbevEcgDfVUEp2XdJUpujBFAtEVYuzlJQ6h81g69e7P9Ar2oB2sMbNSLEdXf8BqyRwajlmyL1hmAGXH0ctzJ5ObeQP9cRU-PTUeIB1XyXGwWyzvg5UMHpY5hu0yuyUXmwepvCxgpQoswwF5GrDdhIDifHAH7qdtPm0Ww5OWAuzJrXUrGnS-\\-\\HM3V5vU7XJu2pw4iXtN3EvWeyo8MOQFrP-xr2JNI5DyLeJteh1Lb0Ax29Ze8XO5OmARtSq3MYMZSfa8AytYsBXQHGrpq7XrdFOV4yw2GV9_PBCux9l-D4yCGDHHNhnS7vVVrv6s5C1Ea4sVx86PN8IbKLoXOeI3Xcob8L9FAlT6-blUkqPMVMxHGREiFQSSh-HzSpiWdME_lqa_DuMhzuuEiDqwaZhuL0dEoJ6dX3bxAnEq7EFiaUwtmPFDAEGBAfgmxjM8OrvQLJTDdGxr_jZWEM7RFz9ATw2CPwMB7Jfxp7RpejOpLo6S4JFKNn3VemDxNDPI2mR83ybvgkApOGautfNG-a1DdbNjTCP5i36NpXyomF5OFRsKmVjRtmIX1xXmidb2pMvlx-XMj8Js1ZWq0Z6HODjep7RHMvMe47C7eD3uzY5m4lVXN9rC34WgXa9387CnFxIBuEj9wHQ&f=1&ui=6007882470930-id_51f2904c3d2ef2f25249809&en=1&a=0&sig=102367&__tn__=wv\" onmousedown=\"return e4ca693ff3b871bfffd92997ec2c6db05cf16bb6a.call(this, event);\">Like Cool Cars?</a></div><div class=\"clearfix image_body_block\"><script type=\"text/javascript\">try {\n ((JSBNG_Record.scriptLoad)((\"function e53938e7627bca752056396fb818b0364b033db37(event) {\\u000a var meta = document.getElementById(\\\"meta_referrer\\\");\\u000a meta.content = \\\"origin\\\";\\u000a setTimeout(function() {\\u000a meta.content = \\\"default\\\";\\u000a }, 100);\\u000a var attribute = \\\"href\\\";\\u000a var ms = this.getAttribute(attribute).match(/([\\\\\\\\?|&]f=)([^&]*)/);\\u000a if (ms) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]f=[^&]*/, (ms[1] + 0)));\\u000a }\\u000a;\\u000a;\\u000a var attribute = \\\"href\\\";\\u000a var sig = this.getAttribute(attribute).match(/([\\\\\\\\?|&]sig=)([^&]*)/);\\u000a if (sig) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]sig=[^&]*/, (sig[1] + ((Math.floor((Math.random() * 65535)) + 65536)))));\\u000a }\\u000a;\\u000a;\\u000a};\"), (\"s315c86651673789cd574fcdb8e1e6ff60f8c76c0\")));\n ((window.top.JSBNG_Record.callerJS) = (true));\n function e53938e7627bca752056396fb818b0364b033db37(JSBNG__event) {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s315c86651673789cd574fcdb8e1e6ff60f8c76c0_0\"), (s315c86651673789cd574fcdb8e1e6ff60f8c76c0_0_instance), (this), (arguments)))\n };\n (null);\n var meta = (((JSBNG_Record.get)(JSBNG__document, (\"getElementById\")))[(\"getElementById\")])(\"meta_referrer\");\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"origin\"));\n JSBNG__setTimeout(((function() {\n var s315c86651673789cd574fcdb8e1e6ff60f8c76c0_1_instance;\n ((s315c86651673789cd574fcdb8e1e6ff60f8c76c0_1_instance) = ((JSBNG_Record.eventInstance)((\"s315c86651673789cd574fcdb8e1e6ff60f8c76c0_1\"))));\n return ((JSBNG_Record.markFunction)((function() {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s315c86651673789cd574fcdb8e1e6ff60f8c76c0_1\"), (s315c86651673789cd574fcdb8e1e6ff60f8c76c0_1_instance), (this), (arguments)))\n };\n (null);\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"default\"));\n })));\n })()), 100);\n var attribute = \"href\";\n var ms = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]f=)([^&]*)/);\n if (ms) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]f=[^&]*/, ((((JSBNG_Record.get)(ms, 1))[1]) + 0)));\n }\n ;\n ;\n var attribute = \"href\";\n var sig = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]sig=)([^&]*)/);\n if (sig) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]sig=[^&]*/, ((((JSBNG_Record.get)(sig, 1))[1]) + (((((JSBNG_Record.get)(Math, (\"floor\")))[(\"floor\")])(((((JSBNG_Record.get)(Math, (\"JSBNG__random\")))[(\"JSBNG__random\")])() * 65535)) + 65536)))));\n }\n ;\n ;\n };\n var s315c86651673789cd574fcdb8e1e6ff60f8c76c0_0_instance;\n ((s315c86651673789cd574fcdb8e1e6ff60f8c76c0_0_instance) = ((JSBNG_Record.eventInstance)((\"s315c86651673789cd574fcdb8e1e6ff60f8c76c0_0\"))));\n ((JSBNG_Record.markFunction)((e53938e7627bca752056396fb818b0364b033db37)));\n} finally {\n ((window.top.JSBNG_Record.callerJS) = (false));\n ((window.top.JSBNG_Record.flushDeferredEvents)());\n};</script><a class=\"forceLTR emuEvent1 -cx-PUBLIC-fbEmu__link image fbEmuImage -cx-PRIVATE-uiImageBlock__image -cx-PRIVATE-uiImageBlock__mediumimage lfloat\" tabindex=\"-1\" href=\"/ajax/emu/end.php?eid=AQKxDHTm3nyv_XoZgRGgtFyuIx1Dl-9n9KW0L1jI-n5_opSFWrvem0PGojZ7-0RQzO_Tu3Iopn9rwuueiyZ5RFrEsiTTZTDtW5iMmkly6EQLyYfHQodVCV7m8Wvq-wfpSOIQPIHd_g2dXRMVBRH6wAp9bF0Ocv3Vf9hewGLIcMIZMXjU9zH4vh8hPOQxLRh1KfX_eF0__zzpS_2FYUERtJoaHTL3yukbYbhqVMylaq79mmWtMKz2oevMrBL6C9XfDJL8ZQatILXq8rH0GE1wjp6stwakFdPMcymodiW_gBgSIkgqgDoOBg0gTuptQbZQL-vOtG_4tSaE6u0zZ55AkBeWEIxoYaL8gdQxT6QF2gHsXsPY7iMfNhX_kDUz0yiwwoNVsHVNt0d5iGn2pI-nqWFXwXReMNpxMT3Dih2hszZ46hykc4-4efJk0x2y53rLD0aB72b3VNlSvxc2XYux0MeKqhaVZmkZ7IUBo5M3W1OET70-5X_hID2-ZL5vkKVowUbD8PRMRx6794x6_n5bs9DnagwWJv8Z5B6w3YfZK1iRnablKyFNGaiAaVkOi4mdLoFBe-rhRt2ZGi6lRpgh3YphAHVeVeX18YPqSIDfZZpoDkAcmhyd98QHnz4jKpYd09hEsnITc3GhbUKeLLvbevEcgDfVUEp2XdJUpujBFAtEVYuzlJQ6h81g69e7P9Ar2oB2sMbNSLEdXf8BqyRwajlmyL1hmAGXH0ctzJ5ObeQP9cRU-PTUeIB1XyXGwWyzvg5UMHpY5hu0yuyUXmwepvCxgpQoswwF5GrDdhIDifHAH7qdtPm0Ww5OWAuzJrXUrGnS-\\-\\HM3V5vU7XJu2pw4iXtN3EvWeyo8MOQFrP-xr2JNI5DyLeJteh1Lb0Ax29Ze8XO5OmARtSq3MYMZSfa8AytYsBXQHGrpq7XrdFOV4yw2GV9_PBCux9l-D4yCGDHHNhnS7vVVrv6s5C1Ea4sVx86PN8IbKLoXOeI3Xcob8L9FAlT6-blUkqPMVMxHGREiFQSSh-HzSpiWdME_lqa_DuMhzuuEiDqwaZhuL0dEoJ6dX3bxAnEq7EFiaUwtmPFDAEGBAfgmxjM8OrvQLJTDdGxr_jZWEM7RFz9ATw2CPwMB7Jfxp7RpejOpLo6S4JFKNn3VemDxNDPI2mR83ybvgkApOGautfNG-a1DdbNjTCP5i36NpXyomF5OFRsKmVjRtmIX1xXmidb2pMvlx-XMj8Js1ZWq0Z6HODjep7RHMvMe47C7eD3uzY5m4lVXN9rC34WgXa9387CnFxIBuEj9wHQ&f=1&ui=6007882470930-id_51f2904c3d2ef2f25249809&en=1&a=0&sig=99575&__tn__=ywv\" onmousedown=\"return e53938e7627bca752056396fb818b0364b033db37.call(this, event);\" aria-hidden=\"true\"><img class=\"img\" src=\"http://jsbngssl.fbcdn-creative-a.akamaihd.net/hads-ak-prn1/s110x80/735300_6007844247530_1677760925_n.png\" alt=\"\" /></a><div class=\"-cx-PRIVATE-uiFlexibleBlock__flexiblecontent\"><div class=\"body\"><script type=\"text/javascript\">try {\n ((JSBNG_Record.scriptLoad)((\"function efc72b1b3b01bbec2e62ddd82a8f5af9f0cbe1b78(event) {\\u000a var meta = document.getElementById(\\\"meta_referrer\\\");\\u000a meta.content = \\\"origin\\\";\\u000a setTimeout(function() {\\u000a meta.content = \\\"default\\\";\\u000a }, 100);\\u000a var attribute = \\\"href\\\";\\u000a var ms = this.getAttribute(attribute).match(/([\\\\\\\\?|&]f=)([^&]*)/);\\u000a if (ms) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]f=[^&]*/, (ms[1] + 0)));\\u000a }\\u000a;\\u000a;\\u000a var attribute = \\\"href\\\";\\u000a var sig = this.getAttribute(attribute).match(/([\\\\\\\\?|&]sig=)([^&]*)/);\\u000a if (sig) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]sig=[^&]*/, (sig[1] + ((Math.floor((Math.random() * 65535)) + 65536)))));\\u000a }\\u000a;\\u000a;\\u000a};\"), (\"s400cb16d7b581757ddfcb762b81e5e5ec727070e\")));\n ((window.top.JSBNG_Record.callerJS) = (true));\n function efc72b1b3b01bbec2e62ddd82a8f5af9f0cbe1b78(JSBNG__event) {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s400cb16d7b581757ddfcb762b81e5e5ec727070e_0\"), (s400cb16d7b581757ddfcb762b81e5e5ec727070e_0_instance), (this), (arguments)))\n };\n (null);\n var meta = (((JSBNG_Record.get)(JSBNG__document, (\"getElementById\")))[(\"getElementById\")])(\"meta_referrer\");\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"origin\"));\n JSBNG__setTimeout(((function() {\n var s400cb16d7b581757ddfcb762b81e5e5ec727070e_1_instance;\n ((s400cb16d7b581757ddfcb762b81e5e5ec727070e_1_instance) = ((JSBNG_Record.eventInstance)((\"s400cb16d7b581757ddfcb762b81e5e5ec727070e_1\"))));\n return ((JSBNG_Record.markFunction)((function() {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s400cb16d7b581757ddfcb762b81e5e5ec727070e_1\"), (s400cb16d7b581757ddfcb762b81e5e5ec727070e_1_instance), (this), (arguments)))\n };\n (null);\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"default\"));\n })));\n })()), 100);\n var attribute = \"href\";\n var ms = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]f=)([^&]*)/);\n if (ms) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]f=[^&]*/, ((((JSBNG_Record.get)(ms, 1))[1]) + 0)));\n }\n ;\n ;\n var attribute = \"href\";\n var sig = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]sig=)([^&]*)/);\n if (sig) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]sig=[^&]*/, ((((JSBNG_Record.get)(sig, 1))[1]) + (((((JSBNG_Record.get)(Math, (\"floor\")))[(\"floor\")])(((((JSBNG_Record.get)(Math, (\"JSBNG__random\")))[(\"JSBNG__random\")])() * 65535)) + 65536)))));\n }\n ;\n ;\n };\n var s400cb16d7b581757ddfcb762b81e5e5ec727070e_0_instance;\n ((s400cb16d7b581757ddfcb762b81e5e5ec727070e_0_instance) = ((JSBNG_Record.eventInstance)((\"s400cb16d7b581757ddfcb762b81e5e5ec727070e_0\"))));\n ((JSBNG_Record.markFunction)((efc72b1b3b01bbec2e62ddd82a8f5af9f0cbe1b78)));\n} finally {\n ((window.top.JSBNG_Record.callerJS) = (false));\n ((window.top.JSBNG_Record.flushDeferredEvents)());\n};</script><a class=\"forceLTR emuEvent1 -cx-PUBLIC-fbEmu__link\" href=\"/ajax/emu/end.php?eid=AQKxDHTm3nyv_XoZgRGgtFyuIx1Dl-9n9KW0L1jI-n5_opSFWrvem0PGojZ7-0RQzO_Tu3Iopn9rwuueiyZ5RFrEsiTTZTDtW5iMmkly6EQLyYfHQodVCV7m8Wvq-wfpSOIQPIHd_g2dXRMVBRH6wAp9bF0Ocv3Vf9hewGLIcMIZMXjU9zH4vh8hPOQxLRh1KfX_eF0__zzpS_2FYUERtJoaHTL3yukbYbhqVMylaq79mmWtMKz2oevMrBL6C9XfDJL8ZQatILXq8rH0GE1wjp6stwakFdPMcymodiW_gBgSIkgqgDoOBg0gTuptQbZQL-vOtG_4tSaE6u0zZ55AkBeWEIxoYaL8gdQxT6QF2gHsXsPY7iMfNhX_kDUz0yiwwoNVsHVNt0d5iGn2pI-nqWFXwXReMNpxMT3Dih2hszZ46hykc4-4efJk0x2y53rLD0aB72b3VNlSvxc2XYux0MeKqhaVZmkZ7IUBo5M3W1OET70-5X_hID2-ZL5vkKVowUbD8PRMRx6794x6_n5bs9DnagwWJv8Z5B6w3YfZK1iRnablKyFNGaiAaVkOi4mdLoFBe-rhRt2ZGi6lRpgh3YphAHVeVeX18YPqSIDfZZpoDkAcmhyd98QHnz4jKpYd09hEsnITc3GhbUKeLLvbevEcgDfVUEp2XdJUpujBFAtEVYuzlJQ6h81g69e7P9Ar2oB2sMbNSLEdXf8BqyRwajlmyL1hmAGXH0ctzJ5ObeQP9cRU-PTUeIB1XyXGwWyzvg5UMHpY5hu0yuyUXmwepvCxgpQoswwF5GrDdhIDifHAH7qdtPm0Ww5OWAuzJrXUrGnS-\\-\\HM3V5vU7XJu2pw4iXtN3EvWeyo8MOQFrP-xr2JNI5DyLeJteh1Lb0Ax29Ze8XO5OmARtSq3MYMZSfa8AytYsBXQHGrpq7XrdFOV4yw2GV9_PBCux9l-D4yCGDHHNhnS7vVVrv6s5C1Ea4sVx86PN8IbKLoXOeI3Xcob8L9FAlT6-blUkqPMVMxHGREiFQSSh-HzSpiWdME_lqa_DuMhzuuEiDqwaZhuL0dEoJ6dX3bxAnEq7EFiaUwtmPFDAEGBAfgmxjM8OrvQLJTDdGxr_jZWEM7RFz9ATw2CPwMB7Jfxp7RpejOpLo6S4JFKNn3VemDxNDPI2mR83ybvgkApOGautfNG-a1DdbNjTCP5i36NpXyomF5OFRsKmVjRtmIX1xXmidb2pMvlx-XMj8Js1ZWq0Z6HODjep7RHMvMe47C7eD3uzY5m4lVXN9rC34WgXa9387CnFxIBuEj9wHQ&f=1&ui=6007882470930-id_51f2904c3d2ef2f25249809&en=1&a=0&sig=75951&__tn__=xywv\" onmousedown=\"return efc72b1b3b01bbec2e62ddd82a8f5af9f0cbe1b78.call(this, event);\">We do.</a></div></div></div><div class=\"inline\"><div class=\"action\"><a class=\"uiIconText emuEventfad_fan -cx-PUBLIC-fbEmu__link\" href=\"#\" style=\"padding-left: 17px;\" rel=\"async-post\" ajaxify=\"/ajax/emu/end.php?eid=AQKxDHTm3nyv_XoZgRGgtFyuIx1Dl-9n9KW0L1jI-n5_opSFWrvem0PGojZ7-0RQzO_Tu3Iopn9rwuueiyZ5RFrEsiTTZTDtW5iMmkly6EQLyYfHQodVCV7m8Wvq-wfpSOIQPIHd_g2dXRMVBRH6wAp9bF0Ocv3Vf9hewGLIcMIZMXjU9zH4vh8hPOQxLRh1KfX_eF0__zzpS_2FYUERtJoaHTL3yukbYbhqVMylaq79mmWtMKz2oevMrBL6C9XfDJL8ZQatILXq8rH0GE1wjp6stwakFdPMcymodiW_gBgSIkgqgDoOBg0gTuptQbZQL-vOtG_4tSaE6u0zZ55AkBeWEIxoYaL8gdQxT6QF2gHsXsPY7iMfNhX_kDUz0yiwwoNVsHVNt0d5iGn2pI-nqWFXwXReMNpxMT3Dih2hszZ46hykc4-4efJk0x2y53rLD0aB72b3VNlSvxc2XYux0MeKqhaVZmkZ7IUBo5M3W1OET70-5X_hID2-ZL5vkKVowUbD8PRMRx6794x6_n5bs9DnagwWJv8Z5B6w3YfZK1iRnablKyFNGaiAaVkOi4mdLoFBe-rhRt2ZGi6lRpgh3YphAHVeVeX18YPqSIDfZZpoDkAcmhyd98QHnz4jKpYd09hEsnITc3GhbUKeLLvbevEcgDfVUEp2XdJUpujBFAtEVYuzlJQ6h81g69e7P9Ar2oB2sMbNSLEdXf8BqyRwajlmyL1hmAGXH0ctzJ5ObeQP9cRU-PTUeIB1XyXGwWyzvg5UMHpY5hu0yuyUXmwepvCxgpQoswwF5GrDdhIDifHAH7qdtPm0Ww5OWAuzJrXUrGnS-\\-\\HM3V5vU7XJu2pw4iXtN3EvWeyo8MOQFrP-xr2JNI5DyLeJteh1Lb0Ax29Ze8XO5OmARtSq3MYMZSfa8AytYsBXQHGrpq7XrdFOV4yw2GV9_PBCux9l-D4yCGDHHNhnS7vVVrv6s5C1Ea4sVx86PN8IbKLoXOeI3Xcob8L9FAlT6-blUkqPMVMxHGREiFQSSh-HzSpiWdME_lqa_DuMhzuuEiDqwaZhuL0dEoJ6dX3bxAnEq7EFiaUwtmPFDAEGBAfgmxjM8OrvQLJTDdGxr_jZWEM7RFz9ATw2CPwMB7Jfxp7RpejOpLo6S4JFKNn3VemDxNDPI2mR83ybvgkApOGautfNG-a1DdbNjTCP5i36NpXyomF5OFRsKmVjRtmIX1xXmidb2pMvlx-XMj8Js1ZWq0Z6HODjep7RHMvMe47C7eD3uzY5m4lVXN9rC34WgXa9387CnFxIBuEj9wHQ&f=0&ui=6007882470930-id_51f2904c3d2ef2f25249809&en=fad_fan&ed=457438810959776&a=1&__tn__=wv\" role=\"button\"><i class=\"img sp_4p6kmz sx_bc56c4\" style=\"top: 1px;\"></i>Like</a> · <span class=\"fbEmuContext\">2,957 people like <script type=\"text/javascript\">try {\n ((JSBNG_Record.scriptLoad)((\"function ed363dd5b4457ddc178baa0792dfbc150ae3c2958(event) {\\u000a var meta = document.getElementById(\\\"meta_referrer\\\");\\u000a meta.content = \\\"origin\\\";\\u000a setTimeout(function() {\\u000a meta.content = \\\"default\\\";\\u000a }, 100);\\u000a var attribute = \\\"href\\\";\\u000a var ms = this.getAttribute(attribute).match(/([\\\\\\\\?|&]f=)([^&]*)/);\\u000a if (ms) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]f=[^&]*/, (ms[1] + 0)));\\u000a }\\u000a;\\u000a;\\u000a var attribute = \\\"href\\\";\\u000a var sig = this.getAttribute(attribute).match(/([\\\\\\\\?|&]sig=)([^&]*)/);\\u000a if (sig) {\\u000a this.setAttribute(attribute, this.getAttribute(attribute).replace(/[\\\\\\\\?|&]sig=[^&]*/, (sig[1] + ((Math.floor((Math.random() * 65535)) + 65536)))));\\u000a }\\u000a;\\u000a;\\u000a};\"), (\"s9a2220cdebe3ad13d68296225760bff7aab5543b\")));\n ((window.top.JSBNG_Record.callerJS) = (true));\n function ed363dd5b4457ddc178baa0792dfbc150ae3c2958(JSBNG__event) {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s9a2220cdebe3ad13d68296225760bff7aab5543b_0\"), (s9a2220cdebe3ad13d68296225760bff7aab5543b_0_instance), (this), (arguments)))\n };\n (null);\n var meta = (((JSBNG_Record.get)(JSBNG__document, (\"getElementById\")))[(\"getElementById\")])(\"meta_referrer\");\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"origin\"));\n JSBNG__setTimeout(((function() {\n var s9a2220cdebe3ad13d68296225760bff7aab5543b_1_instance;\n ((s9a2220cdebe3ad13d68296225760bff7aab5543b_1_instance) = ((JSBNG_Record.eventInstance)((\"s9a2220cdebe3ad13d68296225760bff7aab5543b_1\"))));\n return ((JSBNG_Record.markFunction)((function() {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s9a2220cdebe3ad13d68296225760bff7aab5543b_1\"), (s9a2220cdebe3ad13d68296225760bff7aab5543b_1_instance), (this), (arguments)))\n };\n (null);\n ((JSBNG_Record.set)(meta, (\"JSBNG__content\"), \"default\"));\n })));\n })()), 100);\n var attribute = \"href\";\n var ms = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]f=)([^&]*)/);\n if (ms) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]f=[^&]*/, ((((JSBNG_Record.get)(ms, 1))[1]) + 0)));\n }\n ;\n ;\n var attribute = \"href\";\n var sig = (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"match\")))[(\"match\")])(/([\\\\?|&]sig=)([^&]*)/);\n if (sig) {\n (((JSBNG_Record.get)(this, (\"setAttribute\")))[(\"setAttribute\")])(attribute, (((JSBNG_Record.get)((((JSBNG_Record.get)(this, (\"getAttribute\")))[(\"getAttribute\")])(attribute), (\"replace\")))[(\"replace\")])(/[\\\\?|&]sig=[^&]*/, ((((JSBNG_Record.get)(sig, 1))[1]) + (((((JSBNG_Record.get)(Math, (\"floor\")))[(\"floor\")])(((((JSBNG_Record.get)(Math, (\"JSBNG__random\")))[(\"JSBNG__random\")])() * 65535)) + 65536)))));\n }\n ;\n ;\n };\n var s9a2220cdebe3ad13d68296225760bff7aab5543b_0_instance;\n ((s9a2220cdebe3ad13d68296225760bff7aab5543b_0_instance) = ((JSBNG_Record.eventInstance)((\"s9a2220cdebe3ad13d68296225760bff7aab5543b_0\"))));\n ((JSBNG_Record.markFunction)((ed363dd5b4457ddc178baa0792dfbc150ae3c2958)));\n} finally {\n ((window.top.JSBNG_Record.callerJS) = (false));\n ((window.top.JSBNG_Record.flushDeferredEvents)());\n};</script><a class=\"emuEventfad_pageclick -cx-PUBLIC-fbEmu__link\" href=\"/ajax/emu/end.php?eid=AQKxDHTm3nyv_XoZgRGgtFyuIx1Dl-9n9KW0L1jI-n5_opSFWrvem0PGojZ7-0RQzO_Tu3Iopn9rwuueiyZ5RFrEsiTTZTDtW5iMmkly6EQLyYfHQodVCV7m8Wvq-wfpSOIQPIHd_g2dXRMVBRH6wAp9bF0Ocv3Vf9hewGLIcMIZMXjU9zH4vh8hPOQxLRh1KfX_eF0__zzpS_2FYUERtJoaHTL3yukbYbhqVMylaq79mmWtMKz2oevMrBL6C9XfDJL8ZQatILXq8rH0GE1wjp6stwakFdPMcymodiW_gBgSIkgqgDoOBg0gTuptQbZQL-vOtG_4tSaE6u0zZ55AkBeWEIxoYaL8gdQxT6QF2gHsXsPY7iMfNhX_kDUz0yiwwoNVsHVNt0d5iGn2pI-nqWFXwXReMNpxMT3Dih2hszZ46hykc4-4efJk0x2y53rLD0aB72b3VNlSvxc2XYux0MeKqhaVZmkZ7IUBo5M3W1OET70-5X_hID2-ZL5vkKVowUbD8PRMRx6794x6_n5bs9DnagwWJv8Z5B6w3YfZK1iRnablKyFNGaiAaVkOi4mdLoFBe-rhRt2ZGi6lRpgh3YphAHVeVeX18YPqSIDfZZpoDkAcmhyd98QHnz4jKpYd09hEsnITc3GhbUKeLLvbevEcgDfVUEp2XdJUpujBFAtEVYuzlJQ6h81g69e7P9Ar2oB2sMbNSLEdXf8BqyRwajlmyL1hmAGXH0ctzJ5ObeQP9cRU-PTUeIB1XyXGwWyzvg5UMHpY5hu0yuyUXmwepvCxgpQoswwF5GrDdhIDifHAH7qdtPm0Ww5OWAuzJrXUrGnS-\\-\\HM3V5vU7XJu2pw4iXtN3EvWeyo8MOQFrP-xr2JNI5DyLeJteh1Lb0Ax29Ze8XO5OmARtSq3MYMZSfa8AytYsBXQHGrpq7XrdFOV4yw2GV9_PBCux9l-D4yCGDHHNhnS7vVVrv6s5C1Ea4sVx86PN8IbKLoXOeI3Xcob8L9FAlT6-blUkqPMVMxHGREiFQSSh-HzSpiWdME_lqa_DuMhzuuEiDqwaZhuL0dEoJ6dX3bxAnEq7EFiaUwtmPFDAEGBAfgmxjM8OrvQLJTDdGxr_jZWEM7RFz9ATw2CPwMB7Jfxp7RpejOpLo6S4JFKNn3VemDxNDPI2mR83ybvgkApOGautfNG-a1DdbNjTCP5i36NpXyomF5OFRsKmVjRtmIX1xXmidb2pMvlx-XMj8Js1ZWq0Z6HODjep7RHMvMe47C7eD3uzY5m4lVXN9rC34WgXa9387CnFxIBuEj9wHQ&f=1&ui=6007882470930-id_51f2904c3d2ef2f25249809&en=fad_pageclick&ed=457438810959776&a=0&mac=AQJo4bLN86ypaeU2&sig=67548&__tn__=zwv\" onmousedown=\"return ed363dd5b4457ddc178baa0792dfbc150ae3c2958.call(this, event);\">Autoswaprz.com</a>.</span></div></div></div></div></div></div></div></div> "; |
| // undefined |
| o96 = null; |
| // 7264 |
| o94.parentNode = o16; |
| // 7266 |
| f81632121_521.returns.push(o94); |
| // undefined |
| o94 = null; |
| // 7267 |
| // 7268 |
| o93.getAttribute = f81632121_506; |
| // 7269 |
| f81632121_506.returns.push("u_0_2s"); |
| // 7280 |
| f81632121_467.returns.push(1374851216009); |
| // 7284 |
| o94 = {}; |
| // 7285 |
| f81632121_474.returns.push(o94); |
| // 7287 |
| f81632121_478.returns.push(o94); |
| // undefined |
| o94 = null; |
| // 7290 |
| f81632121_467.returns.push(1374851216009); |
| // 7293 |
| f81632121_467.returns.push(1374851216009); |
| // 7296 |
| f81632121_467.returns.push(1374851216010); |
| // 7299 |
| f81632121_467.returns.push(1374851216011); |
| // 7303 |
| o94 = {}; |
| // 7304 |
| f81632121_474.returns.push(o94); |
| // 7306 |
| f81632121_478.returns.push(o94); |
| // undefined |
| o94 = null; |
| // 7307 |
| o94 = {}; |
| // 7309 |
| f81632121_469.returns.push(undefined); |
| // 7310 |
| o96 = {}; |
| // 7313 |
| f81632121_1124.returns.push(undefined); |
| // 7314 |
| o96.cancelBubble = false; |
| // 7316 |
| o96.state = null; |
| // 7318 |
| o96.returnValue = true; |
| // undefined |
| o96 = null; |
| // 7319 |
| o96 = {}; |
| // undefined |
| o96 = null; |
| // 7320 |
| // 7321 |
| // undefined |
| o83 = null; |
| // 7324 |
| f81632121_467.returns.push(1374851216013); |
| // 7327 |
| f81632121_467.returns.push(1374851216013); |
| // 7329 |
| o83 = {}; |
| // 7330 |
| f81632121_508.returns.push(o83); |
| // 7332 |
| o96 = {}; |
| // 7333 |
| f81632121_508.returns.push(o96); |
| // 7334 |
| o97 = {}; |
| // 7335 |
| o96.firstChild = o97; |
| // 7337 |
| o97.nodeType = 8; |
| // 7339 |
| o97.nodeValue = " <div class=\"-cx-PRIVATE-fbDock__root fbDockWrapper fbDockWrapperRight\" id=\"u_0_2u\"><div class=\"fbDock clearfix\"><div class=\"clearfix nubContainer rNubContainer\"><div id=\"ChatTabsPagelet\" data-referrer=\"ChatTabsPagelet\"><div class=\"fbNubGroup clearfix -cx-PUBLIC-fbMercuryChatTab__container\" id=\"u_0_2v\"><div class=\"fbNubGroup clearfix\" id=\"u_0_2w\"></div></div></div><div id=\"BuddylistPagelet\" data-referrer=\"BuddylistPagelet\"><div class=\"-cx-PUBLIC-fbDockChatBuddyListNub__container\"><div class=\"uiToggle -cx-PRIVATE-fbNub__root fbNub -cx-PUBLIC-fbDockChatBuddyListNub__root hide_on_presence_error\" id=\"fbDockChatBuddylistNub\"><a class=\"fbNubButton\" tabindex=\"0\" href=\"#\" rel=\"toggle\" role=\"button\"><span class=\"-cx-PRIVATE-fbDockChatBuddyListNub__unreadcount rfloat\"></span><img class=\"icon lfloat img\" src=\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y4/r/-PAXP-deijE.gif\" alt=\"\" width=\"1\" height=\"1\" /><span class=\"label\">Chat<span class=\"count\"> (<strong>0</strong>)</span></span></a><div class=\"fbNubFlyout uiToggleFlyout\"><div class=\"fbNubFlyoutOuter\"><div class=\"fbNubFlyoutInner\"><div class=\"clearfix fbNubFlyoutTitlebar\" data-jsid=\"nubFlyoutTitlebar\"><div class=\"uiSelector inlineBlock fbChatSidebarDropdown button rfloat uiSelectorRight\" id=\"u_0_31\" data-multiple=\"1\"><div class=\"uiToggle wrap\"><a data-hover=\"tooltip\" aria-label=\"Options\" class=\"uiSelectorButton uiCloseButton\" href=\"#\" role=\"button\" aria-haspopup=\"1\" rel=\"toggle\"></a><div class=\"uiSelectorMenuWrapper uiToggleFlyout\"><div role=\"menu\" class=\"uiMenu uiSelectorMenu\"><ul class=\"uiMenuInner\"><li class=\"uiMenuItem uiMenuItemCheckbox uiSelectorOption checked\" data-label=\"Chat Sounds\"><a class=\"itemAnchor\" role=\"menuitemcheckbox\" tabindex=\"0\" href=\"#\" aria-checked=\"true\"><span class=\"itemLabel fsm\">Chat Sounds</span></a></li><li class=\"uiMenuItem uiMenuItemCheckbox uiSelectorOption\" data-label=\"Advanced Settings...\"><a class=\"itemAnchor\" role=\"menuitemcheckbox\" tabindex=\"-1\" href=\"/ajax/chat/privacy/settings_dialog.php\" aria-checked=\"false\" rel=\"dialog\"><span class=\"itemLabel fsm\">Advanced Settings...</span></a></li><li class=\"uiMenuSeparator\"></li><li class=\"uiMenuItem uiMenuItemCheckbox uiSelectorOption fbChatGoOnlineItem\" data-label=\"Turn On Chat\"><a class=\"itemAnchor\" role=\"menuitemcheckbox\" tabindex=\"-1\" href=\"#\" aria-checked=\"false\"><span class=\"itemLabel fsm\">Turn On Chat</span></a></li><li class=\"uiMenuItem uiMenuItemCheckbox uiSelectorOption fbChatGoOfflineItem\" data-label=\"Turn Off Chat\"><a class=\"itemAnchor\" role=\"menuitemcheckbox\" tabindex=\"-1\" href=\"/ajax/chat/privacy/turn_off_dialog.php\" aria-checked=\"false\" rel=\"dialog\"><span class=\"itemLabel fsm\">Turn Off Chat</span></a></li></ul></div></div></div><select multiple=\"1\"><option value=\"\" disabled=\"1\"></option><option value=\"sound\" selected=\"1\">Chat Sounds</option><option value=\"advanced_settings\">Advanced Settings...</option><option value=\"online\">Turn On Chat</option><option value=\"turn_off_dialog\">Turn Off Chat</option></select></div><div class=\"titlebarLabel clearfix\"><div class=\"titlebarTextWrapper\">Chat</div></div></div><div class=\"fbNubFlyoutBody scrollable\"><div class=\"fbNubFlyoutBodyContent\"><div id=\"u_0_33\"><ul class=\"fbChatOrderedList clearfix\"><li><div class=\"phs fcg\"><span data-jsid=\"message\">Loading...</span></div></li></ul></div><div class=\"fbChatTypeaheadView hidden_elem\" id=\"u_0_2x\"></div></div></div><div class=\"fbNubFlyoutFooter\"><div class=\"-cx-PRIVATE-fbDockChatBuddyListNub__messageouter clearfix\"><img class=\"img\" src=\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y4/r/-PAXP-deijE.gif\" alt=\"\" width=\"1\" height=\"1\" /><div class=\"-cx-PRIVATE-fbDockChatBuddyListNub__message fcg\"></div></div><div class=\"uiTypeahead uiClearableTypeahead fbChatTypeahead\" id=\"u_0_2y\"><div class=\"wrap\"><script type=\"text/javascript\">try {\n ((JSBNG_Record.scriptLoad)((\"function ea7e383ecd3b5f6b16e83b00b802333ed8e45c8c9(event) {\\u000a\\u000a};\"), (\"s0b82d3ea0afb5d2199e454492c80deca405e1fc9\")));\n ((window.top.JSBNG_Record.callerJS) = (true));\n function ea7e383ecd3b5f6b16e83b00b802333ed8e45c8c9(JSBNG__event) {\n if ((!(JSBNG_Record.top.JSBNG_Record.callerJS))) {\n return ((JSBNG_Record.eventCall)((arguments.callee), (\"s0b82d3ea0afb5d2199e454492c80deca405e1fc9_0\"), (s0b82d3ea0afb5d2199e454492c80deca405e1fc9_0_instance), (this), (arguments)))\n };\n (null);\n ;\n };\n var s0b82d3ea0afb5d2199e454492c80deca405e1fc9_0_instance;\n ((s0b82d3ea0afb5d2199e454492c80deca405e1fc9_0_instance) = ((JSBNG_Record.eventInstance)((\"s0b82d3ea0afb5d2199e454492c80deca405e1fc9_0\"))));\n ((JSBNG_Record.markFunction)((ea7e383ecd3b5f6b16e83b00b802333ed8e45c8c9)));\n} finally {\n ((window.top.JSBNG_Record.callerJS) = (false));\n ((window.top.JSBNG_Record.flushDeferredEvents)());\n};</script><button class=\"-cx-PRIVATE-abstractButton__root -cx-PRIVATE-xuiCloseButton__root clear uiTypeaheadCloseButton -cx-PRIVATE-xuiCloseButton__medium -cx-PRIVATE-xuiCloseButton__dark\" title=\"Remove\" onclick=\"return ea7e383ecd3b5f6b16e83b00b802333ed8e45c8c9.call(this, event);\" type=\"button\" id=\"u_0_2z\">Remove</button><input type=\"hidden\" autocomplete=\"off\" class=\"hiddenInput\" /><div class=\"innerWrap\"><input type=\"text\" class=\"inputtext inputsearch textInput DOMControl_placeholder\" autocomplete=\"off\" placeholder=\"Search\" aria-autocomplete=\"list\" aria-expanded=\"false\" aria-owns=\"typeahead_list_u_0_2y\" role=\"combobox\" spellcheck=\"false\" value=\"Search\" aria-label=\"Search\" id=\"u_0_30\" /></div><img class=\"throbber uiLoadingIndicatorAsync img\" src=\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yb/r/GsNJNwuI-UM.gif\" alt=\"\" width=\"16\" height=\"11\" /></div></div></div></div></div></div></div></div></div></div></div></div><div id=\"u_0_34\"></div> "; |
| // undefined |
| o97 = null; |
| // 7340 |
| o96.parentNode = o16; |
| // 7342 |
| f81632121_521.returns.push(o96); |
| // undefined |
| o96 = null; |
| // 7343 |
| // 7344 |
| o83.getAttribute = f81632121_506; |
| // 7345 |
| f81632121_506.returns.push("pagelet_dock"); |
| // 7400 |
| o96 = {}; |
| // 7401 |
| f81632121_476.returns.push(o96); |
| // 7402 |
| // 7403 |
| // 7404 |
| o96.getElementsByTagName = f81632121_502; |
| // 7405 |
| o97 = {}; |
| // 7406 |
| f81632121_502.returns.push(o97); |
| // 7407 |
| o97.length = 0; |
| // undefined |
| o97 = null; |
| // 7409 |
| o97 = {}; |
| // 7410 |
| o96.childNodes = o97; |
| // undefined |
| o96 = null; |
| // 7411 |
| o97.nodeType = void 0; |
| // 7412 |
| o97.getAttributeNode = void 0; |
| // 7413 |
| o97.getElementsByTagName = void 0; |
| // 7414 |
| o97.childNodes = void 0; |
| // undefined |
| o97 = null; |
| // 7417 |
| o96 = {}; |
| // 7418 |
| f81632121_476.returns.push(o96); |
| // 7419 |
| // 7420 |
| // 7421 |
| o96.getElementsByTagName = f81632121_502; |
| // 7422 |
| o97 = {}; |
| // 7423 |
| f81632121_502.returns.push(o97); |
| // 7424 |
| o97.length = 0; |
| // undefined |
| o97 = null; |
| // 7426 |
| o97 = {}; |
| // 7427 |
| o96.childNodes = o97; |
| // undefined |
| o96 = null; |
| // 7428 |
| o97.nodeType = void 0; |
| // 7429 |
| o97.getAttributeNode = void 0; |
| // 7430 |
| o97.getElementsByTagName = void 0; |
| // 7431 |
| o97.childNodes = void 0; |
| // undefined |
| o97 = null; |
| // 7441 |
| o96 = {}; |
| // 7442 |
| f81632121_476.returns.push(o96); |
| // 7443 |
| // 7444 |
| // 7445 |
| o96.getElementsByTagName = f81632121_502; |
| // 7446 |
| o97 = {}; |
| // 7447 |
| f81632121_502.returns.push(o97); |
| // 7448 |
| o97.length = 0; |
| // undefined |
| o97 = null; |
| // 7450 |
| o97 = {}; |
| // 7451 |
| o96.childNodes = o97; |
| // undefined |
| o96 = null; |
| // 7452 |
| o97.nodeType = void 0; |
| // 7453 |
| o97.getAttributeNode = void 0; |
| // 7454 |
| o97.getElementsByTagName = void 0; |
| // 7455 |
| o97.childNodes = void 0; |
| // undefined |
| o97 = null; |
| // 7539 |
| f81632121_467.returns.push(1374851216135); |
| // 7543 |
| f81632121_467.returns.push(1374851216136); |
| // 7548 |
| o96 = {}; |
| // 7549 |
| f81632121_474.returns.push(o96); |
| // 7551 |
| f81632121_467.returns.push(1374851216137); |
| // 7553 |
| o97 = {}; |
| // 7554 |
| f81632121_476.returns.push(o97); |
| // 7555 |
| // 7556 |
| // 7557 |
| // 7558 |
| // 7559 |
| // 7560 |
| // 7561 |
| o96.appendChild = f81632121_478; |
| // 7562 |
| f81632121_478.returns.push(o97); |
| // undefined |
| o97 = null; |
| // 7564 |
| f81632121_467.returns.push(1374851216137); |
| // 7566 |
| o97 = {}; |
| // 7567 |
| f81632121_476.returns.push(o97); |
| // 7568 |
| // 7569 |
| // 7570 |
| // 7571 |
| // 7572 |
| // 7573 |
| // 7575 |
| f81632121_478.returns.push(o97); |
| // undefined |
| o97 = null; |
| // 7577 |
| f81632121_467.returns.push(1374851216138); |
| // 7579 |
| o97 = {}; |
| // 7580 |
| f81632121_476.returns.push(o97); |
| // 7581 |
| // 7582 |
| // 7583 |
| // 7584 |
| // 7585 |
| // 7586 |
| // 7588 |
| f81632121_478.returns.push(o97); |
| // undefined |
| o97 = null; |
| // 7590 |
| f81632121_467.returns.push(1374851216138); |
| // 7592 |
| o97 = {}; |
| // 7593 |
| f81632121_476.returns.push(o97); |
| // 7594 |
| // 7595 |
| // 7596 |
| // 7597 |
| // 7598 |
| // 7599 |
| // 7601 |
| f81632121_478.returns.push(o97); |
| // undefined |
| o97 = null; |
| // 7603 |
| f81632121_467.returns.push(1374851216139); |
| // 7605 |
| o97 = {}; |
| // 7606 |
| f81632121_476.returns.push(o97); |
| // 7607 |
| // 7608 |
| // 7609 |
| // 7610 |
| // 7611 |
| // 7612 |
| // 7614 |
| f81632121_478.returns.push(o97); |
| // undefined |
| o97 = null; |
| // 7616 |
| f81632121_467.returns.push(1374851216140); |
| // 7618 |
| o97 = {}; |
| // 7619 |
| f81632121_476.returns.push(o97); |
| // 7620 |
| // 7621 |
| // 7622 |
| // 7623 |
| // 7624 |
| // 7625 |
| // 7627 |
| f81632121_478.returns.push(o97); |
| // undefined |
| o97 = null; |
| // 7629 |
| f81632121_467.returns.push(1374851216144); |
| // 7631 |
| o97 = {}; |
| // 7632 |
| f81632121_476.returns.push(o97); |
| // 7633 |
| // 7634 |
| // 7635 |
| // 7636 |
| // 7637 |
| // 7638 |
| // 7640 |
| f81632121_478.returns.push(o97); |
| // undefined |
| o97 = null; |
| // 7642 |
| f81632121_467.returns.push(1374851216145); |
| // 7644 |
| o97 = {}; |
| // 7645 |
| f81632121_476.returns.push(o97); |
| // 7646 |
| // 7647 |
| // 7648 |
| // 7649 |
| // 7650 |
| // 7651 |
| // 7653 |
| f81632121_478.returns.push(o97); |
| // undefined |
| o97 = null; |
| // 7655 |
| f81632121_467.returns.push(1374851216145); |
| // 7657 |
| o97 = {}; |
| // 7658 |
| f81632121_476.returns.push(o97); |
| // 7659 |
| // 7660 |
| // 7661 |
| // 7662 |
| // 7663 |
| // 7664 |
| // 7666 |
| f81632121_478.returns.push(o97); |
| // undefined |
| o97 = null; |
| // 7668 |
| f81632121_467.returns.push(1374851216145); |
| // 7670 |
| o97 = {}; |
| // 7671 |
| f81632121_476.returns.push(o97); |
| // 7672 |
| // 7673 |
| // 7674 |
| // 7675 |
| // 7676 |
| // 7677 |
| // 7679 |
| f81632121_478.returns.push(o97); |
| // undefined |
| o97 = null; |
| // 7681 |
| f81632121_467.returns.push(1374851216146); |
| // 7683 |
| o97 = {}; |
| // 7684 |
| f81632121_476.returns.push(o97); |
| // 7685 |
| // 7686 |
| // 7687 |
| // 7688 |
| // 7689 |
| // 7690 |
| // 7692 |
| f81632121_478.returns.push(o97); |
| // undefined |
| o97 = null; |
| // 7694 |
| f81632121_478.returns.push(o96); |
| // undefined |
| o96 = null; |
| // 7697 |
| f81632121_467.returns.push(1374851216149); |
| // 7701 |
| o96 = {}; |
| // 7702 |
| f81632121_474.returns.push(o96); |
| // 7704 |
| f81632121_467.returns.push(1374851216150); |
| // 7706 |
| o97 = {}; |
| // 7707 |
| f81632121_476.returns.push(o97); |
| // 7708 |
| // 7709 |
| // 7710 |
| // 7711 |
| // 7712 |
| // 7713 |
| // 7714 |
| o96.appendChild = f81632121_478; |
| // 7715 |
| f81632121_478.returns.push(o97); |
| // undefined |
| o97 = null; |
| // 7717 |
| f81632121_478.returns.push(o96); |
| // undefined |
| o96 = null; |
| // 7720 |
| f81632121_467.returns.push(1374851216152); |
| // 7724 |
| o96 = {}; |
| // 7725 |
| f81632121_474.returns.push(o96); |
| // 7727 |
| f81632121_467.returns.push(1374851216159); |
| // 7729 |
| o97 = {}; |
| // 7730 |
| f81632121_476.returns.push(o97); |
| // 7731 |
| // 7732 |
| // 7733 |
| // 7734 |
| // 7735 |
| // 7736 |
| // 7737 |
| o96.appendChild = f81632121_478; |
| // 7738 |
| f81632121_478.returns.push(o97); |
| // undefined |
| o97 = null; |
| // 7740 |
| f81632121_467.returns.push(1374851216159); |
| // 7742 |
| o97 = {}; |
| // 7743 |
| f81632121_476.returns.push(o97); |
| // 7744 |
| // 7745 |
| // 7746 |
| // 7747 |
| // 7748 |
| // 7749 |
| // 7751 |
| f81632121_478.returns.push(o97); |
| // undefined |
| o97 = null; |
| // 7753 |
| f81632121_467.returns.push(1374851216160); |
| // 7755 |
| o97 = {}; |
| // 7756 |
| f81632121_476.returns.push(o97); |
| // 7757 |
| // 7758 |
| // 7759 |
| // 7760 |
| // 7761 |
| // 7762 |
| // 7764 |
| f81632121_478.returns.push(o97); |
| // undefined |
| o97 = null; |
| // 7766 |
| f81632121_467.returns.push(1374851216160); |
| // 7768 |
| o97 = {}; |
| // 7769 |
| f81632121_476.returns.push(o97); |
| // 7770 |
| // 7771 |
| // 7772 |
| // 7773 |
| // 7774 |
| // 7775 |
| // 7777 |
| f81632121_478.returns.push(o97); |
| // undefined |
| o97 = null; |
| // 7779 |
| f81632121_467.returns.push(1374851216160); |
| // 7781 |
| o97 = {}; |
| // 7782 |
| f81632121_476.returns.push(o97); |
| // 7783 |
| // 7784 |
| // 7785 |
| // 7786 |
| // 7787 |
| // 7788 |
| // 7790 |
| f81632121_478.returns.push(o97); |
| // undefined |
| o97 = null; |
| // 7792 |
| f81632121_478.returns.push(o96); |
| // undefined |
| o96 = null; |
| // 7795 |
| f81632121_467.returns.push(1374851216161); |
| // 7799 |
| o96 = {}; |
| // 7800 |
| f81632121_474.returns.push(o96); |
| // 7802 |
| f81632121_467.returns.push(1374851216162); |
| // 7804 |
| o97 = {}; |
| // 7805 |
| f81632121_476.returns.push(o97); |
| // 7806 |
| // 7807 |
| // 7808 |
| // 7809 |
| // 7810 |
| // 7811 |
| // 7812 |
| o96.appendChild = f81632121_478; |
| // 7813 |
| f81632121_478.returns.push(o97); |
| // undefined |
| o97 = null; |
| // 7815 |
| f81632121_478.returns.push(o96); |
| // undefined |
| o96 = null; |
| // 7818 |
| f81632121_467.returns.push(1374851216162); |
| // 7822 |
| o96 = {}; |
| // 7823 |
| f81632121_474.returns.push(o96); |
| // 7825 |
| f81632121_478.returns.push(o96); |
| // undefined |
| o96 = null; |
| // 7828 |
| f81632121_467.returns.push(1374851216172); |
| // 7832 |
| o96 = {}; |
| // 7833 |
| f81632121_474.returns.push(o96); |
| // 7835 |
| f81632121_467.returns.push(1374851216172); |
| // 7837 |
| o97 = {}; |
| // 7838 |
| f81632121_476.returns.push(o97); |
| // 7839 |
| // 7840 |
| // 7841 |
| // 7842 |
| // 7843 |
| // 7844 |
| // 7845 |
| o96.appendChild = f81632121_478; |
| // 7846 |
| f81632121_478.returns.push(o97); |
| // undefined |
| o97 = null; |
| // 7848 |
| f81632121_478.returns.push(o96); |
| // undefined |
| o96 = null; |
| // 7851 |
| f81632121_467.returns.push(1374851216173); |
| // 7855 |
| o96 = {}; |
| // 7856 |
| f81632121_474.returns.push(o96); |
| // 7858 |
| f81632121_478.returns.push(o96); |
| // undefined |
| o96 = null; |
| // 7861 |
| f81632121_467.returns.push(1374851216173); |
| // 7864 |
| f81632121_467.returns.push(1374851216174); |
| // 7868 |
| o96 = {}; |
| // 7869 |
| f81632121_474.returns.push(o96); |
| // 7871 |
| f81632121_478.returns.push(o96); |
| // undefined |
| o96 = null; |
| // 7874 |
| f81632121_467.returns.push(1374851216174); |
| // 7878 |
| o96 = {}; |
| // 7879 |
| f81632121_474.returns.push(o96); |
| // 7881 |
| f81632121_467.returns.push(1374851216175); |
| // 7883 |
| o97 = {}; |
| // 7884 |
| f81632121_476.returns.push(o97); |
| // 7885 |
| // 7886 |
| // 7887 |
| // 7888 |
| // 7889 |
| // 7890 |
| // 7891 |
| o96.appendChild = f81632121_478; |
| // 7892 |
| f81632121_478.returns.push(o97); |
| // undefined |
| o97 = null; |
| // 7894 |
| f81632121_478.returns.push(o96); |
| // undefined |
| o96 = null; |
| // 7897 |
| f81632121_467.returns.push(1374851216176); |
| // 7901 |
| o96 = {}; |
| // 7902 |
| f81632121_474.returns.push(o96); |
| // 7904 |
| f81632121_467.returns.push(1374851216177); |
| // 7906 |
| o97 = {}; |
| // 7907 |
| f81632121_476.returns.push(o97); |
| // 7908 |
| // 7909 |
| // 7910 |
| // 7911 |
| // 7912 |
| // 7913 |
| // 7914 |
| o96.appendChild = f81632121_478; |
| // 7915 |
| f81632121_478.returns.push(o97); |
| // undefined |
| o97 = null; |
| // 7917 |
| f81632121_467.returns.push(1374851216178); |
| // 7919 |
| o97 = {}; |
| // 7920 |
| f81632121_476.returns.push(o97); |
| // 7921 |
| // 7922 |
| // 7923 |
| // 7924 |
| // 7925 |
| // 7926 |
| // 7928 |
| f81632121_478.returns.push(o97); |
| // undefined |
| o97 = null; |
| // 7930 |
| f81632121_467.returns.push(1374851216183); |
| // 7932 |
| o97 = {}; |
| // 7933 |
| f81632121_476.returns.push(o97); |
| // 7934 |
| // 7935 |
| // 7936 |
| // 7937 |
| // 7938 |
| // 7939 |
| // 7941 |
| f81632121_478.returns.push(o97); |
| // undefined |
| o97 = null; |
| // 7943 |
| f81632121_467.returns.push(1374851216183); |
| // 7945 |
| o97 = {}; |
| // 7946 |
| f81632121_476.returns.push(o97); |
| // 7947 |
| // 7948 |
| // 7949 |
| // 7950 |
| // 7951 |
| // 7952 |
| // 7954 |
| f81632121_478.returns.push(o97); |
| // undefined |
| o97 = null; |
| // 7956 |
| f81632121_478.returns.push(o96); |
| // undefined |
| o96 = null; |
| // 7959 |
| f81632121_467.returns.push(1374851216184); |
| // 7963 |
| o96 = {}; |
| // 7964 |
| f81632121_474.returns.push(o96); |
| // 7966 |
| f81632121_478.returns.push(o96); |
| // undefined |
| o96 = null; |
| // 7969 |
| f81632121_467.returns.push(1374851216185); |
| // 7973 |
| o96 = {}; |
| // 7974 |
| f81632121_474.returns.push(o96); |
| // 7976 |
| f81632121_467.returns.push(1374851216185); |
| // 7978 |
| o97 = {}; |
| // 7979 |
| f81632121_476.returns.push(o97); |
| // 7980 |
| // 7981 |
| // 7982 |
| // 7983 |
| // 7984 |
| // 7985 |
| // 7986 |
| o96.appendChild = f81632121_478; |
| // 7987 |
| f81632121_478.returns.push(o97); |
| // undefined |
| o97 = null; |
| // 7989 |
| f81632121_478.returns.push(o96); |
| // undefined |
| o96 = null; |
| // 7992 |
| f81632121_467.returns.push(1374851216186); |
| // 7995 |
| f81632121_467.returns.push(1374851216186); |
| // 7999 |
| o96 = {}; |
| // 8000 |
| f81632121_474.returns.push(o96); |
| // 8002 |
| f81632121_478.returns.push(o96); |
| // undefined |
| o96 = null; |
| // 8005 |
| f81632121_467.returns.push(1374851216186); |
| // 8009 |
| o96 = {}; |
| // 8010 |
| f81632121_474.returns.push(o96); |
| // 8012 |
| f81632121_478.returns.push(o96); |
| // undefined |
| o96 = null; |
| // 8015 |
| f81632121_467.returns.push(1374851216187); |
| // 8019 |
| o96 = {}; |
| // 8020 |
| f81632121_474.returns.push(o96); |
| // 8022 |
| f81632121_478.returns.push(o96); |
| // undefined |
| o96 = null; |
| // 8025 |
| f81632121_467.returns.push(1374851216191); |
| // 8029 |
| o96 = {}; |
| // 8030 |
| f81632121_474.returns.push(o96); |
| // 8032 |
| f81632121_478.returns.push(o96); |
| // undefined |
| o96 = null; |
| // 8035 |
| f81632121_467.returns.push(1374851216192); |
| // 8039 |
| o96 = {}; |
| // 8040 |
| f81632121_474.returns.push(o96); |
| // 8042 |
| f81632121_478.returns.push(o96); |
| // undefined |
| o96 = null; |
| // 8045 |
| f81632121_467.returns.push(1374851216192); |
| // 8049 |
| o96 = {}; |
| // 8050 |
| f81632121_474.returns.push(o96); |
| // 8052 |
| f81632121_467.returns.push(1374851216193); |
| // 8054 |
| o97 = {}; |
| // 8055 |
| f81632121_476.returns.push(o97); |
| // 8056 |
| // 8057 |
| // 8058 |
| // 8059 |
| // 8060 |
| // 8061 |
| // 8062 |
| o96.appendChild = f81632121_478; |
| // 8063 |
| f81632121_478.returns.push(o97); |
| // undefined |
| o97 = null; |
| // 8065 |
| f81632121_478.returns.push(o96); |
| // undefined |
| o96 = null; |
| // 8068 |
| f81632121_467.returns.push(1374851216193); |
| // 8072 |
| o96 = {}; |
| // 8073 |
| f81632121_474.returns.push(o96); |
| // 8075 |
| f81632121_478.returns.push(o96); |
| // undefined |
| o96 = null; |
| // 8078 |
| f81632121_467.returns.push(1374851216194); |
| // 8082 |
| o96 = {}; |
| // 8083 |
| f81632121_474.returns.push(o96); |
| // 8085 |
| f81632121_478.returns.push(o96); |
| // undefined |
| o96 = null; |
| // 8087 |
| f81632121_467.returns.push(1374851216195); |
| // 8090 |
| f81632121_467.returns.push(1374851216198); |
| // 8094 |
| o96 = {}; |
| // 8095 |
| f81632121_474.returns.push(o96); |
| // 8097 |
| f81632121_467.returns.push(1374851216199); |
| // 8099 |
| o97 = {}; |
| // 8100 |
| f81632121_476.returns.push(o97); |
| // 8101 |
| // 8102 |
| // 8103 |
| // 8104 |
| // 8105 |
| // 8106 |
| // 8107 |
| o96.appendChild = f81632121_478; |
| // 8108 |
| f81632121_478.returns.push(o97); |
| // undefined |
| o97 = null; |
| // 8110 |
| f81632121_467.returns.push(1374851216200); |
| // 8112 |
| o97 = {}; |
| // 8113 |
| f81632121_476.returns.push(o97); |
| // 8114 |
| // 8115 |
| // 8116 |
| // 8117 |
| // 8118 |
| // 8119 |
| // 8121 |
| f81632121_478.returns.push(o97); |
| // undefined |
| o97 = null; |
| // 8123 |
| f81632121_478.returns.push(o96); |
| // undefined |
| o96 = null; |
| // 8124 |
| o96 = {}; |
| // undefined |
| o96 = null; |
| // 8125 |
| // 8126 |
| // undefined |
| o84 = null; |
| // 8128 |
| f81632121_467.returns.push(1374851216211); |
| // 8130 |
| f81632121_467.returns.push(1374851216211); |
| // 8134 |
| f81632121_12.returns.push(26); |
| // 8136 |
| f81632121_467.returns.push(1374851216212); |
| // 8140 |
| f81632121_12.returns.push(27); |
| // 8142 |
| f81632121_467.returns.push(1374851216212); |
| // 8144 |
| f81632121_467.returns.push(1374851216212); |
| // 8146 |
| f81632121_467.returns.push(1374851216212); |
| // 8150 |
| f81632121_12.returns.push(28); |
| // 8152 |
| f81632121_467.returns.push(1374851216212); |
| // 8156 |
| f81632121_12.returns.push(29); |
| // 8158 |
| f81632121_467.returns.push(1374851216212); |
| // 8165 |
| o0.title = "Gregor Richards"; |
| // 8167 |
| o1._ua_log = "{\"log\":[{\"ts\":1374851176765,\"path\":\"-\",\"index\":0,\"type\":\"init\",\"iref\":\"-\"},{\"path\":\"/index.php\",\"type\":\"click\",\"ts\":1374851178117,\"iref\":\"bluebar\",\"index\":1},{\"path\":\"/index.php\",\"type\":\"click\",\"ts\":1374851184878,\"iref\":\"bluebar\",\"index\":2},{\"path\":\"/index.php\",\"type\":\"submit\",\"ts\":1374851184905,\"iref\":\"bluebar\",\"index\":3}],\"len\":4}"; |
| // 8170 |
| f81632121_467.returns.push(1374851216237); |
| // 8172 |
| f81632121_463.returns.push(1); |
| // 8174 |
| f81632121_463.returns.push(2); |
| // 8177 |
| f81632121_467.returns.push(1374851216239); |
| // 8181 |
| f81632121_7.returns.push(undefined); |
| // 8182 |
| ow81632121.JSBNG__onJSBNG__focus = undefined; |
| // 8187 |
| f81632121_468.returns.push(undefined); |
| // 8188 |
| o8.JSBNG__onDOMMouseScroll = void 0; |
| // 8195 |
| f81632121_468.returns.push(undefined); |
| // 8196 |
| o8.JSBNG__onmousemove = null; |
| // 8200 |
| o84 = {}; |
| // 8201 |
| f81632121_0.returns.push(o84); |
| // undefined |
| o84 = null; |
| // 8203 |
| f81632121_467.returns.push(1374851216242); |
| // 8205 |
| f81632121_482.returns.push("1;1"); |
| // 8207 |
| f81632121_482.returns.push("{\"log\":[{\"ts\":1374851176765,\"path\":\"-\",\"index\":0,\"type\":\"init\",\"iref\":\"-\"},{\"path\":\"/index.php\",\"type\":\"click\",\"ts\":1374851178117,\"iref\":\"bluebar\",\"index\":1},{\"path\":\"/index.php\",\"type\":\"click\",\"ts\":1374851184878,\"iref\":\"bluebar\",\"index\":2},{\"path\":\"/index.php\",\"type\":\"submit\",\"ts\":1374851184905,\"iref\":\"bluebar\",\"index\":3}],\"len\":4}"); |
| // 8209 |
| f81632121_467.returns.push(1374851216243); |
| // 8211 |
| o84 = {}; |
| // 8212 |
| f81632121_70.returns.push(o84); |
| // 8213 |
| // 8214 |
| f81632121_1294 = function() { return f81632121_1294.returns[f81632121_1294.inst++]; }; |
| f81632121_1294.returns = []; |
| f81632121_1294.inst = 0; |
| // 8215 |
| o84.open = f81632121_1294; |
| // 8216 |
| f81632121_1294.returns.push(undefined); |
| // 8217 |
| f81632121_1295 = function() { return f81632121_1295.returns[f81632121_1295.inst++]; }; |
| f81632121_1295.returns = []; |
| f81632121_1295.inst = 0; |
| // 8218 |
| o84.setRequestHeader = f81632121_1295; |
| // 8219 |
| f81632121_1295.returns.push(undefined); |
| // 8222 |
| f81632121_1295.returns.push(undefined); |
| // 8223 |
| f81632121_1296 = function() { return f81632121_1296.returns[f81632121_1296.inst++]; }; |
| f81632121_1296.returns = []; |
| f81632121_1296.inst = 0; |
| // 8224 |
| o84.send = f81632121_1296; |
| // 8225 |
| f81632121_1296.returns.push(undefined); |
| // 8228 |
| o96 = {}; |
| // 8229 |
| f81632121_508.returns.push(o96); |
| // 8230 |
| o96.nodeName = "FORM"; |
| // 8231 |
| o96.__FB_TOKEN = void 0; |
| // 8232 |
| // 8233 |
| o96.getAttribute = f81632121_506; |
| // 8234 |
| o96.hasAttribute = f81632121_507; |
| // 8236 |
| f81632121_507.returns.push(false); |
| // 8237 |
| o96.JSBNG__addEventListener = f81632121_468; |
| // 8239 |
| f81632121_468.returns.push(undefined); |
| // 8240 |
| f81632121_1298 = function() { return f81632121_1298.returns[f81632121_1298.inst++]; }; |
| f81632121_1298.returns = []; |
| f81632121_1298.inst = 0; |
| // 8241 |
| o96.JSBNG__onsubmit = f81632121_1298; |
| // 8244 |
| // undefined |
| o96 = null; |
| // 8248 |
| o96 = {}; |
| // 8249 |
| o97 = {}; |
| // 8251 |
| o96.transport = o84; |
| // 8252 |
| o84.readyState = 1; |
| // 8253 |
| o98 = {}; |
| // 8254 |
| o99 = {}; |
| // 8256 |
| o98.nodeType = void 0; |
| // 8257 |
| o98.length = 1; |
| // 8258 |
| o98["0"] = "I+n09"; |
| // 8265 |
| f81632121_467.returns.push(1374851216301); |
| // 8266 |
| f81632121_12.returns.push(30); |
| // 8267 |
| o100 = {}; |
| // 8268 |
| o101 = {}; |
| // 8270 |
| o100.nodeType = void 0; |
| // 8271 |
| o100.length = 1; |
| // 8272 |
| o100["0"] = "4vv8/"; |
| // 8276 |
| o8.clientHeight = 727; |
| // 8279 |
| o102 = {}; |
| // 8280 |
| o8.classList = o102; |
| // 8282 |
| o102.remove = f81632121_1114; |
| // 8283 |
| f81632121_1114.returns.push(undefined); |
| // 8286 |
| o102.add = f81632121_602; |
| // 8287 |
| f81632121_602.returns.push(undefined); |
| // 8291 |
| o103 = {}; |
| // 8292 |
| o104 = {}; |
| // 8294 |
| o103.nodeType = void 0; |
| // 8295 |
| o103.length = 1; |
| // 8296 |
| o103["0"] = "BjpNB"; |
| // 8303 |
| o105 = {}; |
| // 8304 |
| f81632121_508.returns.push(o105); |
| // 8305 |
| o105.getElementsByTagName = f81632121_502; |
| // 8307 |
| o105.querySelectorAll = f81632121_504; |
| // 8308 |
| o106 = {}; |
| // 8309 |
| f81632121_504.returns.push(o106); |
| // 8310 |
| o106.length = 1; |
| // 8311 |
| o107 = {}; |
| // 8312 |
| o106["0"] = o107; |
| // undefined |
| o106 = null; |
| // 8313 |
| o106 = {}; |
| // 8314 |
| o107.parentNode = o106; |
| // undefined |
| o107 = null; |
| // undefined |
| o106 = null; |
| // 8315 |
| f81632121_12.returns.push(31); |
| // 8320 |
| o16.__FB_TOKEN = void 0; |
| // 8321 |
| // 8323 |
| o16.hasAttribute = f81632121_507; |
| // 8325 |
| f81632121_507.returns.push(false); |
| // 8326 |
| o16.JSBNG__addEventListener = f81632121_468; |
| // 8328 |
| f81632121_468.returns.push(undefined); |
| // 8329 |
| o16.JSBNG__onclick = null; |
| // 8331 |
| o106 = {}; |
| // 8332 |
| o107 = {}; |
| // 8334 |
| o106.nodeType = void 0; |
| // 8335 |
| o106.length = 1; |
| // 8336 |
| o106["0"] = "js0se"; |
| // 8338 |
| o108 = {}; |
| // 8341 |
| o108.cancelBubble = false; |
| // 8344 |
| f81632121_467.returns.push(1374851216392); |
| // 8347 |
| f81632121_1007.returns.push(undefined); |
| // 8349 |
| o108.returnValue = true; |
| // 8352 |
| o109 = {}; |
| // 8353 |
| o108.srcElement = o109; |
| // 8355 |
| o108.target = o109; |
| // 8357 |
| o109.nodeType = 1; |
| // 8358 |
| o110 = {}; |
| // 8359 |
| o109.parentNode = o110; |
| // 8361 |
| o109.getAttribute = f81632121_506; |
| // 8363 |
| f81632121_506.returns.push(null); |
| // 8365 |
| o111 = {}; |
| // 8366 |
| o110.parentNode = o111; |
| // 8367 |
| o110.nodeType = 1; |
| // 8368 |
| o110.getAttribute = f81632121_506; |
| // 8370 |
| f81632121_506.returns.push(null); |
| // 8372 |
| o112 = {}; |
| // 8373 |
| o111.parentNode = o112; |
| // 8374 |
| o111.nodeType = 1; |
| // 8375 |
| o111.getAttribute = f81632121_506; |
| // 8377 |
| f81632121_506.returns.push(null); |
| // 8379 |
| o113 = {}; |
| // 8380 |
| o112.parentNode = o113; |
| // 8381 |
| o112.nodeType = 1; |
| // 8382 |
| o112.getAttribute = f81632121_506; |
| // 8384 |
| f81632121_506.returns.push(null); |
| // 8386 |
| o113.parentNode = o82; |
| // 8387 |
| o113.nodeType = 1; |
| // 8388 |
| o113.getAttribute = f81632121_506; |
| // 8390 |
| f81632121_506.returns.push(null); |
| // 8396 |
| f81632121_506.returns.push(null); |
| // 8402 |
| f81632121_506.returns.push(null); |
| // 8408 |
| f81632121_506.returns.push(null); |
| // 8413 |
| o108.relatedTarget = null; |
| // 8414 |
| o108.fromElement = null; |
| // undefined |
| o108 = null; |
| // 8417 |
| o108 = {}; |
| // 8421 |
| f81632121_467.returns.push(1374851216402); |
| // 8422 |
| o108.cancelBubble = false; |
| // 8423 |
| o108.returnValue = true; |
| // 8426 |
| o108.srcElement = o109; |
| // 8428 |
| o108.target = o109; |
| // 8435 |
| f81632121_506.returns.push(null); |
| // 8441 |
| f81632121_506.returns.push(null); |
| // 8447 |
| f81632121_506.returns.push(null); |
| // 8453 |
| f81632121_506.returns.push(null); |
| // 8459 |
| f81632121_506.returns.push(null); |
| // 8465 |
| f81632121_506.returns.push(null); |
| // 8471 |
| f81632121_506.returns.push(null); |
| // 8477 |
| f81632121_506.returns.push(null); |
| // 8482 |
| o108.JSBNG__screenX = 1047; |
| // 8483 |
| o108.JSBNG__screenY = 478; |
| // 8484 |
| o108.altKey = false; |
| // 8485 |
| o108.bubbles = true; |
| // 8486 |
| o108.button = 0; |
| // 8487 |
| o108.buttons = void 0; |
| // 8488 |
| o108.cancelable = false; |
| // 8489 |
| o108.clientX = 979; |
| // 8490 |
| o108.clientY = 313; |
| // 8491 |
| o108.ctrlKey = false; |
| // 8492 |
| o108.currentTarget = o0; |
| // 8493 |
| o108.defaultPrevented = false; |
| // 8494 |
| o108.detail = 0; |
| // 8495 |
| o108.eventPhase = 3; |
| // 8496 |
| o108.isTrusted = void 0; |
| // 8497 |
| o108.metaKey = false; |
| // 8498 |
| o108.pageX = 979; |
| // 8499 |
| o108.pageY = 472; |
| // 8500 |
| o108.relatedTarget = null; |
| // 8501 |
| o108.fromElement = null; |
| // 8504 |
| o108.shiftKey = false; |
| // 8507 |
| o108.timeStamp = 1374851216401; |
| // 8508 |
| o108.type = "mousemove"; |
| // 8509 |
| o108.view = ow81632121; |
| // undefined |
| o108 = null; |
| // 8515 |
| f81632121_467.returns.push(1374851216462); |
| // 8517 |
| f81632121_467.returns.push(1374851216462); |
| // 8519 |
| f81632121_467.returns.push(1374851216462); |
| // 8521 |
| f81632121_467.returns.push(1374851216462); |
| // 8522 |
| o108 = {}; |
| // 8526 |
| f81632121_467.returns.push(1374851216547); |
| // 8527 |
| o108.cancelBubble = false; |
| // 8528 |
| o108.returnValue = true; |
| // 8531 |
| o108.srcElement = o109; |
| // 8533 |
| o108.target = o109; |
| // 8540 |
| f81632121_506.returns.push(null); |
| // 8546 |
| f81632121_506.returns.push(null); |
| // 8552 |
| f81632121_506.returns.push(null); |
| // 8558 |
| f81632121_506.returns.push(null); |
| // 8564 |
| f81632121_506.returns.push(null); |
| // 8570 |
| f81632121_506.returns.push(null); |
| // 8576 |
| f81632121_506.returns.push(null); |
| // 8582 |
| f81632121_506.returns.push(null); |
| // 8587 |
| o108.JSBNG__screenX = 1048; |
| // 8588 |
| o108.JSBNG__screenY = 478; |
| // 8589 |
| o108.altKey = false; |
| // 8590 |
| o108.bubbles = true; |
| // 8591 |
| o108.button = 0; |
| // 8592 |
| o108.buttons = void 0; |
| // 8593 |
| o108.cancelable = false; |
| // 8594 |
| o108.clientX = 980; |
| // 8595 |
| o108.clientY = 313; |
| // 8596 |
| o108.ctrlKey = false; |
| // 8597 |
| o108.currentTarget = o0; |
| // 8598 |
| o108.defaultPrevented = false; |
| // 8599 |
| o108.detail = 0; |
| // 8600 |
| o108.eventPhase = 3; |
| // 8601 |
| o108.isTrusted = void 0; |
| // 8602 |
| o108.metaKey = false; |
| // 8603 |
| o108.pageX = 980; |
| // 8604 |
| o108.pageY = 472; |
| // 8605 |
| o108.relatedTarget = null; |
| // 8606 |
| o108.fromElement = null; |
| // 8609 |
| o108.shiftKey = false; |
| // 8612 |
| o108.timeStamp = 1374851216547; |
| // 8613 |
| o108.type = "mousemove"; |
| // 8614 |
| o108.view = ow81632121; |
| // undefined |
| o108 = null; |
| // 8619 |
| o108 = {}; |
| // 8623 |
| f81632121_467.returns.push(1374851217846); |
| // 8625 |
| o108.cancelBubble = false; |
| // 8626 |
| o108.returnValue = true; |
| // 8629 |
| o108.srcElement = o109; |
| // 8631 |
| o108.target = o109; |
| // 8638 |
| f81632121_506.returns.push(null); |
| // 8644 |
| f81632121_506.returns.push(null); |
| // 8650 |
| f81632121_506.returns.push(null); |
| // 8656 |
| f81632121_506.returns.push(null); |
| // 8662 |
| f81632121_506.returns.push(null); |
| // 8668 |
| f81632121_506.returns.push(null); |
| // 8674 |
| f81632121_506.returns.push(null); |
| // 8680 |
| f81632121_506.returns.push(null); |
| // 8685 |
| o108.JSBNG__screenX = 941; |
| // 8686 |
| o108.JSBNG__screenY = 502; |
| // 8687 |
| o108.altKey = false; |
| // 8688 |
| o108.bubbles = true; |
| // 8689 |
| o108.button = 0; |
| // 8690 |
| o108.buttons = void 0; |
| // 8691 |
| o108.cancelable = false; |
| // 8692 |
| o108.clientX = 873; |
| // 8693 |
| o108.clientY = 337; |
| // 8694 |
| o108.ctrlKey = false; |
| // 8695 |
| o108.currentTarget = o0; |
| // 8696 |
| o108.defaultPrevented = false; |
| // 8697 |
| o108.detail = 0; |
| // 8698 |
| o108.eventPhase = 3; |
| // 8699 |
| o108.isTrusted = void 0; |
| // 8700 |
| o108.metaKey = false; |
| // 8701 |
| o108.pageX = 873; |
| // 8702 |
| o108.pageY = 496; |
| // 8703 |
| o108.relatedTarget = null; |
| // 8704 |
| o108.fromElement = null; |
| // 8707 |
| o108.shiftKey = false; |
| // 8710 |
| o108.timeStamp = 1374851217846; |
| // 8711 |
| o108.type = "mousemove"; |
| // 8712 |
| o108.view = ow81632121; |
| // undefined |
| o108 = null; |
| // 8717 |
| o108 = {}; |
| // 8721 |
| f81632121_467.returns.push(1374851221800); |
| // 8723 |
| o108.cancelBubble = false; |
| // 8724 |
| o108.returnValue = true; |
| // 8727 |
| o108.srcElement = o109; |
| // 8729 |
| o108.target = o109; |
| // 8736 |
| f81632121_506.returns.push(null); |
| // 8742 |
| f81632121_506.returns.push(null); |
| // 8748 |
| f81632121_506.returns.push(null); |
| // 8754 |
| f81632121_506.returns.push(null); |
| // 8760 |
| f81632121_506.returns.push(null); |
| // 8766 |
| f81632121_506.returns.push(null); |
| // 8772 |
| f81632121_506.returns.push(null); |
| // 8778 |
| f81632121_506.returns.push(null); |
| // 8783 |
| o108.JSBNG__screenX = 942; |
| // 8784 |
| o108.JSBNG__screenY = 502; |
| // 8785 |
| o108.altKey = false; |
| // 8786 |
| o108.bubbles = true; |
| // 8787 |
| o108.button = 0; |
| // 8788 |
| o108.buttons = void 0; |
| // 8789 |
| o108.cancelable = false; |
| // 8790 |
| o108.clientX = 874; |
| // 8791 |
| o108.clientY = 337; |
| // 8792 |
| o108.ctrlKey = false; |
| // 8793 |
| o108.currentTarget = o0; |
| // 8794 |
| o108.defaultPrevented = false; |
| // 8795 |
| o108.detail = 0; |
| // 8796 |
| o108.eventPhase = 3; |
| // 8797 |
| o108.isTrusted = void 0; |
| // 8798 |
| o108.metaKey = false; |
| // 8799 |
| o108.pageX = 874; |
| // 8800 |
| o108.pageY = 496; |
| // 8801 |
| o108.relatedTarget = null; |
| // 8802 |
| o108.fromElement = null; |
| // 8805 |
| o108.shiftKey = false; |
| // 8808 |
| o108.timeStamp = 1374851217855; |
| // 8809 |
| o108.type = "mousemove"; |
| // 8810 |
| o108.view = ow81632121; |
| // undefined |
| o108 = null; |
| // 8815 |
| o108 = {}; |
| // 8818 |
| o108.cancelBubble = false; |
| // 8821 |
| f81632121_467.returns.push(1374851221808); |
| // 8823 |
| o108.returnValue = true; |
| // undefined |
| o108 = null; |
| // 8824 |
| o108 = {}; |
| // 8827 |
| o108.cancelBubble = false; |
| // 8830 |
| f81632121_467.returns.push(1374851221823); |
| // 8832 |
| o108.returnValue = true; |
| // undefined |
| o108 = null; |
| // 8833 |
| o108 = {}; |
| // 8837 |
| f81632121_467.returns.push(1374851221825); |
| // 8838 |
| o108.cancelBubble = false; |
| // 8839 |
| o108.returnValue = true; |
| // 8842 |
| o108.srcElement = o109; |
| // 8844 |
| o108.target = o109; |
| // 8851 |
| f81632121_506.returns.push(null); |
| // 8857 |
| f81632121_506.returns.push(null); |
| // 8863 |
| f81632121_506.returns.push(null); |
| // 8869 |
| f81632121_506.returns.push(null); |
| // 8875 |
| f81632121_506.returns.push(null); |
| // 8881 |
| f81632121_506.returns.push(null); |
| // 8887 |
| f81632121_506.returns.push(null); |
| // 8893 |
| f81632121_506.returns.push(null); |
| // 8898 |
| o108.JSBNG__screenX = 970; |
| // 8899 |
| o108.JSBNG__screenY = 511; |
| // 8900 |
| o108.altKey = false; |
| // 8901 |
| o108.bubbles = true; |
| // 8902 |
| o108.button = 0; |
| // 8903 |
| o108.buttons = void 0; |
| // 8904 |
| o108.cancelable = false; |
| // 8905 |
| o108.clientX = 902; |
| // 8906 |
| o108.clientY = 346; |
| // 8907 |
| o108.ctrlKey = false; |
| // 8908 |
| o108.currentTarget = o0; |
| // 8909 |
| o108.defaultPrevented = false; |
| // 8910 |
| o108.detail = 0; |
| // 8911 |
| o108.eventPhase = 3; |
| // 8912 |
| o108.isTrusted = void 0; |
| // 8913 |
| o108.metaKey = false; |
| // 8914 |
| o108.pageX = 902; |
| // 8915 |
| o108.pageY = 346; |
| // 8916 |
| o108.relatedTarget = null; |
| // 8917 |
| o108.fromElement = null; |
| // 8920 |
| o108.shiftKey = false; |
| // 8923 |
| o108.timeStamp = 1374851221824; |
| // 8924 |
| o108.type = "mousemove"; |
| // 8925 |
| o108.view = ow81632121; |
| // undefined |
| o108 = null; |
| // 8934 |
| ow81632121.JSBNG__random = undefined; |
| // 8935 |
| f81632121_466.returns.push(0.8472101090010256); |
| // 8936 |
| o5.pathname = "/LawlabeeTheWallaby"; |
| // 8938 |
| f81632121_467.returns.push(1374851225480); |
| // 8942 |
| f81632121_12.returns.push(32); |
| // 8943 |
| o108 = {}; |
| // 8944 |
| o114 = {}; |
| // 8946 |
| o108.nodeType = void 0; |
| // 8947 |
| o108.length = 1; |
| // 8948 |
| o108["0"] = "zBhY6"; |
| // 8950 |
| o115 = {}; |
| // 8954 |
| o116 = {}; |
| // 8958 |
| o117 = {}; |
| // 8963 |
| f81632121_1332 = function() { return f81632121_1332.returns[f81632121_1332.inst++]; }; |
| f81632121_1332.returns = []; |
| f81632121_1332.inst = 0; |
| // 8964 |
| o84.getResponseHeader = f81632121_1332; |
| // 8967 |
| f81632121_1332.returns.push("3xmoz3iESIuknM/7/9Ym+VHcCy1tul8y/Lv/ebbexTQ="); |
| // 8970 |
| f81632121_1332.returns.push("3xmoz3iESIuknM/7/9Ym+VHcCy1tul8y/Lv/ebbexTQ="); |
| // 8971 |
| // 8973 |
| o84.JSBNG__status = 200; |
| // 8977 |
| f81632121_467.returns.push(1374851225491); |
| // 8978 |
| f81632121_1333 = function() { return f81632121_1333.returns[f81632121_1333.inst++]; }; |
| f81632121_1333.returns = []; |
| f81632121_1333.inst = 0; |
| // 8979 |
| o96._handleXHRResponse = f81632121_1333; |
| // 8981 |
| f81632121_1334 = function() { return f81632121_1334.returns[f81632121_1334.inst++]; }; |
| f81632121_1334.returns = []; |
| f81632121_1334.inst = 0; |
| // 8982 |
| o96.getOption = f81632121_1334; |
| // 8983 |
| o118 = {}; |
| // 8984 |
| o96.option = o118; |
| // 8985 |
| o118.suppressEvaluation = false; |
| // 8988 |
| f81632121_1334.returns.push(false); |
| // 8989 |
| o84.responseText = "for (;;);{\"__ar\":1,\"payload\":{\"keys\":[]},\"bootloadable\":{},\"ixData\":[]}"; |
| // 8990 |
| f81632121_1336 = function() { return f81632121_1336.returns[f81632121_1336.inst++]; }; |
| f81632121_1336.returns = []; |
| f81632121_1336.inst = 0; |
| // 8991 |
| o96._unshieldResponseText = f81632121_1336; |
| // 8992 |
| f81632121_1336.returns.push("{\"__ar\":1,\"payload\":{\"keys\":[]},\"bootloadable\":{},\"ixData\":[]}"); |
| // 8993 |
| f81632121_1337 = function() { return f81632121_1337.returns[f81632121_1337.inst++]; }; |
| f81632121_1337.returns = []; |
| f81632121_1337.inst = 0; |
| // 8994 |
| o96._interpretResponse = f81632121_1337; |
| // 8995 |
| f81632121_1337.returns.push({__JSBNG_unknown_object:true}); |
| // 8996 |
| f81632121_1338 = function() { return f81632121_1338.returns[f81632121_1338.inst++]; }; |
| f81632121_1338.returns = []; |
| f81632121_1338.inst = 0; |
| // 8997 |
| o96.invokeResponseHandler = f81632121_1338; |
| // 8998 |
| f81632121_1339 = function() { return f81632121_1339.returns[f81632121_1339.inst++]; }; |
| f81632121_1339.returns = []; |
| f81632121_1339.inst = 0; |
| // 8999 |
| o96.handler = f81632121_1339; |
| // 9000 |
| f81632121_1340 = function() { return f81632121_1340.returns[f81632121_1340.inst++]; }; |
| f81632121_1340.returns = []; |
| f81632121_1340.inst = 0; |
| // 9001 |
| o96._isRelevant = f81632121_1340; |
| // 9002 |
| o96._allowCrossPageTransition = void 0; |
| // 9003 |
| o96.id = 3; |
| // 9005 |
| f81632121_1340.returns.push(true); |
| // 9006 |
| f81632121_1341 = function() { return f81632121_1341.returns[f81632121_1341.inst++]; }; |
| f81632121_1341.returns = []; |
| f81632121_1341.inst = 0; |
| // 9007 |
| o96._dispatchResponse = f81632121_1341; |
| // 9008 |
| f81632121_1342 = function() { return f81632121_1342.returns[f81632121_1342.inst++]; }; |
| f81632121_1342.returns = []; |
| f81632121_1342.inst = 0; |
| // 9009 |
| o96.getURI = f81632121_1342; |
| // 9010 |
| o119 = {}; |
| // 9011 |
| o96.uri = o119; |
| // 9012 |
| f81632121_1344 = function() { return f81632121_1344.returns[f81632121_1344.inst++]; }; |
| f81632121_1344.returns = []; |
| f81632121_1344.inst = 0; |
| // 9014 |
| o119.$URIBase0 = ""; |
| // 9015 |
| o119.$URIBase1 = ""; |
| // 9016 |
| o119.$URIBase2 = ""; |
| // 9017 |
| o119.$URIBase3 = "/ajax/webstorage/process_keys.php"; |
| // 9019 |
| o120 = {}; |
| // 9020 |
| o119.$URIBase5 = o120; |
| // undefined |
| o120 = null; |
| // 9021 |
| o119.$URIBase4 = ""; |
| // 9022 |
| f81632121_1344.returns.push("/ajax/webstorage/process_keys.php"); |
| // 9023 |
| f81632121_1342.returns.push("/ajax/webstorage/process_keys.php"); |
| // 9024 |
| o96.preBootloadHandler = void 0; |
| // 9035 |
| f81632121_1344.returns.push("/ajax/webstorage/process_keys.php"); |
| // 9036 |
| f81632121_1342.returns.push("/ajax/webstorage/process_keys.php"); |
| // 9038 |
| f81632121_12.returns.push(33); |
| // 9042 |
| o120 = {}; |
| // 9043 |
| f81632121_474.returns.push(o120); |
| // 9045 |
| f81632121_478.returns.push(o120); |
| // undefined |
| o120 = null; |
| // 9046 |
| f81632121_1338.returns.push(undefined); |
| // 9047 |
| f81632121_1333.returns.push(undefined); |
| // 9050 |
| o118.asynchronous = true; |
| // undefined |
| o118 = null; |
| // 9053 |
| f81632121_1334.returns.push(true); |
| // 9054 |
| // 9056 |
| f81632121_1347 = function() { return f81632121_1347.returns[f81632121_1347.inst++]; }; |
| f81632121_1347.returns = []; |
| f81632121_1347.inst = 0; |
| // 9057 |
| o96.clearStatusIndicator = f81632121_1347; |
| // 9058 |
| f81632121_1348 = function() { return f81632121_1348.returns[f81632121_1348.inst++]; }; |
| f81632121_1348.returns = []; |
| f81632121_1348.inst = 0; |
| // 9059 |
| o96.getStatusElement = f81632121_1348; |
| // 9060 |
| o96.statusElement = null; |
| // 9061 |
| f81632121_1348.returns.push(null); |
| // 9062 |
| f81632121_1347.returns.push(undefined); |
| // 9067 |
| f81632121_1340.returns.push(true); |
| // 9068 |
| f81632121_1349 = function() { return f81632121_1349.returns[f81632121_1349.inst++]; }; |
| f81632121_1349.returns = []; |
| f81632121_1349.inst = 0; |
| // 9069 |
| o96.initialHandler = f81632121_1349; |
| // 9070 |
| f81632121_1349.returns.push(undefined); |
| // 9071 |
| o96.timer = null; |
| // 9072 |
| f81632121_14.returns.push(undefined); |
| // 9074 |
| f81632121_1350 = function() { return f81632121_1350.returns[f81632121_1350.inst++]; }; |
| f81632121_1350.returns = []; |
| f81632121_1350.inst = 0; |
| // 9075 |
| o96._shouldSuppressJS = f81632121_1350; |
| // 9077 |
| f81632121_1339.returns.push(undefined); |
| // 9078 |
| f81632121_1350.returns.push(false); |
| // 9079 |
| f81632121_1351 = function() { return f81632121_1351.returns[f81632121_1351.inst++]; }; |
| f81632121_1351.returns = []; |
| f81632121_1351.inst = 0; |
| // 9080 |
| o96._handleJSResponse = f81632121_1351; |
| // 9081 |
| f81632121_1352 = function() { return f81632121_1352.returns[f81632121_1352.inst++]; }; |
| f81632121_1352.returns = []; |
| f81632121_1352.inst = 0; |
| // 9082 |
| o96.getRelativeTo = f81632121_1352; |
| // 9083 |
| o96.relativeTo = null; |
| // 9084 |
| f81632121_1352.returns.push(null); |
| // 9085 |
| f81632121_1353 = function() { return f81632121_1353.returns[f81632121_1353.inst++]; }; |
| f81632121_1353.returns = []; |
| f81632121_1353.inst = 0; |
| // 9086 |
| o96._handleJSRegisters = f81632121_1353; |
| // 9087 |
| f81632121_1353.returns.push(undefined); |
| // 9088 |
| o96.lid = void 0; |
| // 9090 |
| f81632121_1353.returns.push(undefined); |
| // 9091 |
| f81632121_1351.returns.push(undefined); |
| // 9092 |
| o96.finallyHandler = f81632121_1349; |
| // 9093 |
| f81632121_1349.returns.push(undefined); |
| // 9094 |
| f81632121_1341.returns.push(undefined); |
| // 9101 |
| o118 = {}; |
| // 9102 |
| f81632121_508.returns.push(o118); |
| // 9103 |
| o118.nodeName = "A"; |
| // 9104 |
| o118.__FB_TOKEN = void 0; |
| // 9105 |
| // 9106 |
| o118.getAttribute = f81632121_506; |
| // 9107 |
| o118.hasAttribute = f81632121_507; |
| // 9109 |
| f81632121_507.returns.push(false); |
| // 9110 |
| o118.JSBNG__addEventListener = f81632121_468; |
| // 9112 |
| f81632121_468.returns.push(undefined); |
| // 9113 |
| f81632121_1355 = function() { return f81632121_1355.returns[f81632121_1355.inst++]; }; |
| f81632121_1355.returns = []; |
| f81632121_1355.inst = 0; |
| // 9114 |
| o118.JSBNG__onclick = f81632121_1355; |
| // 9117 |
| // 9120 |
| o120 = {}; |
| // 9121 |
| o121 = {}; |
| // 9123 |
| o120.nodeType = void 0; |
| // 9124 |
| o120.length = 1; |
| // 9125 |
| o120["0"] = "OSd/n"; |
| // 9133 |
| o122 = {}; |
| // 9134 |
| f81632121_508.returns.push(o122); |
| // 9135 |
| o122.getElementsByTagName = f81632121_502; |
| // 9137 |
| o122.querySelectorAll = f81632121_504; |
| // 9138 |
| o123 = {}; |
| // 9139 |
| f81632121_504.returns.push(o123); |
| // 9140 |
| o123.length = 1; |
| // 9141 |
| o124 = {}; |
| // 9142 |
| o123["0"] = o124; |
| // undefined |
| o123 = null; |
| // 9145 |
| o124.__FB_TOKEN = void 0; |
| // 9146 |
| // 9149 |
| o123 = {}; |
| // 9150 |
| f81632121_508.returns.push(o123); |
| // 9151 |
| o123.getElementsByTagName = f81632121_502; |
| // 9153 |
| o123.querySelectorAll = f81632121_504; |
| // undefined |
| o123 = null; |
| // 9154 |
| o123 = {}; |
| // 9155 |
| f81632121_504.returns.push(o123); |
| // 9156 |
| o123.length = 1; |
| // 9157 |
| o125 = {}; |
| // 9158 |
| o123["0"] = o125; |
| // undefined |
| o123 = null; |
| // 9159 |
| o125.__FB_TOKEN = void 0; |
| // 9160 |
| // 9163 |
| o123 = {}; |
| // 9164 |
| f81632121_508.returns.push(o123); |
| // 9165 |
| o123.getElementsByTagName = f81632121_502; |
| // 9167 |
| o123.querySelectorAll = f81632121_504; |
| // 9168 |
| o126 = {}; |
| // 9169 |
| f81632121_504.returns.push(o126); |
| // 9170 |
| o126.length = 1; |
| // 9171 |
| o127 = {}; |
| // 9172 |
| o126["0"] = o127; |
| // undefined |
| o126 = null; |
| // 9173 |
| o127.__FB_TOKEN = void 0; |
| // 9174 |
| // 9177 |
| o126 = {}; |
| // 9178 |
| f81632121_476.returns.push(o126); |
| // 9179 |
| // 9180 |
| // 9181 |
| o126.getElementsByTagName = f81632121_502; |
| // 9182 |
| o128 = {}; |
| // 9183 |
| f81632121_502.returns.push(o128); |
| // 9184 |
| o128.length = 0; |
| // undefined |
| o128 = null; |
| // 9186 |
| o128 = {}; |
| // 9187 |
| o126.childNodes = o128; |
| // undefined |
| o126 = null; |
| // 9188 |
| o128.nodeType = void 0; |
| // undefined |
| o128 = null; |
| // 9190 |
| o126 = {}; |
| // 9191 |
| f81632121_476.returns.push(o126); |
| // 9192 |
| // 9193 |
| // 9194 |
| o126.getElementsByTagName = f81632121_502; |
| // 9195 |
| o128 = {}; |
| // 9196 |
| f81632121_502.returns.push(o128); |
| // 9197 |
| o128.length = 0; |
| // undefined |
| o128 = null; |
| // 9199 |
| o128 = {}; |
| // 9200 |
| o126.childNodes = o128; |
| // undefined |
| o126 = null; |
| // 9201 |
| o128.nodeType = void 0; |
| // undefined |
| o128 = null; |
| // 9203 |
| o126 = {}; |
| // 9204 |
| f81632121_476.returns.push(o126); |
| // 9205 |
| // 9206 |
| // 9207 |
| o126.getElementsByTagName = f81632121_502; |
| // 9208 |
| o128 = {}; |
| // 9209 |
| f81632121_502.returns.push(o128); |
| // 9210 |
| o128.length = 0; |
| // undefined |
| o128 = null; |
| // 9212 |
| o128 = {}; |
| // 9213 |
| o126.childNodes = o128; |
| // undefined |
| o126 = null; |
| // 9214 |
| o128.nodeType = void 0; |
| // undefined |
| o128 = null; |
| // 9216 |
| o126 = {}; |
| // 9217 |
| f81632121_476.returns.push(o126); |
| // 9218 |
| // 9219 |
| // 9220 |
| o126.getElementsByTagName = f81632121_502; |
| // 9221 |
| o128 = {}; |
| // 9222 |
| f81632121_502.returns.push(o128); |
| // 9223 |
| o128.length = 0; |
| // undefined |
| o128 = null; |
| // 9225 |
| o128 = {}; |
| // 9226 |
| o126.childNodes = o128; |
| // undefined |
| o126 = null; |
| // 9227 |
| o128.nodeType = void 0; |
| // undefined |
| o128 = null; |
| // 9229 |
| o126 = {}; |
| // 9230 |
| f81632121_476.returns.push(o126); |
| // 9231 |
| // 9232 |
| // 9233 |
| o126.getElementsByTagName = f81632121_502; |
| // 9234 |
| o128 = {}; |
| // 9235 |
| f81632121_502.returns.push(o128); |
| // 9236 |
| o128.length = 0; |
| // undefined |
| o128 = null; |
| // 9238 |
| o128 = {}; |
| // 9239 |
| o126.childNodes = o128; |
| // undefined |
| o126 = null; |
| // 9240 |
| o128.nodeType = void 0; |
| // undefined |
| o128 = null; |
| // 9242 |
| o126 = {}; |
| // 9243 |
| f81632121_476.returns.push(o126); |
| // 9244 |
| // 9245 |
| // 9246 |
| o126.getElementsByTagName = f81632121_502; |
| // 9247 |
| o128 = {}; |
| // 9248 |
| f81632121_502.returns.push(o128); |
| // 9249 |
| o128.length = 0; |
| // undefined |
| o128 = null; |
| // 9251 |
| o128 = {}; |
| // 9252 |
| o126.childNodes = o128; |
| // undefined |
| o126 = null; |
| // 9253 |
| o128.nodeType = void 0; |
| // undefined |
| o128 = null; |
| // 9258 |
| o126 = {}; |
| // 9259 |
| f81632121_508.returns.push(o126); |
| // undefined |
| o126 = null; |
| // 9262 |
| o126 = {}; |
| // 9263 |
| f81632121_508.returns.push(o126); |
| // undefined |
| o126 = null; |
| // 9265 |
| o126 = {}; |
| // 9266 |
| o16.classList = o126; |
| // 9268 |
| o126.contains = f81632121_513; |
| // undefined |
| o126 = null; |
| // 9269 |
| f81632121_513.returns.push(false); |
| // 9272 |
| o126 = {}; |
| // 9273 |
| f81632121_508.returns.push(o126); |
| // 9275 |
| o128 = {}; |
| // 9276 |
| f81632121_508.returns.push(o128); |
| // 9277 |
| o126.__FB_TOKEN = void 0; |
| // 9278 |
| // 9281 |
| o129 = {}; |
| // 9282 |
| f81632121_508.returns.push(o129); |
| // undefined |
| o129 = null; |
| // 9284 |
| o129 = {}; |
| // 9285 |
| f81632121_508.returns.push(o129); |
| // 9287 |
| o130 = {}; |
| // 9288 |
| f81632121_508.returns.push(o130); |
| // undefined |
| o130 = null; |
| // 9290 |
| o130 = {}; |
| // 9291 |
| f81632121_508.returns.push(o130); |
| // 9293 |
| o131 = {}; |
| // 9294 |
| f81632121_508.returns.push(o131); |
| // 9295 |
| o129.getElementsByTagName = f81632121_502; |
| // 9297 |
| o129.querySelectorAll = f81632121_504; |
| // 9298 |
| o132 = {}; |
| // 9299 |
| f81632121_504.returns.push(o132); |
| // 9300 |
| o132.length = 1; |
| // 9301 |
| o133 = {}; |
| // 9302 |
| o132["0"] = o133; |
| // undefined |
| o132 = null; |
| // 9304 |
| o132 = {}; |
| // 9305 |
| f81632121_476.returns.push(o132); |
| // undefined |
| o132 = null; |
| // 9306 |
| o133.nodeName = "INPUT"; |
| // 9307 |
| o133.__FB_TOKEN = void 0; |
| // 9308 |
| // 9309 |
| o133.getAttribute = f81632121_506; |
| // 9310 |
| o133.hasAttribute = f81632121_507; |
| // 9312 |
| f81632121_507.returns.push(false); |
| // 9313 |
| o133.JSBNG__addEventListener = f81632121_468; |
| // 9315 |
| f81632121_468.returns.push(undefined); |
| // 9316 |
| o133.JSBNG__onkeyup = null; |
| // 9318 |
| o130.nodeName = "A"; |
| // 9319 |
| o130.__FB_TOKEN = void 0; |
| // 9320 |
| // 9321 |
| o130.getAttribute = f81632121_506; |
| // 9322 |
| o130.hasAttribute = f81632121_507; |
| // 9324 |
| f81632121_507.returns.push(false); |
| // 9325 |
| o130.JSBNG__addEventListener = f81632121_468; |
| // 9327 |
| f81632121_468.returns.push(undefined); |
| // 9328 |
| o130.JSBNG__onclick = null; |
| // undefined |
| o130 = null; |
| // 9330 |
| o133.tabIndex = 0; |
| // 9331 |
| // 9332 |
| f81632121_1398 = function() { return f81632121_1398.returns[f81632121_1398.inst++]; }; |
| f81632121_1398.returns = []; |
| f81632121_1398.inst = 0; |
| // 9333 |
| o133.JSBNG__focus = f81632121_1398; |
| // undefined |
| o133 = null; |
| // 9334 |
| f81632121_1398.returns.push(undefined); |
| // 9335 |
| o130 = {}; |
| // 9336 |
| o129.classList = o130; |
| // 9338 |
| o130.contains = f81632121_513; |
| // undefined |
| o130 = null; |
| // 9339 |
| f81632121_513.returns.push(false); |
| // 9340 |
| o130 = {}; |
| // 9341 |
| o129.parentNode = o130; |
| // undefined |
| o129 = null; |
| // 9342 |
| o129 = {}; |
| // 9343 |
| o130.classList = o129; |
| // 9345 |
| o129.contains = f81632121_513; |
| // undefined |
| o129 = null; |
| // 9346 |
| f81632121_513.returns.push(false); |
| // 9347 |
| o129 = {}; |
| // 9348 |
| o130.parentNode = o129; |
| // undefined |
| o130 = null; |
| // 9349 |
| o130 = {}; |
| // 9350 |
| o129.classList = o130; |
| // 9352 |
| o130.contains = f81632121_513; |
| // undefined |
| o130 = null; |
| // 9353 |
| f81632121_513.returns.push(false); |
| // 9354 |
| o129.parentNode = o126; |
| // undefined |
| o129 = null; |
| // 9355 |
| o129 = {}; |
| // 9356 |
| o126.classList = o129; |
| // 9358 |
| o129.contains = f81632121_513; |
| // undefined |
| o129 = null; |
| // 9359 |
| f81632121_513.returns.push(false); |
| // 9360 |
| o126.parentNode = o128; |
| // undefined |
| o126 = null; |
| // 9361 |
| o126 = {}; |
| // 9362 |
| o128.classList = o126; |
| // 9364 |
| o126.contains = f81632121_513; |
| // undefined |
| o126 = null; |
| // 9365 |
| f81632121_513.returns.push(true); |
| // 9366 |
| o131.nodeName = "A"; |
| // 9367 |
| o131.__FB_TOKEN = void 0; |
| // 9368 |
| // 9369 |
| o131.getAttribute = f81632121_506; |
| // 9370 |
| o131.hasAttribute = f81632121_507; |
| // 9372 |
| f81632121_507.returns.push(false); |
| // 9373 |
| o131.JSBNG__addEventListener = f81632121_468; |
| // 9375 |
| f81632121_468.returns.push(undefined); |
| // 9376 |
| o131.JSBNG__onclick = null; |
| // undefined |
| o131 = null; |
| // 9378 |
| o128.getElementsByTagName = f81632121_502; |
| // 9380 |
| o128.querySelectorAll = f81632121_504; |
| // undefined |
| o128 = null; |
| // 9381 |
| o126 = {}; |
| // 9382 |
| f81632121_504.returns.push(o126); |
| // 9383 |
| o126.length = 1; |
| // 9384 |
| o128 = {}; |
| // 9385 |
| o126["0"] = o128; |
| // undefined |
| o126 = null; |
| // 9386 |
| o128.nodeName = "A"; |
| // 9387 |
| o128.__FB_TOKEN = void 0; |
| // 9388 |
| // 9389 |
| o128.getAttribute = f81632121_506; |
| // 9390 |
| o128.hasAttribute = f81632121_507; |
| // 9392 |
| f81632121_507.returns.push(false); |
| // 9393 |
| o128.JSBNG__addEventListener = f81632121_468; |
| // 9395 |
| f81632121_468.returns.push(undefined); |
| // 9396 |
| o128.JSBNG__onclick = null; |
| // undefined |
| o128 = null; |
| // 9400 |
| o126 = {}; |
| // 9401 |
| f81632121_508.returns.push(o126); |
| // undefined |
| o126 = null; |
| // 9402 |
| o126 = {}; |
| // 9403 |
| o128 = {}; |
| // 9405 |
| o126.nodeType = void 0; |
| // 9406 |
| o126.length = 1; |
| // 9407 |
| o126["0"] = "+P3v8"; |
| // 9411 |
| f81632121_467.returns.push(1374851226185); |
| // 9413 |
| f81632121_467.returns.push(1374851226187); |
| // 9415 |
| f81632121_467.returns.push(1374851226187); |
| // 9416 |
| f81632121_14.returns.push(undefined); |
| // 9417 |
| f81632121_12.returns.push(34); |
| // 9418 |
| f81632121_14.returns.push(undefined); |
| // 9422 |
| o129 = {}; |
| // 9423 |
| o130 = {}; |
| // 9425 |
| o129.nodeType = void 0; |
| // 9426 |
| o129.length = 1; |
| // 9427 |
| o129["0"] = "mBpeN"; |
| // 9433 |
| f81632121_13.returns.push(35); |
| // 9434 |
| o3.onLine = true; |
| // 9436 |
| f81632121_467.returns.push(1374851226278); |
| // 9437 |
| f81632121_1413 = function() { return f81632121_1413.returns[f81632121_1413.inst++]; }; |
| f81632121_1413.returns = []; |
| f81632121_1413.inst = 0; |
| // 9438 |
| f81632121_1349.thatReturnsThis = f81632121_1413; |
| // 9442 |
| o131 = {}; |
| // 9443 |
| o132 = {}; |
| // 9445 |
| o131.nodeType = void 0; |
| // 9446 |
| o131.length = 1; |
| // 9447 |
| o131["0"] = "C6rJk"; |
| // 9449 |
| o133 = {}; |
| // 9453 |
| f81632121_467.returns.push(1374851226295); |
| // 9455 |
| f81632121_12.returns.push(36); |
| // 9456 |
| o133.cancelBubble = false; |
| // 9457 |
| o133.returnValue = true; |
| // 9460 |
| o133.srcElement = o109; |
| // 9462 |
| o133.target = o109; |
| // 9469 |
| f81632121_506.returns.push(null); |
| // 9475 |
| f81632121_506.returns.push(null); |
| // 9481 |
| f81632121_506.returns.push(null); |
| // 9487 |
| f81632121_506.returns.push(null); |
| // 9493 |
| f81632121_506.returns.push(null); |
| // 9499 |
| f81632121_506.returns.push(null); |
| // 9505 |
| f81632121_506.returns.push(null); |
| // 9511 |
| f81632121_506.returns.push(null); |
| // 9516 |
| o133.JSBNG__screenX = 970; |
| // 9517 |
| o133.JSBNG__screenY = 511; |
| // 9518 |
| o133.altKey = false; |
| // 9519 |
| o133.bubbles = true; |
| // 9520 |
| o133.button = 0; |
| // 9521 |
| o133.buttons = void 0; |
| // 9522 |
| o133.cancelable = false; |
| // 9523 |
| o133.clientX = 902; |
| // 9524 |
| o133.clientY = 346; |
| // 9525 |
| o133.ctrlKey = false; |
| // 9526 |
| o133.currentTarget = o0; |
| // 9527 |
| o133.defaultPrevented = false; |
| // 9528 |
| o133.detail = 0; |
| // 9529 |
| o133.eventPhase = 3; |
| // 9530 |
| o133.isTrusted = void 0; |
| // 9531 |
| o133.metaKey = false; |
| // 9532 |
| o133.pageX = 902; |
| // 9533 |
| o133.pageY = 346; |
| // 9534 |
| o133.relatedTarget = null; |
| // 9535 |
| o133.fromElement = null; |
| // 9538 |
| o133.shiftKey = false; |
| // 9541 |
| o133.timeStamp = 1374851226294; |
| // 9542 |
| o133.type = "mousemove"; |
| // 9543 |
| o133.view = ow81632121; |
| // undefined |
| o133 = null; |
| // 9546 |
| f81632121_1417 = function() { return f81632121_1417.returns[f81632121_1417.inst++]; }; |
| f81632121_1417.returns = []; |
| f81632121_1417.inst = 0; |
| // 9547 |
| f81632121_1349.thatReturnsFalse = f81632121_1417; |
| // 9555 |
| f81632121_1418 = function() { return f81632121_1418.returns[f81632121_1418.inst++]; }; |
| f81632121_1418.returns = []; |
| f81632121_1418.inst = 0; |
| // 9556 |
| f81632121_1349.thatReturns = f81632121_1418; |
| // 9557 |
| f81632121_1418.returns.push({__JSBNG_unknown_function:true}); |
| // 9558 |
| o133 = {}; |
| // 9559 |
| o134 = {}; |
| // 9561 |
| o133.nodeType = void 0; |
| // 9562 |
| o133.length = 1; |
| // 9563 |
| o133["0"] = "97Zhe"; |
| // 9569 |
| o0.selection = void 0; |
| // 9571 |
| o135 = {}; |
| // 9572 |
| f81632121_476.returns.push(o135); |
| // undefined |
| o135 = null; |
| // 9573 |
| o17.__FB_TOKEN = void 0; |
| // 9574 |
| // 9578 |
| o135 = {}; |
| // 9579 |
| f81632121_504.returns.push(o135); |
| // 9580 |
| o135.length = 1; |
| // 9581 |
| o136 = {}; |
| // 9582 |
| o135["0"] = o136; |
| // undefined |
| o135 = null; |
| // 9586 |
| o135 = {}; |
| // 9587 |
| f81632121_504.returns.push(o135); |
| // 9588 |
| o135.length = 1; |
| // 9589 |
| o135["0"] = o19; |
| // undefined |
| o135 = null; |
| // 9593 |
| o135 = {}; |
| // 9594 |
| f81632121_504.returns.push(o135); |
| // 9595 |
| o135.length = 1; |
| // 9596 |
| o137 = {}; |
| // 9597 |
| o135["0"] = o137; |
| // undefined |
| o135 = null; |
| // 9601 |
| o135 = {}; |
| // 9602 |
| f81632121_504.returns.push(o135); |
| // 9603 |
| o135.length = 1; |
| // 9604 |
| o138 = {}; |
| // 9605 |
| o135["0"] = o138; |
| // undefined |
| o135 = null; |
| // undefined |
| o138 = null; |
| // 9606 |
| o136.ownerDocument = o0; |
| // 9607 |
| o0.defaultView = ow81632121; |
| // 9609 |
| // 9610 |
| // 9611 |
| // 9612 |
| // 9613 |
| o19.nodeName = "INPUT"; |
| // 9614 |
| o135 = {}; |
| // 9615 |
| o136.classList = o135; |
| // 9617 |
| o135.contains = f81632121_513; |
| // 9618 |
| f81632121_513.returns.push(true); |
| // 9620 |
| o19.selectionStart = 0; |
| // 9621 |
| o19.selectionEnd = 0; |
| // undefined |
| o19 = null; |
| // 9626 |
| f81632121_513.returns.push(false); |
| // 9628 |
| o19 = {}; |
| // undefined |
| fo81632121_1423_firstChild = function() { return fo81632121_1423_firstChild.returns[fo81632121_1423_firstChild.inst++]; }; |
| fo81632121_1423_firstChild.returns = []; |
| fo81632121_1423_firstChild.inst = 0; |
| defineGetter(o136, "firstChild", fo81632121_1423_firstChild, undefined); |
| // undefined |
| fo81632121_1423_firstChild.returns.push(o19); |
| // undefined |
| fo81632121_1423_firstChild.returns.push(o19); |
| // 9631 |
| o19.parentNode = o136; |
| // 9633 |
| o136.removeChild = f81632121_521; |
| // 9634 |
| f81632121_521.returns.push(o19); |
| // undefined |
| o19 = null; |
| // undefined |
| fo81632121_1423_firstChild.returns.push(null); |
| // 9637 |
| o19 = {}; |
| // 9638 |
| f81632121_474.returns.push(o19); |
| // 9640 |
| o138 = {}; |
| // 9641 |
| f81632121_598.returns.push(o138); |
| // 9642 |
| o19.appendChild = f81632121_478; |
| // 9643 |
| f81632121_478.returns.push(o138); |
| // 9644 |
| o136.appendChild = f81632121_478; |
| // 9645 |
| f81632121_478.returns.push(o19); |
| // undefined |
| o19 = null; |
| // 9648 |
| o18.add = f81632121_602; |
| // undefined |
| o18 = null; |
| // 9649 |
| f81632121_602.returns.push(undefined); |
| // 9652 |
| o135.remove = f81632121_1114; |
| // undefined |
| o135 = null; |
| // 9653 |
| f81632121_1114.returns.push(undefined); |
| // 9654 |
| // 9655 |
| // 9657 |
| o17.contains = f81632121_645; |
| // 9659 |
| f81632121_645.returns.push(false); |
| // 9660 |
| o18 = {}; |
| // 9661 |
| o137.classList = o18; |
| // undefined |
| o137 = null; |
| // 9663 |
| o18.remove = f81632121_1114; |
| // undefined |
| o18 = null; |
| // 9664 |
| f81632121_1114.returns.push(undefined); |
| // 9668 |
| f81632121_645.returns.push(false); |
| // 9669 |
| o136.nodeName = "DIV"; |
| // 9670 |
| o136.__FB_TOKEN = void 0; |
| // 9671 |
| // 9672 |
| o136.getAttribute = f81632121_506; |
| // 9673 |
| o136.hasAttribute = f81632121_507; |
| // 9675 |
| f81632121_507.returns.push(false); |
| // 9676 |
| o136.JSBNG__addEventListener = f81632121_468; |
| // 9678 |
| f81632121_468.returns.push(undefined); |
| // 9679 |
| o136.JSBNG__onkeydown = null; |
| // 9684 |
| f81632121_468.returns.push(undefined); |
| // 9685 |
| o136.JSBNG__onkeyup = null; |
| // 9690 |
| f81632121_468.returns.push(undefined); |
| // 9691 |
| o136.JSBNG__onkeypress = null; |
| // 9697 |
| f81632121_468.returns.push(undefined); |
| // 9698 |
| o136.JSBNG__onmousedown = null; |
| // 9703 |
| f81632121_468.returns.push(undefined); |
| // 9704 |
| o136.JSBNG__onmouseup = null; |
| // 9709 |
| f81632121_468.returns.push(undefined); |
| // 9710 |
| o136.JSBNG__oncut = null; |
| // 9715 |
| f81632121_468.returns.push(undefined); |
| // 9716 |
| o136.JSBNG__onpaste = null; |
| // 9721 |
| f81632121_468.returns.push(undefined); |
| // 9722 |
| o136.JSBNG__ondrop = null; |
| // 9727 |
| f81632121_468.returns.push(undefined); |
| // 9728 |
| o136.JSBNG__ondragover = null; |
| // 9733 |
| f81632121_468.returns.push(undefined); |
| // 9734 |
| o136.JSBNG__onJSBNG__focus = void 0; |
| // 9739 |
| f81632121_468.returns.push(undefined); |
| // 9740 |
| o136.JSBNG__onJSBNG__blur = void 0; |
| // 9742 |
| // 9743 |
| // 9746 |
| o18 = {}; |
| // 9747 |
| f81632121_508.returns.push(o18); |
| // undefined |
| o18 = null; |
| // 9749 |
| o18 = {}; |
| // 9750 |
| f81632121_508.returns.push(o18); |
| // 9752 |
| o19 = {}; |
| // 9753 |
| f81632121_508.returns.push(o19); |
| // 9754 |
| o18.nodeName = "BUTTON"; |
| // 9755 |
| o18.__FB_TOKEN = void 0; |
| // 9756 |
| // 9757 |
| o18.getAttribute = f81632121_506; |
| // 9758 |
| o18.hasAttribute = f81632121_507; |
| // 9760 |
| f81632121_507.returns.push(false); |
| // 9761 |
| o18.JSBNG__addEventListener = f81632121_468; |
| // 9763 |
| f81632121_468.returns.push(undefined); |
| // 9764 |
| o18.JSBNG__onclick = null; |
| // undefined |
| o18 = null; |
| // 9766 |
| o19.nodeName = "A"; |
| // 9767 |
| o19.__FB_TOKEN = void 0; |
| // 9768 |
| // 9769 |
| o19.getAttribute = f81632121_506; |
| // 9770 |
| o19.hasAttribute = f81632121_507; |
| // 9772 |
| f81632121_507.returns.push(false); |
| // 9773 |
| o19.JSBNG__addEventListener = f81632121_468; |
| // 9775 |
| f81632121_468.returns.push(undefined); |
| // 9776 |
| o19.JSBNG__onclick = null; |
| // undefined |
| o19 = null; |
| // 9781 |
| o18 = {}; |
| // 9782 |
| f81632121_70.returns.push(o18); |
| // 9783 |
| // 9784 |
| o18.open = f81632121_1294; |
| // 9785 |
| f81632121_1294.returns.push(undefined); |
| // 9786 |
| o18.setRequestHeader = f81632121_1295; |
| // 9787 |
| f81632121_1295.returns.push(undefined); |
| // 9789 |
| o18.send = f81632121_1296; |
| // 9790 |
| f81632121_1296.returns.push(undefined); |
| // 9792 |
| o19 = {}; |
| // 9793 |
| f81632121_70.returns.push(o19); |
| // 9794 |
| // 9795 |
| o19.open = f81632121_1294; |
| // 9796 |
| f81632121_1294.returns.push(undefined); |
| // 9797 |
| o19.setRequestHeader = f81632121_1295; |
| // 9798 |
| f81632121_1295.returns.push(undefined); |
| // 9800 |
| o19.send = f81632121_1296; |
| // 9801 |
| f81632121_1296.returns.push(undefined); |
| // 9803 |
| o135 = {}; |
| // 9804 |
| f81632121_508.returns.push(o135); |
| // 9807 |
| o135.__FB_TOKEN = void 0; |
| // 9808 |
| // 9812 |
| o137 = {}; |
| // 9813 |
| f81632121_508.returns.push(o137); |
| // 9815 |
| o16.contains = f81632121_645; |
| // 9817 |
| f81632121_645.returns.push(true); |
| // 9818 |
| o139 = {}; |
| // 9819 |
| f81632121_4.returns.push(o139); |
| // 9820 |
| f81632121_1442 = function() { return f81632121_1442.returns[f81632121_1442.inst++]; }; |
| f81632121_1442.returns = []; |
| f81632121_1442.inst = 0; |
| // 9821 |
| o139.getPropertyValue = f81632121_1442; |
| // undefined |
| o139 = null; |
| // 9822 |
| f81632121_1442.returns.push("fixed"); |
| // 9824 |
| o139 = {}; |
| // 9825 |
| f81632121_508.returns.push(o139); |
| // 9826 |
| o139.offsetHeight = 42; |
| // 9828 |
| o140 = {}; |
| // 9829 |
| f81632121_508.returns.push(o140); |
| // 9830 |
| o140.getElementsByTagName = f81632121_502; |
| // 9832 |
| o140.querySelectorAll = f81632121_504; |
| // 9833 |
| o141 = {}; |
| // 9834 |
| f81632121_504.returns.push(o141); |
| // 9835 |
| o141.length = 1; |
| // 9836 |
| o142 = {}; |
| // 9837 |
| o141["0"] = o142; |
| // undefined |
| o141 = null; |
| // 9841 |
| o141 = {}; |
| // 9842 |
| f81632121_504.returns.push(o141); |
| // 9843 |
| o141.length = 1; |
| // 9844 |
| o143 = {}; |
| // 9845 |
| o141["0"] = o143; |
| // undefined |
| o141 = null; |
| // 9849 |
| o141 = {}; |
| // 9850 |
| f81632121_504.returns.push(o141); |
| // 9851 |
| o141.length = 1; |
| // 9852 |
| o144 = {}; |
| // 9853 |
| o141["0"] = o144; |
| // undefined |
| o141 = null; |
| // undefined |
| o144 = null; |
| // 9857 |
| o141 = {}; |
| // 9858 |
| f81632121_504.returns.push(o141); |
| // 9859 |
| o141.length = 1; |
| // 9860 |
| o141["0"] = o69; |
| // undefined |
| o141 = null; |
| // undefined |
| o69 = null; |
| // 9863 |
| o22.contains = f81632121_513; |
| // undefined |
| o22 = null; |
| // 9864 |
| f81632121_513.returns.push(true); |
| // 9866 |
| o22 = {}; |
| // 9867 |
| f81632121_476.returns.push(o22); |
| // 9868 |
| // 9869 |
| o22.firstChild = null; |
| // 9870 |
| o143.__html = void 0; |
| // 9872 |
| o69 = {}; |
| // 9873 |
| f81632121_474.returns.push(o69); |
| // 9875 |
| o22.appendChild = f81632121_478; |
| // 9876 |
| f81632121_478.returns.push(o69); |
| // undefined |
| o69 = null; |
| // 9877 |
| o142.nodeName = "DIV"; |
| // 9878 |
| o142.__FB_TOKEN = void 0; |
| // 9879 |
| // 9880 |
| o142.getAttribute = f81632121_506; |
| // 9881 |
| o142.hasAttribute = f81632121_507; |
| // 9883 |
| f81632121_507.returns.push(false); |
| // 9884 |
| o142.JSBNG__addEventListener = f81632121_468; |
| // 9886 |
| f81632121_468.returns.push(undefined); |
| // 9887 |
| o142.JSBNG__onclick = null; |
| // 9892 |
| f81632121_468.returns.push(undefined); |
| // 9893 |
| o142.JSBNG__onmouseover = null; |
| // 9895 |
| // 9896 |
| o135.getElementsByTagName = f81632121_502; |
| // 9898 |
| o135.querySelectorAll = f81632121_504; |
| // 9899 |
| o69 = {}; |
| // 9900 |
| f81632121_504.returns.push(o69); |
| // 9901 |
| o69.length = 1; |
| // 9902 |
| o69["0"] = o17; |
| // undefined |
| o69 = null; |
| // 9903 |
| o69 = {}; |
| // 9904 |
| o17.classList = o69; |
| // 9906 |
| o69.contains = f81632121_513; |
| // undefined |
| o69 = null; |
| // 9907 |
| f81632121_513.returns.push(true); |
| // 9911 |
| o69 = {}; |
| // 9912 |
| f81632121_504.returns.push(o69); |
| // 9913 |
| o69.length = 1; |
| // 9914 |
| o69["0"] = o136; |
| // undefined |
| o69 = null; |
| // 9917 |
| f81632121_1457 = function() { return f81632121_1457.returns[f81632121_1457.inst++]; }; |
| f81632121_1457.returns = []; |
| f81632121_1457.inst = 0; |
| // 9918 |
| o16.getAttributeNode = f81632121_1457; |
| // 9920 |
| f81632121_1457.returns.push(null); |
| // 9923 |
| o69 = {}; |
| // 9924 |
| f81632121_502.returns.push(o69); |
| // 9925 |
| o69.length = 1952; |
| // 9926 |
| o69["0"] = o82; |
| // 9927 |
| o82.getAttributeNode = f81632121_1457; |
| // 9929 |
| f81632121_1457.returns.push(null); |
| // 9931 |
| o141 = {}; |
| // 9932 |
| o69["1"] = o141; |
| // 9933 |
| o141.getAttributeNode = f81632121_1457; |
| // 9935 |
| o144 = {}; |
| // 9936 |
| f81632121_1457.returns.push(o144); |
| // 9937 |
| o144.value = "pagelet_bluebar"; |
| // undefined |
| o144 = null; |
| // 9939 |
| o69["2"] = o139; |
| // 9940 |
| o139.getAttributeNode = f81632121_1457; |
| // 9942 |
| o144 = {}; |
| // 9943 |
| f81632121_1457.returns.push(o144); |
| // 9944 |
| o144.value = "blueBarHolder"; |
| // undefined |
| o144 = null; |
| // 9946 |
| o69["3"] = o137; |
| // undefined |
| o69 = null; |
| // 9947 |
| o137.getAttributeNode = f81632121_1457; |
| // 9949 |
| o69 = {}; |
| // 9950 |
| f81632121_1457.returns.push(o69); |
| // 9951 |
| o69.value = "blueBar"; |
| // undefined |
| o69 = null; |
| // 9955 |
| f81632121_645.returns.push(true); |
| // 9956 |
| o137.contains = f81632121_645; |
| // 9958 |
| f81632121_645.returns.push(true); |
| // 9960 |
| o69 = {}; |
| // 9961 |
| f81632121_476.returns.push(o69); |
| // 9962 |
| o140.__html = void 0; |
| // 9964 |
| o144 = {}; |
| // 9965 |
| f81632121_474.returns.push(o144); |
| // 9967 |
| o69.appendChild = f81632121_478; |
| // 9968 |
| f81632121_478.returns.push(o144); |
| // undefined |
| o144 = null; |
| // 9969 |
| o69.__html = void 0; |
| // 9970 |
| o69.mountComponentIntoNode = void 0; |
| // undefined |
| o69 = null; |
| // 9972 |
| o69 = {}; |
| // 9973 |
| f81632121_476.returns.push(o69); |
| // 9974 |
| // 9975 |
| o69.firstChild = null; |
| // 9978 |
| o144 = {}; |
| // 9979 |
| f81632121_474.returns.push(o144); |
| // 9981 |
| o69.appendChild = f81632121_478; |
| // 9982 |
| f81632121_478.returns.push(o144); |
| // undefined |
| o144 = null; |
| // 9984 |
| o144 = {}; |
| // 9985 |
| f81632121_476.returns.push(o144); |
| // 9986 |
| // 9987 |
| o144.firstChild = null; |
| // 9988 |
| o69.__html = void 0; |
| // 9990 |
| o145 = {}; |
| // 9991 |
| f81632121_474.returns.push(o145); |
| // 9993 |
| o144.appendChild = f81632121_478; |
| // 9994 |
| f81632121_478.returns.push(o145); |
| // undefined |
| o145 = null; |
| // 9995 |
| o145 = {}; |
| // 9996 |
| o144.classList = o145; |
| // 9998 |
| o145.add = f81632121_602; |
| // 9999 |
| f81632121_602.returns.push(undefined); |
| // 10000 |
| o144.__FB_TOKEN = void 0; |
| // 10001 |
| // 10002 |
| o137.__FB_TOKEN = void 0; |
| // 10003 |
| // 10004 |
| o137.getAttribute = f81632121_506; |
| // 10005 |
| o137.hasAttribute = f81632121_507; |
| // 10007 |
| f81632121_507.returns.push(false); |
| // 10008 |
| o137.parentNode = o139; |
| // 10009 |
| o139.__FB_TOKEN = void 0; |
| // 10010 |
| // 10011 |
| o139.getAttribute = f81632121_506; |
| // 10012 |
| o139.hasAttribute = f81632121_507; |
| // 10014 |
| f81632121_507.returns.push(false); |
| // 10015 |
| o139.parentNode = o141; |
| // 10016 |
| o141.__FB_TOKEN = void 0; |
| // 10017 |
| // 10018 |
| o141.getAttribute = f81632121_506; |
| // 10019 |
| o141.hasAttribute = f81632121_507; |
| // 10021 |
| f81632121_507.returns.push(false); |
| // 10022 |
| o141.parentNode = o82; |
| // 10023 |
| o82.__FB_TOKEN = void 0; |
| // 10024 |
| // 10026 |
| o82.hasAttribute = f81632121_507; |
| // 10028 |
| f81632121_507.returns.push(false); |
| // 10033 |
| f81632121_507.returns.push(false); |
| // 10038 |
| f81632121_507.returns.push(false); |
| // 10042 |
| o144.id = ""; |
| // 10043 |
| // 10044 |
| o136.setAttribute = f81632121_575; |
| // 10045 |
| f81632121_575.returns.push(undefined); |
| // 10047 |
| f81632121_575.returns.push(undefined); |
| // 10048 |
| f81632121_12.returns.push(37); |
| // 10049 |
| o146 = {}; |
| // undefined |
| fo81632121_1467_style = function() { return fo81632121_1467_style.returns[fo81632121_1467_style.inst++]; }; |
| fo81632121_1467_style.returns = []; |
| fo81632121_1467_style.inst = 0; |
| defineGetter(o144, "style", fo81632121_1467_style, undefined); |
| // undefined |
| fo81632121_1467_style.returns.push(o146); |
| // 10051 |
| // undefined |
| fo81632121_1467_style.returns.push(o146); |
| // 10053 |
| // 10056 |
| o145.remove = f81632121_1114; |
| // undefined |
| o145 = null; |
| // 10057 |
| f81632121_1114.returns.push(undefined); |
| // 10058 |
| o145 = {}; |
| // 10059 |
| o137.classList = o145; |
| // 10061 |
| o145.contains = f81632121_513; |
| // undefined |
| o145 = null; |
| // 10062 |
| f81632121_513.returns.push(false); |
| // 10064 |
| o145 = {}; |
| // 10065 |
| o139.classList = o145; |
| // 10067 |
| o145.contains = f81632121_513; |
| // undefined |
| o145 = null; |
| // 10068 |
| f81632121_513.returns.push(false); |
| // 10070 |
| o145 = {}; |
| // 10071 |
| o141.classList = o145; |
| // undefined |
| o141 = null; |
| // 10073 |
| o145.contains = f81632121_513; |
| // undefined |
| o145 = null; |
| // 10074 |
| f81632121_513.returns.push(false); |
| // 10076 |
| o141 = {}; |
| // 10077 |
| o82.classList = o141; |
| // 10079 |
| o141.contains = f81632121_513; |
| // undefined |
| o141 = null; |
| // 10080 |
| f81632121_513.returns.push(false); |
| // 10085 |
| f81632121_513.returns.push(false); |
| // 10089 |
| o102.contains = f81632121_513; |
| // undefined |
| o102 = null; |
| // 10090 |
| f81632121_513.returns.push(false); |
| // 10092 |
| o0.classList = void 0; |
| // 10093 |
| o0.className = void 0; |
| // 10096 |
| o144.__html = void 0; |
| // 10098 |
| o102 = {}; |
| // 10099 |
| f81632121_474.returns.push(o102); |
| // 10101 |
| o16.appendChild = f81632121_478; |
| // 10102 |
| f81632121_478.returns.push(o102); |
| // undefined |
| o102 = null; |
| // 10106 |
| f81632121_645.returns.push(true); |
| // 10107 |
| o102 = {}; |
| // 10108 |
| f81632121_4.returns.push(o102); |
| // 10109 |
| o102.getPropertyValue = f81632121_1442; |
| // undefined |
| o102 = null; |
| // 10110 |
| f81632121_1442.returns.push("fixed"); |
| // 10114 |
| f81632121_513.returns.push(false); |
| // 10119 |
| f81632121_513.returns.push(false); |
| // 10124 |
| f81632121_513.returns.push(false); |
| // 10129 |
| f81632121_513.returns.push(false); |
| // 10134 |
| f81632121_513.returns.push(false); |
| // 10139 |
| f81632121_513.returns.push(false); |
| // 10146 |
| o102 = {}; |
| // 10147 |
| f81632121_4.returns.push(o102); |
| // 10148 |
| o102.getPropertyValue = f81632121_1442; |
| // undefined |
| o102 = null; |
| // 10149 |
| f81632121_1442.returns.push("static"); |
| // 10154 |
| f81632121_645.returns.push(false); |
| // undefined |
| fo81632121_1467_style.returns.push(o146); |
| // 10158 |
| // 10159 |
| o102 = {}; |
| // undefined |
| fo81632121_1465_style = function() { return fo81632121_1465_style.returns[fo81632121_1465_style.inst++]; }; |
| fo81632121_1465_style.returns = []; |
| fo81632121_1465_style.inst = 0; |
| defineGetter(o69, "style", fo81632121_1465_style, undefined); |
| // undefined |
| fo81632121_1465_style.returns.push(o102); |
| // 10161 |
| // 10163 |
| o141 = {}; |
| // 10164 |
| f81632121_4.returns.push(o141); |
| // 10165 |
| o141.getPropertyValue = f81632121_1442; |
| // undefined |
| o141 = null; |
| // 10166 |
| f81632121_1442.returns.push("ltr"); |
| // undefined |
| fo81632121_1465_style.returns.push(o102); |
| // 10168 |
| // undefined |
| o102 = null; |
| // 10169 |
| o102 = {}; |
| // 10170 |
| o69.classList = o102; |
| // 10172 |
| o102.add = f81632121_602; |
| // undefined |
| o102 = null; |
| // 10173 |
| f81632121_602.returns.push(undefined); |
| // 10177 |
| f81632121_602.returns.push(undefined); |
| // 10183 |
| o8.contains = f81632121_645; |
| // 10185 |
| f81632121_645.returns.push(true); |
| // 10186 |
| f81632121_1481 = function() { return f81632121_1481.returns[f81632121_1481.inst++]; }; |
| f81632121_1481.returns = []; |
| f81632121_1481.inst = 0; |
| // 10187 |
| o137.getBoundingClientRect = f81632121_1481; |
| // 10188 |
| o102 = {}; |
| // 10189 |
| f81632121_1481.returns.push(o102); |
| // 10190 |
| o102.left = 0; |
| // 10191 |
| o8.clientLeft = 0; |
| // 10192 |
| o102.JSBNG__top = 0; |
| // undefined |
| o102 = null; |
| // 10193 |
| o8.clientTop = 0; |
| // 10194 |
| o137.offsetWidth = 1017; |
| // 10195 |
| o137.offsetHeight = 42; |
| // undefined |
| fo81632121_1467_style.returns.push(o146); |
| // 10197 |
| // undefined |
| fo81632121_1467_style.returns.push(o146); |
| // 10199 |
| // undefined |
| o146 = null; |
| // 10203 |
| f81632121_513.returns.push(false); |
| // 10208 |
| f81632121_513.returns.push(false); |
| // 10213 |
| f81632121_513.returns.push(false); |
| // 10218 |
| f81632121_513.returns.push(false); |
| // 10223 |
| f81632121_513.returns.push(false); |
| // 10228 |
| f81632121_513.returns.push(false); |
| // 10240 |
| f81632121_645.returns.push(false); |
| // 10242 |
| o16.scrollLeft = 0; |
| // 10243 |
| o16.scrollTop = 0; |
| // 10244 |
| o102 = {}; |
| // undefined |
| fo81632121_1467_style.returns.push(o102); |
| // 10246 |
| // undefined |
| fo81632121_1467_style.returns.push(o102); |
| // 10248 |
| // 10252 |
| f81632121_513.returns.push(false); |
| // 10257 |
| f81632121_513.returns.push(false); |
| // 10262 |
| f81632121_513.returns.push(false); |
| // 10267 |
| f81632121_513.returns.push(false); |
| // 10272 |
| f81632121_513.returns.push(false); |
| // 10277 |
| f81632121_513.returns.push(false); |
| // 10287 |
| o141 = {}; |
| // 10288 |
| f81632121_4.returns.push(o141); |
| // 10289 |
| o141.getPropertyValue = f81632121_1442; |
| // undefined |
| o141 = null; |
| // 10290 |
| f81632121_1442.returns.push("static"); |
| // 10291 |
| o141 = {}; |
| // 10292 |
| f81632121_4.returns.push(o141); |
| // 10293 |
| o141.getPropertyValue = f81632121_1442; |
| // undefined |
| o141 = null; |
| // 10294 |
| f81632121_1442.returns.push("static"); |
| // 10295 |
| o141 = {}; |
| // 10296 |
| f81632121_4.returns.push(o141); |
| // 10297 |
| o141.getPropertyValue = f81632121_1442; |
| // undefined |
| o141 = null; |
| // 10298 |
| f81632121_1442.returns.push("static"); |
| // 10299 |
| o141 = {}; |
| // 10300 |
| f81632121_4.returns.push(o141); |
| // 10301 |
| o141.getPropertyValue = f81632121_1442; |
| // undefined |
| o141 = null; |
| // 10302 |
| f81632121_1442.returns.push("fixed"); |
| // 10303 |
| o141 = {}; |
| // 10304 |
| f81632121_4.returns.push(o141); |
| // 10305 |
| o141.getPropertyValue = f81632121_1442; |
| // undefined |
| o141 = null; |
| // 10306 |
| f81632121_1442.returns.push("300"); |
| // undefined |
| fo81632121_1467_style.returns.push(o102); |
| // 10308 |
| // 10310 |
| o69.nodeName = "DIV"; |
| // 10311 |
| o69.__FB_TOKEN = void 0; |
| // 10312 |
| // 10313 |
| o69.getAttribute = f81632121_506; |
| // 10314 |
| o69.hasAttribute = f81632121_507; |
| // 10316 |
| f81632121_507.returns.push(false); |
| // 10317 |
| o69.JSBNG__addEventListener = f81632121_468; |
| // 10319 |
| f81632121_468.returns.push(undefined); |
| // 10320 |
| o69.JSBNG__onmouseover = null; |
| // 10325 |
| f81632121_468.returns.push(undefined); |
| // 10326 |
| o69.JSBNG__onmouseout = null; |
| // undefined |
| o69 = null; |
| // 10328 |
| f81632121_12.returns.push(38); |
| // undefined |
| fo81632121_1467_style.returns.push(o102); |
| // 10330 |
| // undefined |
| fo81632121_1467_style.returns.push(o102); |
| // 10332 |
| // undefined |
| o102 = null; |
| // 10333 |
| o144.setAttribute = f81632121_575; |
| // undefined |
| o144 = null; |
| // 10334 |
| o137.id = "blueBar"; |
| // 10335 |
| f81632121_575.returns.push(undefined); |
| // 10339 |
| f81632121_602.returns.push(undefined); |
| // 10344 |
| f81632121_602.returns.push(undefined); |
| // 10345 |
| o69 = {}; |
| // undefined |
| fo81632121_1465_style.returns.push(o69); |
| // 10347 |
| // undefined |
| o69 = null; |
| // 10348 |
| o135.nodeName = "DIV"; |
| // 10349 |
| o135.getAttribute = f81632121_506; |
| // 10350 |
| o135.hasAttribute = f81632121_507; |
| // 10352 |
| f81632121_507.returns.push(false); |
| // 10353 |
| o135.JSBNG__addEventListener = f81632121_468; |
| // 10355 |
| f81632121_468.returns.push(undefined); |
| // 10356 |
| o135.JSBNG__onkeydown = null; |
| // 10358 |
| o69 = {}; |
| // 10359 |
| o135.parentNode = o69; |
| // undefined |
| o135 = null; |
| // 10360 |
| o69.nodeName = "DIV"; |
| // 10361 |
| o69.__FB_TOKEN = void 0; |
| // 10362 |
| // 10363 |
| o69.getAttribute = f81632121_506; |
| // 10364 |
| o69.hasAttribute = f81632121_507; |
| // 10366 |
| f81632121_507.returns.push(false); |
| // 10367 |
| o69.JSBNG__addEventListener = f81632121_468; |
| // 10369 |
| f81632121_468.returns.push(undefined); |
| // 10370 |
| o69.JSBNG__onmousedown = null; |
| // undefined |
| o69 = null; |
| // 10372 |
| o140.nodeName = "DIV"; |
| // 10373 |
| o140.__FB_TOKEN = void 0; |
| // 10374 |
| // 10375 |
| o140.getAttribute = f81632121_506; |
| // 10376 |
| o140.hasAttribute = f81632121_507; |
| // 10378 |
| f81632121_507.returns.push(false); |
| // 10379 |
| o140.JSBNG__addEventListener = f81632121_468; |
| // 10381 |
| f81632121_468.returns.push(undefined); |
| // 10382 |
| o140.JSBNG__onmousedown = null; |
| // undefined |
| o140 = null; |
| // 10388 |
| f81632121_468.returns.push(undefined); |
| // 10389 |
| o16.JSBNG__onmouseup = null; |
| // 10391 |
| f81632121_7.returns.push(undefined); |
| // 10392 |
| ow81632121.JSBNG__onJSBNG__blur = undefined; |
| // 10394 |
| o69 = {}; |
| // 10395 |
| o143.classList = o69; |
| // undefined |
| o143 = null; |
| // 10397 |
| o69.remove = f81632121_1114; |
| // undefined |
| o69 = null; |
| // 10398 |
| f81632121_1114.returns.push(undefined); |
| // 10399 |
| o69 = {}; |
| // 10400 |
| o22.classList = o69; |
| // undefined |
| o22 = null; |
| // 10402 |
| o69.remove = f81632121_1114; |
| // undefined |
| o69 = null; |
| // 10403 |
| f81632121_1114.returns.push(undefined); |
| // 10404 |
| f81632121_12.returns.push(39); |
| // 10406 |
| f81632121_12.returns.push(40); |
| // 10407 |
| o22 = {}; |
| // 10408 |
| o136.childNodes = o22; |
| // 10409 |
| o22.nodeType = void 0; |
| // 10411 |
| o69 = {}; |
| // 10412 |
| f81632121_476.returns.push(o69); |
| // 10413 |
| o69.firstChild = null; |
| // 10415 |
| o102 = {}; |
| // 10416 |
| f81632121_474.returns.push(o102); |
| // 10418 |
| o135 = {}; |
| // 10419 |
| f81632121_598.returns.push(o135); |
| // 10420 |
| o102.appendChild = f81632121_478; |
| // 10421 |
| f81632121_478.returns.push(o135); |
| // undefined |
| o135 = null; |
| // 10422 |
| o69.appendChild = f81632121_478; |
| // 10423 |
| f81632121_478.returns.push(o102); |
| // undefined |
| o102 = null; |
| // 10424 |
| o102 = {}; |
| // 10425 |
| o69.classList = o102; |
| // 10427 |
| o102.add = f81632121_602; |
| // undefined |
| o102 = null; |
| // 10428 |
| f81632121_602.returns.push(undefined); |
| // 10432 |
| f81632121_602.returns.push(undefined); |
| // 10433 |
| o69.setAttribute = f81632121_575; |
| // 10434 |
| f81632121_575.returns.push(undefined); |
| // 10436 |
| f81632121_575.returns.push(undefined); |
| // 10438 |
| f81632121_575.returns.push(undefined); |
| // 10440 |
| f81632121_575.returns.push(undefined); |
| // 10442 |
| f81632121_575.returns.push(undefined); |
| // 10444 |
| f81632121_575.returns.push(undefined); |
| // 10446 |
| f81632121_575.returns.push(undefined); |
| // 10448 |
| f81632121_575.returns.push(undefined); |
| // 10450 |
| o102 = {}; |
| // 10451 |
| f81632121_476.returns.push(o102); |
| // 10452 |
| o102.setAttribute = f81632121_575; |
| // 10454 |
| f81632121_575.returns.push(undefined); |
| // 10455 |
| o102.firstChild = null; |
| // 10457 |
| o135 = {}; |
| // 10458 |
| f81632121_474.returns.push(o135); |
| // 10460 |
| o140 = {}; |
| // 10461 |
| f81632121_598.returns.push(o140); |
| // 10462 |
| o135.appendChild = f81632121_478; |
| // 10463 |
| f81632121_478.returns.push(o140); |
| // undefined |
| o140 = null; |
| // 10464 |
| o102.appendChild = f81632121_478; |
| // 10465 |
| f81632121_478.returns.push(o135); |
| // undefined |
| o135 = null; |
| // undefined |
| fo81632121_1423_firstChild.returns.push(o138); |
| // undefined |
| fo81632121_1423_firstChild.returns.push(o138); |
| // 10468 |
| o138.parentNode = o136; |
| // 10471 |
| f81632121_521.returns.push(o138); |
| // undefined |
| o138 = null; |
| // undefined |
| fo81632121_1423_firstChild.returns.push(null); |
| // 10474 |
| o135 = {}; |
| // 10475 |
| f81632121_474.returns.push(o135); |
| // 10476 |
| o69.__html = void 0; |
| // undefined |
| o69 = null; |
| // 10477 |
| o102.__html = void 0; |
| // undefined |
| o102 = null; |
| // 10479 |
| f81632121_478.returns.push(o135); |
| // undefined |
| o135 = null; |
| // undefined |
| fo81632121_1423_firstChild.returns.push(null); |
| // 10481 |
| o136.lastChild = null; |
| // 10482 |
| o136.getElementsByTagName = f81632121_502; |
| // 10483 |
| o69 = {}; |
| // 10484 |
| f81632121_502.returns.push(o69); |
| // 10485 |
| o69.nodeType = void 0; |
| // 10487 |
| o102 = {}; |
| // 10488 |
| f81632121_502.returns.push(o102); |
| // 10489 |
| o102.nodeType = void 0; |
| // 10490 |
| o69.parentNode = void 0; |
| // undefined |
| o69 = null; |
| // 10491 |
| o102.parentNode = void 0; |
| // undefined |
| o102 = null; |
| // undefined |
| fo81632121_1423_firstChild.returns.push(null); |
| // 10495 |
| o22.nodeName = void 0; |
| // 10497 |
| o22.nextSibling = void 0; |
| // 10498 |
| o22.parentNode = void 0; |
| // undefined |
| fo81632121_1423_firstChild.returns.push(null); |
| // 10503 |
| f81632121_1114.returns.push(undefined); |
| // 10507 |
| f81632121_645.returns.push(false); |
| // 10514 |
| f81632121_645.returns.push(false); |
| // 10515 |
| o69 = {}; |
| // 10516 |
| f81632121_4.returns.push(o69); |
| // 10517 |
| o69.getPropertyValue = f81632121_1442; |
| // undefined |
| o69 = null; |
| // 10518 |
| f81632121_1442.returns.push("14px"); |
| // 10519 |
| o17.offsetWidth = 550; |
| // 10520 |
| o17.offsetHeight = 23; |
| // 10524 |
| o69 = {}; |
| // 10525 |
| f81632121_504.returns.push(o69); |
| // 10526 |
| o69.length = 1; |
| // 10527 |
| o69["0"] = o136; |
| // undefined |
| o69 = null; |
| // undefined |
| o136 = null; |
| // 10530 |
| o22.offsetWidth = void 0; |
| // 10531 |
| o22.offsetHeight = void 0; |
| // undefined |
| o22 = null; |
| // 10532 |
| o22 = {}; |
| // 10533 |
| o17.style = o22; |
| // 10534 |
| // undefined |
| o22 = null; |
| // 10535 |
| o22 = {}; |
| // 10536 |
| o142.style = o22; |
| // undefined |
| o142 = null; |
| // 10537 |
| // undefined |
| o22 = null; |
| // 10538 |
| // 10539 |
| // 10540 |
| // 10542 |
| f81632121_508.returns.push(o137); |
| // 10543 |
| o137.getElementsByTagName = f81632121_502; |
| // 10545 |
| o137.querySelectorAll = f81632121_504; |
| // 10546 |
| o22 = {}; |
| // 10547 |
| f81632121_504.returns.push(o22); |
| // 10548 |
| o22.length = 1; |
| // 10549 |
| o69 = {}; |
| // 10550 |
| o22["0"] = o69; |
| // undefined |
| o22 = null; |
| // 10551 |
| o69.nodeName = "I"; |
| // 10552 |
| o69.__FB_TOKEN = void 0; |
| // 10553 |
| // 10554 |
| o69.getAttribute = f81632121_506; |
| // 10555 |
| o69.hasAttribute = f81632121_507; |
| // 10557 |
| f81632121_507.returns.push(false); |
| // 10558 |
| o69.JSBNG__addEventListener = f81632121_468; |
| // 10560 |
| f81632121_468.returns.push(undefined); |
| // 10561 |
| o69.JSBNG__onclick = null; |
| // undefined |
| o69 = null; |
| // 10564 |
| f81632121_467.returns.push(1374851232234); |
| // 10566 |
| o22 = {}; |
| // 10567 |
| f81632121_70.returns.push(o22); |
| // 10568 |
| // 10569 |
| o22.open = f81632121_1294; |
| // 10570 |
| f81632121_1294.returns.push(undefined); |
| // 10571 |
| o22.setRequestHeader = f81632121_1295; |
| // 10572 |
| f81632121_1295.returns.push(undefined); |
| // 10574 |
| o22.send = f81632121_1296; |
| // 10575 |
| f81632121_1296.returns.push(undefined); |
| // 10577 |
| f81632121_467.returns.push(1374851232237); |
| // 10579 |
| o69 = {}; |
| // 10580 |
| f81632121_70.returns.push(o69); |
| // 10581 |
| // 10582 |
| o69.open = f81632121_1294; |
| // 10583 |
| f81632121_1294.returns.push(undefined); |
| // 10584 |
| o69.setRequestHeader = f81632121_1295; |
| // 10585 |
| f81632121_1295.returns.push(undefined); |
| // 10587 |
| o69.send = f81632121_1296; |
| // 10588 |
| f81632121_1296.returns.push(undefined); |
| // 10591 |
| f81632121_467.returns.push(1374851232242); |
| // 10593 |
| f81632121_508.returns.push(null); |
| // 10598 |
| o102 = {}; |
| // 10599 |
| o135 = {}; |
| // 10601 |
| o102.transport = o18; |
| // 10602 |
| o18.readyState = 1; |
| // 10603 |
| o136 = {}; |
| // 10604 |
| o138 = {}; |
| // 10606 |
| o136.transport = o19; |
| // 10607 |
| o19.readyState = 1; |
| // 10608 |
| o140 = {}; |
| // 10609 |
| o141 = {}; |
| // 10611 |
| o140.transport = o22; |
| // 10612 |
| o22.readyState = 1; |
| // 10613 |
| o142 = {}; |
| // 10614 |
| o143 = {}; |
| // 10616 |
| o142.transport = o69; |
| // 10617 |
| o69.readyState = 1; |
| // 10618 |
| o144 = {}; |
| // 10619 |
| o145 = {}; |
| // 10621 |
| o144.nodeType = void 0; |
| // 10622 |
| o144.length = 1; |
| // 10623 |
| o144["0"] = "G3fzU"; |
| // 10628 |
| f81632121_508.returns.push(o124); |
| // 10630 |
| f81632121_508.returns.push(o122); |
| // 10633 |
| f81632121_467.returns.push(1374851232942); |
| // 10644 |
| o122.getAttributeNode = f81632121_1457; |
| // 10646 |
| o146 = {}; |
| // 10647 |
| f81632121_1457.returns.push(o146); |
| // 10648 |
| o146.value = "fbMessagesJewel"; |
| // undefined |
| o146 = null; |
| // 10651 |
| o146 = {}; |
| // 10652 |
| f81632121_502.returns.push(o146); |
| // 10653 |
| o146.length = 41; |
| // 10654 |
| o147 = {}; |
| // 10655 |
| o146["0"] = o147; |
| // 10656 |
| o147.getAttributeNode = f81632121_1457; |
| // undefined |
| o147 = null; |
| // 10658 |
| f81632121_1457.returns.push(null); |
| // 10660 |
| o147 = {}; |
| // 10661 |
| o146["1"] = o147; |
| // 10662 |
| o147.getAttributeNode = f81632121_1457; |
| // 10664 |
| o148 = {}; |
| // 10665 |
| f81632121_1457.returns.push(o148); |
| // 10666 |
| o148.value = "mercurymessagesCountWrapper"; |
| // undefined |
| o148 = null; |
| // 10668 |
| o148 = {}; |
| // 10669 |
| o146["2"] = o148; |
| // undefined |
| o146 = null; |
| // 10670 |
| o148.getAttributeNode = f81632121_1457; |
| // 10672 |
| o146 = {}; |
| // 10673 |
| f81632121_1457.returns.push(o146); |
| // 10674 |
| o146.value = "mercurymessagesCountValue"; |
| // undefined |
| o146 = null; |
| // 10676 |
| o122.contains = f81632121_645; |
| // 10678 |
| f81632121_645.returns.push(true); |
| // 10683 |
| o146 = {}; |
| // 10684 |
| f81632121_504.returns.push(o146); |
| // 10685 |
| o146.length = 1; |
| // 10686 |
| o146["0"] = o147; |
| // undefined |
| o146 = null; |
| // 10688 |
| o147.querySelectorAll = f81632121_504; |
| // undefined |
| o147 = null; |
| // 10689 |
| o146 = {}; |
| // 10690 |
| f81632121_504.returns.push(o146); |
| // 10691 |
| o146.length = 1; |
| // 10692 |
| o146["0"] = o148; |
| // undefined |
| o146 = null; |
| // 10693 |
| o146 = {}; |
| // undefined |
| fo81632121_1527_firstChild = function() { return fo81632121_1527_firstChild.returns[fo81632121_1527_firstChild.inst++]; }; |
| fo81632121_1527_firstChild.returns = []; |
| fo81632121_1527_firstChild.inst = 0; |
| defineGetter(o148, "firstChild", fo81632121_1527_firstChild, undefined); |
| // undefined |
| fo81632121_1527_firstChild.returns.push(o146); |
| // undefined |
| fo81632121_1527_firstChild.returns.push(o146); |
| // 10696 |
| o146.parentNode = o148; |
| // 10698 |
| o148.removeChild = f81632121_521; |
| // 10699 |
| f81632121_521.returns.push(o146); |
| // undefined |
| o146 = null; |
| // undefined |
| fo81632121_1527_firstChild.returns.push(null); |
| // 10702 |
| o146 = {}; |
| // 10703 |
| f81632121_474.returns.push(o146); |
| // 10705 |
| o147 = {}; |
| // 10706 |
| f81632121_598.returns.push(o147); |
| // 10707 |
| o146.appendChild = f81632121_478; |
| // 10708 |
| f81632121_478.returns.push(o147); |
| // undefined |
| o147 = null; |
| // 10709 |
| o148.appendChild = f81632121_478; |
| // undefined |
| o148 = null; |
| // 10710 |
| f81632121_478.returns.push(o146); |
| // undefined |
| o146 = null; |
| // 10711 |
| o146 = {}; |
| // 10712 |
| o122.classList = o146; |
| // undefined |
| o122 = null; |
| // 10714 |
| o146.remove = f81632121_1114; |
| // 10715 |
| f81632121_1114.returns.push(undefined); |
| // 10718 |
| o124.getElementsByTagName = f81632121_502; |
| // 10719 |
| o124.getAttributeNode = f81632121_1457; |
| // 10721 |
| o122 = {}; |
| // 10722 |
| f81632121_1457.returns.push(o122); |
| // 10723 |
| o122.value = "fbMessagesFlyout"; |
| // undefined |
| o122 = null; |
| // 10726 |
| o122 = {}; |
| // 10727 |
| f81632121_502.returns.push(o122); |
| // 10728 |
| o122.length = 36; |
| // 10729 |
| o147 = {}; |
| // 10730 |
| o122["0"] = o147; |
| // 10731 |
| o147.getAttributeNode = f81632121_1457; |
| // undefined |
| o147 = null; |
| // 10733 |
| f81632121_1457.returns.push(null); |
| // 10735 |
| o147 = {}; |
| // 10736 |
| o122["1"] = o147; |
| // 10737 |
| o147.getAttributeNode = f81632121_1457; |
| // undefined |
| o147 = null; |
| // 10739 |
| f81632121_1457.returns.push(null); |
| // 10741 |
| o147 = {}; |
| // 10742 |
| o122["2"] = o147; |
| // 10743 |
| o147.getAttributeNode = f81632121_1457; |
| // undefined |
| o147 = null; |
| // 10745 |
| f81632121_1457.returns.push(null); |
| // 10747 |
| o147 = {}; |
| // 10748 |
| o122["3"] = o147; |
| // 10749 |
| o147.getAttributeNode = f81632121_1457; |
| // undefined |
| o147 = null; |
| // 10751 |
| f81632121_1457.returns.push(null); |
| // 10753 |
| o147 = {}; |
| // 10754 |
| o122["4"] = o147; |
| // 10755 |
| o147.getAttributeNode = f81632121_1457; |
| // undefined |
| o147 = null; |
| // 10757 |
| f81632121_1457.returns.push(null); |
| // 10759 |
| o147 = {}; |
| // 10760 |
| o122["5"] = o147; |
| // 10761 |
| o147.getAttributeNode = f81632121_1457; |
| // undefined |
| o147 = null; |
| // 10763 |
| f81632121_1457.returns.push(null); |
| // 10765 |
| o147 = {}; |
| // 10766 |
| o122["6"] = o147; |
| // 10767 |
| o147.getAttributeNode = f81632121_1457; |
| // undefined |
| o147 = null; |
| // 10769 |
| f81632121_1457.returns.push(null); |
| // 10771 |
| o147 = {}; |
| // 10772 |
| o122["7"] = o147; |
| // 10773 |
| o147.getAttributeNode = f81632121_1457; |
| // undefined |
| o147 = null; |
| // 10775 |
| f81632121_1457.returns.push(null); |
| // 10777 |
| o122["8"] = o118; |
| // 10778 |
| o118.getAttributeNode = f81632121_1457; |
| // undefined |
| o118 = null; |
| // 10780 |
| o118 = {}; |
| // 10781 |
| f81632121_1457.returns.push(o118); |
| // 10782 |
| o118.value = "u_0_0"; |
| // undefined |
| o118 = null; |
| // 10784 |
| o118 = {}; |
| // 10785 |
| o122["9"] = o118; |
| // 10786 |
| o118.getAttributeNode = f81632121_1457; |
| // undefined |
| o118 = null; |
| // 10788 |
| f81632121_1457.returns.push(null); |
| // 10790 |
| o118 = {}; |
| // 10791 |
| o122["10"] = o118; |
| // 10792 |
| o118.getAttributeNode = f81632121_1457; |
| // undefined |
| o118 = null; |
| // 10794 |
| f81632121_1457.returns.push(null); |
| // 10796 |
| o118 = {}; |
| // 10797 |
| o122["11"] = o118; |
| // 10798 |
| o118.getAttributeNode = f81632121_1457; |
| // undefined |
| o118 = null; |
| // 10800 |
| f81632121_1457.returns.push(null); |
| // 10802 |
| o118 = {}; |
| // 10803 |
| o122["12"] = o118; |
| // 10804 |
| o118.getAttributeNode = f81632121_1457; |
| // undefined |
| o118 = null; |
| // 10806 |
| f81632121_1457.returns.push(null); |
| // 10808 |
| o118 = {}; |
| // 10809 |
| o122["13"] = o118; |
| // 10810 |
| o118.getAttributeNode = f81632121_1457; |
| // undefined |
| o118 = null; |
| // 10812 |
| f81632121_1457.returns.push(null); |
| // 10814 |
| o118 = {}; |
| // 10815 |
| o122["14"] = o118; |
| // 10816 |
| o118.getAttributeNode = f81632121_1457; |
| // undefined |
| o118 = null; |
| // 10818 |
| f81632121_1457.returns.push(null); |
| // 10820 |
| o118 = {}; |
| // 10821 |
| o122["15"] = o118; |
| // 10822 |
| o118.getAttributeNode = f81632121_1457; |
| // undefined |
| o118 = null; |
| // 10824 |
| f81632121_1457.returns.push(null); |
| // 10826 |
| o122["16"] = o63; |
| // undefined |
| o122 = null; |
| // 10827 |
| o63.getAttributeNode = f81632121_1457; |
| // undefined |
| o63 = null; |
| // 10829 |
| o63 = {}; |
| // 10830 |
| f81632121_1457.returns.push(o63); |
| // 10831 |
| o63.value = "MercuryJewelThreadList"; |
| // undefined |
| o63 = null; |
| // 10833 |
| o124.contains = f81632121_645; |
| // undefined |
| o124 = null; |
| // 10835 |
| f81632121_645.returns.push(true); |
| // 10838 |
| o146.contains = f81632121_513; |
| // undefined |
| o146 = null; |
| // 10839 |
| f81632121_513.returns.push(false); |
| // 10842 |
| f81632121_508.returns.push(o125); |
| // 10844 |
| f81632121_508.returns.push(null); |
| // 10846 |
| f81632121_508.returns.push(null); |
| // 10847 |
| o125.nodeName = "DIV"; |
| // 10848 |
| o125.getAttribute = f81632121_506; |
| // 10849 |
| o125.hasAttribute = f81632121_507; |
| // 10851 |
| f81632121_507.returns.push(false); |
| // 10852 |
| o125.JSBNG__addEventListener = f81632121_468; |
| // 10854 |
| f81632121_468.returns.push(undefined); |
| // 10855 |
| o125.JSBNG__onsubmit = null; |
| // 10857 |
| o125.getElementsByTagName = f81632121_502; |
| // 10859 |
| o125.querySelectorAll = f81632121_504; |
| // undefined |
| o125 = null; |
| // 10860 |
| o63 = {}; |
| // 10861 |
| f81632121_504.returns.push(o63); |
| // 10862 |
| o63.length = 0; |
| // undefined |
| o63 = null; |
| // 10865 |
| f81632121_508.returns.push(o123); |
| // 10867 |
| o63 = {}; |
| // 10868 |
| f81632121_508.returns.push(o63); |
| // 10870 |
| f81632121_508.returns.push(o127); |
| // 10871 |
| o127.getElementsByTagName = f81632121_502; |
| // 10873 |
| o127.querySelectorAll = f81632121_504; |
| // undefined |
| o127 = null; |
| // 10874 |
| o118 = {}; |
| // 10875 |
| f81632121_504.returns.push(o118); |
| // 10876 |
| o118.length = 1; |
| // 10877 |
| o122 = {}; |
| // 10878 |
| o118["0"] = o122; |
| // undefined |
| o118 = null; |
| // undefined |
| o122 = null; |
| // 10880 |
| o118 = {}; |
| // 10881 |
| f81632121_508.returns.push(o118); |
| // undefined |
| o118 = null; |
| // 10883 |
| // 10890 |
| o118 = {}; |
| // 10891 |
| f81632121_504.returns.push(o118); |
| // 10892 |
| o118.length = 1; |
| // 10893 |
| o122 = {}; |
| // 10894 |
| o118["0"] = o122; |
| // undefined |
| o118 = null; |
| // 10896 |
| o122.querySelectorAll = f81632121_504; |
| // 10897 |
| o118 = {}; |
| // 10898 |
| f81632121_504.returns.push(o118); |
| // 10899 |
| o118.length = 1; |
| // 10900 |
| o124 = {}; |
| // 10901 |
| o118["0"] = o124; |
| // undefined |
| o118 = null; |
| // 10902 |
| o118 = {}; |
| // undefined |
| fo81632121_1562_firstChild = function() { return fo81632121_1562_firstChild.returns[fo81632121_1562_firstChild.inst++]; }; |
| fo81632121_1562_firstChild.returns = []; |
| fo81632121_1562_firstChild.inst = 0; |
| defineGetter(o124, "firstChild", fo81632121_1562_firstChild, undefined); |
| // undefined |
| fo81632121_1562_firstChild.returns.push(o118); |
| // undefined |
| fo81632121_1562_firstChild.returns.push(o118); |
| // 10905 |
| o118.parentNode = o124; |
| // 10907 |
| o124.removeChild = f81632121_521; |
| // 10908 |
| f81632121_521.returns.push(o118); |
| // undefined |
| o118 = null; |
| // undefined |
| fo81632121_1562_firstChild.returns.push(null); |
| // 10911 |
| o118 = {}; |
| // 10912 |
| f81632121_474.returns.push(o118); |
| // 10914 |
| o125 = {}; |
| // 10915 |
| f81632121_598.returns.push(o125); |
| // 10916 |
| o118.appendChild = f81632121_478; |
| // 10917 |
| f81632121_478.returns.push(o125); |
| // undefined |
| o125 = null; |
| // 10918 |
| o124.appendChild = f81632121_478; |
| // 10919 |
| f81632121_478.returns.push(o118); |
| // undefined |
| o118 = null; |
| // 10920 |
| o118 = {}; |
| // 10921 |
| o123.classList = o118; |
| // 10923 |
| o118.remove = f81632121_1114; |
| // 10924 |
| f81632121_1114.returns.push(undefined); |
| // 10926 |
| // 10927 |
| o123.__FB_TOKEN = void 0; |
| // 10928 |
| // 10929 |
| o123.getAttribute = f81632121_506; |
| // 10930 |
| o123.hasAttribute = f81632121_507; |
| // 10932 |
| f81632121_507.returns.push(false); |
| // 10935 |
| o118.contains = f81632121_513; |
| // undefined |
| o118 = null; |
| // 10936 |
| f81632121_513.returns.push(false); |
| // 10939 |
| f81632121_506.returns.push(null); |
| // 10940 |
| o118 = {}; |
| // 10941 |
| o123.parentNode = o118; |
| // 10942 |
| o118.__FB_TOKEN = void 0; |
| // 10943 |
| // 10944 |
| o118.getAttribute = f81632121_506; |
| // 10945 |
| o118.hasAttribute = f81632121_507; |
| // 10947 |
| f81632121_507.returns.push(false); |
| // 10948 |
| o125 = {}; |
| // 10949 |
| o118.classList = o125; |
| // 10951 |
| o125.contains = f81632121_513; |
| // undefined |
| o125 = null; |
| // 10952 |
| f81632121_513.returns.push(false); |
| // 10955 |
| f81632121_506.returns.push(null); |
| // 10956 |
| o125 = {}; |
| // 10957 |
| o118.parentNode = o125; |
| // undefined |
| o118 = null; |
| // 10958 |
| o125.__FB_TOKEN = void 0; |
| // 10959 |
| // 10960 |
| o125.getAttribute = f81632121_506; |
| // 10961 |
| o125.hasAttribute = f81632121_507; |
| // 10963 |
| f81632121_507.returns.push(false); |
| // 10964 |
| o118 = {}; |
| // 10965 |
| o125.classList = o118; |
| // 10967 |
| o118.contains = f81632121_513; |
| // undefined |
| o118 = null; |
| // 10968 |
| f81632121_513.returns.push(false); |
| // 10971 |
| f81632121_506.returns.push(null); |
| // 10972 |
| o118 = {}; |
| // 10973 |
| o125.parentNode = o118; |
| // undefined |
| o125 = null; |
| // 10974 |
| o118.__FB_TOKEN = void 0; |
| // 10975 |
| // 10976 |
| o118.getAttribute = f81632121_506; |
| // 10977 |
| o118.hasAttribute = f81632121_507; |
| // 10979 |
| f81632121_507.returns.push(false); |
| // 10980 |
| o125 = {}; |
| // 10981 |
| o118.classList = o125; |
| // 10983 |
| o125.contains = f81632121_513; |
| // undefined |
| o125 = null; |
| // 10984 |
| f81632121_513.returns.push(false); |
| // 10987 |
| f81632121_506.returns.push(null); |
| // 10988 |
| o125 = {}; |
| // 10989 |
| o118.parentNode = o125; |
| // undefined |
| o118 = null; |
| // 10990 |
| o125.__FB_TOKEN = void 0; |
| // 10991 |
| // 10992 |
| o125.getAttribute = f81632121_506; |
| // 10993 |
| o125.hasAttribute = f81632121_507; |
| // 10995 |
| f81632121_507.returns.push(false); |
| // 10996 |
| o118 = {}; |
| // 10997 |
| o125.classList = o118; |
| // 10999 |
| o118.contains = f81632121_513; |
| // undefined |
| o118 = null; |
| // 11000 |
| f81632121_513.returns.push(false); |
| // 11003 |
| f81632121_506.returns.push(null); |
| // 11004 |
| o118 = {}; |
| // 11005 |
| o125.parentNode = o118; |
| // undefined |
| o125 = null; |
| // 11006 |
| o118.__FB_TOKEN = void 0; |
| // 11007 |
| // 11008 |
| o118.getAttribute = f81632121_506; |
| // 11009 |
| o118.hasAttribute = f81632121_507; |
| // 11011 |
| f81632121_507.returns.push(false); |
| // 11012 |
| o125 = {}; |
| // 11013 |
| o118.classList = o125; |
| // 11015 |
| o125.contains = f81632121_513; |
| // undefined |
| o125 = null; |
| // 11016 |
| f81632121_513.returns.push(false); |
| // 11019 |
| f81632121_506.returns.push(null); |
| // 11020 |
| o118.parentNode = o105; |
| // undefined |
| o118 = null; |
| // 11021 |
| o105.__FB_TOKEN = void 0; |
| // 11022 |
| // 11023 |
| o105.getAttribute = f81632121_506; |
| // 11024 |
| o105.hasAttribute = f81632121_507; |
| // 11026 |
| f81632121_507.returns.push(false); |
| // 11027 |
| o118 = {}; |
| // 11028 |
| o105.classList = o118; |
| // 11030 |
| o118.contains = f81632121_513; |
| // undefined |
| o118 = null; |
| // 11031 |
| f81632121_513.returns.push(false); |
| // 11034 |
| f81632121_506.returns.push(null); |
| // 11035 |
| o105.parentNode = o137; |
| // undefined |
| o105 = null; |
| // 11039 |
| f81632121_507.returns.push(false); |
| // 11043 |
| f81632121_513.returns.push(false); |
| // 11046 |
| f81632121_506.returns.push(null); |
| // 11051 |
| f81632121_507.returns.push(false); |
| // 11055 |
| f81632121_513.returns.push(false); |
| // 11058 |
| f81632121_506.returns.push(null); |
| // 11063 |
| f81632121_507.returns.push(false); |
| // 11067 |
| f81632121_513.returns.push(false); |
| // 11070 |
| f81632121_506.returns.push(null); |
| // 11075 |
| f81632121_507.returns.push(false); |
| // 11079 |
| f81632121_513.returns.push(false); |
| // 11082 |
| f81632121_506.returns.push(null); |
| // 11087 |
| f81632121_507.returns.push(false); |
| // 11091 |
| f81632121_513.returns.push(false); |
| // 11094 |
| f81632121_506.returns.push(null); |
| // 11099 |
| f81632121_507.returns.push(false); |
| // 11103 |
| f81632121_513.returns.push(false); |
| // 11106 |
| f81632121_506.returns.push(null); |
| // 11113 |
| f81632121_12.returns.push(41); |
| // 11117 |
| o105 = {}; |
| // 11118 |
| f81632121_504.returns.push(o105); |
| // 11119 |
| o105.length = 1; |
| // 11120 |
| o105["0"] = o122; |
| // undefined |
| o105 = null; |
| // undefined |
| o122 = null; |
| // 11123 |
| o105 = {}; |
| // 11124 |
| f81632121_504.returns.push(o105); |
| // 11125 |
| o105.length = 1; |
| // 11126 |
| o105["0"] = o124; |
| // undefined |
| o105 = null; |
| // undefined |
| o124 = null; |
| // 11127 |
| o63.nodeName = "UL"; |
| // 11128 |
| o63.__FB_TOKEN = void 0; |
| // 11129 |
| // 11130 |
| o63.getAttribute = f81632121_506; |
| // 11131 |
| o63.hasAttribute = f81632121_507; |
| // 11133 |
| f81632121_507.returns.push(false); |
| // 11134 |
| o63.JSBNG__addEventListener = f81632121_468; |
| // 11136 |
| f81632121_468.returns.push(undefined); |
| // 11137 |
| o63.JSBNG__onmousedown = null; |
| // 11142 |
| f81632121_468.returns.push(undefined); |
| // 11143 |
| o63.JSBNG__onmouseout = null; |
| // 11148 |
| f81632121_468.returns.push(undefined); |
| // 11149 |
| o63.JSBNG__onmouseover = null; |
| // 11151 |
| o123.nodeName = "DIV"; |
| // 11155 |
| f81632121_507.returns.push(false); |
| // 11156 |
| o123.JSBNG__addEventListener = f81632121_468; |
| // 11158 |
| f81632121_468.returns.push(undefined); |
| // 11159 |
| o123.JSBNG__onmouseover = null; |
| // 11162 |
| f81632121_508.returns.push(o123); |
| // undefined |
| o123 = null; |
| // 11166 |
| o105 = {}; |
| // 11167 |
| f81632121_504.returns.push(o105); |
| // 11168 |
| o105.length = 1; |
| // 11169 |
| o105["0"] = o76; |
| // undefined |
| o105 = null; |
| // undefined |
| o76 = null; |
| // 11173 |
| o76 = {}; |
| // 11174 |
| f81632121_504.returns.push(o76); |
| // 11175 |
| o76.length = 1; |
| // 11176 |
| o105 = {}; |
| // 11177 |
| o76["0"] = o105; |
| // undefined |
| o76 = null; |
| // 11179 |
| o105.querySelectorAll = f81632121_504; |
| // 11180 |
| o76 = {}; |
| // 11181 |
| f81632121_504.returns.push(o76); |
| // 11182 |
| o76.length = 1; |
| // 11183 |
| o118 = {}; |
| // 11184 |
| o76["0"] = o118; |
| // undefined |
| o76 = null; |
| // 11185 |
| o76 = {}; |
| // 11186 |
| o118.classList = o76; |
| // 11188 |
| o76.contains = f81632121_513; |
| // undefined |
| o76 = null; |
| // 11189 |
| f81632121_513.returns.push(false); |
| // 11190 |
| o76 = {}; |
| // 11191 |
| o118.parentNode = o76; |
| // 11192 |
| o122 = {}; |
| // 11193 |
| o76.classList = o122; |
| // 11195 |
| o122.contains = f81632121_513; |
| // undefined |
| o122 = null; |
| // 11196 |
| f81632121_513.returns.push(false); |
| // 11197 |
| o76.parentNode = o105; |
| // undefined |
| o76 = null; |
| // 11198 |
| o76 = {}; |
| // 11199 |
| o105.classList = o76; |
| // undefined |
| o105 = null; |
| // 11201 |
| o76.contains = f81632121_513; |
| // undefined |
| o76 = null; |
| // 11202 |
| f81632121_513.returns.push(true); |
| // 11204 |
| o118.nodeName = "A"; |
| // 11205 |
| o118.__FB_TOKEN = void 0; |
| // 11206 |
| // 11207 |
| o118.getAttribute = f81632121_506; |
| // 11208 |
| o118.hasAttribute = f81632121_507; |
| // 11210 |
| f81632121_507.returns.push(false); |
| // 11211 |
| o118.JSBNG__addEventListener = f81632121_468; |
| // 11213 |
| f81632121_468.returns.push(undefined); |
| // 11214 |
| o118.JSBNG__onsuccess = void 0; |
| // 11216 |
| f81632121_12.returns.push(42); |
| // 11220 |
| f81632121_507.returns.push(false); |
| // 11224 |
| f81632121_513.returns.push(false); |
| // 11227 |
| f81632121_506.returns.push(null); |
| // 11232 |
| f81632121_507.returns.push(false); |
| // 11236 |
| f81632121_513.returns.push(false); |
| // 11239 |
| f81632121_506.returns.push(null); |
| // 11244 |
| f81632121_507.returns.push(false); |
| // 11248 |
| f81632121_513.returns.push(false); |
| // 11251 |
| f81632121_506.returns.push(null); |
| // 11256 |
| f81632121_507.returns.push(false); |
| // 11260 |
| f81632121_513.returns.push(false); |
| // 11263 |
| f81632121_506.returns.push(null); |
| // 11268 |
| f81632121_507.returns.push(false); |
| // 11272 |
| f81632121_513.returns.push(false); |
| // 11275 |
| f81632121_506.returns.push(null); |
| // 11280 |
| f81632121_507.returns.push(false); |
| // 11284 |
| f81632121_513.returns.push(false); |
| // 11287 |
| f81632121_506.returns.push(null); |
| // 11292 |
| f81632121_507.returns.push(false); |
| // 11296 |
| f81632121_513.returns.push(false); |
| // 11299 |
| f81632121_506.returns.push(null); |
| // 11304 |
| f81632121_507.returns.push(false); |
| // 11308 |
| f81632121_513.returns.push(false); |
| // 11311 |
| f81632121_506.returns.push(null); |
| // 11316 |
| f81632121_507.returns.push(false); |
| // 11320 |
| f81632121_513.returns.push(false); |
| // 11323 |
| f81632121_506.returns.push(null); |
| // 11328 |
| f81632121_507.returns.push(false); |
| // 11332 |
| f81632121_513.returns.push(false); |
| // 11335 |
| f81632121_506.returns.push(null); |
| // 11340 |
| f81632121_507.returns.push(false); |
| // 11344 |
| f81632121_513.returns.push(false); |
| // 11347 |
| f81632121_506.returns.push(null); |
| // 11352 |
| f81632121_507.returns.push(false); |
| // 11356 |
| f81632121_513.returns.push(false); |
| // 11359 |
| f81632121_506.returns.push(null); |
| // 11364 |
| f81632121_507.returns.push(false); |
| // 11368 |
| f81632121_513.returns.push(false); |
| // 11371 |
| f81632121_506.returns.push(null); |
| // 11378 |
| o63.getElementsByTagName = f81632121_502; |
| // 11380 |
| o63.querySelectorAll = f81632121_504; |
| // undefined |
| o63 = null; |
| // 11381 |
| o63 = {}; |
| // 11382 |
| f81632121_504.returns.push(o63); |
| // 11383 |
| o63.length = 0; |
| // undefined |
| o63 = null; |
| // 11390 |
| o63 = {}; |
| // 11391 |
| f81632121_70.returns.push(o63); |
| // 11392 |
| // 11393 |
| o63.open = f81632121_1294; |
| // 11394 |
| f81632121_1294.returns.push(undefined); |
| // 11395 |
| o63.setRequestHeader = f81632121_1295; |
| // 11396 |
| f81632121_1295.returns.push(undefined); |
| // 11399 |
| f81632121_1295.returns.push(undefined); |
| // 11400 |
| o63.send = f81632121_1296; |
| // 11401 |
| f81632121_1296.returns.push(undefined); |
| // 11404 |
| f81632121_467.returns.push(1374851233092); |
| // 11406 |
| f81632121_467.returns.push(1374851233092); |
| // 11409 |
| f81632121_467.returns.push(1374851233093); |
| // 11411 |
| f81632121_467.returns.push(1374851233093); |
| // 11414 |
| f81632121_467.returns.push(1374851233093); |
| // 11417 |
| f81632121_467.returns.push(1374851233093); |
| // 11419 |
| f81632121_467.returns.push(1374851233094); |
| // 11421 |
| o76 = {}; |
| // 11422 |
| o105 = {}; |
| // 11424 |
| o76.transport = o63; |
| // 11425 |
| o63.readyState = 1; |
| // 11436 |
| o122 = {}; |
| // 11437 |
| f81632121_508.returns.push(o122); |
| // 11438 |
| o123 = {}; |
| // 11439 |
| o122.style = o123; |
| // 11440 |
| // undefined |
| o123 = null; |
| // 11442 |
| f81632121_508.returns.push(o27); |
| // 11443 |
| o27.firstChild = null; |
| // undefined |
| o27 = null; |
| // 11447 |
| o8.scrollWidth = 1017; |
| // 11458 |
| o27 = {}; |
| // 11459 |
| f81632121_508.returns.push(o27); |
| // 11460 |
| o123 = {}; |
| // 11461 |
| o27.classList = o123; |
| // 11463 |
| o123.contains = f81632121_513; |
| // undefined |
| o123 = null; |
| // 11464 |
| f81632121_513.returns.push(true); |
| // 11465 |
| o27.__FB_TOKEN = void 0; |
| // 11466 |
| // 11467 |
| o123 = {}; |
| // 11468 |
| o27.childNodes = o123; |
| // undefined |
| o27 = null; |
| // 11469 |
| o123.nodeType = void 0; |
| // 11470 |
| o123.classList = void 0; |
| // 11471 |
| o123.className = void 0; |
| // 11472 |
| o123.childNodes = void 0; |
| // undefined |
| o123 = null; |
| // 11476 |
| f81632121_467.returns.push(1374851233127); |
| // 11485 |
| f81632121_467.returns.push(1374851233136); |
| // 11490 |
| o27 = {}; |
| // 11491 |
| f81632121_508.returns.push(o27); |
| // 11492 |
| o123 = {}; |
| // 11493 |
| o27.classList = o123; |
| // 11495 |
| o123.contains = f81632121_513; |
| // undefined |
| o123 = null; |
| // 11496 |
| f81632121_513.returns.push(true); |
| // 11497 |
| o27.__FB_TOKEN = void 0; |
| // 11498 |
| // 11499 |
| o123 = {}; |
| // 11500 |
| o27.childNodes = o123; |
| // undefined |
| o27 = null; |
| // 11501 |
| o123.nodeType = void 0; |
| // 11502 |
| o123.classList = void 0; |
| // 11503 |
| o123.className = void 0; |
| // 11504 |
| o123.childNodes = void 0; |
| // undefined |
| o123 = null; |
| // 11509 |
| f81632121_467.returns.push(1374851233140); |
| // 11511 |
| o27 = {}; |
| // 11512 |
| o123 = {}; |
| // 11514 |
| o27.nodeType = void 0; |
| // 11515 |
| o27.length = 1; |
| // 11516 |
| o27["0"] = "nxD7O"; |
| // 11519 |
| f81632121_467.returns.push(1374851233142); |
| // 11522 |
| f81632121_467.returns.push(1374851233143); |
| // 11524 |
| f81632121_467.returns.push(1374851233143); |
| // 11526 |
| o124 = {}; |
| // 11527 |
| o125 = {}; |
| // 11528 |
| o124.input = o125; |
| // undefined |
| o124 = null; |
| // 11529 |
| o125.root = o17; |
| // undefined |
| o125 = null; |
| // undefined |
| o17 = null; |
| // 11533 |
| f81632121_645.returns.push(false); |
| // 11536 |
| f81632121_467.returns.push(1374851233144); |
| // 11537 |
| f81632121_14.returns.push(undefined); |
| // 11538 |
| f81632121_12.returns.push(43); |
| // 11542 |
| f81632121_467.returns.push(1374851233147); |
| // 11544 |
| f81632121_467.returns.push(1374851233147); |
| // 11545 |
| f81632121_14.returns.push(undefined); |
| // 11546 |
| f81632121_12.returns.push(44); |
| // 11548 |
| f81632121_467.returns.push(1374851233148); |
| // 11549 |
| o17 = {}; |
| // 11550 |
| f81632121_70.returns.push(o17); |
| // 11551 |
| o17.open = f81632121_1294; |
| // 11552 |
| f81632121_1294.returns.push(undefined); |
| // 11553 |
| o17.setRequestHeader = f81632121_1295; |
| // 11554 |
| f81632121_1295.returns.push(undefined); |
| // 11555 |
| // 11556 |
| f81632121_12.returns.push(45); |
| // 11558 |
| f81632121_467.returns.push(1374851233149); |
| // 11560 |
| f81632121_467.returns.push(1374851233149); |
| // 11561 |
| o17.send = f81632121_1296; |
| // 11562 |
| f81632121_1296.returns.push(undefined); |
| // 11563 |
| o124 = {}; |
| // 11565 |
| o125 = {}; |
| // 11566 |
| o124.alertList = o125; |
| // 11567 |
| f81632121_1608 = function() { return f81632121_1608.returns[f81632121_1608.inst++]; }; |
| f81632121_1608.returns = []; |
| f81632121_1608.inst = 0; |
| // 11568 |
| o125.getIds = f81632121_1608; |
| // 11569 |
| o127 = {}; |
| // 11570 |
| o125._list = o127; |
| // 11571 |
| f81632121_1610 = function() { return f81632121_1610.returns[f81632121_1610.inst++]; }; |
| f81632121_1610.returns = []; |
| f81632121_1610.inst = 0; |
| // 11572 |
| o127.reduce = f81632121_1610; |
| // 11573 |
| o127._head = null; |
| // 11574 |
| f81632121_1610.returns.push({__JSBNG_unknown_object:true}); |
| // 11575 |
| f81632121_1608.returns.push({__JSBNG_unknown_object:true}); |
| // 11576 |
| o124._autoLoadNotifIndex = 1; |
| // 11578 |
| f81632121_1611 = function() { return f81632121_1611.returns[f81632121_1611.inst++]; }; |
| f81632121_1611.returns = []; |
| f81632121_1611.inst = 0; |
| // 11579 |
| o125.getDomObj = f81632121_1611; |
| // 11580 |
| f81632121_1612 = function() { return f81632121_1612.returns[f81632121_1612.inst++]; }; |
| f81632121_1612.returns = []; |
| f81632121_1612.inst = 0; |
| // 11581 |
| o125._getField = f81632121_1612; |
| // 11583 |
| f81632121_1613 = function() { return f81632121_1613.returns[f81632121_1613.inst++]; }; |
| f81632121_1613.returns = []; |
| f81632121_1613.inst = 0; |
| // 11584 |
| o127.get = f81632121_1613; |
| // 11585 |
| o146 = {}; |
| // 11586 |
| o127._nodes = o146; |
| // 11587 |
| o146["null"] = void 0; |
| // undefined |
| o146 = null; |
| // 11588 |
| f81632121_1613.returns.push(null); |
| // 11589 |
| f81632121_1612.returns.push(null); |
| // 11590 |
| f81632121_1611.returns.push(null); |
| // 11591 |
| // 11592 |
| f81632121_1615 = function() { return f81632121_1615.returns[f81632121_1615.inst++]; }; |
| f81632121_1615.returns = []; |
| f81632121_1615.inst = 0; |
| // 11593 |
| o124._annotateMorePagerURI = f81632121_1615; |
| // 11594 |
| o124._morePagerLink = o118; |
| // 11595 |
| o118.setAttribute = f81632121_575; |
| // undefined |
| o118 = null; |
| // 11598 |
| f81632121_506.returns.push("/ajax/notifications/get.php?user=100006118350059"); |
| // 11600 |
| f81632121_1616 = function() { return f81632121_1616.returns[f81632121_1616.inst++]; }; |
| f81632121_1616.returns = []; |
| f81632121_1616.inst = 0; |
| // 11601 |
| o125.getEarliestNotifTime = f81632121_1616; |
| // undefined |
| o125 = null; |
| // 11603 |
| f81632121_1617 = function() { return f81632121_1617.returns[f81632121_1617.inst++]; }; |
| f81632121_1617.returns = []; |
| f81632121_1617.inst = 0; |
| // 11604 |
| o127.isEmpty = f81632121_1617; |
| // undefined |
| o127 = null; |
| // 11606 |
| f81632121_1617.returns.push(true); |
| // 11607 |
| f81632121_1616.returns.push(0); |
| // 11608 |
| f81632121_575.returns.push(undefined); |
| // 11609 |
| f81632121_1615.returns.push(undefined); |
| // 11610 |
| o118 = {}; |
| // 11611 |
| f81632121_1619 = function() { return f81632121_1619.returns[f81632121_1619.inst++]; }; |
| f81632121_1619.returns = []; |
| f81632121_1619.inst = 0; |
| // 11612 |
| o118.inform = f81632121_1619; |
| // 11613 |
| f81632121_1620 = function() { return f81632121_1620.returns[f81632121_1620.inst++]; }; |
| f81632121_1620.returns = []; |
| f81632121_1620.inst = 0; |
| // 11614 |
| o118._getArbiterInstance = f81632121_1620; |
| // 11615 |
| o125 = {}; |
| // 11616 |
| o118._arbiter = o125; |
| // undefined |
| o118 = null; |
| // 11617 |
| f81632121_1620.returns.push(o125); |
| // 11618 |
| f81632121_1622 = function() { return f81632121_1622.returns[f81632121_1622.inst++]; }; |
| f81632121_1622.returns = []; |
| f81632121_1622.inst = 0; |
| // 11619 |
| o125.inform = f81632121_1622; |
| // 11620 |
| o118 = {}; |
| // 11621 |
| o125.$Arbiter3 = o118; |
| // 11622 |
| f81632121_1624 = function() { return f81632121_1624.returns[f81632121_1624.inst++]; }; |
| f81632121_1624.returns = []; |
| f81632121_1624.inst = 0; |
| // 11623 |
| o118.push = f81632121_1624; |
| // 11624 |
| f81632121_1624.returns.push(1); |
| // 11625 |
| o127 = {}; |
| // 11626 |
| o125.$Arbiter0 = o127; |
| // 11627 |
| f81632121_1626 = function() { return f81632121_1626.returns[f81632121_1626.inst++]; }; |
| f81632121_1626.returns = []; |
| f81632121_1626.inst = 0; |
| // 11628 |
| o127.setHoldingBehavior = f81632121_1626; |
| // 11629 |
| o146 = {}; |
| // 11630 |
| o127.$ArbiterEventHolder0 = o146; |
| // 11631 |
| // 11632 |
| f81632121_1626.returns.push(undefined); |
| // 11633 |
| o147 = {}; |
| // 11634 |
| o125.$Arbiter1 = o147; |
| // 11635 |
| f81632121_1629 = function() { return f81632121_1629.returns[f81632121_1629.inst++]; }; |
| f81632121_1629.returns = []; |
| f81632121_1629.inst = 0; |
| // 11636 |
| o147.emitAndHold = f81632121_1629; |
| // 11637 |
| o147.$EventEmitterWithHolding1 = o127; |
| // 11638 |
| f81632121_1630 = function() { return f81632121_1630.returns[f81632121_1630.inst++]; }; |
| f81632121_1630.returns = []; |
| f81632121_1630.inst = 0; |
| // 11639 |
| o127.holdEvent = f81632121_1630; |
| // 11641 |
| f81632121_1631 = function() { return f81632121_1631.returns[f81632121_1631.inst++]; }; |
| f81632121_1631.returns = []; |
| f81632121_1631.inst = 0; |
| // 11642 |
| o127.$ArbiterEventHolder2 = f81632121_1631; |
| // 11643 |
| f81632121_1632 = function() { return f81632121_1632.returns[f81632121_1632.inst++]; }; |
| f81632121_1632.returns = []; |
| f81632121_1632.inst = 0; |
| // 11644 |
| o127.emitToListener = f81632121_1632; |
| // 11645 |
| f81632121_1633 = function() { return f81632121_1633.returns[f81632121_1633.inst++]; }; |
| f81632121_1633.returns = []; |
| f81632121_1633.inst = 0; |
| // 11646 |
| o127.releaseCurrentEvent = f81632121_1633; |
| // 11647 |
| f81632121_1634 = function() { return f81632121_1634.returns[f81632121_1634.inst++]; }; |
| f81632121_1634.returns = []; |
| f81632121_1634.inst = 0; |
| // 11648 |
| o127.forEachHeldEvent = f81632121_1634; |
| // 11649 |
| o148 = {}; |
| // 11650 |
| o127.$EventHolder0 = o148; |
| // 11651 |
| f81632121_1636 = function() { return f81632121_1636.returns[f81632121_1636.inst++]; }; |
| f81632121_1636.returns = []; |
| f81632121_1636.inst = 0; |
| // 11652 |
| o148.forEach = f81632121_1636; |
| // undefined |
| o148 = null; |
| // 11653 |
| f81632121_1636.returns.push(undefined); |
| // 11654 |
| // 11655 |
| f81632121_1634.returns.push(undefined); |
| // 11656 |
| f81632121_1632.returns.push(undefined); |
| // 11657 |
| f81632121_1631.returns.push(undefined); |
| // 11658 |
| f81632121_1630.returns.push(undefined); |
| // 11659 |
| // 11660 |
| o148 = {}; |
| // 11661 |
| o147.$EventEmitterWithHolding0 = o148; |
| // 11662 |
| f81632121_1638 = function() { return f81632121_1638.returns[f81632121_1638.inst++]; }; |
| f81632121_1638.returns = []; |
| f81632121_1638.inst = 0; |
| // 11663 |
| o148.emit = f81632121_1638; |
| // 11664 |
| o149 = {}; |
| // 11665 |
| o148.$EventEmitter0 = o149; |
| // undefined |
| o148 = null; |
| // 11666 |
| f81632121_1640 = function() { return f81632121_1640.returns[f81632121_1640.inst++]; }; |
| f81632121_1640.returns = []; |
| f81632121_1640.inst = 0; |
| // 11667 |
| o149.getSubscriptionsForType = f81632121_1640; |
| // 11668 |
| o148 = {}; |
| // 11669 |
| o149.$EventSubscriptionVendor0 = o148; |
| // undefined |
| o149 = null; |
| // 11670 |
| o148.activity = void 0; |
| // 11671 |
| f81632121_1640.returns.push(undefined); |
| // 11672 |
| f81632121_1638.returns.push(undefined); |
| // 11673 |
| // 11674 |
| f81632121_1629.returns.push(undefined); |
| // 11675 |
| f81632121_1642 = function() { return f81632121_1642.returns[f81632121_1642.inst++]; }; |
| f81632121_1642.returns = []; |
| f81632121_1642.inst = 0; |
| // 11676 |
| o125.$Arbiter5 = f81632121_1642; |
| // 11677 |
| o149 = {}; |
| // 11678 |
| o125.$Arbiter2 = o149; |
| // 11679 |
| f81632121_1644 = function() { return f81632121_1644.returns[f81632121_1644.inst++]; }; |
| f81632121_1644.returns = []; |
| f81632121_1644.inst = 0; |
| // 11680 |
| o149.satisfyNonPersistentDependency = f81632121_1644; |
| // 11681 |
| o150 = {}; |
| // 11682 |
| o149.$CallbackDependencyManager3 = o150; |
| // 11683 |
| o150.activity = void 0; |
| // 11685 |
| // 11686 |
| f81632121_1646 = function() { return f81632121_1646.returns[f81632121_1646.inst++]; }; |
| f81632121_1646.returns = []; |
| f81632121_1646.inst = 0; |
| // 11687 |
| o149.$CallbackDependencyManager5 = f81632121_1646; |
| // 11688 |
| o151 = {}; |
| // 11689 |
| o149.$CallbackDependencyManager0 = o151; |
| // undefined |
| o149 = null; |
| // 11690 |
| o151.activity = void 0; |
| // 11691 |
| f81632121_1646.returns.push(undefined); |
| // 11693 |
| // 11694 |
| f81632121_1644.returns.push(undefined); |
| // 11695 |
| f81632121_1642.returns.push(undefined); |
| // 11697 |
| f81632121_1648 = function() { return f81632121_1648.returns[f81632121_1648.inst++]; }; |
| f81632121_1648.returns = []; |
| f81632121_1648.inst = 0; |
| // 11698 |
| o118.pop = f81632121_1648; |
| // undefined |
| o118 = null; |
| // 11699 |
| o118 = {}; |
| // 11700 |
| f81632121_1648.returns.push(o118); |
| // 11701 |
| o118.activity = void 0; |
| // undefined |
| o118 = null; |
| // 11702 |
| f81632121_1622.returns.push(undefined); |
| // 11703 |
| f81632121_1619.returns.push(undefined); |
| // 11707 |
| f81632121_1620.returns.push(o125); |
| // undefined |
| o125 = null; |
| // 11711 |
| f81632121_1624.returns.push(1); |
| // 11715 |
| // undefined |
| o146 = null; |
| // 11716 |
| f81632121_1626.returns.push(undefined); |
| // 11728 |
| f81632121_1636.returns.push(undefined); |
| // 11729 |
| // undefined |
| o127 = null; |
| // 11730 |
| f81632121_1634.returns.push(undefined); |
| // 11731 |
| f81632121_1632.returns.push(undefined); |
| // 11732 |
| f81632121_1631.returns.push(undefined); |
| // 11733 |
| f81632121_1630.returns.push(undefined); |
| // 11734 |
| // 11740 |
| o148.change = void 0; |
| // undefined |
| o148 = null; |
| // 11741 |
| f81632121_1640.returns.push(undefined); |
| // 11742 |
| f81632121_1638.returns.push(undefined); |
| // 11743 |
| // undefined |
| o147 = null; |
| // 11744 |
| f81632121_1629.returns.push(undefined); |
| // 11749 |
| o150.change = void 0; |
| // 11751 |
| // 11754 |
| o151.change = void 0; |
| // undefined |
| o151 = null; |
| // 11755 |
| f81632121_1646.returns.push(undefined); |
| // 11757 |
| // undefined |
| o150 = null; |
| // 11758 |
| f81632121_1644.returns.push(undefined); |
| // 11759 |
| f81632121_1642.returns.push(undefined); |
| // 11762 |
| o118 = {}; |
| // 11763 |
| f81632121_1648.returns.push(o118); |
| // 11764 |
| o118.change = void 0; |
| // undefined |
| o118 = null; |
| // 11765 |
| f81632121_1622.returns.push(undefined); |
| // 11766 |
| f81632121_1619.returns.push(undefined); |
| // 11767 |
| o118 = {}; |
| // 11768 |
| o118._shown = false; |
| // undefined |
| o118 = null; |
| // 11769 |
| o118 = {}; |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2"); |
| // 11774 |
| f81632121_467.returns.push(1374851233175); |
| // 11775 |
| o125 = {}; |
| // 11779 |
| o127 = {}; |
| // 11783 |
| o146 = {}; |
| // 11787 |
| o147 = {}; |
| // 11791 |
| o148 = {}; |
| // 11796 |
| o19.getResponseHeader = f81632121_1332; |
| // 11799 |
| f81632121_1332.returns.push("OEaB02R0RTf78rAJ1DuTDFgTjOvmrkR5ELLovIg3pzM="); |
| // 11802 |
| f81632121_1332.returns.push("OEaB02R0RTf78rAJ1DuTDFgTjOvmrkR5ELLovIg3pzM="); |
| // 11803 |
| // 11805 |
| o19.JSBNG__status = 200; |
| // 11809 |
| f81632121_467.returns.push(1374851233177); |
| // 11810 |
| o136._handleXHRResponse = f81632121_1333; |
| // 11812 |
| o136.getOption = f81632121_1334; |
| // 11813 |
| o149 = {}; |
| // 11814 |
| o136.option = o149; |
| // 11815 |
| o149.suppressEvaluation = false; |
| // 11818 |
| f81632121_1334.returns.push(false); |
| // 11819 |
| o19.responseText = "for (;;);{\"__ar\":1,\"payload\":{\"entities\":[],\"queries\":[{\"iconClass\":\"-cx-PRIVATE-fbFacebarTypeaheadItem__usericon\",\"original_cost\":2,\"null_state_position\":null,\"parse\":{\"display\":[\"People I may know\"],\"suffix\":\"\",\"remTokens\":[0,1,2,3],\"unmatch\":[0,1,2,3]},\"semantic\":\"intersect(friends(friends(me)),non-friends(me))\",\"tuid\":\"intersect(friends(friends(me)),non-friends(me))\",\"type\":\"browse_type_user\",\"isNullState\":\"true\",\"cost\":3,\"path\":null,\"isRedirect\":false},{\"iconClass\":\"-cx-PRIVATE-fbFacebarTypeaheadItem__usericon\",\"original_cost\":2.5,\"null_state_position\":null,\"parse\":{\"display\":[\"My friends\"],\"suffix\":\"\",\"remTokens\":[0,1],\"unmatch\":[0,1]},\"semantic\":\"friends(me)\",\"tuid\":\"friends(me)\",\"type\":\"browse_type_user\",\"isNullState\":\"true\",\"cost\":2,\"path\":null,\"isRedirect\":false},{\"iconClass\":\"-cx-PRIVATE-fbFacebarTypeaheadItem__photoicon\",\"original_cost\":3,\"null_state_position\":null,\"parse\":{\"display\":[\"Photos of my friends\"],\"suffix\":\"\",\"remTokens\":[0,1,2,3],\"unmatch\":[0,1,2,3]},\"semantic\":\"photos-of(friends(me))\",\"tuid\":\"photos-of(friends(me))\",\"type\":\"browse_type_photo\",\"isNullState\":\"true\",\"cost\":3,\"path\":null,\"isRedirect\":false},{\"iconClass\":\"-cx-PRIVATE-fbFacebarTypeaheadItem__musicicon\",\"original_cost\":3.5,\"null_state_position\":null,\"parse\":{\"display\":[\"Music my friends like\"],\"suffix\":\"\",\"remTokens\":[0,1,2,3],\"unmatch\":[0,1,2,3]},\"semantic\":\"intersect(pages(musician),pages-liked(friends(me)))\",\"tuid\":\"intersect(pages(musician),pages-liked(friends(me)))\",\"type\":\"browse_type_music\",\"isNullState\":\"true\",\"cost\":3,\"path\":null,\"isRedirect\":false},{\"iconClass\":\"-cx-PRIVATE-fbFacebarTypeaheadItem__movieicon\",\"original_cost\":4,\"null_state_position\":null,\"parse\":{\"display\":[\"Movies my friends like\"],\"suffix\":\"\",\"remTokens\":[0,1,2,3],\"unmatch\":[0,1,2,3]},\"semantic\":\"intersect(pages(movie),pages-liked(friends(me)))\",\"tuid\":\"intersect(pages(movie),pages-liked(friends(me)))\",\"type\":\"browse_type_movie\",\"isNullState\":\"true\",\"cost\":3,\"path\":null,\"isRedirect\":false},{\"iconClass\":\"-cx-PRIVATE-fbFacebarTypeaheadItem__placeicon\",\"original_cost\":4.5,\"null_state_position\":null,\"parse\":{\"display\":[\"Restaurants nearby\"],\"suffix\":\"\",\"remTokens\":[0,1],\"unmatch\":[0,1]},\"semantic\":\"intersect(places(273819889375819),places-near(me))\",\"tuid\":\"intersect(places(273819889375819),places-near(me))\",\"type\":\"browse_type_place\",\"isNullState\":\"true\",\"cost\":2,\"path\":null,\"isRedirect\":false},{\"iconClass\":\"-cx-PRIVATE-fbFacebarTypeaheadItem__gameicon\",\"original_cost\":5,\"null_state_position\":null,\"parse\":{\"display\":[\"Games my friends play\"],\"suffix\":\"\",\"remTokens\":[0,1,2,3],\"unmatch\":[0,1,2,3]},\"semantic\":\"intersect(apps(game),apps-used(friends(me)))\",\"tuid\":\"intersect(apps(game),apps-used(friends(me)))\",\"type\":\"browse_type_game\",\"isNullState\":\"true\",\"cost\":3,\"path\":null,\"isRedirect\":false},{\"iconClass\":\"-cx-PRIVATE-fbFacebarTypeaheadItem__photoicon\",\"original_cost\":5.5,\"null_state_position\":null,\"parse\":{\"display\":[\"Photos I have liked\"],\"suffix\":\"\",\"remTokens\":[0,1,2,3],\"unmatch\":[0,1,2,3]},\"semantic\":\"photos-liked(me)\",\"tuid\":\"photos-liked(me)\",\"type\":\"browse_type_photo\",\"isNullState\":\"true\",\"cost\":3,\"path\":null,\"isRedirect\":false},{\"iconClass\":\"-cx-PRIVATE-fbFacebarTypeaheadItem__groupicon\",\"original_cost\":6,\"null_state_position\":null,\"parse\":{\"display\":[\"Groups my friends are in\"],\"suffix\":\"\",\"remTokens\":[0,1,2,3,4],\"unmatch\":[0,1,2,3,4]},\"semantic\":\"groups(friends(me))\",\"tuid\":\"groups(friends(me))\",\"type\":\"browse_type_group\",\"isNullState\":\"true\",\"cost\":3.5,\"path\":null,\"isRedirect\":false},{\"iconClass\":\"-cx-PRIVATE-fbFacebarTypeaheadItem__placeicon\",\"original_cost\":6.5,\"null_state_position\":null,\"parse\":{\"display\":[\"Places my friends have been to\"],\"suffix\":\"\",\"remTokens\":[0,1,2,3,4,5],\"unmatch\":[0,1,2,3,4,5]},\"semantic\":\"places-visited(friends(me))\",\"tuid\":\"places-visited(friends(me))\",\"type\":\"browse_type_place\",\"isNullState\":\"true\",\"cost\":4,\"path\":null,\"isRedirect\":false},{\"iconClass\":\"-cx-PRIVATE-fbFacebarTypeaheadItem__appicon\",\"original_cost\":7,\"null_state_position\":null,\"parse\":{\"display\":[\"Apps my friends use\"],\"suffix\":\"\",\"remTokens\":[0,1,2,3],\"unmatch\":[0,1,2,3]},\"semantic\":\"apps-used(friends(me))\",\"tuid\":\"apps-used(friends(me))\",\"type\":\"browse_type_application\",\"isNullState\":\"true\",\"cost\":3,\"path\":null,\"isRedirect\":false},{\"iconClass\":\"-cx-PRIVATE-fbFacebarTypeaheadItem__placeicon\",\"original_cost\":7.5,\"null_state_position\":null,\"parse\":{\"display\":[\"Current cities of my friends\"],\"suffix\":\"\",\"remTokens\":[0,1,2,3,4],\"unmatch\":[0,1,2,3,4]},\"semantic\":\"intersect(current-cities(friends(me)),pages(city))\",\"tuid\":\"intersect(current-cities(friends(me)),pages(city))\",\"type\":\"browse_type_city\",\"isNullState\":\"true\",\"cost\":3.5,\"path\":null,\"isRedirect\":false}]},\"css\":[\"c6lUE\"],\"bootloadable\":{},\"resource_map\":{\"c6lUE\":{\"type\":\"css\",\"permanent\":1,\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/y1\\/r\\/i2fjJiK4liE.css\"}},\"ixData\":[]}"; |
| // 11820 |
| o136._unshieldResponseText = f81632121_1336; |
| // 11821 |
| f81632121_1336.returns.push("{\"__ar\":1,\"payload\":{\"entities\":[],\"queries\":[{\"iconClass\":\"-cx-PRIVATE-fbFacebarTypeaheadItem__usericon\",\"original_cost\":2,\"null_state_position\":null,\"parse\":{\"display\":[\"People I may know\"],\"suffix\":\"\",\"remTokens\":[0,1,2,3],\"unmatch\":[0,1,2,3]},\"semantic\":\"intersect(friends(friends(me)),non-friends(me))\",\"tuid\":\"intersect(friends(friends(me)),non-friends(me))\",\"type\":\"browse_type_user\",\"isNullState\":\"true\",\"cost\":3,\"path\":null,\"isRedirect\":false},{\"iconClass\":\"-cx-PRIVATE-fbFacebarTypeaheadItem__usericon\",\"original_cost\":2.5,\"null_state_position\":null,\"parse\":{\"display\":[\"My friends\"],\"suffix\":\"\",\"remTokens\":[0,1],\"unmatch\":[0,1]},\"semantic\":\"friends(me)\",\"tuid\":\"friends(me)\",\"type\":\"browse_type_user\",\"isNullState\":\"true\",\"cost\":2,\"path\":null,\"isRedirect\":false},{\"iconClass\":\"-cx-PRIVATE-fbFacebarTypeaheadItem__photoicon\",\"original_cost\":3,\"null_state_position\":null,\"parse\":{\"display\":[\"Photos of my friends\"],\"suffix\":\"\",\"remTokens\":[0,1,2,3],\"unmatch\":[0,1,2,3]},\"semantic\":\"photos-of(friends(me))\",\"tuid\":\"photos-of(friends(me))\",\"type\":\"browse_type_photo\",\"isNullState\":\"true\",\"cost\":3,\"path\":null,\"isRedirect\":false},{\"iconClass\":\"-cx-PRIVATE-fbFacebarTypeaheadItem__musicicon\",\"original_cost\":3.5,\"null_state_position\":null,\"parse\":{\"display\":[\"Music my friends like\"],\"suffix\":\"\",\"remTokens\":[0,1,2,3],\"unmatch\":[0,1,2,3]},\"semantic\":\"intersect(pages(musician),pages-liked(friends(me)))\",\"tuid\":\"intersect(pages(musician),pages-liked(friends(me)))\",\"type\":\"browse_type_music\",\"isNullState\":\"true\",\"cost\":3,\"path\":null,\"isRedirect\":false},{\"iconClass\":\"-cx-PRIVATE-fbFacebarTypeaheadItem__movieicon\",\"original_cost\":4,\"null_state_position\":null,\"parse\":{\"display\":[\"Movies my friends like\"],\"suffix\":\"\",\"remTokens\":[0,1,2,3],\"unmatch\":[0,1,2,3]},\"semantic\":\"intersect(pages(movie),pages-liked(friends(me)))\",\"tuid\":\"intersect(pages(movie),pages-liked(friends(me)))\",\"type\":\"browse_type_movie\",\"isNullState\":\"true\",\"cost\":3,\"path\":null,\"isRedirect\":false},{\"iconClass\":\"-cx-PRIVATE-fbFacebarTypeaheadItem__placeicon\",\"original_cost\":4.5,\"null_state_position\":null,\"parse\":{\"display\":[\"Restaurants nearby\"],\"suffix\":\"\",\"remTokens\":[0,1],\"unmatch\":[0,1]},\"semantic\":\"intersect(places(273819889375819),places-near(me))\",\"tuid\":\"intersect(places(273819889375819),places-near(me))\",\"type\":\"browse_type_place\",\"isNullState\":\"true\",\"cost\":2,\"path\":null,\"isRedirect\":false},{\"iconClass\":\"-cx-PRIVATE-fbFacebarTypeaheadItem__gameicon\",\"original_cost\":5,\"null_state_position\":null,\"parse\":{\"display\":[\"Games my friends play\"],\"suffix\":\"\",\"remTokens\":[0,1,2,3],\"unmatch\":[0,1,2,3]},\"semantic\":\"intersect(apps(game),apps-used(friends(me)))\",\"tuid\":\"intersect(apps(game),apps-used(friends(me)))\",\"type\":\"browse_type_game\",\"isNullState\":\"true\",\"cost\":3,\"path\":null,\"isRedirect\":false},{\"iconClass\":\"-cx-PRIVATE-fbFacebarTypeaheadItem__photoicon\",\"original_cost\":5.5,\"null_state_position\":null,\"parse\":{\"display\":[\"Photos I have liked\"],\"suffix\":\"\",\"remTokens\":[0,1,2,3],\"unmatch\":[0,1,2,3]},\"semantic\":\"photos-liked(me)\",\"tuid\":\"photos-liked(me)\",\"type\":\"browse_type_photo\",\"isNullState\":\"true\",\"cost\":3,\"path\":null,\"isRedirect\":false},{\"iconClass\":\"-cx-PRIVATE-fbFacebarTypeaheadItem__groupicon\",\"original_cost\":6,\"null_state_position\":null,\"parse\":{\"display\":[\"Groups my friends are in\"],\"suffix\":\"\",\"remTokens\":[0,1,2,3,4],\"unmatch\":[0,1,2,3,4]},\"semantic\":\"groups(friends(me))\",\"tuid\":\"groups(friends(me))\",\"type\":\"browse_type_group\",\"isNullState\":\"true\",\"cost\":3.5,\"path\":null,\"isRedirect\":false},{\"iconClass\":\"-cx-PRIVATE-fbFacebarTypeaheadItem__placeicon\",\"original_cost\":6.5,\"null_state_position\":null,\"parse\":{\"display\":[\"Places my friends have been to\"],\"suffix\":\"\",\"remTokens\":[0,1,2,3,4,5],\"unmatch\":[0,1,2,3,4,5]},\"semantic\":\"places-visited(friends(me))\",\"tuid\":\"places-visited(friends(me))\",\"type\":\"browse_type_place\",\"isNullState\":\"true\",\"cost\":4,\"path\":null,\"isRedirect\":false},{\"iconClass\":\"-cx-PRIVATE-fbFacebarTypeaheadItem__appicon\",\"original_cost\":7,\"null_state_position\":null,\"parse\":{\"display\":[\"Apps my friends use\"],\"suffix\":\"\",\"remTokens\":[0,1,2,3],\"unmatch\":[0,1,2,3]},\"semantic\":\"apps-used(friends(me))\",\"tuid\":\"apps-used(friends(me))\",\"type\":\"browse_type_application\",\"isNullState\":\"true\",\"cost\":3,\"path\":null,\"isRedirect\":false},{\"iconClass\":\"-cx-PRIVATE-fbFacebarTypeaheadItem__placeicon\",\"original_cost\":7.5,\"null_state_position\":null,\"parse\":{\"display\":[\"Current cities of my friends\"],\"suffix\":\"\",\"remTokens\":[0,1,2,3,4],\"unmatch\":[0,1,2,3,4]},\"semantic\":\"intersect(current-cities(friends(me)),pages(city))\",\"tuid\":\"intersect(current-cities(friends(me)),pages(city))\",\"type\":\"browse_type_city\",\"isNullState\":\"true\",\"cost\":3.5,\"path\":null,\"isRedirect\":false}]},\"css\":[\"c6lUE\"],\"bootloadable\":{},\"resource_map\":{\"c6lUE\":{\"type\":\"css\",\"permanent\":1,\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/y1\\/r\\/i2fjJiK4liE.css\"}},\"ixData\":[]}"); |
| // 11822 |
| o136._interpretResponse = f81632121_1337; |
| // 11823 |
| f81632121_1337.returns.push({__JSBNG_unknown_object:true}); |
| // 11824 |
| o136.invokeResponseHandler = f81632121_1338; |
| // 11825 |
| f81632121_1659 = function() { return f81632121_1659.returns[f81632121_1659.inst++]; }; |
| f81632121_1659.returns = []; |
| f81632121_1659.inst = 0; |
| // 11826 |
| o136.handler = f81632121_1659; |
| // 11827 |
| o136._isRelevant = f81632121_1340; |
| // 11828 |
| o136._allowCrossPageTransition = true; |
| // 11829 |
| f81632121_1340.returns.push(true); |
| // 11830 |
| o136._dispatchResponse = f81632121_1341; |
| // 11831 |
| o136.getURI = f81632121_1342; |
| // 11832 |
| o150 = {}; |
| // 11833 |
| o136.uri = o150; |
| // 11835 |
| o150.$URIBase0 = ""; |
| // 11836 |
| o150.$URIBase1 = ""; |
| // 11837 |
| o150.$URIBase2 = ""; |
| // 11838 |
| o150.$URIBase3 = "/ajax/browse/null_state.php"; |
| // 11840 |
| o151 = {}; |
| // 11841 |
| o150.$URIBase5 = o151; |
| // 11842 |
| f81632121_1662 = function() { return f81632121_1662.returns[f81632121_1662.inst++]; }; |
| f81632121_1662.returns = []; |
| f81632121_1662.inst = 0; |
| // 11844 |
| f81632121_1662.returns.push(true); |
| // 11845 |
| o151.__a = 1; |
| // 11848 |
| f81632121_1662.returns.push(true); |
| // 11849 |
| o151.__dyn = "7n8ahyj2qmvudDgDxqjEHznBw"; |
| // 11852 |
| f81632121_1662.returns.push(true); |
| // 11853 |
| o151.__req = "3"; |
| // 11856 |
| f81632121_1662.returns.push(true); |
| // 11857 |
| o151.__user = "100006118350059"; |
| // 11860 |
| f81632121_1662.returns.push(true); |
| // 11861 |
| o151.grammar_version = "9ab0d482a92fc9cfa37e6c174e4543ea4a022340"; |
| // 11863 |
| o150.$URIBase4 = ""; |
| // 11864 |
| f81632121_1344.returns.push("/ajax/browse/null_state.php?__a=1&__dyn=7n8ahyj2qmvudDgDxqjEHznBw&__req=3&__user=100006118350059&grammar_version=9ab0d482a92fc9cfa37e6c174e4543ea4a022340"); |
| // 11865 |
| f81632121_1342.returns.push("/ajax/browse/null_state.php?__a=1&__dyn=7n8ahyj2qmvudDgDxqjEHznBw&__req=3&__user=100006118350059&grammar_version=9ab0d482a92fc9cfa37e6c174e4543ea4a022340"); |
| // 11866 |
| o136.preBootloadHandler = void 0; |
| // 11877 |
| f81632121_1662.returns.push(true); |
| // 11881 |
| f81632121_1662.returns.push(true); |
| // 11885 |
| f81632121_1662.returns.push(true); |
| // 11889 |
| f81632121_1662.returns.push(true); |
| // 11893 |
| f81632121_1662.returns.push(true); |
| // 11897 |
| f81632121_1344.returns.push("/ajax/browse/null_state.php?__a=1&__dyn=7n8ahyj2qmvudDgDxqjEHznBw&__req=3&__user=100006118350059&grammar_version=9ab0d482a92fc9cfa37e6c174e4543ea4a022340"); |
| // 11898 |
| f81632121_1342.returns.push("/ajax/browse/null_state.php?__a=1&__dyn=7n8ahyj2qmvudDgDxqjEHznBw&__req=3&__user=100006118350059&grammar_version=9ab0d482a92fc9cfa37e6c174e4543ea4a022340"); |
| // 11900 |
| f81632121_12.returns.push(46); |
| // 11904 |
| o152 = {}; |
| // 11905 |
| f81632121_474.returns.push(o152); |
| // 11907 |
| f81632121_478.returns.push(o152); |
| // undefined |
| o152 = null; |
| // 11908 |
| f81632121_1338.returns.push(undefined); |
| // 11909 |
| f81632121_1333.returns.push(undefined); |
| // 11912 |
| o149.asynchronous = true; |
| // undefined |
| o149 = null; |
| // 11915 |
| f81632121_1334.returns.push(true); |
| // 11916 |
| // 11917 |
| o149 = {}; |
| // 11921 |
| o152 = {}; |
| // 11925 |
| o153 = {}; |
| // 11929 |
| o154 = {}; |
| // 11934 |
| o18.getResponseHeader = f81632121_1332; |
| // 11937 |
| f81632121_1332.returns.push("WRM6aRBwBULw3+63TOvbKooYnQNT3s5FTkEaJBNbB6E="); |
| // 11940 |
| f81632121_1332.returns.push("WRM6aRBwBULw3+63TOvbKooYnQNT3s5FTkEaJBNbB6E="); |
| // 11941 |
| // 11943 |
| o18.JSBNG__status = 200; |
| // 11947 |
| f81632121_467.returns.push(1374851233192); |
| // 11948 |
| o102._handleXHRResponse = f81632121_1333; |
| // 11950 |
| o102.getOption = f81632121_1334; |
| // 11951 |
| o155 = {}; |
| // 11952 |
| o102.option = o155; |
| // 11953 |
| o155.suppressEvaluation = false; |
| // 11956 |
| f81632121_1334.returns.push(false); |
| // 11957 |
| o18.responseText = "for (;;);{\"__ar\":1,\"payload\":{\"entity_cost\":0.5,\"blank_cost\":0.5,\"typeahead_types\":[\"user\",\"user-dynamic\",\"place\",\"place-category\",\"page\",\"page-category\",\"app\",\"group\",\"event\",\"friendlist\",\"list\",\"music\",\"shortcut\",\"websuggestion\",\"facebar_query\",\"product\",\"og-book\",\"og-movie\",\"og-tv_show\",\"hashtag_exact\",\"activity\",\"activity-actors\",\"activity-verb\",\"activity-verb-present-singular\",\"job-title\",\"job-title-activity\",\"job-title-workers\",\"political-view-adjective\",\"political-view-members\",\"political-view-party\",\"religion\",\"religion-adjective\",\"religion-alt\",\"religion-members\"],\"mapped_types\":{\"gameapp\":\"app\"},\"mapped_types_subquery\":{\"place\":\"page\"},\"bootstrap_types\":[\"user\",\"page\",\"group\",\"app\",\"event\",\"friendlist\",\"shortcut\"],\"browse_functions\":{\"intersect\":{\"numParamsUnbounded\":true,\"minNumParams\":1,\"maxNumParams\":100,\"allowsFreeText\":false},\"union\":{\"numParamsUnbounded\":true,\"minNumParams\":1,\"maxNumParams\":100,\"allowsFreeText\":false},\"fbids\":{\"numParamsUnbounded\":true,\"minNumParams\":1,\"maxNumParams\":100,\"allowsFreeText\":false},\"all\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"pages\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"users\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"present\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"past\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"future\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"ever\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"ever-past\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"class\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"date\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":2,\"allowsFreeText\":false},\"after\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":2,\"allowsFreeText\":false},\"before\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":2,\"allowsFreeText\":false},\"duration-past\":{\"numParamsUnbounded\":false,\"minNumParams\":2,\"maxNumParams\":2,\"allowsFreeText\":false},\"duration-future\":{\"numParamsUnbounded\":false,\"minNumParams\":2,\"maxNumParams\":2,\"allowsFreeText\":false},\"users-age\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":2,\"allowsFreeText\":false},\"users-younger\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":2,\"allowsFreeText\":false},\"users-older\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":2,\"allowsFreeText\":false},\"users-born\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":2,\"allowsFreeText\":false},\"users-interested\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"users-named\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":true},\"users-birth-place\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":2,\"allowsFreeText\":false},\"females\":{\"numParamsUnbounded\":false,\"minNumParams\":0,\"maxNumParams\":0,\"allowsFreeText\":false},\"males\":{\"numParamsUnbounded\":false,\"minNumParams\":0,\"maxNumParams\":0,\"allowsFreeText\":false},\"members\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"friends\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"online-friends\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"non-friends\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"acquaintances\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"close-friends\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"restricted-friends\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"followers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"users-followed\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"creators\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"admins\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"groups\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"non-groups\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"groups-privacy\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"groups-named\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":true},\"groups-about\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"communities\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"communities-named\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":true},\"relatives\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"siblings\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"brothers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"sisters\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"parents\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"fathers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"mothers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"children\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"sons\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"daughters\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"aunts\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"uncles\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"nieces\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"nephews\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"cousins\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"grandchildren\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"grandsons\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"granddaughters\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"grandparents\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"grandmothers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"grandfathers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stepsiblings\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stepsisters\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stepbrothers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stepparents\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stepfathers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stepmothers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stepchildren\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stepdaughters\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stepsons\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"sisters-in-law\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"brothers-in-law\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"fathers-in-law\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"mothers-in-law\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"sons-in-law\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"daughters-in-law\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"partners\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"boyfriends\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"girlfriends\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"users-any-relationship\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"users-dating\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"users-relationship\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"users-open-relationship\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"spouses\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"fiances\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"users-its-complicated\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"users-civil-union\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"domestic-partners\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"wives\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"husbands\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"students\":{\"numParamsUnbounded\":false,\"minNumParams\":0,\"maxNumParams\":7,\"allowsFreeText\":false},\"employees\":{\"numParamsUnbounded\":false,\"minNumParams\":0,\"maxNumParams\":5,\"allowsFreeText\":false},\"major\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"degree\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"job\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"schools-attended\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":4,\"allowsFreeText\":false},\"school-location\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"high-schools-attended\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":4,\"allowsFreeText\":false},\"colleges-attended\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":4,\"allowsFreeText\":false},\"grad-schools-attended\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":4,\"allowsFreeText\":false},\"employer-location\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"employers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":3,\"allowsFreeText\":false},\"residents-near\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":4,\"allowsFreeText\":false},\"home-residents\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":2,\"allowsFreeText\":false},\"hometowns\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"residents\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":2,\"allowsFreeText\":false},\"current-cities\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"current-regions\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"current-countries\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"users-of-nationalities\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"nationalities\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"speakers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"languages\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"likers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"exact-page-likers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"job-liker-union\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"listeners\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"readers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"watchers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"page_raters\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"commenters\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"users-religious-view\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"users-political-view\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"admirers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"religious-views\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"political-views\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"visitors\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"users-checked-in\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"places-checked-in\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"places-visited\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"pages-in\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"places\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"places-in\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"places-near\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":4,\"allowsFreeText\":false},\"places-liked\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"places-named\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":true},\"pages-named\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":true},\"pages-about\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"pages-recommended-by\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"pages-liked\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"pages-recommended-for\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"pages-similar-to\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"photos-recommended-for\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"photos-of\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"photos-in\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"photos-by\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"photos-tagged\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"photos-liked\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"photos-uploaded\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"photos\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":2,\"allowsFreeText\":false},\"photos-commented\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"photos-interested\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"photos-interacted\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"photos-about\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"photos-reshared\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"timeline\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"photos-tagged-or-uploaded\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"users-tagged\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"users-interacted\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"videos-of\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"videos-in\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"videos-by\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"videos-tagged\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"videos-liked\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"videos-uploaded\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"videos\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":2,\"allowsFreeText\":false},\"videos-commented\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"video-links-shared\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"videos-interested\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"videos-interacted\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"videos-about\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"videos-reshared\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"app-users\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"apps\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"apps-used\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"apps-liked\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"apps-named\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":true},\"games\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"platform\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stories\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":2,\"allowsFreeText\":false},\"stories-by\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"reshare-stories-by\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stories-commented\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stories-liked\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stories-keyword\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":true},\"stories-topic\":{\"numParamsUnbounded\":false,\"minNumParams\":0,\"maxNumParams\":1,\"allowsFreeText\":false},\"stories-at\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stories-in\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stories-tagged\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stories-media-tagged\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stories-share-link\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":true},\"message\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"keywords\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":true},\"facebook-employees\":{\"numParamsUnbounded\":false,\"minNumParams\":0,\"maxNumParams\":0,\"allowsFreeText\":false}},\"semantic_map\":[],\"grammar_stop_words\":{\"and\":\"and\",\"at\":\"at\",\"by\":\"by\",\"for\":\"for\",\"friends\":\"friends\",\"from\":\"from\",\"i\":\"i\",\"in\":\"in\",\"me\":\"me\",\"of\":\"of\",\"on\":\"on\",\"people\":\"people\",\"photos\":\"photos\",\"the\":\"the\",\"to\":\"to\"},\"grammar_stop_words_penalty\":2,\"name_functions\":[\"apps-named\",\"communities-named\",\"groups-named\",\"pages-named\",\"places-named\",\"users-named\"],\"search_path\":\"\\/search\\/\",\"non_title_term_match_penalty\":0.5,\"\\u0040generated\":true},\"bootloadable\":{},\"ixData\":[]}"; |
| // 11958 |
| o102._unshieldResponseText = f81632121_1336; |
| // 11959 |
| f81632121_1336.returns.push("{\"__ar\":1,\"payload\":{\"entity_cost\":0.5,\"blank_cost\":0.5,\"typeahead_types\":[\"user\",\"user-dynamic\",\"place\",\"place-category\",\"page\",\"page-category\",\"app\",\"group\",\"event\",\"friendlist\",\"list\",\"music\",\"shortcut\",\"websuggestion\",\"facebar_query\",\"product\",\"og-book\",\"og-movie\",\"og-tv_show\",\"hashtag_exact\",\"activity\",\"activity-actors\",\"activity-verb\",\"activity-verb-present-singular\",\"job-title\",\"job-title-activity\",\"job-title-workers\",\"political-view-adjective\",\"political-view-members\",\"political-view-party\",\"religion\",\"religion-adjective\",\"religion-alt\",\"religion-members\"],\"mapped_types\":{\"gameapp\":\"app\"},\"mapped_types_subquery\":{\"place\":\"page\"},\"bootstrap_types\":[\"user\",\"page\",\"group\",\"app\",\"event\",\"friendlist\",\"shortcut\"],\"browse_functions\":{\"intersect\":{\"numParamsUnbounded\":true,\"minNumParams\":1,\"maxNumParams\":100,\"allowsFreeText\":false},\"union\":{\"numParamsUnbounded\":true,\"minNumParams\":1,\"maxNumParams\":100,\"allowsFreeText\":false},\"fbids\":{\"numParamsUnbounded\":true,\"minNumParams\":1,\"maxNumParams\":100,\"allowsFreeText\":false},\"all\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"pages\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"users\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"present\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"past\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"future\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"ever\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"ever-past\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"class\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"date\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":2,\"allowsFreeText\":false},\"after\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":2,\"allowsFreeText\":false},\"before\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":2,\"allowsFreeText\":false},\"duration-past\":{\"numParamsUnbounded\":false,\"minNumParams\":2,\"maxNumParams\":2,\"allowsFreeText\":false},\"duration-future\":{\"numParamsUnbounded\":false,\"minNumParams\":2,\"maxNumParams\":2,\"allowsFreeText\":false},\"users-age\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":2,\"allowsFreeText\":false},\"users-younger\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":2,\"allowsFreeText\":false},\"users-older\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":2,\"allowsFreeText\":false},\"users-born\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":2,\"allowsFreeText\":false},\"users-interested\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"users-named\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":true},\"users-birth-place\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":2,\"allowsFreeText\":false},\"females\":{\"numParamsUnbounded\":false,\"minNumParams\":0,\"maxNumParams\":0,\"allowsFreeText\":false},\"males\":{\"numParamsUnbounded\":false,\"minNumParams\":0,\"maxNumParams\":0,\"allowsFreeText\":false},\"members\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"friends\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"online-friends\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"non-friends\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"acquaintances\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"close-friends\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"restricted-friends\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"followers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"users-followed\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"creators\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"admins\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"groups\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"non-groups\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"groups-privacy\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"groups-named\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":true},\"groups-about\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"communities\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"communities-named\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":true},\"relatives\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"siblings\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"brothers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"sisters\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"parents\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"fathers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"mothers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"children\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"sons\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"daughters\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"aunts\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"uncles\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"nieces\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"nephews\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"cousins\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"grandchildren\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"grandsons\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"granddaughters\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"grandparents\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"grandmothers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"grandfathers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stepsiblings\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stepsisters\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stepbrothers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stepparents\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stepfathers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stepmothers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stepchildren\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stepdaughters\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stepsons\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"sisters-in-law\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"brothers-in-law\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"fathers-in-law\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"mothers-in-law\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"sons-in-law\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"daughters-in-law\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"partners\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"boyfriends\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"girlfriends\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"users-any-relationship\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"users-dating\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"users-relationship\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"users-open-relationship\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"spouses\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"fiances\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"users-its-complicated\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"users-civil-union\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"domestic-partners\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"wives\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"husbands\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"students\":{\"numParamsUnbounded\":false,\"minNumParams\":0,\"maxNumParams\":7,\"allowsFreeText\":false},\"employees\":{\"numParamsUnbounded\":false,\"minNumParams\":0,\"maxNumParams\":5,\"allowsFreeText\":false},\"major\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"degree\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"job\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"schools-attended\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":4,\"allowsFreeText\":false},\"school-location\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"high-schools-attended\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":4,\"allowsFreeText\":false},\"colleges-attended\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":4,\"allowsFreeText\":false},\"grad-schools-attended\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":4,\"allowsFreeText\":false},\"employer-location\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"employers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":3,\"allowsFreeText\":false},\"residents-near\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":4,\"allowsFreeText\":false},\"home-residents\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":2,\"allowsFreeText\":false},\"hometowns\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"residents\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":2,\"allowsFreeText\":false},\"current-cities\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"current-regions\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"current-countries\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"users-of-nationalities\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"nationalities\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"speakers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"languages\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"likers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"exact-page-likers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"job-liker-union\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"listeners\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"readers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"watchers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"page_raters\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"commenters\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"users-religious-view\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"users-political-view\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"admirers\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"religious-views\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"political-views\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"visitors\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"users-checked-in\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"places-checked-in\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"places-visited\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"pages-in\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"places\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"places-in\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"places-near\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":4,\"allowsFreeText\":false},\"places-liked\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"places-named\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":true},\"pages-named\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":true},\"pages-about\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"pages-recommended-by\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"pages-liked\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"pages-recommended-for\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"pages-similar-to\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"photos-recommended-for\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"photos-of\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"photos-in\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"photos-by\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"photos-tagged\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"photos-liked\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"photos-uploaded\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"photos\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":2,\"allowsFreeText\":false},\"photos-commented\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"photos-interested\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"photos-interacted\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"photos-about\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"photos-reshared\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"timeline\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"photos-tagged-or-uploaded\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"users-tagged\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"users-interacted\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"videos-of\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"videos-in\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"videos-by\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"videos-tagged\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"videos-liked\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"videos-uploaded\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"videos\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":2,\"allowsFreeText\":false},\"videos-commented\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"video-links-shared\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"videos-interested\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"videos-interacted\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"videos-about\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"videos-reshared\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"app-users\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"apps\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"apps-used\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"apps-liked\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"apps-named\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":true},\"games\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"platform\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stories\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":2,\"allowsFreeText\":false},\"stories-by\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"reshare-stories-by\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stories-commented\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stories-liked\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stories-keyword\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":true},\"stories-topic\":{\"numParamsUnbounded\":false,\"minNumParams\":0,\"maxNumParams\":1,\"allowsFreeText\":false},\"stories-at\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stories-in\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stories-tagged\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stories-media-tagged\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"stories-share-link\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":true},\"message\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":false},\"keywords\":{\"numParamsUnbounded\":false,\"minNumParams\":1,\"maxNumParams\":1,\"allowsFreeText\":true},\"facebook-employees\":{\"numParamsUnbounded\":false,\"minNumParams\":0,\"maxNumParams\":0,\"allowsFreeText\":false}},\"semantic_map\":[],\"grammar_stop_words\":{\"and\":\"and\",\"at\":\"at\",\"by\":\"by\",\"for\":\"for\",\"friends\":\"friends\",\"from\":\"from\",\"i\":\"i\",\"in\":\"in\",\"me\":\"me\",\"of\":\"of\",\"on\":\"on\",\"people\":\"people\",\"photos\":\"photos\",\"the\":\"the\",\"to\":\"to\"},\"grammar_stop_words_penalty\":2,\"name_functions\":[\"apps-named\",\"communities-named\",\"groups-named\",\"pages-named\",\"places-named\",\"users-named\"],\"search_path\":\"\\/search\\/\",\"non_title_term_match_penalty\":0.5,\"\\u0040generated\":true},\"bootloadable\":{},\"ixData\":[]}"); |
| // 11960 |
| o102._interpretResponse = f81632121_1337; |
| // 11961 |
| f81632121_1337.returns.push({__JSBNG_unknown_object:true}); |
| // 11962 |
| o102.invokeResponseHandler = f81632121_1338; |
| // 11963 |
| f81632121_1669 = function() { return f81632121_1669.returns[f81632121_1669.inst++]; }; |
| f81632121_1669.returns = []; |
| f81632121_1669.inst = 0; |
| // 11964 |
| o102.handler = f81632121_1669; |
| // 11965 |
| o102._isRelevant = f81632121_1340; |
| // 11966 |
| o102._allowCrossPageTransition = true; |
| // 11967 |
| f81632121_1340.returns.push(true); |
| // 11968 |
| o102._dispatchResponse = f81632121_1341; |
| // 11969 |
| o102.getURI = f81632121_1342; |
| // 11970 |
| o156 = {}; |
| // 11971 |
| o102.uri = o156; |
| // 11973 |
| o156.$URIBase0 = ""; |
| // 11974 |
| o156.$URIBase1 = ""; |
| // 11975 |
| o156.$URIBase2 = ""; |
| // 11976 |
| o156.$URIBase3 = "/ajax/typeahead/search/facebar/config.php"; |
| // 11978 |
| o157 = {}; |
| // 11979 |
| o156.$URIBase5 = o157; |
| // 11981 |
| f81632121_1662.returns.push(true); |
| // 11982 |
| o157.__a = 1; |
| // 11985 |
| f81632121_1662.returns.push(true); |
| // 11986 |
| o157.__dyn = "7n8ahyj2qmvudDgDxqjEHznBw"; |
| // 11989 |
| f81632121_1662.returns.push(true); |
| // 11990 |
| o157.__req = "2"; |
| // 11993 |
| f81632121_1662.returns.push(true); |
| // 11994 |
| o157.__user = "100006118350059"; |
| // 11997 |
| f81632121_1662.returns.push(true); |
| // 11998 |
| o157.version = "9ab0d482a92fc9cfa37e6c174e4543ea4a022340"; |
| // 12000 |
| o156.$URIBase4 = ""; |
| // 12001 |
| f81632121_1344.returns.push("/ajax/typeahead/search/facebar/config.php?__a=1&__dyn=7n8ahyj2qmvudDgDxqjEHznBw&__req=2&__user=100006118350059&version=9ab0d482a92fc9cfa37e6c174e4543ea4a022340"); |
| // 12002 |
| f81632121_1342.returns.push("/ajax/typeahead/search/facebar/config.php?__a=1&__dyn=7n8ahyj2qmvudDgDxqjEHznBw&__req=2&__user=100006118350059&version=9ab0d482a92fc9cfa37e6c174e4543ea4a022340"); |
| // 12003 |
| o102.preBootloadHandler = void 0; |
| // 12014 |
| f81632121_1662.returns.push(true); |
| // 12018 |
| f81632121_1662.returns.push(true); |
| // 12022 |
| f81632121_1662.returns.push(true); |
| // 12026 |
| f81632121_1662.returns.push(true); |
| // 12030 |
| f81632121_1662.returns.push(true); |
| // 12034 |
| f81632121_1344.returns.push("/ajax/typeahead/search/facebar/config.php?__a=1&__dyn=7n8ahyj2qmvudDgDxqjEHznBw&__req=2&__user=100006118350059&version=9ab0d482a92fc9cfa37e6c174e4543ea4a022340"); |
| // 12035 |
| f81632121_1342.returns.push("/ajax/typeahead/search/facebar/config.php?__a=1&__dyn=7n8ahyj2qmvudDgDxqjEHznBw&__req=2&__user=100006118350059&version=9ab0d482a92fc9cfa37e6c174e4543ea4a022340"); |
| // 12037 |
| f81632121_12.returns.push(47); |
| // 12041 |
| o158 = {}; |
| // 12042 |
| f81632121_474.returns.push(o158); |
| // 12044 |
| f81632121_478.returns.push(o158); |
| // undefined |
| o158 = null; |
| // 12045 |
| f81632121_1338.returns.push(undefined); |
| // 12046 |
| f81632121_1333.returns.push(undefined); |
| // 12049 |
| o155.asynchronous = true; |
| // undefined |
| o155 = null; |
| // 12052 |
| f81632121_1334.returns.push(true); |
| // 12053 |
| // 12055 |
| o136.clearStatusIndicator = f81632121_1347; |
| // 12056 |
| o136.getStatusElement = f81632121_1348; |
| // 12057 |
| o136.statusElement = null; |
| // 12058 |
| f81632121_1348.returns.push(null); |
| // 12059 |
| f81632121_1347.returns.push(undefined); |
| // 12062 |
| f81632121_1340.returns.push(true); |
| // 12063 |
| o136.initialHandler = f81632121_1349; |
| // 12064 |
| f81632121_1349.returns.push(undefined); |
| // 12065 |
| o136.timer = null; |
| // 12066 |
| f81632121_14.returns.push(undefined); |
| // 12068 |
| o136._shouldSuppressJS = f81632121_1350; |
| // 12070 |
| f81632121_1659.returns.push(undefined); |
| // 12071 |
| f81632121_1350.returns.push(false); |
| // 12072 |
| o136._handleJSResponse = f81632121_1351; |
| // 12073 |
| o136.getRelativeTo = f81632121_1352; |
| // 12074 |
| o136.relativeTo = null; |
| // 12075 |
| f81632121_1352.returns.push(null); |
| // 12076 |
| o136._handleJSRegisters = f81632121_1353; |
| // 12077 |
| f81632121_1353.returns.push(undefined); |
| // 12078 |
| o136.lid = void 0; |
| // 12080 |
| f81632121_1353.returns.push(undefined); |
| // 12081 |
| f81632121_1351.returns.push(undefined); |
| // 12082 |
| f81632121_1673 = function() { return f81632121_1673.returns[f81632121_1673.inst++]; }; |
| f81632121_1673.returns = []; |
| f81632121_1673.inst = 0; |
| // 12083 |
| o136.finallyHandler = f81632121_1673; |
| // 12084 |
| f81632121_1673.returns.push(undefined); |
| // 12085 |
| f81632121_1341.returns.push(undefined); |
| // 12087 |
| o102.clearStatusIndicator = f81632121_1347; |
| // 12088 |
| o102.getStatusElement = f81632121_1348; |
| // 12089 |
| o102.statusElement = null; |
| // 12090 |
| f81632121_1348.returns.push(null); |
| // 12091 |
| f81632121_1347.returns.push(undefined); |
| // 12094 |
| f81632121_1340.returns.push(true); |
| // 12095 |
| o102.initialHandler = f81632121_1349; |
| // 12096 |
| f81632121_1349.returns.push(undefined); |
| // 12097 |
| o102.timer = null; |
| // 12098 |
| f81632121_14.returns.push(undefined); |
| // 12100 |
| o102._shouldSuppressJS = f81632121_1350; |
| // 12102 |
| f81632121_1669.returns.push(undefined); |
| // 12103 |
| f81632121_1350.returns.push(false); |
| // 12104 |
| o102._handleJSResponse = f81632121_1351; |
| // 12105 |
| o102.getRelativeTo = f81632121_1352; |
| // 12106 |
| o102.relativeTo = null; |
| // 12107 |
| f81632121_1352.returns.push(null); |
| // 12108 |
| o102._handleJSRegisters = f81632121_1353; |
| // 12109 |
| f81632121_1353.returns.push(undefined); |
| // 12110 |
| o102.lid = void 0; |
| // 12112 |
| f81632121_1353.returns.push(undefined); |
| // 12113 |
| f81632121_1351.returns.push(undefined); |
| // 12114 |
| f81632121_1674 = function() { return f81632121_1674.returns[f81632121_1674.inst++]; }; |
| f81632121_1674.returns = []; |
| f81632121_1674.inst = 0; |
| // 12115 |
| o102.finallyHandler = f81632121_1674; |
| // 12116 |
| f81632121_1674.returns.push(undefined); |
| // 12117 |
| f81632121_1341.returns.push(undefined); |
| // 12125 |
| o155 = {}; |
| // 12126 |
| o158 = {}; |
| // 12128 |
| o155.nodeType = void 0; |
| // 12129 |
| o155.length = 1; |
| // 12130 |
| o155["0"] = "ywV7J"; |
| // 12135 |
| o159 = {}; |
| // 12136 |
| o160 = {}; |
| // 12138 |
| o159.nodeType = void 0; |
| // 12139 |
| o159.length = 1; |
| // 12140 |
| o159["0"] = "gyG67"; |
| // 12152 |
| o161 = {}; |
| // 12153 |
| f81632121_508.returns.push(o161); |
| // 12154 |
| o161.id = "u_0_3p"; |
| // 12155 |
| o161.getElementsByTagName = f81632121_502; |
| // 12157 |
| o161.querySelectorAll = f81632121_504; |
| // undefined |
| o161 = null; |
| // 12158 |
| o161 = {}; |
| // 12159 |
| f81632121_504.returns.push(o161); |
| // 12160 |
| o161.length = 1; |
| // 12161 |
| o162 = {}; |
| // 12162 |
| o161["0"] = o162; |
| // undefined |
| o161 = null; |
| // 12166 |
| o161 = {}; |
| // 12167 |
| f81632121_504.returns.push(o161); |
| // 12168 |
| o161.length = 0; |
| // undefined |
| o161 = null; |
| // 12172 |
| o161 = {}; |
| // 12173 |
| f81632121_504.returns.push(o161); |
| // 12174 |
| o161.length = 1; |
| // 12175 |
| o163 = {}; |
| // 12176 |
| o161["0"] = o163; |
| // undefined |
| o161 = null; |
| // undefined |
| o163 = null; |
| // 12180 |
| o161 = {}; |
| // 12181 |
| f81632121_504.returns.push(o161); |
| // 12182 |
| o161.length = 0; |
| // undefined |
| o161 = null; |
| // 12186 |
| o161 = {}; |
| // 12187 |
| f81632121_504.returns.push(o161); |
| // 12188 |
| o161.length = 0; |
| // undefined |
| o161 = null; |
| // 12189 |
| o162.nodeName = "LABEL"; |
| // 12190 |
| o162.getElementsByTagName = f81632121_502; |
| // undefined |
| o162 = null; |
| // 12191 |
| o161 = {}; |
| // 12192 |
| f81632121_502.returns.push(o161); |
| // 12193 |
| o161.length = 1; |
| // 12194 |
| o162 = {}; |
| // 12195 |
| o161["0"] = o162; |
| // undefined |
| o161 = null; |
| // 12196 |
| o162.__FB_TOKEN = void 0; |
| // 12197 |
| // 12198 |
| o162.getAttribute = f81632121_506; |
| // 12199 |
| o162.hasAttribute = f81632121_507; |
| // 12201 |
| f81632121_507.returns.push(false); |
| // 12202 |
| o162.JSBNG__addEventListener = f81632121_468; |
| // 12204 |
| f81632121_468.returns.push(undefined); |
| // 12205 |
| o162.JSBNG__onclick = null; |
| // 12206 |
| o162.nodeName = "INPUT"; |
| // undefined |
| o162 = null; |
| // 12209 |
| o161 = {}; |
| // 12210 |
| f81632121_508.returns.push(o161); |
| // 12211 |
| o161.id = "u_0_s"; |
| // 12212 |
| o161.getElementsByTagName = f81632121_502; |
| // 12214 |
| o161.querySelectorAll = f81632121_504; |
| // undefined |
| o161 = null; |
| // 12215 |
| o161 = {}; |
| // 12216 |
| f81632121_504.returns.push(o161); |
| // 12217 |
| o161.length = 1; |
| // 12218 |
| o162 = {}; |
| // 12219 |
| o161["0"] = o162; |
| // undefined |
| o161 = null; |
| // 12223 |
| o161 = {}; |
| // 12224 |
| f81632121_504.returns.push(o161); |
| // 12225 |
| o161.length = 1; |
| // 12226 |
| o163 = {}; |
| // 12227 |
| o161["0"] = o163; |
| // undefined |
| o161 = null; |
| // undefined |
| o163 = null; |
| // 12231 |
| o161 = {}; |
| // 12232 |
| f81632121_504.returns.push(o161); |
| // 12233 |
| o161.length = 1; |
| // 12234 |
| o163 = {}; |
| // 12235 |
| o161["0"] = o163; |
| // undefined |
| o161 = null; |
| // undefined |
| o163 = null; |
| // 12239 |
| o161 = {}; |
| // 12240 |
| f81632121_504.returns.push(o161); |
| // 12241 |
| o161.length = 0; |
| // undefined |
| o161 = null; |
| // 12245 |
| o161 = {}; |
| // 12246 |
| f81632121_504.returns.push(o161); |
| // 12247 |
| o161.length = 0; |
| // undefined |
| o161 = null; |
| // 12248 |
| o162.nodeName = "A"; |
| // 12249 |
| o162.__FB_TOKEN = void 0; |
| // 12250 |
| // 12251 |
| o162.getAttribute = f81632121_506; |
| // 12252 |
| o162.hasAttribute = f81632121_507; |
| // 12254 |
| f81632121_507.returns.push(false); |
| // 12255 |
| o162.JSBNG__addEventListener = f81632121_468; |
| // 12257 |
| f81632121_468.returns.push(undefined); |
| // 12258 |
| o162.JSBNG__onclick = null; |
| // undefined |
| o162 = null; |
| // 12262 |
| o161 = {}; |
| // 12263 |
| f81632121_508.returns.push(o161); |
| // 12264 |
| o161.id = "u_0_q"; |
| // 12265 |
| o161.getElementsByTagName = f81632121_502; |
| // 12267 |
| o161.querySelectorAll = f81632121_504; |
| // undefined |
| o161 = null; |
| // 12268 |
| o161 = {}; |
| // 12269 |
| f81632121_504.returns.push(o161); |
| // 12270 |
| o161.length = 1; |
| // 12271 |
| o162 = {}; |
| // 12272 |
| o161["0"] = o162; |
| // undefined |
| o161 = null; |
| // 12276 |
| o161 = {}; |
| // 12277 |
| f81632121_504.returns.push(o161); |
| // 12278 |
| o161.length = 0; |
| // undefined |
| o161 = null; |
| // 12282 |
| o161 = {}; |
| // 12283 |
| f81632121_504.returns.push(o161); |
| // 12284 |
| o161.length = 1; |
| // 12285 |
| o163 = {}; |
| // 12286 |
| o161["0"] = o163; |
| // undefined |
| o161 = null; |
| // undefined |
| o163 = null; |
| // 12290 |
| o161 = {}; |
| // 12291 |
| f81632121_504.returns.push(o161); |
| // 12292 |
| o161.length = 0; |
| // undefined |
| o161 = null; |
| // 12296 |
| o161 = {}; |
| // 12297 |
| f81632121_504.returns.push(o161); |
| // 12298 |
| o161.length = 0; |
| // undefined |
| o161 = null; |
| // 12299 |
| o162.nodeName = "LABEL"; |
| // 12300 |
| o162.getElementsByTagName = f81632121_502; |
| // undefined |
| o162 = null; |
| // 12301 |
| o161 = {}; |
| // 12302 |
| f81632121_502.returns.push(o161); |
| // 12303 |
| o161.length = 1; |
| // 12304 |
| o162 = {}; |
| // 12305 |
| o161["0"] = o162; |
| // undefined |
| o161 = null; |
| // 12306 |
| o162.__FB_TOKEN = void 0; |
| // 12307 |
| // 12308 |
| o162.getAttribute = f81632121_506; |
| // 12309 |
| o162.hasAttribute = f81632121_507; |
| // 12311 |
| f81632121_507.returns.push(false); |
| // 12312 |
| o162.JSBNG__addEventListener = f81632121_468; |
| // 12314 |
| f81632121_468.returns.push(undefined); |
| // 12315 |
| o162.JSBNG__onclick = null; |
| // 12316 |
| o162.nodeName = "INPUT"; |
| // undefined |
| o162 = null; |
| // 12319 |
| o161 = {}; |
| // 12320 |
| f81632121_508.returns.push(o161); |
| // 12321 |
| o161.id = "u_0_16"; |
| // 12322 |
| o161.getElementsByTagName = f81632121_502; |
| // 12324 |
| o161.querySelectorAll = f81632121_504; |
| // undefined |
| o161 = null; |
| // 12325 |
| o161 = {}; |
| // 12326 |
| f81632121_504.returns.push(o161); |
| // 12327 |
| o161.length = 1; |
| // 12328 |
| o162 = {}; |
| // 12329 |
| o161["0"] = o162; |
| // undefined |
| o161 = null; |
| // 12333 |
| o161 = {}; |
| // 12334 |
| f81632121_504.returns.push(o161); |
| // 12335 |
| o161.length = 0; |
| // undefined |
| o161 = null; |
| // 12339 |
| o161 = {}; |
| // 12340 |
| f81632121_504.returns.push(o161); |
| // 12341 |
| o161.length = 1; |
| // 12342 |
| o163 = {}; |
| // 12343 |
| o161["0"] = o163; |
| // undefined |
| o161 = null; |
| // undefined |
| o163 = null; |
| // 12347 |
| o161 = {}; |
| // 12348 |
| f81632121_504.returns.push(o161); |
| // 12349 |
| o161.length = 0; |
| // undefined |
| o161 = null; |
| // 12353 |
| o161 = {}; |
| // 12354 |
| f81632121_504.returns.push(o161); |
| // 12355 |
| o161.length = 0; |
| // undefined |
| o161 = null; |
| // 12356 |
| o162.nodeName = "LABEL"; |
| // 12357 |
| o162.getElementsByTagName = f81632121_502; |
| // undefined |
| o162 = null; |
| // 12358 |
| o161 = {}; |
| // 12359 |
| f81632121_502.returns.push(o161); |
| // 12360 |
| o161.length = 1; |
| // 12361 |
| o162 = {}; |
| // 12362 |
| o161["0"] = o162; |
| // undefined |
| o161 = null; |
| // 12363 |
| o162.__FB_TOKEN = void 0; |
| // 12364 |
| // 12365 |
| o162.getAttribute = f81632121_506; |
| // 12366 |
| o162.hasAttribute = f81632121_507; |
| // 12368 |
| f81632121_507.returns.push(false); |
| // 12369 |
| o162.JSBNG__addEventListener = f81632121_468; |
| // 12371 |
| f81632121_468.returns.push(undefined); |
| // 12372 |
| o162.JSBNG__onclick = null; |
| // 12373 |
| o162.nodeName = "INPUT"; |
| // undefined |
| o162 = null; |
| // 12376 |
| o161 = {}; |
| // 12377 |
| o162 = {}; |
| // 12379 |
| o161.nodeType = void 0; |
| // 12380 |
| o161.length = 1; |
| // 12381 |
| o161["0"] = "cstCX"; |
| // 12384 |
| f81632121_467.returns.push(1374851233369); |
| // 12387 |
| f81632121_467.returns.push(1374851233369); |
| // 12389 |
| f81632121_467.returns.push(1374851233369); |
| // 12396 |
| o163 = {}; |
| // 12397 |
| f81632121_508.returns.push(o163); |
| // 12399 |
| o164 = {}; |
| // 12400 |
| f81632121_508.returns.push(o164); |
| // 12401 |
| o163.nodeName = "A"; |
| // 12402 |
| o163.__FB_TOKEN = void 0; |
| // 12403 |
| // 12404 |
| o163.getAttribute = f81632121_506; |
| // 12405 |
| o163.hasAttribute = f81632121_507; |
| // 12407 |
| f81632121_507.returns.push(false); |
| // 12408 |
| o163.JSBNG__addEventListener = f81632121_468; |
| // 12410 |
| f81632121_468.returns.push(undefined); |
| // 12411 |
| o163.JSBNG__onclick = null; |
| // undefined |
| o163 = null; |
| // 12415 |
| o163 = {}; |
| // 12416 |
| f81632121_508.returns.push(o163); |
| // 12418 |
| o165 = {}; |
| // 12419 |
| f81632121_508.returns.push(o165); |
| // 12420 |
| o163.nodeName = "A"; |
| // 12421 |
| o163.__FB_TOKEN = void 0; |
| // 12422 |
| // 12423 |
| o163.getAttribute = f81632121_506; |
| // 12424 |
| o163.hasAttribute = f81632121_507; |
| // 12426 |
| f81632121_507.returns.push(false); |
| // 12427 |
| o163.JSBNG__addEventListener = f81632121_468; |
| // 12429 |
| f81632121_468.returns.push(undefined); |
| // 12430 |
| o163.JSBNG__onclick = null; |
| // undefined |
| o163 = null; |
| // 12434 |
| o163 = {}; |
| // 12435 |
| o166 = {}; |
| // 12437 |
| o163.nodeType = void 0; |
| // 12438 |
| o163.length = 1; |
| // 12439 |
| o163["0"] = "dShSX"; |
| // 12441 |
| o167 = {}; |
| // 12445 |
| f81632121_467.returns.push(1374851233411); |
| // 12446 |
| o167.cancelBubble = false; |
| // 12447 |
| o167.returnValue = true; |
| // 12450 |
| o167.srcElement = o109; |
| // 12452 |
| o167.target = o109; |
| // 12459 |
| f81632121_506.returns.push(null); |
| // 12465 |
| f81632121_506.returns.push(null); |
| // 12471 |
| f81632121_506.returns.push(null); |
| // 12477 |
| f81632121_506.returns.push(null); |
| // 12483 |
| f81632121_506.returns.push(null); |
| // 12489 |
| f81632121_506.returns.push(null); |
| // 12495 |
| f81632121_506.returns.push(null); |
| // 12501 |
| f81632121_506.returns.push(null); |
| // 12506 |
| o167.JSBNG__screenX = 970; |
| // 12507 |
| o167.JSBNG__screenY = 511; |
| // 12508 |
| o167.altKey = false; |
| // 12509 |
| o167.bubbles = true; |
| // 12510 |
| o167.button = 0; |
| // 12511 |
| o167.buttons = void 0; |
| // 12512 |
| o167.cancelable = false; |
| // 12513 |
| o167.clientX = 902; |
| // 12514 |
| o167.clientY = 346; |
| // 12515 |
| o167.ctrlKey = false; |
| // 12516 |
| o167.currentTarget = o0; |
| // 12517 |
| o167.defaultPrevented = false; |
| // 12518 |
| o167.detail = 0; |
| // 12519 |
| o167.eventPhase = 3; |
| // 12520 |
| o167.isTrusted = void 0; |
| // 12521 |
| o167.metaKey = false; |
| // 12522 |
| o167.pageX = 902; |
| // 12523 |
| o167.pageY = 1246; |
| // 12524 |
| o167.relatedTarget = null; |
| // 12525 |
| o167.fromElement = null; |
| // 12528 |
| o167.shiftKey = false; |
| // 12531 |
| o167.timeStamp = 1374851233411; |
| // 12532 |
| o167.type = "mousemove"; |
| // 12533 |
| o167.view = ow81632121; |
| // undefined |
| o167 = null; |
| // 12540 |
| o167 = {}; |
| // 12544 |
| o168 = {}; |
| // 12548 |
| o169 = {}; |
| // 12553 |
| o69.getResponseHeader = f81632121_1332; |
| // 12556 |
| f81632121_1332.returns.push("MWO0jcc/KbRy36gYE1NrzU/t7jbO9DT0nr3es5+tsT8="); |
| // 12559 |
| f81632121_1332.returns.push("MWO0jcc/KbRy36gYE1NrzU/t7jbO9DT0nr3es5+tsT8="); |
| // 12560 |
| // 12562 |
| o69.JSBNG__status = 200; |
| // 12566 |
| f81632121_467.returns.push(1374851233426); |
| // 12567 |
| o142._handleXHRResponse = f81632121_1333; |
| // 12569 |
| o142.getOption = f81632121_1334; |
| // 12570 |
| o170 = {}; |
| // 12571 |
| o142.option = o170; |
| // 12572 |
| o170.suppressEvaluation = false; |
| // 12575 |
| f81632121_1334.returns.push(false); |
| // 12576 |
| o69.responseText = "for (;;);{\"__ar\":1,\"payload\":{\"entries\":[],\"token\":\"1374777501-7\",\"stale\":1},\"bootloadable\":{},\"ixData\":[]}"; |
| // 12577 |
| o142._unshieldResponseText = f81632121_1336; |
| // 12578 |
| f81632121_1336.returns.push("{\"__ar\":1,\"payload\":{\"entries\":[],\"token\":\"1374777501-7\",\"stale\":1},\"bootloadable\":{},\"ixData\":[]}"); |
| // 12579 |
| o142._interpretResponse = f81632121_1337; |
| // 12580 |
| f81632121_1337.returns.push({__JSBNG_unknown_object:true}); |
| // 12581 |
| o142.invokeResponseHandler = f81632121_1338; |
| // 12582 |
| f81632121_1731 = function() { return f81632121_1731.returns[f81632121_1731.inst++]; }; |
| f81632121_1731.returns = []; |
| f81632121_1731.inst = 0; |
| // 12583 |
| o142.handler = f81632121_1731; |
| // 12584 |
| o142._isRelevant = f81632121_1340; |
| // 12585 |
| o142._allowCrossPageTransition = false; |
| // 12586 |
| o142.id = 7; |
| // 12588 |
| f81632121_1340.returns.push(true); |
| // 12589 |
| o142._dispatchResponse = f81632121_1341; |
| // 12590 |
| o142.getURI = f81632121_1342; |
| // 12591 |
| o171 = {}; |
| // 12592 |
| o142.uri = o171; |
| // 12594 |
| o171.$URIBase0 = ""; |
| // 12595 |
| o171.$URIBase1 = ""; |
| // 12596 |
| o171.$URIBase2 = ""; |
| // 12597 |
| o171.$URIBase3 = "/ajax/typeahead/search/facebar/bootstrap/"; |
| // 12599 |
| o172 = {}; |
| // 12600 |
| o171.$URIBase5 = o172; |
| // 12602 |
| f81632121_1662.returns.push(true); |
| // 12603 |
| o172.__a = 1; |
| // 12606 |
| f81632121_1662.returns.push(true); |
| // 12607 |
| o172.__dyn = "7n8ahyj2qmvudDgDxqjEHznBw"; |
| // 12610 |
| f81632121_1662.returns.push(true); |
| // 12611 |
| o172.__req = "5"; |
| // 12614 |
| f81632121_1662.returns.push(true); |
| // 12615 |
| o172.__user = "100006118350059"; |
| // 12618 |
| f81632121_1662.returns.push(true); |
| // 12619 |
| o172.context = "facebar"; |
| // 12622 |
| f81632121_1662.returns.push(true); |
| // 12623 |
| o173 = {}; |
| // 12624 |
| o172.filter = o173; |
| // 12627 |
| f81632121_1662.returns.push(true); |
| // 12628 |
| o173["0"] = "user"; |
| // 12631 |
| f81632121_1662.returns.push(true); |
| // 12632 |
| o172.lazy = 1; |
| // 12635 |
| f81632121_1662.returns.push(true); |
| // 12636 |
| o172.token = "v7"; |
| // 12639 |
| f81632121_1662.returns.push(true); |
| // 12640 |
| o172.viewer = 100006118350059; |
| // 12642 |
| o171.$URIBase4 = ""; |
| // 12643 |
| f81632121_1344.returns.push("/ajax/typeahead/search/facebar/bootstrap/?__a=1&__dyn=7n8ahyj2qmvudDgDxqjEHznBw&__req=5&__user=100006118350059&context=facebar&filter[0]=user&lazy=1&token=v7&viewer=100006118350059"); |
| // 12644 |
| f81632121_1342.returns.push("/ajax/typeahead/search/facebar/bootstrap/?__a=1&__dyn=7n8ahyj2qmvudDgDxqjEHznBw&__req=5&__user=100006118350059&context=facebar&filter[0]=user&lazy=1&token=v7&viewer=100006118350059"); |
| // 12645 |
| o142.preBootloadHandler = void 0; |
| // 12656 |
| f81632121_1662.returns.push(true); |
| // 12660 |
| f81632121_1662.returns.push(true); |
| // 12664 |
| f81632121_1662.returns.push(true); |
| // 12668 |
| f81632121_1662.returns.push(true); |
| // 12672 |
| f81632121_1662.returns.push(true); |
| // 12676 |
| f81632121_1662.returns.push(true); |
| // 12680 |
| f81632121_1662.returns.push(true); |
| // 12684 |
| f81632121_1662.returns.push(true); |
| // 12688 |
| f81632121_1662.returns.push(true); |
| // 12692 |
| f81632121_1662.returns.push(true); |
| // 12696 |
| f81632121_1344.returns.push("/ajax/typeahead/search/facebar/bootstrap/?__a=1&__dyn=7n8ahyj2qmvudDgDxqjEHznBw&__req=5&__user=100006118350059&context=facebar&filter[0]=user&lazy=1&token=v7&viewer=100006118350059"); |
| // 12697 |
| f81632121_1342.returns.push("/ajax/typeahead/search/facebar/bootstrap/?__a=1&__dyn=7n8ahyj2qmvudDgDxqjEHznBw&__req=5&__user=100006118350059&context=facebar&filter[0]=user&lazy=1&token=v7&viewer=100006118350059"); |
| // 12699 |
| f81632121_12.returns.push(48); |
| // 12703 |
| o174 = {}; |
| // 12704 |
| f81632121_474.returns.push(o174); |
| // 12706 |
| f81632121_478.returns.push(o174); |
| // undefined |
| o174 = null; |
| // 12707 |
| f81632121_1338.returns.push(undefined); |
| // 12708 |
| f81632121_1333.returns.push(undefined); |
| // 12711 |
| o170.asynchronous = true; |
| // undefined |
| o170 = null; |
| // 12714 |
| f81632121_1334.returns.push(true); |
| // 12715 |
| // 12716 |
| o170 = {}; |
| // 12720 |
| o174 = {}; |
| // 12724 |
| o175 = {}; |
| // 12729 |
| o22.getResponseHeader = f81632121_1332; |
| // 12732 |
| f81632121_1332.returns.push("KND7vYBCvkWnoN9yheVsXzudEn3zwTmvcSkMHsDLj1w="); |
| // 12735 |
| f81632121_1332.returns.push("KND7vYBCvkWnoN9yheVsXzudEn3zwTmvcSkMHsDLj1w="); |
| // 12736 |
| // 12738 |
| o22.JSBNG__status = 200; |
| // 12742 |
| f81632121_467.returns.push(1374851233444); |
| // 12743 |
| o140._handleXHRResponse = f81632121_1333; |
| // 12745 |
| o140.getOption = f81632121_1334; |
| // 12746 |
| o176 = {}; |
| // 12747 |
| o140.option = o176; |
| // 12748 |
| o176.suppressEvaluation = false; |
| // 12751 |
| f81632121_1334.returns.push(false); |
| // 12752 |
| o22.responseText = "for (;;);{\"__ar\":1,\"payload\":{\"entries\":[],\"token\":\"1374777501-7\",\"stale\":1},\"bootloadable\":{},\"ixData\":[]}"; |
| // 12753 |
| o140._unshieldResponseText = f81632121_1336; |
| // 12754 |
| f81632121_1336.returns.push("{\"__ar\":1,\"payload\":{\"entries\":[],\"token\":\"1374777501-7\",\"stale\":1},\"bootloadable\":{},\"ixData\":[]}"); |
| // 12755 |
| o140._interpretResponse = f81632121_1337; |
| // 12756 |
| f81632121_1337.returns.push({__JSBNG_unknown_object:true}); |
| // 12757 |
| o140.invokeResponseHandler = f81632121_1338; |
| // 12758 |
| f81632121_1740 = function() { return f81632121_1740.returns[f81632121_1740.inst++]; }; |
| f81632121_1740.returns = []; |
| f81632121_1740.inst = 0; |
| // 12759 |
| o140.handler = f81632121_1740; |
| // 12760 |
| o140._isRelevant = f81632121_1340; |
| // 12761 |
| o140._allowCrossPageTransition = false; |
| // 12762 |
| o140.id = 6; |
| // 12764 |
| f81632121_1340.returns.push(true); |
| // 12765 |
| o140._dispatchResponse = f81632121_1341; |
| // 12766 |
| o140.getURI = f81632121_1342; |
| // 12767 |
| o177 = {}; |
| // 12768 |
| o140.uri = o177; |
| // 12770 |
| o177.$URIBase0 = ""; |
| // 12771 |
| o177.$URIBase1 = ""; |
| // 12772 |
| o177.$URIBase2 = ""; |
| // 12773 |
| o177.$URIBase3 = "/ajax/typeahead/search/facebar/bootstrap/"; |
| // 12775 |
| o178 = {}; |
| // 12776 |
| o177.$URIBase5 = o178; |
| // 12778 |
| f81632121_1662.returns.push(true); |
| // 12779 |
| o178.__a = 1; |
| // 12782 |
| f81632121_1662.returns.push(true); |
| // 12783 |
| o178.__dyn = "7n8ahyj2qmvudDgDxqjEHznBw"; |
| // 12786 |
| f81632121_1662.returns.push(true); |
| // 12787 |
| o178.__req = "4"; |
| // 12790 |
| f81632121_1662.returns.push(true); |
| // 12791 |
| o178.__user = "100006118350059"; |
| // 12794 |
| f81632121_1662.returns.push(true); |
| // 12795 |
| o178.context = "facebar"; |
| // 12798 |
| f81632121_1662.returns.push(true); |
| // 12799 |
| o179 = {}; |
| // 12800 |
| o178.filter = o179; |
| // 12803 |
| f81632121_1662.returns.push(true); |
| // 12804 |
| o179["0"] = "app"; |
| // 12807 |
| f81632121_1662.returns.push(true); |
| // 12808 |
| o179["1"] = "page"; |
| // 12811 |
| f81632121_1662.returns.push(true); |
| // 12812 |
| o179["2"] = "group"; |
| // 12815 |
| f81632121_1662.returns.push(true); |
| // 12816 |
| o179["3"] = "friendlist"; |
| // 12819 |
| f81632121_1662.returns.push(true); |
| // 12820 |
| o178.lazy = 1; |
| // 12823 |
| f81632121_1662.returns.push(true); |
| // 12824 |
| o178.token = "v7"; |
| // 12827 |
| f81632121_1662.returns.push(true); |
| // 12828 |
| o178.viewer = 100006118350059; |
| // 12830 |
| o177.$URIBase4 = ""; |
| // 12831 |
| f81632121_1344.returns.push("/ajax/typeahead/search/facebar/bootstrap/?__a=1&__dyn=7n8ahyj2qmvudDgDxqjEHznBw&__req=4&__user=100006118350059&context=facebar&filter[0]=app&filter[1]=page&filter[2]=group&filter[3]=friendlist&lazy=1&token=v7&viewer=100006118350059"); |
| // 12832 |
| f81632121_1342.returns.push("/ajax/typeahead/search/facebar/bootstrap/?__a=1&__dyn=7n8ahyj2qmvudDgDxqjEHznBw&__req=4&__user=100006118350059&context=facebar&filter[0]=app&filter[1]=page&filter[2]=group&filter[3]=friendlist&lazy=1&token=v7&viewer=100006118350059"); |
| // 12833 |
| o140.preBootloadHandler = void 0; |
| // 12844 |
| f81632121_1662.returns.push(true); |
| // 12848 |
| f81632121_1662.returns.push(true); |
| // 12852 |
| f81632121_1662.returns.push(true); |
| // 12856 |
| f81632121_1662.returns.push(true); |
| // 12860 |
| f81632121_1662.returns.push(true); |
| // 12864 |
| f81632121_1662.returns.push(true); |
| // 12868 |
| f81632121_1662.returns.push(true); |
| // 12872 |
| f81632121_1662.returns.push(true); |
| // 12876 |
| f81632121_1662.returns.push(true); |
| // 12880 |
| f81632121_1662.returns.push(true); |
| // 12884 |
| f81632121_1662.returns.push(true); |
| // 12888 |
| f81632121_1662.returns.push(true); |
| // 12892 |
| f81632121_1662.returns.push(true); |
| // 12896 |
| f81632121_1344.returns.push("/ajax/typeahead/search/facebar/bootstrap/?__a=1&__dyn=7n8ahyj2qmvudDgDxqjEHznBw&__req=4&__user=100006118350059&context=facebar&filter[0]=app&filter[1]=page&filter[2]=group&filter[3]=friendlist&lazy=1&token=v7&viewer=100006118350059"); |
| // 12897 |
| f81632121_1342.returns.push("/ajax/typeahead/search/facebar/bootstrap/?__a=1&__dyn=7n8ahyj2qmvudDgDxqjEHznBw&__req=4&__user=100006118350059&context=facebar&filter[0]=app&filter[1]=page&filter[2]=group&filter[3]=friendlist&lazy=1&token=v7&viewer=100006118350059"); |
| // 12899 |
| f81632121_12.returns.push(49); |
| // 12903 |
| o180 = {}; |
| // 12904 |
| f81632121_474.returns.push(o180); |
| // 12906 |
| f81632121_478.returns.push(o180); |
| // undefined |
| o180 = null; |
| // 12907 |
| f81632121_1338.returns.push(undefined); |
| // 12908 |
| f81632121_1333.returns.push(undefined); |
| // 12911 |
| o176.asynchronous = true; |
| // undefined |
| o176 = null; |
| // 12914 |
| f81632121_1334.returns.push(true); |
| // 12915 |
| // 12917 |
| o142.clearStatusIndicator = f81632121_1347; |
| // 12918 |
| o142.getStatusElement = f81632121_1348; |
| // 12919 |
| o142.statusElement = null; |
| // 12920 |
| f81632121_1348.returns.push(null); |
| // 12921 |
| f81632121_1347.returns.push(undefined); |
| // 12926 |
| f81632121_1340.returns.push(true); |
| // 12927 |
| o142.initialHandler = f81632121_1349; |
| // 12928 |
| f81632121_1349.returns.push(undefined); |
| // 12929 |
| o142.timer = null; |
| // 12930 |
| f81632121_14.returns.push(undefined); |
| // 12932 |
| o142._shouldSuppressJS = f81632121_1350; |
| // 12934 |
| f81632121_1731.returns.push(undefined); |
| // 12935 |
| f81632121_1350.returns.push(false); |
| // 12936 |
| o142._handleJSResponse = f81632121_1351; |
| // 12937 |
| o142.getRelativeTo = f81632121_1352; |
| // 12938 |
| o142.relativeTo = null; |
| // 12939 |
| f81632121_1352.returns.push(null); |
| // 12940 |
| o142._handleJSRegisters = f81632121_1353; |
| // 12941 |
| f81632121_1353.returns.push(undefined); |
| // 12942 |
| o142.lid = void 0; |
| // 12944 |
| f81632121_1353.returns.push(undefined); |
| // 12945 |
| f81632121_1351.returns.push(undefined); |
| // 12946 |
| o142.finallyHandler = f81632121_1349; |
| // 12947 |
| f81632121_1349.returns.push(undefined); |
| // 12948 |
| f81632121_1341.returns.push(undefined); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2"); |
| // 12952 |
| f81632121_467.returns.push(1374851234448); |
| // 12954 |
| o140.clearStatusIndicator = f81632121_1347; |
| // 12955 |
| o140.getStatusElement = f81632121_1348; |
| // 12956 |
| o140.statusElement = null; |
| // 12957 |
| f81632121_1348.returns.push(null); |
| // 12958 |
| f81632121_1347.returns.push(undefined); |
| // 12963 |
| f81632121_1340.returns.push(true); |
| // 12964 |
| o140.initialHandler = f81632121_1349; |
| // 12965 |
| f81632121_1349.returns.push(undefined); |
| // 12966 |
| o140.timer = null; |
| // 12967 |
| f81632121_14.returns.push(undefined); |
| // 12969 |
| o140._shouldSuppressJS = f81632121_1350; |
| // 12971 |
| f81632121_1740.returns.push(undefined); |
| // 12972 |
| f81632121_1350.returns.push(false); |
| // 12973 |
| o140._handleJSResponse = f81632121_1351; |
| // 12974 |
| o140.getRelativeTo = f81632121_1352; |
| // 12975 |
| o140.relativeTo = null; |
| // 12976 |
| f81632121_1352.returns.push(null); |
| // 12977 |
| o140._handleJSRegisters = f81632121_1353; |
| // 12978 |
| f81632121_1353.returns.push(undefined); |
| // 12979 |
| o140.lid = void 0; |
| // 12981 |
| f81632121_1353.returns.push(undefined); |
| // 12982 |
| f81632121_1351.returns.push(undefined); |
| // 12983 |
| o140.finallyHandler = f81632121_1349; |
| // 12984 |
| f81632121_1349.returns.push(undefined); |
| // 12985 |
| f81632121_1341.returns.push(undefined); |
| // 12990 |
| o176 = {}; |
| // 12996 |
| f81632121_468.returns.push(undefined); |
| // 12997 |
| o0.JSBNG__onfullscreenchange = void 0; |
| // 13002 |
| f81632121_468.returns.push(undefined); |
| // 13003 |
| o0.JSBNG__onmozfullscreenchange = void 0; |
| // 13008 |
| f81632121_468.returns.push(undefined); |
| // 13009 |
| o0.JSBNG__onwebkitfullscreenchange = null; |
| // 13012 |
| f81632121_1746 = function() { return f81632121_1746.returns[f81632121_1746.inst++]; }; |
| f81632121_1746.returns = []; |
| f81632121_1746.inst = 0; |
| // 13013 |
| f81632121_1349.thatReturnsNull = f81632121_1746; |
| // 13019 |
| o180 = {}; |
| // 13020 |
| f81632121_476.returns.push(o180); |
| // 13021 |
| // 13022 |
| // 13023 |
| o180.getElementsByTagName = f81632121_502; |
| // 13024 |
| o181 = {}; |
| // 13025 |
| f81632121_502.returns.push(o181); |
| // 13026 |
| o181.length = 0; |
| // undefined |
| o181 = null; |
| // 13028 |
| o181 = {}; |
| // 13029 |
| o180.childNodes = o181; |
| // undefined |
| o180 = null; |
| // 13030 |
| o181.nodeType = void 0; |
| // undefined |
| o181 = null; |
| // 13032 |
| f81632121_1620.__prototyped = void 0; |
| // 13033 |
| f81632121_1619.__prototyped = void 0; |
| // 13034 |
| o25.__html = void 0; |
| // 13035 |
| o25.mountComponentIntoNode = void 0; |
| // undefined |
| o25 = null; |
| // 13037 |
| o25 = {}; |
| // 13038 |
| f81632121_476.returns.push(o25); |
| // 13039 |
| // 13040 |
| o25.firstChild = null; |
| // 13042 |
| o180 = {}; |
| // 13043 |
| f81632121_474.returns.push(o180); |
| // 13045 |
| o25.appendChild = f81632121_478; |
| // 13046 |
| f81632121_478.returns.push(o180); |
| // undefined |
| o180 = null; |
| // 13048 |
| o180 = {}; |
| // 13049 |
| f81632121_476.returns.push(o180); |
| // 13050 |
| // 13051 |
| o180.firstChild = null; |
| // 13053 |
| o181 = {}; |
| // 13054 |
| f81632121_474.returns.push(o181); |
| // 13055 |
| o25.__html = void 0; |
| // undefined |
| o25 = null; |
| // 13056 |
| o180.appendChild = f81632121_478; |
| // 13057 |
| f81632121_478.returns.push(o181); |
| // undefined |
| o181 = null; |
| // 13058 |
| o180.setAttribute = f81632121_575; |
| // 13060 |
| f81632121_575.returns.push(undefined); |
| // 13063 |
| f81632121_575.returns.push(undefined); |
| // 13064 |
| // 13067 |
| f81632121_575.returns.push(undefined); |
| // 13070 |
| f81632121_575.returns.push(undefined); |
| // 13071 |
| o25 = {}; |
| // 13072 |
| o180.classList = o25; |
| // 13074 |
| o25.add = f81632121_602; |
| // undefined |
| o25 = null; |
| // 13075 |
| f81632121_602.returns.push(undefined); |
| // 13079 |
| f81632121_602.returns.push(undefined); |
| // 13083 |
| f81632121_602.returns.push(undefined); |
| // 13084 |
| o180.__FB_TOKEN = void 0; |
| // 13085 |
| // 13090 |
| o25 = {}; |
| // 13091 |
| f81632121_504.returns.push(o25); |
| // 13092 |
| o25.length = 1; |
| // 13093 |
| o25["0"] = o82; |
| // undefined |
| o25 = null; |
| // 13094 |
| f81632121_1746.__prototyped = void 0; |
| // 13099 |
| f81632121_1756 = function() { return f81632121_1756.returns[f81632121_1756.inst++]; }; |
| f81632121_1756.returns = []; |
| f81632121_1756.inst = 0; |
| // 13100 |
| o0.webkitCancelFullScreen = f81632121_1756; |
| // 13101 |
| o180.getElementsByTagName = f81632121_502; |
| // 13103 |
| o180.querySelectorAll = f81632121_504; |
| // undefined |
| o180 = null; |
| // 13104 |
| o25 = {}; |
| // 13105 |
| f81632121_504.returns.push(o25); |
| // 13106 |
| o25.length = 0; |
| // undefined |
| o25 = null; |
| // 13110 |
| o25 = {}; |
| // 13111 |
| f81632121_504.returns.push(o25); |
| // 13112 |
| o25.length = 0; |
| // undefined |
| o25 = null; |
| // 13116 |
| o25 = {}; |
| // 13117 |
| f81632121_504.returns.push(o25); |
| // 13118 |
| o25.length = 0; |
| // undefined |
| o25 = null; |
| // 13122 |
| f81632121_602.returns.push(undefined); |
| // 13124 |
| f81632121_467.returns.push(1374851236898); |
| // 13126 |
| f81632121_467.returns.push(1374851236898); |
| // 13128 |
| o25 = {}; |
| // 13129 |
| o180 = {}; |
| // 13131 |
| o25.nodeType = void 0; |
| // 13132 |
| o25.length = 1; |
| // 13133 |
| o25["0"] = "e0RyX"; |
| // 13140 |
| o181 = {}; |
| // 13141 |
| f81632121_508.returns.push(o181); |
| // 13143 |
| o182 = {}; |
| // 13144 |
| f81632121_508.returns.push(o182); |
| // 13145 |
| o182.nodeName = "A"; |
| // 13146 |
| o182.rel = "toggle"; |
| // 13148 |
| o182.__FB_TOKEN = void 0; |
| // 13149 |
| // 13150 |
| o182.getAttribute = f81632121_506; |
| // 13151 |
| o182.hasAttribute = f81632121_507; |
| // 13153 |
| f81632121_507.returns.push(false); |
| // 13154 |
| o182.JSBNG__addEventListener = f81632121_468; |
| // 13156 |
| f81632121_468.returns.push(undefined); |
| // 13157 |
| o182.JSBNG__onkeydown = null; |
| // 13159 |
| o182.setAttribute = f81632121_575; |
| // 13160 |
| f81632121_575.returns.push(undefined); |
| // 13161 |
| o181.__FB_TOKEN = void 0; |
| // 13162 |
| // 13166 |
| f81632121_1349.__prototyped = void 0; |
| // 13168 |
| f81632121_1417.__prototyped = void 0; |
| // 13180 |
| o183 = {}; |
| // 13181 |
| f81632121_508.returns.push(o183); |
| // 13183 |
| o184 = {}; |
| // 13184 |
| f81632121_508.returns.push(o184); |
| // 13185 |
| o184.nodeName = "A"; |
| // 13186 |
| o184.rel = "toggle"; |
| // 13188 |
| o184.__FB_TOKEN = void 0; |
| // 13189 |
| // 13190 |
| o184.getAttribute = f81632121_506; |
| // 13191 |
| o184.hasAttribute = f81632121_507; |
| // 13193 |
| f81632121_507.returns.push(false); |
| // 13194 |
| o184.JSBNG__addEventListener = f81632121_468; |
| // 13196 |
| f81632121_468.returns.push(undefined); |
| // 13197 |
| o184.JSBNG__onkeydown = null; |
| // 13199 |
| o184.setAttribute = f81632121_575; |
| // 13200 |
| f81632121_575.returns.push(undefined); |
| // 13201 |
| o183.__FB_TOKEN = void 0; |
| // 13202 |
| // undefined |
| o183 = null; |
| // 13206 |
| f81632121_468.returns.push(undefined); |
| // 13207 |
| o184.JSBNG__onmouseover = null; |
| // undefined |
| o184 = null; |
| // 13215 |
| o183 = {}; |
| // 13216 |
| f81632121_508.returns.push(o183); |
| // 13218 |
| o184 = {}; |
| // 13219 |
| f81632121_508.returns.push(o184); |
| // 13220 |
| o184.nodeName = "A"; |
| // 13221 |
| o184.rel = "toggle"; |
| // 13223 |
| o184.__FB_TOKEN = void 0; |
| // 13224 |
| // 13225 |
| o184.getAttribute = f81632121_506; |
| // 13226 |
| o184.hasAttribute = f81632121_507; |
| // 13228 |
| f81632121_507.returns.push(false); |
| // 13229 |
| o184.JSBNG__addEventListener = f81632121_468; |
| // 13231 |
| f81632121_468.returns.push(undefined); |
| // 13232 |
| o184.JSBNG__onkeydown = null; |
| // 13234 |
| o184.setAttribute = f81632121_575; |
| // 13235 |
| f81632121_575.returns.push(undefined); |
| // 13236 |
| o183.__FB_TOKEN = void 0; |
| // 13237 |
| // undefined |
| o183 = null; |
| // 13241 |
| f81632121_468.returns.push(undefined); |
| // 13242 |
| o184.JSBNG__onmouseover = null; |
| // undefined |
| o184 = null; |
| // 13248 |
| o183 = {}; |
| // 13249 |
| f81632121_508.returns.push(o183); |
| // 13251 |
| o184 = {}; |
| // 13252 |
| f81632121_508.returns.push(o184); |
| // 13253 |
| o184.nodeName = "A"; |
| // 13254 |
| o184.rel = "toggle"; |
| // 13256 |
| o184.__FB_TOKEN = void 0; |
| // 13257 |
| // 13258 |
| o184.getAttribute = f81632121_506; |
| // 13259 |
| o184.hasAttribute = f81632121_507; |
| // 13261 |
| f81632121_507.returns.push(false); |
| // 13262 |
| o184.JSBNG__addEventListener = f81632121_468; |
| // 13264 |
| f81632121_468.returns.push(undefined); |
| // 13265 |
| o184.JSBNG__onkeydown = null; |
| // 13267 |
| o184.setAttribute = f81632121_575; |
| // 13268 |
| f81632121_575.returns.push(undefined); |
| // 13269 |
| o183.__FB_TOKEN = void 0; |
| // 13270 |
| // undefined |
| o183 = null; |
| // 13274 |
| f81632121_468.returns.push(undefined); |
| // 13275 |
| o184.JSBNG__onmouseover = null; |
| // undefined |
| o184 = null; |
| // 13281 |
| o183 = {}; |
| // 13282 |
| f81632121_508.returns.push(o183); |
| // 13284 |
| o184 = {}; |
| // 13285 |
| f81632121_508.returns.push(o184); |
| // 13286 |
| o184.nodeName = "A"; |
| // 13287 |
| o184.rel = "toggle"; |
| // 13289 |
| o184.__FB_TOKEN = void 0; |
| // 13290 |
| // 13291 |
| o184.getAttribute = f81632121_506; |
| // 13292 |
| o184.hasAttribute = f81632121_507; |
| // 13294 |
| f81632121_507.returns.push(false); |
| // 13295 |
| o184.JSBNG__addEventListener = f81632121_468; |
| // 13297 |
| f81632121_468.returns.push(undefined); |
| // 13298 |
| o184.JSBNG__onkeydown = null; |
| // 13300 |
| o184.setAttribute = f81632121_575; |
| // 13301 |
| f81632121_575.returns.push(undefined); |
| // 13302 |
| o183.__FB_TOKEN = void 0; |
| // 13303 |
| // undefined |
| o183 = null; |
| // 13307 |
| f81632121_468.returns.push(undefined); |
| // 13308 |
| o184.JSBNG__onmouseover = null; |
| // undefined |
| o184 = null; |
| // 13314 |
| f81632121_508.returns.push(o164); |
| // undefined |
| o164 = null; |
| // 13318 |
| f81632121_467.returns.push(1374851236966); |
| // 13327 |
| f81632121_508.returns.push(o165); |
| // undefined |
| o165 = null; |
| // 13331 |
| f81632121_467.returns.push(1374851236970); |
| // 13340 |
| o164 = {}; |
| // 13341 |
| o165 = {}; |
| // 13343 |
| o164.nodeType = void 0; |
| // 13344 |
| o164.length = 1; |
| // 13345 |
| o164["0"] = "OYzUx"; |
| // 13352 |
| o183 = {}; |
| // 13353 |
| f81632121_508.returns.push(o183); |
| // 13354 |
| f81632121_463.returns.push(3); |
| // 13357 |
| f81632121_508.returns.push(o183); |
| // 13361 |
| o184 = {}; |
| // 13362 |
| f81632121_508.returns.push(o184); |
| // 13363 |
| o184.nodeName = "A"; |
| // 13364 |
| o184.__FB_TOKEN = void 0; |
| // 13365 |
| // 13366 |
| o184.getAttribute = f81632121_506; |
| // 13367 |
| o184.hasAttribute = f81632121_507; |
| // 13369 |
| f81632121_507.returns.push(false); |
| // 13370 |
| o184.JSBNG__addEventListener = f81632121_468; |
| // 13372 |
| f81632121_468.returns.push(undefined); |
| // 13373 |
| o184.JSBNG__onclick = null; |
| // undefined |
| o184 = null; |
| // 13377 |
| f81632121_508.returns.push(o87); |
| // undefined |
| o87 = null; |
| // 13379 |
| o87 = {}; |
| // 13380 |
| f81632121_508.returns.push(o87); |
| // 13382 |
| f81632121_467.returns.push(1374851237022); |
| // 13387 |
| o184 = {}; |
| // 13388 |
| f81632121_508.returns.push(o184); |
| // 13389 |
| o184.nodeName = "A"; |
| // 13390 |
| o184.__FB_TOKEN = void 0; |
| // 13391 |
| // 13392 |
| o184.getAttribute = f81632121_506; |
| // 13393 |
| o184.hasAttribute = f81632121_507; |
| // 13395 |
| f81632121_507.returns.push(false); |
| // 13396 |
| o184.JSBNG__addEventListener = f81632121_468; |
| // 13398 |
| f81632121_468.returns.push(undefined); |
| // 13399 |
| o184.JSBNG__onclick = null; |
| // undefined |
| o184 = null; |
| // 13403 |
| f81632121_508.returns.push(o85); |
| // undefined |
| o85 = null; |
| // 13407 |
| o85 = {}; |
| // 13408 |
| f81632121_508.returns.push(o85); |
| // 13409 |
| o85.nodeName = "A"; |
| // 13410 |
| o85.__FB_TOKEN = void 0; |
| // 13411 |
| // 13412 |
| o85.getAttribute = f81632121_506; |
| // 13413 |
| o85.hasAttribute = f81632121_507; |
| // 13415 |
| f81632121_507.returns.push(false); |
| // 13416 |
| o85.JSBNG__addEventListener = f81632121_468; |
| // 13418 |
| f81632121_468.returns.push(undefined); |
| // 13419 |
| o85.JSBNG__onclick = null; |
| // undefined |
| o85 = null; |
| // 13423 |
| f81632121_508.returns.push(o88); |
| // undefined |
| o88 = null; |
| // 13427 |
| o85 = {}; |
| // 13428 |
| f81632121_508.returns.push(o85); |
| // 13429 |
| o85.nodeName = "A"; |
| // 13430 |
| o85.__FB_TOKEN = void 0; |
| // 13431 |
| // 13432 |
| o85.getAttribute = f81632121_506; |
| // 13433 |
| o85.hasAttribute = f81632121_507; |
| // 13435 |
| f81632121_507.returns.push(false); |
| // 13436 |
| o85.JSBNG__addEventListener = f81632121_468; |
| // 13438 |
| f81632121_468.returns.push(undefined); |
| // 13439 |
| o85.JSBNG__onclick = null; |
| // undefined |
| o85 = null; |
| // 13443 |
| f81632121_508.returns.push(o91); |
| // undefined |
| o91 = null; |
| // 13447 |
| o85 = {}; |
| // 13448 |
| f81632121_508.returns.push(o85); |
| // 13449 |
| o85.nodeName = "A"; |
| // 13450 |
| o85.__FB_TOKEN = void 0; |
| // 13451 |
| // 13452 |
| o85.getAttribute = f81632121_506; |
| // 13453 |
| o85.hasAttribute = f81632121_507; |
| // 13455 |
| f81632121_507.returns.push(false); |
| // 13456 |
| o85.JSBNG__addEventListener = f81632121_468; |
| // 13458 |
| f81632121_468.returns.push(undefined); |
| // 13459 |
| o85.JSBNG__onclick = null; |
| // undefined |
| o85 = null; |
| // 13463 |
| f81632121_508.returns.push(o92); |
| // undefined |
| o92 = null; |
| // 13466 |
| o85 = {}; |
| // 13467 |
| f81632121_508.returns.push(o85); |
| // 13468 |
| o85.nodeName = "A"; |
| // 13469 |
| o85.__FB_TOKEN = void 0; |
| // 13470 |
| // 13471 |
| o85.getAttribute = f81632121_506; |
| // 13472 |
| o85.hasAttribute = f81632121_507; |
| // 13474 |
| f81632121_507.returns.push(false); |
| // 13475 |
| o85.JSBNG__addEventListener = f81632121_468; |
| // 13477 |
| f81632121_468.returns.push(undefined); |
| // 13478 |
| o85.JSBNG__onclick = null; |
| // undefined |
| o85 = null; |
| // 13482 |
| f81632121_508.returns.push(o90); |
| // undefined |
| o90 = null; |
| // 13486 |
| o85 = {}; |
| // 13487 |
| f81632121_508.returns.push(o85); |
| // 13488 |
| o85.nodeName = "A"; |
| // 13489 |
| o85.__FB_TOKEN = void 0; |
| // 13490 |
| // 13491 |
| o85.getAttribute = f81632121_506; |
| // 13492 |
| o85.hasAttribute = f81632121_507; |
| // 13494 |
| f81632121_507.returns.push(false); |
| // 13495 |
| o85.JSBNG__addEventListener = f81632121_468; |
| // 13497 |
| f81632121_468.returns.push(undefined); |
| // 13498 |
| o85.JSBNG__onclick = null; |
| // undefined |
| o85 = null; |
| // 13502 |
| f81632121_508.returns.push(o89); |
| // undefined |
| o89 = null; |
| // 13506 |
| o85 = {}; |
| // 13507 |
| f81632121_508.returns.push(o85); |
| // 13508 |
| o88 = {}; |
| // 13509 |
| o85.firstChild = o88; |
| // 13510 |
| o88.id = "u_0_42"; |
| // 13516 |
| f81632121_508.returns.push(o29); |
| // 13520 |
| o89 = {}; |
| // 13521 |
| f81632121_508.returns.push(o89); |
| // 13522 |
| o89.nodeName = "DIV"; |
| // 13523 |
| o89.__FB_TOKEN = void 0; |
| // 13524 |
| // 13525 |
| o89.getAttribute = f81632121_506; |
| // 13526 |
| o89.hasAttribute = f81632121_507; |
| // 13528 |
| f81632121_507.returns.push(false); |
| // 13529 |
| o89.JSBNG__addEventListener = f81632121_468; |
| // 13531 |
| f81632121_468.returns.push(undefined); |
| // 13532 |
| o89.JSBNG__onclick = null; |
| // undefined |
| o89 = null; |
| // 13541 |
| o89 = {}; |
| // 13542 |
| o90 = {}; |
| // 13544 |
| o89.nodeType = void 0; |
| // 13545 |
| o89.length = 1; |
| // 13546 |
| o89["0"] = "xfhln"; |
| // 13549 |
| f81632121_467.returns.push(1374851237057); |
| // 13552 |
| f81632121_467.returns.push(1374851237057); |
| // 13554 |
| f81632121_467.returns.push(1374851237057); |
| // 13557 |
| f81632121_467.returns.push(1374851237061); |
| // 13560 |
| f81632121_467.returns.push(1374851237062); |
| // 13562 |
| f81632121_467.returns.push(1374851237062); |
| // 13565 |
| f81632121_467.returns.push(1374851237062); |
| // 13568 |
| f81632121_467.returns.push(1374851237063); |
| // 13570 |
| f81632121_467.returns.push(1374851237063); |
| // 13573 |
| f81632121_467.returns.push(1374851237064); |
| // 13576 |
| f81632121_467.returns.push(1374851237064); |
| // 13578 |
| f81632121_467.returns.push(1374851237064); |
| // 13581 |
| f81632121_467.returns.push(1374851237065); |
| // 13584 |
| f81632121_467.returns.push(1374851237065); |
| // 13587 |
| f81632121_508.returns.push(o88); |
| // 13603 |
| f81632121_467.returns.push(1374851237068); |
| // 13606 |
| f81632121_467.returns.push(1374851237069); |
| // 13609 |
| f81632121_467.returns.push(1374851237069); |
| // 13611 |
| f81632121_467.returns.push(1374851237069); |
| // 13620 |
| f81632121_468.returns.push(undefined); |
| // 13621 |
| o182.JSBNG__onmouseover = null; |
| // 13628 |
| f81632121_468.returns.push(undefined); |
| // 13629 |
| o182.JSBNG__onmouseout = null; |
| // undefined |
| o182 = null; |
| // 13633 |
| o91 = {}; |
| // 13634 |
| f81632121_508.returns.push(o91); |
| // 13635 |
| o92 = {}; |
| // 13636 |
| o91.classList = o92; |
| // 13638 |
| o92.contains = f81632121_513; |
| // undefined |
| o92 = null; |
| // 13639 |
| f81632121_513.returns.push(false); |
| // 13640 |
| o92 = {}; |
| // 13641 |
| o91.parentNode = o92; |
| // 13642 |
| o182 = {}; |
| // 13643 |
| o92.classList = o182; |
| // 13645 |
| o182.contains = f81632121_513; |
| // undefined |
| o182 = null; |
| // 13646 |
| f81632121_513.returns.push(true); |
| // 13647 |
| o91.getElementsByTagName = f81632121_502; |
| // 13649 |
| o91.querySelectorAll = f81632121_504; |
| // 13650 |
| o182 = {}; |
| // 13651 |
| f81632121_504.returns.push(o182); |
| // 13652 |
| o182.length = 1; |
| // 13653 |
| o182["0"] = o24; |
| // undefined |
| o182 = null; |
| // 13657 |
| o182 = {}; |
| // 13658 |
| f81632121_508.returns.push(o182); |
| // 13659 |
| o182.getElementsByTagName = f81632121_502; |
| // 13661 |
| o182.querySelectorAll = f81632121_504; |
| // 13662 |
| o184 = {}; |
| // 13663 |
| f81632121_504.returns.push(o184); |
| // 13664 |
| o184.length = 1; |
| // 13665 |
| o185 = {}; |
| // 13666 |
| o184["0"] = o185; |
| // undefined |
| o184 = null; |
| // 13670 |
| o184 = {}; |
| // 13671 |
| f81632121_504.returns.push(o184); |
| // 13672 |
| o184.length = 5; |
| // 13673 |
| o184["0"] = o185; |
| // undefined |
| o185 = null; |
| // 13674 |
| o185 = {}; |
| // 13675 |
| o184["1"] = o185; |
| // undefined |
| o185 = null; |
| // 13676 |
| o185 = {}; |
| // 13677 |
| o184["2"] = o185; |
| // undefined |
| o185 = null; |
| // 13678 |
| o185 = {}; |
| // 13679 |
| o184["3"] = o185; |
| // undefined |
| o185 = null; |
| // 13680 |
| o184["4"] = o181; |
| // undefined |
| o184 = null; |
| // 13681 |
| o184 = {}; |
| // 13682 |
| o182.classList = o184; |
| // 13684 |
| o184.contains = f81632121_513; |
| // undefined |
| o184 = null; |
| // 13685 |
| f81632121_513.returns.push(false); |
| // 13686 |
| o184 = {}; |
| // 13687 |
| o182.parentNode = o184; |
| // 13688 |
| o185 = {}; |
| // 13689 |
| o184.classList = o185; |
| // 13691 |
| o185.contains = f81632121_513; |
| // undefined |
| o185 = null; |
| // 13692 |
| f81632121_513.returns.push(true); |
| // 13693 |
| o184.offsetWidth = 850; |
| // 13694 |
| o181.offsetLeft = 524; |
| // 13695 |
| o181.offsetWidth = 84; |
| // undefined |
| o181 = null; |
| // 13701 |
| f81632121_513.returns.push(false); |
| // 13706 |
| f81632121_513.returns.push(false); |
| // 13707 |
| o181 = {}; |
| // 13708 |
| o184.parentNode = o181; |
| // 13709 |
| o185 = {}; |
| // 13710 |
| o181.classList = o185; |
| // 13712 |
| o185.contains = f81632121_513; |
| // undefined |
| o185 = null; |
| // 13713 |
| f81632121_513.returns.push(false); |
| // 13714 |
| o181.parentNode = o91; |
| // 13718 |
| f81632121_513.returns.push(false); |
| // 13723 |
| f81632121_513.returns.push(false); |
| // 13724 |
| o185 = {}; |
| // 13725 |
| o92.parentNode = o185; |
| // 13726 |
| o186 = {}; |
| // 13727 |
| o185.classList = o186; |
| // 13729 |
| o186.contains = f81632121_513; |
| // 13730 |
| f81632121_513.returns.push(true); |
| // 13733 |
| o186.remove = f81632121_1114; |
| // undefined |
| o186 = null; |
| // 13734 |
| f81632121_1114.returns.push(undefined); |
| // 13740 |
| o186 = {}; |
| // 13741 |
| f81632121_508.returns.push(o186); |
| // undefined |
| o186 = null; |
| // 13742 |
| o186 = {}; |
| // 13743 |
| o187 = {}; |
| // 13745 |
| o186.nodeType = void 0; |
| // 13746 |
| o186.length = 1; |
| // 13747 |
| o186["0"] = "4kgAq"; |
| // 13750 |
| f81632121_467.returns.push(1374851237153); |
| // 13753 |
| f81632121_467.returns.push(1374851237153); |
| // 13755 |
| f81632121_467.returns.push(1374851237153); |
| // 13758 |
| f81632121_467.returns.push(1374851237153); |
| // 13761 |
| f81632121_467.returns.push(1374851237153); |
| // 13763 |
| f81632121_467.returns.push(1374851237153); |
| // 13766 |
| f81632121_467.returns.push(1374851237154); |
| // 13769 |
| f81632121_467.returns.push(1374851237154); |
| // 13772 |
| o188 = {}; |
| // 13773 |
| f81632121_508.returns.push(o188); |
| // undefined |
| o188 = null; |
| // 13775 |
| o188 = {}; |
| // 13776 |
| f81632121_508.returns.push(o188); |
| // undefined |
| o188 = null; |
| // 13778 |
| o188 = {}; |
| // 13779 |
| f81632121_508.returns.push(o188); |
| // 13781 |
| o189 = {}; |
| // 13782 |
| f81632121_508.returns.push(o189); |
| // 13783 |
| o188.nodeName = "LI"; |
| // 13784 |
| o188.__FB_TOKEN = void 0; |
| // 13785 |
| // 13786 |
| o188.getAttribute = f81632121_506; |
| // 13787 |
| o188.hasAttribute = f81632121_507; |
| // 13789 |
| f81632121_507.returns.push(false); |
| // 13790 |
| o188.JSBNG__addEventListener = f81632121_468; |
| // 13792 |
| f81632121_468.returns.push(undefined); |
| // 13793 |
| o188.JSBNG__onclick = null; |
| // undefined |
| o188 = null; |
| // 13795 |
| o189.nodeName = "LI"; |
| // 13796 |
| o189.__FB_TOKEN = void 0; |
| // 13797 |
| // 13798 |
| o189.getAttribute = f81632121_506; |
| // 13799 |
| o189.hasAttribute = f81632121_507; |
| // 13801 |
| f81632121_507.returns.push(false); |
| // 13802 |
| o189.JSBNG__addEventListener = f81632121_468; |
| // 13804 |
| f81632121_468.returns.push(undefined); |
| // 13805 |
| o189.JSBNG__onclick = null; |
| // undefined |
| o189 = null; |
| // 13810 |
| f81632121_467.returns.push(1374851237156); |
| // 13813 |
| f81632121_467.returns.push(1374851237158); |
| // 13814 |
| o40.getAttribute = f81632121_506; |
| // undefined |
| o40 = null; |
| // 13815 |
| f81632121_506.returns.push("1374637972"); |
| // 13817 |
| f81632121_506.returns.push(null); |
| // 13818 |
| o41.getAttribute = f81632121_506; |
| // undefined |
| o41 = null; |
| // 13819 |
| f81632121_506.returns.push("1374638034"); |
| // 13821 |
| f81632121_506.returns.push(null); |
| // 13822 |
| o42.getAttribute = f81632121_506; |
| // undefined |
| o42 = null; |
| // 13823 |
| f81632121_506.returns.push("1374638180"); |
| // 13825 |
| f81632121_506.returns.push(null); |
| // 13826 |
| o43.getAttribute = f81632121_506; |
| // undefined |
| o43 = null; |
| // 13827 |
| f81632121_506.returns.push("1374733044"); |
| // 13829 |
| f81632121_506.returns.push(null); |
| // 13830 |
| o48.getAttribute = f81632121_506; |
| // undefined |
| o48 = null; |
| // 13831 |
| f81632121_506.returns.push("1374039953"); |
| // 13833 |
| f81632121_506.returns.push(null); |
| // 13834 |
| o49.getAttribute = f81632121_506; |
| // undefined |
| o49 = null; |
| // 13835 |
| f81632121_506.returns.push("1374040107"); |
| // 13837 |
| f81632121_506.returns.push(null); |
| // 13838 |
| o50.getAttribute = f81632121_506; |
| // undefined |
| o50 = null; |
| // 13839 |
| f81632121_506.returns.push("1374040490"); |
| // 13841 |
| f81632121_506.returns.push(null); |
| // 13842 |
| o51.getAttribute = f81632121_506; |
| // undefined |
| o51 = null; |
| // 13843 |
| f81632121_506.returns.push("1374119198"); |
| // 13845 |
| f81632121_506.returns.push(null); |
| // 13846 |
| o44.getAttribute = f81632121_506; |
| // undefined |
| o44 = null; |
| // 13847 |
| f81632121_506.returns.push("1373168110"); |
| // 13849 |
| f81632121_506.returns.push(null); |
| // 13850 |
| o45.getAttribute = f81632121_506; |
| // undefined |
| o45 = null; |
| // 13851 |
| f81632121_506.returns.push("1373214256"); |
| // 13853 |
| f81632121_506.returns.push(null); |
| // 13854 |
| o46.getAttribute = f81632121_506; |
| // undefined |
| o46 = null; |
| // 13855 |
| f81632121_506.returns.push("1373214355"); |
| // 13857 |
| f81632121_506.returns.push(null); |
| // 13858 |
| o47.getAttribute = f81632121_506; |
| // undefined |
| o47 = null; |
| // 13859 |
| f81632121_506.returns.push("1373214375"); |
| // 13861 |
| f81632121_506.returns.push(null); |
| // 13862 |
| o56.getAttribute = f81632121_506; |
| // undefined |
| o56 = null; |
| // 13863 |
| f81632121_506.returns.push("1372985540"); |
| // 13865 |
| f81632121_506.returns.push(null); |
| // 13866 |
| o57.getAttribute = f81632121_506; |
| // undefined |
| o57 = null; |
| // 13867 |
| f81632121_506.returns.push("1373002430"); |
| // 13869 |
| f81632121_506.returns.push(null); |
| // 13870 |
| o58.getAttribute = f81632121_506; |
| // undefined |
| o58 = null; |
| // 13871 |
| f81632121_506.returns.push("1373066508"); |
| // 13873 |
| f81632121_506.returns.push(null); |
| // 13874 |
| o59.getAttribute = f81632121_506; |
| // undefined |
| o59 = null; |
| // 13875 |
| f81632121_506.returns.push("1373066594"); |
| // 13877 |
| f81632121_506.returns.push(null); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2"); |
| // 13881 |
| f81632121_467.returns.push(1374851237166); |
| // 13882 |
| o40 = {}; |
| // undefined |
| o40 = null; |
| // undefined |
| fo81632121_1605_readyState = function() { return fo81632121_1605_readyState.returns[fo81632121_1605_readyState.inst++]; }; |
| fo81632121_1605_readyState.returns = []; |
| fo81632121_1605_readyState.inst = 0; |
| defineGetter(o17, "readyState", fo81632121_1605_readyState, undefined); |
| // undefined |
| fo81632121_1605_readyState.returns.push(2); |
| // 13884 |
| o40 = {}; |
| // undefined |
| o40 = null; |
| // undefined |
| fo81632121_1605_readyState.returns.push(3); |
| // 13886 |
| o40 = {}; |
| // undefined |
| o40 = null; |
| // undefined |
| fo81632121_1605_readyState.returns.push(4); |
| // 13888 |
| o17.JSBNG__status = 200; |
| // undefined |
| fo81632121_1605_readyState.returns.push(4); |
| // 13890 |
| // undefined |
| o17 = null; |
| // 13891 |
| o17 = {}; |
| // 13895 |
| o40 = {}; |
| // 13899 |
| o41 = {}; |
| // 13904 |
| o63.getResponseHeader = f81632121_1332; |
| // 13907 |
| f81632121_1332.returns.push("/s2QkaS/fr7GuHXgkwmyYd5wa/sWiLHB+XHj7IK5/gk="); |
| // 13910 |
| f81632121_1332.returns.push("/s2QkaS/fr7GuHXgkwmyYd5wa/sWiLHB+XHj7IK5/gk="); |
| // 13911 |
| // 13913 |
| o63.JSBNG__status = 200; |
| // 13917 |
| f81632121_467.returns.push(1374851237173); |
| // 13918 |
| o76._handleXHRResponse = f81632121_1333; |
| // 13920 |
| o76.getOption = f81632121_1334; |
| // 13921 |
| o42 = {}; |
| // 13922 |
| o76.option = o42; |
| // 13923 |
| o42.suppressEvaluation = false; |
| // 13926 |
| f81632121_1334.returns.push(false); |
| // 13927 |
| o63.responseText = "for (;;);{\"__ar\":1,\"payload\":null,\"css\":[\"c6lUE\"],\"bootloadable\":{},\"resource_map\":{\"c6lUE\":{\"type\":\"css\",\"permanent\":1,\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/y1\\/r\\/i2fjJiK4liE.css\"}},\"ixData\":[]}"; |
| // 13928 |
| o76._unshieldResponseText = f81632121_1336; |
| // 13929 |
| f81632121_1336.returns.push("{\"__ar\":1,\"payload\":null,\"css\":[\"c6lUE\"],\"bootloadable\":{},\"resource_map\":{\"c6lUE\":{\"type\":\"css\",\"permanent\":1,\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/y1\\/r\\/i2fjJiK4liE.css\"}},\"ixData\":[]}"); |
| // 13930 |
| o76._interpretResponse = f81632121_1337; |
| // 13931 |
| f81632121_1337.returns.push({__JSBNG_unknown_object:true}); |
| // 13932 |
| o76.invokeResponseHandler = f81632121_1338; |
| // 13933 |
| o76.handler = null; |
| // 13934 |
| f81632121_1821 = function() { return f81632121_1821.returns[f81632121_1821.inst++]; }; |
| f81632121_1821.returns = []; |
| f81632121_1821.inst = 0; |
| // 13935 |
| o76.errorHandler = f81632121_1821; |
| // 13936 |
| o76._isRelevant = f81632121_1340; |
| // 13937 |
| o76._allowCrossPageTransition = true; |
| // 13938 |
| f81632121_1340.returns.push(true); |
| // 13939 |
| o76._dispatchResponse = f81632121_1341; |
| // 13940 |
| o76.getURI = f81632121_1342; |
| // 13941 |
| o43 = {}; |
| // 13942 |
| o76.uri = o43; |
| // 13944 |
| o43.$URIBase0 = ""; |
| // 13945 |
| o43.$URIBase1 = ""; |
| // 13946 |
| o43.$URIBase2 = ""; |
| // 13947 |
| o43.$URIBase3 = "/ajax/browse/nux.php"; |
| // 13949 |
| o44 = {}; |
| // 13950 |
| o43.$URIBase5 = o44; |
| // undefined |
| o44 = null; |
| // 13951 |
| o43.$URIBase4 = ""; |
| // 13952 |
| f81632121_1344.returns.push("/ajax/browse/nux.php"); |
| // 13953 |
| f81632121_1342.returns.push("/ajax/browse/nux.php"); |
| // 13954 |
| o76.preBootloadHandler = void 0; |
| // 13965 |
| f81632121_1344.returns.push("/ajax/browse/nux.php"); |
| // 13966 |
| f81632121_1342.returns.push("/ajax/browse/nux.php"); |
| // 13968 |
| f81632121_12.returns.push(50); |
| // 13972 |
| o44 = {}; |
| // 13973 |
| f81632121_474.returns.push(o44); |
| // 13975 |
| f81632121_478.returns.push(o44); |
| // undefined |
| o44 = null; |
| // 13976 |
| f81632121_1338.returns.push(undefined); |
| // 13977 |
| f81632121_1333.returns.push(undefined); |
| // 13980 |
| o42.asynchronous = true; |
| // undefined |
| o42 = null; |
| // 13983 |
| f81632121_1334.returns.push(true); |
| // 13984 |
| // 13985 |
| o42 = {}; |
| // 13986 |
| o183.classList = o42; |
| // 13988 |
| o42.contains = f81632121_513; |
| // undefined |
| o42 = null; |
| // 13989 |
| f81632121_513.returns.push(false); |
| // 13990 |
| o42 = {}; |
| // 13991 |
| o183.parentNode = o42; |
| // 13992 |
| o44 = {}; |
| // 13993 |
| o42.classList = o44; |
| // 13995 |
| o44.contains = f81632121_513; |
| // undefined |
| o44 = null; |
| // 13996 |
| f81632121_513.returns.push(true); |
| // 13997 |
| o183.getElementsByTagName = f81632121_502; |
| // 13999 |
| o183.querySelectorAll = f81632121_504; |
| // 14000 |
| o44 = {}; |
| // 14001 |
| f81632121_504.returns.push(o44); |
| // 14002 |
| o44.length = 1; |
| // 14003 |
| o44["0"] = o31; |
| // undefined |
| o44 = null; |
| // 14007 |
| o44 = {}; |
| // 14008 |
| f81632121_504.returns.push(o44); |
| // 14009 |
| o44.length = 1; |
| // 14010 |
| o44["0"] = o73; |
| // undefined |
| o44 = null; |
| // 14011 |
| o73.offsetHeight = 966; |
| // 14012 |
| o31.offsetHeight = 2496; |
| // 14013 |
| o42.id = "u_0_1a"; |
| // 14017 |
| f81632121_513.returns.push(false); |
| // 14022 |
| f81632121_513.returns.push(true); |
| // 14026 |
| o44 = {}; |
| // 14027 |
| f81632121_504.returns.push(o44); |
| // 14028 |
| o44.length = 1; |
| // 14029 |
| o44["0"] = o31; |
| // undefined |
| o44 = null; |
| // 14033 |
| o44 = {}; |
| // 14034 |
| f81632121_504.returns.push(o44); |
| // 14035 |
| o44.length = 1; |
| // 14036 |
| o44["0"] = o73; |
| // undefined |
| o44 = null; |
| // 14046 |
| f81632121_508.returns.push(o137); |
| // 14050 |
| f81632121_645.returns.push(true); |
| // 14051 |
| o44 = {}; |
| // 14052 |
| f81632121_4.returns.push(o44); |
| // 14053 |
| o44.getPropertyValue = f81632121_1442; |
| // undefined |
| o44 = null; |
| // 14054 |
| f81632121_1442.returns.push("fixed"); |
| // 14056 |
| f81632121_508.returns.push(o139); |
| // undefined |
| o139 = null; |
| // 14058 |
| o88.offsetWidth = 148; |
| // 14059 |
| o88.offsetHeight = 62; |
| // 14063 |
| f81632121_645.returns.push(true); |
| // 14064 |
| o88.getBoundingClientRect = f81632121_1481; |
| // 14065 |
| o44 = {}; |
| // 14066 |
| f81632121_1481.returns.push(o44); |
| // 14067 |
| o44.left = 357; |
| // 14069 |
| o44.JSBNG__top = 10665; |
| // undefined |
| o44 = null; |
| // 14074 |
| o44 = {}; |
| // 14075 |
| o88.classList = o44; |
| // 14077 |
| o44.contains = f81632121_513; |
| // undefined |
| o44 = null; |
| // 14078 |
| f81632121_513.returns.push(false); |
| // 14079 |
| o88.parentNode = o85; |
| // undefined |
| o88 = null; |
| // 14080 |
| o44 = {}; |
| // 14081 |
| o85.classList = o44; |
| // 14083 |
| o44.contains = f81632121_513; |
| // undefined |
| o44 = null; |
| // 14084 |
| f81632121_513.returns.push(false); |
| // 14085 |
| o85.parentNode = o79; |
| // undefined |
| o85 = null; |
| // 14086 |
| o44 = {}; |
| // 14087 |
| o79.classList = o44; |
| // 14089 |
| o44.contains = f81632121_513; |
| // undefined |
| o44 = null; |
| // 14090 |
| f81632121_513.returns.push(false); |
| // 14091 |
| o44 = {}; |
| // 14092 |
| o79.parentNode = o44; |
| // undefined |
| o79 = null; |
| // 14093 |
| o45 = {}; |
| // 14094 |
| o44.classList = o45; |
| // 14096 |
| o45.contains = f81632121_513; |
| // undefined |
| o45 = null; |
| // 14097 |
| f81632121_513.returns.push(false); |
| // 14098 |
| o44.parentNode = o183; |
| // 14102 |
| f81632121_513.returns.push(false); |
| // 14107 |
| f81632121_513.returns.push(false); |
| // 14108 |
| o42.parentNode = o29; |
| // 14109 |
| o45 = {}; |
| // 14110 |
| o29.classList = o45; |
| // 14112 |
| o45.contains = f81632121_513; |
| // undefined |
| o45 = null; |
| // 14113 |
| f81632121_513.returns.push(false); |
| // 14114 |
| o29.parentNode = o87; |
| // 14115 |
| o45 = {}; |
| // 14116 |
| o87.classList = o45; |
| // 14118 |
| o45.contains = f81632121_513; |
| // undefined |
| o45 = null; |
| // 14119 |
| f81632121_513.returns.push(false); |
| // 14120 |
| o87.parentNode = o21; |
| // 14121 |
| o45 = {}; |
| // 14122 |
| o21.classList = o45; |
| // 14124 |
| o45.contains = f81632121_513; |
| // undefined |
| o45 = null; |
| // 14125 |
| f81632121_513.returns.push(false); |
| // 14126 |
| o21.parentNode = o20; |
| // 14127 |
| o45 = {}; |
| // 14128 |
| o20.classList = o45; |
| // 14130 |
| o45.contains = f81632121_513; |
| // undefined |
| o45 = null; |
| // 14131 |
| f81632121_513.returns.push(false); |
| // 14132 |
| o45 = {}; |
| // 14133 |
| o20.parentNode = o45; |
| // 14134 |
| o46 = {}; |
| // 14135 |
| o45.classList = o46; |
| // 14137 |
| o46.contains = f81632121_513; |
| // undefined |
| o46 = null; |
| // 14138 |
| f81632121_513.returns.push(false); |
| // 14139 |
| o45.parentNode = o109; |
| // 14140 |
| o46 = {}; |
| // 14141 |
| o109.classList = o46; |
| // 14143 |
| o46.contains = f81632121_513; |
| // undefined |
| o46 = null; |
| // 14144 |
| f81632121_513.returns.push(false); |
| // 14146 |
| o46 = {}; |
| // 14147 |
| o110.classList = o46; |
| // 14149 |
| o46.contains = f81632121_513; |
| // undefined |
| o46 = null; |
| // 14150 |
| f81632121_513.returns.push(false); |
| // 14152 |
| o46 = {}; |
| // 14153 |
| o111.classList = o46; |
| // 14155 |
| o46.contains = f81632121_513; |
| // undefined |
| o46 = null; |
| // 14156 |
| f81632121_513.returns.push(false); |
| // 14158 |
| o46 = {}; |
| // 14159 |
| o112.classList = o46; |
| // 14161 |
| o46.contains = f81632121_513; |
| // undefined |
| o46 = null; |
| // 14162 |
| f81632121_513.returns.push(false); |
| // 14164 |
| o46 = {}; |
| // 14165 |
| o113.classList = o46; |
| // 14167 |
| o46.contains = f81632121_513; |
| // undefined |
| o46 = null; |
| // 14168 |
| f81632121_513.returns.push(false); |
| // 14173 |
| f81632121_513.returns.push(false); |
| // 14178 |
| f81632121_513.returns.push(false); |
| // 14183 |
| f81632121_513.returns.push(false); |
| // 14191 |
| o46 = {}; |
| // 14192 |
| f81632121_504.returns.push(o46); |
| // 14193 |
| o46.length = 1; |
| // 14194 |
| o46["0"] = o75; |
| // undefined |
| o46 = null; |
| // 14195 |
| o75.getAttribute = f81632121_506; |
| // 14196 |
| f81632121_506.returns.push("recent"); |
| // 14198 |
| f81632121_506.returns.push("0"); |
| // 14202 |
| o46 = {}; |
| // 14203 |
| f81632121_504.returns.push(o46); |
| // 14204 |
| o46.length = 1; |
| // 14205 |
| o46["0"] = o75; |
| // undefined |
| o46 = null; |
| // undefined |
| o75 = null; |
| // 14207 |
| f81632121_506.returns.push("recent"); |
| // 14209 |
| f81632121_506.returns.push("0"); |
| // 14215 |
| f81632121_508.returns.push(o93); |
| // 14216 |
| f81632121_7.returns.push(undefined); |
| // 14217 |
| f81632121_1852 = function() { return f81632121_1852.returns[f81632121_1852.inst++]; }; |
| f81632121_1852.returns = []; |
| f81632121_1852.inst = 0; |
| // 14218 |
| ow81632121.JSBNG__onmousemove = f81632121_1852; |
| // 14224 |
| o93.getElementsByTagName = f81632121_502; |
| // 14226 |
| o93.querySelectorAll = f81632121_504; |
| // 14227 |
| o46 = {}; |
| // 14228 |
| f81632121_504.returns.push(o46); |
| // 14229 |
| o46.length = 5; |
| // 14230 |
| o47 = {}; |
| // 14231 |
| o46["0"] = o47; |
| // 14232 |
| o48 = {}; |
| // 14233 |
| o46["1"] = o48; |
| // 14234 |
| o49 = {}; |
| // 14235 |
| o46["2"] = o49; |
| // 14236 |
| o50 = {}; |
| // 14237 |
| o46["3"] = o50; |
| // 14238 |
| o51 = {}; |
| // 14239 |
| o46["4"] = o51; |
| // undefined |
| o46 = null; |
| // 14240 |
| o47.getElementsByTagName = f81632121_502; |
| // 14242 |
| o47.querySelectorAll = f81632121_504; |
| // 14243 |
| o46 = {}; |
| // 14244 |
| f81632121_504.returns.push(o46); |
| // 14245 |
| o46.length = 1; |
| // 14246 |
| o56 = {}; |
| // 14247 |
| o46["0"] = o56; |
| // undefined |
| o46 = null; |
| // 14248 |
| o56.getAttribute = f81632121_506; |
| // 14249 |
| f81632121_506.returns.push("{\"adid\":6011858202131,\"segment\":\"market\"}"); |
| // 14250 |
| o48.getElementsByTagName = f81632121_502; |
| // 14252 |
| o48.querySelectorAll = f81632121_504; |
| // 14253 |
| o46 = {}; |
| // 14254 |
| f81632121_504.returns.push(o46); |
| // 14255 |
| o46.length = 1; |
| // 14256 |
| o57 = {}; |
| // 14257 |
| o46["0"] = o57; |
| // undefined |
| o46 = null; |
| // 14258 |
| o57.getAttribute = f81632121_506; |
| // 14259 |
| f81632121_506.returns.push("{\"adid\":6007957621675,\"segment\":\"market\"}"); |
| // 14260 |
| o49.getElementsByTagName = f81632121_502; |
| // 14262 |
| o49.querySelectorAll = f81632121_504; |
| // 14263 |
| o46 = {}; |
| // 14264 |
| f81632121_504.returns.push(o46); |
| // 14265 |
| o46.length = 1; |
| // 14266 |
| o58 = {}; |
| // 14267 |
| o46["0"] = o58; |
| // undefined |
| o46 = null; |
| // 14268 |
| o58.getAttribute = f81632121_506; |
| // 14269 |
| f81632121_506.returns.push("{\"adid\":6007651357550,\"segment\":\"market\"}"); |
| // 14270 |
| o50.getElementsByTagName = f81632121_502; |
| // 14272 |
| o50.querySelectorAll = f81632121_504; |
| // 14273 |
| o46 = {}; |
| // 14274 |
| f81632121_504.returns.push(o46); |
| // 14275 |
| o46.length = 1; |
| // 14276 |
| o59 = {}; |
| // 14277 |
| o46["0"] = o59; |
| // undefined |
| o46 = null; |
| // 14278 |
| o59.getAttribute = f81632121_506; |
| // 14279 |
| f81632121_506.returns.push("{\"adid\":6010680301716,\"segment\":\"market\"}"); |
| // 14280 |
| o51.getElementsByTagName = f81632121_502; |
| // 14282 |
| o51.querySelectorAll = f81632121_504; |
| // 14283 |
| o46 = {}; |
| // 14284 |
| f81632121_504.returns.push(o46); |
| // 14285 |
| o46.length = 1; |
| // 14286 |
| o75 = {}; |
| // 14287 |
| o46["0"] = o75; |
| // undefined |
| o46 = null; |
| // 14288 |
| o75.getAttribute = f81632121_506; |
| // 14289 |
| f81632121_506.returns.push("{\"adid\":6007882470930,\"segment\":\"market\"}"); |
| // 14290 |
| o46 = {}; |
| // 14291 |
| o47.classList = o46; |
| // 14293 |
| o46.add = f81632121_602; |
| // 14294 |
| f81632121_602.returns.push(undefined); |
| // 14295 |
| o79 = {}; |
| // 14296 |
| o93.classList = o79; |
| // 14298 |
| o79.remove = f81632121_1114; |
| // undefined |
| o79 = null; |
| // 14299 |
| f81632121_1114.returns.push(undefined); |
| // 14300 |
| o93.setAttribute = f81632121_575; |
| // 14301 |
| f81632121_575.returns.push(undefined); |
| // 14302 |
| f81632121_1871 = function() { return f81632121_1871.returns[f81632121_1871.inst++]; }; |
| f81632121_1871.returns = []; |
| f81632121_1871.inst = 0; |
| // 14303 |
| o93.cloneNode = f81632121_1871; |
| // 14304 |
| o79 = {}; |
| // 14305 |
| f81632121_1871.returns.push(o79); |
| // 14306 |
| // 14307 |
| o79.getElementsByTagName = f81632121_502; |
| // 14309 |
| o79.querySelectorAll = f81632121_504; |
| // 14310 |
| o85 = {}; |
| // 14311 |
| f81632121_504.returns.push(o85); |
| // 14312 |
| o85.length = 5; |
| // 14313 |
| o88 = {}; |
| // 14314 |
| o85["0"] = o88; |
| // 14315 |
| o139 = {}; |
| // 14316 |
| o85["1"] = o139; |
| // 14317 |
| o188 = {}; |
| // 14318 |
| o85["2"] = o188; |
| // 14319 |
| o189 = {}; |
| // 14320 |
| o85["3"] = o189; |
| // 14321 |
| o190 = {}; |
| // 14322 |
| o85["4"] = o190; |
| // undefined |
| o85 = null; |
| // 14323 |
| o88.getElementsByTagName = f81632121_502; |
| // 14325 |
| o88.querySelectorAll = f81632121_504; |
| // undefined |
| o88 = null; |
| // 14326 |
| o85 = {}; |
| // 14327 |
| f81632121_504.returns.push(o85); |
| // 14328 |
| o85.length = 1; |
| // 14329 |
| o88 = {}; |
| // 14330 |
| o85["0"] = o88; |
| // undefined |
| o85 = null; |
| // 14331 |
| o88.getAttribute = f81632121_506; |
| // undefined |
| o88 = null; |
| // 14332 |
| f81632121_506.returns.push("{\"adid\":6011858202131,\"segment\":\"market\"}"); |
| // 14333 |
| o139.getElementsByTagName = f81632121_502; |
| // 14335 |
| o139.querySelectorAll = f81632121_504; |
| // 14336 |
| o85 = {}; |
| // 14337 |
| f81632121_504.returns.push(o85); |
| // 14338 |
| o85.length = 1; |
| // 14339 |
| o88 = {}; |
| // 14340 |
| o85["0"] = o88; |
| // undefined |
| o85 = null; |
| // 14341 |
| o88.getAttribute = f81632121_506; |
| // undefined |
| o88 = null; |
| // 14342 |
| f81632121_506.returns.push("{\"adid\":6007957621675,\"segment\":\"market\"}"); |
| // 14343 |
| o188.getElementsByTagName = f81632121_502; |
| // 14345 |
| o188.querySelectorAll = f81632121_504; |
| // 14346 |
| o85 = {}; |
| // 14347 |
| f81632121_504.returns.push(o85); |
| // 14348 |
| o85.length = 1; |
| // 14349 |
| o88 = {}; |
| // 14350 |
| o85["0"] = o88; |
| // undefined |
| o85 = null; |
| // 14351 |
| o88.getAttribute = f81632121_506; |
| // undefined |
| o88 = null; |
| // 14352 |
| f81632121_506.returns.push("{\"adid\":6007651357550,\"segment\":\"market\"}"); |
| // 14353 |
| o189.getElementsByTagName = f81632121_502; |
| // 14355 |
| o189.querySelectorAll = f81632121_504; |
| // 14356 |
| o85 = {}; |
| // 14357 |
| f81632121_504.returns.push(o85); |
| // 14358 |
| o85.length = 1; |
| // 14359 |
| o88 = {}; |
| // 14360 |
| o85["0"] = o88; |
| // undefined |
| o85 = null; |
| // 14361 |
| o88.getAttribute = f81632121_506; |
| // undefined |
| o88 = null; |
| // 14362 |
| f81632121_506.returns.push("{\"adid\":6010680301716,\"segment\":\"market\"}"); |
| // 14363 |
| o190.getElementsByTagName = f81632121_502; |
| // 14365 |
| o190.querySelectorAll = f81632121_504; |
| // 14366 |
| o85 = {}; |
| // 14367 |
| f81632121_504.returns.push(o85); |
| // 14368 |
| o85.length = 1; |
| // 14369 |
| o88 = {}; |
| // 14370 |
| o85["0"] = o88; |
| // undefined |
| o85 = null; |
| // 14371 |
| o88.getAttribute = f81632121_506; |
| // undefined |
| o88 = null; |
| // 14372 |
| f81632121_506.returns.push("{\"adid\":6007882470930,\"segment\":\"market\"}"); |
| // 14373 |
| o85 = {}; |
| // 14374 |
| o139.parentNode = o85; |
| // 14376 |
| o85.removeChild = f81632121_521; |
| // 14377 |
| f81632121_521.returns.push(o139); |
| // undefined |
| o139 = null; |
| // 14378 |
| o188.parentNode = o85; |
| // 14381 |
| f81632121_521.returns.push(o188); |
| // undefined |
| o188 = null; |
| // 14382 |
| o189.parentNode = o85; |
| // 14385 |
| f81632121_521.returns.push(o189); |
| // undefined |
| o189 = null; |
| // 14386 |
| o190.parentNode = o85; |
| // undefined |
| o85 = null; |
| // 14389 |
| f81632121_521.returns.push(o190); |
| // undefined |
| o190 = null; |
| // 14390 |
| o85 = {}; |
| // 14391 |
| o79.classList = o85; |
| // 14393 |
| o85.add = f81632121_602; |
| // undefined |
| o85 = null; |
| // 14394 |
| f81632121_602.returns.push(undefined); |
| // 14397 |
| o46.remove = f81632121_1114; |
| // undefined |
| o46 = null; |
| // 14398 |
| f81632121_1114.returns.push(undefined); |
| // 14399 |
| o47.setAttribute = f81632121_575; |
| // 14400 |
| f81632121_575.returns.push(undefined); |
| // 14401 |
| o46 = {}; |
| // 14402 |
| o48.classList = o46; |
| // 14404 |
| o46.remove = f81632121_1114; |
| // undefined |
| o46 = null; |
| // 14405 |
| f81632121_1114.returns.push(undefined); |
| // 14406 |
| o48.setAttribute = f81632121_575; |
| // 14407 |
| f81632121_575.returns.push(undefined); |
| // 14408 |
| o46 = {}; |
| // 14409 |
| o49.classList = o46; |
| // 14411 |
| o46.remove = f81632121_1114; |
| // undefined |
| o46 = null; |
| // 14412 |
| f81632121_1114.returns.push(undefined); |
| // 14413 |
| o49.setAttribute = f81632121_575; |
| // 14414 |
| f81632121_575.returns.push(undefined); |
| // 14415 |
| o46 = {}; |
| // 14416 |
| o50.classList = o46; |
| // 14418 |
| o46.add = f81632121_602; |
| // undefined |
| o46 = null; |
| // 14419 |
| f81632121_602.returns.push(undefined); |
| // 14420 |
| o50.setAttribute = f81632121_575; |
| // 14421 |
| f81632121_575.returns.push(undefined); |
| // 14422 |
| o46 = {}; |
| // 14423 |
| o51.classList = o46; |
| // 14425 |
| o46.add = f81632121_602; |
| // undefined |
| o46 = null; |
| // 14426 |
| f81632121_602.returns.push(undefined); |
| // 14427 |
| o51.setAttribute = f81632121_575; |
| // 14428 |
| f81632121_575.returns.push(undefined); |
| // 14432 |
| f81632121_1114.returns.push(undefined); |
| // 14434 |
| f81632121_575.returns.push(undefined); |
| // 14438 |
| o46 = {}; |
| // 14439 |
| f81632121_504.returns.push(o46); |
| // 14440 |
| o46.length = 1; |
| // 14441 |
| o46["0"] = o58; |
| // undefined |
| o46 = null; |
| // 14443 |
| f81632121_506.returns.push("{\"adid\":6007651357550,\"segment\":\"market\"}"); |
| // 14445 |
| o46 = {}; |
| // 14446 |
| f81632121_476.returns.push(o46); |
| // 14447 |
| // 14448 |
| o46.setAttribute = f81632121_575; |
| // 14450 |
| f81632121_575.returns.push(undefined); |
| // 14453 |
| f81632121_575.returns.push(undefined); |
| // 14456 |
| f81632121_575.returns.push(undefined); |
| // 14459 |
| f81632121_575.returns.push(undefined); |
| // 14462 |
| f81632121_575.returns.push(undefined); |
| // 14464 |
| f81632121_575.returns.push(undefined); |
| // 14465 |
| o46.__html = void 0; |
| // undefined |
| o46 = null; |
| // 14467 |
| o46 = {}; |
| // 14468 |
| f81632121_474.returns.push(o46); |
| // 14470 |
| o93.appendChild = f81632121_478; |
| // 14471 |
| f81632121_478.returns.push(o46); |
| // undefined |
| o46 = null; |
| // 14475 |
| o46 = {}; |
| // 14476 |
| f81632121_504.returns.push(o46); |
| // 14477 |
| o46.length = 1; |
| // 14478 |
| o46["0"] = o57; |
| // undefined |
| o46 = null; |
| // 14480 |
| f81632121_506.returns.push("{\"adid\":6007957621675,\"segment\":\"market\"}"); |
| // 14482 |
| o46 = {}; |
| // 14483 |
| f81632121_476.returns.push(o46); |
| // 14484 |
| // 14485 |
| o46.setAttribute = f81632121_575; |
| // 14487 |
| f81632121_575.returns.push(undefined); |
| // 14490 |
| f81632121_575.returns.push(undefined); |
| // 14493 |
| f81632121_575.returns.push(undefined); |
| // 14496 |
| f81632121_575.returns.push(undefined); |
| // 14499 |
| f81632121_575.returns.push(undefined); |
| // 14501 |
| f81632121_575.returns.push(undefined); |
| // 14502 |
| o46.__html = void 0; |
| // undefined |
| o46 = null; |
| // 14504 |
| o46 = {}; |
| // 14505 |
| f81632121_474.returns.push(o46); |
| // 14508 |
| f81632121_478.returns.push(o46); |
| // undefined |
| o46 = null; |
| // 14512 |
| o46 = {}; |
| // 14513 |
| f81632121_504.returns.push(o46); |
| // 14514 |
| o46.length = 1; |
| // 14515 |
| o46["0"] = o56; |
| // undefined |
| o46 = null; |
| // 14517 |
| f81632121_506.returns.push("{\"adid\":6011858202131,\"segment\":\"market\"}"); |
| // 14519 |
| o46 = {}; |
| // 14520 |
| f81632121_476.returns.push(o46); |
| // 14521 |
| // 14522 |
| o46.setAttribute = f81632121_575; |
| // 14524 |
| f81632121_575.returns.push(undefined); |
| // 14527 |
| f81632121_575.returns.push(undefined); |
| // 14530 |
| f81632121_575.returns.push(undefined); |
| // 14533 |
| f81632121_575.returns.push(undefined); |
| // 14536 |
| f81632121_575.returns.push(undefined); |
| // 14538 |
| f81632121_575.returns.push(undefined); |
| // 14539 |
| o46.__html = void 0; |
| // undefined |
| o46 = null; |
| // 14541 |
| o46 = {}; |
| // 14542 |
| f81632121_474.returns.push(o46); |
| // 14545 |
| f81632121_478.returns.push(o46); |
| // undefined |
| o46 = null; |
| // 14549 |
| o46 = {}; |
| // 14550 |
| f81632121_504.returns.push(o46); |
| // 14551 |
| o46.length = 1; |
| // 14552 |
| o46["0"] = o56; |
| // undefined |
| o46 = null; |
| // 14554 |
| f81632121_506.returns.push("{\"adid\":6011858202131,\"segment\":\"market\"}"); |
| // 14558 |
| o46 = {}; |
| // 14559 |
| f81632121_504.returns.push(o46); |
| // 14560 |
| o46.length = 1; |
| // 14561 |
| o46["0"] = o57; |
| // undefined |
| o46 = null; |
| // 14563 |
| f81632121_506.returns.push("{\"adid\":6007957621675,\"segment\":\"market\"}"); |
| // 14567 |
| o46 = {}; |
| // 14568 |
| f81632121_504.returns.push(o46); |
| // 14569 |
| o46.length = 1; |
| // 14570 |
| o46["0"] = o58; |
| // undefined |
| o46 = null; |
| // 14572 |
| f81632121_506.returns.push("{\"adid\":6007651357550,\"segment\":\"market\"}"); |
| // 14576 |
| o46 = {}; |
| // 14577 |
| f81632121_504.returns.push(o46); |
| // 14578 |
| o46.length = 1; |
| // 14579 |
| o85 = {}; |
| // 14580 |
| o46["0"] = o85; |
| // undefined |
| o46 = null; |
| // 14581 |
| o85.complete = true; |
| // 14582 |
| f81632121_12.returns.push(51); |
| // 14586 |
| o46 = {}; |
| // 14587 |
| f81632121_504.returns.push(o46); |
| // 14588 |
| o46.length = 1; |
| // 14589 |
| o88 = {}; |
| // 14590 |
| o46["0"] = o88; |
| // undefined |
| o46 = null; |
| // 14591 |
| o88.complete = true; |
| // undefined |
| o88 = null; |
| // 14592 |
| f81632121_12.returns.push(52); |
| // 14596 |
| o46 = {}; |
| // 14597 |
| f81632121_504.returns.push(o46); |
| // 14598 |
| o46.length = 1; |
| // 14599 |
| o88 = {}; |
| // 14600 |
| o46["0"] = o88; |
| // undefined |
| o46 = null; |
| // 14601 |
| o88.complete = true; |
| // undefined |
| o88 = null; |
| // 14602 |
| f81632121_12.returns.push(53); |
| // 14606 |
| o46 = {}; |
| // 14607 |
| f81632121_504.returns.push(o46); |
| // 14608 |
| o46.length = 1; |
| // 14609 |
| o88 = {}; |
| // 14610 |
| o46["0"] = o88; |
| // undefined |
| o46 = null; |
| // 14611 |
| o88.complete = true; |
| // undefined |
| o88 = null; |
| // 14612 |
| f81632121_12.returns.push(54); |
| // 14616 |
| o46 = {}; |
| // 14617 |
| f81632121_504.returns.push(o46); |
| // 14618 |
| o46.length = 1; |
| // 14619 |
| o88 = {}; |
| // 14620 |
| o46["0"] = o88; |
| // undefined |
| o46 = null; |
| // 14621 |
| o88.complete = true; |
| // undefined |
| o88 = null; |
| // 14622 |
| f81632121_12.returns.push(55); |
| // 14623 |
| o79.parentNode = null; |
| // undefined |
| o79 = null; |
| // 14627 |
| f81632121_1114.returns.push(undefined); |
| // 14630 |
| o46 = {}; |
| // 14631 |
| f81632121_508.returns.push(o46); |
| // 14632 |
| o46.getElementsByTagName = f81632121_502; |
| // 14634 |
| o46.querySelectorAll = f81632121_504; |
| // 14635 |
| o79 = {}; |
| // 14636 |
| f81632121_504.returns.push(o79); |
| // 14637 |
| o79.length = 0; |
| // undefined |
| o79 = null; |
| // 14641 |
| o79 = {}; |
| // 14642 |
| f81632121_504.returns.push(o79); |
| // 14643 |
| o79.length = 1; |
| // 14644 |
| o88 = {}; |
| // 14645 |
| o79["0"] = o88; |
| // undefined |
| o79 = null; |
| // undefined |
| o88 = null; |
| // 14646 |
| o79 = {}; |
| // 14647 |
| o46.classList = o79; |
| // 14649 |
| o79.contains = f81632121_513; |
| // 14650 |
| f81632121_513.returns.push(false); |
| // 14652 |
| f81632121_508.returns.push(o137); |
| // 14653 |
| f81632121_463.returns.push(4); |
| // 14656 |
| o88 = {}; |
| // 14657 |
| f81632121_508.returns.push(o88); |
| // 14658 |
| o88.getElementsByTagName = f81632121_502; |
| // 14660 |
| o88.querySelectorAll = f81632121_504; |
| // 14661 |
| o139 = {}; |
| // 14662 |
| f81632121_504.returns.push(o139); |
| // 14663 |
| o139.length = 1; |
| // 14664 |
| o188 = {}; |
| // 14665 |
| o139["0"] = o188; |
| // undefined |
| o139 = null; |
| // 14669 |
| o139 = {}; |
| // 14670 |
| f81632121_504.returns.push(o139); |
| // 14671 |
| o139.length = 1; |
| // 14672 |
| o189 = {}; |
| // 14673 |
| o139["0"] = o189; |
| // undefined |
| o139 = null; |
| // undefined |
| o189 = null; |
| // 14677 |
| o139 = {}; |
| // 14678 |
| f81632121_504.returns.push(o139); |
| // 14679 |
| o139.length = 1; |
| // 14680 |
| o189 = {}; |
| // 14681 |
| o139["0"] = o189; |
| // undefined |
| o139 = null; |
| // undefined |
| o189 = null; |
| // 14682 |
| o188.getElementsByTagName = f81632121_502; |
| // 14684 |
| o188.querySelectorAll = f81632121_504; |
| // 14685 |
| o139 = {}; |
| // 14686 |
| f81632121_504.returns.push(o139); |
| // 14687 |
| o139.length = 1; |
| // 14688 |
| o189 = {}; |
| // 14689 |
| o139["0"] = o189; |
| // undefined |
| o139 = null; |
| // undefined |
| o189 = null; |
| // 14690 |
| o139 = {}; |
| // 14691 |
| o188.classList = o139; |
| // 14693 |
| o139.contains = f81632121_513; |
| // undefined |
| o139 = null; |
| // 14694 |
| f81632121_513.returns.push(false); |
| // 14695 |
| o139 = {}; |
| // 14696 |
| o188.parentNode = o139; |
| // undefined |
| o188 = null; |
| // 14697 |
| o188 = {}; |
| // 14698 |
| o139.classList = o188; |
| // 14700 |
| o188.contains = f81632121_513; |
| // undefined |
| o188 = null; |
| // 14701 |
| f81632121_513.returns.push(false); |
| // 14702 |
| o139.parentNode = o88; |
| // undefined |
| o139 = null; |
| // 14703 |
| o139 = {}; |
| // 14704 |
| o88.classList = o139; |
| // 14706 |
| o139.contains = f81632121_513; |
| // undefined |
| o139 = null; |
| // 14707 |
| f81632121_513.returns.push(true); |
| // 14708 |
| o88.__FB_TOKEN = void 0; |
| // 14709 |
| // 14710 |
| o88.getAttribute = f81632121_506; |
| // 14711 |
| o88.hasAttribute = f81632121_507; |
| // 14713 |
| f81632121_507.returns.push(false); |
| // 14717 |
| f81632121_513.returns.push(true); |
| // 14718 |
| o139 = {}; |
| // 14719 |
| o88.childNodes = o139; |
| // undefined |
| o88 = null; |
| // 14720 |
| o139.nodeType = void 0; |
| // 14721 |
| o139.classList = void 0; |
| // 14722 |
| o139.className = void 0; |
| // 14723 |
| o139.childNodes = void 0; |
| // undefined |
| o139 = null; |
| // 14728 |
| f81632121_467.returns.push(1374851241263); |
| // 14732 |
| o88 = {}; |
| // 14733 |
| o139 = {}; |
| // 14735 |
| o88.nodeType = void 0; |
| // 14736 |
| o88.length = 1; |
| // 14737 |
| o88["0"] = "R940f"; |
| // 14740 |
| f81632121_467.returns.push(1374851241281); |
| // 14743 |
| f81632121_467.returns.push(1374851241281); |
| // 14745 |
| f81632121_467.returns.push(1374851241282); |
| // 14748 |
| f81632121_467.returns.push(1374851241282); |
| // 14751 |
| f81632121_467.returns.push(1374851241283); |
| // 14753 |
| f81632121_467.returns.push(1374851241283); |
| // 14756 |
| f81632121_467.returns.push(1374851241284); |
| // 14759 |
| f81632121_467.returns.push(1374851241284); |
| // 14762 |
| f81632121_508.returns.push(o95); |
| // 14763 |
| o188 = {}; |
| // 14764 |
| o95.childNodes = o188; |
| // 14765 |
| o189 = {}; |
| // 14766 |
| o188["0"] = o189; |
| // 14767 |
| o188.length = 8; |
| // 14769 |
| o189.getAttribute = f81632121_506; |
| // 14770 |
| f81632121_506.returns.push("recent"); |
| // 14773 |
| o189.getElementsByTagName = f81632121_502; |
| // 14775 |
| o189.querySelectorAll = f81632121_504; |
| // undefined |
| o189 = null; |
| // 14776 |
| o189 = {}; |
| // 14777 |
| f81632121_504.returns.push(o189); |
| // 14778 |
| o189.length = 0; |
| // undefined |
| o189 = null; |
| // 14781 |
| f81632121_506.returns.push(null); |
| // 14783 |
| o189 = {}; |
| // 14784 |
| o188["1"] = o189; |
| // 14785 |
| o189.getAttribute = f81632121_506; |
| // 14786 |
| f81632121_506.returns.push("year_2013"); |
| // 14789 |
| o189.getElementsByTagName = f81632121_502; |
| // 14791 |
| o189.querySelectorAll = f81632121_504; |
| // undefined |
| o189 = null; |
| // 14792 |
| o189 = {}; |
| // 14793 |
| f81632121_504.returns.push(o189); |
| // 14794 |
| o189.length = 1; |
| // 14795 |
| o190 = {}; |
| // 14796 |
| o189["0"] = o190; |
| // undefined |
| o189 = null; |
| // 14797 |
| o189 = {}; |
| // 14798 |
| o190.childNodes = o189; |
| // undefined |
| o190 = null; |
| // 14799 |
| o189.length = 1; |
| // 14800 |
| o190 = {}; |
| // 14801 |
| o189["0"] = o190; |
| // undefined |
| o189 = null; |
| // 14802 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 14803 |
| f81632121_506.returns.push("month_2013_1"); |
| // 14808 |
| f81632121_506.returns.push("2010s"); |
| // 14811 |
| o189 = {}; |
| // 14812 |
| o188["2"] = o189; |
| // 14813 |
| o189.getAttribute = f81632121_506; |
| // 14814 |
| f81632121_506.returns.push("year_2012"); |
| // 14817 |
| o189.getElementsByTagName = f81632121_502; |
| // 14819 |
| o189.querySelectorAll = f81632121_504; |
| // undefined |
| o189 = null; |
| // 14820 |
| o189 = {}; |
| // 14821 |
| f81632121_504.returns.push(o189); |
| // 14822 |
| o189.length = 1; |
| // 14823 |
| o190 = {}; |
| // 14824 |
| o189["0"] = o190; |
| // undefined |
| o189 = null; |
| // 14825 |
| o189 = {}; |
| // 14826 |
| o190.childNodes = o189; |
| // undefined |
| o190 = null; |
| // 14827 |
| o189.length = 12; |
| // 14828 |
| o190 = {}; |
| // 14829 |
| o189["0"] = o190; |
| // 14830 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 14831 |
| f81632121_506.returns.push("month_2012_12"); |
| // 14834 |
| o190 = {}; |
| // 14835 |
| o189["1"] = o190; |
| // 14836 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 14837 |
| f81632121_506.returns.push("month_2012_11"); |
| // 14840 |
| o190 = {}; |
| // 14841 |
| o189["2"] = o190; |
| // 14842 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 14843 |
| f81632121_506.returns.push("month_2012_10"); |
| // 14846 |
| o190 = {}; |
| // 14847 |
| o189["3"] = o190; |
| // 14848 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 14849 |
| f81632121_506.returns.push("month_2012_9"); |
| // 14852 |
| o190 = {}; |
| // 14853 |
| o189["4"] = o190; |
| // 14854 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 14855 |
| f81632121_506.returns.push("month_2012_8"); |
| // 14858 |
| o190 = {}; |
| // 14859 |
| o189["5"] = o190; |
| // 14860 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 14861 |
| f81632121_506.returns.push("month_2012_7"); |
| // 14864 |
| o190 = {}; |
| // 14865 |
| o189["6"] = o190; |
| // 14866 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 14867 |
| f81632121_506.returns.push("month_2012_6"); |
| // 14870 |
| o190 = {}; |
| // 14871 |
| o189["7"] = o190; |
| // 14872 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 14873 |
| f81632121_506.returns.push("month_2012_5"); |
| // 14876 |
| o190 = {}; |
| // 14877 |
| o189["8"] = o190; |
| // 14878 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 14879 |
| f81632121_506.returns.push("month_2012_4"); |
| // 14882 |
| o190 = {}; |
| // 14883 |
| o189["9"] = o190; |
| // 14884 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 14885 |
| f81632121_506.returns.push("month_2012_3"); |
| // 14888 |
| o190 = {}; |
| // 14889 |
| o189["10"] = o190; |
| // 14890 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 14891 |
| f81632121_506.returns.push("month_2012_2"); |
| // 14894 |
| o190 = {}; |
| // 14895 |
| o189["11"] = o190; |
| // undefined |
| o189 = null; |
| // 14896 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 14897 |
| f81632121_506.returns.push("month_2012_1"); |
| // 14902 |
| f81632121_506.returns.push("2010s"); |
| // 14905 |
| o189 = {}; |
| // 14906 |
| o188["3"] = o189; |
| // 14907 |
| o189.getAttribute = f81632121_506; |
| // 14908 |
| f81632121_506.returns.push("year_2011"); |
| // 14911 |
| o189.getElementsByTagName = f81632121_502; |
| // 14913 |
| o189.querySelectorAll = f81632121_504; |
| // undefined |
| o189 = null; |
| // 14914 |
| o189 = {}; |
| // 14915 |
| f81632121_504.returns.push(o189); |
| // 14916 |
| o189.length = 1; |
| // 14917 |
| o190 = {}; |
| // 14918 |
| o189["0"] = o190; |
| // undefined |
| o189 = null; |
| // 14919 |
| o189 = {}; |
| // 14920 |
| o190.childNodes = o189; |
| // undefined |
| o190 = null; |
| // 14921 |
| o189.length = 12; |
| // 14922 |
| o190 = {}; |
| // 14923 |
| o189["0"] = o190; |
| // 14924 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 14925 |
| f81632121_506.returns.push("month_2011_12"); |
| // 14928 |
| o190 = {}; |
| // 14929 |
| o189["1"] = o190; |
| // 14930 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 14931 |
| f81632121_506.returns.push("month_2011_11"); |
| // 14934 |
| o190 = {}; |
| // 14935 |
| o189["2"] = o190; |
| // 14936 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 14937 |
| f81632121_506.returns.push("month_2011_10"); |
| // 14940 |
| o190 = {}; |
| // 14941 |
| o189["3"] = o190; |
| // 14942 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 14943 |
| f81632121_506.returns.push("month_2011_9"); |
| // 14946 |
| o190 = {}; |
| // 14947 |
| o189["4"] = o190; |
| // 14948 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 14949 |
| f81632121_506.returns.push("month_2011_8"); |
| // 14952 |
| o190 = {}; |
| // 14953 |
| o189["5"] = o190; |
| // 14954 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 14955 |
| f81632121_506.returns.push("month_2011_7"); |
| // 14958 |
| o190 = {}; |
| // 14959 |
| o189["6"] = o190; |
| // 14960 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 14961 |
| f81632121_506.returns.push("month_2011_6"); |
| // 14964 |
| o190 = {}; |
| // 14965 |
| o189["7"] = o190; |
| // 14966 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 14967 |
| f81632121_506.returns.push("month_2011_5"); |
| // 14970 |
| o190 = {}; |
| // 14971 |
| o189["8"] = o190; |
| // 14972 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 14973 |
| f81632121_506.returns.push("month_2011_4"); |
| // 14976 |
| o190 = {}; |
| // 14977 |
| o189["9"] = o190; |
| // 14978 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 14979 |
| f81632121_506.returns.push("month_2011_3"); |
| // 14982 |
| o190 = {}; |
| // 14983 |
| o189["10"] = o190; |
| // 14984 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 14985 |
| f81632121_506.returns.push("month_2011_2"); |
| // 14988 |
| o190 = {}; |
| // 14989 |
| o189["11"] = o190; |
| // undefined |
| o189 = null; |
| // 14990 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 14991 |
| f81632121_506.returns.push("month_2011_1"); |
| // 14996 |
| f81632121_506.returns.push("2010s"); |
| // 14999 |
| o189 = {}; |
| // 15000 |
| o188["4"] = o189; |
| // 15001 |
| o189.getAttribute = f81632121_506; |
| // 15002 |
| f81632121_506.returns.push("year_2010"); |
| // 15005 |
| o189.getElementsByTagName = f81632121_502; |
| // 15007 |
| o189.querySelectorAll = f81632121_504; |
| // undefined |
| o189 = null; |
| // 15008 |
| o189 = {}; |
| // 15009 |
| f81632121_504.returns.push(o189); |
| // 15010 |
| o189.length = 1; |
| // 15011 |
| o190 = {}; |
| // 15012 |
| o189["0"] = o190; |
| // undefined |
| o189 = null; |
| // 15013 |
| o189 = {}; |
| // 15014 |
| o190.childNodes = o189; |
| // undefined |
| o190 = null; |
| // 15015 |
| o189.length = 12; |
| // 15016 |
| o190 = {}; |
| // 15017 |
| o189["0"] = o190; |
| // 15018 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15019 |
| f81632121_506.returns.push("month_2010_12"); |
| // 15022 |
| o190 = {}; |
| // 15023 |
| o189["1"] = o190; |
| // 15024 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15025 |
| f81632121_506.returns.push("month_2010_11"); |
| // 15028 |
| o190 = {}; |
| // 15029 |
| o189["2"] = o190; |
| // 15030 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15031 |
| f81632121_506.returns.push("month_2010_10"); |
| // 15034 |
| o190 = {}; |
| // 15035 |
| o189["3"] = o190; |
| // 15036 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15037 |
| f81632121_506.returns.push("month_2010_9"); |
| // 15040 |
| o190 = {}; |
| // 15041 |
| o189["4"] = o190; |
| // 15042 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15043 |
| f81632121_506.returns.push("month_2010_8"); |
| // 15046 |
| o190 = {}; |
| // 15047 |
| o189["5"] = o190; |
| // 15048 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15049 |
| f81632121_506.returns.push("month_2010_7"); |
| // 15052 |
| o190 = {}; |
| // 15053 |
| o189["6"] = o190; |
| // 15054 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15055 |
| f81632121_506.returns.push("month_2010_6"); |
| // 15058 |
| o190 = {}; |
| // 15059 |
| o189["7"] = o190; |
| // 15060 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15061 |
| f81632121_506.returns.push("month_2010_5"); |
| // 15064 |
| o190 = {}; |
| // 15065 |
| o189["8"] = o190; |
| // 15066 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15067 |
| f81632121_506.returns.push("month_2010_4"); |
| // 15070 |
| o190 = {}; |
| // 15071 |
| o189["9"] = o190; |
| // 15072 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15073 |
| f81632121_506.returns.push("month_2010_3"); |
| // 15076 |
| o190 = {}; |
| // 15077 |
| o189["10"] = o190; |
| // 15078 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15079 |
| f81632121_506.returns.push("month_2010_2"); |
| // 15082 |
| o190 = {}; |
| // 15083 |
| o189["11"] = o190; |
| // undefined |
| o189 = null; |
| // 15084 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15085 |
| f81632121_506.returns.push("month_2010_1"); |
| // 15090 |
| f81632121_506.returns.push("2010s"); |
| // 15093 |
| o189 = {}; |
| // 15094 |
| o188["5"] = o189; |
| // 15095 |
| o189.getAttribute = f81632121_506; |
| // 15096 |
| f81632121_506.returns.push("year_2009"); |
| // 15099 |
| o189.getElementsByTagName = f81632121_502; |
| // 15101 |
| o189.querySelectorAll = f81632121_504; |
| // undefined |
| o189 = null; |
| // 15102 |
| o189 = {}; |
| // 15103 |
| f81632121_504.returns.push(o189); |
| // 15104 |
| o189.length = 1; |
| // 15105 |
| o190 = {}; |
| // 15106 |
| o189["0"] = o190; |
| // undefined |
| o189 = null; |
| // 15107 |
| o189 = {}; |
| // 15108 |
| o190.childNodes = o189; |
| // undefined |
| o190 = null; |
| // 15109 |
| o189.length = 12; |
| // 15110 |
| o190 = {}; |
| // 15111 |
| o189["0"] = o190; |
| // 15112 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15113 |
| f81632121_506.returns.push("month_2009_12"); |
| // 15116 |
| o190 = {}; |
| // 15117 |
| o189["1"] = o190; |
| // 15118 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15119 |
| f81632121_506.returns.push("month_2009_11"); |
| // 15122 |
| o190 = {}; |
| // 15123 |
| o189["2"] = o190; |
| // 15124 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15125 |
| f81632121_506.returns.push("month_2009_10"); |
| // 15128 |
| o190 = {}; |
| // 15129 |
| o189["3"] = o190; |
| // 15130 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15131 |
| f81632121_506.returns.push("month_2009_9"); |
| // 15134 |
| o190 = {}; |
| // 15135 |
| o189["4"] = o190; |
| // 15136 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15137 |
| f81632121_506.returns.push("month_2009_8"); |
| // 15140 |
| o190 = {}; |
| // 15141 |
| o189["5"] = o190; |
| // 15142 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15143 |
| f81632121_506.returns.push("month_2009_7"); |
| // 15146 |
| o190 = {}; |
| // 15147 |
| o189["6"] = o190; |
| // 15148 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15149 |
| f81632121_506.returns.push("month_2009_6"); |
| // 15152 |
| o190 = {}; |
| // 15153 |
| o189["7"] = o190; |
| // 15154 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15155 |
| f81632121_506.returns.push("month_2009_5"); |
| // 15158 |
| o190 = {}; |
| // 15159 |
| o189["8"] = o190; |
| // 15160 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15161 |
| f81632121_506.returns.push("month_2009_4"); |
| // 15164 |
| o190 = {}; |
| // 15165 |
| o189["9"] = o190; |
| // 15166 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15167 |
| f81632121_506.returns.push("month_2009_3"); |
| // 15170 |
| o190 = {}; |
| // 15171 |
| o189["10"] = o190; |
| // 15172 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15173 |
| f81632121_506.returns.push("month_2009_2"); |
| // 15176 |
| o190 = {}; |
| // 15177 |
| o189["11"] = o190; |
| // undefined |
| o189 = null; |
| // 15178 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15179 |
| f81632121_506.returns.push("month_2009_1"); |
| // 15184 |
| f81632121_506.returns.push("2000s"); |
| // 15187 |
| o189 = {}; |
| // 15188 |
| o188["6"] = o189; |
| // 15189 |
| o189.getAttribute = f81632121_506; |
| // 15190 |
| f81632121_506.returns.push("year_2008"); |
| // 15193 |
| o189.getElementsByTagName = f81632121_502; |
| // 15195 |
| o189.querySelectorAll = f81632121_504; |
| // undefined |
| o189 = null; |
| // 15196 |
| o189 = {}; |
| // 15197 |
| f81632121_504.returns.push(o189); |
| // 15198 |
| o189.length = 1; |
| // 15199 |
| o190 = {}; |
| // 15200 |
| o189["0"] = o190; |
| // undefined |
| o189 = null; |
| // 15201 |
| o189 = {}; |
| // 15202 |
| o190.childNodes = o189; |
| // undefined |
| o190 = null; |
| // 15203 |
| o189.length = 12; |
| // 15204 |
| o190 = {}; |
| // 15205 |
| o189["0"] = o190; |
| // 15206 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15207 |
| f81632121_506.returns.push("month_2008_12"); |
| // 15210 |
| o190 = {}; |
| // 15211 |
| o189["1"] = o190; |
| // 15212 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15213 |
| f81632121_506.returns.push("month_2008_11"); |
| // 15216 |
| o190 = {}; |
| // 15217 |
| o189["2"] = o190; |
| // 15218 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15219 |
| f81632121_506.returns.push("month_2008_10"); |
| // 15222 |
| o190 = {}; |
| // 15223 |
| o189["3"] = o190; |
| // 15224 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15225 |
| f81632121_506.returns.push("month_2008_9"); |
| // 15228 |
| o190 = {}; |
| // 15229 |
| o189["4"] = o190; |
| // 15230 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15231 |
| f81632121_506.returns.push("month_2008_8"); |
| // 15234 |
| o190 = {}; |
| // 15235 |
| o189["5"] = o190; |
| // 15236 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15237 |
| f81632121_506.returns.push("month_2008_7"); |
| // 15240 |
| o190 = {}; |
| // 15241 |
| o189["6"] = o190; |
| // 15242 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15243 |
| f81632121_506.returns.push("month_2008_6"); |
| // 15246 |
| o190 = {}; |
| // 15247 |
| o189["7"] = o190; |
| // 15248 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15249 |
| f81632121_506.returns.push("month_2008_5"); |
| // 15252 |
| o190 = {}; |
| // 15253 |
| o189["8"] = o190; |
| // 15254 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15255 |
| f81632121_506.returns.push("month_2008_4"); |
| // 15258 |
| o190 = {}; |
| // 15259 |
| o189["9"] = o190; |
| // 15260 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15261 |
| f81632121_506.returns.push("month_2008_3"); |
| // 15264 |
| o190 = {}; |
| // 15265 |
| o189["10"] = o190; |
| // 15266 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15267 |
| f81632121_506.returns.push("month_2008_2"); |
| // 15270 |
| o190 = {}; |
| // 15271 |
| o189["11"] = o190; |
| // undefined |
| o189 = null; |
| // 15272 |
| o190.getAttribute = f81632121_506; |
| // undefined |
| o190 = null; |
| // 15273 |
| f81632121_506.returns.push("month_2008_1"); |
| // 15278 |
| f81632121_506.returns.push("2000s"); |
| // 15281 |
| o189 = {}; |
| // 15282 |
| o188["7"] = o189; |
| // undefined |
| o188 = null; |
| // 15283 |
| o189.getAttribute = f81632121_506; |
| // 15284 |
| f81632121_506.returns.push("way_back"); |
| // 15287 |
| o189.getElementsByTagName = f81632121_502; |
| // 15289 |
| o189.querySelectorAll = f81632121_504; |
| // undefined |
| o189 = null; |
| // 15290 |
| o188 = {}; |
| // 15291 |
| f81632121_504.returns.push(o188); |
| // 15292 |
| o188.length = 0; |
| // undefined |
| o188 = null; |
| // 15295 |
| f81632121_506.returns.push(null); |
| // 15297 |
| o95.nodeName = "UL"; |
| // 15298 |
| o95.__FB_TOKEN = void 0; |
| // 15299 |
| // 15300 |
| o95.getAttribute = f81632121_506; |
| // 15301 |
| o95.hasAttribute = f81632121_507; |
| // 15303 |
| f81632121_507.returns.push(false); |
| // 15304 |
| o95.JSBNG__addEventListener = f81632121_468; |
| // 15306 |
| f81632121_468.returns.push(undefined); |
| // 15307 |
| o95.JSBNG__onclick = null; |
| // 15312 |
| f81632121_468.returns.push(undefined); |
| // 15313 |
| o95.JSBNG__onkeydown = null; |
| // 15315 |
| o95.getElementsByTagName = f81632121_502; |
| // 15317 |
| o95.querySelectorAll = f81632121_504; |
| // 15318 |
| o188 = {}; |
| // 15319 |
| f81632121_504.returns.push(o188); |
| // 15320 |
| o188.length = 69; |
| // 15321 |
| o189 = {}; |
| // 15322 |
| o188["0"] = o189; |
| // undefined |
| o189 = null; |
| // 15323 |
| o189 = {}; |
| // 15324 |
| o188["1"] = o189; |
| // undefined |
| o189 = null; |
| // 15325 |
| o189 = {}; |
| // 15326 |
| o188["2"] = o189; |
| // undefined |
| o189 = null; |
| // 15327 |
| o189 = {}; |
| // 15328 |
| o188["3"] = o189; |
| // undefined |
| o189 = null; |
| // 15329 |
| o189 = {}; |
| // 15330 |
| o188["4"] = o189; |
| // undefined |
| o189 = null; |
| // 15331 |
| o189 = {}; |
| // 15332 |
| o188["5"] = o189; |
| // undefined |
| o189 = null; |
| // 15333 |
| o189 = {}; |
| // 15334 |
| o188["6"] = o189; |
| // undefined |
| o189 = null; |
| // 15335 |
| o189 = {}; |
| // 15336 |
| o188["7"] = o189; |
| // undefined |
| o189 = null; |
| // 15337 |
| o189 = {}; |
| // 15338 |
| o188["8"] = o189; |
| // undefined |
| o189 = null; |
| // 15339 |
| o189 = {}; |
| // 15340 |
| o188["9"] = o189; |
| // undefined |
| o189 = null; |
| // 15341 |
| o189 = {}; |
| // 15342 |
| o188["10"] = o189; |
| // undefined |
| o189 = null; |
| // 15343 |
| o189 = {}; |
| // 15344 |
| o188["11"] = o189; |
| // undefined |
| o189 = null; |
| // 15345 |
| o189 = {}; |
| // 15346 |
| o188["12"] = o189; |
| // undefined |
| o189 = null; |
| // 15347 |
| o189 = {}; |
| // 15348 |
| o188["13"] = o189; |
| // undefined |
| o189 = null; |
| // 15349 |
| o189 = {}; |
| // 15350 |
| o188["14"] = o189; |
| // undefined |
| o189 = null; |
| // 15351 |
| o189 = {}; |
| // 15352 |
| o188["15"] = o189; |
| // undefined |
| o189 = null; |
| // 15353 |
| o189 = {}; |
| // 15354 |
| o188["16"] = o189; |
| // undefined |
| o189 = null; |
| // 15355 |
| o189 = {}; |
| // 15356 |
| o188["17"] = o189; |
| // undefined |
| o189 = null; |
| // 15357 |
| o189 = {}; |
| // 15358 |
| o188["18"] = o189; |
| // undefined |
| o189 = null; |
| // 15359 |
| o189 = {}; |
| // 15360 |
| o188["19"] = o189; |
| // undefined |
| o189 = null; |
| // 15361 |
| o189 = {}; |
| // 15362 |
| o188["20"] = o189; |
| // undefined |
| o189 = null; |
| // 15363 |
| o189 = {}; |
| // 15364 |
| o188["21"] = o189; |
| // undefined |
| o189 = null; |
| // 15365 |
| o189 = {}; |
| // 15366 |
| o188["22"] = o189; |
| // undefined |
| o189 = null; |
| // 15367 |
| o189 = {}; |
| // 15368 |
| o188["23"] = o189; |
| // undefined |
| o189 = null; |
| // 15369 |
| o189 = {}; |
| // 15370 |
| o188["24"] = o189; |
| // undefined |
| o189 = null; |
| // 15371 |
| o189 = {}; |
| // 15372 |
| o188["25"] = o189; |
| // undefined |
| o189 = null; |
| // 15373 |
| o189 = {}; |
| // 15374 |
| o188["26"] = o189; |
| // undefined |
| o189 = null; |
| // 15375 |
| o189 = {}; |
| // 15376 |
| o188["27"] = o189; |
| // undefined |
| o189 = null; |
| // 15377 |
| o189 = {}; |
| // 15378 |
| o188["28"] = o189; |
| // undefined |
| o189 = null; |
| // 15379 |
| o189 = {}; |
| // 15380 |
| o188["29"] = o189; |
| // undefined |
| o189 = null; |
| // 15381 |
| o189 = {}; |
| // 15382 |
| o188["30"] = o189; |
| // undefined |
| o189 = null; |
| // 15383 |
| o189 = {}; |
| // 15384 |
| o188["31"] = o189; |
| // undefined |
| o189 = null; |
| // 15385 |
| o189 = {}; |
| // 15386 |
| o188["32"] = o189; |
| // undefined |
| o189 = null; |
| // 15387 |
| o189 = {}; |
| // 15388 |
| o188["33"] = o189; |
| // undefined |
| o189 = null; |
| // 15389 |
| o189 = {}; |
| // 15390 |
| o188["34"] = o189; |
| // undefined |
| o189 = null; |
| // 15391 |
| o189 = {}; |
| // 15392 |
| o188["35"] = o189; |
| // undefined |
| o189 = null; |
| // 15393 |
| o189 = {}; |
| // 15394 |
| o188["36"] = o189; |
| // undefined |
| o189 = null; |
| // 15395 |
| o189 = {}; |
| // 15396 |
| o188["37"] = o189; |
| // undefined |
| o189 = null; |
| // 15397 |
| o189 = {}; |
| // 15398 |
| o188["38"] = o189; |
| // undefined |
| o189 = null; |
| // 15399 |
| o189 = {}; |
| // 15400 |
| o188["39"] = o189; |
| // undefined |
| o189 = null; |
| // 15401 |
| o189 = {}; |
| // 15402 |
| o188["40"] = o189; |
| // undefined |
| o189 = null; |
| // 15403 |
| o189 = {}; |
| // 15404 |
| o188["41"] = o189; |
| // undefined |
| o189 = null; |
| // 15405 |
| o189 = {}; |
| // 15406 |
| o188["42"] = o189; |
| // undefined |
| o189 = null; |
| // 15407 |
| o189 = {}; |
| // 15408 |
| o188["43"] = o189; |
| // undefined |
| o189 = null; |
| // 15409 |
| o189 = {}; |
| // 15410 |
| o188["44"] = o189; |
| // undefined |
| o189 = null; |
| // 15411 |
| o189 = {}; |
| // 15412 |
| o188["45"] = o189; |
| // undefined |
| o189 = null; |
| // 15413 |
| o189 = {}; |
| // 15414 |
| o188["46"] = o189; |
| // undefined |
| o189 = null; |
| // 15415 |
| o189 = {}; |
| // 15416 |
| o188["47"] = o189; |
| // undefined |
| o189 = null; |
| // 15417 |
| o189 = {}; |
| // 15418 |
| o188["48"] = o189; |
| // undefined |
| o189 = null; |
| // 15419 |
| o189 = {}; |
| // 15420 |
| o188["49"] = o189; |
| // undefined |
| o189 = null; |
| // 15421 |
| o189 = {}; |
| // 15422 |
| o188["50"] = o189; |
| // undefined |
| o189 = null; |
| // 15423 |
| o189 = {}; |
| // 15424 |
| o188["51"] = o189; |
| // undefined |
| o189 = null; |
| // 15425 |
| o189 = {}; |
| // 15426 |
| o188["52"] = o189; |
| // undefined |
| o189 = null; |
| // 15427 |
| o189 = {}; |
| // 15428 |
| o188["53"] = o189; |
| // undefined |
| o189 = null; |
| // 15429 |
| o189 = {}; |
| // 15430 |
| o188["54"] = o189; |
| // undefined |
| o189 = null; |
| // 15431 |
| o189 = {}; |
| // 15432 |
| o188["55"] = o189; |
| // undefined |
| o189 = null; |
| // 15433 |
| o189 = {}; |
| // 15434 |
| o188["56"] = o189; |
| // undefined |
| o189 = null; |
| // 15435 |
| o189 = {}; |
| // 15436 |
| o188["57"] = o189; |
| // undefined |
| o189 = null; |
| // 15437 |
| o189 = {}; |
| // 15438 |
| o188["58"] = o189; |
| // undefined |
| o189 = null; |
| // 15439 |
| o189 = {}; |
| // 15440 |
| o188["59"] = o189; |
| // undefined |
| o189 = null; |
| // 15441 |
| o189 = {}; |
| // 15442 |
| o188["60"] = o189; |
| // undefined |
| o189 = null; |
| // 15443 |
| o189 = {}; |
| // 15444 |
| o188["61"] = o189; |
| // undefined |
| o189 = null; |
| // 15445 |
| o189 = {}; |
| // 15446 |
| o188["62"] = o189; |
| // undefined |
| o189 = null; |
| // 15447 |
| o189 = {}; |
| // 15448 |
| o188["63"] = o189; |
| // undefined |
| o189 = null; |
| // 15449 |
| o189 = {}; |
| // 15450 |
| o188["64"] = o189; |
| // undefined |
| o189 = null; |
| // 15451 |
| o189 = {}; |
| // 15452 |
| o188["65"] = o189; |
| // undefined |
| o189 = null; |
| // 15453 |
| o189 = {}; |
| // 15454 |
| o188["66"] = o189; |
| // undefined |
| o189 = null; |
| // 15455 |
| o189 = {}; |
| // 15456 |
| o188["67"] = o189; |
| // undefined |
| o189 = null; |
| // 15457 |
| o189 = {}; |
| // 15458 |
| o188["68"] = o189; |
| // undefined |
| o188 = null; |
| // undefined |
| o189 = null; |
| // 15459 |
| o188 = {}; |
| // 15460 |
| o95.classList = o188; |
| // 15462 |
| o188.remove = f81632121_1114; |
| // undefined |
| o188 = null; |
| // 15463 |
| f81632121_1114.returns.push(undefined); |
| // 15466 |
| o95.offsetHeight = 200; |
| // 15470 |
| f81632121_1114.returns.push(undefined); |
| // 15475 |
| f81632121_513.returns.push(false); |
| // 15477 |
| f81632121_508.returns.push(o86); |
| // 15478 |
| o188 = {}; |
| // 15479 |
| o86.classList = o188; |
| // 15481 |
| o188.contains = f81632121_513; |
| // undefined |
| o188 = null; |
| // 15482 |
| f81632121_513.returns.push(false); |
| // 15483 |
| o95.parentNode = o86; |
| // undefined |
| o95 = null; |
| // undefined |
| o86 = null; |
| // 15485 |
| f81632121_467.returns.push(1374851241334); |
| // 15493 |
| o86 = {}; |
| // 15494 |
| f81632121_476.returns.push(o86); |
| // 15495 |
| // 15496 |
| // 15497 |
| o86.getElementsByTagName = f81632121_502; |
| // 15498 |
| o95 = {}; |
| // 15499 |
| f81632121_502.returns.push(o95); |
| // 15500 |
| o95.length = 0; |
| // undefined |
| o95 = null; |
| // 15502 |
| o95 = {}; |
| // 15503 |
| o86.childNodes = o95; |
| // undefined |
| o86 = null; |
| // 15504 |
| o95.nodeType = void 0; |
| // 15505 |
| o95.__html = void 0; |
| // 15506 |
| o95.mountComponentIntoNode = void 0; |
| // 15507 |
| o95.classList = void 0; |
| // 15509 |
| o95.className = void 0; |
| // 15511 |
| // 15512 |
| o95.__FB_TOKEN = void 0; |
| // 15513 |
| // 15514 |
| o95.getElementsByTagName = void 0; |
| // 15517 |
| // 15521 |
| o86 = {}; |
| // 15522 |
| f81632121_474.returns.push(o86); |
| // 15526 |
| f81632121_478.returns.push(o86); |
| // undefined |
| o86 = null; |
| // 15527 |
| o95.getAttribute = void 0; |
| // 15544 |
| // 15557 |
| // 15565 |
| o86 = {}; |
| // 15566 |
| f81632121_476.returns.push(o86); |
| // 15567 |
| // 15568 |
| o86.__html = void 0; |
| // undefined |
| o86 = null; |
| // 15570 |
| o86 = {}; |
| // 15571 |
| f81632121_474.returns.push(o86); |
| // undefined |
| o86 = null; |
| // 15573 |
| o95.appendChild = void 0; |
| // undefined |
| o95 = null; |
| // 15578 |
| f81632121_467.returns.push(1374851241385); |
| // 15581 |
| o86 = {}; |
| // 15582 |
| f81632121_476.returns.push(o86); |
| // 15583 |
| // 15584 |
| // 15585 |
| o86.getElementsByTagName = f81632121_502; |
| // 15586 |
| o95 = {}; |
| // 15587 |
| f81632121_502.returns.push(o95); |
| // 15588 |
| o95.length = 0; |
| // undefined |
| o95 = null; |
| // 15590 |
| o95 = {}; |
| // 15591 |
| o86.childNodes = o95; |
| // undefined |
| o86 = null; |
| // 15592 |
| o95.nodeType = void 0; |
| // 15593 |
| o95.__html = void 0; |
| // 15594 |
| o95.mountComponentIntoNode = void 0; |
| // 15595 |
| o95.classList = void 0; |
| // 15597 |
| o95.className = void 0; |
| // 15599 |
| // 15600 |
| o95.__FB_TOKEN = void 0; |
| // 15601 |
| // 15602 |
| o95.getElementsByTagName = void 0; |
| // 15605 |
| // 15609 |
| o86 = {}; |
| // 15610 |
| f81632121_474.returns.push(o86); |
| // 15614 |
| f81632121_478.returns.push(o86); |
| // undefined |
| o86 = null; |
| // 15615 |
| o95.getAttribute = void 0; |
| // 15632 |
| // 15645 |
| // 15653 |
| o86 = {}; |
| // 15654 |
| f81632121_476.returns.push(o86); |
| // 15655 |
| // 15656 |
| o86.__html = void 0; |
| // undefined |
| o86 = null; |
| // 15658 |
| o86 = {}; |
| // 15659 |
| f81632121_474.returns.push(o86); |
| // undefined |
| o86 = null; |
| // 15661 |
| o95.appendChild = void 0; |
| // undefined |
| o95 = null; |
| // 15664 |
| o86 = {}; |
| // 15665 |
| o95 = {}; |
| // 15667 |
| o86.nodeType = void 0; |
| // 15668 |
| o86.length = 1; |
| // 15669 |
| o86["0"] = "bmJBG"; |
| // 15676 |
| o188 = {}; |
| // 15677 |
| f81632121_508.returns.push(o188); |
| // 15678 |
| o188.getAttribute = f81632121_506; |
| // 15679 |
| f81632121_506.returns.push(null); |
| // 15680 |
| o188.setAttribute = f81632121_575; |
| // 15681 |
| f81632121_575.returns.push(undefined); |
| // 15682 |
| f81632121_12.returns.push(56); |
| // 15691 |
| o189 = {}; |
| // 15692 |
| o190 = {}; |
| // 15694 |
| o189.nodeType = void 0; |
| // 15695 |
| o189.length = 1; |
| // 15696 |
| o189["0"] = "dm/WP"; |
| // 15699 |
| f81632121_467.returns.push(1374851241441); |
| // 15702 |
| f81632121_467.returns.push(1374851241442); |
| // 15705 |
| f81632121_508.returns.push(o56); |
| // 15706 |
| o56.__FB_TOKEN = void 0; |
| // 15707 |
| // 15710 |
| f81632121_508.returns.push(o57); |
| // 15711 |
| o57.__FB_TOKEN = void 0; |
| // 15712 |
| // undefined |
| o57 = null; |
| // 15715 |
| f81632121_508.returns.push(o58); |
| // 15716 |
| o58.__FB_TOKEN = void 0; |
| // 15717 |
| // undefined |
| o58 = null; |
| // 15720 |
| f81632121_508.returns.push(o59); |
| // 15721 |
| o59.__FB_TOKEN = void 0; |
| // 15722 |
| // undefined |
| o59 = null; |
| // 15725 |
| f81632121_508.returns.push(o75); |
| // 15726 |
| o75.__FB_TOKEN = void 0; |
| // 15727 |
| // undefined |
| o75 = null; |
| // 15729 |
| f81632121_467.returns.push(1374851241443); |
| // 15732 |
| o51.offsetHeight = 136; |
| // undefined |
| o51 = null; |
| // 15733 |
| f81632121_575.returns.push(undefined); |
| // 15735 |
| o47.offsetHeight = 174; |
| // 15736 |
| f81632121_575.returns.push(undefined); |
| // 15738 |
| o76.clearStatusIndicator = f81632121_1347; |
| // 15739 |
| o76.getStatusElement = f81632121_1348; |
| // 15740 |
| o76.statusElement = null; |
| // 15741 |
| f81632121_1348.returns.push(null); |
| // 15742 |
| f81632121_1347.returns.push(undefined); |
| // 15745 |
| f81632121_1340.returns.push(true); |
| // 15746 |
| o76.initialHandler = f81632121_1349; |
| // 15747 |
| f81632121_1349.returns.push(undefined); |
| // 15748 |
| o76.timer = null; |
| // 15749 |
| f81632121_14.returns.push(undefined); |
| // 15751 |
| o76._handleJSResponse = f81632121_1351; |
| // 15752 |
| o76.getRelativeTo = f81632121_1352; |
| // 15753 |
| o76.relativeTo = null; |
| // 15754 |
| f81632121_1352.returns.push(null); |
| // 15755 |
| o76._handleJSRegisters = f81632121_1353; |
| // 15756 |
| f81632121_1353.returns.push(undefined); |
| // 15757 |
| o76.lid = void 0; |
| // 15759 |
| f81632121_1353.returns.push(undefined); |
| // 15760 |
| f81632121_1351.returns.push(undefined); |
| // 15761 |
| o76.finallyHandler = f81632121_1349; |
| // 15762 |
| f81632121_1349.returns.push(undefined); |
| // 15763 |
| f81632121_1341.returns.push(undefined); |
| // 15765 |
| o49.offsetHeight = 201; |
| // undefined |
| o49 = null; |
| // 15766 |
| f81632121_575.returns.push(undefined); |
| // 15768 |
| o48.offsetHeight = 214; |
| // undefined |
| o48 = null; |
| // 15769 |
| f81632121_575.returns.push(undefined); |
| // 15771 |
| o50.offsetHeight = 240; |
| // undefined |
| o50 = null; |
| // 15772 |
| f81632121_575.returns.push(undefined); |
| // 15774 |
| f81632121_467.returns.push(1374851241448); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2"); |
| // 15778 |
| f81632121_467.returns.push(1374851241449); |
| // 15779 |
| o137.offsetTop = 0; |
| // 15782 |
| o79.add = f81632121_602; |
| // undefined |
| o79 = null; |
| // 15783 |
| f81632121_602.returns.push(undefined); |
| // 15784 |
| f81632121_463.returns.push(5); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2"); |
| // 15792 |
| f81632121_467.returns.push(1374851243809); |
| // 15793 |
| f81632121_13.returns.push(57); |
| // 15795 |
| f81632121_467.returns.push(1374851243810); |
| // 15796 |
| f81632121_466.returns.push(0.8382938504219055); |
| // 15798 |
| f81632121_467.returns.push(1374851243810); |
| // 15801 |
| f81632121_467.returns.push(1374851243810); |
| // 15803 |
| f81632121_466.returns.push(0.39578074193559587); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2"); |
| // 15806 |
| // 15807 |
| f81632121_2117 = function() { return f81632121_2117.returns[f81632121_2117.inst++]; }; |
| f81632121_2117.returns = []; |
| f81632121_2117.inst = 0; |
| // 15808 |
| ow81632121.JSBNG__onpageshow = f81632121_2117; |
| // 15809 |
| f81632121_7.returns.push(undefined); |
| // 15810 |
| f81632121_2118 = function() { return f81632121_2118.returns[f81632121_2118.inst++]; }; |
| f81632121_2118.returns = []; |
| f81632121_2118.inst = 0; |
| // 15811 |
| ow81632121.JSBNG__onpagehide = f81632121_2118; |
| // 15814 |
| o48 = {}; |
| // 15815 |
| f81632121_0.returns.push(o48); |
| // undefined |
| o48 = null; |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096"); |
| // 15817 |
| f81632121_14.returns.push(undefined); |
| // 15818 |
| o48 = {}; |
| // 15819 |
| f81632121_0.returns.push(o48); |
| // undefined |
| o48 = null; |
| // 15820 |
| o48 = {}; |
| // 15821 |
| f81632121_0.returns.push(o48); |
| // undefined |
| o48 = null; |
| // 15822 |
| o48 = {}; |
| // 15823 |
| f81632121_0.returns.push(o48); |
| // undefined |
| o48 = null; |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096"); |
| // 15825 |
| o48 = {}; |
| // 15826 |
| f81632121_70.returns.push(o48); |
| // 15827 |
| o48.open = f81632121_1294; |
| // 15828 |
| f81632121_1294.returns.push(undefined); |
| // 15829 |
| // 15830 |
| f81632121_12.returns.push(58); |
| // 15832 |
| f81632121_467.returns.push(1374851243816); |
| // 15833 |
| o48.send = f81632121_1296; |
| // 15834 |
| f81632121_1296.returns.push(undefined); |
| // 15837 |
| f81632121_467.returns.push(1374851243816); |
| // 15839 |
| f81632121_467.returns.push(1374851243818); |
| // 15841 |
| f81632121_467.returns.push(1374851243818); |
| // 15842 |
| f81632121_13.returns.push(59); |
| // 15843 |
| f81632121_13.returns.push(60); |
| // 15845 |
| f81632121_467.returns.push(1374851243819); |
| // 15846 |
| f81632121_12.returns.push(61); |
| // 15848 |
| f81632121_12.returns.push(62); |
| // 15849 |
| f81632121_12.returns.push(63); |
| // 15850 |
| f81632121_12.returns.push(64); |
| // 15851 |
| f81632121_12.returns.push(65); |
| // 15852 |
| f81632121_12.returns.push(66); |
| // 15854 |
| f81632121_467.returns.push(1374851243824); |
| // 15855 |
| f81632121_466.returns.push(0.9318111049942672); |
| // 15857 |
| f81632121_467.returns.push(1374851243825); |
| // 15859 |
| f81632121_467.returns.push(1374851243825); |
| // 15861 |
| f81632121_467.returns.push(1374851243825); |
| // 15862 |
| f81632121_14.returns.push(undefined); |
| // 15863 |
| f81632121_12.returns.push(67); |
| // 15864 |
| f81632121_12.returns.push(68); |
| // 15868 |
| o49 = {}; |
| // 15869 |
| f81632121_508.returns.push(o49); |
| // 15872 |
| f81632121_467.returns.push(1374851243830); |
| // 15874 |
| o50 = {}; |
| // 15875 |
| f81632121_508.returns.push(o50); |
| // 15876 |
| o50.__FB_TOKEN = void 0; |
| // 15877 |
| // 15878 |
| o49.getElementsByTagName = f81632121_502; |
| // 15880 |
| o49.querySelectorAll = f81632121_504; |
| // 15881 |
| o51 = {}; |
| // 15882 |
| f81632121_504.returns.push(o51); |
| // 15883 |
| o51.length = 0; |
| // undefined |
| o51 = null; |
| // 15887 |
| o51 = {}; |
| // 15888 |
| f81632121_504.returns.push(o51); |
| // 15889 |
| o51.length = 0; |
| // undefined |
| o51 = null; |
| // 15894 |
| f81632121_467.returns.push(1374851243841); |
| // 15899 |
| f81632121_467.returns.push(1374851243841); |
| // 15907 |
| f81632121_1852.returns.push(undefined); |
| // 15909 |
| f81632121_14.returns.push(undefined); |
| // 15910 |
| f81632121_12.returns.push(69); |
| // 15913 |
| o51 = {}; |
| // 15914 |
| f81632121_508.returns.push(o51); |
| // 15915 |
| o51.nodeName = "BUTTON"; |
| // 15916 |
| o51.__FB_TOKEN = void 0; |
| // 15917 |
| // 15918 |
| o51.getAttribute = f81632121_506; |
| // 15919 |
| o51.hasAttribute = f81632121_507; |
| // 15921 |
| f81632121_507.returns.push(false); |
| // 15922 |
| o51.JSBNG__addEventListener = f81632121_468; |
| // 15924 |
| f81632121_468.returns.push(undefined); |
| // 15925 |
| f81632121_2129 = function() { return f81632121_2129.returns[f81632121_2129.inst++]; }; |
| f81632121_2129.returns = []; |
| f81632121_2129.inst = 0; |
| // 15926 |
| o51.JSBNG__onclick = f81632121_2129; |
| // 15929 |
| // undefined |
| o51 = null; |
| // 15934 |
| o51 = {}; |
| // 15935 |
| f81632121_508.returns.push(o51); |
| // 15938 |
| f81632121_467.returns.push(1374851243845); |
| // 15940 |
| o57 = {}; |
| // 15941 |
| f81632121_508.returns.push(o57); |
| // 15942 |
| o57.__FB_TOKEN = void 0; |
| // 15943 |
| // undefined |
| o57 = null; |
| // 15944 |
| o51.getElementsByTagName = f81632121_502; |
| // 15946 |
| o51.querySelectorAll = f81632121_504; |
| // undefined |
| o51 = null; |
| // 15947 |
| o51 = {}; |
| // 15948 |
| f81632121_504.returns.push(o51); |
| // 15949 |
| o51.length = 0; |
| // undefined |
| o51 = null; |
| // 15953 |
| o51 = {}; |
| // 15954 |
| f81632121_504.returns.push(o51); |
| // 15955 |
| o51.length = 0; |
| // undefined |
| o51 = null; |
| // 15960 |
| f81632121_467.returns.push(1374851243846); |
| // 15967 |
| f81632121_1852.returns.push(undefined); |
| // 15969 |
| f81632121_14.returns.push(undefined); |
| // 15970 |
| f81632121_12.returns.push(70); |
| // 15973 |
| o51 = {}; |
| // 15974 |
| f81632121_508.returns.push(o51); |
| // 15975 |
| o51.nodeName = "BUTTON"; |
| // 15976 |
| o51.__FB_TOKEN = void 0; |
| // 15977 |
| // 15978 |
| o51.getAttribute = f81632121_506; |
| // 15979 |
| o51.hasAttribute = f81632121_507; |
| // 15981 |
| f81632121_507.returns.push(false); |
| // 15982 |
| o51.JSBNG__addEventListener = f81632121_468; |
| // 15984 |
| f81632121_468.returns.push(undefined); |
| // 15985 |
| f81632121_2135 = function() { return f81632121_2135.returns[f81632121_2135.inst++]; }; |
| f81632121_2135.returns = []; |
| f81632121_2135.inst = 0; |
| // 15986 |
| o51.JSBNG__onclick = f81632121_2135; |
| // 15989 |
| // undefined |
| o51 = null; |
| // 15994 |
| o51 = {}; |
| // 15995 |
| o57 = {}; |
| // 15997 |
| o51.nodeType = void 0; |
| // 15998 |
| o51.length = 1; |
| // 15999 |
| o51["0"] = "TXKLp"; |
| // 16005 |
| f81632121_466.returns.push(0.1571649736724794); |
| // 16007 |
| f81632121_12.returns.push(71); |
| // 16008 |
| f81632121_12.returns.push(72); |
| // 16009 |
| f81632121_12.returns.push(73); |
| // 16010 |
| f81632121_12.returns.push(74); |
| // 16011 |
| f81632121_12.returns.push(75); |
| // 16015 |
| o58 = {}; |
| // 16016 |
| o59 = {}; |
| // 16018 |
| o58.nodeType = void 0; |
| // 16019 |
| o58.length = 1; |
| // 16020 |
| o58["0"] = "1YKDj"; |
| // 16022 |
| o75 = {}; |
| // 16024 |
| o75._polling = false; |
| // 16025 |
| // 16026 |
| f81632121_2141 = function() { return f81632121_2141.returns[f81632121_2141.inst++]; }; |
| f81632121_2141.returns = []; |
| f81632121_2141.inst = 0; |
| // 16027 |
| o75.request = f81632121_2141; |
| // 16028 |
| o75._cancelRequest = f81632121_1349; |
| // 16029 |
| f81632121_1349.returns.push(undefined); |
| // 16030 |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096"); |
| // 16032 |
| o75._muted = false; |
| // 16033 |
| o79 = {}; |
| // 16034 |
| o75._config = o79; |
| // 16035 |
| o79.maxRequests = Infinity; |
| // 16036 |
| // 16038 |
| f81632121_2143 = function() { return f81632121_2143.returns[f81632121_2143.inst++]; }; |
| f81632121_2143.returns = []; |
| f81632121_2143.inst = 0; |
| // 16039 |
| o79.setupRequest = f81632121_2143; |
| // undefined |
| o79 = null; |
| // 16040 |
| f81632121_2143.returns.push(undefined); |
| // 16041 |
| o75._skip = false; |
| // 16042 |
| f81632121_2141.returns.push(o75); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096"); |
| // 16046 |
| f81632121_467.returns.push(1374851243914); |
| // 16048 |
| o46.offsetTop = 43; |
| // 16049 |
| o46.scrollHeight = 48; |
| // undefined |
| o46 = null; |
| // 16051 |
| f81632121_1418.returns.push({__JSBNG_unknown_function:true}); |
| // 16057 |
| o46 = {}; |
| // 16058 |
| f81632121_508.returns.push(o46); |
| // 16060 |
| o79 = {}; |
| // 16061 |
| f81632121_508.returns.push(o79); |
| // 16062 |
| o191 = {}; |
| // 16063 |
| o192 = {}; |
| // 16065 |
| o191.nodeType = void 0; |
| // 16066 |
| o191.length = 1; |
| // 16067 |
| o191["0"] = "cmK7/"; |
| // 16072 |
| o193 = {}; |
| // 16073 |
| o194 = {}; |
| // 16075 |
| o193.nodeType = void 0; |
| // 16076 |
| o193.length = 1; |
| // 16077 |
| o193["0"] = "4/uwC"; |
| // 16079 |
| o195 = {}; |
| // 16080 |
| o196 = {}; |
| // undefined |
| o196 = null; |
| // 16081 |
| f81632121_2152 = function() { return f81632121_2152.returns[f81632121_2152.inst++]; }; |
| f81632121_2152.returns = []; |
| f81632121_2152.inst = 0; |
| // 16082 |
| o195._onReadyState = f81632121_2152; |
| // 16084 |
| o195.xhr = o48; |
| // 16086 |
| o48.readyState = 2; |
| // 16087 |
| o195.JSBNG__status = null; |
| // 16088 |
| f81632121_2153 = function() { return f81632121_2153.returns[f81632121_2153.inst++]; }; |
| f81632121_2153.returns = []; |
| f81632121_2153.inst = 0; |
| // 16089 |
| o195._parseStatus = f81632121_2153; |
| // 16091 |
| o48.JSBNG__status = 404; |
| // 16092 |
| // 16094 |
| o48.statusText = "Not Found"; |
| // 16104 |
| // 16105 |
| o195.errorText = void 0; |
| // 16106 |
| // 16107 |
| f81632121_2153.returns.push(undefined); |
| // 16109 |
| f81632121_467.returns.push(1374851244103); |
| // 16110 |
| o195._sentAt = 1374851243816; |
| // 16111 |
| // 16112 |
| f81632121_2154 = function() { return f81632121_2154.returns[f81632121_2154.inst++]; }; |
| f81632121_2154.returns = []; |
| f81632121_2154.inst = 0; |
| // 16113 |
| o195._call = f81632121_2154; |
| // 16114 |
| f81632121_2155 = function() { return f81632121_2155.returns[f81632121_2155.inst++]; }; |
| f81632121_2155.returns = []; |
| f81632121_2155.inst = 0; |
| // 16115 |
| o195.onError = f81632121_2155; |
| // 16117 |
| f81632121_2155.returns.push(undefined); |
| // 16118 |
| f81632121_2154.returns.push(undefined); |
| // 16119 |
| // 16120 |
| // 16121 |
| // 16122 |
| o195._timer = 58; |
| // 16123 |
| f81632121_14.returns.push(undefined); |
| // 16128 |
| f81632121_2156 = function() { return f81632121_2156.returns[f81632121_2156.inst++]; }; |
| f81632121_2156.returns = []; |
| f81632121_2156.inst = 0; |
| // 16129 |
| o48.abort = f81632121_2156; |
| // undefined |
| o48 = null; |
| // 16130 |
| f81632121_2156.returns.push(undefined); |
| // 16131 |
| // 16132 |
| f81632121_2152.returns.push(undefined); |
| // 16133 |
| o48 = {}; |
| // undefined |
| o48 = null; |
| // 16138 |
| f81632121_467.returns.push(1374851244104); |
| // 16140 |
| // 16142 |
| f81632121_2154.returns.push(undefined); |
| // 16143 |
| // 16144 |
| // 16145 |
| // 16147 |
| f81632121_14.returns.push(undefined); |
| // 16148 |
| f81632121_2152.returns.push(undefined); |
| // 16154 |
| o48 = {}; |
| // 16155 |
| f81632121_508.returns.push(o48); |
| // undefined |
| o48 = null; |
| // 16159 |
| o48 = {}; |
| // 16160 |
| f81632121_503.returns.push(o48); |
| // 16161 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 16162 |
| f81632121_2160 = function() { return f81632121_2160.returns[f81632121_2160.inst++]; }; |
| f81632121_2160.returns = []; |
| f81632121_2160.inst = 0; |
| // 16163 |
| o6.checkPermission = f81632121_2160; |
| // undefined |
| o6 = null; |
| // 16164 |
| f81632121_2160.returns.push(1); |
| // 16168 |
| o6 = {}; |
| // 16169 |
| f81632121_503.returns.push(o6); |
| // 16170 |
| o6.length = 0; |
| // undefined |
| o6 = null; |
| // 16174 |
| o6 = {}; |
| // 16175 |
| f81632121_508.returns.push(o6); |
| // undefined |
| o6 = null; |
| // 16179 |
| o6 = {}; |
| // 16180 |
| f81632121_503.returns.push(o6); |
| // 16181 |
| o6.length = 0; |
| // undefined |
| o6 = null; |
| // 16183 |
| f81632121_2160.returns.push(1); |
| // 16187 |
| o6 = {}; |
| // 16188 |
| f81632121_503.returns.push(o6); |
| // 16189 |
| o6.length = 0; |
| // undefined |
| o6 = null; |
| // 16192 |
| o6 = {}; |
| // 16193 |
| f81632121_508.returns.push(o6); |
| // 16196 |
| o6.offsetWidth = 220; |
| // 16197 |
| o6.offsetHeight = 25; |
| // 16199 |
| f81632121_508.returns.push(o137); |
| // undefined |
| o137 = null; |
| // 16203 |
| f81632121_645.returns.push(true); |
| // 16204 |
| o48 = {}; |
| // 16205 |
| f81632121_4.returns.push(o48); |
| // 16206 |
| o48.getPropertyValue = f81632121_1442; |
| // undefined |
| o48 = null; |
| // 16207 |
| f81632121_1442.returns.push("fixed"); |
| // 16211 |
| f81632121_645.returns.push(true); |
| // 16213 |
| o48 = {}; |
| // 16214 |
| f81632121_1481.returns.push(o48); |
| // 16215 |
| o48.left = 0; |
| // 16217 |
| o48.JSBNG__top = 0; |
| // undefined |
| o48 = null; |
| // 16221 |
| o6.getElementsByTagName = f81632121_502; |
| // 16223 |
| o6.querySelectorAll = f81632121_504; |
| // 16224 |
| o48 = {}; |
| // 16225 |
| f81632121_504.returns.push(o48); |
| // 16226 |
| o48.length = 6; |
| // 16227 |
| o137 = {}; |
| // 16228 |
| o48["0"] = o137; |
| // 16229 |
| o196 = {}; |
| // 16230 |
| o48["1"] = o196; |
| // 16231 |
| o197 = {}; |
| // 16232 |
| o48["2"] = o197; |
| // 16233 |
| o198 = {}; |
| // 16234 |
| o48["3"] = o198; |
| // 16235 |
| o199 = {}; |
| // 16236 |
| o48["4"] = o199; |
| // 16237 |
| o200 = {}; |
| // 16238 |
| o48["5"] = o200; |
| // undefined |
| o48 = null; |
| // 16239 |
| o137.getAttribute = f81632121_506; |
| // 16240 |
| f81632121_506.returns.push("#"); |
| // 16241 |
| o196.getAttribute = f81632121_506; |
| // 16242 |
| f81632121_506.returns.push("#"); |
| // 16243 |
| o197.getAttribute = f81632121_506; |
| // 16244 |
| f81632121_506.returns.push("#"); |
| // 16245 |
| o198.getAttribute = f81632121_506; |
| // undefined |
| o198 = null; |
| // 16246 |
| f81632121_506.returns.push("/ajax/chat/privacy/settings_dialog.php"); |
| // 16247 |
| o199.getAttribute = f81632121_506; |
| // 16248 |
| f81632121_506.returns.push("#"); |
| // 16249 |
| o200.getAttribute = f81632121_506; |
| // undefined |
| o200 = null; |
| // 16250 |
| f81632121_506.returns.push("/ajax/chat/privacy/turn_off_dialog.php"); |
| // 16251 |
| o137.removeAttribute = f81632121_576; |
| // 16252 |
| f81632121_576.returns.push(undefined); |
| // 16253 |
| o137.setAttribute = f81632121_575; |
| // 16254 |
| f81632121_575.returns.push(undefined); |
| // 16255 |
| o196.removeAttribute = f81632121_576; |
| // 16256 |
| f81632121_576.returns.push(undefined); |
| // 16257 |
| o196.setAttribute = f81632121_575; |
| // undefined |
| o196 = null; |
| // 16258 |
| f81632121_575.returns.push(undefined); |
| // 16259 |
| o197.removeAttribute = f81632121_576; |
| // 16260 |
| f81632121_576.returns.push(undefined); |
| // 16261 |
| o197.setAttribute = f81632121_575; |
| // undefined |
| o197 = null; |
| // 16262 |
| f81632121_575.returns.push(undefined); |
| // 16263 |
| o199.removeAttribute = f81632121_576; |
| // 16264 |
| f81632121_576.returns.push(undefined); |
| // 16265 |
| o199.setAttribute = f81632121_575; |
| // undefined |
| o199 = null; |
| // 16266 |
| f81632121_575.returns.push(undefined); |
| // 16267 |
| o6.nodeName = "DIV"; |
| // 16268 |
| o6.__FB_TOKEN = void 0; |
| // 16269 |
| // 16270 |
| o6.getAttribute = f81632121_506; |
| // 16271 |
| o6.hasAttribute = f81632121_507; |
| // 16273 |
| f81632121_507.returns.push(false); |
| // 16274 |
| o6.JSBNG__addEventListener = f81632121_468; |
| // 16276 |
| f81632121_468.returns.push(undefined); |
| // 16277 |
| o6.JSBNG__onclick = null; |
| // 16281 |
| f81632121_467.returns.push(1374851244222); |
| // 16286 |
| o48 = {}; |
| // 16287 |
| f81632121_508.returns.push(o48); |
| // 16289 |
| o196 = {}; |
| // 16290 |
| f81632121_476.returns.push(o196); |
| // 16291 |
| // 16292 |
| // 16293 |
| o196.getElementsByTagName = f81632121_502; |
| // 16294 |
| o197 = {}; |
| // 16295 |
| f81632121_502.returns.push(o197); |
| // 16296 |
| o197.length = 0; |
| // undefined |
| o197 = null; |
| // 16298 |
| o197 = {}; |
| // 16299 |
| o196.childNodes = o197; |
| // undefined |
| o196 = null; |
| // 16300 |
| o197.nodeType = void 0; |
| // undefined |
| o197 = null; |
| // 16302 |
| o196 = {}; |
| // 16303 |
| f81632121_476.returns.push(o196); |
| // 16304 |
| // 16305 |
| // 16306 |
| o196.getElementsByTagName = f81632121_502; |
| // 16307 |
| o197 = {}; |
| // 16308 |
| f81632121_502.returns.push(o197); |
| // 16309 |
| o197.length = 0; |
| // undefined |
| o197 = null; |
| // 16311 |
| o197 = {}; |
| // 16312 |
| o196.childNodes = o197; |
| // undefined |
| o196 = null; |
| // 16313 |
| o197.nodeType = void 0; |
| // undefined |
| o197 = null; |
| // 16314 |
| o196 = {}; |
| // 16315 |
| o48.classList = o196; |
| // 16317 |
| o196.contains = f81632121_513; |
| // undefined |
| o196 = null; |
| // 16318 |
| f81632121_513.returns.push(false); |
| // 16319 |
| o48.parentNode = o71; |
| // 16320 |
| o196 = {}; |
| // 16321 |
| o71.classList = o196; |
| // 16323 |
| o196.contains = f81632121_513; |
| // undefined |
| o196 = null; |
| // 16324 |
| f81632121_513.returns.push(false); |
| // 16325 |
| o71.parentNode = o68; |
| // undefined |
| o71 = null; |
| // 16326 |
| o71 = {}; |
| // 16327 |
| o68.classList = o71; |
| // 16329 |
| o71.contains = f81632121_513; |
| // undefined |
| o71 = null; |
| // 16330 |
| f81632121_513.returns.push(false); |
| // 16331 |
| o68.parentNode = o67; |
| // undefined |
| o68 = null; |
| // 16332 |
| o68 = {}; |
| // 16333 |
| o67.classList = o68; |
| // 16335 |
| o68.contains = f81632121_513; |
| // undefined |
| o68 = null; |
| // 16336 |
| f81632121_513.returns.push(false); |
| // 16337 |
| o67.parentNode = o65; |
| // 16340 |
| o66.contains = f81632121_513; |
| // undefined |
| o66 = null; |
| // 16341 |
| f81632121_513.returns.push(false); |
| // 16342 |
| o66 = {}; |
| // 16343 |
| o65.parentNode = o66; |
| // undefined |
| o65 = null; |
| // 16344 |
| o65 = {}; |
| // 16345 |
| o66.classList = o65; |
| // 16347 |
| o65.contains = f81632121_513; |
| // undefined |
| o65 = null; |
| // 16348 |
| f81632121_513.returns.push(false); |
| // 16349 |
| o65 = {}; |
| // 16350 |
| o66.parentNode = o65; |
| // 16351 |
| o68 = {}; |
| // 16352 |
| o65.classList = o68; |
| // 16354 |
| o68.contains = f81632121_513; |
| // 16355 |
| f81632121_513.returns.push(false); |
| // 16356 |
| o65.parentNode = o64; |
| // 16357 |
| o71 = {}; |
| // 16358 |
| o64.classList = o71; |
| // 16360 |
| o71.contains = f81632121_513; |
| // undefined |
| o71 = null; |
| // 16361 |
| f81632121_513.returns.push(false); |
| // 16362 |
| o64.parentNode = o82; |
| // undefined |
| o64 = null; |
| // 16366 |
| f81632121_513.returns.push(false); |
| // 16371 |
| f81632121_513.returns.push(false); |
| // 16376 |
| f81632121_513.returns.push(false); |
| // 16381 |
| o48.getElementsByTagName = f81632121_502; |
| // 16383 |
| o48.querySelectorAll = f81632121_504; |
| // 16384 |
| o64 = {}; |
| // 16385 |
| f81632121_504.returns.push(o64); |
| // 16386 |
| o64.length = 1; |
| // 16387 |
| o71 = {}; |
| // 16388 |
| o64["0"] = o71; |
| // undefined |
| o64 = null; |
| // undefined |
| o71 = null; |
| // 16392 |
| f81632121_513.returns.push(false); |
| // 16397 |
| f81632121_513.returns.push(false); |
| // 16402 |
| f81632121_513.returns.push(false); |
| // 16407 |
| f81632121_513.returns.push(false); |
| // 16412 |
| f81632121_513.returns.push(true); |
| // 16416 |
| f81632121_513.returns.push(false); |
| // 16421 |
| f81632121_513.returns.push(false); |
| // 16426 |
| f81632121_513.returns.push(false); |
| // 16431 |
| f81632121_513.returns.push(false); |
| // 16436 |
| f81632121_513.returns.push(false); |
| // 16441 |
| f81632121_513.returns.push(false); |
| // 16446 |
| f81632121_513.returns.push(true); |
| // 16450 |
| f81632121_513.returns.push(false); |
| // 16455 |
| f81632121_513.returns.push(false); |
| // 16460 |
| f81632121_513.returns.push(false); |
| // 16465 |
| f81632121_513.returns.push(true); |
| // 16466 |
| o48.nodeName = "DIV"; |
| // 16467 |
| o48.__FB_TOKEN = void 0; |
| // 16468 |
| // 16469 |
| o48.getAttribute = f81632121_506; |
| // 16470 |
| o48.hasAttribute = f81632121_507; |
| // 16472 |
| f81632121_507.returns.push(false); |
| // 16473 |
| o48.JSBNG__addEventListener = f81632121_468; |
| // 16475 |
| f81632121_468.returns.push(undefined); |
| // 16476 |
| o48.JSBNG__onclick = null; |
| // 16481 |
| f81632121_468.returns.push(undefined); |
| // 16482 |
| o48.JSBNG__onmouseover = null; |
| // 16487 |
| f81632121_468.returns.push(undefined); |
| // 16488 |
| o48.JSBNG__onmouseout = null; |
| // undefined |
| o48 = null; |
| // 16490 |
| f81632121_14.returns.push(undefined); |
| // 16491 |
| f81632121_12.returns.push(76); |
| // 16502 |
| o48 = {}; |
| // 16503 |
| f81632121_508.returns.push(o48); |
| // 16505 |
| o64 = {}; |
| // 16506 |
| f81632121_476.returns.push(o64); |
| // 16507 |
| // 16508 |
| // 16509 |
| o64.getElementsByTagName = f81632121_502; |
| // 16510 |
| o71 = {}; |
| // 16511 |
| f81632121_502.returns.push(o71); |
| // 16512 |
| o71.length = 0; |
| // undefined |
| o71 = null; |
| // 16514 |
| o71 = {}; |
| // 16515 |
| o64.childNodes = o71; |
| // undefined |
| o64 = null; |
| // 16516 |
| o71.nodeType = void 0; |
| // undefined |
| o71 = null; |
| // 16518 |
| o64 = {}; |
| // 16519 |
| f81632121_476.returns.push(o64); |
| // 16520 |
| // 16521 |
| // 16522 |
| o64.getElementsByTagName = f81632121_502; |
| // 16523 |
| o71 = {}; |
| // 16524 |
| f81632121_502.returns.push(o71); |
| // 16525 |
| o71.length = 0; |
| // undefined |
| o71 = null; |
| // 16527 |
| o71 = {}; |
| // 16528 |
| o64.childNodes = o71; |
| // undefined |
| o64 = null; |
| // 16529 |
| o71.nodeType = void 0; |
| // undefined |
| o71 = null; |
| // 16530 |
| o64 = {}; |
| // 16531 |
| o48.classList = o64; |
| // 16533 |
| o64.contains = f81632121_513; |
| // undefined |
| o64 = null; |
| // 16534 |
| f81632121_513.returns.push(false); |
| // 16535 |
| o64 = {}; |
| // 16536 |
| o48.parentNode = o64; |
| // 16537 |
| o71 = {}; |
| // 16538 |
| o64.classList = o71; |
| // 16540 |
| o71.contains = f81632121_513; |
| // undefined |
| o71 = null; |
| // 16541 |
| f81632121_513.returns.push(false); |
| // 16542 |
| o71 = {}; |
| // 16543 |
| o64.parentNode = o71; |
| // undefined |
| o64 = null; |
| // 16544 |
| o64 = {}; |
| // 16545 |
| o71.classList = o64; |
| // 16547 |
| o64.contains = f81632121_513; |
| // undefined |
| o64 = null; |
| // 16548 |
| f81632121_513.returns.push(false); |
| // 16549 |
| o64 = {}; |
| // 16550 |
| o71.parentNode = o64; |
| // 16551 |
| o196 = {}; |
| // 16552 |
| o64.classList = o196; |
| // 16554 |
| o196.contains = f81632121_513; |
| // undefined |
| o196 = null; |
| // 16555 |
| f81632121_513.returns.push(false); |
| // 16556 |
| o196 = {}; |
| // 16557 |
| o64.parentNode = o196; |
| // undefined |
| o64 = null; |
| // 16558 |
| o64 = {}; |
| // 16559 |
| o196.classList = o64; |
| // 16561 |
| o64.contains = f81632121_513; |
| // undefined |
| o64 = null; |
| // 16562 |
| f81632121_513.returns.push(false); |
| // 16563 |
| o64 = {}; |
| // 16564 |
| o196.parentNode = o64; |
| // undefined |
| o196 = null; |
| // 16565 |
| o196 = {}; |
| // 16566 |
| o64.classList = o196; |
| // 16568 |
| o196.contains = f81632121_513; |
| // undefined |
| o196 = null; |
| // 16569 |
| f81632121_513.returns.push(false); |
| // 16570 |
| o196 = {}; |
| // 16571 |
| o64.parentNode = o196; |
| // undefined |
| o64 = null; |
| // 16572 |
| o64 = {}; |
| // 16573 |
| o196.classList = o64; |
| // 16575 |
| o64.contains = f81632121_513; |
| // undefined |
| o64 = null; |
| // 16576 |
| f81632121_513.returns.push(false); |
| // 16577 |
| o64 = {}; |
| // 16578 |
| o196.parentNode = o64; |
| // 16579 |
| o197 = {}; |
| // 16580 |
| o64.classList = o197; |
| // 16582 |
| o197.contains = f81632121_513; |
| // 16583 |
| f81632121_513.returns.push(false); |
| // 16584 |
| o198 = {}; |
| // 16585 |
| o64.parentNode = o198; |
| // 16586 |
| o199 = {}; |
| // 16587 |
| o198.classList = o199; |
| // 16589 |
| o199.contains = f81632121_513; |
| // undefined |
| o199 = null; |
| // 16590 |
| f81632121_513.returns.push(false); |
| // 16591 |
| o199 = {}; |
| // 16592 |
| o198.parentNode = o199; |
| // undefined |
| o198 = null; |
| // 16593 |
| o198 = {}; |
| // 16594 |
| o199.classList = o198; |
| // 16596 |
| o198.contains = f81632121_513; |
| // undefined |
| o198 = null; |
| // 16597 |
| f81632121_513.returns.push(false); |
| // 16598 |
| o198 = {}; |
| // 16599 |
| o199.parentNode = o198; |
| // 16600 |
| o200 = {}; |
| // 16601 |
| o198.classList = o200; |
| // 16603 |
| o200.contains = f81632121_513; |
| // undefined |
| o200 = null; |
| // 16604 |
| f81632121_513.returns.push(false); |
| // 16605 |
| o198.parentNode = o6; |
| // 16606 |
| o200 = {}; |
| // 16607 |
| o6.classList = o200; |
| // 16609 |
| o200.contains = f81632121_513; |
| // undefined |
| o200 = null; |
| // 16610 |
| f81632121_513.returns.push(false); |
| // 16611 |
| o6.parentNode = o83; |
| // undefined |
| o6 = null; |
| // 16612 |
| o6 = {}; |
| // 16613 |
| o83.classList = o6; |
| // 16615 |
| o6.contains = f81632121_513; |
| // undefined |
| o6 = null; |
| // 16616 |
| f81632121_513.returns.push(false); |
| // 16617 |
| o83.parentNode = o82; |
| // 16621 |
| f81632121_513.returns.push(false); |
| // 16626 |
| f81632121_513.returns.push(false); |
| // 16631 |
| f81632121_513.returns.push(false); |
| // 16636 |
| o48.getElementsByTagName = f81632121_502; |
| // 16638 |
| o48.querySelectorAll = f81632121_504; |
| // 16639 |
| o6 = {}; |
| // 16640 |
| f81632121_504.returns.push(o6); |
| // 16641 |
| o6.length = 1; |
| // 16642 |
| o200 = {}; |
| // 16643 |
| o6["0"] = o200; |
| // undefined |
| o6 = null; |
| // undefined |
| o200 = null; |
| // 16647 |
| f81632121_513.returns.push(false); |
| // 16652 |
| f81632121_513.returns.push(false); |
| // 16657 |
| f81632121_513.returns.push(false); |
| // 16662 |
| f81632121_513.returns.push(false); |
| // 16667 |
| f81632121_513.returns.push(false); |
| // 16672 |
| f81632121_513.returns.push(false); |
| // 16677 |
| f81632121_513.returns.push(false); |
| // 16682 |
| f81632121_513.returns.push(false); |
| // 16687 |
| f81632121_513.returns.push(false); |
| // 16692 |
| f81632121_513.returns.push(false); |
| // 16697 |
| f81632121_513.returns.push(false); |
| // 16702 |
| f81632121_513.returns.push(false); |
| // 16707 |
| f81632121_513.returns.push(false); |
| // 16712 |
| f81632121_513.returns.push(false); |
| // 16717 |
| f81632121_513.returns.push(false); |
| // 16722 |
| f81632121_513.returns.push(false); |
| // 16730 |
| f81632121_513.returns.push(false); |
| // 16735 |
| f81632121_513.returns.push(false); |
| // 16740 |
| f81632121_513.returns.push(false); |
| // 16745 |
| f81632121_513.returns.push(false); |
| // 16750 |
| f81632121_513.returns.push(false); |
| // 16755 |
| f81632121_513.returns.push(false); |
| // 16760 |
| f81632121_513.returns.push(false); |
| // 16765 |
| f81632121_513.returns.push(false); |
| // 16770 |
| f81632121_513.returns.push(false); |
| // 16775 |
| f81632121_513.returns.push(false); |
| // 16780 |
| f81632121_513.returns.push(false); |
| // 16785 |
| f81632121_513.returns.push(false); |
| // 16790 |
| f81632121_513.returns.push(false); |
| // 16795 |
| f81632121_513.returns.push(false); |
| // 16800 |
| f81632121_513.returns.push(false); |
| // 16805 |
| f81632121_513.returns.push(false); |
| // 16813 |
| f81632121_513.returns.push(false); |
| // 16818 |
| f81632121_513.returns.push(false); |
| // 16823 |
| f81632121_513.returns.push(true); |
| // 16824 |
| o48.nodeName = "DIV"; |
| // 16825 |
| o48.__FB_TOKEN = void 0; |
| // 16826 |
| // 16827 |
| o48.getAttribute = f81632121_506; |
| // 16828 |
| o48.hasAttribute = f81632121_507; |
| // 16830 |
| f81632121_507.returns.push(false); |
| // 16831 |
| o48.JSBNG__addEventListener = f81632121_468; |
| // 16833 |
| f81632121_468.returns.push(undefined); |
| // 16834 |
| o48.JSBNG__onclick = null; |
| // 16839 |
| f81632121_468.returns.push(undefined); |
| // 16840 |
| o48.JSBNG__onmouseover = null; |
| // 16845 |
| f81632121_468.returns.push(undefined); |
| // 16846 |
| o48.JSBNG__onmouseout = null; |
| // undefined |
| o48 = null; |
| // 16848 |
| f81632121_14.returns.push(undefined); |
| // 16849 |
| f81632121_12.returns.push(77); |
| // 16853 |
| o6 = {}; |
| // 16854 |
| f81632121_476.returns.push(o6); |
| // 16855 |
| // 16856 |
| // 16857 |
| o6.getElementsByTagName = f81632121_502; |
| // 16858 |
| o48 = {}; |
| // 16859 |
| f81632121_502.returns.push(o48); |
| // 16860 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 16862 |
| o48 = {}; |
| // 16863 |
| o6.childNodes = o48; |
| // undefined |
| o6 = null; |
| // 16864 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // 16866 |
| f81632121_508.returns.push(o65); |
| // 16867 |
| o65.getElementsByTagName = f81632121_502; |
| // 16869 |
| o65.querySelectorAll = f81632121_504; |
| // undefined |
| o65 = null; |
| // 16870 |
| o6 = {}; |
| // 16871 |
| f81632121_504.returns.push(o6); |
| // 16872 |
| o6.length = 1; |
| // 16873 |
| o6["0"] = o66; |
| // undefined |
| o6 = null; |
| // undefined |
| o66 = null; |
| // 16877 |
| o6 = {}; |
| // 16878 |
| f81632121_504.returns.push(o6); |
| // 16879 |
| o6.length = 0; |
| // undefined |
| o6 = null; |
| // 16883 |
| o6 = {}; |
| // 16884 |
| f81632121_504.returns.push(o6); |
| // 16885 |
| o6.length = 1; |
| // 16886 |
| o48 = {}; |
| // 16887 |
| o6["0"] = o48; |
| // undefined |
| o6 = null; |
| // 16889 |
| o48.querySelectorAll = f81632121_504; |
| // undefined |
| o48 = null; |
| // 16890 |
| o6 = {}; |
| // 16891 |
| f81632121_504.returns.push(o6); |
| // 16892 |
| o6.length = 1; |
| // 16893 |
| o48 = {}; |
| // 16894 |
| o6["0"] = o48; |
| // undefined |
| o6 = null; |
| // 16897 |
| o68.remove = f81632121_1114; |
| // undefined |
| o68 = null; |
| // 16898 |
| f81632121_1114.returns.push(undefined); |
| // 16902 |
| f81632121_1114.returns.push(undefined); |
| // 16906 |
| f81632121_1114.returns.push(undefined); |
| // 16910 |
| f81632121_1114.returns.push(undefined); |
| // 16914 |
| f81632121_1114.returns.push(undefined); |
| // 16915 |
| o48.firstChild = null; |
| // undefined |
| o48 = null; |
| // 16919 |
| f81632121_513.returns.push(false); |
| // 16924 |
| f81632121_513.returns.push(false); |
| // 16929 |
| f81632121_513.returns.push(false); |
| // 16934 |
| f81632121_513.returns.push(true); |
| // 16935 |
| o67.contains = f81632121_645; |
| // undefined |
| o67 = null; |
| // 16937 |
| f81632121_645.returns.push(true); |
| // 16943 |
| f81632121_467.returns.push(1374851244303); |
| // 16946 |
| o50.getElementsByTagName = f81632121_502; |
| // 16948 |
| o50.querySelectorAll = f81632121_504; |
| // undefined |
| o50 = null; |
| // 16949 |
| o6 = {}; |
| // 16950 |
| f81632121_504.returns.push(o6); |
| // 16951 |
| o6.length = 1; |
| // 16952 |
| o6["0"] = o49; |
| // undefined |
| o6 = null; |
| // 16956 |
| o6 = {}; |
| // 16957 |
| f81632121_504.returns.push(o6); |
| // 16958 |
| o6.length = 0; |
| // undefined |
| o6 = null; |
| // 16962 |
| o6 = {}; |
| // 16963 |
| f81632121_504.returns.push(o6); |
| // 16964 |
| o6.length = 1; |
| // 16965 |
| o48 = {}; |
| // 16966 |
| o6["0"] = o48; |
| // undefined |
| o6 = null; |
| // undefined |
| o48 = null; |
| // 16970 |
| o6 = {}; |
| // 16971 |
| f81632121_504.returns.push(o6); |
| // 16972 |
| o6.length = 1; |
| // 16973 |
| o48 = {}; |
| // 16974 |
| o6["0"] = o48; |
| // undefined |
| o6 = null; |
| // undefined |
| o48 = null; |
| // 16975 |
| o49.nodeName = "INPUT"; |
| // 16976 |
| o49.__FB_TOKEN = void 0; |
| // 16977 |
| // 16978 |
| o49.getAttribute = f81632121_506; |
| // 16979 |
| o49.hasAttribute = f81632121_507; |
| // 16981 |
| f81632121_507.returns.push(false); |
| // 16982 |
| o49.JSBNG__addEventListener = f81632121_468; |
| // 16984 |
| f81632121_468.returns.push(undefined); |
| // 16985 |
| o49.JSBNG__onJSBNG__blur = void 0; |
| // 16990 |
| f81632121_468.returns.push(undefined); |
| // 16991 |
| o49.JSBNG__onJSBNG__focus = void 0; |
| // 16996 |
| f81632121_468.returns.push(undefined); |
| // 16997 |
| o49.JSBNG__onclick = null; |
| // 17002 |
| f81632121_468.returns.push(undefined); |
| // 17003 |
| o49.JSBNG__onkeydown = null; |
| // 17008 |
| f81632121_468.returns.push(undefined); |
| // 17009 |
| o49.JSBNG__onkeyup = null; |
| // 17014 |
| f81632121_468.returns.push(undefined); |
| // 17015 |
| o49.JSBNG__onkeypress = null; |
| // undefined |
| o49 = null; |
| // 17027 |
| f81632121_1114.returns.push(undefined); |
| // 17032 |
| f81632121_1114.returns.push(undefined); |
| // 17042 |
| f81632121_467.returns.push(1374851244322); |
| // 17043 |
| o6 = {}; |
| // 17044 |
| o3.plugins = o6; |
| // 17046 |
| f81632121_2241 = function() { return f81632121_2241.returns[f81632121_2241.inst++]; }; |
| f81632121_2241.returns = []; |
| f81632121_2241.inst = 0; |
| // 17047 |
| o6.refresh = f81632121_2241; |
| // 17048 |
| f81632121_2241.returns.push(undefined); |
| // 17050 |
| o6.length = 5; |
| // 17052 |
| o48 = {}; |
| // 17053 |
| o6["0"] = o48; |
| // 17054 |
| o48.length = 2; |
| // 17055 |
| o49 = {}; |
| // 17056 |
| o48["0"] = o49; |
| // undefined |
| o48 = null; |
| // 17057 |
| o49.type = "application/x-shockwave-flash"; |
| // undefined |
| o49 = null; |
| // 17059 |
| o48 = {}; |
| // 17060 |
| o6["1"] = o48; |
| // 17061 |
| o48.length = 1; |
| // 17062 |
| o49 = {}; |
| // 17063 |
| o48["0"] = o49; |
| // undefined |
| o48 = null; |
| // 17064 |
| o49.type = "application/vnd.chromium.remoting-viewer"; |
| // undefined |
| o49 = null; |
| // 17066 |
| o48 = {}; |
| // 17067 |
| o6["2"] = o48; |
| // 17068 |
| o48.length = 1; |
| // 17069 |
| o49 = {}; |
| // 17070 |
| o48["0"] = o49; |
| // undefined |
| o48 = null; |
| // 17071 |
| o49.type = "application/x-nacl"; |
| // undefined |
| o49 = null; |
| // 17073 |
| o48 = {}; |
| // 17074 |
| o6["3"] = o48; |
| // 17075 |
| o48.length = 2; |
| // 17076 |
| o49 = {}; |
| // 17077 |
| o48["0"] = o49; |
| // undefined |
| o48 = null; |
| // 17078 |
| o49.type = "application/pdf"; |
| // undefined |
| o49 = null; |
| // 17080 |
| o48 = {}; |
| // 17081 |
| o6["4"] = o48; |
| // 17082 |
| o48.length = 2; |
| // 17083 |
| o49 = {}; |
| // 17084 |
| o48["0"] = o49; |
| // undefined |
| o48 = null; |
| // 17085 |
| o49.type = "application/x-vnd.google.update3webcontrol.3"; |
| // undefined |
| o49 = null; |
| // 17086 |
| o2.getItem = f81632121_482; |
| // undefined |
| o2 = null; |
| // 17087 |
| f81632121_482.returns.push(null); |
| // 17090 |
| f81632121_467.returns.push(1374851244329); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096"); |
| // 17093 |
| o2 = {}; |
| // 17094 |
| f81632121_70.returns.push(o2); |
| // 17095 |
| // 17096 |
| o2.open = f81632121_1294; |
| // 17097 |
| f81632121_1294.returns.push(undefined); |
| // 17098 |
| o2.setRequestHeader = f81632121_1295; |
| // 17099 |
| f81632121_1295.returns.push(undefined); |
| // 17102 |
| f81632121_1295.returns.push(undefined); |
| // 17103 |
| o2.send = f81632121_1296; |
| // 17104 |
| f81632121_1296.returns.push(undefined); |
| // 17106 |
| f81632121_1418.returns.push({__JSBNG_unknown_function:true}); |
| // 17113 |
| f81632121_508.returns.push(o196); |
| // 17116 |
| o196.__FB_TOKEN = void 0; |
| // 17117 |
| // 17118 |
| o196.getElementsByTagName = f81632121_502; |
| // 17120 |
| o196.querySelectorAll = f81632121_504; |
| // 17121 |
| o48 = {}; |
| // 17122 |
| f81632121_504.returns.push(o48); |
| // 17123 |
| o48.length = 1; |
| // 17124 |
| o48["0"] = o137; |
| // undefined |
| o48 = null; |
| // 17128 |
| o48 = {}; |
| // 17129 |
| f81632121_504.returns.push(o48); |
| // 17130 |
| o48.length = 1; |
| // 17131 |
| o49 = {}; |
| // 17132 |
| o48["0"] = o49; |
| // undefined |
| o48 = null; |
| // 17136 |
| o48 = {}; |
| // 17137 |
| f81632121_504.returns.push(o48); |
| // 17138 |
| o48.length = 1; |
| // 17139 |
| o50 = {}; |
| // 17140 |
| o48["0"] = o50; |
| // undefined |
| o48 = null; |
| // 17144 |
| o48 = {}; |
| // 17145 |
| f81632121_504.returns.push(o48); |
| // 17146 |
| o48.length = 1; |
| // 17147 |
| o48["0"] = o71; |
| // undefined |
| o48 = null; |
| // 17151 |
| f81632121_513.returns.push(false); |
| // 17156 |
| f81632121_513.returns.push(true); |
| // 17160 |
| o48 = {}; |
| // 17161 |
| f81632121_504.returns.push(o48); |
| // 17162 |
| o48.length = 1; |
| // 17163 |
| o65 = {}; |
| // 17164 |
| o48["0"] = o65; |
| // undefined |
| o48 = null; |
| // 17165 |
| o65.__FB_TOKEN = void 0; |
| // 17166 |
| // undefined |
| o65 = null; |
| // 17167 |
| o71.contains = f81632121_645; |
| // undefined |
| o71 = null; |
| // 17169 |
| f81632121_645.returns.push(true); |
| // 17173 |
| o48 = {}; |
| // 17174 |
| f81632121_504.returns.push(o48); |
| // 17175 |
| o48.length = 1; |
| // 17176 |
| o65 = {}; |
| // 17177 |
| o48["0"] = o65; |
| // undefined |
| o48 = null; |
| // undefined |
| o65 = null; |
| // 17178 |
| o196.nodeName = "DIV"; |
| // 17179 |
| o196.getAttribute = f81632121_506; |
| // 17180 |
| o196.hasAttribute = f81632121_507; |
| // 17182 |
| f81632121_507.returns.push(false); |
| // 17183 |
| o196.JSBNG__addEventListener = f81632121_468; |
| // 17185 |
| f81632121_468.returns.push(undefined); |
| // 17186 |
| o196.JSBNG__onkeydown = null; |
| // undefined |
| o196 = null; |
| // 17188 |
| o137.nodeName = "A"; |
| // 17189 |
| o137.__FB_TOKEN = void 0; |
| // 17190 |
| // 17192 |
| o137.hasAttribute = f81632121_507; |
| // 17194 |
| f81632121_507.returns.push(false); |
| // 17195 |
| o137.JSBNG__addEventListener = f81632121_468; |
| // 17197 |
| f81632121_468.returns.push(undefined); |
| // 17198 |
| o137.JSBNG__onclick = null; |
| // 17204 |
| o197.remove = f81632121_1114; |
| // undefined |
| o197 = null; |
| // 17205 |
| f81632121_1114.returns.push(undefined); |
| // 17209 |
| f81632121_1114.returns.push(undefined); |
| // 17210 |
| o48 = {}; |
| // 17211 |
| o49.classList = o48; |
| // undefined |
| o49 = null; |
| // 17213 |
| o48.add = f81632121_602; |
| // undefined |
| o48 = null; |
| // 17214 |
| f81632121_602.returns.push(undefined); |
| // 17215 |
| o50.cloneNode = f81632121_1871; |
| // 17216 |
| o48 = {}; |
| // 17217 |
| f81632121_1871.returns.push(o48); |
| // 17218 |
| o49 = {}; |
| // undefined |
| fo81632121_2264_firstChild = function() { return fo81632121_2264_firstChild.returns[fo81632121_2264_firstChild.inst++]; }; |
| fo81632121_2264_firstChild.returns = []; |
| fo81632121_2264_firstChild.inst = 0; |
| defineGetter(o48, "firstChild", fo81632121_2264_firstChild, undefined); |
| // undefined |
| fo81632121_2264_firstChild.returns.push(o49); |
| // undefined |
| fo81632121_2264_firstChild.returns.push(o49); |
| // 17221 |
| o49.parentNode = o48; |
| // 17223 |
| o48.removeChild = f81632121_521; |
| // 17224 |
| f81632121_521.returns.push(o49); |
| // undefined |
| o49 = null; |
| // 17225 |
| o49 = {}; |
| // undefined |
| fo81632121_2264_firstChild.returns.push(o49); |
| // undefined |
| fo81632121_2264_firstChild.returns.push(o49); |
| // 17228 |
| o49.parentNode = o48; |
| // 17231 |
| f81632121_521.returns.push(o49); |
| // undefined |
| o49 = null; |
| // undefined |
| fo81632121_2264_firstChild.returns.push(null); |
| // 17234 |
| o49 = {}; |
| // 17235 |
| f81632121_474.returns.push(o49); |
| // 17237 |
| o65 = {}; |
| // 17238 |
| f81632121_598.returns.push(o65); |
| // 17239 |
| o49.appendChild = f81632121_478; |
| // 17240 |
| f81632121_478.returns.push(o65); |
| // undefined |
| o65 = null; |
| // 17241 |
| o48.appendChild = f81632121_478; |
| // 17242 |
| f81632121_478.returns.push(o49); |
| // undefined |
| o49 = null; |
| // 17243 |
| o50.parentNode = o137; |
| // 17244 |
| o48.__html = void 0; |
| // undefined |
| o48 = null; |
| // 17246 |
| o48 = {}; |
| // 17247 |
| f81632121_474.returns.push(o48); |
| // undefined |
| o48 = null; |
| // 17249 |
| f81632121_2270 = function() { return f81632121_2270.returns[f81632121_2270.inst++]; }; |
| f81632121_2270.returns = []; |
| f81632121_2270.inst = 0; |
| // 17250 |
| o137.replaceChild = f81632121_2270; |
| // undefined |
| o137 = null; |
| // 17251 |
| f81632121_2270.returns.push(o50); |
| // undefined |
| o50 = null; |
| // 17259 |
| o3.platform = "Win32"; |
| // 17262 |
| o48 = {}; |
| // undefined |
| fo81632121_2240_Shockwave_Flash = function() { return fo81632121_2240_Shockwave_Flash.returns[fo81632121_2240_Shockwave_Flash.inst++]; }; |
| fo81632121_2240_Shockwave_Flash.returns = []; |
| fo81632121_2240_Shockwave_Flash.inst = 0; |
| defineGetter(o6, "Shockwave Flash", fo81632121_2240_Shockwave_Flash, undefined); |
| // undefined |
| fo81632121_2240_Shockwave_Flash.returns.push(o48); |
| // undefined |
| o48 = null; |
| // 17265 |
| o48 = {}; |
| // undefined |
| fo81632121_2240_Shockwave_Flash.returns.push(o48); |
| // 17267 |
| o48.description = "Shockwave Flash 11.8 r800"; |
| // undefined |
| o48 = null; |
| // 17268 |
| o48 = {}; |
| // 17269 |
| o3.mimeTypes = o48; |
| // undefined |
| o3 = null; |
| // 17271 |
| o3 = {}; |
| // undefined |
| fo81632121_2273_application_x_shockwave_flash = function() { return fo81632121_2273_application_x_shockwave_flash.returns[fo81632121_2273_application_x_shockwave_flash.inst++]; }; |
| fo81632121_2273_application_x_shockwave_flash.returns = []; |
| fo81632121_2273_application_x_shockwave_flash.inst = 0; |
| defineGetter(o48, "application/x-shockwave-flash", fo81632121_2273_application_x_shockwave_flash, undefined); |
| // undefined |
| o48 = null; |
| // undefined |
| fo81632121_2273_application_x_shockwave_flash.returns.push(o3); |
| // undefined |
| o3 = null; |
| // 17274 |
| o3 = {}; |
| // undefined |
| fo81632121_2273_application_x_shockwave_flash.returns.push(o3); |
| // 17276 |
| o48 = {}; |
| // 17277 |
| o3.enabledPlugin = o48; |
| // undefined |
| o3 = null; |
| // undefined |
| o48 = null; |
| // 17278 |
| o0.readyState = "complete"; |
| // 17281 |
| o3 = {}; |
| // 17282 |
| f81632121_471.returns.push(o3); |
| // 17283 |
| o3["0"] = o16; |
| // undefined |
| o3 = null; |
| // 17286 |
| o3 = {}; |
| // 17287 |
| f81632121_476.returns.push(o3); |
| // 17288 |
| f81632121_478.returns.push(o3); |
| // 17289 |
| o3.parentNode = o16; |
| // 17291 |
| f81632121_521.returns.push(o3); |
| // undefined |
| o3 = null; |
| // 17293 |
| o3 = {}; |
| // 17294 |
| f81632121_471.returns.push(o3); |
| // 17295 |
| o3["0"] = o16; |
| // undefined |
| o3 = null; |
| // 17297 |
| o3 = {}; |
| // 17298 |
| f81632121_476.returns.push(o3); |
| // 17299 |
| o3.setAttribute = f81632121_575; |
| // 17300 |
| f81632121_575.returns.push(undefined); |
| // 17302 |
| f81632121_575.returns.push(undefined); |
| // 17304 |
| f81632121_478.returns.push(o3); |
| // 17305 |
| f81632121_2281 = function() { return f81632121_2281.returns[f81632121_2281.inst++]; }; |
| f81632121_2281.returns = []; |
| f81632121_2281.inst = 0; |
| // 17306 |
| o3.GetVariable = f81632121_2281; |
| // undefined |
| o3 = null; |
| // 17308 |
| f81632121_2281.returns.push("WIN 11,8,800,97"); |
| // 17310 |
| o5.host = "jsbngssl.www.facebook.com"; |
| // undefined |
| o5 = null; |
| // 17312 |
| o3 = {}; |
| // 17313 |
| f81632121_476.returns.push(o3); |
| // 17314 |
| o3.setAttribute = f81632121_575; |
| // 17315 |
| f81632121_575.returns.push(undefined); |
| // 17316 |
| o5 = {}; |
| // 17317 |
| o3.style = o5; |
| // 17318 |
| // undefined |
| o5 = null; |
| // 17321 |
| f81632121_478.returns.push(o3); |
| // undefined |
| o3 = null; |
| // 17323 |
| o3 = {}; |
| // 17324 |
| f81632121_508.returns.push(o3); |
| // 17325 |
| o3.firstChild = null; |
| // 17328 |
| f81632121_466.returns.push(0.23936162423342466); |
| // 17330 |
| f81632121_467.returns.push(1374851244436); |
| // 17332 |
| f81632121_467.returns.push(1374851244436); |
| // 17338 |
| f81632121_467.returns.push(1374851244437); |
| // 17340 |
| f81632121_467.returns.push(1374851244437); |
| // 17342 |
| f81632121_467.returns.push(1374851244437); |
| // 17344 |
| f81632121_467.returns.push(1374851244437); |
| // 17346 |
| f81632121_467.returns.push(1374851244437); |
| // 17347 |
| o3.nodeType = 1; |
| // 17348 |
| o3.parentNode = o83; |
| // 17349 |
| o3.nextSibling = null; |
| // 17350 |
| o83.removeChild = f81632121_521; |
| // 17351 |
| f81632121_521.returns.push(o3); |
| // 17352 |
| // 17353 |
| o83.appendChild = f81632121_478; |
| // undefined |
| o83 = null; |
| // 17354 |
| f81632121_478.returns.push(o3); |
| // undefined |
| o3 = null; |
| // 17356 |
| f81632121_467.returns.push(1374851244439); |
| // 17358 |
| f81632121_467.returns.push(1374851244439); |
| // 17361 |
| f81632121_467.returns.push(1374851244440); |
| // 17363 |
| f81632121_467.returns.push(1374851244440); |
| // 17365 |
| f81632121_467.returns.push(1374851244440); |
| // 17367 |
| f81632121_467.returns.push(1374851244440); |
| // 17369 |
| f81632121_467.returns.push(1374851244440); |
| // 17373 |
| f81632121_467.returns.push(1374851244447); |
| // 17375 |
| f81632121_467.returns.push(1374851244447); |
| // 17376 |
| f81632121_13.returns.push(78); |
| // 17378 |
| o3 = {}; |
| // 17379 |
| f81632121_476.returns.push(o3); |
| // 17380 |
| // 17381 |
| // 17382 |
| o3.getElementsByTagName = f81632121_502; |
| // 17383 |
| o5 = {}; |
| // 17384 |
| f81632121_502.returns.push(o5); |
| // 17385 |
| o5.length = 0; |
| // undefined |
| o5 = null; |
| // 17387 |
| o5 = {}; |
| // 17388 |
| o3.childNodes = o5; |
| // undefined |
| o3 = null; |
| // 17389 |
| o5.nodeType = void 0; |
| // undefined |
| o5 = null; |
| // 17391 |
| o3 = {}; |
| // 17392 |
| f81632121_476.returns.push(o3); |
| // 17393 |
| // 17394 |
| // 17395 |
| o3.getElementsByTagName = f81632121_502; |
| // 17396 |
| o5 = {}; |
| // 17397 |
| f81632121_502.returns.push(o5); |
| // 17398 |
| o5.length = 0; |
| // undefined |
| o5 = null; |
| // 17400 |
| o5 = {}; |
| // 17401 |
| o3.childNodes = o5; |
| // undefined |
| o3 = null; |
| // 17402 |
| o5.nodeType = void 0; |
| // undefined |
| o5 = null; |
| // 17404 |
| o3 = {}; |
| // 17405 |
| f81632121_476.returns.push(o3); |
| // 17406 |
| // 17407 |
| // 17408 |
| o3.getElementsByTagName = f81632121_502; |
| // 17409 |
| o5 = {}; |
| // 17410 |
| f81632121_502.returns.push(o5); |
| // 17411 |
| o5.length = 0; |
| // undefined |
| o5 = null; |
| // 17413 |
| o5 = {}; |
| // 17414 |
| o3.childNodes = o5; |
| // undefined |
| o3 = null; |
| // 17415 |
| o5.nodeType = void 0; |
| // undefined |
| o5 = null; |
| // 17417 |
| o3 = {}; |
| // 17418 |
| f81632121_476.returns.push(o3); |
| // 17419 |
| // 17420 |
| // 17421 |
| o3.getElementsByTagName = f81632121_502; |
| // 17422 |
| o5 = {}; |
| // 17423 |
| f81632121_502.returns.push(o5); |
| // 17424 |
| o5.length = 0; |
| // undefined |
| o5 = null; |
| // 17426 |
| o5 = {}; |
| // 17427 |
| o3.childNodes = o5; |
| // undefined |
| o3 = null; |
| // 17428 |
| o5.nodeType = void 0; |
| // undefined |
| o5 = null; |
| // 17430 |
| o3 = {}; |
| // 17431 |
| f81632121_476.returns.push(o3); |
| // 17432 |
| // 17433 |
| // 17434 |
| o3.getElementsByTagName = f81632121_502; |
| // 17435 |
| o5 = {}; |
| // 17436 |
| f81632121_502.returns.push(o5); |
| // 17437 |
| o5.length = 0; |
| // undefined |
| o5 = null; |
| // 17439 |
| o5 = {}; |
| // 17440 |
| o3.childNodes = o5; |
| // undefined |
| o3 = null; |
| // 17441 |
| o5.nodeType = void 0; |
| // undefined |
| o5 = null; |
| // 17443 |
| o3 = {}; |
| // 17444 |
| f81632121_476.returns.push(o3); |
| // 17445 |
| // 17446 |
| // 17447 |
| o3.getElementsByTagName = f81632121_502; |
| // 17448 |
| o5 = {}; |
| // 17449 |
| f81632121_502.returns.push(o5); |
| // 17450 |
| o5.length = 0; |
| // undefined |
| o5 = null; |
| // 17452 |
| o5 = {}; |
| // 17453 |
| o3.childNodes = o5; |
| // undefined |
| o3 = null; |
| // 17454 |
| o5.nodeType = void 0; |
| // 17456 |
| o3 = {}; |
| // 17457 |
| f81632121_476.returns.push(o3); |
| // 17458 |
| // 17459 |
| // 17460 |
| o3.getElementsByTagName = f81632121_502; |
| // 17461 |
| o48 = {}; |
| // 17462 |
| f81632121_502.returns.push(o48); |
| // 17463 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 17465 |
| o48 = {}; |
| // 17466 |
| o3.childNodes = o48; |
| // undefined |
| o3 = null; |
| // 17467 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // 17469 |
| o3 = {}; |
| // 17470 |
| f81632121_476.returns.push(o3); |
| // 17471 |
| // 17472 |
| // 17473 |
| o3.getElementsByTagName = f81632121_502; |
| // 17474 |
| o48 = {}; |
| // 17475 |
| f81632121_502.returns.push(o48); |
| // 17476 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 17478 |
| o48 = {}; |
| // 17479 |
| o3.childNodes = o48; |
| // undefined |
| o3 = null; |
| // 17480 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // 17482 |
| o3 = {}; |
| // 17483 |
| f81632121_476.returns.push(o3); |
| // 17484 |
| // 17485 |
| // 17486 |
| o3.getElementsByTagName = f81632121_502; |
| // 17487 |
| o48 = {}; |
| // 17488 |
| f81632121_502.returns.push(o48); |
| // 17489 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 17491 |
| o48 = {}; |
| // 17492 |
| o3.childNodes = o48; |
| // undefined |
| o3 = null; |
| // 17493 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // 17495 |
| o3 = {}; |
| // 17496 |
| f81632121_476.returns.push(o3); |
| // 17497 |
| // 17498 |
| // 17499 |
| o3.getElementsByTagName = f81632121_502; |
| // 17500 |
| o48 = {}; |
| // 17501 |
| f81632121_502.returns.push(o48); |
| // 17502 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 17504 |
| o48 = {}; |
| // 17505 |
| o3.childNodes = o48; |
| // undefined |
| o3 = null; |
| // 17506 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // 17508 |
| o3 = {}; |
| // 17509 |
| f81632121_476.returns.push(o3); |
| // 17510 |
| // 17511 |
| // 17512 |
| o3.getElementsByTagName = f81632121_502; |
| // 17513 |
| o48 = {}; |
| // 17514 |
| f81632121_502.returns.push(o48); |
| // 17515 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 17517 |
| o48 = {}; |
| // 17518 |
| o3.childNodes = o48; |
| // undefined |
| o3 = null; |
| // 17519 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // 17521 |
| o3 = {}; |
| // 17522 |
| f81632121_476.returns.push(o3); |
| // 17523 |
| // 17524 |
| // 17525 |
| o3.getElementsByTagName = f81632121_502; |
| // 17526 |
| o48 = {}; |
| // 17527 |
| f81632121_502.returns.push(o48); |
| // 17528 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 17530 |
| o48 = {}; |
| // 17531 |
| o3.childNodes = o48; |
| // undefined |
| o3 = null; |
| // 17532 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // 17534 |
| o3 = {}; |
| // 17535 |
| f81632121_476.returns.push(o3); |
| // 17536 |
| // 17537 |
| // 17538 |
| o3.getElementsByTagName = f81632121_502; |
| // 17539 |
| o48 = {}; |
| // 17540 |
| f81632121_502.returns.push(o48); |
| // 17541 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 17543 |
| o48 = {}; |
| // 17544 |
| o3.childNodes = o48; |
| // undefined |
| o3 = null; |
| // 17545 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // 17547 |
| o3 = {}; |
| // 17548 |
| f81632121_476.returns.push(o3); |
| // 17549 |
| // 17550 |
| // 17551 |
| o3.getElementsByTagName = f81632121_502; |
| // 17552 |
| o48 = {}; |
| // 17553 |
| f81632121_502.returns.push(o48); |
| // 17554 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 17556 |
| o48 = {}; |
| // 17557 |
| o3.childNodes = o48; |
| // undefined |
| o3 = null; |
| // 17558 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // 17560 |
| o3 = {}; |
| // 17561 |
| f81632121_476.returns.push(o3); |
| // 17562 |
| // 17563 |
| // 17564 |
| o3.getElementsByTagName = f81632121_502; |
| // 17565 |
| o48 = {}; |
| // 17566 |
| f81632121_502.returns.push(o48); |
| // 17567 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 17569 |
| o48 = {}; |
| // 17570 |
| o3.childNodes = o48; |
| // undefined |
| o3 = null; |
| // 17571 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // 17573 |
| o3 = {}; |
| // 17574 |
| f81632121_476.returns.push(o3); |
| // 17575 |
| // 17576 |
| // 17577 |
| o3.getElementsByTagName = f81632121_502; |
| // 17578 |
| o48 = {}; |
| // 17579 |
| f81632121_502.returns.push(o48); |
| // 17580 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 17582 |
| o48 = {}; |
| // 17583 |
| o3.childNodes = o48; |
| // undefined |
| o3 = null; |
| // 17584 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // 17586 |
| o3 = {}; |
| // 17587 |
| f81632121_476.returns.push(o3); |
| // 17588 |
| // 17589 |
| // 17590 |
| o3.getElementsByTagName = f81632121_502; |
| // 17591 |
| o48 = {}; |
| // 17592 |
| f81632121_502.returns.push(o48); |
| // 17593 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 17595 |
| o48 = {}; |
| // 17596 |
| o3.childNodes = o48; |
| // undefined |
| o3 = null; |
| // 17597 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // 17599 |
| o3 = {}; |
| // 17600 |
| f81632121_476.returns.push(o3); |
| // 17601 |
| // 17602 |
| // 17603 |
| o3.getElementsByTagName = f81632121_502; |
| // 17604 |
| o48 = {}; |
| // 17605 |
| f81632121_502.returns.push(o48); |
| // 17606 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 17608 |
| o48 = {}; |
| // 17609 |
| o3.childNodes = o48; |
| // undefined |
| o3 = null; |
| // 17610 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // 17612 |
| o3 = {}; |
| // 17613 |
| f81632121_476.returns.push(o3); |
| // 17614 |
| // 17615 |
| // 17616 |
| o3.getElementsByTagName = f81632121_502; |
| // 17617 |
| o48 = {}; |
| // 17618 |
| f81632121_502.returns.push(o48); |
| // 17619 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 17621 |
| o48 = {}; |
| // 17622 |
| o3.childNodes = o48; |
| // undefined |
| o3 = null; |
| // 17623 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // 17625 |
| o3 = {}; |
| // 17626 |
| f81632121_476.returns.push(o3); |
| // 17627 |
| // 17628 |
| // 17629 |
| o3.getElementsByTagName = f81632121_502; |
| // 17630 |
| o48 = {}; |
| // 17631 |
| f81632121_502.returns.push(o48); |
| // 17632 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 17634 |
| o48 = {}; |
| // 17635 |
| o3.childNodes = o48; |
| // undefined |
| o3 = null; |
| // 17636 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // 17638 |
| o3 = {}; |
| // 17639 |
| f81632121_476.returns.push(o3); |
| // 17640 |
| // 17641 |
| // 17642 |
| o3.getElementsByTagName = f81632121_502; |
| // 17643 |
| o48 = {}; |
| // 17644 |
| f81632121_502.returns.push(o48); |
| // 17645 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 17647 |
| o48 = {}; |
| // 17648 |
| o3.childNodes = o48; |
| // undefined |
| o3 = null; |
| // 17649 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // 17651 |
| o3 = {}; |
| // 17652 |
| f81632121_476.returns.push(o3); |
| // 17653 |
| // 17654 |
| // 17655 |
| o3.getElementsByTagName = f81632121_502; |
| // 17656 |
| o48 = {}; |
| // 17657 |
| f81632121_502.returns.push(o48); |
| // 17658 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 17660 |
| o48 = {}; |
| // 17661 |
| o3.childNodes = o48; |
| // undefined |
| o3 = null; |
| // 17662 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096"); |
| // 17665 |
| o3 = {}; |
| // 17666 |
| f81632121_476.returns.push(o3); |
| // 17667 |
| // 17668 |
| // 17669 |
| o3.getElementsByTagName = f81632121_502; |
| // 17670 |
| o48 = {}; |
| // 17671 |
| f81632121_502.returns.push(o48); |
| // 17672 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 17674 |
| o48 = {}; |
| // 17675 |
| o3.childNodes = o48; |
| // undefined |
| o3 = null; |
| // 17676 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // 17678 |
| o3 = {}; |
| // 17679 |
| f81632121_476.returns.push(o3); |
| // 17680 |
| // 17681 |
| // 17682 |
| o3.getElementsByTagName = f81632121_502; |
| // 17683 |
| o48 = {}; |
| // 17684 |
| f81632121_502.returns.push(o48); |
| // 17685 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 17687 |
| o48 = {}; |
| // 17688 |
| o3.childNodes = o48; |
| // undefined |
| o3 = null; |
| // 17689 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // 17691 |
| o3 = {}; |
| // 17692 |
| f81632121_476.returns.push(o3); |
| // 17693 |
| // 17694 |
| // 17695 |
| o3.getElementsByTagName = f81632121_502; |
| // 17696 |
| o48 = {}; |
| // 17697 |
| f81632121_502.returns.push(o48); |
| // 17698 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 17700 |
| o48 = {}; |
| // 17701 |
| o3.childNodes = o48; |
| // undefined |
| o3 = null; |
| // 17702 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // 17704 |
| o3 = {}; |
| // 17705 |
| f81632121_476.returns.push(o3); |
| // 17706 |
| // 17707 |
| // 17708 |
| o3.getElementsByTagName = f81632121_502; |
| // 17709 |
| o48 = {}; |
| // 17710 |
| f81632121_502.returns.push(o48); |
| // 17711 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 17713 |
| o48 = {}; |
| // 17714 |
| o3.childNodes = o48; |
| // undefined |
| o3 = null; |
| // 17715 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // 17717 |
| o3 = {}; |
| // 17718 |
| f81632121_476.returns.push(o3); |
| // 17719 |
| // 17720 |
| // 17721 |
| o3.getElementsByTagName = f81632121_502; |
| // 17722 |
| o48 = {}; |
| // 17723 |
| f81632121_502.returns.push(o48); |
| // 17724 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 17726 |
| o48 = {}; |
| // 17727 |
| o3.childNodes = o48; |
| // undefined |
| o3 = null; |
| // 17728 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // 17730 |
| o3 = {}; |
| // 17731 |
| f81632121_476.returns.push(o3); |
| // 17732 |
| // 17733 |
| // 17734 |
| o3.getElementsByTagName = f81632121_502; |
| // 17735 |
| o48 = {}; |
| // 17736 |
| f81632121_502.returns.push(o48); |
| // 17737 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 17739 |
| o48 = {}; |
| // 17740 |
| o3.childNodes = o48; |
| // undefined |
| o3 = null; |
| // 17741 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // 17743 |
| o3 = {}; |
| // 17744 |
| f81632121_476.returns.push(o3); |
| // 17745 |
| // 17746 |
| // 17747 |
| o3.getElementsByTagName = f81632121_502; |
| // 17748 |
| o48 = {}; |
| // 17749 |
| f81632121_502.returns.push(o48); |
| // 17750 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 17752 |
| o48 = {}; |
| // 17753 |
| o3.childNodes = o48; |
| // undefined |
| o3 = null; |
| // 17754 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // 17756 |
| o3 = {}; |
| // 17757 |
| f81632121_476.returns.push(o3); |
| // 17758 |
| // 17759 |
| // 17760 |
| o3.getElementsByTagName = f81632121_502; |
| // 17761 |
| o48 = {}; |
| // 17762 |
| f81632121_502.returns.push(o48); |
| // 17763 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 17765 |
| o48 = {}; |
| // 17766 |
| o3.childNodes = o48; |
| // undefined |
| o3 = null; |
| // 17767 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // 17769 |
| o3 = {}; |
| // 17770 |
| f81632121_476.returns.push(o3); |
| // 17771 |
| // 17772 |
| // 17773 |
| o3.getElementsByTagName = f81632121_502; |
| // 17774 |
| o48 = {}; |
| // 17775 |
| f81632121_502.returns.push(o48); |
| // 17776 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 17778 |
| o48 = {}; |
| // 17779 |
| o3.childNodes = o48; |
| // undefined |
| o3 = null; |
| // 17780 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // 17782 |
| o3 = {}; |
| // 17783 |
| f81632121_476.returns.push(o3); |
| // 17784 |
| // 17785 |
| // 17786 |
| o3.getElementsByTagName = f81632121_502; |
| // 17787 |
| o48 = {}; |
| // 17788 |
| f81632121_502.returns.push(o48); |
| // 17789 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 17791 |
| o48 = {}; |
| // 17792 |
| o3.childNodes = o48; |
| // undefined |
| o3 = null; |
| // 17793 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // 17794 |
| f81632121_1620.__reactDontBind = void 0; |
| // 17795 |
| f81632121_1619.__reactDontBind = void 0; |
| // 17797 |
| o3 = {}; |
| // 17798 |
| f81632121_476.returns.push(o3); |
| // 17799 |
| // 17800 |
| // 17801 |
| o3.getElementsByTagName = f81632121_502; |
| // 17802 |
| o48 = {}; |
| // 17803 |
| f81632121_502.returns.push(o48); |
| // 17804 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 17806 |
| o48 = {}; |
| // 17807 |
| o3.childNodes = o48; |
| // undefined |
| o3 = null; |
| // 17808 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // 17810 |
| o3 = {}; |
| // 17811 |
| f81632121_476.returns.push(o3); |
| // 17812 |
| // 17813 |
| // 17814 |
| o3.getElementsByTagName = f81632121_502; |
| // 17815 |
| o48 = {}; |
| // 17816 |
| f81632121_502.returns.push(o48); |
| // 17817 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 17819 |
| o48 = {}; |
| // 17820 |
| o3.childNodes = o48; |
| // undefined |
| o3 = null; |
| // 17821 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // 17823 |
| o3 = {}; |
| // 17824 |
| f81632121_476.returns.push(o3); |
| // 17825 |
| // 17826 |
| // 17827 |
| o3.getElementsByTagName = f81632121_502; |
| // 17828 |
| o48 = {}; |
| // 17829 |
| f81632121_502.returns.push(o48); |
| // 17830 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 17832 |
| o48 = {}; |
| // 17833 |
| o3.childNodes = o48; |
| // undefined |
| o3 = null; |
| // 17834 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // 17836 |
| o3 = {}; |
| // 17837 |
| f81632121_476.returns.push(o3); |
| // 17838 |
| // 17839 |
| // 17840 |
| o3.getElementsByTagName = f81632121_502; |
| // 17841 |
| o48 = {}; |
| // 17842 |
| f81632121_502.returns.push(o48); |
| // 17843 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 17845 |
| o48 = {}; |
| // 17846 |
| o3.childNodes = o48; |
| // undefined |
| o3 = null; |
| // 17847 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // 17849 |
| o3 = {}; |
| // 17850 |
| f81632121_476.returns.push(o3); |
| // 17851 |
| // 17852 |
| // 17853 |
| o3.getElementsByTagName = f81632121_502; |
| // 17854 |
| o48 = {}; |
| // 17855 |
| f81632121_502.returns.push(o48); |
| // 17856 |
| o48.length = 0; |
| // undefined |
| o48 = null; |
| // 17858 |
| o48 = {}; |
| // 17859 |
| o3.childNodes = o48; |
| // undefined |
| o3 = null; |
| // 17860 |
| o48.nodeType = void 0; |
| // undefined |
| o48 = null; |
| // 17863 |
| f81632121_467.returns.push(1374851244544); |
| // 17879 |
| f81632121_513.returns.push(false); |
| // 17886 |
| o3 = {}; |
| // 17887 |
| o79.classList = o3; |
| // 17889 |
| o3.contains = f81632121_513; |
| // undefined |
| o3 = null; |
| // 17890 |
| f81632121_513.returns.push(false); |
| // 17891 |
| o79.parentNode = o46; |
| // undefined |
| o79 = null; |
| // 17892 |
| o3 = {}; |
| // 17893 |
| o46.classList = o3; |
| // 17895 |
| o3.contains = f81632121_513; |
| // undefined |
| o3 = null; |
| // 17896 |
| f81632121_513.returns.push(false); |
| // 17897 |
| o3 = {}; |
| // 17898 |
| o46.parentNode = o3; |
| // 17899 |
| o48 = {}; |
| // 17900 |
| o3.classList = o48; |
| // 17902 |
| o48.contains = f81632121_513; |
| // undefined |
| o48 = null; |
| // 17903 |
| f81632121_513.returns.push(false); |
| // 17904 |
| o3.parentNode = o199; |
| // undefined |
| o3 = null; |
| // undefined |
| o199 = null; |
| // 17908 |
| f81632121_513.returns.push(false); |
| // 17913 |
| f81632121_513.returns.push(true); |
| // 17914 |
| o198.getElementsByTagName = f81632121_502; |
| // 17916 |
| o198.querySelectorAll = f81632121_504; |
| // 17917 |
| o3 = {}; |
| // 17918 |
| f81632121_504.returns.push(o3); |
| // 17919 |
| o3.length = 1; |
| // 17920 |
| o3["0"] = o64; |
| // undefined |
| o3 = null; |
| // 17921 |
| o64.offsetWidth = 205; |
| // 17922 |
| o64.offsetHeight = 0; |
| // undefined |
| o64 = null; |
| // 17926 |
| o3 = {}; |
| // 17927 |
| f81632121_504.returns.push(o3); |
| // 17928 |
| o3.length = 1; |
| // 17929 |
| o3["0"] = o46; |
| // undefined |
| o3 = null; |
| // 17930 |
| o46.offsetWidth = 0; |
| // 17931 |
| o46.offsetHeight = 0; |
| // undefined |
| o46 = null; |
| // 17932 |
| o198.offsetWidth = 205; |
| // 17933 |
| o198.offsetHeight = 25; |
| // undefined |
| o198 = null; |
| // 17934 |
| o5.__html = void 0; |
| // 17935 |
| o5.cloneNode = void 0; |
| // undefined |
| o5 = null; |
| // 17936 |
| o3 = {}; |
| // 17937 |
| o5 = {}; |
| // 17939 |
| o3.transport = o2; |
| // 17940 |
| o2.readyState = 1; |
| // 17941 |
| o46 = {}; |
| // 17942 |
| o48 = {}; |
| // 17944 |
| o46.nodeType = void 0; |
| // 17945 |
| o46.length = 1; |
| // 17946 |
| o46["0"] = "WD1Wm"; |
| // 17949 |
| f81632121_467.returns.push(1374851244566); |
| // 17952 |
| f81632121_467.returns.push(1374851244567); |
| // 17957 |
| f81632121_2241.returns.push(undefined); |
| // 17961 |
| o49 = {}; |
| // 17963 |
| o49.length = 2; |
| // 17964 |
| o50 = {}; |
| // 17965 |
| o49["0"] = o50; |
| // 17966 |
| o50.type = "application/x-shockwave-flash"; |
| // undefined |
| o50 = null; |
| // 17968 |
| o50 = {}; |
| // 17970 |
| o50.length = 1; |
| // 17971 |
| o64 = {}; |
| // 17972 |
| o50["0"] = o64; |
| // 17973 |
| o64.type = "application/vnd.chromium.remoting-viewer"; |
| // undefined |
| o64 = null; |
| // 17975 |
| o64 = {}; |
| // 17977 |
| o64.length = 1; |
| // 17978 |
| o65 = {}; |
| // 17979 |
| o64["0"] = o65; |
| // 17980 |
| o65.type = "application/x-nacl"; |
| // undefined |
| o65 = null; |
| // 17982 |
| o65 = {}; |
| // 17984 |
| o65.length = 2; |
| // 17985 |
| o66 = {}; |
| // 17986 |
| o65["0"] = o66; |
| // 17987 |
| o66.type = "application/pdf"; |
| // undefined |
| o66 = null; |
| // 17989 |
| o66 = {}; |
| // 17991 |
| o66.length = 2; |
| // 17992 |
| o67 = {}; |
| // 17993 |
| o66["0"] = o67; |
| // 17994 |
| o67.type = "application/x-vnd.google.update3webcontrol.3"; |
| // undefined |
| o67 = null; |
| // 17996 |
| o67 = {}; |
| // 17997 |
| f81632121_508.returns.push(o67); |
| // 17998 |
| o68 = {}; |
| // 17999 |
| o67.classList = o68; |
| // undefined |
| o67 = null; |
| // 18001 |
| o68.remove = f81632121_1114; |
| // undefined |
| o68 = null; |
| // 18002 |
| f81632121_1114.returns.push(undefined); |
| // 18004 |
| o67 = {}; |
| // 18005 |
| f81632121_508.returns.push(o67); |
| // 18006 |
| o68 = {}; |
| // 18007 |
| o67.classList = o68; |
| // undefined |
| o67 = null; |
| // 18009 |
| o68.remove = f81632121_1114; |
| // undefined |
| o68 = null; |
| // 18010 |
| f81632121_1114.returns.push(undefined); |
| // 18012 |
| f81632121_467.returns.push(1374851244573); |
| // 18015 |
| f81632121_467.returns.push(1374851244574); |
| // 18018 |
| f81632121_467.returns.push(1374851244574); |
| // 18020 |
| f81632121_467.returns.push(1374851244574); |
| // 18031 |
| f81632121_467.returns.push(1374851244579); |
| // 18036 |
| f81632121_467.returns.push(1374851244581); |
| // 18040 |
| f81632121_467.returns.push(1374851244581); |
| // 18048 |
| f81632121_1852.returns.push(undefined); |
| // 18050 |
| f81632121_14.returns.push(undefined); |
| // 18051 |
| f81632121_12.returns.push(79); |
| // 18058 |
| o67 = {}; |
| // 18059 |
| f81632121_474.returns.push(o67); |
| // 18061 |
| f81632121_467.returns.push(1374851244585); |
| // 18063 |
| o68 = {}; |
| // 18064 |
| f81632121_476.returns.push(o68); |
| // 18065 |
| // 18066 |
| // 18067 |
| // 18068 |
| // 18069 |
| // 18070 |
| // 18071 |
| o67.appendChild = f81632121_478; |
| // 18072 |
| f81632121_478.returns.push(o68); |
| // undefined |
| o68 = null; |
| // 18074 |
| f81632121_478.returns.push(o67); |
| // undefined |
| o67 = null; |
| // 18079 |
| o67 = {}; |
| // 18080 |
| f81632121_474.returns.push(o67); |
| // 18082 |
| f81632121_478.returns.push(o67); |
| // undefined |
| o67 = null; |
| // 18087 |
| o67 = {}; |
| // 18088 |
| f81632121_474.returns.push(o67); |
| // 18090 |
| f81632121_478.returns.push(o67); |
| // undefined |
| o67 = null; |
| // 18103 |
| o67 = {}; |
| // 18104 |
| f81632121_474.returns.push(o67); |
| // 18106 |
| f81632121_467.returns.push(1374851244591); |
| // 18108 |
| o68 = {}; |
| // 18109 |
| f81632121_476.returns.push(o68); |
| // 18110 |
| // 18111 |
| // 18112 |
| // 18113 |
| // 18114 |
| // 18115 |
| // 18116 |
| o67.appendChild = f81632121_478; |
| // 18117 |
| f81632121_478.returns.push(o68); |
| // undefined |
| o68 = null; |
| // 18119 |
| f81632121_478.returns.push(o67); |
| // undefined |
| o67 = null; |
| // 18124 |
| o67 = {}; |
| // 18125 |
| f81632121_474.returns.push(o67); |
| // 18127 |
| f81632121_478.returns.push(o67); |
| // undefined |
| o67 = null; |
| // 18132 |
| o67 = {}; |
| // 18133 |
| f81632121_474.returns.push(o67); |
| // 18135 |
| f81632121_478.returns.push(o67); |
| // undefined |
| o67 = null; |
| // 18140 |
| o67 = {}; |
| // 18141 |
| f81632121_474.returns.push(o67); |
| // 18143 |
| f81632121_478.returns.push(o67); |
| // undefined |
| o67 = null; |
| // 18148 |
| o67 = {}; |
| // 18149 |
| f81632121_474.returns.push(o67); |
| // 18151 |
| f81632121_478.returns.push(o67); |
| // undefined |
| o67 = null; |
| // 18161 |
| o188.offsetHeight = 626; |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096"); |
| // 18172 |
| o67 = {}; |
| // 18173 |
| o68 = {}; |
| // 18175 |
| o67.nodeType = void 0; |
| // 18176 |
| o67.length = 1; |
| // 18177 |
| o67["0"] = "NMNM4"; |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096"); |
| // 18181 |
| f81632121_12.returns.push(80); |
| // 18184 |
| o71 = {}; |
| // 18185 |
| f81632121_476.returns.push(o71); |
| // 18187 |
| o71.__html = void 0; |
| // 18189 |
| o79 = {}; |
| // 18190 |
| f81632121_474.returns.push(o79); |
| // 18193 |
| f81632121_478.returns.push(o79); |
| // undefined |
| o79 = null; |
| // 18194 |
| o79 = {}; |
| // 18195 |
| o71.style = o79; |
| // 18196 |
| // undefined |
| o79 = null; |
| // 18197 |
| o79 = {}; |
| // 18198 |
| f81632121_4.returns.push(o79); |
| // 18199 |
| o79.getPropertyValue = f81632121_1442; |
| // undefined |
| o79 = null; |
| // 18200 |
| f81632121_1442.returns.push(""); |
| // 18201 |
| o79 = {}; |
| // 18202 |
| f81632121_4.returns.push(o79); |
| // 18203 |
| o79.getPropertyValue = f81632121_1442; |
| // undefined |
| o79 = null; |
| // 18204 |
| f81632121_1442.returns.push(""); |
| // 18205 |
| o79 = {}; |
| // 18206 |
| f81632121_4.returns.push(o79); |
| // 18207 |
| o79.getPropertyValue = f81632121_1442; |
| // undefined |
| o79 = null; |
| // 18208 |
| f81632121_1442.returns.push(""); |
| // 18213 |
| f81632121_602.returns.push(undefined); |
| // 18215 |
| // 18216 |
| o79 = {}; |
| // 18217 |
| f81632121_71.returns.push(o79); |
| // 18218 |
| f81632121_466.returns.push(0.9777125425171107); |
| // 18219 |
| // undefined |
| o79 = null; |
| // 18220 |
| o71.parentNode = null; |
| // undefined |
| o71 = null; |
| // 18222 |
| o71 = {}; |
| // 18226 |
| o79 = {}; |
| // 18230 |
| o83 = {}; |
| // 18235 |
| o2.getResponseHeader = f81632121_1332; |
| // 18238 |
| f81632121_1332.returns.push("uLzHV1m5Dy2v/IO2QcgM3lldqL5hwPL/oCh+dU+gNaE="); |
| // 18241 |
| f81632121_1332.returns.push("uLzHV1m5Dy2v/IO2QcgM3lldqL5hwPL/oCh+dU+gNaE="); |
| // 18242 |
| // 18244 |
| o2.JSBNG__status = 200; |
| // 18248 |
| f81632121_467.returns.push(1374851244625); |
| // 18249 |
| o3._handleXHRResponse = f81632121_1333; |
| // 18251 |
| o3.getOption = f81632121_1334; |
| // 18252 |
| o137 = {}; |
| // 18253 |
| o3.option = o137; |
| // 18254 |
| o137.suppressEvaluation = false; |
| // 18257 |
| f81632121_1334.returns.push(false); |
| // 18258 |
| o2.responseText = "for (;;);{\"__ar\":1,\"payload\":[],\"bootloadable\":{},\"ixData\":[]}"; |
| // 18259 |
| o3._unshieldResponseText = f81632121_1336; |
| // 18260 |
| f81632121_1336.returns.push("{\"__ar\":1,\"payload\":[],\"bootloadable\":{},\"ixData\":[]}"); |
| // 18261 |
| o3._interpretResponse = f81632121_1337; |
| // 18262 |
| f81632121_1337.returns.push({__JSBNG_unknown_object:true}); |
| // 18263 |
| o3.invokeResponseHandler = f81632121_1338; |
| // 18264 |
| o3.handler = null; |
| // 18265 |
| o3.errorHandler = f81632121_1821; |
| // 18266 |
| o3._isRelevant = f81632121_1340; |
| // 18267 |
| o3._allowCrossPageTransition = void 0; |
| // 18268 |
| o3.id = 9; |
| // 18270 |
| f81632121_1340.returns.push(true); |
| // 18271 |
| o3._dispatchResponse = f81632121_1341; |
| // 18272 |
| o3.getURI = f81632121_1342; |
| // 18273 |
| o196 = {}; |
| // 18274 |
| o3.uri = o196; |
| // 18276 |
| o196.$URIBase0 = ""; |
| // 18277 |
| o196.$URIBase1 = ""; |
| // 18278 |
| o196.$URIBase2 = ""; |
| // 18279 |
| o196.$URIBase3 = "/ajax/chat/imps_logging.php"; |
| // 18281 |
| o197 = {}; |
| // 18282 |
| o196.$URIBase5 = o197; |
| // undefined |
| o197 = null; |
| // 18283 |
| o196.$URIBase4 = ""; |
| // 18284 |
| f81632121_1344.returns.push("/ajax/chat/imps_logging.php"); |
| // 18285 |
| f81632121_1342.returns.push("/ajax/chat/imps_logging.php"); |
| // 18286 |
| o3.preBootloadHandler = void 0; |
| // 18297 |
| f81632121_1344.returns.push("/ajax/chat/imps_logging.php"); |
| // 18298 |
| f81632121_1342.returns.push("/ajax/chat/imps_logging.php"); |
| // 18300 |
| f81632121_12.returns.push(81); |
| // 18304 |
| o197 = {}; |
| // 18305 |
| f81632121_474.returns.push(o197); |
| // 18307 |
| f81632121_478.returns.push(o197); |
| // undefined |
| o197 = null; |
| // 18308 |
| f81632121_1338.returns.push(undefined); |
| // 18309 |
| f81632121_1333.returns.push(undefined); |
| // 18312 |
| o137.asynchronous = true; |
| // undefined |
| o137 = null; |
| // 18315 |
| f81632121_1334.returns.push(true); |
| // 18316 |
| // 18319 |
| o3.clearStatusIndicator = f81632121_1347; |
| // 18320 |
| o3.getStatusElement = f81632121_1348; |
| // 18321 |
| o3.statusElement = null; |
| // 18322 |
| f81632121_1348.returns.push(null); |
| // 18323 |
| f81632121_1347.returns.push(undefined); |
| // 18328 |
| f81632121_1340.returns.push(true); |
| // 18329 |
| f81632121_2446 = function() { return f81632121_2446.returns[f81632121_2446.inst++]; }; |
| f81632121_2446.returns = []; |
| f81632121_2446.inst = 0; |
| // 18330 |
| o3.initialHandler = f81632121_2446; |
| // 18331 |
| f81632121_2446.returns.push(true); |
| // 18332 |
| o3.timer = null; |
| // 18333 |
| f81632121_14.returns.push(undefined); |
| // 18335 |
| o3._handleJSResponse = f81632121_1351; |
| // 18336 |
| o3.getRelativeTo = f81632121_1352; |
| // 18337 |
| o3.relativeTo = null; |
| // 18338 |
| f81632121_1352.returns.push(null); |
| // 18339 |
| o3._handleJSRegisters = f81632121_1353; |
| // 18340 |
| f81632121_1353.returns.push(undefined); |
| // 18341 |
| o3.lid = void 0; |
| // 18343 |
| f81632121_1353.returns.push(undefined); |
| // 18344 |
| f81632121_1351.returns.push(undefined); |
| // 18345 |
| f81632121_2447 = function() { return f81632121_2447.returns[f81632121_2447.inst++]; }; |
| f81632121_2447.returns = []; |
| f81632121_2447.inst = 0; |
| // 18346 |
| o3.finallyHandler = f81632121_2447; |
| // 18347 |
| f81632121_2447.returns.push(undefined); |
| // 18348 |
| f81632121_1341.returns.push(undefined); |
| // 18353 |
| // 18354 |
| f81632121_12.returns.push(82); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; highContrastMode=1; wd=1034x727"); |
| // 18360 |
| f81632121_467.returns.push(1374851244924); |
| // 18366 |
| o137 = {}; |
| // 18367 |
| o197 = {}; |
| // 18369 |
| o137.nodeType = void 0; |
| // 18370 |
| o137.length = 1; |
| // 18371 |
| o137["0"] = "WLpRY"; |
| // 18382 |
| o198 = {}; |
| // 18383 |
| f81632121_504.returns.push(o198); |
| // 18384 |
| o198.length = 4; |
| // 18385 |
| o198["0"] = o36; |
| // undefined |
| o36 = null; |
| // 18386 |
| o198["1"] = o35; |
| // undefined |
| o35 = null; |
| // 18387 |
| o198["2"] = o33; |
| // undefined |
| o33 = null; |
| // 18388 |
| o198["3"] = o32; |
| // undefined |
| o198 = null; |
| // undefined |
| o32 = null; |
| // 18392 |
| o32 = {}; |
| // 18393 |
| f81632121_474.returns.push(o32); |
| // 18395 |
| f81632121_478.returns.push(o32); |
| // undefined |
| o32 = null; |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 18400 |
| f81632121_12.returns.push(83); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 18405 |
| f81632121_467.returns.push(1374851245927); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 18409 |
| f81632121_12.returns.push(84); |
| // 18411 |
| o32 = {}; |
| // 18414 |
| o32.cancelBubble = false; |
| // 18417 |
| f81632121_467.returns.push(1374851246902); |
| // 18422 |
| f81632121_467.returns.push(1374851246904); |
| // 18426 |
| f81632121_467.returns.push(1374851246904); |
| // 18429 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 18430 |
| o32 = {}; |
| // 18433 |
| o32.cancelBubble = false; |
| // 18436 |
| f81632121_467.returns.push(1374851246920); |
| // 18438 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 18442 |
| f81632121_467.returns.push(1374851246929); |
| // 18443 |
| o32 = {}; |
| // 18446 |
| o32.cancelBubble = false; |
| // 18449 |
| f81632121_467.returns.push(1374851246942); |
| // 18451 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 18452 |
| o32 = {}; |
| // 18455 |
| o32.cancelBubble = false; |
| // 18458 |
| f81632121_467.returns.push(1374851246962); |
| // 18460 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 18461 |
| o32 = {}; |
| // 18464 |
| o32.cancelBubble = false; |
| // 18467 |
| f81632121_467.returns.push(1374851246964); |
| // 18469 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 18470 |
| o32 = {}; |
| // 18473 |
| o32.cancelBubble = false; |
| // 18476 |
| f81632121_467.returns.push(1374851247013); |
| // 18478 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 18479 |
| o32 = {}; |
| // 18482 |
| o32.cancelBubble = false; |
| // 18485 |
| f81632121_467.returns.push(1374851247020); |
| // 18487 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 18488 |
| o32 = {}; |
| // 18491 |
| o32.cancelBubble = false; |
| // 18494 |
| f81632121_467.returns.push(1374851247035); |
| // 18496 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 18497 |
| o32 = {}; |
| // 18500 |
| o32.cancelBubble = false; |
| // 18503 |
| f81632121_467.returns.push(1374851247053); |
| // 18505 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 18506 |
| o32 = {}; |
| // 18509 |
| o32.cancelBubble = false; |
| // 18512 |
| f81632121_467.returns.push(1374851247068); |
| // 18514 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 18515 |
| o32 = {}; |
| // 18518 |
| o32.cancelBubble = false; |
| // 18521 |
| f81632121_467.returns.push(1374851247086); |
| // 18523 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 18524 |
| o32 = {}; |
| // 18527 |
| o32.cancelBubble = false; |
| // 18530 |
| f81632121_467.returns.push(1374851247101); |
| // 18532 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 18534 |
| o32 = {}; |
| // 18537 |
| o32.cancelBubble = false; |
| // 18540 |
| f81632121_467.returns.push(1374851247117); |
| // 18542 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 18543 |
| o32 = {}; |
| // 18546 |
| o32.cancelBubble = false; |
| // 18549 |
| f81632121_467.returns.push(1374851247134); |
| // 18551 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 18552 |
| o32 = {}; |
| // 18555 |
| o32.cancelBubble = false; |
| // 18558 |
| f81632121_467.returns.push(1374851247150); |
| // 18560 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 18561 |
| o32 = {}; |
| // 18564 |
| o32.cancelBubble = false; |
| // 18567 |
| f81632121_467.returns.push(1374851247165); |
| // 18569 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 18570 |
| o32 = {}; |
| // 18573 |
| o32.cancelBubble = false; |
| // 18576 |
| f81632121_467.returns.push(1374851247181); |
| // 18578 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 18579 |
| o32 = {}; |
| // 18583 |
| f81632121_467.returns.push(1374851247195); |
| // 18584 |
| o32.cancelBubble = false; |
| // 18585 |
| o32.returnValue = true; |
| // 18588 |
| o32.srcElement = o109; |
| // 18590 |
| o32.target = o109; |
| // 18597 |
| f81632121_506.returns.push(null); |
| // 18603 |
| f81632121_506.returns.push(null); |
| // 18609 |
| f81632121_506.returns.push(null); |
| // 18615 |
| f81632121_506.returns.push(null); |
| // 18621 |
| f81632121_506.returns.push(null); |
| // 18627 |
| f81632121_506.returns.push(null); |
| // 18633 |
| f81632121_506.returns.push(null); |
| // 18639 |
| f81632121_506.returns.push(null); |
| // 18644 |
| o32.JSBNG__screenX = 970; |
| // 18645 |
| o32.JSBNG__screenY = 511; |
| // 18646 |
| o32.altKey = false; |
| // 18647 |
| o32.bubbles = true; |
| // 18648 |
| o32.button = 0; |
| // 18649 |
| o32.buttons = void 0; |
| // 18650 |
| o32.cancelable = false; |
| // 18651 |
| o32.clientX = 902; |
| // 18652 |
| o32.clientY = 346; |
| // 18653 |
| o32.ctrlKey = false; |
| // 18654 |
| o32.currentTarget = o0; |
| // 18655 |
| o32.defaultPrevented = false; |
| // 18656 |
| o32.detail = 0; |
| // 18657 |
| o32.eventPhase = 3; |
| // 18658 |
| o32.isTrusted = void 0; |
| // 18659 |
| o32.metaKey = false; |
| // 18660 |
| o32.pageX = 902; |
| // 18661 |
| o32.pageY = 2732; |
| // 18662 |
| o32.relatedTarget = null; |
| // 18663 |
| o32.fromElement = null; |
| // 18666 |
| o32.shiftKey = false; |
| // 18669 |
| o32.timeStamp = 1374851247195; |
| // 18670 |
| o32.type = "mousemove"; |
| // 18671 |
| o32.view = ow81632121; |
| // undefined |
| o32 = null; |
| // 18680 |
| f81632121_1852.returns.push(undefined); |
| // 18683 |
| f81632121_14.returns.push(undefined); |
| // 18688 |
| f81632121_467.returns.push(1374851247221); |
| // 18689 |
| f81632121_12.returns.push(85); |
| // 18692 |
| o32 = {}; |
| // 18695 |
| o32.cancelBubble = false; |
| // 18698 |
| f81632121_467.returns.push(1374851247230); |
| // 18700 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 18703 |
| f81632121_12.returns.push(86); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 18708 |
| f81632121_467.returns.push(1374851247934); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 18713 |
| f81632121_12.returns.push(87); |
| // 18716 |
| f81632121_467.returns.push(1374851248994); |
| // 18717 |
| o32 = {}; |
| // 18720 |
| o32.cancelBubble = false; |
| // 18723 |
| f81632121_467.returns.push(1374851248996); |
| // 18728 |
| f81632121_467.returns.push(1374851248999); |
| // 18732 |
| f81632121_467.returns.push(1374851248999); |
| // 18735 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 18739 |
| f81632121_467.returns.push(1374851249001); |
| // 18740 |
| o32 = {}; |
| // 18743 |
| o32.cancelBubble = false; |
| // 18746 |
| f81632121_467.returns.push(1374851249007); |
| // 18748 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 18749 |
| o32 = {}; |
| // 18752 |
| o32.cancelBubble = false; |
| // 18755 |
| f81632121_467.returns.push(1374851249029); |
| // 18757 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 18758 |
| o32 = {}; |
| // 18761 |
| o32.cancelBubble = false; |
| // 18764 |
| f81632121_467.returns.push(1374851249050); |
| // 18766 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 18768 |
| o32 = {}; |
| // 18771 |
| o32.cancelBubble = false; |
| // 18774 |
| f81632121_467.returns.push(1374851249117); |
| // 18776 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 18777 |
| o32 = {}; |
| // 18780 |
| o32.cancelBubble = false; |
| // 18783 |
| f81632121_467.returns.push(1374851249147); |
| // 18785 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 18786 |
| o32 = {}; |
| // 18789 |
| o32.cancelBubble = false; |
| // 18792 |
| f81632121_467.returns.push(1374851249181); |
| // 18794 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 18795 |
| o32 = {}; |
| // 18798 |
| o32.cancelBubble = false; |
| // 18801 |
| f81632121_467.returns.push(1374851249216); |
| // 18803 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 18804 |
| o32 = {}; |
| // 18807 |
| o32.cancelBubble = false; |
| // 18810 |
| f81632121_467.returns.push(1374851249250); |
| // 18812 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 18813 |
| o32 = {}; |
| // 18816 |
| o32.cancelBubble = false; |
| // 18819 |
| f81632121_467.returns.push(1374851249278); |
| // 18821 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 18822 |
| o32 = {}; |
| // 18825 |
| o32.cancelBubble = false; |
| // 18828 |
| f81632121_467.returns.push(1374851249309); |
| // 18830 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 18831 |
| o32 = {}; |
| // 18834 |
| o32.cancelBubble = false; |
| // 18837 |
| f81632121_467.returns.push(1374851249314); |
| // 18839 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 18840 |
| o32 = {}; |
| // 18843 |
| o32.cancelBubble = false; |
| // 18846 |
| f81632121_467.returns.push(1374851249330); |
| // 18848 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 18849 |
| o32 = {}; |
| // 18852 |
| o32.cancelBubble = false; |
| // 18855 |
| f81632121_467.returns.push(1374851249347); |
| // 18857 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 18858 |
| o32 = {}; |
| // 18861 |
| o32.srcElement = o109; |
| // 18863 |
| o32.target = o109; |
| // 18870 |
| f81632121_506.returns.push(null); |
| // 18876 |
| f81632121_506.returns.push(null); |
| // 18882 |
| f81632121_506.returns.push(null); |
| // 18888 |
| f81632121_506.returns.push(null); |
| // 18894 |
| f81632121_506.returns.push(null); |
| // 18900 |
| f81632121_506.returns.push(null); |
| // 18906 |
| f81632121_506.returns.push(null); |
| // 18912 |
| f81632121_506.returns.push(null); |
| // 18917 |
| o33 = {}; |
| // 18918 |
| o32.relatedTarget = o33; |
| // 18919 |
| o35 = {}; |
| // 18920 |
| o33.parentNode = o35; |
| // 18921 |
| o33.nodeType = 1; |
| // 18922 |
| o33.getAttribute = f81632121_506; |
| // 18924 |
| f81632121_506.returns.push(null); |
| // 18926 |
| o36 = {}; |
| // 18927 |
| o35.parentNode = o36; |
| // 18928 |
| o35.nodeType = 1; |
| // 18929 |
| o35.getAttribute = f81632121_506; |
| // undefined |
| o35 = null; |
| // 18931 |
| f81632121_506.returns.push(null); |
| // 18933 |
| o35 = {}; |
| // 18934 |
| o36.parentNode = o35; |
| // 18935 |
| o36.nodeType = 1; |
| // 18936 |
| o36.getAttribute = f81632121_506; |
| // undefined |
| o36 = null; |
| // 18938 |
| f81632121_506.returns.push(null); |
| // 18940 |
| o36 = {}; |
| // 18941 |
| o35.parentNode = o36; |
| // 18942 |
| o35.nodeType = 1; |
| // 18943 |
| o35.getAttribute = f81632121_506; |
| // 18945 |
| f81632121_506.returns.push(null); |
| // 18947 |
| o36.parentNode = o56; |
| // 18948 |
| o36.nodeType = 1; |
| // 18949 |
| o36.getAttribute = f81632121_506; |
| // undefined |
| o36 = null; |
| // 18951 |
| f81632121_506.returns.push(null); |
| // 18953 |
| o56.parentNode = o47; |
| // 18954 |
| o56.nodeType = 1; |
| // undefined |
| o56 = null; |
| // 18957 |
| f81632121_506.returns.push(null); |
| // 18959 |
| o36 = {}; |
| // 18960 |
| o47.parentNode = o36; |
| // 18961 |
| o47.nodeType = 1; |
| // 18962 |
| o47.getAttribute = f81632121_506; |
| // undefined |
| o47 = null; |
| // 18964 |
| f81632121_506.returns.push(null); |
| // 18966 |
| o36.parentNode = o188; |
| // 18967 |
| o36.nodeType = 1; |
| // 18968 |
| o36.getAttribute = f81632121_506; |
| // undefined |
| o36 = null; |
| // 18970 |
| f81632121_506.returns.push(null); |
| // 18972 |
| o36 = {}; |
| // 18973 |
| o188.parentNode = o36; |
| // 18974 |
| o188.nodeType = 1; |
| // undefined |
| o188 = null; |
| // 18977 |
| f81632121_506.returns.push(null); |
| // 18979 |
| o36.parentNode = o93; |
| // 18980 |
| o36.nodeType = 1; |
| // 18981 |
| o36.getAttribute = f81632121_506; |
| // undefined |
| o36 = null; |
| // 18983 |
| f81632121_506.returns.push(null); |
| // 18985 |
| o93.parentNode = o77; |
| // 18986 |
| o93.nodeType = 1; |
| // undefined |
| o93 = null; |
| // 18989 |
| f81632121_506.returns.push(null); |
| // 18991 |
| o36 = {}; |
| // 18992 |
| o77.parentNode = o36; |
| // 18993 |
| o77.nodeType = 1; |
| // undefined |
| o77 = null; |
| // 18996 |
| f81632121_506.returns.push(null); |
| // 18998 |
| o36.parentNode = o122; |
| // 18999 |
| o36.nodeType = 1; |
| // 19000 |
| o36.getAttribute = f81632121_506; |
| // undefined |
| o36 = null; |
| // 19002 |
| f81632121_506.returns.push(null); |
| // 19004 |
| o122.parentNode = o109; |
| // 19005 |
| o122.nodeType = 1; |
| // 19006 |
| o122.getAttribute = f81632121_506; |
| // undefined |
| o122 = null; |
| // 19008 |
| f81632121_506.returns.push(null); |
| // 19014 |
| f81632121_506.returns.push(null); |
| // 19020 |
| f81632121_506.returns.push(null); |
| // 19026 |
| f81632121_506.returns.push(null); |
| // 19032 |
| f81632121_506.returns.push(null); |
| // 19038 |
| f81632121_506.returns.push(null); |
| // 19044 |
| f81632121_506.returns.push(null); |
| // 19050 |
| f81632121_506.returns.push(null); |
| // 19056 |
| f81632121_506.returns.push(null); |
| // 19061 |
| o32.cancelBubble = false; |
| // 19062 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 19063 |
| o32 = {}; |
| // 19066 |
| o32.cancelBubble = false; |
| // 19069 |
| f81632121_467.returns.push(1374851249570); |
| // 19074 |
| f81632121_467.returns.push(1374851249572); |
| // 19078 |
| f81632121_467.returns.push(1374851249578); |
| // 19082 |
| f81632121_1007.returns.push(undefined); |
| // 19084 |
| o32.returnValue = true; |
| // 19087 |
| o32.srcElement = o33; |
| // 19089 |
| o32.target = o33; |
| // 19096 |
| f81632121_506.returns.push(null); |
| // 19102 |
| f81632121_506.returns.push(null); |
| // 19108 |
| f81632121_506.returns.push(null); |
| // 19114 |
| f81632121_506.returns.push(null); |
| // 19120 |
| f81632121_506.returns.push(null); |
| // 19126 |
| f81632121_506.returns.push(null); |
| // 19132 |
| f81632121_506.returns.push(null); |
| // 19138 |
| f81632121_506.returns.push(null); |
| // 19144 |
| f81632121_506.returns.push(null); |
| // 19150 |
| f81632121_506.returns.push(null); |
| // 19156 |
| f81632121_506.returns.push(null); |
| // 19162 |
| f81632121_506.returns.push(null); |
| // 19168 |
| f81632121_506.returns.push(null); |
| // 19174 |
| f81632121_506.returns.push(null); |
| // 19180 |
| f81632121_506.returns.push(null); |
| // 19186 |
| f81632121_506.returns.push(null); |
| // 19192 |
| f81632121_506.returns.push(null); |
| // 19198 |
| f81632121_506.returns.push(null); |
| // 19204 |
| f81632121_506.returns.push(null); |
| // 19210 |
| f81632121_506.returns.push(null); |
| // 19216 |
| f81632121_506.returns.push(null); |
| // 19222 |
| f81632121_506.returns.push(null); |
| // 19227 |
| o32.relatedTarget = o109; |
| // undefined |
| o32 = null; |
| // 19230 |
| o32 = {}; |
| // 19234 |
| f81632121_467.returns.push(1374851249593); |
| // 19235 |
| o32.cancelBubble = false; |
| // 19236 |
| o32.returnValue = true; |
| // 19239 |
| o32.srcElement = o33; |
| // 19241 |
| o32.target = o33; |
| // 19248 |
| f81632121_506.returns.push(null); |
| // 19254 |
| f81632121_506.returns.push(null); |
| // 19260 |
| f81632121_506.returns.push(null); |
| // 19266 |
| f81632121_506.returns.push(null); |
| // 19272 |
| f81632121_506.returns.push(null); |
| // 19278 |
| f81632121_506.returns.push(null); |
| // 19284 |
| f81632121_506.returns.push(null); |
| // 19290 |
| f81632121_506.returns.push(null); |
| // 19296 |
| f81632121_506.returns.push(null); |
| // 19302 |
| f81632121_506.returns.push(null); |
| // 19308 |
| f81632121_506.returns.push(null); |
| // 19314 |
| f81632121_506.returns.push(null); |
| // 19320 |
| f81632121_506.returns.push(null); |
| // 19326 |
| f81632121_506.returns.push(null); |
| // 19332 |
| f81632121_506.returns.push(null); |
| // 19338 |
| f81632121_506.returns.push(null); |
| // 19344 |
| f81632121_506.returns.push(null); |
| // 19350 |
| f81632121_506.returns.push(null); |
| // 19356 |
| f81632121_506.returns.push(null); |
| // 19362 |
| f81632121_506.returns.push(null); |
| // 19368 |
| f81632121_506.returns.push(null); |
| // 19374 |
| f81632121_506.returns.push(null); |
| // 19379 |
| o32.JSBNG__screenX = 970; |
| // 19380 |
| o32.JSBNG__screenY = 511; |
| // 19381 |
| o32.altKey = false; |
| // 19382 |
| o32.bubbles = true; |
| // 19383 |
| o32.button = 0; |
| // 19384 |
| o32.buttons = void 0; |
| // 19385 |
| o32.cancelable = false; |
| // 19386 |
| o32.clientX = 902; |
| // 19387 |
| o32.clientY = 346; |
| // 19388 |
| o32.ctrlKey = false; |
| // 19389 |
| o32.currentTarget = o0; |
| // 19390 |
| o32.defaultPrevented = false; |
| // 19391 |
| o32.detail = 0; |
| // 19392 |
| o32.eventPhase = 3; |
| // 19393 |
| o32.isTrusted = void 0; |
| // 19394 |
| o32.metaKey = false; |
| // 19395 |
| o32.pageX = 902; |
| // 19396 |
| o32.pageY = 346; |
| // 19397 |
| o32.relatedTarget = null; |
| // 19398 |
| o32.fromElement = null; |
| // 19401 |
| o32.shiftKey = false; |
| // 19404 |
| o32.timeStamp = 1374851249592; |
| // 19405 |
| o32.type = "mousemove"; |
| // 19406 |
| o32.view = ow81632121; |
| // undefined |
| o32 = null; |
| // 19415 |
| f81632121_1852.returns.push(undefined); |
| // 19418 |
| f81632121_14.returns.push(undefined); |
| // 19419 |
| f81632121_12.returns.push(88); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 19423 |
| o32 = {}; |
| // 19427 |
| f81632121_467.returns.push(1374851249632); |
| // 19428 |
| o32.cancelBubble = false; |
| // 19429 |
| o32.returnValue = true; |
| // 19432 |
| o32.srcElement = o33; |
| // 19434 |
| o32.target = o33; |
| // 19441 |
| f81632121_506.returns.push(null); |
| // 19447 |
| f81632121_506.returns.push(null); |
| // 19453 |
| f81632121_506.returns.push(null); |
| // 19459 |
| f81632121_506.returns.push(null); |
| // 19465 |
| f81632121_506.returns.push(null); |
| // 19471 |
| f81632121_506.returns.push(null); |
| // 19477 |
| f81632121_506.returns.push(null); |
| // 19483 |
| f81632121_506.returns.push(null); |
| // 19489 |
| f81632121_506.returns.push(null); |
| // 19495 |
| f81632121_506.returns.push(null); |
| // 19501 |
| f81632121_506.returns.push(null); |
| // 19507 |
| f81632121_506.returns.push(null); |
| // 19513 |
| f81632121_506.returns.push(null); |
| // 19519 |
| f81632121_506.returns.push(null); |
| // 19525 |
| f81632121_506.returns.push(null); |
| // 19531 |
| f81632121_506.returns.push(null); |
| // 19537 |
| f81632121_506.returns.push(null); |
| // 19543 |
| f81632121_506.returns.push(null); |
| // 19549 |
| f81632121_506.returns.push(null); |
| // 19555 |
| f81632121_506.returns.push(null); |
| // 19561 |
| f81632121_506.returns.push(null); |
| // 19567 |
| f81632121_506.returns.push(null); |
| // 19572 |
| o32.JSBNG__screenX = 970; |
| // 19573 |
| o32.JSBNG__screenY = 511; |
| // 19574 |
| o32.altKey = false; |
| // 19575 |
| o32.bubbles = true; |
| // 19576 |
| o32.button = 0; |
| // 19577 |
| o32.buttons = void 0; |
| // 19578 |
| o32.cancelable = false; |
| // 19579 |
| o32.clientX = 902; |
| // 19580 |
| o32.clientY = 346; |
| // 19581 |
| o32.ctrlKey = false; |
| // 19582 |
| o32.currentTarget = o0; |
| // 19583 |
| o32.defaultPrevented = false; |
| // 19584 |
| o32.detail = 0; |
| // 19585 |
| o32.eventPhase = 3; |
| // 19586 |
| o32.isTrusted = void 0; |
| // 19587 |
| o32.metaKey = false; |
| // 19588 |
| o32.pageX = 902; |
| // 19589 |
| o32.pageY = 346; |
| // 19590 |
| o32.relatedTarget = null; |
| // 19591 |
| o32.fromElement = null; |
| // 19594 |
| o32.shiftKey = false; |
| // 19597 |
| o32.timeStamp = 1374851249632; |
| // 19598 |
| o32.type = "mousemove"; |
| // 19599 |
| o32.view = ow81632121; |
| // undefined |
| o32 = null; |
| // 19608 |
| f81632121_1852.returns.push(undefined); |
| // 19611 |
| f81632121_14.returns.push(undefined); |
| // 19612 |
| f81632121_12.returns.push(89); |
| // 19615 |
| o32 = {}; |
| // 19618 |
| o32.cancelBubble = false; |
| // 19621 |
| f81632121_467.returns.push(1374851249851); |
| // 19623 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 19625 |
| f81632121_12.returns.push(90); |
| // 19627 |
| o32 = {}; |
| // 19630 |
| o32.cancelBubble = false; |
| // 19633 |
| f81632121_467.returns.push(1374851249869); |
| // 19635 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 19636 |
| o32 = {}; |
| // 19639 |
| o32.cancelBubble = false; |
| // 19642 |
| f81632121_467.returns.push(1374851249883); |
| // 19644 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 19645 |
| o32 = {}; |
| // 19648 |
| o32.cancelBubble = false; |
| // 19651 |
| f81632121_467.returns.push(1374851249901); |
| // 19653 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 19654 |
| o32 = {}; |
| // 19657 |
| o32.cancelBubble = false; |
| // 19660 |
| f81632121_467.returns.push(1374851249908); |
| // 19662 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 19663 |
| o32 = {}; |
| // 19666 |
| o32.cancelBubble = false; |
| // 19669 |
| f81632121_467.returns.push(1374851249924); |
| // 19671 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 19672 |
| o32 = {}; |
| // 19675 |
| o32.cancelBubble = false; |
| // 19678 |
| f81632121_467.returns.push(1374851249931); |
| // 19680 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 19681 |
| o32 = {}; |
| // 19684 |
| o32.cancelBubble = false; |
| // 19687 |
| f81632121_467.returns.push(1374851249948); |
| // 19689 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 19690 |
| o32 = {}; |
| // 19693 |
| o32.cancelBubble = false; |
| // 19696 |
| f81632121_467.returns.push(1374851249962); |
| // 19698 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 19699 |
| o32 = {}; |
| // 19702 |
| o32.cancelBubble = false; |
| // 19705 |
| f81632121_467.returns.push(1374851249973); |
| // 19707 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 19708 |
| o32 = {}; |
| // 19711 |
| o32.cancelBubble = false; |
| // 19714 |
| f81632121_467.returns.push(1374851249979); |
| // 19716 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 19717 |
| o32 = {}; |
| // 19720 |
| o32.cancelBubble = false; |
| // 19723 |
| f81632121_467.returns.push(1374851249996); |
| // 19725 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 19729 |
| f81632121_467.returns.push(1374851250009); |
| // 19730 |
| o32 = {}; |
| // 19733 |
| o32.cancelBubble = false; |
| // 19736 |
| f81632121_467.returns.push(1374851250011); |
| // 19738 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 19739 |
| o32 = {}; |
| // 19742 |
| o32.cancelBubble = false; |
| // 19745 |
| f81632121_467.returns.push(1374851250027); |
| // 19747 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 19748 |
| o32 = {}; |
| // 19751 |
| o32.cancelBubble = false; |
| // 19754 |
| f81632121_467.returns.push(1374851250050); |
| // 19756 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 19757 |
| o32 = {}; |
| // 19760 |
| o32.cancelBubble = false; |
| // 19763 |
| f81632121_467.returns.push(1374851250076); |
| // 19768 |
| f81632121_467.returns.push(1374851250079); |
| // 19772 |
| f81632121_467.returns.push(1374851250079); |
| // 19775 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 19777 |
| o32 = {}; |
| // 19780 |
| o32.cancelBubble = false; |
| // 19783 |
| f81632121_467.returns.push(1374851250243); |
| // 19785 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 19786 |
| o32 = {}; |
| // 19789 |
| o32.cancelBubble = false; |
| // 19792 |
| f81632121_467.returns.push(1374851250275); |
| // 19794 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 19795 |
| o32 = {}; |
| // 19799 |
| f81632121_467.returns.push(1374851250309); |
| // 19800 |
| o32.cancelBubble = false; |
| // 19801 |
| o32.returnValue = true; |
| // 19804 |
| o32.srcElement = o33; |
| // 19806 |
| o32.target = o33; |
| // 19813 |
| f81632121_506.returns.push(null); |
| // 19819 |
| f81632121_506.returns.push(null); |
| // 19825 |
| f81632121_506.returns.push(null); |
| // 19831 |
| f81632121_506.returns.push(null); |
| // 19837 |
| f81632121_506.returns.push(null); |
| // 19843 |
| f81632121_506.returns.push(null); |
| // 19849 |
| f81632121_506.returns.push(null); |
| // 19855 |
| f81632121_506.returns.push(null); |
| // 19861 |
| f81632121_506.returns.push(null); |
| // 19867 |
| f81632121_506.returns.push(null); |
| // 19873 |
| f81632121_506.returns.push(null); |
| // 19879 |
| f81632121_506.returns.push(null); |
| // 19885 |
| f81632121_506.returns.push(null); |
| // 19891 |
| f81632121_506.returns.push(null); |
| // 19897 |
| f81632121_506.returns.push(null); |
| // 19903 |
| f81632121_506.returns.push(null); |
| // 19909 |
| f81632121_506.returns.push(null); |
| // 19915 |
| f81632121_506.returns.push(null); |
| // 19921 |
| f81632121_506.returns.push(null); |
| // 19927 |
| f81632121_506.returns.push(null); |
| // 19933 |
| f81632121_506.returns.push(null); |
| // 19939 |
| f81632121_506.returns.push(null); |
| // 19944 |
| o32.JSBNG__screenX = 969; |
| // 19945 |
| o32.JSBNG__screenY = 511; |
| // 19946 |
| o32.altKey = false; |
| // 19947 |
| o32.bubbles = true; |
| // 19948 |
| o32.button = 0; |
| // 19949 |
| o32.buttons = void 0; |
| // 19950 |
| o32.cancelable = false; |
| // 19951 |
| o32.clientX = 901; |
| // 19952 |
| o32.clientY = 346; |
| // 19953 |
| o32.ctrlKey = false; |
| // 19954 |
| o32.currentTarget = o0; |
| // 19955 |
| o32.defaultPrevented = false; |
| // 19956 |
| o32.detail = 0; |
| // 19957 |
| o32.eventPhase = 3; |
| // 19958 |
| o32.isTrusted = void 0; |
| // 19959 |
| o32.metaKey = false; |
| // 19960 |
| o32.pageX = 901; |
| // 19961 |
| o32.pageY = 346; |
| // 19962 |
| o32.relatedTarget = null; |
| // 19963 |
| o32.fromElement = null; |
| // 19966 |
| o32.shiftKey = false; |
| // 19969 |
| o32.timeStamp = 1374851250306; |
| // 19970 |
| o32.type = "mousemove"; |
| // 19971 |
| o32.view = ow81632121; |
| // undefined |
| o32 = null; |
| // 19980 |
| f81632121_1852.returns.push(undefined); |
| // 19983 |
| f81632121_14.returns.push(undefined); |
| // 19984 |
| f81632121_12.returns.push(91); |
| // 19987 |
| o32 = {}; |
| // 19990 |
| o32.srcElement = o33; |
| // 19992 |
| o32.target = o33; |
| // 19999 |
| f81632121_506.returns.push(null); |
| // 20005 |
| f81632121_506.returns.push(null); |
| // 20011 |
| f81632121_506.returns.push(null); |
| // 20017 |
| f81632121_506.returns.push(null); |
| // 20023 |
| f81632121_506.returns.push(null); |
| // 20029 |
| f81632121_506.returns.push(null); |
| // 20035 |
| f81632121_506.returns.push(null); |
| // 20041 |
| f81632121_506.returns.push(null); |
| // 20047 |
| f81632121_506.returns.push(null); |
| // 20053 |
| f81632121_506.returns.push(null); |
| // 20059 |
| f81632121_506.returns.push(null); |
| // 20065 |
| f81632121_506.returns.push(null); |
| // 20071 |
| f81632121_506.returns.push(null); |
| // 20077 |
| f81632121_506.returns.push(null); |
| // 20083 |
| f81632121_506.returns.push(null); |
| // 20089 |
| f81632121_506.returns.push(null); |
| // 20095 |
| f81632121_506.returns.push(null); |
| // 20101 |
| f81632121_506.returns.push(null); |
| // 20107 |
| f81632121_506.returns.push(null); |
| // 20113 |
| f81632121_506.returns.push(null); |
| // 20119 |
| f81632121_506.returns.push(null); |
| // 20125 |
| f81632121_506.returns.push(null); |
| // 20130 |
| o32.relatedTarget = o85; |
| // 20131 |
| o36 = {}; |
| // 20132 |
| o85.parentNode = o36; |
| // 20133 |
| o85.nodeType = 1; |
| // 20134 |
| o85.getAttribute = f81632121_506; |
| // 20136 |
| f81632121_506.returns.push(null); |
| // 20138 |
| o36.parentNode = o35; |
| // undefined |
| o35 = null; |
| // 20139 |
| o36.nodeType = 1; |
| // 20140 |
| o36.getAttribute = f81632121_506; |
| // undefined |
| o36 = null; |
| // 20142 |
| f81632121_506.returns.push(null); |
| // 20148 |
| f81632121_506.returns.push(null); |
| // 20154 |
| f81632121_506.returns.push(null); |
| // 20160 |
| f81632121_506.returns.push(null); |
| // 20166 |
| f81632121_506.returns.push(null); |
| // 20172 |
| f81632121_506.returns.push(null); |
| // 20178 |
| f81632121_506.returns.push(null); |
| // 20184 |
| f81632121_506.returns.push(null); |
| // 20190 |
| f81632121_506.returns.push(null); |
| // 20196 |
| f81632121_506.returns.push(null); |
| // 20202 |
| f81632121_506.returns.push(null); |
| // 20208 |
| f81632121_506.returns.push(null); |
| // 20214 |
| f81632121_506.returns.push(null); |
| // 20220 |
| f81632121_506.returns.push(null); |
| // 20226 |
| f81632121_506.returns.push(null); |
| // 20232 |
| f81632121_506.returns.push(null); |
| // 20238 |
| f81632121_506.returns.push(null); |
| // 20244 |
| f81632121_506.returns.push(null); |
| // 20250 |
| f81632121_506.returns.push(null); |
| // 20256 |
| f81632121_506.returns.push(null); |
| // 20261 |
| o32.cancelBubble = false; |
| // 20262 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 20263 |
| o32 = {}; |
| // 20266 |
| o32.cancelBubble = false; |
| // 20269 |
| f81632121_467.returns.push(1374851250391); |
| // 20272 |
| f81632121_1007.returns.push(undefined); |
| // 20274 |
| o32.returnValue = true; |
| // 20277 |
| o32.srcElement = o85; |
| // 20279 |
| o32.target = o85; |
| // 20286 |
| f81632121_506.returns.push(null); |
| // 20292 |
| f81632121_506.returns.push(null); |
| // 20298 |
| f81632121_506.returns.push(null); |
| // 20304 |
| f81632121_506.returns.push(null); |
| // 20310 |
| f81632121_506.returns.push(null); |
| // 20316 |
| f81632121_506.returns.push(null); |
| // 20322 |
| f81632121_506.returns.push(null); |
| // 20328 |
| f81632121_506.returns.push(null); |
| // 20334 |
| f81632121_506.returns.push(null); |
| // 20340 |
| f81632121_506.returns.push(null); |
| // 20346 |
| f81632121_506.returns.push(null); |
| // 20352 |
| f81632121_506.returns.push(null); |
| // 20358 |
| f81632121_506.returns.push(null); |
| // 20364 |
| f81632121_506.returns.push(null); |
| // 20370 |
| f81632121_506.returns.push(null); |
| // 20376 |
| f81632121_506.returns.push(null); |
| // 20382 |
| f81632121_506.returns.push(null); |
| // 20388 |
| f81632121_506.returns.push(null); |
| // 20394 |
| f81632121_506.returns.push(null); |
| // 20400 |
| f81632121_506.returns.push(null); |
| // 20406 |
| f81632121_506.returns.push(null); |
| // 20411 |
| o32.relatedTarget = o33; |
| // undefined |
| o32 = null; |
| // undefined |
| o33 = null; |
| // 20414 |
| o32 = {}; |
| // 20418 |
| f81632121_467.returns.push(1374851250398); |
| // 20419 |
| o32.cancelBubble = false; |
| // 20420 |
| o32.returnValue = true; |
| // 20423 |
| o32.srcElement = o85; |
| // 20425 |
| o32.target = o85; |
| // 20432 |
| f81632121_506.returns.push(null); |
| // 20438 |
| f81632121_506.returns.push(null); |
| // 20444 |
| f81632121_506.returns.push(null); |
| // 20450 |
| f81632121_506.returns.push(null); |
| // 20456 |
| f81632121_506.returns.push(null); |
| // 20462 |
| f81632121_506.returns.push(null); |
| // 20468 |
| f81632121_506.returns.push(null); |
| // 20474 |
| f81632121_506.returns.push(null); |
| // 20480 |
| f81632121_506.returns.push(null); |
| // 20486 |
| f81632121_506.returns.push(null); |
| // 20492 |
| f81632121_506.returns.push(null); |
| // 20498 |
| f81632121_506.returns.push(null); |
| // 20504 |
| f81632121_506.returns.push(null); |
| // 20510 |
| f81632121_506.returns.push(null); |
| // 20516 |
| f81632121_506.returns.push(null); |
| // 20522 |
| f81632121_506.returns.push(null); |
| // 20528 |
| f81632121_506.returns.push(null); |
| // 20534 |
| f81632121_506.returns.push(null); |
| // 20540 |
| f81632121_506.returns.push(null); |
| // 20546 |
| f81632121_506.returns.push(null); |
| // 20552 |
| f81632121_506.returns.push(null); |
| // 20557 |
| o32.JSBNG__screenX = 964; |
| // 20558 |
| o32.JSBNG__screenY = 483; |
| // 20559 |
| o32.altKey = false; |
| // 20560 |
| o32.bubbles = true; |
| // 20561 |
| o32.button = 0; |
| // 20562 |
| o32.buttons = void 0; |
| // 20563 |
| o32.cancelable = false; |
| // 20564 |
| o32.clientX = 896; |
| // 20565 |
| o32.clientY = 318; |
| // 20566 |
| o32.ctrlKey = false; |
| // 20567 |
| o32.currentTarget = o0; |
| // 20568 |
| o32.defaultPrevented = false; |
| // 20569 |
| o32.detail = 0; |
| // 20570 |
| o32.eventPhase = 3; |
| // 20571 |
| o32.isTrusted = void 0; |
| // 20572 |
| o32.metaKey = false; |
| // 20573 |
| o32.pageX = 896; |
| // 20574 |
| o32.pageY = 318; |
| // 20575 |
| o32.relatedTarget = null; |
| // 20576 |
| o32.fromElement = null; |
| // 20579 |
| o32.shiftKey = false; |
| // 20582 |
| o32.timeStamp = 1374851250398; |
| // 20583 |
| o32.type = "mousemove"; |
| // 20584 |
| o32.view = ow81632121; |
| // undefined |
| o32 = null; |
| // 20593 |
| f81632121_1852.returns.push(undefined); |
| // 20596 |
| f81632121_14.returns.push(undefined); |
| // 20597 |
| f81632121_12.returns.push(92); |
| // 20600 |
| o32 = {}; |
| // 20604 |
| f81632121_467.returns.push(1374851250423); |
| // 20605 |
| o32.cancelBubble = false; |
| // 20606 |
| o32.returnValue = true; |
| // 20609 |
| o32.srcElement = o85; |
| // 20611 |
| o32.target = o85; |
| // 20618 |
| f81632121_506.returns.push(null); |
| // 20624 |
| f81632121_506.returns.push(null); |
| // 20630 |
| f81632121_506.returns.push(null); |
| // 20636 |
| f81632121_506.returns.push(null); |
| // 20642 |
| f81632121_506.returns.push(null); |
| // 20648 |
| f81632121_506.returns.push(null); |
| // 20654 |
| f81632121_506.returns.push(null); |
| // 20660 |
| f81632121_506.returns.push(null); |
| // 20666 |
| f81632121_506.returns.push(null); |
| // 20672 |
| f81632121_506.returns.push(null); |
| // 20678 |
| f81632121_506.returns.push(null); |
| // 20684 |
| f81632121_506.returns.push(null); |
| // 20690 |
| f81632121_506.returns.push(null); |
| // 20696 |
| f81632121_506.returns.push(null); |
| // 20702 |
| f81632121_506.returns.push(null); |
| // 20708 |
| f81632121_506.returns.push(null); |
| // 20714 |
| f81632121_506.returns.push(null); |
| // 20720 |
| f81632121_506.returns.push(null); |
| // 20726 |
| f81632121_506.returns.push(null); |
| // 20732 |
| f81632121_506.returns.push(null); |
| // 20738 |
| f81632121_506.returns.push(null); |
| // 20743 |
| o32.JSBNG__screenX = 956; |
| // 20744 |
| o32.JSBNG__screenY = 468; |
| // 20745 |
| o32.altKey = false; |
| // 20746 |
| o32.bubbles = true; |
| // 20747 |
| o32.button = 0; |
| // 20748 |
| o32.buttons = void 0; |
| // 20749 |
| o32.cancelable = false; |
| // 20750 |
| o32.clientX = 888; |
| // 20751 |
| o32.clientY = 303; |
| // 20752 |
| o32.ctrlKey = false; |
| // 20753 |
| o32.currentTarget = o0; |
| // 20754 |
| o32.defaultPrevented = false; |
| // 20755 |
| o32.detail = 0; |
| // 20756 |
| o32.eventPhase = 3; |
| // 20757 |
| o32.isTrusted = void 0; |
| // 20758 |
| o32.metaKey = false; |
| // 20759 |
| o32.pageX = 888; |
| // 20760 |
| o32.pageY = 303; |
| // 20761 |
| o32.relatedTarget = null; |
| // 20762 |
| o32.fromElement = null; |
| // 20765 |
| o32.shiftKey = false; |
| // 20768 |
| o32.timeStamp = 1374851250423; |
| // 20769 |
| o32.type = "mousemove"; |
| // 20770 |
| o32.view = ow81632121; |
| // undefined |
| o32 = null; |
| // 20779 |
| f81632121_1852.returns.push(undefined); |
| // 20782 |
| f81632121_14.returns.push(undefined); |
| // 20783 |
| f81632121_12.returns.push(93); |
| // 20786 |
| o32 = {}; |
| // 20790 |
| f81632121_467.returns.push(1374851250436); |
| // 20791 |
| o32.cancelBubble = false; |
| // 20792 |
| o32.returnValue = true; |
| // 20795 |
| o32.srcElement = o85; |
| // 20797 |
| o32.target = o85; |
| // 20804 |
| f81632121_506.returns.push(null); |
| // 20810 |
| f81632121_506.returns.push(null); |
| // 20816 |
| f81632121_506.returns.push(null); |
| // 20822 |
| f81632121_506.returns.push(null); |
| // 20828 |
| f81632121_506.returns.push(null); |
| // 20834 |
| f81632121_506.returns.push(null); |
| // 20840 |
| f81632121_506.returns.push(null); |
| // 20846 |
| f81632121_506.returns.push(null); |
| // 20852 |
| f81632121_506.returns.push(null); |
| // 20858 |
| f81632121_506.returns.push(null); |
| // 20864 |
| f81632121_506.returns.push(null); |
| // 20870 |
| f81632121_506.returns.push(null); |
| // 20876 |
| f81632121_506.returns.push(null); |
| // 20882 |
| f81632121_506.returns.push(null); |
| // 20888 |
| f81632121_506.returns.push(null); |
| // 20894 |
| f81632121_506.returns.push(null); |
| // 20900 |
| f81632121_506.returns.push(null); |
| // 20906 |
| f81632121_506.returns.push(null); |
| // 20912 |
| f81632121_506.returns.push(null); |
| // 20918 |
| f81632121_506.returns.push(null); |
| // 20924 |
| f81632121_506.returns.push(null); |
| // 20929 |
| o32.JSBNG__screenX = 951; |
| // 20930 |
| o32.JSBNG__screenY = 466; |
| // 20931 |
| o32.altKey = false; |
| // 20932 |
| o32.bubbles = true; |
| // 20933 |
| o32.button = 0; |
| // 20934 |
| o32.buttons = void 0; |
| // 20935 |
| o32.cancelable = false; |
| // 20936 |
| o32.clientX = 883; |
| // 20937 |
| o32.clientY = 301; |
| // 20938 |
| o32.ctrlKey = false; |
| // 20939 |
| o32.currentTarget = o0; |
| // 20940 |
| o32.defaultPrevented = false; |
| // 20941 |
| o32.detail = 0; |
| // 20942 |
| o32.eventPhase = 3; |
| // 20943 |
| o32.isTrusted = void 0; |
| // 20944 |
| o32.metaKey = false; |
| // 20945 |
| o32.pageX = 883; |
| // 20946 |
| o32.pageY = 301; |
| // 20947 |
| o32.relatedTarget = null; |
| // 20948 |
| o32.fromElement = null; |
| // 20951 |
| o32.shiftKey = false; |
| // 20954 |
| o32.timeStamp = 1374851250436; |
| // 20955 |
| o32.type = "mousemove"; |
| // 20956 |
| o32.view = ow81632121; |
| // undefined |
| o32 = null; |
| // 20965 |
| f81632121_1852.returns.push(undefined); |
| // 20968 |
| f81632121_14.returns.push(undefined); |
| // 20969 |
| f81632121_12.returns.push(94); |
| // 20972 |
| o32 = {}; |
| // 20975 |
| o32.srcElement = o85; |
| // 20977 |
| o32.target = o85; |
| // 20984 |
| f81632121_506.returns.push(null); |
| // 20990 |
| f81632121_506.returns.push(null); |
| // 20996 |
| f81632121_506.returns.push(null); |
| // 21002 |
| f81632121_506.returns.push(null); |
| // 21008 |
| f81632121_506.returns.push(null); |
| // 21014 |
| f81632121_506.returns.push(null); |
| // 21020 |
| f81632121_506.returns.push(null); |
| // 21026 |
| f81632121_506.returns.push(null); |
| // 21032 |
| f81632121_506.returns.push(null); |
| // 21038 |
| f81632121_506.returns.push(null); |
| // 21044 |
| f81632121_506.returns.push(null); |
| // 21050 |
| f81632121_506.returns.push(null); |
| // 21056 |
| f81632121_506.returns.push(null); |
| // 21062 |
| f81632121_506.returns.push(null); |
| // 21068 |
| f81632121_506.returns.push(null); |
| // 21074 |
| f81632121_506.returns.push(null); |
| // 21080 |
| f81632121_506.returns.push(null); |
| // 21086 |
| f81632121_506.returns.push(null); |
| // 21092 |
| f81632121_506.returns.push(null); |
| // 21098 |
| f81632121_506.returns.push(null); |
| // 21104 |
| f81632121_506.returns.push(null); |
| // 21109 |
| o32.relatedTarget = o109; |
| // 21114 |
| f81632121_506.returns.push(null); |
| // 21120 |
| f81632121_506.returns.push(null); |
| // 21126 |
| f81632121_506.returns.push(null); |
| // 21132 |
| f81632121_506.returns.push(null); |
| // 21138 |
| f81632121_506.returns.push(null); |
| // 21144 |
| f81632121_506.returns.push(null); |
| // 21150 |
| f81632121_506.returns.push(null); |
| // 21156 |
| f81632121_506.returns.push(null); |
| // 21161 |
| o32.cancelBubble = false; |
| // 21162 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 21163 |
| o32 = {}; |
| // 21166 |
| o32.cancelBubble = false; |
| // 21169 |
| f81632121_467.returns.push(1374851250457); |
| // 21172 |
| f81632121_1007.returns.push(undefined); |
| // 21174 |
| o32.returnValue = true; |
| // 21177 |
| o32.srcElement = o109; |
| // 21179 |
| o32.target = o109; |
| // 21186 |
| f81632121_506.returns.push(null); |
| // 21192 |
| f81632121_506.returns.push(null); |
| // 21198 |
| f81632121_506.returns.push(null); |
| // 21204 |
| f81632121_506.returns.push(null); |
| // 21210 |
| f81632121_506.returns.push(null); |
| // 21216 |
| f81632121_506.returns.push(null); |
| // 21222 |
| f81632121_506.returns.push(null); |
| // 21228 |
| f81632121_506.returns.push(null); |
| // 21233 |
| o32.relatedTarget = o85; |
| // undefined |
| o32 = null; |
| // undefined |
| o85 = null; |
| // 21236 |
| o32 = {}; |
| // 21240 |
| f81632121_467.returns.push(1374851250458); |
| // 21241 |
| o32.cancelBubble = false; |
| // 21242 |
| o32.returnValue = true; |
| // 21245 |
| o32.srcElement = o109; |
| // 21247 |
| o32.target = o109; |
| // 21254 |
| f81632121_506.returns.push(null); |
| // 21260 |
| f81632121_506.returns.push(null); |
| // 21266 |
| f81632121_506.returns.push(null); |
| // 21272 |
| f81632121_506.returns.push(null); |
| // 21278 |
| f81632121_506.returns.push(null); |
| // 21284 |
| f81632121_506.returns.push(null); |
| // 21290 |
| f81632121_506.returns.push(null); |
| // 21296 |
| f81632121_506.returns.push(null); |
| // 21301 |
| o32.JSBNG__screenX = 945; |
| // 21302 |
| o32.JSBNG__screenY = 465; |
| // 21303 |
| o32.altKey = false; |
| // 21304 |
| o32.bubbles = true; |
| // 21305 |
| o32.button = 0; |
| // 21306 |
| o32.buttons = void 0; |
| // 21307 |
| o32.cancelable = false; |
| // 21308 |
| o32.clientX = 877; |
| // 21309 |
| o32.clientY = 300; |
| // 21310 |
| o32.ctrlKey = false; |
| // 21311 |
| o32.currentTarget = o0; |
| // 21312 |
| o32.defaultPrevented = false; |
| // 21313 |
| o32.detail = 0; |
| // 21314 |
| o32.eventPhase = 3; |
| // 21315 |
| o32.isTrusted = void 0; |
| // 21316 |
| o32.metaKey = false; |
| // 21317 |
| o32.pageX = 877; |
| // 21318 |
| o32.pageY = 300; |
| // 21319 |
| o32.relatedTarget = null; |
| // 21320 |
| o32.fromElement = null; |
| // 21323 |
| o32.shiftKey = false; |
| // 21326 |
| o32.timeStamp = 1374851250458; |
| // 21327 |
| o32.type = "mousemove"; |
| // 21328 |
| o32.view = ow81632121; |
| // undefined |
| o32 = null; |
| // 21337 |
| f81632121_1852.returns.push(undefined); |
| // 21340 |
| f81632121_14.returns.push(undefined); |
| // 21341 |
| f81632121_12.returns.push(95); |
| // 21344 |
| o32 = {}; |
| // 21347 |
| o32.srcElement = o109; |
| // 21349 |
| o32.target = o109; |
| // 21356 |
| f81632121_506.returns.push(null); |
| // 21362 |
| f81632121_506.returns.push(null); |
| // 21368 |
| f81632121_506.returns.push(null); |
| // 21374 |
| f81632121_506.returns.push(null); |
| // 21380 |
| f81632121_506.returns.push(null); |
| // 21386 |
| f81632121_506.returns.push(null); |
| // 21392 |
| f81632121_506.returns.push(null); |
| // 21398 |
| f81632121_506.returns.push(null); |
| // 21403 |
| o33 = {}; |
| // 21404 |
| o32.relatedTarget = o33; |
| // 21405 |
| o35 = {}; |
| // 21406 |
| o33.parentNode = o35; |
| // 21407 |
| o33.nodeType = 1; |
| // 21408 |
| o33.getAttribute = f81632121_506; |
| // 21410 |
| f81632121_506.returns.push(null); |
| // 21412 |
| o35.parentNode = o24; |
| // 21413 |
| o35.nodeType = 1; |
| // 21414 |
| o35.getAttribute = f81632121_506; |
| // undefined |
| o35 = null; |
| // 21416 |
| f81632121_506.returns.push(null); |
| // 21418 |
| o24.parentNode = o91; |
| // 21419 |
| o24.nodeType = 1; |
| // 21420 |
| o24.getAttribute = f81632121_506; |
| // undefined |
| o24 = null; |
| // 21422 |
| f81632121_506.returns.push(null); |
| // 21425 |
| o91.nodeType = 1; |
| // 21426 |
| o91.getAttribute = f81632121_506; |
| // undefined |
| o91 = null; |
| // 21428 |
| f81632121_506.returns.push(null); |
| // 21431 |
| o92.nodeType = 1; |
| // 21432 |
| o92.getAttribute = f81632121_506; |
| // undefined |
| o92 = null; |
| // 21434 |
| f81632121_506.returns.push(null); |
| // 21436 |
| o185.parentNode = o21; |
| // 21437 |
| o185.nodeType = 1; |
| // 21438 |
| o185.getAttribute = f81632121_506; |
| // 21440 |
| f81632121_506.returns.push(null); |
| // 21443 |
| o21.nodeType = 1; |
| // 21446 |
| f81632121_506.returns.push(null); |
| // 21449 |
| o20.nodeType = 1; |
| // 21452 |
| f81632121_506.returns.push(null); |
| // 21455 |
| o45.nodeType = 1; |
| // 21456 |
| o45.getAttribute = f81632121_506; |
| // 21458 |
| f81632121_506.returns.push(null); |
| // 21464 |
| f81632121_506.returns.push(null); |
| // 21470 |
| f81632121_506.returns.push(null); |
| // 21476 |
| f81632121_506.returns.push(null); |
| // 21482 |
| f81632121_506.returns.push(null); |
| // 21488 |
| f81632121_506.returns.push(null); |
| // 21494 |
| f81632121_506.returns.push(null); |
| // 21500 |
| f81632121_506.returns.push(null); |
| // 21506 |
| f81632121_506.returns.push(null); |
| // 21511 |
| o32.cancelBubble = false; |
| // 21512 |
| o32.returnValue = true; |
| // undefined |
| o32 = null; |
| // 21513 |
| o24 = {}; |
| // 21516 |
| o24.cancelBubble = false; |
| // 21519 |
| f81632121_467.returns.push(1374851250484); |
| // 21522 |
| f81632121_1007.returns.push(undefined); |
| // 21524 |
| o24.returnValue = true; |
| // 21527 |
| o24.srcElement = o33; |
| // 21529 |
| o24.target = o33; |
| // 21536 |
| f81632121_506.returns.push(null); |
| // 21542 |
| f81632121_506.returns.push(null); |
| // 21548 |
| f81632121_506.returns.push(null); |
| // 21554 |
| f81632121_506.returns.push(null); |
| // 21560 |
| f81632121_506.returns.push(null); |
| // 21566 |
| f81632121_506.returns.push(null); |
| // 21572 |
| f81632121_506.returns.push(null); |
| // 21578 |
| f81632121_506.returns.push(null); |
| // 21584 |
| f81632121_506.returns.push(null); |
| // 21590 |
| f81632121_506.returns.push(null); |
| // 21596 |
| f81632121_506.returns.push(null); |
| // 21602 |
| f81632121_506.returns.push(null); |
| // 21608 |
| f81632121_506.returns.push(null); |
| // 21614 |
| f81632121_506.returns.push(null); |
| // 21620 |
| f81632121_506.returns.push(null); |
| // 21626 |
| f81632121_506.returns.push(null); |
| // 21632 |
| f81632121_506.returns.push(null); |
| // 21637 |
| o24.relatedTarget = o109; |
| // undefined |
| o24 = null; |
| // 21640 |
| o24 = {}; |
| // 21644 |
| f81632121_467.returns.push(1374851250489); |
| // 21645 |
| o24.cancelBubble = false; |
| // 21646 |
| o24.returnValue = true; |
| // 21649 |
| o24.srcElement = o33; |
| // 21651 |
| o24.target = o33; |
| // 21658 |
| f81632121_506.returns.push(null); |
| // 21664 |
| f81632121_506.returns.push(null); |
| // 21670 |
| f81632121_506.returns.push(null); |
| // 21676 |
| f81632121_506.returns.push(null); |
| // 21682 |
| f81632121_506.returns.push(null); |
| // 21688 |
| f81632121_506.returns.push(null); |
| // 21694 |
| f81632121_506.returns.push(null); |
| // 21700 |
| f81632121_506.returns.push(null); |
| // 21706 |
| f81632121_506.returns.push(null); |
| // 21712 |
| f81632121_506.returns.push(null); |
| // 21718 |
| f81632121_506.returns.push(null); |
| // 21724 |
| f81632121_506.returns.push(null); |
| // 21730 |
| f81632121_506.returns.push(null); |
| // 21736 |
| f81632121_506.returns.push(null); |
| // 21742 |
| f81632121_506.returns.push(null); |
| // 21748 |
| f81632121_506.returns.push(null); |
| // 21754 |
| f81632121_506.returns.push(null); |
| // 21759 |
| o24.JSBNG__screenX = 933; |
| // 21760 |
| o24.JSBNG__screenY = 465; |
| // 21761 |
| o24.altKey = false; |
| // 21762 |
| o24.bubbles = true; |
| // 21763 |
| o24.button = 0; |
| // 21764 |
| o24.buttons = void 0; |
| // 21765 |
| o24.cancelable = false; |
| // 21766 |
| o24.clientX = 865; |
| // 21767 |
| o24.clientY = 300; |
| // 21768 |
| o24.ctrlKey = false; |
| // 21769 |
| o24.currentTarget = o0; |
| // 21770 |
| o24.defaultPrevented = false; |
| // 21771 |
| o24.detail = 0; |
| // 21772 |
| o24.eventPhase = 3; |
| // 21773 |
| o24.isTrusted = void 0; |
| // 21774 |
| o24.metaKey = false; |
| // 21775 |
| o24.pageX = 865; |
| // 21776 |
| o24.pageY = 300; |
| // 21777 |
| o24.relatedTarget = null; |
| // 21778 |
| o24.fromElement = null; |
| // 21781 |
| o24.shiftKey = false; |
| // 21784 |
| o24.timeStamp = 1374851250489; |
| // 21785 |
| o24.type = "mousemove"; |
| // 21786 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 21795 |
| f81632121_1852.returns.push(undefined); |
| // 21798 |
| f81632121_14.returns.push(undefined); |
| // 21799 |
| f81632121_12.returns.push(96); |
| // 21802 |
| o24 = {}; |
| // 21805 |
| o24.srcElement = o33; |
| // 21807 |
| o24.target = o33; |
| // 21814 |
| f81632121_506.returns.push(null); |
| // 21820 |
| f81632121_506.returns.push(null); |
| // 21826 |
| f81632121_506.returns.push(null); |
| // 21832 |
| f81632121_506.returns.push(null); |
| // 21838 |
| f81632121_506.returns.push(null); |
| // 21844 |
| f81632121_506.returns.push(null); |
| // 21850 |
| f81632121_506.returns.push(null); |
| // 21856 |
| f81632121_506.returns.push(null); |
| // 21862 |
| f81632121_506.returns.push(null); |
| // 21868 |
| f81632121_506.returns.push(null); |
| // 21874 |
| f81632121_506.returns.push(null); |
| // 21880 |
| f81632121_506.returns.push(null); |
| // 21886 |
| f81632121_506.returns.push(null); |
| // 21892 |
| f81632121_506.returns.push(null); |
| // 21898 |
| f81632121_506.returns.push(null); |
| // 21904 |
| f81632121_506.returns.push(null); |
| // 21910 |
| f81632121_506.returns.push(null); |
| // 21915 |
| o24.relatedTarget = o28; |
| // 21916 |
| o32 = {}; |
| // 21917 |
| o28.parentNode = o32; |
| // 21918 |
| o28.nodeType = 1; |
| // 21921 |
| f81632121_506.returns.push(null); |
| // 21923 |
| o35 = {}; |
| // 21924 |
| o32.parentNode = o35; |
| // 21925 |
| o32.nodeType = 1; |
| // 21926 |
| o32.getAttribute = f81632121_506; |
| // undefined |
| o32 = null; |
| // 21928 |
| f81632121_506.returns.push(null); |
| // 21930 |
| o35.parentNode = o181; |
| // 21931 |
| o35.nodeType = 1; |
| // 21932 |
| o35.getAttribute = f81632121_506; |
| // undefined |
| o35 = null; |
| // 21934 |
| f81632121_506.returns.push(null); |
| // 21937 |
| o181.nodeType = 1; |
| // 21938 |
| o181.getAttribute = f81632121_506; |
| // undefined |
| o181 = null; |
| // 21940 |
| f81632121_506.returns.push(null); |
| // 21946 |
| f81632121_506.returns.push(null); |
| // 21952 |
| f81632121_506.returns.push(null); |
| // 21958 |
| f81632121_506.returns.push(null); |
| // 21964 |
| f81632121_506.returns.push(null); |
| // 21970 |
| f81632121_506.returns.push(null); |
| // 21976 |
| f81632121_506.returns.push(null); |
| // 21982 |
| f81632121_506.returns.push(null); |
| // 21988 |
| f81632121_506.returns.push(null); |
| // 21994 |
| f81632121_506.returns.push(null); |
| // 22000 |
| f81632121_506.returns.push(null); |
| // 22006 |
| f81632121_506.returns.push(null); |
| // 22012 |
| f81632121_506.returns.push(null); |
| // 22018 |
| f81632121_506.returns.push(null); |
| // 22024 |
| f81632121_506.returns.push(null); |
| // 22029 |
| o24.cancelBubble = false; |
| // 22030 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 22031 |
| o24 = {}; |
| // 22034 |
| o24.cancelBubble = false; |
| // 22037 |
| f81632121_467.returns.push(1374851250516); |
| // 22040 |
| f81632121_1007.returns.push(undefined); |
| // 22042 |
| o24.returnValue = true; |
| // 22045 |
| o24.srcElement = o28; |
| // 22047 |
| o24.target = o28; |
| // 22054 |
| f81632121_506.returns.push(null); |
| // 22060 |
| f81632121_506.returns.push(null); |
| // 22066 |
| f81632121_506.returns.push(null); |
| // 22072 |
| f81632121_506.returns.push(null); |
| // 22078 |
| f81632121_506.returns.push(null); |
| // 22084 |
| f81632121_506.returns.push(null); |
| // 22090 |
| f81632121_506.returns.push(null); |
| // 22096 |
| f81632121_506.returns.push(null); |
| // 22102 |
| f81632121_506.returns.push(null); |
| // 22108 |
| f81632121_506.returns.push(null); |
| // 22114 |
| f81632121_506.returns.push(null); |
| // 22120 |
| f81632121_506.returns.push(null); |
| // 22126 |
| f81632121_506.returns.push(null); |
| // 22132 |
| f81632121_506.returns.push(null); |
| // 22138 |
| f81632121_506.returns.push(null); |
| // 22144 |
| f81632121_506.returns.push(null); |
| // 22150 |
| f81632121_506.returns.push(null); |
| // 22156 |
| f81632121_506.returns.push(null); |
| // 22161 |
| o24.relatedTarget = o33; |
| // undefined |
| o24 = null; |
| // 22164 |
| o24 = {}; |
| // 22168 |
| f81632121_467.returns.push(1374851250528); |
| // 22169 |
| o24.cancelBubble = false; |
| // 22170 |
| o24.returnValue = true; |
| // 22173 |
| o24.srcElement = o28; |
| // 22175 |
| o24.target = o28; |
| // 22182 |
| f81632121_506.returns.push(null); |
| // 22188 |
| f81632121_506.returns.push(null); |
| // 22194 |
| f81632121_506.returns.push(null); |
| // 22200 |
| f81632121_506.returns.push(null); |
| // 22206 |
| f81632121_506.returns.push(null); |
| // 22212 |
| f81632121_506.returns.push(null); |
| // 22218 |
| f81632121_506.returns.push(null); |
| // 22224 |
| f81632121_506.returns.push(null); |
| // 22230 |
| f81632121_506.returns.push(null); |
| // 22236 |
| f81632121_506.returns.push(null); |
| // 22242 |
| f81632121_506.returns.push(null); |
| // 22248 |
| f81632121_506.returns.push(null); |
| // 22254 |
| f81632121_506.returns.push(null); |
| // 22260 |
| f81632121_506.returns.push(null); |
| // 22266 |
| f81632121_506.returns.push(null); |
| // 22272 |
| f81632121_506.returns.push(null); |
| // 22278 |
| f81632121_506.returns.push(null); |
| // 22284 |
| f81632121_506.returns.push(null); |
| // 22289 |
| o24.JSBNG__screenX = 913; |
| // 22290 |
| o24.JSBNG__screenY = 468; |
| // 22291 |
| o24.altKey = false; |
| // 22292 |
| o24.bubbles = true; |
| // 22293 |
| o24.button = 0; |
| // 22294 |
| o24.buttons = void 0; |
| // 22295 |
| o24.cancelable = false; |
| // 22296 |
| o24.clientX = 845; |
| // 22297 |
| o24.clientY = 303; |
| // 22298 |
| o24.ctrlKey = false; |
| // 22299 |
| o24.currentTarget = o0; |
| // 22300 |
| o24.defaultPrevented = false; |
| // 22301 |
| o24.detail = 0; |
| // 22302 |
| o24.eventPhase = 3; |
| // 22303 |
| o24.isTrusted = void 0; |
| // 22304 |
| o24.metaKey = false; |
| // 22305 |
| o24.pageX = 845; |
| // 22306 |
| o24.pageY = 303; |
| // 22307 |
| o24.relatedTarget = null; |
| // 22308 |
| o24.fromElement = null; |
| // 22311 |
| o24.shiftKey = false; |
| // 22314 |
| o24.timeStamp = 1374851250528; |
| // 22315 |
| o24.type = "mousemove"; |
| // 22316 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 22325 |
| f81632121_1852.returns.push(undefined); |
| // 22328 |
| f81632121_14.returns.push(undefined); |
| // 22329 |
| f81632121_12.returns.push(97); |
| // 22332 |
| o24 = {}; |
| // 22336 |
| f81632121_467.returns.push(1374851250539); |
| // 22337 |
| o24.cancelBubble = false; |
| // 22338 |
| o24.returnValue = true; |
| // 22341 |
| o24.srcElement = o28; |
| // 22343 |
| o24.target = o28; |
| // 22350 |
| f81632121_506.returns.push(null); |
| // 22356 |
| f81632121_506.returns.push(null); |
| // 22362 |
| f81632121_506.returns.push(null); |
| // 22368 |
| f81632121_506.returns.push(null); |
| // 22374 |
| f81632121_506.returns.push(null); |
| // 22380 |
| f81632121_506.returns.push(null); |
| // 22386 |
| f81632121_506.returns.push(null); |
| // 22392 |
| f81632121_506.returns.push(null); |
| // 22398 |
| f81632121_506.returns.push(null); |
| // 22404 |
| f81632121_506.returns.push(null); |
| // 22410 |
| f81632121_506.returns.push(null); |
| // 22416 |
| f81632121_506.returns.push(null); |
| // 22422 |
| f81632121_506.returns.push(null); |
| // 22428 |
| f81632121_506.returns.push(null); |
| // 22434 |
| f81632121_506.returns.push(null); |
| // 22440 |
| f81632121_506.returns.push(null); |
| // 22446 |
| f81632121_506.returns.push(null); |
| // 22452 |
| f81632121_506.returns.push(null); |
| // 22457 |
| o24.JSBNG__screenX = 890; |
| // 22458 |
| o24.JSBNG__screenY = 476; |
| // 22459 |
| o24.altKey = false; |
| // 22460 |
| o24.bubbles = true; |
| // 22461 |
| o24.button = 0; |
| // 22462 |
| o24.buttons = void 0; |
| // 22463 |
| o24.cancelable = false; |
| // 22464 |
| o24.clientX = 822; |
| // 22465 |
| o24.clientY = 311; |
| // 22466 |
| o24.ctrlKey = false; |
| // 22467 |
| o24.currentTarget = o0; |
| // 22468 |
| o24.defaultPrevented = false; |
| // 22469 |
| o24.detail = 0; |
| // 22470 |
| o24.eventPhase = 3; |
| // 22471 |
| o24.isTrusted = void 0; |
| // 22472 |
| o24.metaKey = false; |
| // 22473 |
| o24.pageX = 822; |
| // 22474 |
| o24.pageY = 311; |
| // 22475 |
| o24.relatedTarget = null; |
| // 22476 |
| o24.fromElement = null; |
| // 22479 |
| o24.shiftKey = false; |
| // 22482 |
| o24.timeStamp = 1374851250539; |
| // 22483 |
| o24.type = "mousemove"; |
| // 22484 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 22493 |
| f81632121_1852.returns.push(undefined); |
| // 22496 |
| f81632121_14.returns.push(undefined); |
| // 22497 |
| f81632121_12.returns.push(98); |
| // 22500 |
| o24 = {}; |
| // 22504 |
| f81632121_467.returns.push(1374851250545); |
| // 22505 |
| o24.cancelBubble = false; |
| // 22506 |
| o24.returnValue = true; |
| // 22509 |
| o24.srcElement = o28; |
| // 22511 |
| o24.target = o28; |
| // 22518 |
| f81632121_506.returns.push(null); |
| // 22524 |
| f81632121_506.returns.push(null); |
| // 22530 |
| f81632121_506.returns.push(null); |
| // 22536 |
| f81632121_506.returns.push(null); |
| // 22542 |
| f81632121_506.returns.push(null); |
| // 22548 |
| f81632121_506.returns.push(null); |
| // 22554 |
| f81632121_506.returns.push(null); |
| // 22560 |
| f81632121_506.returns.push(null); |
| // 22566 |
| f81632121_506.returns.push(null); |
| // 22572 |
| f81632121_506.returns.push(null); |
| // 22578 |
| f81632121_506.returns.push(null); |
| // 22584 |
| f81632121_506.returns.push(null); |
| // 22590 |
| f81632121_506.returns.push(null); |
| // 22596 |
| f81632121_506.returns.push(null); |
| // 22602 |
| f81632121_506.returns.push(null); |
| // 22608 |
| f81632121_506.returns.push(null); |
| // 22614 |
| f81632121_506.returns.push(null); |
| // 22620 |
| f81632121_506.returns.push(null); |
| // 22625 |
| o24.JSBNG__screenX = 884; |
| // 22626 |
| o24.JSBNG__screenY = 479; |
| // 22627 |
| o24.altKey = false; |
| // 22628 |
| o24.bubbles = true; |
| // 22629 |
| o24.button = 0; |
| // 22630 |
| o24.buttons = void 0; |
| // 22631 |
| o24.cancelable = false; |
| // 22632 |
| o24.clientX = 816; |
| // 22633 |
| o24.clientY = 314; |
| // 22634 |
| o24.ctrlKey = false; |
| // 22635 |
| o24.currentTarget = o0; |
| // 22636 |
| o24.defaultPrevented = false; |
| // 22637 |
| o24.detail = 0; |
| // 22638 |
| o24.eventPhase = 3; |
| // 22639 |
| o24.isTrusted = void 0; |
| // 22640 |
| o24.metaKey = false; |
| // 22641 |
| o24.pageX = 816; |
| // 22642 |
| o24.pageY = 314; |
| // 22643 |
| o24.relatedTarget = null; |
| // 22644 |
| o24.fromElement = null; |
| // 22647 |
| o24.shiftKey = false; |
| // 22650 |
| o24.timeStamp = 1374851250545; |
| // 22651 |
| o24.type = "mousemove"; |
| // 22652 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 22661 |
| f81632121_1852.returns.push(undefined); |
| // 22664 |
| f81632121_14.returns.push(undefined); |
| // 22665 |
| f81632121_12.returns.push(99); |
| // 22668 |
| o24 = {}; |
| // 22671 |
| o24.srcElement = o28; |
| // 22673 |
| o24.target = o28; |
| // 22680 |
| f81632121_506.returns.push(null); |
| // 22686 |
| f81632121_506.returns.push(null); |
| // 22692 |
| f81632121_506.returns.push(null); |
| // 22698 |
| f81632121_506.returns.push(null); |
| // 22704 |
| f81632121_506.returns.push(null); |
| // 22710 |
| f81632121_506.returns.push(null); |
| // 22716 |
| f81632121_506.returns.push(null); |
| // 22722 |
| f81632121_506.returns.push(null); |
| // 22728 |
| f81632121_506.returns.push(null); |
| // 22734 |
| f81632121_506.returns.push(null); |
| // 22740 |
| f81632121_506.returns.push(null); |
| // 22746 |
| f81632121_506.returns.push(null); |
| // 22752 |
| f81632121_506.returns.push(null); |
| // 22758 |
| f81632121_506.returns.push(null); |
| // 22764 |
| f81632121_506.returns.push(null); |
| // 22770 |
| f81632121_506.returns.push(null); |
| // 22776 |
| f81632121_506.returns.push(null); |
| // 22782 |
| f81632121_506.returns.push(null); |
| // 22787 |
| o32 = {}; |
| // 22788 |
| o24.relatedTarget = o32; |
| // 22789 |
| o35 = {}; |
| // 22790 |
| o32.parentNode = o35; |
| // 22791 |
| o32.nodeType = 1; |
| // 22792 |
| o32.getAttribute = f81632121_506; |
| // 22794 |
| f81632121_506.returns.push(null); |
| // 22796 |
| o36 = {}; |
| // 22797 |
| o35.parentNode = o36; |
| // 22798 |
| o35.nodeType = 1; |
| // 22799 |
| o35.getAttribute = f81632121_506; |
| // undefined |
| o35 = null; |
| // 22801 |
| f81632121_506.returns.push(null); |
| // 22803 |
| o35 = {}; |
| // 22804 |
| o36.parentNode = o35; |
| // 22805 |
| o36.nodeType = 1; |
| // 22806 |
| o36.getAttribute = f81632121_506; |
| // undefined |
| o36 = null; |
| // 22808 |
| f81632121_506.returns.push(null); |
| // 22810 |
| o36 = {}; |
| // 22811 |
| o35.parentNode = o36; |
| // 22812 |
| o35.nodeType = 1; |
| // 22813 |
| o35.getAttribute = f81632121_506; |
| // undefined |
| o35 = null; |
| // 22815 |
| f81632121_506.returns.push(null); |
| // 22817 |
| o36.parentNode = o28; |
| // 22818 |
| o36.nodeType = 1; |
| // 22819 |
| o36.getAttribute = f81632121_506; |
| // undefined |
| o36 = null; |
| // 22821 |
| f81632121_506.returns.push(null); |
| // 22827 |
| f81632121_506.returns.push(null); |
| // 22833 |
| f81632121_506.returns.push(null); |
| // 22839 |
| f81632121_506.returns.push(null); |
| // 22845 |
| f81632121_506.returns.push(null); |
| // 22851 |
| f81632121_506.returns.push(null); |
| // 22857 |
| f81632121_506.returns.push(null); |
| // 22863 |
| f81632121_506.returns.push(null); |
| // 22869 |
| f81632121_506.returns.push(null); |
| // 22875 |
| f81632121_506.returns.push(null); |
| // 22881 |
| f81632121_506.returns.push(null); |
| // 22887 |
| f81632121_506.returns.push(null); |
| // 22893 |
| f81632121_506.returns.push(null); |
| // 22899 |
| f81632121_506.returns.push(null); |
| // 22905 |
| f81632121_506.returns.push(null); |
| // 22911 |
| f81632121_506.returns.push(null); |
| // 22917 |
| f81632121_506.returns.push(null); |
| // 22923 |
| f81632121_506.returns.push(null); |
| // 22929 |
| f81632121_506.returns.push(null); |
| // 22934 |
| o24.cancelBubble = false; |
| // 22935 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 22936 |
| o24 = {}; |
| // 22939 |
| o24.cancelBubble = false; |
| // 22942 |
| f81632121_467.returns.push(1374851250574); |
| // 22945 |
| f81632121_1007.returns.push(undefined); |
| // 22947 |
| o24.returnValue = true; |
| // 22950 |
| o24.srcElement = o32; |
| // 22952 |
| o24.target = o32; |
| // 22959 |
| f81632121_506.returns.push(null); |
| // 22965 |
| f81632121_506.returns.push(null); |
| // 22971 |
| f81632121_506.returns.push(null); |
| // 22977 |
| f81632121_506.returns.push(null); |
| // 22983 |
| f81632121_506.returns.push(null); |
| // 22989 |
| f81632121_506.returns.push(null); |
| // 22995 |
| f81632121_506.returns.push(null); |
| // 23001 |
| f81632121_506.returns.push(null); |
| // 23007 |
| f81632121_506.returns.push(null); |
| // 23013 |
| f81632121_506.returns.push(null); |
| // 23019 |
| f81632121_506.returns.push(null); |
| // 23025 |
| f81632121_506.returns.push(null); |
| // 23031 |
| f81632121_506.returns.push(null); |
| // 23037 |
| f81632121_506.returns.push(null); |
| // 23043 |
| f81632121_506.returns.push(null); |
| // 23049 |
| f81632121_506.returns.push(null); |
| // 23055 |
| f81632121_506.returns.push(null); |
| // 23061 |
| f81632121_506.returns.push(null); |
| // 23067 |
| f81632121_506.returns.push(null); |
| // 23073 |
| f81632121_506.returns.push(null); |
| // 23079 |
| f81632121_506.returns.push(null); |
| // 23085 |
| f81632121_506.returns.push(null); |
| // 23091 |
| f81632121_506.returns.push(null); |
| // 23096 |
| o24.relatedTarget = o28; |
| // undefined |
| o24 = null; |
| // undefined |
| o28 = null; |
| // 23099 |
| o24 = {}; |
| // 23103 |
| f81632121_467.returns.push(1374851250582); |
| // 23108 |
| f81632121_467.returns.push(1374851250583); |
| // 23112 |
| f81632121_467.returns.push(1374851250583); |
| // 23114 |
| o24.cancelBubble = false; |
| // 23115 |
| o24.returnValue = true; |
| // 23118 |
| o24.srcElement = o32; |
| // 23120 |
| o24.target = o32; |
| // 23127 |
| f81632121_506.returns.push(null); |
| // 23133 |
| f81632121_506.returns.push(null); |
| // 23139 |
| f81632121_506.returns.push(null); |
| // 23145 |
| f81632121_506.returns.push(null); |
| // 23151 |
| f81632121_506.returns.push(null); |
| // 23157 |
| f81632121_506.returns.push(null); |
| // 23163 |
| f81632121_506.returns.push(null); |
| // 23169 |
| f81632121_506.returns.push(null); |
| // 23175 |
| f81632121_506.returns.push(null); |
| // 23181 |
| f81632121_506.returns.push(null); |
| // 23187 |
| f81632121_506.returns.push(null); |
| // 23193 |
| f81632121_506.returns.push(null); |
| // 23199 |
| f81632121_506.returns.push(null); |
| // 23205 |
| f81632121_506.returns.push(null); |
| // 23211 |
| f81632121_506.returns.push(null); |
| // 23217 |
| f81632121_506.returns.push(null); |
| // 23223 |
| f81632121_506.returns.push(null); |
| // 23229 |
| f81632121_506.returns.push(null); |
| // 23235 |
| f81632121_506.returns.push(null); |
| // 23241 |
| f81632121_506.returns.push(null); |
| // 23247 |
| f81632121_506.returns.push(null); |
| // 23253 |
| f81632121_506.returns.push(null); |
| // 23259 |
| f81632121_506.returns.push(null); |
| // 23264 |
| o24.JSBNG__screenX = 873; |
| // 23265 |
| o24.JSBNG__screenY = 486; |
| // 23266 |
| o24.altKey = false; |
| // 23267 |
| o24.bubbles = true; |
| // 23268 |
| o24.button = 0; |
| // 23269 |
| o24.buttons = void 0; |
| // 23270 |
| o24.cancelable = false; |
| // 23271 |
| o24.clientX = 805; |
| // 23272 |
| o24.clientY = 321; |
| // 23273 |
| o24.ctrlKey = false; |
| // 23274 |
| o24.currentTarget = o0; |
| // 23275 |
| o24.defaultPrevented = false; |
| // 23276 |
| o24.detail = 0; |
| // 23277 |
| o24.eventPhase = 3; |
| // 23278 |
| o24.isTrusted = void 0; |
| // 23279 |
| o24.metaKey = false; |
| // 23280 |
| o24.pageX = 805; |
| // 23281 |
| o24.pageY = 321; |
| // 23282 |
| o24.relatedTarget = null; |
| // 23283 |
| o24.fromElement = null; |
| // 23286 |
| o24.shiftKey = false; |
| // 23289 |
| o24.timeStamp = 1374851250582; |
| // 23290 |
| o24.type = "mousemove"; |
| // 23291 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 23300 |
| f81632121_1852.returns.push(undefined); |
| // 23303 |
| f81632121_14.returns.push(undefined); |
| // 23304 |
| f81632121_12.returns.push(100); |
| // 23307 |
| o24 = {}; |
| // 23311 |
| f81632121_467.returns.push(1374851250598); |
| // 23312 |
| o24.cancelBubble = false; |
| // 23313 |
| o24.returnValue = true; |
| // 23316 |
| o24.srcElement = o32; |
| // 23318 |
| o24.target = o32; |
| // 23325 |
| f81632121_506.returns.push(null); |
| // 23331 |
| f81632121_506.returns.push(null); |
| // 23337 |
| f81632121_506.returns.push(null); |
| // 23343 |
| f81632121_506.returns.push(null); |
| // 23349 |
| f81632121_506.returns.push(null); |
| // 23355 |
| f81632121_506.returns.push(null); |
| // 23361 |
| f81632121_506.returns.push(null); |
| // 23367 |
| f81632121_506.returns.push(null); |
| // 23373 |
| f81632121_506.returns.push(null); |
| // 23379 |
| f81632121_506.returns.push(null); |
| // 23385 |
| f81632121_506.returns.push(null); |
| // 23391 |
| f81632121_506.returns.push(null); |
| // 23397 |
| f81632121_506.returns.push(null); |
| // 23403 |
| f81632121_506.returns.push(null); |
| // 23409 |
| f81632121_506.returns.push(null); |
| // 23415 |
| f81632121_506.returns.push(null); |
| // 23421 |
| f81632121_506.returns.push(null); |
| // 23427 |
| f81632121_506.returns.push(null); |
| // 23433 |
| f81632121_506.returns.push(null); |
| // 23439 |
| f81632121_506.returns.push(null); |
| // 23445 |
| f81632121_506.returns.push(null); |
| // 23451 |
| f81632121_506.returns.push(null); |
| // 23457 |
| f81632121_506.returns.push(null); |
| // 23462 |
| o24.JSBNG__screenX = 854; |
| // 23463 |
| o24.JSBNG__screenY = 505; |
| // 23464 |
| o24.altKey = false; |
| // 23465 |
| o24.bubbles = true; |
| // 23466 |
| o24.button = 0; |
| // 23467 |
| o24.buttons = void 0; |
| // 23468 |
| o24.cancelable = false; |
| // 23469 |
| o24.clientX = 786; |
| // 23470 |
| o24.clientY = 340; |
| // 23471 |
| o24.ctrlKey = false; |
| // 23472 |
| o24.currentTarget = o0; |
| // 23473 |
| o24.defaultPrevented = false; |
| // 23474 |
| o24.detail = 0; |
| // 23475 |
| o24.eventPhase = 3; |
| // 23476 |
| o24.isTrusted = void 0; |
| // 23477 |
| o24.metaKey = false; |
| // 23478 |
| o24.pageX = 786; |
| // 23479 |
| o24.pageY = 340; |
| // 23480 |
| o24.relatedTarget = null; |
| // 23481 |
| o24.fromElement = null; |
| // 23484 |
| o24.shiftKey = false; |
| // 23487 |
| o24.timeStamp = 1374851250598; |
| // 23488 |
| o24.type = "mousemove"; |
| // 23489 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 23498 |
| f81632121_1852.returns.push(undefined); |
| // 23501 |
| f81632121_14.returns.push(undefined); |
| // 23502 |
| f81632121_12.returns.push(101); |
| // 23505 |
| o24 = {}; |
| // 23508 |
| o24.srcElement = o32; |
| // 23510 |
| o24.target = o32; |
| // 23517 |
| f81632121_506.returns.push(null); |
| // 23523 |
| f81632121_506.returns.push(null); |
| // 23529 |
| f81632121_506.returns.push(null); |
| // 23535 |
| f81632121_506.returns.push(null); |
| // 23541 |
| f81632121_506.returns.push(null); |
| // 23547 |
| f81632121_506.returns.push(null); |
| // 23553 |
| f81632121_506.returns.push(null); |
| // 23559 |
| f81632121_506.returns.push(null); |
| // 23565 |
| f81632121_506.returns.push(null); |
| // 23571 |
| f81632121_506.returns.push(null); |
| // 23577 |
| f81632121_506.returns.push(null); |
| // 23583 |
| f81632121_506.returns.push(null); |
| // 23589 |
| f81632121_506.returns.push(null); |
| // 23595 |
| f81632121_506.returns.push(null); |
| // 23601 |
| f81632121_506.returns.push(null); |
| // 23607 |
| f81632121_506.returns.push(null); |
| // 23613 |
| f81632121_506.returns.push(null); |
| // 23619 |
| f81632121_506.returns.push(null); |
| // 23625 |
| f81632121_506.returns.push(null); |
| // 23631 |
| f81632121_506.returns.push(null); |
| // 23637 |
| f81632121_506.returns.push(null); |
| // 23643 |
| f81632121_506.returns.push(null); |
| // 23649 |
| f81632121_506.returns.push(null); |
| // 23654 |
| o24.relatedTarget = o33; |
| // 23659 |
| f81632121_506.returns.push(null); |
| // 23665 |
| f81632121_506.returns.push(null); |
| // 23671 |
| f81632121_506.returns.push(null); |
| // 23677 |
| f81632121_506.returns.push(null); |
| // 23683 |
| f81632121_506.returns.push(null); |
| // 23689 |
| f81632121_506.returns.push(null); |
| // 23695 |
| f81632121_506.returns.push(null); |
| // 23701 |
| f81632121_506.returns.push(null); |
| // 23707 |
| f81632121_506.returns.push(null); |
| // 23713 |
| f81632121_506.returns.push(null); |
| // 23719 |
| f81632121_506.returns.push(null); |
| // 23725 |
| f81632121_506.returns.push(null); |
| // 23731 |
| f81632121_506.returns.push(null); |
| // 23737 |
| f81632121_506.returns.push(null); |
| // 23743 |
| f81632121_506.returns.push(null); |
| // 23749 |
| f81632121_506.returns.push(null); |
| // 23755 |
| f81632121_506.returns.push(null); |
| // 23760 |
| o24.cancelBubble = false; |
| // 23761 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 23762 |
| o24 = {}; |
| // 23765 |
| o24.cancelBubble = false; |
| // 23768 |
| f81632121_467.returns.push(1374851250628); |
| // 23771 |
| f81632121_1007.returns.push(undefined); |
| // 23773 |
| o24.returnValue = true; |
| // 23776 |
| o24.srcElement = o33; |
| // 23778 |
| o24.target = o33; |
| // 23785 |
| f81632121_506.returns.push(null); |
| // 23791 |
| f81632121_506.returns.push(null); |
| // 23797 |
| f81632121_506.returns.push(null); |
| // 23803 |
| f81632121_506.returns.push(null); |
| // 23809 |
| f81632121_506.returns.push(null); |
| // 23815 |
| f81632121_506.returns.push(null); |
| // 23821 |
| f81632121_506.returns.push(null); |
| // 23827 |
| f81632121_506.returns.push(null); |
| // 23833 |
| f81632121_506.returns.push(null); |
| // 23839 |
| f81632121_506.returns.push(null); |
| // 23845 |
| f81632121_506.returns.push(null); |
| // 23851 |
| f81632121_506.returns.push(null); |
| // 23857 |
| f81632121_506.returns.push(null); |
| // 23863 |
| f81632121_506.returns.push(null); |
| // 23869 |
| f81632121_506.returns.push(null); |
| // 23875 |
| f81632121_506.returns.push(null); |
| // 23881 |
| f81632121_506.returns.push(null); |
| // 23886 |
| o24.relatedTarget = o32; |
| // undefined |
| o24 = null; |
| // undefined |
| o32 = null; |
| // 23889 |
| o24 = {}; |
| // 23893 |
| f81632121_467.returns.push(1374851250634); |
| // 23894 |
| o24.cancelBubble = false; |
| // 23895 |
| o24.returnValue = true; |
| // 23898 |
| o24.srcElement = o33; |
| // 23900 |
| o24.target = o33; |
| // 23907 |
| f81632121_506.returns.push(null); |
| // 23913 |
| f81632121_506.returns.push(null); |
| // 23919 |
| f81632121_506.returns.push(null); |
| // 23925 |
| f81632121_506.returns.push(null); |
| // 23931 |
| f81632121_506.returns.push(null); |
| // 23937 |
| f81632121_506.returns.push(null); |
| // 23943 |
| f81632121_506.returns.push(null); |
| // 23949 |
| f81632121_506.returns.push(null); |
| // 23955 |
| f81632121_506.returns.push(null); |
| // 23961 |
| f81632121_506.returns.push(null); |
| // 23967 |
| f81632121_506.returns.push(null); |
| // 23973 |
| f81632121_506.returns.push(null); |
| // 23979 |
| f81632121_506.returns.push(null); |
| // 23985 |
| f81632121_506.returns.push(null); |
| // 23991 |
| f81632121_506.returns.push(null); |
| // 23997 |
| f81632121_506.returns.push(null); |
| // 24003 |
| f81632121_506.returns.push(null); |
| // 24008 |
| o24.JSBNG__screenX = 849; |
| // 24009 |
| o24.JSBNG__screenY = 512; |
| // 24010 |
| o24.altKey = false; |
| // 24011 |
| o24.bubbles = true; |
| // 24012 |
| o24.button = 0; |
| // 24013 |
| o24.buttons = void 0; |
| // 24014 |
| o24.cancelable = false; |
| // 24015 |
| o24.clientX = 781; |
| // 24016 |
| o24.clientY = 347; |
| // 24017 |
| o24.ctrlKey = false; |
| // 24018 |
| o24.currentTarget = o0; |
| // 24019 |
| o24.defaultPrevented = false; |
| // 24020 |
| o24.detail = 0; |
| // 24021 |
| o24.eventPhase = 3; |
| // 24022 |
| o24.isTrusted = void 0; |
| // 24023 |
| o24.metaKey = false; |
| // 24024 |
| o24.pageX = 781; |
| // 24025 |
| o24.pageY = 347; |
| // 24026 |
| o24.relatedTarget = null; |
| // 24027 |
| o24.fromElement = null; |
| // 24030 |
| o24.shiftKey = false; |
| // 24033 |
| o24.timeStamp = 1374851250634; |
| // 24034 |
| o24.type = "mousemove"; |
| // 24035 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 24044 |
| f81632121_1852.returns.push(undefined); |
| // 24047 |
| f81632121_14.returns.push(undefined); |
| // 24048 |
| f81632121_12.returns.push(102); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 24052 |
| o24 = {}; |
| // 24055 |
| o24.srcElement = o33; |
| // 24057 |
| o24.target = o33; |
| // 24064 |
| f81632121_506.returns.push(null); |
| // 24070 |
| f81632121_506.returns.push(null); |
| // 24076 |
| f81632121_506.returns.push(null); |
| // 24082 |
| f81632121_506.returns.push(null); |
| // 24088 |
| f81632121_506.returns.push(null); |
| // 24094 |
| f81632121_506.returns.push(null); |
| // 24100 |
| f81632121_506.returns.push(null); |
| // 24106 |
| f81632121_506.returns.push(null); |
| // 24112 |
| f81632121_506.returns.push(null); |
| // 24118 |
| f81632121_506.returns.push(null); |
| // 24124 |
| f81632121_506.returns.push(null); |
| // 24130 |
| f81632121_506.returns.push(null); |
| // 24136 |
| f81632121_506.returns.push(null); |
| // 24142 |
| f81632121_506.returns.push(null); |
| // 24148 |
| f81632121_506.returns.push(null); |
| // 24154 |
| f81632121_506.returns.push(null); |
| // 24160 |
| f81632121_506.returns.push(null); |
| // 24165 |
| o24.relatedTarget = o182; |
| // 24167 |
| o182.nodeType = 1; |
| // 24168 |
| o182.getAttribute = f81632121_506; |
| // 24170 |
| f81632121_506.returns.push(null); |
| // 24173 |
| o184.nodeType = 1; |
| // 24174 |
| o184.getAttribute = f81632121_506; |
| // undefined |
| o184 = null; |
| // 24176 |
| f81632121_506.returns.push(null); |
| // 24182 |
| f81632121_506.returns.push(null); |
| // 24188 |
| f81632121_506.returns.push(null); |
| // 24194 |
| f81632121_506.returns.push(null); |
| // 24200 |
| f81632121_506.returns.push(null); |
| // 24206 |
| f81632121_506.returns.push(null); |
| // 24212 |
| f81632121_506.returns.push(null); |
| // 24218 |
| f81632121_506.returns.push(null); |
| // 24224 |
| f81632121_506.returns.push(null); |
| // 24230 |
| f81632121_506.returns.push(null); |
| // 24236 |
| f81632121_506.returns.push(null); |
| // 24242 |
| f81632121_506.returns.push(null); |
| // 24248 |
| f81632121_506.returns.push(null); |
| // 24254 |
| f81632121_506.returns.push(null); |
| // 24260 |
| f81632121_506.returns.push(null); |
| // 24266 |
| f81632121_506.returns.push(null); |
| // 24271 |
| o24.cancelBubble = false; |
| // 24272 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 24273 |
| o24 = {}; |
| // 24276 |
| o24.cancelBubble = false; |
| // 24279 |
| f81632121_467.returns.push(1374851250660); |
| // 24282 |
| f81632121_1007.returns.push(undefined); |
| // 24284 |
| o24.returnValue = true; |
| // 24287 |
| o24.srcElement = o182; |
| // 24289 |
| o24.target = o182; |
| // 24296 |
| f81632121_506.returns.push(null); |
| // 24302 |
| f81632121_506.returns.push(null); |
| // 24308 |
| f81632121_506.returns.push(null); |
| // 24314 |
| f81632121_506.returns.push(null); |
| // 24320 |
| f81632121_506.returns.push(null); |
| // 24326 |
| f81632121_506.returns.push(null); |
| // 24332 |
| f81632121_506.returns.push(null); |
| // 24338 |
| f81632121_506.returns.push(null); |
| // 24344 |
| f81632121_506.returns.push(null); |
| // 24350 |
| f81632121_506.returns.push(null); |
| // 24356 |
| f81632121_506.returns.push(null); |
| // 24362 |
| f81632121_506.returns.push(null); |
| // 24368 |
| f81632121_506.returns.push(null); |
| // 24374 |
| f81632121_506.returns.push(null); |
| // 24380 |
| f81632121_506.returns.push(null); |
| // 24386 |
| f81632121_506.returns.push(null); |
| // 24392 |
| f81632121_506.returns.push(null); |
| // 24397 |
| o24.relatedTarget = o33; |
| // undefined |
| o24 = null; |
| // undefined |
| o33 = null; |
| // 24400 |
| o24 = {}; |
| // 24404 |
| f81632121_467.returns.push(1374851250670); |
| // 24405 |
| o24.cancelBubble = false; |
| // 24406 |
| o24.returnValue = true; |
| // 24409 |
| o24.srcElement = o182; |
| // 24411 |
| o24.target = o182; |
| // 24418 |
| f81632121_506.returns.push(null); |
| // 24424 |
| f81632121_506.returns.push(null); |
| // 24430 |
| f81632121_506.returns.push(null); |
| // 24436 |
| f81632121_506.returns.push(null); |
| // 24442 |
| f81632121_506.returns.push(null); |
| // 24448 |
| f81632121_506.returns.push(null); |
| // 24454 |
| f81632121_506.returns.push(null); |
| // 24460 |
| f81632121_506.returns.push(null); |
| // 24466 |
| f81632121_506.returns.push(null); |
| // 24472 |
| f81632121_506.returns.push(null); |
| // 24478 |
| f81632121_506.returns.push(null); |
| // 24484 |
| f81632121_506.returns.push(null); |
| // 24490 |
| f81632121_506.returns.push(null); |
| // 24496 |
| f81632121_506.returns.push(null); |
| // 24502 |
| f81632121_506.returns.push(null); |
| // 24508 |
| f81632121_506.returns.push(null); |
| // 24514 |
| f81632121_506.returns.push(null); |
| // 24519 |
| o24.JSBNG__screenX = 838; |
| // 24520 |
| o24.JSBNG__screenY = 524; |
| // 24521 |
| o24.altKey = false; |
| // 24522 |
| o24.bubbles = true; |
| // 24523 |
| o24.button = 0; |
| // 24524 |
| o24.buttons = void 0; |
| // 24525 |
| o24.cancelable = false; |
| // 24526 |
| o24.clientX = 770; |
| // 24527 |
| o24.clientY = 359; |
| // 24528 |
| o24.ctrlKey = false; |
| // 24529 |
| o24.currentTarget = o0; |
| // 24530 |
| o24.defaultPrevented = false; |
| // 24531 |
| o24.detail = 0; |
| // 24532 |
| o24.eventPhase = 3; |
| // 24533 |
| o24.isTrusted = void 0; |
| // 24534 |
| o24.metaKey = false; |
| // 24535 |
| o24.pageX = 770; |
| // 24536 |
| o24.pageY = 359; |
| // 24537 |
| o24.relatedTarget = null; |
| // 24538 |
| o24.fromElement = null; |
| // 24541 |
| o24.shiftKey = false; |
| // 24544 |
| o24.timeStamp = 1374851250669; |
| // 24545 |
| o24.type = "mousemove"; |
| // 24546 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 24555 |
| f81632121_1852.returns.push(undefined); |
| // 24558 |
| f81632121_14.returns.push(undefined); |
| // 24559 |
| f81632121_12.returns.push(103); |
| // 24562 |
| o24 = {}; |
| // 24566 |
| f81632121_467.returns.push(1374851250682); |
| // 24567 |
| o24.cancelBubble = false; |
| // 24568 |
| o24.returnValue = true; |
| // 24571 |
| o24.srcElement = o182; |
| // 24573 |
| o24.target = o182; |
| // 24580 |
| f81632121_506.returns.push(null); |
| // 24586 |
| f81632121_506.returns.push(null); |
| // 24592 |
| f81632121_506.returns.push(null); |
| // 24598 |
| f81632121_506.returns.push(null); |
| // 24604 |
| f81632121_506.returns.push(null); |
| // 24610 |
| f81632121_506.returns.push(null); |
| // 24616 |
| f81632121_506.returns.push(null); |
| // 24622 |
| f81632121_506.returns.push(null); |
| // 24628 |
| f81632121_506.returns.push(null); |
| // 24634 |
| f81632121_506.returns.push(null); |
| // 24640 |
| f81632121_506.returns.push(null); |
| // 24646 |
| f81632121_506.returns.push(null); |
| // 24652 |
| f81632121_506.returns.push(null); |
| // 24658 |
| f81632121_506.returns.push(null); |
| // 24664 |
| f81632121_506.returns.push(null); |
| // 24670 |
| f81632121_506.returns.push(null); |
| // 24676 |
| f81632121_506.returns.push(null); |
| // 24681 |
| o24.JSBNG__screenX = 833; |
| // 24682 |
| o24.JSBNG__screenY = 532; |
| // 24683 |
| o24.altKey = false; |
| // 24684 |
| o24.bubbles = true; |
| // 24685 |
| o24.button = 0; |
| // 24686 |
| o24.buttons = void 0; |
| // 24687 |
| o24.cancelable = false; |
| // 24688 |
| o24.clientX = 765; |
| // 24689 |
| o24.clientY = 367; |
| // 24690 |
| o24.ctrlKey = false; |
| // 24691 |
| o24.currentTarget = o0; |
| // 24692 |
| o24.defaultPrevented = false; |
| // 24693 |
| o24.detail = 0; |
| // 24694 |
| o24.eventPhase = 3; |
| // 24695 |
| o24.isTrusted = void 0; |
| // 24696 |
| o24.metaKey = false; |
| // 24697 |
| o24.pageX = 765; |
| // 24698 |
| o24.pageY = 367; |
| // 24699 |
| o24.relatedTarget = null; |
| // 24700 |
| o24.fromElement = null; |
| // 24703 |
| o24.shiftKey = false; |
| // 24706 |
| o24.timeStamp = 1374851250682; |
| // 24707 |
| o24.type = "mousemove"; |
| // 24708 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 24717 |
| f81632121_1852.returns.push(undefined); |
| // 24720 |
| f81632121_14.returns.push(undefined); |
| // 24721 |
| f81632121_12.returns.push(104); |
| // 24724 |
| o24 = {}; |
| // 24728 |
| f81632121_467.returns.push(1374851250694); |
| // 24729 |
| o24.cancelBubble = false; |
| // 24730 |
| o24.returnValue = true; |
| // 24733 |
| o24.srcElement = o182; |
| // 24735 |
| o24.target = o182; |
| // 24742 |
| f81632121_506.returns.push(null); |
| // 24748 |
| f81632121_506.returns.push(null); |
| // 24754 |
| f81632121_506.returns.push(null); |
| // 24760 |
| f81632121_506.returns.push(null); |
| // 24766 |
| f81632121_506.returns.push(null); |
| // 24772 |
| f81632121_506.returns.push(null); |
| // 24778 |
| f81632121_506.returns.push(null); |
| // 24784 |
| f81632121_506.returns.push(null); |
| // 24790 |
| f81632121_506.returns.push(null); |
| // 24796 |
| f81632121_506.returns.push(null); |
| // 24802 |
| f81632121_506.returns.push(null); |
| // 24808 |
| f81632121_506.returns.push(null); |
| // 24814 |
| f81632121_506.returns.push(null); |
| // 24820 |
| f81632121_506.returns.push(null); |
| // 24826 |
| f81632121_506.returns.push(null); |
| // 24832 |
| f81632121_506.returns.push(null); |
| // 24838 |
| f81632121_506.returns.push(null); |
| // 24843 |
| o24.JSBNG__screenX = 832; |
| // 24844 |
| o24.JSBNG__screenY = 533; |
| // 24845 |
| o24.altKey = false; |
| // 24846 |
| o24.bubbles = true; |
| // 24847 |
| o24.button = 0; |
| // 24848 |
| o24.buttons = void 0; |
| // 24849 |
| o24.cancelable = false; |
| // 24850 |
| o24.clientX = 764; |
| // 24851 |
| o24.clientY = 368; |
| // 24852 |
| o24.ctrlKey = false; |
| // 24853 |
| o24.currentTarget = o0; |
| // 24854 |
| o24.defaultPrevented = false; |
| // 24855 |
| o24.detail = 0; |
| // 24856 |
| o24.eventPhase = 3; |
| // 24857 |
| o24.isTrusted = void 0; |
| // 24858 |
| o24.metaKey = false; |
| // 24859 |
| o24.pageX = 764; |
| // 24860 |
| o24.pageY = 368; |
| // 24861 |
| o24.relatedTarget = null; |
| // 24862 |
| o24.fromElement = null; |
| // 24865 |
| o24.shiftKey = false; |
| // 24868 |
| o24.timeStamp = 1374851250694; |
| // 24869 |
| o24.type = "mousemove"; |
| // 24870 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 24879 |
| f81632121_1852.returns.push(undefined); |
| // 24882 |
| f81632121_14.returns.push(undefined); |
| // 24883 |
| f81632121_12.returns.push(105); |
| // 24886 |
| o24 = {}; |
| // 24890 |
| f81632121_467.returns.push(1374851250700); |
| // 24891 |
| o24.cancelBubble = false; |
| // 24892 |
| o24.returnValue = true; |
| // 24895 |
| o24.srcElement = o182; |
| // 24897 |
| o24.target = o182; |
| // 24904 |
| f81632121_506.returns.push(null); |
| // 24910 |
| f81632121_506.returns.push(null); |
| // 24916 |
| f81632121_506.returns.push(null); |
| // 24922 |
| f81632121_506.returns.push(null); |
| // 24928 |
| f81632121_506.returns.push(null); |
| // 24934 |
| f81632121_506.returns.push(null); |
| // 24940 |
| f81632121_506.returns.push(null); |
| // 24946 |
| f81632121_506.returns.push(null); |
| // 24952 |
| f81632121_506.returns.push(null); |
| // 24958 |
| f81632121_506.returns.push(null); |
| // 24964 |
| f81632121_506.returns.push(null); |
| // 24970 |
| f81632121_506.returns.push(null); |
| // 24976 |
| f81632121_506.returns.push(null); |
| // 24982 |
| f81632121_506.returns.push(null); |
| // 24988 |
| f81632121_506.returns.push(null); |
| // 24994 |
| f81632121_506.returns.push(null); |
| // 25000 |
| f81632121_506.returns.push(null); |
| // 25005 |
| o24.JSBNG__screenX = 832; |
| // 25006 |
| o24.JSBNG__screenY = 534; |
| // 25007 |
| o24.altKey = false; |
| // 25008 |
| o24.bubbles = true; |
| // 25009 |
| o24.button = 0; |
| // 25010 |
| o24.buttons = void 0; |
| // 25011 |
| o24.cancelable = false; |
| // 25012 |
| o24.clientX = 764; |
| // 25013 |
| o24.clientY = 369; |
| // 25014 |
| o24.ctrlKey = false; |
| // 25015 |
| o24.currentTarget = o0; |
| // 25016 |
| o24.defaultPrevented = false; |
| // 25017 |
| o24.detail = 0; |
| // 25018 |
| o24.eventPhase = 3; |
| // 25019 |
| o24.isTrusted = void 0; |
| // 25020 |
| o24.metaKey = false; |
| // 25021 |
| o24.pageX = 764; |
| // 25022 |
| o24.pageY = 369; |
| // 25023 |
| o24.relatedTarget = null; |
| // 25024 |
| o24.fromElement = null; |
| // 25027 |
| o24.shiftKey = false; |
| // 25030 |
| o24.timeStamp = 1374851250700; |
| // 25031 |
| o24.type = "mousemove"; |
| // 25032 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 25041 |
| f81632121_1852.returns.push(undefined); |
| // 25044 |
| f81632121_14.returns.push(undefined); |
| // 25045 |
| f81632121_12.returns.push(106); |
| // 25048 |
| o24 = {}; |
| // 25052 |
| f81632121_467.returns.push(1374851250714); |
| // 25053 |
| o24.cancelBubble = false; |
| // 25054 |
| o24.returnValue = true; |
| // 25057 |
| o24.srcElement = o182; |
| // 25059 |
| o24.target = o182; |
| // 25066 |
| f81632121_506.returns.push(null); |
| // 25072 |
| f81632121_506.returns.push(null); |
| // 25078 |
| f81632121_506.returns.push(null); |
| // 25084 |
| f81632121_506.returns.push(null); |
| // 25090 |
| f81632121_506.returns.push(null); |
| // 25096 |
| f81632121_506.returns.push(null); |
| // 25102 |
| f81632121_506.returns.push(null); |
| // 25108 |
| f81632121_506.returns.push(null); |
| // 25114 |
| f81632121_506.returns.push(null); |
| // 25120 |
| f81632121_506.returns.push(null); |
| // 25126 |
| f81632121_506.returns.push(null); |
| // 25132 |
| f81632121_506.returns.push(null); |
| // 25138 |
| f81632121_506.returns.push(null); |
| // 25144 |
| f81632121_506.returns.push(null); |
| // 25150 |
| f81632121_506.returns.push(null); |
| // 25156 |
| f81632121_506.returns.push(null); |
| // 25162 |
| f81632121_506.returns.push(null); |
| // 25167 |
| o24.JSBNG__screenX = 830; |
| // 25168 |
| o24.JSBNG__screenY = 538; |
| // 25169 |
| o24.altKey = false; |
| // 25170 |
| o24.bubbles = true; |
| // 25171 |
| o24.button = 0; |
| // 25172 |
| o24.buttons = void 0; |
| // 25173 |
| o24.cancelable = false; |
| // 25174 |
| o24.clientX = 762; |
| // 25175 |
| o24.clientY = 373; |
| // 25176 |
| o24.ctrlKey = false; |
| // 25177 |
| o24.currentTarget = o0; |
| // 25178 |
| o24.defaultPrevented = false; |
| // 25179 |
| o24.detail = 0; |
| // 25180 |
| o24.eventPhase = 3; |
| // 25181 |
| o24.isTrusted = void 0; |
| // 25182 |
| o24.metaKey = false; |
| // 25183 |
| o24.pageX = 762; |
| // 25184 |
| o24.pageY = 373; |
| // 25185 |
| o24.relatedTarget = null; |
| // 25186 |
| o24.fromElement = null; |
| // 25189 |
| o24.shiftKey = false; |
| // 25192 |
| o24.timeStamp = 1374851250714; |
| // 25193 |
| o24.type = "mousemove"; |
| // 25194 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 25203 |
| f81632121_1852.returns.push(undefined); |
| // 25206 |
| f81632121_14.returns.push(undefined); |
| // 25207 |
| f81632121_12.returns.push(107); |
| // 25210 |
| o24 = {}; |
| // 25214 |
| f81632121_467.returns.push(1374851250720); |
| // 25215 |
| o24.cancelBubble = false; |
| // 25216 |
| o24.returnValue = true; |
| // 25219 |
| o24.srcElement = o182; |
| // 25221 |
| o24.target = o182; |
| // 25228 |
| f81632121_506.returns.push(null); |
| // 25234 |
| f81632121_506.returns.push(null); |
| // 25240 |
| f81632121_506.returns.push(null); |
| // 25246 |
| f81632121_506.returns.push(null); |
| // 25252 |
| f81632121_506.returns.push(null); |
| // 25258 |
| f81632121_506.returns.push(null); |
| // 25264 |
| f81632121_506.returns.push(null); |
| // 25270 |
| f81632121_506.returns.push(null); |
| // 25276 |
| f81632121_506.returns.push(null); |
| // 25282 |
| f81632121_506.returns.push(null); |
| // 25288 |
| f81632121_506.returns.push(null); |
| // 25294 |
| f81632121_506.returns.push(null); |
| // 25300 |
| f81632121_506.returns.push(null); |
| // 25306 |
| f81632121_506.returns.push(null); |
| // 25312 |
| f81632121_506.returns.push(null); |
| // 25318 |
| f81632121_506.returns.push(null); |
| // 25324 |
| f81632121_506.returns.push(null); |
| // 25329 |
| o24.JSBNG__screenX = 830; |
| // 25330 |
| o24.JSBNG__screenY = 539; |
| // 25331 |
| o24.altKey = false; |
| // 25332 |
| o24.bubbles = true; |
| // 25333 |
| o24.button = 0; |
| // 25334 |
| o24.buttons = void 0; |
| // 25335 |
| o24.cancelable = false; |
| // 25336 |
| o24.clientX = 762; |
| // 25337 |
| o24.clientY = 374; |
| // 25338 |
| o24.ctrlKey = false; |
| // 25339 |
| o24.currentTarget = o0; |
| // 25340 |
| o24.defaultPrevented = false; |
| // 25341 |
| o24.detail = 0; |
| // 25342 |
| o24.eventPhase = 3; |
| // 25343 |
| o24.isTrusted = void 0; |
| // 25344 |
| o24.metaKey = false; |
| // 25345 |
| o24.pageX = 762; |
| // 25346 |
| o24.pageY = 374; |
| // 25347 |
| o24.relatedTarget = null; |
| // 25348 |
| o24.fromElement = null; |
| // 25351 |
| o24.shiftKey = false; |
| // 25354 |
| o24.timeStamp = 1374851250720; |
| // 25355 |
| o24.type = "mousemove"; |
| // 25356 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 25365 |
| f81632121_1852.returns.push(undefined); |
| // 25368 |
| f81632121_14.returns.push(undefined); |
| // 25369 |
| f81632121_12.returns.push(108); |
| // 25372 |
| o24 = {}; |
| // 25376 |
| f81632121_467.returns.push(1374851250731); |
| // 25377 |
| o24.cancelBubble = false; |
| // 25378 |
| o24.returnValue = true; |
| // 25381 |
| o24.srcElement = o182; |
| // 25383 |
| o24.target = o182; |
| // 25390 |
| f81632121_506.returns.push(null); |
| // 25396 |
| f81632121_506.returns.push(null); |
| // 25402 |
| f81632121_506.returns.push(null); |
| // 25408 |
| f81632121_506.returns.push(null); |
| // 25414 |
| f81632121_506.returns.push(null); |
| // 25420 |
| f81632121_506.returns.push(null); |
| // 25426 |
| f81632121_506.returns.push(null); |
| // 25432 |
| f81632121_506.returns.push(null); |
| // 25438 |
| f81632121_506.returns.push(null); |
| // 25444 |
| f81632121_506.returns.push(null); |
| // 25450 |
| f81632121_506.returns.push(null); |
| // 25456 |
| f81632121_506.returns.push(null); |
| // 25462 |
| f81632121_506.returns.push(null); |
| // 25468 |
| f81632121_506.returns.push(null); |
| // 25474 |
| f81632121_506.returns.push(null); |
| // 25480 |
| f81632121_506.returns.push(null); |
| // 25486 |
| f81632121_506.returns.push(null); |
| // 25491 |
| o24.JSBNG__screenX = 829; |
| // 25492 |
| o24.JSBNG__screenY = 540; |
| // 25493 |
| o24.altKey = false; |
| // 25494 |
| o24.bubbles = true; |
| // 25495 |
| o24.button = 0; |
| // 25496 |
| o24.buttons = void 0; |
| // 25497 |
| o24.cancelable = false; |
| // 25498 |
| o24.clientX = 761; |
| // 25499 |
| o24.clientY = 375; |
| // 25500 |
| o24.ctrlKey = false; |
| // 25501 |
| o24.currentTarget = o0; |
| // 25502 |
| o24.defaultPrevented = false; |
| // 25503 |
| o24.detail = 0; |
| // 25504 |
| o24.eventPhase = 3; |
| // 25505 |
| o24.isTrusted = void 0; |
| // 25506 |
| o24.metaKey = false; |
| // 25507 |
| o24.pageX = 761; |
| // 25508 |
| o24.pageY = 375; |
| // 25509 |
| o24.relatedTarget = null; |
| // 25510 |
| o24.fromElement = null; |
| // 25513 |
| o24.shiftKey = false; |
| // 25516 |
| o24.timeStamp = 1374851250731; |
| // 25517 |
| o24.type = "mousemove"; |
| // 25518 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 25527 |
| f81632121_1852.returns.push(undefined); |
| // 25530 |
| f81632121_14.returns.push(undefined); |
| // 25531 |
| f81632121_12.returns.push(109); |
| // 25534 |
| o24 = {}; |
| // 25538 |
| f81632121_467.returns.push(1374851250744); |
| // 25539 |
| o24.cancelBubble = false; |
| // 25540 |
| o24.returnValue = true; |
| // 25543 |
| o24.srcElement = o182; |
| // 25545 |
| o24.target = o182; |
| // 25552 |
| f81632121_506.returns.push(null); |
| // 25558 |
| f81632121_506.returns.push(null); |
| // 25564 |
| f81632121_506.returns.push(null); |
| // 25570 |
| f81632121_506.returns.push(null); |
| // 25576 |
| f81632121_506.returns.push(null); |
| // 25582 |
| f81632121_506.returns.push(null); |
| // 25588 |
| f81632121_506.returns.push(null); |
| // 25594 |
| f81632121_506.returns.push(null); |
| // 25600 |
| f81632121_506.returns.push(null); |
| // 25606 |
| f81632121_506.returns.push(null); |
| // 25612 |
| f81632121_506.returns.push(null); |
| // 25618 |
| f81632121_506.returns.push(null); |
| // 25624 |
| f81632121_506.returns.push(null); |
| // 25630 |
| f81632121_506.returns.push(null); |
| // 25636 |
| f81632121_506.returns.push(null); |
| // 25642 |
| f81632121_506.returns.push(null); |
| // 25648 |
| f81632121_506.returns.push(null); |
| // 25653 |
| o24.JSBNG__screenX = 829; |
| // 25654 |
| o24.JSBNG__screenY = 541; |
| // 25655 |
| o24.altKey = false; |
| // 25656 |
| o24.bubbles = true; |
| // 25657 |
| o24.button = 0; |
| // 25658 |
| o24.buttons = void 0; |
| // 25659 |
| o24.cancelable = false; |
| // 25660 |
| o24.clientX = 761; |
| // 25661 |
| o24.clientY = 376; |
| // 25662 |
| o24.ctrlKey = false; |
| // 25663 |
| o24.currentTarget = o0; |
| // 25664 |
| o24.defaultPrevented = false; |
| // 25665 |
| o24.detail = 0; |
| // 25666 |
| o24.eventPhase = 3; |
| // 25667 |
| o24.isTrusted = void 0; |
| // 25668 |
| o24.metaKey = false; |
| // 25669 |
| o24.pageX = 761; |
| // 25670 |
| o24.pageY = 376; |
| // 25671 |
| o24.relatedTarget = null; |
| // 25672 |
| o24.fromElement = null; |
| // 25675 |
| o24.shiftKey = false; |
| // 25678 |
| o24.timeStamp = 1374851250740; |
| // 25679 |
| o24.type = "mousemove"; |
| // 25680 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 25689 |
| f81632121_1852.returns.push(undefined); |
| // 25692 |
| f81632121_14.returns.push(undefined); |
| // 25693 |
| f81632121_12.returns.push(110); |
| // 25696 |
| o24 = {}; |
| // 25700 |
| f81632121_467.returns.push(1374851250752); |
| // 25701 |
| o24.cancelBubble = false; |
| // 25702 |
| o24.returnValue = true; |
| // 25705 |
| o24.srcElement = o182; |
| // 25707 |
| o24.target = o182; |
| // 25714 |
| f81632121_506.returns.push(null); |
| // 25720 |
| f81632121_506.returns.push(null); |
| // 25726 |
| f81632121_506.returns.push(null); |
| // 25732 |
| f81632121_506.returns.push(null); |
| // 25738 |
| f81632121_506.returns.push(null); |
| // 25744 |
| f81632121_506.returns.push(null); |
| // 25750 |
| f81632121_506.returns.push(null); |
| // 25756 |
| f81632121_506.returns.push(null); |
| // 25762 |
| f81632121_506.returns.push(null); |
| // 25768 |
| f81632121_506.returns.push(null); |
| // 25774 |
| f81632121_506.returns.push(null); |
| // 25780 |
| f81632121_506.returns.push(null); |
| // 25786 |
| f81632121_506.returns.push(null); |
| // 25792 |
| f81632121_506.returns.push(null); |
| // 25798 |
| f81632121_506.returns.push(null); |
| // 25804 |
| f81632121_506.returns.push(null); |
| // 25810 |
| f81632121_506.returns.push(null); |
| // 25815 |
| o24.JSBNG__screenX = 829; |
| // 25816 |
| o24.JSBNG__screenY = 543; |
| // 25817 |
| o24.altKey = false; |
| // 25818 |
| o24.bubbles = true; |
| // 25819 |
| o24.button = 0; |
| // 25820 |
| o24.buttons = void 0; |
| // 25821 |
| o24.cancelable = false; |
| // 25822 |
| o24.clientX = 761; |
| // 25823 |
| o24.clientY = 378; |
| // 25824 |
| o24.ctrlKey = false; |
| // 25825 |
| o24.currentTarget = o0; |
| // 25826 |
| o24.defaultPrevented = false; |
| // 25827 |
| o24.detail = 0; |
| // 25828 |
| o24.eventPhase = 3; |
| // 25829 |
| o24.isTrusted = void 0; |
| // 25830 |
| o24.metaKey = false; |
| // 25831 |
| o24.pageX = 761; |
| // 25832 |
| o24.pageY = 378; |
| // 25833 |
| o24.relatedTarget = null; |
| // 25834 |
| o24.fromElement = null; |
| // 25837 |
| o24.shiftKey = false; |
| // 25840 |
| o24.timeStamp = 1374851250752; |
| // 25841 |
| o24.type = "mousemove"; |
| // 25842 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 25851 |
| f81632121_1852.returns.push(undefined); |
| // 25854 |
| f81632121_14.returns.push(undefined); |
| // 25855 |
| f81632121_12.returns.push(111); |
| // 25858 |
| o24 = {}; |
| // 25862 |
| f81632121_467.returns.push(1374851250761); |
| // 25863 |
| o24.cancelBubble = false; |
| // 25864 |
| o24.returnValue = true; |
| // 25867 |
| o24.srcElement = o182; |
| // 25869 |
| o24.target = o182; |
| // 25876 |
| f81632121_506.returns.push(null); |
| // 25882 |
| f81632121_506.returns.push(null); |
| // 25888 |
| f81632121_506.returns.push(null); |
| // 25894 |
| f81632121_506.returns.push(null); |
| // 25900 |
| f81632121_506.returns.push(null); |
| // 25906 |
| f81632121_506.returns.push(null); |
| // 25912 |
| f81632121_506.returns.push(null); |
| // 25918 |
| f81632121_506.returns.push(null); |
| // 25924 |
| f81632121_506.returns.push(null); |
| // 25930 |
| f81632121_506.returns.push(null); |
| // 25936 |
| f81632121_506.returns.push(null); |
| // 25942 |
| f81632121_506.returns.push(null); |
| // 25948 |
| f81632121_506.returns.push(null); |
| // 25954 |
| f81632121_506.returns.push(null); |
| // 25960 |
| f81632121_506.returns.push(null); |
| // 25966 |
| f81632121_506.returns.push(null); |
| // 25972 |
| f81632121_506.returns.push(null); |
| // 25977 |
| o24.JSBNG__screenX = 828; |
| // 25978 |
| o24.JSBNG__screenY = 544; |
| // 25979 |
| o24.altKey = false; |
| // 25980 |
| o24.bubbles = true; |
| // 25981 |
| o24.button = 0; |
| // 25982 |
| o24.buttons = void 0; |
| // 25983 |
| o24.cancelable = false; |
| // 25984 |
| o24.clientX = 760; |
| // 25985 |
| o24.clientY = 379; |
| // 25986 |
| o24.ctrlKey = false; |
| // 25987 |
| o24.currentTarget = o0; |
| // 25988 |
| o24.defaultPrevented = false; |
| // 25989 |
| o24.detail = 0; |
| // 25990 |
| o24.eventPhase = 3; |
| // 25991 |
| o24.isTrusted = void 0; |
| // 25992 |
| o24.metaKey = false; |
| // 25993 |
| o24.pageX = 760; |
| // 25994 |
| o24.pageY = 379; |
| // 25995 |
| o24.relatedTarget = null; |
| // 25996 |
| o24.fromElement = null; |
| // 25999 |
| o24.shiftKey = false; |
| // 26002 |
| o24.timeStamp = 1374851250761; |
| // 26003 |
| o24.type = "mousemove"; |
| // 26004 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 26013 |
| f81632121_1852.returns.push(undefined); |
| // 26016 |
| f81632121_14.returns.push(undefined); |
| // 26017 |
| f81632121_12.returns.push(112); |
| // 26020 |
| o24 = {}; |
| // 26024 |
| f81632121_467.returns.push(1374851250771); |
| // 26025 |
| o24.cancelBubble = false; |
| // 26026 |
| o24.returnValue = true; |
| // 26029 |
| o24.srcElement = o182; |
| // 26031 |
| o24.target = o182; |
| // 26038 |
| f81632121_506.returns.push(null); |
| // 26044 |
| f81632121_506.returns.push(null); |
| // 26050 |
| f81632121_506.returns.push(null); |
| // 26056 |
| f81632121_506.returns.push(null); |
| // 26062 |
| f81632121_506.returns.push(null); |
| // 26068 |
| f81632121_506.returns.push(null); |
| // 26074 |
| f81632121_506.returns.push(null); |
| // 26080 |
| f81632121_506.returns.push(null); |
| // 26086 |
| f81632121_506.returns.push(null); |
| // 26092 |
| f81632121_506.returns.push(null); |
| // 26098 |
| f81632121_506.returns.push(null); |
| // 26104 |
| f81632121_506.returns.push(null); |
| // 26110 |
| f81632121_506.returns.push(null); |
| // 26116 |
| f81632121_506.returns.push(null); |
| // 26122 |
| f81632121_506.returns.push(null); |
| // 26128 |
| f81632121_506.returns.push(null); |
| // 26134 |
| f81632121_506.returns.push(null); |
| // 26139 |
| o24.JSBNG__screenX = 828; |
| // 26140 |
| o24.JSBNG__screenY = 545; |
| // 26141 |
| o24.altKey = false; |
| // 26142 |
| o24.bubbles = true; |
| // 26143 |
| o24.button = 0; |
| // 26144 |
| o24.buttons = void 0; |
| // 26145 |
| o24.cancelable = false; |
| // 26146 |
| o24.clientX = 760; |
| // 26147 |
| o24.clientY = 380; |
| // 26148 |
| o24.ctrlKey = false; |
| // 26149 |
| o24.currentTarget = o0; |
| // 26150 |
| o24.defaultPrevented = false; |
| // 26151 |
| o24.detail = 0; |
| // 26152 |
| o24.eventPhase = 3; |
| // 26153 |
| o24.isTrusted = void 0; |
| // 26154 |
| o24.metaKey = false; |
| // 26155 |
| o24.pageX = 760; |
| // 26156 |
| o24.pageY = 380; |
| // 26157 |
| o24.relatedTarget = null; |
| // 26158 |
| o24.fromElement = null; |
| // 26161 |
| o24.shiftKey = false; |
| // 26164 |
| o24.timeStamp = 1374851250771; |
| // 26165 |
| o24.type = "mousemove"; |
| // 26166 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 26175 |
| f81632121_1852.returns.push(undefined); |
| // 26178 |
| f81632121_14.returns.push(undefined); |
| // 26179 |
| f81632121_12.returns.push(113); |
| // 26182 |
| o24 = {}; |
| // 26186 |
| f81632121_467.returns.push(1374851250780); |
| // 26187 |
| o24.cancelBubble = false; |
| // 26188 |
| o24.returnValue = true; |
| // 26191 |
| o24.srcElement = o182; |
| // 26193 |
| o24.target = o182; |
| // 26200 |
| f81632121_506.returns.push(null); |
| // 26206 |
| f81632121_506.returns.push(null); |
| // 26212 |
| f81632121_506.returns.push(null); |
| // 26218 |
| f81632121_506.returns.push(null); |
| // 26224 |
| f81632121_506.returns.push(null); |
| // 26230 |
| f81632121_506.returns.push(null); |
| // 26236 |
| f81632121_506.returns.push(null); |
| // 26242 |
| f81632121_506.returns.push(null); |
| // 26248 |
| f81632121_506.returns.push(null); |
| // 26254 |
| f81632121_506.returns.push(null); |
| // 26260 |
| f81632121_506.returns.push(null); |
| // 26266 |
| f81632121_506.returns.push(null); |
| // 26272 |
| f81632121_506.returns.push(null); |
| // 26278 |
| f81632121_506.returns.push(null); |
| // 26284 |
| f81632121_506.returns.push(null); |
| // 26290 |
| f81632121_506.returns.push(null); |
| // 26296 |
| f81632121_506.returns.push(null); |
| // 26301 |
| o24.JSBNG__screenX = 827; |
| // 26302 |
| o24.JSBNG__screenY = 547; |
| // 26303 |
| o24.altKey = false; |
| // 26304 |
| o24.bubbles = true; |
| // 26305 |
| o24.button = 0; |
| // 26306 |
| o24.buttons = void 0; |
| // 26307 |
| o24.cancelable = false; |
| // 26308 |
| o24.clientX = 759; |
| // 26309 |
| o24.clientY = 382; |
| // 26310 |
| o24.ctrlKey = false; |
| // 26311 |
| o24.currentTarget = o0; |
| // 26312 |
| o24.defaultPrevented = false; |
| // 26313 |
| o24.detail = 0; |
| // 26314 |
| o24.eventPhase = 3; |
| // 26315 |
| o24.isTrusted = void 0; |
| // 26316 |
| o24.metaKey = false; |
| // 26317 |
| o24.pageX = 759; |
| // 26318 |
| o24.pageY = 382; |
| // 26319 |
| o24.relatedTarget = null; |
| // 26320 |
| o24.fromElement = null; |
| // 26323 |
| o24.shiftKey = false; |
| // 26326 |
| o24.timeStamp = 1374851250780; |
| // 26327 |
| o24.type = "mousemove"; |
| // 26328 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 26337 |
| f81632121_1852.returns.push(undefined); |
| // 26340 |
| f81632121_14.returns.push(undefined); |
| // 26341 |
| f81632121_12.returns.push(114); |
| // 26344 |
| o24 = {}; |
| // 26348 |
| f81632121_467.returns.push(1374851250787); |
| // 26349 |
| o24.cancelBubble = false; |
| // 26350 |
| o24.returnValue = true; |
| // 26353 |
| o24.srcElement = o182; |
| // 26355 |
| o24.target = o182; |
| // 26362 |
| f81632121_506.returns.push(null); |
| // 26368 |
| f81632121_506.returns.push(null); |
| // 26374 |
| f81632121_506.returns.push(null); |
| // 26380 |
| f81632121_506.returns.push(null); |
| // 26386 |
| f81632121_506.returns.push(null); |
| // 26392 |
| f81632121_506.returns.push(null); |
| // 26398 |
| f81632121_506.returns.push(null); |
| // 26404 |
| f81632121_506.returns.push(null); |
| // 26410 |
| f81632121_506.returns.push(null); |
| // 26416 |
| f81632121_506.returns.push(null); |
| // 26422 |
| f81632121_506.returns.push(null); |
| // 26428 |
| f81632121_506.returns.push(null); |
| // 26434 |
| f81632121_506.returns.push(null); |
| // 26440 |
| f81632121_506.returns.push(null); |
| // 26446 |
| f81632121_506.returns.push(null); |
| // 26452 |
| f81632121_506.returns.push(null); |
| // 26458 |
| f81632121_506.returns.push(null); |
| // 26463 |
| o24.JSBNG__screenX = 827; |
| // 26464 |
| o24.JSBNG__screenY = 550; |
| // 26465 |
| o24.altKey = false; |
| // 26466 |
| o24.bubbles = true; |
| // 26467 |
| o24.button = 0; |
| // 26468 |
| o24.buttons = void 0; |
| // 26469 |
| o24.cancelable = false; |
| // 26470 |
| o24.clientX = 759; |
| // 26471 |
| o24.clientY = 385; |
| // 26472 |
| o24.ctrlKey = false; |
| // 26473 |
| o24.currentTarget = o0; |
| // 26474 |
| o24.defaultPrevented = false; |
| // 26475 |
| o24.detail = 0; |
| // 26476 |
| o24.eventPhase = 3; |
| // 26477 |
| o24.isTrusted = void 0; |
| // 26478 |
| o24.metaKey = false; |
| // 26479 |
| o24.pageX = 759; |
| // 26480 |
| o24.pageY = 385; |
| // 26481 |
| o24.relatedTarget = null; |
| // 26482 |
| o24.fromElement = null; |
| // 26485 |
| o24.shiftKey = false; |
| // 26488 |
| o24.timeStamp = 1374851250787; |
| // 26489 |
| o24.type = "mousemove"; |
| // 26490 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 26499 |
| f81632121_1852.returns.push(undefined); |
| // 26502 |
| f81632121_14.returns.push(undefined); |
| // 26503 |
| f81632121_12.returns.push(115); |
| // 26506 |
| o24 = {}; |
| // 26510 |
| f81632121_467.returns.push(1374851250804); |
| // 26511 |
| o24.cancelBubble = false; |
| // 26512 |
| o24.returnValue = true; |
| // 26515 |
| o24.srcElement = o182; |
| // 26517 |
| o24.target = o182; |
| // 26524 |
| f81632121_506.returns.push(null); |
| // 26530 |
| f81632121_506.returns.push(null); |
| // 26536 |
| f81632121_506.returns.push(null); |
| // 26542 |
| f81632121_506.returns.push(null); |
| // 26548 |
| f81632121_506.returns.push(null); |
| // 26554 |
| f81632121_506.returns.push(null); |
| // 26560 |
| f81632121_506.returns.push(null); |
| // 26566 |
| f81632121_506.returns.push(null); |
| // 26572 |
| f81632121_506.returns.push(null); |
| // 26578 |
| f81632121_506.returns.push(null); |
| // 26584 |
| f81632121_506.returns.push(null); |
| // 26590 |
| f81632121_506.returns.push(null); |
| // 26596 |
| f81632121_506.returns.push(null); |
| // 26602 |
| f81632121_506.returns.push(null); |
| // 26608 |
| f81632121_506.returns.push(null); |
| // 26614 |
| f81632121_506.returns.push(null); |
| // 26620 |
| f81632121_506.returns.push(null); |
| // 26625 |
| o24.JSBNG__screenX = 825; |
| // 26626 |
| o24.JSBNG__screenY = 557; |
| // 26627 |
| o24.altKey = false; |
| // 26628 |
| o24.bubbles = true; |
| // 26629 |
| o24.button = 0; |
| // 26630 |
| o24.buttons = void 0; |
| // 26631 |
| o24.cancelable = false; |
| // 26632 |
| o24.clientX = 757; |
| // 26633 |
| o24.clientY = 392; |
| // 26634 |
| o24.ctrlKey = false; |
| // 26635 |
| o24.currentTarget = o0; |
| // 26636 |
| o24.defaultPrevented = false; |
| // 26637 |
| o24.detail = 0; |
| // 26638 |
| o24.eventPhase = 3; |
| // 26639 |
| o24.isTrusted = void 0; |
| // 26640 |
| o24.metaKey = false; |
| // 26641 |
| o24.pageX = 757; |
| // 26642 |
| o24.pageY = 392; |
| // 26643 |
| o24.relatedTarget = null; |
| // 26644 |
| o24.fromElement = null; |
| // 26647 |
| o24.shiftKey = false; |
| // 26650 |
| o24.timeStamp = 1374851250804; |
| // 26651 |
| o24.type = "mousemove"; |
| // 26652 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 26661 |
| f81632121_1852.returns.push(undefined); |
| // 26664 |
| f81632121_14.returns.push(undefined); |
| // 26665 |
| f81632121_12.returns.push(116); |
| // 26668 |
| o24 = {}; |
| // 26672 |
| f81632121_467.returns.push(1374851250810); |
| // 26673 |
| o24.cancelBubble = false; |
| // 26674 |
| o24.returnValue = true; |
| // 26677 |
| o24.srcElement = o182; |
| // 26679 |
| o24.target = o182; |
| // 26686 |
| f81632121_506.returns.push(null); |
| // 26692 |
| f81632121_506.returns.push(null); |
| // 26698 |
| f81632121_506.returns.push(null); |
| // 26704 |
| f81632121_506.returns.push(null); |
| // 26710 |
| f81632121_506.returns.push(null); |
| // 26716 |
| f81632121_506.returns.push(null); |
| // 26722 |
| f81632121_506.returns.push(null); |
| // 26728 |
| f81632121_506.returns.push(null); |
| // 26734 |
| f81632121_506.returns.push(null); |
| // 26740 |
| f81632121_506.returns.push(null); |
| // 26746 |
| f81632121_506.returns.push(null); |
| // 26752 |
| f81632121_506.returns.push(null); |
| // 26758 |
| f81632121_506.returns.push(null); |
| // 26764 |
| f81632121_506.returns.push(null); |
| // 26770 |
| f81632121_506.returns.push(null); |
| // 26776 |
| f81632121_506.returns.push(null); |
| // 26782 |
| f81632121_506.returns.push(null); |
| // 26787 |
| o24.JSBNG__screenX = 824; |
| // 26788 |
| o24.JSBNG__screenY = 563; |
| // 26789 |
| o24.altKey = false; |
| // 26790 |
| o24.bubbles = true; |
| // 26791 |
| o24.button = 0; |
| // 26792 |
| o24.buttons = void 0; |
| // 26793 |
| o24.cancelable = false; |
| // 26794 |
| o24.clientX = 756; |
| // 26795 |
| o24.clientY = 398; |
| // 26796 |
| o24.ctrlKey = false; |
| // 26797 |
| o24.currentTarget = o0; |
| // 26798 |
| o24.defaultPrevented = false; |
| // 26799 |
| o24.detail = 0; |
| // 26800 |
| o24.eventPhase = 3; |
| // 26801 |
| o24.isTrusted = void 0; |
| // 26802 |
| o24.metaKey = false; |
| // 26803 |
| o24.pageX = 756; |
| // 26804 |
| o24.pageY = 398; |
| // 26805 |
| o24.relatedTarget = null; |
| // 26806 |
| o24.fromElement = null; |
| // 26809 |
| o24.shiftKey = false; |
| // 26812 |
| o24.timeStamp = 1374851250810; |
| // 26813 |
| o24.type = "mousemove"; |
| // 26814 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 26823 |
| f81632121_1852.returns.push(undefined); |
| // 26826 |
| f81632121_14.returns.push(undefined); |
| // 26827 |
| f81632121_12.returns.push(117); |
| // 26830 |
| o24 = {}; |
| // 26833 |
| o24.srcElement = o182; |
| // 26835 |
| o24.target = o182; |
| // 26842 |
| f81632121_506.returns.push(null); |
| // 26848 |
| f81632121_506.returns.push(null); |
| // 26854 |
| f81632121_506.returns.push(null); |
| // 26860 |
| f81632121_506.returns.push(null); |
| // 26866 |
| f81632121_506.returns.push(null); |
| // 26872 |
| f81632121_506.returns.push(null); |
| // 26878 |
| f81632121_506.returns.push(null); |
| // 26884 |
| f81632121_506.returns.push(null); |
| // 26890 |
| f81632121_506.returns.push(null); |
| // 26896 |
| f81632121_506.returns.push(null); |
| // 26902 |
| f81632121_506.returns.push(null); |
| // 26908 |
| f81632121_506.returns.push(null); |
| // 26914 |
| f81632121_506.returns.push(null); |
| // 26920 |
| f81632121_506.returns.push(null); |
| // 26926 |
| f81632121_506.returns.push(null); |
| // 26932 |
| f81632121_506.returns.push(null); |
| // 26938 |
| f81632121_506.returns.push(null); |
| // 26943 |
| o24.relatedTarget = o185; |
| // 26948 |
| f81632121_506.returns.push(null); |
| // 26954 |
| f81632121_506.returns.push(null); |
| // 26960 |
| f81632121_506.returns.push(null); |
| // 26966 |
| f81632121_506.returns.push(null); |
| // 26972 |
| f81632121_506.returns.push(null); |
| // 26978 |
| f81632121_506.returns.push(null); |
| // 26984 |
| f81632121_506.returns.push(null); |
| // 26990 |
| f81632121_506.returns.push(null); |
| // 26996 |
| f81632121_506.returns.push(null); |
| // 27002 |
| f81632121_506.returns.push(null); |
| // 27008 |
| f81632121_506.returns.push(null); |
| // 27014 |
| f81632121_506.returns.push(null); |
| // 27019 |
| o24.cancelBubble = false; |
| // 27020 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 27021 |
| o24 = {}; |
| // 27024 |
| o24.cancelBubble = false; |
| // 27027 |
| f81632121_467.returns.push(1374851250831); |
| // 27030 |
| f81632121_1007.returns.push(undefined); |
| // 27032 |
| o24.returnValue = true; |
| // 27035 |
| o24.srcElement = o185; |
| // 27037 |
| o24.target = o185; |
| // 27044 |
| f81632121_506.returns.push(null); |
| // 27050 |
| f81632121_506.returns.push(null); |
| // 27056 |
| f81632121_506.returns.push(null); |
| // 27062 |
| f81632121_506.returns.push(null); |
| // 27068 |
| f81632121_506.returns.push(null); |
| // 27074 |
| f81632121_506.returns.push(null); |
| // 27080 |
| f81632121_506.returns.push(null); |
| // 27086 |
| f81632121_506.returns.push(null); |
| // 27092 |
| f81632121_506.returns.push(null); |
| // 27098 |
| f81632121_506.returns.push(null); |
| // 27104 |
| f81632121_506.returns.push(null); |
| // 27110 |
| f81632121_506.returns.push(null); |
| // 27115 |
| o24.relatedTarget = o182; |
| // undefined |
| o24 = null; |
| // undefined |
| o182 = null; |
| // 27118 |
| o24 = {}; |
| // 27122 |
| f81632121_467.returns.push(1374851250836); |
| // 27123 |
| o24.cancelBubble = false; |
| // 27124 |
| o24.returnValue = true; |
| // 27127 |
| o24.srcElement = o185; |
| // 27129 |
| o24.target = o185; |
| // 27136 |
| f81632121_506.returns.push(null); |
| // 27142 |
| f81632121_506.returns.push(null); |
| // 27148 |
| f81632121_506.returns.push(null); |
| // 27154 |
| f81632121_506.returns.push(null); |
| // 27160 |
| f81632121_506.returns.push(null); |
| // 27166 |
| f81632121_506.returns.push(null); |
| // 27172 |
| f81632121_506.returns.push(null); |
| // 27178 |
| f81632121_506.returns.push(null); |
| // 27184 |
| f81632121_506.returns.push(null); |
| // 27190 |
| f81632121_506.returns.push(null); |
| // 27196 |
| f81632121_506.returns.push(null); |
| // 27202 |
| f81632121_506.returns.push(null); |
| // 27207 |
| o24.JSBNG__screenX = 824; |
| // 27208 |
| o24.JSBNG__screenY = 566; |
| // 27209 |
| o24.altKey = false; |
| // 27210 |
| o24.bubbles = true; |
| // 27211 |
| o24.button = 0; |
| // 27212 |
| o24.buttons = void 0; |
| // 27213 |
| o24.cancelable = false; |
| // 27214 |
| o24.clientX = 756; |
| // 27215 |
| o24.clientY = 401; |
| // 27216 |
| o24.ctrlKey = false; |
| // 27217 |
| o24.currentTarget = o0; |
| // 27218 |
| o24.defaultPrevented = false; |
| // 27219 |
| o24.detail = 0; |
| // 27220 |
| o24.eventPhase = 3; |
| // 27221 |
| o24.isTrusted = void 0; |
| // 27222 |
| o24.metaKey = false; |
| // 27223 |
| o24.pageX = 756; |
| // 27224 |
| o24.pageY = 401; |
| // 27225 |
| o24.relatedTarget = null; |
| // 27226 |
| o24.fromElement = null; |
| // 27229 |
| o24.shiftKey = false; |
| // 27232 |
| o24.timeStamp = 1374851250836; |
| // 27233 |
| o24.type = "mousemove"; |
| // 27234 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 27243 |
| f81632121_1852.returns.push(undefined); |
| // 27246 |
| f81632121_14.returns.push(undefined); |
| // 27247 |
| f81632121_12.returns.push(118); |
| // 27250 |
| o24 = {}; |
| // 27253 |
| o24.srcElement = o185; |
| // 27255 |
| o24.target = o185; |
| // 27262 |
| f81632121_506.returns.push(null); |
| // 27268 |
| f81632121_506.returns.push(null); |
| // 27274 |
| f81632121_506.returns.push(null); |
| // 27280 |
| f81632121_506.returns.push(null); |
| // 27286 |
| f81632121_506.returns.push(null); |
| // 27292 |
| f81632121_506.returns.push(null); |
| // 27298 |
| f81632121_506.returns.push(null); |
| // 27304 |
| f81632121_506.returns.push(null); |
| // 27310 |
| f81632121_506.returns.push(null); |
| // 27316 |
| f81632121_506.returns.push(null); |
| // 27322 |
| f81632121_506.returns.push(null); |
| // 27328 |
| f81632121_506.returns.push(null); |
| // 27333 |
| o28 = {}; |
| // 27334 |
| o24.relatedTarget = o28; |
| // 27335 |
| o28.parentNode = o26; |
| // 27336 |
| o28.nodeType = 1; |
| // 27337 |
| o28.getAttribute = f81632121_506; |
| // 27339 |
| f81632121_506.returns.push(null); |
| // 27341 |
| o26.parentNode = o185; |
| // 27342 |
| o26.nodeType = 1; |
| // undefined |
| o26 = null; |
| // 27345 |
| f81632121_506.returns.push(null); |
| // 27351 |
| f81632121_506.returns.push(null); |
| // 27357 |
| f81632121_506.returns.push(null); |
| // 27363 |
| f81632121_506.returns.push(null); |
| // 27369 |
| f81632121_506.returns.push(null); |
| // 27375 |
| f81632121_506.returns.push(null); |
| // 27381 |
| f81632121_506.returns.push(null); |
| // 27387 |
| f81632121_506.returns.push(null); |
| // 27393 |
| f81632121_506.returns.push(null); |
| // 27399 |
| f81632121_506.returns.push(null); |
| // 27405 |
| f81632121_506.returns.push(null); |
| // 27411 |
| f81632121_506.returns.push(null); |
| // 27417 |
| f81632121_506.returns.push(null); |
| // 27422 |
| o24.cancelBubble = false; |
| // 27423 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 27424 |
| o24 = {}; |
| // 27427 |
| o24.cancelBubble = false; |
| // 27430 |
| f81632121_467.returns.push(1374851250854); |
| // 27433 |
| f81632121_1007.returns.push(undefined); |
| // 27435 |
| o24.returnValue = true; |
| // 27438 |
| o24.srcElement = o28; |
| // 27440 |
| o24.target = o28; |
| // 27447 |
| f81632121_506.returns.push(null); |
| // 27453 |
| f81632121_506.returns.push(null); |
| // 27459 |
| f81632121_506.returns.push(null); |
| // 27465 |
| f81632121_506.returns.push(null); |
| // 27471 |
| f81632121_506.returns.push(null); |
| // 27477 |
| f81632121_506.returns.push(null); |
| // 27483 |
| f81632121_506.returns.push(null); |
| // 27489 |
| f81632121_506.returns.push(null); |
| // 27495 |
| f81632121_506.returns.push(null); |
| // 27501 |
| f81632121_506.returns.push(null); |
| // 27507 |
| f81632121_506.returns.push(null); |
| // 27513 |
| f81632121_506.returns.push(null); |
| // 27519 |
| f81632121_506.returns.push(null); |
| // 27525 |
| f81632121_506.returns.push(null); |
| // 27530 |
| o24.relatedTarget = o185; |
| // undefined |
| o24 = null; |
| // undefined |
| o185 = null; |
| // 27533 |
| o24 = {}; |
| // 27537 |
| f81632121_467.returns.push(1374851250863); |
| // 27538 |
| o24.cancelBubble = false; |
| // 27539 |
| o24.returnValue = true; |
| // 27542 |
| o24.srcElement = o28; |
| // 27544 |
| o24.target = o28; |
| // 27551 |
| f81632121_506.returns.push(null); |
| // 27557 |
| f81632121_506.returns.push(null); |
| // 27563 |
| f81632121_506.returns.push(null); |
| // 27569 |
| f81632121_506.returns.push(null); |
| // 27575 |
| f81632121_506.returns.push(null); |
| // 27581 |
| f81632121_506.returns.push(null); |
| // 27587 |
| f81632121_506.returns.push(null); |
| // 27593 |
| f81632121_506.returns.push(null); |
| // 27599 |
| f81632121_506.returns.push(null); |
| // 27605 |
| f81632121_506.returns.push(null); |
| // 27611 |
| f81632121_506.returns.push(null); |
| // 27617 |
| f81632121_506.returns.push(null); |
| // 27623 |
| f81632121_506.returns.push(null); |
| // 27629 |
| f81632121_506.returns.push(null); |
| // 27634 |
| o24.JSBNG__screenX = 822; |
| // 27635 |
| o24.JSBNG__screenY = 580; |
| // 27636 |
| o24.altKey = false; |
| // 27637 |
| o24.bubbles = true; |
| // 27638 |
| o24.button = 0; |
| // 27639 |
| o24.buttons = void 0; |
| // 27640 |
| o24.cancelable = false; |
| // 27641 |
| o24.clientX = 754; |
| // 27642 |
| o24.clientY = 415; |
| // 27643 |
| o24.ctrlKey = false; |
| // 27644 |
| o24.currentTarget = o0; |
| // 27645 |
| o24.defaultPrevented = false; |
| // 27646 |
| o24.detail = 0; |
| // 27647 |
| o24.eventPhase = 3; |
| // 27648 |
| o24.isTrusted = void 0; |
| // 27649 |
| o24.metaKey = false; |
| // 27650 |
| o24.pageX = 754; |
| // 27651 |
| o24.pageY = 415; |
| // 27652 |
| o24.relatedTarget = null; |
| // 27653 |
| o24.fromElement = null; |
| // 27656 |
| o24.shiftKey = false; |
| // 27659 |
| o24.timeStamp = 1374851250863; |
| // 27660 |
| o24.type = "mousemove"; |
| // 27661 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 27670 |
| f81632121_1852.returns.push(undefined); |
| // 27673 |
| f81632121_14.returns.push(undefined); |
| // 27674 |
| f81632121_12.returns.push(119); |
| // 27684 |
| f81632121_467.returns.push(1374851250872); |
| // 27686 |
| f81632121_1007.returns.push(undefined); |
| // 27692 |
| f81632121_467.returns.push(1374851250872); |
| // 27699 |
| f81632121_1852.returns.push(undefined); |
| // 27701 |
| f81632121_14.returns.push(undefined); |
| // 27702 |
| f81632121_12.returns.push(120); |
| // 27703 |
| f81632121_12.returns.push(121); |
| // 27705 |
| o24 = {}; |
| // 27709 |
| f81632121_467.returns.push(1374851250882); |
| // 27710 |
| o24.cancelBubble = false; |
| // 27711 |
| o24.returnValue = true; |
| // 27714 |
| o26 = {}; |
| // 27715 |
| o24.srcElement = o26; |
| // 27717 |
| o24.target = o26; |
| // 27719 |
| o26.nodeType = 1; |
| // 27720 |
| o32 = {}; |
| // 27721 |
| o26.parentNode = o32; |
| // 27723 |
| o26.getAttribute = f81632121_506; |
| // 27725 |
| f81632121_506.returns.push(null); |
| // 27727 |
| o33 = {}; |
| // 27728 |
| o32.parentNode = o33; |
| // 27729 |
| o32.nodeType = 1; |
| // 27730 |
| o32.getAttribute = f81632121_506; |
| // undefined |
| o32 = null; |
| // 27732 |
| f81632121_506.returns.push(null); |
| // 27734 |
| o33.parentNode = o28; |
| // 27735 |
| o33.nodeType = 1; |
| // 27736 |
| o33.getAttribute = f81632121_506; |
| // undefined |
| o33 = null; |
| // 27738 |
| f81632121_506.returns.push(null); |
| // 27744 |
| f81632121_506.returns.push(null); |
| // 27750 |
| f81632121_506.returns.push(null); |
| // 27756 |
| f81632121_506.returns.push(null); |
| // 27762 |
| f81632121_506.returns.push(null); |
| // 27768 |
| f81632121_506.returns.push(null); |
| // 27774 |
| f81632121_506.returns.push(null); |
| // 27780 |
| f81632121_506.returns.push(null); |
| // 27786 |
| f81632121_506.returns.push(null); |
| // 27792 |
| f81632121_506.returns.push(null); |
| // 27798 |
| f81632121_506.returns.push(null); |
| // 27804 |
| f81632121_506.returns.push(null); |
| // 27810 |
| f81632121_506.returns.push(null); |
| // 27816 |
| f81632121_506.returns.push(null); |
| // 27822 |
| f81632121_506.returns.push(null); |
| // 27827 |
| o24.JSBNG__screenX = 822; |
| // 27828 |
| o24.JSBNG__screenY = 593; |
| // 27829 |
| o24.altKey = false; |
| // 27830 |
| o24.bubbles = true; |
| // 27831 |
| o24.button = 0; |
| // 27832 |
| o24.buttons = void 0; |
| // 27833 |
| o24.cancelable = false; |
| // 27834 |
| o24.clientX = 754; |
| // 27835 |
| o24.clientY = 428; |
| // 27836 |
| o24.ctrlKey = false; |
| // 27837 |
| o24.currentTarget = o0; |
| // 27838 |
| o24.defaultPrevented = false; |
| // 27839 |
| o24.detail = 0; |
| // 27840 |
| o24.eventPhase = 3; |
| // 27841 |
| o24.isTrusted = void 0; |
| // 27842 |
| o24.metaKey = false; |
| // 27843 |
| o24.pageX = 754; |
| // 27844 |
| o24.pageY = 428; |
| // 27845 |
| o24.relatedTarget = null; |
| // 27846 |
| o24.fromElement = null; |
| // 27849 |
| o24.shiftKey = false; |
| // 27852 |
| o24.timeStamp = 1374851250882; |
| // 27853 |
| o24.type = "mousemove"; |
| // 27854 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 27863 |
| f81632121_1852.returns.push(undefined); |
| // 27866 |
| f81632121_14.returns.push(undefined); |
| // 27867 |
| f81632121_12.returns.push(122); |
| // 27870 |
| o24 = {}; |
| // 27874 |
| f81632121_467.returns.push(1374851250893); |
| // 27875 |
| o24.cancelBubble = false; |
| // 27876 |
| o24.returnValue = true; |
| // 27879 |
| o24.srcElement = o26; |
| // 27881 |
| o24.target = o26; |
| // 27888 |
| f81632121_506.returns.push(null); |
| // 27894 |
| f81632121_506.returns.push(null); |
| // 27900 |
| f81632121_506.returns.push(null); |
| // 27906 |
| f81632121_506.returns.push(null); |
| // 27912 |
| f81632121_506.returns.push(null); |
| // 27918 |
| f81632121_506.returns.push(null); |
| // 27924 |
| f81632121_506.returns.push(null); |
| // 27930 |
| f81632121_506.returns.push(null); |
| // 27936 |
| f81632121_506.returns.push(null); |
| // 27942 |
| f81632121_506.returns.push(null); |
| // 27948 |
| f81632121_506.returns.push(null); |
| // 27954 |
| f81632121_506.returns.push(null); |
| // 27960 |
| f81632121_506.returns.push(null); |
| // 27966 |
| f81632121_506.returns.push(null); |
| // 27972 |
| f81632121_506.returns.push(null); |
| // 27978 |
| f81632121_506.returns.push(null); |
| // 27984 |
| f81632121_506.returns.push(null); |
| // 27989 |
| o24.JSBNG__screenX = 823; |
| // 27990 |
| o24.JSBNG__screenY = 596; |
| // 27991 |
| o24.altKey = false; |
| // 27992 |
| o24.bubbles = true; |
| // 27993 |
| o24.button = 0; |
| // 27994 |
| o24.buttons = void 0; |
| // 27995 |
| o24.cancelable = false; |
| // 27996 |
| o24.clientX = 755; |
| // 27997 |
| o24.clientY = 431; |
| // 27998 |
| o24.ctrlKey = false; |
| // 27999 |
| o24.currentTarget = o0; |
| // 28000 |
| o24.defaultPrevented = false; |
| // 28001 |
| o24.detail = 0; |
| // 28002 |
| o24.eventPhase = 3; |
| // 28003 |
| o24.isTrusted = void 0; |
| // 28004 |
| o24.metaKey = false; |
| // 28005 |
| o24.pageX = 755; |
| // 28006 |
| o24.pageY = 431; |
| // 28007 |
| o24.relatedTarget = null; |
| // 28008 |
| o24.fromElement = null; |
| // 28011 |
| o24.shiftKey = false; |
| // 28014 |
| o24.timeStamp = 1374851250893; |
| // 28015 |
| o24.type = "mousemove"; |
| // 28016 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 28025 |
| f81632121_1852.returns.push(undefined); |
| // 28028 |
| f81632121_14.returns.push(undefined); |
| // 28029 |
| f81632121_12.returns.push(123); |
| // 28032 |
| o24 = {}; |
| // 28036 |
| f81632121_467.returns.push(1374851250903); |
| // 28037 |
| o24.cancelBubble = false; |
| // 28038 |
| o24.returnValue = true; |
| // 28041 |
| o24.srcElement = o26; |
| // 28043 |
| o24.target = o26; |
| // 28050 |
| f81632121_506.returns.push(null); |
| // 28056 |
| f81632121_506.returns.push(null); |
| // 28062 |
| f81632121_506.returns.push(null); |
| // 28068 |
| f81632121_506.returns.push(null); |
| // 28074 |
| f81632121_506.returns.push(null); |
| // 28080 |
| f81632121_506.returns.push(null); |
| // 28086 |
| f81632121_506.returns.push(null); |
| // 28092 |
| f81632121_506.returns.push(null); |
| // 28098 |
| f81632121_506.returns.push(null); |
| // 28104 |
| f81632121_506.returns.push(null); |
| // 28110 |
| f81632121_506.returns.push(null); |
| // 28116 |
| f81632121_506.returns.push(null); |
| // 28122 |
| f81632121_506.returns.push(null); |
| // 28128 |
| f81632121_506.returns.push(null); |
| // 28134 |
| f81632121_506.returns.push(null); |
| // 28140 |
| f81632121_506.returns.push(null); |
| // 28146 |
| f81632121_506.returns.push(null); |
| // 28151 |
| o24.JSBNG__screenX = 825; |
| // 28152 |
| o24.JSBNG__screenY = 597; |
| // 28153 |
| o24.altKey = false; |
| // 28154 |
| o24.bubbles = true; |
| // 28155 |
| o24.button = 0; |
| // 28156 |
| o24.buttons = void 0; |
| // 28157 |
| o24.cancelable = false; |
| // 28158 |
| o24.clientX = 757; |
| // 28159 |
| o24.clientY = 432; |
| // 28160 |
| o24.ctrlKey = false; |
| // 28161 |
| o24.currentTarget = o0; |
| // 28162 |
| o24.defaultPrevented = false; |
| // 28163 |
| o24.detail = 0; |
| // 28164 |
| o24.eventPhase = 3; |
| // 28165 |
| o24.isTrusted = void 0; |
| // 28166 |
| o24.metaKey = false; |
| // 28167 |
| o24.pageX = 757; |
| // 28168 |
| o24.pageY = 432; |
| // 28169 |
| o24.relatedTarget = null; |
| // 28170 |
| o24.fromElement = null; |
| // 28173 |
| o24.shiftKey = false; |
| // 28176 |
| o24.timeStamp = 1374851250902; |
| // 28177 |
| o24.type = "mousemove"; |
| // 28178 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 28187 |
| f81632121_1852.returns.push(undefined); |
| // 28190 |
| f81632121_14.returns.push(undefined); |
| // 28191 |
| f81632121_12.returns.push(124); |
| // 28194 |
| o24 = {}; |
| // 28198 |
| f81632121_467.returns.push(1374851250912); |
| // 28199 |
| o24.cancelBubble = false; |
| // 28200 |
| o24.returnValue = true; |
| // 28203 |
| o24.srcElement = o26; |
| // 28205 |
| o24.target = o26; |
| // 28212 |
| f81632121_506.returns.push(null); |
| // 28218 |
| f81632121_506.returns.push(null); |
| // 28224 |
| f81632121_506.returns.push(null); |
| // 28230 |
| f81632121_506.returns.push(null); |
| // 28236 |
| f81632121_506.returns.push(null); |
| // 28242 |
| f81632121_506.returns.push(null); |
| // 28248 |
| f81632121_506.returns.push(null); |
| // 28254 |
| f81632121_506.returns.push(null); |
| // 28260 |
| f81632121_506.returns.push(null); |
| // 28266 |
| f81632121_506.returns.push(null); |
| // 28272 |
| f81632121_506.returns.push(null); |
| // 28278 |
| f81632121_506.returns.push(null); |
| // 28284 |
| f81632121_506.returns.push(null); |
| // 28290 |
| f81632121_506.returns.push(null); |
| // 28296 |
| f81632121_506.returns.push(null); |
| // 28302 |
| f81632121_506.returns.push(null); |
| // 28308 |
| f81632121_506.returns.push(null); |
| // 28313 |
| o24.JSBNG__screenX = 827; |
| // 28314 |
| o24.JSBNG__screenY = 600; |
| // 28315 |
| o24.altKey = false; |
| // 28316 |
| o24.bubbles = true; |
| // 28317 |
| o24.button = 0; |
| // 28318 |
| o24.buttons = void 0; |
| // 28319 |
| o24.cancelable = false; |
| // 28320 |
| o24.clientX = 759; |
| // 28321 |
| o24.clientY = 435; |
| // 28322 |
| o24.ctrlKey = false; |
| // 28323 |
| o24.currentTarget = o0; |
| // 28324 |
| o24.defaultPrevented = false; |
| // 28325 |
| o24.detail = 0; |
| // 28326 |
| o24.eventPhase = 3; |
| // 28327 |
| o24.isTrusted = void 0; |
| // 28328 |
| o24.metaKey = false; |
| // 28329 |
| o24.pageX = 759; |
| // 28330 |
| o24.pageY = 435; |
| // 28331 |
| o24.relatedTarget = null; |
| // 28332 |
| o24.fromElement = null; |
| // 28335 |
| o24.shiftKey = false; |
| // 28338 |
| o24.timeStamp = 1374851250912; |
| // 28339 |
| o24.type = "mousemove"; |
| // 28340 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 28349 |
| f81632121_1852.returns.push(undefined); |
| // 28352 |
| f81632121_14.returns.push(undefined); |
| // 28353 |
| f81632121_12.returns.push(125); |
| // 28356 |
| o24 = {}; |
| // 28360 |
| f81632121_467.returns.push(1374851250921); |
| // 28361 |
| o24.cancelBubble = false; |
| // 28362 |
| o24.returnValue = true; |
| // 28365 |
| o24.srcElement = o26; |
| // 28367 |
| o24.target = o26; |
| // 28374 |
| f81632121_506.returns.push(null); |
| // 28380 |
| f81632121_506.returns.push(null); |
| // 28386 |
| f81632121_506.returns.push(null); |
| // 28392 |
| f81632121_506.returns.push(null); |
| // 28398 |
| f81632121_506.returns.push(null); |
| // 28404 |
| f81632121_506.returns.push(null); |
| // 28410 |
| f81632121_506.returns.push(null); |
| // 28416 |
| f81632121_506.returns.push(null); |
| // 28422 |
| f81632121_506.returns.push(null); |
| // 28428 |
| f81632121_506.returns.push(null); |
| // 28434 |
| f81632121_506.returns.push(null); |
| // 28440 |
| f81632121_506.returns.push(null); |
| // 28446 |
| f81632121_506.returns.push(null); |
| // 28452 |
| f81632121_506.returns.push(null); |
| // 28458 |
| f81632121_506.returns.push(null); |
| // 28464 |
| f81632121_506.returns.push(null); |
| // 28470 |
| f81632121_506.returns.push(null); |
| // 28475 |
| o24.JSBNG__screenX = 829; |
| // 28476 |
| o24.JSBNG__screenY = 601; |
| // 28477 |
| o24.altKey = false; |
| // 28478 |
| o24.bubbles = true; |
| // 28479 |
| o24.button = 0; |
| // 28480 |
| o24.buttons = void 0; |
| // 28481 |
| o24.cancelable = false; |
| // 28482 |
| o24.clientX = 761; |
| // 28483 |
| o24.clientY = 436; |
| // 28484 |
| o24.ctrlKey = false; |
| // 28485 |
| o24.currentTarget = o0; |
| // 28486 |
| o24.defaultPrevented = false; |
| // 28487 |
| o24.detail = 0; |
| // 28488 |
| o24.eventPhase = 3; |
| // 28489 |
| o24.isTrusted = void 0; |
| // 28490 |
| o24.metaKey = false; |
| // 28491 |
| o24.pageX = 761; |
| // 28492 |
| o24.pageY = 436; |
| // 28493 |
| o24.relatedTarget = null; |
| // 28494 |
| o24.fromElement = null; |
| // 28497 |
| o24.shiftKey = false; |
| // 28500 |
| o24.timeStamp = 1374851250920; |
| // 28501 |
| o24.type = "mousemove"; |
| // 28502 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 28511 |
| f81632121_1852.returns.push(undefined); |
| // 28514 |
| f81632121_14.returns.push(undefined); |
| // 28515 |
| f81632121_12.returns.push(126); |
| // 28518 |
| o24 = {}; |
| // 28522 |
| f81632121_467.returns.push(1374851250932); |
| // 28523 |
| o24.cancelBubble = false; |
| // 28524 |
| o24.returnValue = true; |
| // 28527 |
| o24.srcElement = o26; |
| // 28529 |
| o24.target = o26; |
| // 28536 |
| f81632121_506.returns.push(null); |
| // 28542 |
| f81632121_506.returns.push(null); |
| // 28548 |
| f81632121_506.returns.push(null); |
| // 28554 |
| f81632121_506.returns.push(null); |
| // 28560 |
| f81632121_506.returns.push(null); |
| // 28566 |
| f81632121_506.returns.push(null); |
| // 28572 |
| f81632121_506.returns.push(null); |
| // 28578 |
| f81632121_506.returns.push(null); |
| // 28584 |
| f81632121_506.returns.push(null); |
| // 28590 |
| f81632121_506.returns.push(null); |
| // 28596 |
| f81632121_506.returns.push(null); |
| // 28602 |
| f81632121_506.returns.push(null); |
| // 28608 |
| f81632121_506.returns.push(null); |
| // 28614 |
| f81632121_506.returns.push(null); |
| // 28620 |
| f81632121_506.returns.push(null); |
| // 28626 |
| f81632121_506.returns.push(null); |
| // 28632 |
| f81632121_506.returns.push(null); |
| // 28637 |
| o24.JSBNG__screenX = 831; |
| // 28638 |
| o24.JSBNG__screenY = 602; |
| // 28639 |
| o24.altKey = false; |
| // 28640 |
| o24.bubbles = true; |
| // 28641 |
| o24.button = 0; |
| // 28642 |
| o24.buttons = void 0; |
| // 28643 |
| o24.cancelable = false; |
| // 28644 |
| o24.clientX = 763; |
| // 28645 |
| o24.clientY = 437; |
| // 28646 |
| o24.ctrlKey = false; |
| // 28647 |
| o24.currentTarget = o0; |
| // 28648 |
| o24.defaultPrevented = false; |
| // 28649 |
| o24.detail = 0; |
| // 28650 |
| o24.eventPhase = 3; |
| // 28651 |
| o24.isTrusted = void 0; |
| // 28652 |
| o24.metaKey = false; |
| // 28653 |
| o24.pageX = 763; |
| // 28654 |
| o24.pageY = 437; |
| // 28655 |
| o24.relatedTarget = null; |
| // 28656 |
| o24.fromElement = null; |
| // 28659 |
| o24.shiftKey = false; |
| // 28662 |
| o24.timeStamp = 1374851250932; |
| // 28663 |
| o24.type = "mousemove"; |
| // 28664 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 28673 |
| f81632121_1852.returns.push(undefined); |
| // 28676 |
| f81632121_14.returns.push(undefined); |
| // 28677 |
| f81632121_12.returns.push(127); |
| // 28680 |
| o24 = {}; |
| // 28684 |
| f81632121_467.returns.push(1374851250944); |
| // 28685 |
| o24.cancelBubble = false; |
| // 28686 |
| o24.returnValue = true; |
| // 28689 |
| o24.srcElement = o26; |
| // 28691 |
| o24.target = o26; |
| // 28698 |
| f81632121_506.returns.push(null); |
| // 28704 |
| f81632121_506.returns.push(null); |
| // 28710 |
| f81632121_506.returns.push(null); |
| // 28716 |
| f81632121_506.returns.push(null); |
| // 28722 |
| f81632121_506.returns.push(null); |
| // 28728 |
| f81632121_506.returns.push(null); |
| // 28734 |
| f81632121_506.returns.push(null); |
| // 28740 |
| f81632121_506.returns.push(null); |
| // 28746 |
| f81632121_506.returns.push(null); |
| // 28752 |
| f81632121_506.returns.push(null); |
| // 28758 |
| f81632121_506.returns.push(null); |
| // 28764 |
| f81632121_506.returns.push(null); |
| // 28770 |
| f81632121_506.returns.push(null); |
| // 28776 |
| f81632121_506.returns.push(null); |
| // 28782 |
| f81632121_506.returns.push(null); |
| // 28788 |
| f81632121_506.returns.push(null); |
| // 28794 |
| f81632121_506.returns.push(null); |
| // 28799 |
| o24.JSBNG__screenX = 834; |
| // 28800 |
| o24.JSBNG__screenY = 603; |
| // 28801 |
| o24.altKey = false; |
| // 28802 |
| o24.bubbles = true; |
| // 28803 |
| o24.button = 0; |
| // 28804 |
| o24.buttons = void 0; |
| // 28805 |
| o24.cancelable = false; |
| // 28806 |
| o24.clientX = 766; |
| // 28807 |
| o24.clientY = 438; |
| // 28808 |
| o24.ctrlKey = false; |
| // 28809 |
| o24.currentTarget = o0; |
| // 28810 |
| o24.defaultPrevented = false; |
| // 28811 |
| o24.detail = 0; |
| // 28812 |
| o24.eventPhase = 3; |
| // 28813 |
| o24.isTrusted = void 0; |
| // 28814 |
| o24.metaKey = false; |
| // 28815 |
| o24.pageX = 766; |
| // 28816 |
| o24.pageY = 438; |
| // 28817 |
| o24.relatedTarget = null; |
| // 28818 |
| o24.fromElement = null; |
| // 28821 |
| o24.shiftKey = false; |
| // 28824 |
| o24.timeStamp = 1374851250944; |
| // 28825 |
| o24.type = "mousemove"; |
| // 28826 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 28835 |
| f81632121_1852.returns.push(undefined); |
| // 28838 |
| f81632121_14.returns.push(undefined); |
| // 28839 |
| f81632121_12.returns.push(128); |
| // 28842 |
| o24 = {}; |
| // 28846 |
| f81632121_467.returns.push(1374851250951); |
| // 28847 |
| o24.cancelBubble = false; |
| // 28848 |
| o24.returnValue = true; |
| // 28851 |
| o24.srcElement = o26; |
| // 28853 |
| o24.target = o26; |
| // 28860 |
| f81632121_506.returns.push(null); |
| // 28866 |
| f81632121_506.returns.push(null); |
| // 28872 |
| f81632121_506.returns.push(null); |
| // 28878 |
| f81632121_506.returns.push(null); |
| // 28884 |
| f81632121_506.returns.push(null); |
| // 28890 |
| f81632121_506.returns.push(null); |
| // 28896 |
| f81632121_506.returns.push(null); |
| // 28902 |
| f81632121_506.returns.push(null); |
| // 28908 |
| f81632121_506.returns.push(null); |
| // 28914 |
| f81632121_506.returns.push(null); |
| // 28920 |
| f81632121_506.returns.push(null); |
| // 28926 |
| f81632121_506.returns.push(null); |
| // 28932 |
| f81632121_506.returns.push(null); |
| // 28938 |
| f81632121_506.returns.push(null); |
| // 28944 |
| f81632121_506.returns.push(null); |
| // 28950 |
| f81632121_506.returns.push(null); |
| // 28956 |
| f81632121_506.returns.push(null); |
| // 28961 |
| o24.JSBNG__screenX = 836; |
| // 28962 |
| o24.JSBNG__screenY = 604; |
| // 28963 |
| o24.altKey = false; |
| // 28964 |
| o24.bubbles = true; |
| // 28965 |
| o24.button = 0; |
| // 28966 |
| o24.buttons = void 0; |
| // 28967 |
| o24.cancelable = false; |
| // 28968 |
| o24.clientX = 768; |
| // 28969 |
| o24.clientY = 439; |
| // 28970 |
| o24.ctrlKey = false; |
| // 28971 |
| o24.currentTarget = o0; |
| // 28972 |
| o24.defaultPrevented = false; |
| // 28973 |
| o24.detail = 0; |
| // 28974 |
| o24.eventPhase = 3; |
| // 28975 |
| o24.isTrusted = void 0; |
| // 28976 |
| o24.metaKey = false; |
| // 28977 |
| o24.pageX = 768; |
| // 28978 |
| o24.pageY = 439; |
| // 28979 |
| o24.relatedTarget = null; |
| // 28980 |
| o24.fromElement = null; |
| // 28983 |
| o24.shiftKey = false; |
| // 28986 |
| o24.timeStamp = 1374851250951; |
| // 28987 |
| o24.type = "mousemove"; |
| // 28988 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 28997 |
| f81632121_1852.returns.push(undefined); |
| // 29000 |
| f81632121_14.returns.push(undefined); |
| // 29001 |
| f81632121_12.returns.push(129); |
| // 29004 |
| o24 = {}; |
| // 29008 |
| f81632121_467.returns.push(1374851250962); |
| // 29009 |
| o24.cancelBubble = false; |
| // 29010 |
| o24.returnValue = true; |
| // 29013 |
| o24.srcElement = o26; |
| // 29015 |
| o24.target = o26; |
| // 29022 |
| f81632121_506.returns.push(null); |
| // 29028 |
| f81632121_506.returns.push(null); |
| // 29034 |
| f81632121_506.returns.push(null); |
| // 29040 |
| f81632121_506.returns.push(null); |
| // 29046 |
| f81632121_506.returns.push(null); |
| // 29052 |
| f81632121_506.returns.push(null); |
| // 29058 |
| f81632121_506.returns.push(null); |
| // 29064 |
| f81632121_506.returns.push(null); |
| // 29070 |
| f81632121_506.returns.push(null); |
| // 29076 |
| f81632121_506.returns.push(null); |
| // 29082 |
| f81632121_506.returns.push(null); |
| // 29088 |
| f81632121_506.returns.push(null); |
| // 29094 |
| f81632121_506.returns.push(null); |
| // 29100 |
| f81632121_506.returns.push(null); |
| // 29106 |
| f81632121_506.returns.push(null); |
| // 29112 |
| f81632121_506.returns.push(null); |
| // 29118 |
| f81632121_506.returns.push(null); |
| // 29123 |
| o24.JSBNG__screenX = 837; |
| // 29124 |
| o24.JSBNG__screenY = 605; |
| // 29125 |
| o24.altKey = false; |
| // 29126 |
| o24.bubbles = true; |
| // 29127 |
| o24.button = 0; |
| // 29128 |
| o24.buttons = void 0; |
| // 29129 |
| o24.cancelable = false; |
| // 29130 |
| o24.clientX = 769; |
| // 29131 |
| o24.clientY = 440; |
| // 29132 |
| o24.ctrlKey = false; |
| // 29133 |
| o24.currentTarget = o0; |
| // 29134 |
| o24.defaultPrevented = false; |
| // 29135 |
| o24.detail = 0; |
| // 29136 |
| o24.eventPhase = 3; |
| // 29137 |
| o24.isTrusted = void 0; |
| // 29138 |
| o24.metaKey = false; |
| // 29139 |
| o24.pageX = 769; |
| // 29140 |
| o24.pageY = 440; |
| // 29141 |
| o24.relatedTarget = null; |
| // 29142 |
| o24.fromElement = null; |
| // 29145 |
| o24.shiftKey = false; |
| // 29148 |
| o24.timeStamp = 1374851250962; |
| // 29149 |
| o24.type = "mousemove"; |
| // 29150 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 29159 |
| f81632121_1852.returns.push(undefined); |
| // 29162 |
| f81632121_14.returns.push(undefined); |
| // 29163 |
| f81632121_12.returns.push(130); |
| // 29166 |
| o24 = {}; |
| // 29170 |
| f81632121_467.returns.push(1374851250969); |
| // 29171 |
| o24.cancelBubble = false; |
| // 29172 |
| o24.returnValue = true; |
| // 29175 |
| o24.srcElement = o26; |
| // 29177 |
| o24.target = o26; |
| // 29184 |
| f81632121_506.returns.push(null); |
| // 29190 |
| f81632121_506.returns.push(null); |
| // 29196 |
| f81632121_506.returns.push(null); |
| // 29202 |
| f81632121_506.returns.push(null); |
| // 29208 |
| f81632121_506.returns.push(null); |
| // 29214 |
| f81632121_506.returns.push(null); |
| // 29220 |
| f81632121_506.returns.push(null); |
| // 29226 |
| f81632121_506.returns.push(null); |
| // 29232 |
| f81632121_506.returns.push(null); |
| // 29238 |
| f81632121_506.returns.push(null); |
| // 29244 |
| f81632121_506.returns.push(null); |
| // 29250 |
| f81632121_506.returns.push(null); |
| // 29256 |
| f81632121_506.returns.push(null); |
| // 29262 |
| f81632121_506.returns.push(null); |
| // 29268 |
| f81632121_506.returns.push(null); |
| // 29274 |
| f81632121_506.returns.push(null); |
| // 29280 |
| f81632121_506.returns.push(null); |
| // 29285 |
| o24.JSBNG__screenX = 840; |
| // 29286 |
| o24.JSBNG__screenY = 606; |
| // 29287 |
| o24.altKey = false; |
| // 29288 |
| o24.bubbles = true; |
| // 29289 |
| o24.button = 0; |
| // 29290 |
| o24.buttons = void 0; |
| // 29291 |
| o24.cancelable = false; |
| // 29292 |
| o24.clientX = 772; |
| // 29293 |
| o24.clientY = 441; |
| // 29294 |
| o24.ctrlKey = false; |
| // 29295 |
| o24.currentTarget = o0; |
| // 29296 |
| o24.defaultPrevented = false; |
| // 29297 |
| o24.detail = 0; |
| // 29298 |
| o24.eventPhase = 3; |
| // 29299 |
| o24.isTrusted = void 0; |
| // 29300 |
| o24.metaKey = false; |
| // 29301 |
| o24.pageX = 772; |
| // 29302 |
| o24.pageY = 441; |
| // 29303 |
| o24.relatedTarget = null; |
| // 29304 |
| o24.fromElement = null; |
| // 29307 |
| o24.shiftKey = false; |
| // 29310 |
| o24.timeStamp = 1374851250968; |
| // 29311 |
| o24.type = "mousemove"; |
| // 29312 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 29321 |
| f81632121_1852.returns.push(undefined); |
| // 29324 |
| f81632121_14.returns.push(undefined); |
| // 29325 |
| f81632121_12.returns.push(131); |
| // 29328 |
| o24 = {}; |
| // 29332 |
| f81632121_467.returns.push(1374851250980); |
| // 29333 |
| o24.cancelBubble = false; |
| // 29334 |
| o24.returnValue = true; |
| // 29337 |
| o24.srcElement = o26; |
| // 29339 |
| o24.target = o26; |
| // 29346 |
| f81632121_506.returns.push(null); |
| // 29352 |
| f81632121_506.returns.push(null); |
| // 29358 |
| f81632121_506.returns.push(null); |
| // 29364 |
| f81632121_506.returns.push(null); |
| // 29370 |
| f81632121_506.returns.push(null); |
| // 29376 |
| f81632121_506.returns.push(null); |
| // 29382 |
| f81632121_506.returns.push(null); |
| // 29388 |
| f81632121_506.returns.push(null); |
| // 29394 |
| f81632121_506.returns.push(null); |
| // 29400 |
| f81632121_506.returns.push(null); |
| // 29406 |
| f81632121_506.returns.push(null); |
| // 29412 |
| f81632121_506.returns.push(null); |
| // 29418 |
| f81632121_506.returns.push(null); |
| // 29424 |
| f81632121_506.returns.push(null); |
| // 29430 |
| f81632121_506.returns.push(null); |
| // 29436 |
| f81632121_506.returns.push(null); |
| // 29442 |
| f81632121_506.returns.push(null); |
| // 29447 |
| o24.JSBNG__screenX = 841; |
| // 29448 |
| o24.JSBNG__screenY = 606; |
| // 29449 |
| o24.altKey = false; |
| // 29450 |
| o24.bubbles = true; |
| // 29451 |
| o24.button = 0; |
| // 29452 |
| o24.buttons = void 0; |
| // 29453 |
| o24.cancelable = false; |
| // 29454 |
| o24.clientX = 773; |
| // 29455 |
| o24.clientY = 441; |
| // 29456 |
| o24.ctrlKey = false; |
| // 29457 |
| o24.currentTarget = o0; |
| // 29458 |
| o24.defaultPrevented = false; |
| // 29459 |
| o24.detail = 0; |
| // 29460 |
| o24.eventPhase = 3; |
| // 29461 |
| o24.isTrusted = void 0; |
| // 29462 |
| o24.metaKey = false; |
| // 29463 |
| o24.pageX = 773; |
| // 29464 |
| o24.pageY = 441; |
| // 29465 |
| o24.relatedTarget = null; |
| // 29466 |
| o24.fromElement = null; |
| // 29469 |
| o24.shiftKey = false; |
| // 29472 |
| o24.timeStamp = 1374851250979; |
| // 29473 |
| o24.type = "mousemove"; |
| // 29474 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 29483 |
| f81632121_1852.returns.push(undefined); |
| // 29486 |
| f81632121_14.returns.push(undefined); |
| // 29487 |
| f81632121_12.returns.push(132); |
| // 29490 |
| o24 = {}; |
| // 29494 |
| f81632121_467.returns.push(1374851250992); |
| // 29495 |
| o24.cancelBubble = false; |
| // 29496 |
| o24.returnValue = true; |
| // 29499 |
| o24.srcElement = o26; |
| // 29501 |
| o24.target = o26; |
| // 29508 |
| f81632121_506.returns.push(null); |
| // 29514 |
| f81632121_506.returns.push(null); |
| // 29520 |
| f81632121_506.returns.push(null); |
| // 29526 |
| f81632121_506.returns.push(null); |
| // 29532 |
| f81632121_506.returns.push(null); |
| // 29538 |
| f81632121_506.returns.push(null); |
| // 29544 |
| f81632121_506.returns.push(null); |
| // 29550 |
| f81632121_506.returns.push(null); |
| // 29556 |
| f81632121_506.returns.push(null); |
| // 29562 |
| f81632121_506.returns.push(null); |
| // 29568 |
| f81632121_506.returns.push(null); |
| // 29574 |
| f81632121_506.returns.push(null); |
| // 29580 |
| f81632121_506.returns.push(null); |
| // 29586 |
| f81632121_506.returns.push(null); |
| // 29592 |
| f81632121_506.returns.push(null); |
| // 29598 |
| f81632121_506.returns.push(null); |
| // 29604 |
| f81632121_506.returns.push(null); |
| // 29609 |
| o24.JSBNG__screenX = 843; |
| // 29610 |
| o24.JSBNG__screenY = 606; |
| // 29611 |
| o24.altKey = false; |
| // 29612 |
| o24.bubbles = true; |
| // 29613 |
| o24.button = 0; |
| // 29614 |
| o24.buttons = void 0; |
| // 29615 |
| o24.cancelable = false; |
| // 29616 |
| o24.clientX = 775; |
| // 29617 |
| o24.clientY = 441; |
| // 29618 |
| o24.ctrlKey = false; |
| // 29619 |
| o24.currentTarget = o0; |
| // 29620 |
| o24.defaultPrevented = false; |
| // 29621 |
| o24.detail = 0; |
| // 29622 |
| o24.eventPhase = 3; |
| // 29623 |
| o24.isTrusted = void 0; |
| // 29624 |
| o24.metaKey = false; |
| // 29625 |
| o24.pageX = 775; |
| // 29626 |
| o24.pageY = 441; |
| // 29627 |
| o24.relatedTarget = null; |
| // 29628 |
| o24.fromElement = null; |
| // 29631 |
| o24.shiftKey = false; |
| // 29634 |
| o24.timeStamp = 1374851250992; |
| // 29635 |
| o24.type = "mousemove"; |
| // 29636 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 29645 |
| f81632121_1852.returns.push(undefined); |
| // 29648 |
| f81632121_14.returns.push(undefined); |
| // 29649 |
| f81632121_12.returns.push(133); |
| // 29652 |
| o24 = {}; |
| // 29656 |
| f81632121_467.returns.push(1374851251003); |
| // 29657 |
| o24.cancelBubble = false; |
| // 29658 |
| o24.returnValue = true; |
| // 29661 |
| o24.srcElement = o26; |
| // 29663 |
| o24.target = o26; |
| // 29670 |
| f81632121_506.returns.push(null); |
| // 29676 |
| f81632121_506.returns.push(null); |
| // 29682 |
| f81632121_506.returns.push(null); |
| // 29688 |
| f81632121_506.returns.push(null); |
| // 29694 |
| f81632121_506.returns.push(null); |
| // 29700 |
| f81632121_506.returns.push(null); |
| // 29706 |
| f81632121_506.returns.push(null); |
| // 29712 |
| f81632121_506.returns.push(null); |
| // 29718 |
| f81632121_506.returns.push(null); |
| // 29724 |
| f81632121_506.returns.push(null); |
| // 29730 |
| f81632121_506.returns.push(null); |
| // 29736 |
| f81632121_506.returns.push(null); |
| // 29742 |
| f81632121_506.returns.push(null); |
| // 29748 |
| f81632121_506.returns.push(null); |
| // 29754 |
| f81632121_506.returns.push(null); |
| // 29760 |
| f81632121_506.returns.push(null); |
| // 29766 |
| f81632121_506.returns.push(null); |
| // 29771 |
| o24.JSBNG__screenX = 844; |
| // 29772 |
| o24.JSBNG__screenY = 606; |
| // 29773 |
| o24.altKey = false; |
| // 29774 |
| o24.bubbles = true; |
| // 29775 |
| o24.button = 0; |
| // 29776 |
| o24.buttons = void 0; |
| // 29777 |
| o24.cancelable = false; |
| // 29778 |
| o24.clientX = 776; |
| // 29779 |
| o24.clientY = 441; |
| // 29780 |
| o24.ctrlKey = false; |
| // 29781 |
| o24.currentTarget = o0; |
| // 29782 |
| o24.defaultPrevented = false; |
| // 29783 |
| o24.detail = 0; |
| // 29784 |
| o24.eventPhase = 3; |
| // 29785 |
| o24.isTrusted = void 0; |
| // 29786 |
| o24.metaKey = false; |
| // 29787 |
| o24.pageX = 776; |
| // 29788 |
| o24.pageY = 441; |
| // 29789 |
| o24.relatedTarget = null; |
| // 29790 |
| o24.fromElement = null; |
| // 29793 |
| o24.shiftKey = false; |
| // 29796 |
| o24.timeStamp = 1374851251002; |
| // 29797 |
| o24.type = "mousemove"; |
| // 29798 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 29807 |
| f81632121_1852.returns.push(undefined); |
| // 29810 |
| f81632121_14.returns.push(undefined); |
| // 29811 |
| f81632121_12.returns.push(134); |
| // 29814 |
| o24 = {}; |
| // 29818 |
| f81632121_467.returns.push(1374851251015); |
| // 29819 |
| o24.cancelBubble = false; |
| // 29820 |
| o24.returnValue = true; |
| // 29823 |
| o24.srcElement = o26; |
| // 29825 |
| o24.target = o26; |
| // 29832 |
| f81632121_506.returns.push(null); |
| // 29838 |
| f81632121_506.returns.push(null); |
| // 29844 |
| f81632121_506.returns.push(null); |
| // 29850 |
| f81632121_506.returns.push(null); |
| // 29856 |
| f81632121_506.returns.push(null); |
| // 29862 |
| f81632121_506.returns.push(null); |
| // 29868 |
| f81632121_506.returns.push(null); |
| // 29874 |
| f81632121_506.returns.push(null); |
| // 29880 |
| f81632121_506.returns.push(null); |
| // 29886 |
| f81632121_506.returns.push(null); |
| // 29892 |
| f81632121_506.returns.push(null); |
| // 29898 |
| f81632121_506.returns.push(null); |
| // 29904 |
| f81632121_506.returns.push(null); |
| // 29910 |
| f81632121_506.returns.push(null); |
| // 29916 |
| f81632121_506.returns.push(null); |
| // 29922 |
| f81632121_506.returns.push(null); |
| // 29928 |
| f81632121_506.returns.push(null); |
| // 29933 |
| o24.JSBNG__screenX = 845; |
| // 29934 |
| o24.JSBNG__screenY = 606; |
| // 29935 |
| o24.altKey = false; |
| // 29936 |
| o24.bubbles = true; |
| // 29937 |
| o24.button = 0; |
| // 29938 |
| o24.buttons = void 0; |
| // 29939 |
| o24.cancelable = false; |
| // 29940 |
| o24.clientX = 777; |
| // 29941 |
| o24.clientY = 441; |
| // 29942 |
| o24.ctrlKey = false; |
| // 29943 |
| o24.currentTarget = o0; |
| // 29944 |
| o24.defaultPrevented = false; |
| // 29945 |
| o24.detail = 0; |
| // 29946 |
| o24.eventPhase = 3; |
| // 29947 |
| o24.isTrusted = void 0; |
| // 29948 |
| o24.metaKey = false; |
| // 29949 |
| o24.pageX = 777; |
| // 29950 |
| o24.pageY = 441; |
| // 29951 |
| o24.relatedTarget = null; |
| // 29952 |
| o24.fromElement = null; |
| // 29955 |
| o24.shiftKey = false; |
| // 29958 |
| o24.timeStamp = 1374851251015; |
| // 29959 |
| o24.type = "mousemove"; |
| // 29960 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 29969 |
| f81632121_1852.returns.push(undefined); |
| // 29972 |
| f81632121_14.returns.push(undefined); |
| // 29973 |
| f81632121_12.returns.push(135); |
| // 29976 |
| o24 = {}; |
| // 29980 |
| f81632121_467.returns.push(1374851251029); |
| // 29981 |
| o24.cancelBubble = false; |
| // 29982 |
| o24.returnValue = true; |
| // 29985 |
| o24.srcElement = o26; |
| // 29987 |
| o24.target = o26; |
| // 29994 |
| f81632121_506.returns.push(null); |
| // 30000 |
| f81632121_506.returns.push(null); |
| // 30006 |
| f81632121_506.returns.push(null); |
| // 30012 |
| f81632121_506.returns.push(null); |
| // 30018 |
| f81632121_506.returns.push(null); |
| // 30024 |
| f81632121_506.returns.push(null); |
| // 30030 |
| f81632121_506.returns.push(null); |
| // 30036 |
| f81632121_506.returns.push(null); |
| // 30042 |
| f81632121_506.returns.push(null); |
| // 30048 |
| f81632121_506.returns.push(null); |
| // 30054 |
| f81632121_506.returns.push(null); |
| // 30060 |
| f81632121_506.returns.push(null); |
| // 30066 |
| f81632121_506.returns.push(null); |
| // 30072 |
| f81632121_506.returns.push(null); |
| // 30078 |
| f81632121_506.returns.push(null); |
| // 30084 |
| f81632121_506.returns.push(null); |
| // 30090 |
| f81632121_506.returns.push(null); |
| // 30095 |
| o24.JSBNG__screenX = 846; |
| // 30096 |
| o24.JSBNG__screenY = 606; |
| // 30097 |
| o24.altKey = false; |
| // 30098 |
| o24.bubbles = true; |
| // 30099 |
| o24.button = 0; |
| // 30100 |
| o24.buttons = void 0; |
| // 30101 |
| o24.cancelable = false; |
| // 30102 |
| o24.clientX = 778; |
| // 30103 |
| o24.clientY = 441; |
| // 30104 |
| o24.ctrlKey = false; |
| // 30105 |
| o24.currentTarget = o0; |
| // 30106 |
| o24.defaultPrevented = false; |
| // 30107 |
| o24.detail = 0; |
| // 30108 |
| o24.eventPhase = 3; |
| // 30109 |
| o24.isTrusted = void 0; |
| // 30110 |
| o24.metaKey = false; |
| // 30111 |
| o24.pageX = 778; |
| // 30112 |
| o24.pageY = 441; |
| // 30113 |
| o24.relatedTarget = null; |
| // 30114 |
| o24.fromElement = null; |
| // 30117 |
| o24.shiftKey = false; |
| // 30120 |
| o24.timeStamp = 1374851251029; |
| // 30121 |
| o24.type = "mousemove"; |
| // 30122 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 30131 |
| f81632121_1852.returns.push(undefined); |
| // 30134 |
| f81632121_14.returns.push(undefined); |
| // 30135 |
| f81632121_12.returns.push(136); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 30141 |
| f81632121_467.returns.push(1374851251040); |
| // 30142 |
| o24 = {}; |
| // 30146 |
| f81632121_467.returns.push(1374851251047); |
| // 30147 |
| o24.cancelBubble = false; |
| // 30148 |
| o24.returnValue = true; |
| // 30151 |
| o24.srcElement = o26; |
| // 30153 |
| o24.target = o26; |
| // 30160 |
| f81632121_506.returns.push(null); |
| // 30166 |
| f81632121_506.returns.push(null); |
| // 30172 |
| f81632121_506.returns.push(null); |
| // 30178 |
| f81632121_506.returns.push(null); |
| // 30184 |
| f81632121_506.returns.push(null); |
| // 30190 |
| f81632121_506.returns.push(null); |
| // 30196 |
| f81632121_506.returns.push(null); |
| // 30202 |
| f81632121_506.returns.push(null); |
| // 30208 |
| f81632121_506.returns.push(null); |
| // 30214 |
| f81632121_506.returns.push(null); |
| // 30220 |
| f81632121_506.returns.push(null); |
| // 30226 |
| f81632121_506.returns.push(null); |
| // 30232 |
| f81632121_506.returns.push(null); |
| // 30238 |
| f81632121_506.returns.push(null); |
| // 30244 |
| f81632121_506.returns.push(null); |
| // 30250 |
| f81632121_506.returns.push(null); |
| // 30256 |
| f81632121_506.returns.push(null); |
| // 30261 |
| o24.JSBNG__screenX = 847; |
| // 30262 |
| o24.JSBNG__screenY = 606; |
| // 30263 |
| o24.altKey = false; |
| // 30264 |
| o24.bubbles = true; |
| // 30265 |
| o24.button = 0; |
| // 30266 |
| o24.buttons = void 0; |
| // 30267 |
| o24.cancelable = false; |
| // 30268 |
| o24.clientX = 779; |
| // 30269 |
| o24.clientY = 441; |
| // 30270 |
| o24.ctrlKey = false; |
| // 30271 |
| o24.currentTarget = o0; |
| // 30272 |
| o24.defaultPrevented = false; |
| // 30273 |
| o24.detail = 0; |
| // 30274 |
| o24.eventPhase = 3; |
| // 30275 |
| o24.isTrusted = void 0; |
| // 30276 |
| o24.metaKey = false; |
| // 30277 |
| o24.pageX = 779; |
| // 30278 |
| o24.pageY = 441; |
| // 30279 |
| o24.relatedTarget = null; |
| // 30280 |
| o24.fromElement = null; |
| // 30283 |
| o24.shiftKey = false; |
| // 30286 |
| o24.timeStamp = 1374851251046; |
| // 30287 |
| o24.type = "mousemove"; |
| // 30288 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 30297 |
| f81632121_1852.returns.push(undefined); |
| // 30300 |
| f81632121_14.returns.push(undefined); |
| // 30301 |
| f81632121_12.returns.push(137); |
| // 30304 |
| o24 = {}; |
| // 30308 |
| f81632121_467.returns.push(1374851251062); |
| // 30309 |
| o24.cancelBubble = false; |
| // 30310 |
| o24.returnValue = true; |
| // 30313 |
| o24.srcElement = o26; |
| // 30315 |
| o24.target = o26; |
| // 30322 |
| f81632121_506.returns.push(null); |
| // 30328 |
| f81632121_506.returns.push(null); |
| // 30334 |
| f81632121_506.returns.push(null); |
| // 30340 |
| f81632121_506.returns.push(null); |
| // 30346 |
| f81632121_506.returns.push(null); |
| // 30352 |
| f81632121_506.returns.push(null); |
| // 30358 |
| f81632121_506.returns.push(null); |
| // 30364 |
| f81632121_506.returns.push(null); |
| // 30370 |
| f81632121_506.returns.push(null); |
| // 30376 |
| f81632121_506.returns.push(null); |
| // 30382 |
| f81632121_506.returns.push(null); |
| // 30388 |
| f81632121_506.returns.push(null); |
| // 30394 |
| f81632121_506.returns.push(null); |
| // 30400 |
| f81632121_506.returns.push(null); |
| // 30406 |
| f81632121_506.returns.push(null); |
| // 30412 |
| f81632121_506.returns.push(null); |
| // 30418 |
| f81632121_506.returns.push(null); |
| // 30423 |
| o24.JSBNG__screenX = 848; |
| // 30424 |
| o24.JSBNG__screenY = 606; |
| // 30425 |
| o24.altKey = false; |
| // 30426 |
| o24.bubbles = true; |
| // 30427 |
| o24.button = 0; |
| // 30428 |
| o24.buttons = void 0; |
| // 30429 |
| o24.cancelable = false; |
| // 30430 |
| o24.clientX = 780; |
| // 30431 |
| o24.clientY = 441; |
| // 30432 |
| o24.ctrlKey = false; |
| // 30433 |
| o24.currentTarget = o0; |
| // 30434 |
| o24.defaultPrevented = false; |
| // 30435 |
| o24.detail = 0; |
| // 30436 |
| o24.eventPhase = 3; |
| // 30437 |
| o24.isTrusted = void 0; |
| // 30438 |
| o24.metaKey = false; |
| // 30439 |
| o24.pageX = 780; |
| // 30440 |
| o24.pageY = 441; |
| // 30441 |
| o24.relatedTarget = null; |
| // 30442 |
| o24.fromElement = null; |
| // 30445 |
| o24.shiftKey = false; |
| // 30448 |
| o24.timeStamp = 1374851251062; |
| // 30449 |
| o24.type = "mousemove"; |
| // 30450 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 30459 |
| f81632121_1852.returns.push(undefined); |
| // 30462 |
| f81632121_14.returns.push(undefined); |
| // 30463 |
| f81632121_12.returns.push(138); |
| // 30466 |
| o24 = {}; |
| // 30470 |
| f81632121_467.returns.push(1374851251079); |
| // 30471 |
| o24.cancelBubble = false; |
| // 30472 |
| o24.returnValue = true; |
| // 30475 |
| o24.srcElement = o26; |
| // 30477 |
| o24.target = o26; |
| // 30484 |
| f81632121_506.returns.push(null); |
| // 30490 |
| f81632121_506.returns.push(null); |
| // 30496 |
| f81632121_506.returns.push(null); |
| // 30502 |
| f81632121_506.returns.push(null); |
| // 30508 |
| f81632121_506.returns.push(null); |
| // 30514 |
| f81632121_506.returns.push(null); |
| // 30520 |
| f81632121_506.returns.push(null); |
| // 30526 |
| f81632121_506.returns.push(null); |
| // 30532 |
| f81632121_506.returns.push(null); |
| // 30538 |
| f81632121_506.returns.push(null); |
| // 30544 |
| f81632121_506.returns.push(null); |
| // 30550 |
| f81632121_506.returns.push(null); |
| // 30556 |
| f81632121_506.returns.push(null); |
| // 30562 |
| f81632121_506.returns.push(null); |
| // 30568 |
| f81632121_506.returns.push(null); |
| // 30574 |
| f81632121_506.returns.push(null); |
| // 30580 |
| f81632121_506.returns.push(null); |
| // 30585 |
| o24.JSBNG__screenX = 849; |
| // 30586 |
| o24.JSBNG__screenY = 606; |
| // 30587 |
| o24.altKey = false; |
| // 30588 |
| o24.bubbles = true; |
| // 30589 |
| o24.button = 0; |
| // 30590 |
| o24.buttons = void 0; |
| // 30591 |
| o24.cancelable = false; |
| // 30592 |
| o24.clientX = 781; |
| // 30593 |
| o24.clientY = 441; |
| // 30594 |
| o24.ctrlKey = false; |
| // 30595 |
| o24.currentTarget = o0; |
| // 30596 |
| o24.defaultPrevented = false; |
| // 30597 |
| o24.detail = 0; |
| // 30598 |
| o24.eventPhase = 3; |
| // 30599 |
| o24.isTrusted = void 0; |
| // 30600 |
| o24.metaKey = false; |
| // 30601 |
| o24.pageX = 781; |
| // 30602 |
| o24.pageY = 441; |
| // 30603 |
| o24.relatedTarget = null; |
| // 30604 |
| o24.fromElement = null; |
| // 30607 |
| o24.shiftKey = false; |
| // 30610 |
| o24.timeStamp = 1374851251079; |
| // 30611 |
| o24.type = "mousemove"; |
| // 30612 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 30621 |
| f81632121_1852.returns.push(undefined); |
| // 30624 |
| f81632121_14.returns.push(undefined); |
| // 30625 |
| f81632121_12.returns.push(139); |
| // 30628 |
| o24 = {}; |
| // 30632 |
| f81632121_467.returns.push(1374851251088); |
| // 30637 |
| f81632121_467.returns.push(1374851251089); |
| // 30641 |
| f81632121_467.returns.push(1374851251089); |
| // 30643 |
| o24.cancelBubble = false; |
| // 30644 |
| o24.returnValue = true; |
| // 30647 |
| o24.srcElement = o26; |
| // 30649 |
| o24.target = o26; |
| // 30656 |
| f81632121_506.returns.push(null); |
| // 30662 |
| f81632121_506.returns.push(null); |
| // 30668 |
| f81632121_506.returns.push(null); |
| // 30674 |
| f81632121_506.returns.push(null); |
| // 30680 |
| f81632121_506.returns.push(null); |
| // 30686 |
| f81632121_506.returns.push(null); |
| // 30692 |
| f81632121_506.returns.push(null); |
| // 30698 |
| f81632121_506.returns.push(null); |
| // 30704 |
| f81632121_506.returns.push(null); |
| // 30710 |
| f81632121_506.returns.push(null); |
| // 30716 |
| f81632121_506.returns.push(null); |
| // 30722 |
| f81632121_506.returns.push(null); |
| // 30728 |
| f81632121_506.returns.push(null); |
| // 30734 |
| f81632121_506.returns.push(null); |
| // 30740 |
| f81632121_506.returns.push(null); |
| // 30746 |
| f81632121_506.returns.push(null); |
| // 30752 |
| f81632121_506.returns.push(null); |
| // 30757 |
| o24.JSBNG__screenX = 850; |
| // 30758 |
| o24.JSBNG__screenY = 606; |
| // 30759 |
| o24.altKey = false; |
| // 30760 |
| o24.bubbles = true; |
| // 30761 |
| o24.button = 0; |
| // 30762 |
| o24.buttons = void 0; |
| // 30763 |
| o24.cancelable = false; |
| // 30764 |
| o24.clientX = 782; |
| // 30765 |
| o24.clientY = 441; |
| // 30766 |
| o24.ctrlKey = false; |
| // 30767 |
| o24.currentTarget = o0; |
| // 30768 |
| o24.defaultPrevented = false; |
| // 30769 |
| o24.detail = 0; |
| // 30770 |
| o24.eventPhase = 3; |
| // 30771 |
| o24.isTrusted = void 0; |
| // 30772 |
| o24.metaKey = false; |
| // 30773 |
| o24.pageX = 782; |
| // 30774 |
| o24.pageY = 441; |
| // 30775 |
| o24.relatedTarget = null; |
| // 30776 |
| o24.fromElement = null; |
| // 30779 |
| o24.shiftKey = false; |
| // 30782 |
| o24.timeStamp = 1374851251088; |
| // 30783 |
| o24.type = "mousemove"; |
| // 30784 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 30793 |
| f81632121_1852.returns.push(undefined); |
| // 30796 |
| f81632121_14.returns.push(undefined); |
| // 30797 |
| f81632121_12.returns.push(140); |
| // 30800 |
| o24 = {}; |
| // 30804 |
| f81632121_467.returns.push(1374851251135); |
| // 30805 |
| o24.cancelBubble = false; |
| // 30806 |
| o24.returnValue = true; |
| // 30809 |
| o24.srcElement = o26; |
| // 30811 |
| o24.target = o26; |
| // 30818 |
| f81632121_506.returns.push(null); |
| // 30824 |
| f81632121_506.returns.push(null); |
| // 30830 |
| f81632121_506.returns.push(null); |
| // 30836 |
| f81632121_506.returns.push(null); |
| // 30842 |
| f81632121_506.returns.push(null); |
| // 30848 |
| f81632121_506.returns.push(null); |
| // 30854 |
| f81632121_506.returns.push(null); |
| // 30860 |
| f81632121_506.returns.push(null); |
| // 30866 |
| f81632121_506.returns.push(null); |
| // 30872 |
| f81632121_506.returns.push(null); |
| // 30878 |
| f81632121_506.returns.push(null); |
| // 30884 |
| f81632121_506.returns.push(null); |
| // 30890 |
| f81632121_506.returns.push(null); |
| // 30896 |
| f81632121_506.returns.push(null); |
| // 30902 |
| f81632121_506.returns.push(null); |
| // 30908 |
| f81632121_506.returns.push(null); |
| // 30914 |
| f81632121_506.returns.push(null); |
| // 30919 |
| o24.JSBNG__screenX = 850; |
| // 30920 |
| o24.JSBNG__screenY = 606; |
| // 30921 |
| o24.altKey = false; |
| // 30922 |
| o24.bubbles = true; |
| // 30923 |
| o24.button = 0; |
| // 30924 |
| o24.buttons = void 0; |
| // 30925 |
| o24.cancelable = false; |
| // 30926 |
| o24.clientX = 782; |
| // 30927 |
| o24.clientY = 441; |
| // 30928 |
| o24.ctrlKey = false; |
| // 30929 |
| o24.currentTarget = o0; |
| // 30930 |
| o24.defaultPrevented = false; |
| // 30931 |
| o24.detail = 0; |
| // 30932 |
| o24.eventPhase = 3; |
| // 30933 |
| o24.isTrusted = void 0; |
| // 30934 |
| o24.metaKey = false; |
| // 30935 |
| o24.pageX = 782; |
| // 30936 |
| o24.pageY = 441; |
| // 30937 |
| o24.relatedTarget = null; |
| // 30938 |
| o24.fromElement = null; |
| // 30941 |
| o24.shiftKey = false; |
| // 30944 |
| o24.timeStamp = 1374851251134; |
| // 30945 |
| o24.type = "mousemove"; |
| // 30946 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 30955 |
| f81632121_1852.returns.push(undefined); |
| // 30958 |
| f81632121_14.returns.push(undefined); |
| // 30959 |
| f81632121_12.returns.push(141); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 30964 |
| o24 = {}; |
| // 30967 |
| o24.cancelBubble = false; |
| // 30970 |
| f81632121_467.returns.push(1374851251713); |
| // 30975 |
| f81632121_467.returns.push(1374851251725); |
| // 30979 |
| f81632121_467.returns.push(1374851251725); |
| // 30982 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 30983 |
| o24 = {}; |
| // 30986 |
| o24.cancelBubble = false; |
| // 30989 |
| f81632121_467.returns.push(1374851251755); |
| // 30991 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 30992 |
| o24 = {}; |
| // 30995 |
| o24.cancelBubble = false; |
| // 30998 |
| f81632121_467.returns.push(1374851251787); |
| // 31000 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31001 |
| o24 = {}; |
| // 31004 |
| o24.cancelBubble = false; |
| // 31007 |
| f81632121_467.returns.push(1374851251809); |
| // 31009 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31010 |
| o24 = {}; |
| // 31013 |
| o24.cancelBubble = false; |
| // 31016 |
| f81632121_467.returns.push(1374851251825); |
| // 31018 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31019 |
| o24 = {}; |
| // 31022 |
| o24.cancelBubble = false; |
| // 31025 |
| f81632121_467.returns.push(1374851251843); |
| // 31027 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31028 |
| o24 = {}; |
| // 31031 |
| o24.cancelBubble = false; |
| // 31034 |
| f81632121_467.returns.push(1374851251859); |
| // 31036 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31037 |
| o24 = {}; |
| // 31040 |
| o24.cancelBubble = false; |
| // 31043 |
| f81632121_467.returns.push(1374851251875); |
| // 31045 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31047 |
| f81632121_12.returns.push(142); |
| // 31049 |
| o24 = {}; |
| // 31052 |
| o24.cancelBubble = false; |
| // 31055 |
| f81632121_467.returns.push(1374851251892); |
| // 31057 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31058 |
| o24 = {}; |
| // 31061 |
| o24.cancelBubble = false; |
| // 31064 |
| f81632121_467.returns.push(1374851251910); |
| // 31066 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31067 |
| o24 = {}; |
| // 31070 |
| o24.cancelBubble = false; |
| // 31073 |
| f81632121_467.returns.push(1374851251927); |
| // 31075 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31076 |
| o24 = {}; |
| // 31079 |
| o24.cancelBubble = false; |
| // 31082 |
| f81632121_467.returns.push(1374851251942); |
| // 31084 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31085 |
| o24 = {}; |
| // 31088 |
| o24.cancelBubble = false; |
| // 31091 |
| f81632121_467.returns.push(1374851251961); |
| // 31093 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31094 |
| o24 = {}; |
| // 31097 |
| o24.cancelBubble = false; |
| // 31100 |
| f81632121_467.returns.push(1374851251975); |
| // 31102 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31103 |
| o24 = {}; |
| // 31106 |
| o24.cancelBubble = false; |
| // 31109 |
| f81632121_467.returns.push(1374851251993); |
| // 31111 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31112 |
| o24 = {}; |
| // 31115 |
| o24.cancelBubble = false; |
| // 31118 |
| f81632121_467.returns.push(1374851252008); |
| // 31120 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31121 |
| o24 = {}; |
| // 31124 |
| o24.cancelBubble = false; |
| // 31127 |
| f81632121_467.returns.push(1374851252024); |
| // 31129 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31130 |
| o24 = {}; |
| // 31133 |
| o24.cancelBubble = false; |
| // 31136 |
| f81632121_467.returns.push(1374851252040); |
| // 31138 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 31142 |
| f81632121_467.returns.push(1374851252041); |
| // 31143 |
| o24 = {}; |
| // 31146 |
| o24.cancelBubble = false; |
| // 31149 |
| f81632121_467.returns.push(1374851252048); |
| // 31151 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31152 |
| o24 = {}; |
| // 31155 |
| o24.cancelBubble = false; |
| // 31158 |
| f81632121_467.returns.push(1374851252063); |
| // 31160 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31161 |
| o24 = {}; |
| // 31164 |
| o24.cancelBubble = false; |
| // 31167 |
| f81632121_467.returns.push(1374851252071); |
| // 31169 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31170 |
| o24 = {}; |
| // 31173 |
| o24.cancelBubble = false; |
| // 31176 |
| f81632121_467.returns.push(1374851252090); |
| // 31178 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31179 |
| o24 = {}; |
| // 31182 |
| o24.cancelBubble = false; |
| // 31185 |
| f81632121_467.returns.push(1374851252104); |
| // 31187 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31188 |
| o24 = {}; |
| // 31191 |
| o24.cancelBubble = false; |
| // 31194 |
| f81632121_467.returns.push(1374851252112); |
| // 31196 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 31198 |
| o24 = {}; |
| // 31201 |
| o24.srcElement = o26; |
| // 31203 |
| o24.target = o26; |
| // 31210 |
| f81632121_506.returns.push(null); |
| // 31216 |
| f81632121_506.returns.push(null); |
| // 31222 |
| f81632121_506.returns.push(null); |
| // 31228 |
| f81632121_506.returns.push(null); |
| // 31234 |
| f81632121_506.returns.push(null); |
| // 31240 |
| f81632121_506.returns.push(null); |
| // 31246 |
| f81632121_506.returns.push(null); |
| // 31252 |
| f81632121_506.returns.push(null); |
| // 31258 |
| f81632121_506.returns.push(null); |
| // 31264 |
| f81632121_506.returns.push(null); |
| // 31270 |
| f81632121_506.returns.push(null); |
| // 31276 |
| f81632121_506.returns.push(null); |
| // 31282 |
| f81632121_506.returns.push(null); |
| // 31288 |
| f81632121_506.returns.push(null); |
| // 31294 |
| f81632121_506.returns.push(null); |
| // 31300 |
| f81632121_506.returns.push(null); |
| // 31306 |
| f81632121_506.returns.push(null); |
| // 31311 |
| o24.relatedTarget = o52; |
| // 31312 |
| o52.parentNode = o54; |
| // undefined |
| o54 = null; |
| // 31313 |
| o52.nodeType = 1; |
| // 31316 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}.[0].[right].[0].[left].[0].[0]"); |
| // 31319 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}.[0].[right].[0].[left].[0].[0]"); |
| // 31320 |
| o24.JSBNG__screenX = 850; |
| // 31321 |
| o24.JSBNG__screenY = 606; |
| // 31322 |
| o24.altKey = false; |
| // 31323 |
| o24.bubbles = true; |
| // 31324 |
| o24.button = 0; |
| // 31325 |
| o24.buttons = void 0; |
| // 31326 |
| o24.cancelable = true; |
| // 31327 |
| o24.clientX = 782; |
| // 31328 |
| o24.clientY = 441; |
| // 31329 |
| o24.ctrlKey = false; |
| // 31330 |
| o24.currentTarget = o0; |
| // 31331 |
| o24.defaultPrevented = false; |
| // 31332 |
| o24.detail = 0; |
| // 31333 |
| o24.eventPhase = 3; |
| // 31334 |
| o24.isTrusted = void 0; |
| // 31335 |
| o24.metaKey = false; |
| // 31336 |
| o24.pageX = 782; |
| // 31337 |
| o24.pageY = 2827; |
| // 31339 |
| o24.shiftKey = false; |
| // 31342 |
| o24.timeStamp = 1374851252265; |
| // 31343 |
| o24.type = "mouseout"; |
| // 31344 |
| o24.view = ow81632121; |
| // 31346 |
| o24.returnValue = true; |
| // 31378 |
| o24.cancelBubble = false; |
| // undefined |
| o24 = null; |
| // 31380 |
| o24 = {}; |
| // 31383 |
| o24.cancelBubble = false; |
| // 31386 |
| f81632121_467.returns.push(1374851252298); |
| // 31391 |
| f81632121_467.returns.push(1374851252299); |
| // 31395 |
| f81632121_467.returns.push(1374851252299); |
| // 31399 |
| f81632121_1007.returns.push(undefined); |
| // 31401 |
| o24.returnValue = true; |
| // 31404 |
| o24.srcElement = o52; |
| // 31406 |
| o24.target = o52; |
| // 31413 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}.[0].[right].[0].[left].[0].[0]"); |
| // 31416 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}.[0].[right].[0].[left].[0].[0]"); |
| // 31417 |
| o24.relatedTarget = o26; |
| // undefined |
| o24 = null; |
| // undefined |
| o26 = null; |
| // 31418 |
| o52.nodeName = "DIV"; |
| // 31425 |
| o24 = {}; |
| // 31429 |
| f81632121_467.returns.push(1374851252302); |
| // 31430 |
| o24.cancelBubble = false; |
| // 31431 |
| o24.returnValue = true; |
| // 31434 |
| o24.srcElement = o52; |
| // 31436 |
| o24.target = o52; |
| // 31443 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}.[0].[right].[0].[left].[0].[0]"); |
| // 31446 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}.[0].[right].[0].[left].[0].[0]"); |
| // 31447 |
| o24.JSBNG__screenX = 850; |
| // 31448 |
| o24.JSBNG__screenY = 606; |
| // 31449 |
| o24.altKey = false; |
| // 31450 |
| o24.bubbles = true; |
| // 31451 |
| o24.button = 0; |
| // 31452 |
| o24.buttons = void 0; |
| // 31453 |
| o24.cancelable = false; |
| // 31454 |
| o24.clientX = 782; |
| // 31455 |
| o24.clientY = 441; |
| // 31456 |
| o24.ctrlKey = false; |
| // 31457 |
| o24.currentTarget = o0; |
| // 31458 |
| o24.defaultPrevented = false; |
| // 31459 |
| o24.detail = 0; |
| // 31460 |
| o24.eventPhase = 3; |
| // 31461 |
| o24.isTrusted = void 0; |
| // 31462 |
| o24.metaKey = false; |
| // 31463 |
| o24.pageX = 782; |
| // 31464 |
| o24.pageY = 2827; |
| // 31465 |
| o24.relatedTarget = null; |
| // 31466 |
| o24.fromElement = null; |
| // 31469 |
| o24.shiftKey = false; |
| // 31472 |
| o24.timeStamp = 1374851252301; |
| // 31473 |
| o24.type = "mousemove"; |
| // 31474 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 31488 |
| f81632121_1852.returns.push(undefined); |
| // 31491 |
| f81632121_14.returns.push(undefined); |
| // 31492 |
| f81632121_12.returns.push(143); |
| // 31495 |
| o24 = {}; |
| // 31498 |
| o24.cancelBubble = false; |
| // 31501 |
| f81632121_467.returns.push(1374851252457); |
| // 31503 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31504 |
| o24 = {}; |
| // 31507 |
| o24.cancelBubble = false; |
| // 31510 |
| f81632121_467.returns.push(1374851252473); |
| // 31512 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31513 |
| o24 = {}; |
| // 31516 |
| o24.cancelBubble = false; |
| // 31519 |
| f81632121_467.returns.push(1374851252489); |
| // 31521 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31522 |
| o24 = {}; |
| // 31525 |
| o24.cancelBubble = false; |
| // 31528 |
| f81632121_467.returns.push(1374851252505); |
| // 31530 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31531 |
| o24 = {}; |
| // 31534 |
| o24.cancelBubble = false; |
| // 31537 |
| f81632121_467.returns.push(1374851252521); |
| // 31539 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31540 |
| o24 = {}; |
| // 31543 |
| o24.cancelBubble = false; |
| // 31546 |
| f81632121_467.returns.push(1374851252529); |
| // 31548 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31549 |
| o24 = {}; |
| // 31552 |
| o24.cancelBubble = false; |
| // 31555 |
| f81632121_467.returns.push(1374851252545); |
| // 31557 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31558 |
| o24 = {}; |
| // 31561 |
| o24.cancelBubble = false; |
| // 31564 |
| f81632121_467.returns.push(1374851252552); |
| // 31566 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31567 |
| o24 = {}; |
| // 31570 |
| o24.cancelBubble = false; |
| // 31573 |
| f81632121_467.returns.push(1374851252569); |
| // 31575 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31576 |
| o24 = {}; |
| // 31579 |
| o24.cancelBubble = false; |
| // 31582 |
| f81632121_467.returns.push(1374851252577); |
| // 31584 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31585 |
| o24 = {}; |
| // 31588 |
| o24.cancelBubble = false; |
| // 31591 |
| f81632121_467.returns.push(1374851252603); |
| // 31593 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31594 |
| o24 = {}; |
| // 31597 |
| o24.cancelBubble = false; |
| // 31600 |
| f81632121_467.returns.push(1374851252605); |
| // 31602 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31603 |
| o24 = {}; |
| // 31606 |
| o24.cancelBubble = false; |
| // 31609 |
| f81632121_467.returns.push(1374851252616); |
| // 31611 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31612 |
| o24 = {}; |
| // 31615 |
| o24.cancelBubble = false; |
| // 31618 |
| f81632121_467.returns.push(1374851252625); |
| // 31620 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31621 |
| o24 = {}; |
| // 31624 |
| o24.cancelBubble = false; |
| // 31627 |
| f81632121_467.returns.push(1374851252641); |
| // 31629 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31630 |
| o24 = {}; |
| // 31633 |
| o24.cancelBubble = false; |
| // 31636 |
| f81632121_467.returns.push(1374851252657); |
| // 31638 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31639 |
| o24 = {}; |
| // 31642 |
| o24.cancelBubble = false; |
| // 31645 |
| f81632121_467.returns.push(1374851252664); |
| // 31647 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 31649 |
| o24 = {}; |
| // 31652 |
| o24.cancelBubble = false; |
| // 31655 |
| f81632121_467.returns.push(1374851252681); |
| // 31657 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31658 |
| o24 = {}; |
| // 31661 |
| o24.cancelBubble = false; |
| // 31664 |
| f81632121_467.returns.push(1374851252696); |
| // 31666 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31667 |
| o24 = {}; |
| // 31670 |
| o24.cancelBubble = false; |
| // 31673 |
| f81632121_467.returns.push(1374851252712); |
| // 31675 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31676 |
| o24 = {}; |
| // 31679 |
| o24.cancelBubble = false; |
| // 31682 |
| f81632121_467.returns.push(1374851252720); |
| // 31684 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31685 |
| o24 = {}; |
| // 31688 |
| o24.cancelBubble = false; |
| // 31691 |
| f81632121_467.returns.push(1374851252743); |
| // 31693 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31694 |
| o24 = {}; |
| // 31697 |
| o24.cancelBubble = false; |
| // 31700 |
| f81632121_467.returns.push(1374851252746); |
| // 31702 |
| o24.returnValue = true; |
| // undefined |
| o24 = null; |
| // 31704 |
| f81632121_12.returns.push(144); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 31709 |
| f81632121_467.returns.push(1374851253061); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 31714 |
| f81632121_467.returns.push(1374851253895); |
| // 31716 |
| f81632121_467.returns.push(1374851253895); |
| // 31718 |
| f81632121_467.returns.push(1374851253895); |
| // 31720 |
| f81632121_12.returns.push(145); |
| // 31723 |
| f81632121_467.returns.push(1374851254022); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 31727 |
| f81632121_467.returns.push(1374851254062); |
| // 31728 |
| o24 = {}; |
| // 31732 |
| f81632121_467.returns.push(1374851254134); |
| // 31737 |
| f81632121_467.returns.push(1374851254136); |
| // 31741 |
| f81632121_467.returns.push(1374851254136); |
| // 31743 |
| o24.cancelBubble = false; |
| // 31744 |
| o24.returnValue = true; |
| // 31747 |
| o24.srcElement = o52; |
| // 31749 |
| o24.target = o52; |
| // 31756 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}.[0].[right].[0].[left].[0].[0]"); |
| // 31759 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}.[0].[right].[0].[left].[0].[0]"); |
| // 31760 |
| o24.JSBNG__screenX = 851; |
| // 31761 |
| o24.JSBNG__screenY = 606; |
| // 31762 |
| o24.altKey = false; |
| // 31763 |
| o24.bubbles = true; |
| // 31764 |
| o24.button = 0; |
| // 31765 |
| o24.buttons = void 0; |
| // 31766 |
| o24.cancelable = false; |
| // 31767 |
| o24.clientX = 783; |
| // 31768 |
| o24.clientY = 441; |
| // 31769 |
| o24.ctrlKey = false; |
| // 31770 |
| o24.currentTarget = o0; |
| // 31771 |
| o24.defaultPrevented = false; |
| // 31772 |
| o24.detail = 0; |
| // 31773 |
| o24.eventPhase = 3; |
| // 31774 |
| o24.isTrusted = void 0; |
| // 31775 |
| o24.metaKey = false; |
| // 31776 |
| o24.pageX = 783; |
| // 31777 |
| o24.pageY = 2827; |
| // 31778 |
| o24.relatedTarget = null; |
| // 31779 |
| o24.fromElement = null; |
| // 31782 |
| o24.shiftKey = false; |
| // 31785 |
| o24.timeStamp = 1374851254134; |
| // 31786 |
| o24.type = "mousemove"; |
| // 31787 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 31801 |
| f81632121_1852.returns.push(undefined); |
| // 31804 |
| f81632121_14.returns.push(undefined); |
| // 31805 |
| f81632121_12.returns.push(146); |
| // 31808 |
| o24 = {}; |
| // 31812 |
| f81632121_467.returns.push(1374851254153); |
| // 31813 |
| o24.cancelBubble = false; |
| // 31814 |
| o24.returnValue = true; |
| // 31817 |
| o24.srcElement = o52; |
| // 31819 |
| o24.target = o52; |
| // 31826 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}.[0].[right].[0].[left].[0].[0]"); |
| // 31829 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}.[0].[right].[0].[left].[0].[0]"); |
| // 31830 |
| o24.JSBNG__screenX = 874; |
| // 31831 |
| o24.JSBNG__screenY = 599; |
| // 31832 |
| o24.altKey = false; |
| // 31833 |
| o24.bubbles = true; |
| // 31834 |
| o24.button = 0; |
| // 31835 |
| o24.buttons = void 0; |
| // 31836 |
| o24.cancelable = false; |
| // 31837 |
| o24.clientX = 806; |
| // 31838 |
| o24.clientY = 434; |
| // 31839 |
| o24.ctrlKey = false; |
| // 31840 |
| o24.currentTarget = o0; |
| // 31841 |
| o24.defaultPrevented = false; |
| // 31842 |
| o24.detail = 0; |
| // 31843 |
| o24.eventPhase = 3; |
| // 31844 |
| o24.isTrusted = void 0; |
| // 31845 |
| o24.metaKey = false; |
| // 31846 |
| o24.pageX = 806; |
| // 31847 |
| o24.pageY = 2820; |
| // 31848 |
| o24.relatedTarget = null; |
| // 31849 |
| o24.fromElement = null; |
| // 31852 |
| o24.shiftKey = false; |
| // 31855 |
| o24.timeStamp = 1374851254152; |
| // 31856 |
| o24.type = "mousemove"; |
| // 31857 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 31871 |
| f81632121_1852.returns.push(undefined); |
| // 31874 |
| f81632121_14.returns.push(undefined); |
| // 31875 |
| f81632121_12.returns.push(147); |
| // 31878 |
| o24 = {}; |
| // 31881 |
| o24.srcElement = o52; |
| // 31883 |
| o24.target = o52; |
| // 31890 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}.[0].[right].[0].[left].[0].[0]"); |
| // 31893 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}.[0].[right].[0].[left].[0].[0]"); |
| // 31894 |
| o24.relatedTarget = o53; |
| // 31895 |
| o53.parentNode = o39; |
| // undefined |
| o39 = null; |
| // 31896 |
| o53.nodeType = 1; |
| // 31899 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}"); |
| // 31902 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}.[0].[right].[0].[left].[0].[0]"); |
| // 31905 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}"); |
| // 31906 |
| o24.JSBNG__screenX = 893; |
| // 31907 |
| o24.JSBNG__screenY = 593; |
| // 31908 |
| o24.altKey = false; |
| // 31909 |
| o24.bubbles = true; |
| // 31910 |
| o24.button = 0; |
| // 31911 |
| o24.buttons = void 0; |
| // 31912 |
| o24.cancelable = true; |
| // 31913 |
| o24.clientX = 825; |
| // 31914 |
| o24.clientY = 428; |
| // 31915 |
| o24.ctrlKey = false; |
| // 31916 |
| o24.currentTarget = o0; |
| // 31917 |
| o24.defaultPrevented = false; |
| // 31918 |
| o24.detail = 0; |
| // 31919 |
| o24.eventPhase = 3; |
| // 31920 |
| o24.isTrusted = void 0; |
| // 31921 |
| o24.metaKey = false; |
| // 31922 |
| o24.pageX = 825; |
| // 31923 |
| o24.pageY = 2814; |
| // 31925 |
| o24.shiftKey = false; |
| // 31928 |
| o24.timeStamp = 1374851254159; |
| // 31929 |
| o24.type = "mouseout"; |
| // 31930 |
| o24.view = ow81632121; |
| // 31932 |
| o24.returnValue = true; |
| // 31969 |
| o24.cancelBubble = false; |
| // undefined |
| o24 = null; |
| // 31971 |
| o24 = {}; |
| // 31974 |
| o24.cancelBubble = false; |
| // 31977 |
| f81632121_467.returns.push(1374851254184); |
| // 31980 |
| f81632121_1007.returns.push(undefined); |
| // 31982 |
| o24.returnValue = true; |
| // 31985 |
| o24.srcElement = o53; |
| // 31987 |
| o24.target = o53; |
| // 31994 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}"); |
| // 31997 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}"); |
| // 31998 |
| o24.relatedTarget = o52; |
| // undefined |
| o24 = null; |
| // undefined |
| o52 = null; |
| // 31999 |
| o53.nodeName = "LI"; |
| // 32006 |
| o24 = {}; |
| // 32010 |
| f81632121_467.returns.push(1374851254194); |
| // 32011 |
| o24.cancelBubble = false; |
| // 32012 |
| o24.returnValue = true; |
| // 32015 |
| o24.srcElement = o53; |
| // 32017 |
| o24.target = o53; |
| // 32024 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}"); |
| // 32027 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}"); |
| // 32028 |
| o24.JSBNG__screenX = 893; |
| // 32029 |
| o24.JSBNG__screenY = 593; |
| // 32030 |
| o24.altKey = false; |
| // 32031 |
| o24.bubbles = true; |
| // 32032 |
| o24.button = 0; |
| // 32033 |
| o24.buttons = void 0; |
| // 32034 |
| o24.cancelable = false; |
| // 32035 |
| o24.clientX = 825; |
| // 32036 |
| o24.clientY = 428; |
| // 32037 |
| o24.ctrlKey = false; |
| // 32038 |
| o24.currentTarget = o0; |
| // 32039 |
| o24.defaultPrevented = false; |
| // 32040 |
| o24.detail = 0; |
| // 32041 |
| o24.eventPhase = 3; |
| // 32042 |
| o24.isTrusted = void 0; |
| // 32043 |
| o24.metaKey = false; |
| // 32044 |
| o24.pageX = 825; |
| // 32045 |
| o24.pageY = 2814; |
| // 32046 |
| o24.relatedTarget = null; |
| // 32047 |
| o24.fromElement = null; |
| // 32050 |
| o24.shiftKey = false; |
| // 32053 |
| o24.timeStamp = 1374851254194; |
| // 32054 |
| o24.type = "mousemove"; |
| // 32055 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 32069 |
| f81632121_1852.returns.push(undefined); |
| // 32072 |
| f81632121_14.returns.push(undefined); |
| // 32073 |
| f81632121_12.returns.push(148); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 32077 |
| o24 = {}; |
| // 32080 |
| o24.srcElement = o53; |
| // 32082 |
| o24.target = o53; |
| // 32089 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}"); |
| // 32092 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}"); |
| // 32093 |
| o24.relatedTarget = o109; |
| // 32098 |
| f81632121_506.returns.push(null); |
| // 32104 |
| f81632121_506.returns.push(null); |
| // 32110 |
| f81632121_506.returns.push(null); |
| // 32116 |
| f81632121_506.returns.push(null); |
| // 32122 |
| f81632121_506.returns.push(null); |
| // 32128 |
| f81632121_506.returns.push(null); |
| // 32134 |
| f81632121_506.returns.push(null); |
| // 32140 |
| f81632121_506.returns.push(null); |
| // 32147 |
| f81632121_506.returns.push(".r[70hf].[1][4][1]{comment10200343222477260_4947623}"); |
| // 32148 |
| o24.JSBNG__screenX = 1058; |
| // 32149 |
| o24.JSBNG__screenY = 583; |
| // 32150 |
| o24.altKey = false; |
| // 32151 |
| o24.bubbles = true; |
| // 32152 |
| o24.button = 0; |
| // 32153 |
| o24.buttons = void 0; |
| // 32154 |
| o24.cancelable = true; |
| // 32155 |
| o24.clientX = 990; |
| // 32156 |
| o24.clientY = 418; |
| // 32157 |
| o24.ctrlKey = false; |
| // 32158 |
| o24.currentTarget = o0; |
| // 32159 |
| o24.defaultPrevented = false; |
| // 32160 |
| o24.detail = 0; |
| // 32161 |
| o24.eventPhase = 3; |
| // 32162 |
| o24.isTrusted = void 0; |
| // 32163 |
| o24.metaKey = false; |
| // 32164 |
| o24.pageX = 990; |
| // 32165 |
| o24.pageY = 2804; |
| // 32167 |
| o24.shiftKey = false; |
| // 32170 |
| o24.timeStamp = 1374851254205; |
| // 32171 |
| o24.type = "mouseout"; |
| // 32172 |
| o24.view = ow81632121; |
| // 32174 |
| o24.returnValue = true; |
| // 32211 |
| o24.cancelBubble = false; |
| // undefined |
| o24 = null; |
| // 32213 |
| o24 = {}; |
| // 32216 |
| o24.cancelBubble = false; |
| // 32219 |
| f81632121_467.returns.push(1374851254246); |
| // 32222 |
| f81632121_1007.returns.push(undefined); |
| // 32224 |
| o24.returnValue = true; |
| // 32227 |
| o24.srcElement = o109; |
| // 32229 |
| o24.target = o109; |
| // 32236 |
| f81632121_506.returns.push(null); |
| // 32242 |
| f81632121_506.returns.push(null); |
| // 32248 |
| f81632121_506.returns.push(null); |
| // 32254 |
| f81632121_506.returns.push(null); |
| // 32260 |
| f81632121_506.returns.push(null); |
| // 32266 |
| f81632121_506.returns.push(null); |
| // 32272 |
| f81632121_506.returns.push(null); |
| // 32278 |
| f81632121_506.returns.push(null); |
| // 32283 |
| o24.relatedTarget = o53; |
| // undefined |
| o24 = null; |
| // undefined |
| o53 = null; |
| // 32286 |
| o24 = {}; |
| // 32290 |
| f81632121_467.returns.push(1374851254248); |
| // 32291 |
| o24.cancelBubble = false; |
| // 32292 |
| o24.returnValue = true; |
| // 32295 |
| o24.srcElement = o109; |
| // 32297 |
| o24.target = o109; |
| // 32304 |
| f81632121_506.returns.push(null); |
| // 32310 |
| f81632121_506.returns.push(null); |
| // 32316 |
| f81632121_506.returns.push(null); |
| // 32322 |
| f81632121_506.returns.push(null); |
| // 32328 |
| f81632121_506.returns.push(null); |
| // 32334 |
| f81632121_506.returns.push(null); |
| // 32340 |
| f81632121_506.returns.push(null); |
| // 32346 |
| f81632121_506.returns.push(null); |
| // 32351 |
| o24.JSBNG__screenX = 1058; |
| // 32352 |
| o24.JSBNG__screenY = 583; |
| // 32353 |
| o24.altKey = false; |
| // 32354 |
| o24.bubbles = true; |
| // 32355 |
| o24.button = 0; |
| // 32356 |
| o24.buttons = void 0; |
| // 32357 |
| o24.cancelable = false; |
| // 32358 |
| o24.clientX = 990; |
| // 32359 |
| o24.clientY = 418; |
| // 32360 |
| o24.ctrlKey = false; |
| // 32361 |
| o24.currentTarget = o0; |
| // 32362 |
| o24.defaultPrevented = false; |
| // 32363 |
| o24.detail = 0; |
| // 32364 |
| o24.eventPhase = 3; |
| // 32365 |
| o24.isTrusted = void 0; |
| // 32366 |
| o24.metaKey = false; |
| // 32367 |
| o24.pageX = 990; |
| // 32368 |
| o24.pageY = 2804; |
| // 32369 |
| o24.relatedTarget = null; |
| // 32370 |
| o24.fromElement = null; |
| // 32373 |
| o24.shiftKey = false; |
| // 32376 |
| o24.timeStamp = 1374851254248; |
| // 32377 |
| o24.type = "mousemove"; |
| // 32378 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 32387 |
| f81632121_1852.returns.push(undefined); |
| // 32390 |
| f81632121_14.returns.push(undefined); |
| // 32393 |
| f81632121_12.returns.push(149); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 32398 |
| f81632121_12.returns.push(150); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 32403 |
| f81632121_467.returns.push(1374851255093); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 32407 |
| f81632121_12.returns.push(151); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 32412 |
| f81632121_467.returns.push(1374851256085); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 32420 |
| f81632121_467.returns.push(1374851256937); |
| // 32425 |
| f81632121_467.returns.push(1374851256939); |
| // 32429 |
| f81632121_467.returns.push(1374851256939); |
| // 32432 |
| f81632121_1007.returns.push(undefined); |
| // 32438 |
| f81632121_467.returns.push(1374851256941); |
| // 32445 |
| f81632121_1852.returns.push(undefined); |
| // 32447 |
| f81632121_14.returns.push(undefined); |
| // 32448 |
| f81632121_12.returns.push(152); |
| // 32449 |
| f81632121_12.returns.push(153); |
| // 32451 |
| o24 = {}; |
| // 32455 |
| f81632121_467.returns.push(1374851256947); |
| // 32456 |
| o24.cancelBubble = false; |
| // 32457 |
| o24.returnValue = true; |
| // 32460 |
| o24.srcElement = o183; |
| // 32462 |
| o24.target = o183; |
| // 32464 |
| o183.nodeType = 1; |
| // 32467 |
| o183.getAttribute = f81632121_506; |
| // 32469 |
| f81632121_506.returns.push(null); |
| // 32472 |
| o42.nodeType = 1; |
| // 32473 |
| o42.getAttribute = f81632121_506; |
| // 32475 |
| f81632121_506.returns.push(null); |
| // 32478 |
| o29.nodeType = 1; |
| // 32481 |
| f81632121_506.returns.push(null); |
| // 32484 |
| o87.nodeType = 1; |
| // 32485 |
| o87.getAttribute = f81632121_506; |
| // 32487 |
| f81632121_506.returns.push(null); |
| // 32493 |
| f81632121_506.returns.push(null); |
| // 32499 |
| f81632121_506.returns.push(null); |
| // 32505 |
| f81632121_506.returns.push(null); |
| // 32511 |
| f81632121_506.returns.push(null); |
| // 32517 |
| f81632121_506.returns.push(null); |
| // 32523 |
| f81632121_506.returns.push(null); |
| // 32529 |
| f81632121_506.returns.push(null); |
| // 32535 |
| f81632121_506.returns.push(null); |
| // 32541 |
| f81632121_506.returns.push(null); |
| // 32547 |
| f81632121_506.returns.push(null); |
| // 32553 |
| f81632121_506.returns.push(null); |
| // 32558 |
| o24.JSBNG__screenX = 287; |
| // 32559 |
| o24.JSBNG__screenY = 572; |
| // 32560 |
| o24.altKey = false; |
| // 32561 |
| o24.bubbles = true; |
| // 32562 |
| o24.button = 0; |
| // 32563 |
| o24.buttons = void 0; |
| // 32564 |
| o24.cancelable = false; |
| // 32565 |
| o24.clientX = 219; |
| // 32566 |
| o24.clientY = 407; |
| // 32567 |
| o24.ctrlKey = false; |
| // 32568 |
| o24.currentTarget = o0; |
| // 32569 |
| o24.defaultPrevented = false; |
| // 32570 |
| o24.detail = 0; |
| // 32571 |
| o24.eventPhase = 3; |
| // 32572 |
| o24.isTrusted = void 0; |
| // 32573 |
| o24.metaKey = false; |
| // 32574 |
| o24.pageX = 219; |
| // 32575 |
| o24.pageY = 2793; |
| // 32576 |
| o24.relatedTarget = null; |
| // 32577 |
| o24.fromElement = null; |
| // 32580 |
| o24.shiftKey = false; |
| // 32583 |
| o24.timeStamp = 1374851256946; |
| // 32584 |
| o24.type = "mousemove"; |
| // 32585 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 32594 |
| f81632121_1852.returns.push(undefined); |
| // 32597 |
| f81632121_14.returns.push(undefined); |
| // 32598 |
| f81632121_12.returns.push(154); |
| // 32601 |
| o24 = {}; |
| // 32605 |
| f81632121_467.returns.push(1374851257018); |
| // 32606 |
| o24.cancelBubble = false; |
| // 32607 |
| o24.returnValue = true; |
| // 32610 |
| o24.srcElement = o183; |
| // 32612 |
| o24.target = o183; |
| // 32619 |
| f81632121_506.returns.push(null); |
| // 32625 |
| f81632121_506.returns.push(null); |
| // 32631 |
| f81632121_506.returns.push(null); |
| // 32637 |
| f81632121_506.returns.push(null); |
| // 32643 |
| f81632121_506.returns.push(null); |
| // 32649 |
| f81632121_506.returns.push(null); |
| // 32655 |
| f81632121_506.returns.push(null); |
| // 32661 |
| f81632121_506.returns.push(null); |
| // 32667 |
| f81632121_506.returns.push(null); |
| // 32673 |
| f81632121_506.returns.push(null); |
| // 32679 |
| f81632121_506.returns.push(null); |
| // 32685 |
| f81632121_506.returns.push(null); |
| // 32691 |
| f81632121_506.returns.push(null); |
| // 32697 |
| f81632121_506.returns.push(null); |
| // 32703 |
| f81632121_506.returns.push(null); |
| // 32708 |
| o24.JSBNG__screenX = 240; |
| // 32709 |
| o24.JSBNG__screenY = 572; |
| // 32710 |
| o24.altKey = false; |
| // 32711 |
| o24.bubbles = true; |
| // 32712 |
| o24.button = 0; |
| // 32713 |
| o24.buttons = void 0; |
| // 32714 |
| o24.cancelable = false; |
| // 32715 |
| o24.clientX = 172; |
| // 32716 |
| o24.clientY = 407; |
| // 32717 |
| o24.ctrlKey = false; |
| // 32718 |
| o24.currentTarget = o0; |
| // 32719 |
| o24.defaultPrevented = false; |
| // 32720 |
| o24.detail = 0; |
| // 32721 |
| o24.eventPhase = 3; |
| // 32722 |
| o24.isTrusted = void 0; |
| // 32723 |
| o24.metaKey = false; |
| // 32724 |
| o24.pageX = 172; |
| // 32725 |
| o24.pageY = 2793; |
| // 32726 |
| o24.relatedTarget = null; |
| // 32727 |
| o24.fromElement = null; |
| // 32730 |
| o24.shiftKey = false; |
| // 32733 |
| o24.timeStamp = 1374851257007; |
| // 32734 |
| o24.type = "mousemove"; |
| // 32735 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 32744 |
| f81632121_1852.returns.push(undefined); |
| // 32747 |
| f81632121_14.returns.push(undefined); |
| // 32748 |
| f81632121_12.returns.push(155); |
| // 32751 |
| o24 = {}; |
| // 32755 |
| f81632121_467.returns.push(1374851257041); |
| // 32756 |
| o24.cancelBubble = false; |
| // 32757 |
| o24.returnValue = true; |
| // 32760 |
| o24.srcElement = o183; |
| // 32762 |
| o24.target = o183; |
| // 32769 |
| f81632121_506.returns.push(null); |
| // 32775 |
| f81632121_506.returns.push(null); |
| // 32781 |
| f81632121_506.returns.push(null); |
| // 32787 |
| f81632121_506.returns.push(null); |
| // 32793 |
| f81632121_506.returns.push(null); |
| // 32799 |
| f81632121_506.returns.push(null); |
| // 32805 |
| f81632121_506.returns.push(null); |
| // 32811 |
| f81632121_506.returns.push(null); |
| // 32817 |
| f81632121_506.returns.push(null); |
| // 32823 |
| f81632121_506.returns.push(null); |
| // 32829 |
| f81632121_506.returns.push(null); |
| // 32835 |
| f81632121_506.returns.push(null); |
| // 32841 |
| f81632121_506.returns.push(null); |
| // 32847 |
| f81632121_506.returns.push(null); |
| // 32853 |
| f81632121_506.returns.push(null); |
| // 32858 |
| o24.JSBNG__screenX = 229; |
| // 32859 |
| o24.JSBNG__screenY = 572; |
| // 32860 |
| o24.altKey = false; |
| // 32861 |
| o24.bubbles = true; |
| // 32862 |
| o24.button = 0; |
| // 32863 |
| o24.buttons = void 0; |
| // 32864 |
| o24.cancelable = false; |
| // 32865 |
| o24.clientX = 161; |
| // 32866 |
| o24.clientY = 407; |
| // 32867 |
| o24.ctrlKey = false; |
| // 32868 |
| o24.currentTarget = o0; |
| // 32869 |
| o24.defaultPrevented = false; |
| // 32870 |
| o24.detail = 0; |
| // 32871 |
| o24.eventPhase = 3; |
| // 32872 |
| o24.isTrusted = void 0; |
| // 32873 |
| o24.metaKey = false; |
| // 32874 |
| o24.pageX = 161; |
| // 32875 |
| o24.pageY = 2793; |
| // 32876 |
| o24.relatedTarget = null; |
| // 32877 |
| o24.fromElement = null; |
| // 32880 |
| o24.shiftKey = false; |
| // 32883 |
| o24.timeStamp = 1374851257041; |
| // 32884 |
| o24.type = "mousemove"; |
| // 32885 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 32894 |
| f81632121_1852.returns.push(undefined); |
| // 32897 |
| f81632121_14.returns.push(undefined); |
| // 32898 |
| f81632121_12.returns.push(156); |
| // 32901 |
| o24 = {}; |
| // 32905 |
| f81632121_467.returns.push(1374851257056); |
| // 32906 |
| o24.cancelBubble = false; |
| // 32907 |
| o24.returnValue = true; |
| // 32910 |
| o24.srcElement = o183; |
| // 32912 |
| o24.target = o183; |
| // 32919 |
| f81632121_506.returns.push(null); |
| // 32925 |
| f81632121_506.returns.push(null); |
| // 32931 |
| f81632121_506.returns.push(null); |
| // 32937 |
| f81632121_506.returns.push(null); |
| // 32943 |
| f81632121_506.returns.push(null); |
| // 32949 |
| f81632121_506.returns.push(null); |
| // 32955 |
| f81632121_506.returns.push(null); |
| // 32961 |
| f81632121_506.returns.push(null); |
| // 32967 |
| f81632121_506.returns.push(null); |
| // 32973 |
| f81632121_506.returns.push(null); |
| // 32979 |
| f81632121_506.returns.push(null); |
| // 32985 |
| f81632121_506.returns.push(null); |
| // 32991 |
| f81632121_506.returns.push(null); |
| // 32997 |
| f81632121_506.returns.push(null); |
| // 33003 |
| f81632121_506.returns.push(null); |
| // 33008 |
| o24.JSBNG__screenX = 226; |
| // 33009 |
| o24.JSBNG__screenY = 573; |
| // 33010 |
| o24.altKey = false; |
| // 33011 |
| o24.bubbles = true; |
| // 33012 |
| o24.button = 0; |
| // 33013 |
| o24.buttons = void 0; |
| // 33014 |
| o24.cancelable = false; |
| // 33015 |
| o24.clientX = 158; |
| // 33016 |
| o24.clientY = 408; |
| // 33017 |
| o24.ctrlKey = false; |
| // 33018 |
| o24.currentTarget = o0; |
| // 33019 |
| o24.defaultPrevented = false; |
| // 33020 |
| o24.detail = 0; |
| // 33021 |
| o24.eventPhase = 3; |
| // 33022 |
| o24.isTrusted = void 0; |
| // 33023 |
| o24.metaKey = false; |
| // 33024 |
| o24.pageX = 158; |
| // 33025 |
| o24.pageY = 2794; |
| // 33026 |
| o24.relatedTarget = null; |
| // 33027 |
| o24.fromElement = null; |
| // 33030 |
| o24.shiftKey = false; |
| // 33033 |
| o24.timeStamp = 1374851257055; |
| // 33034 |
| o24.type = "mousemove"; |
| // 33035 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 33044 |
| f81632121_1852.returns.push(undefined); |
| // 33047 |
| f81632121_14.returns.push(undefined); |
| // 33048 |
| f81632121_12.returns.push(157); |
| // 33051 |
| o24 = {}; |
| // 33055 |
| f81632121_467.returns.push(1374851257078); |
| // 33056 |
| o24.cancelBubble = false; |
| // 33057 |
| o24.returnValue = true; |
| // 33060 |
| o24.srcElement = o183; |
| // 33062 |
| o24.target = o183; |
| // 33069 |
| f81632121_506.returns.push(null); |
| // 33075 |
| f81632121_506.returns.push(null); |
| // 33081 |
| f81632121_506.returns.push(null); |
| // 33087 |
| f81632121_506.returns.push(null); |
| // 33093 |
| f81632121_506.returns.push(null); |
| // 33099 |
| f81632121_506.returns.push(null); |
| // 33105 |
| f81632121_506.returns.push(null); |
| // 33111 |
| f81632121_506.returns.push(null); |
| // 33117 |
| f81632121_506.returns.push(null); |
| // 33123 |
| f81632121_506.returns.push(null); |
| // 33129 |
| f81632121_506.returns.push(null); |
| // 33135 |
| f81632121_506.returns.push(null); |
| // 33141 |
| f81632121_506.returns.push(null); |
| // 33147 |
| f81632121_506.returns.push(null); |
| // 33153 |
| f81632121_506.returns.push(null); |
| // 33158 |
| o24.JSBNG__screenX = 224; |
| // 33159 |
| o24.JSBNG__screenY = 573; |
| // 33160 |
| o24.altKey = false; |
| // 33161 |
| o24.bubbles = true; |
| // 33162 |
| o24.button = 0; |
| // 33163 |
| o24.buttons = void 0; |
| // 33164 |
| o24.cancelable = false; |
| // 33165 |
| o24.clientX = 156; |
| // 33166 |
| o24.clientY = 408; |
| // 33167 |
| o24.ctrlKey = false; |
| // 33168 |
| o24.currentTarget = o0; |
| // 33169 |
| o24.defaultPrevented = false; |
| // 33170 |
| o24.detail = 0; |
| // 33171 |
| o24.eventPhase = 3; |
| // 33172 |
| o24.isTrusted = void 0; |
| // 33173 |
| o24.metaKey = false; |
| // 33174 |
| o24.pageX = 156; |
| // 33175 |
| o24.pageY = 2794; |
| // 33176 |
| o24.relatedTarget = null; |
| // 33177 |
| o24.fromElement = null; |
| // 33180 |
| o24.shiftKey = false; |
| // 33183 |
| o24.timeStamp = 1374851257078; |
| // 33184 |
| o24.type = "mousemove"; |
| // 33185 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 33194 |
| f81632121_1852.returns.push(undefined); |
| // 33197 |
| f81632121_14.returns.push(undefined); |
| // 33198 |
| f81632121_12.returns.push(158); |
| // 33201 |
| o24 = {}; |
| // 33205 |
| f81632121_467.returns.push(1374851257091); |
| // 33206 |
| o24.cancelBubble = false; |
| // 33207 |
| o24.returnValue = true; |
| // 33210 |
| o24.srcElement = o183; |
| // 33212 |
| o24.target = o183; |
| // 33219 |
| f81632121_506.returns.push(null); |
| // 33225 |
| f81632121_506.returns.push(null); |
| // 33231 |
| f81632121_506.returns.push(null); |
| // 33237 |
| f81632121_506.returns.push(null); |
| // 33243 |
| f81632121_506.returns.push(null); |
| // 33249 |
| f81632121_506.returns.push(null); |
| // 33255 |
| f81632121_506.returns.push(null); |
| // 33261 |
| f81632121_506.returns.push(null); |
| // 33267 |
| f81632121_506.returns.push(null); |
| // 33273 |
| f81632121_506.returns.push(null); |
| // 33279 |
| f81632121_506.returns.push(null); |
| // 33285 |
| f81632121_506.returns.push(null); |
| // 33291 |
| f81632121_506.returns.push(null); |
| // 33297 |
| f81632121_506.returns.push(null); |
| // 33303 |
| f81632121_506.returns.push(null); |
| // 33308 |
| o24.JSBNG__screenX = 222; |
| // 33309 |
| o24.JSBNG__screenY = 574; |
| // 33310 |
| o24.altKey = false; |
| // 33311 |
| o24.bubbles = true; |
| // 33312 |
| o24.button = 0; |
| // 33313 |
| o24.buttons = void 0; |
| // 33314 |
| o24.cancelable = false; |
| // 33315 |
| o24.clientX = 154; |
| // 33316 |
| o24.clientY = 409; |
| // 33317 |
| o24.ctrlKey = false; |
| // 33318 |
| o24.currentTarget = o0; |
| // 33319 |
| o24.defaultPrevented = false; |
| // 33320 |
| o24.detail = 0; |
| // 33321 |
| o24.eventPhase = 3; |
| // 33322 |
| o24.isTrusted = void 0; |
| // 33323 |
| o24.metaKey = false; |
| // 33324 |
| o24.pageX = 154; |
| // 33325 |
| o24.pageY = 2795; |
| // 33326 |
| o24.relatedTarget = null; |
| // 33327 |
| o24.fromElement = null; |
| // 33330 |
| o24.shiftKey = false; |
| // 33333 |
| o24.timeStamp = 1374851257090; |
| // 33334 |
| o24.type = "mousemove"; |
| // 33335 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 33344 |
| f81632121_1852.returns.push(undefined); |
| // 33347 |
| f81632121_14.returns.push(undefined); |
| // 33348 |
| f81632121_12.returns.push(159); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 33354 |
| f81632121_467.returns.push(1374851257106); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 33356 |
| o24 = {}; |
| // 33359 |
| o24.cancelBubble = false; |
| // 33360 |
| o24.returnValue = true; |
| // 33363 |
| o24.srcElement = o183; |
| // 33365 |
| o24.target = o183; |
| // 33372 |
| f81632121_506.returns.push(null); |
| // 33378 |
| f81632121_506.returns.push(null); |
| // 33384 |
| f81632121_506.returns.push(null); |
| // 33390 |
| f81632121_506.returns.push(null); |
| // 33396 |
| f81632121_506.returns.push(null); |
| // 33402 |
| f81632121_506.returns.push(null); |
| // 33408 |
| f81632121_506.returns.push(null); |
| // 33414 |
| f81632121_506.returns.push(null); |
| // 33420 |
| f81632121_506.returns.push(null); |
| // 33426 |
| f81632121_506.returns.push(null); |
| // 33432 |
| f81632121_506.returns.push(null); |
| // 33438 |
| f81632121_506.returns.push(null); |
| // 33444 |
| f81632121_506.returns.push(null); |
| // 33450 |
| f81632121_506.returns.push(null); |
| // 33456 |
| f81632121_506.returns.push(null); |
| // 33461 |
| o24.JSBNG__screenX = 222; |
| // 33462 |
| o24.JSBNG__screenY = 574; |
| // 33463 |
| o24.altKey = false; |
| // 33464 |
| o24.bubbles = true; |
| // 33465 |
| o24.button = 0; |
| // 33466 |
| o24.buttons = void 0; |
| // 33467 |
| o24.cancelable = true; |
| // 33468 |
| o24.clientX = 154; |
| // 33469 |
| o24.clientY = 409; |
| // 33470 |
| o24.ctrlKey = false; |
| // 33471 |
| o24.currentTarget = o0; |
| // 33472 |
| o24.defaultPrevented = false; |
| // 33473 |
| o24.detail = 1; |
| // 33474 |
| o24.eventPhase = 3; |
| // 33475 |
| o24.isTrusted = void 0; |
| // 33476 |
| o24.metaKey = false; |
| // 33477 |
| o24.pageX = 154; |
| // 33478 |
| o24.pageY = 2795; |
| // 33479 |
| o24.relatedTarget = null; |
| // 33480 |
| o24.fromElement = null; |
| // 33483 |
| o24.shiftKey = false; |
| // 33486 |
| o24.timeStamp = 1374851257660; |
| // 33487 |
| o24.type = "mousedown"; |
| // 33488 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 33495 |
| o24 = {}; |
| // 33498 |
| o24.cancelBubble = false; |
| // 33499 |
| o24.returnValue = true; |
| // 33502 |
| o24.srcElement = o183; |
| // 33504 |
| o24.target = o183; |
| // 33511 |
| f81632121_506.returns.push(null); |
| // 33517 |
| f81632121_506.returns.push(null); |
| // 33523 |
| f81632121_506.returns.push(null); |
| // 33529 |
| f81632121_506.returns.push(null); |
| // 33535 |
| f81632121_506.returns.push(null); |
| // 33541 |
| f81632121_506.returns.push(null); |
| // 33547 |
| f81632121_506.returns.push(null); |
| // 33553 |
| f81632121_506.returns.push(null); |
| // 33559 |
| f81632121_506.returns.push(null); |
| // 33565 |
| f81632121_506.returns.push(null); |
| // 33571 |
| f81632121_506.returns.push(null); |
| // 33577 |
| f81632121_506.returns.push(null); |
| // 33583 |
| f81632121_506.returns.push(null); |
| // 33589 |
| f81632121_506.returns.push(null); |
| // 33595 |
| f81632121_506.returns.push(null); |
| // 33600 |
| o24.JSBNG__screenX = 222; |
| // 33601 |
| o24.JSBNG__screenY = 574; |
| // 33602 |
| o24.altKey = false; |
| // 33603 |
| o24.bubbles = true; |
| // 33604 |
| o24.button = 0; |
| // 33605 |
| o24.buttons = void 0; |
| // 33606 |
| o24.cancelable = true; |
| // 33607 |
| o24.clientX = 154; |
| // 33608 |
| o24.clientY = 409; |
| // 33609 |
| o24.ctrlKey = false; |
| // 33610 |
| o24.currentTarget = o0; |
| // 33611 |
| o24.defaultPrevented = false; |
| // 33612 |
| o24.detail = 1; |
| // 33613 |
| o24.eventPhase = 3; |
| // 33614 |
| o24.isTrusted = void 0; |
| // 33615 |
| o24.metaKey = false; |
| // 33616 |
| o24.pageX = 154; |
| // 33617 |
| o24.pageY = 2795; |
| // 33618 |
| o24.relatedTarget = null; |
| // 33619 |
| o24.fromElement = null; |
| // 33622 |
| o24.shiftKey = false; |
| // 33625 |
| o24.timeStamp = 1374851257671; |
| // 33626 |
| o24.type = "mouseup"; |
| // 33627 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 33634 |
| o24 = {}; |
| // 33637 |
| f81632121_467.returns.push(1374851257676); |
| // 33638 |
| o24.type = "click"; |
| // 33648 |
| f81632121_467.returns.push(1374851257677); |
| // 33653 |
| f81632121_467.returns.push(1374851257681); |
| // 33657 |
| f81632121_467.returns.push(1374851257682); |
| // 33665 |
| f81632121_1852.returns.push(undefined); |
| // 33667 |
| f81632121_14.returns.push(undefined); |
| // 33668 |
| f81632121_12.returns.push(160); |
| // 33669 |
| f81632121_12.returns.push(161); |
| // 33670 |
| f81632121_12.returns.push(162); |
| // 33672 |
| f81632121_467.returns.push(1374851257684); |
| // 33676 |
| o24.cancelBubble = false; |
| // 33677 |
| o24.returnValue = true; |
| // 33680 |
| f81632121_467.returns.push(1374851257686); |
| // 33681 |
| f81632121_14.returns.push(undefined); |
| // 33682 |
| f81632121_12.returns.push(163); |
| // 33684 |
| f81632121_467.returns.push(1374851257687); |
| // 33692 |
| f81632121_467.returns.push(1374851257687); |
| // 33696 |
| o24.target = o183; |
| // 33699 |
| f81632121_506.returns.push(null); |
| // 33703 |
| f81632121_506.returns.push(null); |
| // 33707 |
| f81632121_506.returns.push(null); |
| // 33711 |
| f81632121_506.returns.push(null); |
| // 33715 |
| f81632121_506.returns.push(null); |
| // 33719 |
| f81632121_506.returns.push(null); |
| // 33723 |
| f81632121_506.returns.push(null); |
| // 33727 |
| f81632121_506.returns.push(null); |
| // 33731 |
| f81632121_506.returns.push(null); |
| // 33735 |
| f81632121_506.returns.push(null); |
| // 33739 |
| f81632121_506.returns.push(null); |
| // 33743 |
| f81632121_506.returns.push(null); |
| // 33747 |
| f81632121_506.returns.push(null); |
| // 33751 |
| f81632121_506.returns.push(null); |
| // 33755 |
| f81632121_506.returns.push(null); |
| // 33759 |
| o183.nodeName = "DIV"; |
| // 33761 |
| o42.nodeName = "DIV"; |
| // undefined |
| o42 = null; |
| // 33763 |
| o29.nodeName = "DIV"; |
| // undefined |
| o29 = null; |
| // 33765 |
| o87.nodeName = "DIV"; |
| // undefined |
| o87 = null; |
| // 33767 |
| o21.nodeName = "DIV"; |
| // undefined |
| o21 = null; |
| // 33769 |
| o20.nodeName = "DIV"; |
| // undefined |
| o20 = null; |
| // 33771 |
| o45.nodeName = "DIV"; |
| // undefined |
| o45 = null; |
| // 33773 |
| o109.nodeName = "DIV"; |
| // undefined |
| o109 = null; |
| // 33775 |
| o110.nodeName = "DIV"; |
| // undefined |
| o110 = null; |
| // 33777 |
| o111.nodeName = "DIV"; |
| // undefined |
| o111 = null; |
| // 33779 |
| o112.nodeName = "DIV"; |
| // undefined |
| o112 = null; |
| // 33781 |
| o113.nodeName = "DIV"; |
| // undefined |
| o113 = null; |
| // 33783 |
| o82.nodeName = "DIV"; |
| // undefined |
| o82 = null; |
| // 33791 |
| f81632121_1005.returns.push(undefined); |
| // 33796 |
| f81632121_467.returns.push(1374851257692); |
| // 33797 |
| f81632121_14.returns.push(undefined); |
| // 33798 |
| f81632121_12.returns.push(164); |
| // 33800 |
| f81632121_467.returns.push(1374851257692); |
| // 33803 |
| o24.srcElement = o183; |
| // 33812 |
| f81632121_506.returns.push(null); |
| // 33818 |
| f81632121_506.returns.push(null); |
| // 33824 |
| f81632121_506.returns.push(null); |
| // 33830 |
| f81632121_506.returns.push(null); |
| // 33836 |
| f81632121_506.returns.push(null); |
| // 33842 |
| f81632121_506.returns.push(null); |
| // 33848 |
| f81632121_506.returns.push(null); |
| // 33854 |
| f81632121_506.returns.push(null); |
| // 33860 |
| f81632121_506.returns.push(null); |
| // 33866 |
| f81632121_506.returns.push(null); |
| // 33872 |
| f81632121_506.returns.push(null); |
| // 33878 |
| f81632121_506.returns.push(null); |
| // 33884 |
| f81632121_506.returns.push(null); |
| // 33890 |
| f81632121_506.returns.push(null); |
| // 33896 |
| f81632121_506.returns.push(null); |
| // 33901 |
| o24.JSBNG__screenX = 222; |
| // 33902 |
| o24.JSBNG__screenY = 574; |
| // 33903 |
| o24.altKey = false; |
| // 33904 |
| o24.bubbles = true; |
| // 33905 |
| o24.button = 0; |
| // 33906 |
| o24.buttons = void 0; |
| // 33907 |
| o24.cancelable = true; |
| // 33908 |
| o24.clientX = 154; |
| // 33909 |
| o24.clientY = 409; |
| // 33910 |
| o24.ctrlKey = false; |
| // 33911 |
| o24.currentTarget = o0; |
| // 33912 |
| o24.defaultPrevented = false; |
| // 33913 |
| o24.detail = 1; |
| // 33914 |
| o24.eventPhase = 3; |
| // 33915 |
| o24.isTrusted = void 0; |
| // 33916 |
| o24.metaKey = false; |
| // 33917 |
| o24.pageX = 154; |
| // 33918 |
| o24.pageY = 2795; |
| // 33919 |
| o24.relatedTarget = null; |
| // 33920 |
| o24.fromElement = null; |
| // 33923 |
| o24.shiftKey = false; |
| // 33926 |
| o24.timeStamp = 1374851257676; |
| // 33928 |
| o24.view = ow81632121; |
| // undefined |
| o24 = null; |
| // 33935 |
| f81632121_12.returns.push(165); |
| // 33938 |
| o20 = {}; |
| // 33941 |
| o20.srcElement = o0; |
| // 33943 |
| o20.target = o0; |
| // 33949 |
| o20.cancelBubble = false; |
| // 33952 |
| o20.returnValue = true; |
| // undefined |
| o20 = null; |
| // 33955 |
| f81632121_467.returns.push(1374851257703); |
| // 33956 |
| // undefined |
| o1 = null; |
| // 33957 |
| f81632121_12.returns.push(166); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 33962 |
| f81632121_12.returns.push(167); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 33967 |
| f81632121_467.returns.push(1374851258116); |
| // 33968 |
| o1 = {}; |
| // 33971 |
| o1.cancelBubble = false; |
| // 33974 |
| f81632121_467.returns.push(1374851258127); |
| // 33976 |
| o1.returnValue = true; |
| // undefined |
| o1 = null; |
| // 33977 |
| o1 = {}; |
| // 33980 |
| o1.cancelBubble = false; |
| // 33983 |
| f81632121_467.returns.push(1374851258146); |
| // 33985 |
| o1.returnValue = true; |
| // undefined |
| o1 = null; |
| // 33986 |
| o1 = {}; |
| // 33989 |
| o1.cancelBubble = false; |
| // 33992 |
| f81632121_467.returns.push(1374851258174); |
| // 33994 |
| o1.returnValue = true; |
| // undefined |
| o1 = null; |
| // 33995 |
| o1 = {}; |
| // 33998 |
| o1.cancelBubble = false; |
| // 34001 |
| f81632121_467.returns.push(1374851258200); |
| // 34006 |
| f81632121_467.returns.push(1374851258202); |
| // 34010 |
| f81632121_467.returns.push(1374851258202); |
| // 34013 |
| o1.returnValue = true; |
| // undefined |
| o1 = null; |
| // 34014 |
| o1 = {}; |
| // 34017 |
| o1.cancelBubble = false; |
| // 34020 |
| f81632121_467.returns.push(1374851258220); |
| // 34022 |
| o1.returnValue = true; |
| // undefined |
| o1 = null; |
| // 34023 |
| o1 = {}; |
| // 34026 |
| o1.cancelBubble = false; |
| // 34029 |
| f81632121_467.returns.push(1374851258246); |
| // 34031 |
| o1.returnValue = true; |
| // undefined |
| o1 = null; |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 34033 |
| o1 = {}; |
| // 34036 |
| o1.cancelBubble = false; |
| // 34039 |
| f81632121_467.returns.push(1374851258268); |
| // 34041 |
| o1.returnValue = true; |
| // undefined |
| o1 = null; |
| // 34042 |
| o1 = {}; |
| // 34045 |
| o1.cancelBubble = false; |
| // 34048 |
| f81632121_467.returns.push(1374851258288); |
| // 34050 |
| o1.returnValue = true; |
| // undefined |
| o1 = null; |
| // 34051 |
| o1 = {}; |
| // 34054 |
| o1.cancelBubble = false; |
| // 34057 |
| f81632121_467.returns.push(1374851258317); |
| // 34059 |
| o1.returnValue = true; |
| // undefined |
| o1 = null; |
| // 34060 |
| o1 = {}; |
| // 34063 |
| o1.cancelBubble = false; |
| // 34066 |
| f81632121_467.returns.push(1374851258332); |
| // 34068 |
| o1.returnValue = true; |
| // undefined |
| o1 = null; |
| // 34069 |
| o1 = {}; |
| // 34072 |
| o1.cancelBubble = false; |
| // 34075 |
| f81632121_467.returns.push(1374851258351); |
| // 34077 |
| o1.returnValue = true; |
| // undefined |
| o1 = null; |
| // 34078 |
| o1 = {}; |
| // 34081 |
| o1.cancelBubble = false; |
| // 34084 |
| f81632121_467.returns.push(1374851258386); |
| // 34086 |
| o1.returnValue = true; |
| // undefined |
| o1 = null; |
| // 34087 |
| o1 = {}; |
| // 34090 |
| o1.srcElement = o183; |
| // 34092 |
| o1.target = o183; |
| // 34099 |
| f81632121_506.returns.push(null); |
| // 34105 |
| f81632121_506.returns.push(null); |
| // 34111 |
| f81632121_506.returns.push(null); |
| // 34117 |
| f81632121_506.returns.push(null); |
| // 34123 |
| f81632121_506.returns.push(null); |
| // 34129 |
| f81632121_506.returns.push(null); |
| // 34135 |
| f81632121_506.returns.push(null); |
| // 34141 |
| f81632121_506.returns.push(null); |
| // 34147 |
| f81632121_506.returns.push(null); |
| // 34153 |
| f81632121_506.returns.push(null); |
| // 34159 |
| f81632121_506.returns.push(null); |
| // 34165 |
| f81632121_506.returns.push(null); |
| // 34171 |
| f81632121_506.returns.push(null); |
| // 34177 |
| f81632121_506.returns.push(null); |
| // 34183 |
| f81632121_506.returns.push(null); |
| // 34188 |
| o1.relatedTarget = o73; |
| // 34189 |
| o20 = {}; |
| // 34190 |
| o73.parentNode = o20; |
| // 34191 |
| o73.nodeType = 1; |
| // 34194 |
| f81632121_506.returns.push(null); |
| // 34196 |
| o20.parentNode = o183; |
| // 34197 |
| o20.nodeType = 1; |
| // 34198 |
| o20.getAttribute = f81632121_506; |
| // undefined |
| o20 = null; |
| // 34200 |
| f81632121_506.returns.push(null); |
| // 34206 |
| f81632121_506.returns.push(null); |
| // 34212 |
| f81632121_506.returns.push(null); |
| // 34218 |
| f81632121_506.returns.push(null); |
| // 34224 |
| f81632121_506.returns.push(null); |
| // 34230 |
| f81632121_506.returns.push(null); |
| // 34236 |
| f81632121_506.returns.push(null); |
| // 34242 |
| f81632121_506.returns.push(null); |
| // 34248 |
| f81632121_506.returns.push(null); |
| // 34254 |
| f81632121_506.returns.push(null); |
| // 34260 |
| f81632121_506.returns.push(null); |
| // 34266 |
| f81632121_506.returns.push(null); |
| // 34272 |
| f81632121_506.returns.push(null); |
| // 34278 |
| f81632121_506.returns.push(null); |
| // 34284 |
| f81632121_506.returns.push(null); |
| // 34290 |
| f81632121_506.returns.push(null); |
| // 34295 |
| o1.cancelBubble = false; |
| // 34296 |
| o1.returnValue = true; |
| // undefined |
| o1 = null; |
| // 34297 |
| o1 = {}; |
| // 34300 |
| o1.cancelBubble = false; |
| // 34303 |
| f81632121_467.returns.push(1374851258398); |
| // 34306 |
| f81632121_1007.returns.push(undefined); |
| // 34308 |
| o1.returnValue = true; |
| // 34311 |
| o1.srcElement = o73; |
| // 34313 |
| o1.target = o73; |
| // 34320 |
| f81632121_506.returns.push(null); |
| // 34326 |
| f81632121_506.returns.push(null); |
| // 34332 |
| f81632121_506.returns.push(null); |
| // 34338 |
| f81632121_506.returns.push(null); |
| // 34344 |
| f81632121_506.returns.push(null); |
| // 34350 |
| f81632121_506.returns.push(null); |
| // 34356 |
| f81632121_506.returns.push(null); |
| // 34362 |
| f81632121_506.returns.push(null); |
| // 34368 |
| f81632121_506.returns.push(null); |
| // 34374 |
| f81632121_506.returns.push(null); |
| // 34380 |
| f81632121_506.returns.push(null); |
| // 34386 |
| f81632121_506.returns.push(null); |
| // 34392 |
| f81632121_506.returns.push(null); |
| // 34398 |
| f81632121_506.returns.push(null); |
| // 34404 |
| f81632121_506.returns.push(null); |
| // 34410 |
| f81632121_506.returns.push(null); |
| // 34416 |
| f81632121_506.returns.push(null); |
| // 34421 |
| o1.relatedTarget = o183; |
| // undefined |
| o1 = null; |
| // 34424 |
| o1 = {}; |
| // 34428 |
| f81632121_467.returns.push(1374851258404); |
| // 34429 |
| o1.cancelBubble = false; |
| // 34430 |
| o1.returnValue = true; |
| // 34433 |
| o1.srcElement = o73; |
| // 34435 |
| o1.target = o73; |
| // 34442 |
| f81632121_506.returns.push(null); |
| // 34448 |
| f81632121_506.returns.push(null); |
| // 34454 |
| f81632121_506.returns.push(null); |
| // 34460 |
| f81632121_506.returns.push(null); |
| // 34466 |
| f81632121_506.returns.push(null); |
| // 34472 |
| f81632121_506.returns.push(null); |
| // 34478 |
| f81632121_506.returns.push(null); |
| // 34484 |
| f81632121_506.returns.push(null); |
| // 34490 |
| f81632121_506.returns.push(null); |
| // 34496 |
| f81632121_506.returns.push(null); |
| // 34502 |
| f81632121_506.returns.push(null); |
| // 34508 |
| f81632121_506.returns.push(null); |
| // 34514 |
| f81632121_506.returns.push(null); |
| // 34520 |
| f81632121_506.returns.push(null); |
| // 34526 |
| f81632121_506.returns.push(null); |
| // 34532 |
| f81632121_506.returns.push(null); |
| // 34538 |
| f81632121_506.returns.push(null); |
| // 34543 |
| o1.JSBNG__screenX = 226; |
| // 34544 |
| o1.JSBNG__screenY = 566; |
| // 34545 |
| o1.altKey = false; |
| // 34546 |
| o1.bubbles = true; |
| // 34547 |
| o1.button = 0; |
| // 34548 |
| o1.buttons = void 0; |
| // 34549 |
| o1.cancelable = false; |
| // 34550 |
| o1.clientX = 158; |
| // 34551 |
| o1.clientY = 401; |
| // 34552 |
| o1.ctrlKey = false; |
| // 34553 |
| o1.currentTarget = o0; |
| // 34554 |
| o1.defaultPrevented = false; |
| // 34555 |
| o1.detail = 0; |
| // 34556 |
| o1.eventPhase = 3; |
| // 34557 |
| o1.isTrusted = void 0; |
| // 34558 |
| o1.metaKey = false; |
| // 34559 |
| o1.pageX = 158; |
| // 34560 |
| o1.pageY = 787; |
| // 34561 |
| o1.relatedTarget = null; |
| // 34562 |
| o1.fromElement = null; |
| // 34565 |
| o1.shiftKey = false; |
| // 34568 |
| o1.timeStamp = 1374851258404; |
| // 34569 |
| o1.type = "mousemove"; |
| // 34570 |
| o1.view = ow81632121; |
| // undefined |
| o1 = null; |
| // 34579 |
| f81632121_1852.returns.push(undefined); |
| // 34582 |
| f81632121_14.returns.push(undefined); |
| // 34583 |
| f81632121_12.returns.push(168); |
| // 34588 |
| f81632121_467.returns.push(1374851258716); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 34590 |
| o1 = {}; |
| // 34593 |
| o1.srcElement = o73; |
| // 34595 |
| o1.target = o73; |
| // 34602 |
| f81632121_506.returns.push(null); |
| // 34608 |
| f81632121_506.returns.push(null); |
| // 34614 |
| f81632121_506.returns.push(null); |
| // 34620 |
| f81632121_506.returns.push(null); |
| // 34626 |
| f81632121_506.returns.push(null); |
| // 34632 |
| f81632121_506.returns.push(null); |
| // 34638 |
| f81632121_506.returns.push(null); |
| // 34644 |
| f81632121_506.returns.push(null); |
| // 34650 |
| f81632121_506.returns.push(null); |
| // 34656 |
| f81632121_506.returns.push(null); |
| // 34662 |
| f81632121_506.returns.push(null); |
| // 34668 |
| f81632121_506.returns.push(null); |
| // 34674 |
| f81632121_506.returns.push(null); |
| // 34680 |
| f81632121_506.returns.push(null); |
| // 34686 |
| f81632121_506.returns.push(null); |
| // 34692 |
| f81632121_506.returns.push(null); |
| // 34698 |
| f81632121_506.returns.push(null); |
| // 34703 |
| o20 = {}; |
| // 34704 |
| o1.relatedTarget = o20; |
| // 34705 |
| o20.parentNode = o78; |
| // 34706 |
| o20.nodeType = 1; |
| // 34707 |
| o20.getAttribute = f81632121_506; |
| // 34709 |
| f81632121_506.returns.push(null); |
| // 34711 |
| o78.parentNode = o73; |
| // 34712 |
| o78.nodeType = 1; |
| // 34713 |
| o78.getAttribute = f81632121_506; |
| // 34715 |
| f81632121_506.returns.push(null); |
| // 34721 |
| f81632121_506.returns.push(null); |
| // 34727 |
| f81632121_506.returns.push(null); |
| // 34733 |
| f81632121_506.returns.push(null); |
| // 34739 |
| f81632121_506.returns.push(null); |
| // 34745 |
| f81632121_506.returns.push(null); |
| // 34751 |
| f81632121_506.returns.push(null); |
| // 34757 |
| f81632121_506.returns.push(null); |
| // 34763 |
| f81632121_506.returns.push(null); |
| // 34769 |
| f81632121_506.returns.push(null); |
| // 34775 |
| f81632121_506.returns.push(null); |
| // 34781 |
| f81632121_506.returns.push(null); |
| // 34787 |
| f81632121_506.returns.push(null); |
| // 34793 |
| f81632121_506.returns.push(null); |
| // 34799 |
| f81632121_506.returns.push(null); |
| // 34805 |
| f81632121_506.returns.push(null); |
| // 34811 |
| f81632121_506.returns.push(null); |
| // 34817 |
| f81632121_506.returns.push(null); |
| // 34822 |
| o1.cancelBubble = false; |
| // 34823 |
| o1.returnValue = true; |
| // undefined |
| o1 = null; |
| // 34824 |
| o1 = {}; |
| // 34827 |
| o1.cancelBubble = false; |
| // 34830 |
| f81632121_467.returns.push(1374851258936); |
| // 34835 |
| f81632121_467.returns.push(1374851258937); |
| // 34839 |
| f81632121_467.returns.push(1374851258937); |
| // 34843 |
| f81632121_1007.returns.push(undefined); |
| // 34845 |
| o1.returnValue = true; |
| // 34848 |
| o1.srcElement = o20; |
| // 34850 |
| o1.target = o20; |
| // 34857 |
| f81632121_506.returns.push(null); |
| // 34863 |
| f81632121_506.returns.push(null); |
| // 34869 |
| f81632121_506.returns.push(null); |
| // 34875 |
| f81632121_506.returns.push(null); |
| // 34881 |
| f81632121_506.returns.push(null); |
| // 34887 |
| f81632121_506.returns.push(null); |
| // 34893 |
| f81632121_506.returns.push(null); |
| // 34899 |
| f81632121_506.returns.push(null); |
| // 34905 |
| f81632121_506.returns.push(null); |
| // 34911 |
| f81632121_506.returns.push(null); |
| // 34917 |
| f81632121_506.returns.push(null); |
| // 34923 |
| f81632121_506.returns.push(null); |
| // 34929 |
| f81632121_506.returns.push(null); |
| // 34935 |
| f81632121_506.returns.push(null); |
| // 34941 |
| f81632121_506.returns.push(null); |
| // 34947 |
| f81632121_506.returns.push(null); |
| // 34953 |
| f81632121_506.returns.push(null); |
| // 34959 |
| f81632121_506.returns.push(null); |
| // 34965 |
| f81632121_506.returns.push(null); |
| // 34970 |
| o1.relatedTarget = o73; |
| // undefined |
| o1 = null; |
| // undefined |
| o73 = null; |
| // 34973 |
| o1 = {}; |
| // 34977 |
| f81632121_467.returns.push(1374851258956); |
| // 34978 |
| o1.cancelBubble = false; |
| // 34979 |
| o1.returnValue = true; |
| // 34982 |
| o1.srcElement = o20; |
| // 34984 |
| o1.target = o20; |
| // undefined |
| o20 = null; |
| // 34991 |
| f81632121_506.returns.push(null); |
| // 34997 |
| f81632121_506.returns.push(null); |
| // 35003 |
| f81632121_506.returns.push(null); |
| // 35009 |
| f81632121_506.returns.push(null); |
| // 35015 |
| f81632121_506.returns.push(null); |
| // 35021 |
| f81632121_506.returns.push(null); |
| // 35027 |
| f81632121_506.returns.push(null); |
| // 35033 |
| f81632121_506.returns.push(null); |
| // 35039 |
| f81632121_506.returns.push(null); |
| // 35045 |
| f81632121_506.returns.push(null); |
| // 35051 |
| f81632121_506.returns.push(null); |
| // 35057 |
| f81632121_506.returns.push(null); |
| // 35063 |
| f81632121_506.returns.push(null); |
| // 35069 |
| f81632121_506.returns.push(null); |
| // 35075 |
| f81632121_506.returns.push(null); |
| // 35081 |
| f81632121_506.returns.push(null); |
| // 35087 |
| f81632121_506.returns.push(null); |
| // 35093 |
| f81632121_506.returns.push(null); |
| // 35099 |
| f81632121_506.returns.push(null); |
| // 35104 |
| o1.JSBNG__screenX = 228; |
| // 35105 |
| o1.JSBNG__screenY = 561; |
| // 35106 |
| o1.altKey = false; |
| // 35107 |
| o1.bubbles = true; |
| // 35108 |
| o1.button = 0; |
| // 35109 |
| o1.buttons = void 0; |
| // 35110 |
| o1.cancelable = false; |
| // 35111 |
| o1.clientX = 160; |
| // 35112 |
| o1.clientY = 396; |
| // 35113 |
| o1.ctrlKey = false; |
| // 35114 |
| o1.currentTarget = o0; |
| // 35115 |
| o1.defaultPrevented = false; |
| // 35116 |
| o1.detail = 0; |
| // 35117 |
| o1.eventPhase = 3; |
| // 35118 |
| o1.isTrusted = void 0; |
| // 35119 |
| o1.metaKey = false; |
| // 35120 |
| o1.pageX = 160; |
| // 35121 |
| o1.pageY = 782; |
| // 35122 |
| o1.relatedTarget = null; |
| // 35123 |
| o1.fromElement = null; |
| // 35126 |
| o1.shiftKey = false; |
| // 35129 |
| o1.timeStamp = 1374851258956; |
| // 35130 |
| o1.type = "mousemove"; |
| // 35131 |
| o1.view = ow81632121; |
| // undefined |
| o1 = null; |
| // 35140 |
| f81632121_1852.returns.push(undefined); |
| // 35143 |
| f81632121_14.returns.push(undefined); |
| // 35144 |
| f81632121_12.returns.push(169); |
| // 35156 |
| f81632121_14.returns.push(undefined); |
| // 35157 |
| f81632121_14.returns.push(undefined); |
| // 35158 |
| f81632121_14.returns.push(undefined); |
| // 35159 |
| f81632121_12.returns.push(170); |
| // 35160 |
| f81632121_12.returns.push(171); |
| // 35161 |
| o8.JSBNG__name = void 0; |
| // 35162 |
| o8.id = "facebook"; |
| // undefined |
| o8 = null; |
| // 35165 |
| f81632121_467.returns.push(1374851258975); |
| // 35167 |
| f81632121_1007.returns.push(undefined); |
| // 35173 |
| f81632121_467.returns.push(1374851258976); |
| // 35180 |
| f81632121_1852.returns.push(undefined); |
| // 35182 |
| f81632121_14.returns.push(undefined); |
| // 35183 |
| f81632121_12.returns.push(172); |
| // 35184 |
| f81632121_12.returns.push(173); |
| // 35186 |
| o1 = {}; |
| // 35189 |
| o8 = {}; |
| // 35190 |
| o1.srcElement = o8; |
| // 35192 |
| o1.target = o8; |
| // 35194 |
| o8.nodeType = 1; |
| // 35195 |
| o20 = {}; |
| // 35196 |
| o8.parentNode = o20; |
| // 35198 |
| o8.getAttribute = f81632121_506; |
| // undefined |
| o8 = null; |
| // 35200 |
| f81632121_506.returns.push(null); |
| // 35202 |
| o8 = {}; |
| // 35203 |
| o20.parentNode = o8; |
| // 35204 |
| o20.nodeType = 1; |
| // 35205 |
| o20.getAttribute = f81632121_506; |
| // undefined |
| o20 = null; |
| // 35207 |
| f81632121_506.returns.push(null); |
| // 35209 |
| o20 = {}; |
| // 35210 |
| o8.parentNode = o20; |
| // 35211 |
| o8.nodeType = 1; |
| // 35212 |
| o8.getAttribute = f81632121_506; |
| // undefined |
| o8 = null; |
| // 35214 |
| f81632121_506.returns.push(null); |
| // 35216 |
| o8 = {}; |
| // 35217 |
| o20.parentNode = o8; |
| // 35218 |
| o20.nodeType = 1; |
| // 35219 |
| o20.getAttribute = f81632121_506; |
| // undefined |
| o20 = null; |
| // 35221 |
| f81632121_506.returns.push(null); |
| // 35223 |
| o20 = {}; |
| // 35224 |
| o8.parentNode = o20; |
| // 35225 |
| o8.nodeType = 1; |
| // 35226 |
| o8.getAttribute = f81632121_506; |
| // undefined |
| o8 = null; |
| // 35228 |
| f81632121_506.returns.push(null); |
| // 35230 |
| o8 = {}; |
| // 35231 |
| o20.parentNode = o8; |
| // 35232 |
| o20.nodeType = 1; |
| // 35233 |
| o20.getAttribute = f81632121_506; |
| // undefined |
| o20 = null; |
| // 35235 |
| f81632121_506.returns.push(null); |
| // 35237 |
| o20 = {}; |
| // 35238 |
| o8.parentNode = o20; |
| // 35239 |
| o8.nodeType = 1; |
| // 35240 |
| o8.getAttribute = f81632121_506; |
| // undefined |
| o8 = null; |
| // 35242 |
| f81632121_506.returns.push(null); |
| // 35244 |
| o8 = {}; |
| // 35245 |
| o20.parentNode = o8; |
| // 35246 |
| o20.nodeType = 1; |
| // 35247 |
| o20.getAttribute = f81632121_506; |
| // 35249 |
| f81632121_506.returns.push(null); |
| // 35251 |
| o21 = {}; |
| // 35252 |
| o8.parentNode = o21; |
| // 35253 |
| o8.nodeType = 1; |
| // 35254 |
| o8.getAttribute = f81632121_506; |
| // undefined |
| o8 = null; |
| // 35256 |
| f81632121_506.returns.push(null); |
| // 35258 |
| o8 = {}; |
| // 35259 |
| o21.parentNode = o8; |
| // 35260 |
| o21.nodeType = 1; |
| // 35261 |
| o21.getAttribute = f81632121_506; |
| // undefined |
| o21 = null; |
| // 35263 |
| f81632121_506.returns.push(null); |
| // 35265 |
| o21 = {}; |
| // 35266 |
| o8.parentNode = o21; |
| // 35267 |
| o8.nodeType = 1; |
| // 35268 |
| o8.getAttribute = f81632121_506; |
| // undefined |
| o8 = null; |
| // 35270 |
| f81632121_506.returns.push(null); |
| // 35272 |
| o8 = {}; |
| // 35273 |
| o21.parentNode = o8; |
| // 35274 |
| o21.nodeType = 1; |
| // 35275 |
| o21.getAttribute = f81632121_506; |
| // undefined |
| o21 = null; |
| // 35277 |
| f81632121_506.returns.push(null); |
| // 35279 |
| o21 = {}; |
| // 35280 |
| o8.parentNode = o21; |
| // 35281 |
| o8.nodeType = 1; |
| // 35282 |
| o8.getAttribute = f81632121_506; |
| // undefined |
| o8 = null; |
| // 35284 |
| f81632121_506.returns.push(null); |
| // 35286 |
| o8 = {}; |
| // 35287 |
| o21.parentNode = o8; |
| // 35288 |
| o21.nodeType = 1; |
| // 35289 |
| o21.getAttribute = f81632121_506; |
| // undefined |
| o21 = null; |
| // 35291 |
| f81632121_506.returns.push(null); |
| // 35293 |
| o21 = {}; |
| // 35294 |
| o8.parentNode = o21; |
| // 35295 |
| o8.nodeType = 1; |
| // 35296 |
| o8.getAttribute = f81632121_506; |
| // undefined |
| o8 = null; |
| // 35298 |
| f81632121_506.returns.push(null); |
| // 35300 |
| o21.parentNode = o78; |
| // undefined |
| o78 = null; |
| // 35301 |
| o21.nodeType = 1; |
| // 35302 |
| o21.getAttribute = f81632121_506; |
| // undefined |
| o21 = null; |
| // 35304 |
| f81632121_506.returns.push(null); |
| // 35310 |
| f81632121_506.returns.push(null); |
| // 35316 |
| f81632121_506.returns.push(null); |
| // 35322 |
| f81632121_506.returns.push(null); |
| // 35328 |
| f81632121_506.returns.push(null); |
| // 35334 |
| f81632121_506.returns.push(null); |
| // 35340 |
| f81632121_506.returns.push(null); |
| // 35346 |
| f81632121_506.returns.push(null); |
| // 35352 |
| f81632121_506.returns.push(null); |
| // 35358 |
| f81632121_506.returns.push(null); |
| // 35364 |
| f81632121_506.returns.push(null); |
| // 35370 |
| f81632121_506.returns.push(null); |
| // 35376 |
| f81632121_506.returns.push(null); |
| // 35382 |
| f81632121_506.returns.push(null); |
| // 35388 |
| f81632121_506.returns.push(null); |
| // 35394 |
| f81632121_506.returns.push(null); |
| // 35400 |
| f81632121_506.returns.push(null); |
| // 35406 |
| f81632121_506.returns.push(null); |
| // 35412 |
| f81632121_506.returns.push(null); |
| // 35417 |
| o8 = {}; |
| // 35418 |
| o1.relatedTarget = o8; |
| // 35419 |
| o21 = {}; |
| // 35420 |
| o8.parentNode = o21; |
| // 35421 |
| o8.nodeType = 1; |
| // 35422 |
| o8.getAttribute = f81632121_506; |
| // 35424 |
| f81632121_506.returns.push(null); |
| // 35426 |
| o24 = {}; |
| // 35427 |
| o21.parentNode = o24; |
| // 35428 |
| o21.nodeType = 1; |
| // 35429 |
| o21.getAttribute = f81632121_506; |
| // undefined |
| o21 = null; |
| // 35431 |
| f81632121_506.returns.push(null); |
| // 35433 |
| o21 = {}; |
| // 35434 |
| o24.parentNode = o21; |
| // 35435 |
| o24.nodeType = 1; |
| // 35436 |
| o24.getAttribute = f81632121_506; |
| // undefined |
| o24 = null; |
| // 35438 |
| f81632121_506.returns.push(null); |
| // 35440 |
| o24 = {}; |
| // 35441 |
| o21.parentNode = o24; |
| // 35442 |
| o21.nodeType = 1; |
| // 35443 |
| o21.getAttribute = f81632121_506; |
| // undefined |
| o21 = null; |
| // 35445 |
| f81632121_506.returns.push(null); |
| // 35447 |
| o21 = {}; |
| // 35448 |
| o24.parentNode = o21; |
| // 35449 |
| o24.nodeType = 1; |
| // 35450 |
| o24.getAttribute = f81632121_506; |
| // undefined |
| o24 = null; |
| // 35452 |
| f81632121_506.returns.push(null); |
| // 35454 |
| o24 = {}; |
| // 35455 |
| o21.parentNode = o24; |
| // 35456 |
| o21.nodeType = 1; |
| // 35457 |
| o21.getAttribute = f81632121_506; |
| // undefined |
| o21 = null; |
| // 35459 |
| f81632121_506.returns.push(null); |
| // 35461 |
| o24.parentNode = o20; |
| // undefined |
| o20 = null; |
| // 35462 |
| o24.nodeType = 1; |
| // 35463 |
| o24.getAttribute = f81632121_506; |
| // undefined |
| o24 = null; |
| // 35465 |
| f81632121_506.returns.push(null); |
| // 35471 |
| f81632121_506.returns.push(null); |
| // 35477 |
| f81632121_506.returns.push(null); |
| // 35483 |
| f81632121_506.returns.push(null); |
| // 35489 |
| f81632121_506.returns.push(null); |
| // 35495 |
| f81632121_506.returns.push(null); |
| // 35501 |
| f81632121_506.returns.push(null); |
| // 35507 |
| f81632121_506.returns.push(null); |
| // 35513 |
| f81632121_506.returns.push(null); |
| // 35519 |
| f81632121_506.returns.push(null); |
| // 35525 |
| f81632121_506.returns.push(null); |
| // 35531 |
| f81632121_506.returns.push(null); |
| // 35537 |
| f81632121_506.returns.push(null); |
| // 35543 |
| f81632121_506.returns.push(null); |
| // 35549 |
| f81632121_506.returns.push(null); |
| // 35555 |
| f81632121_506.returns.push(null); |
| // 35561 |
| f81632121_506.returns.push(null); |
| // 35567 |
| f81632121_506.returns.push(null); |
| // 35573 |
| f81632121_506.returns.push(null); |
| // 35579 |
| f81632121_506.returns.push(null); |
| // 35585 |
| f81632121_506.returns.push(null); |
| // 35591 |
| f81632121_506.returns.push(null); |
| // 35597 |
| f81632121_506.returns.push(null); |
| // 35603 |
| f81632121_506.returns.push(null); |
| // 35609 |
| f81632121_506.returns.push(null); |
| // 35615 |
| f81632121_506.returns.push(null); |
| // 35621 |
| f81632121_506.returns.push(null); |
| // 35627 |
| f81632121_506.returns.push(null); |
| // 35632 |
| o1.cancelBubble = false; |
| // 35633 |
| o1.returnValue = true; |
| // undefined |
| o1 = null; |
| // 35634 |
| o1 = {}; |
| // 35637 |
| f81632121_14.returns.push(undefined); |
| // 35638 |
| f81632121_14.returns.push(undefined); |
| // 35639 |
| f81632121_14.returns.push(undefined); |
| // 35640 |
| f81632121_12.returns.push(174); |
| // 35641 |
| f81632121_12.returns.push(175); |
| // 35642 |
| f81632121_2709 = function() { return f81632121_2709.returns[f81632121_2709.inst++]; }; |
| f81632121_2709.returns = []; |
| f81632121_2709.inst = 0; |
| // 35643 |
| o1.JSBNG__stop = f81632121_2709; |
| // 35644 |
| f81632121_2710 = function() { return f81632121_2710.returns[f81632121_2710.inst++]; }; |
| f81632121_2710.returns = []; |
| f81632121_2710.inst = 0; |
| // 35645 |
| f81632121_270.JSBNG__stop = f81632121_2710; |
| // 35646 |
| o1.srcElement = o8; |
| // 35647 |
| o1.target = o8; |
| // 35648 |
| f81632121_2711 = function() { return f81632121_2711.returns[f81632121_2711.inst++]; }; |
| f81632121_2711.returns = []; |
| f81632121_2711.inst = 0; |
| // 35649 |
| o1.stopPropagation = f81632121_2711; |
| // 35651 |
| f81632121_2711.returns.push(undefined); |
| // 35652 |
| o1.type = "mouseover"; |
| // 35656 |
| f81632121_467.returns.push(1374851259018); |
| // 35657 |
| f81632121_2710.returns.push(o1); |
| // 35658 |
| f81632121_2709.returns.push(o1); |
| // 35659 |
| o1.cancelBubble = false; |
| // 35662 |
| f81632121_467.returns.push(1374851259019); |
| // 35665 |
| f81632121_1007.returns.push(undefined); |
| // 35667 |
| o1.returnValue = true; |
| // undefined |
| o1 = null; |
| // 35668 |
| o1 = {}; |
| // 35672 |
| f81632121_467.returns.push(1374851259019); |
| // 35673 |
| o1.cancelBubble = false; |
| // 35674 |
| o1.returnValue = true; |
| // 35677 |
| o1.srcElement = o8; |
| // 35679 |
| o1.target = o8; |
| // 35686 |
| f81632121_506.returns.push(null); |
| // 35692 |
| f81632121_506.returns.push(null); |
| // 35698 |
| f81632121_506.returns.push(null); |
| // 35704 |
| f81632121_506.returns.push(null); |
| // 35710 |
| f81632121_506.returns.push(null); |
| // 35716 |
| f81632121_506.returns.push(null); |
| // 35722 |
| f81632121_506.returns.push(null); |
| // 35728 |
| f81632121_506.returns.push(null); |
| // 35734 |
| f81632121_506.returns.push(null); |
| // 35740 |
| f81632121_506.returns.push(null); |
| // 35746 |
| f81632121_506.returns.push(null); |
| // 35752 |
| f81632121_506.returns.push(null); |
| // 35758 |
| f81632121_506.returns.push(null); |
| // 35764 |
| f81632121_506.returns.push(null); |
| // 35770 |
| f81632121_506.returns.push(null); |
| // 35776 |
| f81632121_506.returns.push(null); |
| // 35782 |
| f81632121_506.returns.push(null); |
| // 35788 |
| f81632121_506.returns.push(null); |
| // 35794 |
| f81632121_506.returns.push(null); |
| // 35800 |
| f81632121_506.returns.push(null); |
| // 35806 |
| f81632121_506.returns.push(null); |
| // 35812 |
| f81632121_506.returns.push(null); |
| // 35818 |
| f81632121_506.returns.push(null); |
| // 35824 |
| f81632121_506.returns.push(null); |
| // 35830 |
| f81632121_506.returns.push(null); |
| // 35836 |
| f81632121_506.returns.push(null); |
| // 35842 |
| f81632121_506.returns.push(null); |
| // 35848 |
| f81632121_506.returns.push(null); |
| // 35854 |
| f81632121_506.returns.push(null); |
| // 35860 |
| f81632121_506.returns.push(null); |
| // 35866 |
| f81632121_506.returns.push(null); |
| // 35872 |
| f81632121_506.returns.push(null); |
| // 35878 |
| f81632121_506.returns.push(null); |
| // 35884 |
| f81632121_506.returns.push(null); |
| // 35889 |
| o1.JSBNG__screenX = 307; |
| // 35890 |
| o1.JSBNG__screenY = 432; |
| // 35891 |
| o1.altKey = false; |
| // 35892 |
| o1.bubbles = true; |
| // 35893 |
| o1.button = 0; |
| // 35894 |
| o1.buttons = void 0; |
| // 35895 |
| o1.cancelable = false; |
| // 35896 |
| o1.clientX = 239; |
| // 35897 |
| o1.clientY = 267; |
| // 35898 |
| o1.ctrlKey = false; |
| // 35899 |
| o1.currentTarget = o0; |
| // 35900 |
| o1.defaultPrevented = false; |
| // 35901 |
| o1.detail = 0; |
| // 35902 |
| o1.eventPhase = 3; |
| // 35903 |
| o1.isTrusted = void 0; |
| // 35904 |
| o1.metaKey = false; |
| // 35905 |
| o1.pageX = 239; |
| // 35906 |
| o1.pageY = 653; |
| // 35907 |
| o1.relatedTarget = null; |
| // 35908 |
| o1.fromElement = null; |
| // 35911 |
| o1.shiftKey = false; |
| // 35914 |
| o1.timeStamp = 1374851259019; |
| // 35915 |
| o1.type = "mousemove"; |
| // 35916 |
| o1.view = ow81632121; |
| // undefined |
| o1 = null; |
| // 35925 |
| f81632121_1852.returns.push(undefined); |
| // 35928 |
| f81632121_14.returns.push(undefined); |
| // 35929 |
| f81632121_12.returns.push(176); |
| // 35932 |
| o1 = {}; |
| // 35935 |
| o1.srcElement = o8; |
| // 35937 |
| o1.target = o8; |
| // 35944 |
| f81632121_506.returns.push(null); |
| // 35950 |
| f81632121_506.returns.push(null); |
| // 35956 |
| f81632121_506.returns.push(null); |
| // 35962 |
| f81632121_506.returns.push(null); |
| // 35968 |
| f81632121_506.returns.push(null); |
| // 35974 |
| f81632121_506.returns.push(null); |
| // 35980 |
| f81632121_506.returns.push(null); |
| // 35986 |
| f81632121_506.returns.push(null); |
| // 35992 |
| f81632121_506.returns.push(null); |
| // 35998 |
| f81632121_506.returns.push(null); |
| // 36004 |
| f81632121_506.returns.push(null); |
| // 36010 |
| f81632121_506.returns.push(null); |
| // 36016 |
| f81632121_506.returns.push(null); |
| // 36022 |
| f81632121_506.returns.push(null); |
| // 36028 |
| f81632121_506.returns.push(null); |
| // 36034 |
| f81632121_506.returns.push(null); |
| // 36040 |
| f81632121_506.returns.push(null); |
| // 36046 |
| f81632121_506.returns.push(null); |
| // 36052 |
| f81632121_506.returns.push(null); |
| // 36058 |
| f81632121_506.returns.push(null); |
| // 36064 |
| f81632121_506.returns.push(null); |
| // 36070 |
| f81632121_506.returns.push(null); |
| // 36076 |
| f81632121_506.returns.push(null); |
| // 36082 |
| f81632121_506.returns.push(null); |
| // 36088 |
| f81632121_506.returns.push(null); |
| // 36094 |
| f81632121_506.returns.push(null); |
| // 36100 |
| f81632121_506.returns.push(null); |
| // 36106 |
| f81632121_506.returns.push(null); |
| // 36112 |
| f81632121_506.returns.push(null); |
| // 36118 |
| f81632121_506.returns.push(null); |
| // 36124 |
| f81632121_506.returns.push(null); |
| // 36130 |
| f81632121_506.returns.push(null); |
| // 36136 |
| f81632121_506.returns.push(null); |
| // 36142 |
| f81632121_506.returns.push(null); |
| // 36147 |
| o20 = {}; |
| // 36148 |
| o1.relatedTarget = o20; |
| // 36149 |
| o20.parentNode = o34; |
| // 36150 |
| o20.nodeType = 1; |
| // 36151 |
| o20.getAttribute = f81632121_506; |
| // 36153 |
| f81632121_506.returns.push(null); |
| // 36155 |
| o34.parentNode = o31; |
| // 36156 |
| o34.nodeType = 1; |
| // 36157 |
| o34.getAttribute = f81632121_506; |
| // undefined |
| o34 = null; |
| // 36159 |
| f81632121_506.returns.push(null); |
| // 36161 |
| o31.parentNode = o44; |
| // 36162 |
| o31.nodeType = 1; |
| // undefined |
| o31 = null; |
| // 36165 |
| f81632121_506.returns.push(null); |
| // 36168 |
| o44.nodeType = 1; |
| // 36169 |
| o44.getAttribute = f81632121_506; |
| // undefined |
| o44 = null; |
| // 36171 |
| f81632121_506.returns.push(null); |
| // 36177 |
| f81632121_506.returns.push(null); |
| // 36183 |
| f81632121_506.returns.push(null); |
| // 36189 |
| f81632121_506.returns.push(null); |
| // 36195 |
| f81632121_506.returns.push(null); |
| // 36201 |
| f81632121_506.returns.push(null); |
| // 36207 |
| f81632121_506.returns.push(null); |
| // 36213 |
| f81632121_506.returns.push(null); |
| // 36219 |
| f81632121_506.returns.push(null); |
| // 36225 |
| f81632121_506.returns.push(null); |
| // 36231 |
| f81632121_506.returns.push(null); |
| // 36237 |
| f81632121_506.returns.push(null); |
| // 36243 |
| f81632121_506.returns.push(null); |
| // 36249 |
| f81632121_506.returns.push(null); |
| // 36255 |
| f81632121_506.returns.push(null); |
| // 36261 |
| f81632121_506.returns.push(null); |
| // 36266 |
| o1.cancelBubble = false; |
| // 36267 |
| o1.returnValue = true; |
| // undefined |
| o1 = null; |
| // 36268 |
| o1 = {}; |
| // 36271 |
| o1.cancelBubble = false; |
| // 36274 |
| f81632121_467.returns.push(1374851259063); |
| // 36277 |
| f81632121_1007.returns.push(undefined); |
| // 36279 |
| o1.returnValue = true; |
| // 36282 |
| o1.srcElement = o20; |
| // 36284 |
| o1.target = o20; |
| // 36291 |
| f81632121_506.returns.push(null); |
| // 36297 |
| f81632121_506.returns.push(null); |
| // 36303 |
| f81632121_506.returns.push(null); |
| // 36309 |
| f81632121_506.returns.push(null); |
| // 36315 |
| f81632121_506.returns.push(null); |
| // 36321 |
| f81632121_506.returns.push(null); |
| // 36327 |
| f81632121_506.returns.push(null); |
| // 36333 |
| f81632121_506.returns.push(null); |
| // 36339 |
| f81632121_506.returns.push(null); |
| // 36345 |
| f81632121_506.returns.push(null); |
| // 36351 |
| f81632121_506.returns.push(null); |
| // 36357 |
| f81632121_506.returns.push(null); |
| // 36363 |
| f81632121_506.returns.push(null); |
| // 36369 |
| f81632121_506.returns.push(null); |
| // 36375 |
| f81632121_506.returns.push(null); |
| // 36381 |
| f81632121_506.returns.push(null); |
| // 36387 |
| f81632121_506.returns.push(null); |
| // 36393 |
| f81632121_506.returns.push(null); |
| // 36399 |
| f81632121_506.returns.push(null); |
| // 36404 |
| o1.relatedTarget = o8; |
| // undefined |
| o1 = null; |
| // undefined |
| o8 = null; |
| // 36407 |
| o1 = {}; |
| // 36411 |
| f81632121_467.returns.push(1374851259069); |
| // 36412 |
| o1.cancelBubble = false; |
| // 36413 |
| o1.returnValue = true; |
| // 36416 |
| o1.srcElement = o20; |
| // 36418 |
| o1.target = o20; |
| // 36425 |
| f81632121_506.returns.push(null); |
| // 36431 |
| f81632121_506.returns.push(null); |
| // 36437 |
| f81632121_506.returns.push(null); |
| // 36443 |
| f81632121_506.returns.push(null); |
| // 36449 |
| f81632121_506.returns.push(null); |
| // 36455 |
| f81632121_506.returns.push(null); |
| // 36461 |
| f81632121_506.returns.push(null); |
| // 36467 |
| f81632121_506.returns.push(null); |
| // 36473 |
| f81632121_506.returns.push(null); |
| // 36479 |
| f81632121_506.returns.push(null); |
| // 36485 |
| f81632121_506.returns.push(null); |
| // 36491 |
| f81632121_506.returns.push(null); |
| // 36497 |
| f81632121_506.returns.push(null); |
| // 36503 |
| f81632121_506.returns.push(null); |
| // 36509 |
| f81632121_506.returns.push(null); |
| // 36515 |
| f81632121_506.returns.push(null); |
| // 36521 |
| f81632121_506.returns.push(null); |
| // 36527 |
| f81632121_506.returns.push(null); |
| // 36533 |
| f81632121_506.returns.push(null); |
| // 36538 |
| o1.JSBNG__screenX = 429; |
| // 36539 |
| o1.JSBNG__screenY = 353; |
| // 36540 |
| o1.altKey = false; |
| // 36541 |
| o1.bubbles = true; |
| // 36542 |
| o1.button = 0; |
| // 36543 |
| o1.buttons = void 0; |
| // 36544 |
| o1.cancelable = false; |
| // 36545 |
| o1.clientX = 361; |
| // 36546 |
| o1.clientY = 188; |
| // 36547 |
| o1.ctrlKey = false; |
| // 36548 |
| o1.currentTarget = o0; |
| // 36549 |
| o1.defaultPrevented = false; |
| // 36550 |
| o1.detail = 0; |
| // 36551 |
| o1.eventPhase = 3; |
| // 36552 |
| o1.isTrusted = void 0; |
| // 36553 |
| o1.metaKey = false; |
| // 36554 |
| o1.pageX = 361; |
| // 36555 |
| o1.pageY = 574; |
| // 36556 |
| o1.relatedTarget = null; |
| // 36557 |
| o1.fromElement = null; |
| // 36560 |
| o1.shiftKey = false; |
| // 36563 |
| o1.timeStamp = 1374851259069; |
| // 36564 |
| o1.type = "mousemove"; |
| // 36565 |
| o1.view = ow81632121; |
| // undefined |
| o1 = null; |
| // 36574 |
| f81632121_1852.returns.push(undefined); |
| // 36577 |
| f81632121_14.returns.push(undefined); |
| // 36578 |
| f81632121_12.returns.push(177); |
| // 36582 |
| f81632121_467.returns.push(1374851259106); |
| // 36583 |
| o1 = {}; |
| // 36586 |
| o1.srcElement = o20; |
| // 36588 |
| o1.target = o20; |
| // 36595 |
| f81632121_506.returns.push(null); |
| // 36601 |
| f81632121_506.returns.push(null); |
| // 36607 |
| f81632121_506.returns.push(null); |
| // 36613 |
| f81632121_506.returns.push(null); |
| // 36619 |
| f81632121_506.returns.push(null); |
| // 36625 |
| f81632121_506.returns.push(null); |
| // 36631 |
| f81632121_506.returns.push(null); |
| // 36637 |
| f81632121_506.returns.push(null); |
| // 36643 |
| f81632121_506.returns.push(null); |
| // 36649 |
| f81632121_506.returns.push(null); |
| // 36655 |
| f81632121_506.returns.push(null); |
| // 36661 |
| f81632121_506.returns.push(null); |
| // 36667 |
| f81632121_506.returns.push(null); |
| // 36673 |
| f81632121_506.returns.push(null); |
| // 36679 |
| f81632121_506.returns.push(null); |
| // 36685 |
| f81632121_506.returns.push(null); |
| // 36691 |
| f81632121_506.returns.push(null); |
| // 36697 |
| f81632121_506.returns.push(null); |
| // 36703 |
| f81632121_506.returns.push(null); |
| // 36708 |
| o8 = {}; |
| // 36709 |
| o1.relatedTarget = o8; |
| // 36710 |
| o21 = {}; |
| // 36711 |
| o8.parentNode = o21; |
| // 36712 |
| o8.nodeType = 1; |
| // 36713 |
| o8.getAttribute = f81632121_506; |
| // 36715 |
| f81632121_506.returns.push(null); |
| // 36717 |
| o24 = {}; |
| // 36718 |
| o21.parentNode = o24; |
| // 36719 |
| o21.nodeType = 1; |
| // 36720 |
| o21.getAttribute = f81632121_506; |
| // undefined |
| o21 = null; |
| // 36722 |
| f81632121_506.returns.push(null); |
| // 36724 |
| o21 = {}; |
| // 36725 |
| o24.parentNode = o21; |
| // 36726 |
| o24.nodeType = 1; |
| // 36727 |
| o24.getAttribute = f81632121_506; |
| // undefined |
| o24 = null; |
| // 36729 |
| f81632121_506.returns.push(null); |
| // 36731 |
| o24 = {}; |
| // 36732 |
| o21.parentNode = o24; |
| // 36733 |
| o21.nodeType = 1; |
| // 36734 |
| o21.getAttribute = f81632121_506; |
| // 36736 |
| f81632121_506.returns.push(null); |
| // 36738 |
| o24.parentNode = o20; |
| // 36739 |
| o24.nodeType = 1; |
| // 36740 |
| o24.getAttribute = f81632121_506; |
| // undefined |
| o24 = null; |
| // 36742 |
| f81632121_506.returns.push(null); |
| // 36748 |
| f81632121_506.returns.push(null); |
| // 36754 |
| f81632121_506.returns.push(null); |
| // 36760 |
| f81632121_506.returns.push(null); |
| // 36766 |
| f81632121_506.returns.push(null); |
| // 36772 |
| f81632121_506.returns.push(null); |
| // 36778 |
| f81632121_506.returns.push(null); |
| // 36784 |
| f81632121_506.returns.push(null); |
| // 36790 |
| f81632121_506.returns.push(null); |
| // 36796 |
| f81632121_506.returns.push(null); |
| // 36802 |
| f81632121_506.returns.push(null); |
| // 36808 |
| f81632121_506.returns.push(null); |
| // 36814 |
| f81632121_506.returns.push(null); |
| // 36820 |
| f81632121_506.returns.push(null); |
| // 36826 |
| f81632121_506.returns.push(null); |
| // 36832 |
| f81632121_506.returns.push(null); |
| // 36838 |
| f81632121_506.returns.push(null); |
| // 36844 |
| f81632121_506.returns.push(null); |
| // 36850 |
| f81632121_506.returns.push(null); |
| // 36856 |
| f81632121_506.returns.push(null); |
| // 36861 |
| o1.cancelBubble = false; |
| // 36862 |
| o1.returnValue = true; |
| // undefined |
| o1 = null; |
| // 36863 |
| o1 = {}; |
| // 36866 |
| o1.cancelBubble = false; |
| // 36869 |
| f81632121_467.returns.push(1374851259120); |
| // 36872 |
| f81632121_1007.returns.push(undefined); |
| // 36874 |
| o1.returnValue = true; |
| // 36877 |
| o1.srcElement = o8; |
| // 36879 |
| o1.target = o8; |
| // 36886 |
| f81632121_506.returns.push(null); |
| // 36892 |
| f81632121_506.returns.push(null); |
| // 36898 |
| f81632121_506.returns.push(null); |
| // 36904 |
| f81632121_506.returns.push(null); |
| // 36910 |
| f81632121_506.returns.push(null); |
| // 36916 |
| f81632121_506.returns.push(null); |
| // 36922 |
| f81632121_506.returns.push(null); |
| // 36928 |
| f81632121_506.returns.push(null); |
| // 36934 |
| f81632121_506.returns.push(null); |
| // 36940 |
| f81632121_506.returns.push(null); |
| // 36946 |
| f81632121_506.returns.push(null); |
| // 36952 |
| f81632121_506.returns.push(null); |
| // 36958 |
| f81632121_506.returns.push(null); |
| // 36964 |
| f81632121_506.returns.push(null); |
| // 36970 |
| f81632121_506.returns.push(null); |
| // 36976 |
| f81632121_506.returns.push(null); |
| // 36982 |
| f81632121_506.returns.push(null); |
| // 36988 |
| f81632121_506.returns.push(null); |
| // 36994 |
| f81632121_506.returns.push(null); |
| // 37000 |
| f81632121_506.returns.push(null); |
| // 37006 |
| f81632121_506.returns.push(null); |
| // 37012 |
| f81632121_506.returns.push(null); |
| // 37018 |
| f81632121_506.returns.push(null); |
| // 37024 |
| f81632121_506.returns.push(null); |
| // 37029 |
| o1.relatedTarget = o20; |
| // undefined |
| o1 = null; |
| // 37032 |
| o1 = {}; |
| // 37036 |
| f81632121_467.returns.push(1374851259129); |
| // 37037 |
| o1.cancelBubble = false; |
| // 37038 |
| o1.returnValue = true; |
| // 37041 |
| o1.srcElement = o8; |
| // 37043 |
| o1.target = o8; |
| // 37050 |
| f81632121_506.returns.push(null); |
| // 37056 |
| f81632121_506.returns.push(null); |
| // 37062 |
| f81632121_506.returns.push(null); |
| // 37068 |
| f81632121_506.returns.push(null); |
| // 37074 |
| f81632121_506.returns.push(null); |
| // 37080 |
| f81632121_506.returns.push(null); |
| // 37086 |
| f81632121_506.returns.push(null); |
| // 37092 |
| f81632121_506.returns.push(null); |
| // 37098 |
| f81632121_506.returns.push(null); |
| // 37104 |
| f81632121_506.returns.push(null); |
| // 37110 |
| f81632121_506.returns.push(null); |
| // 37116 |
| f81632121_506.returns.push(null); |
| // 37122 |
| f81632121_506.returns.push(null); |
| // 37128 |
| f81632121_506.returns.push(null); |
| // 37134 |
| f81632121_506.returns.push(null); |
| // 37140 |
| f81632121_506.returns.push(null); |
| // 37146 |
| f81632121_506.returns.push(null); |
| // 37152 |
| f81632121_506.returns.push(null); |
| // 37158 |
| f81632121_506.returns.push(null); |
| // 37164 |
| f81632121_506.returns.push(null); |
| // 37170 |
| f81632121_506.returns.push(null); |
| // 37176 |
| f81632121_506.returns.push(null); |
| // 37182 |
| f81632121_506.returns.push(null); |
| // 37188 |
| f81632121_506.returns.push(null); |
| // 37193 |
| o1.JSBNG__screenX = 528; |
| // 37194 |
| o1.JSBNG__screenY = 345; |
| // 37195 |
| o1.altKey = false; |
| // 37196 |
| o1.bubbles = true; |
| // 37197 |
| o1.button = 0; |
| // 37198 |
| o1.buttons = void 0; |
| // 37199 |
| o1.cancelable = false; |
| // 37200 |
| o1.clientX = 460; |
| // 37201 |
| o1.clientY = 180; |
| // 37202 |
| o1.ctrlKey = false; |
| // 37203 |
| o1.currentTarget = o0; |
| // 37204 |
| o1.defaultPrevented = false; |
| // 37205 |
| o1.detail = 0; |
| // 37206 |
| o1.eventPhase = 3; |
| // 37207 |
| o1.isTrusted = void 0; |
| // 37208 |
| o1.metaKey = false; |
| // 37209 |
| o1.pageX = 460; |
| // 37210 |
| o1.pageY = 566; |
| // 37211 |
| o1.relatedTarget = null; |
| // 37212 |
| o1.fromElement = null; |
| // 37215 |
| o1.shiftKey = false; |
| // 37218 |
| o1.timeStamp = 1374851259128; |
| // 37219 |
| o1.type = "mousemove"; |
| // 37220 |
| o1.view = ow81632121; |
| // undefined |
| o1 = null; |
| // 37229 |
| f81632121_1852.returns.push(undefined); |
| // 37232 |
| f81632121_14.returns.push(undefined); |
| // 37233 |
| f81632121_12.returns.push(178); |
| // 37236 |
| o1 = {}; |
| // 37239 |
| o1.srcElement = o8; |
| // 37241 |
| o1.target = o8; |
| // 37248 |
| f81632121_506.returns.push(null); |
| // 37254 |
| f81632121_506.returns.push(null); |
| // 37260 |
| f81632121_506.returns.push(null); |
| // 37266 |
| f81632121_506.returns.push(null); |
| // 37272 |
| f81632121_506.returns.push(null); |
| // 37278 |
| f81632121_506.returns.push(null); |
| // 37284 |
| f81632121_506.returns.push(null); |
| // 37290 |
| f81632121_506.returns.push(null); |
| // 37296 |
| f81632121_506.returns.push(null); |
| // 37302 |
| f81632121_506.returns.push(null); |
| // 37308 |
| f81632121_506.returns.push(null); |
| // 37314 |
| f81632121_506.returns.push(null); |
| // 37320 |
| f81632121_506.returns.push(null); |
| // 37326 |
| f81632121_506.returns.push(null); |
| // 37332 |
| f81632121_506.returns.push(null); |
| // 37338 |
| f81632121_506.returns.push(null); |
| // 37344 |
| f81632121_506.returns.push(null); |
| // 37350 |
| f81632121_506.returns.push(null); |
| // 37356 |
| f81632121_506.returns.push(null); |
| // 37362 |
| f81632121_506.returns.push(null); |
| // 37368 |
| f81632121_506.returns.push(null); |
| // 37374 |
| f81632121_506.returns.push(null); |
| // 37380 |
| f81632121_506.returns.push(null); |
| // 37386 |
| f81632121_506.returns.push(null); |
| // 37391 |
| o1.relatedTarget = o21; |
| // 37396 |
| f81632121_506.returns.push(null); |
| // 37402 |
| f81632121_506.returns.push(null); |
| // 37408 |
| f81632121_506.returns.push(null); |
| // 37414 |
| f81632121_506.returns.push(null); |
| // 37420 |
| f81632121_506.returns.push(null); |
| // 37426 |
| f81632121_506.returns.push(null); |
| // 37432 |
| f81632121_506.returns.push(null); |
| // 37438 |
| f81632121_506.returns.push(null); |
| // 37444 |
| f81632121_506.returns.push(null); |
| // 37450 |
| f81632121_506.returns.push(null); |
| // 37456 |
| f81632121_506.returns.push(null); |
| // 37462 |
| f81632121_506.returns.push(null); |
| // 37468 |
| f81632121_506.returns.push(null); |
| // 37474 |
| f81632121_506.returns.push(null); |
| // 37480 |
| f81632121_506.returns.push(null); |
| // 37486 |
| f81632121_506.returns.push(null); |
| // 37492 |
| f81632121_506.returns.push(null); |
| // 37498 |
| f81632121_506.returns.push(null); |
| // 37504 |
| f81632121_506.returns.push(null); |
| // 37510 |
| f81632121_506.returns.push(null); |
| // 37516 |
| f81632121_506.returns.push(null); |
| // 37521 |
| o1.cancelBubble = false; |
| // 37522 |
| o1.returnValue = true; |
| // undefined |
| o1 = null; |
| // 37523 |
| o1 = {}; |
| // 37526 |
| o1.cancelBubble = false; |
| // 37529 |
| f81632121_467.returns.push(1374851259162); |
| // 37532 |
| f81632121_1007.returns.push(undefined); |
| // 37534 |
| o1.returnValue = true; |
| // 37537 |
| o1.srcElement = o21; |
| // 37539 |
| o1.target = o21; |
| // 37546 |
| f81632121_506.returns.push(null); |
| // 37552 |
| f81632121_506.returns.push(null); |
| // 37558 |
| f81632121_506.returns.push(null); |
| // 37564 |
| f81632121_506.returns.push(null); |
| // 37570 |
| f81632121_506.returns.push(null); |
| // 37576 |
| f81632121_506.returns.push(null); |
| // 37582 |
| f81632121_506.returns.push(null); |
| // 37588 |
| f81632121_506.returns.push(null); |
| // 37594 |
| f81632121_506.returns.push(null); |
| // 37600 |
| f81632121_506.returns.push(null); |
| // 37606 |
| f81632121_506.returns.push(null); |
| // 37612 |
| f81632121_506.returns.push(null); |
| // 37618 |
| f81632121_506.returns.push(null); |
| // 37624 |
| f81632121_506.returns.push(null); |
| // 37630 |
| f81632121_506.returns.push(null); |
| // 37636 |
| f81632121_506.returns.push(null); |
| // 37642 |
| f81632121_506.returns.push(null); |
| // 37648 |
| f81632121_506.returns.push(null); |
| // 37654 |
| f81632121_506.returns.push(null); |
| // 37660 |
| f81632121_506.returns.push(null); |
| // 37666 |
| f81632121_506.returns.push(null); |
| // 37671 |
| o1.relatedTarget = o8; |
| // undefined |
| o1 = null; |
| // undefined |
| o8 = null; |
| // 37674 |
| o1 = {}; |
| // 37678 |
| f81632121_467.returns.push(1374851259167); |
| // 37679 |
| o1.cancelBubble = false; |
| // 37680 |
| o1.returnValue = true; |
| // 37683 |
| o1.srcElement = o21; |
| // 37685 |
| o1.target = o21; |
| // 37692 |
| f81632121_506.returns.push(null); |
| // 37698 |
| f81632121_506.returns.push(null); |
| // 37704 |
| f81632121_506.returns.push(null); |
| // 37710 |
| f81632121_506.returns.push(null); |
| // 37716 |
| f81632121_506.returns.push(null); |
| // 37722 |
| f81632121_506.returns.push(null); |
| // 37728 |
| f81632121_506.returns.push(null); |
| // 37734 |
| f81632121_506.returns.push(null); |
| // 37740 |
| f81632121_506.returns.push(null); |
| // 37746 |
| f81632121_506.returns.push(null); |
| // 37752 |
| f81632121_506.returns.push(null); |
| // 37758 |
| f81632121_506.returns.push(null); |
| // 37764 |
| f81632121_506.returns.push(null); |
| // 37770 |
| f81632121_506.returns.push(null); |
| // 37776 |
| f81632121_506.returns.push(null); |
| // 37782 |
| f81632121_506.returns.push(null); |
| // 37788 |
| f81632121_506.returns.push(null); |
| // 37794 |
| f81632121_506.returns.push(null); |
| // 37800 |
| f81632121_506.returns.push(null); |
| // 37806 |
| f81632121_506.returns.push(null); |
| // 37812 |
| f81632121_506.returns.push(null); |
| // 37817 |
| o1.JSBNG__screenX = 637; |
| // 37818 |
| o1.JSBNG__screenY = 371; |
| // 37819 |
| o1.altKey = false; |
| // 37820 |
| o1.bubbles = true; |
| // 37821 |
| o1.button = 0; |
| // 37822 |
| o1.buttons = void 0; |
| // 37823 |
| o1.cancelable = false; |
| // 37824 |
| o1.clientX = 569; |
| // 37825 |
| o1.clientY = 206; |
| // 37826 |
| o1.ctrlKey = false; |
| // 37827 |
| o1.currentTarget = o0; |
| // 37828 |
| o1.defaultPrevented = false; |
| // 37829 |
| o1.detail = 0; |
| // 37830 |
| o1.eventPhase = 3; |
| // 37831 |
| o1.isTrusted = void 0; |
| // 37832 |
| o1.metaKey = false; |
| // 37833 |
| o1.pageX = 569; |
| // 37834 |
| o1.pageY = 592; |
| // 37835 |
| o1.relatedTarget = null; |
| // 37836 |
| o1.fromElement = null; |
| // 37839 |
| o1.shiftKey = false; |
| // 37842 |
| o1.timeStamp = 1374851259167; |
| // 37843 |
| o1.type = "mousemove"; |
| // 37844 |
| o1.view = ow81632121; |
| // undefined |
| o1 = null; |
| // 37853 |
| f81632121_1852.returns.push(undefined); |
| // 37856 |
| f81632121_14.returns.push(undefined); |
| // 37857 |
| f81632121_12.returns.push(179); |
| // 37862 |
| o1 = {}; |
| // 37863 |
| f81632121_70.returns.push(o1); |
| // 37864 |
| // 37865 |
| o1.open = f81632121_1294; |
| // 37866 |
| f81632121_1294.returns.push(undefined); |
| // 37867 |
| o1.setRequestHeader = f81632121_1295; |
| // 37868 |
| f81632121_1295.returns.push(undefined); |
| // 37870 |
| o1.send = f81632121_1296; |
| // 37871 |
| f81632121_1296.returns.push(undefined); |
| // 37872 |
| o8 = {}; |
| // 37873 |
| o24 = {}; |
| // 37875 |
| o8.transport = o1; |
| // 37876 |
| o1.readyState = 1; |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 37880 |
| f81632121_467.returns.push(1374851259183); |
| // 37881 |
| o26 = {}; |
| // 37884 |
| o26.srcElement = o21; |
| // 37886 |
| o26.target = o21; |
| // 37893 |
| f81632121_506.returns.push(null); |
| // 37899 |
| f81632121_506.returns.push(null); |
| // 37905 |
| f81632121_506.returns.push(null); |
| // 37911 |
| f81632121_506.returns.push(null); |
| // 37917 |
| f81632121_506.returns.push(null); |
| // 37923 |
| f81632121_506.returns.push(null); |
| // 37929 |
| f81632121_506.returns.push(null); |
| // 37935 |
| f81632121_506.returns.push(null); |
| // 37941 |
| f81632121_506.returns.push(null); |
| // 37947 |
| f81632121_506.returns.push(null); |
| // 37953 |
| f81632121_506.returns.push(null); |
| // 37959 |
| f81632121_506.returns.push(null); |
| // 37965 |
| f81632121_506.returns.push(null); |
| // 37971 |
| f81632121_506.returns.push(null); |
| // 37977 |
| f81632121_506.returns.push(null); |
| // 37983 |
| f81632121_506.returns.push(null); |
| // 37989 |
| f81632121_506.returns.push(null); |
| // 37995 |
| f81632121_506.returns.push(null); |
| // 38001 |
| f81632121_506.returns.push(null); |
| // 38007 |
| f81632121_506.returns.push(null); |
| // 38013 |
| f81632121_506.returns.push(null); |
| // 38018 |
| o29 = {}; |
| // 38019 |
| o26.relatedTarget = o29; |
| // 38020 |
| o31 = {}; |
| // 38021 |
| o29.parentNode = o31; |
| // 38022 |
| o29.nodeType = 1; |
| // 38023 |
| o29.getAttribute = f81632121_506; |
| // 38025 |
| f81632121_506.returns.push(null); |
| // 38027 |
| o32 = {}; |
| // 38028 |
| o31.parentNode = o32; |
| // 38029 |
| o31.nodeType = 1; |
| // 38030 |
| o31.getAttribute = f81632121_506; |
| // undefined |
| o31 = null; |
| // 38032 |
| f81632121_506.returns.push(null); |
| // 38034 |
| o32.parentNode = o21; |
| // 38035 |
| o32.nodeType = 1; |
| // 38036 |
| o32.getAttribute = f81632121_506; |
| // undefined |
| o32 = null; |
| // 38038 |
| f81632121_506.returns.push(null); |
| // 38044 |
| f81632121_506.returns.push(null); |
| // 38050 |
| f81632121_506.returns.push(null); |
| // 38056 |
| f81632121_506.returns.push(null); |
| // 38062 |
| f81632121_506.returns.push(null); |
| // 38068 |
| f81632121_506.returns.push(null); |
| // 38074 |
| f81632121_506.returns.push(null); |
| // 38080 |
| f81632121_506.returns.push(null); |
| // 38086 |
| f81632121_506.returns.push(null); |
| // 38092 |
| f81632121_506.returns.push(null); |
| // 38098 |
| f81632121_506.returns.push(null); |
| // 38104 |
| f81632121_506.returns.push(null); |
| // 38110 |
| f81632121_506.returns.push(null); |
| // 38116 |
| f81632121_506.returns.push(null); |
| // 38122 |
| f81632121_506.returns.push(null); |
| // 38128 |
| f81632121_506.returns.push(null); |
| // 38134 |
| f81632121_506.returns.push(null); |
| // 38140 |
| f81632121_506.returns.push(null); |
| // 38146 |
| f81632121_506.returns.push(null); |
| // 38152 |
| f81632121_506.returns.push(null); |
| // 38158 |
| f81632121_506.returns.push(null); |
| // 38164 |
| f81632121_506.returns.push(null); |
| // 38169 |
| o26.cancelBubble = false; |
| // 38170 |
| o26.returnValue = true; |
| // undefined |
| o26 = null; |
| // 38171 |
| o26 = {}; |
| // 38174 |
| o26.cancelBubble = false; |
| // 38177 |
| f81632121_467.returns.push(1374851259202); |
| // 38180 |
| f81632121_1007.returns.push(undefined); |
| // 38182 |
| o26.returnValue = true; |
| // 38185 |
| o26.srcElement = o29; |
| // 38187 |
| o26.target = o29; |
| // 38194 |
| f81632121_506.returns.push(null); |
| // 38200 |
| f81632121_506.returns.push(null); |
| // 38206 |
| f81632121_506.returns.push(null); |
| // 38212 |
| f81632121_506.returns.push(null); |
| // 38218 |
| f81632121_506.returns.push(null); |
| // 38224 |
| f81632121_506.returns.push(null); |
| // 38230 |
| f81632121_506.returns.push(null); |
| // 38236 |
| f81632121_506.returns.push(null); |
| // 38242 |
| f81632121_506.returns.push(null); |
| // 38248 |
| f81632121_506.returns.push(null); |
| // 38254 |
| f81632121_506.returns.push(null); |
| // 38260 |
| f81632121_506.returns.push(null); |
| // 38266 |
| f81632121_506.returns.push(null); |
| // 38272 |
| f81632121_506.returns.push(null); |
| // 38278 |
| f81632121_506.returns.push(null); |
| // 38284 |
| f81632121_506.returns.push(null); |
| // 38290 |
| f81632121_506.returns.push(null); |
| // 38296 |
| f81632121_506.returns.push(null); |
| // 38302 |
| f81632121_506.returns.push(null); |
| // 38308 |
| f81632121_506.returns.push(null); |
| // 38314 |
| f81632121_506.returns.push(null); |
| // 38320 |
| f81632121_506.returns.push(null); |
| // 38326 |
| f81632121_506.returns.push(null); |
| // 38332 |
| f81632121_506.returns.push(null); |
| // 38337 |
| o26.relatedTarget = o21; |
| // undefined |
| o26 = null; |
| // 38340 |
| o26 = {}; |
| // 38344 |
| f81632121_467.returns.push(1374851259216); |
| // 38345 |
| o26.cancelBubble = false; |
| // 38346 |
| o26.returnValue = true; |
| // 38349 |
| o26.srcElement = o29; |
| // 38351 |
| o26.target = o29; |
| // 38358 |
| f81632121_506.returns.push(null); |
| // 38364 |
| f81632121_506.returns.push(null); |
| // 38370 |
| f81632121_506.returns.push(null); |
| // 38376 |
| f81632121_506.returns.push(null); |
| // 38382 |
| f81632121_506.returns.push(null); |
| // 38388 |
| f81632121_506.returns.push(null); |
| // 38394 |
| f81632121_506.returns.push(null); |
| // 38400 |
| f81632121_506.returns.push(null); |
| // 38406 |
| f81632121_506.returns.push(null); |
| // 38412 |
| f81632121_506.returns.push(null); |
| // 38418 |
| f81632121_506.returns.push(null); |
| // 38424 |
| f81632121_506.returns.push(null); |
| // 38430 |
| f81632121_506.returns.push(null); |
| // 38436 |
| f81632121_506.returns.push(null); |
| // 38442 |
| f81632121_506.returns.push(null); |
| // 38448 |
| f81632121_506.returns.push(null); |
| // 38454 |
| f81632121_506.returns.push(null); |
| // 38460 |
| f81632121_506.returns.push(null); |
| // 38466 |
| f81632121_506.returns.push(null); |
| // 38472 |
| f81632121_506.returns.push(null); |
| // 38478 |
| f81632121_506.returns.push(null); |
| // 38484 |
| f81632121_506.returns.push(null); |
| // 38490 |
| f81632121_506.returns.push(null); |
| // 38496 |
| f81632121_506.returns.push(null); |
| // 38501 |
| o26.JSBNG__screenX = 686; |
| // 38502 |
| o26.JSBNG__screenY = 391; |
| // 38503 |
| o26.altKey = false; |
| // 38504 |
| o26.bubbles = true; |
| // 38505 |
| o26.button = 0; |
| // 38506 |
| o26.buttons = void 0; |
| // 38507 |
| o26.cancelable = false; |
| // 38508 |
| o26.clientX = 618; |
| // 38509 |
| o26.clientY = 226; |
| // 38510 |
| o26.ctrlKey = false; |
| // 38511 |
| o26.currentTarget = o0; |
| // 38512 |
| o26.defaultPrevented = false; |
| // 38513 |
| o26.detail = 0; |
| // 38514 |
| o26.eventPhase = 3; |
| // 38515 |
| o26.isTrusted = void 0; |
| // 38516 |
| o26.metaKey = false; |
| // 38517 |
| o26.pageX = 618; |
| // 38518 |
| o26.pageY = 612; |
| // 38519 |
| o26.relatedTarget = null; |
| // 38520 |
| o26.fromElement = null; |
| // 38523 |
| o26.shiftKey = false; |
| // 38526 |
| o26.timeStamp = 1374851259216; |
| // 38527 |
| o26.type = "mousemove"; |
| // 38528 |
| o26.view = ow81632121; |
| // undefined |
| o26 = null; |
| // 38537 |
| f81632121_1852.returns.push(undefined); |
| // 38540 |
| f81632121_14.returns.push(undefined); |
| // 38541 |
| f81632121_12.returns.push(180); |
| // 38544 |
| o26 = {}; |
| // 38547 |
| o26.srcElement = o29; |
| // 38549 |
| o26.target = o29; |
| // 38556 |
| f81632121_506.returns.push(null); |
| // 38562 |
| f81632121_506.returns.push(null); |
| // 38568 |
| f81632121_506.returns.push(null); |
| // 38574 |
| f81632121_506.returns.push(null); |
| // 38580 |
| f81632121_506.returns.push(null); |
| // 38586 |
| f81632121_506.returns.push(null); |
| // 38592 |
| f81632121_506.returns.push(null); |
| // 38598 |
| f81632121_506.returns.push(null); |
| // 38604 |
| f81632121_506.returns.push(null); |
| // 38610 |
| f81632121_506.returns.push(null); |
| // 38616 |
| f81632121_506.returns.push(null); |
| // 38622 |
| f81632121_506.returns.push(null); |
| // 38628 |
| f81632121_506.returns.push(null); |
| // 38634 |
| f81632121_506.returns.push(null); |
| // 38640 |
| f81632121_506.returns.push(null); |
| // 38646 |
| f81632121_506.returns.push(null); |
| // 38652 |
| f81632121_506.returns.push(null); |
| // 38658 |
| f81632121_506.returns.push(null); |
| // 38664 |
| f81632121_506.returns.push(null); |
| // 38670 |
| f81632121_506.returns.push(null); |
| // 38676 |
| f81632121_506.returns.push(null); |
| // 38682 |
| f81632121_506.returns.push(null); |
| // 38688 |
| f81632121_506.returns.push(null); |
| // 38694 |
| f81632121_506.returns.push(null); |
| // 38699 |
| o26.relatedTarget = o21; |
| // 38704 |
| f81632121_506.returns.push(null); |
| // 38710 |
| f81632121_506.returns.push(null); |
| // 38716 |
| f81632121_506.returns.push(null); |
| // 38722 |
| f81632121_506.returns.push(null); |
| // 38728 |
| f81632121_506.returns.push(null); |
| // 38734 |
| f81632121_506.returns.push(null); |
| // 38740 |
| f81632121_506.returns.push(null); |
| // 38746 |
| f81632121_506.returns.push(null); |
| // 38752 |
| f81632121_506.returns.push(null); |
| // 38758 |
| f81632121_506.returns.push(null); |
| // 38764 |
| f81632121_506.returns.push(null); |
| // 38770 |
| f81632121_506.returns.push(null); |
| // 38776 |
| f81632121_506.returns.push(null); |
| // 38782 |
| f81632121_506.returns.push(null); |
| // 38788 |
| f81632121_506.returns.push(null); |
| // 38794 |
| f81632121_506.returns.push(null); |
| // 38800 |
| f81632121_506.returns.push(null); |
| // 38806 |
| f81632121_506.returns.push(null); |
| // 38812 |
| f81632121_506.returns.push(null); |
| // 38818 |
| f81632121_506.returns.push(null); |
| // 38824 |
| f81632121_506.returns.push(null); |
| // 38829 |
| o26.cancelBubble = false; |
| // 38830 |
| o26.returnValue = true; |
| // undefined |
| o26 = null; |
| // 38831 |
| o26 = {}; |
| // 38834 |
| o26.cancelBubble = false; |
| // 38837 |
| f81632121_467.returns.push(1374851259245); |
| // 38840 |
| f81632121_1007.returns.push(undefined); |
| // 38842 |
| o26.returnValue = true; |
| // 38845 |
| o26.srcElement = o21; |
| // 38847 |
| o26.target = o21; |
| // 38854 |
| f81632121_506.returns.push(null); |
| // 38860 |
| f81632121_506.returns.push(null); |
| // 38866 |
| f81632121_506.returns.push(null); |
| // 38872 |
| f81632121_506.returns.push(null); |
| // 38878 |
| f81632121_506.returns.push(null); |
| // 38884 |
| f81632121_506.returns.push(null); |
| // 38890 |
| f81632121_506.returns.push(null); |
| // 38896 |
| f81632121_506.returns.push(null); |
| // 38902 |
| f81632121_506.returns.push(null); |
| // 38908 |
| f81632121_506.returns.push(null); |
| // 38914 |
| f81632121_506.returns.push(null); |
| // 38920 |
| f81632121_506.returns.push(null); |
| // 38926 |
| f81632121_506.returns.push(null); |
| // 38932 |
| f81632121_506.returns.push(null); |
| // 38938 |
| f81632121_506.returns.push(null); |
| // 38944 |
| f81632121_506.returns.push(null); |
| // 38950 |
| f81632121_506.returns.push(null); |
| // 38956 |
| f81632121_506.returns.push(null); |
| // 38962 |
| f81632121_506.returns.push(null); |
| // 38968 |
| f81632121_506.returns.push(null); |
| // 38974 |
| f81632121_506.returns.push(null); |
| // 38979 |
| o26.relatedTarget = o29; |
| // undefined |
| o26 = null; |
| // 38982 |
| o26 = {}; |
| // 38986 |
| f81632121_467.returns.push(1374851259255); |
| // 38987 |
| o26.cancelBubble = false; |
| // 38988 |
| o26.returnValue = true; |
| // 38991 |
| o26.srcElement = o21; |
| // 38993 |
| o26.target = o21; |
| // 39000 |
| f81632121_506.returns.push(null); |
| // 39006 |
| f81632121_506.returns.push(null); |
| // 39012 |
| f81632121_506.returns.push(null); |
| // 39018 |
| f81632121_506.returns.push(null); |
| // 39024 |
| f81632121_506.returns.push(null); |
| // 39030 |
| f81632121_506.returns.push(null); |
| // 39036 |
| f81632121_506.returns.push(null); |
| // 39042 |
| f81632121_506.returns.push(null); |
| // 39048 |
| f81632121_506.returns.push(null); |
| // 39054 |
| f81632121_506.returns.push(null); |
| // 39060 |
| f81632121_506.returns.push(null); |
| // 39066 |
| f81632121_506.returns.push(null); |
| // 39072 |
| f81632121_506.returns.push(null); |
| // 39078 |
| f81632121_506.returns.push(null); |
| // 39084 |
| f81632121_506.returns.push(null); |
| // 39090 |
| f81632121_506.returns.push(null); |
| // 39096 |
| f81632121_506.returns.push(null); |
| // 39102 |
| f81632121_506.returns.push(null); |
| // 39108 |
| f81632121_506.returns.push(null); |
| // 39114 |
| f81632121_506.returns.push(null); |
| // 39120 |
| f81632121_506.returns.push(null); |
| // 39125 |
| o26.JSBNG__screenX = 709; |
| // 39126 |
| o26.JSBNG__screenY = 404; |
| // 39127 |
| o26.altKey = false; |
| // 39128 |
| o26.bubbles = true; |
| // 39129 |
| o26.button = 0; |
| // 39130 |
| o26.buttons = void 0; |
| // 39131 |
| o26.cancelable = false; |
| // 39132 |
| o26.clientX = 641; |
| // 39133 |
| o26.clientY = 239; |
| // 39134 |
| o26.ctrlKey = false; |
| // 39135 |
| o26.currentTarget = o0; |
| // 39136 |
| o26.defaultPrevented = false; |
| // 39137 |
| o26.detail = 0; |
| // 39138 |
| o26.eventPhase = 3; |
| // 39139 |
| o26.isTrusted = void 0; |
| // 39140 |
| o26.metaKey = false; |
| // 39141 |
| o26.pageX = 641; |
| // 39142 |
| o26.pageY = 625; |
| // 39143 |
| o26.relatedTarget = null; |
| // 39144 |
| o26.fromElement = null; |
| // 39147 |
| o26.shiftKey = false; |
| // 39150 |
| o26.timeStamp = 1374851259255; |
| // 39151 |
| o26.type = "mousemove"; |
| // 39152 |
| o26.view = ow81632121; |
| // undefined |
| o26 = null; |
| // 39161 |
| f81632121_1852.returns.push(undefined); |
| // 39164 |
| f81632121_14.returns.push(undefined); |
| // 39165 |
| f81632121_12.returns.push(181); |
| // 39168 |
| o26 = {}; |
| // 39172 |
| f81632121_467.returns.push(1374851259276); |
| // 39173 |
| o26.cancelBubble = false; |
| // 39174 |
| o26.returnValue = true; |
| // 39177 |
| o26.srcElement = o21; |
| // 39179 |
| o26.target = o21; |
| // 39186 |
| f81632121_506.returns.push(null); |
| // 39192 |
| f81632121_506.returns.push(null); |
| // 39198 |
| f81632121_506.returns.push(null); |
| // 39204 |
| f81632121_506.returns.push(null); |
| // 39210 |
| f81632121_506.returns.push(null); |
| // 39216 |
| f81632121_506.returns.push(null); |
| // 39222 |
| f81632121_506.returns.push(null); |
| // 39228 |
| f81632121_506.returns.push(null); |
| // 39234 |
| f81632121_506.returns.push(null); |
| // 39240 |
| f81632121_506.returns.push(null); |
| // 39246 |
| f81632121_506.returns.push(null); |
| // 39252 |
| f81632121_506.returns.push(null); |
| // 39258 |
| f81632121_506.returns.push(null); |
| // 39264 |
| f81632121_506.returns.push(null); |
| // 39270 |
| f81632121_506.returns.push(null); |
| // 39276 |
| f81632121_506.returns.push(null); |
| // 39282 |
| f81632121_506.returns.push(null); |
| // 39288 |
| f81632121_506.returns.push(null); |
| // 39294 |
| f81632121_506.returns.push(null); |
| // 39300 |
| f81632121_506.returns.push(null); |
| // 39306 |
| f81632121_506.returns.push(null); |
| // 39311 |
| o26.JSBNG__screenX = 717; |
| // 39312 |
| o26.JSBNG__screenY = 404; |
| // 39313 |
| o26.altKey = false; |
| // 39314 |
| o26.bubbles = true; |
| // 39315 |
| o26.button = 0; |
| // 39316 |
| o26.buttons = void 0; |
| // 39317 |
| o26.cancelable = false; |
| // 39318 |
| o26.clientX = 649; |
| // 39319 |
| o26.clientY = 239; |
| // 39320 |
| o26.ctrlKey = false; |
| // 39321 |
| o26.currentTarget = o0; |
| // 39322 |
| o26.defaultPrevented = false; |
| // 39323 |
| o26.detail = 0; |
| // 39324 |
| o26.eventPhase = 3; |
| // 39325 |
| o26.isTrusted = void 0; |
| // 39326 |
| o26.metaKey = false; |
| // 39327 |
| o26.pageX = 649; |
| // 39328 |
| o26.pageY = 625; |
| // 39329 |
| o26.relatedTarget = null; |
| // 39330 |
| o26.fromElement = null; |
| // 39333 |
| o26.shiftKey = false; |
| // 39336 |
| o26.timeStamp = 1374851259276; |
| // 39337 |
| o26.type = "mousemove"; |
| // 39338 |
| o26.view = ow81632121; |
| // undefined |
| o26 = null; |
| // 39347 |
| f81632121_1852.returns.push(undefined); |
| // 39350 |
| f81632121_14.returns.push(undefined); |
| // 39351 |
| f81632121_12.returns.push(182); |
| // 39354 |
| o26 = {}; |
| // 39358 |
| f81632121_467.returns.push(1374851259282); |
| // 39359 |
| o26.cancelBubble = false; |
| // 39360 |
| o26.returnValue = true; |
| // 39363 |
| o26.srcElement = o21; |
| // 39365 |
| o26.target = o21; |
| // 39372 |
| f81632121_506.returns.push(null); |
| // 39378 |
| f81632121_506.returns.push(null); |
| // 39384 |
| f81632121_506.returns.push(null); |
| // 39390 |
| f81632121_506.returns.push(null); |
| // 39396 |
| f81632121_506.returns.push(null); |
| // 39402 |
| f81632121_506.returns.push(null); |
| // 39408 |
| f81632121_506.returns.push(null); |
| // 39414 |
| f81632121_506.returns.push(null); |
| // 39420 |
| f81632121_506.returns.push(null); |
| // 39426 |
| f81632121_506.returns.push(null); |
| // 39432 |
| f81632121_506.returns.push(null); |
| // 39438 |
| f81632121_506.returns.push(null); |
| // 39444 |
| f81632121_506.returns.push(null); |
| // 39450 |
| f81632121_506.returns.push(null); |
| // 39456 |
| f81632121_506.returns.push(null); |
| // 39462 |
| f81632121_506.returns.push(null); |
| // 39468 |
| f81632121_506.returns.push(null); |
| // 39474 |
| f81632121_506.returns.push(null); |
| // 39480 |
| f81632121_506.returns.push(null); |
| // 39486 |
| f81632121_506.returns.push(null); |
| // 39492 |
| f81632121_506.returns.push(null); |
| // 39497 |
| o26.JSBNG__screenX = 718; |
| // 39498 |
| o26.JSBNG__screenY = 404; |
| // 39499 |
| o26.altKey = false; |
| // 39500 |
| o26.bubbles = true; |
| // 39501 |
| o26.button = 0; |
| // 39502 |
| o26.buttons = void 0; |
| // 39503 |
| o26.cancelable = false; |
| // 39504 |
| o26.clientX = 650; |
| // 39505 |
| o26.clientY = 239; |
| // 39506 |
| o26.ctrlKey = false; |
| // 39507 |
| o26.currentTarget = o0; |
| // 39508 |
| o26.defaultPrevented = false; |
| // 39509 |
| o26.detail = 0; |
| // 39510 |
| o26.eventPhase = 3; |
| // 39511 |
| o26.isTrusted = void 0; |
| // 39512 |
| o26.metaKey = false; |
| // 39513 |
| o26.pageX = 650; |
| // 39514 |
| o26.pageY = 625; |
| // 39515 |
| o26.relatedTarget = null; |
| // 39516 |
| o26.fromElement = null; |
| // 39519 |
| o26.shiftKey = false; |
| // 39522 |
| o26.timeStamp = 1374851259282; |
| // 39523 |
| o26.type = "mousemove"; |
| // 39524 |
| o26.view = ow81632121; |
| // undefined |
| o26 = null; |
| // 39533 |
| f81632121_1852.returns.push(undefined); |
| // 39536 |
| f81632121_14.returns.push(undefined); |
| // 39537 |
| f81632121_12.returns.push(183); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096; wd=1034x727"); |
| // 39541 |
| o26 = {}; |
| // 39545 |
| f81632121_467.returns.push(1374851259307); |
| // 39546 |
| o26.cancelBubble = false; |
| // 39547 |
| o26.returnValue = true; |
| // 39550 |
| o26.srcElement = o21; |
| // 39552 |
| o26.target = o21; |
| // 39559 |
| f81632121_506.returns.push(null); |
| // 39565 |
| f81632121_506.returns.push(null); |
| // 39571 |
| f81632121_506.returns.push(null); |
| // 39577 |
| f81632121_506.returns.push(null); |
| // 39583 |
| f81632121_506.returns.push(null); |
| // 39589 |
| f81632121_506.returns.push(null); |
| // 39595 |
| f81632121_506.returns.push(null); |
| // 39601 |
| f81632121_506.returns.push(null); |
| // 39607 |
| f81632121_506.returns.push(null); |
| // 39613 |
| f81632121_506.returns.push(null); |
| // 39619 |
| f81632121_506.returns.push(null); |
| // 39625 |
| f81632121_506.returns.push(null); |
| // 39631 |
| f81632121_506.returns.push(null); |
| // 39637 |
| f81632121_506.returns.push(null); |
| // 39643 |
| f81632121_506.returns.push(null); |
| // 39649 |
| f81632121_506.returns.push(null); |
| // 39655 |
| f81632121_506.returns.push(null); |
| // 39661 |
| f81632121_506.returns.push(null); |
| // 39667 |
| f81632121_506.returns.push(null); |
| // 39673 |
| f81632121_506.returns.push(null); |
| // 39679 |
| f81632121_506.returns.push(null); |
| // 39684 |
| o26.JSBNG__screenX = 719; |
| // 39685 |
| o26.JSBNG__screenY = 404; |
| // 39686 |
| o26.altKey = false; |
| // 39687 |
| o26.bubbles = true; |
| // 39688 |
| o26.button = 0; |
| // 39689 |
| o26.buttons = void 0; |
| // 39690 |
| o26.cancelable = false; |
| // 39691 |
| o26.clientX = 651; |
| // 39692 |
| o26.clientY = 239; |
| // 39693 |
| o26.ctrlKey = false; |
| // 39694 |
| o26.currentTarget = o0; |
| // 39695 |
| o26.defaultPrevented = false; |
| // 39696 |
| o26.detail = 0; |
| // 39697 |
| o26.eventPhase = 3; |
| // 39698 |
| o26.isTrusted = void 0; |
| // 39699 |
| o26.metaKey = false; |
| // 39700 |
| o26.pageX = 651; |
| // 39701 |
| o26.pageY = 625; |
| // 39702 |
| o26.relatedTarget = null; |
| // 39703 |
| o26.fromElement = null; |
| // 39706 |
| o26.shiftKey = false; |
| // 39709 |
| o26.timeStamp = 1374851259306; |
| // 39710 |
| o26.type = "mousemove"; |
| // 39711 |
| o26.view = ow81632121; |
| // undefined |
| o26 = null; |
| // 39720 |
| f81632121_1852.returns.push(undefined); |
| // 39723 |
| f81632121_14.returns.push(undefined); |
| // 39724 |
| f81632121_12.returns.push(184); |
| // 39727 |
| o26 = {}; |
| // 39731 |
| f81632121_467.returns.push(1374851259321); |
| // 39732 |
| o26.cancelBubble = false; |
| // 39733 |
| o26.returnValue = true; |
| // 39736 |
| o26.srcElement = o21; |
| // 39738 |
| o26.target = o21; |
| // 39745 |
| f81632121_506.returns.push(null); |
| // 39751 |
| f81632121_506.returns.push(null); |
| // 39757 |
| f81632121_506.returns.push(null); |
| // 39763 |
| f81632121_506.returns.push(null); |
| // 39769 |
| f81632121_506.returns.push(null); |
| // 39775 |
| f81632121_506.returns.push(null); |
| // 39781 |
| f81632121_506.returns.push(null); |
| // 39787 |
| f81632121_506.returns.push(null); |
| // 39793 |
| f81632121_506.returns.push(null); |
| // 39799 |
| f81632121_506.returns.push(null); |
| // 39805 |
| f81632121_506.returns.push(null); |
| // 39811 |
| f81632121_506.returns.push(null); |
| // 39817 |
| f81632121_506.returns.push(null); |
| // 39823 |
| f81632121_506.returns.push(null); |
| // 39829 |
| f81632121_506.returns.push(null); |
| // 39835 |
| f81632121_506.returns.push(null); |
| // 39841 |
| f81632121_506.returns.push(null); |
| // 39847 |
| f81632121_506.returns.push(null); |
| // 39853 |
| f81632121_506.returns.push(null); |
| // 39859 |
| f81632121_506.returns.push(null); |
| // 39865 |
| f81632121_506.returns.push(null); |
| // 39870 |
| o26.JSBNG__screenX = 719; |
| // 39871 |
| o26.JSBNG__screenY = 403; |
| // 39872 |
| o26.altKey = false; |
| // 39873 |
| o26.bubbles = true; |
| // 39874 |
| o26.button = 0; |
| // 39875 |
| o26.buttons = void 0; |
| // 39876 |
| o26.cancelable = false; |
| // 39877 |
| o26.clientX = 651; |
| // 39878 |
| o26.clientY = 238; |
| // 39879 |
| o26.ctrlKey = false; |
| // 39880 |
| o26.currentTarget = o0; |
| // 39881 |
| o26.defaultPrevented = false; |
| // 39882 |
| o26.detail = 0; |
| // 39883 |
| o26.eventPhase = 3; |
| // 39884 |
| o26.isTrusted = void 0; |
| // 39885 |
| o26.metaKey = false; |
| // 39886 |
| o26.pageX = 651; |
| // 39887 |
| o26.pageY = 624; |
| // 39888 |
| o26.relatedTarget = null; |
| // 39889 |
| o26.fromElement = null; |
| // 39892 |
| o26.shiftKey = false; |
| // 39895 |
| o26.timeStamp = 1374851259321; |
| // 39896 |
| o26.type = "mousemove"; |
| // 39897 |
| o26.view = ow81632121; |
| // undefined |
| o26 = null; |
| // 39906 |
| f81632121_1852.returns.push(undefined); |
| // 39909 |
| f81632121_14.returns.push(undefined); |
| // 39910 |
| f81632121_12.returns.push(185); |
| // 39913 |
| o26 = {}; |
| // 39917 |
| f81632121_467.returns.push(1374851259379); |
| // 39918 |
| o26.cancelBubble = false; |
| // 39919 |
| o26.returnValue = true; |
| // 39922 |
| o26.srcElement = o21; |
| // 39924 |
| o26.target = o21; |
| // 39931 |
| f81632121_506.returns.push(null); |
| // 39937 |
| f81632121_506.returns.push(null); |
| // 39943 |
| f81632121_506.returns.push(null); |
| // 39949 |
| f81632121_506.returns.push(null); |
| // 39955 |
| f81632121_506.returns.push(null); |
| // 39961 |
| f81632121_506.returns.push(null); |
| // 39967 |
| f81632121_506.returns.push(null); |
| // 39973 |
| f81632121_506.returns.push(null); |
| // 39979 |
| f81632121_506.returns.push(null); |
| // 39985 |
| f81632121_506.returns.push(null); |
| // 39991 |
| f81632121_506.returns.push(null); |
| // 39997 |
| f81632121_506.returns.push(null); |
| // 40003 |
| f81632121_506.returns.push(null); |
| // 40009 |
| f81632121_506.returns.push(null); |
| // 40015 |
| f81632121_506.returns.push(null); |
| // 40021 |
| f81632121_506.returns.push(null); |
| // 40027 |
| f81632121_506.returns.push(null); |
| // 40033 |
| f81632121_506.returns.push(null); |
| // 40039 |
| f81632121_506.returns.push(null); |
| // 40045 |
| f81632121_506.returns.push(null); |
| // 40051 |
| f81632121_506.returns.push(null); |
| // 40056 |
| o26.JSBNG__screenX = 718; |
| // 40057 |
| o26.JSBNG__screenY = 402; |
| // 40058 |
| o26.altKey = false; |
| // 40059 |
| o26.bubbles = true; |
| // 40060 |
| o26.button = 0; |
| // 40061 |
| o26.buttons = void 0; |
| // 40062 |
| o26.cancelable = false; |
| // 40063 |
| o26.clientX = 650; |
| // 40064 |
| o26.clientY = 237; |
| // 40065 |
| o26.ctrlKey = false; |
| // 40066 |
| o26.currentTarget = o0; |
| // 40067 |
| o26.defaultPrevented = false; |
| // 40068 |
| o26.detail = 0; |
| // 40069 |
| o26.eventPhase = 3; |
| // 40070 |
| o26.isTrusted = void 0; |
| // 40071 |
| o26.metaKey = false; |
| // 40072 |
| o26.pageX = 650; |
| // 40073 |
| o26.pageY = 623; |
| // 40074 |
| o26.relatedTarget = null; |
| // 40075 |
| o26.fromElement = null; |
| // 40078 |
| o26.shiftKey = false; |
| // 40081 |
| o26.timeStamp = 1374851259379; |
| // 40082 |
| o26.type = "mousemove"; |
| // 40083 |
| o26.view = ow81632121; |
| // undefined |
| o26 = null; |
| // 40092 |
| f81632121_1852.returns.push(undefined); |
| // 40095 |
| f81632121_14.returns.push(undefined); |
| // 40096 |
| f81632121_12.returns.push(186); |
| // 40099 |
| o26 = {}; |
| // 40103 |
| f81632121_467.returns.push(1374851259392); |
| // 40104 |
| o26.cancelBubble = false; |
| // 40105 |
| o26.returnValue = true; |
| // 40108 |
| o26.srcElement = o21; |
| // 40110 |
| o26.target = o21; |
| // 40117 |
| f81632121_506.returns.push(null); |
| // 40123 |
| f81632121_506.returns.push(null); |
| // 40129 |
| f81632121_506.returns.push(null); |
| // 40135 |
| f81632121_506.returns.push(null); |
| // 40141 |
| f81632121_506.returns.push(null); |
| // 40147 |
| f81632121_506.returns.push(null); |
| // 40153 |
| f81632121_506.returns.push(null); |
| // 40159 |
| f81632121_506.returns.push(null); |
| // 40165 |
| f81632121_506.returns.push(null); |
| // 40171 |
| f81632121_506.returns.push(null); |
| // 40177 |
| f81632121_506.returns.push(null); |
| // 40183 |
| f81632121_506.returns.push(null); |
| // 40189 |
| f81632121_506.returns.push(null); |
| // 40195 |
| f81632121_506.returns.push(null); |
| // 40201 |
| f81632121_506.returns.push(null); |
| // 40207 |
| f81632121_506.returns.push(null); |
| // 40213 |
| f81632121_506.returns.push(null); |
| // 40219 |
| f81632121_506.returns.push(null); |
| // 40225 |
| f81632121_506.returns.push(null); |
| // 40231 |
| f81632121_506.returns.push(null); |
| // 40237 |
| f81632121_506.returns.push(null); |
| // 40242 |
| o26.JSBNG__screenX = 717; |
| // 40243 |
| o26.JSBNG__screenY = 401; |
| // 40244 |
| o26.altKey = false; |
| // 40245 |
| o26.bubbles = true; |
| // 40246 |
| o26.button = 0; |
| // 40247 |
| o26.buttons = void 0; |
| // 40248 |
| o26.cancelable = false; |
| // 40249 |
| o26.clientX = 649; |
| // 40250 |
| o26.clientY = 236; |
| // 40251 |
| o26.ctrlKey = false; |
| // 40252 |
| o26.currentTarget = o0; |
| // 40253 |
| o26.defaultPrevented = false; |
| // 40254 |
| o26.detail = 0; |
| // 40255 |
| o26.eventPhase = 3; |
| // 40256 |
| o26.isTrusted = void 0; |
| // 40257 |
| o26.metaKey = false; |
| // 40258 |
| o26.pageX = 649; |
| // 40259 |
| o26.pageY = 622; |
| // 40260 |
| o26.relatedTarget = null; |
| // 40261 |
| o26.fromElement = null; |
| // 40264 |
| o26.shiftKey = false; |
| // 40267 |
| o26.timeStamp = 1374851259387; |
| // 40268 |
| o26.type = "mousemove"; |
| // 40269 |
| o26.view = ow81632121; |
| // undefined |
| o26 = null; |
| // 40278 |
| f81632121_1852.returns.push(undefined); |
| // 40281 |
| f81632121_14.returns.push(undefined); |
| // 40282 |
| f81632121_12.returns.push(187); |
| // 40285 |
| o26 = {}; |
| // 40289 |
| f81632121_467.returns.push(1374851259400); |
| // 40290 |
| o26.cancelBubble = false; |
| // 40291 |
| o26.returnValue = true; |
| // 40294 |
| o26.srcElement = o21; |
| // 40296 |
| o26.target = o21; |
| // 40303 |
| f81632121_506.returns.push(null); |
| // 40309 |
| f81632121_506.returns.push(null); |
| // 40315 |
| f81632121_506.returns.push(null); |
| // 40321 |
| f81632121_506.returns.push(null); |
| // 40327 |
| f81632121_506.returns.push(null); |
| // 40333 |
| f81632121_506.returns.push(null); |
| // 40339 |
| f81632121_506.returns.push(null); |
| // 40345 |
| f81632121_506.returns.push(null); |
| // 40351 |
| f81632121_506.returns.push(null); |
| // 40357 |
| f81632121_506.returns.push(null); |
| // 40363 |
| f81632121_506.returns.push(null); |
| // 40369 |
| f81632121_506.returns.push(null); |
| // 40375 |
| f81632121_506.returns.push(null); |
| // 40381 |
| f81632121_506.returns.push(null); |
| // 40387 |
| f81632121_506.returns.push(null); |
| // 40393 |
| f81632121_506.returns.push(null); |
| // 40399 |
| f81632121_506.returns.push(null); |
| // 40405 |
| f81632121_506.returns.push(null); |
| // 40411 |
| f81632121_506.returns.push(null); |
| // 40417 |
| f81632121_506.returns.push(null); |
| // 40423 |
| f81632121_506.returns.push(null); |
| // 40428 |
| o26.JSBNG__screenX = 714; |
| // 40429 |
| o26.JSBNG__screenY = 399; |
| // 40430 |
| o26.altKey = false; |
| // 40431 |
| o26.bubbles = true; |
| // 40432 |
| o26.button = 0; |
| // 40433 |
| o26.buttons = void 0; |
| // 40434 |
| o26.cancelable = false; |
| // 40435 |
| o26.clientX = 646; |
| // 40436 |
| o26.clientY = 234; |
| // 40437 |
| o26.ctrlKey = false; |
| // 40438 |
| o26.currentTarget = o0; |
| // 40439 |
| o26.defaultPrevented = false; |
| // 40440 |
| o26.detail = 0; |
| // 40441 |
| o26.eventPhase = 3; |
| // 40442 |
| o26.isTrusted = void 0; |
| // 40443 |
| o26.metaKey = false; |
| // 40444 |
| o26.pageX = 646; |
| // 40445 |
| o26.pageY = 620; |
| // 40446 |
| o26.relatedTarget = null; |
| // 40447 |
| o26.fromElement = null; |
| // 40450 |
| o26.shiftKey = false; |
| // 40453 |
| o26.timeStamp = 1374851259400; |
| // 40454 |
| o26.type = "mousemove"; |
| // 40455 |
| o26.view = ow81632121; |
| // undefined |
| o26 = null; |
| // 40464 |
| f81632121_1852.returns.push(undefined); |
| // 40467 |
| f81632121_14.returns.push(undefined); |
| // 40468 |
| f81632121_12.returns.push(188); |
| // 40471 |
| o26 = {}; |
| // 40474 |
| o26.srcElement = o21; |
| // 40476 |
| o26.target = o21; |
| // 40483 |
| f81632121_506.returns.push(null); |
| // 40489 |
| f81632121_506.returns.push(null); |
| // 40495 |
| f81632121_506.returns.push(null); |
| // 40501 |
| f81632121_506.returns.push(null); |
| // 40507 |
| f81632121_506.returns.push(null); |
| // 40513 |
| f81632121_506.returns.push(null); |
| // 40519 |
| f81632121_506.returns.push(null); |
| // 40525 |
| f81632121_506.returns.push(null); |
| // 40531 |
| f81632121_506.returns.push(null); |
| // 40537 |
| f81632121_506.returns.push(null); |
| // 40543 |
| f81632121_506.returns.push(null); |
| // 40549 |
| f81632121_506.returns.push(null); |
| // 40555 |
| f81632121_506.returns.push(null); |
| // 40561 |
| f81632121_506.returns.push(null); |
| // 40567 |
| f81632121_506.returns.push(null); |
| // 40573 |
| f81632121_506.returns.push(null); |
| // 40579 |
| f81632121_506.returns.push(null); |
| // 40585 |
| f81632121_506.returns.push(null); |
| // 40591 |
| f81632121_506.returns.push(null); |
| // 40597 |
| f81632121_506.returns.push(null); |
| // 40603 |
| f81632121_506.returns.push(null); |
| // 40608 |
| o26.relatedTarget = o29; |
| // 40613 |
| f81632121_506.returns.push(null); |
| // 40619 |
| f81632121_506.returns.push(null); |
| // 40625 |
| f81632121_506.returns.push(null); |
| // 40631 |
| f81632121_506.returns.push(null); |
| // 40637 |
| f81632121_506.returns.push(null); |
| // 40643 |
| f81632121_506.returns.push(null); |
| // 40649 |
| f81632121_506.returns.push(null); |
| // 40655 |
| f81632121_506.returns.push(null); |
| // 40661 |
| f81632121_506.returns.push(null); |
| // 40667 |
| f81632121_506.returns.push(null); |
| // 40673 |
| f81632121_506.returns.push(null); |
| // 40679 |
| f81632121_506.returns.push(null); |
| // 40685 |
| f81632121_506.returns.push(null); |
| // 40691 |
| f81632121_506.returns.push(null); |
| // 40697 |
| f81632121_506.returns.push(null); |
| // 40703 |
| f81632121_506.returns.push(null); |
| // 40709 |
| f81632121_506.returns.push(null); |
| // 40715 |
| f81632121_506.returns.push(null); |
| // 40721 |
| f81632121_506.returns.push(null); |
| // 40727 |
| f81632121_506.returns.push(null); |
| // 40733 |
| f81632121_506.returns.push(null); |
| // 40739 |
| f81632121_506.returns.push(null); |
| // 40745 |
| f81632121_506.returns.push(null); |
| // 40751 |
| f81632121_506.returns.push(null); |
| // 40756 |
| o26.cancelBubble = false; |
| // 40757 |
| o26.returnValue = true; |
| // undefined |
| o26 = null; |
| // 40758 |
| o26 = {}; |
| // 40761 |
| o26.cancelBubble = false; |
| // 40764 |
| f81632121_467.returns.push(1374851259429); |
| // 40767 |
| f81632121_1007.returns.push(undefined); |
| // 40769 |
| o26.returnValue = true; |
| // 40772 |
| o26.srcElement = o29; |
| // 40774 |
| o26.target = o29; |
| // 40781 |
| f81632121_506.returns.push(null); |
| // 40787 |
| f81632121_506.returns.push(null); |
| // 40793 |
| f81632121_506.returns.push(null); |
| // 40799 |
| f81632121_506.returns.push(null); |
| // 40805 |
| f81632121_506.returns.push(null); |
| // 40811 |
| f81632121_506.returns.push(null); |
| // 40817 |
| f81632121_506.returns.push(null); |
| // 40823 |
| f81632121_506.returns.push(null); |
| // 40829 |
| f81632121_506.returns.push(null); |
| // 40835 |
| f81632121_506.returns.push(null); |
| // 40841 |
| f81632121_506.returns.push(null); |
| // 40847 |
| f81632121_506.returns.push(null); |
| // 40853 |
| f81632121_506.returns.push(null); |
| // 40859 |
| f81632121_506.returns.push(null); |
| // 40865 |
| f81632121_506.returns.push(null); |
| // 40871 |
| f81632121_506.returns.push(null); |
| // 40877 |
| f81632121_506.returns.push(null); |
| // 40883 |
| f81632121_506.returns.push(null); |
| // 40889 |
| f81632121_506.returns.push(null); |
| // 40895 |
| f81632121_506.returns.push(null); |
| // 40901 |
| f81632121_506.returns.push(null); |
| // 40907 |
| f81632121_506.returns.push(null); |
| // 40913 |
| f81632121_506.returns.push(null); |
| // 40919 |
| f81632121_506.returns.push(null); |
| // 40924 |
| o26.relatedTarget = o21; |
| // undefined |
| o26 = null; |
| // 40927 |
| o26 = {}; |
| // 40931 |
| f81632121_467.returns.push(1374851259435); |
| // 40932 |
| o26.cancelBubble = false; |
| // 40933 |
| o26.returnValue = true; |
| // 40936 |
| o26.srcElement = o29; |
| // 40938 |
| o26.target = o29; |
| // 40945 |
| f81632121_506.returns.push(null); |
| // 40951 |
| f81632121_506.returns.push(null); |
| // 40957 |
| f81632121_506.returns.push(null); |
| // 40963 |
| f81632121_506.returns.push(null); |
| // 40969 |
| f81632121_506.returns.push(null); |
| // 40975 |
| f81632121_506.returns.push(null); |
| // 40981 |
| f81632121_506.returns.push(null); |
| // 40987 |
| f81632121_506.returns.push(null); |
| // 40993 |
| f81632121_506.returns.push(null); |
| // 40999 |
| f81632121_506.returns.push(null); |
| // 41005 |
| f81632121_506.returns.push(null); |
| // 41011 |
| f81632121_506.returns.push(null); |
| // 41017 |
| f81632121_506.returns.push(null); |
| // 41023 |
| f81632121_506.returns.push(null); |
| // 41029 |
| f81632121_506.returns.push(null); |
| // 41035 |
| f81632121_506.returns.push(null); |
| // 41041 |
| f81632121_506.returns.push(null); |
| // 41047 |
| f81632121_506.returns.push(null); |
| // 41053 |
| f81632121_506.returns.push(null); |
| // 41059 |
| f81632121_506.returns.push(null); |
| // 41065 |
| f81632121_506.returns.push(null); |
| // 41071 |
| f81632121_506.returns.push(null); |
| // 41077 |
| f81632121_506.returns.push(null); |
| // 41083 |
| f81632121_506.returns.push(null); |
| // 41088 |
| o26.JSBNG__screenX = 708; |
| // 41089 |
| o26.JSBNG__screenY = 392; |
| // 41090 |
| o26.altKey = false; |
| // 41091 |
| o26.bubbles = true; |
| // 41092 |
| o26.button = 0; |
| // 41093 |
| o26.buttons = void 0; |
| // 41094 |
| o26.cancelable = false; |
| // 41095 |
| o26.clientX = 640; |
| // 41096 |
| o26.clientY = 227; |
| // 41097 |
| o26.ctrlKey = false; |
| // 41098 |
| o26.currentTarget = o0; |
| // 41099 |
| o26.defaultPrevented = false; |
| // 41100 |
| o26.detail = 0; |
| // 41101 |
| o26.eventPhase = 3; |
| // 41102 |
| o26.isTrusted = void 0; |
| // 41103 |
| o26.metaKey = false; |
| // 41104 |
| o26.pageX = 640; |
| // 41105 |
| o26.pageY = 613; |
| // 41106 |
| o26.relatedTarget = null; |
| // 41107 |
| o26.fromElement = null; |
| // 41110 |
| o26.shiftKey = false; |
| // 41113 |
| o26.timeStamp = 1374851259435; |
| // 41114 |
| o26.type = "mousemove"; |
| // 41115 |
| o26.view = ow81632121; |
| // undefined |
| o26 = null; |
| // 41124 |
| f81632121_1852.returns.push(undefined); |
| // 41127 |
| f81632121_14.returns.push(undefined); |
| // 41128 |
| f81632121_12.returns.push(189); |
| // 41131 |
| o26 = {}; |
| // 41134 |
| o26.srcElement = o29; |
| // 41136 |
| o26.target = o29; |
| // 41143 |
| f81632121_506.returns.push(null); |
| // 41149 |
| f81632121_506.returns.push(null); |
| // 41155 |
| f81632121_506.returns.push(null); |
| // 41161 |
| f81632121_506.returns.push(null); |
| // 41167 |
| f81632121_506.returns.push(null); |
| // 41173 |
| f81632121_506.returns.push(null); |
| // 41179 |
| f81632121_506.returns.push(null); |
| // 41185 |
| f81632121_506.returns.push(null); |
| // 41191 |
| f81632121_506.returns.push(null); |
| // 41197 |
| f81632121_506.returns.push(null); |
| // 41203 |
| f81632121_506.returns.push(null); |
| // 41209 |
| f81632121_506.returns.push(null); |
| // 41215 |
| f81632121_506.returns.push(null); |
| // 41221 |
| f81632121_506.returns.push(null); |
| // 41227 |
| f81632121_506.returns.push(null); |
| // 41233 |
| f81632121_506.returns.push(null); |
| // 41239 |
| f81632121_506.returns.push(null); |
| // 41245 |
| f81632121_506.returns.push(null); |
| // 41251 |
| f81632121_506.returns.push(null); |
| // 41257 |
| f81632121_506.returns.push(null); |
| // 41263 |
| f81632121_506.returns.push(null); |
| // 41269 |
| f81632121_506.returns.push(null); |
| // 41275 |
| f81632121_506.returns.push(null); |
| // 41281 |
| f81632121_506.returns.push(null); |
| // 41286 |
| o26.relatedTarget = o21; |
| // 41291 |
| f81632121_506.returns.push(null); |
| // 41297 |
| f81632121_506.returns.push(null); |
| // 41303 |
| f81632121_506.returns.push(null); |
| // 41309 |
| f81632121_506.returns.push(null); |
| // 41315 |
| f81632121_506.returns.push(null); |
| // 41321 |
| f81632121_506.returns.push(null); |
| // 41327 |
| f81632121_506.returns.push(null); |
| // 41333 |
| f81632121_506.returns.push(null); |
| // 41339 |
| f81632121_506.returns.push(null); |
| // 41345 |
| f81632121_506.returns.push(null); |
| // 41351 |
| f81632121_506.returns.push(null); |
| // 41357 |
| f81632121_506.returns.push(null); |
| // 41363 |
| f81632121_506.returns.push(null); |
| // 41369 |
| f81632121_506.returns.push(null); |
| // 41375 |
| f81632121_506.returns.push(null); |
| // 41381 |
| f81632121_506.returns.push(null); |
| // 41387 |
| f81632121_506.returns.push(null); |
| // 41393 |
| f81632121_506.returns.push(null); |
| // 41399 |
| f81632121_506.returns.push(null); |
| // 41405 |
| f81632121_506.returns.push(null); |
| // 41411 |
| f81632121_506.returns.push(null); |
| // 41416 |
| o26.cancelBubble = false; |
| // 41417 |
| o26.returnValue = true; |
| // undefined |
| o26 = null; |
| // 41418 |
| o26 = {}; |
| // 41421 |
| o26.cancelBubble = false; |
| // 41424 |
| f81632121_467.returns.push(1374851259471); |
| // 41429 |
| f81632121_467.returns.push(1374851259472); |
| // 41433 |
| f81632121_467.returns.push(1374851259472); |
| // 41437 |
| f81632121_1007.returns.push(undefined); |
| // 41439 |
| o26.returnValue = true; |
| // 41442 |
| o26.srcElement = o21; |
| // 41444 |
| o26.target = o21; |
| // 41451 |
| f81632121_506.returns.push(null); |
| // 41457 |
| f81632121_506.returns.push(null); |
| // 41463 |
| f81632121_506.returns.push(null); |
| // 41469 |
| f81632121_506.returns.push(null); |
| // 41475 |
| f81632121_506.returns.push(null); |
| // 41481 |
| f81632121_506.returns.push(null); |
| // 41487 |
| f81632121_506.returns.push(null); |
| // 41493 |
| f81632121_506.returns.push(null); |
| // 41499 |
| f81632121_506.returns.push(null); |
| // 41505 |
| f81632121_506.returns.push(null); |
| // 41511 |
| f81632121_506.returns.push(null); |
| // 41517 |
| f81632121_506.returns.push(null); |
| // 41523 |
| f81632121_506.returns.push(null); |
| // 41529 |
| f81632121_506.returns.push(null); |
| // 41535 |
| f81632121_506.returns.push(null); |
| // 41541 |
| f81632121_506.returns.push(null); |
| // 41547 |
| f81632121_506.returns.push(null); |
| // 41553 |
| f81632121_506.returns.push(null); |
| // 41559 |
| f81632121_506.returns.push(null); |
| // 41565 |
| f81632121_506.returns.push(null); |
| // 41571 |
| f81632121_506.returns.push(null); |
| // 41576 |
| o26.relatedTarget = o29; |
| // undefined |
| o26 = null; |
| // undefined |
| o29 = null; |
| // 41579 |
| o26 = {}; |
| // 41583 |
| f81632121_467.returns.push(1374851259487); |
| // 41584 |
| o26.cancelBubble = false; |
| // 41585 |
| o26.returnValue = true; |
| // 41588 |
| o26.srcElement = o21; |
| // 41590 |
| o26.target = o21; |
| // 41597 |
| f81632121_506.returns.push(null); |
| // 41603 |
| f81632121_506.returns.push(null); |
| // 41609 |
| f81632121_506.returns.push(null); |
| // 41615 |
| f81632121_506.returns.push(null); |
| // 41621 |
| f81632121_506.returns.push(null); |
| // 41627 |
| f81632121_506.returns.push(null); |
| // 41633 |
| f81632121_506.returns.push(null); |
| // 41639 |
| f81632121_506.returns.push(null); |
| // 41645 |
| f81632121_506.returns.push(null); |
| // 41651 |
| f81632121_506.returns.push(null); |
| // 41657 |
| f81632121_506.returns.push(null); |
| // 41663 |
| f81632121_506.returns.push(null); |
| // 41669 |
| f81632121_506.returns.push(null); |
| // 41675 |
| f81632121_506.returns.push(null); |
| // 41681 |
| f81632121_506.returns.push(null); |
| // 41687 |
| f81632121_506.returns.push(null); |
| // 41693 |
| f81632121_506.returns.push(null); |
| // 41699 |
| f81632121_506.returns.push(null); |
| // 41705 |
| f81632121_506.returns.push(null); |
| // 41711 |
| f81632121_506.returns.push(null); |
| // 41717 |
| f81632121_506.returns.push(null); |
| // 41722 |
| o26.JSBNG__screenX = 688; |
| // 41723 |
| o26.JSBNG__screenY = 364; |
| // 41724 |
| o26.altKey = false; |
| // 41725 |
| o26.bubbles = true; |
| // 41726 |
| o26.button = 0; |
| // 41727 |
| o26.buttons = void 0; |
| // 41728 |
| o26.cancelable = false; |
| // 41729 |
| o26.clientX = 620; |
| // 41730 |
| o26.clientY = 199; |
| // 41731 |
| o26.ctrlKey = false; |
| // 41732 |
| o26.currentTarget = o0; |
| // 41733 |
| o26.defaultPrevented = false; |
| // 41734 |
| o26.detail = 0; |
| // 41735 |
| o26.eventPhase = 3; |
| // 41736 |
| o26.isTrusted = void 0; |
| // 41737 |
| o26.metaKey = false; |
| // 41738 |
| o26.pageX = 620; |
| // 41739 |
| o26.pageY = 585; |
| // 41740 |
| o26.relatedTarget = null; |
| // 41741 |
| o26.fromElement = null; |
| // 41744 |
| o26.shiftKey = false; |
| // 41747 |
| o26.timeStamp = 1374851259487; |
| // 41748 |
| o26.type = "mousemove"; |
| // 41749 |
| o26.view = ow81632121; |
| // undefined |
| o26 = null; |
| // 41758 |
| f81632121_1852.returns.push(undefined); |
| // 41761 |
| f81632121_14.returns.push(undefined); |
| // 41762 |
| f81632121_12.returns.push(190); |
| // 41765 |
| o26 = {}; |
| // 41769 |
| o29 = {}; |
| // 41773 |
| o31 = {}; |
| // 41777 |
| o32 = {}; |
| // 41782 |
| o1.getResponseHeader = f81632121_1332; |
| // 41785 |
| f81632121_1332.returns.push("oMLTJk70LeP4URd4J/Y7tkIj3TYfbIGc+3lPscz4pI4="); |
| // 41788 |
| f81632121_1332.returns.push("oMLTJk70LeP4URd4J/Y7tkIj3TYfbIGc+3lPscz4pI4="); |
| // 41789 |
| // 41791 |
| o1.JSBNG__status = 200; |
| // 41795 |
| f81632121_467.returns.push(1374851259498); |
| // 41796 |
| o8._handleXHRResponse = f81632121_1333; |
| // 41798 |
| o8.getOption = f81632121_1334; |
| // 41799 |
| o33 = {}; |
| // 41800 |
| o8.option = o33; |
| // 41801 |
| o33.suppressEvaluation = false; |
| // 41804 |
| f81632121_1334.returns.push(false); |
| // 41805 |
| o1.responseText = "for (;;);{\"__ar\":1,\"payload\":null,\"jsmods\":{\"require\":[[\"m_b_0\"],[\"ButtonGroupMonitor\"],[\"m_b_3\"],[\"m_b_4\"],[\"m_b_a\"],[\"m_b_9\"],[\"Hovercard\",\"setDialog\",[\"m_b_0\"],[\"\\/ajax\\/hovercard\\/page.php?id=109486142404101\",{\"__m\":\"m_b_0\"}]]],\"instances\":[[\"m_b_9\",[\"HoverFlyout\",\"m_b_a\",\"m_b_c\"],[{\"__m\":\"m_b_a\"},{\"__m\":\"m_b_c\"},150,150],3],[\"m_b_a\",[\"ContextualDialog\",\"ContextualDialogArrow\",\"ContextualDialogDefaultTheme\",\"LayerRemoveOnHide\",\"LayerHideOnTransition\",\"LayerFadeOnShow\",\"LayerHideOnEscape\",\"ContextualLayerAutoFlip\",\"DialogHideOnSuccess\",\"m_b_b\"],[{\"width\":null,\"context\":null,\"contextID\":null,\"contextSelector\":null,\"position\":\"below\",\"alignment\":\"left\",\"offsetX\":0,\"offsetY\":0,\"arrowBehavior\":{\"__m\":\"ContextualDialogArrow\"},\"theme\":{\"__m\":\"ContextualDialogDefaultTheme\"},\"addedBehaviors\":[{\"__m\":\"LayerRemoveOnHide\"},{\"__m\":\"LayerHideOnTransition\"},{\"__m\":\"LayerFadeOnShow\"},{\"__m\":\"LayerHideOnEscape\"},{\"__m\":\"ContextualLayerAutoFlip\"},{\"__m\":\"DialogHideOnSuccess\"}]},{\"__m\":\"m_b_b\"}],3],[\"m_b_4\",[\"HoverButton\",\"m_b_7\",\"m_b_9\",\"m_b_8\"],[{\"__m\":\"m_b_7\"},{\"__m\":\"m_b_9\"},{\"__m\":\"m_b_8\"},\"\\/ajax\\/lists\\/interests_menu.php?profile_id=109486142404101&list_location=like_button&use_feedtracking=1\"],2],[\"m_b_0\",[\"ContextualDialog\",\"CovercardArrow\",\"ContextualDialogDefaultTheme\",\"LayerRemoveOnHide\",\"LayerHideOnTransition\",\"ContextualLayerAutoFlip\",\"m_b_1\"],[{\"width\":null,\"context\":null,\"contextID\":null,\"contextSelector\":null,\"position\":\"above\",\"alignment\":\"left\",\"offsetX\":0,\"offsetY\":0,\"arrowBehavior\":{\"__m\":\"CovercardArrow\"},\"theme\":{\"__m\":\"ContextualDialogDefaultTheme\"},\"addedBehaviors\":[{\"__m\":\"LayerRemoveOnHide\"},{\"__m\":\"LayerHideOnTransition\"},{\"__m\":\"ContextualLayerAutoFlip\"}]},{\"__m\":\"m_b_1\"}],3],[\"m_b_3\",[\"SwapButtonDEPRECATED\",\"m_b_5\",\"m_b_6\"],[{\"__m\":\"m_b_5\"},{\"__m\":\"m_b_6\"},false],2]],\"elements\":[[\"m_b_6\",\"u_b_3\",2,\"m_b_1\"],[\"m_b_c\",\"u_b_3\",2,\"m_b_1\"],[\"m_b_5\",\"u_b_1\",2,\"m_b_1\"],[\"m_b_7\",\"u_b_3\",2,\"m_b_1\"],[\"m_b_2\",\"u_b_0\",2,\"m_b_1\"],[\"m_b_8\",\"u_b_4\",2,\"m_b_b\"]],\"markup\":[[\"m_b_b\",{\"__html\":\"\\u003Cdiv>\\u003Cdiv>\\u003Cdiv>\\u003Cdiv id=\\\"u_b_4\\\">\\u003Cimg class=\\\"mal pal -cx-PRIVATE-uiHoverButton__loading center img\\\" src=\\\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yk\\/r\\/LOOn0JtHNzb.gif\\\" alt=\\\"\\\" width=\\\"16\\\" height=\\\"16\\\" \\/>\\u003C\\/div>\\u003C\\/div>\\u003C\\/div>\\u003C\\/div>\"},3],[\"m_b_1\",{\"__html\":\"\\u003Cdiv>\\u003Cdiv>\\u003Cdiv>\\u003Cdiv class=\\\"pam -cx-PRIVATE-hovercard__stage\\\" data-gt=\\\"{"ogs":"27"}\\\">\\u003Cdiv>\\u003Ctable class=\\\"-cx-PRIVATE-hovercard__content\\\" cellpadding=\\\"0\\\" cellspacing=\\\"0\\\">\\u003Ctr>\\u003Ctd rowspan=\\\"2\\\" valign=\\\"top\\\">\\u003Ca href=\\\"https:\\/\\/www.facebook.com\\/pages\\/Milwaukie-High-School\\/109486142404101\\\">\\u003Cdiv class=\\\"-cx-PRIVATE-hovercard__profilepiccontainer\\\">\\u003Cimg class=\\\"-cx-PRIVATE-uiSquareImage__root -cx-PRIVATE-hovercard__profilephoto -cx-PRIVATE-uiSquareImage__huge img\\\" src=\\\"https:\\/\\/fbexternal-a.akamaihd.net\\/safe_image.php?d=AQAp0vzVmcAeDZqU&w=100&h=100&url=http\\u00253A\\u00252F\\u00252Fupload.wikimedia.org\\u00252Fwikipedia\\u00252Fcommons\\u00252Fthumb\\u00252F8\\u00252F83\\u00252FMilwaukie_High_School_Front.jpg\\u00252F720px-Milwaukie_High_School_Front.jpg&cfs=1&fallback=hub_education\\\" alt=\\\"\\\" \\/>\\u003C\\/div>\\u003C\\/a>\\u003C\\/td>\\u003Ctd valign=\\\"top\\\">\\u003Cdiv class=\\\"-cx-PRIVATE-hovercard__title fsl fwb fcb\\\">\\u003Ca href=\\\"https:\\/\\/www.facebook.com\\/pages\\/Milwaukie-High-School\\/109486142404101\\\">\\u003Cdiv class=\\\"ellipsis\\\">Milwaukie High School\\u003C\\/div>\\u003C\\/a>\\u003C\\/div>\\u003Cdiv class=\\\"pageByline fsm fwn\\\">School\\u003C\\/div>\\u003Ca class=\\\"pageCityLink\\\" href=\\\"https:\\/\\/www.facebook.com\\/pages\\/Milwaukie-Oregon\\/108102499217697\\\">Milwaukie, OR\\u003C\\/a>\\u003C\\/td>\\u003C\\/tr>\\u003Ctr valign=\\\"bottom\\\">\\u003Ctd class=\\\"-cx-PRIVATE-hovercard__contentfooter\\\">\\u003Cdiv class=\\\"mts -cx-PRIVATE-hovercard__footer\\\">\\u003Cdiv class=\\\"fsm fwn fcg\\\">2,665 like this\\u003C\\/div>\\u003Cdiv class=\\\"fsm fwn fcg\\\">10 talking about this\\u003C\\/div>\\u003C\\/div>\\u003C\\/td>\\u003C\\/tr>\\u003C\\/table>\\u003Cdiv class=\\\"-cx-PRIVATE-hovercard__weakreferencebanner\\\">\\u003C\\/div>\\u003C\\/div>\\u003C\\/div>\\u003C\\/div>\\u003C\\/div>\\u003Cdiv class=\\\"-cx-PRIVATE-hovercard__footer -cx-PUBLIC-abstractContextualDialog__footer clearfix uiBoxGray topborder\\\">\\u003Cdiv class=\\\"clearfix rfloat\\\">\\u003Cspan class=\\\"uiButtonGroup\\\" id=\\\"u_b_0\\\">\\u003Cspan class=\\\"firstItem uiButtonGroupItem buttonItem\\\">\\u003Cspan class=\\\"-cx-PRIVATE-uiSwapButton__root PageLikeButton -cx-PRIVATE-pagesLikeButton__root\\\">\\u003Clabel class=\\\"uiButton\\\" id=\\\"u_b_1\\\" for=\\\"u_b_2\\\">\\u003Ci class=\\\"mrs img sp_at8kd9 sx_b4ec2c\\\">\\u003C\\/i>\\u003Cinput value=\\\"Like\\\" data-profileid=\\\"109486142404101\\\" data-ft=\\\"{"type":28,"tn":"c"}\\\" type=\\\"submit\\\" id=\\\"u_b_2\\\" \\/>\\u003C\\/label>\\u003Clabel class=\\\"PageLikedButton -cx-PUBLIC-uiHoverButton__root -cx-PRIVATE-uiSwapButton__secondbutton hidden_elem uiButton\\\" id=\\\"u_b_3\\\" for=\\\"u_b_5\\\">\\u003Ci class=\\\"mrs img sp_at8kd9 sx_d4ea38\\\">\\u003C\\/i>\\u003Cinput value=\\\"Liked\\\" data-profileid=\\\"109486142404101\\\" type=\\\"submit\\\" id=\\\"u_b_5\\\" \\/>\\u003C\\/label>\\u003C\\/span>\\u003C\\/span>\\u003Cspan class=\\\"uiButtonGroupItem buttonItem\\\">\\u003C\\/span>\\u003Cspan class=\\\"lastItem uiButtonGroupItem buttonItem\\\">\\u003C\\/span>\\u003C\\/span>\\u003C\\/div>\\u003C\\/div>\\u003C\\/div>\"},7]]},\"css\":[\"UmFO+\",\"6T3FY\",\"veUjj\"],\"js\":[\"OH3xD\",\"AVmr9\",\"f7Tpb\",\"\\/MWWQ\",\"56bk6\",\"nxD7O\",\"XH2Cu\",\"dShSX\",\"OYzUx\"],\"onload\":[\"PageLikeButton.init(require(\\\"m_b_3\\\"), $(\\\"u_b_1\\\"), require(\\\"m_b_4\\\"), \\\"109486142404101\\\", \\\"hovercard\\\", \\\"\\\", \\\"\\\", \\\"\\\", 0, false, true);\"],\"bootloadable\":{\"IframeShim\":{\"resources\":[\"OH3xD\",\"f7Tpb\",\"\\/MWWQ\",\"MqSmz\"],\"module\":true},\"Dialog\":{\"resources\":[\"OH3xD\",\"f7Tpb\",\"UmFO+\",\"AVmr9\"],\"module\":true},\"SortableSideNav\":{\"resources\":[\"OH3xD\",\"f7Tpb\",\"\\/MWWQ\",\"6tAwh\",\"C03uu\"],\"module\":true},\"AsyncDOM\":{\"resources\":[\"OH3xD\",\"WLpRY\"],\"module\":true},\"React\":{\"resources\":[\"XH2Cu\",\"OH3xD\"],\"module\":true},\"ExplicitHover\":{\"resources\":[\"OH3xD\",\"aOO05\"],\"module\":true},\"ConfirmationDialog\":{\"resources\":[\"OH3xD\",\"f7Tpb\",\"oE4Do\"],\"module\":true}},\"resource_map\":{\"dShSX\":{\"type\":\"js\",\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yZ\\/r\\/JdjE3mVpxG6.js\"},\"oE4Do\":{\"type\":\"js\",\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yq\\/r\\/MDwOqV08JHh.js\"},\"UmFO+\":{\"type\":\"css\",\"permanent\":1,\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yP\\/r\\/9mw4nQDxDC9.css\"},\"56bk6\":{\"type\":\"js\",\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yG\\/r\\/K4ecOGlF2pP.js\"},\"AVmr9\":{\"type\":\"js\",\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yR\\/r\\/n7J6-ECl4cu.js\"},\"6T3FY\":{\"type\":\"css\",\"permanent\":1,\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yZ\\/r\\/6TQwVHfa0ql.css\"},\"OH3xD\":{\"type\":\"js\",\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yJ\\/r\\/MAGRPTCpjAg.js\"},\"XH2Cu\":{\"type\":\"js\",\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yd\\/r\\/clqWNoT9Gz_.js\"},\"C03uu\":{\"type\":\"js\",\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yC\\/r\\/3fdQLPa9g1g.js\"},\"MqSmz\":{\"type\":\"js\",\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yH\\/r\\/ghlEJgSKAee.js\"},\"nxD7O\":{\"type\":\"js\",\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/y3\\/r\\/8VWsK8lNjX5.js\"},\"6tAwh\":{\"type\":\"js\",\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yM\\/r\\/Oe0OO6kzRjj.js\"},\"WLpRY\":{\"type\":\"js\",\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/y_\\/r\\/gen4xnT_5g3.js\"},\"\\/MWWQ\":{\"type\":\"js\",\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yd\\/r\\/cV-1QIoVTI-.js\"},\"f7Tpb\":{\"type\":\"js\",\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/y5\\/r\\/eV_B8SPw3se.js\"},\"OYzUx\":{\"type\":\"js\",\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yN\\/r\\/bD9K1YDrR29.js\"},\"aOO05\":{\"type\":\"js\",\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yW\\/r\\/zpbGrZRQcFa.js\"},\"veUjj\":{\"type\":\"css\",\"permanent\":1,\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yM\\/r\\/IqonxdwHUtT.css\"}},\"ixData\":[]}"; |
| // 41806 |
| o8._unshieldResponseText = f81632121_1336; |
| // 41807 |
| f81632121_1336.returns.push("{\"__ar\":1,\"payload\":null,\"jsmods\":{\"require\":[[\"m_b_0\"],[\"ButtonGroupMonitor\"],[\"m_b_3\"],[\"m_b_4\"],[\"m_b_a\"],[\"m_b_9\"],[\"Hovercard\",\"setDialog\",[\"m_b_0\"],[\"\\/ajax\\/hovercard\\/page.php?id=109486142404101\",{\"__m\":\"m_b_0\"}]]],\"instances\":[[\"m_b_9\",[\"HoverFlyout\",\"m_b_a\",\"m_b_c\"],[{\"__m\":\"m_b_a\"},{\"__m\":\"m_b_c\"},150,150],3],[\"m_b_a\",[\"ContextualDialog\",\"ContextualDialogArrow\",\"ContextualDialogDefaultTheme\",\"LayerRemoveOnHide\",\"LayerHideOnTransition\",\"LayerFadeOnShow\",\"LayerHideOnEscape\",\"ContextualLayerAutoFlip\",\"DialogHideOnSuccess\",\"m_b_b\"],[{\"width\":null,\"context\":null,\"contextID\":null,\"contextSelector\":null,\"position\":\"below\",\"alignment\":\"left\",\"offsetX\":0,\"offsetY\":0,\"arrowBehavior\":{\"__m\":\"ContextualDialogArrow\"},\"theme\":{\"__m\":\"ContextualDialogDefaultTheme\"},\"addedBehaviors\":[{\"__m\":\"LayerRemoveOnHide\"},{\"__m\":\"LayerHideOnTransition\"},{\"__m\":\"LayerFadeOnShow\"},{\"__m\":\"LayerHideOnEscape\"},{\"__m\":\"ContextualLayerAutoFlip\"},{\"__m\":\"DialogHideOnSuccess\"}]},{\"__m\":\"m_b_b\"}],3],[\"m_b_4\",[\"HoverButton\",\"m_b_7\",\"m_b_9\",\"m_b_8\"],[{\"__m\":\"m_b_7\"},{\"__m\":\"m_b_9\"},{\"__m\":\"m_b_8\"},\"\\/ajax\\/lists\\/interests_menu.php?profile_id=109486142404101&list_location=like_button&use_feedtracking=1\"],2],[\"m_b_0\",[\"ContextualDialog\",\"CovercardArrow\",\"ContextualDialogDefaultTheme\",\"LayerRemoveOnHide\",\"LayerHideOnTransition\",\"ContextualLayerAutoFlip\",\"m_b_1\"],[{\"width\":null,\"context\":null,\"contextID\":null,\"contextSelector\":null,\"position\":\"above\",\"alignment\":\"left\",\"offsetX\":0,\"offsetY\":0,\"arrowBehavior\":{\"__m\":\"CovercardArrow\"},\"theme\":{\"__m\":\"ContextualDialogDefaultTheme\"},\"addedBehaviors\":[{\"__m\":\"LayerRemoveOnHide\"},{\"__m\":\"LayerHideOnTransition\"},{\"__m\":\"ContextualLayerAutoFlip\"}]},{\"__m\":\"m_b_1\"}],3],[\"m_b_3\",[\"SwapButtonDEPRECATED\",\"m_b_5\",\"m_b_6\"],[{\"__m\":\"m_b_5\"},{\"__m\":\"m_b_6\"},false],2]],\"elements\":[[\"m_b_6\",\"u_b_3\",2,\"m_b_1\"],[\"m_b_c\",\"u_b_3\",2,\"m_b_1\"],[\"m_b_5\",\"u_b_1\",2,\"m_b_1\"],[\"m_b_7\",\"u_b_3\",2,\"m_b_1\"],[\"m_b_2\",\"u_b_0\",2,\"m_b_1\"],[\"m_b_8\",\"u_b_4\",2,\"m_b_b\"]],\"markup\":[[\"m_b_b\",{\"__html\":\"\\u003Cdiv>\\u003Cdiv>\\u003Cdiv>\\u003Cdiv id=\\\"u_b_4\\\">\\u003Cimg class=\\\"mal pal -cx-PRIVATE-uiHoverButton__loading center img\\\" src=\\\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yk\\/r\\/LOOn0JtHNzb.gif\\\" alt=\\\"\\\" width=\\\"16\\\" height=\\\"16\\\" \\/>\\u003C\\/div>\\u003C\\/div>\\u003C\\/div>\\u003C\\/div>\"},3],[\"m_b_1\",{\"__html\":\"\\u003Cdiv>\\u003Cdiv>\\u003Cdiv>\\u003Cdiv class=\\\"pam -cx-PRIVATE-hovercard__stage\\\" data-gt=\\\"{"ogs":"27"}\\\">\\u003Cdiv>\\u003Ctable class=\\\"-cx-PRIVATE-hovercard__content\\\" cellpadding=\\\"0\\\" cellspacing=\\\"0\\\">\\u003Ctr>\\u003Ctd rowspan=\\\"2\\\" valign=\\\"top\\\">\\u003Ca href=\\\"https:\\/\\/www.facebook.com\\/pages\\/Milwaukie-High-School\\/109486142404101\\\">\\u003Cdiv class=\\\"-cx-PRIVATE-hovercard__profilepiccontainer\\\">\\u003Cimg class=\\\"-cx-PRIVATE-uiSquareImage__root -cx-PRIVATE-hovercard__profilephoto -cx-PRIVATE-uiSquareImage__huge img\\\" src=\\\"https:\\/\\/fbexternal-a.akamaihd.net\\/safe_image.php?d=AQAp0vzVmcAeDZqU&w=100&h=100&url=http\\u00253A\\u00252F\\u00252Fupload.wikimedia.org\\u00252Fwikipedia\\u00252Fcommons\\u00252Fthumb\\u00252F8\\u00252F83\\u00252FMilwaukie_High_School_Front.jpg\\u00252F720px-Milwaukie_High_School_Front.jpg&cfs=1&fallback=hub_education\\\" alt=\\\"\\\" \\/>\\u003C\\/div>\\u003C\\/a>\\u003C\\/td>\\u003Ctd valign=\\\"top\\\">\\u003Cdiv class=\\\"-cx-PRIVATE-hovercard__title fsl fwb fcb\\\">\\u003Ca href=\\\"https:\\/\\/www.facebook.com\\/pages\\/Milwaukie-High-School\\/109486142404101\\\">\\u003Cdiv class=\\\"ellipsis\\\">Milwaukie High School\\u003C\\/div>\\u003C\\/a>\\u003C\\/div>\\u003Cdiv class=\\\"pageByline fsm fwn\\\">School\\u003C\\/div>\\u003Ca class=\\\"pageCityLink\\\" href=\\\"https:\\/\\/www.facebook.com\\/pages\\/Milwaukie-Oregon\\/108102499217697\\\">Milwaukie, OR\\u003C\\/a>\\u003C\\/td>\\u003C\\/tr>\\u003Ctr valign=\\\"bottom\\\">\\u003Ctd class=\\\"-cx-PRIVATE-hovercard__contentfooter\\\">\\u003Cdiv class=\\\"mts -cx-PRIVATE-hovercard__footer\\\">\\u003Cdiv class=\\\"fsm fwn fcg\\\">2,665 like this\\u003C\\/div>\\u003Cdiv class=\\\"fsm fwn fcg\\\">10 talking about this\\u003C\\/div>\\u003C\\/div>\\u003C\\/td>\\u003C\\/tr>\\u003C\\/table>\\u003Cdiv class=\\\"-cx-PRIVATE-hovercard__weakreferencebanner\\\">\\u003C\\/div>\\u003C\\/div>\\u003C\\/div>\\u003C\\/div>\\u003C\\/div>\\u003Cdiv class=\\\"-cx-PRIVATE-hovercard__footer -cx-PUBLIC-abstractContextualDialog__footer clearfix uiBoxGray topborder\\\">\\u003Cdiv class=\\\"clearfix rfloat\\\">\\u003Cspan class=\\\"uiButtonGroup\\\" id=\\\"u_b_0\\\">\\u003Cspan class=\\\"firstItem uiButtonGroupItem buttonItem\\\">\\u003Cspan class=\\\"-cx-PRIVATE-uiSwapButton__root PageLikeButton -cx-PRIVATE-pagesLikeButton__root\\\">\\u003Clabel class=\\\"uiButton\\\" id=\\\"u_b_1\\\" for=\\\"u_b_2\\\">\\u003Ci class=\\\"mrs img sp_at8kd9 sx_b4ec2c\\\">\\u003C\\/i>\\u003Cinput value=\\\"Like\\\" data-profileid=\\\"109486142404101\\\" data-ft=\\\"{"type":28,"tn":"c"}\\\" type=\\\"submit\\\" id=\\\"u_b_2\\\" \\/>\\u003C\\/label>\\u003Clabel class=\\\"PageLikedButton -cx-PUBLIC-uiHoverButton__root -cx-PRIVATE-uiSwapButton__secondbutton hidden_elem uiButton\\\" id=\\\"u_b_3\\\" for=\\\"u_b_5\\\">\\u003Ci class=\\\"mrs img sp_at8kd9 sx_d4ea38\\\">\\u003C\\/i>\\u003Cinput value=\\\"Liked\\\" data-profileid=\\\"109486142404101\\\" type=\\\"submit\\\" id=\\\"u_b_5\\\" \\/>\\u003C\\/label>\\u003C\\/span>\\u003C\\/span>\\u003Cspan class=\\\"uiButtonGroupItem buttonItem\\\">\\u003C\\/span>\\u003Cspan class=\\\"lastItem uiButtonGroupItem buttonItem\\\">\\u003C\\/span>\\u003C\\/span>\\u003C\\/div>\\u003C\\/div>\\u003C\\/div>\"},7]]},\"css\":[\"UmFO+\",\"6T3FY\",\"veUjj\"],\"js\":[\"OH3xD\",\"AVmr9\",\"f7Tpb\",\"\\/MWWQ\",\"56bk6\",\"nxD7O\",\"XH2Cu\",\"dShSX\",\"OYzUx\"],\"onload\":[\"PageLikeButton.init(require(\\\"m_b_3\\\"), $(\\\"u_b_1\\\"), require(\\\"m_b_4\\\"), \\\"109486142404101\\\", \\\"hovercard\\\", \\\"\\\", \\\"\\\", \\\"\\\", 0, false, true);\"],\"bootloadable\":{\"IframeShim\":{\"resources\":[\"OH3xD\",\"f7Tpb\",\"\\/MWWQ\",\"MqSmz\"],\"module\":true},\"Dialog\":{\"resources\":[\"OH3xD\",\"f7Tpb\",\"UmFO+\",\"AVmr9\"],\"module\":true},\"SortableSideNav\":{\"resources\":[\"OH3xD\",\"f7Tpb\",\"\\/MWWQ\",\"6tAwh\",\"C03uu\"],\"module\":true},\"AsyncDOM\":{\"resources\":[\"OH3xD\",\"WLpRY\"],\"module\":true},\"React\":{\"resources\":[\"XH2Cu\",\"OH3xD\"],\"module\":true},\"ExplicitHover\":{\"resources\":[\"OH3xD\",\"aOO05\"],\"module\":true},\"ConfirmationDialog\":{\"resources\":[\"OH3xD\",\"f7Tpb\",\"oE4Do\"],\"module\":true}},\"resource_map\":{\"dShSX\":{\"type\":\"js\",\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yZ\\/r\\/JdjE3mVpxG6.js\"},\"oE4Do\":{\"type\":\"js\",\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yq\\/r\\/MDwOqV08JHh.js\"},\"UmFO+\":{\"type\":\"css\",\"permanent\":1,\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yP\\/r\\/9mw4nQDxDC9.css\"},\"56bk6\":{\"type\":\"js\",\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yG\\/r\\/K4ecOGlF2pP.js\"},\"AVmr9\":{\"type\":\"js\",\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yR\\/r\\/n7J6-ECl4cu.js\"},\"6T3FY\":{\"type\":\"css\",\"permanent\":1,\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yZ\\/r\\/6TQwVHfa0ql.css\"},\"OH3xD\":{\"type\":\"js\",\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yJ\\/r\\/MAGRPTCpjAg.js\"},\"XH2Cu\":{\"type\":\"js\",\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yd\\/r\\/clqWNoT9Gz_.js\"},\"C03uu\":{\"type\":\"js\",\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yC\\/r\\/3fdQLPa9g1g.js\"},\"MqSmz\":{\"type\":\"js\",\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yH\\/r\\/ghlEJgSKAee.js\"},\"nxD7O\":{\"type\":\"js\",\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/y3\\/r\\/8VWsK8lNjX5.js\"},\"6tAwh\":{\"type\":\"js\",\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yM\\/r\\/Oe0OO6kzRjj.js\"},\"WLpRY\":{\"type\":\"js\",\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/y_\\/r\\/gen4xnT_5g3.js\"},\"\\/MWWQ\":{\"type\":\"js\",\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yd\\/r\\/cV-1QIoVTI-.js\"},\"f7Tpb\":{\"type\":\"js\",\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/y5\\/r\\/eV_B8SPw3se.js\"},\"OYzUx\":{\"type\":\"js\",\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yN\\/r\\/bD9K1YDrR29.js\"},\"aOO05\":{\"type\":\"js\",\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yW\\/r\\/zpbGrZRQcFa.js\"},\"veUjj\":{\"type\":\"css\",\"permanent\":1,\"crossOrigin\":1,\"src\":\"https:\\/\\/static.xx.fbcdn.net\\/rsrc.php\\/v2\\/yM\\/r\\/IqonxdwHUtT.css\"}},\"ixData\":[]}"); |
| // 41808 |
| o8._interpretResponse = f81632121_1337; |
| // 41809 |
| f81632121_1337.returns.push({__JSBNG_unknown_object:true}); |
| // 41810 |
| o8.invokeResponseHandler = f81632121_1338; |
| // 41811 |
| o8.handler = null; |
| // 41812 |
| f81632121_2758 = function() { return f81632121_2758.returns[f81632121_2758.inst++]; }; |
| f81632121_2758.returns = []; |
| f81632121_2758.inst = 0; |
| // 41813 |
| o8.errorHandler = f81632121_2758; |
| // 41814 |
| o8._isRelevant = f81632121_1340; |
| // 41815 |
| o8._allowCrossPageTransition = void 0; |
| // 41816 |
| o8.id = 10; |
| // 41818 |
| f81632121_1340.returns.push(true); |
| // 41819 |
| o8._dispatchResponse = f81632121_1341; |
| // 41820 |
| o8.getURI = f81632121_1342; |
| // 41821 |
| o34 = {}; |
| // 41822 |
| o8.uri = o34; |
| // 41824 |
| o34.$URIBase0 = ""; |
| // 41825 |
| o34.$URIBase1 = ""; |
| // 41826 |
| o34.$URIBase2 = ""; |
| // 41827 |
| o34.$URIBase3 = "/ajax/hovercard/page.php"; |
| // 41829 |
| o35 = {}; |
| // 41830 |
| o34.$URIBase5 = o35; |
| // 41832 |
| f81632121_1662.returns.push(true); |
| // 41833 |
| o35.__a = 1; |
| // 41836 |
| f81632121_1662.returns.push(true); |
| // 41837 |
| o35.__dyn = "7n8ahyj2qmvudDgDxqjEHznBw"; |
| // 41840 |
| f81632121_1662.returns.push(true); |
| // 41841 |
| o35.__req = "b"; |
| // 41844 |
| f81632121_1662.returns.push(true); |
| // 41845 |
| o35.__user = "100006118350059"; |
| // 41848 |
| f81632121_1662.returns.push(true); |
| // 41849 |
| o35.endpoint = "/ajax/hovercard/page.php?id=109486142404101"; |
| // 41852 |
| f81632121_1662.returns.push(true); |
| // 41853 |
| o35.id = "109486142404101"; |
| // 41855 |
| o34.$URIBase4 = ""; |
| // 41856 |
| f81632121_1344.returns.push("/ajax/hovercard/page.php?__a=1&__dyn=7n8ahyj2qmvudDgDxqjEHznBw&__req=b&__user=100006118350059&endpoint=%2Fajax%2Fhovercard%2Fpage.php%3Fid%3D109486142404101&id=109486142404101"); |
| // 41857 |
| f81632121_1342.returns.push("/ajax/hovercard/page.php?__a=1&__dyn=7n8ahyj2qmvudDgDxqjEHznBw&__req=b&__user=100006118350059&endpoint=%2Fajax%2Fhovercard%2Fpage.php%3Fid%3D109486142404101&id=109486142404101"); |
| // 41858 |
| o8.preBootloadHandler = void 0; |
| // 41869 |
| f81632121_1662.returns.push(true); |
| // 41873 |
| f81632121_1662.returns.push(true); |
| // 41877 |
| f81632121_1662.returns.push(true); |
| // 41881 |
| f81632121_1662.returns.push(true); |
| // 41885 |
| f81632121_1662.returns.push(true); |
| // 41889 |
| f81632121_1662.returns.push(true); |
| // 41893 |
| f81632121_1344.returns.push("/ajax/hovercard/page.php?__a=1&__dyn=7n8ahyj2qmvudDgDxqjEHznBw&__req=b&__user=100006118350059&endpoint=%2Fajax%2Fhovercard%2Fpage.php%3Fid%3D109486142404101&id=109486142404101"); |
| // 41894 |
| f81632121_1342.returns.push("/ajax/hovercard/page.php?__a=1&__dyn=7n8ahyj2qmvudDgDxqjEHznBw&__req=b&__user=100006118350059&endpoint=%2Fajax%2Fhovercard%2Fpage.php%3Fid%3D109486142404101&id=109486142404101"); |
| // 41898 |
| o36 = {}; |
| // 41899 |
| f81632121_474.returns.push(o36); |
| // 41901 |
| f81632121_467.returns.push(1374851259510); |
| // 41903 |
| o39 = {}; |
| // 41904 |
| f81632121_476.returns.push(o39); |
| // 41905 |
| // 41906 |
| // 41907 |
| // 41908 |
| // 41909 |
| // 41910 |
| // 41911 |
| o36.appendChild = f81632121_478; |
| // 41912 |
| f81632121_478.returns.push(o39); |
| // undefined |
| o39 = null; |
| // 41914 |
| f81632121_478.returns.push(o36); |
| // undefined |
| o36 = null; |
| // 41915 |
| f81632121_1338.returns.push(undefined); |
| // 41916 |
| f81632121_1333.returns.push(undefined); |
| // 41919 |
| o33.asynchronous = true; |
| // undefined |
| o33 = null; |
| // 41922 |
| f81632121_1334.returns.push(true); |
| // 41923 |
| // 41924 |
| o33 = {}; |
| // 41927 |
| o33.srcElement = o21; |
| // 41929 |
| o33.target = o21; |
| // 41936 |
| f81632121_506.returns.push(null); |
| // 41942 |
| f81632121_506.returns.push(null); |
| // 41948 |
| f81632121_506.returns.push(null); |
| // 41954 |
| f81632121_506.returns.push(null); |
| // 41960 |
| f81632121_506.returns.push(null); |
| // 41966 |
| f81632121_506.returns.push(null); |
| // 41972 |
| f81632121_506.returns.push(null); |
| // 41978 |
| f81632121_506.returns.push(null); |
| // 41984 |
| f81632121_506.returns.push(null); |
| // 41990 |
| f81632121_506.returns.push(null); |
| // 41996 |
| f81632121_506.returns.push(null); |
| // 42002 |
| f81632121_506.returns.push(null); |
| // 42008 |
| f81632121_506.returns.push(null); |
| // 42014 |
| f81632121_506.returns.push(null); |
| // 42020 |
| f81632121_506.returns.push(null); |
| // 42026 |
| f81632121_506.returns.push(null); |
| // 42032 |
| f81632121_506.returns.push(null); |
| // 42038 |
| f81632121_506.returns.push(null); |
| // 42044 |
| f81632121_506.returns.push(null); |
| // 42050 |
| f81632121_506.returns.push(null); |
| // 42056 |
| f81632121_506.returns.push(null); |
| // 42061 |
| o33.relatedTarget = o20; |
| // 42066 |
| f81632121_506.returns.push(null); |
| // 42072 |
| f81632121_506.returns.push(null); |
| // 42078 |
| f81632121_506.returns.push(null); |
| // 42084 |
| f81632121_506.returns.push(null); |
| // 42090 |
| f81632121_506.returns.push(null); |
| // 42096 |
| f81632121_506.returns.push(null); |
| // 42102 |
| f81632121_506.returns.push(null); |
| // 42108 |
| f81632121_506.returns.push(null); |
| // 42114 |
| f81632121_506.returns.push(null); |
| // 42120 |
| f81632121_506.returns.push(null); |
| // 42126 |
| f81632121_506.returns.push(null); |
| // 42132 |
| f81632121_506.returns.push(null); |
| // 42138 |
| f81632121_506.returns.push(null); |
| // 42144 |
| f81632121_506.returns.push(null); |
| // 42150 |
| f81632121_506.returns.push(null); |
| // 42156 |
| f81632121_506.returns.push(null); |
| // 42162 |
| f81632121_506.returns.push(null); |
| // 42168 |
| f81632121_506.returns.push(null); |
| // 42174 |
| f81632121_506.returns.push(null); |
| // 42179 |
| o33.cancelBubble = false; |
| // 42180 |
| o33.returnValue = true; |
| // undefined |
| o33 = null; |
| // 42181 |
| o33 = {}; |
| // 42184 |
| o33.cancelBubble = false; |
| // 42187 |
| f81632121_467.returns.push(1374851259529); |
| // 42190 |
| f81632121_1007.returns.push(undefined); |
| // 42192 |
| o33.returnValue = true; |
| // 42195 |
| o33.srcElement = o20; |
| // 42197 |
| o33.target = o20; |
| // 42204 |
| f81632121_506.returns.push(null); |
| // 42210 |
| f81632121_506.returns.push(null); |
| // 42216 |
| f81632121_506.returns.push(null); |
| // 42222 |
| f81632121_506.returns.push(null); |
| // 42228 |
| f81632121_506.returns.push(null); |
| // 42234 |
| f81632121_506.returns.push(null); |
| // 42240 |
| f81632121_506.returns.push(null); |
| // 42246 |
| f81632121_506.returns.push(null); |
| // 42252 |
| f81632121_506.returns.push(null); |
| // 42258 |
| f81632121_506.returns.push(null); |
| // 42264 |
| f81632121_506.returns.push(null); |
| // 42270 |
| f81632121_506.returns.push(null); |
| // 42276 |
| f81632121_506.returns.push(null); |
| // 42282 |
| f81632121_506.returns.push(null); |
| // 42288 |
| f81632121_506.returns.push(null); |
| // 42294 |
| f81632121_506.returns.push(null); |
| // 42300 |
| f81632121_506.returns.push(null); |
| // 42306 |
| f81632121_506.returns.push(null); |
| // 42312 |
| f81632121_506.returns.push(null); |
| // 42317 |
| o33.relatedTarget = o21; |
| // undefined |
| o33 = null; |
| // undefined |
| o21 = null; |
| // 42320 |
| o21 = {}; |
| // 42324 |
| f81632121_467.returns.push(1374851259537); |
| // 42325 |
| o21.cancelBubble = false; |
| // 42326 |
| o21.returnValue = true; |
| // 42329 |
| o21.srcElement = o20; |
| // 42331 |
| o21.target = o20; |
| // 42338 |
| f81632121_506.returns.push(null); |
| // 42344 |
| f81632121_506.returns.push(null); |
| // 42350 |
| f81632121_506.returns.push(null); |
| // 42356 |
| f81632121_506.returns.push(null); |
| // 42362 |
| f81632121_506.returns.push(null); |
| // 42368 |
| f81632121_506.returns.push(null); |
| // 42374 |
| f81632121_506.returns.push(null); |
| // 42380 |
| f81632121_506.returns.push(null); |
| // 42386 |
| f81632121_506.returns.push(null); |
| // 42392 |
| f81632121_506.returns.push(null); |
| // 42398 |
| f81632121_506.returns.push(null); |
| // 42404 |
| f81632121_506.returns.push(null); |
| // 42410 |
| f81632121_506.returns.push(null); |
| // 42416 |
| f81632121_506.returns.push(null); |
| // 42422 |
| f81632121_506.returns.push(null); |
| // 42428 |
| f81632121_506.returns.push(null); |
| // 42434 |
| f81632121_506.returns.push(null); |
| // 42440 |
| f81632121_506.returns.push(null); |
| // 42446 |
| f81632121_506.returns.push(null); |
| // 42451 |
| o21.JSBNG__screenX = 664; |
| // 42452 |
| o21.JSBNG__screenY = 318; |
| // 42453 |
| o21.altKey = false; |
| // 42454 |
| o21.bubbles = true; |
| // 42455 |
| o21.button = 0; |
| // 42456 |
| o21.buttons = void 0; |
| // 42457 |
| o21.cancelable = false; |
| // 42458 |
| o21.clientX = 596; |
| // 42459 |
| o21.clientY = 153; |
| // 42460 |
| o21.ctrlKey = false; |
| // 42461 |
| o21.currentTarget = o0; |
| // 42462 |
| o21.defaultPrevented = false; |
| // 42463 |
| o21.detail = 0; |
| // 42464 |
| o21.eventPhase = 3; |
| // 42465 |
| o21.isTrusted = void 0; |
| // 42466 |
| o21.metaKey = false; |
| // 42467 |
| o21.pageX = 596; |
| // 42468 |
| o21.pageY = 539; |
| // 42469 |
| o21.relatedTarget = null; |
| // 42470 |
| o21.fromElement = null; |
| // 42473 |
| o21.shiftKey = false; |
| // 42476 |
| o21.timeStamp = 1374851259533; |
| // 42477 |
| o21.type = "mousemove"; |
| // 42478 |
| o21.view = ow81632121; |
| // undefined |
| o21 = null; |
| // 42487 |
| f81632121_1852.returns.push(undefined); |
| // 42490 |
| f81632121_14.returns.push(undefined); |
| // 42491 |
| f81632121_12.returns.push(191); |
| // 42494 |
| o21 = {}; |
| // 42497 |
| o21.srcElement = o20; |
| // 42499 |
| o21.target = o20; |
| // 42506 |
| f81632121_506.returns.push(null); |
| // 42512 |
| f81632121_506.returns.push(null); |
| // 42518 |
| f81632121_506.returns.push(null); |
| // 42524 |
| f81632121_506.returns.push(null); |
| // 42530 |
| f81632121_506.returns.push(null); |
| // 42536 |
| f81632121_506.returns.push(null); |
| // 42542 |
| f81632121_506.returns.push(null); |
| // 42548 |
| f81632121_506.returns.push(null); |
| // 42554 |
| f81632121_506.returns.push(null); |
| // 42560 |
| f81632121_506.returns.push(null); |
| // 42566 |
| f81632121_506.returns.push(null); |
| // 42572 |
| f81632121_506.returns.push(null); |
| // 42578 |
| f81632121_506.returns.push(null); |
| // 42584 |
| f81632121_506.returns.push(null); |
| // 42590 |
| f81632121_506.returns.push(null); |
| // 42596 |
| f81632121_506.returns.push(null); |
| // 42602 |
| f81632121_506.returns.push(null); |
| // 42608 |
| f81632121_506.returns.push(null); |
| // 42614 |
| f81632121_506.returns.push(null); |
| // 42619 |
| o21.relatedTarget = o183; |
| // 42624 |
| f81632121_506.returns.push(null); |
| // 42630 |
| f81632121_506.returns.push(null); |
| // 42636 |
| f81632121_506.returns.push(null); |
| // 42642 |
| f81632121_506.returns.push(null); |
| // 42648 |
| f81632121_506.returns.push(null); |
| // 42654 |
| f81632121_506.returns.push(null); |
| // 42660 |
| f81632121_506.returns.push(null); |
| // 42666 |
| f81632121_506.returns.push(null); |
| // 42672 |
| f81632121_506.returns.push(null); |
| // 42678 |
| f81632121_506.returns.push(null); |
| // 42684 |
| f81632121_506.returns.push(null); |
| // 42690 |
| f81632121_506.returns.push(null); |
| // 42696 |
| f81632121_506.returns.push(null); |
| // 42702 |
| f81632121_506.returns.push(null); |
| // 42708 |
| f81632121_506.returns.push(null); |
| // 42713 |
| o21.cancelBubble = false; |
| // 42714 |
| o21.returnValue = true; |
| // undefined |
| o21 = null; |
| // 42715 |
| o21 = {}; |
| // 42718 |
| o21.cancelBubble = false; |
| // 42721 |
| f81632121_467.returns.push(1374851259564); |
| // 42724 |
| f81632121_1007.returns.push(undefined); |
| // 42726 |
| o21.returnValue = true; |
| // 42729 |
| o21.srcElement = o183; |
| // 42731 |
| o21.target = o183; |
| // 42738 |
| f81632121_506.returns.push(null); |
| // 42744 |
| f81632121_506.returns.push(null); |
| // 42750 |
| f81632121_506.returns.push(null); |
| // 42756 |
| f81632121_506.returns.push(null); |
| // 42762 |
| f81632121_506.returns.push(null); |
| // 42768 |
| f81632121_506.returns.push(null); |
| // 42774 |
| f81632121_506.returns.push(null); |
| // 42780 |
| f81632121_506.returns.push(null); |
| // 42786 |
| f81632121_506.returns.push(null); |
| // 42792 |
| f81632121_506.returns.push(null); |
| // 42798 |
| f81632121_506.returns.push(null); |
| // 42804 |
| f81632121_506.returns.push(null); |
| // 42810 |
| f81632121_506.returns.push(null); |
| // 42816 |
| f81632121_506.returns.push(null); |
| // 42822 |
| f81632121_506.returns.push(null); |
| // 42827 |
| o21.relatedTarget = o20; |
| // undefined |
| o21 = null; |
| // undefined |
| o20 = null; |
| // 42830 |
| o20 = {}; |
| // 42834 |
| f81632121_467.returns.push(1374851259569); |
| // 42835 |
| o20.cancelBubble = false; |
| // 42836 |
| o20.returnValue = true; |
| // 42839 |
| o20.srcElement = o183; |
| // 42841 |
| o20.target = o183; |
| // 42848 |
| f81632121_506.returns.push(null); |
| // 42854 |
| f81632121_506.returns.push(null); |
| // 42860 |
| f81632121_506.returns.push(null); |
| // 42866 |
| f81632121_506.returns.push(null); |
| // 42872 |
| f81632121_506.returns.push(null); |
| // 42878 |
| f81632121_506.returns.push(null); |
| // 42884 |
| f81632121_506.returns.push(null); |
| // 42890 |
| f81632121_506.returns.push(null); |
| // 42896 |
| f81632121_506.returns.push(null); |
| // 42902 |
| f81632121_506.returns.push(null); |
| // 42908 |
| f81632121_506.returns.push(null); |
| // 42914 |
| f81632121_506.returns.push(null); |
| // 42920 |
| f81632121_506.returns.push(null); |
| // 42926 |
| f81632121_506.returns.push(null); |
| // 42932 |
| f81632121_506.returns.push(null); |
| // 42937 |
| o20.JSBNG__screenX = 660; |
| // 42938 |
| o20.JSBNG__screenY = 306; |
| // 42939 |
| o20.altKey = false; |
| // 42940 |
| o20.bubbles = true; |
| // 42941 |
| o20.button = 0; |
| // 42942 |
| o20.buttons = void 0; |
| // 42943 |
| o20.cancelable = false; |
| // 42944 |
| o20.clientX = 592; |
| // 42945 |
| o20.clientY = 141; |
| // 42946 |
| o20.ctrlKey = false; |
| // 42947 |
| o20.currentTarget = o0; |
| // 42948 |
| o20.defaultPrevented = false; |
| // 42949 |
| o20.detail = 0; |
| // 42950 |
| o20.eventPhase = 3; |
| // 42951 |
| o20.isTrusted = void 0; |
| // 42952 |
| o20.metaKey = false; |
| // 42953 |
| o20.pageX = 592; |
| // 42954 |
| o20.pageY = 527; |
| // 42955 |
| o20.relatedTarget = null; |
| // 42956 |
| o20.fromElement = null; |
| // 42959 |
| o20.shiftKey = false; |
| // 42962 |
| o20.timeStamp = 1374851259569; |
| // 42963 |
| o20.type = "mousemove"; |
| // 42964 |
| o20.view = ow81632121; |
| // undefined |
| o20 = null; |
| // 42973 |
| f81632121_1852.returns.push(undefined); |
| // 42976 |
| f81632121_14.returns.push(undefined); |
| // 42977 |
| f81632121_12.returns.push(192); |
| // 42981 |
| f81632121_12.returns.push(193); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096"); |
| // 42983 |
| o20 = {}; |
| // undefined |
| o20 = null; |
| // 42985 |
| f81632121_12.returns.push(194); |
| // 42988 |
| o8.clearStatusIndicator = f81632121_1347; |
| // 42989 |
| o8.getStatusElement = f81632121_1348; |
| // 42990 |
| o8.statusElement = null; |
| // 42991 |
| f81632121_1348.returns.push(null); |
| // 42992 |
| f81632121_1347.returns.push(undefined); |
| // 42997 |
| f81632121_1340.returns.push(true); |
| // 42998 |
| o8.initialHandler = f81632121_1349; |
| // 42999 |
| f81632121_1349.returns.push(undefined); |
| // 43000 |
| o8.timer = null; |
| // 43001 |
| f81632121_14.returns.push(undefined); |
| // 43003 |
| o8._handleJSResponse = f81632121_1351; |
| // 43004 |
| o8.getRelativeTo = f81632121_1352; |
| // 43005 |
| o8.relativeTo = null; |
| // 43006 |
| f81632121_1352.returns.push(null); |
| // 43011 |
| o20 = {}; |
| // 43012 |
| f81632121_476.returns.push(o20); |
| // 43013 |
| // 43014 |
| // 43015 |
| o20.getElementsByTagName = f81632121_502; |
| // 43016 |
| o21 = {}; |
| // 43017 |
| f81632121_502.returns.push(o21); |
| // 43018 |
| o21.length = 0; |
| // undefined |
| o21 = null; |
| // 43020 |
| o21 = {}; |
| // 43021 |
| o20.childNodes = o21; |
| // undefined |
| o20 = null; |
| // 43022 |
| o21.nodeType = void 0; |
| // 43023 |
| o21.getAttributeNode = void 0; |
| // 43024 |
| o21.getElementsByTagName = void 0; |
| // 43025 |
| o21.childNodes = void 0; |
| // undefined |
| o21 = null; |
| // 43044 |
| o20 = {}; |
| // 43045 |
| f81632121_476.returns.push(o20); |
| // 43046 |
| // 43047 |
| // 43048 |
| o20.getElementsByTagName = f81632121_502; |
| // 43049 |
| o21 = {}; |
| // 43050 |
| f81632121_502.returns.push(o21); |
| // 43051 |
| o21.length = 0; |
| // undefined |
| o21 = null; |
| // 43053 |
| o21 = {}; |
| // 43054 |
| o20.childNodes = o21; |
| // undefined |
| o20 = null; |
| // 43055 |
| o21.nodeType = void 0; |
| // 43056 |
| o21.getAttributeNode = void 0; |
| // 43057 |
| o21.getElementsByTagName = void 0; |
| // 43058 |
| o21.childNodes = void 0; |
| // 43070 |
| o21.__html = void 0; |
| // 43071 |
| o21.mountComponentIntoNode = void 0; |
| // 43072 |
| o21.classList = void 0; |
| // 43074 |
| o21.className = void 0; |
| // 43076 |
| // undefined |
| o21 = null; |
| // 43078 |
| o20 = {}; |
| // 43079 |
| f81632121_476.returns.push(o20); |
| // 43080 |
| o20.firstChild = null; |
| // 43082 |
| o21 = {}; |
| // 43083 |
| f81632121_474.returns.push(o21); |
| // 43085 |
| o20.appendChild = f81632121_478; |
| // 43086 |
| f81632121_478.returns.push(o21); |
| // undefined |
| o21 = null; |
| // 43088 |
| o21 = {}; |
| // 43089 |
| f81632121_476.returns.push(o21); |
| // 43090 |
| // 43091 |
| o21.firstChild = null; |
| // 43092 |
| o20.__html = void 0; |
| // undefined |
| o20 = null; |
| // 43094 |
| o20 = {}; |
| // 43095 |
| f81632121_474.returns.push(o20); |
| // 43097 |
| o21.appendChild = f81632121_478; |
| // 43098 |
| f81632121_478.returns.push(o20); |
| // undefined |
| o20 = null; |
| // 43100 |
| o20 = {}; |
| // 43101 |
| f81632121_476.returns.push(o20); |
| // 43102 |
| // 43103 |
| o20.firstChild = null; |
| // 43104 |
| o21.__html = void 0; |
| // undefined |
| o21 = null; |
| // 43106 |
| o21 = {}; |
| // 43107 |
| f81632121_474.returns.push(o21); |
| // 43109 |
| o20.appendChild = f81632121_478; |
| // 43110 |
| f81632121_478.returns.push(o21); |
| // undefined |
| o21 = null; |
| // 43111 |
| o21 = {}; |
| // 43112 |
| o20.classList = o21; |
| // 43114 |
| o21.add = f81632121_602; |
| // undefined |
| o21 = null; |
| // 43115 |
| f81632121_602.returns.push(undefined); |
| // 43119 |
| f81632121_602.returns.push(undefined); |
| // 43120 |
| o20.__FB_TOKEN = void 0; |
| // 43121 |
| // 43122 |
| o20.nodeName = "DIV"; |
| // 43123 |
| o20.getAttribute = f81632121_506; |
| // 43124 |
| o20.hasAttribute = f81632121_507; |
| // 43126 |
| f81632121_507.returns.push(false); |
| // 43127 |
| o20.JSBNG__addEventListener = f81632121_468; |
| // 43129 |
| f81632121_468.returns.push(undefined); |
| // 43130 |
| o20.JSBNG__onclick = null; |
| // 43135 |
| f81632121_468.returns.push(undefined); |
| // 43136 |
| o20.JSBNG__onsubmit = null; |
| // 43141 |
| f81632121_468.returns.push(undefined); |
| // 43142 |
| o20.JSBNG__onsuccess = void 0; |
| // 43147 |
| f81632121_468.returns.push(undefined); |
| // 43148 |
| o20.JSBNG__onerror = null; |
| // undefined |
| o20 = null; |
| // 43150 |
| f81632121_12.returns.push(195); |
| // 43153 |
| o8._handleJSRegisters = f81632121_1353; |
| // 43154 |
| f81632121_1353.returns.push(undefined); |
| // 43155 |
| o8.lid = void 0; |
| // 43157 |
| f81632121_1353.returns.push(undefined); |
| // 43163 |
| f81632121_1351.returns.push(undefined); |
| // 43164 |
| o8.finallyHandler = f81632121_1349; |
| // 43165 |
| f81632121_1349.returns.push(undefined); |
| // 43166 |
| f81632121_1341.returns.push(undefined); |
| // 43169 |
| f81632121_12.returns.push(196); |
| // 43173 |
| o20 = {}; |
| // 43174 |
| f81632121_476.returns.push(o20); |
| // 43175 |
| // 43176 |
| o20.firstChild = null; |
| // 43178 |
| o21 = {}; |
| // 43179 |
| f81632121_474.returns.push(o21); |
| // 43181 |
| o33 = {}; |
| // 43182 |
| f81632121_598.returns.push(o33); |
| // 43183 |
| o21.appendChild = f81632121_478; |
| // 43184 |
| f81632121_478.returns.push(o33); |
| // undefined |
| o33 = null; |
| // 43185 |
| o20.appendChild = f81632121_478; |
| // 43186 |
| f81632121_478.returns.push(o21); |
| // undefined |
| o21 = null; |
| // 43187 |
| o20.getElementsByTagName = f81632121_502; |
| // 43189 |
| o20.querySelectorAll = f81632121_504; |
| // 43190 |
| o21 = {}; |
| // 43191 |
| f81632121_504.returns.push(o21); |
| // 43192 |
| o21.length = 0; |
| // undefined |
| o21 = null; |
| // 43193 |
| o20.__html = void 0; |
| // 43194 |
| o20.mountComponentIntoNode = void 0; |
| // 43195 |
| o21 = {}; |
| // 43196 |
| o20.classList = o21; |
| // undefined |
| o20 = null; |
| // 43198 |
| o21.add = f81632121_602; |
| // undefined |
| o21 = null; |
| // 43199 |
| f81632121_602.returns.push(undefined); |
| // 43201 |
| o20 = {}; |
| // 43202 |
| f81632121_476.returns.push(o20); |
| // 43203 |
| o20.firstChild = null; |
| // 43205 |
| o21 = {}; |
| // 43206 |
| f81632121_474.returns.push(o21); |
| // 43208 |
| o20.appendChild = f81632121_478; |
| // 43209 |
| f81632121_478.returns.push(o21); |
| // undefined |
| o21 = null; |
| // 43211 |
| o21 = {}; |
| // 43212 |
| f81632121_476.returns.push(o21); |
| // 43213 |
| // 43214 |
| o21.firstChild = null; |
| // 43215 |
| o20.__html = void 0; |
| // 43217 |
| o33 = {}; |
| // 43218 |
| f81632121_474.returns.push(o33); |
| // 43220 |
| o21.appendChild = f81632121_478; |
| // 43221 |
| f81632121_478.returns.push(o33); |
| // undefined |
| o33 = null; |
| // 43223 |
| o33 = {}; |
| // 43224 |
| f81632121_476.returns.push(o33); |
| // 43225 |
| // 43226 |
| o33.firstChild = null; |
| // 43227 |
| o21.__html = void 0; |
| // undefined |
| o21 = null; |
| // 43229 |
| o21 = {}; |
| // 43230 |
| f81632121_474.returns.push(o21); |
| // 43232 |
| o33.appendChild = f81632121_478; |
| // 43233 |
| f81632121_478.returns.push(o21); |
| // undefined |
| o21 = null; |
| // 43234 |
| o21 = {}; |
| // 43235 |
| o33.classList = o21; |
| // 43237 |
| o21.add = f81632121_602; |
| // 43238 |
| f81632121_602.returns.push(undefined); |
| // 43239 |
| o36 = {}; |
| // 43240 |
| o20.style = o36; |
| // undefined |
| o20 = null; |
| // 43241 |
| // undefined |
| o36 = null; |
| // 43245 |
| f81632121_602.returns.push(undefined); |
| // 43246 |
| o33.__FB_TOKEN = void 0; |
| // 43247 |
| // 43248 |
| o33.nodeName = "DIV"; |
| // 43249 |
| o33.getAttribute = f81632121_506; |
| // 43250 |
| o33.hasAttribute = f81632121_507; |
| // 43252 |
| f81632121_507.returns.push(false); |
| // 43253 |
| o33.JSBNG__addEventListener = f81632121_468; |
| // 43255 |
| f81632121_468.returns.push(undefined); |
| // 43256 |
| o33.JSBNG__onclick = null; |
| // 43261 |
| f81632121_468.returns.push(undefined); |
| // 43262 |
| o33.JSBNG__onsubmit = null; |
| // 43267 |
| f81632121_468.returns.push(undefined); |
| // 43268 |
| o33.JSBNG__onsuccess = void 0; |
| // 43273 |
| f81632121_468.returns.push(undefined); |
| // 43274 |
| o33.JSBNG__onerror = null; |
| // 43277 |
| f81632121_1418.returns.push({__JSBNG_unknown_function:true}); |
| // 43281 |
| f81632121_645.returns.push(true); |
| // 43285 |
| f81632121_645.returns.push(true); |
| // 43291 |
| o33.id = ""; |
| // 43292 |
| // 43293 |
| o20 = {}; |
| // 43294 |
| o33.style = o20; |
| // 43295 |
| // 43297 |
| // undefined |
| o20 = null; |
| // 43300 |
| o21.remove = f81632121_1114; |
| // undefined |
| o21 = null; |
| // 43301 |
| f81632121_1114.returns.push(undefined); |
| // 43302 |
| o33.__html = void 0; |
| // undefined |
| o33 = null; |
| // 43304 |
| o20 = {}; |
| // 43305 |
| f81632121_474.returns.push(o20); |
| // undefined |
| o20 = null; |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096"); |
| // 43310 |
| f81632121_467.returns.push(1374851260217); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096"); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096"); |
| // 43313 |
| o20 = {}; |
| // 43317 |
| f81632121_467.returns.push(1374851260991); |
| // 43322 |
| f81632121_467.returns.push(1374851260992); |
| // 43326 |
| f81632121_467.returns.push(1374851260992); |
| // 43328 |
| o20.cancelBubble = false; |
| // 43329 |
| o20.returnValue = true; |
| // 43332 |
| o20.srcElement = o183; |
| // 43334 |
| o20.target = o183; |
| // 43341 |
| f81632121_506.returns.push(null); |
| // 43347 |
| f81632121_506.returns.push(null); |
| // 43353 |
| f81632121_506.returns.push(null); |
| // 43359 |
| f81632121_506.returns.push(null); |
| // 43365 |
| f81632121_506.returns.push(null); |
| // 43371 |
| f81632121_506.returns.push(null); |
| // 43377 |
| f81632121_506.returns.push(null); |
| // 43383 |
| f81632121_506.returns.push(null); |
| // 43389 |
| f81632121_506.returns.push(null); |
| // 43395 |
| f81632121_506.returns.push(null); |
| // 43401 |
| f81632121_506.returns.push(null); |
| // 43407 |
| f81632121_506.returns.push(null); |
| // 43413 |
| f81632121_506.returns.push(null); |
| // 43419 |
| f81632121_506.returns.push(null); |
| // 43425 |
| f81632121_506.returns.push(null); |
| // 43430 |
| o20.JSBNG__screenX = 660; |
| // 43431 |
| o20.JSBNG__screenY = 304; |
| // 43432 |
| o20.altKey = false; |
| // 43433 |
| o20.bubbles = true; |
| // 43434 |
| o20.button = 0; |
| // 43435 |
| o20.buttons = void 0; |
| // 43436 |
| o20.cancelable = false; |
| // 43437 |
| o20.clientX = 592; |
| // 43438 |
| o20.clientY = 139; |
| // 43439 |
| o20.ctrlKey = false; |
| // 43440 |
| o20.currentTarget = o0; |
| // 43441 |
| o20.defaultPrevented = false; |
| // 43442 |
| o20.detail = 0; |
| // 43443 |
| o20.eventPhase = 3; |
| // 43444 |
| o20.isTrusted = void 0; |
| // 43445 |
| o20.metaKey = false; |
| // 43446 |
| o20.pageX = 592; |
| // 43447 |
| o20.pageY = 525; |
| // 43448 |
| o20.relatedTarget = null; |
| // 43449 |
| o20.fromElement = null; |
| // 43452 |
| o20.shiftKey = false; |
| // 43455 |
| o20.timeStamp = 1374851260991; |
| // 43456 |
| o20.type = "mousemove"; |
| // 43457 |
| o20.view = ow81632121; |
| // undefined |
| o20 = null; |
| // 43466 |
| f81632121_1852.returns.push(undefined); |
| // 43469 |
| f81632121_14.returns.push(undefined); |
| // 43470 |
| f81632121_12.returns.push(197); |
| // 43473 |
| o20 = {}; |
| // 43477 |
| f81632121_467.returns.push(1374851261007); |
| // 43478 |
| o20.cancelBubble = false; |
| // 43479 |
| o20.returnValue = true; |
| // 43482 |
| o20.srcElement = o183; |
| // 43484 |
| o20.target = o183; |
| // 43491 |
| f81632121_506.returns.push(null); |
| // 43497 |
| f81632121_506.returns.push(null); |
| // 43503 |
| f81632121_506.returns.push(null); |
| // 43509 |
| f81632121_506.returns.push(null); |
| // 43515 |
| f81632121_506.returns.push(null); |
| // 43521 |
| f81632121_506.returns.push(null); |
| // 43527 |
| f81632121_506.returns.push(null); |
| // 43533 |
| f81632121_506.returns.push(null); |
| // 43539 |
| f81632121_506.returns.push(null); |
| // 43545 |
| f81632121_506.returns.push(null); |
| // 43551 |
| f81632121_506.returns.push(null); |
| // 43557 |
| f81632121_506.returns.push(null); |
| // 43563 |
| f81632121_506.returns.push(null); |
| // 43569 |
| f81632121_506.returns.push(null); |
| // 43575 |
| f81632121_506.returns.push(null); |
| // 43580 |
| o20.JSBNG__screenX = 660; |
| // 43581 |
| o20.JSBNG__screenY = 300; |
| // 43582 |
| o20.altKey = false; |
| // 43583 |
| o20.bubbles = true; |
| // 43584 |
| o20.button = 0; |
| // 43585 |
| o20.buttons = void 0; |
| // 43586 |
| o20.cancelable = false; |
| // 43587 |
| o20.clientX = 592; |
| // 43588 |
| o20.clientY = 135; |
| // 43589 |
| o20.ctrlKey = false; |
| // 43590 |
| o20.currentTarget = o0; |
| // 43591 |
| o20.defaultPrevented = false; |
| // 43592 |
| o20.detail = 0; |
| // 43593 |
| o20.eventPhase = 3; |
| // 43594 |
| o20.isTrusted = void 0; |
| // 43595 |
| o20.metaKey = false; |
| // 43596 |
| o20.pageX = 592; |
| // 43597 |
| o20.pageY = 521; |
| // 43598 |
| o20.relatedTarget = null; |
| // 43599 |
| o20.fromElement = null; |
| // 43602 |
| o20.shiftKey = false; |
| // 43605 |
| o20.timeStamp = 1374851261007; |
| // 43606 |
| o20.type = "mousemove"; |
| // 43607 |
| o20.view = ow81632121; |
| // undefined |
| o20 = null; |
| // 43616 |
| f81632121_1852.returns.push(undefined); |
| // 43619 |
| f81632121_14.returns.push(undefined); |
| // 43620 |
| f81632121_12.returns.push(198); |
| // 43623 |
| o20 = {}; |
| // 43626 |
| o20.srcElement = o183; |
| // 43628 |
| o20.target = o183; |
| // 43635 |
| f81632121_506.returns.push(null); |
| // 43641 |
| f81632121_506.returns.push(null); |
| // 43647 |
| f81632121_506.returns.push(null); |
| // 43653 |
| f81632121_506.returns.push(null); |
| // 43659 |
| f81632121_506.returns.push(null); |
| // 43665 |
| f81632121_506.returns.push(null); |
| // 43671 |
| f81632121_506.returns.push(null); |
| // 43677 |
| f81632121_506.returns.push(null); |
| // 43683 |
| f81632121_506.returns.push(null); |
| // 43689 |
| f81632121_506.returns.push(null); |
| // 43695 |
| f81632121_506.returns.push(null); |
| // 43701 |
| f81632121_506.returns.push(null); |
| // 43707 |
| f81632121_506.returns.push(null); |
| // 43713 |
| f81632121_506.returns.push(null); |
| // 43719 |
| f81632121_506.returns.push(null); |
| // 43724 |
| o21 = {}; |
| // 43725 |
| o20.relatedTarget = o21; |
| // 43726 |
| o21.parentNode = o28; |
| // undefined |
| o28 = null; |
| // 43727 |
| o21.nodeType = 1; |
| // 43728 |
| o21.getAttribute = f81632121_506; |
| // 43730 |
| f81632121_506.returns.push(null); |
| // 43736 |
| f81632121_506.returns.push(null); |
| // 43742 |
| f81632121_506.returns.push(null); |
| // 43748 |
| f81632121_506.returns.push(null); |
| // 43754 |
| f81632121_506.returns.push(null); |
| // 43760 |
| f81632121_506.returns.push(null); |
| // 43766 |
| f81632121_506.returns.push(null); |
| // 43772 |
| f81632121_506.returns.push(null); |
| // 43778 |
| f81632121_506.returns.push(null); |
| // 43784 |
| f81632121_506.returns.push(null); |
| // 43790 |
| f81632121_506.returns.push(null); |
| // 43796 |
| f81632121_506.returns.push(null); |
| // 43802 |
| f81632121_506.returns.push(null); |
| // 43808 |
| f81632121_506.returns.push(null); |
| // 43814 |
| f81632121_506.returns.push(null); |
| // 43819 |
| o20.cancelBubble = false; |
| // 43820 |
| o20.returnValue = true; |
| // undefined |
| o20 = null; |
| // 43821 |
| o20 = {}; |
| // 43824 |
| o20.cancelBubble = false; |
| // 43827 |
| f81632121_467.returns.push(1374851261042); |
| // 43830 |
| f81632121_1007.returns.push(undefined); |
| // 43832 |
| o20.returnValue = true; |
| // 43835 |
| o20.srcElement = o21; |
| // 43837 |
| o20.target = o21; |
| // 43844 |
| f81632121_506.returns.push(null); |
| // 43850 |
| f81632121_506.returns.push(null); |
| // 43856 |
| f81632121_506.returns.push(null); |
| // 43862 |
| f81632121_506.returns.push(null); |
| // 43868 |
| f81632121_506.returns.push(null); |
| // 43874 |
| f81632121_506.returns.push(null); |
| // 43880 |
| f81632121_506.returns.push(null); |
| // 43886 |
| f81632121_506.returns.push(null); |
| // 43892 |
| f81632121_506.returns.push(null); |
| // 43898 |
| f81632121_506.returns.push(null); |
| // 43904 |
| f81632121_506.returns.push(null); |
| // 43910 |
| f81632121_506.returns.push(null); |
| // 43916 |
| f81632121_506.returns.push(null); |
| // 43922 |
| f81632121_506.returns.push(null); |
| // 43928 |
| f81632121_506.returns.push(null); |
| // 43933 |
| o20.relatedTarget = o183; |
| // undefined |
| o20 = null; |
| // undefined |
| o183 = null; |
| // 43936 |
| o20 = {}; |
| // 43940 |
| f81632121_467.returns.push(1374851261048); |
| // 43941 |
| o20.cancelBubble = false; |
| // 43942 |
| o20.returnValue = true; |
| // 43945 |
| o20.srcElement = o21; |
| // 43947 |
| o20.target = o21; |
| // 43954 |
| f81632121_506.returns.push(null); |
| // 43960 |
| f81632121_506.returns.push(null); |
| // 43966 |
| f81632121_506.returns.push(null); |
| // 43972 |
| f81632121_506.returns.push(null); |
| // 43978 |
| f81632121_506.returns.push(null); |
| // 43984 |
| f81632121_506.returns.push(null); |
| // 43990 |
| f81632121_506.returns.push(null); |
| // 43996 |
| f81632121_506.returns.push(null); |
| // 44002 |
| f81632121_506.returns.push(null); |
| // 44008 |
| f81632121_506.returns.push(null); |
| // 44014 |
| f81632121_506.returns.push(null); |
| // 44020 |
| f81632121_506.returns.push(null); |
| // 44026 |
| f81632121_506.returns.push(null); |
| // 44032 |
| f81632121_506.returns.push(null); |
| // 44038 |
| f81632121_506.returns.push(null); |
| // 44043 |
| o20.JSBNG__screenX = 660; |
| // 44044 |
| o20.JSBNG__screenY = 290; |
| // 44045 |
| o20.altKey = false; |
| // 44046 |
| o20.bubbles = true; |
| // 44047 |
| o20.button = 0; |
| // 44048 |
| o20.buttons = void 0; |
| // 44049 |
| o20.cancelable = false; |
| // 44050 |
| o20.clientX = 592; |
| // 44051 |
| o20.clientY = 125; |
| // 44052 |
| o20.ctrlKey = false; |
| // 44053 |
| o20.currentTarget = o0; |
| // 44054 |
| o20.defaultPrevented = false; |
| // 44055 |
| o20.detail = 0; |
| // 44056 |
| o20.eventPhase = 3; |
| // 44057 |
| o20.isTrusted = void 0; |
| // 44058 |
| o20.metaKey = false; |
| // 44059 |
| o20.pageX = 592; |
| // 44060 |
| o20.pageY = 511; |
| // 44061 |
| o20.relatedTarget = null; |
| // 44062 |
| o20.fromElement = null; |
| // 44065 |
| o20.shiftKey = false; |
| // 44068 |
| o20.timeStamp = 1374851261047; |
| // 44069 |
| o20.type = "mousemove"; |
| // 44070 |
| o20.view = ow81632121; |
| // undefined |
| o20 = null; |
| // 44079 |
| f81632121_1852.returns.push(undefined); |
| // 44082 |
| f81632121_14.returns.push(undefined); |
| // 44083 |
| f81632121_12.returns.push(199); |
| // 44093 |
| f81632121_467.returns.push(1374851261059); |
| // 44095 |
| f81632121_1007.returns.push(undefined); |
| // 44101 |
| f81632121_467.returns.push(1374851261059); |
| // 44108 |
| f81632121_1852.returns.push(undefined); |
| // 44110 |
| f81632121_14.returns.push(undefined); |
| // 44111 |
| f81632121_12.returns.push(200); |
| // 44112 |
| f81632121_12.returns.push(201); |
| // 44114 |
| o20 = {}; |
| // 44118 |
| f81632121_467.returns.push(1374851261064); |
| // 44119 |
| o20.cancelBubble = false; |
| // 44120 |
| o20.returnValue = true; |
| // 44123 |
| o28 = {}; |
| // 44124 |
| o20.srcElement = o28; |
| // 44126 |
| o20.target = o28; |
| // 44128 |
| o28.nodeType = 1; |
| // 44129 |
| o28.parentNode = o21; |
| // 44131 |
| o28.getAttribute = f81632121_506; |
| // 44133 |
| f81632121_506.returns.push(null); |
| // 44139 |
| f81632121_506.returns.push(null); |
| // 44145 |
| f81632121_506.returns.push(null); |
| // 44151 |
| f81632121_506.returns.push(null); |
| // 44157 |
| f81632121_506.returns.push(null); |
| // 44163 |
| f81632121_506.returns.push(null); |
| // 44169 |
| f81632121_506.returns.push(null); |
| // 44175 |
| f81632121_506.returns.push(null); |
| // 44181 |
| f81632121_506.returns.push(null); |
| // 44187 |
| f81632121_506.returns.push(null); |
| // 44193 |
| f81632121_506.returns.push(null); |
| // 44199 |
| f81632121_506.returns.push(null); |
| // 44205 |
| f81632121_506.returns.push(null); |
| // 44211 |
| f81632121_506.returns.push(null); |
| // 44217 |
| f81632121_506.returns.push(null); |
| // 44223 |
| f81632121_506.returns.push(null); |
| // 44228 |
| o20.JSBNG__screenX = 664; |
| // 44229 |
| o20.JSBNG__screenY = 264; |
| // 44230 |
| o20.altKey = false; |
| // 44231 |
| o20.bubbles = true; |
| // 44232 |
| o20.button = 0; |
| // 44233 |
| o20.buttons = void 0; |
| // 44234 |
| o20.cancelable = false; |
| // 44235 |
| o20.clientX = 596; |
| // 44236 |
| o20.clientY = 99; |
| // 44237 |
| o20.ctrlKey = false; |
| // 44238 |
| o20.currentTarget = o0; |
| // 44239 |
| o20.defaultPrevented = false; |
| // 44240 |
| o20.detail = 0; |
| // 44241 |
| o20.eventPhase = 3; |
| // 44242 |
| o20.isTrusted = void 0; |
| // 44243 |
| o20.metaKey = false; |
| // 44244 |
| o20.pageX = 596; |
| // 44245 |
| o20.pageY = 485; |
| // 44246 |
| o20.relatedTarget = null; |
| // 44247 |
| o20.fromElement = null; |
| // 44250 |
| o20.shiftKey = false; |
| // 44253 |
| o20.timeStamp = 1374851261064; |
| // 44254 |
| o20.type = "mousemove"; |
| // 44255 |
| o20.view = ow81632121; |
| // undefined |
| o20 = null; |
| // 44264 |
| f81632121_1852.returns.push(undefined); |
| // 44267 |
| f81632121_14.returns.push(undefined); |
| // 44268 |
| f81632121_12.returns.push(202); |
| // 44271 |
| o20 = {}; |
| // 44275 |
| f81632121_467.returns.push(1374851261078); |
| // 44276 |
| o20.cancelBubble = false; |
| // 44277 |
| o20.returnValue = true; |
| // 44280 |
| o20.srcElement = o28; |
| // 44282 |
| o20.target = o28; |
| // 44289 |
| f81632121_506.returns.push(null); |
| // 44295 |
| f81632121_506.returns.push(null); |
| // 44301 |
| f81632121_506.returns.push(null); |
| // 44307 |
| f81632121_506.returns.push(null); |
| // 44313 |
| f81632121_506.returns.push(null); |
| // 44319 |
| f81632121_506.returns.push(null); |
| // 44325 |
| f81632121_506.returns.push(null); |
| // 44331 |
| f81632121_506.returns.push(null); |
| // 44337 |
| f81632121_506.returns.push(null); |
| // 44343 |
| f81632121_506.returns.push(null); |
| // 44349 |
| f81632121_506.returns.push(null); |
| // 44355 |
| f81632121_506.returns.push(null); |
| // 44361 |
| f81632121_506.returns.push(null); |
| // 44367 |
| f81632121_506.returns.push(null); |
| // 44373 |
| f81632121_506.returns.push(null); |
| // 44379 |
| f81632121_506.returns.push(null); |
| // 44384 |
| o20.JSBNG__screenX = 665; |
| // 44385 |
| o20.JSBNG__screenY = 261; |
| // 44386 |
| o20.altKey = false; |
| // 44387 |
| o20.bubbles = true; |
| // 44388 |
| o20.button = 0; |
| // 44389 |
| o20.buttons = void 0; |
| // 44390 |
| o20.cancelable = false; |
| // 44391 |
| o20.clientX = 597; |
| // 44392 |
| o20.clientY = 96; |
| // 44393 |
| o20.ctrlKey = false; |
| // 44394 |
| o20.currentTarget = o0; |
| // 44395 |
| o20.defaultPrevented = false; |
| // 44396 |
| o20.detail = 0; |
| // 44397 |
| o20.eventPhase = 3; |
| // 44398 |
| o20.isTrusted = void 0; |
| // 44399 |
| o20.metaKey = false; |
| // 44400 |
| o20.pageX = 597; |
| // 44401 |
| o20.pageY = 482; |
| // 44402 |
| o20.relatedTarget = null; |
| // 44403 |
| o20.fromElement = null; |
| // 44406 |
| o20.shiftKey = false; |
| // 44409 |
| o20.timeStamp = 1374851261077; |
| // 44410 |
| o20.type = "mousemove"; |
| // 44411 |
| o20.view = ow81632121; |
| // undefined |
| o20 = null; |
| // 44420 |
| f81632121_1852.returns.push(undefined); |
| // 44423 |
| f81632121_14.returns.push(undefined); |
| // 44424 |
| f81632121_12.returns.push(203); |
| // 44427 |
| o20 = {}; |
| // 44431 |
| f81632121_467.returns.push(1374851261084); |
| // 44432 |
| o20.cancelBubble = false; |
| // 44433 |
| o20.returnValue = true; |
| // 44436 |
| o20.srcElement = o28; |
| // 44438 |
| o20.target = o28; |
| // 44445 |
| f81632121_506.returns.push(null); |
| // 44451 |
| f81632121_506.returns.push(null); |
| // 44457 |
| f81632121_506.returns.push(null); |
| // 44463 |
| f81632121_506.returns.push(null); |
| // 44469 |
| f81632121_506.returns.push(null); |
| // 44475 |
| f81632121_506.returns.push(null); |
| // 44481 |
| f81632121_506.returns.push(null); |
| // 44487 |
| f81632121_506.returns.push(null); |
| // 44493 |
| f81632121_506.returns.push(null); |
| // 44499 |
| f81632121_506.returns.push(null); |
| // 44505 |
| f81632121_506.returns.push(null); |
| // 44511 |
| f81632121_506.returns.push(null); |
| // 44517 |
| f81632121_506.returns.push(null); |
| // 44523 |
| f81632121_506.returns.push(null); |
| // 44529 |
| f81632121_506.returns.push(null); |
| // 44535 |
| f81632121_506.returns.push(null); |
| // 44540 |
| o20.JSBNG__screenX = 665; |
| // 44541 |
| o20.JSBNG__screenY = 260; |
| // 44542 |
| o20.altKey = false; |
| // 44543 |
| o20.bubbles = true; |
| // 44544 |
| o20.button = 0; |
| // 44545 |
| o20.buttons = void 0; |
| // 44546 |
| o20.cancelable = false; |
| // 44547 |
| o20.clientX = 597; |
| // 44548 |
| o20.clientY = 95; |
| // 44549 |
| o20.ctrlKey = false; |
| // 44550 |
| o20.currentTarget = o0; |
| // 44551 |
| o20.defaultPrevented = false; |
| // 44552 |
| o20.detail = 0; |
| // 44553 |
| o20.eventPhase = 3; |
| // 44554 |
| o20.isTrusted = void 0; |
| // 44555 |
| o20.metaKey = false; |
| // 44556 |
| o20.pageX = 597; |
| // 44557 |
| o20.pageY = 481; |
| // 44558 |
| o20.relatedTarget = null; |
| // 44559 |
| o20.fromElement = null; |
| // 44562 |
| o20.shiftKey = false; |
| // 44565 |
| o20.timeStamp = 1374851261084; |
| // 44566 |
| o20.type = "mousemove"; |
| // 44567 |
| o20.view = ow81632121; |
| // undefined |
| o20 = null; |
| // 44576 |
| f81632121_1852.returns.push(undefined); |
| // 44579 |
| f81632121_14.returns.push(undefined); |
| // 44580 |
| f81632121_12.returns.push(204); |
| // 44583 |
| o20 = {}; |
| // 44587 |
| f81632121_467.returns.push(1374851261094); |
| // 44588 |
| o20.cancelBubble = false; |
| // 44589 |
| o20.returnValue = true; |
| // 44592 |
| o20.srcElement = o28; |
| // 44594 |
| o20.target = o28; |
| // 44601 |
| f81632121_506.returns.push(null); |
| // 44607 |
| f81632121_506.returns.push(null); |
| // 44613 |
| f81632121_506.returns.push(null); |
| // 44619 |
| f81632121_506.returns.push(null); |
| // 44625 |
| f81632121_506.returns.push(null); |
| // 44631 |
| f81632121_506.returns.push(null); |
| // 44637 |
| f81632121_506.returns.push(null); |
| // 44643 |
| f81632121_506.returns.push(null); |
| // 44649 |
| f81632121_506.returns.push(null); |
| // 44655 |
| f81632121_506.returns.push(null); |
| // 44661 |
| f81632121_506.returns.push(null); |
| // 44667 |
| f81632121_506.returns.push(null); |
| // 44673 |
| f81632121_506.returns.push(null); |
| // 44679 |
| f81632121_506.returns.push(null); |
| // 44685 |
| f81632121_506.returns.push(null); |
| // 44691 |
| f81632121_506.returns.push(null); |
| // 44696 |
| o20.JSBNG__screenX = 665; |
| // 44697 |
| o20.JSBNG__screenY = 258; |
| // 44698 |
| o20.altKey = false; |
| // 44699 |
| o20.bubbles = true; |
| // 44700 |
| o20.button = 0; |
| // 44701 |
| o20.buttons = void 0; |
| // 44702 |
| o20.cancelable = false; |
| // 44703 |
| o20.clientX = 597; |
| // 44704 |
| o20.clientY = 93; |
| // 44705 |
| o20.ctrlKey = false; |
| // 44706 |
| o20.currentTarget = o0; |
| // 44707 |
| o20.defaultPrevented = false; |
| // 44708 |
| o20.detail = 0; |
| // 44709 |
| o20.eventPhase = 3; |
| // 44710 |
| o20.isTrusted = void 0; |
| // 44711 |
| o20.metaKey = false; |
| // 44712 |
| o20.pageX = 597; |
| // 44713 |
| o20.pageY = 479; |
| // 44714 |
| o20.relatedTarget = null; |
| // 44715 |
| o20.fromElement = null; |
| // 44718 |
| o20.shiftKey = false; |
| // 44721 |
| o20.timeStamp = 1374851261093; |
| // 44722 |
| o20.type = "mousemove"; |
| // 44723 |
| o20.view = ow81632121; |
| // undefined |
| o20 = null; |
| // 44732 |
| f81632121_1852.returns.push(undefined); |
| // 44735 |
| f81632121_14.returns.push(undefined); |
| // 44736 |
| f81632121_12.returns.push(205); |
| // 44739 |
| o20 = {}; |
| // 44743 |
| f81632121_467.returns.push(1374851261102); |
| // 44744 |
| o20.cancelBubble = false; |
| // 44745 |
| o20.returnValue = true; |
| // 44748 |
| o20.srcElement = o28; |
| // 44750 |
| o20.target = o28; |
| // 44757 |
| f81632121_506.returns.push(null); |
| // 44763 |
| f81632121_506.returns.push(null); |
| // 44769 |
| f81632121_506.returns.push(null); |
| // 44775 |
| f81632121_506.returns.push(null); |
| // 44781 |
| f81632121_506.returns.push(null); |
| // 44787 |
| f81632121_506.returns.push(null); |
| // 44793 |
| f81632121_506.returns.push(null); |
| // 44799 |
| f81632121_506.returns.push(null); |
| // 44805 |
| f81632121_506.returns.push(null); |
| // 44811 |
| f81632121_506.returns.push(null); |
| // 44817 |
| f81632121_506.returns.push(null); |
| // 44823 |
| f81632121_506.returns.push(null); |
| // 44829 |
| f81632121_506.returns.push(null); |
| // 44835 |
| f81632121_506.returns.push(null); |
| // 44841 |
| f81632121_506.returns.push(null); |
| // 44847 |
| f81632121_506.returns.push(null); |
| // 44852 |
| o20.JSBNG__screenX = 665; |
| // 44853 |
| o20.JSBNG__screenY = 257; |
| // 44854 |
| o20.altKey = false; |
| // 44855 |
| o20.bubbles = true; |
| // 44856 |
| o20.button = 0; |
| // 44857 |
| o20.buttons = void 0; |
| // 44858 |
| o20.cancelable = false; |
| // 44859 |
| o20.clientX = 597; |
| // 44860 |
| o20.clientY = 92; |
| // 44861 |
| o20.ctrlKey = false; |
| // 44862 |
| o20.currentTarget = o0; |
| // 44863 |
| o20.defaultPrevented = false; |
| // 44864 |
| o20.detail = 0; |
| // 44865 |
| o20.eventPhase = 3; |
| // 44866 |
| o20.isTrusted = void 0; |
| // 44867 |
| o20.metaKey = false; |
| // 44868 |
| o20.pageX = 597; |
| // 44869 |
| o20.pageY = 478; |
| // 44870 |
| o20.relatedTarget = null; |
| // 44871 |
| o20.fromElement = null; |
| // 44874 |
| o20.shiftKey = false; |
| // 44877 |
| o20.timeStamp = 1374851261102; |
| // 44878 |
| o20.type = "mousemove"; |
| // 44879 |
| o20.view = ow81632121; |
| // undefined |
| o20 = null; |
| // 44888 |
| f81632121_1852.returns.push(undefined); |
| // 44891 |
| f81632121_14.returns.push(undefined); |
| // 44892 |
| f81632121_12.returns.push(206); |
| // 44895 |
| o20 = {}; |
| // 44899 |
| f81632121_467.returns.push(1374851261112); |
| // 44900 |
| o20.cancelBubble = false; |
| // 44901 |
| o20.returnValue = true; |
| // 44904 |
| o20.srcElement = o28; |
| // 44906 |
| o20.target = o28; |
| // 44913 |
| f81632121_506.returns.push(null); |
| // 44919 |
| f81632121_506.returns.push(null); |
| // 44925 |
| f81632121_506.returns.push(null); |
| // 44931 |
| f81632121_506.returns.push(null); |
| // 44937 |
| f81632121_506.returns.push(null); |
| // 44943 |
| f81632121_506.returns.push(null); |
| // 44949 |
| f81632121_506.returns.push(null); |
| // 44955 |
| f81632121_506.returns.push(null); |
| // 44961 |
| f81632121_506.returns.push(null); |
| // 44967 |
| f81632121_506.returns.push(null); |
| // 44973 |
| f81632121_506.returns.push(null); |
| // 44979 |
| f81632121_506.returns.push(null); |
| // 44985 |
| f81632121_506.returns.push(null); |
| // 44991 |
| f81632121_506.returns.push(null); |
| // 44997 |
| f81632121_506.returns.push(null); |
| // 45003 |
| f81632121_506.returns.push(null); |
| // 45008 |
| o20.JSBNG__screenX = 666; |
| // 45009 |
| o20.JSBNG__screenY = 256; |
| // 45010 |
| o20.altKey = false; |
| // 45011 |
| o20.bubbles = true; |
| // 45012 |
| o20.button = 0; |
| // 45013 |
| o20.buttons = void 0; |
| // 45014 |
| o20.cancelable = false; |
| // 45015 |
| o20.clientX = 598; |
| // 45016 |
| o20.clientY = 91; |
| // 45017 |
| o20.ctrlKey = false; |
| // 45018 |
| o20.currentTarget = o0; |
| // 45019 |
| o20.defaultPrevented = false; |
| // 45020 |
| o20.detail = 0; |
| // 45021 |
| o20.eventPhase = 3; |
| // 45022 |
| o20.isTrusted = void 0; |
| // 45023 |
| o20.metaKey = false; |
| // 45024 |
| o20.pageX = 598; |
| // 45025 |
| o20.pageY = 477; |
| // 45026 |
| o20.relatedTarget = null; |
| // 45027 |
| o20.fromElement = null; |
| // 45030 |
| o20.shiftKey = false; |
| // 45033 |
| o20.timeStamp = 1374851261111; |
| // 45034 |
| o20.type = "mousemove"; |
| // 45035 |
| o20.view = ow81632121; |
| // undefined |
| o20 = null; |
| // 45044 |
| f81632121_1852.returns.push(undefined); |
| // 45047 |
| f81632121_14.returns.push(undefined); |
| // 45048 |
| f81632121_12.returns.push(207); |
| // 45051 |
| o20 = {}; |
| // 45055 |
| f81632121_467.returns.push(1374851261121); |
| // 45056 |
| o20.cancelBubble = false; |
| // 45057 |
| o20.returnValue = true; |
| // 45060 |
| o20.srcElement = o28; |
| // 45062 |
| o20.target = o28; |
| // 45069 |
| f81632121_506.returns.push(null); |
| // 45075 |
| f81632121_506.returns.push(null); |
| // 45081 |
| f81632121_506.returns.push(null); |
| // 45087 |
| f81632121_506.returns.push(null); |
| // 45093 |
| f81632121_506.returns.push(null); |
| // 45099 |
| f81632121_506.returns.push(null); |
| // 45105 |
| f81632121_506.returns.push(null); |
| // 45111 |
| f81632121_506.returns.push(null); |
| // 45117 |
| f81632121_506.returns.push(null); |
| // 45123 |
| f81632121_506.returns.push(null); |
| // 45129 |
| f81632121_506.returns.push(null); |
| // 45135 |
| f81632121_506.returns.push(null); |
| // 45141 |
| f81632121_506.returns.push(null); |
| // 45147 |
| f81632121_506.returns.push(null); |
| // 45153 |
| f81632121_506.returns.push(null); |
| // 45159 |
| f81632121_506.returns.push(null); |
| // 45164 |
| o20.JSBNG__screenX = 666; |
| // 45165 |
| o20.JSBNG__screenY = 255; |
| // 45166 |
| o20.altKey = false; |
| // 45167 |
| o20.bubbles = true; |
| // 45168 |
| o20.button = 0; |
| // 45169 |
| o20.buttons = void 0; |
| // 45170 |
| o20.cancelable = false; |
| // 45171 |
| o20.clientX = 598; |
| // 45172 |
| o20.clientY = 90; |
| // 45173 |
| o20.ctrlKey = false; |
| // 45174 |
| o20.currentTarget = o0; |
| // 45175 |
| o20.defaultPrevented = false; |
| // 45176 |
| o20.detail = 0; |
| // 45177 |
| o20.eventPhase = 3; |
| // 45178 |
| o20.isTrusted = void 0; |
| // 45179 |
| o20.metaKey = false; |
| // 45180 |
| o20.pageX = 598; |
| // 45181 |
| o20.pageY = 476; |
| // 45182 |
| o20.relatedTarget = null; |
| // 45183 |
| o20.fromElement = null; |
| // 45186 |
| o20.shiftKey = false; |
| // 45189 |
| o20.timeStamp = 1374851261121; |
| // 45190 |
| o20.type = "mousemove"; |
| // 45191 |
| o20.view = ow81632121; |
| // undefined |
| o20 = null; |
| // 45200 |
| f81632121_1852.returns.push(undefined); |
| // 45203 |
| f81632121_14.returns.push(undefined); |
| // 45204 |
| f81632121_12.returns.push(208); |
| // 45207 |
| o20 = {}; |
| // 45211 |
| f81632121_467.returns.push(1374851261132); |
| // 45212 |
| o20.cancelBubble = false; |
| // 45213 |
| o20.returnValue = true; |
| // 45216 |
| o20.srcElement = o28; |
| // 45218 |
| o20.target = o28; |
| // 45225 |
| f81632121_506.returns.push(null); |
| // 45231 |
| f81632121_506.returns.push(null); |
| // 45237 |
| f81632121_506.returns.push(null); |
| // 45243 |
| f81632121_506.returns.push(null); |
| // 45249 |
| f81632121_506.returns.push(null); |
| // 45255 |
| f81632121_506.returns.push(null); |
| // 45261 |
| f81632121_506.returns.push(null); |
| // 45267 |
| f81632121_506.returns.push(null); |
| // 45273 |
| f81632121_506.returns.push(null); |
| // 45279 |
| f81632121_506.returns.push(null); |
| // 45285 |
| f81632121_506.returns.push(null); |
| // 45291 |
| f81632121_506.returns.push(null); |
| // 45297 |
| f81632121_506.returns.push(null); |
| // 45303 |
| f81632121_506.returns.push(null); |
| // 45309 |
| f81632121_506.returns.push(null); |
| // 45315 |
| f81632121_506.returns.push(null); |
| // 45320 |
| o20.JSBNG__screenX = 667; |
| // 45321 |
| o20.JSBNG__screenY = 255; |
| // 45322 |
| o20.altKey = false; |
| // 45323 |
| o20.bubbles = true; |
| // 45324 |
| o20.button = 0; |
| // 45325 |
| o20.buttons = void 0; |
| // 45326 |
| o20.cancelable = false; |
| // 45327 |
| o20.clientX = 599; |
| // 45328 |
| o20.clientY = 90; |
| // 45329 |
| o20.ctrlKey = false; |
| // 45330 |
| o20.currentTarget = o0; |
| // 45331 |
| o20.defaultPrevented = false; |
| // 45332 |
| o20.detail = 0; |
| // 45333 |
| o20.eventPhase = 3; |
| // 45334 |
| o20.isTrusted = void 0; |
| // 45335 |
| o20.metaKey = false; |
| // 45336 |
| o20.pageX = 599; |
| // 45337 |
| o20.pageY = 476; |
| // 45338 |
| o20.relatedTarget = null; |
| // 45339 |
| o20.fromElement = null; |
| // 45342 |
| o20.shiftKey = false; |
| // 45345 |
| o20.timeStamp = 1374851261128; |
| // 45346 |
| o20.type = "mousemove"; |
| // 45347 |
| o20.view = ow81632121; |
| // undefined |
| o20 = null; |
| // 45356 |
| f81632121_1852.returns.push(undefined); |
| // 45359 |
| f81632121_14.returns.push(undefined); |
| // 45360 |
| f81632121_12.returns.push(209); |
| // 45363 |
| o20 = {}; |
| // 45367 |
| f81632121_467.returns.push(1374851261145); |
| // 45368 |
| o20.cancelBubble = false; |
| // 45369 |
| o20.returnValue = true; |
| // 45372 |
| o20.srcElement = o28; |
| // 45374 |
| o20.target = o28; |
| // 45381 |
| f81632121_506.returns.push(null); |
| // 45387 |
| f81632121_506.returns.push(null); |
| // 45393 |
| f81632121_506.returns.push(null); |
| // 45399 |
| f81632121_506.returns.push(null); |
| // 45405 |
| f81632121_506.returns.push(null); |
| // 45411 |
| f81632121_506.returns.push(null); |
| // 45417 |
| f81632121_506.returns.push(null); |
| // 45423 |
| f81632121_506.returns.push(null); |
| // 45429 |
| f81632121_506.returns.push(null); |
| // 45435 |
| f81632121_506.returns.push(null); |
| // 45441 |
| f81632121_506.returns.push(null); |
| // 45447 |
| f81632121_506.returns.push(null); |
| // 45453 |
| f81632121_506.returns.push(null); |
| // 45459 |
| f81632121_506.returns.push(null); |
| // 45465 |
| f81632121_506.returns.push(null); |
| // 45471 |
| f81632121_506.returns.push(null); |
| // 45476 |
| o20.JSBNG__screenX = 668; |
| // 45477 |
| o20.JSBNG__screenY = 254; |
| // 45478 |
| o20.altKey = false; |
| // 45479 |
| o20.bubbles = true; |
| // 45480 |
| o20.button = 0; |
| // 45481 |
| o20.buttons = void 0; |
| // 45482 |
| o20.cancelable = false; |
| // 45483 |
| o20.clientX = 600; |
| // 45484 |
| o20.clientY = 89; |
| // 45485 |
| o20.ctrlKey = false; |
| // 45486 |
| o20.currentTarget = o0; |
| // 45487 |
| o20.defaultPrevented = false; |
| // 45488 |
| o20.detail = 0; |
| // 45489 |
| o20.eventPhase = 3; |
| // 45490 |
| o20.isTrusted = void 0; |
| // 45491 |
| o20.metaKey = false; |
| // 45492 |
| o20.pageX = 600; |
| // 45493 |
| o20.pageY = 475; |
| // 45494 |
| o20.relatedTarget = null; |
| // 45495 |
| o20.fromElement = null; |
| // 45498 |
| o20.shiftKey = false; |
| // 45501 |
| o20.timeStamp = 1374851261144; |
| // 45502 |
| o20.type = "mousemove"; |
| // 45503 |
| o20.view = ow81632121; |
| // undefined |
| o20 = null; |
| // 45512 |
| f81632121_1852.returns.push(undefined); |
| // 45515 |
| f81632121_14.returns.push(undefined); |
| // 45516 |
| f81632121_12.returns.push(210); |
| // 45519 |
| o20 = {}; |
| // 45523 |
| f81632121_467.returns.push(1374851261157); |
| // 45524 |
| o20.cancelBubble = false; |
| // 45525 |
| o20.returnValue = true; |
| // 45528 |
| o20.srcElement = o28; |
| // 45530 |
| o20.target = o28; |
| // 45537 |
| f81632121_506.returns.push(null); |
| // 45543 |
| f81632121_506.returns.push(null); |
| // 45549 |
| f81632121_506.returns.push(null); |
| // 45555 |
| f81632121_506.returns.push(null); |
| // 45561 |
| f81632121_506.returns.push(null); |
| // 45567 |
| f81632121_506.returns.push(null); |
| // 45573 |
| f81632121_506.returns.push(null); |
| // 45579 |
| f81632121_506.returns.push(null); |
| // 45585 |
| f81632121_506.returns.push(null); |
| // 45591 |
| f81632121_506.returns.push(null); |
| // 45597 |
| f81632121_506.returns.push(null); |
| // 45603 |
| f81632121_506.returns.push(null); |
| // 45609 |
| f81632121_506.returns.push(null); |
| // 45615 |
| f81632121_506.returns.push(null); |
| // 45621 |
| f81632121_506.returns.push(null); |
| // 45627 |
| f81632121_506.returns.push(null); |
| // 45632 |
| o20.JSBNG__screenX = 668; |
| // 45633 |
| o20.JSBNG__screenY = 253; |
| // 45634 |
| o20.altKey = false; |
| // 45635 |
| o20.bubbles = true; |
| // 45636 |
| o20.button = 0; |
| // 45637 |
| o20.buttons = void 0; |
| // 45638 |
| o20.cancelable = false; |
| // 45639 |
| o20.clientX = 600; |
| // 45640 |
| o20.clientY = 88; |
| // 45641 |
| o20.ctrlKey = false; |
| // 45642 |
| o20.currentTarget = o0; |
| // 45643 |
| o20.defaultPrevented = false; |
| // 45644 |
| o20.detail = 0; |
| // 45645 |
| o20.eventPhase = 3; |
| // 45646 |
| o20.isTrusted = void 0; |
| // 45647 |
| o20.metaKey = false; |
| // 45648 |
| o20.pageX = 600; |
| // 45649 |
| o20.pageY = 474; |
| // 45650 |
| o20.relatedTarget = null; |
| // 45651 |
| o20.fromElement = null; |
| // 45654 |
| o20.shiftKey = false; |
| // 45657 |
| o20.timeStamp = 1374851261152; |
| // 45658 |
| o20.type = "mousemove"; |
| // 45659 |
| o20.view = ow81632121; |
| // undefined |
| o20 = null; |
| // 45668 |
| f81632121_1852.returns.push(undefined); |
| // 45671 |
| f81632121_14.returns.push(undefined); |
| // 45672 |
| f81632121_12.returns.push(211); |
| // 45675 |
| o20 = {}; |
| // 45679 |
| f81632121_467.returns.push(1374851261165); |
| // 45680 |
| o20.cancelBubble = false; |
| // 45681 |
| o20.returnValue = true; |
| // 45684 |
| o20.srcElement = o28; |
| // 45686 |
| o20.target = o28; |
| // 45693 |
| f81632121_506.returns.push(null); |
| // 45699 |
| f81632121_506.returns.push(null); |
| // 45705 |
| f81632121_506.returns.push(null); |
| // 45711 |
| f81632121_506.returns.push(null); |
| // 45717 |
| f81632121_506.returns.push(null); |
| // 45723 |
| f81632121_506.returns.push(null); |
| // 45729 |
| f81632121_506.returns.push(null); |
| // 45735 |
| f81632121_506.returns.push(null); |
| // 45741 |
| f81632121_506.returns.push(null); |
| // 45747 |
| f81632121_506.returns.push(null); |
| // 45753 |
| f81632121_506.returns.push(null); |
| // 45759 |
| f81632121_506.returns.push(null); |
| // 45765 |
| f81632121_506.returns.push(null); |
| // 45771 |
| f81632121_506.returns.push(null); |
| // 45777 |
| f81632121_506.returns.push(null); |
| // 45783 |
| f81632121_506.returns.push(null); |
| // 45788 |
| o20.JSBNG__screenX = 669; |
| // 45789 |
| o20.JSBNG__screenY = 251; |
| // 45790 |
| o20.altKey = false; |
| // 45791 |
| o20.bubbles = true; |
| // 45792 |
| o20.button = 0; |
| // 45793 |
| o20.buttons = void 0; |
| // 45794 |
| o20.cancelable = false; |
| // 45795 |
| o20.clientX = 601; |
| // 45796 |
| o20.clientY = 86; |
| // 45797 |
| o20.ctrlKey = false; |
| // 45798 |
| o20.currentTarget = o0; |
| // 45799 |
| o20.defaultPrevented = false; |
| // 45800 |
| o20.detail = 0; |
| // 45801 |
| o20.eventPhase = 3; |
| // 45802 |
| o20.isTrusted = void 0; |
| // 45803 |
| o20.metaKey = false; |
| // 45804 |
| o20.pageX = 601; |
| // 45805 |
| o20.pageY = 472; |
| // 45806 |
| o20.relatedTarget = null; |
| // 45807 |
| o20.fromElement = null; |
| // 45810 |
| o20.shiftKey = false; |
| // 45813 |
| o20.timeStamp = 1374851261165; |
| // 45814 |
| o20.type = "mousemove"; |
| // 45815 |
| o20.view = ow81632121; |
| // undefined |
| o20 = null; |
| // 45824 |
| f81632121_1852.returns.push(undefined); |
| // 45827 |
| f81632121_14.returns.push(undefined); |
| // 45828 |
| f81632121_12.returns.push(212); |
| // 45831 |
| o20 = {}; |
| // 45835 |
| f81632121_467.returns.push(1374851261172); |
| // 45836 |
| o20.cancelBubble = false; |
| // 45837 |
| o20.returnValue = true; |
| // 45840 |
| o20.srcElement = o28; |
| // 45842 |
| o20.target = o28; |
| // 45849 |
| f81632121_506.returns.push(null); |
| // 45855 |
| f81632121_506.returns.push(null); |
| // 45861 |
| f81632121_506.returns.push(null); |
| // 45867 |
| f81632121_506.returns.push(null); |
| // 45873 |
| f81632121_506.returns.push(null); |
| // 45879 |
| f81632121_506.returns.push(null); |
| // 45885 |
| f81632121_506.returns.push(null); |
| // 45891 |
| f81632121_506.returns.push(null); |
| // 45897 |
| f81632121_506.returns.push(null); |
| // 45903 |
| f81632121_506.returns.push(null); |
| // 45909 |
| f81632121_506.returns.push(null); |
| // 45915 |
| f81632121_506.returns.push(null); |
| // 45921 |
| f81632121_506.returns.push(null); |
| // 45927 |
| f81632121_506.returns.push(null); |
| // 45933 |
| f81632121_506.returns.push(null); |
| // 45939 |
| f81632121_506.returns.push(null); |
| // 45944 |
| o20.JSBNG__screenX = 670; |
| // 45945 |
| o20.JSBNG__screenY = 251; |
| // 45946 |
| o20.altKey = false; |
| // 45947 |
| o20.bubbles = true; |
| // 45948 |
| o20.button = 0; |
| // 45949 |
| o20.buttons = void 0; |
| // 45950 |
| o20.cancelable = false; |
| // 45951 |
| o20.clientX = 602; |
| // 45952 |
| o20.clientY = 86; |
| // 45953 |
| o20.ctrlKey = false; |
| // 45954 |
| o20.currentTarget = o0; |
| // 45955 |
| o20.defaultPrevented = false; |
| // 45956 |
| o20.detail = 0; |
| // 45957 |
| o20.eventPhase = 3; |
| // 45958 |
| o20.isTrusted = void 0; |
| // 45959 |
| o20.metaKey = false; |
| // 45960 |
| o20.pageX = 602; |
| // 45961 |
| o20.pageY = 472; |
| // 45962 |
| o20.relatedTarget = null; |
| // 45963 |
| o20.fromElement = null; |
| // 45966 |
| o20.shiftKey = false; |
| // 45969 |
| o20.timeStamp = 1374851261172; |
| // 45970 |
| o20.type = "mousemove"; |
| // 45971 |
| o20.view = ow81632121; |
| // undefined |
| o20 = null; |
| // 45980 |
| f81632121_1852.returns.push(undefined); |
| // 45983 |
| f81632121_14.returns.push(undefined); |
| // 45984 |
| f81632121_12.returns.push(213); |
| // 45987 |
| o20 = {}; |
| // 45991 |
| f81632121_467.returns.push(1374851261182); |
| // 45992 |
| o20.cancelBubble = false; |
| // 45993 |
| o20.returnValue = true; |
| // 45996 |
| o20.srcElement = o28; |
| // 45998 |
| o20.target = o28; |
| // 46005 |
| f81632121_506.returns.push(null); |
| // 46011 |
| f81632121_506.returns.push(null); |
| // 46017 |
| f81632121_506.returns.push(null); |
| // 46023 |
| f81632121_506.returns.push(null); |
| // 46029 |
| f81632121_506.returns.push(null); |
| // 46035 |
| f81632121_506.returns.push(null); |
| // 46041 |
| f81632121_506.returns.push(null); |
| // 46047 |
| f81632121_506.returns.push(null); |
| // 46053 |
| f81632121_506.returns.push(null); |
| // 46059 |
| f81632121_506.returns.push(null); |
| // 46065 |
| f81632121_506.returns.push(null); |
| // 46071 |
| f81632121_506.returns.push(null); |
| // 46077 |
| f81632121_506.returns.push(null); |
| // 46083 |
| f81632121_506.returns.push(null); |
| // 46089 |
| f81632121_506.returns.push(null); |
| // 46095 |
| f81632121_506.returns.push(null); |
| // 46100 |
| o20.JSBNG__screenX = 671; |
| // 46101 |
| o20.JSBNG__screenY = 249; |
| // 46102 |
| o20.altKey = false; |
| // 46103 |
| o20.bubbles = true; |
| // 46104 |
| o20.button = 0; |
| // 46105 |
| o20.buttons = void 0; |
| // 46106 |
| o20.cancelable = false; |
| // 46107 |
| o20.clientX = 603; |
| // 46108 |
| o20.clientY = 84; |
| // 46109 |
| o20.ctrlKey = false; |
| // 46110 |
| o20.currentTarget = o0; |
| // 46111 |
| o20.defaultPrevented = false; |
| // 46112 |
| o20.detail = 0; |
| // 46113 |
| o20.eventPhase = 3; |
| // 46114 |
| o20.isTrusted = void 0; |
| // 46115 |
| o20.metaKey = false; |
| // 46116 |
| o20.pageX = 603; |
| // 46117 |
| o20.pageY = 470; |
| // 46118 |
| o20.relatedTarget = null; |
| // 46119 |
| o20.fromElement = null; |
| // 46122 |
| o20.shiftKey = false; |
| // 46125 |
| o20.timeStamp = 1374851261182; |
| // 46126 |
| o20.type = "mousemove"; |
| // 46127 |
| o20.view = ow81632121; |
| // undefined |
| o20 = null; |
| // 46136 |
| f81632121_1852.returns.push(undefined); |
| // 46139 |
| f81632121_14.returns.push(undefined); |
| // 46140 |
| f81632121_12.returns.push(214); |
| // 46143 |
| o20 = {}; |
| // 46147 |
| f81632121_467.returns.push(1374851261188); |
| // 46148 |
| o20.cancelBubble = false; |
| // 46149 |
| o20.returnValue = true; |
| // 46152 |
| o20.srcElement = o28; |
| // 46154 |
| o20.target = o28; |
| // 46161 |
| f81632121_506.returns.push(null); |
| // 46167 |
| f81632121_506.returns.push(null); |
| // 46173 |
| f81632121_506.returns.push(null); |
| // 46179 |
| f81632121_506.returns.push(null); |
| // 46185 |
| f81632121_506.returns.push(null); |
| // 46191 |
| f81632121_506.returns.push(null); |
| // 46197 |
| f81632121_506.returns.push(null); |
| // 46203 |
| f81632121_506.returns.push(null); |
| // 46209 |
| f81632121_506.returns.push(null); |
| // 46215 |
| f81632121_506.returns.push(null); |
| // 46221 |
| f81632121_506.returns.push(null); |
| // 46227 |
| f81632121_506.returns.push(null); |
| // 46233 |
| f81632121_506.returns.push(null); |
| // 46239 |
| f81632121_506.returns.push(null); |
| // 46245 |
| f81632121_506.returns.push(null); |
| // 46251 |
| f81632121_506.returns.push(null); |
| // 46256 |
| o20.JSBNG__screenX = 673; |
| // 46257 |
| o20.JSBNG__screenY = 247; |
| // 46258 |
| o20.altKey = false; |
| // 46259 |
| o20.bubbles = true; |
| // 46260 |
| o20.button = 0; |
| // 46261 |
| o20.buttons = void 0; |
| // 46262 |
| o20.cancelable = false; |
| // 46263 |
| o20.clientX = 605; |
| // 46264 |
| o20.clientY = 82; |
| // 46265 |
| o20.ctrlKey = false; |
| // 46266 |
| o20.currentTarget = o0; |
| // 46267 |
| o20.defaultPrevented = false; |
| // 46268 |
| o20.detail = 0; |
| // 46269 |
| o20.eventPhase = 3; |
| // 46270 |
| o20.isTrusted = void 0; |
| // 46271 |
| o20.metaKey = false; |
| // 46272 |
| o20.pageX = 605; |
| // 46273 |
| o20.pageY = 468; |
| // 46274 |
| o20.relatedTarget = null; |
| // 46275 |
| o20.fromElement = null; |
| // 46278 |
| o20.shiftKey = false; |
| // 46281 |
| o20.timeStamp = 1374851261188; |
| // 46282 |
| o20.type = "mousemove"; |
| // 46283 |
| o20.view = ow81632121; |
| // undefined |
| o20 = null; |
| // 46292 |
| f81632121_1852.returns.push(undefined); |
| // 46295 |
| f81632121_14.returns.push(undefined); |
| // 46296 |
| f81632121_12.returns.push(215); |
| // 46299 |
| o20 = {}; |
| // 46303 |
| f81632121_467.returns.push(1374851261203); |
| // 46304 |
| o20.cancelBubble = false; |
| // 46305 |
| o20.returnValue = true; |
| // 46308 |
| o20.srcElement = o28; |
| // 46310 |
| o20.target = o28; |
| // 46317 |
| f81632121_506.returns.push(null); |
| // 46323 |
| f81632121_506.returns.push(null); |
| // 46329 |
| f81632121_506.returns.push(null); |
| // 46335 |
| f81632121_506.returns.push(null); |
| // 46341 |
| f81632121_506.returns.push(null); |
| // 46347 |
| f81632121_506.returns.push(null); |
| // 46353 |
| f81632121_506.returns.push(null); |
| // 46359 |
| f81632121_506.returns.push(null); |
| // 46365 |
| f81632121_506.returns.push(null); |
| // 46371 |
| f81632121_506.returns.push(null); |
| // 46377 |
| f81632121_506.returns.push(null); |
| // 46383 |
| f81632121_506.returns.push(null); |
| // 46389 |
| f81632121_506.returns.push(null); |
| // 46395 |
| f81632121_506.returns.push(null); |
| // 46401 |
| f81632121_506.returns.push(null); |
| // 46407 |
| f81632121_506.returns.push(null); |
| // 46412 |
| o20.JSBNG__screenX = 675; |
| // 46413 |
| o20.JSBNG__screenY = 244; |
| // 46414 |
| o20.altKey = false; |
| // 46415 |
| o20.bubbles = true; |
| // 46416 |
| o20.button = 0; |
| // 46417 |
| o20.buttons = void 0; |
| // 46418 |
| o20.cancelable = false; |
| // 46419 |
| o20.clientX = 607; |
| // 46420 |
| o20.clientY = 79; |
| // 46421 |
| o20.ctrlKey = false; |
| // 46422 |
| o20.currentTarget = o0; |
| // 46423 |
| o20.defaultPrevented = false; |
| // 46424 |
| o20.detail = 0; |
| // 46425 |
| o20.eventPhase = 3; |
| // 46426 |
| o20.isTrusted = void 0; |
| // 46427 |
| o20.metaKey = false; |
| // 46428 |
| o20.pageX = 607; |
| // 46429 |
| o20.pageY = 465; |
| // 46430 |
| o20.relatedTarget = null; |
| // 46431 |
| o20.fromElement = null; |
| // 46434 |
| o20.shiftKey = false; |
| // 46437 |
| o20.timeStamp = 1374851261203; |
| // 46438 |
| o20.type = "mousemove"; |
| // 46439 |
| o20.view = ow81632121; |
| // undefined |
| o20 = null; |
| // 46448 |
| f81632121_1852.returns.push(undefined); |
| // 46451 |
| f81632121_14.returns.push(undefined); |
| // 46452 |
| f81632121_12.returns.push(216); |
| // 46455 |
| o20 = {}; |
| // 46459 |
| f81632121_467.returns.push(1374851261209); |
| // 46460 |
| o20.cancelBubble = false; |
| // 46461 |
| o20.returnValue = true; |
| // 46464 |
| o20.srcElement = o28; |
| // 46466 |
| o20.target = o28; |
| // 46473 |
| f81632121_506.returns.push(null); |
| // 46479 |
| f81632121_506.returns.push(null); |
| // 46485 |
| f81632121_506.returns.push(null); |
| // 46491 |
| f81632121_506.returns.push(null); |
| // 46497 |
| f81632121_506.returns.push(null); |
| // 46503 |
| f81632121_506.returns.push(null); |
| // 46509 |
| f81632121_506.returns.push(null); |
| // 46515 |
| f81632121_506.returns.push(null); |
| // 46521 |
| f81632121_506.returns.push(null); |
| // 46527 |
| f81632121_506.returns.push(null); |
| // 46533 |
| f81632121_506.returns.push(null); |
| // 46539 |
| f81632121_506.returns.push(null); |
| // 46545 |
| f81632121_506.returns.push(null); |
| // 46551 |
| f81632121_506.returns.push(null); |
| // 46557 |
| f81632121_506.returns.push(null); |
| // 46563 |
| f81632121_506.returns.push(null); |
| // 46568 |
| o20.JSBNG__screenX = 675; |
| // 46569 |
| o20.JSBNG__screenY = 243; |
| // 46570 |
| o20.altKey = false; |
| // 46571 |
| o20.bubbles = true; |
| // 46572 |
| o20.button = 0; |
| // 46573 |
| o20.buttons = void 0; |
| // 46574 |
| o20.cancelable = false; |
| // 46575 |
| o20.clientX = 607; |
| // 46576 |
| o20.clientY = 78; |
| // 46577 |
| o20.ctrlKey = false; |
| // 46578 |
| o20.currentTarget = o0; |
| // 46579 |
| o20.defaultPrevented = false; |
| // 46580 |
| o20.detail = 0; |
| // 46581 |
| o20.eventPhase = 3; |
| // 46582 |
| o20.isTrusted = void 0; |
| // 46583 |
| o20.metaKey = false; |
| // 46584 |
| o20.pageX = 607; |
| // 46585 |
| o20.pageY = 464; |
| // 46586 |
| o20.relatedTarget = null; |
| // 46587 |
| o20.fromElement = null; |
| // 46590 |
| o20.shiftKey = false; |
| // 46593 |
| o20.timeStamp = 1374851261209; |
| // 46594 |
| o20.type = "mousemove"; |
| // 46595 |
| o20.view = ow81632121; |
| // undefined |
| o20 = null; |
| // 46604 |
| f81632121_1852.returns.push(undefined); |
| // 46607 |
| f81632121_14.returns.push(undefined); |
| // 46608 |
| f81632121_12.returns.push(217); |
| // 46611 |
| o20 = {}; |
| // 46615 |
| f81632121_467.returns.push(1374851261220); |
| // 46616 |
| o20.cancelBubble = false; |
| // 46617 |
| o20.returnValue = true; |
| // 46620 |
| o20.srcElement = o28; |
| // 46622 |
| o20.target = o28; |
| // 46629 |
| f81632121_506.returns.push(null); |
| // 46635 |
| f81632121_506.returns.push(null); |
| // 46641 |
| f81632121_506.returns.push(null); |
| // 46647 |
| f81632121_506.returns.push(null); |
| // 46653 |
| f81632121_506.returns.push(null); |
| // 46659 |
| f81632121_506.returns.push(null); |
| // 46665 |
| f81632121_506.returns.push(null); |
| // 46671 |
| f81632121_506.returns.push(null); |
| // 46677 |
| f81632121_506.returns.push(null); |
| // 46683 |
| f81632121_506.returns.push(null); |
| // 46689 |
| f81632121_506.returns.push(null); |
| // 46695 |
| f81632121_506.returns.push(null); |
| // 46701 |
| f81632121_506.returns.push(null); |
| // 46707 |
| f81632121_506.returns.push(null); |
| // 46713 |
| f81632121_506.returns.push(null); |
| // 46719 |
| f81632121_506.returns.push(null); |
| // 46724 |
| o20.JSBNG__screenX = 676; |
| // 46725 |
| o20.JSBNG__screenY = 243; |
| // 46726 |
| o20.altKey = false; |
| // 46727 |
| o20.bubbles = true; |
| // 46728 |
| o20.button = 0; |
| // 46729 |
| o20.buttons = void 0; |
| // 46730 |
| o20.cancelable = false; |
| // 46731 |
| o20.clientX = 608; |
| // 46732 |
| o20.clientY = 78; |
| // 46733 |
| o20.ctrlKey = false; |
| // 46734 |
| o20.currentTarget = o0; |
| // 46735 |
| o20.defaultPrevented = false; |
| // 46736 |
| o20.detail = 0; |
| // 46737 |
| o20.eventPhase = 3; |
| // 46738 |
| o20.isTrusted = void 0; |
| // 46739 |
| o20.metaKey = false; |
| // 46740 |
| o20.pageX = 608; |
| // 46741 |
| o20.pageY = 464; |
| // 46742 |
| o20.relatedTarget = null; |
| // 46743 |
| o20.fromElement = null; |
| // 46746 |
| o20.shiftKey = false; |
| // 46749 |
| o20.timeStamp = 1374851261220; |
| // 46750 |
| o20.type = "mousemove"; |
| // 46751 |
| o20.view = ow81632121; |
| // undefined |
| o20 = null; |
| // 46760 |
| f81632121_1852.returns.push(undefined); |
| // 46763 |
| f81632121_14.returns.push(undefined); |
| // 46764 |
| f81632121_12.returns.push(218); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096"); |
| // 46770 |
| f81632121_467.returns.push(1374851261229); |
| // 46771 |
| o20 = {}; |
| // 46775 |
| f81632121_467.returns.push(1374851261230); |
| // 46776 |
| o20.cancelBubble = false; |
| // 46777 |
| o20.returnValue = true; |
| // 46780 |
| o20.srcElement = o28; |
| // 46782 |
| o20.target = o28; |
| // 46789 |
| f81632121_506.returns.push(null); |
| // 46795 |
| f81632121_506.returns.push(null); |
| // 46801 |
| f81632121_506.returns.push(null); |
| // 46807 |
| f81632121_506.returns.push(null); |
| // 46813 |
| f81632121_506.returns.push(null); |
| // 46819 |
| f81632121_506.returns.push(null); |
| // 46825 |
| f81632121_506.returns.push(null); |
| // 46831 |
| f81632121_506.returns.push(null); |
| // 46837 |
| f81632121_506.returns.push(null); |
| // 46843 |
| f81632121_506.returns.push(null); |
| // 46849 |
| f81632121_506.returns.push(null); |
| // 46855 |
| f81632121_506.returns.push(null); |
| // 46861 |
| f81632121_506.returns.push(null); |
| // 46867 |
| f81632121_506.returns.push(null); |
| // 46873 |
| f81632121_506.returns.push(null); |
| // 46879 |
| f81632121_506.returns.push(null); |
| // 46884 |
| o20.JSBNG__screenX = 677; |
| // 46885 |
| o20.JSBNG__screenY = 242; |
| // 46886 |
| o20.altKey = false; |
| // 46887 |
| o20.bubbles = true; |
| // 46888 |
| o20.button = 0; |
| // 46889 |
| o20.buttons = void 0; |
| // 46890 |
| o20.cancelable = false; |
| // 46891 |
| o20.clientX = 609; |
| // 46892 |
| o20.clientY = 77; |
| // 46893 |
| o20.ctrlKey = false; |
| // 46894 |
| o20.currentTarget = o0; |
| // 46895 |
| o20.defaultPrevented = false; |
| // 46896 |
| o20.detail = 0; |
| // 46897 |
| o20.eventPhase = 3; |
| // 46898 |
| o20.isTrusted = void 0; |
| // 46899 |
| o20.metaKey = false; |
| // 46900 |
| o20.pageX = 609; |
| // 46901 |
| o20.pageY = 463; |
| // 46902 |
| o20.relatedTarget = null; |
| // 46903 |
| o20.fromElement = null; |
| // 46906 |
| o20.shiftKey = false; |
| // 46909 |
| o20.timeStamp = 1374851261229; |
| // 46910 |
| o20.type = "mousemove"; |
| // 46911 |
| o20.view = ow81632121; |
| // undefined |
| o20 = null; |
| // 46920 |
| f81632121_1852.returns.push(undefined); |
| // 46923 |
| f81632121_14.returns.push(undefined); |
| // 46924 |
| f81632121_12.returns.push(219); |
| // 46927 |
| o20 = {}; |
| // 46930 |
| o20.srcElement = o28; |
| // 46932 |
| o20.target = o28; |
| // 46939 |
| f81632121_506.returns.push(null); |
| // 46945 |
| f81632121_506.returns.push(null); |
| // 46951 |
| f81632121_506.returns.push(null); |
| // 46957 |
| f81632121_506.returns.push(null); |
| // 46963 |
| f81632121_506.returns.push(null); |
| // 46969 |
| f81632121_506.returns.push(null); |
| // 46975 |
| f81632121_506.returns.push(null); |
| // 46981 |
| f81632121_506.returns.push(null); |
| // 46987 |
| f81632121_506.returns.push(null); |
| // 46993 |
| f81632121_506.returns.push(null); |
| // 46999 |
| f81632121_506.returns.push(null); |
| // 47005 |
| f81632121_506.returns.push(null); |
| // 47011 |
| f81632121_506.returns.push(null); |
| // 47017 |
| f81632121_506.returns.push(null); |
| // 47023 |
| f81632121_506.returns.push(null); |
| // 47029 |
| f81632121_506.returns.push(null); |
| // 47034 |
| o20.relatedTarget = o21; |
| // 47039 |
| f81632121_506.returns.push(null); |
| // 47045 |
| f81632121_506.returns.push(null); |
| // 47051 |
| f81632121_506.returns.push(null); |
| // 47057 |
| f81632121_506.returns.push(null); |
| // 47063 |
| f81632121_506.returns.push(null); |
| // 47069 |
| f81632121_506.returns.push(null); |
| // 47075 |
| f81632121_506.returns.push(null); |
| // 47081 |
| f81632121_506.returns.push(null); |
| // 47087 |
| f81632121_506.returns.push(null); |
| // 47093 |
| f81632121_506.returns.push(null); |
| // 47099 |
| f81632121_506.returns.push(null); |
| // 47105 |
| f81632121_506.returns.push(null); |
| // 47111 |
| f81632121_506.returns.push(null); |
| // 47117 |
| f81632121_506.returns.push(null); |
| // 47123 |
| f81632121_506.returns.push(null); |
| // 47128 |
| o20.cancelBubble = false; |
| // 47129 |
| o20.returnValue = true; |
| // undefined |
| o20 = null; |
| // 47130 |
| o20 = {}; |
| // 47133 |
| o20.cancelBubble = false; |
| // 47136 |
| f81632121_467.returns.push(1374851261248); |
| // 47139 |
| f81632121_1007.returns.push(undefined); |
| // 47141 |
| o20.returnValue = true; |
| // 47144 |
| o20.srcElement = o21; |
| // 47146 |
| o20.target = o21; |
| // 47153 |
| f81632121_506.returns.push(null); |
| // 47159 |
| f81632121_506.returns.push(null); |
| // 47165 |
| f81632121_506.returns.push(null); |
| // 47171 |
| f81632121_506.returns.push(null); |
| // 47177 |
| f81632121_506.returns.push(null); |
| // 47183 |
| f81632121_506.returns.push(null); |
| // 47189 |
| f81632121_506.returns.push(null); |
| // 47195 |
| f81632121_506.returns.push(null); |
| // 47201 |
| f81632121_506.returns.push(null); |
| // 47207 |
| f81632121_506.returns.push(null); |
| // 47213 |
| f81632121_506.returns.push(null); |
| // 47219 |
| f81632121_506.returns.push(null); |
| // 47225 |
| f81632121_506.returns.push(null); |
| // 47231 |
| f81632121_506.returns.push(null); |
| // 47237 |
| f81632121_506.returns.push(null); |
| // 47242 |
| o20.relatedTarget = o28; |
| // undefined |
| o20 = null; |
| // undefined |
| o28 = null; |
| // 47245 |
| o20 = {}; |
| // 47249 |
| f81632121_467.returns.push(1374851261256); |
| // 47250 |
| o20.cancelBubble = false; |
| // 47251 |
| o20.returnValue = true; |
| // 47254 |
| o20.srcElement = o21; |
| // 47256 |
| o20.target = o21; |
| // 47263 |
| f81632121_506.returns.push(null); |
| // 47269 |
| f81632121_506.returns.push(null); |
| // 47275 |
| f81632121_506.returns.push(null); |
| // 47281 |
| f81632121_506.returns.push(null); |
| // 47287 |
| f81632121_506.returns.push(null); |
| // 47293 |
| f81632121_506.returns.push(null); |
| // 47299 |
| f81632121_506.returns.push(null); |
| // 47305 |
| f81632121_506.returns.push(null); |
| // 47311 |
| f81632121_506.returns.push(null); |
| // 47317 |
| f81632121_506.returns.push(null); |
| // 47323 |
| f81632121_506.returns.push(null); |
| // 47329 |
| f81632121_506.returns.push(null); |
| // 47335 |
| f81632121_506.returns.push(null); |
| // 47341 |
| f81632121_506.returns.push(null); |
| // 47347 |
| f81632121_506.returns.push(null); |
| // 47352 |
| o20.JSBNG__screenX = 677; |
| // 47353 |
| o20.JSBNG__screenY = 241; |
| // 47354 |
| o20.altKey = false; |
| // 47355 |
| o20.bubbles = true; |
| // 47356 |
| o20.button = 0; |
| // 47357 |
| o20.buttons = void 0; |
| // 47358 |
| o20.cancelable = false; |
| // 47359 |
| o20.clientX = 609; |
| // 47360 |
| o20.clientY = 76; |
| // 47361 |
| o20.ctrlKey = false; |
| // 47362 |
| o20.currentTarget = o0; |
| // 47363 |
| o20.defaultPrevented = false; |
| // 47364 |
| o20.detail = 0; |
| // 47365 |
| o20.eventPhase = 3; |
| // 47366 |
| o20.isTrusted = void 0; |
| // 47367 |
| o20.metaKey = false; |
| // 47368 |
| o20.pageX = 609; |
| // 47369 |
| o20.pageY = 462; |
| // 47370 |
| o20.relatedTarget = null; |
| // 47371 |
| o20.fromElement = null; |
| // 47374 |
| o20.shiftKey = false; |
| // 47377 |
| o20.timeStamp = 1374851261256; |
| // 47378 |
| o20.type = "mousemove"; |
| // 47379 |
| o20.view = ow81632121; |
| // undefined |
| o20 = null; |
| // 47388 |
| f81632121_1852.returns.push(undefined); |
| // 47391 |
| f81632121_14.returns.push(undefined); |
| // 47392 |
| f81632121_12.returns.push(220); |
| // 47395 |
| o20 = {}; |
| // 47399 |
| f81632121_467.returns.push(1374851261264); |
| // 47400 |
| o20.cancelBubble = false; |
| // 47401 |
| o20.returnValue = true; |
| // 47404 |
| o20.srcElement = o21; |
| // 47406 |
| o20.target = o21; |
| // 47413 |
| f81632121_506.returns.push(null); |
| // 47419 |
| f81632121_506.returns.push(null); |
| // 47425 |
| f81632121_506.returns.push(null); |
| // 47431 |
| f81632121_506.returns.push(null); |
| // 47437 |
| f81632121_506.returns.push(null); |
| // 47443 |
| f81632121_506.returns.push(null); |
| // 47449 |
| f81632121_506.returns.push(null); |
| // 47455 |
| f81632121_506.returns.push(null); |
| // 47461 |
| f81632121_506.returns.push(null); |
| // 47467 |
| f81632121_506.returns.push(null); |
| // 47473 |
| f81632121_506.returns.push(null); |
| // 47479 |
| f81632121_506.returns.push(null); |
| // 47485 |
| f81632121_506.returns.push(null); |
| // 47491 |
| f81632121_506.returns.push(null); |
| // 47497 |
| f81632121_506.returns.push(null); |
| // 47502 |
| o20.JSBNG__screenX = 678; |
| // 47503 |
| o20.JSBNG__screenY = 241; |
| // 47504 |
| o20.altKey = false; |
| // 47505 |
| o20.bubbles = true; |
| // 47506 |
| o20.button = 0; |
| // 47507 |
| o20.buttons = void 0; |
| // 47508 |
| o20.cancelable = false; |
| // 47509 |
| o20.clientX = 610; |
| // 47510 |
| o20.clientY = 76; |
| // 47511 |
| o20.ctrlKey = false; |
| // 47512 |
| o20.currentTarget = o0; |
| // 47513 |
| o20.defaultPrevented = false; |
| // 47514 |
| o20.detail = 0; |
| // 47515 |
| o20.eventPhase = 3; |
| // 47516 |
| o20.isTrusted = void 0; |
| // 47517 |
| o20.metaKey = false; |
| // 47518 |
| o20.pageX = 610; |
| // 47519 |
| o20.pageY = 462; |
| // 47520 |
| o20.relatedTarget = null; |
| // 47521 |
| o20.fromElement = null; |
| // 47524 |
| o20.shiftKey = false; |
| // 47527 |
| o20.timeStamp = 1374851261264; |
| // 47528 |
| o20.type = "mousemove"; |
| // 47529 |
| o20.view = ow81632121; |
| // undefined |
| o20 = null; |
| // 47538 |
| f81632121_1852.returns.push(undefined); |
| // 47541 |
| f81632121_14.returns.push(undefined); |
| // 47542 |
| f81632121_12.returns.push(221); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096"); |
| // 47546 |
| o20 = {}; |
| // 47550 |
| f81632121_467.returns.push(1374851261522); |
| // 47555 |
| f81632121_467.returns.push(1374851261524); |
| // 47559 |
| f81632121_467.returns.push(1374851261524); |
| // 47561 |
| o20.cancelBubble = false; |
| // 47562 |
| o20.returnValue = true; |
| // 47565 |
| o20.srcElement = o21; |
| // 47567 |
| o20.target = o21; |
| // 47574 |
| f81632121_506.returns.push(null); |
| // 47580 |
| f81632121_506.returns.push(null); |
| // 47586 |
| f81632121_506.returns.push(null); |
| // 47592 |
| f81632121_506.returns.push(null); |
| // 47598 |
| f81632121_506.returns.push(null); |
| // 47604 |
| f81632121_506.returns.push(null); |
| // 47610 |
| f81632121_506.returns.push(null); |
| // 47616 |
| f81632121_506.returns.push(null); |
| // 47622 |
| f81632121_506.returns.push(null); |
| // 47628 |
| f81632121_506.returns.push(null); |
| // 47634 |
| f81632121_506.returns.push(null); |
| // 47640 |
| f81632121_506.returns.push(null); |
| // 47646 |
| f81632121_506.returns.push(null); |
| // 47652 |
| f81632121_506.returns.push(null); |
| // 47658 |
| f81632121_506.returns.push(null); |
| // 47663 |
| o20.JSBNG__screenX = 678; |
| // 47664 |
| o20.JSBNG__screenY = 240; |
| // 47665 |
| o20.altKey = false; |
| // 47666 |
| o20.bubbles = true; |
| // 47667 |
| o20.button = 0; |
| // 47668 |
| o20.buttons = void 0; |
| // 47669 |
| o20.cancelable = false; |
| // 47670 |
| o20.clientX = 610; |
| // 47671 |
| o20.clientY = 75; |
| // 47672 |
| o20.ctrlKey = false; |
| // 47673 |
| o20.currentTarget = o0; |
| // 47674 |
| o20.defaultPrevented = false; |
| // 47675 |
| o20.detail = 0; |
| // 47676 |
| o20.eventPhase = 3; |
| // 47677 |
| o20.isTrusted = void 0; |
| // 47678 |
| o20.metaKey = false; |
| // 47679 |
| o20.pageX = 610; |
| // 47680 |
| o20.pageY = 461; |
| // 47681 |
| o20.relatedTarget = null; |
| // 47682 |
| o20.fromElement = null; |
| // 47685 |
| o20.shiftKey = false; |
| // 47688 |
| o20.timeStamp = 1374851261522; |
| // 47689 |
| o20.type = "mousemove"; |
| // 47690 |
| o20.view = ow81632121; |
| // undefined |
| o20 = null; |
| // 47699 |
| f81632121_1852.returns.push(undefined); |
| // 47702 |
| f81632121_14.returns.push(undefined); |
| // 47703 |
| f81632121_12.returns.push(222); |
| // 47706 |
| o20 = {}; |
| // 47710 |
| f81632121_467.returns.push(1374851261546); |
| // 47711 |
| o20.cancelBubble = false; |
| // 47712 |
| o20.returnValue = true; |
| // 47715 |
| o20.srcElement = o21; |
| // 47717 |
| o20.target = o21; |
| // 47724 |
| f81632121_506.returns.push(null); |
| // 47730 |
| f81632121_506.returns.push(null); |
| // 47736 |
| f81632121_506.returns.push(null); |
| // 47742 |
| f81632121_506.returns.push(null); |
| // 47748 |
| f81632121_506.returns.push(null); |
| // 47754 |
| f81632121_506.returns.push(null); |
| // 47760 |
| f81632121_506.returns.push(null); |
| // 47766 |
| f81632121_506.returns.push(null); |
| // 47772 |
| f81632121_506.returns.push(null); |
| // 47778 |
| f81632121_506.returns.push(null); |
| // 47784 |
| f81632121_506.returns.push(null); |
| // 47790 |
| f81632121_506.returns.push(null); |
| // 47796 |
| f81632121_506.returns.push(null); |
| // 47802 |
| f81632121_506.returns.push(null); |
| // 47808 |
| f81632121_506.returns.push(null); |
| // 47813 |
| o20.JSBNG__screenX = 679; |
| // 47814 |
| o20.JSBNG__screenY = 240; |
| // 47815 |
| o20.altKey = false; |
| // 47816 |
| o20.bubbles = true; |
| // 47817 |
| o20.button = 0; |
| // 47818 |
| o20.buttons = void 0; |
| // 47819 |
| o20.cancelable = false; |
| // 47820 |
| o20.clientX = 611; |
| // 47821 |
| o20.clientY = 75; |
| // 47822 |
| o20.ctrlKey = false; |
| // 47823 |
| o20.currentTarget = o0; |
| // 47824 |
| o20.defaultPrevented = false; |
| // 47825 |
| o20.detail = 0; |
| // 47826 |
| o20.eventPhase = 3; |
| // 47827 |
| o20.isTrusted = void 0; |
| // 47828 |
| o20.metaKey = false; |
| // 47829 |
| o20.pageX = 611; |
| // 47830 |
| o20.pageY = 461; |
| // 47831 |
| o20.relatedTarget = null; |
| // 47832 |
| o20.fromElement = null; |
| // 47835 |
| o20.shiftKey = false; |
| // 47838 |
| o20.timeStamp = 1374851261546; |
| // 47839 |
| o20.type = "mousemove"; |
| // 47840 |
| o20.view = ow81632121; |
| // undefined |
| o20 = null; |
| // 47849 |
| f81632121_1852.returns.push(undefined); |
| // 47852 |
| f81632121_14.returns.push(undefined); |
| // 47853 |
| f81632121_12.returns.push(223); |
| // 47856 |
| o20 = {}; |
| // 47860 |
| f81632121_467.returns.push(1374851261577); |
| // 47861 |
| o20.cancelBubble = false; |
| // 47862 |
| o20.returnValue = true; |
| // 47865 |
| o20.srcElement = o21; |
| // 47867 |
| o20.target = o21; |
| // 47874 |
| f81632121_506.returns.push(null); |
| // 47880 |
| f81632121_506.returns.push(null); |
| // 47886 |
| f81632121_506.returns.push(null); |
| // 47892 |
| f81632121_506.returns.push(null); |
| // 47898 |
| f81632121_506.returns.push(null); |
| // 47904 |
| f81632121_506.returns.push(null); |
| // 47910 |
| f81632121_506.returns.push(null); |
| // 47916 |
| f81632121_506.returns.push(null); |
| // 47922 |
| f81632121_506.returns.push(null); |
| // 47928 |
| f81632121_506.returns.push(null); |
| // 47934 |
| f81632121_506.returns.push(null); |
| // 47940 |
| f81632121_506.returns.push(null); |
| // 47946 |
| f81632121_506.returns.push(null); |
| // 47952 |
| f81632121_506.returns.push(null); |
| // 47958 |
| f81632121_506.returns.push(null); |
| // 47963 |
| o20.JSBNG__screenX = 679; |
| // 47964 |
| o20.JSBNG__screenY = 239; |
| // 47965 |
| o20.altKey = false; |
| // 47966 |
| o20.bubbles = true; |
| // 47967 |
| o20.button = 0; |
| // 47968 |
| o20.buttons = void 0; |
| // 47969 |
| o20.cancelable = false; |
| // 47970 |
| o20.clientX = 611; |
| // 47971 |
| o20.clientY = 74; |
| // 47972 |
| o20.ctrlKey = false; |
| // 47973 |
| o20.currentTarget = o0; |
| // 47974 |
| o20.defaultPrevented = false; |
| // 47975 |
| o20.detail = 0; |
| // 47976 |
| o20.eventPhase = 3; |
| // 47977 |
| o20.isTrusted = void 0; |
| // 47978 |
| o20.metaKey = false; |
| // 47979 |
| o20.pageX = 611; |
| // 47980 |
| o20.pageY = 460; |
| // 47981 |
| o20.relatedTarget = null; |
| // 47982 |
| o20.fromElement = null; |
| // 47985 |
| o20.shiftKey = false; |
| // 47988 |
| o20.timeStamp = 1374851261576; |
| // 47989 |
| o20.type = "mousemove"; |
| // 47990 |
| o20.view = ow81632121; |
| // undefined |
| o20 = null; |
| // 47999 |
| f81632121_1852.returns.push(undefined); |
| // 48002 |
| f81632121_14.returns.push(undefined); |
| // 48003 |
| f81632121_12.returns.push(224); |
| // 48006 |
| o20 = {}; |
| // 48010 |
| f81632121_467.returns.push(1374851261591); |
| // 48011 |
| o20.cancelBubble = false; |
| // 48012 |
| o20.returnValue = true; |
| // 48015 |
| o20.srcElement = o21; |
| // 48017 |
| o20.target = o21; |
| // 48024 |
| f81632121_506.returns.push(null); |
| // 48030 |
| f81632121_506.returns.push(null); |
| // 48036 |
| f81632121_506.returns.push(null); |
| // 48042 |
| f81632121_506.returns.push(null); |
| // 48048 |
| f81632121_506.returns.push(null); |
| // 48054 |
| f81632121_506.returns.push(null); |
| // 48060 |
| f81632121_506.returns.push(null); |
| // 48066 |
| f81632121_506.returns.push(null); |
| // 48072 |
| f81632121_506.returns.push(null); |
| // 48078 |
| f81632121_506.returns.push(null); |
| // 48084 |
| f81632121_506.returns.push(null); |
| // 48090 |
| f81632121_506.returns.push(null); |
| // 48096 |
| f81632121_506.returns.push(null); |
| // 48102 |
| f81632121_506.returns.push(null); |
| // 48108 |
| f81632121_506.returns.push(null); |
| // 48113 |
| o20.JSBNG__screenX = 680; |
| // 48114 |
| o20.JSBNG__screenY = 239; |
| // 48115 |
| o20.altKey = false; |
| // 48116 |
| o20.bubbles = true; |
| // 48117 |
| o20.button = 0; |
| // 48118 |
| o20.buttons = void 0; |
| // 48119 |
| o20.cancelable = false; |
| // 48120 |
| o20.clientX = 612; |
| // 48121 |
| o20.clientY = 74; |
| // 48122 |
| o20.ctrlKey = false; |
| // 48123 |
| o20.currentTarget = o0; |
| // 48124 |
| o20.defaultPrevented = false; |
| // 48125 |
| o20.detail = 0; |
| // 48126 |
| o20.eventPhase = 3; |
| // 48127 |
| o20.isTrusted = void 0; |
| // 48128 |
| o20.metaKey = false; |
| // 48129 |
| o20.pageX = 612; |
| // 48130 |
| o20.pageY = 460; |
| // 48131 |
| o20.relatedTarget = null; |
| // 48132 |
| o20.fromElement = null; |
| // 48135 |
| o20.shiftKey = false; |
| // 48138 |
| o20.timeStamp = 1374851261591; |
| // 48139 |
| o20.type = "mousemove"; |
| // 48140 |
| o20.view = ow81632121; |
| // undefined |
| o20 = null; |
| // 48149 |
| f81632121_1852.returns.push(undefined); |
| // 48152 |
| f81632121_14.returns.push(undefined); |
| // 48153 |
| f81632121_12.returns.push(225); |
| // 48156 |
| o20 = {}; |
| // 48160 |
| f81632121_467.returns.push(1374851261633); |
| // 48161 |
| o20.cancelBubble = false; |
| // 48162 |
| o20.returnValue = true; |
| // 48165 |
| o20.srcElement = o21; |
| // 48167 |
| o20.target = o21; |
| // undefined |
| o21 = null; |
| // 48174 |
| f81632121_506.returns.push(null); |
| // 48180 |
| f81632121_506.returns.push(null); |
| // 48186 |
| f81632121_506.returns.push(null); |
| // 48192 |
| f81632121_506.returns.push(null); |
| // 48198 |
| f81632121_506.returns.push(null); |
| // 48204 |
| f81632121_506.returns.push(null); |
| // 48210 |
| f81632121_506.returns.push(null); |
| // 48216 |
| f81632121_506.returns.push(null); |
| // 48222 |
| f81632121_506.returns.push(null); |
| // 48228 |
| f81632121_506.returns.push(null); |
| // 48234 |
| f81632121_506.returns.push(null); |
| // 48240 |
| f81632121_506.returns.push(null); |
| // 48246 |
| f81632121_506.returns.push(null); |
| // 48252 |
| f81632121_506.returns.push(null); |
| // 48258 |
| f81632121_506.returns.push(null); |
| // 48263 |
| o20.JSBNG__screenX = 681; |
| // 48264 |
| o20.JSBNG__screenY = 239; |
| // 48265 |
| o20.altKey = false; |
| // 48266 |
| o20.bubbles = true; |
| // 48267 |
| o20.button = 0; |
| // 48268 |
| o20.buttons = void 0; |
| // 48269 |
| o20.cancelable = false; |
| // 48270 |
| o20.clientX = 613; |
| // 48271 |
| o20.clientY = 74; |
| // 48272 |
| o20.ctrlKey = false; |
| // 48273 |
| o20.currentTarget = o0; |
| // 48274 |
| o20.defaultPrevented = false; |
| // 48275 |
| o20.detail = 0; |
| // 48276 |
| o20.eventPhase = 3; |
| // 48277 |
| o20.isTrusted = void 0; |
| // 48278 |
| o20.metaKey = false; |
| // 48279 |
| o20.pageX = 613; |
| // 48280 |
| o20.pageY = 460; |
| // 48281 |
| o20.relatedTarget = null; |
| // 48282 |
| o20.fromElement = null; |
| // 48285 |
| o20.shiftKey = false; |
| // 48288 |
| o20.timeStamp = 1374851261633; |
| // 48289 |
| o20.type = "mousemove"; |
| // 48290 |
| o20.view = ow81632121; |
| // undefined |
| o20 = null; |
| // 48299 |
| f81632121_1852.returns.push(undefined); |
| // 48302 |
| f81632121_14.returns.push(undefined); |
| // 48303 |
| f81632121_12.returns.push(226); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096"); |
| // 48307 |
| o20 = {}; |
| // 48310 |
| o20.srcElement = o16; |
| // 48311 |
| o20.target = o16; |
| // 48312 |
| o20.keyCode = 17; |
| // 48313 |
| o20.shiftKey = false; |
| // 48315 |
| o20.cancelBubble = false; |
| // 48322 |
| f81632121_467.returns.push(1374851262038); |
| // 48327 |
| f81632121_467.returns.push(1374851262040); |
| // 48331 |
| f81632121_467.returns.push(1374851262040); |
| // 48334 |
| o20.returnValue = true; |
| // 48346 |
| f81632121_506.returns.push(null); |
| // 48352 |
| f81632121_506.returns.push(null); |
| // 48357 |
| o20.JSBNG__location = void 0; |
| // 48358 |
| o20.altKey = false; |
| // 48359 |
| o20.bubbles = true; |
| // 48360 |
| o20.cancelable = true; |
| // 48361 |
| o20.char = void 0; |
| // 48362 |
| o20.charCode = 0; |
| // 48363 |
| o20.ctrlKey = true; |
| // 48364 |
| o20.currentTarget = o0; |
| // 48365 |
| o20.defaultPrevented = false; |
| // 48366 |
| o20.detail = 0; |
| // 48367 |
| o20.eventPhase = 3; |
| // 48368 |
| o20.isTrusted = void 0; |
| // 48369 |
| o20.key = void 0; |
| // 48371 |
| o20.locale = void 0; |
| // 48372 |
| o20.location = void 0; |
| // 48373 |
| o20.metaKey = false; |
| // 48374 |
| o20.repeat = void 0; |
| // 48378 |
| o20.timeStamp = 1374851262036; |
| // 48379 |
| o20.type = "keydown"; |
| // 48380 |
| o20.view = ow81632121; |
| // 48381 |
| o20.which = 17; |
| // 48388 |
| o21 = {}; |
| // 48390 |
| o28 = {}; |
| // 48391 |
| o21.handlers = o28; |
| // 48393 |
| o28["17"] = void 0; |
| // undefined |
| o28 = null; |
| // 48398 |
| f81632121_12.returns.push(227); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096"); |
| // 48403 |
| f81632121_467.returns.push(1374851262238); |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096"); |
| // 48405 |
| o28 = {}; |
| // 48408 |
| o28.srcElement = o16; |
| // 48409 |
| o28.target = o16; |
| // 48410 |
| o28.keyCode = 17; |
| // 48411 |
| o28.shiftKey = false; |
| // 48413 |
| o28.cancelBubble = false; |
| // 48420 |
| f81632121_467.returns.push(1374851262538); |
| // 48422 |
| o28.returnValue = true; |
| // 48434 |
| f81632121_506.returns.push(null); |
| // 48440 |
| f81632121_506.returns.push(null); |
| // 48445 |
| o28.JSBNG__location = void 0; |
| // 48446 |
| o28.altKey = false; |
| // 48447 |
| o28.bubbles = true; |
| // 48448 |
| o28.cancelable = true; |
| // 48449 |
| o28.char = void 0; |
| // 48450 |
| o28.charCode = 0; |
| // 48451 |
| o28.ctrlKey = true; |
| // 48452 |
| o28.currentTarget = o0; |
| // 48453 |
| o28.defaultPrevented = false; |
| // 48454 |
| o28.detail = 0; |
| // 48455 |
| o28.eventPhase = 3; |
| // 48456 |
| o28.isTrusted = void 0; |
| // 48457 |
| o28.key = void 0; |
| // 48459 |
| o28.locale = void 0; |
| // 48460 |
| o28.location = void 0; |
| // 48461 |
| o28.metaKey = false; |
| // 48462 |
| o28.repeat = void 0; |
| // 48466 |
| o28.timeStamp = 1374851262536; |
| // 48467 |
| o28.type = "keydown"; |
| // 48468 |
| o28.view = ow81632121; |
| // 48469 |
| o28.which = 17; |
| // 48483 |
| o33 = {}; |
| // 48486 |
| o33.srcElement = o16; |
| // 48487 |
| o33.target = o16; |
| // 48488 |
| o33.keyCode = 17; |
| // 48489 |
| o33.shiftKey = false; |
| // 48491 |
| o33.cancelBubble = false; |
| // 48498 |
| f81632121_467.returns.push(1374851262570); |
| // 48503 |
| f81632121_467.returns.push(1374851262572); |
| // 48507 |
| f81632121_467.returns.push(1374851262572); |
| // 48510 |
| o33.returnValue = true; |
| // 48522 |
| f81632121_506.returns.push(null); |
| // 48528 |
| f81632121_506.returns.push(null); |
| // 48533 |
| o33.JSBNG__location = void 0; |
| // 48534 |
| o33.altKey = false; |
| // 48535 |
| o33.bubbles = true; |
| // 48536 |
| o33.cancelable = true; |
| // 48537 |
| o33.char = void 0; |
| // 48538 |
| o33.charCode = 0; |
| // 48539 |
| o33.ctrlKey = true; |
| // 48540 |
| o33.currentTarget = o0; |
| // 48541 |
| o33.defaultPrevented = false; |
| // 48542 |
| o33.detail = 0; |
| // 48543 |
| o33.eventPhase = 3; |
| // 48544 |
| o33.isTrusted = void 0; |
| // 48545 |
| o33.key = void 0; |
| // 48547 |
| o33.locale = void 0; |
| // 48548 |
| o33.location = void 0; |
| // 48549 |
| o33.metaKey = false; |
| // 48550 |
| o33.repeat = void 0; |
| // 48554 |
| o33.timeStamp = 1374851262568; |
| // 48555 |
| o33.type = "keydown"; |
| // 48556 |
| o33.view = ow81632121; |
| // 48557 |
| o33.which = 17; |
| // 48571 |
| o36 = {}; |
| // 48574 |
| o36.srcElement = o16; |
| // 48575 |
| o36.target = o16; |
| // 48576 |
| o36.keyCode = 17; |
| // 48577 |
| o36.shiftKey = false; |
| // 48579 |
| o36.cancelBubble = false; |
| // 48586 |
| f81632121_467.returns.push(1374851262603); |
| // 48588 |
| o36.returnValue = true; |
| // 48600 |
| f81632121_506.returns.push(null); |
| // 48606 |
| f81632121_506.returns.push(null); |
| // 48611 |
| o36.JSBNG__location = void 0; |
| // 48612 |
| o36.altKey = false; |
| // 48613 |
| o36.bubbles = true; |
| // 48614 |
| o36.cancelable = true; |
| // 48615 |
| o36.char = void 0; |
| // 48616 |
| o36.charCode = 0; |
| // 48617 |
| o36.ctrlKey = true; |
| // 48618 |
| o36.currentTarget = o0; |
| // 48619 |
| o36.defaultPrevented = false; |
| // 48620 |
| o36.detail = 0; |
| // 48621 |
| o36.eventPhase = 3; |
| // 48622 |
| o36.isTrusted = void 0; |
| // 48623 |
| o36.key = void 0; |
| // 48625 |
| o36.locale = void 0; |
| // 48626 |
| o36.location = void 0; |
| // 48627 |
| o36.metaKey = false; |
| // 48628 |
| o36.repeat = void 0; |
| // 48632 |
| o36.timeStamp = 1374851262602; |
| // 48633 |
| o36.type = "keydown"; |
| // 48634 |
| o36.view = ow81632121; |
| // 48635 |
| o36.which = 17; |
| // 48649 |
| o39 = {}; |
| // 48652 |
| o39.srcElement = o16; |
| // 48653 |
| o39.target = o16; |
| // 48654 |
| o39.keyCode = 17; |
| // 48655 |
| o39.shiftKey = false; |
| // 48657 |
| o39.cancelBubble = false; |
| // 48664 |
| f81632121_467.returns.push(1374851262637); |
| // 48666 |
| o39.returnValue = true; |
| // 48678 |
| f81632121_506.returns.push(null); |
| // 48684 |
| f81632121_506.returns.push(null); |
| // 48689 |
| o39.JSBNG__location = void 0; |
| // 48690 |
| o39.altKey = false; |
| // 48691 |
| o39.bubbles = true; |
| // 48692 |
| o39.cancelable = true; |
| // 48693 |
| o39.char = void 0; |
| // 48694 |
| o39.charCode = 0; |
| // 48695 |
| o39.ctrlKey = true; |
| // 48696 |
| o39.currentTarget = o0; |
| // 48697 |
| o39.defaultPrevented = false; |
| // 48698 |
| o39.detail = 0; |
| // 48699 |
| o39.eventPhase = 3; |
| // 48700 |
| o39.isTrusted = void 0; |
| // 48701 |
| o39.key = void 0; |
| // 48703 |
| o39.locale = void 0; |
| // 48704 |
| o39.location = void 0; |
| // 48705 |
| o39.metaKey = false; |
| // 48706 |
| o39.repeat = void 0; |
| // 48710 |
| o39.timeStamp = 1374851262635; |
| // 48711 |
| o39.type = "keydown"; |
| // 48712 |
| o39.view = ow81632121; |
| // 48713 |
| o39.which = 17; |
| // 48727 |
| o42 = {}; |
| // 48733 |
| // 48735 |
| o44 = {}; |
| // 48738 |
| f81632121_2118.returns.push(undefined); |
| // 48739 |
| o44.cancelBubble = false; |
| // undefined |
| fo81632121_1_cookie.returns.push("c_user=100006118350059; csm=2; sub=4096"); |
| // 48743 |
| // 48745 |
| o44.returnValue = true; |
| // undefined |
| o44 = null; |
| // 48746 |
| // 0 |
| JSBNG_Replay$ = function(real, cb) { if (!real) return; |
| // 980 |
| geval("function envFlush(a) {\n function b(c) {\n {\n var fin0keys = ((window.top.JSBNG_Replay.forInKeys)((a))), fin0i = (0);\n var d;\n for (; (fin0i < fin0keys.length); (fin0i++)) {\n ((d) = (fin0keys[fin0i]));\n {\n c[d] = a[d];\n ;\n };\n };\n };\n ;\n };\n;\n if (window.requireLazy) {\n requireLazy([\"Env\",], b);\n }\n else {\n Env = ((window.Env || {\n }));\n b(Env);\n }\n;\n;\n};\n;\nenvFlush({\n user: \"100006118350059\",\n locale: \"en_US\",\n method: \"GET\",\n svn_rev: 888463,\n tier: \"\",\n push_phase: \"V3\",\n pkg_cohort: \"EXP1:DEFAULT\",\n vip: \"69.171.242.27\",\n www_base: \"http://jsbngssl.www.facebook.com/\",\n fb_dtsg: \"AQApxIm6\",\n ajaxpipe_token: \"AXg6AziAArJNc7e2\",\n lhsh: \"FAQE1CTsK\",\n tracking_domain: \"http://jsbngssl.pixel.facebook.com\",\n retry_ajax_on_network_error: \"1\",\n fbid_emoticons: \"1\"\n});"); |
| // 981 |
| geval("envFlush({\n eagleEyeConfig: {\n seed: \"0ouW\",\n JSBNG__sessionStorage: true\n }\n});\nCavalryLogger = false;"); |
| // 982 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"KlJ/5\",]);\n}\n;\n;\nJSBNG__self.__DEV__ = ((JSBNG__self.__DEV__ || 0));\nif (((JSON.stringify([\"\\u2028\\u2029\",]) === \"[\\\"\\u2028\\u2029\\\"]\"))) {\n JSON.stringify = function(a) {\n var b = /\\u2028/g, c = /\\u2029/g;\n return ((window.top.JSBNG_Replay.push)((window.top.JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1), function(d, e, f) {\n var g = a.call(this, d, e, f);\n if (g) {\n if (((-1 < g.indexOf(\"\\u2028\")))) {\n g = g.replace(b, \"\\\\u2028\");\n }\n ;\n ;\n if (((-1 < g.indexOf(\"\\u2029\")))) {\n g = g.replace(c, \"\\\\u2029\");\n }\n ;\n ;\n }\n ;\n ;\n return g;\n }));\n }(JSON.stringify);\n}\n;\n;\n__t = function(a) {\n return a[0];\n};\n__w = function(a) {\n return a;\n};\n(function(a) {\n if (a.require) {\n return;\n }\n;\n;\n var b = Object.prototype.toString, c = {\n }, d = {\n }, e = {\n }, f = 0, g = 1, h = 2, i = Object.prototype.hasOwnProperty;\n function j(s) {\n if (((a.ErrorUtils && !a.ErrorUtils.inGuard()))) {\n return ErrorUtils.applyWithGuard(j, this, arguments);\n }\n ;\n ;\n var t = c[s], u, v, w;\n if (!c[s]) {\n w = ((((\"Requiring unknown module \\\"\" + s)) + \"\\\"\"));\n throw new Error(w);\n }\n ;\n ;\n if (t.hasError) {\n throw new Error(((((\"Requiring module \\\"\" + s)) + \"\\\" which threw an exception\")));\n }\n ;\n ;\n if (t.waiting) {\n w = ((((\"Requiring module \\\"\" + s)) + \"\\\" with unresolved dependencies\"));\n throw new Error(w);\n }\n ;\n ;\n if (!t.exports) {\n var x = t.exports = {\n }, y = t.factory;\n if (((b.call(y) === \"[object Function]\"))) {\n var z = [], aa = t.dependencies, ba = aa.length, ca;\n if (((t.special & h))) {\n ba = Math.min(ba, y.length);\n }\n ;\n ;\n try {\n for (v = 0; ((v < ba)); v++) {\n u = aa[v];\n z.push(((((u === \"module\")) ? t : ((((u === \"exports\")) ? x : j(u))))));\n };\n ;\n ca = y.apply(((t.context || a)), z);\n } catch (da) {\n t.hasError = true;\n throw da;\n };\n ;\n if (ca) {\n t.exports = ca;\n }\n ;\n ;\n }\n else t.exports = y;\n ;\n ;\n }\n ;\n ;\n if (((t.refcount-- === 1))) {\n delete c[s];\n }\n ;\n ;\n return t.exports;\n };\n;\n function k(s, t, u, v, w, x) {\n if (((t === undefined))) {\n t = [];\n u = s;\n s = n();\n }\n else if (((u === undefined))) {\n u = t;\n if (((b.call(s) === \"[object Array]\"))) {\n t = s;\n s = n();\n }\n else t = [];\n ;\n ;\n }\n \n ;\n ;\n var y = {\n cancel: l.bind(this, s)\n }, z = c[s];\n if (z) {\n if (x) {\n z.refcount += x;\n }\n ;\n ;\n return y;\n }\n else if (((((!t && !u)) && x))) {\n e[s] = ((((e[s] || 0)) + x));\n return y;\n }\n else {\n z = {\n id: s\n };\n z.refcount = ((((e[s] || 0)) + ((x || 0))));\n delete e[s];\n }\n \n ;\n ;\n z.factory = u;\n z.dependencies = t;\n z.context = w;\n z.special = v;\n z.waitingMap = {\n };\n z.waiting = 0;\n z.hasError = false;\n c[s] = z;\n p(s);\n return y;\n };\n;\n function l(s) {\n if (!c[s]) {\n return;\n }\n ;\n ;\n var t = c[s];\n delete c[s];\n {\n var fin1keys = ((window.top.JSBNG_Replay.forInKeys)((t.waitingMap))), fin1i = (0);\n var u;\n for (; (fin1i < fin1keys.length); (fin1i++)) {\n ((u) = (fin1keys[fin1i]));\n {\n if (t.waitingMap[u]) {\n delete d[u][s];\n }\n ;\n ;\n };\n };\n };\n ;\n for (var v = 0; ((v < t.dependencies.length)); v++) {\n u = t.dependencies[v];\n if (c[u]) {\n if (((c[u].refcount-- === 1))) {\n l(u);\n }\n ;\n ;\n }\n else if (e[u]) {\n e[u]--;\n }\n \n ;\n ;\n };\n ;\n };\n;\n function m(s, t, u) {\n return k(s, t, undefined, g, u, 1);\n };\n;\n function n() {\n return ((\"__mod__\" + f++));\n };\n;\n function o(s, t) {\n if (((!s.waitingMap[t] && ((s.id !== t))))) {\n s.waiting++;\n s.waitingMap[t] = 1;\n ((d[t] || (d[t] = {\n })));\n d[t][s.id] = 1;\n }\n ;\n ;\n };\n;\n function p(s) {\n var t = [], u = c[s], v, w, x;\n for (w = 0; ((w < u.dependencies.length)); w++) {\n v = u.dependencies[w];\n if (!c[v]) {\n o(u, v);\n }\n else if (c[v].waiting) {\n {\n var fin2keys = ((window.top.JSBNG_Replay.forInKeys)((c[v].waitingMap))), fin2i = (0);\n (0);\n for (; (fin2i < fin2keys.length); (fin2i++)) {\n ((x) = (fin2keys[fin2i]));\n {\n if (c[v].waitingMap[x]) {\n o(u, x);\n }\n ;\n ;\n };\n };\n };\n }\n \n ;\n ;\n };\n ;\n if (((((u.waiting === 0)) && ((u.special & g))))) {\n t.push(s);\n }\n ;\n ;\n if (d[s]) {\n var y = d[s], z;\n d[s] = undefined;\n {\n var fin3keys = ((window.top.JSBNG_Replay.forInKeys)((y))), fin3i = (0);\n (0);\n for (; (fin3i < fin3keys.length); (fin3i++)) {\n ((v) = (fin3keys[fin3i]));\n {\n z = c[v];\n {\n var fin4keys = ((window.top.JSBNG_Replay.forInKeys)((u.waitingMap))), fin4i = (0);\n (0);\n for (; (fin4i < fin4keys.length); (fin4i++)) {\n ((x) = (fin4keys[fin4i]));\n {\n if (u.waitingMap[x]) {\n o(z, x);\n }\n ;\n ;\n };\n };\n };\n ;\n if (z.waitingMap[s]) {\n z.waitingMap[s] = undefined;\n z.waiting--;\n }\n ;\n ;\n if (((((z.waiting === 0)) && ((z.special & g))))) {\n t.push(v);\n }\n ;\n ;\n };\n };\n };\n ;\n }\n ;\n ;\n for (w = 0; ((w < t.length)); w++) {\n j(t[w]);\n ;\n };\n ;\n };\n;\n function q(s, t) {\n c[s] = {\n id: s\n };\n c[s].exports = t;\n };\n;\n q(\"module\", 0);\n q(\"exports\", 0);\n q(\"define\", k);\n q(\"global\", a);\n q(\"require\", j);\n q(\"requireDynamic\", j);\n q(\"requireLazy\", m);\n k.amd = {\n };\n a.define = k;\n a.require = j;\n a.requireDynamic = j;\n a.requireLazy = m;\n j.__debug = {\n modules: c,\n deps: d\n };\n var r = function(s, t, u, v) {\n k(s, t, u, ((v || h)));\n };\n a.__d = function(s, t, u, v) {\n t = [\"global\",\"require\",\"requireDynamic\",\"requireLazy\",\"module\",\"exports\",].concat(t);\n r(s, t, u, v);\n };\n})(this);\n__d(\"SidebarPrelude\", [], function(a, b, c, d, e, f) {\n var g = {\n addSidebarMode: function(h) {\n var i = JSBNG__document.documentElement;\n if (((i.clientWidth > h))) {\n i.className = ((i.className + \" sidebarMode\"));\n }\n ;\n ;\n }\n };\n e.exports = g;\n});\n__d(\"eprintf\", [], function(a, b, c, d, e, f) {\n var g = function(h) {\n var i = Array.prototype.slice.call(arguments).map(function(l) {\n return String(l);\n }), j = ((h.split(\"%s\").length - 1));\n if (((j !== ((i.length - 1))))) {\n return g(\"eprintf args number mismatch: %s\", JSON.stringify(i));\n }\n ;\n ;\n var k = 1;\n return h.replace(/%s/g, function(l) {\n return String(i[k++]);\n });\n };\n e.exports = g;\n});\n__d(\"ex\", [], function(a, b, c, d, e, f) {\n var g = function(h) {\n var i = Array.prototype.slice.call(arguments).map(function(k) {\n return String(k);\n }), j = ((h.split(\"%s\").length - 1));\n if (((j !== ((i.length - 1))))) {\n return g(\"ex args number mismatch: %s\", JSON.stringify(i));\n }\n ;\n ;\n return ((((g._prefix + JSON.stringify(i))) + g._suffix));\n };\n g._prefix = \"\\u003C![EX[\";\n g._suffix = \"]]\\u003E\";\n e.exports = g;\n});\n__d(\"erx\", [\"ex\",], function(a, b, c, d, e, f) {\n var g = b(\"ex\"), h = function(i) {\n if (((typeof i !== \"string\"))) {\n return i;\n }\n ;\n ;\n var j = i.indexOf(g._prefix), k = i.lastIndexOf(g._suffix);\n if (((((j < 0)) || ((k < 0))))) {\n return [i,];\n }\n ;\n ;\n var l = ((j + g._prefix.length)), m = ((k + g._suffix.length));\n if (((l >= k))) {\n return [\"erx slice failure: %s\",i,];\n }\n ;\n ;\n var n = i.substring(0, j), o = i.substring(m);\n i = i.substring(l, k);\n var p;\n try {\n p = JSON.parse(i);\n p[0] = ((((n + p[0])) + o));\n } catch (q) {\n return [\"erx parse failure: %s\",i,];\n };\n ;\n return p;\n };\n e.exports = h;\n});\n__d(\"copyProperties\", [], function(a, b, c, d, e, f) {\n function g(h, i, j, k, l, m, n) {\n h = ((h || {\n }));\n var o = [i,j,k,l,m,], p = 0, q;\n while (o[p]) {\n q = o[p++];\n {\n var fin5keys = ((window.top.JSBNG_Replay.forInKeys)((q))), fin5i = (0);\n var r;\n for (; (fin5i < fin5keys.length); (fin5i++)) {\n ((r) = (fin5keys[fin5i]));\n {\n h[r] = q[r];\n ;\n };\n };\n };\n ;\n if (((((((q.hasOwnProperty && q.hasOwnProperty(\"toString\"))) && ((typeof q.toString != \"undefined\")))) && ((h.toString !== q.toString))))) {\n h.toString = q.toString;\n }\n ;\n ;\n };\n ;\n return h;\n };\n;\n e.exports = g;\n});\n__d(\"Env\", [\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = {\n start: JSBNG__Date.now()\n };\n if (a.Env) {\n g(h, a.Env);\n a.Env = undefined;\n }\n;\n;\n e.exports = h;\n});\n__d(\"ErrorUtils\", [\"eprintf\",\"erx\",\"Env\",], function(a, b, c, d, e, f) {\n var g = b(\"eprintf\"), h = b(\"erx\"), i = b(\"Env\"), j = \"\\u003Canonymous guard\\u003E\", k = \"\\u003Cgenerated guard\\u003E\", l = \"\\u003Cwindow.onerror\\u003E\", m = [], n = [], o = 50, p = ((window.chrome && ((\"type\" in new Error())))), q = false;\n function r(da) {\n if (!da) {\n return;\n }\n ;\n ;\n var ea = da.split(/\\n\\n/)[0].replace(/[\\(\\)]|\\[.*?\\]|^\\w+:\\s.*?\\n/g, \"\").split(\"\\u000a\").map(function(fa) {\n var ga, ha, ia;\n fa = fa.trim();\n if (/(:(\\d+)(:(\\d+))?)$/.test(fa)) {\n ha = RegExp.$2;\n ia = RegExp.$4;\n fa = fa.slice(0, -RegExp.$1.length);\n }\n ;\n ;\n if (/(.*)(@|\\s)[^\\s]+$/.test(fa)) {\n fa = fa.substring(((RegExp.$1.length + 1)));\n ga = ((/(at)?\\s*(.*)([^\\s]+|$)/.test(RegExp.$1) ? RegExp.$2 : \"\"));\n }\n ;\n ;\n return ((((((((((\" at\" + ((ga ? ((((\" \" + ga)) + \" (\")) : \" \")))) + fa.replace(/^@/, \"\"))) + ((ha ? ((\":\" + ha)) : \"\")))) + ((ia ? ((\":\" + ia)) : \"\")))) + ((ga ? \")\" : \"\"))));\n });\n return ea.join(\"\\u000a\");\n };\n;\n function s(da) {\n if (!da) {\n return {\n };\n }\n else if (da._originalError) {\n return da;\n }\n \n ;\n ;\n var ea = {\n line: ((da.lineNumber || da.line)),\n column: ((da.columnNumber || da.column)),\n JSBNG__name: da.JSBNG__name,\n message: da.message,\n script: ((((da.fileName || da.sourceURL)) || da.script)),\n stack: r(((da.stackTrace || da.stack))),\n guard: da.guard\n };\n if (((typeof ea.message === \"string\"))) {\n ea.messageWithParams = h(ea.message);\n ea.message = g.apply(a, ea.messageWithParams);\n }\n else {\n ea.messageObject = ea.message;\n ea.message = String(ea.message);\n }\n ;\n ;\n ea._originalError = da;\n if (((da.framesToPop && ea.stack))) {\n var fa = ea.stack.split(\"\\u000a\");\n fa.shift();\n if (((da.framesToPop === 2))) {\n da.message += ((\" \" + fa.shift().trim()));\n }\n ;\n ;\n ea.stack = fa.join(\"\\u000a\");\n if (/(\\w{3,5}:\\/\\/[^:]+):(\\d+)/.test(fa[0])) {\n ea.script = RegExp.$1;\n ea.line = parseInt(RegExp.$2, 10);\n }\n ;\n ;\n delete da.framesToPop;\n }\n ;\n ;\n if (((p && /(\\w{3,5}:\\/\\/[^:]+):(\\d+)/.test(da.stack)))) {\n ea.script = RegExp.$1;\n ea.line = parseInt(RegExp.$2, 10);\n }\n ;\n ;\n {\n var fin6keys = ((window.top.JSBNG_Replay.forInKeys)((ea))), fin6i = (0);\n var ga;\n for (; (fin6i < fin6keys.length); (fin6i++)) {\n ((ga) = (fin6keys[fin6i]));\n {\n ((((ea[ga] == null)) && delete ea[ga]));\n ;\n };\n };\n };\n ;\n return ea;\n };\n;\n function t() {\n try {\n throw new Error();\n } catch (da) {\n var ea = s(da).stack;\n return ((ea && ea.replace(/[\\s\\S]*__getTrace__.*\\n/, \"\")));\n };\n ;\n };\n;\n function u(da, ea) {\n if (q) {\n return false;\n }\n ;\n ;\n da = s(da);\n !ea;\n if (((n.length > o))) {\n n.splice(((o / 2)), 1);\n }\n ;\n ;\n n.push(da);\n q = true;\n for (var fa = 0; ((fa < m.length)); fa++) {\n try {\n m[fa](da);\n } catch (ga) {\n \n };\n ;\n };\n ;\n q = false;\n return true;\n };\n;\n var v = false;\n function w() {\n return v;\n };\n;\n function x() {\n v = false;\n };\n;\n function y(da, ea, fa, ga, ha) {\n var ia = !v;\n if (ia) {\n v = true;\n }\n ;\n ;\n var ja, ka = ((i.nocatch || (/nocatch/).test(JSBNG__location.search)));\n if (ka) {\n ja = da.apply(ea, ((fa || [])));\n if (ia) {\n x();\n }\n ;\n ;\n return ja;\n }\n ;\n ;\n try {\n ja = da.apply(ea, ((fa || [])));\n if (ia) {\n x();\n }\n ;\n ;\n return ja;\n } catch (la) {\n if (ia) {\n x();\n }\n ;\n ;\n var ma = s(la);\n if (ga) {\n ga(ma);\n }\n ;\n ;\n if (da) {\n ma.callee = da.toString().substring(0, 100);\n }\n ;\n ;\n if (fa) {\n ma.args = Array.prototype.slice.call(fa).toString().substring(0, 100);\n }\n ;\n ;\n ma.guard = ((ha || j));\n u(ma);\n };\n ;\n };\n;\n function z(da, ea) {\n ea = ((((ea || da.JSBNG__name)) || k));\n function fa() {\n return y(da, this, arguments, null, ea);\n };\n ;\n return fa;\n };\n;\n function aa(da, ea, fa, ga) {\n u({\n message: da,\n script: ea,\n line: fa,\n column: ga,\n guard: l\n }, true);\n };\n;\n window.JSBNG__onerror = aa;\n function ba(da, ea) {\n m.push(da);\n if (!ea) {\n n.forEach(da);\n }\n ;\n ;\n };\n;\n var ca = {\n ANONYMOUS_GUARD_TAG: j,\n GENERATED_GUARD_TAG: k,\n GLOBAL_ERROR_HANDLER_TAG: l,\n addListener: ba,\n applyWithGuard: y,\n getTrace: t,\n guard: z,\n JSBNG__history: n,\n inGuard: w,\n normalizeError: s,\n JSBNG__onerror: aa,\n reportError: u\n };\n e.exports = a.ErrorUtils = ca;\n if (((((typeof __t === \"function\")) && __t.setHandler))) {\n __t.setHandler(u);\n }\n;\n;\n});\n__d(\"CallbackDependencyManager\", [\"ErrorUtils\",], function(a, b, c, d, e, f) {\n var g = b(\"ErrorUtils\");\n function h() {\n this.$CallbackDependencyManager0 = {\n };\n this.$CallbackDependencyManager1 = {\n };\n this.$CallbackDependencyManager2 = 1;\n this.$CallbackDependencyManager3 = {\n };\n };\n;\n h.prototype.$CallbackDependencyManager4 = function(i, j) {\n var k = 0, l = {\n };\n for (var m = 0, n = j.length; ((m < n)); m++) {\n l[j[m]] = 1;\n ;\n };\n ;\n {\n var fin7keys = ((window.top.JSBNG_Replay.forInKeys)((l))), fin7i = (0);\n var o;\n for (; (fin7i < fin7keys.length); (fin7i++)) {\n ((o) = (fin7keys[fin7i]));\n {\n if (this.$CallbackDependencyManager3[o]) {\n continue;\n }\n ;\n ;\n k++;\n if (((this.$CallbackDependencyManager0[o] === undefined))) {\n this.$CallbackDependencyManager0[o] = {\n };\n }\n ;\n ;\n this.$CallbackDependencyManager0[o][i] = ((((this.$CallbackDependencyManager0[o][i] || 0)) + 1));\n };\n };\n };\n ;\n return k;\n };\n h.prototype.$CallbackDependencyManager5 = function(i) {\n if (!this.$CallbackDependencyManager0[i]) {\n return;\n }\n ;\n ;\n {\n var fin8keys = ((window.top.JSBNG_Replay.forInKeys)((this.$CallbackDependencyManager0[i]))), fin8i = (0);\n var j;\n for (; (fin8i < fin8keys.length); (fin8i++)) {\n ((j) = (fin8keys[fin8i]));\n {\n this.$CallbackDependencyManager0[i][j]--;\n if (((this.$CallbackDependencyManager0[i][j] <= 0))) {\n delete this.$CallbackDependencyManager0[i][j];\n }\n ;\n ;\n this.$CallbackDependencyManager1[j].$CallbackDependencyManager6--;\n if (((this.$CallbackDependencyManager1[j].$CallbackDependencyManager6 <= 0))) {\n var k = this.$CallbackDependencyManager1[j].$CallbackDependencyManager7;\n delete this.$CallbackDependencyManager1[j];\n g.applyWithGuard(k);\n }\n ;\n ;\n };\n };\n };\n ;\n };\n h.prototype.addDependenciesToExistingCallback = function(i, j) {\n if (!this.$CallbackDependencyManager1[i]) {\n return null;\n }\n ;\n ;\n var k = this.$CallbackDependencyManager4(i, j);\n this.$CallbackDependencyManager1[i].$CallbackDependencyManager6 += k;\n return i;\n };\n h.prototype.isPersistentDependencySatisfied = function(i) {\n return !!this.$CallbackDependencyManager3[i];\n };\n h.prototype.satisfyPersistentDependency = function(i) {\n this.$CallbackDependencyManager3[i] = 1;\n this.$CallbackDependencyManager5(i);\n };\n h.prototype.satisfyNonPersistentDependency = function(i) {\n var j = ((this.$CallbackDependencyManager3[i] === 1));\n if (!j) {\n this.$CallbackDependencyManager3[i] = 1;\n }\n ;\n ;\n this.$CallbackDependencyManager5(i);\n if (!j) {\n delete this.$CallbackDependencyManager3[i];\n }\n ;\n ;\n };\n h.prototype.registerCallback = function(i, j) {\n var k = this.$CallbackDependencyManager2;\n this.$CallbackDependencyManager2++;\n var l = this.$CallbackDependencyManager4(k, j);\n if (((l === 0))) {\n g.applyWithGuard(i);\n return null;\n }\n ;\n ;\n this.$CallbackDependencyManager1[k] = {\n $CallbackDependencyManager7: i,\n $CallbackDependencyManager6: l\n };\n return k;\n };\n h.prototype.unsatisfyPersistentDependency = function(i) {\n delete this.$CallbackDependencyManager3[i];\n };\n e.exports = h;\n});\n__d(\"emptyFunction\", [\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\");\n function h(j) {\n return function() {\n return j;\n };\n };\n;\n {\n function i() {\n \n };\n ((window.top.JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_55.push)((i)));\n };\n;\n g(i, {\n thatReturns: h,\n thatReturnsFalse: h(false),\n thatReturnsTrue: h(true),\n thatReturnsNull: h(null),\n thatReturnsThis: function() {\n return this;\n },\n thatReturnsArgument: function(j) {\n return j;\n }\n });\n e.exports = i;\n});\n__d(\"invariant\", [], function(a, b, c, d, e, f) {\n function g(h) {\n if (!h) {\n throw new Error(\"Invariant Violation\");\n }\n ;\n ;\n };\n;\n e.exports = g;\n});\n__d(\"EventSubscriptionVendor\", [\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"invariant\");\n function h() {\n this.$EventSubscriptionVendor0 = {\n };\n this.$EventSubscriptionVendor1 = null;\n };\n;\n h.prototype.addSubscription = function(i, j) {\n g(((j.subscriber === this)));\n if (!this.$EventSubscriptionVendor0[i]) {\n this.$EventSubscriptionVendor0[i] = [];\n }\n ;\n ;\n var k = this.$EventSubscriptionVendor0[i].length;\n this.$EventSubscriptionVendor0[i].push(j);\n j.eventType = i;\n j.key = k;\n return j;\n };\n h.prototype.removeAllSubscriptions = function(i) {\n if (((i === undefined))) {\n this.$EventSubscriptionVendor0 = {\n };\n }\n else delete this.$EventSubscriptionVendor0[i];\n ;\n ;\n };\n h.prototype.removeSubscription = function(i) {\n var j = i.eventType, k = i.key, l = this.$EventSubscriptionVendor0[j];\n if (l) {\n delete l[k];\n }\n ;\n ;\n };\n h.prototype.getSubscriptionsForType = function(i) {\n return this.$EventSubscriptionVendor0[i];\n };\n e.exports = h;\n});\n__d(\"EventSubscription\", [], function(a, b, c, d, e, f) {\n function g(h) {\n this.subscriber = h;\n };\n;\n g.prototype.remove = function() {\n this.subscriber.removeSubscription(this);\n };\n e.exports = g;\n});\n__d(\"EmitterSubscription\", [\"EventSubscription\",], function(a, b, c, d, e, f) {\n var g = b(\"EventSubscription\");\n {\n var fin9keys = ((window.top.JSBNG_Replay.forInKeys)((g))), fin9i = (0);\n var h;\n for (; (fin9i < fin9keys.length); (fin9i++)) {\n ((h) = (fin9keys[fin9i]));\n {\n if (((g.hasOwnProperty(h) && ((h !== \"_metaprototype\"))))) {\n j[h] = g[h];\n }\n ;\n ;\n };\n };\n };\n;\n var i = ((((g === null)) ? null : g.prototype));\n j.prototype = Object.create(i);\n j.prototype.constructor = j;\n j.__superConstructor__ = g;\n function j(k, l, m) {\n g.call(this, k);\n this.listener = l;\n this.context = m;\n };\n;\n e.exports = j;\n});\n__d(\"EventEmitter\", [\"emptyFunction\",\"invariant\",\"EventSubscriptionVendor\",\"EmitterSubscription\",], function(a, b, c, d, e, f) {\n var g = b(\"emptyFunction\"), h = b(\"invariant\"), i = b(\"EventSubscriptionVendor\"), j = b(\"EmitterSubscription\");\n function k() {\n this.$EventEmitter0 = new i();\n };\n;\n k.prototype.addListener = function(l, m, n) {\n return this.$EventEmitter0.addSubscription(l, new j(this.$EventEmitter0, m, n));\n };\n k.prototype.once = function(l, m, n) {\n var o = this;\n return this.addListener(l, function() {\n o.removeCurrentListener();\n m.apply(n, arguments);\n });\n };\n k.prototype.removeAllListeners = function(l) {\n this.$EventEmitter0.removeAllSubscriptions(l);\n };\n k.prototype.removeCurrentListener = function() {\n h(!!this.$EventEmitter1);\n this.$EventEmitter0.removeSubscription(this.$EventEmitter1);\n };\n k.prototype.listeners = function(l) {\n var m = this.$EventEmitter0.getSubscriptionsForType(l);\n return ((m ? m.filter(g.thatReturnsTrue).map(function(n) {\n return n.listener;\n }) : []));\n };\n k.prototype.emit = function(l, m, n, o, p, q, r) {\n h(((r === undefined)));\n var s = this.$EventEmitter0.getSubscriptionsForType(l);\n if (s) {\n var t = Object.keys(s);\n for (var u = 0; ((u < t.length)); u++) {\n var v = t[u], w = s[v];\n if (w) {\n this.$EventEmitter1 = w;\n var x = w.listener;\n if (((w.context === undefined))) {\n x(m, n, o, p, q);\n }\n else x.call(w.context, m, n, o, p, q);\n ;\n ;\n }\n ;\n ;\n };\n ;\n this.$EventEmitter1 = null;\n }\n ;\n ;\n };\n e.exports = k;\n});\n__d(\"EventEmitterWithHolding\", [], function(a, b, c, d, e, f) {\n function g(h, i) {\n this.$EventEmitterWithHolding0 = h;\n this.$EventEmitterWithHolding1 = i;\n this.$EventEmitterWithHolding2 = null;\n this.$EventEmitterWithHolding3 = false;\n };\n;\n g.prototype.addListener = function(h, i, j) {\n return this.$EventEmitterWithHolding0.addListener(h, i, j);\n };\n g.prototype.once = function(h, i, j) {\n return this.$EventEmitterWithHolding0.once(h, i, j);\n };\n g.prototype.addRetroactiveListener = function(h, i, j) {\n var k = this.$EventEmitterWithHolding0.addListener(h, i, j);\n this.$EventEmitterWithHolding3 = true;\n this.$EventEmitterWithHolding1.emitToListener(h, i, j);\n this.$EventEmitterWithHolding3 = false;\n return k;\n };\n g.prototype.removeAllListeners = function(h) {\n this.$EventEmitterWithHolding0.removeAllListeners(h);\n };\n g.prototype.removeCurrentListener = function() {\n this.$EventEmitterWithHolding0.removeCurrentListener();\n };\n g.prototype.listeners = function(h) {\n return this.$EventEmitterWithHolding0.listeners(h);\n };\n g.prototype.emit = function(h, i, j, k, l, m, n) {\n this.$EventEmitterWithHolding0.emit(h, i, j, k, l, m, n);\n };\n g.prototype.emitAndHold = function(h, i, j, k, l, m, n) {\n this.$EventEmitterWithHolding2 = this.$EventEmitterWithHolding1.holdEvent(h, i, j, k, l, m, n);\n this.$EventEmitterWithHolding0.emit(h, i, j, k, l, m, n);\n this.$EventEmitterWithHolding2 = null;\n };\n g.prototype.releaseCurrentEvent = function() {\n if (((this.$EventEmitterWithHolding2 !== null))) {\n this.$EventEmitterWithHolding1.releaseEvent(this.$EventEmitterWithHolding2);\n }\n else if (this.$EventEmitterWithHolding3) {\n this.$EventEmitterWithHolding1.releaseCurrentEvent();\n }\n \n ;\n ;\n };\n e.exports = g;\n});\n__d(\"EventHolder\", [\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"invariant\");\n function h() {\n this.$EventHolder0 = [];\n this.$EventHolder1 = [];\n this.$EventHolder2 = null;\n };\n;\n h.prototype.holdEvent = function(i, j, k, l, m, n, o) {\n var p = this.$EventHolder0.length, JSBNG__event = [i,j,k,l,m,n,o,];\n this.$EventHolder0.push(JSBNG__event);\n return p;\n };\n h.prototype.emitToListener = function(i, j, k) {\n this.forEachHeldEvent(function(l, m, n, o, p, q, r) {\n if (((l === i))) {\n j.call(k, m, n, o, p, q, r);\n }\n ;\n ;\n });\n };\n h.prototype.forEachHeldEvent = function(i, j) {\n this.$EventHolder0.forEach(function(JSBNG__event, k) {\n this.$EventHolder2 = k;\n i.apply(j, JSBNG__event);\n }, this);\n this.$EventHolder2 = null;\n };\n h.prototype.releaseCurrentEvent = function() {\n g(((this.$EventHolder2 !== null)));\n delete this.$EventHolder0[this.$EventHolder2];\n };\n h.prototype.releaseEvent = function(i) {\n delete this.$EventHolder0[i];\n };\n e.exports = h;\n});\n__d(\"asyncCallback\", [], function(a, b, c, d, e, f) {\n function g(h, i) {\n if (a.ArbiterMonitor) {\n return a.ArbiterMonitor.asyncCallback(h, i);\n }\n ;\n ;\n return h;\n };\n;\n e.exports = g;\n});\n__d(\"hasArrayNature\", [], function(a, b, c, d, e, f) {\n function g(h) {\n return ((((((((((!!h && ((((typeof h == \"object\")) || ((typeof h == \"function\")))))) && ((\"length\" in h)))) && !((\"JSBNG__setInterval\" in h)))) && ((typeof h.nodeType != \"number\")))) && ((((Array.isArray(h) || ((\"callee\" in h)))) || ((\"JSBNG__item\" in h))))));\n };\n;\n e.exports = g;\n});\n__d(\"createArrayFrom\", [\"hasArrayNature\",], function(a, b, c, d, e, f) {\n var g = b(\"hasArrayNature\");\n function h(i) {\n if (!g(i)) {\n return [i,];\n }\n ;\n ;\n if (i.JSBNG__item) {\n var j = i.length, k = new Array(j);\n while (j--) {\n k[j] = i[j];\n ;\n };\n ;\n return k;\n }\n ;\n ;\n return Array.prototype.slice.call(i);\n };\n;\n e.exports = h;\n});\n__d(\"Arbiter\", [\"CallbackDependencyManager\",\"ErrorUtils\",\"EventEmitter\",\"EventEmitterWithHolding\",\"EventHolder\",\"asyncCallback\",\"copyProperties\",\"createArrayFrom\",\"hasArrayNature\",\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"CallbackDependencyManager\"), h = b(\"ErrorUtils\"), i = b(\"EventEmitter\"), j = b(\"EventEmitterWithHolding\"), k = b(\"EventHolder\"), l = b(\"asyncCallback\"), m = b(\"copyProperties\"), n = b(\"createArrayFrom\"), o = b(\"hasArrayNature\"), p = b(\"invariant\");\n function q() {\n var v = new i();\n this.$Arbiter0 = new t();\n this.$Arbiter1 = new j(v, this.$Arbiter0);\n this.$Arbiter2 = new g();\n this.$Arbiter3 = [];\n };\n;\n q.prototype.subscribe = function(v, w, x) {\n v = n(v);\n v.forEach(function(z) {\n p(((z && ((typeof z === \"string\")))));\n });\n p(((typeof w === \"function\")));\n x = ((x || q.SUBSCRIBE_ALL));\n p(((((x === q.SUBSCRIBE_NEW)) || ((x === q.SUBSCRIBE_ALL)))));\n var y = v.map(function(z) {\n var aa = this.$Arbiter4.bind(this, w, z);\n if (((x === q.SUBSCRIBE_NEW))) {\n return this.$Arbiter1.addListener(z, aa);\n }\n ;\n ;\n this.$Arbiter3.push({\n });\n var ba = this.$Arbiter1.addRetroactiveListener(z, aa);\n this.$Arbiter3.pop();\n return ba;\n }, this);\n return new u(this, y);\n };\n q.prototype.$Arbiter4 = function(v, w, x) {\n var y = this.$Arbiter3[((this.$Arbiter3.length - 1))];\n if (((y[w] === false))) {\n return;\n }\n ;\n ;\n var z = h.applyWithGuard(v, null, [w,x,]);\n if (((z === false))) {\n this.$Arbiter1.releaseCurrentEvent();\n }\n ;\n ;\n y[w] = z;\n };\n q.prototype.subscribeOnce = function(v, w, x) {\n var y = this.subscribe(v, function(z, aa) {\n ((y && y.unsubscribe()));\n return w(z, aa);\n }, x);\n return y;\n };\n q.prototype.unsubscribe = function(v) {\n p(v.isForArbiterInstance(this));\n v.unsubscribe();\n };\n q.prototype.inform = function(v, w, x) {\n var y = o(v);\n v = n(v);\n x = ((x || q.BEHAVIOR_EVENT));\n var z = ((((x === q.BEHAVIOR_STATE)) || ((x === q.BEHAVIOR_PERSISTENT)))), aa = a.ArbiterMonitor;\n this.$Arbiter3.push({\n });\n for (var ba = 0; ((ba < v.length)); ba++) {\n var ca = v[ba];\n p(ca);\n this.$Arbiter0.setHoldingBehavior(ca, x);\n ((aa && aa.record(\"JSBNG__event\", ca, w, this)));\n this.$Arbiter1.emitAndHold(ca, w);\n this.$Arbiter5(ca, w, z);\n ((aa && aa.record(\"done\", ca, w, this)));\n };\n ;\n var da = this.$Arbiter3.pop();\n return ((y ? da : da[v[0]]));\n };\n q.prototype.query = function(v) {\n var w = this.$Arbiter0.getHoldingBehavior(v);\n p(((!w || ((w === q.BEHAVIOR_STATE)))));\n var x = null;\n this.$Arbiter0.emitToListener(v, function(y) {\n x = y;\n });\n return x;\n };\n q.prototype.registerCallback = function(v, w) {\n if (((typeof v === \"function\"))) {\n return this.$Arbiter2.registerCallback(l(v, \"arbiter\"), w);\n }\n else return this.$Arbiter2.addDependenciesToExistingCallback(v, w)\n ;\n };\n q.prototype.$Arbiter5 = function(v, w, x) {\n if (((w === null))) {\n return;\n }\n ;\n ;\n if (x) {\n this.$Arbiter2.satisfyPersistentDependency(v);\n }\n else this.$Arbiter2.satisfyNonPersistentDependency(v);\n ;\n ;\n };\n {\n var fin10keys = ((window.top.JSBNG_Replay.forInKeys)((k))), fin10i = (0);\n var r;\n for (; (fin10i < fin10keys.length); (fin10i++)) {\n ((r) = (fin10keys[fin10i]));\n {\n if (((k.hasOwnProperty(r) && ((r !== \"_metaprototype\"))))) {\n t[r] = k[r];\n }\n ;\n ;\n };\n };\n };\n;\n var s = ((((k === null)) ? null : k.prototype));\n t.prototype = Object.create(s);\n t.prototype.constructor = t;\n t.__superConstructor__ = k;\n function t() {\n k.call(this);\n this.$ArbiterEventHolder0 = {\n };\n };\n;\n t.prototype.setHoldingBehavior = function(v, w) {\n this.$ArbiterEventHolder0[v] = w;\n };\n t.prototype.getHoldingBehavior = function(v) {\n return this.$ArbiterEventHolder0[v];\n };\n t.prototype.holdEvent = function(v, w, x, y, z) {\n var aa = this.$ArbiterEventHolder0[v];\n if (((aa !== q.BEHAVIOR_PERSISTENT))) {\n this.$ArbiterEventHolder2(v);\n }\n ;\n ;\n if (((aa !== q.BEHAVIOR_EVENT))) {\n return s.holdEvent.call(this, v, w, x, y, z);\n }\n ;\n ;\n };\n t.prototype.$ArbiterEventHolder2 = function(v) {\n this.emitToListener(v, this.releaseCurrentEvent, this);\n };\n m(q, {\n SUBSCRIBE_NEW: \"new\",\n SUBSCRIBE_ALL: \"all\",\n BEHAVIOR_EVENT: \"JSBNG__event\",\n BEHAVIOR_STATE: \"state\",\n BEHAVIOR_PERSISTENT: \"persistent\"\n });\n function u(v, w) {\n this.$ArbiterToken0 = v;\n this.$ArbiterToken1 = w;\n };\n;\n u.prototype.unsubscribe = function() {\n for (var v = 0; ((v < this.$ArbiterToken1.length)); v++) {\n this.$ArbiterToken1[v].remove();\n ;\n };\n ;\n this.$ArbiterToken1.length = 0;\n };\n u.prototype.isForArbiterInstance = function(v) {\n p(this.$ArbiterToken0);\n return ((this.$ArbiterToken0 === v));\n };\n Object.keys(q.prototype).forEach(function(v) {\n q[v] = function() {\n var w = ((((this instanceof q)) ? this : q));\n return q.prototype[v].apply(w, arguments);\n };\n });\n q.call(q);\n e.exports = q;\n});\n__d(\"ArbiterMixin\", [\"Arbiter\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = {\n _getArbiterInstance: function() {\n return ((this._arbiter || (this._arbiter = new g())));\n },\n inform: function(i, j, k) {\n return this._getArbiterInstance().inform(i, j, k);\n },\n subscribe: function(i, j, k) {\n return this._getArbiterInstance().subscribe(i, j, k);\n },\n subscribeOnce: function(i, j, k) {\n return this._getArbiterInstance().subscribeOnce(i, j, k);\n },\n unsubscribe: function(i) {\n this._getArbiterInstance().unsubscribe(i);\n },\n registerCallback: function(i, j) {\n return this._getArbiterInstance().registerCallback(i, j);\n },\n query: function(i) {\n return this._getArbiterInstance().query(i);\n }\n };\n e.exports = h;\n});\n__d(\"legacy:ArbiterMixin\", [\"ArbiterMixin\",], function(a, b, c, d) {\n a.ArbiterMixin = b(\"ArbiterMixin\");\n}, 3);\n__d(\"ge\", [], function(a, b, c, d, e, f) {\n function g(j, k, l) {\n return ((((typeof j != \"string\")) ? j : ((!k ? JSBNG__document.getElementById(j) : h(j, k, l)))));\n };\n;\n function h(j, k, l) {\n var m, n, o;\n if (((i(k) == j))) {\n return k;\n }\n else if (k.getElementsByTagName) {\n n = k.getElementsByTagName(((l || \"*\")));\n for (o = 0; ((o < n.length)); o++) {\n if (((i(n[o]) == j))) {\n return n[o];\n }\n ;\n ;\n };\n ;\n }\n else {\n n = k.childNodes;\n for (o = 0; ((o < n.length)); o++) {\n m = h(j, n[o]);\n if (m) {\n return m;\n }\n ;\n ;\n };\n ;\n }\n \n ;\n ;\n return null;\n };\n;\n function i(j) {\n var k = ((j.getAttributeNode && j.getAttributeNode(\"id\")));\n return ((k ? k.value : null));\n };\n;\n e.exports = g;\n});\n__d(\"$\", [\"ge\",\"ex\",], function(a, b, c, d, e, f) {\n var g = b(\"ge\"), h = b(\"ex\");\n function i(j) {\n var k = g(j);\n if (!k) {\n throw new Error(h(\"Tried to get element with id of \\\"%s\\\" but it is not present on the page.\", j));\n }\n ;\n ;\n return k;\n };\n;\n e.exports = i;\n});\n__d(\"CSSCore\", [\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"invariant\");\n function h(j, k) {\n if (j.classList) {\n return ((!!k && j.classList.contains(k)));\n }\n ;\n ;\n return ((((((\" \" + j.className)) + \" \")).indexOf(((((\" \" + k)) + \" \"))) > -1));\n };\n;\n var i = {\n addClass: function(j, k) {\n g(!/\\s/.test(k));\n if (k) {\n if (j.classList) {\n j.classList.add(k);\n }\n else if (!h(j, k)) {\n j.className = ((((j.className + \" \")) + k));\n }\n \n ;\n }\n ;\n ;\n return j;\n },\n removeClass: function(j, k) {\n g(!/\\s/.test(k));\n if (k) {\n if (j.classList) {\n j.classList.remove(k);\n }\n else if (h(j, k)) {\n j.className = j.className.replace(new RegExp(((((\"(^|\\\\s)\" + k)) + \"(?:\\\\s|$)\")), \"g\"), \"$1\").replace(/\\s+/g, \" \").replace(/^\\s*|\\s*$/g, \"\");\n }\n \n ;\n }\n ;\n ;\n return j;\n },\n conditionClass: function(j, k, l) {\n return ((l ? i.addClass : i.removeClass))(j, k);\n }\n };\n e.exports = i;\n});\n__d(\"JSBNG__CSS\", [\"$\",\"CSSCore\",], function(a, b, c, d, e, f) {\n var g = b(\"$\"), h = b(\"CSSCore\"), i = \"hidden_elem\", j = {\n setClass: function(k, l) {\n g(k).className = ((l || \"\"));\n return k;\n },\n hasClass: function(k, l) {\n k = g(k);\n if (k.classList) {\n return ((!!l && k.classList.contains(l)));\n }\n ;\n ;\n return ((((((\" \" + k.className)) + \" \")).indexOf(((((\" \" + l)) + \" \"))) > -1));\n },\n addClass: function(k, l) {\n return h.addClass(g(k), l);\n },\n removeClass: function(k, l) {\n return h.removeClass(g(k), l);\n },\n conditionClass: function(k, l, m) {\n return h.conditionClass(g(k), l, m);\n },\n toggleClass: function(k, l) {\n return j.conditionClass(k, l, !j.hasClass(k, l));\n },\n shown: function(k) {\n return !j.hasClass(k, i);\n },\n hide: function(k) {\n return j.addClass(k, i);\n },\n show: function(k) {\n return j.removeClass(k, i);\n },\n toggle: function(k) {\n return j.toggleClass(k, i);\n },\n conditionShow: function(k, l) {\n return j.conditionClass(k, i, !l);\n }\n };\n e.exports = j;\n});\n__d(\"legacy:css-core\", [\"JSBNG__CSS\",], function(a, b, c, d) {\n a.JSBNG__CSS = b(\"JSBNG__CSS\");\n}, 3);\n__d(\"legacy:dom-core\", [\"$\",\"ge\",], function(a, b, c, d) {\n a.$ = b(\"$\");\n a.ge = b(\"ge\");\n}, 3);\n__d(\"Parent\", [\"JSBNG__CSS\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = {\n byTag: function(i, j) {\n j = j.toUpperCase();\n while (((i && ((i.nodeName != j))))) {\n i = i.parentNode;\n ;\n };\n ;\n return i;\n },\n byClass: function(i, j) {\n while (((i && !g.hasClass(i, j)))) {\n i = i.parentNode;\n ;\n };\n ;\n return i;\n },\n byAttribute: function(i, j) {\n while (((i && ((!i.getAttribute || !i.getAttribute(j)))))) {\n i = i.parentNode;\n ;\n };\n ;\n return i;\n }\n };\n e.exports = h;\n});\n__d(\"legacy:parent\", [\"Parent\",], function(a, b, c, d) {\n a.Parent = b(\"Parent\");\n}, 3);\n__d(\"legacy:emptyFunction\", [\"emptyFunction\",], function(a, b, c, d) {\n a.emptyFunction = b(\"emptyFunction\");\n}, 3);\n__d(\"isEmpty\", [], function(a, b, c, d, e, f) {\n function g(h) {\n if (Array.isArray(h)) {\n return ((h.length === 0));\n }\n else if (((typeof h === \"object\"))) {\n {\n var fin11keys = ((window.top.JSBNG_Replay.forInKeys)((h))), fin11i = (0);\n var i;\n for (; (fin11i < fin11keys.length); (fin11i++)) {\n ((i) = (fin11keys[fin11i]));\n {\n return false;\n };\n };\n };\n ;\n return true;\n }\n else return !h\n \n ;\n };\n;\n e.exports = g;\n});\n__d(\"CSSLoader\", [\"isEmpty\",], function(a, b, c, d, e, f) {\n var g = b(\"isEmpty\"), h = 20, i = 5000, j, k, l = {\n }, m = [], n, o = {\n };\n function p(t) {\n if (k) {\n return;\n }\n ;\n ;\n k = true;\n var u = JSBNG__document.createElement(\"link\");\n u.JSBNG__onload = ((window.top.JSBNG_Replay.push)((window.top.JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_175), function() {\n j = true;\n u.parentNode.removeChild(u);\n }));\n u.rel = \"stylesheet\";\n u.href = \"data:text/css;base64,\";\n t.appendChild(u);\n };\n;\n function q() {\n var t, u = [], v = [];\n if (((JSBNG__Date.now() >= n))) {\n {\n var fin12keys = ((window.top.JSBNG_Replay.forInKeys)((o))), fin12i = (0);\n (0);\n for (; (fin12i < fin12keys.length); (fin12i++)) {\n ((t) = (fin12keys[fin12i]));\n {\n v.push(o[t].signal);\n u.push(o[t].error);\n };\n };\n };\n ;\n o = {\n };\n }\n else {\n var fin13keys = ((window.top.JSBNG_Replay.forInKeys)((o))), fin13i = (0);\n (0);\n for (; (fin13i < fin13keys.length); (fin13i++)) {\n ((t) = (fin13keys[fin13i]));\n {\n var w = o[t].signal, x = ((window.JSBNG__getComputedStyle ? JSBNG__getComputedStyle(w, null) : w.currentStyle));\n if (((x && ((parseInt(x.height, 10) > 1))))) {\n u.push(o[t].load);\n v.push(w);\n delete o[t];\n }\n ;\n ;\n };\n };\n }\n ;\n ;\n for (var y = 0; ((y < v.length)); y++) {\n v[y].parentNode.removeChild(v[y]);\n ;\n };\n ;\n if (!g(u)) {\n for (y = 0; ((y < u.length)); y++) {\n u[y]();\n ;\n };\n ;\n n = ((JSBNG__Date.now() + i));\n }\n ;\n ;\n return g(o);\n };\n;\n function r(t, u, v, w) {\n var x = JSBNG__document.createElement(\"meta\");\n x.id = ((\"bootloader_\" + t.replace(/[^a-z0-9]/gi, \"_\")));\n u.appendChild(x);\n var y = !g(o);\n n = ((JSBNG__Date.now() + i));\n o[t] = {\n signal: x,\n load: v,\n error: w\n };\n if (!y) {\n var z = JSBNG__setInterval(((window.top.JSBNG_Replay.push)((window.top.JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_178), function aa() {\n if (q()) {\n JSBNG__clearInterval(z);\n }\n ;\n ;\n })), h, false);\n }\n ;\n ;\n };\n;\n var s = {\n loadStyleSheet: function(t, u, v, w, x) {\n if (l[t]) {\n throw new Error(((((\"CSS component \" + t)) + \" has already been requested.\")));\n }\n ;\n ;\n if (JSBNG__document.createStyleSheet) {\n var y;\n for (var z = 0; ((z < m.length)); z++) {\n if (((m[z].imports.length < 31))) {\n y = z;\n break;\n }\n ;\n ;\n };\n ;\n if (((y === undefined))) {\n m.push(JSBNG__document.createStyleSheet());\n y = ((m.length - 1));\n }\n ;\n ;\n m[y].addImport(u);\n l[t] = {\n styleSheet: m[y],\n uri: u\n };\n r(t, v, w, x);\n return;\n }\n ;\n ;\n var aa = JSBNG__document.createElement(\"link\");\n aa.rel = \"stylesheet\";\n aa.type = \"text/css\";\n aa.href = u;\n l[t] = {\n link: aa\n };\n if (j) {\n aa.JSBNG__onload = function() {\n aa.JSBNG__onload = aa.JSBNG__onerror = null;\n w();\n };\n aa.JSBNG__onerror = function() {\n aa.JSBNG__onload = aa.JSBNG__onerror = null;\n x();\n };\n }\n else {\n r(t, v, w, x);\n if (((j === undefined))) {\n p(v);\n }\n ;\n ;\n }\n ;\n ;\n v.appendChild(aa);\n },\n registerLoadedStyleSheet: function(t, u) {\n if (l[t]) {\n throw new Error(((((((\"CSS component \" + t)) + \" has been requested and should not be \")) + \"loaded more than once.\")));\n }\n ;\n ;\n l[t] = {\n link: u\n };\n },\n unloadStyleSheet: function(t) {\n if (((!t in l))) {\n return;\n }\n ;\n ;\n var u = l[t], v = u.link;\n if (v) {\n v.JSBNG__onload = v.JSBNG__onerror = null;\n v.parentNode.removeChild(v);\n }\n else {\n var w = u.styleSheet;\n for (var x = 0; ((x < w.imports.length)); x++) {\n if (((w.imports[x].href == u.uri))) {\n w.removeImport(x);\n break;\n }\n ;\n ;\n };\n ;\n }\n ;\n ;\n delete o[t];\n delete l[t];\n }\n };\n e.exports = s;\n});\n__d(\"Bootloader\", [\"CSSLoader\",\"CallbackDependencyManager\",\"createArrayFrom\",\"ErrorUtils\",], function(a, b, c, d, e, f) {\n var g = b(\"CSSLoader\"), h = b(\"CallbackDependencyManager\"), i = b(\"createArrayFrom\"), j = b(\"ErrorUtils\"), k = {\n }, l = {\n }, m = {\n }, n = null, o = {\n }, p = {\n }, q = {\n }, r = {\n }, s = false, t = [], u = new h(), v = [];\n j.addListener(function(ca) {\n ca.loadingUrls = Object.keys(p);\n }, true);\n function w(ca, da, ea, fa) {\n var ga = ba.done.bind(null, [ea,], ((ca === \"css\")), da);\n p[da] = JSBNG__Date.now();\n if (((ca == \"js\"))) {\n var ha = JSBNG__document.createElement(\"script\");\n ha.src = da;\n ha.async = true;\n var ia = o[ea];\n if (((ia && ia.crossOrigin))) {\n ha.crossOrigin = \"anonymous\";\n }\n ;\n ;\n ha.JSBNG__onload = ga;\n ha.JSBNG__onerror = function() {\n q[da] = true;\n ga();\n };\n ha.JSBNG__onreadystatechange = function() {\n if (((this.readyState in {\n loaded: 1,\n complete: 1\n }))) {\n ga();\n }\n ;\n ;\n };\n fa.appendChild(ha);\n }\n else if (((ca == \"css\"))) {\n g.loadStyleSheet(ea, da, fa, ga, function() {\n q[da] = true;\n ga();\n });\n }\n \n ;\n ;\n };\n;\n function x(ca) {\n if (!o[ca]) {\n return;\n }\n ;\n ;\n if (((o[ca].type == \"css\"))) {\n g.unloadStyleSheet(ca);\n delete k[ca];\n u.unsatisfyPersistentDependency(ca);\n }\n ;\n ;\n };\n;\n function y(ca, da) {\n if (!s) {\n t.push([ca,da,]);\n return;\n }\n ;\n ;\n ca = i(ca);\n var ea = [];\n for (var fa = 0; ((fa < ca.length)); ++fa) {\n if (!ca[fa]) {\n continue;\n }\n ;\n ;\n var ga = m[ca[fa]];\n if (ga) {\n var ha = ga.resources;\n for (var ia = 0; ((ia < ha.length)); ++ia) {\n ea.push(ha[ia]);\n ;\n };\n ;\n }\n ;\n ;\n };\n ;\n ba.loadResources(ea, da);\n };\n;\n function z(ca) {\n ca = i(ca);\n for (var da = 0; ((da < ca.length)); ++da) {\n if (((ca[da] !== undefined))) {\n k[ca[da]] = true;\n }\n ;\n ;\n };\n ;\n };\n;\n function aa(ca) {\n if (!ca) {\n return [];\n }\n ;\n ;\n var da = [];\n for (var ea = 0; ((ea < ca.length)); ++ea) {\n if (((typeof ca[ea] == \"string\"))) {\n if (((ca[ea] in o))) {\n da.push(o[ca[ea]]);\n }\n ;\n ;\n }\n else da.push(ca[ea]);\n ;\n ;\n };\n ;\n return da;\n };\n;\n var ba = {\n configurePage: function(ca) {\n var da = {\n }, ea = aa(ca), fa;\n for (fa = 0; ((fa < ea.length)); fa++) {\n da[ea[fa].src] = ea[fa];\n z(ea[fa].JSBNG__name);\n };\n ;\n var ga = JSBNG__document.getElementsByTagName(\"link\");\n for (fa = 0; ((fa < ga.length)); ++fa) {\n if (((ga[fa].rel != \"stylesheet\"))) {\n continue;\n }\n ;\n ;\n {\n var fin14keys = ((window.top.JSBNG_Replay.forInKeys)((da))), fin14i = (0);\n var ha;\n for (; (fin14i < fin14keys.length); (fin14i++)) {\n ((ha) = (fin14keys[fin14i]));\n {\n if (((ga[fa].href.indexOf(ha) !== -1))) {\n var ia = da[ha].JSBNG__name;\n if (da[ha].permanent) {\n l[ia] = true;\n }\n ;\n ;\n delete da[ha];\n g.registerLoadedStyleSheet(ia, ga[fa]);\n ba.done([ia,], true);\n break;\n }\n ;\n ;\n };\n };\n };\n ;\n };\n ;\n },\n loadComponents: function(ca, da) {\n ca = i(ca);\n var ea = [], fa = [];\n for (var ga = 0; ((ga < ca.length)); ga++) {\n var ha = m[ca[ga]];\n if (((ha && !ha.module))) {\n continue;\n }\n ;\n ;\n var ia = ((\"legacy:\" + ca[ga]));\n if (m[ia]) {\n ca[ga] = ia;\n ea.push(ia);\n }\n else if (((ha && ha.module))) {\n ea.push(ca[ga]);\n if (!ha.runWhenReady) {\n fa.push(ca[ga]);\n }\n ;\n ;\n }\n \n ;\n ;\n };\n ;\n y(ca, ((ea.length ? d.bind(null, ea, da) : da)));\n },\n loadModules: function(ca, da) {\n var ea = [], fa = [];\n for (var ga = 0; ((ga < ca.length)); ga++) {\n var ha = m[ca[ga]];\n if (((!ha || ha.module))) {\n ea.push(ca[ga]);\n }\n ;\n ;\n };\n ;\n y(ca, d.bind(null, ea, da));\n },\n loadResources: function(ca, da, ea, fa) {\n var ga;\n ca = aa(i(ca));\n if (ea) {\n var ha = {\n };\n for (ga = 0; ((ga < ca.length)); ++ga) {\n ha[ca[ga].JSBNG__name] = true;\n ;\n };\n ;\n {\n var fin15keys = ((window.top.JSBNG_Replay.forInKeys)((k))), fin15i = (0);\n var ia;\n for (; (fin15i < fin15keys.length); (fin15i++)) {\n ((ia) = (fin15keys[fin15i]));\n {\n if (((((!((ia in l)) && !((ia in ha)))) && !((ia in r))))) {\n x(ia);\n }\n ;\n ;\n };\n };\n };\n ;\n r = {\n };\n }\n ;\n ;\n var ja = [], ka = [];\n for (ga = 0; ((ga < ca.length)); ++ga) {\n var la = ca[ga];\n if (la.permanent) {\n l[la.JSBNG__name] = true;\n }\n ;\n ;\n if (u.isPersistentDependencySatisfied(la.JSBNG__name)) {\n continue;\n }\n ;\n ;\n if (!la.nonblocking) {\n ka.push(la.JSBNG__name);\n }\n ;\n ;\n if (!k[la.JSBNG__name]) {\n z(la.JSBNG__name);\n ja.push(la);\n ((window.CavalryLogger && window.CavalryLogger.getInstance().measureResources(la, fa)));\n }\n ;\n ;\n };\n ;\n var ma;\n if (da) {\n if (((typeof da === \"function\"))) {\n ma = u.registerCallback(da, ka);\n }\n else ma = u.addDependenciesToExistingCallback(da, ka);\n ;\n }\n ;\n ;\n var na = ((JSBNG__document.documentMode || +((/MSIE.(\\d+)/.exec(JSBNG__navigator.userAgent) || []))[1])), oa = ba.getHardpoint(), pa = ((na ? oa : JSBNG__document.createDocumentFragment()));\n for (ga = 0; ((ga < ja.length)); ++ga) {\n w(ja[ga].type, ja[ga].src, ja[ga].JSBNG__name, pa);\n ;\n };\n ;\n if (((oa !== pa))) {\n oa.appendChild(pa);\n }\n ;\n ;\n return ma;\n },\n requestJSResource: function(ca) {\n var da = ba.getHardpoint();\n w(\"js\", ca, null, da);\n },\n done: ((window.top.JSBNG_Replay.push)((window.top.JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199), function(ca, da, ea) {\n if (ea) {\n delete p[ea];\n }\n ;\n ;\n z(ca);\n if (!da) {\n for (var fa = 0, ga = v.length; ((fa < ga)); fa++) {\n v[fa]();\n ;\n };\n }\n ;\n ;\n for (var ha = 0; ((ha < ca.length)); ++ha) {\n var ia = ca[ha];\n if (ia) {\n u.satisfyPersistentDependency(ia);\n }\n ;\n ;\n };\n ;\n })),\n subscribeToLoadedResources_DEPRECATED: function(ca) {\n v.push(ca);\n },\n enableBootload: function(ca) {\n {\n var fin16keys = ((window.top.JSBNG_Replay.forInKeys)((ca))), fin16i = (0);\n var da;\n for (; (fin16i < fin16keys.length); (fin16i++)) {\n ((da) = (fin16keys[fin16i]));\n {\n if (!m[da]) {\n m[da] = ca[da];\n }\n ;\n ;\n };\n };\n };\n ;\n if (!s) {\n s = true;\n for (var ea = 0; ((ea < t.length)); ea++) {\n y.apply(null, t[ea]);\n ;\n };\n ;\n t = [];\n }\n ;\n ;\n },\n getHardpoint: function() {\n if (!n) {\n var ca = JSBNG__document.getElementsByTagName(\"head\");\n n = ((((ca.length && ca[0])) || JSBNG__document.body));\n }\n ;\n ;\n return n;\n },\n setResourceMap: function(ca) {\n {\n var fin17keys = ((window.top.JSBNG_Replay.forInKeys)((ca))), fin17i = (0);\n var da;\n for (; (fin17i < fin17keys.length); (fin17i++)) {\n ((da) = (fin17keys[fin17i]));\n {\n if (!o[da]) {\n ca[da].JSBNG__name = da;\n o[da] = ca[da];\n }\n ;\n ;\n };\n };\n };\n ;\n },\n loadEarlyResources: function(ca) {\n ba.setResourceMap(ca);\n var da = [];\n {\n var fin18keys = ((window.top.JSBNG_Replay.forInKeys)((ca))), fin18i = (0);\n var ea;\n for (; (fin18i < fin18keys.length); (fin18i++)) {\n ((ea) = (fin18keys[fin18i]));\n {\n var fa = o[ea];\n da.push(fa);\n if (!fa.permanent) {\n r[fa.JSBNG__name] = fa;\n }\n ;\n ;\n };\n };\n };\n ;\n ba.loadResources(da);\n },\n getLoadingUrls: function() {\n var ca = {\n }, da = JSBNG__Date.now();\n {\n var fin19keys = ((window.top.JSBNG_Replay.forInKeys)((p))), fin19i = (0);\n var ea;\n for (; (fin19i < fin19keys.length); (fin19i++)) {\n ((ea) = (fin19keys[fin19i]));\n {\n ca[ea] = ((da - p[ea]));\n ;\n };\n };\n };\n ;\n return ca;\n },\n getErrorUrls: function() {\n return Object.keys(q);\n }\n };\n e.exports = ba;\n});\n__d(\"BlueBarController\", [\"Bootloader\",\"JSBNG__CSS\",], function(a, b, c, d, e, f) {\n var g = b(\"Bootloader\"), h = b(\"JSBNG__CSS\");\n f.init = function(i) {\n if (((\"getBoundingClientRect\" in i))) {\n var j = function() {\n var k = i.getBoundingClientRect(), l = ((Math.round(k.JSBNG__top) - JSBNG__document.documentElement.clientTop));\n h.conditionClass(i.firstChild, \"fixed_elem\", ((l <= 0)));\n };\n j();\n g.loadModules([\"JSBNG__Event\",], function(k) {\n k.listen(window, \"JSBNG__scroll\", j);\n });\n }\n ;\n ;\n };\n});\n__d(\"legacy:arbiter\", [\"Arbiter\",], function(a, b, c, d) {\n a.Arbiter = b(\"Arbiter\");\n}, 3);\n__d(\"event-form-bubbling\", [], function(a, b, c, d, e, f) {\n a.JSBNG__Event = ((a.JSBNG__Event || function() {\n \n }));\n a.JSBNG__Event.__inlineSubmit = function(g, JSBNG__event) {\n var h = ((a.JSBNG__Event.__getHandler && a.JSBNG__Event.__getHandler(g, \"submit\")));\n return ((h ? null : a.JSBNG__Event.__bubbleSubmit(g, JSBNG__event)));\n };\n a.JSBNG__Event.__bubbleSubmit = function(g, JSBNG__event) {\n if (JSBNG__document.documentElement.JSBNG__attachEvent) {\n var h;\n while (((((h !== false)) && (g = g.parentNode)))) {\n h = ((g.JSBNG__onsubmit ? g.JSBNG__onsubmit(JSBNG__event) : ((a.JSBNG__Event.__fire && a.JSBNG__Event.__fire(g, \"submit\", JSBNG__event)))));\n ;\n };\n ;\n return h;\n }\n ;\n ;\n };\n}, 3);\n__d(\"OnloadEvent\", [], function(a, b, c, d, e, f) {\n var g = {\n ONLOAD: \"onload/onload\",\n ONLOAD_CALLBACK: \"onload/onload_callback\",\n ONLOAD_DOMCONTENT: \"onload/dom_content_ready\",\n ONLOAD_DOMCONTENT_CALLBACK: \"onload/domcontent_callback\",\n ONBEFOREUNLOAD: \"onload/beforeunload\",\n ONUNLOAD: \"onload/unload\"\n };\n e.exports = g;\n});\n__d(\"Run\", [\"Arbiter\",\"OnloadEvent\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"OnloadEvent\"), i = \"onunloadhooks\", j = \"onafterunloadhooks\", k = g.BEHAVIOR_STATE;\n function l(ba) {\n var ca = a.CavalryLogger;\n ((ca && ca.getInstance().setTimeStamp(ba)));\n };\n;\n function m() {\n return !window.loading_page_chrome;\n };\n;\n function n(ba) {\n var ca = a.OnloadHooks;\n if (((window.loaded && ca))) {\n ca.runHook(ba, \"onlateloadhooks\");\n }\n else u(\"onloadhooks\", ba);\n ;\n ;\n };\n;\n function o(ba) {\n var ca = a.OnloadHooks;\n if (((window.afterloaded && ca))) {\n JSBNG__setTimeout(function() {\n ca.runHook(ba, \"onlateafterloadhooks\");\n }, 0);\n }\n else u(\"onafterloadhooks\", ba);\n ;\n ;\n };\n;\n function p(ba, ca) {\n if (((ca === undefined))) {\n ca = m();\n }\n ;\n ;\n ((ca ? u(\"onbeforeleavehooks\", ba) : u(\"onbeforeunloadhooks\", ba)));\n };\n;\n function q(ba, ca) {\n if (!window.JSBNG__onunload) {\n window.JSBNG__onunload = function() {\n g.inform(h.ONUNLOAD, true, k);\n };\n }\n ;\n ;\n u(ba, ca);\n };\n;\n function r(ba) {\n q(i, ba);\n };\n;\n function s(ba) {\n q(j, ba);\n };\n;\n function t(ba) {\n u(\"onleavehooks\", ba);\n };\n;\n function u(ba, ca) {\n window[ba] = ((window[ba] || [])).concat(ca);\n };\n;\n function v(ba) {\n window[ba] = [];\n };\n;\n {\n function w() {\n g.inform(h.ONLOAD_DOMCONTENT, true, k);\n };\n ((window.top.JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_231.push)((w)));\n };\n;\n a._domcontentready = w;\n function x() {\n var ba = JSBNG__document, ca = window;\n if (ba.JSBNG__addEventListener) {\n var da = /AppleWebKit.(\\d+)/.exec(JSBNG__navigator.userAgent);\n if (((da && ((da[1] < 525))))) {\n var ea = JSBNG__setInterval(function() {\n if (/loaded|complete/.test(ba.readyState)) {\n w();\n JSBNG__clearInterval(ea);\n }\n ;\n ;\n }, 10);\n }\n else ba.JSBNG__addEventListener(\"DOMContentLoaded\", w, true);\n ;\n ;\n }\n else {\n var fa = \"javascript:void(0)\";\n if (((ca.JSBNG__location.protocol == \"https:\"))) {\n fa = \"//:\";\n }\n ;\n ;\n ba.write(((((((((\"\\u003Cscript onreadystatechange=\\\"if (this.readyState=='complete') {\" + \"this.parentNode.removeChild(this);_domcontentready();}\\\" \")) + \"defer=\\\"defer\\\" src=\\\"\")) + fa)) + \"\\\"\\u003E\\u003C/script\\u003E\")));\n }\n ;\n ;\n var ga = ca.JSBNG__onload;\n ca.JSBNG__onload = ((window.top.JSBNG_Replay.push)((window.top.JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_234), function() {\n l(\"t_layout\");\n ((ga && ga()));\n g.inform(h.ONLOAD, true, k);\n }));\n ca.JSBNG__onbeforeunload = ((window.top.JSBNG_Replay.push)((window.top.JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_235), function() {\n var ha = {\n };\n g.inform(h.ONBEFOREUNLOAD, ha, k);\n if (!ha.warn) {\n g.inform(\"onload/exit\", true);\n }\n ;\n ;\n return ha.warn;\n }));\n };\n;\n var y = g.registerCallback(function() {\n l(\"t_onload\");\n g.inform(h.ONLOAD_CALLBACK, true, k);\n }, [h.ONLOAD,]), z = g.registerCallback(function() {\n l(\"t_domcontent\");\n var ba = {\n timeTriggered: JSBNG__Date.now()\n };\n g.inform(h.ONLOAD_DOMCONTENT_CALLBACK, ba, k);\n }, [h.ONLOAD_DOMCONTENT,]);\n x();\n var aa = {\n onLoad: n,\n onAfterLoad: o,\n onLeave: t,\n onBeforeUnload: p,\n onUnload: r,\n onAfterUnload: s,\n __domContentCallback: z,\n __onloadCallback: y,\n __removeHook: v\n };\n e.exports = aa;\n});\n__d(\"legacy:onload\", [\"Run\",\"OnloadEvent\",], function(a, b, c, d) {\n var e = b(\"Run\");\n a.OnloadEvent = b(\"OnloadEvent\");\n a.onloadRegister_DEPRECATED = e.onLoad;\n a.onloadRegister = function() {\n return e.onLoad.apply(this, arguments);\n };\n a.onafterloadRegister_DEPRECATED = e.onAfterLoad;\n a.onafterloadRegister = function() {\n return e.onAfterLoad.apply(this, arguments);\n };\n a.onleaveRegister = e.onLeave;\n a.onbeforeunloadRegister = e.onBeforeUnload;\n a.onunloadRegister = e.onUnload;\n}, 3);\n__d(\"wait_for_load\", [\"Bootloader\",\"Run\",], function(a, b, c, d, e, f) {\n var g = b(\"Bootloader\"), h = b(\"Run\");\n function i(l, m) {\n return ((window.loaded && m.call(l)));\n };\n;\n function j(l, m, n) {\n g.loadComponents.call(g, m, n.bind(l));\n return false;\n };\n;\n function k(l, m, n) {\n n = n.bind(l, m);\n if (window.loaded) {\n return n();\n }\n ;\n ;\n switch (((m || JSBNG__event)).type) {\n case \"load\":\n \n case \"JSBNG__focus\":\n h.onAfterLoad(n);\n return;\n case \"click\":\n var o = l.style, p = JSBNG__document.body.style;\n o.cursor = p.cursor = \"progress\";\n h.onAfterLoad(function() {\n o.cursor = p.cursor = \"\";\n if (((l.tagName.toLowerCase() == \"a\"))) {\n if (((((false !== n())) && l.href))) {\n window.JSBNG__location.href = l.href;\n }\n ;\n ;\n }\n else if (l.click) {\n l.click();\n }\n \n ;\n ;\n });\n break;\n };\n ;\n return false;\n };\n;\n a.run_if_loaded = i;\n a.run_with = j;\n a.wait_for_load = k;\n}, 3);\n__d(\"markJSEnabled\", [], function(a, b, c, d, e, f) {\n var g = JSBNG__document.documentElement;\n g.className = g.className.replace(\"no_js\", \"\");\n});\n__d(\"JSCC\", [], function(a, b, c, d, e, f) {\n var g = {\n };\n function h(j) {\n var k, l = false;\n return function() {\n if (!l) {\n k = j();\n l = true;\n }\n ;\n ;\n return k;\n };\n };\n;\n var i = {\n get: function(j) {\n if (!g[j]) {\n throw new Error(\"JSCC entry is missing\");\n }\n ;\n ;\n return g[j]();\n },\n init: function(j) {\n {\n var fin20keys = ((window.top.JSBNG_Replay.forInKeys)((j))), fin20i = (0);\n var k;\n for (; (fin20i < fin20keys.length); (fin20i++)) {\n ((k) = (fin20keys[fin20i]));\n {\n g[k] = h(j[k]);\n ;\n };\n };\n };\n ;\n return function l() {\n {\n var fin21keys = ((window.top.JSBNG_Replay.forInKeys)((j))), fin21i = (0);\n var m;\n for (; (fin21i < fin21keys.length); (fin21i++)) {\n ((m) = (fin21keys[fin21i]));\n {\n delete g[m];\n ;\n };\n };\n };\n ;\n };\n }\n };\n e.exports = i;\n});\n__d(\"PageletSet\", [\"Arbiter\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"copyProperties\"), i = {\n }, j = {\n hasPagelet: function(m) {\n return i.hasOwnProperty(m);\n },\n getPagelet: function(m) {\n return i[m];\n },\n getOrCreatePagelet: function(m) {\n if (!j.hasPagelet(m)) {\n var n = new l(m);\n i[m] = n;\n }\n ;\n ;\n return j.getPagelet(m);\n },\n getPageletIDs: function() {\n return Object.keys(i);\n },\n removePagelet: function(m) {\n if (j.hasPagelet(m)) {\n i[m].destroy();\n delete i[m];\n }\n ;\n ;\n }\n };\n function k(m, n) {\n return ((m.contains ? m.contains(n) : ((m.compareDocumentPosition(n) & 16))));\n };\n;\n function l(m) {\n this.id = m;\n this._root = null;\n this._destructors = [];\n this.addDestructor(function n() {\n g.inform(\"pagelet/destroy\", {\n id: this.id,\n root: this._root\n });\n }.bind(this));\n };\n;\n h(l.prototype, {\n setRoot: function(m) {\n this._root = m;\n },\n _getDescendantPagelets: function() {\n var m = [];\n if (!this._root) {\n return m;\n }\n ;\n ;\n var n = j.getPageletIDs();\n for (var o = 0; ((o < n.length)); o++) {\n var p = n[o];\n if (((p === this.id))) {\n continue;\n }\n ;\n ;\n var q = i[p];\n if (((q._root && k(this._root, q._root)))) {\n m.push(q);\n }\n ;\n ;\n };\n ;\n return m;\n },\n addDestructor: function(m) {\n this._destructors.push(m);\n },\n destroy: function() {\n var m = this._getDescendantPagelets();\n for (var n = 0; ((n < m.length)); n++) {\n var o = m[n];\n if (j.hasPagelet(o.id)) {\n j.removePagelet(o.id);\n }\n ;\n ;\n };\n ;\n for (n = 0; ((n < this._destructors.length)); n++) {\n this._destructors[n]();\n ;\n };\n ;\n if (this._root) {\n while (this._root.firstChild) {\n this._root.removeChild(this._root.firstChild);\n ;\n };\n }\n ;\n ;\n }\n });\n e.exports = j;\n});\n__d(\"repeatString\", [\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"invariant\");\n function h(i, j) {\n if (((j === 1))) {\n return i;\n }\n ;\n ;\n g(((j >= 0)));\n var k = \"\";\n while (j) {\n if (((j & 1))) {\n k += i;\n }\n ;\n ;\n if ((j >>= 1)) {\n i += i;\n }\n ;\n ;\n };\n ;\n return k;\n };\n;\n e.exports = h;\n});\n__d(\"BitMap\", [\"copyProperties\",\"repeatString\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"repeatString\"), i = \"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-_\";\n function j() {\n this._bits = [];\n };\n;\n g(j.prototype, {\n set: function(m) {\n this._bits[m] = 1;\n return this;\n },\n toString: function() {\n var m = [];\n for (var n = 0; ((n < this._bits.length)); n++) {\n m.push(((this._bits[n] ? 1 : 0)));\n ;\n };\n ;\n return ((m.length ? l(m.join(\"\")) : \"\"));\n },\n toCompressedString: function() {\n if (((this._bits.length === 0))) {\n return \"\";\n }\n ;\n ;\n var m = [], n = 1, o = ((this._bits[0] || 0)), p = o.toString(2);\n for (var q = 1; ((q < this._bits.length)); q++) {\n var r = ((this._bits[q] || 0));\n if (((r === o))) {\n n++;\n }\n else {\n m.push(k(n));\n o = r;\n n = 1;\n }\n ;\n ;\n };\n ;\n if (n) {\n m.push(k(n));\n }\n ;\n ;\n return l(((p + m.join(\"\"))));\n }\n });\n function k(m) {\n var n = m.toString(2), o = h(\"0\", ((n.length - 1)));\n return ((o + n));\n };\n;\n function l(m) {\n var n = ((m + \"00000\")).match(/[01]{6}/g), o = \"\";\n for (var p = 0; ((p < n.length)); p++) {\n o += i[parseInt(n[p], 2)];\n ;\n };\n ;\n return o;\n };\n;\n e.exports = j;\n});\n__d(\"ServerJS\", [\"BitMap\",\"ErrorUtils\",\"copyProperties\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"BitMap\"), h = b(\"ErrorUtils\"), i = b(\"copyProperties\"), j = b(\"ge\"), k = 0, l = new g();\n function m() {\n this._moduleMap = {\n };\n this._relativeTo = null;\n this._moduleIDsToCleanup = {\n };\n };\n;\n m.getLoadedModuleHash = function() {\n return l.toCompressedString();\n };\n i(m.prototype, {\n handle: function(q) {\n if (q.__guard) {\n throw new Error(\"ServerJS.handle called on data that has already been handled\");\n }\n ;\n ;\n q.__guard = true;\n n(((q.define || [])), this._handleDefine, this);\n n(((q.markup || [])), this._handleMarkup, this);\n n(((q.elements || [])), this._handleElement, this);\n n(((q.instances || [])), this._handleInstance, this);\n var r = n(((q.require || [])), this._handleRequire, this);\n return {\n cancel: function() {\n for (var s = 0; ((s < r.length)); s++) {\n if (r[s]) {\n r[s].cancel();\n }\n ;\n ;\n };\n ;\n }\n };\n },\n handlePartial: function(q) {\n ((q.instances || [])).forEach(o.bind(null, this._moduleMap, 3));\n ((q.markup || [])).forEach(o.bind(null, this._moduleMap, 2));\n return this.handle(q);\n },\n setRelativeTo: function(q) {\n this._relativeTo = q;\n return this;\n },\n cleanup: function() {\n var q = [];\n {\n var fin22keys = ((window.top.JSBNG_Replay.forInKeys)((this._moduleMap))), fin22i = (0);\n var r;\n for (; (fin22i < fin22keys.length); (fin22i++)) {\n ((r) = (fin22keys[fin22i]));\n {\n q.push(r);\n ;\n };\n };\n };\n ;\n d.call(null, q, p);\n this._moduleMap = {\n };\n function s(u) {\n var v = this._moduleIDsToCleanup[u], w = v[0], x = v[1];\n delete this._moduleIDsToCleanup[u];\n var y = ((x ? ((((((((\"JS::call(\\\"\" + w)) + \"\\\", \\\"\")) + x)) + \"\\\", ...)\")) : ((((\"JS::requireModule(\\\"\" + w)) + \"\\\")\")))), z = ((y + \" did not fire because it has missing dependencies.\"));\n throw new Error(z);\n };\n ;\n {\n var fin23keys = ((window.top.JSBNG_Replay.forInKeys)((this._moduleIDsToCleanup))), fin23i = (0);\n var t;\n for (; (fin23i < fin23keys.length); (fin23i++)) {\n ((t) = (fin23keys[fin23i]));\n {\n h.applyWithGuard(s, this, [t,], null, ((((\"ServerJS:cleanup\" + \" id: \")) + t)));\n ;\n };\n };\n };\n ;\n },\n _handleDefine: function q(r, s, t, u) {\n if (((u >= 0))) {\n l.set(u);\n }\n ;\n ;\n define(r, s, function() {\n this._replaceTransportMarkers(t);\n return t;\n }.bind(this));\n },\n _handleRequire: function q(r, s, t, u) {\n var v = [r,].concat(((t || []))), w = ((((s ? \"__call__\" : \"__requireModule__\")) + k++));\n this._moduleIDsToCleanup[w] = [r,s,];\n return define(w, v, function(x) {\n delete this._moduleIDsToCleanup[w];\n ((u && this._replaceTransportMarkers(u)));\n if (s) {\n if (!x[s]) {\n throw new TypeError(((((((\"Module \" + r)) + \" has no method \")) + s)));\n }\n ;\n ;\n x[s].apply(x, ((u || [])));\n }\n ;\n ;\n }, 1, this, 1);\n },\n _handleInstance: function q(r, s, t, u) {\n var v = null;\n if (s) {\n v = function(w) {\n this._replaceTransportMarkers(t);\n var x = Object.create(w.prototype);\n w.apply(x, t);\n return x;\n }.bind(this);\n }\n ;\n ;\n define(r, s, v, 0, null, u);\n },\n _handleMarkup: function q(r, s, t) {\n define(r, [\"HTML\",], function(u) {\n return u.replaceJSONWrapper(s).getRootNode();\n }, 0, null, t);\n },\n _handleElement: function q(r, s, t, u) {\n var v = [], w = 0;\n if (u) {\n v.push(u);\n w = 1;\n t++;\n }\n ;\n ;\n define(r, v, function(x) {\n var y = j(s, x);\n if (!y) {\n var z = ((\"Could not find element \" + s));\n throw new Error(z);\n }\n ;\n ;\n return y;\n }, w, null, t);\n },\n _replaceTransportMarkers: function(q, r) {\n var s = ((((typeof r !== \"undefined\")) ? q[r] : q)), t;\n if (Array.isArray(s)) {\n for (t = 0; ((t < s.length)); t++) {\n this._replaceTransportMarkers(s, t);\n ;\n };\n ;\n }\n else if (((s && ((typeof s == \"object\"))))) {\n if (s.__m) {\n q[r] = b.call(null, s.__m);\n }\n else if (s.__e) {\n q[r] = j(s.__e);\n }\n else if (s.__rel) {\n q[r] = this._relativeTo;\n }\n else {\n var fin24keys = ((window.top.JSBNG_Replay.forInKeys)((s))), fin24i = (0);\n var u;\n for (; (fin24i < fin24keys.length); (fin24i++)) {\n ((u) = (fin24keys[fin24i]));\n {\n this._replaceTransportMarkers(s, u);\n ;\n };\n };\n }\n \n \n ;\n }\n \n ;\n ;\n }\n });\n function n(q, r, s) {\n return q.map(function(t) {\n return h.applyWithGuard(r, s, t, null, ((((((((((\"ServerJS:applyEach\" + \" handle: \")) + ((r.JSBNG__name || \"\\u003Canonymous function\\u003E\")))) + \" args: [\")) + t)) + \"]\")));\n });\n };\n;\n function o(q, r, s) {\n var t = s[0];\n if (!((t in q))) {\n s[r] = ((((s[r] || 0)) + 1));\n }\n ;\n ;\n q[t] = true;\n };\n;\n function p() {\n return {\n };\n };\n;\n e.exports = m;\n});\n__d(\"invokeCallbacks\", [\"ErrorUtils\",], function(a, b, c, d, e, f) {\n var g = b(\"ErrorUtils\");\n function h(i, j) {\n if (i) {\n for (var k = 0; ((k < i.length)); k++) {\n g.applyWithGuard(new Function(i[k]), j);\n ;\n };\n }\n ;\n ;\n };\n;\n e.exports = h;\n});\n__d(\"ix\", [\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = {\n };\n function i(j) {\n return h[j];\n };\n;\n i.add = g.bind(null, h);\n e.exports = i;\n});\n__d(\"BigPipe\", [\"Arbiter\",\"Bootloader\",\"Env\",\"ErrorUtils\",\"JSCC\",\"OnloadEvent\",\"PageletSet\",\"Run\",\"ServerJS\",\"$\",\"copyProperties\",\"ge\",\"invokeCallbacks\",\"ix\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Bootloader\"), i = b(\"Env\"), j = b(\"ErrorUtils\"), k = b(\"JSCC\"), l = b(\"OnloadEvent\"), m = b(\"PageletSet\"), n = b(\"Run\"), o = b(\"ServerJS\"), p = b(\"$\"), q = b(\"copyProperties\"), r = b(\"ge\"), s = b(\"invokeCallbacks\"), t = b(\"ix\"), u = ((JSBNG__document.documentMode || +((/MSIE.(\\d+)/.exec(JSBNG__navigator.userAgent) || []))[1])), v = g.BEHAVIOR_STATE, w = g.BEHAVIOR_PERSISTENT;\n function x(ba) {\n q(this, {\n arbiter: g,\n rootNodeID: \"JSBNG__content\",\n lid: 0,\n isAjax: false,\n domContentCallback: n.__domContentCallback,\n onloadCallback: n.__onloadCallback,\n domContentEvt: l.ONLOAD_DOMCONTENT_CALLBACK,\n onloadEvt: l.ONLOAD_CALLBACK,\n forceFinish: false,\n _phaseDoneCallbacks: [],\n _currentPhase: 0,\n _lastPhase: -1,\n _livePagelets: {\n }\n });\n q(this, ba);\n if (this.automatic) {\n this._relevant_instance = x._current_instance;\n }\n else x._current_instance = this;\n ;\n ;\n this._serverJS = new o();\n g.inform(\"BigPipe/init\", {\n lid: this.lid,\n arbiter: this.arbiter\n }, w);\n this.arbiter.registerCallback(this.domContentCallback, [\"pagelet_displayed_all\",]);\n this._informEventExternal(\"phase_begin\", {\n phase: 0\n });\n this.arbiter.inform(\"phase_begin_0\", true, v);\n this.onloadCallback = this.arbiter.registerCallback(this.onloadCallback, [\"pagelet_displayed_all\",]);\n this.arbiter.registerCallback(this._serverJS.cleanup.bind(this._serverJS), [this.onloadEvt,]);\n };\n;\n x.getCurrentInstance = function() {\n return x._current_instance;\n };\n q(x.prototype, {\n onPageletArrive: j.guard(function(ba) {\n this._informPageletEvent(\"arrive\", ba.id, ba.phase);\n ba.JSBNG__content = ((ba.JSBNG__content || {\n }));\n var ca = ba.phase;\n if (!this._phaseDoneCallbacks[ca]) {\n this._phaseDoneCallbacks[ca] = this.arbiter.registerCallback(this._onPhaseDone.bind(this), [((\"phase_complete_\" + ca)),]);\n }\n ;\n ;\n this.arbiter.registerCallback(this._phaseDoneCallbacks[ca], [((ba.id + \"_displayed\")),]);\n var da = this._getPageletRootID(ba), ea = m.getOrCreatePagelet(da);\n if (ba.the_end) {\n this._lastPhase = ca;\n }\n ;\n ;\n if (((ba.tti_phase !== undefined))) {\n this._ttiPhase = ba.tti_phase;\n }\n ;\n ;\n if (ba.is_second_to_last_phase) {\n this._secondToLastPhase = ca;\n }\n ;\n ;\n this._livePagelets[ea.id] = true;\n ea.addDestructor(function() {\n delete this._livePagelets[ea.id];\n }.bind(this));\n if (ba.jscc_map) {\n var fa = (eval)(ba.jscc_map), ga = k.init(fa);\n ea.addDestructor(ga);\n }\n ;\n ;\n if (ba.resource_map) {\n h.setResourceMap(ba.resource_map);\n }\n ;\n ;\n if (ba.bootloadable) {\n h.enableBootload(ba.bootloadable);\n }\n ;\n ;\n t.add(ba.ixData);\n this._informPageletEvent(\"setup\", ba.id);\n var ha = new g();\n ha.registerCallback(this._displayPageletHandler.bind(this, ba), [\"preceding_pagelets_displayed\",\"display_resources_downloaded\",]);\n var ia = ((ba.display_dependency || [])), ja = ia.map(function(la) {\n return ((la + \"_displayed\"));\n });\n this.arbiter.registerCallback(function() {\n ha.inform(\"preceding_pagelets_displayed\");\n }, ja);\n this.arbiter.registerCallback(function() {\n this._informPageletEvent(\"css\", ba.id);\n var la = ((ba.css || [])).concat(((ba.displayJS || [])));\n h.loadResources(la, function() {\n this._informPageletEvent(\"css_load\", ba.id);\n ha.inform(\"display_resources_downloaded\");\n }.bind(this), false, ba.id);\n }.bind(this), [((\"phase_begin_\" + ca)),]);\n this.arbiter.registerCallback(this.onloadCallback, [\"pagelet_onload\",]);\n var ka = [((ba.id + \"_displayed\")),];\n if (!this.jsNonBlock) {\n ka.push(this.domContentEvt);\n }\n ;\n ;\n this.arbiter.registerCallback(this._downloadJsForPagelet.bind(this, ba), ka);\n if (ba.is_last) {\n this._endPhase(ca);\n }\n ;\n ;\n }),\n _beginPhase: function(ba) {\n this._informEventExternal(\"phase_begin\", {\n phase: ba\n });\n this.arbiter.inform(((\"phase_begin_\" + ba)), true, v);\n },\n _endPhase: function(ba) {\n this.arbiter.inform(((\"phase_complete_\" + ba)), true, v);\n },\n _displayPageletHandler: function(ba) {\n if (this.displayCallback) {\n this.displayCallback(this._displayPagelet.bind(this, ba));\n }\n else this._displayPagelet(ba);\n ;\n ;\n },\n _displayPagelet: function(ba) {\n this._informPageletEvent(\"display_start\", ba.id);\n var ca = this._getPagelet(ba);\n {\n var fin25keys = ((window.top.JSBNG_Replay.forInKeys)((ba.JSBNG__content))), fin25i = (0);\n var da;\n for (; (fin25i < fin25keys.length); (fin25i++)) {\n ((da) = (fin25keys[fin25i]));\n {\n var ea = ba.JSBNG__content[da];\n if (ba.append) {\n da = this._getPageletRootID(ba);\n }\n ;\n ;\n var fa = r(da);\n if (!fa) {\n continue;\n }\n ;\n ;\n if (((da === ca.id))) {\n ca.setRoot(fa);\n }\n ;\n ;\n ea = y(ea);\n if (ea) {\n if (((ba.append || ((u < 8))))) {\n if (!ba.append) {\n while (fa.firstChild) {\n fa.removeChild(fa.firstChild);\n ;\n };\n }\n ;\n ;\n aa(fa, ea);\n }\n else fa.innerHTML = ea;\n ;\n }\n ;\n ;\n var ga = fa.getAttribute(\"data-referrer\");\n if (!ga) {\n fa.setAttribute(\"data-referrer\", da);\n }\n ;\n ;\n if (((ba.cache_hit && i.pc_debug))) {\n fa.style.border = \"1px red solid\";\n }\n ;\n ;\n };\n };\n };\n ;\n if (ba.jsmods) {\n var ha = JSON.parse(JSON.stringify(ba.jsmods)), ia = this._serverJS.handlePartial(ha);\n ca.addDestructor(ia.cancel.bind(ia));\n }\n ;\n ;\n this._informPageletEvent(\"display\", ba.id);\n this.arbiter.inform(((ba.id + \"_displayed\")), true, v);\n },\n _onPhaseDone: function() {\n if (((this._currentPhase === this._ttiPhase))) {\n this._informEventExternal(\"tti_bigpipe\", {\n phase: this._ttiPhase\n });\n }\n ;\n ;\n if (((((this._currentPhase === this._lastPhase)) && this._isRelevant()))) {\n this.arbiter.inform(\"pagelet_displayed_all\", true, v);\n }\n ;\n ;\n this._currentPhase++;\n if (((u <= 8))) {\n JSBNG__setTimeout(this._beginPhase.bind(this, this._currentPhase), 20);\n }\n else this._beginPhase(this._currentPhase);\n ;\n ;\n },\n _downloadJsForPagelet: function(ba) {\n this._informPageletEvent(\"jsstart\", ba.id);\n h.loadResources(((ba.js || [])), function() {\n this._informPageletEvent(\"jsdone\", ba.id);\n ba.requires = ((ba.requires || []));\n if (((!this.isAjax || ((ba.phase >= 1))))) {\n ba.requires.push(\"uipage_onload\");\n }\n ;\n ;\n var ca = function() {\n this._informPageletEvent(\"preonload\", ba.id);\n if (this._isRelevantPagelet(ba)) {\n s(ba.JSBNG__onload);\n }\n ;\n ;\n this._informPageletEvent(\"JSBNG__onload\", ba.id);\n this.arbiter.inform(\"pagelet_onload\", true, g.BEHAVIOR_EVENT);\n ((ba.provides && this.arbiter.inform(ba.provides, true, v)));\n }.bind(this), da = function() {\n ((this._isRelevantPagelet(ba) && s(ba.onafterload)));\n }.bind(this);\n this.arbiter.registerCallback(ca, ba.requires);\n this.arbiter.registerCallback(da, [this.onloadEvt,]);\n }.bind(this), false, ba.id);\n },\n _getPagelet: function(ba) {\n var ca = this._getPageletRootID(ba);\n return m.getPagelet(ca);\n },\n _getPageletRootID: function(ba) {\n var ca = ba.append;\n if (ca) {\n return ((((ca === \"bigpipe_root\")) ? this.rootNodeID : ca));\n }\n ;\n ;\n return ((Object.keys(ba.JSBNG__content)[0] || null));\n },\n _isRelevant: function() {\n return ((((((((this == x._current_instance)) || ((this.automatic && ((this._relevant_instance == x._current_instance)))))) || this.jsNonBlock)) || this.forceFinish));\n },\n _isRelevantPagelet: function(ba) {\n if (!this._isRelevant()) {\n return false;\n }\n ;\n ;\n var ca = this._getPageletRootID(ba);\n return !!this._livePagelets[ca];\n },\n _informEventExternal: function(ba, ca) {\n ca = ((ca || {\n }));\n ca.ts = JSBNG__Date.now();\n ca.lid = this.lid;\n this.arbiter.inform(ba, ca, w);\n },\n _informPageletEvent: function(ba, ca, da) {\n var ea = {\n JSBNG__event: ba,\n id: ca\n };\n if (da) {\n ea.phase = da;\n }\n ;\n ;\n this._informEventExternal(\"pagelet_event\", ea);\n }\n });\n function y(ba) {\n if (((!ba || ((typeof ba === \"string\"))))) {\n return ba;\n }\n ;\n ;\n if (ba.container_id) {\n var ca = p(ba.container_id);\n ba = ((z(ca) || \"\"));\n ca.parentNode.removeChild(ca);\n return ba;\n }\n ;\n ;\n return null;\n };\n;\n function z(ba) {\n if (!ba.firstChild) {\n h.loadModules([\"ErrorSignal\",], function(da) {\n da.sendErrorSignal(\"bigpipe\", \"Pagelet markup container is empty.\");\n });\n return null;\n }\n ;\n ;\n if (((ba.firstChild.nodeType !== 8))) {\n return null;\n }\n ;\n ;\n var ca = ba.firstChild.nodeValue;\n ca = ca.substring(1, ((ca.length - 1)));\n return ca.replace(/\\\\([\\s\\S]|$)/g, \"$1\");\n };\n;\n function aa(ba, ca) {\n var da = JSBNG__document.createElement(\"div\"), ea = ((u < 7));\n if (ea) {\n ba.appendChild(da);\n }\n ;\n ;\n da.innerHTML = ca;\n var fa = JSBNG__document.createDocumentFragment();\n while (da.firstChild) {\n fa.appendChild(da.firstChild);\n ;\n };\n ;\n ba.appendChild(fa);\n if (ea) {\n ba.removeChild(da);\n }\n ;\n ;\n };\n;\n e.exports = x;\n});\n__d(\"legacy:bootloader\", [\"Bootloader\",], function(a, b, c, d) {\n a.Bootloader = b(\"Bootloader\");\n}, 3);\n__d(\"Class\", [\"CallbackDependencyManager\",\"Bootloader\",], function(a, b, c, d, e, f) {\n var g = b(\"CallbackDependencyManager\"), h = b(\"Bootloader\"), i = \"bootload_done\", j = false, k = new g(), l = {\n }, m = {\n extend: function(u, v) {\n if (!j) {\n h.subscribeToLoadedResources_DEPRECATED(o);\n j = true;\n }\n ;\n ;\n if (((typeof v == \"string\"))) {\n n(u, v);\n }\n else p(u, v);\n ;\n ;\n }\n };\n function n(u, v) {\n u.__class_extending = true;\n var w = k.registerCallback(p.bind(null, u, v), [v,i,]);\n if (((w !== null))) {\n l[v] = true;\n }\n ;\n ;\n };\n;\n function o() {\n k.satisfyNonPersistentDependency(i);\n {\n var fin26keys = ((window.top.JSBNG_Replay.forInKeys)((l))), fin26i = (0);\n var u;\n for (; (fin26i < fin26keys.length); (fin26i++)) {\n ((u) = (fin26keys[fin26i]));\n {\n if (!!a[u]) {\n delete l[u];\n if (!a[u].__class_extending) {\n k.satisfyNonPersistentDependency(u);\n }\n else a[u].__class_name = u;\n ;\n ;\n }\n ;\n ;\n };\n };\n };\n ;\n };\n;\n function p(u, v) {\n delete u.__class_extending;\n v = ((((typeof v == \"string\")) ? a[v] : v));\n var w = q(v, 0), x = q(u, ((w.prototype.__level + 1)));\n x.parent = w;\n if (!!u.__class_name) {\n k.satisfyNonPersistentDependency(u.__class_name);\n }\n ;\n ;\n };\n;\n function q(u, v) {\n if (u._metaprototype) {\n return u._metaprototype;\n }\n ;\n ;\n var w = new Function();\n w.construct = r;\n w.prototype.construct = t(u, v, true);\n w.prototype.__level = v;\n w.base = u;\n u.prototype.parent = w;\n u._metaprototype = w;\n return w;\n };\n;\n function r(u) {\n s(u.parent);\n var v = [], w = u;\n while (w.parent) {\n var x = new w.parent();\n v.push(x);\n x.__instance = u;\n w = w.parent;\n };\n ;\n u.parent = v[1];\n v.reverse();\n v.pop();\n u.__parents = v;\n u.__instance = u;\n return u.parent.construct.apply(u.parent, arguments);\n };\n;\n function s(u) {\n if (u.initialized) {\n return;\n }\n ;\n ;\n var v = u.base.prototype;\n if (u.parent) {\n s(u.parent);\n var w = u.parent.prototype;\n {\n var fin27keys = ((window.top.JSBNG_Replay.forInKeys)((w))), fin27i = (0);\n var x;\n for (; (fin27i < fin27keys.length); (fin27i++)) {\n ((x) = (fin27keys[fin27i]));\n {\n if (((((((x != \"__level\")) && ((x != \"construct\")))) && ((v[x] === undefined))))) {\n v[x] = u.prototype[x] = w[x];\n }\n ;\n ;\n };\n };\n };\n ;\n }\n ;\n ;\n u.initialized = true;\n var y = u.prototype.__level;\n {\n var fin28keys = ((window.top.JSBNG_Replay.forInKeys)((v))), fin28i = (0);\n var x;\n for (; (fin28i < fin28keys.length); (fin28i++)) {\n ((x) = (fin28keys[fin28i]));\n {\n if (((x != \"parent\"))) {\n v[x] = u.prototype[x] = t(v[x], y);\n }\n ;\n ;\n };\n };\n };\n ;\n };\n;\n function t(u, v, w) {\n if (((((typeof u != \"function\")) || u.__prototyped))) {\n return u;\n }\n ;\n ;\n var x = function() {\n var y = this.__instance;\n if (y) {\n var z = y.parent;\n y.parent = ((v ? y.__parents[((v - 1))] : null));\n var aa = arguments;\n if (w) {\n aa = [];\n for (var ba = 1; ((ba < arguments.length)); ba++) {\n aa.push(arguments[ba]);\n ;\n };\n ;\n }\n ;\n ;\n var ca = u.apply(y, aa);\n y.parent = z;\n return ca;\n }\n else return u.apply(this, arguments)\n ;\n };\n x.__prototyped = true;\n return x;\n };\n;\n e.exports = m;\n});\n__d(\"legacy:Class\", [\"Class\",], function(a, b, c, d) {\n a.Class = b(\"Class\");\n}, 3);\n__d(\"legacy:constructor-cache\", [\"JSCC\",], function(a, b, c, d) {\n a.JSCC = b(\"JSCC\");\n}, 3);\n__d(\"function-extensions\", [\"createArrayFrom\",], function(a, b, c, d, e, f) {\n var g = b(\"createArrayFrom\");\n Function.prototype.curry = function() {\n var h = g(arguments);\n return this.bind.apply(this, [null,].concat(h));\n };\n Function.prototype.defer = function(h, i) {\n if (((typeof this != \"function\"))) {\n throw new TypeError();\n }\n ;\n ;\n h = ((h || 0));\n return JSBNG__setTimeout(this, h, i);\n };\n}, 3);\n__d(\"goURI\", [], function(a, b, c, d, e, f) {\n function g(h, i, j) {\n h = h.toString();\n if (((((!i && a.PageTransitions)) && PageTransitions.isInitialized()))) {\n PageTransitions.go(h, j);\n }\n else if (((window.JSBNG__location.href == h))) {\n window.JSBNG__location.reload();\n }\n else window.JSBNG__location.href = h;\n \n ;\n ;\n };\n;\n e.exports = g;\n});\n__d(\"legacy:goURI\", [\"goURI\",], function(a, b, c, d) {\n a.goURI = b(\"goURI\");\n}, 3);\n__d(\"InitialJSLoader\", [\"Arbiter\",\"Bootloader\",\"OnloadEvent\",\"Run\",\"ServerJS\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Bootloader\"), i = b(\"OnloadEvent\"), j = b(\"Run\"), k = b(\"ServerJS\"), l = {\n INITIAL_JS_READY: \"BOOTLOAD/JSREADY\",\n loadOnDOMContentReady: function(m, n) {\n g.subscribe(i.ONLOAD_DOMCONTENT_CALLBACK, function() {\n function o() {\n h.loadResources(m, function() {\n g.inform(l.INITIAL_JS_READY, true, g.BEHAVIOR_STATE);\n });\n };\n ;\n if (n) {\n JSBNG__setTimeout(o, n);\n }\n else o();\n ;\n ;\n });\n },\n handleServerJS: function(m) {\n var n = new k();\n n.handle(m);\n j.onAfterLoad(n.cleanup.bind(n));\n }\n };\n e.exports = l;\n});\n__d(\"lowerDomain\", [], function(a, b, c, d, e, f) {\n if (JSBNG__document.domain.toLowerCase().match(/(^|\\.)facebook\\..*/)) {\n JSBNG__document.domain = \"facebook.com\";\n }\n;\n;\n});\n__d(\"legacy:object-core-utils\", [\"isEmpty\",\"copyProperties\",], function(a, b, c, d) {\n a.is_empty = b(\"isEmpty\");\n a.copyProperties = b(\"copyProperties\");\n}, 3);\n__d(\"PlaceholderListener\", [\"Arbiter\",\"JSBNG__CSS\",\"Parent\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"JSBNG__CSS\"), i = b(\"Parent\");\n function j(o, p) {\n if (p.getAttribute(\"data-silentPlaceholderListener\")) {\n return;\n }\n ;\n ;\n var q = p.getAttribute(\"placeholder\");\n if (q) {\n var r = i.byClass(p, \"focus_target\");\n if (((((\"JSBNG__focus\" == o)) || ((\"focusin\" == o))))) {\n var s = p.value.replace(/\\r\\n/g, \"\\u000a\"), t = q.replace(/\\r\\n/g, \"\\u000a\");\n if (((((s == t)) && h.hasClass(p, \"DOMControl_placeholder\")))) {\n p.value = \"\";\n h.removeClass(p, \"DOMControl_placeholder\");\n }\n ;\n ;\n if (r) {\n n.expandInput(r);\n }\n ;\n ;\n }\n else {\n if (((p.value === \"\"))) {\n h.addClass(p, \"DOMControl_placeholder\");\n p.value = q;\n ((r && h.removeClass(r, \"child_is_active\")));\n p.style.direction = \"\";\n }\n ;\n ;\n ((r && h.removeClass(r, \"child_is_focused\")));\n }\n ;\n ;\n }\n ;\n ;\n };\n;\n try {\n if (JSBNG__document.activeElement) {\n j(\"JSBNG__focus\", JSBNG__document.activeElement);\n }\n ;\n ;\n } catch (k) {\n \n };\n;\n function l(JSBNG__event) {\n JSBNG__event = ((JSBNG__event || window.JSBNG__event));\n j(JSBNG__event.type, ((JSBNG__event.target || JSBNG__event.srcElement)));\n };\n;\n var m = JSBNG__document.documentElement;\n if (m.JSBNG__addEventListener) {\n m.JSBNG__addEventListener(\"JSBNG__focus\", l, true);\n m.JSBNG__addEventListener(\"JSBNG__blur\", l, true);\n }\n else {\n m.JSBNG__attachEvent(\"JSBNG__onfocusin\", l);\n m.JSBNG__attachEvent(\"JSBNG__onfocusout\", l);\n }\n;\n;\n var n = {\n expandInput: function(o) {\n h.addClass(o, \"child_is_active\");\n h.addClass(o, \"child_is_focused\");\n h.addClass(o, \"child_was_focused\");\n g.inform(\"reflow\");\n }\n };\n e.exports = n;\n});\n__d(\"clickRefAction\", [\"Arbiter\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\");\n function h(l, m, n, o, p) {\n var q = ((((l + \"/\")) + m));\n this.ue = q;\n this._ue_ts = l;\n this._ue_count = m;\n this._context = n;\n this._ns = null;\n this._node = o;\n this._type = p;\n };\n;\n h.prototype.set_namespace = function(l) {\n this._ns = l;\n return this;\n };\n h.prototype.coalesce_namespace = function(l) {\n if (((this._ns === null))) {\n this._ns = l;\n }\n ;\n ;\n return this;\n };\n h.prototype.add_event = function() {\n return this;\n };\n var i = 0, j = [];\n function k(l, m, JSBNG__event, n, o) {\n var p = JSBNG__Date.now(), q = ((JSBNG__event && JSBNG__event.type));\n o = ((o || {\n }));\n if (((!m && JSBNG__event))) {\n m = JSBNG__event.getTarget();\n }\n ;\n ;\n var r = 50;\n if (((m && ((n != \"FORCE\"))))) {\n for (var s = ((j.length - 1)); ((((s >= 0)) && ((((p - j[s]._ue_ts)) < r)))); --s) {\n if (((((j[s]._node == m)) && ((j[s]._type == q))))) {\n return j[s];\n }\n ;\n ;\n };\n }\n ;\n ;\n var t = new h(p, i, l, m, q);\n j.push(t);\n while (((j.length > 10))) {\n j.shift();\n ;\n };\n ;\n g.inform(\"ClickRefAction/new\", {\n cfa: t,\n node: m,\n mode: n,\n JSBNG__event: JSBNG__event,\n extra_data: o\n }, g.BEHAVIOR_PERSISTENT);\n i++;\n return t;\n };\n;\n e.exports = a.clickRefAction = k;\n});\n__d(\"trackReferrer\", [\"Parent\",], function(a, b, c, d, e, f) {\n var g = b(\"Parent\");\n function h(i, j) {\n i = g.byAttribute(i, \"data-referrer\");\n if (i) {\n var k = ((/^(?:(?:[^:\\/?#]+):)?(?:\\/\\/(?:[^\\/?#]*))?([^?#]*)(?:\\?([^#]*))?(?:#(.*))?/.exec(j)[1] || \"\"));\n if (!k) {\n return;\n }\n ;\n ;\n var l = ((((k + \"|\")) + i.getAttribute(\"data-referrer\"))), m = new JSBNG__Date();\n m.setTime(((JSBNG__Date.now() + 1000)));\n JSBNG__document.cookie = ((((((((((((\"x-src=\" + encodeURIComponent(l))) + \"; \")) + \"expires=\")) + m.toGMTString())) + \";path=/; domain=\")) + window.JSBNG__location.hostname.replace(/^.*(\\.facebook\\..*)$/i, \"$1\")));\n }\n ;\n ;\n return i;\n };\n;\n e.exports = h;\n});\n__d(\"Miny\", [], function(a, b, c, d, e, f) {\n var g = \"Miny1\", h = {\n encode: [],\n decode: {\n }\n }, i = \"wxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-_\".split(\"\");\n function j(n) {\n for (var o = h.encode.length; ((o < n)); o++) {\n var p = o.toString(32).split(\"\");\n p[((p.length - 1))] = i[parseInt(p[((p.length - 1))], 32)];\n p = p.join(\"\");\n h.encode[o] = p;\n h.decode[p] = o;\n };\n ;\n return h;\n };\n;\n function k(n) {\n var o = n.match(/\\w+|\\W+/g), p = {\n };\n for (var q = 0; ((q < o.length)); q++) {\n p[o[q]] = ((((p[o[q]] || 0)) + 1));\n ;\n };\n ;\n var r = Object.keys(p);\n r.sort(function(u, v) {\n return ((((p[u] < p[v])) ? 1 : ((((p[v] < p[u])) ? -1 : 0))));\n });\n var s = j(r.length).encode;\n for (q = 0; ((q < r.length)); q++) {\n p[r[q]] = s[q];\n ;\n };\n ;\n var t = [];\n for (q = 0; ((q < o.length)); q++) {\n t[q] = p[o[q]];\n ;\n };\n ;\n for (q = 0; ((q < r.length)); q++) {\n r[q] = r[q].replace(/'~'/g, \"\\\\~\");\n ;\n };\n ;\n return [g,r.length,].concat(r).concat(t.join(\"\")).join(\"~\");\n };\n;\n function l(n) {\n var o = n.split(\"~\");\n if (((o.shift() != g))) {\n throw new Error(\"Not a Miny stream\");\n }\n ;\n ;\n var p = parseInt(o.shift(), 10), q = o.pop();\n q = q.match(/[0-9a-v]*[\\-w-zA-Z_]/g);\n var r = o, s = j(p).decode, t = [];\n for (var u = 0; ((u < q.length)); u++) {\n t[u] = r[s[q[u]]];\n ;\n };\n ;\n return t.join(\"\");\n };\n;\n var m = {\n encode: k,\n decode: l\n };\n e.exports = m;\n});\n__d(\"QueryString\", [], function(a, b, c, d, e, f) {\n function g(k) {\n var l = [];\n Object.keys(k).forEach(function(m) {\n var n = k[m];\n if (((typeof n === \"undefined\"))) {\n return;\n }\n ;\n ;\n if (((n === null))) {\n l.push(m);\n return;\n }\n ;\n ;\n l.push(((((encodeURIComponent(m) + \"=\")) + encodeURIComponent(n))));\n });\n return l.join(\"&\");\n };\n;\n function h(k, l) {\n var m = {\n };\n if (((k === \"\"))) {\n return m;\n }\n ;\n ;\n var n = k.split(\"&\");\n for (var o = 0; ((o < n.length)); o++) {\n var p = n[o].split(\"=\", 2), q = decodeURIComponent(p[0]);\n if (((l && m.hasOwnProperty(q)))) {\n throw new URIError(((\"Duplicate key: \" + q)));\n }\n ;\n ;\n m[q] = ((((p.length === 2)) ? decodeURIComponent(p[1]) : null));\n };\n ;\n return m;\n };\n;\n function i(k, l) {\n return ((((k + ((~k.indexOf(\"?\") ? \"&\" : \"?\")))) + ((((typeof l === \"string\")) ? l : j.encode(l)))));\n };\n;\n var j = {\n encode: g,\n decode: h,\n appendToUrl: i\n };\n e.exports = j;\n});\n__d(\"UserAgent\", [], function(a, b, c, d, e, f) {\n var g = false, h, i, j, k, l, m, n, o, p, q, r, s, t, u;\n function v() {\n if (g) {\n return;\n }\n ;\n ;\n g = true;\n var x = JSBNG__navigator.userAgent, y = /(?:MSIE.(\\d+\\.\\d+))|(?:(?:Firefox|GranParadiso|Iceweasel).(\\d+\\.\\d+))|(?:Opera(?:.+Version.|.)(\\d+\\.\\d+))|(?:AppleWebKit.(\\d+(?:\\.\\d+)?))/.exec(x), z = /(Mac OS X)|(Windows)|(Linux)/.exec(x);\n r = /\\b(iPhone|iP[ao]d)/.exec(x);\n s = /\\b(iP[ao]d)/.exec(x);\n p = /Android/i.exec(x);\n t = /FBAN\\/\\w+;/i.exec(x);\n u = /Mobile/i.exec(x);\n q = !!(/Win64/.exec(x));\n if (y) {\n h = ((y[1] ? parseFloat(y[1]) : NaN));\n if (((h && JSBNG__document.documentMode))) {\n h = JSBNG__document.documentMode;\n }\n ;\n ;\n i = ((y[2] ? parseFloat(y[2]) : NaN));\n j = ((y[3] ? parseFloat(y[3]) : NaN));\n k = ((y[4] ? parseFloat(y[4]) : NaN));\n if (k) {\n y = /(?:Chrome\\/(\\d+\\.\\d+))/.exec(x);\n l = ((((y && y[1])) ? parseFloat(y[1]) : NaN));\n }\n else l = NaN;\n ;\n ;\n }\n else h = i = j = l = k = NaN;\n ;\n ;\n if (z) {\n if (z[1]) {\n var aa = /(?:Mac OS X (\\d+(?:[._]\\d+)?))/.exec(x);\n m = ((aa ? parseFloat(aa[1].replace(\"_\", \".\")) : true));\n }\n else m = false;\n ;\n ;\n n = !!z[2];\n o = !!z[3];\n }\n else m = n = o = false;\n ;\n ;\n };\n;\n var w = {\n ie: function() {\n return ((v() || h));\n },\n ie64: function() {\n return ((w.ie() && q));\n },\n firefox: function() {\n return ((v() || i));\n },\n JSBNG__opera: function() {\n return ((v() || j));\n },\n webkit: function() {\n return ((v() || k));\n },\n safari: function() {\n return w.webkit();\n },\n chrome: function() {\n return ((v() || l));\n },\n windows: function() {\n return ((v() || n));\n },\n osx: function() {\n return ((v() || m));\n },\n linux: function() {\n return ((v() || o));\n },\n iphone: function() {\n return ((v() || r));\n },\n mobile: function() {\n return ((v() || ((((((r || s)) || p)) || u))));\n },\n nativeApp: function() {\n return ((v() || t));\n },\n android: function() {\n return ((v() || p));\n },\n ipad: function() {\n return ((v() || s));\n }\n };\n e.exports = w;\n});\n__d(\"XHR\", [\"Env\",\"ServerJS\",], function(a, b, c, d, e, f) {\n var g = b(\"Env\"), h = b(\"ServerJS\"), i = 1, j = {\n create: function() {\n try {\n return ((a.JSBNG__XMLHttpRequest ? new a.JSBNG__XMLHttpRequest() : new ActiveXObject(\"MSXML2.XMLHTTP.3.0\")));\n } catch (k) {\n \n };\n ;\n },\n getAsyncParams: function(k) {\n var l = {\n __user: g.user,\n __a: 1,\n __dyn: h.getLoadedModuleHash(),\n __req: (i++).toString(36)\n };\n if (((((k == \"POST\")) && g.fb_dtsg))) {\n l.fb_dtsg = g.fb_dtsg;\n }\n ;\n ;\n if (g.fb_isb) {\n l.fb_isb = g.fb_isb;\n }\n ;\n ;\n return l;\n }\n };\n e.exports = j;\n});\n__d(\"BanzaiAdapter\", [\"Arbiter\",\"Env\",\"Miny\",\"QueryString\",\"Run\",\"UserAgent\",\"XHR\",\"BanzaiConfig\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Env\"), i = b(\"Miny\"), j = b(\"QueryString\"), k = b(\"Run\"), l = b(\"UserAgent\"), m = b(\"XHR\"), n = null, o = new g(), p = b(\"BanzaiConfig\"), q = \"/ajax/bz\", r = {\n }, s = r.adapter = {\n config: p,\n getUserID: function() {\n return h.user;\n },\n inform: function(t) {\n o.inform(t);\n },\n subscribe: function(t, u) {\n o.subscribe(t, u);\n },\n cleanup: ((window.top.JSBNG_Replay.push)((window.top.JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_404), function() {\n if (((n && ((n.readyState < 4))))) {\n n.abort();\n }\n ;\n ;\n if (n) {\n delete n.JSBNG__onreadystatechange;\n n = null;\n }\n ;\n ;\n })),\n readyToSend: function() {\n var t = ((((l.ie() <= 8)) ? true : JSBNG__navigator.onLine));\n return ((!n && t));\n },\n send: function(t, u, v) {\n var w = \"POST\";\n n = m.create();\n n.open(w, q, true);\n n.setRequestHeader(\"Content-Type\", \"application/x-www-form-urlencoded\");\n n.JSBNG__onreadystatechange = function() {\n if (((n.readyState >= 4))) {\n var aa = n.JSBNG__status;\n s.cleanup();\n if (((aa == 200))) {\n if (u) {\n u();\n }\n ;\n ;\n s.inform(r.OK);\n }\n else {\n if (v) {\n v(aa);\n }\n ;\n ;\n s.inform(r.ERROR);\n }\n ;\n ;\n }\n ;\n ;\n };\n JSBNG__setTimeout(s.cleanup, r.SEND_TIMEOUT, false);\n var x = m.getAsyncParams(w);\n x.q = JSON.stringify(t);\n x.ts = JSBNG__Date.now();\n x.ph = h.push_phase;\n if (r.FBTRACE) {\n x.fbtrace = r.FBTRACE;\n }\n ;\n ;\n if (r.isEnabled(\"miny_compression\")) {\n var y = JSBNG__Date.now(), z = i.encode(x.q);\n if (((z.length < x.q.length))) {\n x.q = z;\n x.miny_encode_ms = ((JSBNG__Date.now() - y));\n }\n ;\n ;\n }\n ;\n ;\n n.send(j.encode(x));\n },\n onUnload: function(t) {\n k.onAfterUnload(t);\n }\n };\n e.exports = r;\n});\n__d(\"pageID\", [], function(a, b, c, d, e, f) {\n e.exports = Math.floor(((2147483648 * Math.JSBNG__random()))).toString(36);\n});\n__d(\"Banzai\", [\"BanzaiAdapter\",\"pageID\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"BanzaiAdapter\"), h = g.adapter, i = b(\"pageID\"), j = b(\"copyProperties\"), k = b(\"emptyFunction\"), l = \"Banzai\", m = \"sequencer\", n, o, p, q = [], r = {\n }, s = ((a != a.JSBNG__top));\n function t() {\n if (((p && ((p.posts.length > 0))))) {\n q.push(p);\n }\n ;\n ;\n p = {\n user: h.getUserID(),\n page_id: i,\n trigger: null,\n time: JSBNG__Date.now(),\n posts: []\n };\n if (g.isEnabled(m)) {\n p.sequence = [];\n }\n ;\n ;\n };\n;\n function u(z) {\n var aa = ((JSBNG__Date.now() + z));\n if (((!o || ((aa < o))))) {\n o = aa;\n JSBNG__clearTimeout(n);\n n = JSBNG__setTimeout(v, z, false);\n return true;\n }\n ;\n ;\n };\n;\n {\n function v() {\n o = null;\n u(g.BASIC.delay);\n if (!h.readyToSend()) {\n return;\n }\n ;\n ;\n h.inform(g.SEND);\n if (((((q.length <= 0)) && ((p.posts.length <= 0))))) {\n h.inform(g.OK);\n return;\n }\n ;\n ;\n t();\n var z = q;\n q = [];\n h.send(z, null, function(aa) {\n var ba = ((JSBNG__Date.now() - ((h.config.EXPIRY || g.EXPIRY)))), ca = ((((aa >= 400)) && ((aa < 600)))), da = z.map(function(ea) {\n ea.posts = ea.posts.filter(function(fa) {\n var ga = ((ca || fa.__meta.options.retry));\n fa.__meta.retryCount = ((((fa.__meta.retryCount || 0)) + 1));\n fa[3] = fa.__meta.retryCount;\n return ((ga && ((fa.__meta.timestamp > ba))));\n });\n return ea;\n });\n da = da.filter(function(ea) {\n return ((ea.posts.length > 0));\n });\n q = da.concat(q);\n });\n };\n ((window.top.JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_413.push)((v)));\n };\n;\n var w, x;\n try {\n x = a.JSBNG__sessionStorage;\n } catch (y) {\n \n };\n;\n if (((x && !s))) {\n w = {\n store: function z() {\n try {\n t();\n var ba = h.getUserID(), ca = q.filter(function(ea) {\n return ((ea.user == ba));\n }).map(function(ea) {\n ea = j({\n }, ea);\n ea.posts = ea.posts.map(function(fa) {\n return [fa[0],fa[1],fa[2],fa.__meta,];\n });\n return ea;\n }), da = JSON.stringify(ca);\n x.setItem(l, da);\n } catch (aa) {\n \n };\n ;\n },\n restore: function z() {\n try {\n var ba = x.getItem(l);\n if (ba) {\n x.removeItem(l);\n var ca = h.getUserID(), da = JSON.parse(ba);\n da = da.filter(function(ea) {\n ea.posts.forEach(function(fa) {\n fa.__meta = fa.pop();\n if (((\"retryCount\" in fa.__meta))) {\n fa[3] = fa.__meta.retryCount;\n }\n ;\n ;\n });\n return ((ea.user == ca));\n });\n q = q.concat(da);\n }\n ;\n ;\n } catch (aa) {\n \n };\n ;\n }\n };\n }\n else w = {\n store: k,\n restore: k\n };\n;\n;\n g.SEND = \"Banzai:SEND\";\n g.OK = \"Banzai:OK\";\n g.ERROR = \"Banzai:ERROR\";\n g.SHUTDOWN = \"Banzai:SHUTDOWN\";\n g.SEND_TIMEOUT = 15000;\n g.VITAL_WAIT = 1000;\n g.BASIC_WAIT = 60000;\n g.EXPIRY = ((30 * 60000));\n g.VITAL = {\n delay: ((h.config.MIN_WAIT || g.VITAL_WAIT))\n };\n g.BASIC = {\n delay: ((h.config.MAX_WAIT || g.BASIC_WAIT))\n };\n g.FBTRACE = h.config.fbtrace, g.isEnabled = function(z) {\n return ((h.config.gks && h.config.gks[z]));\n };\n g.post = function(z, aa, ba) {\n ba = ((ba || {\n }));\n if (s) {\n if (((JSBNG__document.domain == \"facebook.com\"))) {\n try {\n var da = a.JSBNG__top.require(\"Banzai\");\n da.post.apply(da, arguments);\n } catch (ca) {\n \n };\n }\n ;\n ;\n return;\n }\n ;\n ;\n if (h.config.disabled) {\n return;\n }\n ;\n ;\n var ea = h.config.blacklist;\n if (ea) {\n if (((((ea && ea.join)) && !ea._regex))) {\n ea._regex = new RegExp(((((\"^(?:\" + ea.join(\"|\"))) + \")\")));\n }\n ;\n ;\n if (((ea._regex && ea._regex.test(z)))) {\n return;\n }\n ;\n ;\n }\n ;\n ;\n if (((p.user != h.getUserID()))) {\n t();\n }\n ;\n ;\n var fa = JSBNG__Date.now(), ga = [z,aa,((fa - p.time)),];\n ga.__meta = {\n options: ba,\n timestamp: fa\n };\n p.posts.push(ga);\n var ha = ba.delay;\n if (((ha == null))) {\n ha = g.BASIC_WAIT;\n }\n ;\n ;\n if (g.isEnabled(m)) {\n if (!((z in r))) {\n r[z] = 0;\n }\n else r[z]++;\n ;\n ;\n p.sequence.push([z,r[z],]);\n }\n ;\n ;\n if (((u(ha) || !p.trigger))) {\n p.trigger = z;\n }\n ;\n ;\n };\n g.subscribe = h.subscribe;\n g._testState = function() {\n return {\n wad: p,\n wads: q\n };\n };\n h.onUnload(function() {\n h.cleanup();\n h.inform(g.SHUTDOWN);\n w.store();\n });\n t();\n w.restore();\n u(g.BASIC.delay);\n e.exports = g;\n});\n__d(\"userAction\", [\"Arbiter\",\"Banzai\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Banzai\"), i = b(\"copyProperties\"), j = 50, k = [], l = {\n }, m = {\n };\n function n(v, w, x, y, JSBNG__event) {\n var z = ((((v + \"/\")) + w)), aa = u(y);\n i(this, {\n ue: z,\n _uai_logged: false,\n _uai_timeout: null,\n _primary: {\n },\n _fallback: {\n },\n _default_ua_id: ((aa || \"-\")),\n _default_action_type: ((JSBNG__event ? JSBNG__event.type : \"-\")),\n _ts: v,\n _ns: x,\n _start_ts: v,\n _prev_event: \"s\",\n _ue_ts: v,\n _ue_count: w,\n _data_version: 1,\n _event_version: 2,\n _info_version: 2\n });\n this._log(\"ua:n\", [1,z,]);\n };\n;\n function o(v, w, x, y) {\n var z = ((((v in m)) ? m[v] : {\n })), aa = ((((w in z)) ? z[w] : {\n })), ba;\n if (((x in aa))) {\n if (((\"*\" in aa[x]))) {\n ba = aa[x][\"*\"];\n }\n else if (((y in aa[x]))) {\n ba = aa[x][y];\n }\n \n ;\n }\n ;\n ;\n return ba;\n };\n;\n var p = {\n store: true,\n delay: 3000,\n retry: true\n };\n i(n.prototype, {\n _log: function(v, w) {\n var x = ((l[v] === true)), y = o(v, this._ns, \"ua_id\", this._get_ua_id()), z = o(v, this._ns, \"action\", this._get_action_type()), aa = ((((y !== undefined)) || ((z !== undefined)))), ba = ((aa ? ((y || z)) : x));\n if (((h.isEnabled(\"useraction\") && ba))) {\n h.post(v, w, p);\n }\n ;\n ;\n },\n _get_action_type: function() {\n return ((((this._primary._action_type || this._fallback._action_type)) || this._default_action_type));\n },\n _get_ua_id: function() {\n return ((((this._primary._ua_id || this._fallback._ua_id)) || this._default_ua_id));\n },\n _log_uai: function() {\n var v = [this._info_version,this.ue,this._ns,this._get_ua_id(),this._get_action_type(),];\n this._log(\"ua:i\", v);\n this._uai_logged = true;\n this._uai_timeout = null;\n },\n uai: function(v, w, x) {\n if (!this._uai_logged) {\n ((this._uai_timeout && JSBNG__clearTimeout(this._uai_timeout)));\n this._primary._ua_id = w;\n this._primary._action_type = v;\n if (((x === undefined))) {\n this._log_uai();\n }\n else if (((x === false))) {\n this._uai_logged = true;\n }\n else {\n var y = this;\n x = ((x || 0));\n this._uai_timeout = JSBNG__setTimeout(function() {\n y._log_uai.apply(y);\n }, x);\n }\n \n ;\n ;\n }\n ;\n ;\n return this;\n },\n uai_fallback: function(v, w, x) {\n if (!this._uai_logged) {\n var y = this;\n ((this._uai_timeout && JSBNG__clearTimeout(this._uai_timeout)));\n this._fallback._ua_id = w;\n this._fallback._action_type = v;\n x = ((((x === undefined)) ? j : x));\n this._uai_timeout = JSBNG__setTimeout(function() {\n y._log_uai.apply(y);\n }, x);\n }\n ;\n ;\n return this;\n },\n add_event: function(v, w, x) {\n w = ((w || 0));\n var y = ((JSBNG__Date.now() - w)), z = ((y - this._ts)), aa = ((y - ((x ? x : this._ue_ts)))), ba = [this._event_version,this.ue,this._ns,this._get_ua_id(),this._prev_event,v,z,aa,];\n if (this._get_ua_id()) {\n this._log(\"ua:e\", ba);\n this._ts = y;\n this._prev_event = v;\n }\n ;\n ;\n return this;\n },\n add_data: function(v) {\n var w = [this._data_version,this.ue,v,];\n this._log(\"ua:d\", w);\n return this;\n }\n });\n var q = 0, r = 0, s = null;\n function t(v, w, JSBNG__event, x) {\n x = ((x || {\n }));\n var y = JSBNG__Date.now();\n if (((!w && JSBNG__event))) {\n w = JSBNG__event.getTarget();\n }\n ;\n ;\n if (((w && s))) {\n if (((((((((y - r)) < j)) && ((w == s)))) && ((x.mode == \"DEDUP\"))))) {\n return k[((k.length - 1))];\n }\n ;\n }\n ;\n ;\n var z = new n(y, q, v, w, JSBNG__event);\n s = w;\n k.push(z);\n while (((k.length > 10))) {\n k.shift();\n ;\n };\n ;\n g.inform(\"UserAction/new\", {\n ua: z,\n node: w,\n mode: x.mode,\n JSBNG__event: JSBNG__event\n });\n r = y;\n q++;\n return z;\n };\n;\n function u(v) {\n if (((!v || !v.nodeName))) {\n return null;\n }\n ;\n ;\n return v.nodeName.toLowerCase();\n };\n;\n t.setUATypeConfig = function(v) {\n i(l, v);\n };\n t.setCustomSampleConfig = function(v) {\n i(m, v);\n };\n t.getCurrentUECount = function() {\n return q;\n };\n e.exports = a.userAction = t;\n});\n__d(\"Primer\", [\"function-extensions\",\"Bootloader\",\"JSBNG__CSS\",\"ErrorUtils\",\"Parent\",\"clickRefAction\",\"trackReferrer\",\"userAction\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"Bootloader\"), h = b(\"JSBNG__CSS\"), i = b(\"ErrorUtils\"), j = b(\"Parent\"), k = b(\"clickRefAction\"), l = b(\"trackReferrer\"), m = b(\"userAction\"), n = null, o = /async(?:-post)?|dialog(?:-post)?|theater|toggle/, p = JSBNG__document.documentElement;\n function q(t, u) {\n t = j.byAttribute(t, u);\n if (!t) {\n return;\n }\n ;\n ;\n do {\n var v = t.getAttribute(u);\n JSON.parse(v).forEach(function(w) {\n var x = t;\n g.loadModules.call(g, [w[0],], function(y) {\n y[w[1]](x);\n });\n });\n } while (t = j.byAttribute(t.parentNode, u));\n return false;\n };\n;\n p.JSBNG__onclick = i.guard(function(t) {\n t = ((t || window.JSBNG__event));\n n = ((t.target || t.srcElement));\n var u = q(n, \"data-onclick\"), v = j.byTag(n, \"A\");\n if (!v) {\n return u;\n }\n ;\n ;\n var w = v.getAttribute(\"ajaxify\"), x = v.href, y = ((w || x));\n if (y) {\n k(\"a\", v, t).coalesce_namespace(\"primer\");\n var z = m(\"primer\", v, t, {\n mode: \"DEDUP\"\n }).uai_fallback(\"click\");\n if (a.ArbiterMonitor) {\n a.ArbiterMonitor.initUA(z, [v,]);\n }\n ;\n ;\n }\n ;\n ;\n if (((((w && x)) && !(/#$/).test(x)))) {\n var aa = ((t.which && ((t.which === 2)))), ba = ((((((t.altKey || t.ctrlKey)) || t.metaKey)) || t.shiftKey));\n if (((aa || ba))) {\n return;\n }\n ;\n ;\n }\n ;\n ;\n l(v, y);\n var ca = ((v.rel && v.rel.match(o)));\n ca = ((ca && ca[0]));\n switch (ca) {\n case \"dialog\":\n \n case \"dialog-post\":\n g.loadModules([\"AsyncDialog\",], function(da) {\n da.bootstrap(y, v, ca);\n });\n break;\n case \"async\":\n \n case \"async-post\":\n g.loadModules([\"AsyncRequest\",], function(da) {\n da.bootstrap(y, v);\n });\n break;\n case \"theater\":\n g.loadModules([\"PhotoSnowlift\",], function(da) {\n da.bootstrap(y, v);\n });\n break;\n case \"toggle\":\n h.toggleClass(v.parentNode, \"openToggler\");\n g.loadModules([\"Toggler\",], function(da) {\n da.bootstrap(v);\n });\n break;\n default:\n return u;\n };\n ;\n return false;\n });\n p.JSBNG__onsubmit = i.guard(function(t) {\n t = ((t || window.JSBNG__event));\n var u = ((t.target || t.srcElement));\n if (((((u && ((u.nodeName == \"FORM\")))) && ((u.getAttribute(\"rel\") == \"async\"))))) {\n k(\"f\", u, t).coalesce_namespace(\"primer\");\n var v = m(\"primer\", u, t, {\n mode: \"DEDUP\"\n }).uai_fallback(\"submit\");\n if (a.ArbiterMonitor) {\n a.ArbiterMonitor.initUA(v, [u,]);\n }\n ;\n ;\n var w = n;\n g.loadModules([\"Form\",], function(x) {\n x.bootstrap(u, w);\n });\n return false;\n }\n ;\n ;\n });\n var r = null, s = i.guard(function(t, u) {\n u = ((u || window.JSBNG__event));\n r = ((u.target || u.srcElement));\n q(r, ((\"data-on\" + t)));\n var v = j.byAttribute(r, \"data-hover\");\n if (!v) {\n return;\n }\n ;\n ;\n switch (v.getAttribute(\"data-hover\")) {\n case \"tooltip\":\n g.loadModules([\"Tooltip\",], function(w) {\n w.process(v, r);\n });\n break;\n };\n ;\n });\n p.JSBNG__onmouseover = s.curry(\"mouseover\");\n if (p.JSBNG__addEventListener) {\n p.JSBNG__addEventListener(\"JSBNG__focus\", s.curry(\"JSBNG__focus\"), true);\n }\n else p.JSBNG__attachEvent(\"JSBNG__onfocusin\", s.curry(\"JSBNG__focus\"));\n;\n;\n});\n__d(\"ScriptPath\", [\"Banzai\",\"ErrorUtils\",], function(a, b, c, d, e, f) {\n var g = b(\"Banzai\"), h = b(\"ErrorUtils\"), i = \"script_path_change\", j = {\n scriptPath: null,\n categoryToken: null\n }, k = {\n PAGE_LOAD: \"load\",\n PAGE_UNLOAD: \"unload\",\n TRANSITION: \"transition\"\n }, l = null, m = null, n = {\n }, o = 0, p = false, q = null;\n function r(z) {\n var aa = ++o;\n n[aa] = z;\n return aa;\n };\n;\n function s(z) {\n if (n[z]) {\n delete n[z];\n }\n ;\n ;\n };\n;\n function t() {\n Object.keys(n).forEach(function(z) {\n h.applyWithGuard(n[z], null, [{\n source: l,\n dest: m\n },]);\n });\n };\n;\n function u(z, aa, ba) {\n if (!p) {\n return;\n }\n ;\n ;\n var ca = {\n source_path: z.scriptPath,\n source_token: z.categoryToken,\n dest_path: aa.scriptPath,\n dest_token: aa.categoryToken,\n navigation: q,\n cause: ba\n };\n g.post(i, ca);\n };\n;\n function v() {\n u(j, m, k.PAGE_LOAD);\n };\n;\n function w(z, aa) {\n u(z, aa, k.TRANSITION);\n };\n;\n function x() {\n u(m, j, k.PAGE_UNLOAD);\n };\n;\n g.subscribe(g.SHUTDOWN, x);\n var y = {\n set: function(z, aa) {\n var ba = m;\n m = {\n scriptPath: z,\n categoryToken: aa\n };\n window._script_path = z;\n t();\n if (p) {\n if (ba) {\n w(ba, m);\n }\n else v();\n ;\n }\n ;\n ;\n },\n setNavigation: function(z) {\n q = z;\n },\n startLogging: function() {\n p = true;\n if (m) {\n v();\n }\n ;\n ;\n },\n stopLogging: function() {\n p = false;\n },\n getScriptPath: function() {\n return ((m ? m.scriptPath : undefined));\n },\n getCategoryToken: function() {\n return ((m ? m.categoryToken : undefined));\n },\n subscribe: function(z) {\n return r(z);\n },\n unsubscribe: function(z) {\n s(z);\n }\n };\n y.CAUSE = k;\n y.BANZAI_LOGGING_ROUTE = i;\n e.exports = y;\n});\n__d(\"URLFragmentPrelude\", [\"ScriptPath\",\"URLFragmentPreludeConfig\",], function(a, b, c, d, e, f) {\n var g = b(\"ScriptPath\"), h = b(\"URLFragmentPreludeConfig\"), i = /^(?:(?:[^:\\/?#]+):)?(?:\\/\\/(?:[^\\/?#]*))?([^?#]*)(?:\\?([^#]*))?(?:#(.*))?/, j = \"\", k = /^[^\\/\\\\#!\\.\\?\\*\\&\\^]+$/;\n window.JSBNG__location.href.replace(i, function(l, m, n, o) {\n var p, q, r, s;\n p = q = ((m + ((n ? ((\"?\" + n)) : \"\"))));\n if (o) {\n if (h.incorporateQuicklingFragment) {\n var t = o.replace(/^(!|%21)/, \"\");\n r = t.charAt(0);\n if (((((r == \"/\")) || ((r == \"\\\\\"))))) {\n p = t.replace(/^[\\\\\\/]+/, \"/\");\n }\n ;\n ;\n }\n ;\n ;\n if (h.hashtagRedirect) {\n if (((q == p))) {\n var u = o.match(k);\n if (((((u && !n)) && ((m == \"/\"))))) {\n p = ((\"/hashtag/\" + o));\n }\n ;\n ;\n }\n ;\n }\n ;\n ;\n }\n ;\n ;\n if (((p != q))) {\n s = g.getScriptPath();\n if (s) {\n JSBNG__document.cookie = ((((((\"rdir=\" + s)) + \"; path=/; domain=\")) + window.JSBNG__location.hostname.replace(/^.*(\\.facebook\\..*)$/i, \"$1\")));\n }\n ;\n ;\n window.JSBNG__location.replace(((j + p)));\n }\n ;\n ;\n });\n});\n__d(\"removeArrayReduce\", [], function(a, b, c, d, e, f) {\n Array.prototype.reduce = undefined;\n Array.prototype.reduceRight = undefined;\n});\n__d(\"cx\", [], function(a, b, c, d, e, f) {\n function g(h) {\n throw new Error(((\"cx\" + \"(...): Unexpected class transformation.\")));\n };\n;\n e.exports = g;\n});\n__d(\"LitestandSidebarPrelude\", [\"JSBNG__CSS\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = b(\"cx\");\n e.exports = {\n init: function(i, j, k) {\n var l = JSBNG__document.documentElement;\n l.className = ((l.className + \" sidebarMode\"));\n if (((j || ((l.clientWidth <= k))))) {\n l.className = ((((l.className + \" \")) + \"-cx-PUBLIC-hasLitestandBookmarksSidebar__collapsed\"));\n }\n ;\n ;\n g.show(i);\n }\n };\n});\n__d(\"SubmitOnEnterListener\", [\"Bootloader\",\"JSBNG__CSS\",], function(a, b, c, d, e, f) {\n var g = b(\"Bootloader\"), h = b(\"JSBNG__CSS\");\n JSBNG__document.documentElement.JSBNG__onkeydown = function(i) {\n i = ((i || window.JSBNG__event));\n var j = ((i.target || i.srcElement)), k = ((((((((((((i.keyCode == 13)) && !i.altKey)) && !i.ctrlKey)) && !i.metaKey)) && !i.shiftKey)) && h.hasClass(j, \"enter_submit\")));\n if (k) {\n g.loadModules([\"DOM\",\"Input\",\"trackReferrer\",\"Form\",], function(l, m, n, o) {\n if (!m.isEmpty(j)) {\n var p = j.form, q = ((l.scry(p, \".enter_submit_target\")[0] || l.scry(p, \"[type=\\\"submit\\\"]\")[0]));\n if (q) {\n var r = ((o.getAttribute(p, \"ajaxify\") || o.getAttribute(p, \"action\")));\n if (r) {\n n(p, r);\n }\n ;\n ;\n q.click();\n }\n ;\n ;\n }\n ;\n ;\n });\n return false;\n }\n ;\n ;\n };\n});\n__d(\"CommentPrelude\", [\"JSBNG__CSS\",\"Parent\",\"clickRefAction\",\"userAction\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = b(\"Parent\"), i = b(\"clickRefAction\"), j = b(\"userAction\");\n function k(o, p) {\n j(\"ufi\", o).uai(\"click\");\n i(\"ufi\", o, null, \"FORCE\");\n return l(o, p);\n };\n;\n function l(o, p) {\n var q = h.byTag(o, \"form\");\n m(q);\n var r = g.removeClass.curry(q, \"hidden_add_comment\");\n if (window.ScrollAwareDOM) {\n window.ScrollAwareDOM.monitor(q, r);\n }\n else r();\n ;\n ;\n if (((p !== false))) {\n var s = ((q.add_comment_text_text || q.add_comment_text)), t = s.length;\n if (t) {\n if (!h.byClass(s[((t - 1))], \"UFIReplyList\")) {\n s[((t - 1))].JSBNG__focus();\n }\n else if (!h.byClass(s[0], \"UFIReplyList\")) {\n s[0].JSBNG__focus();\n }\n \n ;\n ;\n }\n else s.JSBNG__focus();\n ;\n ;\n }\n ;\n ;\n return false;\n };\n;\n function m(o) {\n var p = g.removeClass.curry(o, \"collapsed_comments\");\n if (window.ScrollAwareDOM) {\n window.ScrollAwareDOM.monitor(o, p);\n }\n else p();\n ;\n ;\n };\n;\n var n = {\n click: k,\n expand: l,\n uncollapse: m\n };\n e.exports = n;\n});\n__d(\"legacy:ufi-comment-prelude-js\", [\"CommentPrelude\",], function(a, b, c, d) {\n var e = b(\"CommentPrelude\");\n a.fc_click = e.click;\n a.fc_expand = e.expand;\n}, 3);\n__d(\"ScriptMonitor\", [], function(a, b, c, d, e, f) {\n var g, h = [], i = ((((window.JSBNG__MutationObserver || window.JSBNG__WebKitMutationObserver)) || window.MozMutationObserver));\n e.exports = {\n activate: function() {\n if (!i) {\n return;\n }\n ;\n ;\n g = new i(function(j) {\n for (var k = 0; ((k < j.length)); k++) {\n var l = j[k];\n if (((l.type == \"childList\"))) {\n for (var m = 0; ((m < l.addedNodes.length)); m++) {\n var n = l.addedNodes[m];\n if (((((((n.tagName == \"SCRIPT\")) || ((n.tagName == \"div\")))) && n.src))) {\n h.push(n.src);\n }\n ;\n ;\n };\n ;\n }\n else if (((((l.type == \"attributes\")) && ((l.attributeName == \"src\"))))) {\n h.push(l.target.src);\n }\n \n ;\n ;\n };\n ;\n });\n g.observe(JSBNG__document, {\n attributes: true,\n childList: true,\n subtree: true\n });\n },\n JSBNG__stop: function() {\n ((g && g.disconnect()));\n return h;\n }\n };\n});"); |
| // 1019 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"(window.Bootloader && Bootloader.done([\"KlJ/5\",]));"); |
| // 1020 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s2cbbb344264ff2fb1d0f702823bd4d1c89478c26"); |
| // 1021 |
| geval("((window.Bootloader && Bootloader.done([\"KlJ/5\",])));"); |
| // 1022 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"Bootloader.loadEarlyResources({\n OH3xD: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yJ/r/MAGRPTCpjAg.js\"\n },\n XH2Cu: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yd/r/clqWNoT9Gz_.js\"\n },\n ociRJ: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yu/r/OZ92iwfpUMS.js\"\n }\n});"); |
| // 1023 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"sdd9d3eed3f252be959e4754051407372cbd92eae"); |
| // 1024 |
| geval("Bootloader.loadEarlyResources({\n OH3xD: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yJ/r/MAGRPTCpjAg.js\"\n },\n XH2Cu: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yd/r/clqWNoT9Gz_.js\"\n },\n ociRJ: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yu/r/OZ92iwfpUMS.js\"\n }\n});"); |
| // 1081 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,""); |
| // 1082 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"sda39a3ee5e6b4b0d3255bfef95601890afd80709"); |
| // 1083 |
| geval(""); |
| // 1084 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"new (require(\"ServerJS\"))().handle({\n require: [[\"removeArrayReduce\",],[\"markJSEnabled\",],[\"lowerDomain\",],[\"URLFragmentPrelude\",],],\n define: [[\"BanzaiConfig\",[],{\n MAX_WAIT: 150000,\n MAX_SIZE: 10000,\n COMPRESSION_THRESHOLD: 800,\n gks: {\n jslogger: true,\n miny_compression: true,\n boosted_posts: true,\n time_spent: true,\n time_spent_bit_array: true,\n time_spent_debug: true,\n useraction: true,\n videos: true\n }\n },7,],[\"URLFragmentPreludeConfig\",[],{\n hashtagRedirect: true,\n incorporateQuicklingFragment: true\n },137,],]\n});"); |
| // 1085 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"sbc7df7f6bb75d7e29414a7bf76d7afea4393a8e7"); |
| // 1086 |
| geval("new (require(\"ServerJS\"))().handle({\n require: [[\"removeArrayReduce\",],[\"markJSEnabled\",],[\"lowerDomain\",],[\"URLFragmentPrelude\",],],\n define: [[\"BanzaiConfig\",[],{\n MAX_WAIT: 150000,\n MAX_SIZE: 10000,\n COMPRESSION_THRESHOLD: 800,\n gks: {\n jslogger: true,\n miny_compression: true,\n boosted_posts: true,\n time_spent: true,\n time_spent_bit_array: true,\n time_spent_debug: true,\n useraction: true,\n videos: true\n }\n },7,],[\"URLFragmentPreludeConfig\",[],{\n hashtagRedirect: true,\n incorporateQuicklingFragment: true\n },137,],]\n});"); |
| // 1113 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"OH3xD\",]);\n}\n;\n__d(\"XdArbiterBuffer\", [], function(a, b, c, d, e, f) {\n if (!a.XdArbiter) {\n a.XdArbiter = {\n _m: [],\n _p: [],\n register: function(g, h, i) {\n h = (h || (((/^apps\\./).test(location.hostname) ? \"canvas\" : \"tab\")));\n this._p.push([g,h,i,]);\n return h;\n },\n handleMessage: function(g, h) {\n this._m.push([g,h,]);\n }\n };\n };\n});\n__d(\"CanvasIFrameLoader\", [\"XdArbiterBuffer\",\"$\",], function(a, b, c, d, e, f) {\n b(\"XdArbiterBuffer\");\n var g = b(\"$\"), h = {\n loadFromForm: function(i) {\n i.submit();\n }\n };\n e.exports = h;\n});\n__d(\"PHPQuerySerializer\", [], function(a, b, c, d, e, f) {\n function g(n) {\n return h(n, null);\n };\n function h(n, o) {\n o = (o || \"\");\n var p = [];\n if (((n === null) || (n === undefined))) {\n p.push(i(o));\n }\n else if ((typeof (n) == \"object\")) {\n for (var q in n) {\n if ((n.hasOwnProperty(q) && (n[q] !== undefined))) {\n p.push(h(n[q], (o ? ((((o + \"[\") + q) + \"]\")) : q)));\n };\n };\n }\n else p.push(((i(o) + \"=\") + i(n)));\n \n ;\n return p.join(\"&\");\n };\n function i(n) {\n return encodeURIComponent(n).replace(/%5D/g, \"]\").replace(/%5B/g, \"[\");\n };\n var j = /^(\\w+)((?:\\[\\w*\\])+)=?(.*)/;\n function k(n) {\n if (!n) {\n return {\n }\n };\n var o = {\n };\n n = n.replace(/%5B/gi, \"[\").replace(/%5D/gi, \"]\");\n n = n.split(\"&\");\n var p = Object.prototype.hasOwnProperty;\n for (var q = 0, r = n.length; (q < r); q++) {\n var s = n[q].match(j);\n if (!s) {\n var t = n[q].split(\"=\");\n o[l(t[0])] = ((t[1] === undefined) ? null : l(t[1]));\n }\n else {\n var u = s[2].split(/\\]\\[|\\[|\\]/).slice(0, -1), v = s[1], w = l((s[3] || \"\"));\n u[0] = v;\n var x = o;\n for (var y = 0; (y < (u.length - 1)); y++) {\n if (u[y]) {\n if (!p.call(x, u[y])) {\n var z = ((u[(y + 1)] && !u[(y + 1)].match(/^\\d{1,3}$/)) ? {\n } : []);\n x[u[y]] = z;\n if ((x[u[y]] !== z)) {\n return o\n };\n }\n ;\n x = x[u[y]];\n }\n else {\n if ((u[(y + 1)] && !u[(y + 1)].match(/^\\d{1,3}$/))) {\n x.push({\n });\n }\n else x.push([]);\n ;\n x = x[(x.length - 1)];\n }\n ;\n };\n if (((x instanceof Array) && (u[(u.length - 1)] === \"\"))) {\n x.push(w);\n }\n else x[u[(u.length - 1)]] = w;\n ;\n }\n ;\n };\n return o;\n };\n function l(n) {\n return decodeURIComponent(n.replace(/\\+/g, \" \"));\n };\n var m = {\n serialize: g,\n encodeComponent: i,\n deserialize: k,\n decodeComponent: l\n };\n e.exports = m;\n});\n__d(\"URIRFC3986\", [], function(a, b, c, d, e, f) {\n var g = new RegExp(((((((((((((\"^\" + \"([^:/?#]+:)?\") + \"(//\") + \"([^\\\\\\\\/?#@]*@)?\") + \"(\") + \"\\\\[[A-Fa-f0-9:.]+\\\\]|\") + \"[^\\\\/?#:]*\") + \")\") + \"(:[0-9]*)?\") + \")?\") + \"([^?#]*)\") + \"(\\\\?[^#]*)?\") + \"(#.*)?\")), h = {\n parse: function(i) {\n if ((i.trim() === \"\")) {\n return null\n };\n var j = i.match(g), k = {\n };\n k.uri = (j[0] ? j[0] : null);\n k.scheme = (j[1] ? j[1].substr(0, (j[1].length - 1)) : null);\n k.authority = (j[2] ? j[2].substr(2) : null);\n k.userinfo = (j[3] ? j[3].substr(0, (j[3].length - 1)) : null);\n k.host = (j[2] ? j[4] : null);\n k.port = (j[5] ? ((j[5].substr(1) ? parseInt(j[5].substr(1), 10) : null)) : null);\n k.path = (j[6] ? j[6] : null);\n k.query = (j[7] ? j[7].substr(1) : null);\n k.fragment = (j[8] ? j[8].substr(1) : null);\n k.isGenericURI = ((k.authority === null) && !!k.scheme);\n return k;\n }\n };\n e.exports = h;\n});\n__d(\"createObjectFrom\", [\"hasArrayNature\",], function(a, b, c, d, e, f) {\n var g = b(\"hasArrayNature\");\n function h(i, j) {\n var k = {\n }, l = g(j);\n if ((typeof j == \"undefined\")) {\n j = true;\n };\n for (var m = i.length; m--; ) {\n k[i[m]] = (l ? j[m] : j);;\n };\n return k;\n };\n e.exports = h;\n});\n__d(\"URISchemes\", [\"createObjectFrom\",], function(a, b, c, d, e, f) {\n var g = b(\"createObjectFrom\"), h = g([\"fb\",\"fbcf\",\"fbconnect\",\"fb-messenger\",\"fbrpc\",\"ftp\",\"http\",\"https\",\"mailto\",\"itms\",\"itms-apps\",\"market\",\"svn+ssh\",\"fbstaging\",\"tel\",\"sms\",]), i = {\n isAllowed: function(j) {\n if (!j) {\n return true\n };\n return h.hasOwnProperty(j.toLowerCase());\n }\n };\n e.exports = i;\n});\n__d(\"URIBase\", [\"PHPQuerySerializer\",\"URIRFC3986\",\"URISchemes\",\"copyProperties\",\"ex\",\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"PHPQuerySerializer\"), h = b(\"URIRFC3986\"), i = b(\"URISchemes\"), j = b(\"copyProperties\"), k = b(\"ex\"), l = b(\"invariant\"), m = new RegExp(((\"[\\\\x00-\\\\x2c\\\\x2f\\\\x3b-\\\\x40\\\\x5c\\\\x5e\\\\x60\\\\x7b-\\\\x7f\" + \"\\\\uFDD0-\\\\uFDEF\\\\uFFF0-\\\\uFFFF\") + \"\\\\u2047\\\\u2048\\\\uFE56\\\\uFE5F\\\\uFF03\\\\uFF0F\\\\uFF1F]\")), n = new RegExp((\"^(?:[^/]*:|\" + \"[\\\\x00-\\\\x1f]*/[\\\\x00-\\\\x1f]*/)\"));\n function o(q, r, s) {\n if (!r) {\n return true\n };\n if ((r instanceof p)) {\n q.setProtocol(r.getProtocol());\n q.setDomain(r.getDomain());\n q.setPort(r.getPort());\n q.setPath(r.getPath());\n q.setQueryData(g.deserialize(g.serialize(r.getQueryData())));\n q.setFragment(r.getFragment());\n return true;\n }\n ;\n r = r.toString();\n var t = (h.parse(r) || {\n });\n if ((!s && !i.isAllowed(t.scheme))) {\n return false\n };\n q.setProtocol((t.scheme || \"\"));\n if ((!s && m.test(t.host))) {\n return false\n };\n q.setDomain((t.host || \"\"));\n q.setPort((t.port || \"\"));\n q.setPath((t.path || \"\"));\n if (s) {\n q.setQueryData((g.deserialize(t.query) || {\n }));\n }\n else try {\n q.setQueryData((g.deserialize(t.query) || {\n }));\n } catch (u) {\n return false;\n }\n ;\n q.setFragment((t.fragment || \"\"));\n if ((t.userinfo !== null)) {\n if (s) {\n throw new Error(k(\"URI.parse: invalid URI (userinfo is not allowed in a URI): %s\", q.toString()));\n }\n else return false\n \n };\n if ((!q.getDomain() && (q.getPath().indexOf(\"\\\\\") !== -1))) {\n if (s) {\n throw new Error(k(\"URI.parse: invalid URI (no domain but multiple back-slashes): %s\", q.toString()));\n }\n else return false\n \n };\n if ((!q.getProtocol() && n.test(r))) {\n if (s) {\n throw new Error(k(\"URI.parse: invalid URI (unsafe protocol-relative URLs): %s\", q.toString()));\n }\n else return false\n \n };\n return true;\n };\n function p(q) {\n this.$URIBase0 = \"\";\n this.$URIBase1 = \"\";\n this.$URIBase2 = \"\";\n this.$URIBase3 = \"\";\n this.$URIBase4 = \"\";\n this.$URIBase5 = {\n };\n o(this, q, true);\n };\n p.prototype.setProtocol = function(q) {\n l(i.isAllowed(q));\n this.$URIBase0 = q;\n return this;\n };\n p.prototype.getProtocol = function(q) {\n return this.$URIBase0;\n };\n p.prototype.setSecure = function(q) {\n return this.setProtocol((q ? \"https\" : \"http\"));\n };\n p.prototype.isSecure = function() {\n return (this.getProtocol() === \"https\");\n };\n p.prototype.setDomain = function(q) {\n if (m.test(q)) {\n throw new Error(k(\"URI.setDomain: unsafe domain specified: %s for url %s\", q, this.toString()))\n };\n this.$URIBase1 = q;\n return this;\n };\n p.prototype.getDomain = function() {\n return this.$URIBase1;\n };\n p.prototype.setPort = function(q) {\n this.$URIBase2 = q;\n return this;\n };\n p.prototype.getPort = function() {\n return this.$URIBase2;\n };\n p.prototype.setPath = function(q) {\n this.$URIBase3 = q;\n return this;\n };\n p.prototype.getPath = function() {\n return this.$URIBase3;\n };\n p.prototype.addQueryData = function(q, r) {\n if ((q instanceof Object)) {\n j(this.$URIBase5, q);\n }\n else this.$URIBase5[q] = r;\n ;\n return this;\n };\n p.prototype.setQueryData = function(q) {\n this.$URIBase5 = q;\n return this;\n };\n p.prototype.getQueryData = function() {\n return this.$URIBase5;\n };\n p.prototype.removeQueryData = function(q) {\n if (!Array.isArray(q)) {\n q = [q,];\n };\n for (var r = 0, s = q.length; (r < s); ++r) {\n delete this.$URIBase5[q[r]];;\n };\n return this;\n };\n p.prototype.setFragment = function(q) {\n this.$URIBase4 = q;\n return this;\n };\n p.prototype.getFragment = function() {\n return this.$URIBase4;\n };\n p.prototype.toString = function() {\n var q = \"\";\n if (this.$URIBase0) {\n q += (this.$URIBase0 + \"://\");\n };\n if (this.$URIBase1) {\n q += this.$URIBase1;\n };\n if (this.$URIBase2) {\n q += (\":\" + this.$URIBase2);\n };\n if (this.$URIBase3) {\n q += this.$URIBase3;\n }\n else if (q) {\n q += \"/\";\n }\n ;\n var r = g.serialize(this.$URIBase5);\n if (r) {\n q += (\"?\" + r);\n };\n if (this.$URIBase4) {\n q += (\"#\" + this.$URIBase4);\n };\n return q;\n };\n p.prototype.getOrigin = function() {\n return (((this.$URIBase0 + \"://\") + this.$URIBase1) + ((this.$URIBase2 ? (\":\" + this.$URIBase2) : \"\")));\n };\n p.isValidURI = function(q) {\n return o(new p(), q, false);\n };\n e.exports = p;\n});\n__d(\"URI\", [\"URIBase\",\"copyProperties\",\"goURI\",], function(a, b, c, d, e, f) {\n var g = b(\"URIBase\"), h = b(\"copyProperties\"), i = b(\"goURI\");\n for (var j in g) {\n if ((g.hasOwnProperty(j) && (j !== \"_metaprototype\"))) {\n l[j] = g[j];\n };\n };\n var k = ((g === null) ? null : g.prototype);\n l.prototype = Object.create(k);\n l.prototype.constructor = l;\n l.__superConstructor__ = g;\n function l(m) {\n if (!((this instanceof l))) {\n return new l((m || window.location.href))\n };\n g.call(this, (m || \"\"));\n };\n l.prototype.setPath = function(m) {\n this.path = m;\n return k.setPath.call(this, m);\n };\n l.prototype.getPath = function() {\n var m = k.getPath.call(this);\n if (m) {\n return m.replace(/^\\/+/, \"/\")\n };\n return m;\n };\n l.prototype.setProtocol = function(m) {\n this.protocol = m;\n return k.setProtocol.call(this, m);\n };\n l.prototype.setDomain = function(m) {\n this.domain = m;\n return k.setDomain.call(this, m);\n };\n l.prototype.setPort = function(m) {\n this.port = m;\n return k.setPort.call(this, m);\n };\n l.prototype.setFragment = function(m) {\n this.fragment = m;\n return k.setFragment.call(this, m);\n };\n l.prototype.isEmpty = function() {\n return !((((((this.getPath() || this.getProtocol()) || this.getDomain()) || this.getPort()) || (Object.keys(this.getQueryData()).length > 0)) || this.getFragment()));\n };\n l.prototype.valueOf = function() {\n return this.toString();\n };\n l.prototype.isFacebookURI = function() {\n if (!l.$URI5) {\n l.$URI5 = new RegExp(\"(^|\\\\.)facebook\\\\.com$\", \"i\");\n };\n if (this.isEmpty()) {\n return false\n };\n if ((!this.getDomain() && !this.getProtocol())) {\n return true\n };\n return ((([\"http\",\"https\",].indexOf(this.getProtocol()) !== -1) && l.$URI5.test(this.getDomain())));\n };\n l.prototype.getRegisteredDomain = function() {\n if (!this.getDomain()) {\n return \"\"\n };\n if (!this.isFacebookURI()) {\n return null\n };\n var m = this.getDomain().split(\".\"), n = m.indexOf(\"facebook\");\n return m.slice(n).join(\".\");\n };\n l.prototype.getUnqualifiedURI = function() {\n return new l(this).setProtocol(null).setDomain(null).setPort(null);\n };\n l.prototype.getQualifiedURI = function() {\n return new l(this).$URI6();\n };\n l.prototype.$URI6 = function() {\n if (!this.getDomain()) {\n var m = l();\n this.setProtocol(m.getProtocol()).setDomain(m.getDomain()).setPort(m.getPort());\n }\n ;\n return this;\n };\n l.prototype.isSameOrigin = function(m) {\n var n = (m || window.location.href);\n if (!((n instanceof l))) {\n n = new l(n.toString());\n };\n if ((this.isEmpty() || n.isEmpty())) {\n return false\n };\n if ((this.getProtocol() && (this.getProtocol() != n.getProtocol()))) {\n return false\n };\n if ((this.getDomain() && (this.getDomain() != n.getDomain()))) {\n return false\n };\n if ((this.getPort() && (this.getPort() != n.getPort()))) {\n return false\n };\n return true;\n };\n l.prototype.go = function(m) {\n i(this, m);\n };\n l.prototype.setSubdomain = function(m) {\n var n = this.$URI6().getDomain().split(\".\");\n if ((n.length <= 2)) {\n n.unshift(m);\n }\n else n[0] = m;\n ;\n return this.setDomain(n.join(\".\"));\n };\n l.prototype.getSubdomain = function() {\n if (!this.getDomain()) {\n return \"\"\n };\n var m = this.getDomain().split(\".\");\n if ((m.length <= 2)) {\n return \"\";\n }\n else return m[0]\n ;\n };\n h(l, {\n getRequestURI: function(m, n) {\n m = ((m === undefined) || m);\n var o = a.PageTransitions;\n if (((m && o) && o.isInitialized())) {\n return o.getCurrentURI(!!n).getQualifiedURI();\n }\n else return new l(window.location.href)\n ;\n },\n getMostRecentURI: function() {\n var m = a.PageTransitions;\n if ((m && m.isInitialized())) {\n return m.getMostRecentURI().getQualifiedURI();\n }\n else return new l(window.location.href)\n ;\n },\n getNextURI: function() {\n var m = a.PageTransitions;\n if ((m && m.isInitialized())) {\n return m.getNextURI().getQualifiedURI();\n }\n else return new l(window.location.href)\n ;\n },\n expression: /(((\\w+):\\/\\/)([^\\/:]*)(:(\\d+))?)?([^#?]*)(\\?([^#]*))?(#(.*))?/,\n arrayQueryExpression: /^(\\w+)((?:\\[\\w*\\])+)=?(.*)/,\n explodeQuery: function(m) {\n if (!m) {\n return {\n }\n };\n var n = {\n };\n m = m.replace(/%5B/gi, \"[\").replace(/%5D/gi, \"]\");\n m = m.split(\"&\");\n var o = Object.prototype.hasOwnProperty;\n for (var p = 0, q = m.length; (p < q); p++) {\n var r = m[p].match(l.arrayQueryExpression);\n if (!r) {\n var s = m[p].split(\"=\");\n n[l.decodeComponent(s[0])] = ((s[1] === undefined) ? null : l.decodeComponent(s[1]));\n }\n else {\n var t = r[2].split(/\\]\\[|\\[|\\]/).slice(0, -1), u = r[1], v = l.decodeComponent((r[3] || \"\"));\n t[0] = u;\n var w = n;\n for (var x = 0; (x < (t.length - 1)); x++) {\n if (t[x]) {\n if (!o.call(w, t[x])) {\n var y = ((t[(x + 1)] && !t[(x + 1)].match(/^\\d{1,3}$/)) ? {\n } : []);\n w[t[x]] = y;\n if ((w[t[x]] !== y)) {\n return n\n };\n }\n ;\n w = w[t[x]];\n }\n else {\n if ((t[(x + 1)] && !t[(x + 1)].match(/^\\d{1,3}$/))) {\n w.push({\n });\n }\n else w.push([]);\n ;\n w = w[(w.length - 1)];\n }\n ;\n };\n if (((w instanceof Array) && (t[(t.length - 1)] === \"\"))) {\n w.push(v);\n }\n else w[t[(t.length - 1)]] = v;\n ;\n }\n ;\n };\n return n;\n },\n implodeQuery: function(m, n, o) {\n n = (n || \"\");\n if ((o === undefined)) {\n o = true;\n };\n var p = [];\n if (((m === null) || (m === undefined))) {\n p.push((o ? l.encodeComponent(n) : n));\n }\n else if ((m instanceof Array)) {\n for (var q = 0; (q < m.length); ++q) {\n try {\n if ((m[q] !== undefined)) {\n p.push(l.implodeQuery(m[q], (n ? ((((n + \"[\") + q) + \"]\")) : q), o));\n };\n } catch (r) {\n \n };\n };\n }\n else if ((typeof (m) == \"object\")) {\n if ((((\"nodeName\" in m)) && ((\"nodeType\" in m)))) {\n p.push(\"{node}\");\n }\n else for (var s in m) {\n try {\n if ((m[s] !== undefined)) {\n p.push(l.implodeQuery(m[s], (n ? ((((n + \"[\") + s) + \"]\")) : s), o));\n };\n } catch (r) {\n \n };\n }\n ;\n }\n else if (o) {\n p.push(((l.encodeComponent(n) + \"=\") + l.encodeComponent(m)));\n }\n else p.push(((n + \"=\") + m));\n \n \n \n ;\n return p.join(\"&\");\n },\n encodeComponent: function(m) {\n return encodeURIComponent(m).replace(/%5D/g, \"]\").replace(/%5B/g, \"[\");\n },\n decodeComponent: function(m) {\n return decodeURIComponent(m.replace(/\\+/g, \" \"));\n }\n });\n e.exports = l;\n});\n__d(\"AsyncSignal\", [\"Env\",\"ErrorUtils\",\"QueryString\",\"URI\",\"XHR\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Env\"), h = b(\"ErrorUtils\"), i = b(\"QueryString\"), j = b(\"URI\"), k = b(\"XHR\"), l = b(\"copyProperties\");\n function m(n, o) {\n this.data = (o || {\n });\n if ((g.tracking_domain && (n.charAt(0) == \"/\"))) {\n n = (g.tracking_domain + n);\n };\n this.uri = n;\n };\n m.prototype.setHandler = function(n) {\n this.handler = n;\n return this;\n };\n m.prototype.send = function() {\n var n = this.handler, o = this.data, p = new Image();\n if (n) {\n p.onload = p.onerror = function() {\n h.applyWithGuard(n, null, [(p.height == 1),]);\n };\n };\n o.asyncSignal = ((((Math.random() * 10000) | 0)) + 1);\n var q = new j(this.uri).isFacebookURI();\n l(o, k.getAsyncParams((q ? \"POST\" : \"GET\")));\n p.src = i.appendToUrl(this.uri, o);\n return this;\n };\n e.exports = m;\n});\n__d(\"DOMQuery\", [\"CSS\",\"UserAgent\",\"createArrayFrom\",\"createObjectFrom\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"CSS\"), h = b(\"UserAgent\"), i = b(\"createArrayFrom\"), j = b(\"createObjectFrom\"), k = b(\"ge\"), l = null;\n function m(o, p) {\n return (o.hasAttribute ? o.hasAttribute(p) : (o.getAttribute(p) !== null));\n };\n var n = {\n find: function(o, p) {\n var q = n.scry(o, p);\n return q[0];\n },\n scry: function(o, p) {\n if ((!o || !o.getElementsByTagName)) {\n return []\n };\n var q = p.split(\" \"), r = [o,];\n for (var s = 0; (s < q.length); s++) {\n if ((r.length === 0)) {\n break;\n };\n if ((q[s] === \"\")) {\n continue;\n };\n var t = q[s], u = q[s], v = [], w = false;\n if ((t.charAt(0) == \"^\")) {\n if ((s === 0)) {\n w = true;\n t = t.slice(1);\n }\n else return []\n \n };\n t = t.replace(/\\[(?:[^=\\]]*=(?:\"[^\"]*\"|'[^']*'))?|[.#]/g, \" $&\");\n var x = t.split(\" \"), y = (x[0] || \"*\"), z = (y == \"*\"), aa = (x[1] && (x[1].charAt(0) == \"#\"));\n if (aa) {\n var ba = k(x[1].slice(1), o, y);\n if ((ba && ((z || (ba.tagName.toLowerCase() == y))))) {\n for (var ca = 0; (ca < r.length); ca++) {\n if ((w && n.contains(ba, r[ca]))) {\n v = [ba,];\n break;\n }\n else if (((document == r[ca]) || n.contains(r[ca], ba))) {\n v = [ba,];\n break;\n }\n \n ;\n }\n };\n }\n else {\n var da = [], ea = r.length, fa, ga = ((!w && (u.indexOf(\"[\") < 0)) && document.querySelectorAll);\n for (var ha = 0; (ha < ea); ha++) {\n if (w) {\n fa = [];\n var ia = r[ha].parentNode;\n while (n.isElementNode(ia)) {\n if ((z || (ia.tagName.toLowerCase() == y))) {\n fa.push(ia);\n };\n ia = ia.parentNode;\n };\n }\n else if (ga) {\n fa = r[ha].querySelectorAll(u);\n }\n else fa = r[ha].getElementsByTagName(y);\n \n ;\n var ja = fa.length;\n for (var ka = 0; (ka < ja); ka++) {\n da.push(fa[ka]);;\n };\n };\n if (!ga) {\n for (var la = 1; (la < x.length); la++) {\n var ma = x[la], na = (ma.charAt(0) == \".\"), oa = ma.substring(1);\n for (ha = 0; (ha < da.length); ha++) {\n var pa = da[ha];\n if ((!pa || (pa.nodeType !== 1))) {\n continue;\n };\n if (na) {\n if (!g.hasClass(pa, oa)) {\n delete da[ha];\n };\n continue;\n }\n else {\n var qa = ma.slice(1, (ma.length - 1));\n if ((qa.indexOf(\"=\") == -1)) {\n if (!m(pa, qa)) {\n delete da[ha];\n continue;\n }\n ;\n }\n else {\n var ra = qa.split(\"=\"), sa = ra[0], ta = ra[1];\n ta = ta.slice(1, (ta.length - 1));\n if ((pa.getAttribute(sa) != ta)) {\n delete da[ha];\n continue;\n }\n ;\n }\n ;\n }\n ;\n };\n }\n };\n for (ha = 0; (ha < da.length); ha++) {\n if (da[ha]) {\n v.push(da[ha]);\n if (w) {\n break;\n };\n }\n ;\n };\n }\n ;\n r = v;\n };\n return r;\n },\n getText: function(o) {\n if (n.isTextNode(o)) {\n return o.data;\n }\n else if (n.isElementNode(o)) {\n if ((l === null)) {\n var p = document.createElement(\"div\");\n l = ((p.textContent != null) ? \"textContent\" : \"innerText\");\n }\n ;\n return o[l];\n }\n else return \"\"\n \n ;\n },\n getSelection: function() {\n var o = window.getSelection, p = document.selection;\n if (o) {\n return (o() + \"\");\n }\n else if (p) {\n return p.createRange().text\n }\n ;\n return null;\n },\n contains: function(o, p) {\n o = k(o);\n p = k(p);\n if ((!o || !p)) {\n return false;\n }\n else if ((o === p)) {\n return true;\n }\n else if (n.isTextNode(o)) {\n return false;\n }\n else if (n.isTextNode(p)) {\n return n.contains(o, p.parentNode);\n }\n else if (o.contains) {\n return o.contains(p);\n }\n else if (o.compareDocumentPosition) {\n return !!((o.compareDocumentPosition(p) & 16));\n }\n else return false\n \n \n \n \n \n ;\n },\n getRootElement: function() {\n var o = null;\n if ((window.Quickling && Quickling.isActive())) {\n o = k(\"content\");\n };\n return (o || document.body);\n },\n isNode: function(o) {\n return !!((o && (((typeof Node !== \"undefined\") ? (o instanceof Node) : (((typeof o == \"object\") && (typeof o.nodeType == \"number\")) && (typeof o.nodeName == \"string\"))))));\n },\n isNodeOfType: function(o, p) {\n var q = i(p).join(\"|\").toUpperCase().split(\"|\"), r = j(q);\n return (n.isNode(o) && (o.nodeName in r));\n },\n isElementNode: function(o) {\n return (n.isNode(o) && (o.nodeType == 1));\n },\n isTextNode: function(o) {\n return (n.isNode(o) && (o.nodeType == 3));\n },\n isInputNode: function(o) {\n return (n.isNodeOfType(o, [\"input\",\"textarea\",]) || (o.contentEditable === \"true\"));\n },\n getDocumentScrollElement: function(o) {\n o = (o || document);\n var p = (h.chrome() || h.webkit());\n return ((!p && (o.compatMode === \"CSS1Compat\")) ? o.documentElement : o.body);\n }\n };\n e.exports = n;\n});\n__d(\"DataStore\", [], function(a, b, c, d, e, f) {\n var g = {\n }, h = 1;\n function i(l) {\n if ((typeof l == \"string\")) {\n return (\"str_\" + l);\n }\n else return (\"elem_\" + ((l.__FB_TOKEN || (l.__FB_TOKEN = [h++,])))[0])\n ;\n };\n function j(l) {\n var m = i(l);\n return (g[m] || (g[m] = {\n }));\n };\n var k = {\n set: function(l, m, n) {\n if (!l) {\n throw new TypeError((\"DataStore.set: namespace is required, got \" + (typeof l)))\n };\n var o = j(l);\n o[m] = n;\n return l;\n },\n get: function(l, m, n) {\n if (!l) {\n throw new TypeError((\"DataStore.get: namespace is required, got \" + (typeof l)))\n };\n var o = j(l), p = o[m];\n if (((typeof p === \"undefined\") && l.getAttribute)) {\n if ((l.hasAttribute && !l.hasAttribute((\"data-\" + m)))) {\n p = undefined;\n }\n else {\n var q = l.getAttribute((\"data-\" + m));\n p = (((null === q)) ? undefined : q);\n }\n \n };\n if ((((n !== undefined)) && ((p === undefined)))) {\n p = o[m] = n;\n };\n return p;\n },\n remove: function(l, m) {\n if (!l) {\n throw new TypeError((\"DataStore.remove: namespace is required, got \" + (typeof l)))\n };\n var n = j(l), o = n[m];\n delete n[m];\n return o;\n },\n purge: function(l) {\n delete g[i(l)];\n }\n };\n e.exports = k;\n});\n__d(\"DOMEvent\", [\"copyProperties\",\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"invariant\");\n function i(j) {\n this.event = (j || window.event);\n h((typeof (this.event.srcElement) != \"unknown\"));\n this.target = (this.event.target || this.event.srcElement);\n };\n i.killThenCall = function(j) {\n return function(k) {\n new i(k).kill();\n return j();\n };\n };\n g(i.prototype, {\n preventDefault: function() {\n var j = this.event;\n if (j.preventDefault) {\n j.preventDefault();\n if (!((\"defaultPrevented\" in j))) {\n j.defaultPrevented = true;\n };\n }\n else j.returnValue = false;\n ;\n return this;\n },\n isDefaultPrevented: function() {\n var j = this.event;\n return (((\"defaultPrevented\" in j)) ? j.defaultPrevented : (j.returnValue === false));\n },\n stopPropagation: function() {\n var j = this.event;\n (j.stopPropagation ? j.stopPropagation() : j.cancelBubble = true);\n return this;\n },\n kill: function() {\n this.stopPropagation().preventDefault();\n return this;\n }\n });\n e.exports = i;\n});\n__d(\"getObjectValues\", [\"hasArrayNature\",], function(a, b, c, d, e, f) {\n var g = b(\"hasArrayNature\");\n function h(i) {\n var j = [];\n for (var k in i) {\n j.push(i[k]);;\n };\n return j;\n };\n e.exports = h;\n});\n__d(\"Event\", [\"event-form-bubbling\",\"Arbiter\",\"DataStore\",\"DOMQuery\",\"DOMEvent\",\"ErrorUtils\",\"Parent\",\"UserAgent\",\"$\",\"copyProperties\",\"getObjectValues\",], function(a, b, c, d, e, f) {\n b(\"event-form-bubbling\");\n var g = b(\"Arbiter\"), h = b(\"DataStore\"), i = b(\"DOMQuery\"), j = b(\"DOMEvent\"), k = b(\"ErrorUtils\"), l = b(\"Parent\"), m = b(\"UserAgent\"), n = b(\"$\"), o = b(\"copyProperties\"), p = b(\"getObjectValues\"), q = a.Event;\n q.DATASTORE_KEY = \"Event.listeners\";\n if (!q.prototype) {\n q.prototype = {\n };\n };\n function r(ca) {\n if ((((ca.type === \"click\") || (ca.type === \"mouseover\")) || (ca.type === \"keydown\"))) {\n g.inform(\"Event/stop\", {\n event: ca\n });\n };\n };\n function s(ca, da, ea) {\n this.target = ca;\n this.type = da;\n this.data = ea;\n };\n o(s.prototype, {\n getData: function() {\n this.data = (this.data || {\n });\n return this.data;\n },\n stop: function() {\n return q.stop(this);\n },\n prevent: function() {\n return q.prevent(this);\n },\n isDefaultPrevented: function() {\n return q.isDefaultPrevented(this);\n },\n kill: function() {\n return q.kill(this);\n },\n getTarget: function() {\n return (new j(this).target || null);\n }\n });\n function t(ca) {\n if ((ca instanceof s)) {\n return ca\n };\n if (!ca) {\n if ((!window.addEventListener && document.createEventObject)) {\n ca = (window.event ? document.createEventObject(window.event) : {\n });\n }\n else ca = {\n };\n \n };\n if (!ca._inherits_from_prototype) {\n for (var da in q.prototype) {\n try {\n ca[da] = q.prototype[da];\n } catch (ea) {\n \n };\n }\n };\n return ca;\n };\n o(q.prototype, {\n _inherits_from_prototype: true,\n getRelatedTarget: function() {\n var ca = (this.relatedTarget || (((this.fromElement === this.srcElement) ? this.toElement : this.fromElement)));\n return ((ca && ca.nodeType) ? ca : null);\n },\n getModifiers: function() {\n var ca = {\n control: !!this.ctrlKey,\n shift: !!this.shiftKey,\n alt: !!this.altKey,\n meta: !!this.metaKey\n };\n ca.access = (m.osx() ? ca.control : ca.alt);\n ca.any = (((ca.control || ca.shift) || ca.alt) || ca.meta);\n return ca;\n },\n isRightClick: function() {\n if (this.which) {\n return (this.which === 3)\n };\n return (this.button && (this.button === 2));\n },\n isMiddleClick: function() {\n if (this.which) {\n return (this.which === 2)\n };\n return (this.button && (this.button === 4));\n },\n isDefaultRequested: function() {\n return ((this.getModifiers().any || this.isMiddleClick()) || this.isRightClick());\n }\n });\n o(q.prototype, s.prototype);\n o(q, {\n listen: function(ca, da, ea, fa) {\n if ((typeof ca == \"string\")) {\n ca = n(ca);\n };\n if ((typeof fa == \"undefined\")) {\n fa = q.Priority.NORMAL;\n };\n if ((typeof da == \"object\")) {\n var ga = {\n };\n for (var ha in da) {\n ga[ha] = q.listen(ca, ha, da[ha], fa);;\n };\n return ga;\n }\n ;\n if (da.match(/^on/i)) {\n throw new TypeError(((\"Bad event name `\" + da) + \"': use `click', not `onclick'.\"))\n };\n if (((ca.nodeName == \"LABEL\") && (da == \"click\"))) {\n var ia = ca.getElementsByTagName(\"input\");\n ca = ((ia.length == 1) ? ia[0] : ca);\n }\n else if (((ca === window) && (da === \"scroll\"))) {\n var ja = i.getDocumentScrollElement();\n if (((ja !== document.documentElement) && (ja !== document.body))) {\n ca = ja;\n };\n }\n \n ;\n var ka = h.get(ca, v, {\n });\n if (x[da]) {\n var la = x[da];\n da = la.base;\n if (la.wrap) {\n ea = la.wrap(ea);\n };\n }\n ;\n z(ca, da);\n var ma = ka[da];\n if (!((fa in ma))) {\n ma[fa] = [];\n };\n var na = ma[fa].length, oa = new ba(ea, ma[fa], na);\n ma[fa].push(oa);\n return oa;\n },\n stop: function(ca) {\n var da = new j(ca).stopPropagation();\n r(da.event);\n return ca;\n },\n prevent: function(ca) {\n new j(ca).preventDefault();\n return ca;\n },\n isDefaultPrevented: function(ca) {\n return new j(ca).isDefaultPrevented(ca);\n },\n kill: function(ca) {\n var da = new j(ca).kill();\n r(da.event);\n return false;\n },\n getKeyCode: function(event) {\n event = new j(event).event;\n if (!event) {\n return false\n };\n switch (event.keyCode) {\n case 63232:\n return 38;\n case 63233:\n return 40;\n case 63234:\n return 37;\n case 63235:\n return 39;\n case 63272:\n \n case 63273:\n \n case 63275:\n return null;\n case 63276:\n return 33;\n case 63277:\n return 34;\n };\n if (event.shiftKey) {\n switch (event.keyCode) {\n case 33:\n \n case 34:\n \n case 37:\n \n case 38:\n \n case 39:\n \n case 40:\n return null;\n }\n };\n return event.keyCode;\n },\n getPriorities: function() {\n if (!u) {\n var ca = p(q.Priority);\n ca.sort(function(da, ea) {\n return (da - ea);\n });\n u = ca;\n }\n ;\n return u;\n },\n fire: function(ca, da, ea) {\n var fa = new s(ca, da, ea), ga;\n do {\n var ha = q.__getHandler(ca, da);\n if (ha) {\n ga = ha(fa);\n };\n ca = ca.parentNode;\n } while (((ca && (ga !== false)) && !fa.cancelBubble));\n return (ga !== false);\n },\n __fire: function(ca, da, event) {\n var ea = q.__getHandler(ca, da);\n if (ea) {\n return ea(t(event))\n };\n },\n __getHandler: function(ca, da) {\n return h.get(ca, (q.DATASTORE_KEY + da));\n },\n getPosition: function(ca) {\n ca = new j(ca).event;\n var da = i.getDocumentScrollElement(), ea = (ca.clientX + da.scrollLeft), fa = (ca.clientY + da.scrollTop);\n return {\n x: ea,\n y: fa\n };\n }\n });\n var u = null, v = q.DATASTORE_KEY, w = function(ca) {\n return function(da) {\n if (!i.contains(this, da.getRelatedTarget())) {\n return ca.call(this, da)\n };\n };\n }, x;\n if (!window.navigator.msPointerEnabled) {\n x = {\n mouseenter: {\n base: \"mouseover\",\n wrap: w\n },\n mouseleave: {\n base: \"mouseout\",\n wrap: w\n }\n };\n }\n else x = {\n mousedown: {\n base: \"MSPointerDown\"\n },\n mousemove: {\n base: \"MSPointerMove\"\n },\n mouseup: {\n base: \"MSPointerUp\"\n },\n mouseover: {\n base: \"MSPointerOver\"\n },\n mouseout: {\n base: \"MSPointerOut\"\n },\n mouseenter: {\n base: \"MSPointerOver\",\n wrap: w\n },\n mouseleave: {\n base: \"MSPointerOut\",\n wrap: w\n }\n };\n;\n if (m.firefox()) {\n var y = function(ca, event) {\n event = t(event);\n var da = event.getTarget();\n while (da) {\n q.__fire(da, ca, event);\n da = da.parentNode;\n };\n };\n document.documentElement.addEventListener(\"focus\", y.curry(\"focusin\"), true);\n document.documentElement.addEventListener(\"blur\", y.curry(\"focusout\"), true);\n }\n;\n var z = function(ca, da) {\n var ea = (\"on\" + da), fa = aa.bind(ca, da), ga = h.get(ca, v);\n if ((da in ga)) {\n return\n };\n ga[da] = {\n };\n if (ca.addEventListener) {\n ca.addEventListener(da, fa, false);\n }\n else if (ca.attachEvent) {\n ca.attachEvent(ea, fa);\n }\n ;\n h.set(ca, (v + da), fa);\n if (ca[ea]) {\n var ha = ((ca === document.documentElement) ? q.Priority._BUBBLE : q.Priority.TRADITIONAL), ia = ca[ea];\n ca[ea] = null;\n q.listen(ca, da, ia, ha);\n }\n ;\n if (((ca.nodeName === \"FORM\") && (da === \"submit\"))) {\n q.listen(ca, da, q.__bubbleSubmit.curry(ca), q.Priority._BUBBLE);\n };\n }, aa = k.guard(function(ca, event) {\n event = t(event);\n if (!h.get(this, v)) {\n throw new Error(\"Bad listenHandler context.\")\n };\n var da = h.get(this, v)[ca];\n if (!da) {\n throw new Error(((\"No registered handlers for `\" + ca) + \"'.\"))\n };\n if ((ca == \"click\")) {\n var ea = l.byTag(event.getTarget(), \"a\");\n if (window.userAction) {\n var fa = window.userAction(\"evt_ext\", ea, event, {\n mode: \"DEDUP\"\n }).uai_fallback(\"click\");\n if (window.ArbiterMonitor) {\n window.ArbiterMonitor.initUA(fa, [ea,]);\n };\n }\n ;\n if (window.clickRefAction) {\n window.clickRefAction(\"click\", ea, event);\n };\n }\n ;\n var ga = q.getPriorities();\n for (var ha = 0; (ha < ga.length); ha++) {\n var ia = ga[ha];\n if ((ia in da)) {\n var ja = da[ia];\n for (var ka = 0; (ka < ja.length); ka++) {\n if (!ja[ka]) {\n continue;\n };\n var la = ja[ka].fire(this, event);\n if ((la === false)) {\n return event.kill();\n }\n else if (event.cancelBubble) {\n event.stop();\n }\n ;\n };\n }\n ;\n };\n return event.returnValue;\n });\n q.Priority = {\n URGENT: -20,\n TRADITIONAL: -10,\n NORMAL: 0,\n _BUBBLE: 1000\n };\n function ba(ca, da, ea) {\n this._handler = ca;\n this._container = da;\n this._index = ea;\n };\n o(ba.prototype, {\n remove: function() {\n delete this._handler;\n delete this._container[this._index];\n },\n fire: function(ca, event) {\n return k.applyWithGuard(this._handler, ca, [event,], function(da) {\n da.event_type = event.type;\n da.dom_element = (ca.name || ca.id);\n da.category = \"eventhandler\";\n });\n }\n });\n a.$E = q.$E = t;\n e.exports = q;\n});\n__d(\"evalGlobal\", [], function(a, b, c, d, e, f) {\n function g(h) {\n if ((typeof h != \"string\")) {\n throw new TypeError(\"JS sent to evalGlobal is not a string. Only strings are permitted.\")\n };\n if (!h) {\n return\n };\n var i = document.createElement(\"script\");\n try {\n i.appendChild(document.createTextNode(h));\n } catch (j) {\n i.text = h;\n };\n var k = (document.getElementsByTagName(\"head\")[0] || document.documentElement);\n k.appendChild(i);\n k.removeChild(i);\n };\n e.exports = g;\n});\n__d(\"HTML\", [\"function-extensions\",\"Bootloader\",\"UserAgent\",\"copyProperties\",\"createArrayFrom\",\"emptyFunction\",\"evalGlobal\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"Bootloader\"), h = b(\"UserAgent\"), i = b(\"copyProperties\"), j = b(\"createArrayFrom\"), k = b(\"emptyFunction\"), l = b(\"evalGlobal\");\n function m(n) {\n if ((n && (typeof n.__html == \"string\"))) {\n n = n.__html;\n };\n if (!((this instanceof m))) {\n if ((n instanceof m)) {\n return n\n };\n return new m(n);\n }\n ;\n this._content = n;\n this._defer = false;\n this._extra_action = \"\";\n this._nodes = null;\n this._inline_js = k;\n this._rootNode = null;\n return this;\n };\n m.isHTML = function(n) {\n return (n && (((n instanceof m) || (n.__html !== undefined))));\n };\n m.replaceJSONWrapper = function(n) {\n return ((n && (n.__html !== undefined)) ? new m(n.__html) : n);\n };\n i(m.prototype, {\n toString: function() {\n var n = (this._content || \"\");\n if (this._extra_action) {\n n += (((\"\\u003Cscript type=\\\"text/javascript\\\"\\u003E\" + this._extra_action) + \"\\u003C/scr\") + \"ipt\\u003E\");\n };\n return n;\n },\n setAction: function(n) {\n this._extra_action = n;\n return this;\n },\n getAction: function() {\n this._fillCache();\n var n = function() {\n this._inline_js();\n l(this._extra_action);\n }.bind(this);\n if (this.getDeferred()) {\n return n.defer.bind(n);\n }\n else return n\n ;\n },\n setDeferred: function(n) {\n this._defer = !!n;\n return this;\n },\n getDeferred: function() {\n return this._defer;\n },\n getContent: function() {\n return this._content;\n },\n getNodes: function() {\n this._fillCache();\n return this._nodes;\n },\n getRootNode: function() {\n var n = this.getNodes();\n if ((n.length === 1)) {\n this._rootNode = n[0];\n }\n else {\n var o = document.createDocumentFragment();\n for (var p = 0; (p < n.length); p++) {\n o.appendChild(n[p]);;\n };\n this._rootNode = o;\n }\n ;\n return this._rootNode;\n },\n _fillCache: function() {\n if ((null !== this._nodes)) {\n return\n };\n var n = this._content;\n if (!n) {\n this._nodes = [];\n return;\n }\n ;\n n = n.replace(/(<(\\w+)[^>]*?)\\/>/g, function(y, z, aa) {\n return (aa.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i) ? y : (((z + \"\\u003E\\u003C/\") + aa) + \"\\u003E\"));\n });\n var o = n.trim().toLowerCase(), p = document.createElement(\"div\"), q = false, r = ((((((((!o.indexOf(\"\\u003Copt\") && [1,\"\\u003Cselect multiple=\\\"multiple\\\" class=\\\"__WRAPPER\\\"\\u003E\",\"\\u003C/select\\u003E\",])) || ((!o.indexOf(\"\\u003Cleg\") && [1,\"\\u003Cfieldset class=\\\"__WRAPPER\\\"\\u003E\",\"\\u003C/fieldset\\u003E\",]))) || ((o.match(/^<(thead|tbody|tfoot|colg|cap)/) && [1,\"\\u003Ctable class=\\\"__WRAPPER\\\"\\u003E\",\"\\u003C/table\\u003E\",]))) || ((!o.indexOf(\"\\u003Ctr\") && [2,\"\\u003Ctable\\u003E\\u003Ctbody class=\\\"__WRAPPER\\\"\\u003E\",\"\\u003C/tbody\\u003E\\u003C/table\\u003E\",]))) || ((((!o.indexOf(\"\\u003Ctd\") || !o.indexOf(\"\\u003Cth\"))) && [3,\"\\u003Ctable\\u003E\\u003Ctbody\\u003E\\u003Ctr class=\\\"__WRAPPER\\\"\\u003E\",\"\\u003C/tr\\u003E\\u003C/tbody\\u003E\\u003C/table\\u003E\",]))) || ((!o.indexOf(\"\\u003Ccol\") && [2,\"\\u003Ctable\\u003E\\u003Ctbody\\u003E\\u003C/tbody\\u003E\\u003Ccolgroup class=\\\"__WRAPPER\\\"\\u003E\",\"\\u003C/colgroup\\u003E\\u003C/table\\u003E\",]))) || null);\n if ((null === r)) {\n p.className = \"__WRAPPER\";\n if (h.ie()) {\n r = [0,\"\\u003Cspan style=\\\"display:none\\\"\\u003E \\u003C/span\\u003E\",\"\",];\n q = true;\n }\n else r = [0,\"\",\"\",];\n ;\n }\n ;\n p.innerHTML = ((r[1] + n) + r[2]);\n while (r[0]--) {\n p = p.lastChild;;\n };\n if (q) {\n p.removeChild(p.firstChild);\n };\n (p.className != \"__WRAPPER\");\n if (h.ie()) {\n var s;\n if ((!o.indexOf(\"\\u003Ctable\") && (-1 == o.indexOf(\"\\u003Ctbody\")))) {\n s = (p.firstChild && p.firstChild.childNodes);\n }\n else if (((r[1] == \"\\u003Ctable\\u003E\") && (-1 == o.indexOf(\"\\u003Ctbody\")))) {\n s = p.childNodes;\n }\n else s = [];\n \n ;\n for (var t = (s.length - 1); (t >= 0); --t) {\n if (((s[t].nodeName && (s[t].nodeName.toLowerCase() == \"tbody\")) && (s[t].childNodes.length == 0))) {\n s[t].parentNode.removeChild(s[t]);\n };\n };\n }\n ;\n var u = p.getElementsByTagName(\"script\"), v = [];\n for (var w = 0; (w < u.length); w++) {\n if (u[w].src) {\n v.push(g.requestJSResource.bind(g, u[w].src));\n }\n else v.push(l.bind(null, u[w].innerHTML));\n ;\n };\n for (var w = (u.length - 1); (w >= 0); w--) {\n u[w].parentNode.removeChild(u[w]);;\n };\n var x = function() {\n for (var y = 0; (y < v.length); y++) {\n v[y]();;\n };\n };\n this._nodes = j(p.childNodes);\n this._inline_js = x;\n }\n });\n e.exports = m;\n});\n__d(\"isScalar\", [], function(a, b, c, d, e, f) {\n function g(h) {\n return (/string|number|boolean/).test(typeof h);\n };\n e.exports = g;\n});\n__d(\"Intl\", [], function(a, b, c, d, e, f) {\n var g;\n function h(j) {\n if ((typeof j != \"string\")) {\n return false\n };\n return j.match(new RegExp(((((((((((((((((((((((((((h.punct_char_class + \"[\") + \")\\\"\") + \"'\") + \"\\u00bb\") + \"\\u0f3b\") + \"\\u0f3d\") + \"\\u2019\") + \"\\u201d\") + \"\\u203a\") + \"\\u3009\") + \"\\u300b\") + \"\\u300d\") + \"\\u300f\") + \"\\u3011\") + \"\\u3015\") + \"\\u3017\") + \"\\u3019\") + \"\\u301b\") + \"\\u301e\") + \"\\u301f\") + \"\\ufd3f\") + \"\\uff07\") + \"\\uff09\") + \"\\uff3d\") + \"\\\\s\") + \"]*$\")));\n };\n h.punct_char_class = (((((((((((\"[\" + \".!?\") + \"\\u3002\") + \"\\uff01\") + \"\\uff1f\") + \"\\u0964\") + \"\\u2026\") + \"\\u0eaf\") + \"\\u1801\") + \"\\u0e2f\") + \"\\uff0e\") + \"]\");\n function i(j) {\n if (g) {\n var k = [], l = [];\n for (var m in g.patterns) {\n var n = g.patterns[m];\n for (var o in g.meta) {\n var p = new RegExp(o.slice(1, -1), \"g\"), q = g.meta[o];\n m = m.replace(p, q);\n n = n.replace(p, q);\n };\n k.push(m);\n l.push(n);\n };\n for (var r = 0; (r < k.length); r++) {\n var s = new RegExp(k[r].slice(1, -1), \"g\");\n if ((l[r] == \"javascript\")) {\n j.replace(s, function(t) {\n return t.slice(1).toLowerCase();\n });\n }\n else j = j.replace(s, l[r]);\n ;\n };\n }\n ;\n return j.replace(/\\x01/g, \"\");\n };\n e.exports = {\n endsInPunct: h,\n applyPhonologicalRules: i,\n setPhonologicalRules: function(j) {\n g = j;\n }\n };\n});\n__d(\"substituteTokens\", [\"invariant\",\"Intl\",], function(a, b, c, d, e, f) {\n var g = b(\"invariant\"), h = b(\"Intl\");\n function i(j, k) {\n if (!k) {\n return j\n };\n g((typeof k === \"object\"));\n var l = ((\"\\\\{([^}]+)\\\\}(\" + h.endsInPunct.punct_char_class) + \"*)\"), m = new RegExp(l, \"g\"), n = [], o = j.replace(m, function(r, s, t) {\n var u = k[s];\n if ((u && (typeof u === \"object\"))) {\n n.push(u);\n return (\"\\u0017\" + t);\n }\n ;\n return (u + ((h.endsInPunct(u) ? \"\" : t)));\n }).split(\"\\u0017\").map(h.applyPhonologicalRules);\n if ((o.length === 1)) {\n return o[0]\n };\n var p = [o[0],];\n for (var q = 0; (q < n.length); q++) {\n p.push(n[q], o[(q + 1)]);;\n };\n return p;\n };\n e.exports = i;\n});\n__d(\"tx\", [\"substituteTokens\",], function(a, b, c, d, e, f) {\n var g = b(\"substituteTokens\");\n function h(i, j) {\n if ((typeof _string_table == \"undefined\")) {\n return\n };\n i = _string_table[i];\n return g(i, j);\n };\n h._ = g;\n e.exports = h;\n});\n__d(\"DOM\", [\"function-extensions\",\"DOMQuery\",\"Event\",\"HTML\",\"UserAgent\",\"$\",\"copyProperties\",\"createArrayFrom\",\"isScalar\",\"tx\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"DOMQuery\"), h = b(\"Event\"), i = b(\"HTML\"), j = b(\"UserAgent\"), k = b(\"$\"), l = b(\"copyProperties\"), m = b(\"createArrayFrom\"), n = b(\"isScalar\"), o = b(\"tx\"), p = \"js_\", q = 0, r = {\n };\n l(r, g);\n l(r, {\n create: function(u, v, w) {\n var x = document.createElement(u);\n if (v) {\n r.setAttributes(x, v);\n };\n if ((w != null)) {\n r.setContent(x, w);\n };\n return x;\n },\n setAttributes: function(u, v) {\n if (v.type) {\n u.type = v.type;\n };\n for (var w in v) {\n var x = v[w], y = (/^on/i).test(w);\n if ((w == \"type\")) {\n continue;\n }\n else if ((w == \"style\")) {\n if ((typeof x == \"string\")) {\n u.style.cssText = x;\n }\n else l(u.style, x);\n ;\n }\n else if (y) {\n h.listen(u, w.substr(2), x);\n }\n else if ((w in u)) {\n u[w] = x;\n }\n else if (u.setAttribute) {\n u.setAttribute(w, x);\n }\n \n \n \n ;\n };\n },\n prependContent: function(u, v) {\n return s(v, u, function(w) {\n (u.firstChild ? u.insertBefore(w, u.firstChild) : u.appendChild(w));\n });\n },\n insertAfter: function(u, v) {\n var w = u.parentNode;\n return s(v, w, function(x) {\n (u.nextSibling ? w.insertBefore(x, u.nextSibling) : w.appendChild(x));\n });\n },\n insertBefore: function(u, v) {\n var w = u.parentNode;\n return s(v, w, function(x) {\n w.insertBefore(x, u);\n });\n },\n setContent: function(u, v) {\n r.empty(u);\n return r.appendContent(u, v);\n },\n appendContent: function(u, v) {\n return s(v, u, function(w) {\n u.appendChild(w);\n });\n },\n replace: function(u, v) {\n var w = u.parentNode;\n return s(v, w, function(x) {\n w.replaceChild(x, u);\n });\n },\n remove: function(u) {\n u = k(u);\n if (u.parentNode) {\n u.parentNode.removeChild(u);\n };\n },\n empty: function(u) {\n u = k(u);\n while (u.firstChild) {\n r.remove(u.firstChild);;\n };\n },\n getID: function(u) {\n var v = u.id;\n if (!v) {\n v = (p + q++);\n u.id = v;\n }\n ;\n return v;\n }\n });\n function s(u, v, w) {\n u = i.replaceJSONWrapper(u);\n if ((((u instanceof i) && (\"\" === v.innerHTML)) && (-1 === u.toString().indexOf((\"\\u003Cscr\" + \"ipt\"))))) {\n var x = j.ie();\n if ((!x || (((x > 7) && !g.isNodeOfType(v, [\"table\",\"tbody\",\"thead\",\"tfoot\",\"tr\",\"select\",\"fieldset\",]))))) {\n var y = (x ? \"\\u003Cem style=\\\"display:none;\\\"\\u003E \\u003C/em\\u003E\" : \"\");\n v.innerHTML = (y + u);\n (x && v.removeChild(v.firstChild));\n return m(v.childNodes);\n }\n ;\n }\n else if (g.isTextNode(v)) {\n v.data = u;\n return [u,];\n }\n \n ;\n var z = document.createDocumentFragment(), aa, ba = [], ca = [];\n u = m(u);\n for (var da = 0; (da < u.length); da++) {\n aa = i.replaceJSONWrapper(u[da]);\n if ((aa instanceof i)) {\n ca.push(aa.getAction());\n var ea = aa.getNodes();\n for (var fa = 0; (fa < ea.length); fa++) {\n ba.push(ea[fa]);\n z.appendChild(ea[fa]);\n };\n }\n else if (n(aa)) {\n var ga = document.createTextNode(aa);\n ba.push(ga);\n z.appendChild(ga);\n }\n else if (g.isNode(aa)) {\n ba.push(aa);\n z.appendChild(aa);\n }\n \n \n ;\n };\n w(z);\n ca.forEach(function(ha) {\n ha();\n });\n return ba;\n };\n function t(u) {\n function v(w) {\n return r.create(\"div\", {\n }, w).innerHTML;\n };\n return function(w, x) {\n var y = {\n };\n if (x) {\n for (var z in x) {\n y[z] = v(x[z]);;\n }\n };\n return i(u(w, y));\n };\n };\n r.tx = t(o);\n r.tx._ = r._tx = t(o._);\n e.exports = r;\n});\n__d(\"LinkshimAsyncLink\", [\"$\",\"AsyncSignal\",\"DOM\",\"UserAgent\",], function(a, b, c, d, e, f) {\n var g = b(\"$\"), h = b(\"AsyncSignal\"), i = b(\"DOM\"), j = b(\"UserAgent\"), k = {\n swap: function(l, m) {\n var n = (j.ie() <= 8);\n if (n) {\n var o = i.create(\"wbr\", {\n }, null);\n i.appendContent(l, o);\n }\n ;\n l.href = m;\n if (n) {\n i.remove(o);\n };\n },\n referrer_log: function(l, m, n) {\n var o = g(\"meta_referrer\");\n o.content = \"origin\";\n k.swap(l, m);\n (function() {\n o.content = \"default\";\n new h(n, {\n }).send();\n }).defer(100);\n }\n };\n e.exports = k;\n});\n__d(\"legacy:dom-asynclinkshim\", [\"LinkshimAsyncLink\",], function(a, b, c, d) {\n a.LinkshimAsyncLink = b(\"LinkshimAsyncLink\");\n}, 3);\n__d(\"debounce\", [], function(a, b, c, d, e, f) {\n function g(h, i, j, k) {\n if ((i == null)) {\n i = 100;\n };\n var l;\n function m(n, o, p, q, r) {\n m.reset();\n l = setTimeout(function() {\n h.call(j, n, o, p, q, r);\n }, i, !k);\n };\n m.reset = function() {\n clearTimeout(l);\n };\n return m;\n };\n e.exports = g;\n});\n__d(\"LitestandViewportHeight\", [\"Arbiter\",\"CSS\",\"Event\",\"cx\",\"debounce\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"CSS\"), i = b(\"Event\"), j = b(\"cx\"), k = b(\"debounce\"), l = b(\"emptyFunction\"), m, n = {\n SMALL: \"small\",\n NORMAL: \"normal\",\n LARGE: \"large\",\n getSize: function() {\n if ((m === \"-cx-PUBLIC-litestandViewportSize__small\")) {\n return n.SMALL\n };\n if ((m === \"-cx-PUBLIC-litestandViewportSize__large\")) {\n return n.LARGE\n };\n return n.NORMAL;\n },\n init: function(o) {\n n.init = l;\n var p = k(function() {\n var q = document.documentElement, r = q.clientHeight, s;\n if ((r <= o.max_small_height)) {\n s = \"-cx-PUBLIC-litestandViewportSize__small\";\n }\n else if ((r >= o.min_large_height)) {\n s = \"-cx-PUBLIC-litestandViewportSize__large\";\n }\n ;\n if ((s !== m)) {\n (m && h.removeClass(q, m));\n m = s;\n (m && h.addClass(q, m));\n g.inform(\"ViewportSizeChange\");\n }\n ;\n });\n p();\n i.listen(window, \"resize\", p);\n }\n };\n e.exports = n;\n});\n__d(\"JSLogger\", [], function(a, b, c, d, e, f) {\n var g = {\n MAX_HISTORY: 500,\n counts: {\n },\n categories: {\n },\n seq: 0,\n pageId: (((Math.random() * 2147483648) | 0)).toString(36),\n forwarding: false\n };\n function h(l) {\n if (((l instanceof Error) && a.ErrorUtils)) {\n l = a.ErrorUtils.normalizeError(l);\n };\n try {\n return JSON.stringify(l);\n } catch (m) {\n return \"{}\";\n };\n };\n function i(l, event, m) {\n if (!g.counts[l]) {\n g.counts[l] = {\n };\n };\n if (!g.counts[l][event]) {\n g.counts[l][event] = 0;\n };\n m = ((m == null) ? 1 : Number(m));\n g.counts[l][event] += (isFinite(m) ? m : 0);\n };\n g.logAction = function(event, l, m) {\n if ((this.type == \"bump\")) {\n i(this.cat, event, l);\n }\n else if ((this.type == \"rate\")) {\n ((l && i(this.cat, (event + \"_n\"), m)));\n i(this.cat, (event + \"_d\"), m);\n }\n else {\n var n = {\n cat: this.cat,\n type: this.type,\n event: event,\n data: ((l != null) ? h(l) : null),\n date: Date.now(),\n seq: g.seq++\n };\n g.head = (g.head ? (g.head.next = n) : (g.tail = n));\n while (((g.head.seq - g.tail.seq) > g.MAX_HISTORY)) {\n g.tail = g.tail.next;;\n };\n return n;\n }\n \n ;\n };\n function j(l) {\n if (!g.categories[l]) {\n g.categories[l] = {\n };\n var m = function(n) {\n var o = {\n cat: l,\n type: n\n };\n g.categories[l][n] = function() {\n g.forwarding = false;\n var p = null;\n if ((document.domain != \"facebook.com\")) {\n return\n };\n p = g.logAction;\n if (/^\\/+(dialogs|plugins?)\\//.test(location.pathname)) {\n g.forwarding = false;\n }\n else try {\n p = a.top.require(\"JSLogger\")._.logAction;\n g.forwarding = (p !== g.logAction);\n } catch (q) {\n \n }\n ;\n ((p && p.apply(o, arguments)));\n };\n };\n m(\"debug\");\n m(\"log\");\n m(\"warn\");\n m(\"error\");\n m(\"bump\");\n m(\"rate\");\n }\n ;\n return g.categories[l];\n };\n function k(l, m) {\n var n = [];\n for (var o = (m || g.tail); o; o = o.next) {\n if ((!l || l(o))) {\n var p = {\n type: o.type,\n cat: o.cat,\n date: o.date,\n event: o.event,\n seq: o.seq\n };\n if (o.data) {\n p.data = JSON.parse(o.data);\n };\n n.push(p);\n }\n ;\n };\n return n;\n };\n e.exports = {\n _: g,\n DUMP_EVENT: \"jslogger/dump\",\n create: j,\n getEntries: k\n };\n});\n__d(\"startsWith\", [], function(a, b, c, d, e, f) {\n function g(h, i, j) {\n var k = String(h);\n j = Math.min(Math.max((j || 0), 0), k.length);\n return (k.lastIndexOf(String(i), j) === j);\n };\n e.exports = g;\n});\n__d(\"getContextualParent\", [\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"ge\");\n function h(i, j) {\n var k, l = false;\n do {\n if ((i.getAttribute && (k = i.getAttribute(\"data-ownerid\")))) {\n i = g(k);\n l = true;\n }\n else i = i.parentNode;\n ;\n } while (((j && i) && !l));\n return i;\n };\n e.exports = h;\n});\n__d(\"Nectar\", [\"Env\",\"startsWith\",\"getContextualParent\",], function(a, b, c, d, e, f) {\n var g = b(\"Env\"), h = b(\"startsWith\"), i = b(\"getContextualParent\");\n function j(m) {\n if (!m.nctr) {\n m.nctr = {\n };\n };\n };\n function k(m) {\n if ((g.module || !m)) {\n return g.module\n };\n var n = {\n fbpage_fan_confirm: true,\n photos_snowlift: true\n }, o;\n while ((m && m.getAttributeNode)) {\n var p = ((m.getAttributeNode(\"id\") || {\n })).value;\n if (h(p, \"pagelet_\")) {\n return p\n };\n if ((!o && n[p])) {\n o = p;\n };\n m = i(m);\n };\n return o;\n };\n var l = {\n addModuleData: function(m, n) {\n var o = k(n);\n if (o) {\n j(m);\n m.nctr._mod = o;\n }\n ;\n },\n addImpressionID: function(m) {\n if (g.impid) {\n j(m);\n m.nctr._impid = g.impid;\n }\n ;\n }\n };\n e.exports = l;\n});\n__d(\"AsyncResponse\", [\"Bootloader\",\"Env\",\"copyProperties\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Bootloader\"), h = b(\"Env\"), i = b(\"copyProperties\"), j = b(\"tx\");\n function k(l, m) {\n i(this, {\n error: 0,\n errorSummary: null,\n errorDescription: null,\n onload: null,\n replay: false,\n payload: (m || null),\n request: (l || null),\n silentError: false,\n transientError: false,\n is_last: true\n });\n return this;\n };\n i(k, {\n defaultErrorHandler: function(l) {\n try {\n if (!l.silentError) {\n k.verboseErrorHandler(l);\n }\n else l.logErrorByGroup(\"silent\", 10);\n ;\n } catch (m) {\n alert(l);\n };\n },\n verboseErrorHandler: function(l) {\n try {\n var n = l.getErrorSummary(), o = l.getErrorDescription();\n l.logErrorByGroup(\"popup\", 10);\n if ((l.silentError && (o === \"\"))) {\n o = \"Something went wrong. We're working on getting this fixed as soon as we can. You may be able to try again.\";\n };\n g.loadModules([\"Dialog\",], function(p) {\n new p().setTitle(n).setBody(o).setButtons([p.OK,]).setModal(true).setCausalElement(this.relativeTo).show();\n });\n } catch (m) {\n alert(l);\n };\n }\n });\n i(k.prototype, {\n getRequest: function() {\n return this.request;\n },\n getPayload: function() {\n return this.payload;\n },\n getError: function() {\n return this.error;\n },\n getErrorSummary: function() {\n return this.errorSummary;\n },\n setErrorSummary: function(l) {\n l = (((l === undefined) ? null : l));\n this.errorSummary = l;\n return this;\n },\n getErrorDescription: function() {\n return this.errorDescription;\n },\n getErrorIsWarning: function() {\n return !!this.errorIsWarning;\n },\n isTransient: function() {\n return !!this.transientError;\n },\n logError: function(l, m) {\n var n = a.ErrorSignal;\n if (n) {\n var o = {\n err_code: this.error,\n vip: ((h.vip || \"-\"))\n };\n if (m) {\n o.duration = m.duration;\n o.xfb_ip = m.xfb_ip;\n }\n ;\n var p = this.request.getURI();\n o.path = (p || \"-\");\n o.aid = this.request.userActionID;\n if ((p && (p.indexOf(\"scribe_endpoint.php\") != -1))) {\n l = \"async_error_double\";\n };\n n.sendErrorSignal(l, JSON.stringify(o));\n }\n ;\n },\n logErrorByGroup: function(l, m) {\n if ((Math.floor((Math.random() * m)) === 0)) {\n if (((this.error == 1357010) || (this.error < 15000))) {\n this.logError((\"async_error_oops_\" + l));\n }\n else this.logError((\"async_error_logic_\" + l));\n \n };\n }\n });\n e.exports = k;\n});\n__d(\"HTTPErrors\", [\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"emptyFunction\"), h = {\n get: g,\n getAll: g\n };\n e.exports = h;\n});\n__d(\"bind\", [], function(a, b, c, d, e, f) {\n function g(h, i) {\n var j = Array.prototype.slice.call(arguments, 2);\n if ((typeof i != \"string\")) {\n return Function.prototype.bind.apply(i, [h,].concat(j))\n };\n function k() {\n var l = j.concat(Array.prototype.slice.call(arguments));\n if (h[i]) {\n return h[i].apply(h, l)\n };\n };\n k.toString = function() {\n return (\"bound lazily: \" + h[i]);\n };\n return k;\n };\n e.exports = g;\n});\n__d(\"executeAfter\", [], function(a, b, c, d, e, f) {\n function g(h, i, j) {\n return function() {\n h.apply((j || this), arguments);\n i.apply((j || this), arguments);\n };\n };\n e.exports = g;\n});\n__d(\"AsyncRequest\", [\"Arbiter\",\"AsyncResponse\",\"Bootloader\",\"CSS\",\"Env\",\"ErrorUtils\",\"Event\",\"HTTPErrors\",\"JSCC\",\"Parent\",\"Run\",\"ServerJS\",\"URI\",\"UserAgent\",\"XHR\",\"asyncCallback\",\"bind\",\"copyProperties\",\"emptyFunction\",\"evalGlobal\",\"ge\",\"goURI\",\"isEmpty\",\"ix\",\"tx\",\"executeAfter\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncResponse\"), i = b(\"Bootloader\"), j = b(\"CSS\"), k = b(\"Env\"), l = b(\"ErrorUtils\"), m = b(\"Event\"), n = b(\"HTTPErrors\"), o = b(\"JSCC\"), p = b(\"Parent\"), q = b(\"Run\"), r = b(\"ServerJS\"), s = b(\"URI\"), t = b(\"UserAgent\"), u = b(\"XHR\"), v = b(\"asyncCallback\"), w = b(\"bind\"), x = b(\"copyProperties\"), y = b(\"emptyFunction\"), z = b(\"evalGlobal\"), aa = b(\"ge\"), ba = b(\"goURI\"), ca = b(\"isEmpty\"), da = b(\"ix\"), ea = b(\"tx\"), fa = b(\"executeAfter\");\n function ga() {\n try {\n return !window.loaded;\n } catch (pa) {\n return true;\n };\n };\n function ha(pa) {\n return (((\"upload\" in pa)) && ((\"onprogress\" in pa.upload)));\n };\n function ia(pa) {\n return (\"withCredentials\" in pa);\n };\n function ja(pa) {\n return (pa.status in {\n 0: 1,\n 12029: 1,\n 12030: 1,\n 12031: 1,\n 12152: 1\n });\n };\n function ka(pa) {\n var qa = (!pa || (typeof (pa) === \"function\"));\n return qa;\n };\n var la = 2, ma = la;\n g.subscribe(\"page_transition\", function(pa, qa) {\n ma = qa.id;\n });\n function na(pa) {\n x(this, {\n transport: null,\n method: \"POST\",\n uri: \"\",\n timeout: null,\n timer: null,\n initialHandler: y,\n handler: null,\n uploadProgressHandler: null,\n errorHandler: null,\n transportErrorHandler: null,\n timeoutHandler: null,\n interceptHandler: y,\n finallyHandler: y,\n abortHandler: y,\n serverDialogCancelHandler: null,\n relativeTo: null,\n statusElement: null,\n statusClass: \"\",\n data: {\n },\n file: null,\n context: {\n },\n readOnly: false,\n writeRequiredParams: [],\n remainingRetries: 0,\n userActionID: \"-\"\n });\n this.option = {\n asynchronous: true,\n suppressErrorHandlerWarning: false,\n suppressEvaluation: false,\n suppressErrorAlerts: false,\n retries: 0,\n jsonp: false,\n bundle: false,\n useIframeTransport: false,\n handleErrorAfterUnload: false\n };\n this.errorHandler = h.defaultErrorHandler;\n this.transportErrorHandler = w(this, \"errorHandler\");\n if ((pa !== undefined)) {\n this.setURI(pa);\n };\n };\n x(na, {\n bootstrap: function(pa, qa, ra) {\n var sa = \"GET\", ta = true, ua = {\n };\n if ((ra || (qa && ((qa.rel == \"async-post\"))))) {\n sa = \"POST\";\n ta = false;\n if (pa) {\n pa = s(pa);\n ua = pa.getQueryData();\n pa.setQueryData({\n });\n }\n ;\n }\n ;\n var va = (p.byClass(qa, \"stat_elem\") || qa);\n if ((va && j.hasClass(va, \"async_saving\"))) {\n return false\n };\n var wa = new na(pa).setReadOnly(ta).setMethod(sa).setData(ua).setNectarModuleDataSafe(qa).setRelativeTo(qa);\n if (qa) {\n wa.setHandler(function(ya) {\n m.fire(qa, \"success\", {\n response: ya\n });\n });\n wa.setErrorHandler(function(ya) {\n if ((m.fire(qa, \"error\", {\n response: ya\n }) !== false)) {\n h.defaultErrorHandler(ya);\n };\n });\n }\n ;\n if (va) {\n wa.setStatusElement(va);\n var xa = va.getAttribute(\"data-status-class\");\n (xa && wa.setStatusClass(xa));\n }\n ;\n if (qa) {\n m.fire(qa, \"AsyncRequest/send\", {\n request: wa\n });\n };\n wa.send();\n return false;\n },\n post: function(pa, qa) {\n new na(pa).setReadOnly(false).setMethod(\"POST\").setData(qa).send();\n return false;\n },\n getLastID: function() {\n return la;\n },\n suppressOnloadToken: {\n },\n _inflight: [],\n _inflightCount: 0,\n _inflightAdd: y,\n _inflightPurge: y,\n getInflightCount: function() {\n return this._inflightCount;\n },\n _inflightEnable: function() {\n if (t.ie()) {\n x(na, {\n _inflightAdd: function(pa) {\n this._inflight.push(pa);\n },\n _inflightPurge: function() {\n na._inflight = na._inflight.filter(function(pa) {\n return (pa.transport && (pa.transport.readyState < 4));\n });\n }\n });\n q.onUnload(function() {\n na._inflight.forEach(function(pa) {\n if ((pa.transport && (pa.transport.readyState < 4))) {\n pa.transport.abort();\n delete pa.transport;\n }\n ;\n });\n });\n }\n ;\n }\n });\n x(na.prototype, {\n _dispatchResponse: function(pa) {\n this.clearStatusIndicator();\n if (!this._isRelevant()) {\n this._invokeErrorHandler(1010);\n return;\n }\n ;\n if ((this.initialHandler(pa) === false)) {\n return\n };\n clearTimeout(this.timer);\n if (pa.jscc_map) {\n var qa = (eval)(pa.jscc_map);\n o.init(qa);\n }\n ;\n var ra;\n if (this.handler) {\n try {\n ra = this._shouldSuppressJS(this.handler(pa));\n } catch (sa) {\n (pa.is_last && this.finallyHandler(pa));\n throw sa;\n }\n };\n if (!ra) {\n this._handleJSResponse(pa);\n };\n (pa.is_last && this.finallyHandler(pa));\n },\n _shouldSuppressJS: function(pa) {\n return (pa === na.suppressOnloadToken);\n },\n _handleJSResponse: function(pa) {\n var qa = this.getRelativeTo(), ra = pa.domops, sa = pa.jsmods, ta = new r().setRelativeTo(qa), ua;\n if ((sa && sa.require)) {\n ua = sa.require;\n delete sa.require;\n }\n ;\n if (sa) {\n ta.handle(sa);\n };\n var va = function(wa) {\n if ((ra && wa)) {\n wa.invoke(ra, qa);\n };\n if (ua) {\n ta.handle({\n require: ua\n });\n };\n this._handleJSRegisters(pa, \"onload\");\n if (this.lid) {\n g.inform(\"tti_ajax\", {\n s: this.lid,\n d: [(this._sendTimeStamp || 0),(((this._sendTimeStamp && this._responseTime)) ? ((this._responseTime - this._sendTimeStamp)) : 0),]\n }, g.BEHAVIOR_EVENT);\n };\n this._handleJSRegisters(pa, \"onafterload\");\n ta.cleanup();\n }.bind(this);\n if (ra) {\n i.loadModules([\"AsyncDOM\",], va);\n }\n else va(null);\n ;\n },\n _handleJSRegisters: function(pa, qa) {\n var ra = pa[qa];\n if (ra) {\n for (var sa = 0; (sa < ra.length); sa++) {\n l.applyWithGuard(new Function(ra[sa]), this);;\n }\n };\n },\n invokeResponseHandler: function(pa) {\n if ((typeof (pa.redirect) !== \"undefined\")) {\n (function() {\n this.setURI(pa.redirect).send();\n }).bind(this).defer();\n return;\n }\n ;\n if (((!this.handler && !this.errorHandler) && !this.transportErrorHandler)) {\n return\n };\n var qa = pa.asyncResponse;\n if ((typeof (qa) !== \"undefined\")) {\n if (!this._isRelevant()) {\n this._invokeErrorHandler(1010);\n return;\n }\n ;\n if (qa.inlinejs) {\n z(qa.inlinejs);\n };\n if (qa.lid) {\n this._responseTime = Date.now();\n if (a.CavalryLogger) {\n this.cavalry = a.CavalryLogger.getInstance(qa.lid);\n };\n this.lid = qa.lid;\n }\n ;\n if (qa.resource_map) {\n i.setResourceMap(qa.resource_map);\n };\n if (qa.bootloadable) {\n i.enableBootload(qa.bootloadable);\n };\n da.add(qa.ixData);\n var ra, sa;\n if ((qa.getError() && !qa.getErrorIsWarning())) {\n var ta = this.errorHandler.bind(this);\n ra = l.guard(this._dispatchErrorResponse, (\"AsyncRequest#_dispatchErrorResponse for \" + this.getURI()));\n ra = ra.bind(this, qa, ta);\n sa = \"error\";\n }\n else {\n ra = l.guard(this._dispatchResponse, (\"AsyncRequest#_dispatchResponse for \" + this.getURI()));\n ra = ra.bind(this, qa);\n sa = \"response\";\n }\n ;\n ra = fa(ra, function() {\n g.inform((\"AsyncRequest/\" + sa), {\n request: this,\n response: qa\n });\n }.bind(this));\n ra = ra.defer.bind(ra);\n var ua = false;\n if (this.preBootloadHandler) {\n ua = this.preBootloadHandler(qa);\n };\n qa.css = (qa.css || []);\n qa.js = (qa.js || []);\n i.loadResources(qa.css.concat(qa.js), ra, ua, this.getURI());\n }\n else if ((typeof (pa.transportError) !== \"undefined\")) {\n if (this._xFbServer) {\n this._invokeErrorHandler(1008);\n }\n else this._invokeErrorHandler(1012);\n ;\n }\n else this._invokeErrorHandler(1007);\n \n ;\n },\n _invokeErrorHandler: function(pa) {\n var qa;\n if ((this.responseText === \"\")) {\n qa = 1002;\n }\n else if (this._requestAborted) {\n qa = 1011;\n }\n else {\n try {\n qa = ((pa || this.transport.status) || 1004);\n } catch (ra) {\n qa = 1005;\n };\n if ((false === navigator.onLine)) {\n qa = 1006;\n };\n }\n \n ;\n var sa, ta, ua = true;\n if ((qa === 1006)) {\n ta = \"No Network Connection\";\n sa = \"Your browser appears to be offline. Please check your internet connection and try again.\";\n }\n else if (((qa >= 300) && (qa <= 399))) {\n ta = \"Redirection\";\n sa = \"Your access to Facebook was redirected or blocked by a third party at this time, please contact your ISP or reload. \";\n var va = this.transport.getResponseHeader(\"Location\");\n if (va) {\n ba(va, true);\n };\n ua = true;\n }\n else {\n ta = \"Oops\";\n sa = \"Something went wrong. We're working on getting this fixed as soon as we can. You may be able to try again.\";\n }\n \n ;\n var wa = new h(this);\n x(wa, {\n error: qa,\n errorSummary: ta,\n errorDescription: sa,\n silentError: ua\n });\n (function() {\n g.inform(\"AsyncRequest/error\", {\n request: this,\n response: wa\n });\n }).bind(this).defer();\n if ((ga() && !this.getOption(\"handleErrorAfterUnload\"))) {\n return\n };\n if (!this.transportErrorHandler) {\n return\n };\n var xa = this.transportErrorHandler.bind(this);\n !this.getOption(\"suppressErrorAlerts\");\n l.applyWithGuard(this._dispatchErrorResponse, this, [wa,xa,]);\n },\n _dispatchErrorResponse: function(pa, qa) {\n var ra = pa.getError();\n this.clearStatusIndicator();\n var sa = (this._sendTimeStamp && {\n duration: (Date.now() - this._sendTimeStamp),\n xfb_ip: (this._xFbServer || \"-\")\n });\n pa.logError(\"async_error\", sa);\n if ((!this._isRelevant() || (ra === 1010))) {\n this.abort();\n return;\n }\n ;\n if (((((ra == 1357008) || (ra == 1357007)) || (ra == 1442002)) || (ra == 1357001))) {\n var ta = ((ra == 1357008) || (ra == 1357007));\n this.interceptHandler(pa);\n this._displayServerDialog(pa, ta);\n }\n else if ((this.initialHandler(pa) !== false)) {\n clearTimeout(this.timer);\n try {\n qa(pa);\n } catch (ua) {\n this.finallyHandler(pa);\n throw ua;\n };\n this.finallyHandler(pa);\n }\n \n ;\n },\n _displayServerDialog: function(pa, qa) {\n var ra = pa.getPayload();\n if ((ra.__dialog !== undefined)) {\n this._displayServerLegacyDialog(pa, qa);\n return;\n }\n ;\n var sa = ra.__dialogx;\n new r().handle(sa);\n i.loadModules([\"ConfirmationDialog\",], function(ta) {\n ta.setupConfirmation(pa, this);\n }.bind(this));\n },\n _displayServerLegacyDialog: function(pa, qa) {\n var ra = pa.getPayload().__dialog;\n i.loadModules([\"Dialog\",], function(sa) {\n var ta = new sa(ra);\n if (qa) {\n ta.setHandler(this._displayConfirmationHandler.bind(this, ta));\n };\n ta.setCancelHandler(function() {\n var ua = this.getServerDialogCancelHandler();\n try {\n (ua && ua(pa));\n } catch (va) {\n throw va;\n } finally {\n this.finallyHandler(pa);\n };\n }.bind(this)).setCausalElement(this.relativeTo).show();\n }.bind(this));\n },\n _displayConfirmationHandler: function(pa) {\n this.data.confirmed = 1;\n x(this.data, pa.getFormData());\n this.send();\n },\n setJSONPTransport: function(pa) {\n pa.subscribe(\"response\", this._handleJSONPResponse.bind(this));\n pa.subscribe(\"abort\", this._handleJSONPAbort.bind(this));\n this.transport = pa;\n },\n _handleJSONPResponse: function(pa, qa) {\n this.is_first = ((this.is_first === undefined));\n var ra = this._interpretResponse(qa);\n ra.asyncResponse.is_first = this.is_first;\n ra.asyncResponse.is_last = this.transport.hasFinished();\n this.invokeResponseHandler(ra);\n if (this.transport.hasFinished()) {\n delete this.transport;\n };\n },\n _handleJSONPAbort: function() {\n this._invokeErrorHandler();\n delete this.transport;\n },\n _handleXHRResponse: function(pa) {\n var qa;\n if (this.getOption(\"suppressEvaluation\")) {\n qa = {\n asyncResponse: new h(this, pa)\n };\n }\n else {\n var ra = pa.responseText, sa = null;\n try {\n var ua = this._unshieldResponseText(ra);\n try {\n var va = (eval)(((\"(\" + ua) + \")\"));\n qa = this._interpretResponse(va);\n } catch (ta) {\n sa = \"excep\";\n qa = {\n transportError: (\"eval() failed on async to \" + this.getURI())\n };\n };\n } catch (ta) {\n sa = \"empty\";\n qa = {\n transportError: ta.message\n };\n };\n if (sa) {\n var wa = a.ErrorSignal;\n (wa && wa.sendErrorSignal(\"async_xport_resp\", [(((this._xFbServer ? \"1008_\" : \"1012_\")) + sa),(this._xFbServer || \"-\"),this.getURI(),ra.length,ra.substr(0, 1600),].join(\":\")));\n }\n ;\n }\n ;\n this.invokeResponseHandler(qa);\n },\n _unshieldResponseText: function(pa) {\n var qa = \"for (;;);\", ra = qa.length;\n if ((pa.length <= ra)) {\n throw new Error((\"Response too short on async to \" + this.getURI()))\n };\n var sa = 0;\n while (((pa.charAt(sa) == \" \") || (pa.charAt(sa) == \"\\u000a\"))) {\n sa++;;\n };\n (sa && (pa.substring(sa, (sa + ra)) == qa));\n return pa.substring((sa + ra));\n },\n _interpretResponse: function(pa) {\n if (pa.redirect) {\n return {\n redirect: pa.redirect\n }\n };\n var qa = new h(this);\n if ((pa.__ar != 1)) {\n qa.payload = pa;\n }\n else x(qa, pa);\n ;\n return {\n asyncResponse: qa\n };\n },\n _onStateChange: function() {\n try {\n if ((this.transport.readyState == 4)) {\n na._inflightCount--;\n na._inflightPurge();\n try {\n if (((typeof (this.transport.getResponseHeader) !== \"undefined\") && this.transport.getResponseHeader(\"X-FB-Debug\"))) {\n this._xFbServer = this.transport.getResponseHeader(\"X-FB-Debug\");\n };\n } catch (qa) {\n \n };\n if (((this.transport.status >= 200) && (this.transport.status < 300))) {\n na.lastSuccessTime = Date.now();\n this._handleXHRResponse(this.transport);\n }\n else if ((t.webkit() && ((typeof (this.transport.status) == \"undefined\")))) {\n this._invokeErrorHandler(1002);\n }\n else if (((k.retry_ajax_on_network_error && ja(this.transport)) && (this.remainingRetries > 0))) {\n this.remainingRetries--;\n delete this.transport;\n this.send(true);\n return;\n }\n else this._invokeErrorHandler();\n \n \n ;\n if ((this.getOption(\"asynchronous\") !== false)) {\n delete this.transport;\n };\n }\n ;\n } catch (pa) {\n if (ga()) {\n return\n };\n delete this.transport;\n if ((this.remainingRetries > 0)) {\n this.remainingRetries--;\n this.send(true);\n }\n else {\n !this.getOption(\"suppressErrorAlerts\");\n var ra = a.ErrorSignal;\n (ra && ra.sendErrorSignal(\"async_xport_resp\", [1007,(this._xFbServer || \"-\"),this.getURI(),pa.message,].join(\":\")));\n this._invokeErrorHandler(1007);\n }\n ;\n };\n },\n _isMultiplexable: function() {\n if ((this.getOption(\"jsonp\") || this.getOption(\"useIframeTransport\"))) {\n return false\n };\n if (!this.uri.isFacebookURI()) {\n return false\n };\n if (!this.getOption(\"asynchronous\")) {\n return false\n };\n return true;\n },\n handleResponse: function(pa) {\n var qa = this._interpretResponse(pa);\n this.invokeResponseHandler(qa);\n },\n setMethod: function(pa) {\n this.method = pa.toString().toUpperCase();\n return this;\n },\n getMethod: function() {\n return this.method;\n },\n setData: function(pa) {\n this.data = pa;\n return this;\n },\n _setDataHash: function() {\n if (((this.method != \"POST\") || this.data.ttstamp)) {\n return\n };\n if ((typeof this.data.fb_dtsg !== \"string\")) {\n return\n };\n var pa = \"\";\n for (var qa = 0; (qa < this.data.fb_dtsg.length); qa++) {\n pa += this.data.fb_dtsg.charCodeAt(qa);;\n };\n this.data.ttstamp = (\"2\" + pa);\n },\n setRawData: function(pa) {\n this.rawData = pa;\n return this;\n },\n getData: function() {\n return this.data;\n },\n setContextData: function(pa, qa, ra) {\n ra = ((ra === undefined) ? true : ra);\n if (ra) {\n this.context[(\"_log_\" + pa)] = qa;\n };\n return this;\n },\n _setUserActionID: function() {\n var pa = ((a.ArbiterMonitor && a.ArbiterMonitor.getUE()) || \"-\");\n this.userActionID = (((((a.EagleEye && a.EagleEye.getSessionID()) || \"-\")) + \"/\") + pa);\n },\n setURI: function(pa) {\n var qa = s(pa);\n if ((this.getOption(\"useIframeTransport\") && !qa.isFacebookURI())) {\n return this\n };\n if ((((!this._allowCrossOrigin && !this.getOption(\"jsonp\")) && !this.getOption(\"useIframeTransport\")) && !qa.isSameOrigin())) {\n return this\n };\n this._setUserActionID();\n if ((!pa || qa.isEmpty())) {\n var ra = a.ErrorSignal, sa = a.getErrorStack;\n if ((ra && sa)) {\n var ta = {\n err_code: 1013,\n vip: \"-\",\n duration: 0,\n xfb_ip: \"-\",\n path: window.location.href,\n aid: this.userActionID\n };\n ra.sendErrorSignal(\"async_error\", JSON.stringify(ta));\n ra.sendErrorSignal(\"async_xport_stack\", [1013,window.location.href,null,sa(),].join(\":\"));\n }\n ;\n return this;\n }\n ;\n this.uri = qa;\n return this;\n },\n getURI: function() {\n return this.uri.toString();\n },\n setInitialHandler: function(pa) {\n this.initialHandler = pa;\n return this;\n },\n setHandler: function(pa) {\n if (ka(pa)) {\n this.handler = pa;\n };\n return this;\n },\n getHandler: function() {\n return this.handler;\n },\n setUploadProgressHandler: function(pa) {\n if (ka(pa)) {\n this.uploadProgressHandler = pa;\n };\n return this;\n },\n setErrorHandler: function(pa) {\n if (ka(pa)) {\n this.errorHandler = pa;\n };\n return this;\n },\n setTransportErrorHandler: function(pa) {\n this.transportErrorHandler = pa;\n return this;\n },\n getErrorHandler: function() {\n return this.errorHandler;\n },\n getTransportErrorHandler: function() {\n return this.transportErrorHandler;\n },\n setTimeoutHandler: function(pa, qa) {\n if (ka(qa)) {\n this.timeout = pa;\n this.timeoutHandler = qa;\n }\n ;\n return this;\n },\n resetTimeout: function(pa) {\n if (!((this.timeoutHandler === null))) {\n if ((pa === null)) {\n this.timeout = null;\n clearTimeout(this.timer);\n this.timer = null;\n }\n else {\n var qa = !this._allowCrossPageTransition;\n this.timeout = pa;\n clearTimeout(this.timer);\n this.timer = this._handleTimeout.bind(this).defer(this.timeout, qa);\n }\n \n };\n return this;\n },\n _handleTimeout: function() {\n this.abandon();\n this.timeoutHandler(this);\n },\n setNewSerial: function() {\n this.id = ++la;\n return this;\n },\n setInterceptHandler: function(pa) {\n this.interceptHandler = pa;\n return this;\n },\n setFinallyHandler: function(pa) {\n this.finallyHandler = pa;\n return this;\n },\n setAbortHandler: function(pa) {\n this.abortHandler = pa;\n return this;\n },\n getServerDialogCancelHandler: function() {\n return this.serverDialogCancelHandler;\n },\n setServerDialogCancelHandler: function(pa) {\n this.serverDialogCancelHandler = pa;\n return this;\n },\n setPreBootloadHandler: function(pa) {\n this.preBootloadHandler = pa;\n return this;\n },\n setReadOnly: function(pa) {\n if (!((typeof (pa) != \"boolean\"))) {\n this.readOnly = pa;\n };\n return this;\n },\n setFBMLForm: function() {\n this.writeRequiredParams = [\"fb_sig\",];\n return this;\n },\n getReadOnly: function() {\n return this.readOnly;\n },\n setRelativeTo: function(pa) {\n this.relativeTo = pa;\n return this;\n },\n getRelativeTo: function() {\n return this.relativeTo;\n },\n setStatusClass: function(pa) {\n this.statusClass = pa;\n return this;\n },\n setStatusElement: function(pa) {\n this.statusElement = pa;\n return this;\n },\n getStatusElement: function() {\n return aa(this.statusElement);\n },\n _isRelevant: function() {\n if (this._allowCrossPageTransition) {\n return true\n };\n if (!this.id) {\n return true\n };\n return (this.id > ma);\n },\n clearStatusIndicator: function() {\n var pa = this.getStatusElement();\n if (pa) {\n j.removeClass(pa, \"async_saving\");\n j.removeClass(pa, this.statusClass);\n }\n ;\n },\n addStatusIndicator: function() {\n var pa = this.getStatusElement();\n if (pa) {\n j.addClass(pa, \"async_saving\");\n j.addClass(pa, this.statusClass);\n }\n ;\n },\n specifiesWriteRequiredParams: function() {\n return this.writeRequiredParams.every(function(pa) {\n this.data[pa] = ((this.data[pa] || k[pa]) || ((aa(pa) || {\n })).value);\n if ((this.data[pa] !== undefined)) {\n return true\n };\n return false;\n }, this);\n },\n setOption: function(pa, qa) {\n if ((typeof (this.option[pa]) != \"undefined\")) {\n this.option[pa] = qa;\n };\n return this;\n },\n getOption: function(pa) {\n (typeof (this.option[pa]) == \"undefined\");\n return this.option[pa];\n },\n abort: function() {\n if (this.transport) {\n var pa = this.getTransportErrorHandler();\n this.setOption(\"suppressErrorAlerts\", true);\n this.setTransportErrorHandler(y);\n this._requestAborted = true;\n this.transport.abort();\n this.setTransportErrorHandler(pa);\n }\n ;\n this.abortHandler();\n },\n abandon: function() {\n clearTimeout(this.timer);\n this.setOption(\"suppressErrorAlerts\", true).setHandler(y).setErrorHandler(y).setTransportErrorHandler(y);\n if (this.transport) {\n this._requestAborted = true;\n this.transport.abort();\n }\n ;\n },\n setNectarData: function(pa) {\n if (pa) {\n if ((this.data.nctr === undefined)) {\n this.data.nctr = {\n };\n };\n x(this.data.nctr, pa);\n }\n ;\n return this;\n },\n setNectarModuleDataSafe: function(pa) {\n if (this.setNectarModuleData) {\n this.setNectarModuleData(pa);\n };\n return this;\n },\n setNectarImpressionIdSafe: function() {\n if (this.setNectarImpressionId) {\n this.setNectarImpressionId();\n };\n return this;\n },\n setAllowCrossPageTransition: function(pa) {\n this._allowCrossPageTransition = !!pa;\n if (this.timer) {\n this.resetTimeout(this.timeout);\n };\n return this;\n },\n setAllowCrossOrigin: function(pa) {\n this._allowCrossOrigin = pa;\n return this;\n },\n send: function(pa) {\n pa = (pa || false);\n if (!this.uri) {\n return false\n };\n (!this.errorHandler && !this.getOption(\"suppressErrorHandlerWarning\"));\n if ((this.getOption(\"jsonp\") && (this.method != \"GET\"))) {\n this.setMethod(\"GET\");\n };\n if ((this.getOption(\"useIframeTransport\") && (this.method != \"GET\"))) {\n this.setMethod(\"GET\");\n };\n ((this.timeoutHandler !== null) && ((this.getOption(\"jsonp\") || this.getOption(\"useIframeTransport\"))));\n if (!this.getReadOnly()) {\n this.specifiesWriteRequiredParams();\n if ((this.method != \"POST\")) {\n return false\n };\n }\n ;\n x(this.data, u.getAsyncParams(this.method));\n if (!ca(this.context)) {\n x(this.data, this.context);\n this.data.ajax_log = 1;\n }\n ;\n if (k.force_param) {\n x(this.data, k.force_param);\n };\n this._setUserActionID();\n if ((this.getOption(\"bundle\") && this._isMultiplexable())) {\n oa.schedule(this);\n return true;\n }\n ;\n this.setNewSerial();\n if (!this.getOption(\"asynchronous\")) {\n this.uri.addQueryData({\n __s: 1\n });\n };\n this.finallyHandler = v(this.finallyHandler, \"final\");\n var qa, ra;\n if (((this.method == \"GET\") || this.rawData)) {\n qa = this.uri.addQueryData(this.data).toString();\n ra = (this.rawData || \"\");\n }\n else {\n qa = this.uri.toString();\n this._setDataHash();\n ra = s.implodeQuery(this.data);\n }\n ;\n if (this.transport) {\n return false\n };\n if ((this.getOption(\"jsonp\") || this.getOption(\"useIframeTransport\"))) {\n d([\"JSONPTransport\",], function(va) {\n var wa = new va((this.getOption(\"jsonp\") ? \"jsonp\" : \"iframe\"), this.uri);\n this.setJSONPTransport(wa);\n wa.send();\n }.bind(this));\n return true;\n }\n ;\n var sa = u.create();\n if (!sa) {\n return false\n };\n sa.onreadystatechange = v(this._onStateChange.bind(this), \"xhr\");\n if ((this.uploadProgressHandler && ha(sa))) {\n sa.upload.onprogress = this.uploadProgressHandler.bind(this);\n };\n if (!pa) {\n this.remainingRetries = this.getOption(\"retries\");\n };\n if ((a.ErrorSignal || a.ArbiterMonitor)) {\n this._sendTimeStamp = (this._sendTimeStamp || Date.now());\n };\n this.transport = sa;\n try {\n this.transport.open(this.method, qa, this.getOption(\"asynchronous\"));\n } catch (ta) {\n return false;\n };\n var ua = k.svn_rev;\n if (ua) {\n this.transport.setRequestHeader(\"X-SVN-Rev\", String(ua));\n };\n if (((!this.uri.isSameOrigin() && !this.getOption(\"jsonp\")) && !this.getOption(\"useIframeTransport\"))) {\n if (!ia(this.transport)) {\n return false\n };\n if (this.uri.isFacebookURI()) {\n this.transport.withCredentials = true;\n };\n }\n ;\n if (((this.method == \"POST\") && !this.rawData)) {\n this.transport.setRequestHeader(\"Content-Type\", \"application/x-www-form-urlencoded\");\n };\n g.inform(\"AsyncRequest/send\", {\n request: this\n });\n this.addStatusIndicator();\n this.transport.send(ra);\n if ((this.timeout !== null)) {\n this.resetTimeout(this.timeout);\n };\n na._inflightCount++;\n na._inflightAdd(this);\n return true;\n }\n });\n function oa() {\n this._requests = [];\n };\n x(oa, {\n multiplex: null,\n schedule: function(pa) {\n if (!oa.multiplex) {\n oa.multiplex = new oa();\n (function() {\n oa.multiplex.send();\n oa.multiplex = null;\n }).defer();\n }\n ;\n oa.multiplex.add(pa);\n }\n });\n x(oa.prototype, {\n add: function(pa) {\n this._requests.push(pa);\n },\n send: function() {\n var pa = this._requests;\n if (!pa.length) {\n return\n };\n var qa;\n if ((pa.length === 1)) {\n qa = pa[0];\n }\n else {\n var ra = pa.map(function(sa) {\n return [sa.uri.getPath(),s.implodeQuery(sa.data),];\n });\n qa = new na(\"/ajax/proxy.php\").setAllowCrossPageTransition(true).setData({\n data: ra\n }).setHandler(this._handler.bind(this)).setTransportErrorHandler(this._transportErrorHandler.bind(this));\n }\n ;\n qa.setOption(\"bundle\", false).send();\n },\n _handler: function(pa) {\n var qa = pa.getPayload().responses;\n if ((qa.length !== this._requests.length)) {\n return\n };\n for (var ra = 0; (ra < this._requests.length); ra++) {\n var sa = this._requests[ra], ta = sa.uri.getPath();\n sa.id = this.id;\n if ((qa[ra][0] !== ta)) {\n sa.invokeResponseHandler({\n transportError: (\"Wrong response order in bundled request to \" + ta)\n });\n continue;\n }\n ;\n sa.handleResponse(qa[ra][1]);\n };\n },\n _transportErrorHandler: function(pa) {\n var qa = {\n transportError: pa.errorDescription\n }, ra = this._requests.map(function(sa) {\n sa.id = this.id;\n sa.invokeResponseHandler(qa);\n return sa.uri.getPath();\n });\n }\n });\n e.exports = na;\n});\n__d(\"CookieCore\", [], function(a, b, c, d, e, f) {\n var g = {\n set: function(h, i, j, k, l) {\n document.cookie = (((((((((h + \"=\") + encodeURIComponent(i)) + \"; \") + ((j ? ((\"expires=\" + (new Date((Date.now() + j))).toGMTString()) + \"; \") : \"\"))) + \"path=\") + ((k || \"/\"))) + \"; domain=\") + window.location.hostname.replace(/^.*(\\.facebook\\..*)$/i, \"$1\")) + ((l ? \"; secure\" : \"\")));\n },\n clear: function(h, i) {\n i = (i || \"/\");\n document.cookie = (((((h + \"=; expires=Thu, 01-Jan-1970 00:00:01 GMT; \") + \"path=\") + i) + \"; domain=\") + window.location.hostname.replace(/^.*(\\.facebook\\..*)$/i, \"$1\"));\n },\n get: function(h) {\n var i = document.cookie.match(((\"(?:^|;\\\\s*)\" + h) + \"=(.*?)(?:;|$)\"));\n return ((i ? decodeURIComponent(i[1]) : i));\n }\n };\n e.exports = g;\n});\n__d(\"Cookie\", [\"CookieCore\",\"Env\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"CookieCore\"), h = b(\"Env\"), i = b(\"copyProperties\");\n function j(l, m, n, o, p) {\n if ((h.no_cookies && (l != \"tpa\"))) {\n return\n };\n g.set(l, m, n, o, p);\n };\n var k = i({\n }, g);\n k.set = j;\n e.exports = k;\n});\n__d(\"DOMControl\", [\"DataStore\",\"$\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"DataStore\"), h = b(\"$\"), i = b(\"copyProperties\");\n function j(k) {\n this.root = h(k);\n this.updating = false;\n g.set(k, \"DOMControl\", this);\n };\n i(j.prototype, {\n getRoot: function() {\n return this.root;\n },\n beginUpdate: function() {\n if (this.updating) {\n return false\n };\n this.updating = true;\n return true;\n },\n endUpdate: function() {\n this.updating = false;\n },\n update: function(k) {\n if (!this.beginUpdate()) {\n return this\n };\n this.onupdate(k);\n this.endUpdate();\n },\n onupdate: function(k) {\n \n }\n });\n j.getInstance = function(k) {\n return g.get(k, \"DOMControl\");\n };\n e.exports = j;\n});\n__d(\"hyphenate\", [], function(a, b, c, d, e, f) {\n var g = /([A-Z])/g;\n function h(i) {\n return i.replace(g, \"-$1\").toLowerCase();\n };\n e.exports = h;\n});\n__d(\"Style\", [\"DOMQuery\",\"UserAgent\",\"$\",\"copyProperties\",\"hyphenate\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMQuery\"), h = b(\"UserAgent\"), i = b(\"$\"), j = b(\"copyProperties\"), k = b(\"hyphenate\");\n function l(s) {\n return s.replace(/-(.)/g, function(t, u) {\n return u.toUpperCase();\n });\n };\n function m(s, t) {\n var u = r.get(s, t);\n return (((u === \"auto\") || (u === \"scroll\")));\n };\n var n = new RegExp((((((\"\\\\s*\" + \"([^\\\\s:]+)\") + \"\\\\s*:\\\\s*\") + \"([^;('\\\"]*(?:(?:\\\\([^)]*\\\\)|\\\"[^\\\"]*\\\"|'[^']*')[^;(?:'\\\"]*)*)\") + \"(?:;|$)\")), \"g\");\n function o(s) {\n var t = {\n };\n s.replace(n, function(u, v, w) {\n t[v] = w;\n });\n return t;\n };\n function p(s) {\n var t = \"\";\n for (var u in s) {\n if (s[u]) {\n t += (((u + \":\") + s[u]) + \";\");\n };\n };\n return t;\n };\n function q(s) {\n return ((s !== \"\") ? ((\"alpha(opacity=\" + (s * 100)) + \")\") : \"\");\n };\n var r = {\n set: function(s, t, u) {\n switch (t) {\n case \"opacity\":\n if ((h.ie() < 9)) {\n s.style.filter = q(u);\n }\n else s.style.opacity = u;\n ;\n break;\n case \"float\":\n s.style.cssFloat = s.style.styleFloat = (u || \"\");\n break;\n default:\n try {\n s.style[l(t)] = u;\n } catch (v) {\n throw new Error(((((\"Style.set: \\\"\" + t) + \"\\\" argument is invalid: \\\"\") + u) + \"\\\"\"));\n };\n };\n },\n apply: function(s, t) {\n var u;\n if (((\"opacity\" in t) && (h.ie() < 9))) {\n var v = t.opacity;\n t.filter = q(v);\n delete t.opacity;\n }\n ;\n var w = o(s.style.cssText);\n for (u in t) {\n var x = t[u];\n delete t[u];\n u = k(u);\n for (var y in w) {\n if (((y === u) || (y.indexOf((u + \"-\")) === 0))) {\n delete w[y];\n };\n };\n t[u] = x;\n };\n t = j(w, t);\n s.style.cssText = p(t);\n if ((h.ie() < 9)) {\n for (u in t) {\n if (!t[u]) {\n r.set(s, u, \"\");\n };\n }\n };\n },\n get: function(s, t) {\n s = i(s);\n var u;\n if (window.getComputedStyle) {\n u = window.getComputedStyle(s, null);\n if (u) {\n return u.getPropertyValue(k(t))\n };\n }\n ;\n if ((document.defaultView && document.defaultView.getComputedStyle)) {\n u = document.defaultView.getComputedStyle(s, null);\n if (u) {\n return u.getPropertyValue(k(t))\n };\n if ((t == \"display\")) {\n return \"none\"\n };\n }\n ;\n t = l(t);\n if (s.currentStyle) {\n if ((t === \"float\")) {\n return (s.currentStyle.cssFloat || s.currentStyle.styleFloat)\n };\n return s.currentStyle[t];\n }\n ;\n return (s.style && s.style[t]);\n },\n getFloat: function(s, t) {\n return parseFloat(r.get(s, t), 10);\n },\n getOpacity: function(s) {\n s = i(s);\n var t = r.get(s, \"filter\"), u = null;\n if ((t && (u = /(\\d+(?:\\.\\d+)?)/.exec(t)))) {\n return (parseFloat(u.pop()) / 100);\n }\n else if (t = r.get(s, \"opacity\")) {\n return parseFloat(t);\n }\n else return 1\n \n ;\n },\n isFixed: function(s) {\n while (g.contains(document.body, s)) {\n if ((r.get(s, \"position\") === \"fixed\")) {\n return true\n };\n s = s.parentNode;\n };\n return false;\n },\n getScrollParent: function(s) {\n if (!s) {\n return null\n };\n while ((s !== document.body)) {\n if (((m(s, \"overflow\") || m(s, \"overflowY\")) || m(s, \"overflowX\"))) {\n return s\n };\n s = s.parentNode;\n };\n return window;\n }\n };\n e.exports = r;\n});\n__d(\"DOMDimensions\", [\"DOMQuery\",\"Style\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMQuery\"), h = b(\"Style\"), i = {\n getElementDimensions: function(j) {\n return {\n width: (j.offsetWidth || 0),\n height: (j.offsetHeight || 0)\n };\n },\n getViewportDimensions: function() {\n var j = (((((window && window.innerWidth)) || (((document && document.documentElement) && document.documentElement.clientWidth))) || (((document && document.body) && document.body.clientWidth))) || 0), k = (((((window && window.innerHeight)) || (((document && document.documentElement) && document.documentElement.clientHeight))) || (((document && document.body) && document.body.clientHeight))) || 0);\n return {\n width: j,\n height: k\n };\n },\n getViewportWithoutScrollbarDimensions: function() {\n var j = (((((document && document.documentElement) && document.documentElement.clientWidth)) || (((document && document.body) && document.body.clientWidth))) || 0), k = (((((document && document.documentElement) && document.documentElement.clientHeight)) || (((document && document.body) && document.body.clientHeight))) || 0);\n return {\n width: j,\n height: k\n };\n },\n getDocumentDimensions: function(j) {\n j = (j || document);\n var k = g.getDocumentScrollElement(j), l = (k.scrollWidth || 0), m = (k.scrollHeight || 0);\n return {\n width: l,\n height: m\n };\n },\n measureElementBox: function(j, k, l, m, n) {\n var o;\n switch (k) {\n case \"left\":\n \n case \"right\":\n \n case \"top\":\n \n case \"bottom\":\n o = [k,];\n break;\n case \"width\":\n o = [\"left\",\"right\",];\n break;\n case \"height\":\n o = [\"top\",\"bottom\",];\n break;\n default:\n throw Error((\"Invalid plane: \" + k));\n };\n var p = function(q, r) {\n var s = 0;\n for (var t = 0; (t < o.length); t++) {\n s += (parseInt(h.get(j, (((q + \"-\") + o[t]) + r)), 10) || 0);;\n };\n return s;\n };\n return ((((l ? p(\"padding\", \"\") : 0)) + ((m ? p(\"border\", \"-width\") : 0))) + ((n ? p(\"margin\", \"\") : 0)));\n }\n };\n e.exports = i;\n});\n__d(\"Focus\", [\"CSS\",\"DOM\",\"Event\",\"Run\",\"cx\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"CSS\"), h = b(\"DOM\"), i = b(\"Event\"), j = b(\"Run\"), k = b(\"cx\"), l = b(\"ge\"), m = {\n }, n, o = {\n set: function(s) {\n try {\n s.tabIndex = s.tabIndex;\n s.focus();\n } catch (t) {\n \n };\n },\n setWithoutOutline: function(s) {\n g.addClass(s, \"-cx-PRIVATE-focus__nooutline\");\n var t = i.listen(s, \"blur\", function() {\n g.removeClass(s, \"-cx-PRIVATE-focus__nooutline\");\n t.remove();\n });\n o.set(s);\n },\n relocate: function(s, t) {\n p();\n var u = h.getID(s);\n m[u] = t;\n g.addClass(s, \"-cx-PRIVATE-focus__nooutline\");\n j.onLeave(r.curry(u));\n },\n reset: function(s) {\n var t = h.getID(s);\n g.removeClass(s, \"-cx-PRIVATE-focus__nooutline\");\n if (m[t]) {\n g.removeClass(m[t], \"-cx-PRIVATE-focus__nativeoutline\");\n delete m[t];\n }\n ;\n }\n };\n function p() {\n if (n) {\n return\n };\n i.listen(document.documentElement, \"focusout\", q);\n i.listen(document.documentElement, \"focusin\", q);\n n = true;\n };\n function q(event) {\n var s = event.getTarget();\n if (!g.hasClass(s, \"-cx-PRIVATE-focus__nooutline\")) {\n return\n };\n if (m[s.id]) {\n g.conditionClass(m[s.id], \"-cx-PRIVATE-focus__nativeoutline\", ((event.type === \"focusin\") || (event.type === \"focus\")));\n };\n };\n function r(s) {\n if ((m[s] && !l(s))) {\n delete m[s];\n };\n };\n e.exports = o;\n});\n__d(\"Input\", [\"CSS\",\"DOMQuery\",\"DOMControl\",], function(a, b, c, d, e, f) {\n var g = b(\"CSS\"), h = b(\"DOMQuery\"), i = b(\"DOMControl\"), j = function(l) {\n var m = l.getAttribute(\"maxlength\");\n if ((m && (m > 0))) {\n d([\"enforceMaxLength\",], function(n) {\n n(l, m);\n });\n };\n }, k = {\n isEmpty: function(l) {\n return (!(/\\S/).test((l.value || \"\")) || g.hasClass(l, \"DOMControl_placeholder\"));\n },\n getValue: function(l) {\n return (k.isEmpty(l) ? \"\" : l.value);\n },\n setValue: function(l, m) {\n g.removeClass(l, \"DOMControl_placeholder\");\n l.value = (m || \"\");\n j(l);\n var n = i.getInstance(l);\n ((n && n.resetHeight) && n.resetHeight());\n },\n setPlaceholder: function(l, m) {\n l.setAttribute(\"aria-label\", m);\n l.setAttribute(\"placeholder\", m);\n if ((l == document.activeElement)) {\n return\n };\n if (k.isEmpty(l)) {\n g.conditionClass(l, \"DOMControl_placeholder\", m);\n l.value = (m || \"\");\n }\n ;\n },\n reset: function(l) {\n var m = ((l !== document.activeElement) ? ((l.getAttribute(\"placeholder\") || \"\")) : \"\");\n l.value = m;\n g.conditionClass(l, \"DOMControl_placeholder\", m);\n l.style.height = \"\";\n },\n setSubmitOnEnter: function(l, m) {\n g.conditionClass(l, \"enter_submit\", m);\n },\n getSubmitOnEnter: function(l) {\n return g.hasClass(l, \"enter_submit\");\n },\n setMaxLength: function(l, m) {\n if ((m > 0)) {\n l.setAttribute(\"maxlength\", m);\n j(l);\n }\n else l.removeAttribute(\"maxlength\");\n ;\n }\n };\n e.exports = k;\n});\n__d(\"flattenArray\", [], function(a, b, c, d, e, f) {\n function g(h) {\n var i = h.slice(), j = [];\n while (i.length) {\n var k = i.pop();\n if (Array.isArray(k)) {\n Array.prototype.push.apply(i, k);\n }\n else j.push(k);\n ;\n };\n return j.reverse();\n };\n e.exports = g;\n});\n__d(\"JSXDOM\", [\"DOM\",\"flattenArray\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"flattenArray\"), i = [\"a\",\"br\",\"button\",\"canvas\",\"checkbox\",\"dd\",\"div\",\"dl\",\"dt\",\"em\",\"form\",\"h1\",\"h2\",\"h3\",\"h4\",\"h5\",\"h6\",\"hr\",\"i\",\"iframe\",\"img\",\"input\",\"label\",\"li\",\"option\",\"p\",\"pre\",\"select\",\"span\",\"strong\",\"table\",\"tbody\",\"thead\",\"td\",\"textarea\",\"th\",\"tr\",\"ul\",\"video\",], j = {\n };\n i.forEach(function(k) {\n var l = function(m, n) {\n if ((arguments.length > 2)) {\n n = Array.prototype.slice.call(arguments, 1);\n };\n if ((!n && m)) {\n n = m.children;\n delete m.children;\n }\n ;\n if (n) {\n n = (Array.isArray(n) ? h(n) : h([n,]));\n };\n return g.create(k, m, n);\n };\n j[k] = l;\n });\n e.exports = j;\n});\n__d(\"TidyArbiterMixin\", [\"Arbiter\",\"ArbiterMixin\",\"Run\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ArbiterMixin\"), i = b(\"Run\"), j = b(\"copyProperties\"), k = {\n };\n j(k, h, {\n _getArbiterInstance: function() {\n if (!this._arbiter) {\n this._arbiter = new g();\n i.onLeave(function() {\n delete this._arbiter;\n }.bind(this));\n }\n ;\n return this._arbiter;\n }\n });\n e.exports = k;\n});\n__d(\"TidyArbiter\", [\"TidyArbiterMixin\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"TidyArbiterMixin\"), h = b(\"copyProperties\"), i = {\n };\n h(i, g);\n e.exports = i;\n});\n__d(\"collectDataAttributes\", [\"getContextualParent\",], function(a, b, c, d, e, f) {\n var g = b(\"getContextualParent\");\n function h(i, j) {\n var k = {\n }, l = {\n }, m = j.length, n;\n for (n = 0; (n < m); ++n) {\n k[j[n]] = {\n };\n l[j[n]] = (\"data-\" + j[n]);\n };\n var o = {\n tn: \"\",\n \"tn-debug\": \",\"\n };\n while (i) {\n if (i.getAttribute) {\n for (n = 0; (n < m); ++n) {\n var p = i.getAttribute(l[j[n]]);\n if (p) {\n var q = JSON.parse(p);\n for (var r in q) {\n if ((o[r] !== undefined)) {\n if ((k[j[n]][r] === undefined)) {\n k[j[n]][r] = [];\n };\n k[j[n]][r].push(q[r]);\n }\n else if ((k[j[n]][r] === undefined)) {\n k[j[n]][r] = q[r];\n }\n ;\n };\n }\n ;\n }\n };\n i = g(i);\n };\n for (var s in k) {\n for (var t in o) {\n if ((k[s][t] !== undefined)) {\n k[s][t] = k[s][t].join(o[t]);\n };\n };\n };\n return k;\n };\n e.exports = h;\n});\n__d(\"csx\", [], function(a, b, c, d, e, f) {\n function g(h) {\n throw new Error(\"csx(...): Unexpected class selector transformation.\");\n };\n e.exports = g;\n});\n__d(\"isInIframe\", [], function(a, b, c, d, e, f) {\n function g() {\n return (window != window.top);\n };\n e.exports = g;\n});\n__d(\"TimelineCoverCollapse\", [\"Arbiter\",\"DOMDimensions\",\"Style\",\"TidyArbiter\",\"$\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"DOMDimensions\"), i = b(\"Style\"), j = b(\"TidyArbiter\"), k = b(\"$\");\n f.collapse = function(l, m) {\n m--;\n var n = h.getViewportDimensions().height, o = h.getDocumentDimensions().height, p = (n + m);\n if ((o <= p)) {\n i.set(k(\"pagelet_timeline_main_column\"), \"min-height\", (p + \"px\"));\n };\n window.scrollBy(0, m);\n j.inform(\"TimelineCover/coverCollapsed\", m, g.BEHAVIOR_STATE);\n };\n});\n__d(\"foldl\", [], function(a, b, c, d, e, f) {\n function g(h, i, j) {\n var k = 0, l = i.length;\n if ((l === 0)) {\n if ((j === undefined)) {\n throw new TypeError(\"Reduce of empty array with no initial value\")\n };\n return j;\n }\n ;\n if ((j === undefined)) {\n j = i[k++];\n };\n while ((k < l)) {\n if ((k in i)) {\n j = h(j, i[k]);\n };\n k++;\n };\n return j;\n };\n e.exports = g;\n});\n__d(\"FacebarStructuredFragment\", [], function(a, b, c, d, e, f) {\n function g(i, j) {\n if ((i && j)) {\n return (i.toLowerCase() == j.toLowerCase());\n }\n else return (!i && !j)\n ;\n };\n function h(i) {\n this._text = String(i.text);\n this._uid = (i.uid ? String(i.uid) : null);\n this._type = (i.type ? String(i.type) : null);\n this._typeParts = null;\n };\n h.prototype.getText = function() {\n return this._text;\n };\n h.prototype.getUID = function() {\n return this._uid;\n };\n h.prototype.getType = function() {\n return this._type;\n };\n h.prototype.getTypePart = function(i) {\n return this._getTypeParts()[i];\n };\n h.prototype.getLength = function() {\n return this._text.length;\n };\n h.prototype.isType = function(i) {\n for (var j = 0; (j < arguments.length); j++) {\n if (!g(arguments[j], this.getTypePart(j))) {\n return false\n };\n };\n return true;\n };\n h.prototype.isWhitespace = function() {\n return (/^\\s*$/).test(this._text);\n };\n h.prototype.toStruct = function() {\n return {\n text: this._text,\n type: this._type,\n uid: this._uid\n };\n };\n h.prototype.getHash = function(i) {\n var j = ((i != null) ? this._getTypeParts().slice(0, i).join(\":\") : this._type);\n return ((j + \"::\") + this._text);\n };\n h.prototype._getTypeParts = function() {\n if ((this._typeParts === null)) {\n this._typeParts = (this._type ? this._type.split(\":\") : []);\n };\n return this._typeParts;\n };\n e.exports = h;\n});\n__d(\"FacebarStructuredText\", [\"createArrayFrom\",\"foldl\",\"FacebarStructuredFragment\",], function(a, b, c, d, e, f) {\n var g = b(\"createArrayFrom\"), h = b(\"foldl\"), i = b(\"FacebarStructuredFragment\"), j = /\\s+$/;\n function k(o) {\n if (!o) {\n return [];\n }\n else if ((o instanceof n)) {\n return o.toArray();\n }\n else return g(o).map(function(p) {\n return new i(p);\n })\n \n ;\n };\n function l(o) {\n return new i({\n text: o,\n type: \"text\"\n });\n };\n function m(o, p, q) {\n var r = o.getText(), s = r.replace(p, q);\n if ((r != s)) {\n return new i({\n text: s,\n type: o.getType(),\n uid: o.getUID()\n });\n }\n else return o\n ;\n };\n function n(o) {\n this._fragments = (o || []);\n this._hash = null;\n };\n n.prototype.matches = function(o, p) {\n if (o) {\n var q = this._fragments, r = o._fragments;\n return ((q.length == r.length) && !q.some(function(s, t) {\n if ((!p && s.getUID())) {\n return (s.getUID() != r[t].getUID());\n }\n else return ((s.getText() != r[t].getText()) || (s.getType() != r[t].getType()))\n ;\n }));\n }\n ;\n return false;\n };\n n.prototype.trim = function() {\n var o = null, p = null;\n this.forEach(function(r, s) {\n if (!r.isWhitespace()) {\n if ((o === null)) {\n o = s;\n };\n p = s;\n }\n ;\n });\n if ((p !== null)) {\n var q = this._fragments.slice(o, (p + 1));\n q.push(m(q.pop(), j, \"\"));\n return new n(q);\n }\n else return new n([])\n ;\n };\n n.prototype.pad = function() {\n var o = this.getFragment(-1);\n if (((o && !j.test(o.getText())) && (o.getText() !== \"\"))) {\n return new n(this._fragments.concat(l(\" \")));\n }\n else return this\n ;\n };\n n.prototype.forEach = function(o) {\n this._fragments.forEach(o);\n return this;\n };\n n.prototype.matchType = function(o) {\n var p = null;\n for (var q = 0; (q < this._fragments.length); q++) {\n var r = this._fragments[q], s = r.isType.apply(r, arguments);\n if ((s && !p)) {\n p = r;\n }\n else if ((s || !r.isWhitespace())) {\n return null\n }\n ;\n };\n return p;\n };\n n.prototype.hasType = function(o) {\n var p = arguments;\n return this._fragments.some(function(q) {\n return (!q.isWhitespace() && q.isType.apply(q, p));\n });\n };\n n.prototype.isEmptyOrWhitespace = function() {\n return !this._fragments.some(function(o) {\n return !o.isWhitespace();\n });\n };\n n.prototype.isEmpty = function() {\n return (this.getLength() === 0);\n };\n n.prototype.getFragment = function(o) {\n return this._fragments[((o >= 0) ? o : (this._fragments.length + o))];\n };\n n.prototype.getCount = function() {\n return this._fragments.length;\n };\n n.prototype.getLength = function() {\n return h(function(o, p) {\n return (o + p.getLength());\n }, this._fragments, 0);\n };\n n.prototype.toStruct = function() {\n return this._fragments.map(function(o) {\n return o.toStruct();\n });\n };\n n.prototype.toArray = function() {\n return this._fragments.slice();\n };\n n.prototype.toString = function() {\n return this._fragments.map(function(o) {\n return o.getText();\n }).join(\"\");\n };\n n.prototype.getHash = function() {\n if ((this._hash === null)) {\n this._hash = this._fragments.map(function(o) {\n if (o.getUID()) {\n return ((\"[[\" + o.getHash(1)) + \"]]\");\n }\n else return o.getText()\n ;\n }).join(\"\");\n };\n return this._hash;\n };\n n.fromStruct = function(o) {\n return new n(k(o));\n };\n n.fromString = function(o) {\n return new n([l(o),]);\n };\n e.exports = n;\n});\n__d(\"FacebarNavigation\", [\"Arbiter\",\"csx\",\"DOMQuery\",\"FacebarStructuredText\",\"Input\",\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"csx\"), i = b(\"DOMQuery\"), j = b(\"FacebarStructuredText\"), k = b(\"Input\"), l = b(\"URI\"), m = null, n = null, o = null, p = false, q = true, r = (function() {\n var v = {\n }, w = function(x) {\n return (\"uri-\" + x.getQualifiedURI().toString());\n };\n return {\n set: function(x, y) {\n v[w(x)] = y;\n },\n get: function(x) {\n return v[w(x)];\n }\n };\n })();\n function s(v, w) {\n o = v;\n p = w;\n q = false;\n t();\n };\n function t() {\n if (q) {\n return;\n }\n else if (n) {\n (p && n.pageTransition());\n n.setPageQuery(o);\n q = true;\n }\n else if (((m && o) && !k.getValue(m))) {\n k.setValue(m, (o.structure.toString() + \" \"));\n }\n \n ;\n };\n g.subscribe(\"page_transition\", function(v, w) {\n s(r.get(w.uri), true);\n });\n var u = {\n registerInput: function(v) {\n m = i.scry(v, \".-cx-PUBLIC-uiStructuredInput__text\")[0];\n t();\n },\n registerBehavior: function(v) {\n n = v;\n t();\n },\n setPageQuery: function(v) {\n r.set(l.getNextURI(), v);\n v.structure = j.fromStruct(v.structure);\n s(v, false);\n }\n };\n e.exports = u;\n});\n__d(\"LayerRemoveOnHide\", [\"function-extensions\",\"DOM\",\"copyProperties\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"DOM\"), h = b(\"copyProperties\");\n function i(j) {\n this._layer = j;\n };\n h(i.prototype, {\n _subscription: null,\n enable: function() {\n this._subscription = this._layer.subscribe(\"hide\", g.remove.curry(this._layer.getRoot()));\n },\n disable: function() {\n if (this._subscription) {\n this._subscription.unsubscribe();\n this._subscription = null;\n }\n ;\n }\n });\n e.exports = i;\n});\n__d(\"Keys\", [], function(a, b, c, d, e, f) {\n e.exports = {\n BACKSPACE: 8,\n TAB: 9,\n RETURN: 13,\n ESC: 27,\n SPACE: 32,\n PAGE_UP: 33,\n PAGE_DOWN: 34,\n END: 35,\n HOME: 36,\n LEFT: 37,\n UP: 38,\n RIGHT: 39,\n DOWN: 40,\n DELETE: 46,\n COMMA: 188\n };\n});\n__d(\"areObjectsEqual\", [], function(a, b, c, d, e, f) {\n function g(h, i) {\n return (JSON.stringify(h) == JSON.stringify(i));\n };\n e.exports = g;\n});\n__d(\"sprintf\", [], function(a, b, c, d, e, f) {\n function g(h, i) {\n i = Array.prototype.slice.call(arguments, 1);\n var j = 0;\n return h.replace(/%s/g, function(k) {\n return i[j++];\n });\n };\n e.exports = g;\n});"); |
| // 1114 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s0a1060a4e309eb327794aa50fb03bc4e8e002205"); |
| // 1115 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"OH3xD\",]);\n}\n;\n;\n__d(\"XdArbiterBuffer\", [], function(a, b, c, d, e, f) {\n if (!a.XdArbiter) {\n a.XdArbiter = {\n _m: [],\n _p: [],\n register: function(g, h, i) {\n h = ((h || (((/^apps\\./).test(JSBNG__location.hostname) ? \"canvas\" : \"tab\"))));\n this._p.push([g,h,i,]);\n return h;\n },\n handleMessage: function(g, h) {\n this._m.push([g,h,]);\n }\n };\n }\n;\n;\n});\n__d(\"CanvasIFrameLoader\", [\"XdArbiterBuffer\",\"$\",], function(a, b, c, d, e, f) {\n b(\"XdArbiterBuffer\");\n var g = b(\"$\"), h = {\n loadFromForm: function(i) {\n i.submit();\n }\n };\n e.exports = h;\n});\n__d(\"PHPQuerySerializer\", [], function(a, b, c, d, e, f) {\n function g(n) {\n return h(n, null);\n };\n;\n function h(n, o) {\n o = ((o || \"\"));\n var p = [];\n if (((((n === null)) || ((n === undefined))))) {\n p.push(i(o));\n }\n else if (((typeof (n) == \"object\"))) {\n {\n var fin29keys = ((window.top.JSBNG_Replay.forInKeys)((n))), fin29i = (0);\n var q;\n for (; (fin29i < fin29keys.length); (fin29i++)) {\n ((q) = (fin29keys[fin29i]));\n {\n if (((n.hasOwnProperty(q) && ((n[q] !== undefined))))) {\n p.push(h(n[q], ((o ? ((((((o + \"[\")) + q)) + \"]\")) : q))));\n }\n ;\n ;\n };\n };\n };\n ;\n }\n else p.push(((((i(o) + \"=\")) + i(n))));\n \n ;\n ;\n return p.join(\"&\");\n };\n;\n function i(n) {\n return encodeURIComponent(n).replace(/%5D/g, \"]\").replace(/%5B/g, \"[\");\n };\n;\n var j = /^(\\w+)((?:\\[\\w*\\])+)=?(.*)/;\n function k(n) {\n if (!n) {\n return {\n };\n }\n ;\n ;\n var o = {\n };\n n = n.replace(/%5B/gi, \"[\").replace(/%5D/gi, \"]\");\n n = n.split(\"&\");\n var p = Object.prototype.hasOwnProperty;\n for (var q = 0, r = n.length; ((q < r)); q++) {\n var s = n[q].match(j);\n if (!s) {\n var t = n[q].split(\"=\");\n o[l(t[0])] = ((((t[1] === undefined)) ? null : l(t[1])));\n }\n else {\n var u = s[2].split(/\\]\\[|\\[|\\]/).slice(0, -1), v = s[1], w = l(((s[3] || \"\")));\n u[0] = v;\n var x = o;\n for (var y = 0; ((y < ((u.length - 1)))); y++) {\n if (u[y]) {\n if (!p.call(x, u[y])) {\n var z = ((((u[((y + 1))] && !u[((y + 1))].match(/^\\d{1,3}$/))) ? {\n } : []));\n x[u[y]] = z;\n if (((x[u[y]] !== z))) {\n return o;\n }\n ;\n ;\n }\n ;\n ;\n x = x[u[y]];\n }\n else {\n if (((u[((y + 1))] && !u[((y + 1))].match(/^\\d{1,3}$/)))) {\n x.push({\n });\n }\n else x.push([]);\n ;\n ;\n x = x[((x.length - 1))];\n }\n ;\n ;\n };\n ;\n if (((((x instanceof Array)) && ((u[((u.length - 1))] === \"\"))))) {\n x.push(w);\n }\n else x[u[((u.length - 1))]] = w;\n ;\n ;\n }\n ;\n ;\n };\n ;\n return o;\n };\n;\n function l(n) {\n return decodeURIComponent(n.replace(/\\+/g, \" \"));\n };\n;\n var m = {\n serialize: g,\n encodeComponent: i,\n deserialize: k,\n decodeComponent: l\n };\n e.exports = m;\n});\n__d(\"URIRFC3986\", [], function(a, b, c, d, e, f) {\n var g = new RegExp(((((((((((((((((((((((((\"^\" + \"([^:/?#]+:)?\")) + \"(//\")) + \"([^\\\\\\\\/?#@]*@)?\")) + \"(\")) + \"\\\\[[A-Fa-f0-9:.]+\\\\]|\")) + \"[^\\\\/?#:]*\")) + \")\")) + \"(:[0-9]*)?\")) + \")?\")) + \"([^?#]*)\")) + \"(\\\\?[^#]*)?\")) + \"(#.*)?\"))), h = {\n parse: function(i) {\n if (((i.trim() === \"\"))) {\n return null;\n }\n ;\n ;\n var j = i.match(g), k = {\n };\n k.uri = ((j[0] ? j[0] : null));\n k.scheme = ((j[1] ? j[1].substr(0, ((j[1].length - 1))) : null));\n k.authority = ((j[2] ? j[2].substr(2) : null));\n k.userinfo = ((j[3] ? j[3].substr(0, ((j[3].length - 1))) : null));\n k.host = ((j[2] ? j[4] : null));\n k.port = ((j[5] ? ((j[5].substr(1) ? parseInt(j[5].substr(1), 10) : null)) : null));\n k.path = ((j[6] ? j[6] : null));\n k.query = ((j[7] ? j[7].substr(1) : null));\n k.fragment = ((j[8] ? j[8].substr(1) : null));\n k.isGenericURI = ((((k.authority === null)) && !!k.scheme));\n return k;\n }\n };\n e.exports = h;\n});\n__d(\"createObjectFrom\", [\"hasArrayNature\",], function(a, b, c, d, e, f) {\n var g = b(\"hasArrayNature\");\n function h(i, j) {\n var k = {\n }, l = g(j);\n if (((typeof j == \"undefined\"))) {\n j = true;\n }\n ;\n ;\n for (var m = i.length; m--; ) {\n k[i[m]] = ((l ? j[m] : j));\n ;\n };\n ;\n return k;\n };\n;\n e.exports = h;\n});\n__d(\"URISchemes\", [\"createObjectFrom\",], function(a, b, c, d, e, f) {\n var g = b(\"createObjectFrom\"), h = g([\"fb\",\"fbcf\",\"fbconnect\",\"fb-messenger\",\"fbrpc\",\"ftp\",\"http\",\"https\",\"mailto\",\"itms\",\"itms-apps\",\"market\",\"svn+ssh\",\"fbstaging\",\"tel\",\"sms\",]), i = {\n isAllowed: function(j) {\n if (!j) {\n return true;\n }\n ;\n ;\n return h.hasOwnProperty(j.toLowerCase());\n }\n };\n e.exports = i;\n});\n__d(\"URIBase\", [\"PHPQuerySerializer\",\"URIRFC3986\",\"URISchemes\",\"copyProperties\",\"ex\",\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"PHPQuerySerializer\"), h = b(\"URIRFC3986\"), i = b(\"URISchemes\"), j = b(\"copyProperties\"), k = b(\"ex\"), l = b(\"invariant\"), m = new RegExp(((((\"[\\\\x00-\\\\x2c\\\\x2f\\\\x3b-\\\\x40\\\\x5c\\\\x5e\\\\x60\\\\x7b-\\\\x7f\" + \"\\\\uFDD0-\\\\uFDEF\\\\uFFF0-\\\\uFFFF\")) + \"\\\\u2047\\\\u2048\\\\uFE56\\\\uFE5F\\\\uFF03\\\\uFF0F\\\\uFF1F]\"))), n = new RegExp(((\"^(?:[^/]*:|\" + \"[\\\\x00-\\\\x1f]*/[\\\\x00-\\\\x1f]*/)\")));\n function o(q, r, s) {\n if (!r) {\n return true;\n }\n ;\n ;\n if (((r instanceof p))) {\n q.setProtocol(r.getProtocol());\n q.setDomain(r.getDomain());\n q.setPort(r.getPort());\n q.setPath(r.getPath());\n q.setQueryData(g.deserialize(g.serialize(r.getQueryData())));\n q.setFragment(r.getFragment());\n return true;\n }\n ;\n ;\n r = r.toString();\n var t = ((h.parse(r) || {\n }));\n if (((!s && !i.isAllowed(t.scheme)))) {\n return false;\n }\n ;\n ;\n q.setProtocol(((t.scheme || \"\")));\n if (((!s && m.test(t.host)))) {\n return false;\n }\n ;\n ;\n q.setDomain(((t.host || \"\")));\n q.setPort(((t.port || \"\")));\n q.setPath(((t.path || \"\")));\n if (s) {\n q.setQueryData(((g.deserialize(t.query) || {\n })));\n }\n else try {\n q.setQueryData(((g.deserialize(t.query) || {\n })));\n } catch (u) {\n return false;\n }\n ;\n ;\n q.setFragment(((t.fragment || \"\")));\n if (((t.userinfo !== null))) {\n if (s) {\n throw new Error(k(\"URI.parse: invalid URI (userinfo is not allowed in a URI): %s\", q.toString()));\n }\n else return false\n ;\n }\n ;\n ;\n if (((!q.getDomain() && ((q.getPath().indexOf(\"\\\\\") !== -1))))) {\n if (s) {\n throw new Error(k(\"URI.parse: invalid URI (no domain but multiple back-slashes): %s\", q.toString()));\n }\n else return false\n ;\n }\n ;\n ;\n if (((!q.getProtocol() && n.test(r)))) {\n if (s) {\n throw new Error(k(\"URI.parse: invalid URI (unsafe protocol-relative URLs): %s\", q.toString()));\n }\n else return false\n ;\n }\n ;\n ;\n return true;\n };\n;\n function p(q) {\n this.$URIBase0 = \"\";\n this.$URIBase1 = \"\";\n this.$URIBase2 = \"\";\n this.$URIBase3 = \"\";\n this.$URIBase4 = \"\";\n this.$URIBase5 = {\n };\n o(this, q, true);\n };\n;\n p.prototype.setProtocol = function(q) {\n l(i.isAllowed(q));\n this.$URIBase0 = q;\n return this;\n };\n p.prototype.getProtocol = function(q) {\n return this.$URIBase0;\n };\n p.prototype.setSecure = function(q) {\n return this.setProtocol(((q ? \"https\" : \"http\")));\n };\n p.prototype.isSecure = function() {\n return ((this.getProtocol() === \"https\"));\n };\n p.prototype.setDomain = function(q) {\n if (m.test(q)) {\n throw new Error(k(\"URI.setDomain: unsafe domain specified: %s for url %s\", q, this.toString()));\n }\n ;\n ;\n this.$URIBase1 = q;\n return this;\n };\n p.prototype.getDomain = function() {\n return this.$URIBase1;\n };\n p.prototype.setPort = function(q) {\n this.$URIBase2 = q;\n return this;\n };\n p.prototype.getPort = function() {\n return this.$URIBase2;\n };\n p.prototype.setPath = function(q) {\n this.$URIBase3 = q;\n return this;\n };\n p.prototype.getPath = function() {\n return this.$URIBase3;\n };\n p.prototype.addQueryData = function(q, r) {\n if (((q instanceof Object))) {\n j(this.$URIBase5, q);\n }\n else this.$URIBase5[q] = r;\n ;\n ;\n return this;\n };\n p.prototype.setQueryData = function(q) {\n this.$URIBase5 = q;\n return this;\n };\n p.prototype.getQueryData = function() {\n return this.$URIBase5;\n };\n p.prototype.removeQueryData = function(q) {\n if (!Array.isArray(q)) {\n q = [q,];\n }\n ;\n ;\n for (var r = 0, s = q.length; ((r < s)); ++r) {\n delete this.$URIBase5[q[r]];\n ;\n };\n ;\n return this;\n };\n p.prototype.setFragment = function(q) {\n this.$URIBase4 = q;\n return this;\n };\n p.prototype.getFragment = function() {\n return this.$URIBase4;\n };\n p.prototype.toString = function() {\n var q = \"\";\n if (this.$URIBase0) {\n q += ((this.$URIBase0 + \"://\"));\n }\n ;\n ;\n if (this.$URIBase1) {\n q += this.$URIBase1;\n }\n ;\n ;\n if (this.$URIBase2) {\n q += ((\":\" + this.$URIBase2));\n }\n ;\n ;\n if (this.$URIBase3) {\n q += this.$URIBase3;\n }\n else if (q) {\n q += \"/\";\n }\n \n ;\n ;\n var r = g.serialize(this.$URIBase5);\n if (r) {\n q += ((\"?\" + r));\n }\n ;\n ;\n if (this.$URIBase4) {\n q += ((\"#\" + this.$URIBase4));\n }\n ;\n ;\n return q;\n };\n p.prototype.getOrigin = function() {\n return ((((((this.$URIBase0 + \"://\")) + this.$URIBase1)) + ((this.$URIBase2 ? ((\":\" + this.$URIBase2)) : \"\"))));\n };\n p.isValidURI = function(q) {\n return o(new p(), q, false);\n };\n e.exports = p;\n});\n__d(\"URI\", [\"URIBase\",\"copyProperties\",\"goURI\",], function(a, b, c, d, e, f) {\n var g = b(\"URIBase\"), h = b(\"copyProperties\"), i = b(\"goURI\");\n {\n var fin30keys = ((window.top.JSBNG_Replay.forInKeys)((g))), fin30i = (0);\n var j;\n for (; (fin30i < fin30keys.length); (fin30i++)) {\n ((j) = (fin30keys[fin30i]));\n {\n if (((g.hasOwnProperty(j) && ((j !== \"_metaprototype\"))))) {\n l[j] = g[j];\n }\n ;\n ;\n };\n };\n };\n;\n var k = ((((g === null)) ? null : g.prototype));\n l.prototype = Object.create(k);\n l.prototype.constructor = l;\n l.__superConstructor__ = g;\n function l(m) {\n if (!((this instanceof l))) {\n return new l(((m || window.JSBNG__location.href)));\n }\n ;\n ;\n g.call(this, ((m || \"\")));\n };\n;\n l.prototype.setPath = function(m) {\n this.path = m;\n return k.setPath.call(this, m);\n };\n l.prototype.getPath = function() {\n var m = k.getPath.call(this);\n if (m) {\n return m.replace(/^\\/+/, \"/\");\n }\n ;\n ;\n return m;\n };\n l.prototype.setProtocol = function(m) {\n this.protocol = m;\n return k.setProtocol.call(this, m);\n };\n l.prototype.setDomain = function(m) {\n this.domain = m;\n return k.setDomain.call(this, m);\n };\n l.prototype.setPort = function(m) {\n this.port = m;\n return k.setPort.call(this, m);\n };\n l.prototype.setFragment = function(m) {\n this.fragment = m;\n return k.setFragment.call(this, m);\n };\n l.prototype.isEmpty = function() {\n return !((((((((((this.getPath() || this.getProtocol())) || this.getDomain())) || this.getPort())) || ((Object.keys(this.getQueryData()).length > 0)))) || this.getFragment()));\n };\n l.prototype.valueOf = function() {\n return this.toString();\n };\n l.prototype.isFacebookURI = function() {\n if (!l.$URI5) {\n l.$URI5 = new RegExp(\"(^|\\\\.)facebook\\\\.com$\", \"i\");\n }\n ;\n ;\n if (this.isEmpty()) {\n return false;\n }\n ;\n ;\n if (((!this.getDomain() && !this.getProtocol()))) {\n return true;\n }\n ;\n ;\n return (((([\"http\",\"https\",].indexOf(this.getProtocol()) !== -1)) && l.$URI5.test(this.getDomain())));\n };\n l.prototype.getRegisteredDomain = function() {\n if (!this.getDomain()) {\n return \"\";\n }\n ;\n ;\n if (!this.isFacebookURI()) {\n return null;\n }\n ;\n ;\n var m = this.getDomain().split(\".\"), n = m.indexOf(\"facebook\");\n return m.slice(n).join(\".\");\n };\n l.prototype.getUnqualifiedURI = function() {\n return new l(this).setProtocol(null).setDomain(null).setPort(null);\n };\n l.prototype.getQualifiedURI = function() {\n return new l(this).$URI6();\n };\n l.prototype.$URI6 = function() {\n if (!this.getDomain()) {\n var m = l();\n this.setProtocol(m.getProtocol()).setDomain(m.getDomain()).setPort(m.getPort());\n }\n ;\n ;\n return this;\n };\n l.prototype.isSameOrigin = function(m) {\n var n = ((m || window.JSBNG__location.href));\n if (!((n instanceof l))) {\n n = new l(n.toString());\n }\n ;\n ;\n if (((this.isEmpty() || n.isEmpty()))) {\n return false;\n }\n ;\n ;\n if (((this.getProtocol() && ((this.getProtocol() != n.getProtocol()))))) {\n return false;\n }\n ;\n ;\n if (((this.getDomain() && ((this.getDomain() != n.getDomain()))))) {\n return false;\n }\n ;\n ;\n if (((this.getPort() && ((this.getPort() != n.getPort()))))) {\n return false;\n }\n ;\n ;\n return true;\n };\n l.prototype.go = function(m) {\n i(this, m);\n };\n l.prototype.setSubdomain = function(m) {\n var n = this.$URI6().getDomain().split(\".\");\n if (((n.length <= 2))) {\n n.unshift(m);\n }\n else n[0] = m;\n ;\n ;\n return this.setDomain(n.join(\".\"));\n };\n l.prototype.getSubdomain = function() {\n if (!this.getDomain()) {\n return \"\";\n }\n ;\n ;\n var m = this.getDomain().split(\".\");\n if (((m.length <= 2))) {\n return \"\";\n }\n else return m[0]\n ;\n };\n h(l, {\n getRequestURI: function(m, n) {\n m = ((((m === undefined)) || m));\n var o = a.PageTransitions;\n if (((((m && o)) && o.isInitialized()))) {\n return o.getCurrentURI(!!n).getQualifiedURI();\n }\n else return new l(window.JSBNG__location.href)\n ;\n },\n getMostRecentURI: function() {\n var m = a.PageTransitions;\n if (((m && m.isInitialized()))) {\n return m.getMostRecentURI().getQualifiedURI();\n }\n else return new l(window.JSBNG__location.href)\n ;\n },\n getNextURI: function() {\n var m = a.PageTransitions;\n if (((m && m.isInitialized()))) {\n return m.getNextURI().getQualifiedURI();\n }\n else return new l(window.JSBNG__location.href)\n ;\n },\n expression: /(((\\w+):\\/\\/)([^\\/:]*)(:(\\d+))?)?([^#?]*)(\\?([^#]*))?(#(.*))?/,\n arrayQueryExpression: /^(\\w+)((?:\\[\\w*\\])+)=?(.*)/,\n explodeQuery: function(m) {\n if (!m) {\n return {\n };\n }\n ;\n ;\n var n = {\n };\n m = m.replace(/%5B/gi, \"[\").replace(/%5D/gi, \"]\");\n m = m.split(\"&\");\n var o = Object.prototype.hasOwnProperty;\n for (var p = 0, q = m.length; ((p < q)); p++) {\n var r = m[p].match(l.arrayQueryExpression);\n if (!r) {\n var s = m[p].split(\"=\");\n n[l.decodeComponent(s[0])] = ((((s[1] === undefined)) ? null : l.decodeComponent(s[1])));\n }\n else {\n var t = r[2].split(/\\]\\[|\\[|\\]/).slice(0, -1), u = r[1], v = l.decodeComponent(((r[3] || \"\")));\n t[0] = u;\n var w = n;\n for (var x = 0; ((x < ((t.length - 1)))); x++) {\n if (t[x]) {\n if (!o.call(w, t[x])) {\n var y = ((((t[((x + 1))] && !t[((x + 1))].match(/^\\d{1,3}$/))) ? {\n } : []));\n w[t[x]] = y;\n if (((w[t[x]] !== y))) {\n return n;\n }\n ;\n ;\n }\n ;\n ;\n w = w[t[x]];\n }\n else {\n if (((t[((x + 1))] && !t[((x + 1))].match(/^\\d{1,3}$/)))) {\n w.push({\n });\n }\n else w.push([]);\n ;\n ;\n w = w[((w.length - 1))];\n }\n ;\n ;\n };\n ;\n if (((((w instanceof Array)) && ((t[((t.length - 1))] === \"\"))))) {\n w.push(v);\n }\n else w[t[((t.length - 1))]] = v;\n ;\n ;\n }\n ;\n ;\n };\n ;\n return n;\n },\n implodeQuery: function(m, n, o) {\n n = ((n || \"\"));\n if (((o === undefined))) {\n o = true;\n }\n ;\n ;\n var p = [];\n if (((((m === null)) || ((m === undefined))))) {\n p.push(((o ? l.encodeComponent(n) : n)));\n }\n else if (((m instanceof Array))) {\n for (var q = 0; ((q < m.length)); ++q) {\n try {\n if (((m[q] !== undefined))) {\n p.push(l.implodeQuery(m[q], ((n ? ((((((n + \"[\")) + q)) + \"]\")) : q)), o));\n }\n ;\n ;\n } catch (r) {\n \n };\n ;\n };\n ;\n }\n else if (((typeof (m) == \"object\"))) {\n if (((((\"nodeName\" in m)) && ((\"nodeType\" in m))))) {\n p.push(\"{node}\");\n }\n else {\n var fin31keys = ((window.top.JSBNG_Replay.forInKeys)((m))), fin31i = (0);\n var s;\n for (; (fin31i < fin31keys.length); (fin31i++)) {\n ((s) = (fin31keys[fin31i]));\n {\n try {\n if (((m[s] !== undefined))) {\n p.push(l.implodeQuery(m[s], ((n ? ((((((n + \"[\")) + s)) + \"]\")) : s)), o));\n }\n ;\n ;\n } catch (r) {\n \n };\n ;\n };\n };\n }\n ;\n ;\n }\n else if (o) {\n p.push(((((l.encodeComponent(n) + \"=\")) + l.encodeComponent(m))));\n }\n else p.push(((((n + \"=\")) + m)));\n \n \n \n ;\n ;\n return p.join(\"&\");\n },\n encodeComponent: function(m) {\n return encodeURIComponent(m).replace(/%5D/g, \"]\").replace(/%5B/g, \"[\");\n },\n decodeComponent: function(m) {\n return decodeURIComponent(m.replace(/\\+/g, \" \"));\n }\n });\n e.exports = l;\n});\n__d(\"AsyncSignal\", [\"Env\",\"ErrorUtils\",\"QueryString\",\"URI\",\"XHR\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Env\"), h = b(\"ErrorUtils\"), i = b(\"QueryString\"), j = b(\"URI\"), k = b(\"XHR\"), l = b(\"copyProperties\");\n function m(n, o) {\n this.data = ((o || {\n }));\n if (((g.tracking_domain && ((n.charAt(0) == \"/\"))))) {\n n = ((g.tracking_domain + n));\n }\n ;\n ;\n this.uri = n;\n };\n;\n m.prototype.setHandler = function(n) {\n this.handler = n;\n return this;\n };\n m.prototype.send = function() {\n var n = this.handler, o = this.data, p = new JSBNG__Image();\n if (n) {\n p.JSBNG__onload = p.JSBNG__onerror = function() {\n h.applyWithGuard(n, null, [((p.height == 1)),]);\n };\n }\n ;\n ;\n o.asyncSignal = ((((((Math.JSBNG__random() * 10000)) | 0)) + 1));\n var q = new j(this.uri).isFacebookURI();\n l(o, k.getAsyncParams(((q ? \"POST\" : \"GET\"))));\n p.src = i.appendToUrl(this.uri, o);\n return this;\n };\n e.exports = m;\n});\n__d(\"DOMQuery\", [\"JSBNG__CSS\",\"UserAgent\",\"createArrayFrom\",\"createObjectFrom\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = b(\"UserAgent\"), i = b(\"createArrayFrom\"), j = b(\"createObjectFrom\"), k = b(\"ge\"), l = null;\n function m(o, p) {\n return ((o.hasAttribute ? o.hasAttribute(p) : ((o.getAttribute(p) !== null))));\n };\n;\n var n = {\n JSBNG__find: function(o, p) {\n var q = n.scry(o, p);\n return q[0];\n },\n scry: function(o, p) {\n if (((!o || !o.getElementsByTagName))) {\n return [];\n }\n ;\n ;\n var q = p.split(\" \"), r = [o,];\n for (var s = 0; ((s < q.length)); s++) {\n if (((r.length === 0))) {\n break;\n }\n ;\n ;\n if (((q[s] === \"\"))) {\n continue;\n }\n ;\n ;\n var t = q[s], u = q[s], v = [], w = false;\n if (((t.charAt(0) == \"^\"))) {\n if (((s === 0))) {\n w = true;\n t = t.slice(1);\n }\n else return []\n ;\n }\n ;\n ;\n t = t.replace(/\\[(?:[^=\\]]*=(?:\"[^\"]*\"|'[^']*'))?|[.#]/g, \" $&\");\n var x = t.split(\" \"), y = ((x[0] || \"*\")), z = ((y == \"*\")), aa = ((x[1] && ((x[1].charAt(0) == \"#\"))));\n if (aa) {\n var ba = k(x[1].slice(1), o, y);\n if (((ba && ((z || ((ba.tagName.toLowerCase() == y))))))) {\n for (var ca = 0; ((ca < r.length)); ca++) {\n if (((w && n.contains(ba, r[ca])))) {\n v = [ba,];\n break;\n }\n else if (((((JSBNG__document == r[ca])) || n.contains(r[ca], ba)))) {\n v = [ba,];\n break;\n }\n \n ;\n ;\n };\n }\n ;\n ;\n }\n else {\n var da = [], ea = r.length, fa, ga = ((((!w && ((u.indexOf(\"[\") < 0)))) && JSBNG__document.querySelectorAll));\n for (var ha = 0; ((ha < ea)); ha++) {\n if (w) {\n fa = [];\n var ia = r[ha].parentNode;\n while (n.isElementNode(ia)) {\n if (((z || ((ia.tagName.toLowerCase() == y))))) {\n fa.push(ia);\n }\n ;\n ;\n ia = ia.parentNode;\n };\n ;\n }\n else if (ga) {\n fa = r[ha].querySelectorAll(u);\n }\n else fa = r[ha].getElementsByTagName(y);\n \n ;\n ;\n var ja = fa.length;\n for (var ka = 0; ((ka < ja)); ka++) {\n da.push(fa[ka]);\n ;\n };\n ;\n };\n ;\n if (!ga) {\n for (var la = 1; ((la < x.length)); la++) {\n var ma = x[la], na = ((ma.charAt(0) == \".\")), oa = ma.substring(1);\n for (ha = 0; ((ha < da.length)); ha++) {\n var pa = da[ha];\n if (((!pa || ((pa.nodeType !== 1))))) {\n continue;\n }\n ;\n ;\n if (na) {\n if (!g.hasClass(pa, oa)) {\n delete da[ha];\n }\n ;\n ;\n continue;\n }\n else {\n var qa = ma.slice(1, ((ma.length - 1)));\n if (((qa.indexOf(\"=\") == -1))) {\n if (!m(pa, qa)) {\n delete da[ha];\n continue;\n }\n ;\n ;\n }\n else {\n var ra = qa.split(\"=\"), sa = ra[0], ta = ra[1];\n ta = ta.slice(1, ((ta.length - 1)));\n if (((pa.getAttribute(sa) != ta))) {\n delete da[ha];\n continue;\n }\n ;\n ;\n }\n ;\n ;\n }\n ;\n ;\n };\n ;\n };\n }\n ;\n ;\n for (ha = 0; ((ha < da.length)); ha++) {\n if (da[ha]) {\n v.push(da[ha]);\n if (w) {\n break;\n }\n ;\n ;\n }\n ;\n ;\n };\n ;\n }\n ;\n ;\n r = v;\n };\n ;\n return r;\n },\n getText: function(o) {\n if (n.isTextNode(o)) {\n return o.data;\n }\n else if (n.isElementNode(o)) {\n if (((l === null))) {\n var p = JSBNG__document.createElement(\"div\");\n l = ((((p.textContent != null)) ? \"textContent\" : \"innerText\"));\n }\n ;\n ;\n return o[l];\n }\n else return \"\"\n \n ;\n },\n JSBNG__getSelection: function() {\n var o = window.JSBNG__getSelection, p = JSBNG__document.selection;\n if (o) {\n return ((o() + \"\"));\n }\n else if (p) {\n return p.createRange().text;\n }\n \n ;\n ;\n return null;\n },\n contains: function(o, p) {\n o = k(o);\n p = k(p);\n if (((!o || !p))) {\n return false;\n }\n else if (((o === p))) {\n return true;\n }\n else if (n.isTextNode(o)) {\n return false;\n }\n else if (n.isTextNode(p)) {\n return n.contains(o, p.parentNode);\n }\n else if (o.contains) {\n return o.contains(p);\n }\n else if (o.compareDocumentPosition) {\n return !!((o.compareDocumentPosition(p) & 16));\n }\n else return false\n \n \n \n \n \n ;\n },\n getRootElement: function() {\n var o = null;\n if (((window.Quickling && Quickling.isActive()))) {\n o = k(\"JSBNG__content\");\n }\n ;\n ;\n return ((o || JSBNG__document.body));\n },\n isNode: function(o) {\n return !!((o && ((((typeof JSBNG__Node !== \"undefined\")) ? ((o instanceof JSBNG__Node)) : ((((((typeof o == \"object\")) && ((typeof o.nodeType == \"number\")))) && ((typeof o.nodeName == \"string\"))))))));\n },\n isNodeOfType: function(o, p) {\n var q = i(p).join(\"|\").toUpperCase().split(\"|\"), r = j(q);\n return ((n.isNode(o) && ((o.nodeName in r))));\n },\n isElementNode: function(o) {\n return ((n.isNode(o) && ((o.nodeType == 1))));\n },\n isTextNode: function(o) {\n return ((n.isNode(o) && ((o.nodeType == 3))));\n },\n isInputNode: function(o) {\n return ((n.isNodeOfType(o, [\"input\",\"textarea\",]) || ((o.contentEditable === \"true\"))));\n },\n getDocumentScrollElement: function(o) {\n o = ((o || JSBNG__document));\n var p = ((h.chrome() || h.webkit()));\n return ((((!p && ((o.compatMode === \"CSS1Compat\")))) ? o.documentElement : o.body));\n }\n };\n e.exports = n;\n});\n__d(\"DataStore\", [], function(a, b, c, d, e, f) {\n var g = {\n }, h = 1;\n function i(l) {\n if (((typeof l == \"string\"))) {\n return ((\"str_\" + l));\n }\n else return ((\"elem_\" + ((l.__FB_TOKEN || (l.__FB_TOKEN = [h++,])))[0]))\n ;\n };\n;\n function j(l) {\n var m = i(l);\n return ((g[m] || (g[m] = {\n })));\n };\n;\n var k = {\n set: function(l, m, n) {\n if (!l) {\n throw new TypeError(((\"DataStore.set: namespace is required, got \" + (typeof l))));\n }\n ;\n ;\n var o = j(l);\n o[m] = n;\n return l;\n },\n get: function(l, m, n) {\n if (!l) {\n throw new TypeError(((\"DataStore.get: namespace is required, got \" + (typeof l))));\n }\n ;\n ;\n var o = j(l), p = o[m];\n if (((((typeof p === \"undefined\")) && l.getAttribute))) {\n if (((l.hasAttribute && !l.hasAttribute(((\"data-\" + m)))))) {\n p = undefined;\n }\n else {\n var q = l.getAttribute(((\"data-\" + m)));\n p = ((((null === q)) ? undefined : q));\n }\n ;\n }\n ;\n ;\n if (((((n !== undefined)) && ((p === undefined))))) {\n p = o[m] = n;\n }\n ;\n ;\n return p;\n },\n remove: function(l, m) {\n if (!l) {\n throw new TypeError(((\"DataStore.remove: namespace is required, got \" + (typeof l))));\n }\n ;\n ;\n var n = j(l), o = n[m];\n delete n[m];\n return o;\n },\n purge: function(l) {\n delete g[i(l)];\n }\n };\n e.exports = k;\n});\n__d(\"DOMEvent\", [\"copyProperties\",\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"invariant\");\n function i(j) {\n this.JSBNG__event = ((j || window.JSBNG__event));\n h(((typeof (this.JSBNG__event.srcElement) != \"unknown\")));\n this.target = ((this.JSBNG__event.target || this.JSBNG__event.srcElement));\n };\n;\n i.killThenCall = function(j) {\n return function(k) {\n new i(k).kill();\n return j();\n };\n };\n g(i.prototype, {\n preventDefault: function() {\n var j = this.JSBNG__event;\n if (j.preventDefault) {\n j.preventDefault();\n if (!((\"defaultPrevented\" in j))) {\n j.defaultPrevented = true;\n }\n ;\n ;\n }\n else j.returnValue = false;\n ;\n ;\n return this;\n },\n isDefaultPrevented: function() {\n var j = this.JSBNG__event;\n return ((((\"defaultPrevented\" in j)) ? j.defaultPrevented : ((j.returnValue === false))));\n },\n stopPropagation: function() {\n var j = this.JSBNG__event;\n ((j.stopPropagation ? j.stopPropagation() : j.cancelBubble = true));\n return this;\n },\n kill: function() {\n this.stopPropagation().preventDefault();\n return this;\n }\n });\n e.exports = i;\n});\n__d(\"getObjectValues\", [\"hasArrayNature\",], function(a, b, c, d, e, f) {\n var g = b(\"hasArrayNature\");\n function h(i) {\n var j = [];\n {\n var fin32keys = ((window.top.JSBNG_Replay.forInKeys)((i))), fin32i = (0);\n var k;\n for (; (fin32i < fin32keys.length); (fin32i++)) {\n ((k) = (fin32keys[fin32i]));\n {\n j.push(i[k]);\n ;\n };\n };\n };\n ;\n return j;\n };\n;\n e.exports = h;\n});\n__d(\"JSBNG__Event\", [\"event-form-bubbling\",\"Arbiter\",\"DataStore\",\"DOMQuery\",\"DOMEvent\",\"ErrorUtils\",\"Parent\",\"UserAgent\",\"$\",\"copyProperties\",\"getObjectValues\",], function(a, b, c, d, e, f) {\n b(\"event-form-bubbling\");\n var g = b(\"Arbiter\"), h = b(\"DataStore\"), i = b(\"DOMQuery\"), j = b(\"DOMEvent\"), k = b(\"ErrorUtils\"), l = b(\"Parent\"), m = b(\"UserAgent\"), n = b(\"$\"), o = b(\"copyProperties\"), p = b(\"getObjectValues\"), q = a.JSBNG__Event;\n q.DATASTORE_KEY = \"JSBNG__Event.listeners\";\n if (!q.prototype) {\n q.prototype = {\n };\n }\n;\n;\n function r(ca) {\n if (((((((ca.type === \"click\")) || ((ca.type === \"mouseover\")))) || ((ca.type === \"keydown\"))))) {\n g.inform(\"Event/stop\", {\n JSBNG__event: ca\n });\n }\n ;\n ;\n };\n;\n function s(ca, da, ea) {\n this.target = ca;\n this.type = da;\n this.data = ea;\n };\n;\n o(s.prototype, {\n getData: function() {\n this.data = ((this.data || {\n }));\n return this.data;\n },\n JSBNG__stop: function() {\n return q.JSBNG__stop(this);\n },\n prevent: function() {\n return q.prevent(this);\n },\n isDefaultPrevented: function() {\n return q.isDefaultPrevented(this);\n },\n kill: function() {\n return q.kill(this);\n },\n getTarget: function() {\n return ((new j(this).target || null));\n }\n });\n function t(ca) {\n if (((ca instanceof s))) {\n return ca;\n }\n ;\n ;\n if (!ca) {\n if (((!window.JSBNG__addEventListener && JSBNG__document.createEventObject))) {\n ca = ((window.JSBNG__event ? JSBNG__document.createEventObject(window.JSBNG__event) : {\n }));\n }\n else ca = {\n };\n ;\n }\n ;\n ;\n if (!ca._inherits_from_prototype) {\n {\n var fin33keys = ((window.top.JSBNG_Replay.forInKeys)((q.prototype))), fin33i = (0);\n var da;\n for (; (fin33i < fin33keys.length); (fin33i++)) {\n ((da) = (fin33keys[fin33i]));\n {\n try {\n ca[da] = q.prototype[da];\n } catch (ea) {\n \n };\n ;\n };\n };\n };\n }\n ;\n ;\n return ca;\n };\n;\n o(q.prototype, {\n _inherits_from_prototype: true,\n getRelatedTarget: function() {\n var ca = ((this.relatedTarget || ((((this.fromElement === this.srcElement)) ? this.toElement : this.fromElement))));\n return ((((ca && ca.nodeType)) ? ca : null));\n },\n getModifiers: function() {\n var ca = {\n control: !!this.ctrlKey,\n shift: !!this.shiftKey,\n alt: !!this.altKey,\n meta: !!this.metaKey\n };\n ca.access = ((m.osx() ? ca.control : ca.alt));\n ca.any = ((((((ca.control || ca.shift)) || ca.alt)) || ca.meta));\n return ca;\n },\n isRightClick: function() {\n if (this.which) {\n return ((this.which === 3));\n }\n ;\n ;\n return ((this.button && ((this.button === 2))));\n },\n isMiddleClick: function() {\n if (this.which) {\n return ((this.which === 2));\n }\n ;\n ;\n return ((this.button && ((this.button === 4))));\n },\n isDefaultRequested: function() {\n return ((((this.getModifiers().any || this.isMiddleClick())) || this.isRightClick()));\n }\n });\n o(q.prototype, s.prototype);\n o(q, {\n listen: function(ca, da, ea, fa) {\n if (((typeof ca == \"string\"))) {\n ca = n(ca);\n }\n ;\n ;\n if (((typeof fa == \"undefined\"))) {\n fa = q.Priority.NORMAL;\n }\n ;\n ;\n if (((typeof da == \"object\"))) {\n var ga = {\n };\n {\n var fin34keys = ((window.top.JSBNG_Replay.forInKeys)((da))), fin34i = (0);\n var ha;\n for (; (fin34i < fin34keys.length); (fin34i++)) {\n ((ha) = (fin34keys[fin34i]));\n {\n ga[ha] = q.listen(ca, ha, da[ha], fa);\n ;\n };\n };\n };\n ;\n return ga;\n }\n ;\n ;\n if (da.match(/^on/i)) {\n throw new TypeError(((((\"Bad event name `\" + da)) + \"': use `click', not `onclick'.\")));\n }\n ;\n ;\n if (((((ca.nodeName == \"LABEL\")) && ((da == \"click\"))))) {\n var ia = ca.getElementsByTagName(\"input\");\n ca = ((((ia.length == 1)) ? ia[0] : ca));\n }\n else if (((((ca === window)) && ((da === \"JSBNG__scroll\"))))) {\n var ja = i.getDocumentScrollElement();\n if (((((ja !== JSBNG__document.documentElement)) && ((ja !== JSBNG__document.body))))) {\n ca = ja;\n }\n ;\n ;\n }\n \n ;\n ;\n var ka = h.get(ca, v, {\n });\n if (x[da]) {\n var la = x[da];\n da = la.base;\n if (la.wrap) {\n ea = la.wrap(ea);\n }\n ;\n ;\n }\n ;\n ;\n z(ca, da);\n var ma = ka[da];\n if (!((fa in ma))) {\n ma[fa] = [];\n }\n ;\n ;\n var na = ma[fa].length, oa = new ba(ea, ma[fa], na);\n ma[fa].push(oa);\n return oa;\n },\n JSBNG__stop: function(ca) {\n var da = new j(ca).stopPropagation();\n r(da.JSBNG__event);\n return ca;\n },\n prevent: function(ca) {\n new j(ca).preventDefault();\n return ca;\n },\n isDefaultPrevented: function(ca) {\n return new j(ca).isDefaultPrevented(ca);\n },\n kill: function(ca) {\n var da = new j(ca).kill();\n r(da.JSBNG__event);\n return false;\n },\n getKeyCode: function(JSBNG__event) {\n JSBNG__event = new j(JSBNG__event).JSBNG__event;\n if (!JSBNG__event) {\n return false;\n }\n ;\n ;\n switch (JSBNG__event.keyCode) {\n case 63232:\n return 38;\n case 63233:\n return 40;\n case 63234:\n return 37;\n case 63235:\n return 39;\n case 63272:\n \n case 63273:\n \n case 63275:\n return null;\n case 63276:\n return 33;\n case 63277:\n return 34;\n };\n ;\n if (JSBNG__event.shiftKey) {\n switch (JSBNG__event.keyCode) {\n case 33:\n \n case 34:\n \n case 37:\n \n case 38:\n \n case 39:\n \n case 40:\n return null;\n };\n }\n ;\n ;\n return JSBNG__event.keyCode;\n },\n getPriorities: function() {\n if (!u) {\n var ca = p(q.Priority);\n ca.sort(function(da, ea) {\n return ((da - ea));\n });\n u = ca;\n }\n ;\n ;\n return u;\n },\n fire: function(ca, da, ea) {\n var fa = new s(ca, da, ea), ga;\n do {\n var ha = q.__getHandler(ca, da);\n if (ha) {\n ga = ha(fa);\n }\n ;\n ;\n ca = ca.parentNode;\n } while (((((ca && ((ga !== false)))) && !fa.cancelBubble)));\n return ((ga !== false));\n },\n __fire: function(ca, da, JSBNG__event) {\n var ea = q.__getHandler(ca, da);\n if (ea) {\n return ea(t(JSBNG__event));\n }\n ;\n ;\n },\n __getHandler: function(ca, da) {\n return h.get(ca, ((q.DATASTORE_KEY + da)));\n },\n getPosition: function(ca) {\n ca = new j(ca).JSBNG__event;\n var da = i.getDocumentScrollElement(), ea = ((ca.clientX + da.scrollLeft)), fa = ((ca.clientY + da.scrollTop));\n return {\n x: ea,\n y: fa\n };\n }\n });\n var u = null, v = q.DATASTORE_KEY, w = function(ca) {\n return function(da) {\n if (!i.contains(this, da.getRelatedTarget())) {\n return ca.call(this, da);\n }\n ;\n ;\n };\n }, x;\n if (!window.JSBNG__navigator.msPointerEnabled) {\n x = {\n mouseenter: {\n base: \"mouseover\",\n wrap: w\n },\n mouseleave: {\n base: \"mouseout\",\n wrap: w\n }\n };\n }\n else x = {\n mousedown: {\n base: \"MSPointerDown\"\n },\n mousemove: {\n base: \"MSPointerMove\"\n },\n mouseup: {\n base: \"MSPointerUp\"\n },\n mouseover: {\n base: \"MSPointerOver\"\n },\n mouseout: {\n base: \"MSPointerOut\"\n },\n mouseenter: {\n base: \"MSPointerOver\",\n wrap: w\n },\n mouseleave: {\n base: \"MSPointerOut\",\n wrap: w\n }\n };\n;\n;\n if (m.firefox()) {\n var y = function(ca, JSBNG__event) {\n JSBNG__event = t(JSBNG__event);\n var da = JSBNG__event.getTarget();\n while (da) {\n q.__fire(da, ca, JSBNG__event);\n da = da.parentNode;\n };\n ;\n };\n JSBNG__document.documentElement.JSBNG__addEventListener(\"JSBNG__focus\", y.curry(\"focusin\"), true);\n JSBNG__document.documentElement.JSBNG__addEventListener(\"JSBNG__blur\", y.curry(\"focusout\"), true);\n }\n;\n;\n var z = function(ca, da) {\n var ea = ((\"JSBNG__on\" + da)), fa = aa.bind(ca, da), ga = h.get(ca, v);\n if (((da in ga))) {\n return;\n }\n ;\n ;\n ga[da] = {\n };\n if (ca.JSBNG__addEventListener) {\n ca.JSBNG__addEventListener(da, fa, false);\n }\n else if (ca.JSBNG__attachEvent) {\n ca.JSBNG__attachEvent(ea, fa);\n }\n \n ;\n ;\n h.set(ca, ((v + da)), fa);\n if (ca[ea]) {\n var ha = ((((ca === JSBNG__document.documentElement)) ? q.Priority._BUBBLE : q.Priority.TRADITIONAL)), ia = ca[ea];\n ca[ea] = null;\n q.listen(ca, da, ia, ha);\n }\n ;\n ;\n if (((((ca.nodeName === \"FORM\")) && ((da === \"submit\"))))) {\n q.listen(ca, da, q.__bubbleSubmit.curry(ca), q.Priority._BUBBLE);\n }\n ;\n ;\n }, aa = k.guard(function(ca, JSBNG__event) {\n JSBNG__event = t(JSBNG__event);\n if (!h.get(this, v)) {\n throw new Error(\"Bad listenHandler context.\");\n }\n ;\n ;\n var da = h.get(this, v)[ca];\n if (!da) {\n throw new Error(((((\"No registered handlers for `\" + ca)) + \"'.\")));\n }\n ;\n ;\n if (((ca == \"click\"))) {\n var ea = l.byTag(JSBNG__event.getTarget(), \"a\");\n if (window.userAction) {\n var fa = window.userAction(\"evt_ext\", ea, JSBNG__event, {\n mode: \"DEDUP\"\n }).uai_fallback(\"click\");\n if (window.ArbiterMonitor) {\n window.ArbiterMonitor.initUA(fa, [ea,]);\n }\n ;\n ;\n }\n ;\n ;\n if (window.clickRefAction) {\n window.clickRefAction(\"click\", ea, JSBNG__event);\n }\n ;\n ;\n }\n ;\n ;\n var ga = q.getPriorities();\n for (var ha = 0; ((ha < ga.length)); ha++) {\n var ia = ga[ha];\n if (((ia in da))) {\n var ja = da[ia];\n for (var ka = 0; ((ka < ja.length)); ka++) {\n if (!ja[ka]) {\n continue;\n }\n ;\n ;\n var la = ja[ka].fire(this, JSBNG__event);\n if (((la === false))) {\n return JSBNG__event.kill();\n }\n else if (JSBNG__event.cancelBubble) {\n JSBNG__event.JSBNG__stop();\n }\n \n ;\n ;\n };\n ;\n }\n ;\n ;\n };\n ;\n return JSBNG__event.returnValue;\n });\n q.Priority = {\n URGENT: -20,\n TRADITIONAL: -10,\n NORMAL: 0,\n _BUBBLE: 1000\n };\n function ba(ca, da, ea) {\n this._handler = ca;\n this._container = da;\n this._index = ea;\n };\n;\n o(ba.prototype, {\n remove: function() {\n delete this._handler;\n delete this._container[this._index];\n },\n fire: function(ca, JSBNG__event) {\n return k.applyWithGuard(this._handler, ca, [JSBNG__event,], function(da) {\n da.event_type = JSBNG__event.type;\n da.dom_element = ((ca.JSBNG__name || ca.id));\n da.category = \"eventhandler\";\n });\n }\n });\n a.$E = q.$E = t;\n e.exports = q;\n});\n__d(\"evalGlobal\", [], function(a, b, c, d, e, f) {\n function g(h) {\n if (((typeof h != \"string\"))) {\n throw new TypeError(\"JS sent to evalGlobal is not a string. Only strings are permitted.\");\n }\n ;\n ;\n if (!h) {\n return;\n }\n ;\n ;\n var i = JSBNG__document.createElement(\"script\");\n try {\n i.appendChild(JSBNG__document.createTextNode(h));\n } catch (j) {\n i.text = h;\n };\n ;\n var k = ((JSBNG__document.getElementsByTagName(\"head\")[0] || JSBNG__document.documentElement));\n k.appendChild(i);\n k.removeChild(i);\n };\n;\n e.exports = g;\n});\n__d(\"HTML\", [\"function-extensions\",\"Bootloader\",\"UserAgent\",\"copyProperties\",\"createArrayFrom\",\"emptyFunction\",\"evalGlobal\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"Bootloader\"), h = b(\"UserAgent\"), i = b(\"copyProperties\"), j = b(\"createArrayFrom\"), k = b(\"emptyFunction\"), l = b(\"evalGlobal\");\n function m(n) {\n if (((n && ((typeof n.__html == \"string\"))))) {\n n = n.__html;\n }\n ;\n ;\n if (!((this instanceof m))) {\n if (((n instanceof m))) {\n return n;\n }\n ;\n ;\n return new m(n);\n }\n ;\n ;\n this._content = n;\n this._defer = false;\n this._extra_action = \"\";\n this._nodes = null;\n this._inline_js = k;\n this._rootNode = null;\n return this;\n };\n;\n m.isHTML = function(n) {\n return ((n && ((((n instanceof m)) || ((n.__html !== undefined))))));\n };\n m.replaceJSONWrapper = function(n) {\n return ((((n && ((n.__html !== undefined)))) ? new m(n.__html) : n));\n };\n i(m.prototype, {\n toString: function() {\n var n = ((this._content || \"\"));\n if (this._extra_action) {\n n += ((((((\"\\u003Cscript type=\\\"text/javascript\\\"\\u003E\" + this._extra_action)) + \"\\u003C/scr\")) + \"ipt\\u003E\"));\n }\n ;\n ;\n return n;\n },\n setAction: function(n) {\n this._extra_action = n;\n return this;\n },\n getAction: function() {\n this._fillCache();\n var n = function() {\n this._inline_js();\n l(this._extra_action);\n }.bind(this);\n if (this.getDeferred()) {\n return n.defer.bind(n);\n }\n else return n\n ;\n },\n setDeferred: function(n) {\n this._defer = !!n;\n return this;\n },\n getDeferred: function() {\n return this._defer;\n },\n getContent: function() {\n return this._content;\n },\n getNodes: function() {\n this._fillCache();\n return this._nodes;\n },\n getRootNode: function() {\n var n = this.getNodes();\n if (((n.length === 1))) {\n this._rootNode = n[0];\n }\n else {\n var o = JSBNG__document.createDocumentFragment();\n for (var p = 0; ((p < n.length)); p++) {\n o.appendChild(n[p]);\n ;\n };\n ;\n this._rootNode = o;\n }\n ;\n ;\n return this._rootNode;\n },\n _fillCache: function() {\n if (((null !== this._nodes))) {\n return;\n }\n ;\n ;\n var n = this._content;\n if (!n) {\n this._nodes = [];\n return;\n }\n ;\n ;\n n = n.replace(/(<(\\w+)[^>]*?)\\/>/g, function(y, z, aa) {\n return ((aa.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i) ? y : ((((((z + \"\\u003E\\u003C/\")) + aa)) + \"\\u003E\"))));\n });\n var o = n.trim().toLowerCase(), p = JSBNG__document.createElement(\"div\"), q = false, r = ((((((((((((((!o.indexOf(\"\\u003Copt\") && [1,\"\\u003Cselect multiple=\\\"multiple\\\" class=\\\"__WRAPPER\\\"\\u003E\",\"\\u003C/select\\u003E\",])) || ((!o.indexOf(\"\\u003Cleg\") && [1,\"\\u003Cfieldset class=\\\"__WRAPPER\\\"\\u003E\",\"\\u003C/fieldset\\u003E\",])))) || ((o.match(/^<(thead|tbody|tfoot|colg|cap)/) && [1,\"\\u003Ctable class=\\\"__WRAPPER\\\"\\u003E\",\"\\u003C/table\\u003E\",])))) || ((!o.indexOf(\"\\u003Ctr\") && [2,\"\\u003Ctable\\u003E\\u003Ctbody class=\\\"__WRAPPER\\\"\\u003E\",\"\\u003C/tbody\\u003E\\u003C/table\\u003E\",])))) || ((((!o.indexOf(\"\\u003Ctd\") || !o.indexOf(\"\\u003Cth\"))) && [3,\"\\u003Ctable\\u003E\\u003Ctbody\\u003E\\u003Ctr class=\\\"__WRAPPER\\\"\\u003E\",\"\\u003C/tr\\u003E\\u003C/tbody\\u003E\\u003C/table\\u003E\",])))) || ((!o.indexOf(\"\\u003Ccol\") && [2,\"\\u003Ctable\\u003E\\u003Ctbody\\u003E\\u003C/tbody\\u003E\\u003Ccolgroup class=\\\"__WRAPPER\\\"\\u003E\",\"\\u003C/colgroup\\u003E\\u003C/table\\u003E\",])))) || null));\n if (((null === r))) {\n p.className = \"__WRAPPER\";\n if (h.ie()) {\n r = [0,\"\\u003Cspan style=\\\"display:none\\\"\\u003E \\u003C/span\\u003E\",\"\",];\n q = true;\n }\n else r = [0,\"\",\"\",];\n ;\n ;\n }\n ;\n ;\n p.innerHTML = ((((r[1] + n)) + r[2]));\n while (r[0]--) {\n p = p.lastChild;\n ;\n };\n ;\n if (q) {\n p.removeChild(p.firstChild);\n }\n ;\n ;\n ((p.className != \"__WRAPPER\"));\n if (h.ie()) {\n var s;\n if (((!o.indexOf(\"\\u003Ctable\") && ((-1 == o.indexOf(\"\\u003Ctbody\")))))) {\n s = ((p.firstChild && p.firstChild.childNodes));\n }\n else if (((((r[1] == \"\\u003Ctable\\u003E\")) && ((-1 == o.indexOf(\"\\u003Ctbody\")))))) {\n s = p.childNodes;\n }\n else s = [];\n \n ;\n ;\n for (var t = ((s.length - 1)); ((t >= 0)); --t) {\n if (((((s[t].nodeName && ((s[t].nodeName.toLowerCase() == \"tbody\")))) && ((s[t].childNodes.length == 0))))) {\n s[t].parentNode.removeChild(s[t]);\n }\n ;\n ;\n };\n ;\n }\n ;\n ;\n var u = p.getElementsByTagName(\"script\"), v = [];\n for (var w = 0; ((w < u.length)); w++) {\n if (u[w].src) {\n v.push(g.requestJSResource.bind(g, u[w].src));\n }\n else v.push(l.bind(null, u[w].innerHTML));\n ;\n ;\n };\n ;\n for (var w = ((u.length - 1)); ((w >= 0)); w--) {\n u[w].parentNode.removeChild(u[w]);\n ;\n };\n ;\n var x = function() {\n for (var y = 0; ((y < v.length)); y++) {\n v[y]();\n ;\n };\n ;\n };\n this._nodes = j(p.childNodes);\n this._inline_js = x;\n }\n });\n e.exports = m;\n});\n__d(\"isScalar\", [], function(a, b, c, d, e, f) {\n function g(h) {\n return (/string|number|boolean/).test(typeof h);\n };\n;\n e.exports = g;\n});\n__d(\"JSBNG__Intl\", [], function(a, b, c, d, e, f) {\n var g;\n function h(j) {\n if (((typeof j != \"string\"))) {\n return false;\n }\n ;\n ;\n return j.match(new RegExp(((((((((((((((((((((((((((((((((((((((((((((((((((((h.punct_char_class + \"[\")) + \")\\\"\")) + \"'\")) + \"\\u00bb\")) + \"\\u0f3b\")) + \"\\u0f3d\")) + \"\\u2019\")) + \"\\u201d\")) + \"\\u203a\")) + \"\\u3009\")) + \"\\u300b\")) + \"\\u300d\")) + \"\\u300f\")) + \"\\u3011\")) + \"\\u3015\")) + \"\\u3017\")) + \"\\u3019\")) + \"\\u301b\")) + \"\\u301e\")) + \"\\u301f\")) + \"\\ufd3f\")) + \"\\uff07\")) + \"\\uff09\")) + \"\\uff3d\")) + \"\\\\s\")) + \"]*$\"))));\n };\n;\n h.punct_char_class = ((((((((((((((((((((((\"[\" + \".!?\")) + \"\\u3002\")) + \"\\uff01\")) + \"\\uff1f\")) + \"\\u0964\")) + \"\\u2026\")) + \"\\u0eaf\")) + \"\\u1801\")) + \"\\u0e2f\")) + \"\\uff0e\")) + \"]\"));\n function i(j) {\n if (g) {\n var k = [], l = [];\n {\n var fin35keys = ((window.top.JSBNG_Replay.forInKeys)((g.patterns))), fin35i = (0);\n var m;\n for (; (fin35i < fin35keys.length); (fin35i++)) {\n ((m) = (fin35keys[fin35i]));\n {\n var n = g.patterns[m];\n {\n var fin36keys = ((window.top.JSBNG_Replay.forInKeys)((g.meta))), fin36i = (0);\n var o;\n for (; (fin36i < fin36keys.length); (fin36i++)) {\n ((o) = (fin36keys[fin36i]));\n {\n var p = new RegExp(o.slice(1, -1), \"g\"), q = g.meta[o];\n m = m.replace(p, q);\n n = n.replace(p, q);\n };\n };\n };\n ;\n k.push(m);\n l.push(n);\n };\n };\n };\n ;\n for (var r = 0; ((r < k.length)); r++) {\n var s = new RegExp(k[r].slice(1, -1), \"g\");\n if (((l[r] == \"javascript\"))) {\n j.replace(s, function(t) {\n return t.slice(1).toLowerCase();\n });\n }\n else j = j.replace(s, l[r]);\n ;\n ;\n };\n ;\n }\n ;\n ;\n return j.replace(/\\x01/g, \"\");\n };\n;\n e.exports = {\n endsInPunct: h,\n applyPhonologicalRules: i,\n setPhonologicalRules: function(j) {\n g = j;\n }\n };\n});\n__d(\"substituteTokens\", [\"invariant\",\"JSBNG__Intl\",], function(a, b, c, d, e, f) {\n var g = b(\"invariant\"), h = b(\"JSBNG__Intl\");\n function i(j, k) {\n if (!k) {\n return j;\n }\n ;\n ;\n g(((typeof k === \"object\")));\n var l = ((((\"\\\\{([^}]+)\\\\}(\" + h.endsInPunct.punct_char_class)) + \"*)\")), m = new RegExp(l, \"g\"), n = [], o = j.replace(m, function(r, s, t) {\n var u = k[s];\n if (((u && ((typeof u === \"object\"))))) {\n n.push(u);\n return ((\"\\u0017\" + t));\n }\n ;\n ;\n return ((u + ((h.endsInPunct(u) ? \"\" : t))));\n }).split(\"\\u0017\").map(h.applyPhonologicalRules);\n if (((o.length === 1))) {\n return o[0];\n }\n ;\n ;\n var p = [o[0],];\n for (var q = 0; ((q < n.length)); q++) {\n p.push(n[q], o[((q + 1))]);\n ;\n };\n ;\n return p;\n };\n;\n e.exports = i;\n});\n__d(\"tx\", [\"substituteTokens\",], function(a, b, c, d, e, f) {\n var g = b(\"substituteTokens\");\n function h(i, j) {\n if (((typeof _string_table == \"undefined\"))) {\n return;\n }\n ;\n ;\n i = _string_table[i];\n return g(i, j);\n };\n;\n h._ = g;\n e.exports = h;\n});\n__d(\"DOM\", [\"function-extensions\",\"DOMQuery\",\"JSBNG__Event\",\"HTML\",\"UserAgent\",\"$\",\"copyProperties\",\"createArrayFrom\",\"isScalar\",\"tx\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"DOMQuery\"), h = b(\"JSBNG__Event\"), i = b(\"HTML\"), j = b(\"UserAgent\"), k = b(\"$\"), l = b(\"copyProperties\"), m = b(\"createArrayFrom\"), n = b(\"isScalar\"), o = b(\"tx\"), p = \"js_\", q = 0, r = {\n };\n l(r, g);\n l(r, {\n create: function(u, v, w) {\n var x = JSBNG__document.createElement(u);\n if (v) {\n r.setAttributes(x, v);\n }\n ;\n ;\n if (((w != null))) {\n r.setContent(x, w);\n }\n ;\n ;\n return x;\n },\n setAttributes: function(u, v) {\n if (v.type) {\n u.type = v.type;\n }\n ;\n ;\n {\n var fin37keys = ((window.top.JSBNG_Replay.forInKeys)((v))), fin37i = (0);\n var w;\n for (; (fin37i < fin37keys.length); (fin37i++)) {\n ((w) = (fin37keys[fin37i]));\n {\n var x = v[w], y = (/^on/i).test(w);\n if (((w == \"type\"))) {\n continue;\n }\n else if (((w == \"style\"))) {\n if (((typeof x == \"string\"))) {\n u.style.cssText = x;\n }\n else l(u.style, x);\n ;\n ;\n }\n else if (y) {\n h.listen(u, w.substr(2), x);\n }\n else if (((w in u))) {\n u[w] = x;\n }\n else if (u.setAttribute) {\n u.setAttribute(w, x);\n }\n \n \n \n \n ;\n ;\n };\n };\n };\n ;\n },\n prependContent: function(u, v) {\n return s(v, u, function(w) {\n ((u.firstChild ? u.insertBefore(w, u.firstChild) : u.appendChild(w)));\n });\n },\n insertAfter: function(u, v) {\n var w = u.parentNode;\n return s(v, w, function(x) {\n ((u.nextSibling ? w.insertBefore(x, u.nextSibling) : w.appendChild(x)));\n });\n },\n insertBefore: function(u, v) {\n var w = u.parentNode;\n return s(v, w, function(x) {\n w.insertBefore(x, u);\n });\n },\n setContent: function(u, v) {\n r.empty(u);\n return r.appendContent(u, v);\n },\n appendContent: function(u, v) {\n return s(v, u, function(w) {\n u.appendChild(w);\n });\n },\n replace: function(u, v) {\n var w = u.parentNode;\n return s(v, w, function(x) {\n w.replaceChild(x, u);\n });\n },\n remove: function(u) {\n u = k(u);\n if (u.parentNode) {\n u.parentNode.removeChild(u);\n }\n ;\n ;\n },\n empty: function(u) {\n u = k(u);\n while (u.firstChild) {\n r.remove(u.firstChild);\n ;\n };\n ;\n },\n getID: function(u) {\n var v = u.id;\n if (!v) {\n v = ((p + q++));\n u.id = v;\n }\n ;\n ;\n return v;\n }\n });\n function s(u, v, w) {\n u = i.replaceJSONWrapper(u);\n if (((((((u instanceof i)) && ((\"\" === v.innerHTML)))) && ((-1 === u.toString().indexOf(((\"\\u003Cscr\" + \"ipt\")))))))) {\n var x = j.ie();\n if (((!x || ((((x > 7)) && !g.isNodeOfType(v, [\"table\",\"tbody\",\"thead\",\"tfoot\",\"tr\",\"select\",\"fieldset\",])))))) {\n var y = ((x ? \"\\u003Cem style=\\\"display:none;\\\"\\u003E \\u003C/em\\u003E\" : \"\"));\n v.innerHTML = ((y + u));\n ((x && v.removeChild(v.firstChild)));\n return m(v.childNodes);\n }\n ;\n ;\n }\n else if (g.isTextNode(v)) {\n v.data = u;\n return [u,];\n }\n \n ;\n ;\n var z = JSBNG__document.createDocumentFragment(), aa, ba = [], ca = [];\n u = m(u);\n for (var da = 0; ((da < u.length)); da++) {\n aa = i.replaceJSONWrapper(u[da]);\n if (((aa instanceof i))) {\n ca.push(aa.getAction());\n var ea = aa.getNodes();\n for (var fa = 0; ((fa < ea.length)); fa++) {\n ba.push(ea[fa]);\n z.appendChild(ea[fa]);\n };\n ;\n }\n else if (n(aa)) {\n var ga = JSBNG__document.createTextNode(aa);\n ba.push(ga);\n z.appendChild(ga);\n }\n else if (g.isNode(aa)) {\n ba.push(aa);\n z.appendChild(aa);\n }\n \n \n ;\n ;\n };\n ;\n w(z);\n ca.forEach(function(ha) {\n ha();\n });\n return ba;\n };\n;\n function t(u) {\n function v(w) {\n return r.create(\"div\", {\n }, w).innerHTML;\n };\n ;\n return function(w, x) {\n var y = {\n };\n if (x) {\n {\n var fin38keys = ((window.top.JSBNG_Replay.forInKeys)((x))), fin38i = (0);\n var z;\n for (; (fin38i < fin38keys.length); (fin38i++)) {\n ((z) = (fin38keys[fin38i]));\n {\n y[z] = v(x[z]);\n ;\n };\n };\n };\n }\n ;\n ;\n return i(u(w, y));\n };\n };\n;\n r.tx = t(o);\n r.tx._ = r._tx = t(o._);\n e.exports = r;\n});\n__d(\"LinkshimAsyncLink\", [\"$\",\"AsyncSignal\",\"DOM\",\"UserAgent\",], function(a, b, c, d, e, f) {\n var g = b(\"$\"), h = b(\"AsyncSignal\"), i = b(\"DOM\"), j = b(\"UserAgent\"), k = {\n swap: function(l, m) {\n var n = ((j.ie() <= 8));\n if (n) {\n var o = i.create(\"wbr\", {\n }, null);\n i.appendContent(l, o);\n }\n ;\n ;\n l.href = m;\n if (n) {\n i.remove(o);\n }\n ;\n ;\n },\n referrer_log: function(l, m, n) {\n var o = g(\"meta_referrer\");\n o.JSBNG__content = \"origin\";\n k.swap(l, m);\n (function() {\n o.JSBNG__content = \"default\";\n new h(n, {\n }).send();\n }).defer(100);\n }\n };\n e.exports = k;\n});\n__d(\"legacy:dom-asynclinkshim\", [\"LinkshimAsyncLink\",], function(a, b, c, d) {\n a.LinkshimAsyncLink = b(\"LinkshimAsyncLink\");\n}, 3);\n__d(\"debounce\", [], function(a, b, c, d, e, f) {\n function g(h, i, j, k) {\n if (((i == null))) {\n i = 100;\n }\n ;\n ;\n var l;\n function m(n, o, p, q, r) {\n m.reset();\n l = JSBNG__setTimeout(function() {\n h.call(j, n, o, p, q, r);\n }, i, !k);\n };\n ;\n m.reset = function() {\n JSBNG__clearTimeout(l);\n };\n return m;\n };\n;\n e.exports = g;\n});\n__d(\"LitestandViewportHeight\", [\"Arbiter\",\"JSBNG__CSS\",\"JSBNG__Event\",\"cx\",\"debounce\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"JSBNG__CSS\"), i = b(\"JSBNG__Event\"), j = b(\"cx\"), k = b(\"debounce\"), l = b(\"emptyFunction\"), m, n = {\n SMALL: \"small\",\n NORMAL: \"normal\",\n LARGE: \"large\",\n getSize: function() {\n if (((m === \"-cx-PUBLIC-litestandViewportSize__small\"))) {\n return n.SMALL;\n }\n ;\n ;\n if (((m === \"-cx-PUBLIC-litestandViewportSize__large\"))) {\n return n.LARGE;\n }\n ;\n ;\n return n.NORMAL;\n },\n init: function(o) {\n n.init = l;\n var p = k(function() {\n var q = JSBNG__document.documentElement, r = q.clientHeight, s;\n if (((r <= o.max_small_height))) {\n s = \"-cx-PUBLIC-litestandViewportSize__small\";\n }\n else if (((r >= o.min_large_height))) {\n s = \"-cx-PUBLIC-litestandViewportSize__large\";\n }\n \n ;\n ;\n if (((s !== m))) {\n ((m && h.removeClass(q, m)));\n m = s;\n ((m && h.addClass(q, m)));\n g.inform(\"ViewportSizeChange\");\n }\n ;\n ;\n });\n p();\n i.listen(window, \"resize\", p);\n }\n };\n e.exports = n;\n});\n__d(\"JSLogger\", [], function(a, b, c, d, e, f) {\n var g = {\n MAX_HISTORY: 500,\n counts: {\n },\n categories: {\n },\n seq: 0,\n pageId: ((((Math.JSBNG__random() * 2147483648)) | 0)).toString(36),\n forwarding: false\n };\n function h(l) {\n if (((((l instanceof Error)) && a.ErrorUtils))) {\n l = a.ErrorUtils.normalizeError(l);\n }\n ;\n ;\n try {\n return JSON.stringify(l);\n } catch (m) {\n return \"{}\";\n };\n ;\n };\n;\n function i(l, JSBNG__event, m) {\n if (!g.counts[l]) {\n g.counts[l] = {\n };\n }\n ;\n ;\n if (!g.counts[l][JSBNG__event]) {\n g.counts[l][JSBNG__event] = 0;\n }\n ;\n ;\n m = ((((m == null)) ? 1 : Number(m)));\n g.counts[l][JSBNG__event] += ((isFinite(m) ? m : 0));\n };\n;\n g.logAction = function(JSBNG__event, l, m) {\n if (((this.type == \"bump\"))) {\n i(this.cat, JSBNG__event, l);\n }\n else if (((this.type == \"rate\"))) {\n ((l && i(this.cat, ((JSBNG__event + \"_n\")), m)));\n i(this.cat, ((JSBNG__event + \"_d\")), m);\n }\n else {\n var n = {\n cat: this.cat,\n type: this.type,\n JSBNG__event: JSBNG__event,\n data: ((((l != null)) ? h(l) : null)),\n date: JSBNG__Date.now(),\n seq: g.seq++\n };\n g.head = ((g.head ? (g.head.next = n) : (g.tail = n)));\n while (((((g.head.seq - g.tail.seq)) > g.MAX_HISTORY))) {\n g.tail = g.tail.next;\n ;\n };\n ;\n return n;\n }\n \n ;\n ;\n };\n function j(l) {\n if (!g.categories[l]) {\n g.categories[l] = {\n };\n var m = function(n) {\n var o = {\n cat: l,\n type: n\n };\n g.categories[l][n] = function() {\n g.forwarding = false;\n var p = null;\n if (((JSBNG__document.domain != \"facebook.com\"))) {\n return;\n }\n ;\n ;\n p = g.logAction;\n if (/^\\/+(dialogs|plugins?)\\//.test(JSBNG__location.pathname)) {\n g.forwarding = false;\n }\n else try {\n p = a.JSBNG__top.require(\"JSLogger\")._.logAction;\n g.forwarding = ((p !== g.logAction));\n } catch (q) {\n \n }\n ;\n ;\n ((p && p.apply(o, arguments)));\n };\n };\n m(\"debug\");\n m(\"log\");\n m(\"warn\");\n m(\"error\");\n m(\"bump\");\n m(\"rate\");\n }\n ;\n ;\n return g.categories[l];\n };\n;\n function k(l, m) {\n var n = [];\n for (var o = ((m || g.tail)); o; o = o.next) {\n if (((!l || l(o)))) {\n var p = {\n type: o.type,\n cat: o.cat,\n date: o.date,\n JSBNG__event: o.JSBNG__event,\n seq: o.seq\n };\n if (o.data) {\n p.data = JSON.parse(o.data);\n }\n ;\n ;\n n.push(p);\n }\n ;\n ;\n };\n ;\n return n;\n };\n;\n e.exports = {\n _: g,\n DUMP_EVENT: \"jslogger/dump\",\n create: j,\n getEntries: k\n };\n});\n__d(\"startsWith\", [], function(a, b, c, d, e, f) {\n function g(h, i, j) {\n var k = String(h);\n j = Math.min(Math.max(((j || 0)), 0), k.length);\n return ((k.lastIndexOf(String(i), j) === j));\n };\n;\n e.exports = g;\n});\n__d(\"getContextualParent\", [\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"ge\");\n function h(i, j) {\n var k, l = false;\n do {\n if (((i.getAttribute && (k = i.getAttribute(\"data-ownerid\"))))) {\n i = g(k);\n l = true;\n }\n else i = i.parentNode;\n ;\n ;\n } while (((((j && i)) && !l)));\n return i;\n };\n;\n e.exports = h;\n});\n__d(\"Nectar\", [\"Env\",\"startsWith\",\"getContextualParent\",], function(a, b, c, d, e, f) {\n var g = b(\"Env\"), h = b(\"startsWith\"), i = b(\"getContextualParent\");\n function j(m) {\n if (!m.nctr) {\n m.nctr = {\n };\n }\n ;\n ;\n };\n;\n function k(m) {\n if (((g.module || !m))) {\n return g.module;\n }\n ;\n ;\n var n = {\n fbpage_fan_confirm: true,\n photos_snowlift: true\n }, o;\n while (((m && m.getAttributeNode))) {\n var p = ((m.getAttributeNode(\"id\") || {\n })).value;\n if (h(p, \"pagelet_\")) {\n return p;\n }\n ;\n ;\n if (((!o && n[p]))) {\n o = p;\n }\n ;\n ;\n m = i(m);\n };\n ;\n return o;\n };\n;\n var l = {\n addModuleData: function(m, n) {\n var o = k(n);\n if (o) {\n j(m);\n m.nctr._mod = o;\n }\n ;\n ;\n },\n addImpressionID: function(m) {\n if (g.impid) {\n j(m);\n m.nctr._impid = g.impid;\n }\n ;\n ;\n }\n };\n e.exports = l;\n});\n__d(\"AsyncResponse\", [\"Bootloader\",\"Env\",\"copyProperties\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Bootloader\"), h = b(\"Env\"), i = b(\"copyProperties\"), j = b(\"tx\");\n function k(l, m) {\n i(this, {\n error: 0,\n errorSummary: null,\n errorDescription: null,\n JSBNG__onload: null,\n replay: false,\n payload: ((m || null)),\n request: ((l || null)),\n silentError: false,\n transientError: false,\n is_last: true\n });\n return this;\n };\n;\n i(k, {\n defaultErrorHandler: function(l) {\n try {\n if (!l.silentError) {\n k.verboseErrorHandler(l);\n }\n else l.logErrorByGroup(\"silent\", 10);\n ;\n ;\n } catch (m) {\n JSBNG__alert(l);\n };\n ;\n },\n verboseErrorHandler: function(l) {\n try {\n var n = l.getErrorSummary(), o = l.getErrorDescription();\n l.logErrorByGroup(\"popup\", 10);\n if (((l.silentError && ((o === \"\"))))) {\n o = \"Something went wrong. We're working on getting this fixed as soon as we can. You may be able to try again.\";\n }\n ;\n ;\n g.loadModules([\"Dialog\",], function(p) {\n new p().setTitle(n).setBody(o).setButtons([p.OK,]).setModal(true).setCausalElement(this.relativeTo).show();\n });\n } catch (m) {\n JSBNG__alert(l);\n };\n ;\n }\n });\n i(k.prototype, {\n getRequest: function() {\n return this.request;\n },\n getPayload: function() {\n return this.payload;\n },\n getError: function() {\n return this.error;\n },\n getErrorSummary: function() {\n return this.errorSummary;\n },\n setErrorSummary: function(l) {\n l = ((((l === undefined)) ? null : l));\n this.errorSummary = l;\n return this;\n },\n getErrorDescription: function() {\n return this.errorDescription;\n },\n getErrorIsWarning: function() {\n return !!this.errorIsWarning;\n },\n isTransient: function() {\n return !!this.transientError;\n },\n logError: function(l, m) {\n var n = a.ErrorSignal;\n if (n) {\n var o = {\n err_code: this.error,\n vip: ((h.vip || \"-\"))\n };\n if (m) {\n o.duration = m.duration;\n o.xfb_ip = m.xfb_ip;\n }\n ;\n ;\n var p = this.request.getURI();\n o.path = ((p || \"-\"));\n o.aid = this.request.userActionID;\n if (((p && ((p.indexOf(\"scribe_endpoint.php\") != -1))))) {\n l = \"async_error_double\";\n }\n ;\n ;\n n.sendErrorSignal(l, JSON.stringify(o));\n }\n ;\n ;\n },\n logErrorByGroup: function(l, m) {\n if (((Math.floor(((Math.JSBNG__random() * m))) === 0))) {\n if (((((this.error == 1357010)) || ((this.error < 15000))))) {\n this.logError(((\"async_error_oops_\" + l)));\n }\n else this.logError(((\"async_error_logic_\" + l)));\n ;\n }\n ;\n ;\n }\n });\n e.exports = k;\n});\n__d(\"HTTPErrors\", [\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"emptyFunction\"), h = {\n get: g,\n getAll: g\n };\n e.exports = h;\n});\n__d(\"bind\", [], function(a, b, c, d, e, f) {\n function g(h, i) {\n var j = Array.prototype.slice.call(arguments, 2);\n if (((typeof i != \"string\"))) {\n return Function.prototype.bind.apply(i, [h,].concat(j));\n }\n ;\n ;\n function k() {\n var l = j.concat(Array.prototype.slice.call(arguments));\n if (h[i]) {\n return h[i].apply(h, l);\n }\n ;\n ;\n };\n ;\n k.toString = function() {\n return ((\"bound lazily: \" + h[i]));\n };\n return k;\n };\n;\n e.exports = g;\n});\n__d(\"executeAfter\", [], function(a, b, c, d, e, f) {\n function g(h, i, j) {\n return function() {\n h.apply(((j || this)), arguments);\n i.apply(((j || this)), arguments);\n };\n };\n;\n e.exports = g;\n});\n__d(\"AsyncRequest\", [\"Arbiter\",\"AsyncResponse\",\"Bootloader\",\"JSBNG__CSS\",\"Env\",\"ErrorUtils\",\"JSBNG__Event\",\"HTTPErrors\",\"JSCC\",\"Parent\",\"Run\",\"ServerJS\",\"URI\",\"UserAgent\",\"XHR\",\"asyncCallback\",\"bind\",\"copyProperties\",\"emptyFunction\",\"evalGlobal\",\"ge\",\"goURI\",\"isEmpty\",\"ix\",\"tx\",\"executeAfter\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncResponse\"), i = b(\"Bootloader\"), j = b(\"JSBNG__CSS\"), k = b(\"Env\"), l = b(\"ErrorUtils\"), m = b(\"JSBNG__Event\"), n = b(\"HTTPErrors\"), o = b(\"JSCC\"), p = b(\"Parent\"), q = b(\"Run\"), r = b(\"ServerJS\"), s = b(\"URI\"), t = b(\"UserAgent\"), u = b(\"XHR\"), v = b(\"asyncCallback\"), w = b(\"bind\"), x = b(\"copyProperties\"), y = b(\"emptyFunction\"), z = b(\"evalGlobal\"), aa = b(\"ge\"), ba = b(\"goURI\"), ca = b(\"isEmpty\"), da = b(\"ix\"), ea = b(\"tx\"), fa = b(\"executeAfter\");\n function ga() {\n try {\n return !window.loaded;\n } catch (pa) {\n return true;\n };\n ;\n };\n;\n function ha(pa) {\n return ((((\"upload\" in pa)) && ((\"JSBNG__onprogress\" in pa.upload))));\n };\n;\n function ia(pa) {\n return ((\"withCredentials\" in pa));\n };\n;\n function ja(pa) {\n return ((pa.JSBNG__status in {\n 0: 1,\n 12029: 1,\n 12030: 1,\n 12031: 1,\n 12152: 1\n }));\n };\n;\n function ka(pa) {\n var qa = ((!pa || ((typeof (pa) === \"function\"))));\n return qa;\n };\n;\n var la = 2, ma = la;\n g.subscribe(\"page_transition\", function(pa, qa) {\n ma = qa.id;\n });\n function na(pa) {\n x(this, {\n transport: null,\n method: \"POST\",\n uri: \"\",\n timeout: null,\n timer: null,\n initialHandler: y,\n handler: null,\n uploadProgressHandler: null,\n errorHandler: null,\n transportErrorHandler: null,\n timeoutHandler: null,\n interceptHandler: y,\n finallyHandler: y,\n abortHandler: y,\n serverDialogCancelHandler: null,\n relativeTo: null,\n statusElement: null,\n statusClass: \"\",\n data: {\n },\n file: null,\n context: {\n },\n readOnly: false,\n writeRequiredParams: [],\n remainingRetries: 0,\n userActionID: \"-\"\n });\n this.option = {\n asynchronous: true,\n suppressErrorHandlerWarning: false,\n suppressEvaluation: false,\n suppressErrorAlerts: false,\n retries: 0,\n jsonp: false,\n bundle: false,\n useIframeTransport: false,\n handleErrorAfterUnload: false\n };\n this.errorHandler = h.defaultErrorHandler;\n this.transportErrorHandler = w(this, \"errorHandler\");\n if (((pa !== undefined))) {\n this.setURI(pa);\n }\n ;\n ;\n };\n;\n x(na, {\n bootstrap: function(pa, qa, ra) {\n var sa = \"GET\", ta = true, ua = {\n };\n if (((ra || ((qa && ((qa.rel == \"async-post\"))))))) {\n sa = \"POST\";\n ta = false;\n if (pa) {\n pa = s(pa);\n ua = pa.getQueryData();\n pa.setQueryData({\n });\n }\n ;\n ;\n }\n ;\n ;\n var va = ((p.byClass(qa, \"stat_elem\") || qa));\n if (((va && j.hasClass(va, \"async_saving\")))) {\n return false;\n }\n ;\n ;\n var wa = new na(pa).setReadOnly(ta).setMethod(sa).setData(ua).setNectarModuleDataSafe(qa).setRelativeTo(qa);\n if (qa) {\n wa.setHandler(function(ya) {\n m.fire(qa, \"success\", {\n response: ya\n });\n });\n wa.setErrorHandler(function(ya) {\n if (((m.fire(qa, \"error\", {\n response: ya\n }) !== false))) {\n h.defaultErrorHandler(ya);\n }\n ;\n ;\n });\n }\n ;\n ;\n if (va) {\n wa.setStatusElement(va);\n var xa = va.getAttribute(\"data-status-class\");\n ((xa && wa.setStatusClass(xa)));\n }\n ;\n ;\n if (qa) {\n m.fire(qa, \"AsyncRequest/send\", {\n request: wa\n });\n }\n ;\n ;\n wa.send();\n return false;\n },\n post: function(pa, qa) {\n new na(pa).setReadOnly(false).setMethod(\"POST\").setData(qa).send();\n return false;\n },\n getLastID: function() {\n return la;\n },\n suppressOnloadToken: {\n },\n _inflight: [],\n _inflightCount: 0,\n _inflightAdd: y,\n _inflightPurge: y,\n getInflightCount: function() {\n return this._inflightCount;\n },\n _inflightEnable: function() {\n if (t.ie()) {\n x(na, {\n _inflightAdd: function(pa) {\n this._inflight.push(pa);\n },\n _inflightPurge: function() {\n na._inflight = na._inflight.filter(function(pa) {\n return ((pa.transport && ((pa.transport.readyState < 4))));\n });\n }\n });\n q.onUnload(function() {\n na._inflight.forEach(function(pa) {\n if (((pa.transport && ((pa.transport.readyState < 4))))) {\n pa.transport.abort();\n delete pa.transport;\n }\n ;\n ;\n });\n });\n }\n ;\n ;\n }\n });\n x(na.prototype, {\n _dispatchResponse: function(pa) {\n this.clearStatusIndicator();\n if (!this._isRelevant()) {\n this._invokeErrorHandler(1010);\n return;\n }\n ;\n ;\n if (((this.initialHandler(pa) === false))) {\n return;\n }\n ;\n ;\n JSBNG__clearTimeout(this.timer);\n if (pa.jscc_map) {\n var qa = (eval)(pa.jscc_map);\n o.init(qa);\n }\n ;\n ;\n var ra;\n if (this.handler) {\n try {\n ra = this._shouldSuppressJS(this.handler(pa));\n } catch (sa) {\n ((pa.is_last && this.finallyHandler(pa)));\n throw sa;\n };\n }\n ;\n ;\n if (!ra) {\n this._handleJSResponse(pa);\n }\n ;\n ;\n ((pa.is_last && this.finallyHandler(pa)));\n },\n _shouldSuppressJS: function(pa) {\n return ((pa === na.suppressOnloadToken));\n },\n _handleJSResponse: function(pa) {\n var qa = this.getRelativeTo(), ra = pa.domops, sa = pa.jsmods, ta = new r().setRelativeTo(qa), ua;\n if (((sa && sa.require))) {\n ua = sa.require;\n delete sa.require;\n }\n ;\n ;\n if (sa) {\n ta.handle(sa);\n }\n ;\n ;\n var va = function(wa) {\n if (((ra && wa))) {\n wa.invoke(ra, qa);\n }\n ;\n ;\n if (ua) {\n ta.handle({\n require: ua\n });\n }\n ;\n ;\n this._handleJSRegisters(pa, \"JSBNG__onload\");\n if (this.lid) {\n g.inform(\"tti_ajax\", {\n s: this.lid,\n d: [((this._sendTimeStamp || 0)),((((this._sendTimeStamp && this._responseTime)) ? ((this._responseTime - this._sendTimeStamp)) : 0)),]\n }, g.BEHAVIOR_EVENT);\n }\n ;\n ;\n this._handleJSRegisters(pa, \"onafterload\");\n ta.cleanup();\n }.bind(this);\n if (ra) {\n i.loadModules([\"AsyncDOM\",], va);\n }\n else va(null);\n ;\n ;\n },\n _handleJSRegisters: function(pa, qa) {\n var ra = pa[qa];\n if (ra) {\n for (var sa = 0; ((sa < ra.length)); sa++) {\n l.applyWithGuard(new Function(ra[sa]), this);\n ;\n };\n }\n ;\n ;\n },\n invokeResponseHandler: function(pa) {\n if (((typeof (pa.redirect) !== \"undefined\"))) {\n (function() {\n this.setURI(pa.redirect).send();\n }).bind(this).defer();\n return;\n }\n ;\n ;\n if (((((!this.handler && !this.errorHandler)) && !this.transportErrorHandler))) {\n return;\n }\n ;\n ;\n var qa = pa.asyncResponse;\n if (((typeof (qa) !== \"undefined\"))) {\n if (!this._isRelevant()) {\n this._invokeErrorHandler(1010);\n return;\n }\n ;\n ;\n if (qa.inlinejs) {\n z(qa.inlinejs);\n }\n ;\n ;\n if (qa.lid) {\n this._responseTime = JSBNG__Date.now();\n if (a.CavalryLogger) {\n this.cavalry = a.CavalryLogger.getInstance(qa.lid);\n }\n ;\n ;\n this.lid = qa.lid;\n }\n ;\n ;\n if (qa.resource_map) {\n i.setResourceMap(qa.resource_map);\n }\n ;\n ;\n if (qa.bootloadable) {\n i.enableBootload(qa.bootloadable);\n }\n ;\n ;\n da.add(qa.ixData);\n var ra, sa;\n if (((qa.getError() && !qa.getErrorIsWarning()))) {\n var ta = this.errorHandler.bind(this);\n ra = l.guard(this._dispatchErrorResponse, ((\"AsyncRequest#_dispatchErrorResponse for \" + this.getURI())));\n ra = ra.bind(this, qa, ta);\n sa = \"error\";\n }\n else {\n ra = l.guard(this._dispatchResponse, ((\"AsyncRequest#_dispatchResponse for \" + this.getURI())));\n ra = ra.bind(this, qa);\n sa = \"response\";\n }\n ;\n ;\n ra = fa(ra, function() {\n g.inform(((\"AsyncRequest/\" + sa)), {\n request: this,\n response: qa\n });\n }.bind(this));\n ra = ra.defer.bind(ra);\n var ua = false;\n if (this.preBootloadHandler) {\n ua = this.preBootloadHandler(qa);\n }\n ;\n ;\n qa.css = ((qa.css || []));\n qa.js = ((qa.js || []));\n i.loadResources(qa.css.concat(qa.js), ra, ua, this.getURI());\n }\n else if (((typeof (pa.transportError) !== \"undefined\"))) {\n if (this._xFbServer) {\n this._invokeErrorHandler(1008);\n }\n else this._invokeErrorHandler(1012);\n ;\n ;\n }\n else this._invokeErrorHandler(1007);\n \n ;\n ;\n },\n _invokeErrorHandler: function(pa) {\n var qa;\n if (((this.responseText === \"\"))) {\n qa = 1002;\n }\n else if (this._requestAborted) {\n qa = 1011;\n }\n else {\n try {\n qa = ((((pa || this.transport.JSBNG__status)) || 1004));\n } catch (ra) {\n qa = 1005;\n };\n ;\n if (((false === JSBNG__navigator.onLine))) {\n qa = 1006;\n }\n ;\n ;\n }\n \n ;\n ;\n var sa, ta, ua = true;\n if (((qa === 1006))) {\n ta = \"No Network Connection\";\n sa = \"Your browser appears to be offline. Please check your internet connection and try again.\";\n }\n else if (((((qa >= 300)) && ((qa <= 399))))) {\n ta = \"Redirection\";\n sa = \"Your access to Facebook was redirected or blocked by a third party at this time, please contact your ISP or reload. \";\n var va = this.transport.getResponseHeader(\"Location\");\n if (va) {\n ba(va, true);\n }\n ;\n ;\n ua = true;\n }\n else {\n ta = \"Oops\";\n sa = \"Something went wrong. We're working on getting this fixed as soon as we can. You may be able to try again.\";\n }\n \n ;\n ;\n var wa = new h(this);\n x(wa, {\n error: qa,\n errorSummary: ta,\n errorDescription: sa,\n silentError: ua\n });\n (function() {\n g.inform(\"AsyncRequest/error\", {\n request: this,\n response: wa\n });\n }).bind(this).defer();\n if (((ga() && !this.getOption(\"handleErrorAfterUnload\")))) {\n return;\n }\n ;\n ;\n if (!this.transportErrorHandler) {\n return;\n }\n ;\n ;\n var xa = this.transportErrorHandler.bind(this);\n !this.getOption(\"suppressErrorAlerts\");\n l.applyWithGuard(this._dispatchErrorResponse, this, [wa,xa,]);\n },\n _dispatchErrorResponse: function(pa, qa) {\n var ra = pa.getError();\n this.clearStatusIndicator();\n var sa = ((this._sendTimeStamp && {\n duration: ((JSBNG__Date.now() - this._sendTimeStamp)),\n xfb_ip: ((this._xFbServer || \"-\"))\n }));\n pa.logError(\"async_error\", sa);\n if (((!this._isRelevant() || ((ra === 1010))))) {\n this.abort();\n return;\n }\n ;\n ;\n if (((((((((ra == 1357008)) || ((ra == 1357007)))) || ((ra == 1442002)))) || ((ra == 1357001))))) {\n var ta = ((((ra == 1357008)) || ((ra == 1357007))));\n this.interceptHandler(pa);\n this._displayServerDialog(pa, ta);\n }\n else if (((this.initialHandler(pa) !== false))) {\n JSBNG__clearTimeout(this.timer);\n try {\n qa(pa);\n } catch (ua) {\n this.finallyHandler(pa);\n throw ua;\n };\n ;\n this.finallyHandler(pa);\n }\n \n ;\n ;\n },\n _displayServerDialog: function(pa, qa) {\n var ra = pa.getPayload();\n if (((ra.__dialog !== undefined))) {\n this._displayServerLegacyDialog(pa, qa);\n return;\n }\n ;\n ;\n var sa = ra.__dialogx;\n new r().handle(sa);\n i.loadModules([\"ConfirmationDialog\",], function(ta) {\n ta.setupConfirmation(pa, this);\n }.bind(this));\n },\n _displayServerLegacyDialog: function(pa, qa) {\n var ra = pa.getPayload().__dialog;\n i.loadModules([\"Dialog\",], function(sa) {\n var ta = new sa(ra);\n if (qa) {\n ta.setHandler(this._displayConfirmationHandler.bind(this, ta));\n }\n ;\n ;\n ta.setCancelHandler(function() {\n var ua = this.getServerDialogCancelHandler();\n try {\n ((ua && ua(pa)));\n } catch (va) {\n throw va;\n } finally {\n this.finallyHandler(pa);\n };\n ;\n }.bind(this)).setCausalElement(this.relativeTo).show();\n }.bind(this));\n },\n _displayConfirmationHandler: function(pa) {\n this.data.confirmed = 1;\n x(this.data, pa.getFormData());\n this.send();\n },\n setJSONPTransport: function(pa) {\n pa.subscribe(\"response\", this._handleJSONPResponse.bind(this));\n pa.subscribe(\"abort\", this._handleJSONPAbort.bind(this));\n this.transport = pa;\n },\n _handleJSONPResponse: function(pa, qa) {\n this.is_first = ((this.is_first === undefined));\n var ra = this._interpretResponse(qa);\n ra.asyncResponse.is_first = this.is_first;\n ra.asyncResponse.is_last = this.transport.hasFinished();\n this.invokeResponseHandler(ra);\n if (this.transport.hasFinished()) {\n delete this.transport;\n }\n ;\n ;\n },\n _handleJSONPAbort: function() {\n this._invokeErrorHandler();\n delete this.transport;\n },\n _handleXHRResponse: function(pa) {\n var qa;\n if (this.getOption(\"suppressEvaluation\")) {\n qa = {\n asyncResponse: new h(this, pa)\n };\n }\n else {\n var ra = pa.responseText, sa = null;\n try {\n var ua = this._unshieldResponseText(ra);\n try {\n var va = (eval)(((((\"(\" + ua)) + \")\")));\n qa = this._interpretResponse(va);\n } catch (ta) {\n sa = \"excep\";\n qa = {\n transportError: ((\"eval() failed on async to \" + this.getURI()))\n };\n };\n ;\n } catch (ta) {\n sa = \"empty\";\n qa = {\n transportError: ta.message\n };\n };\n ;\n if (sa) {\n var wa = a.ErrorSignal;\n ((wa && wa.sendErrorSignal(\"async_xport_resp\", [((((this._xFbServer ? \"1008_\" : \"1012_\")) + sa)),((this._xFbServer || \"-\")),this.getURI(),ra.length,ra.substr(0, 1600),].join(\":\"))));\n }\n ;\n ;\n }\n ;\n ;\n this.invokeResponseHandler(qa);\n },\n _unshieldResponseText: function(pa) {\n var qa = \"for (;;);\", ra = qa.length;\n if (((pa.length <= ra))) {\n throw new Error(((\"Response too short on async to \" + this.getURI())));\n }\n ;\n ;\n var sa = 0;\n while (((((pa.charAt(sa) == \" \")) || ((pa.charAt(sa) == \"\\u000a\"))))) {\n sa++;\n ;\n };\n ;\n ((sa && ((pa.substring(sa, ((sa + ra))) == qa))));\n return pa.substring(((sa + ra)));\n },\n _interpretResponse: function(pa) {\n if (pa.redirect) {\n return {\n redirect: pa.redirect\n };\n }\n ;\n ;\n var qa = new h(this);\n if (((pa.__ar != 1))) {\n qa.payload = pa;\n }\n else x(qa, pa);\n ;\n ;\n return {\n asyncResponse: qa\n };\n },\n _onStateChange: ((window.top.JSBNG_Replay.push)((window.top.JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286), function() {\n try {\n if (((this.transport.readyState == 4))) {\n na._inflightCount--;\n na._inflightPurge();\n try {\n if (((((typeof (this.transport.getResponseHeader) !== \"undefined\")) && this.transport.getResponseHeader(\"X-FB-Debug\")))) {\n this._xFbServer = this.transport.getResponseHeader(\"X-FB-Debug\");\n }\n ;\n ;\n } catch (qa) {\n \n };\n ;\n if (((((this.transport.JSBNG__status >= 200)) && ((this.transport.JSBNG__status < 300))))) {\n na.lastSuccessTime = JSBNG__Date.now();\n this._handleXHRResponse(this.transport);\n }\n else if (((t.webkit() && ((typeof (this.transport.JSBNG__status) == \"undefined\"))))) {\n this._invokeErrorHandler(1002);\n }\n else if (((((k.retry_ajax_on_network_error && ja(this.transport))) && ((this.remainingRetries > 0))))) {\n this.remainingRetries--;\n delete this.transport;\n this.send(true);\n return;\n }\n else this._invokeErrorHandler();\n \n \n ;\n ;\n if (((this.getOption(\"asynchronous\") !== false))) {\n delete this.transport;\n }\n ;\n ;\n }\n ;\n ;\n } catch (pa) {\n if (ga()) {\n return;\n }\n ;\n ;\n delete this.transport;\n if (((this.remainingRetries > 0))) {\n this.remainingRetries--;\n this.send(true);\n }\n else {\n !this.getOption(\"suppressErrorAlerts\");\n var ra = a.ErrorSignal;\n ((ra && ra.sendErrorSignal(\"async_xport_resp\", [1007,((this._xFbServer || \"-\")),this.getURI(),pa.message,].join(\":\"))));\n this._invokeErrorHandler(1007);\n }\n ;\n ;\n };\n ;\n })),\n _isMultiplexable: function() {\n if (((this.getOption(\"jsonp\") || this.getOption(\"useIframeTransport\")))) {\n return false;\n }\n ;\n ;\n if (!this.uri.isFacebookURI()) {\n return false;\n }\n ;\n ;\n if (!this.getOption(\"asynchronous\")) {\n return false;\n }\n ;\n ;\n return true;\n },\n handleResponse: function(pa) {\n var qa = this._interpretResponse(pa);\n this.invokeResponseHandler(qa);\n },\n setMethod: function(pa) {\n this.method = pa.toString().toUpperCase();\n return this;\n },\n getMethod: function() {\n return this.method;\n },\n setData: function(pa) {\n this.data = pa;\n return this;\n },\n _setDataHash: function() {\n if (((((this.method != \"POST\")) || this.data.ttstamp))) {\n return;\n }\n ;\n ;\n if (((typeof this.data.fb_dtsg !== \"string\"))) {\n return;\n }\n ;\n ;\n var pa = \"\";\n for (var qa = 0; ((qa < this.data.fb_dtsg.length)); qa++) {\n pa += this.data.fb_dtsg.charCodeAt(qa);\n ;\n };\n ;\n this.data.ttstamp = ((\"2\" + pa));\n },\n setRawData: function(pa) {\n this.rawData = pa;\n return this;\n },\n getData: function() {\n return this.data;\n },\n setContextData: function(pa, qa, ra) {\n ra = ((((ra === undefined)) ? true : ra));\n if (ra) {\n this.context[((\"_log_\" + pa))] = qa;\n }\n ;\n ;\n return this;\n },\n _setUserActionID: function() {\n var pa = ((((a.ArbiterMonitor && a.ArbiterMonitor.getUE())) || \"-\"));\n this.userActionID = ((((((((a.EagleEye && a.EagleEye.getSessionID())) || \"-\")) + \"/\")) + pa));\n },\n setURI: function(pa) {\n var qa = s(pa);\n if (((this.getOption(\"useIframeTransport\") && !qa.isFacebookURI()))) {\n return this;\n }\n ;\n ;\n if (((((((!this._allowCrossOrigin && !this.getOption(\"jsonp\"))) && !this.getOption(\"useIframeTransport\"))) && !qa.isSameOrigin()))) {\n return this;\n }\n ;\n ;\n this._setUserActionID();\n if (((!pa || qa.isEmpty()))) {\n var ra = a.ErrorSignal, sa = a.getErrorStack;\n if (((ra && sa))) {\n var ta = {\n err_code: 1013,\n vip: \"-\",\n duration: 0,\n xfb_ip: \"-\",\n path: window.JSBNG__location.href,\n aid: this.userActionID\n };\n ra.sendErrorSignal(\"async_error\", JSON.stringify(ta));\n ra.sendErrorSignal(\"async_xport_stack\", [1013,window.JSBNG__location.href,null,sa(),].join(\":\"));\n }\n ;\n ;\n return this;\n }\n ;\n ;\n this.uri = qa;\n return this;\n },\n getURI: function() {\n return this.uri.toString();\n },\n setInitialHandler: function(pa) {\n this.initialHandler = pa;\n return this;\n },\n setHandler: function(pa) {\n if (ka(pa)) {\n this.handler = pa;\n }\n ;\n ;\n return this;\n },\n getHandler: function() {\n return this.handler;\n },\n setUploadProgressHandler: function(pa) {\n if (ka(pa)) {\n this.uploadProgressHandler = pa;\n }\n ;\n ;\n return this;\n },\n setErrorHandler: function(pa) {\n if (ka(pa)) {\n this.errorHandler = pa;\n }\n ;\n ;\n return this;\n },\n setTransportErrorHandler: function(pa) {\n this.transportErrorHandler = pa;\n return this;\n },\n getErrorHandler: function() {\n return this.errorHandler;\n },\n getTransportErrorHandler: function() {\n return this.transportErrorHandler;\n },\n setTimeoutHandler: function(pa, qa) {\n if (ka(qa)) {\n this.timeout = pa;\n this.timeoutHandler = qa;\n }\n ;\n ;\n return this;\n },\n resetTimeout: function(pa) {\n if (!((this.timeoutHandler === null))) {\n if (((pa === null))) {\n this.timeout = null;\n JSBNG__clearTimeout(this.timer);\n this.timer = null;\n }\n else {\n var qa = !this._allowCrossPageTransition;\n this.timeout = pa;\n JSBNG__clearTimeout(this.timer);\n this.timer = this._handleTimeout.bind(this).defer(this.timeout, qa);\n }\n ;\n }\n ;\n ;\n return this;\n },\n _handleTimeout: function() {\n this.abandon();\n this.timeoutHandler(this);\n },\n setNewSerial: function() {\n this.id = ++la;\n return this;\n },\n setInterceptHandler: function(pa) {\n this.interceptHandler = pa;\n return this;\n },\n setFinallyHandler: function(pa) {\n this.finallyHandler = pa;\n return this;\n },\n setAbortHandler: function(pa) {\n this.abortHandler = pa;\n return this;\n },\n getServerDialogCancelHandler: function() {\n return this.serverDialogCancelHandler;\n },\n setServerDialogCancelHandler: function(pa) {\n this.serverDialogCancelHandler = pa;\n return this;\n },\n setPreBootloadHandler: function(pa) {\n this.preBootloadHandler = pa;\n return this;\n },\n setReadOnly: function(pa) {\n if (!((typeof (pa) != \"boolean\"))) {\n this.readOnly = pa;\n }\n ;\n ;\n return this;\n },\n setFBMLForm: function() {\n this.writeRequiredParams = [\"fb_sig\",];\n return this;\n },\n getReadOnly: function() {\n return this.readOnly;\n },\n setRelativeTo: function(pa) {\n this.relativeTo = pa;\n return this;\n },\n getRelativeTo: function() {\n return this.relativeTo;\n },\n setStatusClass: function(pa) {\n this.statusClass = pa;\n return this;\n },\n setStatusElement: function(pa) {\n this.statusElement = pa;\n return this;\n },\n getStatusElement: function() {\n return aa(this.statusElement);\n },\n _isRelevant: function() {\n if (this._allowCrossPageTransition) {\n return true;\n }\n ;\n ;\n if (!this.id) {\n return true;\n }\n ;\n ;\n return ((this.id > ma));\n },\n clearStatusIndicator: function() {\n var pa = this.getStatusElement();\n if (pa) {\n j.removeClass(pa, \"async_saving\");\n j.removeClass(pa, this.statusClass);\n }\n ;\n ;\n },\n addStatusIndicator: function() {\n var pa = this.getStatusElement();\n if (pa) {\n j.addClass(pa, \"async_saving\");\n j.addClass(pa, this.statusClass);\n }\n ;\n ;\n },\n specifiesWriteRequiredParams: function() {\n return this.writeRequiredParams.every(function(pa) {\n this.data[pa] = ((((this.data[pa] || k[pa])) || ((aa(pa) || {\n })).value));\n if (((this.data[pa] !== undefined))) {\n return true;\n }\n ;\n ;\n return false;\n }, this);\n },\n setOption: function(pa, qa) {\n if (((typeof (this.option[pa]) != \"undefined\"))) {\n this.option[pa] = qa;\n }\n ;\n ;\n return this;\n },\n getOption: function(pa) {\n ((typeof (this.option[pa]) == \"undefined\"));\n return this.option[pa];\n },\n abort: function() {\n if (this.transport) {\n var pa = this.getTransportErrorHandler();\n this.setOption(\"suppressErrorAlerts\", true);\n this.setTransportErrorHandler(y);\n this._requestAborted = true;\n this.transport.abort();\n this.setTransportErrorHandler(pa);\n }\n ;\n ;\n this.abortHandler();\n },\n abandon: function() {\n JSBNG__clearTimeout(this.timer);\n this.setOption(\"suppressErrorAlerts\", true).setHandler(y).setErrorHandler(y).setTransportErrorHandler(y);\n if (this.transport) {\n this._requestAborted = true;\n this.transport.abort();\n }\n ;\n ;\n },\n setNectarData: function(pa) {\n if (pa) {\n if (((this.data.nctr === undefined))) {\n this.data.nctr = {\n };\n }\n ;\n ;\n x(this.data.nctr, pa);\n }\n ;\n ;\n return this;\n },\n setNectarModuleDataSafe: function(pa) {\n if (this.setNectarModuleData) {\n this.setNectarModuleData(pa);\n }\n ;\n ;\n return this;\n },\n setNectarImpressionIdSafe: function() {\n if (this.setNectarImpressionId) {\n this.setNectarImpressionId();\n }\n ;\n ;\n return this;\n },\n setAllowCrossPageTransition: function(pa) {\n this._allowCrossPageTransition = !!pa;\n if (this.timer) {\n this.resetTimeout(this.timeout);\n }\n ;\n ;\n return this;\n },\n setAllowCrossOrigin: function(pa) {\n this._allowCrossOrigin = pa;\n return this;\n },\n send: function(pa) {\n pa = ((pa || false));\n if (!this.uri) {\n return false;\n }\n ;\n ;\n ((!this.errorHandler && !this.getOption(\"suppressErrorHandlerWarning\")));\n if (((this.getOption(\"jsonp\") && ((this.method != \"GET\"))))) {\n this.setMethod(\"GET\");\n }\n ;\n ;\n if (((this.getOption(\"useIframeTransport\") && ((this.method != \"GET\"))))) {\n this.setMethod(\"GET\");\n }\n ;\n ;\n ((((this.timeoutHandler !== null)) && ((this.getOption(\"jsonp\") || this.getOption(\"useIframeTransport\")))));\n if (!this.getReadOnly()) {\n this.specifiesWriteRequiredParams();\n if (((this.method != \"POST\"))) {\n return false;\n }\n ;\n ;\n }\n ;\n ;\n x(this.data, u.getAsyncParams(this.method));\n if (!ca(this.context)) {\n x(this.data, this.context);\n this.data.ajax_log = 1;\n }\n ;\n ;\n if (k.force_param) {\n x(this.data, k.force_param);\n }\n ;\n ;\n this._setUserActionID();\n if (((this.getOption(\"bundle\") && this._isMultiplexable()))) {\n oa.schedule(this);\n return true;\n }\n ;\n ;\n this.setNewSerial();\n if (!this.getOption(\"asynchronous\")) {\n this.uri.addQueryData({\n __s: 1\n });\n }\n ;\n ;\n this.finallyHandler = v(this.finallyHandler, \"final\");\n var qa, ra;\n if (((((this.method == \"GET\")) || this.rawData))) {\n qa = this.uri.addQueryData(this.data).toString();\n ra = ((this.rawData || \"\"));\n }\n else {\n qa = this.uri.toString();\n this._setDataHash();\n ra = s.implodeQuery(this.data);\n }\n ;\n ;\n if (this.transport) {\n return false;\n }\n ;\n ;\n if (((this.getOption(\"jsonp\") || this.getOption(\"useIframeTransport\")))) {\n d([\"JSONPTransport\",], function(va) {\n var wa = new va(((this.getOption(\"jsonp\") ? \"jsonp\" : \"div\")), this.uri);\n this.setJSONPTransport(wa);\n wa.send();\n }.bind(this));\n return true;\n }\n ;\n ;\n var sa = u.create();\n if (!sa) {\n return false;\n }\n ;\n ;\n sa.JSBNG__onreadystatechange = v(this._onStateChange.bind(this), \"xhr\");\n if (((this.uploadProgressHandler && ha(sa)))) {\n sa.upload.JSBNG__onprogress = this.uploadProgressHandler.bind(this);\n }\n ;\n ;\n if (!pa) {\n this.remainingRetries = this.getOption(\"retries\");\n }\n ;\n ;\n if (((a.ErrorSignal || a.ArbiterMonitor))) {\n this._sendTimeStamp = ((this._sendTimeStamp || JSBNG__Date.now()));\n }\n ;\n ;\n this.transport = sa;\n try {\n this.transport.open(this.method, qa, this.getOption(\"asynchronous\"));\n } catch (ta) {\n return false;\n };\n ;\n var ua = k.svn_rev;\n if (ua) {\n this.transport.setRequestHeader(\"X-SVN-Rev\", String(ua));\n }\n ;\n ;\n if (((((!this.uri.isSameOrigin() && !this.getOption(\"jsonp\"))) && !this.getOption(\"useIframeTransport\")))) {\n if (!ia(this.transport)) {\n return false;\n }\n ;\n ;\n if (this.uri.isFacebookURI()) {\n this.transport.withCredentials = true;\n }\n ;\n ;\n }\n ;\n ;\n if (((((this.method == \"POST\")) && !this.rawData))) {\n this.transport.setRequestHeader(\"Content-Type\", \"application/x-www-form-urlencoded\");\n }\n ;\n ;\n g.inform(\"AsyncRequest/send\", {\n request: this\n });\n this.addStatusIndicator();\n this.transport.send(ra);\n if (((this.timeout !== null))) {\n this.resetTimeout(this.timeout);\n }\n ;\n ;\n na._inflightCount++;\n na._inflightAdd(this);\n return true;\n }\n });\n function oa() {\n this._requests = [];\n };\n;\n x(oa, {\n multiplex: null,\n schedule: function(pa) {\n if (!oa.multiplex) {\n oa.multiplex = new oa();\n (function() {\n oa.multiplex.send();\n oa.multiplex = null;\n }).defer();\n }\n ;\n ;\n oa.multiplex.add(pa);\n }\n });\n x(oa.prototype, {\n add: function(pa) {\n this._requests.push(pa);\n },\n send: function() {\n var pa = this._requests;\n if (!pa.length) {\n return;\n }\n ;\n ;\n var qa;\n if (((pa.length === 1))) {\n qa = pa[0];\n }\n else {\n var ra = pa.map(function(sa) {\n return [sa.uri.getPath(),s.implodeQuery(sa.data),];\n });\n qa = new na(\"/ajax/proxy.php\").setAllowCrossPageTransition(true).setData({\n data: ra\n }).setHandler(this._handler.bind(this)).setTransportErrorHandler(this._transportErrorHandler.bind(this));\n }\n ;\n ;\n qa.setOption(\"bundle\", false).send();\n },\n _handler: function(pa) {\n var qa = pa.getPayload().responses;\n if (((qa.length !== this._requests.length))) {\n return;\n }\n ;\n ;\n for (var ra = 0; ((ra < this._requests.length)); ra++) {\n var sa = this._requests[ra], ta = sa.uri.getPath();\n sa.id = this.id;\n if (((qa[ra][0] !== ta))) {\n sa.invokeResponseHandler({\n transportError: ((\"Wrong response order in bundled request to \" + ta))\n });\n continue;\n }\n ;\n ;\n sa.handleResponse(qa[ra][1]);\n };\n ;\n },\n _transportErrorHandler: function(pa) {\n var qa = {\n transportError: pa.errorDescription\n }, ra = this._requests.map(function(sa) {\n sa.id = this.id;\n sa.invokeResponseHandler(qa);\n return sa.uri.getPath();\n });\n }\n });\n e.exports = na;\n});\n__d(\"CookieCore\", [], function(a, b, c, d, e, f) {\n var g = {\n set: function(h, i, j, k, l) {\n JSBNG__document.cookie = ((((((((((((((((((h + \"=\")) + encodeURIComponent(i))) + \"; \")) + ((j ? ((((\"expires=\" + (new JSBNG__Date(((JSBNG__Date.now() + j)))).toGMTString())) + \"; \")) : \"\")))) + \"path=\")) + ((k || \"/\")))) + \"; domain=\")) + window.JSBNG__location.hostname.replace(/^.*(\\.facebook\\..*)$/i, \"$1\"))) + ((l ? \"; secure\" : \"\"))));\n },\n clear: function(h, i) {\n i = ((i || \"/\"));\n JSBNG__document.cookie = ((((((((((h + \"=; expires=Thu, 01-Jan-1970 00:00:01 GMT; \")) + \"path=\")) + i)) + \"; domain=\")) + window.JSBNG__location.hostname.replace(/^.*(\\.facebook\\..*)$/i, \"$1\")));\n },\n get: function(h) {\n var i = JSBNG__document.cookie.match(((((\"(?:^|;\\\\s*)\" + h)) + \"=(.*?)(?:;|$)\")));\n return ((i ? decodeURIComponent(i[1]) : i));\n }\n };\n e.exports = g;\n});\n__d(\"Cookie\", [\"CookieCore\",\"Env\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"CookieCore\"), h = b(\"Env\"), i = b(\"copyProperties\");\n function j(l, m, n, o, p) {\n if (((h.no_cookies && ((l != \"tpa\"))))) {\n return;\n }\n ;\n ;\n g.set(l, m, n, o, p);\n };\n;\n var k = i({\n }, g);\n k.set = j;\n e.exports = k;\n});\n__d(\"DOMControl\", [\"DataStore\",\"$\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"DataStore\"), h = b(\"$\"), i = b(\"copyProperties\");\n function j(k) {\n this.root = h(k);\n this.updating = false;\n g.set(k, \"DOMControl\", this);\n };\n;\n i(j.prototype, {\n getRoot: function() {\n return this.root;\n },\n beginUpdate: function() {\n if (this.updating) {\n return false;\n }\n ;\n ;\n this.updating = true;\n return true;\n },\n endUpdate: function() {\n this.updating = false;\n },\n update: function(k) {\n if (!this.beginUpdate()) {\n return this;\n }\n ;\n ;\n this.onupdate(k);\n this.endUpdate();\n },\n onupdate: function(k) {\n \n }\n });\n j.getInstance = function(k) {\n return g.get(k, \"DOMControl\");\n };\n e.exports = j;\n});\n__d(\"hyphenate\", [], function(a, b, c, d, e, f) {\n var g = /([A-Z])/g;\n function h(i) {\n return i.replace(g, \"-$1\").toLowerCase();\n };\n;\n e.exports = h;\n});\n__d(\"Style\", [\"DOMQuery\",\"UserAgent\",\"$\",\"copyProperties\",\"hyphenate\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMQuery\"), h = b(\"UserAgent\"), i = b(\"$\"), j = b(\"copyProperties\"), k = b(\"hyphenate\");\n function l(s) {\n return s.replace(/-(.)/g, function(t, u) {\n return u.toUpperCase();\n });\n };\n;\n function m(s, t) {\n var u = r.get(s, t);\n return ((((u === \"auto\")) || ((u === \"JSBNG__scroll\"))));\n };\n;\n var n = new RegExp(((((((((\"\\\\s*\" + \"([^\\\\s:]+)\")) + \"\\\\s*:\\\\s*\")) + \"([^;('\\\"]*(?:(?:\\\\([^)]*\\\\)|\\\"[^\\\"]*\\\"|'[^']*')[^;(?:'\\\"]*)*)\")) + \"(?:;|$)\")), \"g\");\n function o(s) {\n var t = {\n };\n s.replace(n, function(u, v, w) {\n t[v] = w;\n });\n return t;\n };\n;\n function p(s) {\n var t = \"\";\n {\n var fin39keys = ((window.top.JSBNG_Replay.forInKeys)((s))), fin39i = (0);\n var u;\n for (; (fin39i < fin39keys.length); (fin39i++)) {\n ((u) = (fin39keys[fin39i]));\n {\n if (s[u]) {\n t += ((((((u + \":\")) + s[u])) + \";\"));\n }\n ;\n ;\n };\n };\n };\n ;\n return t;\n };\n;\n function q(s) {\n return ((((s !== \"\")) ? ((((\"alpha(opacity=\" + ((s * 100)))) + \")\")) : \"\"));\n };\n;\n var r = {\n set: function(s, t, u) {\n switch (t) {\n case \"opacity\":\n if (((h.ie() < 9))) {\n s.style.filter = q(u);\n }\n else s.style.opacity = u;\n ;\n ;\n break;\n case \"float\":\n s.style.cssFloat = s.style.styleFloat = ((u || \"\"));\n break;\n default:\n try {\n s.style[l(t)] = u;\n } catch (v) {\n throw new Error(((((((((\"Style.set: \\\"\" + t)) + \"\\\" argument is invalid: \\\"\")) + u)) + \"\\\"\")));\n };\n ;\n };\n ;\n },\n apply: function(s, t) {\n var u;\n if (((((\"opacity\" in t)) && ((h.ie() < 9))))) {\n var v = t.opacity;\n t.filter = q(v);\n delete t.opacity;\n }\n ;\n ;\n var w = o(s.style.cssText);\n {\n var fin40keys = ((window.top.JSBNG_Replay.forInKeys)((t))), fin40i = (0);\n (0);\n for (; (fin40i < fin40keys.length); (fin40i++)) {\n ((u) = (fin40keys[fin40i]));\n {\n var x = t[u];\n delete t[u];\n u = k(u);\n {\n var fin41keys = ((window.top.JSBNG_Replay.forInKeys)((w))), fin41i = (0);\n var y;\n for (; (fin41i < fin41keys.length); (fin41i++)) {\n ((y) = (fin41keys[fin41i]));\n {\n if (((((y === u)) || ((y.indexOf(((u + \"-\"))) === 0))))) {\n delete w[y];\n }\n ;\n ;\n };\n };\n };\n ;\n t[u] = x;\n };\n };\n };\n ;\n t = j(w, t);\n s.style.cssText = p(t);\n if (((h.ie() < 9))) {\n {\n var fin42keys = ((window.top.JSBNG_Replay.forInKeys)((t))), fin42i = (0);\n (0);\n for (; (fin42i < fin42keys.length); (fin42i++)) {\n ((u) = (fin42keys[fin42i]));\n {\n if (!t[u]) {\n r.set(s, u, \"\");\n }\n ;\n ;\n };\n };\n };\n }\n ;\n ;\n },\n get: function(s, t) {\n s = i(s);\n var u;\n if (window.JSBNG__getComputedStyle) {\n u = window.JSBNG__getComputedStyle(s, null);\n if (u) {\n return u.getPropertyValue(k(t));\n }\n ;\n ;\n }\n ;\n ;\n if (((JSBNG__document.defaultView && JSBNG__document.defaultView.JSBNG__getComputedStyle))) {\n u = JSBNG__document.defaultView.JSBNG__getComputedStyle(s, null);\n if (u) {\n return u.getPropertyValue(k(t));\n }\n ;\n ;\n if (((t == \"display\"))) {\n return \"none\";\n }\n ;\n ;\n }\n ;\n ;\n t = l(t);\n if (s.currentStyle) {\n if (((t === \"float\"))) {\n return ((s.currentStyle.cssFloat || s.currentStyle.styleFloat));\n }\n ;\n ;\n return s.currentStyle[t];\n }\n ;\n ;\n return ((s.style && s.style[t]));\n },\n getFloat: function(s, t) {\n return parseFloat(r.get(s, t), 10);\n },\n getOpacity: function(s) {\n s = i(s);\n var t = r.get(s, \"filter\"), u = null;\n if (((t && (u = /(\\d+(?:\\.\\d+)?)/.exec(t))))) {\n return ((parseFloat(u.pop()) / 100));\n }\n else if (t = r.get(s, \"opacity\")) {\n return parseFloat(t);\n }\n else return 1\n \n ;\n },\n isFixed: function(s) {\n while (g.contains(JSBNG__document.body, s)) {\n if (((r.get(s, \"position\") === \"fixed\"))) {\n return true;\n }\n ;\n ;\n s = s.parentNode;\n };\n ;\n return false;\n },\n getScrollParent: function(s) {\n if (!s) {\n return null;\n }\n ;\n ;\n while (((s !== JSBNG__document.body))) {\n if (((((m(s, \"overflow\") || m(s, \"overflowY\"))) || m(s, \"overflowX\")))) {\n return s;\n }\n ;\n ;\n s = s.parentNode;\n };\n ;\n return window;\n }\n };\n e.exports = r;\n});\n__d(\"DOMDimensions\", [\"DOMQuery\",\"Style\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMQuery\"), h = b(\"Style\"), i = {\n getElementDimensions: function(j) {\n return {\n width: ((j.offsetWidth || 0)),\n height: ((j.offsetHeight || 0))\n };\n },\n getViewportDimensions: function() {\n var j = ((((((((window && window.JSBNG__innerWidth)) || ((((JSBNG__document && JSBNG__document.documentElement)) && JSBNG__document.documentElement.clientWidth)))) || ((((JSBNG__document && JSBNG__document.body)) && JSBNG__document.body.clientWidth)))) || 0)), k = ((((((((window && window.JSBNG__innerHeight)) || ((((JSBNG__document && JSBNG__document.documentElement)) && JSBNG__document.documentElement.clientHeight)))) || ((((JSBNG__document && JSBNG__document.body)) && JSBNG__document.body.clientHeight)))) || 0));\n return {\n width: j,\n height: k\n };\n },\n getViewportWithoutScrollbarDimensions: function() {\n var j = ((((((((JSBNG__document && JSBNG__document.documentElement)) && JSBNG__document.documentElement.clientWidth)) || ((((JSBNG__document && JSBNG__document.body)) && JSBNG__document.body.clientWidth)))) || 0)), k = ((((((((JSBNG__document && JSBNG__document.documentElement)) && JSBNG__document.documentElement.clientHeight)) || ((((JSBNG__document && JSBNG__document.body)) && JSBNG__document.body.clientHeight)))) || 0));\n return {\n width: j,\n height: k\n };\n },\n getDocumentDimensions: function(j) {\n j = ((j || JSBNG__document));\n var k = g.getDocumentScrollElement(j), l = ((k.scrollWidth || 0)), m = ((k.scrollHeight || 0));\n return {\n width: l,\n height: m\n };\n },\n measureElementBox: function(j, k, l, m, n) {\n var o;\n switch (k) {\n case \"left\":\n \n case \"right\":\n \n case \"JSBNG__top\":\n \n case \"bottom\":\n o = [k,];\n break;\n case \"width\":\n o = [\"left\",\"right\",];\n break;\n case \"height\":\n o = [\"JSBNG__top\",\"bottom\",];\n break;\n default:\n throw Error(((\"Invalid plane: \" + k)));\n };\n ;\n var p = function(q, r) {\n var s = 0;\n for (var t = 0; ((t < o.length)); t++) {\n s += ((parseInt(h.get(j, ((((((q + \"-\")) + o[t])) + r))), 10) || 0));\n ;\n };\n ;\n return s;\n };\n return ((((((l ? p(\"padding\", \"\") : 0)) + ((m ? p(\"border\", \"-width\") : 0)))) + ((n ? p(\"margin\", \"\") : 0))));\n }\n };\n e.exports = i;\n});\n__d(\"Focus\", [\"JSBNG__CSS\",\"DOM\",\"JSBNG__Event\",\"Run\",\"cx\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = b(\"DOM\"), i = b(\"JSBNG__Event\"), j = b(\"Run\"), k = b(\"cx\"), l = b(\"ge\"), m = {\n }, n, o = {\n set: function(s) {\n try {\n s.tabIndex = s.tabIndex;\n s.JSBNG__focus();\n } catch (t) {\n \n };\n ;\n },\n setWithoutOutline: function(s) {\n g.addClass(s, \"-cx-PRIVATE-focus__nooutline\");\n var t = i.listen(s, \"JSBNG__blur\", function() {\n g.removeClass(s, \"-cx-PRIVATE-focus__nooutline\");\n t.remove();\n });\n o.set(s);\n },\n relocate: function(s, t) {\n p();\n var u = h.getID(s);\n m[u] = t;\n g.addClass(s, \"-cx-PRIVATE-focus__nooutline\");\n j.onLeave(r.curry(u));\n },\n reset: function(s) {\n var t = h.getID(s);\n g.removeClass(s, \"-cx-PRIVATE-focus__nooutline\");\n if (m[t]) {\n g.removeClass(m[t], \"-cx-PRIVATE-focus__nativeoutline\");\n delete m[t];\n }\n ;\n ;\n }\n };\n function p() {\n if (n) {\n return;\n }\n ;\n ;\n i.listen(JSBNG__document.documentElement, \"focusout\", q);\n i.listen(JSBNG__document.documentElement, \"focusin\", q);\n n = true;\n };\n;\n function q(JSBNG__event) {\n var s = JSBNG__event.getTarget();\n if (!g.hasClass(s, \"-cx-PRIVATE-focus__nooutline\")) {\n return;\n }\n ;\n ;\n if (m[s.id]) {\n g.conditionClass(m[s.id], \"-cx-PRIVATE-focus__nativeoutline\", ((((JSBNG__event.type === \"focusin\")) || ((JSBNG__event.type === \"JSBNG__focus\")))));\n }\n ;\n ;\n };\n;\n function r(s) {\n if (((m[s] && !l(s)))) {\n delete m[s];\n }\n ;\n ;\n };\n;\n e.exports = o;\n});\n__d(\"Input\", [\"JSBNG__CSS\",\"DOMQuery\",\"DOMControl\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = b(\"DOMQuery\"), i = b(\"DOMControl\"), j = function(l) {\n var m = l.getAttribute(\"maxlength\");\n if (((m && ((m > 0))))) {\n d([\"enforceMaxLength\",], function(n) {\n n(l, m);\n });\n }\n ;\n ;\n }, k = {\n isEmpty: function(l) {\n return ((!(/\\S/).test(((l.value || \"\"))) || g.hasClass(l, \"DOMControl_placeholder\")));\n },\n getValue: function(l) {\n return ((k.isEmpty(l) ? \"\" : l.value));\n },\n setValue: function(l, m) {\n g.removeClass(l, \"DOMControl_placeholder\");\n l.value = ((m || \"\"));\n j(l);\n var n = i.getInstance(l);\n ((((n && n.resetHeight)) && n.resetHeight()));\n },\n setPlaceholder: function(l, m) {\n l.setAttribute(\"aria-label\", m);\n l.setAttribute(\"placeholder\", m);\n if (((l == JSBNG__document.activeElement))) {\n return;\n }\n ;\n ;\n if (k.isEmpty(l)) {\n g.conditionClass(l, \"DOMControl_placeholder\", m);\n l.value = ((m || \"\"));\n }\n ;\n ;\n },\n reset: function(l) {\n var m = ((((l !== JSBNG__document.activeElement)) ? ((l.getAttribute(\"placeholder\") || \"\")) : \"\"));\n l.value = m;\n g.conditionClass(l, \"DOMControl_placeholder\", m);\n l.style.height = \"\";\n },\n setSubmitOnEnter: function(l, m) {\n g.conditionClass(l, \"enter_submit\", m);\n },\n getSubmitOnEnter: function(l) {\n return g.hasClass(l, \"enter_submit\");\n },\n setMaxLength: function(l, m) {\n if (((m > 0))) {\n l.setAttribute(\"maxlength\", m);\n j(l);\n }\n else l.removeAttribute(\"maxlength\");\n ;\n ;\n }\n };\n e.exports = k;\n});\n__d(\"flattenArray\", [], function(a, b, c, d, e, f) {\n function g(h) {\n var i = h.slice(), j = [];\n while (i.length) {\n var k = i.pop();\n if (Array.isArray(k)) {\n Array.prototype.push.apply(i, k);\n }\n else j.push(k);\n ;\n ;\n };\n ;\n return j.reverse();\n };\n;\n e.exports = g;\n});\n__d(\"JSXDOM\", [\"DOM\",\"flattenArray\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"flattenArray\"), i = [\"a\",\"br\",\"button\",\"canvas\",\"checkbox\",\"dd\",\"div\",\"dl\",\"dt\",\"em\",\"form\",\"h1\",\"h2\",\"h3\",\"h4\",\"h5\",\"h6\",\"hr\",\"i\",\"div\",\"img\",\"input\",\"label\",\"li\",\"option\",\"p\",\"pre\",\"select\",\"span\",\"strong\",\"table\",\"tbody\",\"thead\",\"td\",\"textarea\",\"th\",\"tr\",\"ul\",\"video\",], j = {\n };\n i.forEach(function(k) {\n var l = function(m, n) {\n if (((arguments.length > 2))) {\n n = Array.prototype.slice.call(arguments, 1);\n }\n ;\n ;\n if (((!n && m))) {\n n = m.children;\n delete m.children;\n }\n ;\n ;\n if (n) {\n n = ((Array.isArray(n) ? h(n) : h([n,])));\n }\n ;\n ;\n return g.create(k, m, n);\n };\n j[k] = l;\n });\n e.exports = j;\n});\n__d(\"TidyArbiterMixin\", [\"Arbiter\",\"ArbiterMixin\",\"Run\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ArbiterMixin\"), i = b(\"Run\"), j = b(\"copyProperties\"), k = {\n };\n j(k, h, {\n _getArbiterInstance: function() {\n if (!this._arbiter) {\n this._arbiter = new g();\n i.onLeave(function() {\n delete this._arbiter;\n }.bind(this));\n }\n ;\n ;\n return this._arbiter;\n }\n });\n e.exports = k;\n});\n__d(\"TidyArbiter\", [\"TidyArbiterMixin\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"TidyArbiterMixin\"), h = b(\"copyProperties\"), i = {\n };\n h(i, g);\n e.exports = i;\n});\n__d(\"collectDataAttributes\", [\"getContextualParent\",], function(a, b, c, d, e, f) {\n var g = b(\"getContextualParent\");\n function h(i, j) {\n var k = {\n }, l = {\n }, m = j.length, n;\n for (n = 0; ((n < m)); ++n) {\n k[j[n]] = {\n };\n l[j[n]] = ((\"data-\" + j[n]));\n };\n ;\n var o = {\n tn: \"\",\n \"tn-debug\": \",\"\n };\n while (i) {\n if (i.getAttribute) {\n for (n = 0; ((n < m)); ++n) {\n var p = i.getAttribute(l[j[n]]);\n if (p) {\n var q = JSON.parse(p);\n {\n var fin43keys = ((window.top.JSBNG_Replay.forInKeys)((q))), fin43i = (0);\n var r;\n for (; (fin43i < fin43keys.length); (fin43i++)) {\n ((r) = (fin43keys[fin43i]));\n {\n if (((o[r] !== undefined))) {\n if (((k[j[n]][r] === undefined))) {\n k[j[n]][r] = [];\n }\n ;\n ;\n k[j[n]][r].push(q[r]);\n }\n else if (((k[j[n]][r] === undefined))) {\n k[j[n]][r] = q[r];\n }\n \n ;\n ;\n };\n };\n };\n ;\n }\n ;\n ;\n };\n }\n ;\n ;\n i = g(i);\n };\n ;\n {\n var fin44keys = ((window.top.JSBNG_Replay.forInKeys)((k))), fin44i = (0);\n var s;\n for (; (fin44i < fin44keys.length); (fin44i++)) {\n ((s) = (fin44keys[fin44i]));\n {\n {\n var fin45keys = ((window.top.JSBNG_Replay.forInKeys)((o))), fin45i = (0);\n var t;\n for (; (fin45i < fin45keys.length); (fin45i++)) {\n ((t) = (fin45keys[fin45i]));\n {\n if (((k[s][t] !== undefined))) {\n k[s][t] = k[s][t].join(o[t]);\n }\n ;\n ;\n };\n };\n };\n ;\n };\n };\n };\n ;\n return k;\n };\n;\n e.exports = h;\n});\n__d(\"csx\", [], function(a, b, c, d, e, f) {\n function g(h) {\n throw new Error(\"csx(...): Unexpected class selector transformation.\");\n };\n;\n e.exports = g;\n});\n__d(\"isInIframe\", [], function(a, b, c, d, e, f) {\n function g() {\n return ((window != window.JSBNG__top));\n };\n;\n e.exports = g;\n});\n__d(\"TimelineCoverCollapse\", [\"Arbiter\",\"DOMDimensions\",\"Style\",\"TidyArbiter\",\"$\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"DOMDimensions\"), i = b(\"Style\"), j = b(\"TidyArbiter\"), k = b(\"$\");\n f.collapse = function(l, m) {\n m--;\n var n = h.getViewportDimensions().height, o = h.getDocumentDimensions().height, p = ((n + m));\n if (((o <= p))) {\n i.set(k(\"pagelet_timeline_main_column\"), \"min-height\", ((p + \"px\")));\n }\n ;\n ;\n window.JSBNG__scrollBy(0, m);\n j.inform(\"TimelineCover/coverCollapsed\", m, g.BEHAVIOR_STATE);\n };\n});\n__d(\"foldl\", [], function(a, b, c, d, e, f) {\n function g(h, i, j) {\n var k = 0, l = i.length;\n if (((l === 0))) {\n if (((j === undefined))) {\n throw new TypeError(\"Reduce of empty array with no initial value\");\n }\n ;\n ;\n return j;\n }\n ;\n ;\n if (((j === undefined))) {\n j = i[k++];\n }\n ;\n ;\n while (((k < l))) {\n if (((k in i))) {\n j = h(j, i[k]);\n }\n ;\n ;\n k++;\n };\n ;\n return j;\n };\n;\n e.exports = g;\n});\n__d(\"FacebarStructuredFragment\", [], function(a, b, c, d, e, f) {\n function g(i, j) {\n if (((i && j))) {\n return ((i.toLowerCase() == j.toLowerCase()));\n }\n else return ((!i && !j))\n ;\n };\n;\n function h(i) {\n this._text = String(i.text);\n this._uid = ((i.uid ? String(i.uid) : null));\n this._type = ((i.type ? String(i.type) : null));\n this._typeParts = null;\n };\n;\n h.prototype.getText = function() {\n return this._text;\n };\n h.prototype.getUID = function() {\n return this._uid;\n };\n h.prototype.getType = function() {\n return this._type;\n };\n h.prototype.getTypePart = function(i) {\n return this._getTypeParts()[i];\n };\n h.prototype.getLength = function() {\n return this._text.length;\n };\n h.prototype.isType = function(i) {\n for (var j = 0; ((j < arguments.length)); j++) {\n if (!g(arguments[j], this.getTypePart(j))) {\n return false;\n }\n ;\n ;\n };\n ;\n return true;\n };\n h.prototype.isWhitespace = function() {\n return (/^\\s*$/).test(this._text);\n };\n h.prototype.toStruct = function() {\n return {\n text: this._text,\n type: this._type,\n uid: this._uid\n };\n };\n h.prototype.getHash = function(i) {\n var j = ((((i != null)) ? this._getTypeParts().slice(0, i).join(\":\") : this._type));\n return ((((j + \"::\")) + this._text));\n };\n h.prototype._getTypeParts = function() {\n if (((this._typeParts === null))) {\n this._typeParts = ((this._type ? this._type.split(\":\") : []));\n }\n ;\n ;\n return this._typeParts;\n };\n e.exports = h;\n});\n__d(\"FacebarStructuredText\", [\"createArrayFrom\",\"foldl\",\"FacebarStructuredFragment\",], function(a, b, c, d, e, f) {\n var g = b(\"createArrayFrom\"), h = b(\"foldl\"), i = b(\"FacebarStructuredFragment\"), j = /\\s+$/;\n function k(o) {\n if (!o) {\n return [];\n }\n else if (((o instanceof n))) {\n return o.toArray();\n }\n else return g(o).map(function(p) {\n return new i(p);\n })\n \n ;\n };\n;\n function l(o) {\n return new i({\n text: o,\n type: \"text\"\n });\n };\n;\n function m(o, p, q) {\n var r = o.getText(), s = r.replace(p, q);\n if (((r != s))) {\n return new i({\n text: s,\n type: o.getType(),\n uid: o.getUID()\n });\n }\n else return o\n ;\n };\n;\n function n(o) {\n this._fragments = ((o || []));\n this._hash = null;\n };\n;\n n.prototype.matches = function(o, p) {\n if (o) {\n var q = this._fragments, r = o._fragments;\n return ((((q.length == r.length)) && !q.some(function(s, t) {\n if (((!p && s.getUID()))) {\n return ((s.getUID() != r[t].getUID()));\n }\n else return ((((s.getText() != r[t].getText())) || ((s.getType() != r[t].getType()))))\n ;\n })));\n }\n ;\n ;\n return false;\n };\n n.prototype.trim = function() {\n var o = null, p = null;\n this.forEach(function(r, s) {\n if (!r.isWhitespace()) {\n if (((o === null))) {\n o = s;\n }\n ;\n ;\n p = s;\n }\n ;\n ;\n });\n if (((p !== null))) {\n var q = this._fragments.slice(o, ((p + 1)));\n q.push(m(q.pop(), j, \"\"));\n return new n(q);\n }\n else return new n([])\n ;\n };\n n.prototype.pad = function() {\n var o = this.getFragment(-1);\n if (((((o && !j.test(o.getText()))) && ((o.getText() !== \"\"))))) {\n return new n(this._fragments.concat(l(\" \")));\n }\n else return this\n ;\n };\n n.prototype.forEach = function(o) {\n this._fragments.forEach(o);\n return this;\n };\n n.prototype.matchType = function(o) {\n var p = null;\n for (var q = 0; ((q < this._fragments.length)); q++) {\n var r = this._fragments[q], s = r.isType.apply(r, arguments);\n if (((s && !p))) {\n p = r;\n }\n else if (((s || !r.isWhitespace()))) {\n return null;\n }\n \n ;\n ;\n };\n ;\n return p;\n };\n n.prototype.hasType = function(o) {\n var p = arguments;\n return this._fragments.some(function(q) {\n return ((!q.isWhitespace() && q.isType.apply(q, p)));\n });\n };\n n.prototype.isEmptyOrWhitespace = function() {\n return !this._fragments.some(function(o) {\n return !o.isWhitespace();\n });\n };\n n.prototype.isEmpty = function() {\n return ((this.getLength() === 0));\n };\n n.prototype.getFragment = function(o) {\n return this._fragments[((((o >= 0)) ? o : ((this._fragments.length + o))))];\n };\n n.prototype.getCount = function() {\n return this._fragments.length;\n };\n n.prototype.getLength = function() {\n return h(function(o, p) {\n return ((o + p.getLength()));\n }, this._fragments, 0);\n };\n n.prototype.toStruct = function() {\n return this._fragments.map(function(o) {\n return o.toStruct();\n });\n };\n n.prototype.toArray = function() {\n return this._fragments.slice();\n };\n n.prototype.toString = function() {\n return this._fragments.map(function(o) {\n return o.getText();\n }).join(\"\");\n };\n n.prototype.getHash = function() {\n if (((this._hash === null))) {\n this._hash = this._fragments.map(function(o) {\n if (o.getUID()) {\n return ((((\"[[\" + o.getHash(1))) + \"]]\"));\n }\n else return o.getText()\n ;\n }).join(\"\");\n }\n ;\n ;\n return this._hash;\n };\n n.fromStruct = function(o) {\n return new n(k(o));\n };\n n.fromString = function(o) {\n return new n([l(o),]);\n };\n e.exports = n;\n});\n__d(\"FacebarNavigation\", [\"Arbiter\",\"csx\",\"DOMQuery\",\"FacebarStructuredText\",\"Input\",\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"csx\"), i = b(\"DOMQuery\"), j = b(\"FacebarStructuredText\"), k = b(\"Input\"), l = b(\"URI\"), m = null, n = null, o = null, p = false, q = true, r = (function() {\n var v = {\n }, w = function(x) {\n return ((\"uri-\" + x.getQualifiedURI().toString()));\n };\n return {\n set: function(x, y) {\n v[w(x)] = y;\n },\n get: function(x) {\n return v[w(x)];\n }\n };\n })();\n function s(v, w) {\n o = v;\n p = w;\n q = false;\n t();\n };\n;\n function t() {\n if (q) {\n return;\n }\n else if (n) {\n ((p && n.pageTransition()));\n n.setPageQuery(o);\n q = true;\n }\n else if (((((m && o)) && !k.getValue(m)))) {\n k.setValue(m, ((o.structure.toString() + \" \")));\n }\n \n \n ;\n ;\n };\n;\n g.subscribe(\"page_transition\", function(v, w) {\n s(r.get(w.uri), true);\n });\n var u = {\n registerInput: function(v) {\n m = i.scry(v, \".-cx-PUBLIC-uiStructuredInput__text\")[0];\n t();\n },\n registerBehavior: function(v) {\n n = v;\n t();\n },\n setPageQuery: function(v) {\n r.set(l.getNextURI(), v);\n v.structure = j.fromStruct(v.structure);\n s(v, false);\n }\n };\n e.exports = u;\n});\n__d(\"LayerRemoveOnHide\", [\"function-extensions\",\"DOM\",\"copyProperties\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"DOM\"), h = b(\"copyProperties\");\n function i(j) {\n this._layer = j;\n };\n;\n h(i.prototype, {\n _subscription: null,\n enable: function() {\n this._subscription = this._layer.subscribe(\"hide\", g.remove.curry(this._layer.getRoot()));\n },\n disable: function() {\n if (this._subscription) {\n this._subscription.unsubscribe();\n this._subscription = null;\n }\n ;\n ;\n }\n });\n e.exports = i;\n});\n__d(\"Keys\", [], function(a, b, c, d, e, f) {\n e.exports = {\n BACKSPACE: 8,\n TAB: 9,\n RETURN: 13,\n ESC: 27,\n SPACE: 32,\n PAGE_UP: 33,\n PAGE_DOWN: 34,\n END: 35,\n HOME: 36,\n LEFT: 37,\n UP: 38,\n RIGHT: 39,\n DOWN: 40,\n DELETE: 46,\n COMMA: 188\n };\n});\n__d(\"areObjectsEqual\", [], function(a, b, c, d, e, f) {\n function g(h, i) {\n return ((JSON.stringify(h) == JSON.stringify(i)));\n };\n;\n e.exports = g;\n});\n__d(\"sprintf\", [], function(a, b, c, d, e, f) {\n function g(h, i) {\n i = Array.prototype.slice.call(arguments, 1);\n var j = 0;\n return h.replace(/%s/g, function(k) {\n return i[j++];\n });\n };\n;\n e.exports = g;\n});"); |
| // 1151 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o10,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yJ/r/MAGRPTCpjAg.js",o11); |
| // undefined |
| o10 = null; |
| // undefined |
| o11 = null; |
| // 1156 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"XH2Cu\",]);\n}\n;\n__d(\"AjaxRequest\", [\"ErrorUtils\",\"Keys\",\"URI\",\"UserAgent\",\"XHR\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ErrorUtils\"), h = b(\"Keys\"), i = b(\"URI\"), j = b(\"UserAgent\"), k = b(\"XHR\"), l = b(\"copyProperties\");\n function m(q, r, s) {\n this.xhr = k.create();\n if (!((r instanceof i))) {\n r = new i(r);\n };\n if ((s && (q == \"GET\"))) {\n r.setQueryData(s);\n }\n else this._params = s;\n ;\n this.method = q;\n this.uri = r;\n this.xhr.open(q, r);\n };\n var n = (window.XMLHttpRequest && ((\"withCredentials\" in new XMLHttpRequest())));\n m.supportsCORS = function() {\n return n;\n };\n m.ERROR = \"ar:error\";\n m.TIMEOUT = \"ar:timeout\";\n m.PROXY_ERROR = \"ar:proxy error\";\n m.TRANSPORT_ERROR = \"ar:transport error\";\n m.SERVER_ERROR = \"ar:http error\";\n m.PARSE_ERROR = \"ar:parse error\";\n m._inflight = [];\n function o() {\n var q = m._inflight;\n m._inflight = [];\n q.forEach(function(r) {\n r.abort();\n });\n };\n function p(q) {\n q.onJSON = q.onError = q.onSuccess = null;\n clearTimeout(q._timer);\n if ((q.xhr && (q.xhr.readyState < 4))) {\n q.xhr.abort();\n q.xhr = null;\n }\n ;\n m._inflight = m._inflight.filter(function(r) {\n return (((r && (r != q)) && r.xhr) && (r.xhr.readyState < 4));\n });\n };\n l(m.prototype, {\n timeout: 60000,\n streamMode: true,\n prelude: /^for \\(;;\\);/,\n status: null,\n _eol: -1,\n _call: function(q) {\n if (this[q]) {\n this[q](this);\n };\n },\n _parseStatus: function() {\n var q;\n try {\n this.status = this.xhr.status;\n q = this.xhr.statusText;\n } catch (r) {\n if ((this.xhr.readyState >= 4)) {\n this.errorType = m.TRANSPORT_ERROR;\n this.errorText = r.message;\n }\n ;\n return;\n };\n if (((this.status === 0) && !(/^(file|ftp)/.test(this.uri)))) {\n this.errorType = m.TRANSPORT_ERROR;\n }\n else if (((this.status >= 100) && (this.status < 200))) {\n this.errorType = m.PROXY_ERROR;\n }\n else if (((this.status >= 200) && (this.status < 300))) {\n return;\n }\n else if (((this.status >= 300) && (this.status < 400))) {\n this.errorType = m.PROXY_ERROR;\n }\n else if (((this.status >= 400) && (this.status < 500))) {\n this.errorType = m.SERVER_ERROR;\n }\n else if (((this.status >= 500) && (this.status < 600))) {\n this.errorType = m.PROXY_ERROR;\n }\n else if ((this.status == 1223)) {\n return;\n }\n else if (((this.status >= 12001) && (this.status <= 12156))) {\n this.errorType = m.TRANSPORT_ERROR;\n }\n else {\n q = (\"unrecognized status code: \" + this.status);\n this.errorType = m.ERROR;\n }\n \n \n \n \n \n \n \n ;\n if (!this.errorText) {\n this.errorText = q;\n };\n },\n _parseResponse: function() {\n var q, r = this.xhr.readyState;\n try {\n q = (this.xhr.responseText || \"\");\n } catch (s) {\n if ((r >= 4)) {\n this.errorType = m.ERROR;\n this.errorText = (\"responseText not available - \" + s.message);\n }\n ;\n return;\n };\n while (this.xhr) {\n var t = (this._eol + 1), u = (this.streamMode ? q.indexOf(\"\\u000a\", t) : q.length);\n if (((u < 0) && (r == 4))) {\n u = q.length;\n };\n if ((u <= this._eol)) {\n break;\n };\n var v = q;\n if (this.streamMode) {\n v = q.substr(t, (u - t)).replace(/^\\s*|\\s*$/g, \"\");\n };\n if (((t === 0) && this.prelude)) {\n if (this.prelude.test(v)) {\n v = v.replace(this.prelude, \"\");\n }\n };\n this._eol = u;\n if (v) {\n try {\n this.json = JSON.parse(v);\n } catch (s) {\n var w = ((/(<body[\\S\\s]+?<\\/body>)/i).test(q) && RegExp.$1), x = {\n message: s.message,\n char: t,\n excerpt: (((((t === 0) && w)) || v)).substr(512)\n };\n this.errorType = m.PARSE_ERROR;\n this.errorText = (\"parse error - \" + JSON.stringify(x));\n return;\n };\n g.applyWithGuard(this._call, this, [\"onJSON\",]);\n }\n ;\n };\n },\n _onReadyState: function() {\n var q = ((this.xhr && this.xhr.readyState) || 0);\n if (((this.status == null) && (q >= 2))) {\n this._parseStatus();\n };\n if ((!this.errorType && (this.status != null))) {\n if (((((q == 3) && this.streamMode)) || (q == 4))) {\n this._parseResponse();\n }\n };\n if ((this.errorType || (q == 4))) {\n this._time = (Date.now() - this._sentAt);\n this._call((!this.errorType ? \"onSuccess\" : \"onError\"));\n p(this);\n }\n ;\n },\n send: function(q) {\n this.xhr.onreadystatechange = function() {\n g.applyWithGuard(this._onReadyState, this, arguments);\n }.bind(this);\n var r = this.timeout;\n if (r) {\n this._timer = setTimeout((function() {\n this.errorType = m.TIMEOUT;\n this.errorText = \"timeout\";\n this._time = (Date.now() - this._sentAt);\n this._call(\"onError\");\n p(this);\n }).bind(this), r, false);\n };\n m._inflight.push(this);\n if ((this.method == \"POST\")) {\n this.xhr.setRequestHeader(\"Content-Type\", \"application/x-www-form-urlencoded\");\n };\n this._sentAt = Date.now();\n this.xhr.send((q ? i.implodeQuery(q) : \"\"));\n },\n abort: function() {\n p(this);\n },\n toString: function() {\n var q = (\"[AjaxRequest readyState=\" + this.xhr.readyState);\n if (this.errorType) {\n q += ((((\" errorType=\" + this.errorType) + \" (\") + this.errorText) + \")\");\n };\n return (q + \"]\");\n },\n toJSON: function() {\n var q = {\n json: this.json,\n status: this.status,\n errorType: this.errorType,\n errorText: this.errorText,\n time: this._time\n };\n if (this.errorType) {\n q.uri = this.uri;\n };\n for (var r in q) {\n if ((q[r] == null)) {\n delete q[r];\n };\n };\n return q;\n }\n });\n if ((window.addEventListener && j.firefox())) {\n window.addEventListener(\"keydown\", function(event) {\n if ((event.keyCode === h.ESC)) {\n event.prevent();\n };\n }, false);\n };\n if (window.attachEvent) {\n window.attachEvent(\"onunload\", o);\n };\n e.exports = m;\n});\n__d(\"FBAjaxRequest\", [\"AjaxRequest\",\"copyProperties\",\"XHR\",], function(a, b, c, d, e, f) {\n var g = b(\"AjaxRequest\"), h = b(\"copyProperties\"), i = b(\"XHR\");\n function j(k, l, m) {\n m = h(i.getAsyncParams(k), m);\n var n = new g(k, l, m);\n n.streamMode = false;\n var o = n._call;\n n._call = function(p) {\n if (((p == \"onJSON\") && this.json)) {\n if (this.json.error) {\n this.errorType = g.SERVER_ERROR;\n this.errorText = (\"AsyncResponse error: \" + this.json.error);\n }\n ;\n this.json = this.json.payload;\n }\n ;\n o.apply(this, arguments);\n };\n n.ajaxReqSend = n.send;\n n.send = function(p) {\n this.ajaxReqSend(h(p, m));\n };\n return n;\n };\n e.exports = j;\n});\n__d(\"CallbackManagerController\", [\"ErrorUtils\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ErrorUtils\"), h = b(\"copyProperties\"), i = function(j) {\n this._pendingIDs = [];\n this._allRequests = [undefined,];\n this._callbackArgHandler = j;\n };\n h(i.prototype, {\n executeOrEnqueue: function(j, k, l) {\n l = (l || {\n });\n var m = this._attemptCallback(k, j, l);\n if (m) {\n return 0\n };\n this._allRequests.push({\n fn: k,\n request: j,\n options: l\n });\n var n = (this._allRequests.length - 1);\n this._pendingIDs.push(n);\n return n;\n },\n unsubscribe: function(j) {\n delete this._allRequests[j];\n },\n reset: function() {\n this._allRequests = [];\n },\n getRequest: function(j) {\n return this._allRequests[j];\n },\n runPossibleCallbacks: function() {\n var j = this._pendingIDs;\n this._pendingIDs = [];\n var k = [];\n j.forEach(function(l) {\n var m = this._allRequests[l];\n if (!m) {\n return\n };\n if (this._callbackArgHandler(m.request, m.options)) {\n k.push(l);\n }\n else this._pendingIDs.push(l);\n ;\n }.bind(this));\n k.forEach(function(l) {\n var m = this._allRequests[l];\n delete this._allRequests[l];\n this._attemptCallback(m.fn, m.request, m.options);\n }.bind(this));\n },\n _attemptCallback: function(j, k, l) {\n var m = this._callbackArgHandler(k, l);\n if (m) {\n var n = {\n ids: k\n };\n g.applyWithGuard(j, n, m);\n }\n ;\n return !!m;\n }\n });\n e.exports = i;\n});\n__d(\"deferred\", [], function(a, b, c, d, e, f) {\n var g = 0, h = 1, i = 2, j = 4, k = \"callbacks\", l = \"errbacks\", m = \"cancelbacks\", n = \"completeCallbacks\", o = [], p = o.slice, q = o.unshift;\n function r(x, y) {\n return (x ? p.call(x, y) : o);\n };\n function s(x, y) {\n return ((y < x.length) ? r(x, y) : o);\n };\n function t() {\n this.$Deferred0 = g;\n };\n t.prototype.addCallback = function(x, y) {\n return this.$Deferred1(h, this.$Deferred2(k), x, y, s(arguments, 2));\n };\n t.prototype.removeCallback = function(x, y) {\n return this.$Deferred3(this.$Deferred2(k), x, y);\n };\n t.prototype.addCompleteCallback = function(x, y) {\n return this.$Deferred1(null, this.$Deferred2(n), x, y, s(arguments, 2));\n };\n t.prototype.removeCompleteCallback = function(x, y) {\n return this.$Deferred3(this.$Deferred2(n), x, y);\n };\n t.prototype.addErrback = function(x, y) {\n return this.$Deferred1(i, this.$Deferred2(l), x, y, s(arguments, 2));\n };\n t.prototype.removeErrback = function(x, y) {\n return this.$Deferred3(this.$Deferred2(l), x, y);\n };\n t.prototype.addCancelback = function(x, y) {\n return this.$Deferred1(j, this.$Deferred2(m), x, y, s(arguments, 2));\n };\n t.prototype.removeCancelback = function(x, y) {\n return this.$Deferred3(this.$Deferred2(m), x, y);\n };\n t.prototype.getStatus = function() {\n return this.$Deferred0;\n };\n t.prototype.setStatus = function(x) {\n var y;\n this.$Deferred0 = x;\n this.callbackArgs = r(arguments, 1);\n if ((x === i)) {\n y = l;\n }\n else if ((x === h)) {\n y = k;\n }\n else if ((x === j)) {\n y = m;\n }\n \n ;\n if (y) {\n this.$Deferred4(this[y], this.callbackArgs);\n };\n this.$Deferred4(this[n], this.callbackArgs);\n return this;\n };\n t.prototype.setTimeout = function(x) {\n if (this.timeout) {\n this.clearTimeout();\n };\n this.$Deferred5 = (this.$Deferred5 || this.fail.bind(this));\n this.timeout = window.setTimeout(this.$Deferred5, x);\n };\n t.prototype.clearTimeout = function() {\n window.clearTimeout(this.timeout);\n delete this.timeout;\n };\n t.prototype.succeed = function() {\n return this.$Deferred6(h, arguments);\n };\n t.prototype.fail = function() {\n return this.$Deferred6(i, arguments);\n };\n t.prototype.cancel = function() {\n delete this[k];\n delete this[l];\n return this.$Deferred6(j, arguments);\n };\n t.prototype.$Deferred6 = function(x, y) {\n q.call(y, x);\n return this.setStatus.apply(this, y);\n };\n t.prototype.$Deferred2 = function(x) {\n return (this[x] || (this[x] = []));\n };\n t.prototype.then = function(x, y, z, aa) {\n var ba = new t(), x, ca, da, ea = r(arguments, 0);\n if ((typeof ea[0] === \"function\")) {\n x = ea.shift();\n };\n if ((typeof ea[0] === \"function\")) {\n ca = ea.shift();\n };\n if ((typeof ea[0] === \"function\")) {\n da = ea.shift();\n };\n var fa = ea.shift();\n if (x) {\n var ga = [this.$Deferred7,this,ba,\"succeed\",x,fa,].concat(ea);\n this.addCallback.apply(this, ga);\n }\n else this.addCallback(ba.succeed, ba);\n ;\n if (ca) {\n var ha = [this.$Deferred7,this,ba,\"fail\",ca,fa,].concat(ea);\n this.addErrback.apply(this, ha);\n }\n else this.addErrback(ba.fail, ba);\n ;\n if (da) {\n var ia = [this.$Deferred7,this,ba,\"cancel\",da,fa,].concat(ea);\n this.addCancelback.apply(this, ia);\n }\n else this.addCancelback(ba.cancel, ba);\n ;\n return ba;\n };\n t.prototype.$Deferred1 = function(x, y, z, aa, ba) {\n var ca = this.getStatus();\n if ((((!x && (ca !== g))) || (ca === x))) {\n z.apply((aa || this), ba.concat(this.callbackArgs));\n }\n else y.push(z, aa, ba);\n ;\n return this;\n };\n t.prototype.$Deferred3 = function(x, y, z) {\n for (var aa = 0; (aa < x.length); aa += 3) {\n if (((x[aa] === y) && ((!z || (x[(aa + 1)] === z))))) {\n x.splice(aa, 3);\n if (z) {\n break;\n };\n aa -= 3;\n }\n ;\n };\n return this;\n };\n t.prototype.pipe = function(x) {\n this.addCallback(x.succeed, x).addErrback(x.fail, x).addCancelback(x.cancel, x);\n };\n t.prototype.$Deferred4 = function(x, y) {\n for (var z = 0; (z < ((x || o)).length); z += 3) {\n x[z].apply((x[(z + 1)] || this), ((x[(z + 2)] || o)).concat(y));;\n };\n };\n t.prototype.$Deferred7 = function(x, y, z, aa) {\n var ba = r(arguments, 4), ca = z.apply(aa, ba);\n if ((ca instanceof t)) {\n ca.pipe(x);\n }\n else x[y](ca);\n ;\n };\n for (var u in t) {\n if ((t.hasOwnProperty(u) && (u !== \"_metaprototype\"))) {\n w[u] = t[u];\n };\n };\n var v = ((t === null) ? null : t.prototype);\n w.prototype = Object.create(v);\n w.prototype.constructor = w;\n w.__superConstructor__ = t;\n function w(x) {\n t.call(this);\n this.completed = 0;\n this.list = [];\n if (x) {\n x.forEach(this.waitFor, this);\n this.startWaiting();\n }\n ;\n };\n w.prototype.startWaiting = function() {\n this.waiting = true;\n this.checkDeferreds();\n return this;\n };\n w.prototype.waitFor = function(x) {\n this.list.push(x);\n this.checkDeferreds();\n x.addCompleteCallback(this.deferredComplete, this);\n return this;\n };\n w.prototype.createWaitForDeferred = function() {\n var x = new t();\n this.waitFor(x);\n return x;\n };\n w.prototype.createWaitForCallback = function() {\n var x = this.createWaitForDeferred();\n return x.succeed.bind(x);\n };\n w.prototype.deferredComplete = function() {\n this.completed++;\n if ((this.completed === this.list.length)) {\n this.checkDeferreds();\n };\n };\n w.prototype.checkDeferreds = function() {\n if ((!this.waiting || (this.completed !== this.list.length))) {\n return\n };\n var x = false, y = false, z = [g,];\n for (var aa = 0, ba = this.list.length; (aa < ba); aa++) {\n var ca = this.list[aa];\n z.push([ca,].concat(ca.callbackArgs));\n if ((ca.getStatus() === i)) {\n x = true;\n }\n else if ((ca.getStatus() === j)) {\n y = true;\n }\n ;\n };\n if (x) {\n z[0] = i;\n this.fail.apply(this, z);\n }\n else if (y) {\n z[0] = j;\n this.cancel.apply(this, z);\n }\n else {\n z[0] = h;\n this.succeed.apply(this, z);\n }\n \n ;\n };\n f.Deferred = t;\n f.DeferredList = w;\n f.Deferred.toArray = r;\n f.Deferred.STATUS_UNKNOWN = g;\n f.Deferred.STATUS_SUCCEEDED = h;\n f.Deferred.STATUS_CANCELED = j;\n f.Deferred.STATUS_FAILED = i;\n});\n__d(\"KeyedCallbackManager\", [\"CallbackManagerController\",\"deferred\",\"ErrorUtils\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"CallbackManagerController\"), h = b(\"deferred\").Deferred, i = b(\"ErrorUtils\"), j = b(\"copyProperties\"), k = function() {\n this._resources = {\n };\n this._controller = new g(this._constructCallbackArg.bind(this));\n };\n j(k.prototype, {\n executeOrEnqueue: function(l, m) {\n if (!((l instanceof Array))) {\n var n = l, o = m;\n l = [l,];\n m = function(p) {\n o(p[n]);\n };\n }\n ;\n l = l.filter(function(p) {\n var q = (((p !== null) && (p !== undefined)));\n if (!q) {\n i.applyWithGuard(function() {\n throw new Error(((\"KeyedCallbackManager.executeOrEnqueue: key \" + JSON.stringify(p)) + \" is invalid\"));\n });\n };\n return q;\n });\n return this._controller.executeOrEnqueue(l, m);\n },\n deferredExecuteOrEnqueue: function(l) {\n var m = new h();\n this.executeOrEnqueue(l, m.succeed.bind(m));\n return m;\n },\n unsubscribe: function(l) {\n this._controller.unsubscribe(l);\n },\n reset: function() {\n this._controller.reset();\n this._resources = {\n };\n },\n getUnavailableResources: function(l) {\n var m = this._controller.getRequest(l), n = [];\n if (m) {\n n = m.request.filter(function(o) {\n return !this._resources[o];\n }.bind(this));\n };\n return n;\n },\n getUnavailableResourcesFromRequest: function(l) {\n var m = (Array.isArray(l) ? l : [l,]);\n return m.filter(function(n) {\n if (((n !== null) && (n !== undefined))) {\n return !this._resources[n]\n };\n }, this);\n },\n addResourcesAndExecute: function(l) {\n j(this._resources, l);\n this._controller.runPossibleCallbacks();\n },\n setResource: function(l, m) {\n this._resources[l] = m;\n this._controller.runPossibleCallbacks();\n },\n getResource: function(l) {\n return this._resources[l];\n },\n getAllResources: function() {\n return this._resources;\n },\n dumpResources: function() {\n var l = {\n };\n for (var m in this._resources) {\n var n = this._resources[m];\n if ((typeof n === \"object\")) {\n n = j({\n }, n);\n };\n l[m] = n;\n };\n return l;\n },\n _constructCallbackArg: function(l) {\n var m = {\n };\n for (var n = 0; (n < l.length); n++) {\n var o = l[n], p = this._resources[o];\n if ((typeof p == \"undefined\")) {\n return false\n };\n m[o] = p;\n };\n return [m,];\n }\n });\n e.exports = k;\n});\n__d(\"BaseAsyncLoader\", [\"KeyedCallbackManager\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"KeyedCallbackManager\"), h = b(\"copyProperties\"), i = {\n };\n function j(l, m, n) {\n var o = new g(), p = false, q = [];\n function r() {\n if ((!q.length || p)) {\n return\n };\n p = true;\n t.defer();\n };\n function s(w) {\n p = false;\n w.forEach(o.unsubscribe.bind(o));\n r();\n };\n function t() {\n var w = {\n }, x = [];\n q = q.filter(function(z) {\n var aa = o.getUnavailableResources(z);\n if (aa.length) {\n aa.forEach(function(ba) {\n w[ba] = true;\n });\n x.push(z);\n return true;\n }\n ;\n return false;\n });\n var y = Object.keys(w);\n if (y.length) {\n n(l, y, x, u.curry(x), v.curry(x));\n }\n else p = false;\n ;\n };\n function u(w, x) {\n var y = (x.payload[m] || x.payload);\n o.addResourcesAndExecute(y);\n s(w);\n };\n function v(w) {\n s(w);\n };\n return {\n get: function(w, x) {\n var y = o.executeOrEnqueue(w, x), z = o.getUnavailableResources(y);\n if (z.length) {\n q.push(y);\n r();\n }\n ;\n },\n getCachedKeys: function() {\n return Object.keys(o.getAllResources());\n },\n getNow: function(w) {\n return (o.getResource(w) || null);\n },\n set: function(w) {\n o.addResourcesAndExecute(w);\n }\n };\n };\n function k(l, m) {\n throw (\"BaseAsyncLoader can't be instantiated\");\n };\n h(k.prototype, {\n _getLoader: function() {\n if (!i[this._endpoint]) {\n i[this._endpoint] = j(this._endpoint, this._type, this.send);\n };\n return i[this._endpoint];\n },\n get: function(l, m) {\n return this._getLoader().get(l, m);\n },\n getCachedKeys: function() {\n return this._getLoader().getCachedKeys();\n },\n getNow: function(l) {\n return this._getLoader().getNow(l);\n },\n reset: function() {\n i[this._endpoint] = null;\n },\n set: function(l) {\n this._getLoader().set(l);\n }\n });\n e.exports = k;\n});\n__d(\"AjaxLoader\", [\"copyProperties\",\"FBAjaxRequest\",\"BaseAsyncLoader\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"FBAjaxRequest\"), i = b(\"BaseAsyncLoader\");\n function j(k, l) {\n this._endpoint = k;\n this._type = l;\n };\n g(j.prototype, i.prototype);\n j.prototype.send = function(k, l, m, n, o) {\n var p = new h(\"GET\", k, {\n ids: l\n });\n p.onJSON = function(q) {\n n({\n payload: q.json\n });\n };\n p.onError = o;\n p.send();\n };\n e.exports = j;\n});\n__d(\"ChannelConstants\", [], function(a, b, c, d, e, f) {\n var g = \"channel/\", h = {\n ON_SHUTDOWN: (g + \"shutdown\"),\n ON_INVALID_HISTORY: (g + \"invalid_history\"),\n ON_CONFIG: (g + \"config\"),\n ON_ENTER_STATE: (g + \"enter_state\"),\n ON_EXIT_STATE: (g + \"exit_state\"),\n OK: \"ok\",\n ERROR: \"error\",\n ERROR_MAX: \"error_max\",\n ERROR_MISSING: \"error_missing\",\n ERROR_MSG_TYPE: \"error_msg_type\",\n ERROR_SHUTDOWN: \"error_shutdown\",\n ERROR_STALE: \"error_stale\",\n SYS_OWNER: \"sys_owner\",\n SYS_NONOWNER: \"sys_nonowner\",\n SYS_ONLINE: \"sys_online\",\n SYS_OFFLINE: \"sys_offline\",\n SYS_TIMETRAVEL: \"sys_timetravel\",\n HINT_AUTH: \"shutdown auth\",\n HINT_CONN: \"shutdown conn\",\n HINT_DISABLED: \"shutdown disabled\",\n HINT_INVALID_STATE: \"shutdown invalid state\",\n HINT_MAINT: \"shutdown maint\",\n HINT_UNSUPPORTED: \"shutdown unsupported\",\n reason_Unknown: 0,\n reason_AsyncError: 1,\n reason_TooLong: 2,\n reason_Refresh: 3,\n reason_RefreshDelay: 4,\n reason_UIRestart: 5,\n reason_NeedSeq: 6,\n reason_PrevFailed: 7,\n reason_IFrameLoadGiveUp: 8,\n reason_IFrameLoadRetry: 9,\n reason_IFrameLoadRetryWorked: 10,\n reason_PageTransitionRetry: 11,\n reason_IFrameLoadMaxSubdomain: 12,\n reason_NoChannelInfo: 13,\n reason_NoChannelHost: 14,\n CAPABILITY_VOIP: 8,\n getArbiterType: function(i) {\n return ((g + \"message:\") + i);\n }\n };\n e.exports = h;\n});\n__d(\"ShortProfiles\", [\"ArbiterMixin\",\"AjaxLoader\",\"Env\",\"FBAjaxRequest\",\"JSLogger\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"AjaxLoader\"), i = b(\"Env\"), j = b(\"FBAjaxRequest\"), k = b(\"JSLogger\"), l = b(\"copyProperties\"), m = \"/ajax/chat/user_info.php\", n = \"/ajax/chat/user_info_all.php\", o = new h(m, \"profiles\"), p = false, q = k.create(\"short_profiles\");\n function r() {\n if (!p) {\n q.log(\"fetch_all\");\n p = true;\n var u = new j(\"GET\", n, {\n viewer: i.user\n });\n u.onJSON = function(v) {\n o.set(v.json);\n t.inform(\"updated\");\n };\n u.send();\n }\n ;\n };\n function s(u) {\n return JSON.parse(JSON.stringify(u));\n };\n var t = {\n };\n l(t, g, {\n get: function(u, v) {\n this.getMulti([u,], function(w) {\n v(w[u], u);\n });\n },\n getMulti: function(u, v) {\n function w(x) {\n v(s(x));\n };\n o.get(u, w);\n },\n getNow: function(u) {\n return s((o.getNow(u) || null));\n },\n getNowUnsafe: function(u) {\n return (o.getNow(u) || null);\n },\n getCachedProfileIDs: function() {\n return o.getCachedKeys();\n },\n hasAll: function() {\n return p;\n },\n fetchAll: function() {\n r();\n },\n set: function(u, v) {\n var w = {\n };\n w[u] = v;\n this.setMulti(w);\n },\n setMulti: function(u) {\n o.set(s(u));\n }\n });\n e.exports = t;\n});\n__d(\"ReactCurrentOwner\", [], function(a, b, c, d, e, f) {\n var g = {\n current: null\n };\n e.exports = g;\n});\n__d(\"CSSProperty\", [], function(a, b, c, d, e, f) {\n var g = {\n fillOpacity: true,\n fontWeight: true,\n opacity: true,\n orphans: true,\n zIndex: true,\n zoom: true\n }, h = {\n background: {\n backgroundImage: true,\n backgroundPosition: true,\n backgroundRepeat: true,\n backgroundColor: true\n },\n border: {\n borderWidth: true,\n borderStyle: true,\n borderColor: true\n },\n borderBottom: {\n borderBottomWidth: true,\n borderBottomStyle: true,\n borderBottomColor: true\n },\n borderLeft: {\n borderLeftWidth: true,\n borderLeftStyle: true,\n borderLeftColor: true\n },\n borderRight: {\n borderRightWidth: true,\n borderRightStyle: true,\n borderRightColor: true\n },\n borderTop: {\n borderTopWidth: true,\n borderTopStyle: true,\n borderTopColor: true\n },\n font: {\n fontStyle: true,\n fontVariant: true,\n fontWeight: true,\n fontSize: true,\n lineHeight: true,\n fontFamily: true\n }\n }, i = {\n isUnitlessNumber: g,\n shorthandPropertyExpansions: h\n };\n e.exports = i;\n});\n__d(\"dangerousStyleValue\", [\"CSSProperty\",], function(a, b, c, d, e, f) {\n var g = b(\"CSSProperty\");\n function h(i, j) {\n var k = (((j == null) || (typeof j === \"boolean\")) || (j === \"\"));\n if (k) {\n return \"\"\n };\n var l = isNaN(j);\n if (((l || (j === 0)) || g.isUnitlessNumber[i])) {\n return (\"\" + j)\n };\n return (j + \"px\");\n };\n e.exports = h;\n});\n__d(\"throwIf\", [], function(a, b, c, d, e, f) {\n var g = function(h, i) {\n if (h) {\n throw new Error(i)\n };\n };\n e.exports = g;\n});\n__d(\"escapeTextForBrowser\", [\"throwIf\",], function(a, b, c, d, e, f) {\n var g = b(\"throwIf\"), h, i = {\n \"&\": \"&\",\n \"\\u003E\": \">\",\n \"\\u003C\": \"<\",\n \"\\\"\": \""\",\n \"'\": \"'\",\n \"/\": \"/\"\n };\n function j(l) {\n return i[l];\n };\n var k = function(l) {\n var m = typeof l, n = (m === \"object\");\n if (((l === \"\") || n)) {\n return \"\";\n }\n else if ((m === \"string\")) {\n return l.replace(/[&><\"'\\/]/g, j);\n }\n else return ((\"\" + l)).replace(/[&><\"'\\/]/g, j)\n \n ;\n };\n e.exports = k;\n});\n__d(\"memoizeStringOnly\", [], function(a, b, c, d, e, f) {\n function g(h) {\n var i = {\n };\n return function(j) {\n if (i.hasOwnProperty(j)) {\n return i[j];\n }\n else return i[j] = h.call(this, j)\n ;\n };\n };\n e.exports = g;\n});\n__d(\"CSSPropertyOperations\", [\"CSSProperty\",\"dangerousStyleValue\",\"escapeTextForBrowser\",\"hyphenate\",\"memoizeStringOnly\",], function(a, b, c, d, e, f) {\n var g = b(\"CSSProperty\"), h = b(\"dangerousStyleValue\"), i = b(\"escapeTextForBrowser\"), j = b(\"hyphenate\"), k = b(\"memoizeStringOnly\"), l = k(function(n) {\n return i(j(n));\n }), m = {\n createMarkupForStyles: function(n) {\n var o = \"\";\n for (var p in n) {\n if (!n.hasOwnProperty(p)) {\n continue;\n };\n var q = n[p];\n if ((q != null)) {\n o += (l(p) + \":\");\n o += (h(p, q) + \";\");\n }\n ;\n };\n return (o || null);\n },\n setValueForStyles: function(n, o) {\n var p = n.style;\n for (var q in o) {\n if (!o.hasOwnProperty(q)) {\n continue;\n };\n var r = h(q, o[q]);\n if (r) {\n p[q] = r;\n }\n else {\n var s = g.shorthandPropertyExpansions[q];\n if (s) {\n for (var t in s) {\n p[t] = \"\";;\n };\n }\n else p[q] = \"\";\n ;\n }\n ;\n };\n }\n };\n e.exports = m;\n});\n__d(\"ExecutionEnvironment\", [], function(a, b, c, d, e, f) {\n var g = (typeof window !== \"undefined\"), h = {\n canUseDOM: g,\n canUseWorkers: (typeof Worker !== \"undefined\"),\n isInWorker: !g,\n global: new Function(\"return this;\")()\n };\n e.exports = h;\n});\n__d(\"Danger\", [\"ExecutionEnvironment\",\"throwIf\",], function(a, b, c, d, e, f) {\n var g = b(\"ExecutionEnvironment\"), h = b(\"throwIf\"), i, j, k, l, m = (g.canUseDOM ? document.createElement(\"div\") : null), n = {\n option: [1,\"\\u003Cselect multiple=\\\"true\\\"\\u003E\",\"\\u003C/select\\u003E\",],\n legend: [1,\"\\u003Cfieldset\\u003E\",\"\\u003C/fieldset\\u003E\",],\n area: [1,\"\\u003Cmap\\u003E\",\"\\u003C/map\\u003E\",],\n param: [1,\"\\u003Cobject\\u003E\",\"\\u003C/object\\u003E\",],\n thead: [1,\"\\u003Ctable\\u003E\",\"\\u003C/table\\u003E\",],\n tr: [2,\"\\u003Ctable\\u003E\\u003Ctbody\\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 td: [3,\"\\u003Ctable\\u003E\\u003Ctbody\\u003E\\u003Ctr\\u003E\",\"\\u003C/tr\\u003E\\u003C/tbody\\u003E\\u003C/table\\u003E\",]\n };\n n.optgroup = n.option;\n n.tbody = n.thead;\n n.tfoot = n.thead;\n n.colgroup = n.thead;\n n.caption = n.thead;\n n.th = n.td;\n var o = [1,\"?\\u003Cdiv\\u003E\",\"\\u003C/div\\u003E\",];\n if (m) {\n for (var p in n) {\n if (!n.hasOwnProperty(p)) {\n continue;\n };\n m.innerHTML = ((((\"\\u003C\" + p) + \"\\u003E\\u003C/\") + p) + \"\\u003E\");\n if (m.firstChild) {\n n[p] = null;\n };\n };\n m.innerHTML = \"\\u003Clink /\\u003E\";\n if (m.firstChild) {\n o = null;\n };\n }\n;\n function q(w) {\n var x = m, y = w.substring(1, w.indexOf(\" \")), z = (n[y.toLowerCase()] || o);\n if (z) {\n x.innerHTML = ((z[1] + w) + z[2]);\n var aa = z[0];\n while (aa--) {\n x = x.lastChild;;\n };\n }\n else x.innerHTML = w;\n ;\n return x.childNodes;\n };\n function r(w, x, y) {\n if (y) {\n if (y.nextSibling) {\n return w.insertBefore(x, y.nextSibling);\n }\n else return w.appendChild(x)\n ;\n }\n else return w.insertBefore(x, w.firstChild)\n ;\n };\n function s(w, x, y) {\n var z, aa = x.length;\n for (var ba = 0; (ba < aa); ba++) {\n z = r(w, x[0], (z || y));;\n };\n };\n function t(w, x, y) {\n var z = q(x), aa = (y ? w.childNodes[(y - 1)] : null);\n s(w, z, aa);\n };\n function u(w, x) {\n var y = w.parentNode, z = q(x);\n y.replaceChild(z[0], w);\n };\n var v = {\n dangerouslyInsertMarkupAt: t,\n dangerouslyReplaceNodeWithMarkup: u\n };\n e.exports = v;\n});\n__d(\"insertNodeAt\", [], function(a, b, c, d, e, f) {\n function g(h, i, j) {\n var k = h.childNodes, l = h.childNodes[j];\n if ((l === i)) {\n return i\n };\n if (i.parentNode) {\n i.parentNode.removeChild(i);\n };\n if ((j >= k.length)) {\n h.appendChild(i);\n }\n else h.insertBefore(i, k[j]);\n ;\n return i;\n };\n e.exports = g;\n});\n__d(\"keyOf\", [], function(a, b, c, d, e, f) {\n var g = function(h) {\n var i;\n for (i in h) {\n if (!h.hasOwnProperty(i)) {\n continue;\n };\n return i;\n };\n return null;\n };\n e.exports = g;\n});\n__d(\"DOMChildrenOperations\", [\"Danger\",\"insertNodeAt\",\"keyOf\",\"throwIf\",], function(a, b, c, d, e, f) {\n var g = b(\"Danger\"), h = b(\"insertNodeAt\"), i = b(\"keyOf\"), j = b(\"throwIf\"), k, l = i({\n moveFrom: null\n }), m = i({\n insertMarkup: null\n }), n = i({\n removeAt: null\n }), o = function(t, u) {\n var v, w, x;\n for (var y = 0; (y < u.length); y++) {\n w = u[y];\n if ((l in w)) {\n v = (v || []);\n x = w.moveFrom;\n v[x] = t.childNodes[x];\n }\n else if ((n in w)) {\n v = (v || []);\n x = w.removeAt;\n v[x] = t.childNodes[x];\n }\n \n ;\n };\n return v;\n }, p = function(t, u) {\n for (var v = 0; (v < u.length); v++) {\n var w = u[v];\n if (w) {\n t.removeChild(u[v]);\n };\n };\n }, q = function(t, u, v) {\n var w, x, y = -1, z;\n for (var aa = 0; (aa < u.length); aa++) {\n z = u[aa];\n if ((l in z)) {\n w = v[z.moveFrom];\n x = z.finalIndex;\n h(t, w, x);\n }\n else if (!((n in z))) {\n if ((m in z)) {\n x = z.finalIndex;\n var ba = z.insertMarkup;\n g.dangerouslyInsertMarkupAt(t, ba, x);\n }\n \n }\n ;\n };\n }, r = function(t, u) {\n var v = o(t, u);\n if (v) {\n p(t, v);\n };\n q(t, u, v);\n }, s = {\n dangerouslyReplaceNodeWithMarkup: g.dangerouslyReplaceNodeWithMarkup,\n manageChildren: r\n };\n e.exports = s;\n});\n__d(\"DOMProperty\", [\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"invariant\"), h = {\n MUST_USE_ATTRIBUTE: 1,\n MUST_USE_PROPERTY: 2,\n HAS_BOOLEAN_VALUE: 4,\n HAS_SIDE_EFFECTS: 8,\n injectDOMPropertyConfig: function(k) {\n var l = (k.Properties || {\n }), m = (k.DOMAttributeNames || {\n }), n = (k.DOMPropertyNames || {\n }), o = (k.DOMMutationMethods || {\n });\n if (k.isCustomAttribute) {\n j._isCustomAttributeFunctions.push(k.isCustomAttribute);\n };\n for (var p in l) {\n g(!j.isStandardName[p]);\n j.isStandardName[p] = true;\n j.getAttributeName[p] = (m[p] || p.toLowerCase());\n j.getPropertyName[p] = (n[p] || p);\n var q = o[p];\n if (q) {\n j.getMutationMethod[p] = q;\n };\n var r = l[p];\n j.mustUseAttribute[p] = (r & h.MUST_USE_ATTRIBUTE);\n j.mustUseProperty[p] = (r & h.MUST_USE_PROPERTY);\n j.hasBooleanValue[p] = (r & h.HAS_BOOLEAN_VALUE);\n j.hasSideEffects[p] = (r & h.HAS_SIDE_EFFECTS);\n g((!j.mustUseAttribute[p] || !j.mustUseProperty[p]));\n g((j.mustUseProperty[p] || !j.hasSideEffects[p]));\n };\n }\n }, i = {\n }, j = {\n isStandardName: {\n },\n getAttributeName: {\n },\n getPropertyName: {\n },\n getMutationMethod: {\n },\n mustUseAttribute: {\n },\n mustUseProperty: {\n },\n hasBooleanValue: {\n },\n hasSideEffects: {\n },\n _isCustomAttributeFunctions: [],\n isCustomAttribute: function(k) {\n return j._isCustomAttributeFunctions.some(function(l) {\n return l.call(null, k);\n });\n },\n getDefaultValueForProperty: function(k, l) {\n var m = i[k], n;\n if (!m) {\n i[k] = m = {\n };\n };\n if (!((l in m))) {\n n = document.createElement(k);\n m[l] = n[l];\n }\n ;\n return m[l];\n },\n injection: h\n };\n e.exports = j;\n});\n__d(\"DOMPropertyOperations\", [\"DOMProperty\",\"escapeTextForBrowser\",\"memoizeStringOnly\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMProperty\"), h = b(\"escapeTextForBrowser\"), i = b(\"memoizeStringOnly\"), j = i(function(l) {\n return (h(l) + \"=\\\"\");\n }), k = {\n createMarkupForProperty: function(l, m) {\n if (g.isStandardName[l]) {\n if (((m == null) || (g.hasBooleanValue[l] && !m))) {\n return \"\"\n };\n var n = g.getAttributeName[l];\n return ((j(n) + h(m)) + \"\\\"\");\n }\n else if (g.isCustomAttribute(l)) {\n if ((m == null)) {\n return \"\"\n };\n return ((j(l) + h(m)) + \"\\\"\");\n }\n else return null\n \n ;\n },\n setValueForProperty: function(l, m, n) {\n if (g.isStandardName[m]) {\n var o = g.getMutationMethod[m];\n if (o) {\n o(l, n);\n }\n else if (g.mustUseAttribute[m]) {\n if ((g.hasBooleanValue[m] && !n)) {\n l.removeAttribute(g.getAttributeName[m]);\n }\n else l.setAttribute(g.getAttributeName[m], n);\n ;\n }\n else {\n var p = g.getPropertyName[m];\n if ((!g.hasSideEffects[m] || (l[p] !== n))) {\n l[p] = n;\n };\n }\n \n ;\n }\n else if (g.isCustomAttribute(m)) {\n l.setAttribute(m, n);\n }\n ;\n },\n deleteValueForProperty: function(l, m) {\n if (g.isStandardName[m]) {\n var n = g.getMutationMethod[m];\n if (n) {\n n(l, undefined);\n }\n else if (g.mustUseAttribute[m]) {\n l.removeAttribute(g.getAttributeName[m]);\n }\n else {\n var o = g.getPropertyName[m];\n l[o] = g.getDefaultValueForProperty(l.nodeName, m);\n }\n \n ;\n }\n else if (g.isCustomAttribute(m)) {\n l.removeAttribute(m);\n }\n ;\n }\n };\n e.exports = k;\n});\n__d(\"keyMirror\", [\"throwIf\",], function(a, b, c, d, e, f) {\n var g = b(\"throwIf\"), h = \"NOT_OBJECT_ERROR\", i = function(j) {\n var k = {\n }, l;\n g((!((j instanceof Object)) || Array.isArray(j)), h);\n for (l in j) {\n if (!j.hasOwnProperty(l)) {\n continue;\n };\n k[l] = l;\n };\n return k;\n };\n e.exports = i;\n});\n__d(\"EventConstants\", [\"keyMirror\",], function(a, b, c, d, e, f) {\n var g = b(\"keyMirror\"), h = g({\n bubbled: null,\n captured: null\n }), i = g({\n topBlur: null,\n topChange: null,\n topClick: null,\n topDOMCharacterDataModified: null,\n topDoubleClick: null,\n topDrag: null,\n topDragEnd: null,\n topDragEnter: null,\n topDragExit: null,\n topDragLeave: null,\n topDragOver: null,\n topDragStart: null,\n topDrop: null,\n topFocus: null,\n topInput: null,\n topKeyDown: null,\n topKeyPress: null,\n topKeyUp: null,\n topMouseDown: null,\n topMouseMove: null,\n topMouseOut: null,\n topMouseOver: null,\n topMouseUp: null,\n topScroll: null,\n topSelectionChange: null,\n topSubmit: null,\n topTouchCancel: null,\n topTouchEnd: null,\n topTouchMove: null,\n topTouchStart: null,\n topWheel: null\n }), j = {\n topLevelTypes: i,\n PropagationPhases: h\n };\n e.exports = j;\n});\n__d(\"EventListener\", [\"Event\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = {\n listen: g.listen,\n capture: function(i, j, k) {\n if (!i.addEventListener) {\n return;\n }\n else i.addEventListener(j, k, true);\n ;\n }\n };\n e.exports = h;\n});\n__d(\"CallbackRegistry\", [], function(a, b, c, d, e, f) {\n var g = {\n }, h = {\n putListener: function(i, j, k) {\n var l = (g[j] || (g[j] = {\n }));\n l[i] = k;\n },\n getListener: function(i, j) {\n var k = g[j];\n return (k && k[i]);\n },\n deleteListener: function(i, j) {\n var k = g[j];\n if (k) {\n delete k[i];\n };\n },\n deleteAllListeners: function(i) {\n for (var j in g) {\n delete g[j][i];;\n };\n },\n __purge: function() {\n g = {\n };\n }\n };\n e.exports = h;\n});\n__d(\"EventPluginRegistry\", [\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"invariant\"), h = null, i = {\n };\n function j() {\n if (!h) {\n return\n };\n for (var n in i) {\n var o = i[n], p = h.indexOf(n);\n g((p > -1));\n if (m.plugins[p]) {\n continue;\n };\n g(o.extractEvents);\n m.plugins[p] = o;\n var q = o.eventTypes;\n for (var r in q) {\n g(k(q[r], o));;\n };\n };\n };\n function k(n, o) {\n var p = n.phasedRegistrationNames;\n if (p) {\n for (var q in p) {\n if (p.hasOwnProperty(q)) {\n var r = p[q];\n l(r, o);\n }\n ;\n };\n return true;\n }\n else if (n.registrationName) {\n l(n.registrationName, o);\n return true;\n }\n \n ;\n return false;\n };\n function l(n, o) {\n g(!m.registrationNames[n]);\n m.registrationNames[n] = o;\n m.registrationNamesKeys.push(n);\n };\n var m = {\n plugins: [],\n registrationNames: {\n },\n registrationNamesKeys: [],\n injectEventPluginOrder: function(n) {\n g(!h);\n h = Array.prototype.slice.call(n);\n j();\n },\n injectEventPluginsByName: function(n) {\n var o = false;\n for (var p in n) {\n if (!n.hasOwnProperty(p)) {\n continue;\n };\n var q = n[p];\n if ((i[p] !== q)) {\n g(!i[p]);\n i[p] = q;\n o = true;\n }\n ;\n };\n if (o) {\n j();\n };\n },\n getPluginModuleForEvent: function(event) {\n var n = event.dispatchConfig;\n if (n.registrationName) {\n return (m.registrationNames[n.registrationName] || null)\n };\n for (var o in n.phasedRegistrationNames) {\n if (!n.phasedRegistrationNames.hasOwnProperty(o)) {\n continue;\n };\n var p = m.registrationNames[n.phasedRegistrationNames[o]];\n if (p) {\n return p\n };\n };\n return null;\n },\n _resetEventPlugins: function() {\n h = null;\n for (var n in i) {\n if (i.hasOwnProperty(n)) {\n delete i[n];\n };\n };\n m.plugins.length = 0;\n var o = m.registrationNames;\n for (var p in o) {\n if (o.hasOwnProperty(p)) {\n delete o[p];\n };\n };\n m.registrationNamesKeys.length = 0;\n }\n };\n e.exports = m;\n});\n__d(\"EventPluginUtils\", [\"EventConstants\",\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"EventConstants\"), h = b(\"invariant\"), i = g.topLevelTypes;\n function j(u) {\n return (((u === i.topMouseUp) || (u === i.topTouchEnd)) || (u === i.topTouchCancel));\n };\n function k(u) {\n return ((u === i.topMouseMove) || (u === i.topTouchMove));\n };\n function l(u) {\n return ((u === i.topMouseDown) || (u === i.topTouchStart));\n };\n var m;\n function n(event, u) {\n var v = event._dispatchListeners, w = event._dispatchIDs;\n if (Array.isArray(v)) {\n for (var x = 0; (x < v.length); x++) {\n if (event.isPropagationStopped()) {\n break;\n };\n u(event, v[x], w[x]);\n };\n }\n else if (v) {\n u(event, v, w);\n }\n ;\n };\n function o(event, u, v) {\n u(event, v);\n };\n function p(event, u) {\n n(event, u);\n event._dispatchListeners = null;\n event._dispatchIDs = null;\n };\n function q(event) {\n var u = event._dispatchListeners, v = event._dispatchIDs;\n if (Array.isArray(u)) {\n for (var w = 0; (w < u.length); w++) {\n if (event.isPropagationStopped()) {\n break;\n };\n if (u[w](event, v[w])) {\n return v[w]\n };\n };\n }\n else if (u) {\n if (u(event, v)) {\n return v\n }\n }\n ;\n return null;\n };\n function r(event) {\n var u = event._dispatchListeners, v = event._dispatchIDs;\n h(!Array.isArray(u));\n var w = (u ? u(event, v) : null);\n event._dispatchListeners = null;\n event._dispatchIDs = null;\n return w;\n };\n function s(event) {\n return !!event._dispatchListeners;\n };\n var t = {\n isEndish: j,\n isMoveish: k,\n isStartish: l,\n executeDispatchesInOrder: p,\n executeDispatchesInOrderStopAtTrue: q,\n executeDirectDispatch: r,\n hasDispatches: s,\n executeDispatch: o\n };\n e.exports = t;\n});\n__d(\"accumulate\", [\"throwIf\",], function(a, b, c, d, e, f) {\n var g = b(\"throwIf\"), h = \"INVALID_ACCUM_ARGS\";\n function i(j, k) {\n var l = (j == null), m = (k === null);\n if (m) {\n return j;\n }\n else if (l) {\n return k;\n }\n else {\n var n = Array.isArray(j), o = Array.isArray(k);\n if (n) {\n return j.concat(k);\n }\n else if (o) {\n return [j,].concat(k);\n }\n else return [j,k,]\n \n ;\n }\n \n ;\n };\n e.exports = i;\n});\n__d(\"forEachAccumulated\", [], function(a, b, c, d, e, f) {\n var g = function(h, i, j) {\n if (Array.isArray(h)) {\n h.forEach(i, j);\n }\n else if (h) {\n i.call(j, h);\n }\n ;\n };\n e.exports = g;\n});\n__d(\"EventPropagators\", [\"CallbackRegistry\",\"EventConstants\",\"accumulate\",\"forEachAccumulated\",], function(a, b, c, d, e, f) {\n var g = b(\"CallbackRegistry\"), h = b(\"EventConstants\"), i = b(\"accumulate\"), j = b(\"forEachAccumulated\"), k = g.getListener, l = h.PropagationPhases, m = {\n InstanceHandle: null,\n injectInstanceHandle: function(w) {\n m.InstanceHandle = w;\n },\n validate: function() {\n var w = ((!m.InstanceHandle || !m.InstanceHandle.traverseTwoPhase) || !m.InstanceHandle.traverseEnterLeave);\n if (w) {\n throw new Error(\"InstanceHandle not injected before use!\")\n };\n }\n };\n function n(w, event, x) {\n var y = event.dispatchConfig.phasedRegistrationNames[x];\n return k(w, y);\n };\n function o(w, x, event) {\n var y = (x ? l.bubbled : l.captured), z = n(w, event, y);\n if (z) {\n event._dispatchListeners = i(event._dispatchListeners, z);\n event._dispatchIDs = i(event._dispatchIDs, w);\n }\n ;\n };\n function p(event) {\n if ((event && event.dispatchConfig.phasedRegistrationNames)) {\n m.InstanceHandle.traverseTwoPhase(event.dispatchMarker, o, event);\n };\n };\n function q(w, x, event) {\n if ((event && event.dispatchConfig.registrationName)) {\n var y = event.dispatchConfig.registrationName, z = k(w, y);\n if (z) {\n event._dispatchListeners = i(event._dispatchListeners, z);\n event._dispatchIDs = i(event._dispatchIDs, w);\n }\n ;\n }\n ;\n };\n function r(event) {\n if ((event && event.dispatchConfig.registrationName)) {\n q(event.dispatchMarker, null, event);\n };\n };\n function s(w) {\n j(w, p);\n };\n function t(w, x, y, z) {\n m.InstanceHandle.traverseEnterLeave(y, z, q, w, x);\n };\n function u(w) {\n j(w, r);\n };\n var v = {\n accumulateTwoPhaseDispatches: s,\n accumulateDirectDispatches: u,\n accumulateEnterLeaveDispatches: t,\n injection: m\n };\n e.exports = v;\n});\n__d(\"EventPluginHub\", [\"CallbackRegistry\",\"EventPluginRegistry\",\"EventPluginUtils\",\"EventPropagators\",\"ExecutionEnvironment\",\"accumulate\",\"forEachAccumulated\",\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"CallbackRegistry\"), h = b(\"EventPluginRegistry\"), i = b(\"EventPluginUtils\"), j = b(\"EventPropagators\"), k = b(\"ExecutionEnvironment\"), l = b(\"accumulate\"), m = b(\"forEachAccumulated\"), n = b(\"invariant\"), o = null, p = function(event) {\n if (event) {\n var r = i.executeDispatch, s = h.getPluginModuleForEvent(event);\n if ((s && s.executeDispatch)) {\n r = s.executeDispatch;\n };\n i.executeDispatchesInOrder(event, r);\n if (!event.isPersistent()) {\n event.constructor.release(event);\n };\n }\n ;\n }, q = {\n injection: {\n injectInstanceHandle: j.injection.injectInstanceHandle,\n injectEventPluginOrder: h.injectEventPluginOrder,\n injectEventPluginsByName: h.injectEventPluginsByName\n },\n registrationNames: h.registrationNames,\n putListener: g.putListener,\n getListener: g.getListener,\n deleteListener: g.deleteListener,\n deleteAllListeners: g.deleteAllListeners,\n extractEvents: function(r, s, t, u) {\n var v, w = h.plugins;\n for (var x = 0, y = w.length; (x < y); x++) {\n var z = w[x];\n if (z) {\n var aa = z.extractEvents(r, s, t, u);\n if (aa) {\n v = l(v, aa);\n };\n }\n ;\n };\n return v;\n },\n enqueueEvents: function(r) {\n if (r) {\n o = l(o, r);\n };\n },\n processEventQueue: function() {\n var r = o;\n o = null;\n m(r, p);\n n(!o);\n }\n };\n if (k.canUseDOM) {\n window.EventPluginHub = q;\n };\n e.exports = q;\n});\n__d(\"ReactUpdates\", [\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"invariant\"), h = false, i = [];\n function j(m) {\n if (h) {\n m();\n return;\n }\n ;\n h = true;\n try {\n m();\n for (var o = 0; (o < i.length); o++) {\n var p = i[o];\n if (p.isMounted()) {\n var q = p._pendingCallbacks;\n p._pendingCallbacks = null;\n p.performUpdateIfNecessary();\n if (q) {\n for (var r = 0; (r < q.length); r++) {\n q[r]();;\n }\n };\n }\n ;\n };\n } catch (n) {\n throw n;\n } finally {\n i.length = 0;\n h = false;\n };\n };\n function k(m, n) {\n g((!n || (typeof n === \"function\")));\n if (!h) {\n m.performUpdateIfNecessary();\n (n && n());\n return;\n }\n ;\n i.push(m);\n if (n) {\n if (m._pendingCallbacks) {\n m._pendingCallbacks.push(n);\n }\n else m._pendingCallbacks = [n,];\n \n };\n };\n var l = {\n batchedUpdates: j,\n enqueueUpdate: k\n };\n e.exports = l;\n});\n__d(\"ViewportMetrics\", [], function(a, b, c, d, e, f) {\n var g = {\n currentScrollLeft: 0,\n currentScrollTop: 0,\n refreshScrollValues: function() {\n g.currentScrollLeft = (document.body.scrollLeft + document.documentElement.scrollLeft);\n g.currentScrollTop = (document.body.scrollTop + document.documentElement.scrollTop);\n }\n };\n e.exports = g;\n});\n__d(\"isEventSupported\", [\"ExecutionEnvironment\",], function(a, b, c, d, e, f) {\n var g = b(\"ExecutionEnvironment\"), h, i;\n if (g.canUseDOM) {\n h = document.createElement(\"div\");\n i = ((document.implementation && document.implementation.hasFeature) && (document.implementation.hasFeature(\"\", \"\") !== true));\n }\n;\n function j(k, l) {\n if ((!h || ((l && !h.addEventListener)))) {\n return false\n };\n var m = document.createElement(\"div\"), n = (\"on\" + k), o = (n in m);\n if (!o) {\n m.setAttribute(n, \"\");\n o = (typeof m[n] === \"function\");\n if ((typeof m[n] !== \"undefined\")) {\n m[n] = undefined;\n };\n m.removeAttribute(n);\n }\n ;\n if (((!o && i) && (k === \"wheel\"))) {\n o = document.implementation.hasFeature(\"Events.wheel\", \"3.0\");\n };\n m = null;\n return o;\n };\n e.exports = j;\n});\n__d(\"ReactEventEmitter\", [\"EventConstants\",\"EventListener\",\"EventPluginHub\",\"ExecutionEnvironment\",\"ReactUpdates\",\"ViewportMetrics\",\"invariant\",\"isEventSupported\",], function(a, b, c, d, e, f) {\n var g = b(\"EventConstants\"), h = b(\"EventListener\"), i = b(\"EventPluginHub\"), j = b(\"ExecutionEnvironment\"), k = b(\"ReactUpdates\"), l = b(\"ViewportMetrics\"), m = b(\"invariant\"), n = b(\"isEventSupported\"), o = false;\n function p(u, v, w) {\n h.listen(w, v, t.TopLevelCallbackCreator.createTopLevelCallback(u));\n };\n function q(u, v, w) {\n h.capture(w, v, t.TopLevelCallbackCreator.createTopLevelCallback(u));\n };\n function r() {\n var u = l.refreshScrollValues;\n h.listen(window, \"scroll\", u);\n h.listen(window, \"resize\", u);\n };\n function s(u) {\n m(!o);\n var v = g.topLevelTypes, w = document;\n r();\n p(v.topMouseOver, \"mouseover\", w);\n p(v.topMouseDown, \"mousedown\", w);\n p(v.topMouseUp, \"mouseup\", w);\n p(v.topMouseMove, \"mousemove\", w);\n p(v.topMouseOut, \"mouseout\", w);\n p(v.topClick, \"click\", w);\n p(v.topDoubleClick, \"dblclick\", w);\n if (u) {\n p(v.topTouchStart, \"touchstart\", w);\n p(v.topTouchEnd, \"touchend\", w);\n p(v.topTouchMove, \"touchmove\", w);\n p(v.topTouchCancel, \"touchcancel\", w);\n }\n ;\n p(v.topKeyUp, \"keyup\", w);\n p(v.topKeyPress, \"keypress\", w);\n p(v.topKeyDown, \"keydown\", w);\n p(v.topInput, \"input\", w);\n p(v.topChange, \"change\", w);\n p(v.topSelectionChange, \"selectionchange\", w);\n p(v.topDOMCharacterDataModified, \"DOMCharacterDataModified\", w);\n if (n(\"drag\")) {\n p(v.topDrag, \"drag\", w);\n p(v.topDragEnd, \"dragend\", w);\n p(v.topDragEnter, \"dragenter\", w);\n p(v.topDragExit, \"dragexit\", w);\n p(v.topDragLeave, \"dragleave\", w);\n p(v.topDragOver, \"dragover\", w);\n p(v.topDragStart, \"dragstart\", w);\n p(v.topDrop, \"drop\", w);\n }\n ;\n if (n(\"wheel\")) {\n p(v.topWheel, \"wheel\", w);\n }\n else if (n(\"mousewheel\")) {\n p(v.topWheel, \"mousewheel\", w);\n }\n else p(v.topWheel, \"DOMMouseScroll\", w);\n \n ;\n if (n(\"scroll\", true)) {\n q(v.topScroll, \"scroll\", w);\n }\n else p(v.topScroll, \"scroll\", window);\n ;\n if (n(\"focus\", true)) {\n q(v.topFocus, \"focus\", w);\n q(v.topBlur, \"blur\", w);\n }\n else if (n(\"focusin\")) {\n p(v.topFocus, \"focusin\", w);\n p(v.topBlur, \"focusout\", w);\n }\n \n ;\n };\n var t = {\n TopLevelCallbackCreator: null,\n ensureListening: function(u, v) {\n m(j.canUseDOM);\n if (!o) {\n t.TopLevelCallbackCreator = v;\n s(u);\n o = true;\n }\n ;\n },\n setEnabled: function(u) {\n m(j.canUseDOM);\n if (t.TopLevelCallbackCreator) {\n t.TopLevelCallbackCreator.setEnabled(u);\n };\n },\n isEnabled: function() {\n return !!((t.TopLevelCallbackCreator && t.TopLevelCallbackCreator.isEnabled()));\n },\n handleTopLevel: function(u, v, w, x) {\n var y = i.extractEvents(u, v, w, x);\n k.batchedUpdates(function() {\n i.enqueueEvents(y);\n i.processEventQueue();\n });\n },\n registrationNames: i.registrationNames,\n putListener: i.putListener,\n getListener: i.getListener,\n deleteListener: i.deleteListener,\n deleteAllListeners: i.deleteAllListeners,\n trapBubbledEvent: p,\n trapCapturedEvent: q\n };\n e.exports = t;\n});\n__d(\"getEventTarget\", [\"ExecutionEnvironment\",], function(a, b, c, d, e, f) {\n var g = b(\"ExecutionEnvironment\");\n function h(i) {\n var j = ((i.target || i.srcElement) || g.global);\n return ((j.nodeType === 3) ? j.parentNode : j);\n };\n e.exports = h;\n});\n__d(\"ReactEventTopLevelCallback\", [\"ExecutionEnvironment\",\"ReactEventEmitter\",\"ReactID\",\"ReactInstanceHandles\",\"getEventTarget\",], function(a, b, c, d, e, f) {\n var g = b(\"ExecutionEnvironment\"), h = b(\"ReactEventEmitter\"), i = b(\"ReactID\"), j = b(\"ReactInstanceHandles\"), k = b(\"getEventTarget\"), l = true, m = {\n setEnabled: function(n) {\n l = !!n;\n },\n isEnabled: function() {\n return l;\n },\n createTopLevelCallback: function(n) {\n return function(o) {\n if (!l) {\n return\n };\n if ((o.srcElement && (o.srcElement !== o.target))) {\n o.target = o.srcElement;\n };\n var p = (j.getFirstReactDOM(k(o)) || g.global), q = (i.getID(p) || \"\");\n h.handleTopLevel(n, p, q, o);\n };\n }\n };\n e.exports = m;\n});\n__d(\"ReactInstanceHandles\", [\"ReactID\",\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"ReactID\"), h = b(\"invariant\"), i = \".\", j = i.length, k = 100, l = 9999999;\n function m(v) {\n return (((i + \"r[\") + v.toString(36)) + \"]\");\n };\n function n(v, w) {\n return ((v.charAt(w) === i) || (w === v.length));\n };\n function o(v) {\n return ((v === \"\") || (((v.charAt(0) === i) && (v.charAt((v.length - 1)) !== i))));\n };\n function p(v, w) {\n return (((w.indexOf(v) === 0) && n(w, v.length)));\n };\n function q(v) {\n return (v ? v.substr(0, v.lastIndexOf(i)) : \"\");\n };\n function r(v, w) {\n h((o(v) && o(w)));\n h(p(v, w));\n if ((v === w)) {\n return v\n };\n var x = (v.length + j);\n for (var y = x; (y < w.length); y++) {\n if (n(w, y)) {\n break;\n };\n };\n return w.substr(0, y);\n };\n function s(v, w) {\n var x = Math.min(v.length, w.length);\n if ((x === 0)) {\n return \"\"\n };\n var y = 0;\n for (var z = 0; (z <= x); z++) {\n if ((n(v, z) && n(w, z))) {\n y = z;\n }\n else if ((v.charAt(z) !== w.charAt(z))) {\n break;\n }\n ;\n };\n var aa = v.substr(0, y);\n h(o(aa));\n return aa;\n };\n function t(v, w, x, y, z, aa) {\n v = (v || \"\");\n w = (w || \"\");\n h((v !== w));\n var ba = p(w, v);\n h((ba || p(v, w)));\n var ca = 0, da = (ba ? q : r);\n for (var ea = v; ; ea = da(ea, w)) {\n if ((((!z || (ea !== v))) && ((!aa || (ea !== w))))) {\n x(ea, ba, y);\n };\n if ((ea === w)) {\n break;\n };\n h((ca++ < k));\n };\n };\n var u = {\n separator: i,\n createReactRootID: function() {\n return m(Math.ceil((Math.random() * l)));\n },\n isRenderedByReact: function(v) {\n if ((v.nodeType !== 1)) {\n return false\n };\n var w = g.getID(v);\n return (w ? (w.charAt(0) === i) : false);\n },\n getFirstReactDOM: function(v) {\n var w = v;\n while ((w && (w.parentNode !== w))) {\n if (u.isRenderedByReact(w)) {\n return w\n };\n w = w.parentNode;\n };\n return null;\n },\n findComponentRoot: function(v, w) {\n var x = [v.firstChild,], y = 0;\n while ((y < x.length)) {\n var z = x[y++];\n while (z) {\n var aa = g.getID(z);\n if (aa) {\n if ((w === aa)) {\n return z;\n }\n else if (p(aa, w)) {\n x.length = y = 0;\n x.push(z.firstChild);\n break;\n }\n else x.push(z.firstChild);\n \n ;\n }\n else x.push(z.firstChild);\n ;\n z = z.nextSibling;\n };\n };\n h(false);\n },\n getReactRootIDFromNodeID: function(v) {\n var w = /\\.r\\[[^\\]]+\\]/.exec(v);\n return (w && w[0]);\n },\n traverseEnterLeave: function(v, w, x, y, z) {\n var aa = s(v, w);\n if ((aa !== v)) {\n t(v, aa, x, y, false, true);\n };\n if ((aa !== w)) {\n t(aa, w, x, z, true, false);\n };\n },\n traverseTwoPhase: function(v, w, x) {\n if (v) {\n t(\"\", v, w, x, true, false);\n t(v, \"\", w, x, false, true);\n }\n ;\n },\n _getFirstCommonAncestorID: s,\n _getNextDescendantID: r\n };\n e.exports = u;\n});\n__d(\"ReactMount\", [\"invariant\",\"ReactEventEmitter\",\"ReactInstanceHandles\",\"ReactEventTopLevelCallback\",\"ReactID\",\"$\",], function(a, b, c, d, e, f) {\n var g = b(\"invariant\"), h = b(\"ReactEventEmitter\"), i = b(\"ReactInstanceHandles\"), j = b(\"ReactEventTopLevelCallback\"), k = b(\"ReactID\"), l = b(\"$\"), m = {\n }, n = {\n };\n function o(r) {\n return (r && r.firstChild);\n };\n function p(r) {\n var s = o(r);\n return (s && k.getID(s));\n };\n var q = {\n totalInstantiationTime: 0,\n totalInjectionTime: 0,\n useTouchEvents: false,\n scrollMonitor: function(r, s) {\n s();\n },\n prepareTopLevelEvents: function(r) {\n h.ensureListening(q.useTouchEvents, r);\n },\n _updateRootComponent: function(r, s, t, u) {\n var v = s.props;\n q.scrollMonitor(t, function() {\n r.replaceProps(v, u);\n });\n return r;\n },\n _registerComponent: function(r, s) {\n q.prepareTopLevelEvents(j);\n var t = q.registerContainer(s);\n m[t] = r;\n return t;\n },\n _renderNewRootComponent: function(r, s, t) {\n var u = q._registerComponent(r, s);\n r.mountComponentIntoNode(u, s, t);\n return r;\n },\n renderComponent: function(r, s, t) {\n var u = m[p(s)];\n if (u) {\n if ((u.constructor === r.constructor)) {\n return q._updateRootComponent(u, r, s, t);\n }\n else q.unmountAndReleaseReactRootNode(s);\n \n };\n var v = o(s), w = (v && i.isRenderedByReact(v)), x = (w && !u), y = q._renderNewRootComponent(r, s, x);\n (t && t());\n return y;\n },\n constructAndRenderComponent: function(r, s, t) {\n return q.renderComponent(r(s), t);\n },\n constructAndRenderComponentByID: function(r, s, t) {\n return q.constructAndRenderComponent(r, s, l(t));\n },\n registerContainer: function(r) {\n var s = p(r);\n if (s) {\n s = i.getReactRootIDFromNodeID(s);\n };\n if (!s) {\n s = i.createReactRootID();\n };\n n[s] = r;\n return s;\n },\n unmountAndReleaseReactRootNode: function(r) {\n var s = p(r), t = m[s];\n if (!t) {\n return false\n };\n t.unmountComponentFromNode(r);\n delete m[s];\n delete n[s];\n return true;\n },\n findReactContainerForID: function(r) {\n var s = i.getReactRootIDFromNodeID(r), t = n[s];\n return t;\n },\n findReactNodeByID: function(r) {\n var s = q.findReactContainerForID(r);\n return i.findComponentRoot(s, r);\n }\n };\n e.exports = q;\n});\n__d(\"ReactID\", [\"invariant\",\"ReactMount\",], function(a, b, c, d, e, f) {\n var g = b(\"invariant\"), h = b(\"ReactMount\"), i = \"data-reactid\", j = {\n };\n function k(r) {\n var s = l(r);\n if (s) {\n if (j.hasOwnProperty(s)) {\n var t = j[s];\n if ((t !== r)) {\n g(!o(t, s));\n j[s] = r;\n }\n ;\n }\n else j[s] = r;\n \n };\n return s;\n };\n function l(r) {\n return (((r && r.getAttribute) && r.getAttribute(i)) || \"\");\n };\n function m(r, s) {\n var t = l(r);\n if ((t !== s)) {\n delete j[t];\n };\n r.setAttribute(i, s);\n j[s] = r;\n };\n function n(r) {\n if ((!j.hasOwnProperty(r) || !o(j[r], r))) {\n j[r] = h.findReactNodeByID(r);\n };\n return j[r];\n };\n function o(r, s) {\n if (r) {\n g((l(r) === s));\n var t = h.findReactContainerForID(s);\n if ((t && p(t, r))) {\n return true\n };\n }\n ;\n return false;\n };\n function p(r, s) {\n if (r.contains) {\n return r.contains(s)\n };\n if ((s === r)) {\n return true\n };\n if ((s.nodeType === 3)) {\n s = s.parentNode;\n };\n while ((s && (s.nodeType === 1))) {\n if ((s === r)) {\n return true\n };\n s = s.parentNode;\n };\n return false;\n };\n function q(r) {\n delete j[r];\n };\n f.ATTR_NAME = i;\n f.getID = k;\n f.rawGetID = l;\n f.setID = m;\n f.getNode = n;\n f.purgeID = q;\n});\n__d(\"getTextContentAccessor\", [\"ExecutionEnvironment\",], function(a, b, c, d, e, f) {\n var g = b(\"ExecutionEnvironment\"), h = null;\n function i() {\n if ((!h && g.canUseDOM)) {\n h = ((\"innerText\" in document.createElement(\"div\")) ? \"innerText\" : \"textContent\");\n };\n return h;\n };\n e.exports = i;\n});\n__d(\"ReactDOMIDOperations\", [\"CSSPropertyOperations\",\"DOMChildrenOperations\",\"DOMPropertyOperations\",\"ReactID\",\"getTextContentAccessor\",\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"CSSPropertyOperations\"), h = b(\"DOMChildrenOperations\"), i = b(\"DOMPropertyOperations\"), j = b(\"ReactID\"), k = b(\"getTextContentAccessor\"), l = b(\"invariant\"), m = {\n dangerouslySetInnerHTML: \"`dangerouslySetInnerHTML` must be set using `updateInnerHTMLByID()`.\",\n style: \"`style` must be set using `updateStylesByID()`.\"\n }, n = (k() || \"NA\"), o = {\n updatePropertyByID: function(p, q, r) {\n var s = j.getNode(p);\n l(!m.hasOwnProperty(q));\n if ((r != null)) {\n i.setValueForProperty(s, q, r);\n }\n else i.deleteValueForProperty(s, q);\n ;\n },\n deletePropertyByID: function(p, q, r) {\n var s = j.getNode(p);\n l(!m.hasOwnProperty(q));\n i.deleteValueForProperty(s, q, r);\n },\n updatePropertiesByID: function(p, q) {\n for (var r in q) {\n if (!q.hasOwnProperty(r)) {\n continue;\n };\n o.updatePropertiesByID(p, r, q[r]);\n };\n },\n updateStylesByID: function(p, q) {\n var r = j.getNode(p);\n g.setValueForStyles(r, q);\n },\n updateInnerHTMLByID: function(p, q) {\n var r = j.getNode(p);\n r.innerHTML = (((q && q.__html) || \"\")).replace(/^ /g, \" \");\n },\n updateTextContentByID: function(p, q) {\n var r = j.getNode(p);\n r[n] = q;\n },\n dangerouslyReplaceNodeWithMarkupByID: function(p, q) {\n var r = j.getNode(p);\n h.dangerouslyReplaceNodeWithMarkup(r, q);\n },\n manageChildrenByParentID: function(p, q) {\n var r = j.getNode(p);\n h.manageChildren(r, q);\n }\n };\n e.exports = o;\n});\n__d(\"ReactOwner\", [\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"invariant\"), h = {\n isValidOwner: function(i) {\n return !!(((i && (typeof i.attachRef === \"function\")) && (typeof i.detachRef === \"function\")));\n },\n addComponentAsRefTo: function(i, j, k) {\n g(h.isValidOwner(k));\n k.attachRef(j, i);\n },\n removeComponentAsRefFrom: function(i, j, k) {\n g(h.isValidOwner(k));\n if ((k.refs[j] === i)) {\n k.detachRef(j);\n };\n },\n Mixin: {\n attachRef: function(i, j) {\n g(j.isOwnedBy(this));\n var k = (this.refs || (this.refs = {\n }));\n k[i] = j;\n },\n detachRef: function(i) {\n delete this.refs[i];\n }\n }\n };\n e.exports = h;\n});\n__d(\"PooledClass\", [], function(a, b, c, d, e, f) {\n var g = function(p) {\n var q = this;\n if (q.instancePool.length) {\n var r = q.instancePool.pop();\n q.call(r, p);\n return r;\n }\n else return new q(p)\n ;\n }, h = function(p, q) {\n var r = this;\n if (r.instancePool.length) {\n var s = r.instancePool.pop();\n r.call(s, p, q);\n return s;\n }\n else return new r(p, q)\n ;\n }, i = function(p, q, r) {\n var s = this;\n if (s.instancePool.length) {\n var t = s.instancePool.pop();\n s.call(t, p, q, r);\n return t;\n }\n else return new s(p, q, r)\n ;\n }, j = function(p, q, r, s, t) {\n var u = this;\n if (u.instancePool.length) {\n var v = u.instancePool.pop();\n u.call(v, p, q, r, s, t);\n return v;\n }\n else return new u(p, q, r, s, t)\n ;\n }, k = function(p) {\n var q = this;\n if (p.destructor) {\n p.destructor();\n };\n if ((q.instancePool.length < q.poolSize)) {\n q.instancePool.push(p);\n };\n }, l = 10, m = g, n = function(p, q) {\n var r = p;\n r.instancePool = [];\n r.getPooled = (q || m);\n if (!r.poolSize) {\n r.poolSize = l;\n };\n r.release = k;\n return r;\n }, o = {\n addPoolingTo: n,\n oneArgumentPooler: g,\n twoArgumentPooler: h,\n threeArgumentPooler: i,\n fiveArgumentPooler: j\n };\n e.exports = o;\n});\n__d(\"ReactInputSelection\", [], function(a, b, c, d, e, f) {\n function g() {\n try {\n return document.activeElement;\n } catch (j) {\n \n };\n };\n function h(j) {\n return document.documentElement.contains(j);\n };\n var i = {\n hasSelectionCapabilities: function(j) {\n return (j && ((((((j.nodeName === \"INPUT\") && (j.type === \"text\"))) || (j.nodeName === \"TEXTAREA\")) || (j.contentEditable === \"true\"))));\n },\n getSelectionInformation: function() {\n var j = g();\n return {\n focusedElem: j,\n selectionRange: (i.hasSelectionCapabilities(j) ? i.getSelection(j) : null)\n };\n },\n restoreSelection: function(j) {\n var k = g(), l = j.focusedElem, m = j.selectionRange;\n if (((k !== l) && h(l))) {\n if (i.hasSelectionCapabilities(l)) {\n i.setSelection(l, m);\n };\n l.focus();\n }\n ;\n },\n getSelection: function(j) {\n var k;\n if (((j.contentEditable === \"true\") && window.getSelection)) {\n k = window.getSelection().getRangeAt(0);\n var l = k.commonAncestorContainer;\n if ((l && (l.nodeType === 3))) {\n l = l.parentNode;\n };\n if ((l !== j)) {\n return {\n start: 0,\n end: 0\n };\n }\n else return {\n start: k.startOffset,\n end: k.endOffset\n }\n ;\n }\n ;\n if (!document.selection) {\n return {\n start: j.selectionStart,\n end: j.selectionEnd\n }\n };\n k = document.selection.createRange();\n if ((k.parentElement() !== j)) {\n return {\n start: 0,\n end: 0\n }\n };\n var m = j.value.length;\n if ((j.nodeName === \"INPUT\")) {\n return {\n start: -k.moveStart(\"character\", -m),\n end: -k.moveEnd(\"character\", -m)\n };\n }\n else {\n var n = k.duplicate();\n n.moveToElementText(j);\n n.setEndPoint(\"StartToEnd\", k);\n var o = (m - n.text.length);\n n.setEndPoint(\"StartToStart\", k);\n return {\n start: (m - n.text.length),\n end: o\n };\n }\n ;\n },\n setSelection: function(j, k) {\n var l, m = k.start, n = k.end;\n if ((typeof n === \"undefined\")) {\n n = m;\n };\n if (document.selection) {\n if ((j.tagName === \"TEXTAREA\")) {\n var o = ((j.value.slice(0, m).match(/\\r/g) || [])).length, p = ((j.value.slice(m, n).match(/\\r/g) || [])).length;\n m -= o;\n n -= (o + p);\n }\n ;\n l = j.createTextRange();\n l.collapse(true);\n l.moveStart(\"character\", m);\n l.moveEnd(\"character\", (n - m));\n l.select();\n }\n else if ((j.contentEditable === \"true\")) {\n if ((j.childNodes.length === 1)) {\n l = document.createRange();\n l.setStart(j.childNodes[0], m);\n l.setEnd(j.childNodes[0], n);\n var q = window.getSelection();\n q.removeAllRanges();\n q.addRange(l);\n }\n ;\n }\n else {\n j.selectionStart = m;\n j.selectionEnd = Math.min(n, j.value.length);\n j.focus();\n }\n \n ;\n }\n };\n e.exports = i;\n});\n__d(\"mixInto\", [], function(a, b, c, d, e, f) {\n var g = function(h, i) {\n var j;\n for (j in i) {\n if (!i.hasOwnProperty(j)) {\n continue;\n };\n h.prototype[j] = i[j];\n };\n };\n e.exports = g;\n});\n__d(\"ReactOnDOMReady\", [\"PooledClass\",\"mixInto\",], function(a, b, c, d, e, f) {\n var g = b(\"PooledClass\"), h = b(\"mixInto\");\n function i(j) {\n this._queue = (j || null);\n };\n h(i, {\n enqueue: function(j, k) {\n this._queue = (this._queue || []);\n this._queue.push({\n component: j,\n callback: k\n });\n },\n notifyAll: function() {\n var j = this._queue;\n if (j) {\n this._queue = null;\n for (var k = 0, l = j.length; (k < l); k++) {\n var m = j[k].component, n = j[k].callback;\n n.call(m, m.getDOMNode());\n };\n j.length = 0;\n }\n ;\n },\n reset: function() {\n this._queue = null;\n },\n destructor: function() {\n this.reset();\n }\n });\n g.addPoolingTo(i);\n e.exports = i;\n});\n__d(\"Transaction\", [\"throwIf\",], function(a, b, c, d, e, f) {\n var g = b(\"throwIf\"), h = \"DUAL_TRANSACTION\", i = \"MISSING_TRANSACTION\", j = {\n reinitializeTransaction: function() {\n this.transactionWrappers = this.getTransactionWrappers();\n if (!this.wrapperInitData) {\n this.wrapperInitData = [];\n }\n else this.wrapperInitData.length = 0;\n ;\n if (!this.timingMetrics) {\n this.timingMetrics = {\n };\n };\n this.timingMetrics.methodInvocationTime = 0;\n if (!this.timingMetrics.wrapperInitTimes) {\n this.timingMetrics.wrapperInitTimes = [];\n }\n else this.timingMetrics.wrapperInitTimes.length = 0;\n ;\n if (!this.timingMetrics.wrapperCloseTimes) {\n this.timingMetrics.wrapperCloseTimes = [];\n }\n else this.timingMetrics.wrapperCloseTimes.length = 0;\n ;\n this._isInTransaction = false;\n },\n _isInTransaction: false,\n getTransactionWrappers: null,\n isInTransaction: function() {\n return !!this._isInTransaction;\n },\n perform: function(l, m, n, o, p, q, r, s) {\n g(this.isInTransaction(), h);\n var t = Date.now(), u = null, v;\n try {\n this.initializeAll();\n v = l.call(m, n, o, p, q, r, s);\n } catch (w) {\n u = w;\n } finally {\n var x = Date.now();\n this.methodInvocationTime += ((x - t));\n try {\n this.closeAll();\n } catch (y) {\n u = (u || y);\n };\n };\n if (u) {\n throw u\n };\n return v;\n },\n initializeAll: function() {\n this._isInTransaction = true;\n var l = this.transactionWrappers, m = this.timingMetrics.wrapperInitTimes, n = null;\n for (var o = 0; (o < l.length); o++) {\n var p = Date.now(), q = l[o];\n try {\n this.wrapperInitData[o] = (q.initialize ? q.initialize.call(this) : null);\n } catch (r) {\n n = (n || r);\n this.wrapperInitData[o] = k.OBSERVED_ERROR;\n } finally {\n var s = m[o], t = Date.now();\n m[o] = (((s || 0)) + ((t - p)));\n };\n };\n if (n) {\n throw n\n };\n },\n closeAll: function() {\n g(!this.isInTransaction(), i);\n var l = this.transactionWrappers, m = this.timingMetrics.wrapperCloseTimes, n = null;\n for (var o = 0; (o < l.length); o++) {\n var p = l[o], q = Date.now(), r = this.wrapperInitData[o];\n try {\n if ((r !== k.OBSERVED_ERROR)) {\n (p.close && p.close.call(this, r));\n };\n } catch (s) {\n n = (n || s);\n } finally {\n var t = Date.now(), u = m[o];\n m[o] = (((u || 0)) + ((t - q)));\n };\n };\n this.wrapperInitData.length = 0;\n this._isInTransaction = false;\n if (n) {\n throw n\n };\n }\n }, k = {\n Mixin: j,\n OBSERVED_ERROR: {\n }\n };\n e.exports = k;\n});\n__d(\"ReactReconcileTransaction\", [\"ExecutionEnvironment\",\"PooledClass\",\"ReactEventEmitter\",\"ReactInputSelection\",\"ReactOnDOMReady\",\"Transaction\",\"mixInto\",], function(a, b, c, d, e, f) {\n var g = b(\"ExecutionEnvironment\"), h = b(\"PooledClass\"), i = b(\"ReactEventEmitter\"), j = b(\"ReactInputSelection\"), k = b(\"ReactOnDOMReady\"), l = b(\"Transaction\"), m = b(\"mixInto\"), n = {\n initialize: j.getSelectionInformation,\n close: j.restoreSelection\n }, o = {\n initialize: function() {\n var t = i.isEnabled();\n i.setEnabled(false);\n return t;\n },\n close: function(t) {\n i.setEnabled(t);\n }\n }, p = {\n initialize: function() {\n this.reactOnDOMReady.reset();\n },\n close: function() {\n this.reactOnDOMReady.notifyAll();\n }\n }, q = [n,o,p,];\n function r() {\n this.reinitializeTransaction();\n this.reactOnDOMReady = k.getPooled(null);\n };\n var s = {\n getTransactionWrappers: function() {\n if (g.canUseDOM) {\n return q;\n }\n else return []\n ;\n },\n getReactOnDOMReady: function() {\n return this.reactOnDOMReady;\n },\n destructor: function() {\n k.release(this.reactOnDOMReady);\n this.reactOnDOMReady = null;\n }\n };\n m(r, l.Mixin);\n m(r, s);\n h.addPoolingTo(r);\n e.exports = r;\n});\n__d(\"mergeHelpers\", [\"keyMirror\",\"throwIf\",], function(a, b, c, d, e, f) {\n var g = b(\"keyMirror\"), h = b(\"throwIf\"), i = 36, j = g({\n MERGE_ARRAY_FAIL: null,\n MERGE_CORE_FAILURE: null,\n MERGE_TYPE_USAGE_FAILURE: null,\n MERGE_DEEP_MAX_LEVELS: null,\n MERGE_DEEP_NO_ARR_STRATEGY: null\n }), k = function(m) {\n return ((typeof m !== \"object\") || (m === null));\n }, l = {\n MAX_MERGE_DEPTH: i,\n isTerminal: k,\n normalizeMergeArg: function(m) {\n return (((m === undefined) || (m === null)) ? {\n } : m);\n },\n checkMergeArrayArgs: function(m, n) {\n h((!Array.isArray(m) || !Array.isArray(n)), j.MERGE_CORE_FAILURE);\n },\n checkMergeObjectArgs: function(m, n) {\n l.checkMergeObjectArg(m);\n l.checkMergeObjectArg(n);\n },\n checkMergeObjectArg: function(m) {\n h((k(m) || Array.isArray(m)), j.MERGE_CORE_FAILURE);\n },\n checkMergeLevel: function(m) {\n h((m >= i), j.MERGE_DEEP_MAX_LEVELS);\n },\n checkArrayStrategy: function(m) {\n h(((m !== undefined) && !((m in l.ArrayStrategies))), j.MERGE_DEEP_NO_ARR_STRATEGY);\n },\n ArrayStrategies: g({\n Clobber: true,\n IndexByIndex: true\n }),\n ERRORS: j\n };\n e.exports = l;\n});\n__d(\"mergeInto\", [\"mergeHelpers\",], function(a, b, c, d, e, f) {\n var g = b(\"mergeHelpers\"), h = g.checkMergeObjectArg;\n function i(j, k) {\n h(j);\n if ((k != null)) {\n h(k);\n for (var l in k) {\n if (!k.hasOwnProperty(l)) {\n continue;\n };\n j[l] = k[l];\n };\n }\n ;\n };\n e.exports = i;\n});\n__d(\"merge\", [\"mergeInto\",], function(a, b, c, d, e, f) {\n var g = b(\"mergeInto\"), h = function(i, j) {\n var k = {\n };\n g(k, i);\n g(k, j);\n return k;\n };\n e.exports = h;\n});\n__d(\"ReactComponent\", [\"ReactCurrentOwner\",\"ReactDOMIDOperations\",\"ReactID\",\"ReactOwner\",\"ReactReconcileTransaction\",\"ReactUpdates\",\"invariant\",\"keyMirror\",\"merge\",], function(a, b, c, d, e, f) {\n var g = b(\"ReactCurrentOwner\"), h = b(\"ReactDOMIDOperations\"), i = b(\"ReactID\"), j = b(\"ReactOwner\"), k = b(\"ReactReconcileTransaction\"), l = b(\"ReactUpdates\"), m = b(\"invariant\"), n = b(\"keyMirror\"), o = b(\"merge\"), p = \"{owner}\", q = \"{is.key.validated}\", r = n({\n MOUNTED: null,\n UNMOUNTED: null\n }), s = {\n };\n function t(w) {\n if ((w[q] || (w.props.key != null))) {\n return\n };\n w[q] = true;\n if (!g.current) {\n return\n };\n var x = g.current.constructor.displayName;\n if (s.hasOwnProperty(x)) {\n return\n };\n s[x] = true;\n var y = (((\"Each child in an array should have a unique \\\"key\\\" prop. \" + \"Check the render method of \") + x) + \".\");\n if (!w.isOwnedBy(g.current)) {\n var z = (w.props[p] && w.props[p].constructor.displayName);\n y += ((\" It was passed a child from \" + z) + \".\");\n }\n ;\n };\n function u(w) {\n if (Array.isArray(w)) {\n for (var x = 0; (x < w.length); x++) {\n var y = w[x];\n if (v.isValidComponent(y)) {\n t(y);\n };\n };\n }\n else if (v.isValidComponent(w)) {\n w[q] = true;\n }\n ;\n };\n var v = {\n isValidComponent: function(w) {\n return !!(((w && (typeof w.mountComponentIntoNode === \"function\")) && (typeof w.receiveProps === \"function\")));\n },\n getKey: function(w, x) {\n if (((w && w.props) && (w.props.key != null))) {\n return (\"\" + w.props.key)\n };\n return (\"\" + x);\n },\n LifeCycle: r,\n DOMIDOperations: h,\n ReactReconcileTransaction: k,\n setDOMOperations: function(w) {\n v.DOMIDOperations = w;\n },\n setReactReconcileTransaction: function(w) {\n v.ReactReconcileTransaction = w;\n },\n Mixin: {\n isMounted: function() {\n return (this._lifeCycleState === r.MOUNTED);\n },\n getDOMNode: function() {\n m(this.isMounted());\n return i.getNode(this._rootNodeID);\n },\n setProps: function(w, x) {\n this.replaceProps(o((this._pendingProps || this.props), w), x);\n },\n replaceProps: function(w, x) {\n m(!this.props[p]);\n this._pendingProps = w;\n l.enqueueUpdate(this, x);\n },\n construct: function(w, x) {\n this.props = (w || {\n });\n this.props[p] = g.current;\n this._lifeCycleState = r.UNMOUNTED;\n this._pendingProps = null;\n this._pendingCallbacks = null;\n var y = (arguments.length - 1);\n if ((y === 1)) {\n this.props.children = x;\n }\n else if ((y > 1)) {\n var z = Array(y);\n for (var aa = 0; (aa < y); aa++) {\n z[aa] = arguments[(aa + 1)];;\n };\n this.props.children = z;\n }\n \n ;\n },\n mountComponent: function(w, x) {\n m(!this.isMounted());\n var y = this.props;\n if ((y.ref != null)) {\n j.addComponentAsRefTo(this, y.ref, y[p]);\n };\n this._rootNodeID = w;\n this._lifeCycleState = r.MOUNTED;\n },\n unmountComponent: function() {\n m(this.isMounted());\n var w = this.props;\n if ((w.ref != null)) {\n j.removeComponentAsRefFrom(this, w.ref, w[p]);\n };\n i.purgeID(this._rootNodeID);\n this._rootNodeID = null;\n this._lifeCycleState = r.UNMOUNTED;\n },\n receiveProps: function(w, x) {\n m(this.isMounted());\n this._pendingProps = w;\n this._performUpdateIfNecessary(x);\n },\n performUpdateIfNecessary: function() {\n var w = v.ReactReconcileTransaction.getPooled();\n w.perform(this._performUpdateIfNecessary, this, w);\n v.ReactReconcileTransaction.release(w);\n },\n _performUpdateIfNecessary: function(w) {\n if ((this._pendingProps == null)) {\n return\n };\n var x = this.props;\n this.props = this._pendingProps;\n this._pendingProps = null;\n this.updateComponent(w, x);\n },\n updateComponent: function(w, x) {\n var y = this.props;\n if (((y[p] !== x[p]) || (y.ref !== x.ref))) {\n if ((x.ref != null)) {\n j.removeComponentAsRefFrom(this, x.ref, x[p]);\n };\n if ((y.ref != null)) {\n j.addComponentAsRefTo(this, y.ref, y[p]);\n };\n }\n ;\n },\n mountComponentIntoNode: function(w, x, y) {\n var z = v.ReactReconcileTransaction.getPooled();\n z.perform(this._mountComponentIntoNode, this, w, x, z, y);\n v.ReactReconcileTransaction.release(z);\n },\n _mountComponentIntoNode: function(w, x, y, z) {\n m((x && (x.nodeType === 1)));\n var aa = this.mountComponent(w, y);\n if (z) {\n return\n };\n var ba = x.parentNode;\n if (ba) {\n var ca = x.nextSibling;\n ba.removeChild(x);\n x.innerHTML = aa;\n if (ca) {\n ba.insertBefore(x, ca);\n }\n else ba.appendChild(x);\n ;\n }\n else x.innerHTML = aa;\n ;\n },\n unmountComponentFromNode: function(w) {\n this.unmountComponent();\n while (w.lastChild) {\n w.removeChild(w.lastChild);;\n };\n },\n isOwnedBy: function(w) {\n return (this.props[p] === w);\n },\n getSiblingByRef: function(w) {\n var x = this.props[p];\n if ((!x || !x.refs)) {\n return null\n };\n return x.refs[w];\n }\n }\n };\n e.exports = v;\n});\n__d(\"joinClasses\", [], function(a, b, c, d, e, f) {\n function g(h) {\n if (!h) {\n h = \"\";\n };\n var i, j = arguments.length;\n if ((j > 1)) {\n for (var k = 1; (k < j); k++) {\n i = arguments[k];\n (i && (h += (\" \" + i)));\n }\n };\n return h;\n };\n e.exports = g;\n});\n__d(\"ReactPropTransferer\", [\"emptyFunction\",\"joinClasses\",\"merge\",], function(a, b, c, d, e, f) {\n var g = b(\"emptyFunction\"), h = b(\"joinClasses\"), i = b(\"merge\");\n function j(m) {\n return function(n, o, p) {\n if (!n.hasOwnProperty(o)) {\n n[o] = p;\n }\n else n[o] = m(n[o], p);\n ;\n };\n };\n var k = {\n children: g,\n className: j(h),\n ref: g,\n style: j(i)\n }, l = {\n TransferStrategies: k,\n Mixin: {\n transferPropsTo: function(m) {\n var n = {\n };\n for (var o in m.props) {\n if (m.props.hasOwnProperty(o)) {\n n[o] = m.props[o];\n };\n };\n for (var p in this.props) {\n if (!this.props.hasOwnProperty(p)) {\n continue;\n };\n var q = k[p];\n if (q) {\n q(n, p, this.props[p]);\n }\n else if (!n.hasOwnProperty(p)) {\n n[p] = this.props[p];\n }\n ;\n };\n m.props = n;\n return m;\n }\n }\n };\n e.exports = l;\n});\n__d(\"ReactCompositeComponent\", [\"ReactComponent\",\"ReactCurrentOwner\",\"ReactOwner\",\"ReactPropTransferer\",\"ReactUpdates\",\"invariant\",\"keyMirror\",\"merge\",\"mixInto\",], function(a, b, c, d, e, f) {\n var g = b(\"ReactComponent\"), h = b(\"ReactCurrentOwner\"), i = b(\"ReactOwner\"), j = b(\"ReactPropTransferer\"), k = b(\"ReactUpdates\"), l = b(\"invariant\"), m = b(\"keyMirror\"), n = b(\"merge\"), o = b(\"mixInto\"), p = m({\n DEFINE_ONCE: null,\n DEFINE_MANY: null,\n OVERRIDE_BASE: null\n }), q = {\n mixins: p.DEFINE_MANY,\n propTypes: p.DEFINE_ONCE,\n getDefaultProps: p.DEFINE_ONCE,\n getInitialState: p.DEFINE_ONCE,\n render: p.DEFINE_ONCE,\n componentWillMount: p.DEFINE_MANY,\n componentDidMount: p.DEFINE_MANY,\n componentWillReceiveProps: p.DEFINE_MANY,\n shouldComponentUpdate: p.DEFINE_ONCE,\n componentWillUpdate: p.DEFINE_MANY,\n componentDidUpdate: p.DEFINE_MANY,\n componentWillUnmount: p.DEFINE_MANY,\n updateComponent: p.OVERRIDE_BASE\n }, r = {\n displayName: function(aa, ba) {\n aa.displayName = ba;\n },\n mixins: function(aa, ba) {\n if (ba) {\n for (var ca = 0; (ca < ba.length); ca++) {\n u(aa, ba[ca]);;\n }\n };\n },\n propTypes: function(aa, ba) {\n aa.propTypes = ba;\n }\n };\n function s(aa, ba) {\n var ca = q[ba];\n if (x.hasOwnProperty(ba)) {\n l((ca === p.OVERRIDE_BASE));\n };\n if (aa.hasOwnProperty(ba)) {\n l((ca === p.DEFINE_MANY));\n };\n };\n function t(aa) {\n var ba = aa._compositeLifeCycleState;\n l((aa.isMounted() || (ba === w.MOUNTING)));\n l(((ba !== w.RECEIVING_STATE) && (ba !== w.UNMOUNTING)));\n };\n function u(aa, ba) {\n var ca = aa.prototype;\n for (var da in ba) {\n var ea = ba[da];\n if ((!ba.hasOwnProperty(da) || !ea)) {\n continue;\n };\n s(ca, da);\n if (r.hasOwnProperty(da)) {\n r[da](aa, ea);\n }\n else {\n var fa = (da in q), ga = (da in ca), ha = ea.__reactDontBind, ia = (typeof ea === \"function\"), ja = (((ia && !fa) && !ga) && !ha);\n if (ja) {\n if (!ca.__reactAutoBindMap) {\n ca.__reactAutoBindMap = {\n };\n };\n ca.__reactAutoBindMap[da] = ea;\n ca[da] = ea;\n }\n else if (ga) {\n ca[da] = v(ca[da], ea);\n }\n else ca[da] = ea;\n \n ;\n }\n ;\n };\n };\n function v(aa, ba) {\n return function ca() {\n aa.apply(this, arguments);\n ba.apply(this, arguments);\n };\n };\n var w = m({\n MOUNTING: null,\n UNMOUNTING: null,\n RECEIVING_PROPS: null,\n RECEIVING_STATE: null\n }), x = {\n construct: function(aa, ba) {\n g.Mixin.construct.apply(this, arguments);\n this.state = null;\n this._pendingState = null;\n this._compositeLifeCycleState = null;\n },\n isMounted: function() {\n return (g.Mixin.isMounted.call(this) && (this._compositeLifeCycleState !== w.MOUNTING));\n },\n mountComponent: function(aa, ba) {\n g.Mixin.mountComponent.call(this, aa, ba);\n this._compositeLifeCycleState = w.MOUNTING;\n this._defaultProps = (this.getDefaultProps ? this.getDefaultProps() : null);\n this._processProps(this.props);\n if (this.__reactAutoBindMap) {\n this._bindAutoBindMethods();\n };\n this.state = (this.getInitialState ? this.getInitialState() : null);\n this._pendingState = null;\n this._pendingForceUpdate = false;\n if (this.componentWillMount) {\n this.componentWillMount();\n if (this._pendingState) {\n this.state = this._pendingState;\n this._pendingState = null;\n }\n ;\n }\n ;\n this._renderedComponent = this._renderValidatedComponent();\n this._compositeLifeCycleState = null;\n var ca = this._renderedComponent.mountComponent(aa, ba);\n if (this.componentDidMount) {\n ba.getReactOnDOMReady().enqueue(this, this.componentDidMount);\n };\n return ca;\n },\n unmountComponent: function() {\n this._compositeLifeCycleState = w.UNMOUNTING;\n if (this.componentWillUnmount) {\n this.componentWillUnmount();\n };\n this._compositeLifeCycleState = null;\n this._defaultProps = null;\n g.Mixin.unmountComponent.call(this);\n this._renderedComponent.unmountComponent();\n this._renderedComponent = null;\n if (this.refs) {\n this.refs = null;\n };\n },\n setState: function(aa, ba) {\n this.replaceState(n((this._pendingState || this.state), aa), ba);\n },\n replaceState: function(aa, ba) {\n t(this);\n this._pendingState = aa;\n k.enqueueUpdate(this, ba);\n },\n _processProps: function(aa) {\n var ba, ca = this._defaultProps;\n for (ba in ca) {\n if (!((ba in aa))) {\n aa[ba] = ca[ba];\n };\n };\n var da = this.constructor.propTypes;\n if (da) {\n var ea = this.constructor.displayName;\n for (ba in da) {\n var fa = da[ba];\n if (fa) {\n fa(aa, ba, ea);\n };\n };\n }\n ;\n },\n performUpdateIfNecessary: function() {\n var aa = this._compositeLifeCycleState;\n if (((aa === w.MOUNTING) || (aa === w.RECEIVING_PROPS))) {\n return\n };\n g.Mixin.performUpdateIfNecessary.call(this);\n },\n _performUpdateIfNecessary: function(aa) {\n if ((((this._pendingProps == null) && (this._pendingState == null)) && !this._pendingForceUpdate)) {\n return\n };\n var ba = this.props;\n if ((this._pendingProps != null)) {\n ba = this._pendingProps;\n this._processProps(ba);\n this._pendingProps = null;\n this._compositeLifeCycleState = w.RECEIVING_PROPS;\n if (this.componentWillReceiveProps) {\n this.componentWillReceiveProps(ba, aa);\n };\n }\n ;\n this._compositeLifeCycleState = w.RECEIVING_STATE;\n var ca = (this._pendingState || this.state);\n this._pendingState = null;\n if (((this._pendingForceUpdate || !this.shouldComponentUpdate) || this.shouldComponentUpdate(ba, ca))) {\n this._pendingForceUpdate = false;\n this._performComponentUpdate(ba, ca, aa);\n }\n else {\n this.props = ba;\n this.state = ca;\n }\n ;\n this._compositeLifeCycleState = null;\n },\n _performComponentUpdate: function(aa, ba, ca) {\n var da = this.props, ea = this.state;\n if (this.componentWillUpdate) {\n this.componentWillUpdate(aa, ba, ca);\n };\n this.props = aa;\n this.state = ba;\n this.updateComponent(ca, da, ea);\n if (this.componentDidUpdate) {\n ca.getReactOnDOMReady().enqueue(this, this.componentDidUpdate.bind(this, da, ea));\n };\n },\n updateComponent: function(aa, ba, ca) {\n g.Mixin.updateComponent.call(this, aa, ba);\n var da = this._renderedComponent, ea = this._renderValidatedComponent();\n if ((da.constructor === ea.constructor)) {\n da.receiveProps(ea.props, aa);\n }\n else {\n var fa = this._rootNodeID, ga = da._rootNodeID;\n da.unmountComponent();\n var ha = ea.mountComponent(fa, aa);\n g.DOMIDOperations.dangerouslyReplaceNodeWithMarkupByID(ga, ha);\n this._renderedComponent = ea;\n }\n ;\n },\n forceUpdate: function(aa) {\n var ba = this._compositeLifeCycleState;\n l((this.isMounted() || (ba === w.MOUNTING)));\n l(((ba !== w.RECEIVING_STATE) && (ba !== w.UNMOUNTING)));\n this._pendingForceUpdate = true;\n k.enqueueUpdate(this, aa);\n },\n _renderValidatedComponent: function() {\n var aa;\n h.current = this;\n try {\n aa = this.render();\n } catch (ba) {\n throw ba;\n } finally {\n h.current = null;\n };\n l(g.isValidComponent(aa));\n return aa;\n },\n _bindAutoBindMethods: function() {\n for (var aa in this.__reactAutoBindMap) {\n if (!this.__reactAutoBindMap.hasOwnProperty(aa)) {\n continue;\n };\n var ba = this.__reactAutoBindMap[aa];\n this[aa] = this._bindAutoBindMethod(ba);\n };\n },\n _bindAutoBindMethod: function(aa) {\n var ba = this, ca = function() {\n return aa.apply(ba, arguments);\n };\n return ca;\n }\n }, y = function() {\n \n };\n o(y, g.Mixin);\n o(y, i.Mixin);\n o(y, j.Mixin);\n o(y, x);\n var z = {\n LifeCycle: w,\n Base: y,\n createClass: function(aa) {\n var ba = function() {\n \n };\n ba.prototype = new y();\n ba.prototype.constructor = ba;\n u(ba, aa);\n l(ba.prototype.render);\n for (var ca in q) {\n if (!ba.prototype[ca]) {\n ba.prototype[ca] = null;\n };\n };\n var da = function(ea, fa) {\n var ga = new ba();\n ga.construct.apply(ga, arguments);\n return ga;\n };\n da.componentConstructor = ba;\n da.originalSpec = aa;\n return da;\n },\n autoBind: function(aa) {\n return aa;\n }\n };\n e.exports = z;\n});\n__d(\"ReactMultiChild\", [\"ReactComponent\",], function(a, b, c, d, e, f) {\n var g = b(\"ReactComponent\");\n function h(k, l) {\n return ((k && l) && (k.constructor === l.constructor));\n };\n var i = {\n enqueueMarkupAt: function(k, l) {\n this.domOperations = (this.domOperations || []);\n this.domOperations.push({\n insertMarkup: k,\n finalIndex: l\n });\n },\n enqueueMove: function(k, l) {\n this.domOperations = (this.domOperations || []);\n this.domOperations.push({\n moveFrom: k,\n finalIndex: l\n });\n },\n enqueueUnmountChildByName: function(k, l) {\n if (g.isValidComponent(l)) {\n this.domOperations = (this.domOperations || []);\n this.domOperations.push({\n removeAt: l._domIndex\n });\n (l.unmountComponent && l.unmountComponent());\n delete this._renderedChildren[k];\n }\n ;\n },\n processChildDOMOperationsQueue: function() {\n if (this.domOperations) {\n g.DOMIDOperations.manageChildrenByParentID(this._rootNodeID, this.domOperations);\n this.domOperations = null;\n }\n ;\n },\n unmountMultiChild: function() {\n var k = this._renderedChildren;\n for (var l in k) {\n if ((k.hasOwnProperty(l) && k[l])) {\n var m = k[l];\n (m.unmountComponent && m.unmountComponent());\n }\n ;\n };\n this._renderedChildren = null;\n },\n mountMultiChild: function(k, l) {\n var m = \"\", n = 0;\n for (var o in k) {\n var p = k[o];\n if ((k.hasOwnProperty(o) && p)) {\n m += p.mountComponent(((this._rootNodeID + \".\") + o), l);\n p._domIndex = n;\n n++;\n }\n ;\n };\n this._renderedChildren = k;\n this.domOperations = null;\n return m;\n },\n updateMultiChild: function(k, l) {\n if ((!k && !this._renderedChildren)) {\n return;\n }\n else if ((k && !this._renderedChildren)) {\n this._renderedChildren = {\n };\n }\n else if ((!k && this._renderedChildren)) {\n k = {\n };\n }\n \n ;\n var m = (this._rootNodeID + \".\"), n = null, o = 0, p = 0, q = 0;\n for (var r in k) {\n if (!k.hasOwnProperty(r)) {\n continue;\n };\n var s = this._renderedChildren[r], t = k[r];\n if (h(s, t)) {\n if (n) {\n this.enqueueMarkupAt(n, (p - o));\n n = null;\n }\n ;\n o = 0;\n if ((s._domIndex < q)) {\n this.enqueueMove(s._domIndex, p);\n };\n q = Math.max(s._domIndex, q);\n s.receiveProps(t.props, l);\n s._domIndex = p;\n }\n else {\n if (s) {\n this.enqueueUnmountChildByName(r, s);\n q = Math.max(s._domIndex, q);\n }\n ;\n if (t) {\n this._renderedChildren[r] = t;\n var u = t.mountComponent((m + r), l);\n n = (n ? (n + u) : u);\n o++;\n t._domIndex = p;\n }\n ;\n }\n ;\n p = (t ? (p + 1) : p);\n };\n if (n) {\n this.enqueueMarkupAt(n, (p - o));\n };\n for (var v in this._renderedChildren) {\n if (!this._renderedChildren.hasOwnProperty(v)) {\n continue;\n };\n var w = this._renderedChildren[v];\n if ((w && !k[v])) {\n this.enqueueUnmountChildByName(v, w);\n };\n };\n this.processChildDOMOperationsQueue();\n }\n }, j = {\n Mixin: i\n };\n e.exports = j;\n});\n__d(\"ReactTextComponent\", [\"ReactComponent\",\"ReactID\",\"escapeTextForBrowser\",\"mixInto\",], function(a, b, c, d, e, f) {\n var g = b(\"ReactComponent\"), h = b(\"ReactID\"), i = b(\"escapeTextForBrowser\"), j = b(\"mixInto\"), k = function(l) {\n this.construct({\n text: l\n });\n };\n j(k, g.Mixin);\n j(k, {\n mountComponent: function(l) {\n g.Mixin.mountComponent.call(this, l);\n return (((((((\"\\u003Cspan \" + h.ATTR_NAME) + \"=\\\"\") + l) + \"\\\"\\u003E\") + i(this.props.text)) + \"\\u003C/span\\u003E\"));\n },\n receiveProps: function(l, m) {\n if ((l.text !== this.props.text)) {\n this.props.text = l.text;\n g.DOMIDOperations.updateTextContentByID(this._rootNodeID, l.text);\n }\n ;\n }\n });\n e.exports = k;\n});\n__d(\"traverseAllChildren\", [\"ReactComponent\",\"ReactTextComponent\",\"throwIf\",], function(a, b, c, d, e, f) {\n var g = b(\"ReactComponent\"), h = b(\"ReactTextComponent\"), i = b(\"throwIf\"), j = \"DUPLICATE_KEY_ERROR\", k = \"INVALID_CHILD\", l = function(n, o, p, q, r) {\n var s = 0;\n if (Array.isArray(n)) {\n for (var t = 0; (t < n.length); t++) {\n var u = n[t], v = (((o + \"[\") + g.getKey(u, t)) + \"]\"), w = (p + s);\n s += l(u, v, w, q, r);\n };\n }\n else {\n var x = typeof n, y = (o === \"\"), z = (y ? ((\"[\" + g.getKey(n, 0)) + \"]\") : o);\n if ((((n === null) || (n === undefined)) || (x === \"boolean\"))) {\n q(r, null, z, p);\n s = 1;\n }\n else if (n.mountComponentIntoNode) {\n q(r, n, z, p);\n s = 1;\n }\n else if ((x === \"object\")) {\n i((n && (n.nodeType === 1)), k);\n for (var aa in n) {\n if (n.hasOwnProperty(aa)) {\n s += l(n[aa], (((o + \"{\") + aa) + \"}\"), (p + s), q, r);\n };\n };\n }\n else if ((x === \"string\")) {\n var ba = new h(n);\n q(r, ba, z, p);\n s += 1;\n }\n else if ((x === \"number\")) {\n var ca = new h((\"\" + n));\n q(r, ca, z, p);\n s += 1;\n }\n \n \n \n \n ;\n }\n ;\n return s;\n };\n function m(n, o, p) {\n if (((n !== null) && (n !== undefined))) {\n l(n, \"\", 0, o, p);\n };\n };\n m.DUPLICATE_KEY_ERROR = j;\n e.exports = m;\n});\n__d(\"flattenChildren\", [\"throwIf\",\"traverseAllChildren\",], function(a, b, c, d, e, f) {\n var g = b(\"throwIf\"), h = b(\"traverseAllChildren\");\n function i(k, l, m) {\n var n = k;\n n[m] = l;\n };\n function j(k) {\n if (((k === null) || (k === undefined))) {\n return k\n };\n var l = {\n };\n h(k, i, l);\n return l;\n };\n e.exports = j;\n});\n__d(\"ReactNativeComponent\", [\"CSSPropertyOperations\",\"DOMProperty\",\"DOMPropertyOperations\",\"ReactComponent\",\"ReactEventEmitter\",\"ReactMultiChild\",\"ReactID\",\"escapeTextForBrowser\",\"flattenChildren\",\"invariant\",\"keyOf\",\"merge\",\"mixInto\",], function(a, b, c, d, e, f) {\n var g = b(\"CSSPropertyOperations\"), h = b(\"DOMProperty\"), i = b(\"DOMPropertyOperations\"), j = b(\"ReactComponent\"), k = b(\"ReactEventEmitter\"), l = b(\"ReactMultiChild\"), m = b(\"ReactID\"), n = b(\"escapeTextForBrowser\"), o = b(\"flattenChildren\"), p = b(\"invariant\"), q = b(\"keyOf\"), r = b(\"merge\"), s = b(\"mixInto\"), t = k.putListener, u = k.deleteListener, v = k.registrationNames, w = {\n string: true,\n number: true\n }, x = q({\n dangerouslySetInnerHTML: null\n }), y = q({\n style: null\n });\n function z(ba) {\n if (!ba) {\n return\n };\n p(((ba.children == null) || (ba.dangerouslySetInnerHTML == null)));\n p(((ba.style == null) || (typeof ba.style === \"object\")));\n };\n function aa(ba, ca) {\n this._tagOpen = (\"\\u003C\" + ba);\n this._tagClose = (ca ? \"\" : ((\"\\u003C/\" + ba) + \"\\u003E\"));\n this.tagName = ba.toUpperCase();\n };\n aa.Mixin = {\n mountComponent: function(ba, ca) {\n j.Mixin.mountComponent.call(this, ba, ca);\n z(this.props);\n return (((this._createOpenTagMarkup() + this._createContentMarkup(ca)) + this._tagClose));\n },\n _createOpenTagMarkup: function() {\n var ba = this.props, ca = this._tagOpen;\n for (var da in ba) {\n if (!ba.hasOwnProperty(da)) {\n continue;\n };\n var ea = ba[da];\n if ((ea == null)) {\n continue;\n };\n if (v[da]) {\n t(this._rootNodeID, da, ea);\n }\n else {\n if ((da === y)) {\n if (ea) {\n ea = ba.style = r(ba.style);\n };\n ea = g.createMarkupForStyles(ea);\n }\n ;\n var fa = i.createMarkupForProperty(da, ea);\n if (fa) {\n ca += (\" \" + fa);\n };\n }\n ;\n };\n var ga = n(this._rootNodeID);\n return (((((ca + \" \") + m.ATTR_NAME) + \"=\\\"\") + ga) + \"\\\"\\u003E\");\n },\n _createContentMarkup: function(ba) {\n var ca = this.props.dangerouslySetInnerHTML;\n if ((ca != null)) {\n if ((ca.__html != null)) {\n return ca.__html\n };\n }\n else {\n var da = (w[typeof this.props.children] ? this.props.children : null), ea = ((da != null) ? null : this.props.children);\n if ((da != null)) {\n return n(da);\n }\n else if ((ea != null)) {\n return this.mountMultiChild(o(ea), ba)\n }\n ;\n }\n ;\n return \"\";\n },\n receiveProps: function(ba, ca) {\n z(ba);\n j.Mixin.receiveProps.call(this, ba, ca);\n },\n updateComponent: function(ba, ca) {\n j.Mixin.updateComponent.call(this, ba, ca);\n this._updateDOMProperties(ca);\n this._updateDOMChildren(ca, ba);\n },\n _updateDOMProperties: function(ba) {\n var ca = this.props, da, ea, fa;\n for (da in ba) {\n if ((ca.hasOwnProperty(da) || !ba.hasOwnProperty(da))) {\n continue;\n };\n if ((da === y)) {\n var ga = ba[da];\n for (ea in ga) {\n if (ga.hasOwnProperty(ea)) {\n fa = (fa || {\n });\n fa[ea] = \"\";\n }\n ;\n };\n }\n else if ((da === x)) {\n j.DOMIDOperations.updateTextContentByID(this._rootNodeID, \"\");\n }\n else if (v[da]) {\n u(this._rootNodeID, da);\n }\n else j.DOMIDOperations.deletePropertyByID(this._rootNodeID, da);\n \n \n ;\n };\n for (da in ca) {\n var ha = ca[da], ia = ba[da];\n if ((!ca.hasOwnProperty(da) || (ha === ia))) {\n continue;\n };\n if ((da === y)) {\n if (ha) {\n ha = ca.style = r(ha);\n };\n if (ia) {\n for (ea in ia) {\n if ((ia.hasOwnProperty(ea) && !ha.hasOwnProperty(ea))) {\n fa = (fa || {\n });\n fa[ea] = \"\";\n }\n ;\n };\n for (ea in ha) {\n if ((ha.hasOwnProperty(ea) && (ia[ea] !== ha[ea]))) {\n fa = (fa || {\n });\n fa[ea] = ha[ea];\n }\n ;\n };\n }\n else fa = ha;\n ;\n }\n else if ((da === x)) {\n var ja = (ia && ia.__html), ka = (ha && ha.__html);\n if ((ja !== ka)) {\n j.DOMIDOperations.updateInnerHTMLByID(this._rootNodeID, ha);\n };\n }\n else if (v[da]) {\n t(this._rootNodeID, da, ha);\n }\n else if ((h.isStandardName[da] || h.isCustomAttribute(da))) {\n j.DOMIDOperations.updatePropertyByID(this._rootNodeID, da, ha);\n }\n \n \n ;\n };\n if (fa) {\n j.DOMIDOperations.updateStylesByID(this._rootNodeID, fa);\n };\n },\n _updateDOMChildren: function(ba, ca) {\n var da = this.props, ea = (w[typeof ba.children] ? ba.children : null), fa = (w[typeof da.children] ? da.children : null), ga = ((ea != null) ? null : ba.children), ha = ((fa != null) ? null : da.children);\n if ((fa != null)) {\n var ia = ((ga != null) && (ha == null));\n if (ia) {\n this.updateMultiChild(null, ca);\n };\n if ((ea !== fa)) {\n j.DOMIDOperations.updateTextContentByID(this._rootNodeID, (\"\" + fa));\n };\n }\n else {\n var ja = ((ea != null) && (fa == null));\n if (ja) {\n j.DOMIDOperations.updateTextContentByID(this._rootNodeID, \"\");\n };\n this.updateMultiChild(o(da.children), ca);\n }\n ;\n },\n unmountComponent: function() {\n k.deleteAllListeners(this._rootNodeID);\n j.Mixin.unmountComponent.call(this);\n this.unmountMultiChild();\n }\n };\n s(aa, j.Mixin);\n s(aa, aa.Mixin);\n s(aa, l.Mixin);\n e.exports = aa;\n});\n__d(\"objMapKeyVal\", [], function(a, b, c, d, e, f) {\n function g(h, i, j) {\n if (!h) {\n return null\n };\n var k = 0, l = {\n };\n for (var m in h) {\n if (h.hasOwnProperty(m)) {\n l[m] = i.call(j, m, h[m], k++);\n };\n };\n return l;\n };\n e.exports = g;\n});\n__d(\"ReactDOM\", [\"ReactNativeComponent\",\"mergeInto\",\"objMapKeyVal\",], function(a, b, c, d, e, f) {\n var g = b(\"ReactNativeComponent\"), h = b(\"mergeInto\"), i = b(\"objMapKeyVal\");\n function j(m, n) {\n var o = function() {\n \n };\n o.prototype = new g(m, n);\n o.prototype.constructor = o;\n var p = function(q, r) {\n var s = new o();\n s.construct.apply(s, arguments);\n return s;\n };\n p.componentConstructor = o;\n return p;\n };\n var k = i({\n a: false,\n abbr: false,\n address: false,\n area: false,\n article: false,\n aside: false,\n audio: false,\n b: false,\n base: false,\n bdi: false,\n bdo: false,\n big: false,\n blockquote: false,\n body: false,\n br: true,\n button: false,\n canvas: false,\n caption: false,\n cite: false,\n code: false,\n col: true,\n colgroup: false,\n data: false,\n datalist: false,\n dd: false,\n del: false,\n details: false,\n dfn: false,\n div: false,\n dl: false,\n dt: false,\n em: false,\n embed: true,\n fieldset: false,\n figcaption: false,\n figure: false,\n footer: false,\n form: false,\n h1: false,\n h2: false,\n h3: false,\n h4: false,\n h5: false,\n h6: false,\n head: false,\n header: false,\n hr: true,\n html: false,\n i: false,\n iframe: false,\n img: true,\n input: true,\n ins: false,\n kbd: false,\n keygen: true,\n label: false,\n legend: false,\n li: false,\n link: false,\n main: false,\n map: false,\n mark: false,\n menu: false,\n menuitem: false,\n meta: true,\n meter: false,\n nav: false,\n noscript: false,\n object: false,\n ol: false,\n optgroup: false,\n option: false,\n output: false,\n p: false,\n param: true,\n pre: false,\n progress: false,\n q: false,\n rp: false,\n rt: false,\n ruby: false,\n s: false,\n samp: false,\n script: false,\n section: false,\n select: false,\n small: false,\n source: false,\n span: false,\n strong: false,\n style: false,\n sub: false,\n summary: false,\n sup: false,\n table: false,\n tbody: false,\n td: false,\n textarea: false,\n tfoot: false,\n th: false,\n thead: false,\n time: false,\n title: false,\n tr: false,\n track: true,\n u: false,\n ul: false,\n \"var\": false,\n video: false,\n wbr: false,\n circle: false,\n g: false,\n line: false,\n path: false,\n polyline: false,\n rect: false,\n svg: false,\n text: false\n }, j), l = {\n injectComponentClasses: function(m) {\n h(k, m);\n }\n };\n k.injection = l;\n e.exports = k;\n});\n__d(\"ReactPropTypes\", [\"createObjectFrom\",\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"createObjectFrom\"), h = b(\"invariant\"), i = {\n array: k(\"array\"),\n bool: k(\"boolean\"),\n func: k(\"function\"),\n number: k(\"number\"),\n object: k(\"object\"),\n string: k(\"string\"),\n oneOf: l,\n instanceOf: m\n }, j = \"\\u003C\\u003Canonymous\\u003E\\u003E\";\n function k(o) {\n function p(q, r, s) {\n var t = typeof q;\n if (((t === \"object\") && Array.isArray(q))) {\n t = \"array\";\n };\n h((t === o));\n };\n return n(p);\n };\n function l(o) {\n var p = g(o);\n function q(r, s, t) {\n h(p[r]);\n };\n return n(q);\n };\n function m(o) {\n function p(q, r, s) {\n h((q instanceof o));\n };\n return n(p);\n };\n function n(o) {\n function p(q) {\n function r(s, t, u) {\n var v = s[t];\n if ((v != null)) {\n o(v, t, (u || j));\n }\n else h(!q);\n ;\n };\n if (!q) {\n r.isRequired = p(true);\n };\n return r;\n };\n return p(false);\n };\n e.exports = i;\n});\n__d(\"ReactServerRendering\", [\"ReactReconcileTransaction\",\"ReactInstanceHandles\",], function(a, b, c, d, e, f) {\n var g = b(\"ReactReconcileTransaction\"), h = b(\"ReactInstanceHandles\");\n function i(j, k) {\n var l = h.createReactRootID(), m = g.getPooled();\n m.reinitializeTransaction();\n try {\n m.perform(function() {\n k(j.mountComponent(l, m));\n }, null);\n } finally {\n g.release(m);\n };\n };\n e.exports = {\n renderComponentToString: i\n };\n});\n__d(\"ReactDOMForm\", [\"ReactCompositeComponent\",\"ReactDOM\",\"ReactEventEmitter\",\"EventConstants\",], function(a, b, c, d, e, f) {\n var g = b(\"ReactCompositeComponent\"), h = b(\"ReactDOM\"), i = b(\"ReactEventEmitter\"), j = b(\"EventConstants\"), k = h.form, l = g.createClass({\n render: function() {\n return this.transferPropsTo(k(null, this.props.children));\n },\n componentDidMount: function(m) {\n i.trapBubbledEvent(j.topLevelTypes.topSubmit, \"submit\", m);\n }\n });\n e.exports = l;\n});\n__d(\"ReactDOMInput\", [\"DOMPropertyOperations\",\"ReactCompositeComponent\",\"ReactDOM\",\"merge\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMPropertyOperations\"), h = b(\"ReactCompositeComponent\"), i = b(\"ReactDOM\"), j = b(\"merge\"), k = i.input, l = h.createClass({\n getInitialState: function() {\n return {\n checked: (this.props.defaultChecked || false),\n value: (this.props.defaultValue || \"\")\n };\n },\n shouldComponentUpdate: function() {\n return !this._isChanging;\n },\n getChecked: function() {\n return ((this.props.checked != null) ? this.props.checked : this.state.checked);\n },\n getValue: function() {\n return ((this.props.value != null) ? (\"\" + this.props.value) : this.state.value);\n },\n render: function() {\n var m = j(this.props);\n m.checked = this.getChecked();\n m.value = this.getValue();\n m.onChange = this.handleChange;\n return k(m, this.props.children);\n },\n componentDidUpdate: function(m, n, o) {\n if ((this.props.checked != null)) {\n g.setValueForProperty(o, \"checked\", (this.props.checked || false));\n };\n if ((this.props.value != null)) {\n g.setValueForProperty(o, \"value\", ((\"\" + this.props.value) || \"\"));\n };\n },\n handleChange: function(event) {\n var m;\n if (this.props.onChange) {\n this._isChanging = true;\n m = this.props.onChange(event);\n this._isChanging = false;\n }\n ;\n this.setState({\n checked: event.target.checked,\n value: event.target.value\n });\n return m;\n }\n });\n e.exports = l;\n});\n__d(\"ReactDOMOption\", [\"ReactCompositeComponent\",\"ReactDOM\",], function(a, b, c, d, e, f) {\n var g = b(\"ReactCompositeComponent\"), h = b(\"ReactDOM\"), i = h.option, j = g.createClass({\n componentWillMount: function() {\n (this.props.selected != null);\n },\n render: function() {\n return i(this.props, this.props.children);\n }\n });\n e.exports = j;\n});\n__d(\"ReactDOMSelect\", [\"ReactCompositeComponent\",\"ReactDOM\",\"invariant\",\"merge\",], function(a, b, c, d, e, f) {\n var g = b(\"ReactCompositeComponent\"), h = b(\"ReactDOM\"), i = b(\"invariant\"), j = b(\"merge\"), k = h.select;\n function l(o, p, q) {\n if ((o[p] == null)) {\n return\n };\n if (o.multiple) {\n i(Array.isArray(o[p]));\n }\n else i(!Array.isArray(o[p]));\n ;\n };\n function m() {\n if ((this.props.value == null)) {\n return\n };\n var o = this.getDOMNode().options, p = (\"\" + this.props.value);\n for (var q = 0, r = o.length; (q < r); q++) {\n var s = (this.props.multiple ? (p.indexOf(o[q].value) >= 0) : s = (o[q].value === p));\n if ((s !== o[q].selected)) {\n o[q].selected = s;\n };\n };\n };\n var n = g.createClass({\n propTypes: {\n defaultValue: l,\n value: l\n },\n getInitialState: function() {\n return {\n value: (this.props.defaultValue || ((this.props.multiple ? [] : \"\")))\n };\n },\n componentWillReceiveProps: function(o) {\n if ((!this.props.multiple && o.multiple)) {\n this.setState({\n value: [this.state.value,]\n });\n }\n else if ((this.props.multiple && !o.multiple)) {\n this.setState({\n value: this.state.value[0]\n });\n }\n ;\n },\n shouldComponentUpdate: function() {\n return !this._isChanging;\n },\n render: function() {\n var o = j(this.props);\n o.onChange = this.handleChange;\n o.value = null;\n return k(o, this.props.children);\n },\n componentDidMount: m,\n componentDidUpdate: m,\n handleChange: function(event) {\n var o;\n if (this.props.onChange) {\n this._isChanging = true;\n o = this.props.onChange(event);\n this._isChanging = false;\n }\n ;\n var p;\n if (this.props.multiple) {\n p = [];\n var q = event.target.options;\n for (var r = 0, s = q.length; (r < s); r++) {\n if (q[r].selected) {\n p.push(q[r].value);\n };\n };\n }\n else p = event.target.value;\n ;\n this.setState({\n value: p\n });\n return o;\n }\n });\n e.exports = n;\n});\n__d(\"ReactDOMTextarea\", [\"DOMPropertyOperations\",\"ReactCompositeComponent\",\"ReactDOM\",\"invariant\",\"merge\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMPropertyOperations\"), h = b(\"ReactCompositeComponent\"), i = b(\"ReactDOM\"), j = b(\"invariant\"), k = b(\"merge\"), l = i.textarea, m = {\n string: true,\n number: true\n }, n = h.createClass({\n getInitialState: function() {\n var o = this.props.defaultValue, p = this.props.children;\n if ((p != null)) {\n j((o == null));\n if (Array.isArray(p)) {\n j((p.length <= 1));\n p = p[0];\n }\n ;\n j(m[typeof p]);\n o = (\"\" + p);\n }\n ;\n o = (o || \"\");\n return {\n initialValue: ((this.props.value != null) ? this.props.value : o),\n value: o\n };\n },\n shouldComponentUpdate: function() {\n return !this._isChanging;\n },\n getValue: function() {\n return ((this.props.value != null) ? this.props.value : this.state.value);\n },\n render: function() {\n var o = k(this.props);\n j((o.dangerouslySetInnerHTML == null));\n o.value = this.getValue();\n o.onChange = this.handleChange;\n return l(o, this.state.initialValue);\n },\n componentDidUpdate: function(o, p, q) {\n if ((this.props.value != null)) {\n g.setValueForProperty(q, \"value\", (this.props.value || \"\"));\n };\n },\n handleChange: function(event) {\n var o;\n if (this.props.onChange) {\n this._isChanging = true;\n o = this.props.onChange(event);\n this._isChanging = false;\n }\n ;\n this.setState({\n value: event.target.value\n });\n return o;\n }\n });\n e.exports = n;\n});\n__d(\"DefaultDOMPropertyConfig\", [\"DOMProperty\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMProperty\"), h = g.injection.MUST_USE_ATTRIBUTE, i = g.injection.MUST_USE_PROPERTY, j = g.injection.HAS_BOOLEAN_VALUE, k = g.injection.HAS_SIDE_EFFECTS, l = {\n isCustomAttribute: RegExp.prototype.test.bind(/^(data|aria)-[a-z_][a-z\\d_.\\-]*$/),\n Properties: {\n accessKey: null,\n accept: null,\n action: null,\n ajaxify: h,\n allowFullScreen: (h | j),\n allowTransparency: h,\n alt: null,\n autoComplete: null,\n autoFocus: j,\n autoPlay: j,\n cellPadding: null,\n cellSpacing: null,\n checked: (i | j),\n className: i,\n colSpan: null,\n contentEditable: null,\n contextMenu: h,\n controls: (i | j),\n data: null,\n dateTime: h,\n dir: null,\n disabled: (i | j),\n draggable: null,\n encType: null,\n frameBorder: h,\n height: h,\n hidden: (h | j),\n href: null,\n htmlFor: null,\n icon: null,\n id: i,\n label: null,\n lang: null,\n list: null,\n max: null,\n maxLength: h,\n method: null,\n min: null,\n multiple: (i | j),\n name: null,\n pattern: null,\n poster: null,\n preload: null,\n placeholder: null,\n radioGroup: null,\n rel: null,\n readOnly: (i | j),\n required: j,\n role: h,\n scrollLeft: i,\n scrollTop: i,\n selected: (i | j),\n size: null,\n spellCheck: null,\n src: null,\n step: null,\n style: null,\n tabIndex: null,\n target: null,\n title: null,\n type: null,\n value: (i | k),\n width: h,\n wmode: h,\n cx: i,\n cy: i,\n d: i,\n fill: i,\n fx: i,\n fy: i,\n points: i,\n r: i,\n stroke: i,\n strokeLinecap: i,\n strokeWidth: i,\n transform: i,\n x: i,\n x1: i,\n x2: i,\n version: i,\n viewBox: i,\n y: i,\n y1: i,\n y2: i,\n spreadMethod: i,\n offset: i,\n stopColor: i,\n stopOpacity: i,\n gradientUnits: i,\n gradientTransform: i\n },\n DOMAttributeNames: {\n className: \"class\",\n htmlFor: \"for\",\n strokeLinecap: \"stroke-linecap\",\n strokeWidth: \"stroke-width\",\n stopColor: \"stop-color\",\n stopOpacity: \"stop-opacity\"\n },\n DOMPropertyNames: {\n autoComplete: \"autocomplete\",\n autoFocus: \"autofocus\",\n autoPlay: \"autoplay\",\n encType: \"enctype\",\n radioGroup: \"radiogroup\",\n spellCheck: \"spellcheck\"\n },\n DOMMutationMethods: {\n className: function(m, n) {\n m.className = (n || \"\");\n }\n }\n };\n e.exports = l;\n});\n__d(\"DefaultEventPluginOrder\", [\"keyOf\",], function(a, b, c, d, e, f) {\n var g = b(\"keyOf\"), h = [g({\n ResponderEventPlugin: null\n }),g({\n SimpleEventPlugin: null\n }),g({\n TapEventPlugin: null\n }),g({\n EnterLeaveEventPlugin: null\n }),g({\n ChangeEventPlugin: null\n }),g({\n AnalyticsEventPlugin: null\n }),];\n e.exports = h;\n});\n__d(\"SyntheticEvent\", [\"PooledClass\",\"emptyFunction\",\"getEventTarget\",\"merge\",\"mergeInto\",], function(a, b, c, d, e, f) {\n var g = b(\"PooledClass\"), h = b(\"emptyFunction\"), i = b(\"getEventTarget\"), j = b(\"merge\"), k = b(\"mergeInto\"), l = {\n type: null,\n target: i,\n currentTarget: null,\n eventPhase: null,\n bubbles: null,\n cancelable: null,\n timeStamp: function(event) {\n return (event.timeStamp || Date.now());\n },\n defaultPrevented: null,\n isTrusted: null\n };\n function m(n, o, p) {\n this.dispatchConfig = n;\n this.dispatchMarker = o;\n this.nativeEvent = p;\n var q = this.constructor.Interface;\n for (var r in q) {\n var s = q[r];\n if (s) {\n this[r] = s(p);\n }\n else this[r] = p[r];\n ;\n };\n if ((p.defaultPrevented || (p.returnValue === false))) {\n this.isDefaultPrevented = h.thatReturnsTrue;\n }\n else this.isDefaultPrevented = h.thatReturnsFalse;\n ;\n this.isPropagationStopped = h.thatReturnsFalse;\n };\n k(m.prototype, {\n preventDefault: function() {\n this.defaultPrevented = true;\n var event = this.nativeEvent;\n (event.preventDefault ? event.preventDefault() : event.returnValue = false);\n this.isDefaultPrevented = h.thatReturnsTrue;\n },\n stopPropagation: function() {\n var event = this.nativeEvent;\n (event.stopPropagation ? event.stopPropagation() : event.cancelBubble = true);\n this.isPropagationStopped = h.thatReturnsTrue;\n },\n persist: function() {\n this.isPersistent = h.thatReturnsTrue;\n },\n isPersistent: h.thatReturnsFalse,\n destructor: function() {\n var n = this.constructor.Interface;\n for (var o in n) {\n this[o] = null;;\n };\n this.dispatchConfig = null;\n this.dispatchMarker = null;\n this.nativeEvent = null;\n }\n });\n m.Interface = l;\n m.augmentClass = function(n, o) {\n var p = this, q = Object.create(p.prototype);\n k(q, n.prototype);\n n.prototype = q;\n n.prototype.constructor = n;\n n.Interface = j(p.Interface, o);\n n.augmentClass = p.augmentClass;\n g.addPoolingTo(n, g.threeArgumentPooler);\n };\n g.addPoolingTo(m, g.threeArgumentPooler);\n e.exports = m;\n});\n__d(\"SyntheticUIEvent\", [\"SyntheticEvent\",], function(a, b, c, d, e, f) {\n var g = b(\"SyntheticEvent\"), h = {\n view: null,\n detail: null\n };\n function i(j, k, l) {\n g.call(this, j, k, l);\n };\n g.augmentClass(i, h);\n e.exports = i;\n});\n__d(\"SyntheticMouseEvent\", [\"SyntheticUIEvent\",\"ViewportMetrics\",], function(a, b, c, d, e, f) {\n var g = b(\"SyntheticUIEvent\"), h = b(\"ViewportMetrics\"), i = {\n screenX: null,\n screenY: null,\n clientX: null,\n clientY: null,\n ctrlKey: null,\n shiftKey: null,\n altKey: null,\n metaKey: null,\n button: function(event) {\n var k = event.button;\n if ((\"which\" in event)) {\n return k\n };\n return ((k === 2) ? 2 : ((k === 4) ? 1 : 0));\n },\n buttons: null,\n relatedTarget: function(event) {\n return (event.relatedTarget || (((event.fromElement === event.srcElement) ? event.toElement : event.fromElement)));\n },\n pageX: function(event) {\n return ((\"pageX\" in event) ? event.pageX : (event.clientX + h.currentScrollLeft));\n },\n pageY: function(event) {\n return ((\"pageY\" in event) ? event.pageY : (event.clientY + h.currentScrollTop));\n }\n };\n function j(k, l, m) {\n g.call(this, k, l, m);\n };\n g.augmentClass(j, i);\n e.exports = j;\n});\n__d(\"EnterLeaveEventPlugin\", [\"EventConstants\",\"EventPropagators\",\"ExecutionEnvironment\",\"ReactInstanceHandles\",\"SyntheticMouseEvent\",\"ReactID\",\"keyOf\",], function(a, b, c, d, e, f) {\n var g = b(\"EventConstants\"), h = b(\"EventPropagators\"), i = b(\"ExecutionEnvironment\"), j = b(\"ReactInstanceHandles\"), k = b(\"SyntheticMouseEvent\"), l = b(\"ReactID\"), m = b(\"keyOf\"), n = g.topLevelTypes, o = j.getFirstReactDOM, p = {\n mouseEnter: {\n registrationName: m({\n onMouseEnter: null\n })\n },\n mouseLeave: {\n registrationName: m({\n onMouseLeave: null\n })\n }\n }, q = {\n eventTypes: p,\n extractEvents: function(r, s, t, u) {\n if (((r === n.topMouseOver) && ((u.relatedTarget || u.fromElement)))) {\n return null\n };\n if (((r !== n.topMouseOut) && (r !== n.topMouseOver))) {\n return null\n };\n var v, w;\n if ((r === n.topMouseOut)) {\n v = s;\n w = (o((u.relatedTarget || u.toElement)) || i.global);\n }\n else {\n v = i.global;\n w = s;\n }\n ;\n if ((v === w)) {\n return null\n };\n var x = (v ? l.getID(v) : \"\"), y = (w ? l.getID(w) : \"\"), z = k.getPooled(p.mouseLeave, x, u), aa = k.getPooled(p.mouseEnter, y, u);\n h.accumulateEnterLeaveDispatches(z, aa, x, y);\n return [z,aa,];\n }\n };\n e.exports = q;\n});\n__d(\"ChangeEventPlugin\", [\"EventConstants\",\"EventPluginHub\",\"EventPropagators\",\"ExecutionEnvironment\",\"SyntheticEvent\",\"isEventSupported\",\"keyOf\",], function(a, b, c, d, e, f) {\n var g = b(\"EventConstants\"), h = b(\"EventPluginHub\"), i = b(\"EventPropagators\"), j = b(\"ExecutionEnvironment\"), k = b(\"SyntheticEvent\"), l = b(\"isEventSupported\"), m = b(\"keyOf\"), n = g.topLevelTypes, o = {\n change: {\n phasedRegistrationNames: {\n bubbled: m({\n onChange: null\n }),\n captured: m({\n onChangeCapture: null\n })\n }\n }\n }, p = null, q = null, r = null, s = null;\n function t(na) {\n return (((na.nodeName === \"SELECT\") || (((na.nodeName === \"INPUT\") && (na.type === \"file\")))));\n };\n var u = false;\n if (j.canUseDOM) {\n u = (l(\"change\") && ((!((\"documentMode\" in document)) || (document.documentMode > 8))));\n };\n function v(na) {\n var event = k.getPooled(o.change, q, na);\n i.accumulateTwoPhaseDispatches(event);\n h.enqueueEvents(event);\n h.processEventQueue();\n };\n function w(na, oa) {\n p = na;\n q = oa;\n p.attachEvent(\"onchange\", v);\n };\n function x() {\n if (!p) {\n return\n };\n p.detachEvent(\"onchange\", v);\n p = null;\n q = null;\n };\n function y(na, oa, pa) {\n if ((na === n.topChange)) {\n return pa\n };\n };\n function z(na, oa, pa) {\n if ((na === n.topFocus)) {\n x();\n w(oa, pa);\n }\n else if ((na === n.topBlur)) {\n x();\n }\n ;\n };\n var aa = false;\n if (j.canUseDOM) {\n aa = (l(\"input\") && ((!((\"documentMode\" in document)) || (document.documentMode > 9))));\n };\n var ba = {\n color: true,\n date: true,\n datetime: true,\n \"datetime-local\": true,\n email: true,\n month: true,\n number: true,\n password: true,\n range: true,\n search: true,\n tel: true,\n text: true,\n time: true,\n url: true,\n week: true\n };\n function ca(na) {\n return (((((na.nodeName === \"INPUT\") && ba[na.type])) || (na.nodeName === \"TEXTAREA\")));\n };\n var da = {\n get: function() {\n return s.get.call(this);\n },\n set: function(na) {\n r = (\"\" + na);\n s.set.call(this, na);\n }\n };\n function ea(na, oa) {\n p = na;\n q = oa;\n r = na.value;\n s = Object.getOwnPropertyDescriptor(na.constructor.prototype, \"value\");\n Object.defineProperty(p, \"value\", da);\n p.attachEvent(\"onpropertychange\", ga);\n };\n function fa() {\n if (!p) {\n return\n };\n delete p.value;\n p.detachEvent(\"onpropertychange\", ga);\n p = null;\n q = null;\n r = null;\n s = null;\n };\n function ga(na) {\n if ((na.propertyName !== \"value\")) {\n return\n };\n var oa = na.srcElement.value;\n if ((oa === r)) {\n return\n };\n r = oa;\n v(na);\n };\n function ha(na, oa, pa) {\n if ((na === n.topInput)) {\n return pa\n };\n };\n function ia(na, oa, pa) {\n if ((na === n.topFocus)) {\n fa();\n ea(oa, pa);\n }\n else if ((na === n.topBlur)) {\n fa();\n }\n ;\n };\n function ja(na, oa, pa) {\n if ((((na === n.topSelectionChange) || (na === n.topKeyUp)) || (na === n.topKeyDown))) {\n if ((p && (p.value !== r))) {\n r = p.value;\n return q;\n }\n \n };\n };\n function ka(na) {\n return (((na.nodeName === \"INPUT\") && (((na.type === \"checkbox\") || (na.type === \"radio\")))));\n };\n function la(na, oa, pa) {\n if ((na === n.topClick)) {\n return pa\n };\n };\n var ma = {\n eventTypes: o,\n extractEvents: function(na, oa, pa, qa) {\n var ra, sa;\n if (t(oa)) {\n if (u) {\n ra = y;\n }\n else sa = z;\n ;\n }\n else if (ca(oa)) {\n if (aa) {\n ra = ha;\n }\n else {\n ra = ja;\n sa = ia;\n }\n ;\n }\n else if (ka(oa)) {\n ra = la;\n }\n \n ;\n if (ra) {\n var ta = ra(na, oa, pa);\n if (ta) {\n var event = k.getPooled(o.change, ta, qa);\n i.accumulateTwoPhaseDispatches(event);\n return event;\n }\n ;\n }\n ;\n if (sa) {\n sa(na, oa, pa);\n };\n }\n };\n e.exports = ma;\n});\n__d(\"SyntheticFocusEvent\", [\"SyntheticUIEvent\",], function(a, b, c, d, e, f) {\n var g = b(\"SyntheticUIEvent\"), h = {\n relatedTarget: null\n };\n function i(j, k, l) {\n g.call(this, j, k, l);\n };\n g.augmentClass(i, h);\n e.exports = i;\n});\n__d(\"SyntheticKeyboardEvent\", [\"SyntheticUIEvent\",], function(a, b, c, d, e, f) {\n var g = b(\"SyntheticUIEvent\"), h = {\n char: null,\n key: null,\n location: null,\n ctrlKey: null,\n shiftKey: null,\n altKey: null,\n metaKey: null,\n repeat: null,\n locale: null,\n charCode: null,\n keyCode: null,\n which: null\n };\n function i(j, k, l) {\n g.call(this, j, k, l);\n };\n g.augmentClass(i, h);\n e.exports = i;\n});\n__d(\"SyntheticMutationEvent\", [\"SyntheticEvent\",], function(a, b, c, d, e, f) {\n var g = b(\"SyntheticEvent\"), h = {\n relatedNode: null,\n prevValue: null,\n newValue: null,\n attrName: null,\n attrChange: null\n };\n function i(j, k, l) {\n g.call(this, j, k, l);\n };\n g.augmentClass(i, h);\n e.exports = i;\n});\n__d(\"SyntheticTouchEvent\", [\"SyntheticUIEvent\",], function(a, b, c, d, e, f) {\n var g = b(\"SyntheticUIEvent\"), h = {\n touches: null,\n targetTouches: null,\n changedTouches: null,\n altKey: null,\n metaKey: null,\n ctrlKey: null,\n shiftKey: null\n };\n function i(j, k, l) {\n g.call(this, j, k, l);\n };\n g.augmentClass(i, h);\n e.exports = i;\n});\n__d(\"SyntheticWheelEvent\", [\"SyntheticMouseEvent\",], function(a, b, c, d, e, f) {\n var g = b(\"SyntheticMouseEvent\"), h = {\n deltaX: function(event) {\n return (((\"deltaX\" in event) ? event.deltaX : ((\"wheelDeltaX\" in event) ? -event.wheelDeltaX : 0)));\n },\n deltaY: function(event) {\n return (((\"deltaY\" in event) ? -event.deltaY : ((\"wheelDeltaY\" in event) ? event.wheelDeltaY : ((\"wheelDelta\" in event) ? event.wheelData : 0))));\n },\n deltaZ: null,\n deltaMode: null\n };\n function i(j, k, l) {\n g.call(this, j, k, l);\n };\n g.augmentClass(i, h);\n e.exports = i;\n});\n__d(\"SimpleEventPlugin\", [\"EventConstants\",\"EventPropagators\",\"SyntheticEvent\",\"SyntheticFocusEvent\",\"SyntheticKeyboardEvent\",\"SyntheticMouseEvent\",\"SyntheticMutationEvent\",\"SyntheticTouchEvent\",\"SyntheticUIEvent\",\"SyntheticWheelEvent\",\"invariant\",\"keyOf\",], function(a, b, c, d, e, f) {\n var g = b(\"EventConstants\"), h = b(\"EventPropagators\"), i = b(\"SyntheticEvent\"), j = b(\"SyntheticFocusEvent\"), k = b(\"SyntheticKeyboardEvent\"), l = b(\"SyntheticMouseEvent\"), m = b(\"SyntheticMutationEvent\"), n = b(\"SyntheticTouchEvent\"), o = b(\"SyntheticUIEvent\"), p = b(\"SyntheticWheelEvent\"), q = b(\"invariant\"), r = b(\"keyOf\"), s = g.topLevelTypes, t = {\n blur: {\n phasedRegistrationNames: {\n bubbled: r({\n onBlur: true\n }),\n captured: r({\n onBlurCapture: true\n })\n }\n },\n click: {\n phasedRegistrationNames: {\n bubbled: r({\n onClick: true\n }),\n captured: r({\n onClickCapture: true\n })\n }\n },\n doubleClick: {\n phasedRegistrationNames: {\n bubbled: r({\n onDoubleClick: true\n }),\n captured: r({\n onDoubleClickCapture: true\n })\n }\n },\n drag: {\n phasedRegistrationNames: {\n bubbled: r({\n onDrag: true\n }),\n captured: r({\n onDragCapture: true\n })\n }\n },\n dragEnd: {\n phasedRegistrationNames: {\n bubbled: r({\n onDragEnd: true\n }),\n captured: r({\n onDragEndCapture: true\n })\n }\n },\n dragEnter: {\n phasedRegistrationNames: {\n bubbled: r({\n onDragEnter: true\n }),\n captured: r({\n onDragEnterCapture: true\n })\n }\n },\n dragExit: {\n phasedRegistrationNames: {\n bubbled: r({\n onDragExit: true\n }),\n captured: r({\n onDragExitCapture: true\n })\n }\n },\n dragLeave: {\n phasedRegistrationNames: {\n bubbled: r({\n onDragLeave: true\n }),\n captured: r({\n onDragLeaveCapture: true\n })\n }\n },\n dragOver: {\n phasedRegistrationNames: {\n bubbled: r({\n onDragOver: true\n }),\n captured: r({\n onDragOverCapture: true\n })\n }\n },\n dragStart: {\n phasedRegistrationNames: {\n bubbled: r({\n onDragStart: true\n }),\n captured: r({\n onDragStartCapture: true\n })\n }\n },\n drop: {\n phasedRegistrationNames: {\n bubbled: r({\n onDrop: true\n }),\n captured: r({\n onDropCapture: true\n })\n }\n },\n DOMCharacterDataModified: {\n phasedRegistrationNames: {\n bubbled: r({\n onDOMCharacterDataModified: true\n }),\n captured: r({\n onDOMCharacterDataModifiedCapture: true\n })\n }\n },\n focus: {\n phasedRegistrationNames: {\n bubbled: r({\n onFocus: true\n }),\n captured: r({\n onFocusCapture: true\n })\n }\n },\n input: {\n phasedRegistrationNames: {\n bubbled: r({\n onInput: true\n }),\n captured: r({\n onInputCapture: true\n })\n }\n },\n keyDown: {\n phasedRegistrationNames: {\n bubbled: r({\n onKeyDown: true\n }),\n captured: r({\n onKeyDownCapture: true\n })\n }\n },\n keyPress: {\n phasedRegistrationNames: {\n bubbled: r({\n onKeyPress: true\n }),\n captured: r({\n onKeyPressCapture: true\n })\n }\n },\n keyUp: {\n phasedRegistrationNames: {\n bubbled: r({\n onKeyUp: true\n }),\n captured: r({\n onKeyUpCapture: true\n })\n }\n },\n mouseDown: {\n phasedRegistrationNames: {\n bubbled: r({\n onMouseDown: true\n }),\n captured: r({\n onMouseDownCapture: true\n })\n }\n },\n mouseMove: {\n phasedRegistrationNames: {\n bubbled: r({\n onMouseMove: true\n }),\n captured: r({\n onMouseMoveCapture: true\n })\n }\n },\n mouseUp: {\n phasedRegistrationNames: {\n bubbled: r({\n onMouseUp: true\n }),\n captured: r({\n onMouseUpCapture: true\n })\n }\n },\n scroll: {\n phasedRegistrationNames: {\n bubbled: r({\n onScroll: true\n }),\n captured: r({\n onScrollCapture: true\n })\n }\n },\n submit: {\n phasedRegistrationNames: {\n bubbled: r({\n onSubmit: true\n }),\n captured: r({\n onSubmitCapture: true\n })\n }\n },\n touchCancel: {\n phasedRegistrationNames: {\n bubbled: r({\n onTouchCancel: true\n }),\n captured: r({\n onTouchCancelCapture: true\n })\n }\n },\n touchEnd: {\n phasedRegistrationNames: {\n bubbled: r({\n onTouchEnd: true\n }),\n captured: r({\n onTouchEndCapture: true\n })\n }\n },\n touchMove: {\n phasedRegistrationNames: {\n bubbled: r({\n onTouchMove: true\n }),\n captured: r({\n onTouchMoveCapture: true\n })\n }\n },\n touchStart: {\n phasedRegistrationNames: {\n bubbled: r({\n onTouchStart: true\n }),\n captured: r({\n onTouchStartCapture: true\n })\n }\n },\n wheel: {\n phasedRegistrationNames: {\n bubbled: r({\n onWheel: true\n }),\n captured: r({\n onWheelCapture: true\n })\n }\n }\n }, u = {\n topBlur: t.blur,\n topClick: t.click,\n topDoubleClick: t.doubleClick,\n topDOMCharacterDataModified: t.DOMCharacterDataModified,\n topDrag: t.drag,\n topDragEnd: t.dragEnd,\n topDragEnter: t.dragEnter,\n topDragExit: t.dragExit,\n topDragLeave: t.dragLeave,\n topDragOver: t.dragOver,\n topDragStart: t.dragStart,\n topDrop: t.drop,\n topFocus: t.focus,\n topInput: t.input,\n topKeyDown: t.keyDown,\n topKeyPress: t.keyPress,\n topKeyUp: t.keyUp,\n topMouseDown: t.mouseDown,\n topMouseMove: t.mouseMove,\n topMouseUp: t.mouseUp,\n topScroll: t.scroll,\n topSubmit: t.submit,\n topTouchCancel: t.touchCancel,\n topTouchEnd: t.touchEnd,\n topTouchMove: t.touchMove,\n topTouchStart: t.touchStart,\n topWheel: t.wheel\n }, v = {\n eventTypes: t,\n executeDispatch: function(event, w, x) {\n var y = w(event, x);\n if ((y === false)) {\n event.stopPropagation();\n event.preventDefault();\n }\n ;\n },\n extractEvents: function(w, x, y, z) {\n var aa = u[w];\n if (!aa) {\n return null\n };\n var ba;\n switch (w) {\n case s.topInput:\n \n case s.topSubmit:\n ba = i;\n break;\n case s.topKeyDown:\n \n case s.topKeyPress:\n \n case s.topKeyUp:\n ba = k;\n break;\n case s.topBlur:\n \n case s.topFocus:\n ba = j;\n break;\n case s.topClick:\n \n case s.topDoubleClick:\n \n case s.topDrag:\n \n case s.topDragEnd:\n \n case s.topDragEnter:\n \n case s.topDragExit:\n \n case s.topDragLeave:\n \n case s.topDragOver:\n \n case s.topDragStart:\n \n case s.topDrop:\n \n case s.topMouseDown:\n \n case s.topMouseMove:\n \n case s.topMouseUp:\n ba = l;\n break;\n case s.topDOMCharacterDataModified:\n ba = m;\n break;\n case s.topTouchCancel:\n \n case s.topTouchEnd:\n \n case s.topTouchMove:\n \n case s.topTouchStart:\n ba = n;\n break;\n case s.topScroll:\n ba = o;\n break;\n case s.topWheel:\n ba = p;\n break;\n };\n q(ba);\n var event = ba.getPooled(aa, y, z);\n h.accumulateTwoPhaseDispatches(event);\n return event;\n }\n };\n e.exports = v;\n});\n__d(\"ReactDefaultInjection\", [\"ReactDOM\",\"ReactDOMForm\",\"ReactDOMInput\",\"ReactDOMOption\",\"ReactDOMSelect\",\"ReactDOMTextarea\",\"DefaultDOMPropertyConfig\",\"DOMProperty\",\"DefaultEventPluginOrder\",\"EnterLeaveEventPlugin\",\"ChangeEventPlugin\",\"EventPluginHub\",\"ReactInstanceHandles\",\"SimpleEventPlugin\",], function(a, b, c, d, e, f) {\n var g = b(\"ReactDOM\"), h = b(\"ReactDOMForm\"), i = b(\"ReactDOMInput\"), j = b(\"ReactDOMOption\"), k = b(\"ReactDOMSelect\"), l = b(\"ReactDOMTextarea\"), m = b(\"DefaultDOMPropertyConfig\"), n = b(\"DOMProperty\"), o = b(\"DefaultEventPluginOrder\"), p = b(\"EnterLeaveEventPlugin\"), q = b(\"ChangeEventPlugin\"), r = b(\"EventPluginHub\"), s = b(\"ReactInstanceHandles\"), t = b(\"SimpleEventPlugin\");\n function u() {\n r.injection.injectEventPluginOrder(o);\n r.injection.injectInstanceHandle(s);\n r.injection.injectEventPluginsByName({\n SimpleEventPlugin: t,\n EnterLeaveEventPlugin: p,\n ChangeEventPlugin: q\n });\n g.injection.injectComponentClasses({\n form: h,\n input: i,\n option: j,\n select: k,\n textarea: l\n });\n n.injection.injectDOMPropertyConfig(m);\n };\n e.exports = {\n inject: u\n };\n});\n__d(\"React\", [\"ReactCompositeComponent\",\"ReactComponent\",\"ReactDOM\",\"ReactMount\",\"ReactPropTypes\",\"ReactServerRendering\",\"ReactDefaultInjection\",], function(a, b, c, d, e, f) {\n var g = b(\"ReactCompositeComponent\"), h = b(\"ReactComponent\"), i = b(\"ReactDOM\"), j = b(\"ReactMount\"), k = b(\"ReactPropTypes\"), l = b(\"ReactServerRendering\"), m = b(\"ReactDefaultInjection\");\n m.inject();\n var n = {\n DOM: i,\n PropTypes: k,\n initializeTouchEvents: function(o) {\n j.useTouchEvents = o;\n },\n autoBind: g.autoBind,\n createClass: g.createClass,\n constructAndRenderComponent: j.constructAndRenderComponent,\n constructAndRenderComponentByID: j.constructAndRenderComponentByID,\n renderComponent: j.renderComponent,\n renderComponentToString: l.renderComponentToString,\n unmountAndReleaseReactRootNode: j.unmountAndReleaseReactRootNode,\n isValidComponent: h.isValidComponent\n };\n e.exports = n;\n});\n__d(\"CloseButton.react\", [\"React\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"cx\"), i = g.createClass({\n displayName: \"CloseButton\",\n render: function() {\n var j = this.props, k = (j.size || \"medium\"), l = (j.appearance || \"normal\"), m = (k === \"small\"), n = (k === \"huge\"), o = (l === \"dark\"), p = (l === \"inverted\"), q = ((((((((\"uiCloseButton\") + ((m ? (\" \" + \"uiCloseButtonSmall\") : \"\"))) + ((n ? (\" \" + \"uiCloseButtonHuge\") : \"\"))) + (((m && o) ? (\" \" + \"uiCloseButtonSmallDark\") : \"\"))) + (((m && p) ? (\" \" + \"uiCloseButtonSmallInverted\") : \"\"))) + (((!m && o) ? (\" \" + \"uiCloseButtonDark\") : \"\"))) + (((!m && p) ? (\" \" + \"uiCloseButtonInverted\") : \"\"))));\n return this.transferPropsTo(g.DOM.a({\n href: \"#\",\n role: \"button\",\n \"aria-label\": j.tooltip,\n \"data-hover\": (j.tooltip && \"tooltip\"),\n \"data-tooltip-alignh\": (j.tooltip && \"center\"),\n className: q\n }));\n }\n });\n e.exports = i;\n});\n__d(\"HovercardLink\", [\"Bootloader\",\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"Bootloader\"), h = b(\"URI\"), i = {\n getBaseURI: function() {\n return h(\"/ajax/hovercard/hovercard.php\");\n },\n constructEndpoint: function(j, k) {\n return i.constructEndpointWithGroupAndLocation(j, k, null);\n },\n constructEndpointWithLocation: function(j, k) {\n return i.constructEndpointWithGroupAndLocation(j, null, k);\n },\n constructEndpointWithGroupAndLocation: function(j, k, l) {\n g.loadModules([\"Hovercard\",], function() {\n \n });\n var m = new h(i.getBaseURI()).setQueryData({\n id: j.id\n }), n = {\n };\n if ((j.weakreference && k)) {\n n.group_id = k;\n };\n if (l) {\n n.hc_location = l;\n };\n m.addQueryData({\n extragetparams: JSON.stringify(n)\n });\n return m;\n }\n };\n e.exports = i;\n});\n__d(\"Image.react\", [\"React\",\"invariant\",\"joinClasses\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"invariant\"), i = b(\"joinClasses\"), j = g.createClass({\n displayName: \"ReactImage\",\n propTypes: {\n src: function(k, l, m) {\n var n = k[l];\n h(((typeof n === \"string\") || (((typeof n === \"object\") && (((((n.sprited && n.spriteMapCssClass) && n.spriteCssClass)) || ((!n.sprited && n.uri))))))));\n }\n },\n render: function() {\n var k, l, m = this.props.src, n = \"img\";\n l = true;\n if ((typeof m === \"string\")) {\n k = g.DOM.img({\n className: n,\n src: m\n });\n }\n else if (m.sprited) {\n n = i(n, m.spriteMapCssClass, m.spriteCssClass);\n k = g.DOM.i({\n className: n,\n src: null\n });\n l = false;\n }\n else {\n k = g.DOM.img({\n className: n,\n src: m.uri\n });\n if (((typeof this.props.width === \"undefined\") && (typeof this.props.height === \"undefined\"))) {\n k.props.width = m.width;\n k.props.height = m.height;\n }\n ;\n }\n \n ;\n if (this.props.alt) {\n if (l) {\n k.props.alt = this.props.alt;\n }\n else k.props.children = g.DOM.u(null, this.props.alt);\n \n };\n return this.transferPropsTo(k);\n }\n });\n e.exports = j;\n});\n__d(\"LeftRight.react\", [\"React\",\"cx\",\"keyMirror\",\"throwIf\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"cx\"), i = b(\"keyMirror\"), j = b(\"throwIf\"), k = i({\n left: true,\n right: true,\n both: true\n });\n function l(n) {\n j(((!n.children || (n.children.length < 1)) || (n.children.length > 2)), \"LeftRight component must have one or two children.\");\n };\n var m = g.createClass({\n displayName: \"LeftRight\",\n render: function() {\n l(this.props);\n var n = (this.props.direction || k.both), o = ((n === k.both)), p = g.DOM.div({\n key: \"left\",\n className: (((o || (n === k.left)) ? \"lfloat\" : \"\"))\n }, this.props.children[0]), q = (((this.props.children.length < 2)) ? null : g.DOM.div({\n key: \"right\",\n className: (((o || (n === k.right)) ? \"rfloat\" : \"\"))\n }, this.props.children[1])), r = ((((n === k.right) && q)) ? [q,p,] : [p,q,]);\n return this.transferPropsTo(g.DOM.div({\n className: \"clearfix\"\n }, r));\n }\n });\n m.DIRECTION = k;\n e.exports = m;\n});\n__d(\"ImageBlock.react\", [\"LeftRight.react\",\"React\",\"cx\",\"joinClasses\",\"throwIf\",], function(a, b, c, d, e, f) {\n var g = b(\"LeftRight.react\"), h = b(\"React\"), i = b(\"cx\"), j = b(\"joinClasses\"), k = b(\"throwIf\");\n function l(p) {\n k(((!p.children || (p.children.length > 3)) || (p.children.length < 1)), \"ImageBlock requires two or three children.\");\n };\n function m(p) {\n return ((((((\"img\") + ((\" \" + \"-cx-PRIVATE-uiImageBlock__image\"))) + (((p === \"small\") ? (\" \" + \"-cx-PRIVATE-uiImageBlock__smallimage\") : \"\"))) + (((p === \"medium\") ? (\" \" + \"-cx-PRIVATE-uiImageBlock__mediumimage\") : \"\"))) + (((p === \"large\") ? (\" \" + \"-cx-PRIVATE-uiImageBlock__largeimage\") : \"\"))));\n };\n function n(p, q, r) {\n p.props.className = j(m(q), p.props.className, r);\n };\n var o = h.createClass({\n displayName: \"ImageBlock\",\n render: function() {\n l(this.props);\n var p = this.props.children[0], q = this.props.children[1], r = this.props.children[2], s = (this.props.spacing || \"small\");\n n(p, s, this.props.imageClassName);\n var t = j(this.props.contentClassName, (((\"-cx-PRIVATE-uiFlexibleBlock__flexiblecontent\") + (((s === \"small\") ? (\" \" + \"-cx-PRIVATE-uiImageBlock__smallcontent\") : \"\")))));\n if ((p.tagName == \"IMG\")) {\n if ((p.props.alt === undefined)) {\n p.props.alt = \"\";\n };\n }\n else if (((((((p.tagName == \"A\") || (p.tagName == \"LINK\"))) && (p.props.tabIndex === undefined)) && (p.props.title === undefined)) && (p.props[\"aria-label\"] === undefined))) {\n p.props.tabIndex = \"-1\";\n p.props[\"aria-hidden\"] = \"true\";\n }\n \n ;\n var u;\n if (!r) {\n u = h.DOM.div({\n className: t\n }, q);\n }\n else u = g({\n className: t,\n direction: g.DIRECTION.right\n }, q, r);\n ;\n return this.transferPropsTo(g({\n direction: g.DIRECTION.left\n }, p, u));\n }\n });\n e.exports = o;\n});\n__d(\"UntrustedLink\", [\"DOM\",\"Event\",\"URI\",\"UserAgent\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"Event\"), i = b(\"URI\"), j = b(\"UserAgent\"), k = b(\"copyProperties\");\n function l(m, n, o, p) {\n this.dom = m;\n this.url = m.href;\n this.hash = n;\n this.func_get_params = (p || function() {\n return {\n };\n });\n h.listen(this.dom, \"click\", this.onclick.bind(this));\n h.listen(this.dom, \"mousedown\", this.onmousedown.bind(this));\n h.listen(this.dom, \"mouseup\", this.onmouseup.bind(this));\n h.listen(this.dom, \"mouseout\", this.onmouseout.bind(this));\n this.onmousedown(h.$E(o));\n };\n l.bootstrap = function(m, n, o, p) {\n if (m.__untrusted) {\n return\n };\n m.__untrusted = true;\n new l(m, n, o, p);\n };\n l.prototype.getRewrittenURI = function() {\n var m = k({\n u: this.url,\n h: this.hash\n }, this.func_get_params(this.dom)), n = new i(\"/l.php\");\n return n.setQueryData(m).setSubdomain(\"www\").setProtocol(\"http\");\n };\n l.prototype.onclick = function() {\n (function() {\n this.setHref(this.url);\n }).bind(this).defer(100);\n this.setHref(this.getRewrittenURI());\n };\n l.prototype.onmousedown = function(m) {\n if ((m.button == 2)) {\n this.setHref(this.getRewrittenURI());\n };\n };\n l.prototype.onmouseup = function() {\n this.setHref(this.getRewrittenURI());\n };\n l.prototype.onmouseout = function() {\n this.setHref(this.url);\n };\n l.prototype.setHref = function(m) {\n if ((j.ie() < 9)) {\n var n = g.create(\"span\");\n g.appendContent(this.dom, n);\n this.dom.href = m;\n g.remove(n);\n }\n else this.dom.href = m;\n ;\n };\n e.exports = l;\n});\n__d(\"Link.react\", [\"React\",\"UntrustedLink\",\"mergeInto\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"UntrustedLink\"), i = b(\"mergeInto\"), j = g.createClass({\n displayName: \"Link\",\n _installLinkshimOnMouseDown: function(event) {\n var k = this.props.href;\n if (k.shimhash) {\n h.bootstrap(this.getDOMNode(), k.shimhash);\n };\n (this.props.onMouseDown && this.props.onMouseDown(event));\n },\n render: function() {\n var k = this.props.href, l = g.DOM.a(null);\n i(l.props, this.props);\n if (k) {\n l.props.href = k.url;\n var m = !!k.shimhash;\n if (m) {\n l.props.rel = (l.props.rel ? ((l.props.rel + \" nofollow\")) : \"nofollow\");\n l.props.onMouseDown = this._installLinkshimOnMouseDown;\n }\n ;\n }\n else l.props.href = \"#\";\n ;\n return l;\n }\n });\n e.exports = j;\n});\n__d(\"LoadingIndicator.react\", [\"React\",\"joinClasses\",\"keyMirror\",\"merge\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"joinClasses\"), i = b(\"keyMirror\"), j = b(\"merge\"), k = i({\n white: true,\n blue: true,\n black: true\n }), l = i({\n small: true,\n medium: true,\n large: true\n }), m = {\n white: {\n large: \"/images/loaders/indicator_blue_large.gif\",\n medium: \"/images/loaders/indicator_blue_medium.gif\",\n small: \"/images/loaders/indicator_blue_small.gif\"\n },\n blue: {\n large: \"/images/loaders/indicator_white_large.gif\",\n small: \"/images/loaders/indicator_white_small.gif\"\n },\n black: {\n large: \"/images/loaders/indicator_black.gif\"\n }\n }, n = g.createClass({\n displayName: \"LoadingIndicator\",\n render: function() {\n var o = this.props.color, p = this.props.size;\n if (!m[o]) {\n return g.DOM.span(null)\n };\n if (!m[o][p]) {\n return g.DOM.span(null)\n };\n var q = ((this.props.showonasync ? \"uiLoadingIndicatorAsync\" : \"\"));\n if (this.props.className) {\n q = h(this.props.className, q);\n };\n var r = m[o][p], s = g.DOM.img({\n src: r,\n className: q\n });\n s.props = j(this.props, s.props);\n return s;\n }\n });\n n.SIZES = l;\n n.COLORS = k;\n e.exports = n;\n});\n__d(\"ProfileBrowserLink\", [\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"URI\"), h = \"/ajax/browser/dialog/\", i = \"/browse/\", j = function(l, m, n) {\n return new g((l + m)).setQueryData(n);\n }, k = {\n constructPageURI: function(l, m) {\n return j(i, l, m);\n },\n constructDialogURI: function(l, m) {\n return j(h, l, m);\n }\n };\n e.exports = k;\n});\n__d(\"ProfileBrowserTypes\", [], function(a, b, c, d, e, f) {\n var g = {\n LIKES: \"likes\",\n GROUP_MESSAGE_VIEWERS: \"group_message_viewers\",\n MUTUAL_FRIENDS: \"mutual_friends\"\n };\n e.exports = g;\n});\n__d(\"TransformTextToDOMMixin\", [\"DOMQuery\",\"createArrayFrom\",\"flattenArray\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMQuery\"), h = b(\"createArrayFrom\"), i = b(\"flattenArray\"), j = 3, k = {\n transform: function(l, m) {\n return i(l.map(function(n) {\n if (!g.isElementNode(n)) {\n var o = n, p = [], q = (this.MAX_ITEMS || j);\n while (q--) {\n var r = (m ? [o,].concat(m) : [o,]), s = this.match.apply(this, r);\n if (!s) {\n break;\n };\n p.push(o.substring(0, s.startIndex));\n p.push(s.element);\n o = o.substring(s.endIndex);\n };\n (o && p.push(o));\n return p;\n }\n ;\n return n;\n }.bind(this)));\n },\n params: function() {\n var l = this;\n return {\n __params: true,\n obj: l,\n params: h(arguments)\n };\n }\n };\n e.exports = k;\n});\n__d(\"SupportedEmoji\", [\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"cx\");\n e.exports = {\n utf16Regex: /[\\u203C\\u2049\\u2100-\\u21FF\\u2300-\\u27FF\\u2900-\\u29FF\\u2B00-\\u2BFF\\u3000-\\u30FF\\u3200-\\u32FF]|\\uD83C[\\uDC00-\\uDFFF]|\\uD83D[\\uDC00-\\uDEFF]/,\n emoji: {\n 127744: \"-cx-PRIVATE-fbEmoji__icon_1f300\",\n 127746: \"-cx-PRIVATE-fbEmoji__icon_1f302\",\n 127754: \"-cx-PRIVATE-fbEmoji__icon_1f30a\",\n 127769: \"-cx-PRIVATE-fbEmoji__icon_1f319\",\n 127775: \"-cx-PRIVATE-fbEmoji__icon_1f31f\",\n 127793: \"-cx-PRIVATE-fbEmoji__icon_1f331\",\n 127796: \"-cx-PRIVATE-fbEmoji__icon_1f334\",\n 127797: \"-cx-PRIVATE-fbEmoji__icon_1f335\",\n 127799: \"-cx-PRIVATE-fbEmoji__icon_1f337\",\n 127800: \"-cx-PRIVATE-fbEmoji__icon_1f338\",\n 127801: \"-cx-PRIVATE-fbEmoji__icon_1f339\",\n 127802: \"-cx-PRIVATE-fbEmoji__icon_1f33a\",\n 127803: \"-cx-PRIVATE-fbEmoji__icon_1f33b\",\n 127806: \"-cx-PRIVATE-fbEmoji__icon_1f33e\",\n 127808: \"-cx-PRIVATE-fbEmoji__icon_1f340\",\n 127809: \"-cx-PRIVATE-fbEmoji__icon_1f341\",\n 127810: \"-cx-PRIVATE-fbEmoji__icon_1f342\",\n 127811: \"-cx-PRIVATE-fbEmoji__icon_1f343\",\n 127818: \"-cx-PRIVATE-fbEmoji__icon_1f34a\",\n 127822: \"-cx-PRIVATE-fbEmoji__icon_1f34e\",\n 127827: \"-cx-PRIVATE-fbEmoji__icon_1f353\",\n 127828: \"-cx-PRIVATE-fbEmoji__icon_1f354\",\n 127864: \"-cx-PRIVATE-fbEmoji__icon_1f378\",\n 127866: \"-cx-PRIVATE-fbEmoji__icon_1f37a\",\n 127873: \"-cx-PRIVATE-fbEmoji__icon_1f381\",\n 127875: \"-cx-PRIVATE-fbEmoji__icon_1f383\",\n 127876: \"-cx-PRIVATE-fbEmoji__icon_1f384\",\n 127877: \"-cx-PRIVATE-fbEmoji__icon_1f385\",\n 127880: \"-cx-PRIVATE-fbEmoji__icon_1f388\",\n 127881: \"-cx-PRIVATE-fbEmoji__icon_1f389\",\n 127885: \"-cx-PRIVATE-fbEmoji__icon_1f38d\",\n 127886: \"-cx-PRIVATE-fbEmoji__icon_1f38e\",\n 127887: \"-cx-PRIVATE-fbEmoji__icon_1f38f\",\n 127888: \"-cx-PRIVATE-fbEmoji__icon_1f390\",\n 127891: \"-cx-PRIVATE-fbEmoji__icon_1f393\",\n 127925: \"-cx-PRIVATE-fbEmoji__icon_1f3b5\",\n 127926: \"-cx-PRIVATE-fbEmoji__icon_1f3b6\",\n 127932: \"-cx-PRIVATE-fbEmoji__icon_1f3bc\",\n 128013: \"-cx-PRIVATE-fbEmoji__icon_1f40d\",\n 128014: \"-cx-PRIVATE-fbEmoji__icon_1f40e\",\n 128017: \"-cx-PRIVATE-fbEmoji__icon_1f411\",\n 128018: \"-cx-PRIVATE-fbEmoji__icon_1f412\",\n 128020: \"-cx-PRIVATE-fbEmoji__icon_1f414\",\n 128023: \"-cx-PRIVATE-fbEmoji__icon_1f417\",\n 128024: \"-cx-PRIVATE-fbEmoji__icon_1f418\",\n 128025: \"-cx-PRIVATE-fbEmoji__icon_1f419\",\n 128026: \"-cx-PRIVATE-fbEmoji__icon_1f41a\",\n 128027: \"-cx-PRIVATE-fbEmoji__icon_1f41b\",\n 128031: \"-cx-PRIVATE-fbEmoji__icon_1f41f\",\n 128032: \"-cx-PRIVATE-fbEmoji__icon_1f420\",\n 128033: \"-cx-PRIVATE-fbEmoji__icon_1f421\",\n 128037: \"-cx-PRIVATE-fbEmoji__icon_1f425\",\n 128038: \"-cx-PRIVATE-fbEmoji__icon_1f426\",\n 128039: \"-cx-PRIVATE-fbEmoji__icon_1f427\",\n 128040: \"-cx-PRIVATE-fbEmoji__icon_1f428\",\n 128041: \"-cx-PRIVATE-fbEmoji__icon_1f429\",\n 128043: \"-cx-PRIVATE-fbEmoji__icon_1f42b\",\n 128044: \"-cx-PRIVATE-fbEmoji__icon_1f42c\",\n 128045: \"-cx-PRIVATE-fbEmoji__icon_1f42d\",\n 128046: \"-cx-PRIVATE-fbEmoji__icon_1f42e\",\n 128047: \"-cx-PRIVATE-fbEmoji__icon_1f42f\",\n 128048: \"-cx-PRIVATE-fbEmoji__icon_1f430\",\n 128049: \"-cx-PRIVATE-fbEmoji__icon_1f431\",\n 128051: \"-cx-PRIVATE-fbEmoji__icon_1f433\",\n 128052: \"-cx-PRIVATE-fbEmoji__icon_1f434\",\n 128053: \"-cx-PRIVATE-fbEmoji__icon_1f435\",\n 128054: \"-cx-PRIVATE-fbEmoji__icon_1f436\",\n 128055: \"-cx-PRIVATE-fbEmoji__icon_1f437\",\n 128056: \"-cx-PRIVATE-fbEmoji__icon_1f438\",\n 128057: \"-cx-PRIVATE-fbEmoji__icon_1f439\",\n 128058: \"-cx-PRIVATE-fbEmoji__icon_1f43a\",\n 128059: \"-cx-PRIVATE-fbEmoji__icon_1f43b\",\n 128062: \"-cx-PRIVATE-fbEmoji__icon_1f43e\",\n 128064: \"-cx-PRIVATE-fbEmoji__icon_1f440\",\n 128066: \"-cx-PRIVATE-fbEmoji__icon_1f442\",\n 128067: \"-cx-PRIVATE-fbEmoji__icon_1f443\",\n 128068: \"-cx-PRIVATE-fbEmoji__icon_1f444\",\n 128069: \"-cx-PRIVATE-fbEmoji__icon_1f445\",\n 128070: \"-cx-PRIVATE-fbEmoji__icon_1f446\",\n 128071: \"-cx-PRIVATE-fbEmoji__icon_1f447\",\n 128072: \"-cx-PRIVATE-fbEmoji__icon_1f448\",\n 128073: \"-cx-PRIVATE-fbEmoji__icon_1f449\",\n 128074: \"-cx-PRIVATE-fbEmoji__icon_1f44a\",\n 128075: \"-cx-PRIVATE-fbEmoji__icon_1f44b\",\n 128076: \"-cx-PRIVATE-fbEmoji__icon_1f44c\",\n 128077: \"-cx-PRIVATE-fbEmoji__icon_1f44d\",\n 128078: \"-cx-PRIVATE-fbEmoji__icon_1f44e\",\n 128079: \"-cx-PRIVATE-fbEmoji__icon_1f44f\",\n 128080: \"-cx-PRIVATE-fbEmoji__icon_1f450\",\n 128102: \"-cx-PRIVATE-fbEmoji__icon_1f466\",\n 128103: \"-cx-PRIVATE-fbEmoji__icon_1f467\",\n 128104: \"-cx-PRIVATE-fbEmoji__icon_1f468\",\n 128105: \"-cx-PRIVATE-fbEmoji__icon_1f469\",\n 128107: \"-cx-PRIVATE-fbEmoji__icon_1f46b\",\n 128110: \"-cx-PRIVATE-fbEmoji__icon_1f46e\",\n 128111: \"-cx-PRIVATE-fbEmoji__icon_1f46f\",\n 128113: \"-cx-PRIVATE-fbEmoji__icon_1f471\",\n 128114: \"-cx-PRIVATE-fbEmoji__icon_1f472\",\n 128115: \"-cx-PRIVATE-fbEmoji__icon_1f473\",\n 128116: \"-cx-PRIVATE-fbEmoji__icon_1f474\",\n 128117: \"-cx-PRIVATE-fbEmoji__icon_1f475\",\n 128118: \"-cx-PRIVATE-fbEmoji__icon_1f476\",\n 128119: \"-cx-PRIVATE-fbEmoji__icon_1f477\",\n 128120: \"-cx-PRIVATE-fbEmoji__icon_1f478\",\n 128123: \"-cx-PRIVATE-fbEmoji__icon_1f47b\",\n 128124: \"-cx-PRIVATE-fbEmoji__icon_1f47c\",\n 128125: \"-cx-PRIVATE-fbEmoji__icon_1f47d\",\n 128126: \"-cx-PRIVATE-fbEmoji__icon_1f47e\",\n 128127: \"-cx-PRIVATE-fbEmoji__icon_1f47f\",\n 128128: \"-cx-PRIVATE-fbEmoji__icon_1f480\",\n 128130: \"-cx-PRIVATE-fbEmoji__icon_1f482\",\n 128131: \"-cx-PRIVATE-fbEmoji__icon_1f483\",\n 128133: \"-cx-PRIVATE-fbEmoji__icon_1f485\",\n 128139: \"-cx-PRIVATE-fbEmoji__icon_1f48b\",\n 128143: \"-cx-PRIVATE-fbEmoji__icon_1f48f\",\n 128144: \"-cx-PRIVATE-fbEmoji__icon_1f490\",\n 128145: \"-cx-PRIVATE-fbEmoji__icon_1f491\",\n 128147: \"-cx-PRIVATE-fbEmoji__icon_1f493\",\n 128148: \"-cx-PRIVATE-fbEmoji__icon_1f494\",\n 128150: \"-cx-PRIVATE-fbEmoji__icon_1f496\",\n 128151: \"-cx-PRIVATE-fbEmoji__icon_1f497\",\n 128152: \"-cx-PRIVATE-fbEmoji__icon_1f498\",\n 128153: \"-cx-PRIVATE-fbEmoji__icon_1f499\",\n 128154: \"-cx-PRIVATE-fbEmoji__icon_1f49a\",\n 128155: \"-cx-PRIVATE-fbEmoji__icon_1f49b\",\n 128156: \"-cx-PRIVATE-fbEmoji__icon_1f49c\",\n 128157: \"-cx-PRIVATE-fbEmoji__icon_1f49d\",\n 128162: \"-cx-PRIVATE-fbEmoji__icon_1f4a2\",\n 128164: \"-cx-PRIVATE-fbEmoji__icon_1f4a4\",\n 128166: \"-cx-PRIVATE-fbEmoji__icon_1f4a6\",\n 128168: \"-cx-PRIVATE-fbEmoji__icon_1f4a8\",\n 128169: \"-cx-PRIVATE-fbEmoji__icon_1f4a9\",\n 128170: \"-cx-PRIVATE-fbEmoji__icon_1f4aa\",\n 128187: \"-cx-PRIVATE-fbEmoji__icon_1f4bb\",\n 128189: \"-cx-PRIVATE-fbEmoji__icon_1f4bd\",\n 128190: \"-cx-PRIVATE-fbEmoji__icon_1f4be\",\n 128191: \"-cx-PRIVATE-fbEmoji__icon_1f4bf\",\n 128192: \"-cx-PRIVATE-fbEmoji__icon_1f4c0\",\n 128222: \"-cx-PRIVATE-fbEmoji__icon_1f4de\",\n 128224: \"-cx-PRIVATE-fbEmoji__icon_1f4e0\",\n 128241: \"-cx-PRIVATE-fbEmoji__icon_1f4f1\",\n 128242: \"-cx-PRIVATE-fbEmoji__icon_1f4f2\",\n 128250: \"-cx-PRIVATE-fbEmoji__icon_1f4fa\",\n 128276: \"-cx-PRIVATE-fbEmoji__icon_1f514\",\n 128293: \"-cx-PRIVATE-fbEmoji__icon_1f525\",\n 128513: \"-cx-PRIVATE-fbEmoji__icon_1f601\",\n 128514: \"-cx-PRIVATE-fbEmoji__icon_1f602\",\n 128515: \"-cx-PRIVATE-fbEmoji__icon_1f603\",\n 128516: \"-cx-PRIVATE-fbEmoji__icon_1f604\",\n 128518: \"-cx-PRIVATE-fbEmoji__icon_1f606\",\n 128521: \"-cx-PRIVATE-fbEmoji__icon_1f609\",\n 128523: \"-cx-PRIVATE-fbEmoji__icon_1f60b\",\n 128524: \"-cx-PRIVATE-fbEmoji__icon_1f60c\",\n 128525: \"-cx-PRIVATE-fbEmoji__icon_1f60d\",\n 128527: \"-cx-PRIVATE-fbEmoji__icon_1f60f\",\n 128530: \"-cx-PRIVATE-fbEmoji__icon_1f612\",\n 128531: \"-cx-PRIVATE-fbEmoji__icon_1f613\",\n 128532: \"-cx-PRIVATE-fbEmoji__icon_1f614\",\n 128534: \"-cx-PRIVATE-fbEmoji__icon_1f616\",\n 128536: \"-cx-PRIVATE-fbEmoji__icon_1f618\",\n 128538: \"-cx-PRIVATE-fbEmoji__icon_1f61a\",\n 128540: \"-cx-PRIVATE-fbEmoji__icon_1f61c\",\n 128541: \"-cx-PRIVATE-fbEmoji__icon_1f61d\",\n 128542: \"-cx-PRIVATE-fbEmoji__icon_1f61e\",\n 128544: \"-cx-PRIVATE-fbEmoji__icon_1f620\",\n 128545: \"-cx-PRIVATE-fbEmoji__icon_1f621\",\n 128546: \"-cx-PRIVATE-fbEmoji__icon_1f622\",\n 128547: \"-cx-PRIVATE-fbEmoji__icon_1f623\",\n 128548: \"-cx-PRIVATE-fbEmoji__icon_1f624\",\n 128549: \"-cx-PRIVATE-fbEmoji__icon_1f625\",\n 128552: \"-cx-PRIVATE-fbEmoji__icon_1f628\",\n 128553: \"-cx-PRIVATE-fbEmoji__icon_1f629\",\n 128554: \"-cx-PRIVATE-fbEmoji__icon_1f62a\",\n 128555: \"-cx-PRIVATE-fbEmoji__icon_1f62b\",\n 128557: \"-cx-PRIVATE-fbEmoji__icon_1f62d\",\n 128560: \"-cx-PRIVATE-fbEmoji__icon_1f630\",\n 128561: \"-cx-PRIVATE-fbEmoji__icon_1f631\",\n 128562: \"-cx-PRIVATE-fbEmoji__icon_1f632\",\n 128563: \"-cx-PRIVATE-fbEmoji__icon_1f633\",\n 128565: \"-cx-PRIVATE-fbEmoji__icon_1f635\",\n 128567: \"-cx-PRIVATE-fbEmoji__icon_1f637\",\n 128568: \"-cx-PRIVATE-fbEmoji__icon_1f638\",\n 128569: \"-cx-PRIVATE-fbEmoji__icon_1f639\",\n 128570: \"-cx-PRIVATE-fbEmoji__icon_1f63a\",\n 128571: \"-cx-PRIVATE-fbEmoji__icon_1f63b\",\n 128572: \"-cx-PRIVATE-fbEmoji__icon_1f63c\",\n 128573: \"-cx-PRIVATE-fbEmoji__icon_1f63d\",\n 128575: \"-cx-PRIVATE-fbEmoji__icon_1f63f\",\n 128576: \"-cx-PRIVATE-fbEmoji__icon_1f640\",\n 128587: \"-cx-PRIVATE-fbEmoji__icon_1f64b\",\n 128588: \"-cx-PRIVATE-fbEmoji__icon_1f64c\",\n 128589: \"-cx-PRIVATE-fbEmoji__icon_1f64d\",\n 128591: \"-cx-PRIVATE-fbEmoji__icon_1f64f\",\n 9757: \"-cx-PRIVATE-fbEmoji__icon_261d\",\n 9786: \"-cx-PRIVATE-fbEmoji__icon_263a\",\n 9889: \"-cx-PRIVATE-fbEmoji__icon_26a1\",\n 9924: \"-cx-PRIVATE-fbEmoji__icon_26c4\",\n 9994: \"-cx-PRIVATE-fbEmoji__icon_270a\",\n 9995: \"-cx-PRIVATE-fbEmoji__icon_270b\",\n 9996: \"-cx-PRIVATE-fbEmoji__icon_270c\",\n 9728: \"-cx-PRIVATE-fbEmoji__icon_2600\",\n 9729: \"-cx-PRIVATE-fbEmoji__icon_2601\",\n 9748: \"-cx-PRIVATE-fbEmoji__icon_2614\",\n 9749: \"-cx-PRIVATE-fbEmoji__icon_2615\",\n 10024: \"-cx-PRIVATE-fbEmoji__icon_2728\",\n 10084: \"-cx-PRIVATE-fbEmoji__icon_2764\"\n }\n };\n});\n__d(\"Utf16\", [], function(a, b, c, d, e, f) {\n var g = {\n decode: function(h) {\n switch (h.length) {\n case 1:\n return h.charCodeAt(0);\n case 2:\n return ((65536 | ((((h.charCodeAt(0) - 55296)) * 1024))) | ((h.charCodeAt(1) - 56320)));\n };\n },\n encode: function(h) {\n if ((h < 65536)) {\n return String.fromCharCode(h);\n }\n else return (String.fromCharCode((55296 + ((((h - 65536)) >> 10)))) + String.fromCharCode((56320 + ((h % 1024)))))\n ;\n }\n };\n e.exports = g;\n});\n__d(\"DOMEmoji\", [\"CSS\",\"JSXDOM\",\"TransformTextToDOMMixin\",\"SupportedEmoji\",\"Utf16\",\"copyProperties\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"CSS\"), h = b(\"JSXDOM\"), i = b(\"TransformTextToDOMMixin\"), j = b(\"SupportedEmoji\"), k = b(\"Utf16\"), l = b(\"copyProperties\"), m = b(\"cx\"), n = {\n MAX_ITEMS: 40,\n match: function(o) {\n var p = j.utf16Regex.exec(o);\n if ((!p || !p.length)) {\n return false\n };\n var q = p[0], r = p.index, s = k.decode(q), t = j.emoji[s];\n if (!t) {\n return false\n };\n return {\n startIndex: r,\n endIndex: (r + q.length),\n element: this._element(t)\n };\n },\n _element: function(o) {\n var p = h.span(null);\n g.addClass(p, \"-cx-PRIVATE-fbEmoji__icon\");\n g.addClass(p, \"-cx-PRIVATE-fbEmoji__size_16\");\n g.addClass(p, o);\n return p;\n }\n };\n e.exports = l(n, i);\n});\n__d(\"EmoticonsList\", [], function(a, b, c, d, e, f) {\n e.exports = {\n emotes: {\n \":)\": \"smile\",\n \":-)\": \"smile\",\n \":]\": \"smile\",\n \"=)\": \"smile\",\n \":(\": \"frown\",\n \":-(\": \"frown\",\n \":[\": \"frown\",\n \"=(\": \"frown\",\n \":P\": \"tongue\",\n \":-P\": \"tongue\",\n \":-p\": \"tongue\",\n \":p\": \"tongue\",\n \"=P\": \"tongue\",\n \"=D\": \"grin\",\n \":-D\": \"grin\",\n \":D\": \"grin\",\n \":o\": \"gasp\",\n \":-O\": \"gasp\",\n \":O\": \"gasp\",\n \":-o\": \"gasp\",\n \";)\": \"wink\",\n \";-)\": \"wink\",\n \"8)\": \"glasses\",\n \"8-)\": \"glasses\",\n \"B)\": \"glasses\",\n \"B-)\": \"glasses\",\n \"B|\": \"sunglasses\",\n \"8-|\": \"sunglasses\",\n \"8|\": \"sunglasses\",\n \"B-|\": \"sunglasses\",\n \"\\u003E:(\": \"grumpy\",\n \"\\u003E:-(\": \"grumpy\",\n \":/\": \"unsure\",\n \":-/\": \"unsure\",\n \":\\\\\": \"unsure\",\n \":-\\\\\": \"unsure\",\n \"=/\": \"unsure\",\n \"=\\\\\": \"unsure\",\n \":'(\": \"cry\",\n \"3:)\": \"devil\",\n \"3:-)\": \"devil\",\n \"O:)\": \"angel\",\n \"O:-)\": \"angel\",\n \":*\": \"kiss\",\n \":-*\": \"kiss\",\n \"\\u003C3\": \"heart\",\n \"<3\": \"heart\",\n \"\\u2665\": \"heart\",\n \"^_^\": \"kiki\",\n \"-_-\": \"squint\",\n \"o.O\": \"confused\",\n \"O.o\": \"confused_rev\",\n \"\\u003E:o\": \"upset\",\n \"\\u003E:O\": \"upset\",\n \"\\u003E:-O\": \"upset\",\n \"\\u003E:-o\": \"upset\",\n \"\\u003E_\\u003C\": \"upset\",\n \"\\u003E.\\u003C\": \"upset\",\n \":v\": \"pacman\",\n \":|]\": \"robot\",\n \":3\": \"colonthree\",\n \"\\u003C(\\\")\": \"penguin\",\n \":putnam:\": \"putnam\",\n \"(^^^)\": \"shark\",\n \"(y)\": \"like\",\n \":like:\": \"like\",\n \"(Y)\": \"like\",\n \":poop:\": \"poop\"\n },\n symbols: {\n smile: \":)\",\n frown: \":(\",\n tongue: \":P\",\n grin: \"=D\",\n gasp: \":o\",\n wink: \";)\",\n glasses: \"8)\",\n sunglasses: \"B|\",\n grumpy: \"\\u003E:(\",\n unsure: \":/\",\n cry: \":'(\",\n devil: \"3:)\",\n angel: \"O:)\",\n kiss: \":*\",\n heart: \"\\u003C3\",\n kiki: \"^_^\",\n squint: \"-_-\",\n confused: \"o.O\",\n confused_rev: \"O.o\",\n upset: \"\\u003E:o\",\n pacman: \":v\",\n robot: \":|]\",\n colonthree: \":3\",\n penguin: \"\\u003C(\\\")\",\n putnam: \":putnam:\",\n shark: \"(^^^)\",\n like: \"(y)\",\n poop: \":poop:\"\n },\n regexp: /(^|[\\s'\".])(:\\)|:\\-\\)|:\\]|=\\)|:\\(|:\\-\\(|:\\[|=\\(|:P|:\\-P|:\\-p|:p|=P|=D|:\\-D|:D|:o|:\\-O|:O|:\\-o|;\\)|;\\-\\)|8\\)|8\\-\\)|B\\)|B\\-\\)|B\\||8\\-\\||8\\||B\\-\\||>:\\(|>:\\-\\(|:\\/|:\\-\\/|:\\\\|:\\-\\\\|=\\/|=\\\\|:'\\(|3:\\)|3:\\-\\)|O:\\)|O:\\-\\)|:\\*|:\\-\\*|<3|<3|\\u2665|\\^_\\^|\\-_\\-|o\\.O|O\\.o|>:o|>:O|>:\\-O|>:\\-o|>_<|>\\.<|:v|:\\|\\]|:3|<\\(\"\\)|:putnam:|\\(\\^\\^\\^\\)|\\(y\\)|:like:|\\(Y\\)|:poop:)([\\s'\".,!?]|<br>|$)/\n };\n});\n__d(\"DOMEmote\", [\"CSS\",\"EmoticonsList\",\"JSXDOM\",\"TransformTextToDOMMixin\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"CSS\"), h = b(\"EmoticonsList\"), i = b(\"JSXDOM\"), j = b(\"TransformTextToDOMMixin\"), k = b(\"copyProperties\"), l = {\n MAX_ITEMS: 40,\n match: function(m) {\n var n = h.regexp.exec(m);\n if ((!n || !n.length)) {\n return false\n };\n var o = n[2], p = (n.index + n[1].length);\n return {\n startIndex: p,\n endIndex: (p + o.length),\n element: this._element(o, h.emotes[o])\n };\n },\n _element: function(m, n) {\n var o = i.span({\n className: \"emoticon_text\",\n \"aria-hidden\": \"true\"\n }, m), p = i.span({\n title: m,\n className: \"emoticon\"\n });\n g.addClass(p, (\"emoticon_\" + n));\n return [o,p,];\n }\n };\n e.exports = k(l, j);\n});\n__d(\"FBIDEmote\", [\"JSXDOM\",\"TransformTextToDOMMixin\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"JSXDOM\"), h = b(\"TransformTextToDOMMixin\"), i = b(\"copyProperties\"), j = /\\[\\[([a-z\\d\\.]+)\\]\\]/i, k = {\n MAX_ITEMS: 40,\n match: function(l) {\n var m = j.exec(l);\n if ((!m || !m.length)) {\n return false\n };\n var n = m[0], o = m[1];\n return {\n startIndex: m.index,\n endIndex: (m.index + n.length),\n element: this._element(n, o)\n };\n },\n _element: function(l, m) {\n var n = g.span({\n className: \"emoticon_text\",\n \"aria-hidden\": \"true\"\n }, l), o = g.img({\n alt: l,\n className: \"emoticon emoticon_custom\",\n src: (((window.location.protocol + \"//graph.facebook.com/\") + encodeURIComponent(m)) + \"/picture\")\n });\n return [n,o,];\n }\n };\n e.exports = i(k, h);\n});\n__d(\"transformTextToDOM\", [\"createArrayFrom\",], function(a, b, c, d, e, f) {\n var g = b(\"createArrayFrom\");\n function h(i, j) {\n var k = [i,];\n j = g(j);\n j.forEach(function(l) {\n var m, n = l;\n if (l.__params) {\n m = l.params;\n n = l.obj;\n }\n ;\n k = n.transform(k, m);\n });\n return k;\n };\n e.exports = h;\n});\n__d(\"emojiAndEmote\", [\"DOMEmoji\",\"DOMEmote\",\"FBIDEmote\",\"transformTextToDOM\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMEmoji\"), h = b(\"DOMEmote\"), i = b(\"FBIDEmote\"), j = b(\"transformTextToDOM\"), k = function(l, m) {\n var n = [g,h,i,];\n if ((m === false)) {\n n.pop();\n };\n return j(l, n);\n };\n e.exports = k;\n});\n__d(\"Emoji\", [\"DOMEmoji\",\"JSXDOM\",\"emojiAndEmote\",\"transformTextToDOM\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMEmoji\"), h = b(\"JSXDOM\"), i = b(\"emojiAndEmote\"), j = b(\"transformTextToDOM\"), k = {\n htmlEmojiAndEmote: function(l, m) {\n return (h.span(null, i(l))).innerHTML;\n },\n htmlEmojiAndEmoteWithoutFBID: function(l, m) {\n return (h.span(null, i(l, false))).innerHTML;\n },\n htmlEmoji: function(l) {\n return (h.span(null, j(l, g))).innerHTML;\n }\n };\n e.exports = k;\n});\n__d(\"Emote\", [\"DOMEmote\",\"FBIDEmote\",\"JSXDOM\",\"transformTextToDOM\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMEmote\"), h = b(\"FBIDEmote\"), i = b(\"JSXDOM\"), j = b(\"transformTextToDOM\"), k = {\n htmlEmoteWithoutFBID: function(l, m) {\n return (i.span(null, j(l, g))).innerHTML;\n },\n htmlEmote: function(l, m) {\n return (i.span(null, j(l, [g,h,]))).innerHTML;\n }\n };\n e.exports = k;\n});\n__d(\"TextWithEmoticons.react\", [\"Emoji\",\"Emote\",\"React\",], function(a, b, c, d, e, f) {\n var g = b(\"Emoji\"), h = b(\"Emote\"), i = b(\"React\"), j = i.createClass({\n displayName: \"ReactTextWithEmoticons\",\n render: function() {\n if ((!this.props.renderEmoticons && !this.props.renderEmoji)) {\n return i.DOM.span(null, this.props.text)\n };\n var k;\n if ((this.props.renderEmoticons && this.props.renderEmoji)) {\n k = g.htmlEmojiAndEmoteWithoutFBID(this.props.text);\n }\n else if (this.props.renderEmoticons) {\n k = h.htmlEmoteWithoutFBID(this.props.text);\n }\n else k = g.htmlEmoji(this.props.text);\n \n ;\n return i.DOM.span({\n dangerouslySetInnerHTML: {\n __html: k\n }\n });\n }\n });\n e.exports = j;\n});\n__d(\"TextWithEntities.react\", [\"Link.react\",\"React\",\"TextWithEmoticons.react\",], function(a, b, c, d, e, f) {\n var g = b(\"Link.react\"), h = b(\"React\"), i = b(\"TextWithEmoticons.react\");\n function j(o) {\n return (o).replace(/<3\\b|♥/g, \"\\u2665\");\n };\n function k(o, p) {\n return (g({\n href: p.entities[0]\n }, o));\n };\n function l(o, p) {\n return (o.offset - p.offset);\n };\n var m = /(\\r\\n|[\\r\\n])/, n = h.createClass({\n displayName: \"ReactTextWithEntities\",\n _formatStandardText: function(o) {\n var p = o.split(m), q = [];\n for (var r = 0; (r < p.length); r++) {\n var s = p[r];\n if (s) {\n if (m.test(s)) {\n q.push(h.DOM.br(null));\n }\n else if ((this.props.renderEmoticons || this.props.renderEmoji)) {\n q.push(i({\n text: s,\n renderEmoticons: this.props.renderEmoticons,\n renderEmoji: this.props.renderEmoji\n }));\n }\n else q.push(j(s));\n \n \n };\n };\n return q;\n },\n render: function() {\n var o = 0, p = this.props.ranges, q = this.props.aggregatedRanges, r = this.props.text, s = null;\n if (p) {\n s = (q ? p.concat(q) : p.slice());\n }\n else if (q) {\n s = q.slice();\n }\n ;\n if (s) {\n s.sort(l);\n };\n var t = [], u = (s ? s.length : 0);\n for (var v = 0, w = u; (v < w); v++) {\n var x = s[v];\n if ((x.offset < o)) {\n continue;\n };\n if ((x.offset > o)) {\n t = t.concat(this._formatStandardText(r.substring(o, x.offset)));\n };\n var y = r.substr(x.offset, x.length);\n t = t.concat([(this.props.interpolator ? this.props.interpolator(y, x) : k(y, x)),]);\n o = (x.offset + x.length);\n };\n if ((r.length > o)) {\n t = t.concat(this._formatStandardText(r.substr(o)));\n };\n return h.DOM.span(null, t);\n }\n });\n e.exports = n;\n});\n__d(\"fbt\", [\"copyProperties\",\"substituteTokens\",\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"substituteTokens\"), i = b(\"invariant\"), j = {\n INDEX: 0,\n SUBSTITUTION: 1\n }, k = function() {\n \n };\n k._ = function(l, m) {\n var n = {\n }, o = l;\n for (var p = 0; (p < m.length); p++) {\n var q = m[p][j.INDEX];\n if ((q !== null)) {\n i((q in o));\n o = o[q];\n }\n ;\n g(n, m[p][j.SUBSTITUTION]);\n };\n i((typeof o === \"string\"));\n return h(o, n);\n };\n k[\"enum\"] = function(l, m) {\n return [l,null,];\n };\n k.param = function(l, m) {\n var n = {\n };\n n[l] = m;\n return [null,n,];\n };\n e.exports = k;\n});\n__d(\"LiveTimer\", [\"CSS\",\"DOM\",\"UserAgent\",\"emptyFunction\",\"fbt\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"CSS\"), h = b(\"DOM\"), i = b(\"UserAgent\"), j = b(\"emptyFunction\"), k = b(\"fbt\"), l = b(\"tx\"), m = 1000, n = 60, o = 3600, p = 43200, q = 60, r = 20000, s = {\n restart: function(t) {\n this.serverTime = t;\n this.localStartTime = (Date.now() / 1000);\n this.updateTimeStamps();\n },\n getApproximateServerTime: function() {\n return (this.getServerTimeOffset() + Date.now());\n },\n getServerTimeOffset: function() {\n return (((this.serverTime - this.localStartTime)) * m);\n },\n updateTimeStamps: function() {\n s.timestamps = h.scry(document.body, \"abbr.livetimestamp\");\n s.startLoop(r);\n },\n addTimeStamps: function(t) {\n if (!t) {\n return\n };\n s.timestamps = (s.timestamps || []);\n if ((h.isNodeOfType(t, \"abbr\") && g.hasClass(t, \"livetimestamp\"))) {\n s.timestamps.push(t);\n }\n else {\n var u = h.scry(t, \"abbr.livetimestamp\");\n for (var v = 0; (v < u.length); ++v) {\n s.timestamps.push(u[v]);;\n };\n }\n ;\n s.startLoop(0);\n },\n startLoop: function(t) {\n this.stop();\n this.timeout = setTimeout(function() {\n s.loop();\n }, t);\n },\n stop: function() {\n clearTimeout(this.timeout);\n },\n updateNode: function(t, u) {\n s.updateNode = ((i.ie() < 7) ? j : h.setContent);\n s.updateNode(t, u);\n },\n loop: function(t) {\n if (t) {\n s.updateTimeStamps();\n };\n var u = Math.floor((s.getApproximateServerTime() / m)), v = -1;\n (s.timestamps && s.timestamps.forEach(function(x) {\n var y = x.getAttribute(\"data-utime\"), z = x.getAttribute(\"data-shorten\"), aa = s.renderRelativeTime(u, y, z);\n if (aa.text) {\n s.updateNode(x, aa.text);\n };\n if (((aa.next != -1) && (((aa.next < v) || (v == -1))))) {\n v = aa.next;\n };\n }));\n if ((v != -1)) {\n var w = Math.max(r, (v * m));\n s.timeout = setTimeout(function() {\n s.loop();\n }, w);\n }\n ;\n },\n renderRelativeTime: function(t, u, v) {\n var w = {\n text: \"\",\n next: -1\n };\n if (((t - u) > (p))) {\n return w\n };\n var x = (t - u), y = Math.floor((x / n)), z = Math.floor((y / q));\n if ((y < 1)) {\n if (v) {\n x = ((x > 1) ? x : 2);\n w.text = k._(\"{number} secs\", [k.param(\"number\", x),]);\n w.next = (20 - (x % 20));\n }\n else {\n w.text = \"a few seconds ago\";\n w.next = (n - (x % n));\n }\n ;\n return w;\n }\n ;\n if ((z < 1)) {\n if ((v && (y == 1))) {\n w.text = \"1 min\";\n }\n else if (v) {\n w.text = k._(\"{number} mins\", [k.param(\"number\", y),]);\n }\n else w.text = ((y == 1) ? \"about a minute ago\" : l._(\"{number} minutes ago\", {\n number: y\n }));\n \n ;\n w.next = (n - (x % n));\n return w;\n }\n ;\n if ((z < 11)) {\n w.next = (o - (x % o));\n };\n if ((v && (z == 1))) {\n w.text = \"1 hr\";\n }\n else if (v) {\n w.text = k._(\"{number} hrs\", [k.param(\"number\", z),]);\n }\n else w.text = ((z == 1) ? \"about an hour ago\" : l._(\"{number} hours ago\", {\n number: z\n }));\n \n ;\n return w;\n },\n renderRelativeTimeToServer: function(t) {\n return s.renderRelativeTime(Math.floor((s.getApproximateServerTime() / m)), t);\n }\n };\n e.exports = s;\n});\n__d(\"Timestamp.react\", [\"LiveTimer\",\"React\",], function(a, b, c, d, e, f) {\n var g = b(\"LiveTimer\"), h = b(\"React\"), i = h.createClass({\n displayName: \"Timestamp\",\n render: function() {\n var j = g.renderRelativeTimeToServer(this.props.time);\n return this.transferPropsTo(h.DOM.abbr({\n className: \"livetimestamp\",\n title: this.props.verbose,\n \"data-utime\": this.props.time\n }, (j.text || this.props.text)));\n }\n });\n e.exports = i;\n});\n__d(\"UFIClassNames\", [\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"cx\");\n e.exports = {\n ACTOR_IMAGE: \"img UFIActorImage -cx-PRIVATE-uiSquareImage__size32\",\n ROW: \"UFIRow\",\n UNSEEN_ITEM: \"UFIUnseenItem\"\n };\n});\n__d(\"UFIImageBlock.react\", [\"ImageBlock.react\",\"React\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"ImageBlock.react\"), h = b(\"React\"), i = b(\"cx\"), j = h.createClass({\n displayName: \"UFIImageBlock\",\n render: function() {\n return this.transferPropsTo(g({\n imageClassName: \"UFIImageBlockImage\",\n contentClassName: \"UFIImageBlockContent\"\n }, this.props.children));\n }\n });\n e.exports = j;\n});\n__d(\"debounceAcrossTransitions\", [\"debounce\",], function(a, b, c, d, e, f) {\n var g = b(\"debounce\");\n function h(i, j, k) {\n return g(i, j, k, true);\n };\n e.exports = h;\n});\n__d(\"MercuryServerDispatcher\", [\"AsyncRequest\",\"FBAjaxRequest\",\"Env\",\"JSLogger\",\"Run\",\"areObjectsEqual\",\"copyProperties\",\"debounceAcrossTransitions\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"FBAjaxRequest\"), i = b(\"Env\"), j = b(\"JSLogger\"), k = b(\"Run\"), l = b(\"areObjectsEqual\"), m = b(\"copyProperties\"), n = b(\"debounceAcrossTransitions\"), o = {\n }, p = j.create(\"mercury_dispatcher\"), q = false, r = {\n IMMEDIATE: \"immediate\",\n IDEMPOTENT: \"idempotent\",\n BATCH_SUCCESSIVE: \"batch-successive\",\n BATCH_SUCCESSIVE_UNIQUE: \"batch-successive-unique\",\n BATCH_SUCCESSIVE_PIGGYBACK_ON_ERROR: \"batch-successive-piggyback-retry\",\n BATCH_DEFERRED_MULTI: \"batch-deferred-multi\",\n BATCH_CONDITIONAL: \"batch-conditional\",\n registerEndpoints: function(v) {\n for (var w in v) {\n var x = v[w], y = (x.request_user_id || i.user);\n if (!o[w]) {\n o[w] = {\n };\n };\n if (!o[w][y]) {\n o[w][y] = {\n };\n };\n o[w][y] = new s(w, x);\n };\n },\n trySend: function(v, w, x, y) {\n y = (y || i.user);\n if (((v == \"/ajax/mercury/client_reliability.php\") && !o[v][y])) {\n o[v][y] = o[v][undefined];\n };\n o[v][y].trySend(w, x);\n }\n };\n function s(v, w) {\n var x = (w.mode || r.IMMEDIATE);\n switch (x) {\n case r.IMMEDIATE:\n \n case r.IDEMPOTENT:\n \n case r.BATCH_SUCCESSIVE:\n \n case r.BATCH_SUCCESSIVE_UNIQUE:\n \n case r.BATCH_SUCCESSIVE_PIGGYBACK_ON_ERROR:\n \n case r.BATCH_DEFERRED_MULTI:\n \n case r.BATCH_CONDITIONAL:\n break;\n default:\n throw new Error((\"Invalid MercuryServerDispatcher mode \" + x));\n };\n this._endpoint = v;\n this._mode = x;\n this._requestUserID = w.request_user_id;\n this._combineData = w.batch_function;\n this._combineDataIf = w.batch_if;\n this._batchSizeLimit = w.batch_size_limit;\n this._batches = [];\n this._handler = w.handler;\n this._errorHandler = w.error_handler;\n this._transportErrorHandler = (w.transport_error_handler || w.error_handler);\n this._connectionRetries = (w.connection_retries || 0);\n this._timeoutHandler = w.timeout_handler;\n this._timeout = w.timeout;\n this._serverDialogCancelHandler = (w.server_dialog_cancel_handler || w.error_handler);\n this._deferredSend = n(this._batchSend, 0, this);\n if (this._batchSizeLimit) {\n k.onUnload(function() {\n p.bump((\"unload_batches_count_\" + u(this._batches.length)));\n }.bind(this));\n };\n };\n m(s.prototype, {\n _inFlight: 0,\n _handler: null,\n _errorHandler: null,\n _transportErrorHandler: null,\n _timeoutHandler: null,\n _timeout: null,\n _serverDialogCancelHandler: null,\n _combineData: null,\n trySend: function(v, w) {\n if (q) {\n return\n };\n if ((typeof v == \"undefined\")) {\n v = null;\n };\n var x = (w || this._mode);\n if ((x == r.IMMEDIATE)) {\n this._send(v);\n }\n else if ((x == r.IDEMPOTENT)) {\n if (!this._inFlight) {\n this._send(v);\n };\n }\n else if (((x == r.BATCH_SUCCESSIVE) || (x == r.BATCH_SUCCESSIVE_UNIQUE))) {\n if (!this._inFlight) {\n this._send(v);\n }\n else this._batchData(v);\n ;\n }\n else if ((x == r.BATCH_CONDITIONAL)) {\n var y = (this._batches[0] && this._batches[0].getData());\n if ((this._inFlight && ((this._combineDataIf(this._pendingRequestData, v) || this._combineDataIf(y, v))))) {\n this._batchData(v);\n }\n else this._send(v);\n ;\n }\n else if ((x == r.BATCH_DEFERRED_MULTI)) {\n this._batchData(v);\n this._deferredSend();\n }\n else if ((x == r.BATCH_SUCCESSIVE_PIGGYBACK_ON_ERROR)) {\n this._batchData(v);\n if (!this._inFlight) {\n this._batchSend();\n };\n }\n \n \n \n \n \n ;\n },\n _send: function(v) {\n this._inFlight++;\n this._pendingRequestData = m({\n }, v);\n if ((this._requestUserID != i.user)) {\n v.request_user_id = this._requestUserID;\n };\n p.log(\"send\", {\n endpoint: this._endpoint,\n data: v,\n inflight_count: this._inFlight\n });\n var w = null;\n if (i.worker_context) {\n w = new h(\"POST\", this._endpoint, v);\n w.onError = function(x) {\n x.getPayload = function() {\n return x.errorText;\n };\n x.getRequest = function() {\n var y = x;\n x.getData = function() {\n return v;\n };\n return y;\n };\n x.getError = function() {\n return x.errorText;\n };\n x.getErrorDescription = function() {\n return x.errorText;\n };\n x.isTransient = function() {\n return false;\n };\n this._handleError(x);\n }.bind(this);\n w.onJSON = function(x) {\n x.getPayload = function() {\n return x.json;\n };\n x.getRequest = function() {\n return w;\n };\n this._handleResponse(x);\n }.bind(this);\n w.getData = function() {\n return v;\n };\n w.send();\n }\n else {\n w = new g(this._endpoint).setData(v).setOption(\"retries\", this._connectionRetries).setHandler(this._handleResponse.bind(this)).setErrorHandler(this._handleError.bind(this)).setTransportErrorHandler(this._handleTransportError.bind(this)).setServerDialogCancelHandler(this._handleServerDialogCancel.bind(this)).setAllowCrossPageTransition(true);\n if ((this._timeout && this._timeoutHandler)) {\n w.setTimeoutHandler(this._timeout, this._handleTimeout.bind(this));\n };\n w.send();\n }\n ;\n },\n _batchData: function(v, w) {\n if ((((this._mode == r.BATCH_SUCCESSIVE_UNIQUE) && (typeof this._pendingRequestData != \"undefined\")) && l(v, this._pendingRequestData))) {\n return;\n }\n else {\n var x = (this._batches.length - 1);\n if (((x >= 0) && !this._hasReachedBatchLimit(this._batches[x]))) {\n (w ? this._batches[x].combineWithOlder(v, this._combineData) : this._batches[x].combineWith(v, this._combineData));\n }\n else {\n this._batches.push(new t(v));\n p.bump((\"batches_count_\" + u(this._batches.length)));\n }\n ;\n p.debug(\"batch\", {\n endpoint: this._endpoint,\n batches: this._batches,\n batch_limit: this._batchSizeLimit\n });\n }\n ;\n },\n _hasReachedBatchLimit: function(v) {\n return (this._batchSizeLimit && (v.getSize() >= this._batchSizeLimit));\n },\n _batchSend: function() {\n if (this._batches[0]) {\n this._send(this._batches[0].getData());\n this._batches.shift();\n }\n ;\n },\n _handleResponse: function(v) {\n this._inFlight--;\n p.log(\"response\", {\n endpoint: this._endpoint,\n inflight_count: this._inFlight\n });\n var w = v.getPayload();\n q = (w && w.kill_chat);\n if (q) {\n p.log(\"killswitch_enabled\", {\n endpoint: this._endpoint,\n inflight_count: this._inFlight\n });\n };\n if ((w && w.error_payload)) {\n if (this._errorHandler) {\n this._errorHandler(v);\n };\n }\n else (this._handler && this._handler(w, v.getRequest()));\n ;\n if (((((this._mode == r.BATCH_SUCCESSIVE) || (this._mode == r.BATCH_SUCCESSIVE_UNIQUE)) || (this._mode == r.BATCH_SUCCESSIVE_PIGGYBACK_ON_ERROR)) || (this._mode == r.BATCH_CONDITIONAL))) {\n this._batchSend();\n };\n delete this._pendingRequestData;\n },\n _postErrorHandler: function() {\n p.error(\"error\", {\n endpoint: this._endpoint,\n inflight_count: (this._inFlight - 1)\n });\n this._inFlight--;\n var v = this._mode;\n if ((((v == r.BATCH_SUCCESSIVE) || (v == r.BATCH_SUCCESSIVE_UNIQUE)) || (v == r.BATCH_CONDITIONAL))) {\n this._batchSend();\n }\n else if ((v == r.BATCH_SUCCESSIVE_PIGGYBACK_ON_ERROR)) {\n if (this._batches[0]) {\n this._batchData(this._pendingRequestData, true);\n this._batchSend();\n }\n else this._batchData(this._pendingRequestData, true);\n \n }\n ;\n delete this._pendingRequestData;\n },\n _handleError: function(v) {\n (this._errorHandler && this._errorHandler(v));\n this._postErrorHandler();\n },\n _handleTransportError: function(v) {\n (this._transportErrorHandler && this._transportErrorHandler(v));\n this._postErrorHandler();\n },\n _handleTimeout: function(v) {\n (this._timeoutHandler && this._timeoutHandler(v));\n this._postErrorHandler();\n },\n _handleServerDialogCancel: function(v) {\n (this._serverDialogCancelHandler && this._serverDialogCancelHandler(v));\n this._postErrorHandler();\n }\n });\n function t(v) {\n this._data = v;\n this._size = 1;\n };\n m(t.prototype, {\n getData: function() {\n return this._data;\n },\n getSize: function() {\n return this._size;\n },\n combineWith: function(v, w) {\n this._data = w(this._data, v);\n this._size++;\n },\n combineWithOlder: function(v, w) {\n this._data = w(v, this._data);\n this._size++;\n }\n });\n function u(v) {\n if ((v === 1)) {\n return \"equals1\";\n }\n else if (((v >= 2) && (v <= 3))) {\n return \"between2and3\";\n }\n else return \"over4\"\n \n ;\n };\n e.exports = r;\n});\n__d(\"TokenizeUtil\", [\"repeatString\",], function(a, b, c, d, e, f) {\n var g = b(\"repeatString\"), h = /[ ]+/g, i = /[^ ]+/g, j = new RegExp(k(), \"g\");\n function k() {\n return ((((\"[.,+*?$|#{}()'\\\\^\\\\-\\\\[\\\\]\\\\\\\\\\\\/!@%\\\"~=\\u003C\\u003E_:;\" + \"\\u30fb\\u3001\\u3002\\u3008-\\u3011\\u3014-\\u301f\\uff1a-\\uff1f\\uff01-\\uff0f\") + \"\\uff3b-\\uff40\\uff5b-\\uff65\\u2e2e\\u061f\\u066a-\\u066c\\u061b\\u060c\\u060d\") + \"\\ufd3e\\ufd3f\\u1801\\u0964\\u104a\\u104b\\u2010-\\u2027\\u2030-\\u205e\") + \"\\u00a1-\\u00b1\\u00b4-\\u00b8\\u00ba\\u00bb\\u00bf]\");\n };\n var l = {\n }, m = {\n a: \"\\u0430 \\u00e0 \\u00e1 \\u00e2 \\u00e3 \\u00e4 \\u00e5\",\n b: \"\\u0431\",\n c: \"\\u0446 \\u00e7 \\u010d\",\n d: \"\\u0434 \\u00f0 \\u010f \\u0111\",\n e: \"\\u044d \\u0435 \\u00e8 \\u00e9 \\u00ea \\u00eb \\u011b\",\n f: \"\\u0444\",\n g: \"\\u0433 \\u011f\",\n h: \"\\u0445 \\u0127\",\n i: \"\\u0438 \\u00ec \\u00ed \\u00ee \\u00ef \\u0131\",\n j: \"\\u0439\",\n k: \"\\u043a \\u0138\",\n l: \"\\u043b \\u013e \\u013a \\u0140 \\u0142\",\n m: \"\\u043c\",\n n: \"\\u043d \\u00f1 \\u0148 \\u0149 \\u014b\",\n o: \"\\u043e \\u00f8 \\u00f6 \\u00f5 \\u00f4 \\u00f3 \\u00f2\",\n p: \"\\u043f\",\n r: \"\\u0440 \\u0159 \\u0155\",\n s: \"\\u0441 \\u015f \\u0161 \\u017f\",\n t: \"\\u0442 \\u0165 \\u0167 \\u00fe\",\n u: \"\\u0443 \\u044e \\u00fc \\u00fb \\u00fa \\u00f9 \\u016f\",\n v: \"\\u0432\",\n y: \"\\u044b \\u00ff \\u00fd\",\n z: \"\\u0437 \\u017e\",\n ae: \"\\u00e6\",\n oe: \"\\u0153\",\n ts: \"\\u0446\",\n ch: \"\\u0447\",\n ij: \"\\u0133\",\n sh: \"\\u0448\",\n ss: \"\\u00df\",\n ya: \"\\u044f\"\n };\n for (var n in m) {\n var o = m[n].split(\" \");\n for (var p = 0; (p < o.length); p++) {\n l[o[p]] = n;;\n };\n };\n var q = {\n };\n function r(x) {\n return (x ? x.replace(j, \" \") : \"\");\n };\n function s(x) {\n x = x.toLowerCase();\n var y = \"\", z = \"\";\n for (var aa = x.length; aa--; ) {\n z = x.charAt(aa);\n y = (((l[z] || z)) + y);\n };\n return y.replace(h, \" \");\n };\n function t(x) {\n var y = [], z = i.exec(x);\n while (z) {\n z = z[0];\n y.push(z);\n z = i.exec(x);\n };\n return y;\n };\n function u(x, y) {\n if (!q.hasOwnProperty(x)) {\n var z = s(x), aa = r(z);\n q[x] = {\n value: x,\n flatValue: z,\n tokens: t(aa),\n isPrefixQuery: (aa && (aa[(aa.length - 1)] != \" \"))\n };\n }\n ;\n if ((y && (typeof q[x].sortedTokens == \"undefined\"))) {\n q[x].sortedTokens = q[x].tokens.slice();\n q[x].sortedTokens.sort(function(ba, ca) {\n return (ca.length - ba.length);\n });\n }\n ;\n return q[x];\n };\n function v(x, y, z) {\n var aa = u(y, (x == \"prefix\")), ba = ((x == \"prefix\") ? aa.sortedTokens : aa.tokens), ca = u(z).tokens, da = {\n }, ea = ((aa.isPrefixQuery && (x == \"query\")) ? (ba.length - 1) : null), fa = function(ga, ha) {\n for (var ia = 0; (ia < ca.length); ++ia) {\n var ja = ca[ia];\n if ((!da[ia] && (((ja == ga) || ((((((x == \"query\") && (ha === ea)) || (x == \"prefix\"))) && (ja.indexOf(ga) === 0))))))) {\n return (da[ia] = true)\n };\n };\n return false;\n };\n return Boolean((ba.length && ba.every(fa)));\n };\n var w = {\n flatten: s,\n parse: u,\n getPunctuation: k,\n isExactMatch: v.bind(null, \"exact\"),\n isQueryMatch: v.bind(null, \"query\"),\n isPrefixMatch: v.bind(null, \"prefix\")\n };\n e.exports = w;\n});\n__d(\"KanaUtils\", [], function(a, b, c, d, e, f) {\n var g = 12353, h = 12436, i = 96, j = {\n normalizeHiragana: function(k) {\n if ((k !== null)) {\n var l = [];\n for (var m = 0; (m < k.length); m++) {\n var n = k.charCodeAt(m);\n if (((n < g) || (n > h))) {\n l.push(k.charAt(m));\n }\n else {\n var o = (n + i);\n l.push(String.fromCharCode(o));\n }\n ;\n };\n return l.join(\"\");\n }\n else return null\n ;\n }\n };\n e.exports = j;\n});\n__d(\"DataSource\", [\"ArbiterMixin\",\"AsyncRequest\",\"TokenizeUtil\",\"copyProperties\",\"createArrayFrom\",\"createObjectFrom\",\"emptyFunction\",\"KanaUtils\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"AsyncRequest\"), i = b(\"TokenizeUtil\"), j = b(\"copyProperties\"), k = b(\"createArrayFrom\"), l = b(\"createObjectFrom\"), m = b(\"emptyFunction\"), n = b(\"KanaUtils\");\n function o(p) {\n this._maxResults = (p.maxResults || 10);\n this.token = p.token;\n this.queryData = (p.queryData || {\n });\n this.queryEndpoint = (p.queryEndpoint || \"\");\n this.bootstrapData = (p.bootstrapData || {\n });\n this.bootstrapEndpoint = (p.bootstrapEndpoint || \"\");\n this._exclusions = (p.exclusions || []);\n this._indexedFields = (p.indexedFields || [\"text\",\"tokens\",]);\n this._titleFields = (p.titleFields || []);\n this._alwaysPrefixMatch = (p.alwaysPrefixMatch || false);\n this._deduplicationKey = (p.deduplicationKey || null);\n this._enabledQueryCache = (p.enabledQueryCache || true);\n this._queryExactMatch = (p.queryExactMatch || false);\n this._acrossTransitions = (p.acrossTransitions || false);\n this._kanaNormalization = (p.kanaNormalization || false);\n this._minQueryLength = (p.minQueryLength || -1);\n this._minExactMatchLength = 4;\n this._filters = [];\n };\n j(o.prototype, g, {\n events: [\"bootstrap\",\"query\",\"respond\",],\n init: function() {\n this.init = m;\n this._fields = l(this._indexedFields);\n this._activeQueries = 0;\n this.dirty();\n },\n dirty: function() {\n this.value = \"\";\n this._bootstrapped = false;\n this._bootstrapping = false;\n this._data = {\n };\n this.localCache = {\n };\n this.queryCache = {\n };\n this.inform(\"dirty\", {\n });\n return this;\n },\n bootstrap: function() {\n if (this._bootstrapped) {\n return\n };\n this.bootstrapWithoutToken();\n this._bootstrapped = true;\n this._bootstrapping = true;\n this.inform(\"bootstrap\", {\n bootstrapping: true\n });\n },\n bootstrapWithoutToken: function() {\n this.fetch(this.bootstrapEndpoint, this.bootstrapData, {\n bootstrap: true,\n token: this.token\n });\n },\n bootstrapWithToken: function() {\n var p = j({\n }, this.bootstrapData);\n p.token = this.token;\n this.fetch(this.bootstrapEndpoint, p, {\n bootstrap: true,\n replaceCache: true\n });\n },\n query: function(p, q, r, s) {\n this.inform(\"beforeQuery\", {\n value: p,\n local_only: q,\n exclusions: r,\n time_waited: s\n });\n if (!this._enabledQueryCache) {\n this.queryCache = {\n };\n };\n var t = this.buildUids(p, [], r), u = this.respond(p, t);\n this.value = p;\n this.inform(\"query\", {\n value: p,\n results: u\n });\n var v = this._normalizeString(p).flatValue;\n if ((((((q || !v) || this._isQueryTooShort(v)) || !this.queryEndpoint) || this.getQueryCache().hasOwnProperty(v)) || !this.shouldFetchMoreResults(u))) {\n return false\n };\n this.inform(\"queryEndpoint\", {\n value: p\n });\n this.fetch(this.queryEndpoint, this.getQueryData(p, t), {\n value: p,\n exclusions: r\n });\n return true;\n },\n _isQueryTooShort: function(p) {\n return ((p.length < this._minQueryLength));\n },\n _normalizeString: function(p, q) {\n var r = p;\n if (this._kanaNormalization) {\n r = n.normalizeHiragana(p);\n };\n return i.parse(r, q);\n },\n shouldFetchMoreResults: function(p) {\n return (p.length < this._maxResults);\n },\n getQueryData: function(p, q) {\n var r = j({\n value: p\n }, (this.queryData || {\n }));\n q = (q || []);\n if (q.length) {\n r.existing_ids = q.join(\",\");\n };\n if (this._bootstrapping) {\n r.bsp = true;\n };\n return r;\n },\n setQueryData: function(p, q) {\n if (q) {\n this.queryData = {\n };\n };\n j(this.queryData, p);\n return this;\n },\n setBootstrapData: function(p, q) {\n if (q) {\n this.bootstrapData = {\n };\n };\n j(this.bootstrapData, p);\n return this;\n },\n getExclusions: function() {\n return k(this._exclusions);\n },\n setExclusions: function(p) {\n this._exclusions = (p || []);\n },\n addFilter: function(p) {\n var q = this._filters;\n q.push(p);\n return {\n remove: function() {\n q.splice(q.indexOf(p), 1);\n }\n };\n },\n clearFilters: function() {\n this._filters = [];\n },\n respond: function(p, q, r) {\n var s = this.buildData(q);\n this.inform(\"respond\", {\n value: p,\n results: s,\n isAsync: !!r\n });\n return s;\n },\n asyncErrorHandler: m,\n fetch: function(p, q, r) {\n if (!p) {\n return\n };\n var s = new h().setURI(p).setData(q).setMethod(\"GET\").setReadOnly(true).setAllowCrossPageTransition(this._acrossTransitions).setHandler(function(t) {\n this.fetchHandler(t, (r || {\n }));\n }.bind(this));\n if ((p === this.queryEndpoint)) {\n s.setFinallyHandler(function() {\n this._activeQueries--;\n if (!this._activeQueries) {\n this.inform(\"activity\", {\n activity: false\n });\n };\n }.bind(this));\n };\n s.setErrorHandler(this.asyncErrorHandler);\n this.inform(\"beforeFetch\", {\n request: s,\n fetch_context: r\n });\n s.send();\n if ((p === this.queryEndpoint)) {\n if (!this._activeQueries) {\n this.inform(\"activity\", {\n activity: true\n });\n };\n this._activeQueries++;\n }\n ;\n },\n fetchHandler: function(p, q) {\n var r = q.value, s = q.exclusions;\n if ((!r && q.replaceCache)) {\n this.localCache = {\n };\n };\n this.inform(\"buildQueryCache\", {\n });\n var t = p.getPayload().entries;\n this.addEntries(t, r);\n this.inform(\"fetchComplete\", {\n entries: t,\n response: p,\n value: r,\n fetch_context: q\n });\n var u = (((!r && this.value)) ? this.value : r);\n this.respond(u, this.buildUids(u, [], s), true);\n if (!r) {\n if (this._bootstrapping) {\n this._bootstrapping = false;\n this.inform(\"bootstrap\", {\n bootstrapping: false\n });\n }\n ;\n if ((q.token && (p.getPayload().token !== q.token))) {\n this.bootstrapWithToken();\n };\n }\n ;\n },\n addEntries: function(p, q) {\n var r = this.processEntries(k((p || [])), q), s = this.buildUids(q, r);\n if (q) {\n var t = this.getQueryCache();\n t[this._normalizeString(q).flatValue] = s;\n }\n else this.fillCache(s);\n ;\n },\n processEntries: function(p, q) {\n return p.map(function(r, s) {\n var t = (r.uid = (r.uid + \"\")), u = this.getEntry(t);\n if (!u) {\n u = r;\n u.query = q;\n this.setEntry(t, u);\n }\n else j(u, r);\n ;\n ((u.index === undefined) && (u.index = s));\n return t;\n }, this);\n },\n getAllEntries: function() {\n return (this._data || {\n });\n },\n getEntry: function(p) {\n return (this._data[p] || null);\n },\n setEntry: function(p, q) {\n this._data[p] = q;\n },\n fillCache: function(p) {\n var q = this.localCache;\n p.forEach(function(r) {\n var s = this.getEntry(r);\n if (!s) {\n return\n };\n s.bootstrapped = true;\n var t = this._normalizeString(this.getTextToIndex(s)).tokens;\n for (var u = 0, v = t.length; (u < v); ++u) {\n var w = t[u];\n if (!q.hasOwnProperty(w)) {\n q[w] = {\n };\n };\n q[w][r] = true;\n };\n }, this);\n },\n getTextToIndex: function(p) {\n if ((p.textToIndex && !p.needs_update)) {\n return p.textToIndex\n };\n p.needs_update = false;\n p.textToIndex = this.getTextToIndexFromFields(p, this._indexedFields);\n return p.textToIndex;\n },\n getTextToIndexFromFields: function(p, q) {\n var r = [];\n for (var s = 0; (s < q.length); ++s) {\n var t = p[q[s]];\n if (t) {\n r.push((t.join ? t.join(\" \") : t));\n };\n };\n return r.join(\" \");\n },\n mergeUids: function(p, q, r, s) {\n this.inform(\"mergeUids\", {\n local_uids: p,\n query_uids: q,\n new_uids: r,\n value: s\n });\n var t = function(u, v) {\n var w = this.getEntry(u), x = this.getEntry(v);\n if ((w.extended_match !== x.extended_match)) {\n return (w.extended_match ? 1 : -1)\n };\n if ((w.index !== x.index)) {\n return (w.index - x.index)\n };\n if ((w.text.length !== x.text.length)) {\n return (w.text.length - x.text.length)\n };\n return (w.uid < x.uid);\n }.bind(this);\n this._checkExtendedMatch(s, p);\n return this.deduplicateByKey(p.sort(t).concat(q, r));\n },\n _checkExtendedMatch: function(p, q) {\n var r = (this._alwaysPrefixMatch ? i.isPrefixMatch : i.isQueryMatch);\n for (var s = 0; (s < q.length); ++s) {\n var t = this.getEntry(q[s]);\n t.extended_match = (t.tokens ? !r(p, t.text) : false);\n };\n },\n buildUids: function(p, q, r) {\n if (!q) {\n q = [];\n };\n if (!p) {\n return q\n };\n if (!r) {\n r = [];\n };\n var s = this.buildCacheResults(p, this.localCache), t = this.buildQueryResults(p), u = this.mergeUids(s, t, q, p), v = l(r.concat(this._exclusions)), w = u.filter(function(x) {\n if ((v.hasOwnProperty(x) || !this.getEntry(x))) {\n return false\n };\n for (var y = 0; (y < this._filters.length); ++y) {\n if (!this._filters[y](this.getEntry(x), p)) {\n return false\n };\n };\n return (v[x] = true);\n }, this);\n return this.uidsIncludingExact(p, w, v);\n },\n uidsIncludingExact: function(p, q) {\n var r = q.length;\n if (((p.length < this._minExactMatchLength) || (r <= this._maxResults))) {\n return q\n };\n for (var s = 0; (s < r); ++s) {\n var t = this.getEntry(q[s]);\n (t.text_lower || (t.text_lower = t.text.toLowerCase()));\n if ((t.text_lower === this._normalizeString(p).flatValue)) {\n if ((s >= this._maxResults)) {\n var u = q.splice(s, 1);\n q.splice((this._maxResults - 1), 0, u);\n }\n ;\n break;\n }\n ;\n };\n return q;\n },\n buildData: function(p) {\n var q = [], r = Math.min(p.length, this._maxResults);\n for (var s = 0; (s < r); ++s) {\n q.push(this.getEntry(p[s]));;\n };\n return q;\n },\n findQueryCache: function(p) {\n var q = 0, r = null, s = this.getQueryCache();\n if (this._queryExactMatch) {\n return (s[p] || [])\n };\n for (var t in s) {\n if (((p.indexOf(t) === 0) && (t.length > q))) {\n q = t.length;\n r = t;\n }\n ;\n };\n return (s[r] || []);\n },\n buildQueryResults: function(p) {\n var q = this._normalizeString(p).flatValue, r = this.findQueryCache(q);\n if (this.getQueryCache().hasOwnProperty(q)) {\n return r\n };\n return this.filterQueryResults(p, r);\n },\n filterQueryResults: function(p, q) {\n var r = (this._alwaysPrefixMatch ? i.isPrefixMatch : i.isQueryMatch);\n return q.filter(function(s) {\n return r(p, this.getTextToIndex(this.getEntry(s)));\n }, this);\n },\n buildCacheResults: function(p, q) {\n var r = this._normalizeString(p, this._alwaysPrefixMatch), s = (this._alwaysPrefixMatch ? r.sortedTokens : r.tokens), t = s.length, u = (r.isPrefixQuery ? (t - 1) : null), v = {\n }, w = {\n }, x = {\n }, y = [], z = false, aa = {\n }, ba = 0;\n for (var ca = 0; (ca < t); ++ca) {\n var da = s[ca];\n if (!aa.hasOwnProperty(da)) {\n ba++;\n aa[da] = true;\n }\n else continue;\n ;\n for (var ea in q) {\n if ((((!v.hasOwnProperty(ea) && (ea === da))) || ((((this._alwaysPrefixMatch || (u === ca))) && (ea.indexOf(da) === 0))))) {\n if ((ea === da)) {\n if (w.hasOwnProperty(ea)) {\n z = true;\n };\n v[ea] = true;\n }\n else {\n if ((v.hasOwnProperty(ea) || w.hasOwnProperty(ea))) {\n z = true;\n };\n w[ea] = true;\n }\n ;\n for (var fa in q[ea]) {\n if (((ca === 0) || ((x.hasOwnProperty(fa) && (x[fa] == (ba - 1)))))) {\n x[fa] = ba;\n };\n };\n }\n ;\n };\n };\n for (var ga in x) {\n if ((x[ga] == ba)) {\n y.push(ga);\n };\n };\n if ((z || (ba < t))) {\n y = this.filterQueryResults(p, y);\n };\n if ((this._titleFields && (this._titleFields.length > 0))) {\n y = this.filterNonTitleMatchQueryResults(p, y);\n };\n return y;\n },\n filterNonTitleMatchQueryResults: function(p, q) {\n return q.filter(function(r) {\n var s = this._normalizeString(p), t = s.tokens.length;\n if ((t === 0)) {\n return true\n };\n var u = this.getTitleTerms(this.getEntry(r)), v = s.tokens[0];\n return (((((t === 1)) || this._alwaysPrefixMatch)) ? i.isPrefixMatch(v, u) : i.isQueryMatch(v, u));\n }, this);\n },\n getTitleTerms: function(p) {\n if (!p.titleToIndex) {\n p.titleToIndex = this.getTextToIndexFromFields(p, this._titleFields);\n };\n return p.titleToIndex;\n },\n deduplicateByKey: function(p) {\n if (!this._deduplicationKey) {\n return p\n };\n var q = l(p.map(this._getDeduplicationKey.bind(this)), p);\n return p.filter(function(r) {\n return (q[this._getDeduplicationKey(r)] == r);\n }.bind(this));\n },\n _getDeduplicationKey: function(p) {\n var q = this.getEntry(p);\n return (q[this._deduplicationKey] || ((\"__\" + p) + \"__\"));\n },\n getQueryCache: function() {\n return this.queryCache;\n },\n setMaxResults: function(p) {\n this._maxResults = p;\n (this.value && this.respond(this.value, this.buildUids(this.value)));\n },\n updateToken: function(p) {\n this.token = p;\n this.dirty();\n return this;\n }\n });\n e.exports = o;\n});\n__d(\"Ease\", [], function(a, b, c, d, e, f) {\n var g = {\n makePowerOut: function(h) {\n return function(i) {\n var j = (1 - Math.pow((1 - i), h));\n return ((((j * 10000) | 0)) / 10000);\n };\n },\n makePowerIn: function(h) {\n return function(i) {\n var j = Math.pow(i, h);\n return ((((j * 10000) | 0)) / 10000);\n };\n },\n makePowerInOut: function(h) {\n return function(i) {\n var j = ((((i *= 2) < 1)) ? (Math.pow(i, h) * 140977) : (1 - (Math.abs(Math.pow((2 - i), h)) * 141008)));\n return ((((j * 10000) | 0)) / 10000);\n };\n },\n sineOut: function(h) {\n return Math.sin(((h * Math.PI) * 141086));\n },\n sineIn: function(h) {\n return (1 - Math.cos(((h * Math.PI) * 141139)));\n },\n sineInOut: function(h) {\n return (-141175 * ((Math.cos((Math.PI * h)) - 1)));\n },\n circOut: function(h) {\n return Math.sqrt((1 - ((--h) * h)));\n },\n circIn: function(h) {\n return -((Math.sqrt((1 - (h * h))) - 1));\n },\n circInOut: function(h) {\n return ((((h *= 2) < 1)) ? (-141345 * ((Math.sqrt((1 - (h * h))) - 1))) : (141369 * ((Math.sqrt((1 - ((h -= 2) * h))) + 1))));\n },\n bounceOut: function(h) {\n if ((h < (1 / 2.75))) {\n return (((7.5625 * h) * h));\n }\n else if ((h < (2 / 2.75))) {\n return ((((7.5625 * (h -= (1.5 / 2.75))) * h) + 141505));\n }\n else if ((h < (2.5 / 2.75))) {\n return ((((7.5625 * (h -= (2.25 / 2.75))) * h) + 141563));\n }\n else return ((((7.5625 * (h -= (2.625 / 2.75))) * h) + 141609))\n \n \n ;\n },\n bounceIn: function(h) {\n return (1 - g.bounceOut((1 - h)));\n },\n bounceInOut: function(h) {\n return (((h < 141703)) ? (g.bounceIn((h * 2)) * 141723) : ((g.bounceOut(((h * 2) - 1)) * 141745) + 141748));\n },\n _makeBouncy: function(h) {\n h = (h || 1);\n return function(i) {\n i = (((((1 - Math.cos(((i * Math.PI) * h)))) * ((1 - i)))) + i);\n return ((i <= 1) ? i : (2 - i));\n };\n },\n makeBounceOut: function(h) {\n return this._makeBouncy(h);\n },\n makeBounceIn: function(h) {\n var i = this._makeBouncy(h);\n return function(j) {\n return (1 - i((1 - j)));\n };\n },\n makeElasticOut: function(h, i) {\n ((h < 1) && (h = 1));\n var j = (Math.PI * 2);\n return function(k) {\n if (((k === 0) || (k === 1))) {\n return k\n };\n var l = ((i / j) * Math.asin((1 / h)));\n return (((h * Math.pow(2, (-10 * k))) * Math.sin(((((k - l)) * j) / i))) + 1);\n };\n },\n makeElasticIn: function(h, i) {\n ((h < 1) && (h = 1));\n var j = (Math.PI * 2);\n return function(k) {\n if (((k === 0) || (k === 1))) {\n return k\n };\n var l = ((i / j) * Math.asin((1 / h)));\n return -(((h * Math.pow(2, (10 * (k -= 1)))) * Math.sin(((((k - l)) * j) / i))));\n };\n },\n makeElasticInOut: function(h, i) {\n ((h < 1) && (h = 1));\n i *= 1.5;\n var j = (Math.PI * 2);\n return function(k) {\n var l = ((i / j) * Math.asin((1 / h)));\n return ((((k *= 2) < 1)) ? (((-142496 * h) * Math.pow(2, (10 * (k -= 1)))) * Math.sin(((((k - l)) * j) / i))) : (1 + (((142545 * h) * Math.pow(2, (-10 * (k -= 1)))) * Math.sin(((((k - l)) * j) / i)))));\n };\n },\n makeBackOut: function(h) {\n return function(i) {\n return ((((--i * i) * (((((h + 1)) * i) + h))) + 1));\n };\n },\n makeBackIn: function(h) {\n return function(i) {\n return ((i * i) * (((((h + 1)) * i) - h)));\n };\n },\n makeBackInOut: function(h) {\n h *= 1.525;\n return function(i) {\n return ((((i *= 2) < 1)) ? (142814 * (((i * i) * (((((h + 1)) * i) - h))))) : (142835 * (((((i -= 2) * i) * (((((h + 1)) * i) + h))) + 2))));\n };\n },\n easeOutExpo: function(h) {\n return (-Math.pow(2, (-10 * h)) + 1);\n }\n };\n g.elasticOut = g.makeElasticOut(1, 142954);\n g.elasticIn = g.makeElasticIn(1, 142988);\n g.elasticInOut = g.makeElasticInOut(1, 143028);\n g.backOut = g.makeBackOut(1.7);\n g.backIn = g.makeBackIn(1.7);\n g.backInOut = g.makeBackInOut(1.7);\n e.exports = g;\n});\n__d(\"MultiBootstrapDataSource\", [\"Class\",\"DataSource\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"DataSource\");\n function i(j) {\n this._bootstrapEndpoints = j.bootstrapEndpoints;\n this.parent.construct(this, j);\n };\n g.extend(i, h);\n i.prototype.bootstrapWithoutToken = function() {\n for (var j = 0; (j < this._bootstrapEndpoints.length); j++) {\n this.fetch(this._bootstrapEndpoints[j].endpoint, (this._bootstrapEndpoints[j].data || {\n }), {\n bootstrap: true\n });;\n };\n };\n e.exports = i;\n});\n__d(\"XHPTemplate\", [\"DataStore\",\"DOM\",\"HTML\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"DataStore\"), h = b(\"DOM\"), i = b(\"HTML\"), j = b(\"copyProperties\");\n function k(m) {\n this._model = m;\n };\n j(k.prototype, {\n render: function() {\n if (i.isHTML(this._model)) {\n this._model = h.setContent(document.createDocumentFragment(), this._model)[0];\n };\n return this._model.cloneNode(true);\n },\n build: function() {\n return new l(this.render());\n }\n });\n j(k, {\n getNode: function(m, n) {\n return k.getNodes(m)[n];\n },\n getNodes: function(m) {\n var n = g.get(m, \"XHPTemplate:nodes\");\n if (!n) {\n n = {\n };\n var o = h.scry(m, \"[data-jsid]\");\n o.push(m);\n var p = o.length;\n while (p--) {\n var q = o[p];\n n[q.getAttribute(\"data-jsid\")] = q;\n q.removeAttribute(\"data-jsid\");\n };\n g.set(m, \"XHPTemplate:nodes\", n);\n }\n ;\n return n;\n }\n });\n function l(m) {\n this._root = m;\n this._populateNodes();\n };\n j(l.prototype, {\n _populateNodes: function() {\n this._nodes = {\n };\n this._leaves = {\n };\n var m = this._root.getElementsByTagName(\"*\");\n for (var n = 0, o = m.length; (n < o); n++) {\n var p = m[n], q = p.getAttribute(\"data-jsid\");\n if (q) {\n p.removeAttribute(\"data-jsid\");\n this._nodes[q] = p;\n this._leaves[q] = !p.childNodes.length;\n }\n ;\n };\n },\n getRoot: function() {\n return this._root;\n },\n getNode: function(m) {\n return this._nodes[m];\n },\n setNodeProperty: function(m, n, o) {\n this.getNode(m)[n] = o;\n return this;\n },\n setNodeContent: function(m, n) {\n if (!this._leaves[m]) {\n throw new Error((\"Can't setContent on non-leaf node: \" + m))\n };\n h.setContent(this.getNode(m), n);\n return this;\n }\n });\n e.exports = k;\n});\n__d(\"Scrollable\", [\"Event\",\"Parent\",\"UserAgent\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Parent\"), i = b(\"UserAgent\"), j = function(event) {\n var m = h.byClass(event.getTarget(), \"scrollable\");\n if (!m) {\n return\n };\n if ((((((typeof event.axis !== \"undefined\") && (event.axis === event.HORIZONTAL_AXIS))) || ((event.wheelDeltaX && !event.wheelDeltaY))) || ((event.deltaX && !event.deltaY)))) {\n return\n };\n var n = ((event.wheelDelta || -event.deltaY) || -event.detail), o = m.scrollHeight, p = m.clientHeight;\n if ((o > p)) {\n var q = m.scrollTop;\n if (((((n > 0) && (q === 0))) || (((n < 0) && (q >= (o - p)))))) {\n event.prevent();\n }\n else if ((i.ie() < 9)) {\n if (m.currentStyle) {\n var r = m.currentStyle.fontSize;\n if ((r.indexOf(\"px\") < 0)) {\n var s = document.createElement(\"div\");\n s.style.fontSize = r;\n s.style.height = \"1em\";\n r = s.style.pixelHeight;\n }\n else r = parseInt(r, 10);\n ;\n m.scrollTop = (q - Math.round(((n / 120) * r)));\n event.prevent();\n }\n \n }\n ;\n }\n ;\n }, k = document.documentElement;\n if (i.firefox()) {\n var l = (((\"WheelEvent\" in window)) ? \"wheel\" : \"DOMMouseScroll\");\n k.addEventListener(l, j, false);\n }\n else g.listen(k, \"mousewheel\", j);\n;\n});\n__d(\"randomInt\", [\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"invariant\");\n function h(i, j) {\n var k = arguments.length;\n g(((k > 0) && (k <= 2)));\n if ((k === 1)) {\n j = i;\n i = 0;\n }\n ;\n g((j > i));\n var l = (this.random || Math.random);\n return Math.floor((i + (l() * ((j - i)))));\n };\n e.exports = h;\n});"); |
| // 1157 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s81fc64c5910c4e7af7041771eb415de765bf3aaa"); |
| // 1158 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"XH2Cu\",]);\n}\n;\n;\n__d(\"AjaxRequest\", [\"ErrorUtils\",\"Keys\",\"URI\",\"UserAgent\",\"XHR\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ErrorUtils\"), h = b(\"Keys\"), i = b(\"URI\"), j = b(\"UserAgent\"), k = b(\"XHR\"), l = b(\"copyProperties\");\n function m(q, r, s) {\n this.xhr = k.create();\n if (!((r instanceof i))) {\n r = new i(r);\n }\n ;\n ;\n if (((s && ((q == \"GET\"))))) {\n r.setQueryData(s);\n }\n else this._params = s;\n ;\n ;\n this.method = q;\n this.uri = r;\n this.xhr.open(q, r);\n };\n;\n var n = ((window.JSBNG__XMLHttpRequest && ((\"withCredentials\" in new JSBNG__XMLHttpRequest()))));\n m.supportsCORS = function() {\n return n;\n };\n m.ERROR = \"ar:error\";\n m.TIMEOUT = \"ar:timeout\";\n m.PROXY_ERROR = \"ar:proxy error\";\n m.TRANSPORT_ERROR = \"ar:transport error\";\n m.SERVER_ERROR = \"ar:http error\";\n m.PARSE_ERROR = \"ar:parse error\";\n m._inflight = [];\n function o() {\n var q = m._inflight;\n m._inflight = [];\n q.forEach(function(r) {\n r.abort();\n });\n };\n;\n function p(q) {\n q.onJSON = q.onError = q.onSuccess = null;\n JSBNG__clearTimeout(q._timer);\n if (((q.xhr && ((q.xhr.readyState < 4))))) {\n q.xhr.abort();\n q.xhr = null;\n }\n ;\n ;\n m._inflight = m._inflight.filter(function(r) {\n return ((((((r && ((r != q)))) && r.xhr)) && ((r.xhr.readyState < 4))));\n });\n };\n;\n l(m.prototype, {\n timeout: 60000,\n streamMode: true,\n prelude: /^for \\(;;\\);/,\n JSBNG__status: null,\n _eol: -1,\n _call: function(q) {\n if (this[q]) {\n this[q](this);\n }\n ;\n ;\n },\n _parseStatus: function() {\n var q;\n try {\n this.JSBNG__status = this.xhr.JSBNG__status;\n q = this.xhr.statusText;\n } catch (r) {\n if (((this.xhr.readyState >= 4))) {\n this.errorType = m.TRANSPORT_ERROR;\n this.errorText = r.message;\n }\n ;\n ;\n return;\n };\n ;\n if (((((this.JSBNG__status === 0)) && !(/^(file|ftp)/.test(this.uri))))) {\n this.errorType = m.TRANSPORT_ERROR;\n }\n else if (((((this.JSBNG__status >= 100)) && ((this.JSBNG__status < 200))))) {\n this.errorType = m.PROXY_ERROR;\n }\n else if (((((this.JSBNG__status >= 200)) && ((this.JSBNG__status < 300))))) {\n return;\n }\n else if (((((this.JSBNG__status >= 300)) && ((this.JSBNG__status < 400))))) {\n this.errorType = m.PROXY_ERROR;\n }\n else if (((((this.JSBNG__status >= 400)) && ((this.JSBNG__status < 500))))) {\n this.errorType = m.SERVER_ERROR;\n }\n else if (((((this.JSBNG__status >= 500)) && ((this.JSBNG__status < 600))))) {\n this.errorType = m.PROXY_ERROR;\n }\n else if (((this.JSBNG__status == 1223))) {\n return;\n }\n else if (((((this.JSBNG__status >= 12001)) && ((this.JSBNG__status <= 12156))))) {\n this.errorType = m.TRANSPORT_ERROR;\n }\n else {\n q = ((\"unrecognized status code: \" + this.JSBNG__status));\n this.errorType = m.ERROR;\n }\n \n \n \n \n \n \n \n ;\n ;\n if (!this.errorText) {\n this.errorText = q;\n }\n ;\n ;\n },\n _parseResponse: function() {\n var q, r = this.xhr.readyState;\n try {\n q = ((this.xhr.responseText || \"\"));\n } catch (s) {\n if (((r >= 4))) {\n this.errorType = m.ERROR;\n this.errorText = ((\"responseText not available - \" + s.message));\n }\n ;\n ;\n return;\n };\n ;\n while (this.xhr) {\n var t = ((this._eol + 1)), u = ((this.streamMode ? q.indexOf(\"\\u000a\", t) : q.length));\n if (((((u < 0)) && ((r == 4))))) {\n u = q.length;\n }\n ;\n ;\n if (((u <= this._eol))) {\n break;\n }\n ;\n ;\n var v = q;\n if (this.streamMode) {\n v = q.substr(t, ((u - t))).replace(/^\\s*|\\s*$/g, \"\");\n }\n ;\n ;\n if (((((t === 0)) && this.prelude))) {\n if (this.prelude.test(v)) {\n v = v.replace(this.prelude, \"\");\n }\n ;\n }\n ;\n ;\n this._eol = u;\n if (v) {\n try {\n this.json = JSON.parse(v);\n } catch (s) {\n var w = (((/(<body[\\S\\s]+?<\\/body>)/i).test(q) && RegExp.$1)), x = {\n message: s.message,\n char: t,\n excerpt: ((((((t === 0)) && w)) || v)).substr(512)\n };\n this.errorType = m.PARSE_ERROR;\n this.errorText = ((\"parse error - \" + JSON.stringify(x)));\n return;\n };\n ;\n g.applyWithGuard(this._call, this, [\"onJSON\",]);\n }\n ;\n ;\n };\n ;\n },\n _onReadyState: function() {\n var q = ((((this.xhr && this.xhr.readyState)) || 0));\n if (((((this.JSBNG__status == null)) && ((q >= 2))))) {\n this._parseStatus();\n }\n ;\n ;\n if (((!this.errorType && ((this.JSBNG__status != null))))) {\n if (((((((q == 3)) && this.streamMode)) || ((q == 4))))) {\n this._parseResponse();\n }\n ;\n }\n ;\n ;\n if (((this.errorType || ((q == 4))))) {\n this._time = ((JSBNG__Date.now() - this._sentAt));\n this._call(((!this.errorType ? \"onSuccess\" : \"onError\")));\n p(this);\n }\n ;\n ;\n },\n send: function(q) {\n this.xhr.JSBNG__onreadystatechange = function() {\n g.applyWithGuard(this._onReadyState, this, arguments);\n }.bind(this);\n var r = this.timeout;\n if (r) {\n this._timer = JSBNG__setTimeout((function() {\n this.errorType = m.TIMEOUT;\n this.errorText = \"timeout\";\n this._time = ((JSBNG__Date.now() - this._sentAt));\n this._call(\"onError\");\n p(this);\n }).bind(this), r, false);\n }\n ;\n ;\n m._inflight.push(this);\n if (((this.method == \"POST\"))) {\n this.xhr.setRequestHeader(\"Content-Type\", \"application/x-www-form-urlencoded\");\n }\n ;\n ;\n this._sentAt = JSBNG__Date.now();\n this.xhr.send(((q ? i.implodeQuery(q) : \"\")));\n },\n abort: function() {\n p(this);\n },\n toString: function() {\n var q = ((\"[AjaxRequest readyState=\" + this.xhr.readyState));\n if (this.errorType) {\n q += ((((((((\" errorType=\" + this.errorType)) + \" (\")) + this.errorText)) + \")\"));\n }\n ;\n ;\n return ((q + \"]\"));\n },\n toJSON: function() {\n var q = {\n json: this.json,\n JSBNG__status: this.JSBNG__status,\n errorType: this.errorType,\n errorText: this.errorText,\n time: this._time\n };\n if (this.errorType) {\n q.uri = this.uri;\n }\n ;\n ;\n {\n var fin46keys = ((window.top.JSBNG_Replay.forInKeys)((q))), fin46i = (0);\n var r;\n for (; (fin46i < fin46keys.length); (fin46i++)) {\n ((r) = (fin46keys[fin46i]));\n {\n if (((q[r] == null))) {\n delete q[r];\n }\n ;\n ;\n };\n };\n };\n ;\n return q;\n }\n });\n if (((window.JSBNG__addEventListener && j.firefox()))) {\n window.JSBNG__addEventListener(\"keydown\", function(JSBNG__event) {\n if (((JSBNG__event.keyCode === h.ESC))) {\n JSBNG__event.prevent();\n }\n ;\n ;\n }, false);\n }\n;\n;\n if (window.JSBNG__attachEvent) {\n window.JSBNG__attachEvent(\"JSBNG__onunload\", o);\n }\n;\n;\n e.exports = m;\n});\n__d(\"FBAjaxRequest\", [\"AjaxRequest\",\"copyProperties\",\"XHR\",], function(a, b, c, d, e, f) {\n var g = b(\"AjaxRequest\"), h = b(\"copyProperties\"), i = b(\"XHR\");\n function j(k, l, m) {\n m = h(i.getAsyncParams(k), m);\n var n = new g(k, l, m);\n n.streamMode = false;\n var o = n._call;\n n._call = function(p) {\n if (((((p == \"onJSON\")) && this.json))) {\n if (this.json.error) {\n this.errorType = g.SERVER_ERROR;\n this.errorText = ((\"AsyncResponse error: \" + this.json.error));\n }\n ;\n ;\n this.json = this.json.payload;\n }\n ;\n ;\n o.apply(this, arguments);\n };\n n.ajaxReqSend = n.send;\n n.send = function(p) {\n this.ajaxReqSend(h(p, m));\n };\n return n;\n };\n;\n e.exports = j;\n});\n__d(\"CallbackManagerController\", [\"ErrorUtils\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ErrorUtils\"), h = b(\"copyProperties\"), i = function(j) {\n this._pendingIDs = [];\n this._allRequests = [undefined,];\n this._callbackArgHandler = j;\n };\n h(i.prototype, {\n executeOrEnqueue: function(j, k, l) {\n l = ((l || {\n }));\n var m = this._attemptCallback(k, j, l);\n if (m) {\n return 0;\n }\n ;\n ;\n this._allRequests.push({\n fn: k,\n request: j,\n options: l\n });\n var n = ((this._allRequests.length - 1));\n this._pendingIDs.push(n);\n return n;\n },\n unsubscribe: function(j) {\n delete this._allRequests[j];\n },\n reset: function() {\n this._allRequests = [];\n },\n getRequest: function(j) {\n return this._allRequests[j];\n },\n runPossibleCallbacks: function() {\n var j = this._pendingIDs;\n this._pendingIDs = [];\n var k = [];\n j.forEach(function(l) {\n var m = this._allRequests[l];\n if (!m) {\n return;\n }\n ;\n ;\n if (this._callbackArgHandler(m.request, m.options)) {\n k.push(l);\n }\n else this._pendingIDs.push(l);\n ;\n ;\n }.bind(this));\n k.forEach(function(l) {\n var m = this._allRequests[l];\n delete this._allRequests[l];\n this._attemptCallback(m.fn, m.request, m.options);\n }.bind(this));\n },\n _attemptCallback: function(j, k, l) {\n var m = this._callbackArgHandler(k, l);\n if (m) {\n var n = {\n ids: k\n };\n g.applyWithGuard(j, n, m);\n }\n ;\n ;\n return !!m;\n }\n });\n e.exports = i;\n});\n__d(\"deferred\", [], function(a, b, c, d, e, f) {\n var g = 0, h = 1, i = 2, j = 4, k = \"callbacks\", l = \"errbacks\", m = \"cancelbacks\", n = \"completeCallbacks\", o = [], p = o.slice, q = o.unshift;\n function r(x, y) {\n return ((x ? p.call(x, y) : o));\n };\n;\n function s(x, y) {\n return ((((y < x.length)) ? r(x, y) : o));\n };\n;\n function t() {\n this.$Deferred0 = g;\n };\n;\n t.prototype.addCallback = function(x, y) {\n return this.$Deferred1(h, this.$Deferred2(k), x, y, s(arguments, 2));\n };\n t.prototype.removeCallback = function(x, y) {\n return this.$Deferred3(this.$Deferred2(k), x, y);\n };\n t.prototype.addCompleteCallback = function(x, y) {\n return this.$Deferred1(null, this.$Deferred2(n), x, y, s(arguments, 2));\n };\n t.prototype.removeCompleteCallback = function(x, y) {\n return this.$Deferred3(this.$Deferred2(n), x, y);\n };\n t.prototype.addErrback = function(x, y) {\n return this.$Deferred1(i, this.$Deferred2(l), x, y, s(arguments, 2));\n };\n t.prototype.removeErrback = function(x, y) {\n return this.$Deferred3(this.$Deferred2(l), x, y);\n };\n t.prototype.addCancelback = function(x, y) {\n return this.$Deferred1(j, this.$Deferred2(m), x, y, s(arguments, 2));\n };\n t.prototype.removeCancelback = function(x, y) {\n return this.$Deferred3(this.$Deferred2(m), x, y);\n };\n t.prototype.getStatus = function() {\n return this.$Deferred0;\n };\n t.prototype.setStatus = function(x) {\n var y;\n this.$Deferred0 = x;\n this.callbackArgs = r(arguments, 1);\n if (((x === i))) {\n y = l;\n }\n else if (((x === h))) {\n y = k;\n }\n else if (((x === j))) {\n y = m;\n }\n \n \n ;\n ;\n if (y) {\n this.$Deferred4(this[y], this.callbackArgs);\n }\n ;\n ;\n this.$Deferred4(this[n], this.callbackArgs);\n return this;\n };\n t.prototype.JSBNG__setTimeout = function(x) {\n if (this.timeout) {\n this.JSBNG__clearTimeout();\n }\n ;\n ;\n this.$Deferred5 = ((this.$Deferred5 || this.fail.bind(this)));\n this.timeout = window.JSBNG__setTimeout(this.$Deferred5, x);\n };\n t.prototype.JSBNG__clearTimeout = function() {\n window.JSBNG__clearTimeout(this.timeout);\n delete this.timeout;\n };\n t.prototype.succeed = function() {\n return this.$Deferred6(h, arguments);\n };\n t.prototype.fail = function() {\n return this.$Deferred6(i, arguments);\n };\n t.prototype.cancel = function() {\n delete this[k];\n delete this[l];\n return this.$Deferred6(j, arguments);\n };\n t.prototype.$Deferred6 = function(x, y) {\n q.call(y, x);\n return this.setStatus.apply(this, y);\n };\n t.prototype.$Deferred2 = function(x) {\n return ((this[x] || (this[x] = [])));\n };\n t.prototype.then = function(x, y, z, aa) {\n var ba = new t(), x, ca, da, ea = r(arguments, 0);\n if (((typeof ea[0] === \"function\"))) {\n x = ea.shift();\n }\n ;\n ;\n if (((typeof ea[0] === \"function\"))) {\n ca = ea.shift();\n }\n ;\n ;\n if (((typeof ea[0] === \"function\"))) {\n da = ea.shift();\n }\n ;\n ;\n var fa = ea.shift();\n if (x) {\n var ga = [this.$Deferred7,this,ba,\"succeed\",x,fa,].concat(ea);\n this.addCallback.apply(this, ga);\n }\n else this.addCallback(ba.succeed, ba);\n ;\n ;\n if (ca) {\n var ha = [this.$Deferred7,this,ba,\"fail\",ca,fa,].concat(ea);\n this.addErrback.apply(this, ha);\n }\n else this.addErrback(ba.fail, ba);\n ;\n ;\n if (da) {\n var ia = [this.$Deferred7,this,ba,\"cancel\",da,fa,].concat(ea);\n this.addCancelback.apply(this, ia);\n }\n else this.addCancelback(ba.cancel, ba);\n ;\n ;\n return ba;\n };\n t.prototype.$Deferred1 = function(x, y, z, aa, ba) {\n var ca = this.getStatus();\n if (((((!x && ((ca !== g)))) || ((ca === x))))) {\n z.apply(((aa || this)), ba.concat(this.callbackArgs));\n }\n else y.push(z, aa, ba);\n ;\n ;\n return this;\n };\n t.prototype.$Deferred3 = function(x, y, z) {\n for (var aa = 0; ((aa < x.length)); aa += 3) {\n if (((((x[aa] === y)) && ((!z || ((x[((aa + 1))] === z))))))) {\n x.splice(aa, 3);\n if (z) {\n break;\n }\n ;\n ;\n aa -= 3;\n }\n ;\n ;\n };\n ;\n return this;\n };\n t.prototype.pipe = function(x) {\n this.addCallback(x.succeed, x).addErrback(x.fail, x).addCancelback(x.cancel, x);\n };\n t.prototype.$Deferred4 = function(x, y) {\n for (var z = 0; ((z < ((x || o)).length)); z += 3) {\n x[z].apply(((x[((z + 1))] || this)), ((x[((z + 2))] || o)).concat(y));\n ;\n };\n ;\n };\n t.prototype.$Deferred7 = function(x, y, z, aa) {\n var ba = r(arguments, 4), ca = z.apply(aa, ba);\n if (((ca instanceof t))) {\n ca.pipe(x);\n }\n else x[y](ca);\n ;\n ;\n };\n {\n var fin47keys = ((window.top.JSBNG_Replay.forInKeys)((t))), fin47i = (0);\n var u;\n for (; (fin47i < fin47keys.length); (fin47i++)) {\n ((u) = (fin47keys[fin47i]));\n {\n if (((t.hasOwnProperty(u) && ((u !== \"_metaprototype\"))))) {\n w[u] = t[u];\n }\n ;\n ;\n };\n };\n };\n;\n var v = ((((t === null)) ? null : t.prototype));\n w.prototype = Object.create(v);\n w.prototype.constructor = w;\n w.__superConstructor__ = t;\n function w(x) {\n t.call(this);\n this.completed = 0;\n this.list = [];\n if (x) {\n x.forEach(this.waitFor, this);\n this.startWaiting();\n }\n ;\n ;\n };\n;\n w.prototype.startWaiting = function() {\n this.waiting = true;\n this.checkDeferreds();\n return this;\n };\n w.prototype.waitFor = function(x) {\n this.list.push(x);\n this.checkDeferreds();\n x.addCompleteCallback(this.deferredComplete, this);\n return this;\n };\n w.prototype.createWaitForDeferred = function() {\n var x = new t();\n this.waitFor(x);\n return x;\n };\n w.prototype.createWaitForCallback = function() {\n var x = this.createWaitForDeferred();\n return x.succeed.bind(x);\n };\n w.prototype.deferredComplete = function() {\n this.completed++;\n if (((this.completed === this.list.length))) {\n this.checkDeferreds();\n }\n ;\n ;\n };\n w.prototype.checkDeferreds = function() {\n if (((!this.waiting || ((this.completed !== this.list.length))))) {\n return;\n }\n ;\n ;\n var x = false, y = false, z = [g,];\n for (var aa = 0, ba = this.list.length; ((aa < ba)); aa++) {\n var ca = this.list[aa];\n z.push([ca,].concat(ca.callbackArgs));\n if (((ca.getStatus() === i))) {\n x = true;\n }\n else if (((ca.getStatus() === j))) {\n y = true;\n }\n \n ;\n ;\n };\n ;\n if (x) {\n z[0] = i;\n this.fail.apply(this, z);\n }\n else if (y) {\n z[0] = j;\n this.cancel.apply(this, z);\n }\n else {\n z[0] = h;\n this.succeed.apply(this, z);\n }\n \n ;\n ;\n };\n f.Deferred = t;\n f.DeferredList = w;\n f.Deferred.toArray = r;\n f.Deferred.STATUS_UNKNOWN = g;\n f.Deferred.STATUS_SUCCEEDED = h;\n f.Deferred.STATUS_CANCELED = j;\n f.Deferred.STATUS_FAILED = i;\n});\n__d(\"KeyedCallbackManager\", [\"CallbackManagerController\",\"deferred\",\"ErrorUtils\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"CallbackManagerController\"), h = b(\"deferred\").Deferred, i = b(\"ErrorUtils\"), j = b(\"copyProperties\"), k = function() {\n this._resources = {\n };\n this._controller = new g(this._constructCallbackArg.bind(this));\n };\n j(k.prototype, {\n executeOrEnqueue: function(l, m) {\n if (!((l instanceof Array))) {\n var n = l, o = m;\n l = [l,];\n m = function(p) {\n o(p[n]);\n };\n }\n ;\n ;\n l = l.filter(function(p) {\n var q = ((((p !== null)) && ((p !== undefined))));\n if (!q) {\n i.applyWithGuard(function() {\n throw new Error(((((\"KeyedCallbackManager.executeOrEnqueue: key \" + JSON.stringify(p))) + \" is invalid\")));\n });\n }\n ;\n ;\n return q;\n });\n return this._controller.executeOrEnqueue(l, m);\n },\n deferredExecuteOrEnqueue: function(l) {\n var m = new h();\n this.executeOrEnqueue(l, m.succeed.bind(m));\n return m;\n },\n unsubscribe: function(l) {\n this._controller.unsubscribe(l);\n },\n reset: function() {\n this._controller.reset();\n this._resources = {\n };\n },\n getUnavailableResources: function(l) {\n var m = this._controller.getRequest(l), n = [];\n if (m) {\n n = m.request.filter(function(o) {\n return !this._resources[o];\n }.bind(this));\n }\n ;\n ;\n return n;\n },\n getUnavailableResourcesFromRequest: function(l) {\n var m = ((Array.isArray(l) ? l : [l,]));\n return m.filter(function(n) {\n if (((((n !== null)) && ((n !== undefined))))) {\n return !this._resources[n];\n }\n ;\n ;\n }, this);\n },\n addResourcesAndExecute: function(l) {\n j(this._resources, l);\n this._controller.runPossibleCallbacks();\n },\n setResource: function(l, m) {\n this._resources[l] = m;\n this._controller.runPossibleCallbacks();\n },\n getResource: function(l) {\n return this._resources[l];\n },\n getAllResources: function() {\n return this._resources;\n },\n dumpResources: function() {\n var l = {\n };\n {\n var fin48keys = ((window.top.JSBNG_Replay.forInKeys)((this._resources))), fin48i = (0);\n var m;\n for (; (fin48i < fin48keys.length); (fin48i++)) {\n ((m) = (fin48keys[fin48i]));\n {\n var n = this._resources[m];\n if (((typeof n === \"object\"))) {\n n = j({\n }, n);\n }\n ;\n ;\n l[m] = n;\n };\n };\n };\n ;\n return l;\n },\n _constructCallbackArg: function(l) {\n var m = {\n };\n for (var n = 0; ((n < l.length)); n++) {\n var o = l[n], p = this._resources[o];\n if (((typeof p == \"undefined\"))) {\n return false;\n }\n ;\n ;\n m[o] = p;\n };\n ;\n return [m,];\n }\n });\n e.exports = k;\n});\n__d(\"BaseAsyncLoader\", [\"KeyedCallbackManager\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"KeyedCallbackManager\"), h = b(\"copyProperties\"), i = {\n };\n function j(l, m, n) {\n var o = new g(), p = false, q = [];\n function r() {\n if (((!q.length || p))) {\n return;\n }\n ;\n ;\n p = true;\n t.defer();\n };\n ;\n function s(w) {\n p = false;\n w.forEach(o.unsubscribe.bind(o));\n r();\n };\n ;\n function t() {\n var w = {\n }, x = [];\n q = q.filter(function(z) {\n var aa = o.getUnavailableResources(z);\n if (aa.length) {\n aa.forEach(function(ba) {\n w[ba] = true;\n });\n x.push(z);\n return true;\n }\n ;\n ;\n return false;\n });\n var y = Object.keys(w);\n if (y.length) {\n n(l, y, x, u.curry(x), v.curry(x));\n }\n else p = false;\n ;\n ;\n };\n ;\n function u(w, x) {\n var y = ((x.payload[m] || x.payload));\n o.addResourcesAndExecute(y);\n s(w);\n };\n ;\n function v(w) {\n s(w);\n };\n ;\n return {\n get: function(w, x) {\n var y = o.executeOrEnqueue(w, x), z = o.getUnavailableResources(y);\n if (z.length) {\n q.push(y);\n r();\n }\n ;\n ;\n },\n getCachedKeys: function() {\n return Object.keys(o.getAllResources());\n },\n getNow: function(w) {\n return ((o.getResource(w) || null));\n },\n set: function(w) {\n o.addResourcesAndExecute(w);\n }\n };\n };\n;\n function k(l, m) {\n throw (\"BaseAsyncLoader can't be instantiated\");\n };\n;\n h(k.prototype, {\n _getLoader: function() {\n if (!i[this._endpoint]) {\n i[this._endpoint] = j(this._endpoint, this._type, this.send);\n }\n ;\n ;\n return i[this._endpoint];\n },\n get: function(l, m) {\n return this._getLoader().get(l, m);\n },\n getCachedKeys: function() {\n return this._getLoader().getCachedKeys();\n },\n getNow: function(l) {\n return this._getLoader().getNow(l);\n },\n reset: function() {\n i[this._endpoint] = null;\n },\n set: function(l) {\n this._getLoader().set(l);\n }\n });\n e.exports = k;\n});\n__d(\"AjaxLoader\", [\"copyProperties\",\"FBAjaxRequest\",\"BaseAsyncLoader\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"FBAjaxRequest\"), i = b(\"BaseAsyncLoader\");\n function j(k, l) {\n this._endpoint = k;\n this._type = l;\n };\n;\n g(j.prototype, i.prototype);\n j.prototype.send = function(k, l, m, n, o) {\n var p = new h(\"GET\", k, {\n ids: l\n });\n p.onJSON = function(q) {\n n({\n payload: q.json\n });\n };\n p.onError = o;\n p.send();\n };\n e.exports = j;\n});\n__d(\"ChannelConstants\", [], function(a, b, c, d, e, f) {\n var g = \"channel/\", h = {\n ON_SHUTDOWN: ((g + \"shutdown\")),\n ON_INVALID_HISTORY: ((g + \"invalid_history\")),\n ON_CONFIG: ((g + \"config\")),\n ON_ENTER_STATE: ((g + \"enter_state\")),\n ON_EXIT_STATE: ((g + \"exit_state\")),\n OK: \"ok\",\n ERROR: \"error\",\n ERROR_MAX: \"error_max\",\n ERROR_MISSING: \"error_missing\",\n ERROR_MSG_TYPE: \"error_msg_type\",\n ERROR_SHUTDOWN: \"error_shutdown\",\n ERROR_STALE: \"error_stale\",\n SYS_OWNER: \"sys_owner\",\n SYS_NONOWNER: \"sys_nonowner\",\n SYS_ONLINE: \"sys_online\",\n SYS_OFFLINE: \"sys_offline\",\n SYS_TIMETRAVEL: \"sys_timetravel\",\n HINT_AUTH: \"shutdown auth\",\n HINT_CONN: \"shutdown conn\",\n HINT_DISABLED: \"shutdown disabled\",\n HINT_INVALID_STATE: \"shutdown invalid state\",\n HINT_MAINT: \"shutdown maint\",\n HINT_UNSUPPORTED: \"shutdown unsupported\",\n reason_Unknown: 0,\n reason_AsyncError: 1,\n reason_TooLong: 2,\n reason_Refresh: 3,\n reason_RefreshDelay: 4,\n reason_UIRestart: 5,\n reason_NeedSeq: 6,\n reason_PrevFailed: 7,\n reason_IFrameLoadGiveUp: 8,\n reason_IFrameLoadRetry: 9,\n reason_IFrameLoadRetryWorked: 10,\n reason_PageTransitionRetry: 11,\n reason_IFrameLoadMaxSubdomain: 12,\n reason_NoChannelInfo: 13,\n reason_NoChannelHost: 14,\n CAPABILITY_VOIP: 8,\n getArbiterType: function(i) {\n return ((((g + \"message:\")) + i));\n }\n };\n e.exports = h;\n});\n__d(\"ShortProfiles\", [\"ArbiterMixin\",\"AjaxLoader\",\"Env\",\"FBAjaxRequest\",\"JSLogger\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"AjaxLoader\"), i = b(\"Env\"), j = b(\"FBAjaxRequest\"), k = b(\"JSLogger\"), l = b(\"copyProperties\"), m = \"/ajax/chat/user_info.php\", n = \"/ajax/chat/user_info_all.php\", o = new h(m, \"profiles\"), p = false, q = k.create(\"short_profiles\");\n function r() {\n if (!p) {\n q.log(\"fetch_all\");\n p = true;\n var u = new j(\"GET\", n, {\n viewer: i.user\n });\n u.onJSON = function(v) {\n o.set(v.json);\n t.inform(\"updated\");\n };\n u.send();\n }\n ;\n ;\n };\n;\n function s(u) {\n return JSON.parse(JSON.stringify(u));\n };\n;\n var t = {\n };\n l(t, g, {\n get: function(u, v) {\n this.getMulti([u,], function(w) {\n v(w[u], u);\n });\n },\n getMulti: function(u, v) {\n function w(x) {\n v(s(x));\n };\n ;\n o.get(u, w);\n },\n getNow: function(u) {\n return s(((o.getNow(u) || null)));\n },\n getNowUnsafe: function(u) {\n return ((o.getNow(u) || null));\n },\n getCachedProfileIDs: function() {\n return o.getCachedKeys();\n },\n hasAll: function() {\n return p;\n },\n fetchAll: function() {\n r();\n },\n set: function(u, v) {\n var w = {\n };\n w[u] = v;\n this.setMulti(w);\n },\n setMulti: function(u) {\n o.set(s(u));\n }\n });\n e.exports = t;\n});\n__d(\"ReactCurrentOwner\", [], function(a, b, c, d, e, f) {\n var g = {\n current: null\n };\n e.exports = g;\n});\n__d(\"CSSProperty\", [], function(a, b, c, d, e, f) {\n var g = {\n fillOpacity: true,\n fontWeight: true,\n opacity: true,\n orphans: true,\n zIndex: true,\n zoom: true\n }, h = {\n background: {\n backgroundImage: true,\n backgroundPosition: true,\n backgroundRepeat: true,\n backgroundColor: true\n },\n border: {\n borderWidth: true,\n borderStyle: true,\n borderColor: true\n },\n borderBottom: {\n borderBottomWidth: true,\n borderBottomStyle: true,\n borderBottomColor: true\n },\n borderLeft: {\n borderLeftWidth: true,\n borderLeftStyle: true,\n borderLeftColor: true\n },\n borderRight: {\n borderRightWidth: true,\n borderRightStyle: true,\n borderRightColor: true\n },\n borderTop: {\n borderTopWidth: true,\n borderTopStyle: true,\n borderTopColor: true\n },\n font: {\n fontStyle: true,\n fontVariant: true,\n fontWeight: true,\n fontSize: true,\n lineHeight: true,\n fontFamily: true\n }\n }, i = {\n isUnitlessNumber: g,\n shorthandPropertyExpansions: h\n };\n e.exports = i;\n});\n__d(\"dangerousStyleValue\", [\"CSSProperty\",], function(a, b, c, d, e, f) {\n var g = b(\"CSSProperty\");\n function h(i, j) {\n var k = ((((((j == null)) || ((typeof j === \"boolean\")))) || ((j === \"\"))));\n if (k) {\n return \"\";\n }\n ;\n ;\n var l = isNaN(j);\n if (((((l || ((j === 0)))) || g.isUnitlessNumber[i]))) {\n return ((\"\" + j));\n }\n ;\n ;\n return ((j + \"px\"));\n };\n;\n e.exports = h;\n});\n__d(\"throwIf\", [], function(a, b, c, d, e, f) {\n var g = function(h, i) {\n if (h) {\n throw new Error(i);\n }\n ;\n ;\n };\n e.exports = g;\n});\n__d(\"escapeTextForBrowser\", [\"throwIf\",], function(a, b, c, d, e, f) {\n var g = b(\"throwIf\"), h, i = {\n \"&\": \"&\",\n \"\\u003E\": \">\",\n \"\\u003C\": \"<\",\n \"\\\"\": \""\",\n \"'\": \"'\",\n \"/\": \"/\"\n };\n function j(l) {\n return i[l];\n };\n;\n var k = function(l) {\n var m = typeof l, n = ((m === \"object\"));\n if (((((l === \"\")) || n))) {\n return \"\";\n }\n else if (((m === \"string\"))) {\n return l.replace(/[&><\"'\\/]/g, j);\n }\n else return ((\"\" + l)).replace(/[&><\"'\\/]/g, j)\n \n ;\n };\n e.exports = k;\n});\n__d(\"memoizeStringOnly\", [], function(a, b, c, d, e, f) {\n function g(h) {\n var i = {\n };\n return function(j) {\n if (i.hasOwnProperty(j)) {\n return i[j];\n }\n else return i[j] = h.call(this, j)\n ;\n };\n };\n;\n e.exports = g;\n});\n__d(\"CSSPropertyOperations\", [\"CSSProperty\",\"dangerousStyleValue\",\"escapeTextForBrowser\",\"hyphenate\",\"memoizeStringOnly\",], function(a, b, c, d, e, f) {\n var g = b(\"CSSProperty\"), h = b(\"dangerousStyleValue\"), i = b(\"escapeTextForBrowser\"), j = b(\"hyphenate\"), k = b(\"memoizeStringOnly\"), l = k(function(n) {\n return i(j(n));\n }), m = {\n createMarkupForStyles: function(n) {\n var o = \"\";\n {\n var fin49keys = ((window.top.JSBNG_Replay.forInKeys)((n))), fin49i = (0);\n var p;\n for (; (fin49i < fin49keys.length); (fin49i++)) {\n ((p) = (fin49keys[fin49i]));\n {\n if (!n.hasOwnProperty(p)) {\n continue;\n }\n ;\n ;\n var q = n[p];\n if (((q != null))) {\n o += ((l(p) + \":\"));\n o += ((h(p, q) + \";\"));\n }\n ;\n ;\n };\n };\n };\n ;\n return ((o || null));\n },\n setValueForStyles: function(n, o) {\n var p = n.style;\n {\n var fin50keys = ((window.top.JSBNG_Replay.forInKeys)((o))), fin50i = (0);\n var q;\n for (; (fin50i < fin50keys.length); (fin50i++)) {\n ((q) = (fin50keys[fin50i]));\n {\n if (!o.hasOwnProperty(q)) {\n continue;\n }\n ;\n ;\n var r = h(q, o[q]);\n if (r) {\n p[q] = r;\n }\n else {\n var s = g.shorthandPropertyExpansions[q];\n if (s) {\n {\n var fin51keys = ((window.top.JSBNG_Replay.forInKeys)((s))), fin51i = (0);\n var t;\n for (; (fin51i < fin51keys.length); (fin51i++)) {\n ((t) = (fin51keys[fin51i]));\n {\n p[t] = \"\";\n ;\n };\n };\n };\n ;\n }\n else p[q] = \"\";\n ;\n ;\n }\n ;\n ;\n };\n };\n };\n ;\n }\n };\n e.exports = m;\n});\n__d(\"ExecutionEnvironment\", [], function(a, b, c, d, e, f) {\n var g = ((typeof window !== \"undefined\")), h = {\n canUseDOM: g,\n canUseWorkers: ((typeof JSBNG__Worker !== \"undefined\")),\n isInWorker: !g,\n global: new Function(\"return this;\")()\n };\n e.exports = h;\n});\n__d(\"Danger\", [\"ExecutionEnvironment\",\"throwIf\",], function(a, b, c, d, e, f) {\n var g = b(\"ExecutionEnvironment\"), h = b(\"throwIf\"), i, j, k, l, m = ((g.canUseDOM ? JSBNG__document.createElement(\"div\") : null)), n = {\n option: [1,\"\\u003Cselect multiple=\\\"true\\\"\\u003E\",\"\\u003C/select\\u003E\",],\n legend: [1,\"\\u003Cfieldset\\u003E\",\"\\u003C/fieldset\\u003E\",],\n area: [1,\"\\u003Cmap\\u003E\",\"\\u003C/map\\u003E\",],\n param: [1,\"\\u003Cobject\\u003E\",\"\\u003C/object\\u003E\",],\n thead: [1,\"\\u003Ctable\\u003E\",\"\\u003C/table\\u003E\",],\n tr: [2,\"\\u003Ctable\\u003E\\u003Ctbody\\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 td: [3,\"\\u003Ctable\\u003E\\u003Ctbody\\u003E\\u003Ctr\\u003E\",\"\\u003C/tr\\u003E\\u003C/tbody\\u003E\\u003C/table\\u003E\",]\n };\n n.optgroup = n.option;\n n.tbody = n.thead;\n n.tfoot = n.thead;\n n.colgroup = n.thead;\n n.caption = n.thead;\n n.th = n.td;\n var o = [1,\"?\\u003Cdiv\\u003E\",\"\\u003C/div\\u003E\",];\n if (m) {\n {\n var fin52keys = ((window.top.JSBNG_Replay.forInKeys)((n))), fin52i = (0);\n var p;\n for (; (fin52i < fin52keys.length); (fin52i++)) {\n ((p) = (fin52keys[fin52i]));\n {\n if (!n.hasOwnProperty(p)) {\n continue;\n }\n ;\n ;\n m.innerHTML = ((((((((\"\\u003C\" + p)) + \"\\u003E\\u003C/\")) + p)) + \"\\u003E\"));\n if (m.firstChild) {\n n[p] = null;\n }\n ;\n ;\n };\n };\n };\n ;\n m.innerHTML = \"\\u003Clink /\\u003E\";\n if (m.firstChild) {\n o = null;\n }\n ;\n ;\n }\n;\n;\n function q(w) {\n var x = m, y = w.substring(1, w.indexOf(\" \")), z = ((n[y.toLowerCase()] || o));\n if (z) {\n x.innerHTML = ((((z[1] + w)) + z[2]));\n var aa = z[0];\n while (aa--) {\n x = x.lastChild;\n ;\n };\n ;\n }\n else x.innerHTML = w;\n ;\n ;\n return x.childNodes;\n };\n;\n function r(w, x, y) {\n if (y) {\n if (y.nextSibling) {\n return w.insertBefore(x, y.nextSibling);\n }\n else return w.appendChild(x)\n ;\n }\n else return w.insertBefore(x, w.firstChild)\n ;\n };\n;\n function s(w, x, y) {\n var z, aa = x.length;\n for (var ba = 0; ((ba < aa)); ba++) {\n z = r(w, x[0], ((z || y)));\n ;\n };\n ;\n };\n;\n function t(w, x, y) {\n var z = q(x), aa = ((y ? w.childNodes[((y - 1))] : null));\n s(w, z, aa);\n };\n;\n function u(w, x) {\n var y = w.parentNode, z = q(x);\n y.replaceChild(z[0], w);\n };\n;\n var v = {\n dangerouslyInsertMarkupAt: t,\n dangerouslyReplaceNodeWithMarkup: u\n };\n e.exports = v;\n});\n__d(\"insertNodeAt\", [], function(a, b, c, d, e, f) {\n function g(h, i, j) {\n var k = h.childNodes, l = h.childNodes[j];\n if (((l === i))) {\n return i;\n }\n ;\n ;\n if (i.parentNode) {\n i.parentNode.removeChild(i);\n }\n ;\n ;\n if (((j >= k.length))) {\n h.appendChild(i);\n }\n else h.insertBefore(i, k[j]);\n ;\n ;\n return i;\n };\n;\n e.exports = g;\n});\n__d(\"keyOf\", [], function(a, b, c, d, e, f) {\n var g = function(h) {\n var i;\n {\n var fin53keys = ((window.top.JSBNG_Replay.forInKeys)((h))), fin53i = (0);\n (0);\n for (; (fin53i < fin53keys.length); (fin53i++)) {\n ((i) = (fin53keys[fin53i]));\n {\n if (!h.hasOwnProperty(i)) {\n continue;\n }\n ;\n ;\n return i;\n };\n };\n };\n ;\n return null;\n };\n e.exports = g;\n});\n__d(\"DOMChildrenOperations\", [\"Danger\",\"insertNodeAt\",\"keyOf\",\"throwIf\",], function(a, b, c, d, e, f) {\n var g = b(\"Danger\"), h = b(\"insertNodeAt\"), i = b(\"keyOf\"), j = b(\"throwIf\"), k, l = i({\n moveFrom: null\n }), m = i({\n insertMarkup: null\n }), n = i({\n removeAt: null\n }), o = function(t, u) {\n var v, w, x;\n for (var y = 0; ((y < u.length)); y++) {\n w = u[y];\n if (((l in w))) {\n v = ((v || []));\n x = w.moveFrom;\n v[x] = t.childNodes[x];\n }\n else if (((n in w))) {\n v = ((v || []));\n x = w.removeAt;\n v[x] = t.childNodes[x];\n }\n \n ;\n ;\n };\n ;\n return v;\n }, p = function(t, u) {\n for (var v = 0; ((v < u.length)); v++) {\n var w = u[v];\n if (w) {\n t.removeChild(u[v]);\n }\n ;\n ;\n };\n ;\n }, q = function(t, u, v) {\n var w, x, y = -1, z;\n for (var aa = 0; ((aa < u.length)); aa++) {\n z = u[aa];\n if (((l in z))) {\n w = v[z.moveFrom];\n x = z.finalIndex;\n h(t, w, x);\n }\n else if (!((n in z))) {\n if (((m in z))) {\n x = z.finalIndex;\n var ba = z.insertMarkup;\n g.dangerouslyInsertMarkupAt(t, ba, x);\n }\n ;\n }\n \n ;\n ;\n };\n ;\n }, r = function(t, u) {\n var v = o(t, u);\n if (v) {\n p(t, v);\n }\n ;\n ;\n q(t, u, v);\n }, s = {\n dangerouslyReplaceNodeWithMarkup: g.dangerouslyReplaceNodeWithMarkup,\n manageChildren: r\n };\n e.exports = s;\n});\n__d(\"DOMProperty\", [\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"invariant\"), h = {\n MUST_USE_ATTRIBUTE: 1,\n MUST_USE_PROPERTY: 2,\n HAS_BOOLEAN_VALUE: 4,\n HAS_SIDE_EFFECTS: 8,\n injectDOMPropertyConfig: function(k) {\n var l = ((k.Properties || {\n })), m = ((k.DOMAttributeNames || {\n })), n = ((k.DOMPropertyNames || {\n })), o = ((k.DOMMutationMethods || {\n }));\n if (k.isCustomAttribute) {\n j._isCustomAttributeFunctions.push(k.isCustomAttribute);\n }\n ;\n ;\n {\n var fin54keys = ((window.top.JSBNG_Replay.forInKeys)((l))), fin54i = (0);\n var p;\n for (; (fin54i < fin54keys.length); (fin54i++)) {\n ((p) = (fin54keys[fin54i]));\n {\n g(!j.isStandardName[p]);\n j.isStandardName[p] = true;\n j.getAttributeName[p] = ((m[p] || p.toLowerCase()));\n j.getPropertyName[p] = ((n[p] || p));\n var q = o[p];\n if (q) {\n j.getMutationMethod[p] = q;\n }\n ;\n ;\n var r = l[p];\n j.mustUseAttribute[p] = ((r & h.MUST_USE_ATTRIBUTE));\n j.mustUseProperty[p] = ((r & h.MUST_USE_PROPERTY));\n j.hasBooleanValue[p] = ((r & h.HAS_BOOLEAN_VALUE));\n j.hasSideEffects[p] = ((r & h.HAS_SIDE_EFFECTS));\n g(((!j.mustUseAttribute[p] || !j.mustUseProperty[p])));\n g(((j.mustUseProperty[p] || !j.hasSideEffects[p])));\n };\n };\n };\n ;\n }\n }, i = {\n }, j = {\n isStandardName: {\n },\n getAttributeName: {\n },\n getPropertyName: {\n },\n getMutationMethod: {\n },\n mustUseAttribute: {\n },\n mustUseProperty: {\n },\n hasBooleanValue: {\n },\n hasSideEffects: {\n },\n _isCustomAttributeFunctions: [],\n isCustomAttribute: function(k) {\n return j._isCustomAttributeFunctions.some(function(l) {\n return l.call(null, k);\n });\n },\n getDefaultValueForProperty: function(k, l) {\n var m = i[k], n;\n if (!m) {\n i[k] = m = {\n };\n }\n ;\n ;\n if (!((l in m))) {\n n = JSBNG__document.createElement(k);\n m[l] = n[l];\n }\n ;\n ;\n return m[l];\n },\n injection: h\n };\n e.exports = j;\n});\n__d(\"DOMPropertyOperations\", [\"DOMProperty\",\"escapeTextForBrowser\",\"memoizeStringOnly\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMProperty\"), h = b(\"escapeTextForBrowser\"), i = b(\"memoizeStringOnly\"), j = i(function(l) {\n return ((h(l) + \"=\\\"\"));\n }), k = {\n createMarkupForProperty: function(l, m) {\n if (g.isStandardName[l]) {\n if (((((m == null)) || ((g.hasBooleanValue[l] && !m))))) {\n return \"\";\n }\n ;\n ;\n var n = g.getAttributeName[l];\n return ((((j(n) + h(m))) + \"\\\"\"));\n }\n else if (g.isCustomAttribute(l)) {\n if (((m == null))) {\n return \"\";\n }\n ;\n ;\n return ((((j(l) + h(m))) + \"\\\"\"));\n }\n else return null\n \n ;\n },\n setValueForProperty: function(l, m, n) {\n if (g.isStandardName[m]) {\n var o = g.getMutationMethod[m];\n if (o) {\n o(l, n);\n }\n else if (g.mustUseAttribute[m]) {\n if (((g.hasBooleanValue[m] && !n))) {\n l.removeAttribute(g.getAttributeName[m]);\n }\n else l.setAttribute(g.getAttributeName[m], n);\n ;\n ;\n }\n else {\n var p = g.getPropertyName[m];\n if (((!g.hasSideEffects[m] || ((l[p] !== n))))) {\n l[p] = n;\n }\n ;\n ;\n }\n \n ;\n ;\n }\n else if (g.isCustomAttribute(m)) {\n l.setAttribute(m, n);\n }\n \n ;\n ;\n },\n deleteValueForProperty: function(l, m) {\n if (g.isStandardName[m]) {\n var n = g.getMutationMethod[m];\n if (n) {\n n(l, undefined);\n }\n else if (g.mustUseAttribute[m]) {\n l.removeAttribute(g.getAttributeName[m]);\n }\n else {\n var o = g.getPropertyName[m];\n l[o] = g.getDefaultValueForProperty(l.nodeName, m);\n }\n \n ;\n ;\n }\n else if (g.isCustomAttribute(m)) {\n l.removeAttribute(m);\n }\n \n ;\n ;\n }\n };\n e.exports = k;\n});\n__d(\"keyMirror\", [\"throwIf\",], function(a, b, c, d, e, f) {\n var g = b(\"throwIf\"), h = \"NOT_OBJECT_ERROR\", i = function(j) {\n var k = {\n }, l;\n g(((!((j instanceof Object)) || Array.isArray(j))), h);\n {\n var fin55keys = ((window.top.JSBNG_Replay.forInKeys)((j))), fin55i = (0);\n (0);\n for (; (fin55i < fin55keys.length); (fin55i++)) {\n ((l) = (fin55keys[fin55i]));\n {\n if (!j.hasOwnProperty(l)) {\n continue;\n }\n ;\n ;\n k[l] = l;\n };\n };\n };\n ;\n return k;\n };\n e.exports = i;\n});\n__d(\"EventConstants\", [\"keyMirror\",], function(a, b, c, d, e, f) {\n var g = b(\"keyMirror\"), h = g({\n bubbled: null,\n captured: null\n }), i = g({\n topBlur: null,\n topChange: null,\n topClick: null,\n topDOMCharacterDataModified: null,\n topDoubleClick: null,\n topDrag: null,\n topDragEnd: null,\n topDragEnter: null,\n topDragExit: null,\n topDragLeave: null,\n topDragOver: null,\n topDragStart: null,\n topDrop: null,\n topFocus: null,\n topInput: null,\n topKeyDown: null,\n topKeyPress: null,\n topKeyUp: null,\n topMouseDown: null,\n topMouseMove: null,\n topMouseOut: null,\n topMouseOver: null,\n topMouseUp: null,\n topScroll: null,\n topSelectionChange: null,\n topSubmit: null,\n topTouchCancel: null,\n topTouchEnd: null,\n topTouchMove: null,\n topTouchStart: null,\n topWheel: null\n }), j = {\n topLevelTypes: i,\n PropagationPhases: h\n };\n e.exports = j;\n});\n__d(\"EventListener\", [\"JSBNG__Event\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = {\n listen: g.listen,\n capture: function(i, j, k) {\n if (!i.JSBNG__addEventListener) {\n return;\n }\n else i.JSBNG__addEventListener(j, k, true);\n ;\n ;\n }\n };\n e.exports = h;\n});\n__d(\"CallbackRegistry\", [], function(a, b, c, d, e, f) {\n var g = {\n }, h = {\n putListener: function(i, j, k) {\n var l = ((g[j] || (g[j] = {\n })));\n l[i] = k;\n },\n getListener: function(i, j) {\n var k = g[j];\n return ((k && k[i]));\n },\n deleteListener: function(i, j) {\n var k = g[j];\n if (k) {\n delete k[i];\n }\n ;\n ;\n },\n deleteAllListeners: function(i) {\n {\n var fin56keys = ((window.top.JSBNG_Replay.forInKeys)((g))), fin56i = (0);\n var j;\n for (; (fin56i < fin56keys.length); (fin56i++)) {\n ((j) = (fin56keys[fin56i]));\n {\n delete g[j][i];\n ;\n };\n };\n };\n ;\n },\n __purge: function() {\n g = {\n };\n }\n };\n e.exports = h;\n});\n__d(\"EventPluginRegistry\", [\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"invariant\"), h = null, i = {\n };\n function j() {\n if (!h) {\n return;\n }\n ;\n ;\n {\n var fin57keys = ((window.top.JSBNG_Replay.forInKeys)((i))), fin57i = (0);\n var n;\n for (; (fin57i < fin57keys.length); (fin57i++)) {\n ((n) = (fin57keys[fin57i]));\n {\n var o = i[n], p = h.indexOf(n);\n g(((p > -1)));\n if (m.plugins[p]) {\n continue;\n }\n ;\n ;\n g(o.extractEvents);\n m.plugins[p] = o;\n var q = o.eventTypes;\n {\n var fin58keys = ((window.top.JSBNG_Replay.forInKeys)((q))), fin58i = (0);\n var r;\n for (; (fin58i < fin58keys.length); (fin58i++)) {\n ((r) = (fin58keys[fin58i]));\n {\n g(k(q[r], o));\n ;\n };\n };\n };\n ;\n };\n };\n };\n ;\n };\n;\n function k(n, o) {\n var p = n.phasedRegistrationNames;\n if (p) {\n {\n var fin59keys = ((window.top.JSBNG_Replay.forInKeys)((p))), fin59i = (0);\n var q;\n for (; (fin59i < fin59keys.length); (fin59i++)) {\n ((q) = (fin59keys[fin59i]));\n {\n if (p.hasOwnProperty(q)) {\n var r = p[q];\n l(r, o);\n }\n ;\n ;\n };\n };\n };\n ;\n return true;\n }\n else if (n.registrationName) {\n l(n.registrationName, o);\n return true;\n }\n \n ;\n ;\n return false;\n };\n;\n function l(n, o) {\n g(!m.registrationNames[n]);\n m.registrationNames[n] = o;\n m.registrationNamesKeys.push(n);\n };\n;\n var m = {\n plugins: [],\n registrationNames: {\n },\n registrationNamesKeys: [],\n injectEventPluginOrder: function(n) {\n g(!h);\n h = Array.prototype.slice.call(n);\n j();\n },\n injectEventPluginsByName: function(n) {\n var o = false;\n {\n var fin60keys = ((window.top.JSBNG_Replay.forInKeys)((n))), fin60i = (0);\n var p;\n for (; (fin60i < fin60keys.length); (fin60i++)) {\n ((p) = (fin60keys[fin60i]));\n {\n if (!n.hasOwnProperty(p)) {\n continue;\n }\n ;\n ;\n var q = n[p];\n if (((i[p] !== q))) {\n g(!i[p]);\n i[p] = q;\n o = true;\n }\n ;\n ;\n };\n };\n };\n ;\n if (o) {\n j();\n }\n ;\n ;\n },\n getPluginModuleForEvent: function(JSBNG__event) {\n var n = JSBNG__event.dispatchConfig;\n if (n.registrationName) {\n return ((m.registrationNames[n.registrationName] || null));\n }\n ;\n ;\n {\n var fin61keys = ((window.top.JSBNG_Replay.forInKeys)((n.phasedRegistrationNames))), fin61i = (0);\n var o;\n for (; (fin61i < fin61keys.length); (fin61i++)) {\n ((o) = (fin61keys[fin61i]));\n {\n if (!n.phasedRegistrationNames.hasOwnProperty(o)) {\n continue;\n }\n ;\n ;\n var p = m.registrationNames[n.phasedRegistrationNames[o]];\n if (p) {\n return p;\n }\n ;\n ;\n };\n };\n };\n ;\n return null;\n },\n _resetEventPlugins: function() {\n h = null;\n {\n var fin62keys = ((window.top.JSBNG_Replay.forInKeys)((i))), fin62i = (0);\n var n;\n for (; (fin62i < fin62keys.length); (fin62i++)) {\n ((n) = (fin62keys[fin62i]));\n {\n if (i.hasOwnProperty(n)) {\n delete i[n];\n }\n ;\n ;\n };\n };\n };\n ;\n m.plugins.length = 0;\n var o = m.registrationNames;\n {\n var fin63keys = ((window.top.JSBNG_Replay.forInKeys)((o))), fin63i = (0);\n var p;\n for (; (fin63i < fin63keys.length); (fin63i++)) {\n ((p) = (fin63keys[fin63i]));\n {\n if (o.hasOwnProperty(p)) {\n delete o[p];\n }\n ;\n ;\n };\n };\n };\n ;\n m.registrationNamesKeys.length = 0;\n }\n };\n e.exports = m;\n});\n__d(\"EventPluginUtils\", [\"EventConstants\",\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"EventConstants\"), h = b(\"invariant\"), i = g.topLevelTypes;\n function j(u) {\n return ((((((u === i.topMouseUp)) || ((u === i.topTouchEnd)))) || ((u === i.topTouchCancel))));\n };\n;\n function k(u) {\n return ((((u === i.topMouseMove)) || ((u === i.topTouchMove))));\n };\n;\n function l(u) {\n return ((((u === i.topMouseDown)) || ((u === i.topTouchStart))));\n };\n;\n var m;\n function n(JSBNG__event, u) {\n var v = JSBNG__event._dispatchListeners, w = JSBNG__event._dispatchIDs;\n if (Array.isArray(v)) {\n for (var x = 0; ((x < v.length)); x++) {\n if (JSBNG__event.isPropagationStopped()) {\n break;\n }\n ;\n ;\n u(JSBNG__event, v[x], w[x]);\n };\n ;\n }\n else if (v) {\n u(JSBNG__event, v, w);\n }\n \n ;\n ;\n };\n;\n function o(JSBNG__event, u, v) {\n u(JSBNG__event, v);\n };\n;\n function p(JSBNG__event, u) {\n n(JSBNG__event, u);\n JSBNG__event._dispatchListeners = null;\n JSBNG__event._dispatchIDs = null;\n };\n;\n function q(JSBNG__event) {\n var u = JSBNG__event._dispatchListeners, v = JSBNG__event._dispatchIDs;\n if (Array.isArray(u)) {\n for (var w = 0; ((w < u.length)); w++) {\n if (JSBNG__event.isPropagationStopped()) {\n break;\n }\n ;\n ;\n if (u[w](JSBNG__event, v[w])) {\n return v[w];\n }\n ;\n ;\n };\n ;\n }\n else if (u) {\n if (u(JSBNG__event, v)) {\n return v;\n }\n ;\n }\n \n ;\n ;\n return null;\n };\n;\n function r(JSBNG__event) {\n var u = JSBNG__event._dispatchListeners, v = JSBNG__event._dispatchIDs;\n h(!Array.isArray(u));\n var w = ((u ? u(JSBNG__event, v) : null));\n JSBNG__event._dispatchListeners = null;\n JSBNG__event._dispatchIDs = null;\n return w;\n };\n;\n function s(JSBNG__event) {\n return !!JSBNG__event._dispatchListeners;\n };\n;\n var t = {\n isEndish: j,\n isMoveish: k,\n isStartish: l,\n executeDispatchesInOrder: p,\n executeDispatchesInOrderStopAtTrue: q,\n executeDirectDispatch: r,\n hasDispatches: s,\n executeDispatch: o\n };\n e.exports = t;\n});\n__d(\"accumulate\", [\"throwIf\",], function(a, b, c, d, e, f) {\n var g = b(\"throwIf\"), h = \"INVALID_ACCUM_ARGS\";\n function i(j, k) {\n var l = ((j == null)), m = ((k === null));\n if (m) {\n return j;\n }\n else if (l) {\n return k;\n }\n else {\n var n = Array.isArray(j), o = Array.isArray(k);\n if (n) {\n return j.concat(k);\n }\n else if (o) {\n return [j,].concat(k);\n }\n else return [j,k,]\n \n ;\n }\n \n ;\n ;\n };\n;\n e.exports = i;\n});\n__d(\"forEachAccumulated\", [], function(a, b, c, d, e, f) {\n var g = function(h, i, j) {\n if (Array.isArray(h)) {\n h.forEach(i, j);\n }\n else if (h) {\n i.call(j, h);\n }\n \n ;\n ;\n };\n e.exports = g;\n});\n__d(\"EventPropagators\", [\"CallbackRegistry\",\"EventConstants\",\"accumulate\",\"forEachAccumulated\",], function(a, b, c, d, e, f) {\n var g = b(\"CallbackRegistry\"), h = b(\"EventConstants\"), i = b(\"accumulate\"), j = b(\"forEachAccumulated\"), k = g.getListener, l = h.PropagationPhases, m = {\n InstanceHandle: null,\n injectInstanceHandle: function(w) {\n m.InstanceHandle = w;\n },\n validate: function() {\n var w = ((((!m.InstanceHandle || !m.InstanceHandle.traverseTwoPhase)) || !m.InstanceHandle.traverseEnterLeave));\n if (w) {\n throw new Error(\"InstanceHandle not injected before use!\");\n }\n ;\n ;\n }\n };\n function n(w, JSBNG__event, x) {\n var y = JSBNG__event.dispatchConfig.phasedRegistrationNames[x];\n return k(w, y);\n };\n;\n function o(w, x, JSBNG__event) {\n var y = ((x ? l.bubbled : l.captured)), z = n(w, JSBNG__event, y);\n if (z) {\n JSBNG__event._dispatchListeners = i(JSBNG__event._dispatchListeners, z);\n JSBNG__event._dispatchIDs = i(JSBNG__event._dispatchIDs, w);\n }\n ;\n ;\n };\n;\n function p(JSBNG__event) {\n if (((JSBNG__event && JSBNG__event.dispatchConfig.phasedRegistrationNames))) {\n m.InstanceHandle.traverseTwoPhase(JSBNG__event.dispatchMarker, o, JSBNG__event);\n }\n ;\n ;\n };\n;\n function q(w, x, JSBNG__event) {\n if (((JSBNG__event && JSBNG__event.dispatchConfig.registrationName))) {\n var y = JSBNG__event.dispatchConfig.registrationName, z = k(w, y);\n if (z) {\n JSBNG__event._dispatchListeners = i(JSBNG__event._dispatchListeners, z);\n JSBNG__event._dispatchIDs = i(JSBNG__event._dispatchIDs, w);\n }\n ;\n ;\n }\n ;\n ;\n };\n;\n function r(JSBNG__event) {\n if (((JSBNG__event && JSBNG__event.dispatchConfig.registrationName))) {\n q(JSBNG__event.dispatchMarker, null, JSBNG__event);\n }\n ;\n ;\n };\n;\n function s(w) {\n j(w, p);\n };\n;\n function t(w, x, y, z) {\n m.InstanceHandle.traverseEnterLeave(y, z, q, w, x);\n };\n;\n function u(w) {\n j(w, r);\n };\n;\n var v = {\n accumulateTwoPhaseDispatches: s,\n accumulateDirectDispatches: u,\n accumulateEnterLeaveDispatches: t,\n injection: m\n };\n e.exports = v;\n});\n__d(\"EventPluginHub\", [\"CallbackRegistry\",\"EventPluginRegistry\",\"EventPluginUtils\",\"EventPropagators\",\"ExecutionEnvironment\",\"accumulate\",\"forEachAccumulated\",\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"CallbackRegistry\"), h = b(\"EventPluginRegistry\"), i = b(\"EventPluginUtils\"), j = b(\"EventPropagators\"), k = b(\"ExecutionEnvironment\"), l = b(\"accumulate\"), m = b(\"forEachAccumulated\"), n = b(\"invariant\"), o = null, p = function(JSBNG__event) {\n if (JSBNG__event) {\n var r = i.executeDispatch, s = h.getPluginModuleForEvent(JSBNG__event);\n if (((s && s.executeDispatch))) {\n r = s.executeDispatch;\n }\n ;\n ;\n i.executeDispatchesInOrder(JSBNG__event, r);\n if (!JSBNG__event.isPersistent()) {\n JSBNG__event.constructor.release(JSBNG__event);\n }\n ;\n ;\n }\n ;\n ;\n }, q = {\n injection: {\n injectInstanceHandle: j.injection.injectInstanceHandle,\n injectEventPluginOrder: h.injectEventPluginOrder,\n injectEventPluginsByName: h.injectEventPluginsByName\n },\n registrationNames: h.registrationNames,\n putListener: g.putListener,\n getListener: g.getListener,\n deleteListener: g.deleteListener,\n deleteAllListeners: g.deleteAllListeners,\n extractEvents: function(r, s, t, u) {\n var v, w = h.plugins;\n for (var x = 0, y = w.length; ((x < y)); x++) {\n var z = w[x];\n if (z) {\n var aa = z.extractEvents(r, s, t, u);\n if (aa) {\n v = l(v, aa);\n }\n ;\n ;\n }\n ;\n ;\n };\n ;\n return v;\n },\n enqueueEvents: function(r) {\n if (r) {\n o = l(o, r);\n }\n ;\n ;\n },\n processEventQueue: function() {\n var r = o;\n o = null;\n m(r, p);\n n(!o);\n }\n };\n if (k.canUseDOM) {\n window.EventPluginHub = q;\n }\n;\n;\n e.exports = q;\n});\n__d(\"ReactUpdates\", [\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"invariant\"), h = false, i = [];\n function j(m) {\n if (h) {\n m();\n return;\n }\n ;\n ;\n h = true;\n try {\n m();\n for (var o = 0; ((o < i.length)); o++) {\n var p = i[o];\n if (p.isMounted()) {\n var q = p._pendingCallbacks;\n p._pendingCallbacks = null;\n p.performUpdateIfNecessary();\n if (q) {\n for (var r = 0; ((r < q.length)); r++) {\n q[r]();\n ;\n };\n }\n ;\n ;\n }\n ;\n ;\n };\n ;\n } catch (n) {\n throw n;\n } finally {\n i.length = 0;\n h = false;\n };\n ;\n };\n;\n function k(m, n) {\n g(((!n || ((typeof n === \"function\")))));\n if (!h) {\n m.performUpdateIfNecessary();\n ((n && n()));\n return;\n }\n ;\n ;\n i.push(m);\n if (n) {\n if (m._pendingCallbacks) {\n m._pendingCallbacks.push(n);\n }\n else m._pendingCallbacks = [n,];\n ;\n }\n ;\n ;\n };\n;\n var l = {\n batchedUpdates: j,\n enqueueUpdate: k\n };\n e.exports = l;\n});\n__d(\"ViewportMetrics\", [], function(a, b, c, d, e, f) {\n var g = {\n currentScrollLeft: 0,\n currentScrollTop: 0,\n refreshScrollValues: function() {\n g.currentScrollLeft = ((JSBNG__document.body.scrollLeft + JSBNG__document.documentElement.scrollLeft));\n g.currentScrollTop = ((JSBNG__document.body.scrollTop + JSBNG__document.documentElement.scrollTop));\n }\n };\n e.exports = g;\n});\n__d(\"isEventSupported\", [\"ExecutionEnvironment\",], function(a, b, c, d, e, f) {\n var g = b(\"ExecutionEnvironment\"), h, i;\n if (g.canUseDOM) {\n h = JSBNG__document.createElement(\"div\");\n i = ((((JSBNG__document.implementation && JSBNG__document.implementation.hasFeature)) && ((JSBNG__document.implementation.hasFeature(\"\", \"\") !== true))));\n }\n;\n;\n function j(k, l) {\n if (((!h || ((l && !h.JSBNG__addEventListener))))) {\n return false;\n }\n ;\n ;\n var m = JSBNG__document.createElement(\"div\"), n = ((\"JSBNG__on\" + k)), o = ((n in m));\n if (!o) {\n m.setAttribute(n, \"\");\n o = ((typeof m[n] === \"function\"));\n if (((typeof m[n] !== \"undefined\"))) {\n m[n] = undefined;\n }\n ;\n ;\n m.removeAttribute(n);\n }\n ;\n ;\n if (((((!o && i)) && ((k === \"wheel\"))))) {\n o = JSBNG__document.implementation.hasFeature(\"Events.wheel\", \"3.0\");\n }\n ;\n ;\n m = null;\n return o;\n };\n;\n e.exports = j;\n});\n__d(\"ReactEventEmitter\", [\"EventConstants\",\"EventListener\",\"EventPluginHub\",\"ExecutionEnvironment\",\"ReactUpdates\",\"ViewportMetrics\",\"invariant\",\"isEventSupported\",], function(a, b, c, d, e, f) {\n var g = b(\"EventConstants\"), h = b(\"EventListener\"), i = b(\"EventPluginHub\"), j = b(\"ExecutionEnvironment\"), k = b(\"ReactUpdates\"), l = b(\"ViewportMetrics\"), m = b(\"invariant\"), n = b(\"isEventSupported\"), o = false;\n function p(u, v, w) {\n h.listen(w, v, t.TopLevelCallbackCreator.createTopLevelCallback(u));\n };\n;\n function q(u, v, w) {\n h.capture(w, v, t.TopLevelCallbackCreator.createTopLevelCallback(u));\n };\n;\n function r() {\n var u = l.refreshScrollValues;\n h.listen(window, \"JSBNG__scroll\", u);\n h.listen(window, \"resize\", u);\n };\n;\n function s(u) {\n m(!o);\n var v = g.topLevelTypes, w = JSBNG__document;\n r();\n p(v.topMouseOver, \"mouseover\", w);\n p(v.topMouseDown, \"mousedown\", w);\n p(v.topMouseUp, \"mouseup\", w);\n p(v.topMouseMove, \"mousemove\", w);\n p(v.topMouseOut, \"mouseout\", w);\n p(v.topClick, \"click\", w);\n p(v.topDoubleClick, \"dblclick\", w);\n if (u) {\n p(v.topTouchStart, \"touchstart\", w);\n p(v.topTouchEnd, \"touchend\", w);\n p(v.topTouchMove, \"touchmove\", w);\n p(v.topTouchCancel, \"touchcancel\", w);\n }\n ;\n ;\n p(v.topKeyUp, \"keyup\", w);\n p(v.topKeyPress, \"keypress\", w);\n p(v.topKeyDown, \"keydown\", w);\n p(v.topInput, \"input\", w);\n p(v.topChange, \"change\", w);\n p(v.topSelectionChange, \"selectionchange\", w);\n p(v.topDOMCharacterDataModified, \"DOMCharacterDataModified\", w);\n if (n(\"drag\")) {\n p(v.topDrag, \"drag\", w);\n p(v.topDragEnd, \"dragend\", w);\n p(v.topDragEnter, \"dragenter\", w);\n p(v.topDragExit, \"dragexit\", w);\n p(v.topDragLeave, \"dragleave\", w);\n p(v.topDragOver, \"dragover\", w);\n p(v.topDragStart, \"dragstart\", w);\n p(v.topDrop, \"drop\", w);\n }\n ;\n ;\n if (n(\"wheel\")) {\n p(v.topWheel, \"wheel\", w);\n }\n else if (n(\"mousewheel\")) {\n p(v.topWheel, \"mousewheel\", w);\n }\n else p(v.topWheel, \"DOMMouseScroll\", w);\n \n ;\n ;\n if (n(\"JSBNG__scroll\", true)) {\n q(v.topScroll, \"JSBNG__scroll\", w);\n }\n else p(v.topScroll, \"JSBNG__scroll\", window);\n ;\n ;\n if (n(\"JSBNG__focus\", true)) {\n q(v.topFocus, \"JSBNG__focus\", w);\n q(v.topBlur, \"JSBNG__blur\", w);\n }\n else if (n(\"focusin\")) {\n p(v.topFocus, \"focusin\", w);\n p(v.topBlur, \"focusout\", w);\n }\n \n ;\n ;\n };\n;\n var t = {\n TopLevelCallbackCreator: null,\n ensureListening: function(u, v) {\n m(j.canUseDOM);\n if (!o) {\n t.TopLevelCallbackCreator = v;\n s(u);\n o = true;\n }\n ;\n ;\n },\n setEnabled: function(u) {\n m(j.canUseDOM);\n if (t.TopLevelCallbackCreator) {\n t.TopLevelCallbackCreator.setEnabled(u);\n }\n ;\n ;\n },\n isEnabled: function() {\n return !!((t.TopLevelCallbackCreator && t.TopLevelCallbackCreator.isEnabled()));\n },\n handleTopLevel: function(u, v, w, x) {\n var y = i.extractEvents(u, v, w, x);\n k.batchedUpdates(function() {\n i.enqueueEvents(y);\n i.processEventQueue();\n });\n },\n registrationNames: i.registrationNames,\n putListener: i.putListener,\n getListener: i.getListener,\n deleteListener: i.deleteListener,\n deleteAllListeners: i.deleteAllListeners,\n trapBubbledEvent: p,\n trapCapturedEvent: q\n };\n e.exports = t;\n});\n__d(\"getEventTarget\", [\"ExecutionEnvironment\",], function(a, b, c, d, e, f) {\n var g = b(\"ExecutionEnvironment\");\n function h(i) {\n var j = ((((i.target || i.srcElement)) || g.global));\n return ((((j.nodeType === 3)) ? j.parentNode : j));\n };\n;\n e.exports = h;\n});\n__d(\"ReactEventTopLevelCallback\", [\"ExecutionEnvironment\",\"ReactEventEmitter\",\"ReactID\",\"ReactInstanceHandles\",\"getEventTarget\",], function(a, b, c, d, e, f) {\n var g = b(\"ExecutionEnvironment\"), h = b(\"ReactEventEmitter\"), i = b(\"ReactID\"), j = b(\"ReactInstanceHandles\"), k = b(\"getEventTarget\"), l = true, m = {\n setEnabled: function(n) {\n l = !!n;\n },\n isEnabled: function() {\n return l;\n },\n createTopLevelCallback: function(n) {\n return function(o) {\n if (!l) {\n return;\n }\n ;\n ;\n if (((o.srcElement && ((o.srcElement !== o.target))))) {\n o.target = o.srcElement;\n }\n ;\n ;\n var p = ((j.getFirstReactDOM(k(o)) || g.global)), q = ((i.getID(p) || \"\"));\n h.handleTopLevel(n, p, q, o);\n };\n }\n };\n e.exports = m;\n});\n__d(\"ReactInstanceHandles\", [\"ReactID\",\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"ReactID\"), h = b(\"invariant\"), i = \".\", j = i.length, k = 100, l = 9999999;\n function m(v) {\n return ((((((i + \"r[\")) + v.toString(36))) + \"]\"));\n };\n;\n function n(v, w) {\n return ((((v.charAt(w) === i)) || ((w === v.length))));\n };\n;\n function o(v) {\n return ((((v === \"\")) || ((((v.charAt(0) === i)) && ((v.charAt(((v.length - 1))) !== i))))));\n };\n;\n function p(v, w) {\n return ((((w.indexOf(v) === 0)) && n(w, v.length)));\n };\n;\n function q(v) {\n return ((v ? v.substr(0, v.lastIndexOf(i)) : \"\"));\n };\n;\n function r(v, w) {\n h(((o(v) && o(w))));\n h(p(v, w));\n if (((v === w))) {\n return v;\n }\n ;\n ;\n var x = ((v.length + j));\n for (var y = x; ((y < w.length)); y++) {\n if (n(w, y)) {\n break;\n }\n ;\n ;\n };\n ;\n return w.substr(0, y);\n };\n;\n function s(v, w) {\n var x = Math.min(v.length, w.length);\n if (((x === 0))) {\n return \"\";\n }\n ;\n ;\n var y = 0;\n for (var z = 0; ((z <= x)); z++) {\n if (((n(v, z) && n(w, z)))) {\n y = z;\n }\n else if (((v.charAt(z) !== w.charAt(z)))) {\n break;\n }\n \n ;\n ;\n };\n ;\n var aa = v.substr(0, y);\n h(o(aa));\n return aa;\n };\n;\n function t(v, w, x, y, z, aa) {\n v = ((v || \"\"));\n w = ((w || \"\"));\n h(((v !== w)));\n var ba = p(w, v);\n h(((ba || p(v, w))));\n var ca = 0, da = ((ba ? q : r));\n for (var ea = v; ; ea = da(ea, w)) {\n if (((((!z || ((ea !== v)))) && ((!aa || ((ea !== w))))))) {\n x(ea, ba, y);\n }\n ;\n ;\n if (((ea === w))) {\n break;\n }\n ;\n ;\n h(((ca++ < k)));\n };\n ;\n };\n;\n var u = {\n separator: i,\n createReactRootID: function() {\n return m(Math.ceil(((Math.JSBNG__random() * l))));\n },\n isRenderedByReact: function(v) {\n if (((v.nodeType !== 1))) {\n return false;\n }\n ;\n ;\n var w = g.getID(v);\n return ((w ? ((w.charAt(0) === i)) : false));\n },\n getFirstReactDOM: function(v) {\n var w = v;\n while (((w && ((w.parentNode !== w))))) {\n if (u.isRenderedByReact(w)) {\n return w;\n }\n ;\n ;\n w = w.parentNode;\n };\n ;\n return null;\n },\n findComponentRoot: function(v, w) {\n var x = [v.firstChild,], y = 0;\n while (((y < x.length))) {\n var z = x[y++];\n while (z) {\n var aa = g.getID(z);\n if (aa) {\n if (((w === aa))) {\n return z;\n }\n else if (p(aa, w)) {\n x.length = y = 0;\n x.push(z.firstChild);\n break;\n }\n else x.push(z.firstChild);\n \n ;\n ;\n }\n else x.push(z.firstChild);\n ;\n ;\n z = z.nextSibling;\n };\n ;\n };\n ;\n h(false);\n },\n getReactRootIDFromNodeID: function(v) {\n var w = /\\.r\\[[^\\]]+\\]/.exec(v);\n return ((w && w[0]));\n },\n traverseEnterLeave: function(v, w, x, y, z) {\n var aa = s(v, w);\n if (((aa !== v))) {\n t(v, aa, x, y, false, true);\n }\n ;\n ;\n if (((aa !== w))) {\n t(aa, w, x, z, true, false);\n }\n ;\n ;\n },\n traverseTwoPhase: function(v, w, x) {\n if (v) {\n t(\"\", v, w, x, true, false);\n t(v, \"\", w, x, false, true);\n }\n ;\n ;\n },\n _getFirstCommonAncestorID: s,\n _getNextDescendantID: r\n };\n e.exports = u;\n});\n__d(\"ReactMount\", [\"invariant\",\"ReactEventEmitter\",\"ReactInstanceHandles\",\"ReactEventTopLevelCallback\",\"ReactID\",\"$\",], function(a, b, c, d, e, f) {\n var g = b(\"invariant\"), h = b(\"ReactEventEmitter\"), i = b(\"ReactInstanceHandles\"), j = b(\"ReactEventTopLevelCallback\"), k = b(\"ReactID\"), l = b(\"$\"), m = {\n }, n = {\n };\n function o(r) {\n return ((r && r.firstChild));\n };\n;\n function p(r) {\n var s = o(r);\n return ((s && k.getID(s)));\n };\n;\n var q = {\n totalInstantiationTime: 0,\n totalInjectionTime: 0,\n useTouchEvents: false,\n scrollMonitor: function(r, s) {\n s();\n },\n prepareTopLevelEvents: function(r) {\n h.ensureListening(q.useTouchEvents, r);\n },\n _updateRootComponent: function(r, s, t, u) {\n var v = s.props;\n q.scrollMonitor(t, function() {\n r.replaceProps(v, u);\n });\n return r;\n },\n _registerComponent: function(r, s) {\n q.prepareTopLevelEvents(j);\n var t = q.registerContainer(s);\n m[t] = r;\n return t;\n },\n _renderNewRootComponent: function(r, s, t) {\n var u = q._registerComponent(r, s);\n r.mountComponentIntoNode(u, s, t);\n return r;\n },\n renderComponent: function(r, s, t) {\n var u = m[p(s)];\n if (u) {\n if (((u.constructor === r.constructor))) {\n return q._updateRootComponent(u, r, s, t);\n }\n else q.unmountAndReleaseReactRootNode(s);\n ;\n }\n ;\n ;\n var v = o(s), w = ((v && i.isRenderedByReact(v))), x = ((w && !u)), y = q._renderNewRootComponent(r, s, x);\n ((t && t()));\n return y;\n },\n constructAndRenderComponent: function(r, s, t) {\n return q.renderComponent(r(s), t);\n },\n constructAndRenderComponentByID: function(r, s, t) {\n return q.constructAndRenderComponent(r, s, l(t));\n },\n registerContainer: function(r) {\n var s = p(r);\n if (s) {\n s = i.getReactRootIDFromNodeID(s);\n }\n ;\n ;\n if (!s) {\n s = i.createReactRootID();\n }\n ;\n ;\n n[s] = r;\n return s;\n },\n unmountAndReleaseReactRootNode: function(r) {\n var s = p(r), t = m[s];\n if (!t) {\n return false;\n }\n ;\n ;\n t.unmountComponentFromNode(r);\n delete m[s];\n delete n[s];\n return true;\n },\n findReactContainerForID: function(r) {\n var s = i.getReactRootIDFromNodeID(r), t = n[s];\n return t;\n },\n findReactNodeByID: function(r) {\n var s = q.findReactContainerForID(r);\n return i.findComponentRoot(s, r);\n }\n };\n e.exports = q;\n});\n__d(\"ReactID\", [\"invariant\",\"ReactMount\",], function(a, b, c, d, e, f) {\n var g = b(\"invariant\"), h = b(\"ReactMount\"), i = \"data-reactid\", j = {\n };\n function k(r) {\n var s = l(r);\n if (s) {\n if (j.hasOwnProperty(s)) {\n var t = j[s];\n if (((t !== r))) {\n g(!o(t, s));\n j[s] = r;\n }\n ;\n ;\n }\n else j[s] = r;\n ;\n }\n ;\n ;\n return s;\n };\n;\n function l(r) {\n return ((((((r && r.getAttribute)) && r.getAttribute(i))) || \"\"));\n };\n;\n function m(r, s) {\n var t = l(r);\n if (((t !== s))) {\n delete j[t];\n }\n ;\n ;\n r.setAttribute(i, s);\n j[s] = r;\n };\n;\n function n(r) {\n if (((!j.hasOwnProperty(r) || !o(j[r], r)))) {\n j[r] = h.findReactNodeByID(r);\n }\n ;\n ;\n return j[r];\n };\n;\n function o(r, s) {\n if (r) {\n g(((l(r) === s)));\n var t = h.findReactContainerForID(s);\n if (((t && p(t, r)))) {\n return true;\n }\n ;\n ;\n }\n ;\n ;\n return false;\n };\n;\n function p(r, s) {\n if (r.contains) {\n return r.contains(s);\n }\n ;\n ;\n if (((s === r))) {\n return true;\n }\n ;\n ;\n if (((s.nodeType === 3))) {\n s = s.parentNode;\n }\n ;\n ;\n while (((s && ((s.nodeType === 1))))) {\n if (((s === r))) {\n return true;\n }\n ;\n ;\n s = s.parentNode;\n };\n ;\n return false;\n };\n;\n function q(r) {\n delete j[r];\n };\n;\n f.ATTR_NAME = i;\n f.getID = k;\n f.rawGetID = l;\n f.setID = m;\n f.getNode = n;\n f.purgeID = q;\n});\n__d(\"getTextContentAccessor\", [\"ExecutionEnvironment\",], function(a, b, c, d, e, f) {\n var g = b(\"ExecutionEnvironment\"), h = null;\n function i() {\n if (((!h && g.canUseDOM))) {\n h = ((((\"innerText\" in JSBNG__document.createElement(\"div\"))) ? \"innerText\" : \"textContent\"));\n }\n ;\n ;\n return h;\n };\n;\n e.exports = i;\n});\n__d(\"ReactDOMIDOperations\", [\"CSSPropertyOperations\",\"DOMChildrenOperations\",\"DOMPropertyOperations\",\"ReactID\",\"getTextContentAccessor\",\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"CSSPropertyOperations\"), h = b(\"DOMChildrenOperations\"), i = b(\"DOMPropertyOperations\"), j = b(\"ReactID\"), k = b(\"getTextContentAccessor\"), l = b(\"invariant\"), m = {\n dangerouslySetInnerHTML: \"`dangerouslySetInnerHTML` must be set using `updateInnerHTMLByID()`.\",\n style: \"`style` must be set using `updateStylesByID()`.\"\n }, n = ((k() || \"NA\")), o = {\n updatePropertyByID: function(p, q, r) {\n var s = j.getNode(p);\n l(!m.hasOwnProperty(q));\n if (((r != null))) {\n i.setValueForProperty(s, q, r);\n }\n else i.deleteValueForProperty(s, q);\n ;\n ;\n },\n deletePropertyByID: function(p, q, r) {\n var s = j.getNode(p);\n l(!m.hasOwnProperty(q));\n i.deleteValueForProperty(s, q, r);\n },\n updatePropertiesByID: function(p, q) {\n {\n var fin64keys = ((window.top.JSBNG_Replay.forInKeys)((q))), fin64i = (0);\n var r;\n for (; (fin64i < fin64keys.length); (fin64i++)) {\n ((r) = (fin64keys[fin64i]));\n {\n if (!q.hasOwnProperty(r)) {\n continue;\n }\n ;\n ;\n o.updatePropertiesByID(p, r, q[r]);\n };\n };\n };\n ;\n },\n updateStylesByID: function(p, q) {\n var r = j.getNode(p);\n g.setValueForStyles(r, q);\n },\n updateInnerHTMLByID: function(p, q) {\n var r = j.getNode(p);\n r.innerHTML = ((((q && q.__html)) || \"\")).replace(/^ /g, \" \");\n },\n updateTextContentByID: function(p, q) {\n var r = j.getNode(p);\n r[n] = q;\n },\n dangerouslyReplaceNodeWithMarkupByID: function(p, q) {\n var r = j.getNode(p);\n h.dangerouslyReplaceNodeWithMarkup(r, q);\n },\n manageChildrenByParentID: function(p, q) {\n var r = j.getNode(p);\n h.manageChildren(r, q);\n }\n };\n e.exports = o;\n});\n__d(\"ReactOwner\", [\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"invariant\"), h = {\n isValidOwner: function(i) {\n return !!((((i && ((typeof i.attachRef === \"function\")))) && ((typeof i.detachRef === \"function\"))));\n },\n addComponentAsRefTo: function(i, j, k) {\n g(h.isValidOwner(k));\n k.attachRef(j, i);\n },\n removeComponentAsRefFrom: function(i, j, k) {\n g(h.isValidOwner(k));\n if (((k.refs[j] === i))) {\n k.detachRef(j);\n }\n ;\n ;\n },\n Mixin: {\n attachRef: function(i, j) {\n g(j.isOwnedBy(this));\n var k = ((this.refs || (this.refs = {\n })));\n k[i] = j;\n },\n detachRef: function(i) {\n delete this.refs[i];\n }\n }\n };\n e.exports = h;\n});\n__d(\"PooledClass\", [], function(a, b, c, d, e, f) {\n var g = function(p) {\n var q = this;\n if (q.instancePool.length) {\n var r = q.instancePool.pop();\n q.call(r, p);\n return r;\n }\n else return new q(p)\n ;\n }, h = function(p, q) {\n var r = this;\n if (r.instancePool.length) {\n var s = r.instancePool.pop();\n r.call(s, p, q);\n return s;\n }\n else return new r(p, q)\n ;\n }, i = function(p, q, r) {\n var s = this;\n if (s.instancePool.length) {\n var t = s.instancePool.pop();\n s.call(t, p, q, r);\n return t;\n }\n else return new s(p, q, r)\n ;\n }, j = function(p, q, r, s, t) {\n var u = this;\n if (u.instancePool.length) {\n var v = u.instancePool.pop();\n u.call(v, p, q, r, s, t);\n return v;\n }\n else return new u(p, q, r, s, t)\n ;\n }, k = function(p) {\n var q = this;\n if (p.destructor) {\n p.destructor();\n }\n ;\n ;\n if (((q.instancePool.length < q.poolSize))) {\n q.instancePool.push(p);\n }\n ;\n ;\n }, l = 10, m = g, n = function(p, q) {\n var r = p;\n r.instancePool = [];\n r.getPooled = ((q || m));\n if (!r.poolSize) {\n r.poolSize = l;\n }\n ;\n ;\n r.release = k;\n return r;\n }, o = {\n addPoolingTo: n,\n oneArgumentPooler: g,\n twoArgumentPooler: h,\n threeArgumentPooler: i,\n fiveArgumentPooler: j\n };\n e.exports = o;\n});\n__d(\"ReactInputSelection\", [], function(a, b, c, d, e, f) {\n function g() {\n try {\n return JSBNG__document.activeElement;\n } catch (j) {\n \n };\n ;\n };\n;\n function h(j) {\n return JSBNG__document.documentElement.contains(j);\n };\n;\n var i = {\n hasSelectionCapabilities: function(j) {\n return ((j && ((((((((j.nodeName === \"INPUT\")) && ((j.type === \"text\")))) || ((j.nodeName === \"TEXTAREA\")))) || ((j.contentEditable === \"true\"))))));\n },\n getSelectionInformation: function() {\n var j = g();\n return {\n focusedElem: j,\n selectionRange: ((i.hasSelectionCapabilities(j) ? i.JSBNG__getSelection(j) : null))\n };\n },\n restoreSelection: function(j) {\n var k = g(), l = j.focusedElem, m = j.selectionRange;\n if (((((k !== l)) && h(l)))) {\n if (i.hasSelectionCapabilities(l)) {\n i.setSelection(l, m);\n }\n ;\n ;\n l.JSBNG__focus();\n }\n ;\n ;\n },\n JSBNG__getSelection: function(j) {\n var k;\n if (((((j.contentEditable === \"true\")) && window.JSBNG__getSelection))) {\n k = window.JSBNG__getSelection().getRangeAt(0);\n var l = k.commonAncestorContainer;\n if (((l && ((l.nodeType === 3))))) {\n l = l.parentNode;\n }\n ;\n ;\n if (((l !== j))) {\n return {\n start: 0,\n end: 0\n };\n }\n else return {\n start: k.startOffset,\n end: k.endOffset\n }\n ;\n }\n ;\n ;\n if (!JSBNG__document.selection) {\n return {\n start: j.selectionStart,\n end: j.selectionEnd\n };\n }\n ;\n ;\n k = JSBNG__document.selection.createRange();\n if (((k.parentElement() !== j))) {\n return {\n start: 0,\n end: 0\n };\n }\n ;\n ;\n var m = j.value.length;\n if (((j.nodeName === \"INPUT\"))) {\n return {\n start: -k.moveStart(\"character\", -m),\n end: -k.moveEnd(\"character\", -m)\n };\n }\n else {\n var n = k.duplicate();\n n.moveToElementText(j);\n n.setEndPoint(\"StartToEnd\", k);\n var o = ((m - n.text.length));\n n.setEndPoint(\"StartToStart\", k);\n return {\n start: ((m - n.text.length)),\n end: o\n };\n }\n ;\n ;\n },\n setSelection: function(j, k) {\n var l, m = k.start, n = k.end;\n if (((typeof n === \"undefined\"))) {\n n = m;\n }\n ;\n ;\n if (JSBNG__document.selection) {\n if (((j.tagName === \"TEXTAREA\"))) {\n var o = ((j.value.slice(0, m).match(/\\r/g) || [])).length, p = ((j.value.slice(m, n).match(/\\r/g) || [])).length;\n m -= o;\n n -= ((o + p));\n }\n ;\n ;\n l = j.createTextRange();\n l.collapse(true);\n l.moveStart(\"character\", m);\n l.moveEnd(\"character\", ((n - m)));\n l.select();\n }\n else if (((j.contentEditable === \"true\"))) {\n if (((j.childNodes.length === 1))) {\n l = JSBNG__document.createRange();\n l.setStart(j.childNodes[0], m);\n l.setEnd(j.childNodes[0], n);\n var q = window.JSBNG__getSelection();\n q.removeAllRanges();\n q.addRange(l);\n }\n ;\n ;\n }\n else {\n j.selectionStart = m;\n j.selectionEnd = Math.min(n, j.value.length);\n j.JSBNG__focus();\n }\n \n ;\n ;\n }\n };\n e.exports = i;\n});\n__d(\"mixInto\", [], function(a, b, c, d, e, f) {\n var g = function(h, i) {\n var j;\n {\n var fin65keys = ((window.top.JSBNG_Replay.forInKeys)((i))), fin65i = (0);\n (0);\n for (; (fin65i < fin65keys.length); (fin65i++)) {\n ((j) = (fin65keys[fin65i]));\n {\n if (!i.hasOwnProperty(j)) {\n continue;\n }\n ;\n ;\n h.prototype[j] = i[j];\n };\n };\n };\n ;\n };\n e.exports = g;\n});\n__d(\"ReactOnDOMReady\", [\"PooledClass\",\"mixInto\",], function(a, b, c, d, e, f) {\n var g = b(\"PooledClass\"), h = b(\"mixInto\");\n function i(j) {\n this._queue = ((j || null));\n };\n;\n h(i, {\n enqueue: function(j, k) {\n this._queue = ((this._queue || []));\n this._queue.push({\n component: j,\n callback: k\n });\n },\n notifyAll: function() {\n var j = this._queue;\n if (j) {\n this._queue = null;\n for (var k = 0, l = j.length; ((k < l)); k++) {\n var m = j[k].component, n = j[k].callback;\n n.call(m, m.getDOMNode());\n };\n ;\n j.length = 0;\n }\n ;\n ;\n },\n reset: function() {\n this._queue = null;\n },\n destructor: function() {\n this.reset();\n }\n });\n g.addPoolingTo(i);\n e.exports = i;\n});\n__d(\"Transaction\", [\"throwIf\",], function(a, b, c, d, e, f) {\n var g = b(\"throwIf\"), h = \"DUAL_TRANSACTION\", i = \"MISSING_TRANSACTION\", j = {\n reinitializeTransaction: function() {\n this.transactionWrappers = this.getTransactionWrappers();\n if (!this.wrapperInitData) {\n this.wrapperInitData = [];\n }\n else this.wrapperInitData.length = 0;\n ;\n ;\n if (!this.timingMetrics) {\n this.timingMetrics = {\n };\n }\n ;\n ;\n this.timingMetrics.methodInvocationTime = 0;\n if (!this.timingMetrics.wrapperInitTimes) {\n this.timingMetrics.wrapperInitTimes = [];\n }\n else this.timingMetrics.wrapperInitTimes.length = 0;\n ;\n ;\n if (!this.timingMetrics.wrapperCloseTimes) {\n this.timingMetrics.wrapperCloseTimes = [];\n }\n else this.timingMetrics.wrapperCloseTimes.length = 0;\n ;\n ;\n this._isInTransaction = false;\n },\n _isInTransaction: false,\n getTransactionWrappers: null,\n isInTransaction: function() {\n return !!this._isInTransaction;\n },\n perform: function(l, m, n, o, p, q, r, s) {\n g(this.isInTransaction(), h);\n var t = JSBNG__Date.now(), u = null, v;\n try {\n this.initializeAll();\n v = l.call(m, n, o, p, q, r, s);\n } catch (w) {\n u = w;\n } finally {\n var x = JSBNG__Date.now();\n this.methodInvocationTime += ((x - t));\n try {\n this.closeAll();\n } catch (y) {\n u = ((u || y));\n };\n ;\n };\n ;\n if (u) {\n throw u;\n }\n ;\n ;\n return v;\n },\n initializeAll: function() {\n this._isInTransaction = true;\n var l = this.transactionWrappers, m = this.timingMetrics.wrapperInitTimes, n = null;\n for (var o = 0; ((o < l.length)); o++) {\n var p = JSBNG__Date.now(), q = l[o];\n try {\n this.wrapperInitData[o] = ((q.initialize ? q.initialize.call(this) : null));\n } catch (r) {\n n = ((n || r));\n this.wrapperInitData[o] = k.OBSERVED_ERROR;\n } finally {\n var s = m[o], t = JSBNG__Date.now();\n m[o] = ((((s || 0)) + ((t - p))));\n };\n ;\n };\n ;\n if (n) {\n throw n;\n }\n ;\n ;\n },\n closeAll: function() {\n g(!this.isInTransaction(), i);\n var l = this.transactionWrappers, m = this.timingMetrics.wrapperCloseTimes, n = null;\n for (var o = 0; ((o < l.length)); o++) {\n var p = l[o], q = JSBNG__Date.now(), r = this.wrapperInitData[o];\n try {\n if (((r !== k.OBSERVED_ERROR))) {\n ((p.close && p.close.call(this, r)));\n }\n ;\n ;\n } catch (s) {\n n = ((n || s));\n } finally {\n var t = JSBNG__Date.now(), u = m[o];\n m[o] = ((((u || 0)) + ((t - q))));\n };\n ;\n };\n ;\n this.wrapperInitData.length = 0;\n this._isInTransaction = false;\n if (n) {\n throw n;\n }\n ;\n ;\n }\n }, k = {\n Mixin: j,\n OBSERVED_ERROR: {\n }\n };\n e.exports = k;\n});\n__d(\"ReactReconcileTransaction\", [\"ExecutionEnvironment\",\"PooledClass\",\"ReactEventEmitter\",\"ReactInputSelection\",\"ReactOnDOMReady\",\"Transaction\",\"mixInto\",], function(a, b, c, d, e, f) {\n var g = b(\"ExecutionEnvironment\"), h = b(\"PooledClass\"), i = b(\"ReactEventEmitter\"), j = b(\"ReactInputSelection\"), k = b(\"ReactOnDOMReady\"), l = b(\"Transaction\"), m = b(\"mixInto\"), n = {\n initialize: j.getSelectionInformation,\n close: j.restoreSelection\n }, o = {\n initialize: function() {\n var t = i.isEnabled();\n i.setEnabled(false);\n return t;\n },\n close: function(t) {\n i.setEnabled(t);\n }\n }, p = {\n initialize: function() {\n this.reactOnDOMReady.reset();\n },\n close: function() {\n this.reactOnDOMReady.notifyAll();\n }\n }, q = [n,o,p,];\n function r() {\n this.reinitializeTransaction();\n this.reactOnDOMReady = k.getPooled(null);\n };\n;\n var s = {\n getTransactionWrappers: function() {\n if (g.canUseDOM) {\n return q;\n }\n else return []\n ;\n },\n getReactOnDOMReady: function() {\n return this.reactOnDOMReady;\n },\n destructor: function() {\n k.release(this.reactOnDOMReady);\n this.reactOnDOMReady = null;\n }\n };\n m(r, l.Mixin);\n m(r, s);\n h.addPoolingTo(r);\n e.exports = r;\n});\n__d(\"mergeHelpers\", [\"keyMirror\",\"throwIf\",], function(a, b, c, d, e, f) {\n var g = b(\"keyMirror\"), h = b(\"throwIf\"), i = 36, j = g({\n MERGE_ARRAY_FAIL: null,\n MERGE_CORE_FAILURE: null,\n MERGE_TYPE_USAGE_FAILURE: null,\n MERGE_DEEP_MAX_LEVELS: null,\n MERGE_DEEP_NO_ARR_STRATEGY: null\n }), k = function(m) {\n return ((((typeof m !== \"object\")) || ((m === null))));\n }, l = {\n MAX_MERGE_DEPTH: i,\n isTerminal: k,\n normalizeMergeArg: function(m) {\n return ((((((m === undefined)) || ((m === null)))) ? {\n } : m));\n },\n checkMergeArrayArgs: function(m, n) {\n h(((!Array.isArray(m) || !Array.isArray(n))), j.MERGE_CORE_FAILURE);\n },\n checkMergeObjectArgs: function(m, n) {\n l.checkMergeObjectArg(m);\n l.checkMergeObjectArg(n);\n },\n checkMergeObjectArg: function(m) {\n h(((k(m) || Array.isArray(m))), j.MERGE_CORE_FAILURE);\n },\n checkMergeLevel: function(m) {\n h(((m >= i)), j.MERGE_DEEP_MAX_LEVELS);\n },\n checkArrayStrategy: function(m) {\n h(((((m !== undefined)) && !((m in l.ArrayStrategies)))), j.MERGE_DEEP_NO_ARR_STRATEGY);\n },\n ArrayStrategies: g({\n Clobber: true,\n IndexByIndex: true\n }),\n ERRORS: j\n };\n e.exports = l;\n});\n__d(\"mergeInto\", [\"mergeHelpers\",], function(a, b, c, d, e, f) {\n var g = b(\"mergeHelpers\"), h = g.checkMergeObjectArg;\n function i(j, k) {\n h(j);\n if (((k != null))) {\n h(k);\n {\n var fin66keys = ((window.top.JSBNG_Replay.forInKeys)((k))), fin66i = (0);\n var l;\n for (; (fin66i < fin66keys.length); (fin66i++)) {\n ((l) = (fin66keys[fin66i]));\n {\n if (!k.hasOwnProperty(l)) {\n continue;\n }\n ;\n ;\n j[l] = k[l];\n };\n };\n };\n ;\n }\n ;\n ;\n };\n;\n e.exports = i;\n});\n__d(\"merge\", [\"mergeInto\",], function(a, b, c, d, e, f) {\n var g = b(\"mergeInto\"), h = function(i, j) {\n var k = {\n };\n g(k, i);\n g(k, j);\n return k;\n };\n e.exports = h;\n});\n__d(\"ReactComponent\", [\"ReactCurrentOwner\",\"ReactDOMIDOperations\",\"ReactID\",\"ReactOwner\",\"ReactReconcileTransaction\",\"ReactUpdates\",\"invariant\",\"keyMirror\",\"merge\",], function(a, b, c, d, e, f) {\n var g = b(\"ReactCurrentOwner\"), h = b(\"ReactDOMIDOperations\"), i = b(\"ReactID\"), j = b(\"ReactOwner\"), k = b(\"ReactReconcileTransaction\"), l = b(\"ReactUpdates\"), m = b(\"invariant\"), n = b(\"keyMirror\"), o = b(\"merge\"), p = \"{owner}\", q = \"{is.key.validated}\", r = n({\n MOUNTED: null,\n UNMOUNTED: null\n }), s = {\n };\n function t(w) {\n if (((w[q] || ((w.props.key != null))))) {\n return;\n }\n ;\n ;\n w[q] = true;\n if (!g.current) {\n return;\n }\n ;\n ;\n var x = g.current.constructor.displayName;\n if (s.hasOwnProperty(x)) {\n return;\n }\n ;\n ;\n s[x] = true;\n var y = ((((((\"Each child in an array should have a unique \\\"key\\\" prop. \" + \"Check the render method of \")) + x)) + \".\"));\n if (!w.isOwnedBy(g.current)) {\n var z = ((w.props[p] && w.props[p].constructor.displayName));\n y += ((((\" It was passed a child from \" + z)) + \".\"));\n }\n ;\n ;\n };\n;\n function u(w) {\n if (Array.isArray(w)) {\n for (var x = 0; ((x < w.length)); x++) {\n var y = w[x];\n if (v.isValidComponent(y)) {\n t(y);\n }\n ;\n ;\n };\n ;\n }\n else if (v.isValidComponent(w)) {\n w[q] = true;\n }\n \n ;\n ;\n };\n;\n var v = {\n isValidComponent: function(w) {\n return !!((((w && ((typeof w.mountComponentIntoNode === \"function\")))) && ((typeof w.receiveProps === \"function\"))));\n },\n getKey: function(w, x) {\n if (((((w && w.props)) && ((w.props.key != null))))) {\n return ((\"\" + w.props.key));\n }\n ;\n ;\n return ((\"\" + x));\n },\n LifeCycle: r,\n DOMIDOperations: h,\n ReactReconcileTransaction: k,\n setDOMOperations: function(w) {\n v.DOMIDOperations = w;\n },\n setReactReconcileTransaction: function(w) {\n v.ReactReconcileTransaction = w;\n },\n Mixin: {\n isMounted: function() {\n return ((this._lifeCycleState === r.MOUNTED));\n },\n getDOMNode: function() {\n m(this.isMounted());\n return i.getNode(this._rootNodeID);\n },\n setProps: function(w, x) {\n this.replaceProps(o(((this._pendingProps || this.props)), w), x);\n },\n replaceProps: function(w, x) {\n m(!this.props[p]);\n this._pendingProps = w;\n l.enqueueUpdate(this, x);\n },\n construct: function(w, x) {\n this.props = ((w || {\n }));\n this.props[p] = g.current;\n this._lifeCycleState = r.UNMOUNTED;\n this._pendingProps = null;\n this._pendingCallbacks = null;\n var y = ((arguments.length - 1));\n if (((y === 1))) {\n this.props.children = x;\n }\n else if (((y > 1))) {\n var z = Array(y);\n for (var aa = 0; ((aa < y)); aa++) {\n z[aa] = arguments[((aa + 1))];\n ;\n };\n ;\n this.props.children = z;\n }\n \n ;\n ;\n },\n mountComponent: function(w, x) {\n m(!this.isMounted());\n var y = this.props;\n if (((y.ref != null))) {\n j.addComponentAsRefTo(this, y.ref, y[p]);\n }\n ;\n ;\n this._rootNodeID = w;\n this._lifeCycleState = r.MOUNTED;\n },\n unmountComponent: function() {\n m(this.isMounted());\n var w = this.props;\n if (((w.ref != null))) {\n j.removeComponentAsRefFrom(this, w.ref, w[p]);\n }\n ;\n ;\n i.purgeID(this._rootNodeID);\n this._rootNodeID = null;\n this._lifeCycleState = r.UNMOUNTED;\n },\n receiveProps: function(w, x) {\n m(this.isMounted());\n this._pendingProps = w;\n this._performUpdateIfNecessary(x);\n },\n performUpdateIfNecessary: function() {\n var w = v.ReactReconcileTransaction.getPooled();\n w.perform(this._performUpdateIfNecessary, this, w);\n v.ReactReconcileTransaction.release(w);\n },\n _performUpdateIfNecessary: function(w) {\n if (((this._pendingProps == null))) {\n return;\n }\n ;\n ;\n var x = this.props;\n this.props = this._pendingProps;\n this._pendingProps = null;\n this.updateComponent(w, x);\n },\n updateComponent: function(w, x) {\n var y = this.props;\n if (((((y[p] !== x[p])) || ((y.ref !== x.ref))))) {\n if (((x.ref != null))) {\n j.removeComponentAsRefFrom(this, x.ref, x[p]);\n }\n ;\n ;\n if (((y.ref != null))) {\n j.addComponentAsRefTo(this, y.ref, y[p]);\n }\n ;\n ;\n }\n ;\n ;\n },\n mountComponentIntoNode: function(w, x, y) {\n var z = v.ReactReconcileTransaction.getPooled();\n z.perform(this._mountComponentIntoNode, this, w, x, z, y);\n v.ReactReconcileTransaction.release(z);\n },\n _mountComponentIntoNode: function(w, x, y, z) {\n m(((x && ((x.nodeType === 1)))));\n var aa = this.mountComponent(w, y);\n if (z) {\n return;\n }\n ;\n ;\n var ba = x.parentNode;\n if (ba) {\n var ca = x.nextSibling;\n ba.removeChild(x);\n x.innerHTML = aa;\n if (ca) {\n ba.insertBefore(x, ca);\n }\n else ba.appendChild(x);\n ;\n ;\n }\n else x.innerHTML = aa;\n ;\n ;\n },\n unmountComponentFromNode: function(w) {\n this.unmountComponent();\n while (w.lastChild) {\n w.removeChild(w.lastChild);\n ;\n };\n ;\n },\n isOwnedBy: function(w) {\n return ((this.props[p] === w));\n },\n getSiblingByRef: function(w) {\n var x = this.props[p];\n if (((!x || !x.refs))) {\n return null;\n }\n ;\n ;\n return x.refs[w];\n }\n }\n };\n e.exports = v;\n});\n__d(\"joinClasses\", [], function(a, b, c, d, e, f) {\n function g(h) {\n if (!h) {\n h = \"\";\n }\n ;\n ;\n var i, j = arguments.length;\n if (((j > 1))) {\n for (var k = 1; ((k < j)); k++) {\n i = arguments[k];\n ((i && (h += ((\" \" + i)))));\n };\n }\n ;\n ;\n return h;\n };\n;\n e.exports = g;\n});\n__d(\"ReactPropTransferer\", [\"emptyFunction\",\"joinClasses\",\"merge\",], function(a, b, c, d, e, f) {\n var g = b(\"emptyFunction\"), h = b(\"joinClasses\"), i = b(\"merge\");\n function j(m) {\n return function(n, o, p) {\n if (!n.hasOwnProperty(o)) {\n n[o] = p;\n }\n else n[o] = m(n[o], p);\n ;\n ;\n };\n };\n;\n var k = {\n children: g,\n className: j(h),\n ref: g,\n style: j(i)\n }, l = {\n TransferStrategies: k,\n Mixin: {\n transferPropsTo: function(m) {\n var n = {\n };\n {\n var fin67keys = ((window.top.JSBNG_Replay.forInKeys)((m.props))), fin67i = (0);\n var o;\n for (; (fin67i < fin67keys.length); (fin67i++)) {\n ((o) = (fin67keys[fin67i]));\n {\n if (m.props.hasOwnProperty(o)) {\n n[o] = m.props[o];\n }\n ;\n ;\n };\n };\n };\n ;\n {\n var fin68keys = ((window.top.JSBNG_Replay.forInKeys)((this.props))), fin68i = (0);\n var p;\n for (; (fin68i < fin68keys.length); (fin68i++)) {\n ((p) = (fin68keys[fin68i]));\n {\n if (!this.props.hasOwnProperty(p)) {\n continue;\n }\n ;\n ;\n var q = k[p];\n if (q) {\n q(n, p, this.props[p]);\n }\n else if (!n.hasOwnProperty(p)) {\n n[p] = this.props[p];\n }\n \n ;\n ;\n };\n };\n };\n ;\n m.props = n;\n return m;\n }\n }\n };\n e.exports = l;\n});\n__d(\"ReactCompositeComponent\", [\"ReactComponent\",\"ReactCurrentOwner\",\"ReactOwner\",\"ReactPropTransferer\",\"ReactUpdates\",\"invariant\",\"keyMirror\",\"merge\",\"mixInto\",], function(a, b, c, d, e, f) {\n var g = b(\"ReactComponent\"), h = b(\"ReactCurrentOwner\"), i = b(\"ReactOwner\"), j = b(\"ReactPropTransferer\"), k = b(\"ReactUpdates\"), l = b(\"invariant\"), m = b(\"keyMirror\"), n = b(\"merge\"), o = b(\"mixInto\"), p = m({\n DEFINE_ONCE: null,\n DEFINE_MANY: null,\n OVERRIDE_BASE: null\n }), q = {\n mixins: p.DEFINE_MANY,\n propTypes: p.DEFINE_ONCE,\n getDefaultProps: p.DEFINE_ONCE,\n getInitialState: p.DEFINE_ONCE,\n render: p.DEFINE_ONCE,\n componentWillMount: p.DEFINE_MANY,\n componentDidMount: p.DEFINE_MANY,\n componentWillReceiveProps: p.DEFINE_MANY,\n shouldComponentUpdate: p.DEFINE_ONCE,\n componentWillUpdate: p.DEFINE_MANY,\n componentDidUpdate: p.DEFINE_MANY,\n componentWillUnmount: p.DEFINE_MANY,\n updateComponent: p.OVERRIDE_BASE\n }, r = {\n displayName: function(aa, ba) {\n aa.displayName = ba;\n },\n mixins: function(aa, ba) {\n if (ba) {\n for (var ca = 0; ((ca < ba.length)); ca++) {\n u(aa, ba[ca]);\n ;\n };\n }\n ;\n ;\n },\n propTypes: function(aa, ba) {\n aa.propTypes = ba;\n }\n };\n function s(aa, ba) {\n var ca = q[ba];\n if (x.hasOwnProperty(ba)) {\n l(((ca === p.OVERRIDE_BASE)));\n }\n ;\n ;\n if (aa.hasOwnProperty(ba)) {\n l(((ca === p.DEFINE_MANY)));\n }\n ;\n ;\n };\n;\n function t(aa) {\n var ba = aa._compositeLifeCycleState;\n l(((aa.isMounted() || ((ba === w.MOUNTING)))));\n l(((((ba !== w.RECEIVING_STATE)) && ((ba !== w.UNMOUNTING)))));\n };\n;\n function u(aa, ba) {\n var ca = aa.prototype;\n {\n var fin69keys = ((window.top.JSBNG_Replay.forInKeys)((ba))), fin69i = (0);\n var da;\n for (; (fin69i < fin69keys.length); (fin69i++)) {\n ((da) = (fin69keys[fin69i]));\n {\n var ea = ba[da];\n if (((!ba.hasOwnProperty(da) || !ea))) {\n continue;\n }\n ;\n ;\n s(ca, da);\n if (r.hasOwnProperty(da)) {\n r[da](aa, ea);\n }\n else {\n var fa = ((da in q)), ga = ((da in ca)), ha = ea.__reactDontBind, ia = ((typeof ea === \"function\")), ja = ((((((ia && !fa)) && !ga)) && !ha));\n if (ja) {\n if (!ca.__reactAutoBindMap) {\n ca.__reactAutoBindMap = {\n };\n }\n ;\n ;\n ca.__reactAutoBindMap[da] = ea;\n ca[da] = ea;\n }\n else if (ga) {\n ca[da] = v(ca[da], ea);\n }\n else ca[da] = ea;\n \n ;\n ;\n }\n ;\n ;\n };\n };\n };\n ;\n };\n;\n function v(aa, ba) {\n return function ca() {\n aa.apply(this, arguments);\n ba.apply(this, arguments);\n };\n };\n;\n var w = m({\n MOUNTING: null,\n UNMOUNTING: null,\n RECEIVING_PROPS: null,\n RECEIVING_STATE: null\n }), x = {\n construct: function(aa, ba) {\n g.Mixin.construct.apply(this, arguments);\n this.state = null;\n this._pendingState = null;\n this._compositeLifeCycleState = null;\n },\n isMounted: function() {\n return ((g.Mixin.isMounted.call(this) && ((this._compositeLifeCycleState !== w.MOUNTING))));\n },\n mountComponent: function(aa, ba) {\n g.Mixin.mountComponent.call(this, aa, ba);\n this._compositeLifeCycleState = w.MOUNTING;\n this._defaultProps = ((this.getDefaultProps ? this.getDefaultProps() : null));\n this._processProps(this.props);\n if (this.__reactAutoBindMap) {\n this._bindAutoBindMethods();\n }\n ;\n ;\n this.state = ((this.getInitialState ? this.getInitialState() : null));\n this._pendingState = null;\n this._pendingForceUpdate = false;\n if (this.componentWillMount) {\n this.componentWillMount();\n if (this._pendingState) {\n this.state = this._pendingState;\n this._pendingState = null;\n }\n ;\n ;\n }\n ;\n ;\n this._renderedComponent = this._renderValidatedComponent();\n this._compositeLifeCycleState = null;\n var ca = this._renderedComponent.mountComponent(aa, ba);\n if (this.componentDidMount) {\n ba.getReactOnDOMReady().enqueue(this, this.componentDidMount);\n }\n ;\n ;\n return ca;\n },\n unmountComponent: function() {\n this._compositeLifeCycleState = w.UNMOUNTING;\n if (this.componentWillUnmount) {\n this.componentWillUnmount();\n }\n ;\n ;\n this._compositeLifeCycleState = null;\n this._defaultProps = null;\n g.Mixin.unmountComponent.call(this);\n this._renderedComponent.unmountComponent();\n this._renderedComponent = null;\n if (this.refs) {\n this.refs = null;\n }\n ;\n ;\n },\n setState: function(aa, ba) {\n this.replaceState(n(((this._pendingState || this.state)), aa), ba);\n },\n replaceState: function(aa, ba) {\n t(this);\n this._pendingState = aa;\n k.enqueueUpdate(this, ba);\n },\n _processProps: function(aa) {\n var ba, ca = this._defaultProps;\n {\n var fin70keys = ((window.top.JSBNG_Replay.forInKeys)((ca))), fin70i = (0);\n (0);\n for (; (fin70i < fin70keys.length); (fin70i++)) {\n ((ba) = (fin70keys[fin70i]));\n {\n if (!((ba in aa))) {\n aa[ba] = ca[ba];\n }\n ;\n ;\n };\n };\n };\n ;\n var da = this.constructor.propTypes;\n if (da) {\n var ea = this.constructor.displayName;\n {\n var fin71keys = ((window.top.JSBNG_Replay.forInKeys)((da))), fin71i = (0);\n (0);\n for (; (fin71i < fin71keys.length); (fin71i++)) {\n ((ba) = (fin71keys[fin71i]));\n {\n var fa = da[ba];\n if (fa) {\n fa(aa, ba, ea);\n }\n ;\n ;\n };\n };\n };\n ;\n }\n ;\n ;\n },\n performUpdateIfNecessary: function() {\n var aa = this._compositeLifeCycleState;\n if (((((aa === w.MOUNTING)) || ((aa === w.RECEIVING_PROPS))))) {\n return;\n }\n ;\n ;\n g.Mixin.performUpdateIfNecessary.call(this);\n },\n _performUpdateIfNecessary: function(aa) {\n if (((((((this._pendingProps == null)) && ((this._pendingState == null)))) && !this._pendingForceUpdate))) {\n return;\n }\n ;\n ;\n var ba = this.props;\n if (((this._pendingProps != null))) {\n ba = this._pendingProps;\n this._processProps(ba);\n this._pendingProps = null;\n this._compositeLifeCycleState = w.RECEIVING_PROPS;\n if (this.componentWillReceiveProps) {\n this.componentWillReceiveProps(ba, aa);\n }\n ;\n ;\n }\n ;\n ;\n this._compositeLifeCycleState = w.RECEIVING_STATE;\n var ca = ((this._pendingState || this.state));\n this._pendingState = null;\n if (((((this._pendingForceUpdate || !this.shouldComponentUpdate)) || this.shouldComponentUpdate(ba, ca)))) {\n this._pendingForceUpdate = false;\n this._performComponentUpdate(ba, ca, aa);\n }\n else {\n this.props = ba;\n this.state = ca;\n }\n ;\n ;\n this._compositeLifeCycleState = null;\n },\n _performComponentUpdate: function(aa, ba, ca) {\n var da = this.props, ea = this.state;\n if (this.componentWillUpdate) {\n this.componentWillUpdate(aa, ba, ca);\n }\n ;\n ;\n this.props = aa;\n this.state = ba;\n this.updateComponent(ca, da, ea);\n if (this.componentDidUpdate) {\n ca.getReactOnDOMReady().enqueue(this, this.componentDidUpdate.bind(this, da, ea));\n }\n ;\n ;\n },\n updateComponent: function(aa, ba, ca) {\n g.Mixin.updateComponent.call(this, aa, ba);\n var da = this._renderedComponent, ea = this._renderValidatedComponent();\n if (((da.constructor === ea.constructor))) {\n da.receiveProps(ea.props, aa);\n }\n else {\n var fa = this._rootNodeID, ga = da._rootNodeID;\n da.unmountComponent();\n var ha = ea.mountComponent(fa, aa);\n g.DOMIDOperations.dangerouslyReplaceNodeWithMarkupByID(ga, ha);\n this._renderedComponent = ea;\n }\n ;\n ;\n },\n forceUpdate: function(aa) {\n var ba = this._compositeLifeCycleState;\n l(((this.isMounted() || ((ba === w.MOUNTING)))));\n l(((((ba !== w.RECEIVING_STATE)) && ((ba !== w.UNMOUNTING)))));\n this._pendingForceUpdate = true;\n k.enqueueUpdate(this, aa);\n },\n _renderValidatedComponent: function() {\n var aa;\n h.current = this;\n try {\n aa = this.render();\n } catch (ba) {\n throw ba;\n } finally {\n h.current = null;\n };\n ;\n l(g.isValidComponent(aa));\n return aa;\n },\n _bindAutoBindMethods: function() {\n {\n var fin72keys = ((window.top.JSBNG_Replay.forInKeys)((this.__reactAutoBindMap))), fin72i = (0);\n var aa;\n for (; (fin72i < fin72keys.length); (fin72i++)) {\n ((aa) = (fin72keys[fin72i]));\n {\n if (!this.__reactAutoBindMap.hasOwnProperty(aa)) {\n continue;\n }\n ;\n ;\n var ba = this.__reactAutoBindMap[aa];\n this[aa] = this._bindAutoBindMethod(ba);\n };\n };\n };\n ;\n },\n _bindAutoBindMethod: function(aa) {\n var ba = this, ca = function() {\n return aa.apply(ba, arguments);\n };\n return ca;\n }\n }, y = function() {\n \n };\n o(y, g.Mixin);\n o(y, i.Mixin);\n o(y, j.Mixin);\n o(y, x);\n var z = {\n LifeCycle: w,\n Base: y,\n createClass: function(aa) {\n var ba = function() {\n \n };\n ba.prototype = new y();\n ba.prototype.constructor = ba;\n u(ba, aa);\n l(ba.prototype.render);\n {\n var fin73keys = ((window.top.JSBNG_Replay.forInKeys)((q))), fin73i = (0);\n var ca;\n for (; (fin73i < fin73keys.length); (fin73i++)) {\n ((ca) = (fin73keys[fin73i]));\n {\n if (!ba.prototype[ca]) {\n ba.prototype[ca] = null;\n }\n ;\n ;\n };\n };\n };\n ;\n var da = function(ea, fa) {\n var ga = new ba();\n ga.construct.apply(ga, arguments);\n return ga;\n };\n da.componentConstructor = ba;\n da.originalSpec = aa;\n return da;\n },\n autoBind: function(aa) {\n return aa;\n }\n };\n e.exports = z;\n});\n__d(\"ReactMultiChild\", [\"ReactComponent\",], function(a, b, c, d, e, f) {\n var g = b(\"ReactComponent\");\n function h(k, l) {\n return ((((k && l)) && ((k.constructor === l.constructor))));\n };\n;\n var i = {\n enqueueMarkupAt: function(k, l) {\n this.domOperations = ((this.domOperations || []));\n this.domOperations.push({\n insertMarkup: k,\n finalIndex: l\n });\n },\n enqueueMove: function(k, l) {\n this.domOperations = ((this.domOperations || []));\n this.domOperations.push({\n moveFrom: k,\n finalIndex: l\n });\n },\n enqueueUnmountChildByName: function(k, l) {\n if (g.isValidComponent(l)) {\n this.domOperations = ((this.domOperations || []));\n this.domOperations.push({\n removeAt: l._domIndex\n });\n ((l.unmountComponent && l.unmountComponent()));\n delete this._renderedChildren[k];\n }\n ;\n ;\n },\n processChildDOMOperationsQueue: function() {\n if (this.domOperations) {\n g.DOMIDOperations.manageChildrenByParentID(this._rootNodeID, this.domOperations);\n this.domOperations = null;\n }\n ;\n ;\n },\n unmountMultiChild: function() {\n var k = this._renderedChildren;\n {\n var fin74keys = ((window.top.JSBNG_Replay.forInKeys)((k))), fin74i = (0);\n var l;\n for (; (fin74i < fin74keys.length); (fin74i++)) {\n ((l) = (fin74keys[fin74i]));\n {\n if (((k.hasOwnProperty(l) && k[l]))) {\n var m = k[l];\n ((m.unmountComponent && m.unmountComponent()));\n }\n ;\n ;\n };\n };\n };\n ;\n this._renderedChildren = null;\n },\n mountMultiChild: function(k, l) {\n var m = \"\", n = 0;\n {\n var fin75keys = ((window.top.JSBNG_Replay.forInKeys)((k))), fin75i = (0);\n var o;\n for (; (fin75i < fin75keys.length); (fin75i++)) {\n ((o) = (fin75keys[fin75i]));\n {\n var p = k[o];\n if (((k.hasOwnProperty(o) && p))) {\n m += p.mountComponent(((((this._rootNodeID + \".\")) + o)), l);\n p._domIndex = n;\n n++;\n }\n ;\n ;\n };\n };\n };\n ;\n this._renderedChildren = k;\n this.domOperations = null;\n return m;\n },\n updateMultiChild: function(k, l) {\n if (((!k && !this._renderedChildren))) {\n return;\n }\n else if (((k && !this._renderedChildren))) {\n this._renderedChildren = {\n };\n }\n else if (((!k && this._renderedChildren))) {\n k = {\n };\n }\n \n \n ;\n ;\n var m = ((this._rootNodeID + \".\")), n = null, o = 0, p = 0, q = 0;\n {\n var fin76keys = ((window.top.JSBNG_Replay.forInKeys)((k))), fin76i = (0);\n var r;\n for (; (fin76i < fin76keys.length); (fin76i++)) {\n ((r) = (fin76keys[fin76i]));\n {\n if (!k.hasOwnProperty(r)) {\n continue;\n }\n ;\n ;\n var s = this._renderedChildren[r], t = k[r];\n if (h(s, t)) {\n if (n) {\n this.enqueueMarkupAt(n, ((p - o)));\n n = null;\n }\n ;\n ;\n o = 0;\n if (((s._domIndex < q))) {\n this.enqueueMove(s._domIndex, p);\n }\n ;\n ;\n q = Math.max(s._domIndex, q);\n s.receiveProps(t.props, l);\n s._domIndex = p;\n }\n else {\n if (s) {\n this.enqueueUnmountChildByName(r, s);\n q = Math.max(s._domIndex, q);\n }\n ;\n ;\n if (t) {\n this._renderedChildren[r] = t;\n var u = t.mountComponent(((m + r)), l);\n n = ((n ? ((n + u)) : u));\n o++;\n t._domIndex = p;\n }\n ;\n ;\n }\n ;\n ;\n p = ((t ? ((p + 1)) : p));\n };\n };\n };\n ;\n if (n) {\n this.enqueueMarkupAt(n, ((p - o)));\n }\n ;\n ;\n {\n var fin77keys = ((window.top.JSBNG_Replay.forInKeys)((this._renderedChildren))), fin77i = (0);\n var v;\n for (; (fin77i < fin77keys.length); (fin77i++)) {\n ((v) = (fin77keys[fin77i]));\n {\n if (!this._renderedChildren.hasOwnProperty(v)) {\n continue;\n }\n ;\n ;\n var w = this._renderedChildren[v];\n if (((w && !k[v]))) {\n this.enqueueUnmountChildByName(v, w);\n }\n ;\n ;\n };\n };\n };\n ;\n this.processChildDOMOperationsQueue();\n }\n }, j = {\n Mixin: i\n };\n e.exports = j;\n});\n__d(\"ReactTextComponent\", [\"ReactComponent\",\"ReactID\",\"escapeTextForBrowser\",\"mixInto\",], function(a, b, c, d, e, f) {\n var g = b(\"ReactComponent\"), h = b(\"ReactID\"), i = b(\"escapeTextForBrowser\"), j = b(\"mixInto\"), k = function(l) {\n this.construct({\n text: l\n });\n };\n j(k, g.Mixin);\n j(k, {\n mountComponent: function(l) {\n g.Mixin.mountComponent.call(this, l);\n return ((((((((((((\"\\u003Cspan \" + h.ATTR_NAME)) + \"=\\\"\")) + l)) + \"\\\"\\u003E\")) + i(this.props.text))) + \"\\u003C/span\\u003E\"));\n },\n receiveProps: function(l, m) {\n if (((l.text !== this.props.text))) {\n this.props.text = l.text;\n g.DOMIDOperations.updateTextContentByID(this._rootNodeID, l.text);\n }\n ;\n ;\n }\n });\n e.exports = k;\n});\n__d(\"traverseAllChildren\", [\"ReactComponent\",\"ReactTextComponent\",\"throwIf\",], function(a, b, c, d, e, f) {\n var g = b(\"ReactComponent\"), h = b(\"ReactTextComponent\"), i = b(\"throwIf\"), j = \"DUPLICATE_KEY_ERROR\", k = \"INVALID_CHILD\", l = function(n, o, p, q, r) {\n var s = 0;\n if (Array.isArray(n)) {\n for (var t = 0; ((t < n.length)); t++) {\n var u = n[t], v = ((((((o + \"[\")) + g.getKey(u, t))) + \"]\")), w = ((p + s));\n s += l(u, v, w, q, r);\n };\n ;\n }\n else {\n var x = typeof n, y = ((o === \"\")), z = ((y ? ((((\"[\" + g.getKey(n, 0))) + \"]\")) : o));\n if (((((((n === null)) || ((n === undefined)))) || ((x === \"boolean\"))))) {\n q(r, null, z, p);\n s = 1;\n }\n else if (n.mountComponentIntoNode) {\n q(r, n, z, p);\n s = 1;\n }\n else if (((x === \"object\"))) {\n i(((n && ((n.nodeType === 1)))), k);\n {\n var fin78keys = ((window.top.JSBNG_Replay.forInKeys)((n))), fin78i = (0);\n var aa;\n for (; (fin78i < fin78keys.length); (fin78i++)) {\n ((aa) = (fin78keys[fin78i]));\n {\n if (n.hasOwnProperty(aa)) {\n s += l(n[aa], ((((((o + \"{\")) + aa)) + \"}\")), ((p + s)), q, r);\n }\n ;\n ;\n };\n };\n };\n ;\n }\n else if (((x === \"string\"))) {\n var ba = new h(n);\n q(r, ba, z, p);\n s += 1;\n }\n else if (((x === \"number\"))) {\n var ca = new h(((\"\" + n)));\n q(r, ca, z, p);\n s += 1;\n }\n \n \n \n \n ;\n ;\n }\n ;\n ;\n return s;\n };\n function m(n, o, p) {\n if (((((n !== null)) && ((n !== undefined))))) {\n l(n, \"\", 0, o, p);\n }\n ;\n ;\n };\n;\n m.DUPLICATE_KEY_ERROR = j;\n e.exports = m;\n});\n__d(\"flattenChildren\", [\"throwIf\",\"traverseAllChildren\",], function(a, b, c, d, e, f) {\n var g = b(\"throwIf\"), h = b(\"traverseAllChildren\");\n function i(k, l, m) {\n var n = k;\n n[m] = l;\n };\n;\n function j(k) {\n if (((((k === null)) || ((k === undefined))))) {\n return k;\n }\n ;\n ;\n var l = {\n };\n h(k, i, l);\n return l;\n };\n;\n e.exports = j;\n});\n__d(\"ReactNativeComponent\", [\"CSSPropertyOperations\",\"DOMProperty\",\"DOMPropertyOperations\",\"ReactComponent\",\"ReactEventEmitter\",\"ReactMultiChild\",\"ReactID\",\"escapeTextForBrowser\",\"flattenChildren\",\"invariant\",\"keyOf\",\"merge\",\"mixInto\",], function(a, b, c, d, e, f) {\n var g = b(\"CSSPropertyOperations\"), h = b(\"DOMProperty\"), i = b(\"DOMPropertyOperations\"), j = b(\"ReactComponent\"), k = b(\"ReactEventEmitter\"), l = b(\"ReactMultiChild\"), m = b(\"ReactID\"), n = b(\"escapeTextForBrowser\"), o = b(\"flattenChildren\"), p = b(\"invariant\"), q = b(\"keyOf\"), r = b(\"merge\"), s = b(\"mixInto\"), t = k.putListener, u = k.deleteListener, v = k.registrationNames, w = {\n string: true,\n number: true\n }, x = q({\n dangerouslySetInnerHTML: null\n }), y = q({\n style: null\n });\n function z(ba) {\n if (!ba) {\n return;\n }\n ;\n ;\n p(((((ba.children == null)) || ((ba.dangerouslySetInnerHTML == null)))));\n p(((((ba.style == null)) || ((typeof ba.style === \"object\")))));\n };\n;\n function aa(ba, ca) {\n this._tagOpen = ((\"\\u003C\" + ba));\n this._tagClose = ((ca ? \"\" : ((((\"\\u003C/\" + ba)) + \"\\u003E\"))));\n this.tagName = ba.toUpperCase();\n };\n;\n aa.Mixin = {\n mountComponent: function(ba, ca) {\n j.Mixin.mountComponent.call(this, ba, ca);\n z(this.props);\n return ((((this._createOpenTagMarkup() + this._createContentMarkup(ca))) + this._tagClose));\n },\n _createOpenTagMarkup: function() {\n var ba = this.props, ca = this._tagOpen;\n {\n var fin79keys = ((window.top.JSBNG_Replay.forInKeys)((ba))), fin79i = (0);\n var da;\n for (; (fin79i < fin79keys.length); (fin79i++)) {\n ((da) = (fin79keys[fin79i]));\n {\n if (!ba.hasOwnProperty(da)) {\n continue;\n }\n ;\n ;\n var ea = ba[da];\n if (((ea == null))) {\n continue;\n }\n ;\n ;\n if (v[da]) {\n t(this._rootNodeID, da, ea);\n }\n else {\n if (((da === y))) {\n if (ea) {\n ea = ba.style = r(ba.style);\n }\n ;\n ;\n ea = g.createMarkupForStyles(ea);\n }\n ;\n ;\n var fa = i.createMarkupForProperty(da, ea);\n if (fa) {\n ca += ((\" \" + fa));\n }\n ;\n ;\n }\n ;\n ;\n };\n };\n };\n ;\n var ga = n(this._rootNodeID);\n return ((((((((((ca + \" \")) + m.ATTR_NAME)) + \"=\\\"\")) + ga)) + \"\\\"\\u003E\"));\n },\n _createContentMarkup: function(ba) {\n var ca = this.props.dangerouslySetInnerHTML;\n if (((ca != null))) {\n if (((ca.__html != null))) {\n return ca.__html;\n }\n ;\n ;\n }\n else {\n var da = ((w[typeof this.props.children] ? this.props.children : null)), ea = ((((da != null)) ? null : this.props.children));\n if (((da != null))) {\n return n(da);\n }\n else if (((ea != null))) {\n return this.mountMultiChild(o(ea), ba);\n }\n \n ;\n ;\n }\n ;\n ;\n return \"\";\n },\n receiveProps: function(ba, ca) {\n z(ba);\n j.Mixin.receiveProps.call(this, ba, ca);\n },\n updateComponent: function(ba, ca) {\n j.Mixin.updateComponent.call(this, ba, ca);\n this._updateDOMProperties(ca);\n this._updateDOMChildren(ca, ba);\n },\n _updateDOMProperties: function(ba) {\n var ca = this.props, da, ea, fa;\n {\n var fin80keys = ((window.top.JSBNG_Replay.forInKeys)((ba))), fin80i = (0);\n (0);\n for (; (fin80i < fin80keys.length); (fin80i++)) {\n ((da) = (fin80keys[fin80i]));\n {\n if (((ca.hasOwnProperty(da) || !ba.hasOwnProperty(da)))) {\n continue;\n }\n ;\n ;\n if (((da === y))) {\n var ga = ba[da];\n {\n var fin81keys = ((window.top.JSBNG_Replay.forInKeys)((ga))), fin81i = (0);\n (0);\n for (; (fin81i < fin81keys.length); (fin81i++)) {\n ((ea) = (fin81keys[fin81i]));\n {\n if (ga.hasOwnProperty(ea)) {\n fa = ((fa || {\n }));\n fa[ea] = \"\";\n }\n ;\n ;\n };\n };\n };\n ;\n }\n else if (((da === x))) {\n j.DOMIDOperations.updateTextContentByID(this._rootNodeID, \"\");\n }\n else if (v[da]) {\n u(this._rootNodeID, da);\n }\n else j.DOMIDOperations.deletePropertyByID(this._rootNodeID, da);\n \n \n ;\n ;\n };\n };\n };\n ;\n {\n var fin82keys = ((window.top.JSBNG_Replay.forInKeys)((ca))), fin82i = (0);\n (0);\n for (; (fin82i < fin82keys.length); (fin82i++)) {\n ((da) = (fin82keys[fin82i]));\n {\n var ha = ca[da], ia = ba[da];\n if (((!ca.hasOwnProperty(da) || ((ha === ia))))) {\n continue;\n }\n ;\n ;\n if (((da === y))) {\n if (ha) {\n ha = ca.style = r(ha);\n }\n ;\n ;\n if (ia) {\n {\n var fin83keys = ((window.top.JSBNG_Replay.forInKeys)((ia))), fin83i = (0);\n (0);\n for (; (fin83i < fin83keys.length); (fin83i++)) {\n ((ea) = (fin83keys[fin83i]));\n {\n if (((ia.hasOwnProperty(ea) && !ha.hasOwnProperty(ea)))) {\n fa = ((fa || {\n }));\n fa[ea] = \"\";\n }\n ;\n ;\n };\n };\n };\n ;\n {\n var fin84keys = ((window.top.JSBNG_Replay.forInKeys)((ha))), fin84i = (0);\n (0);\n for (; (fin84i < fin84keys.length); (fin84i++)) {\n ((ea) = (fin84keys[fin84i]));\n {\n if (((ha.hasOwnProperty(ea) && ((ia[ea] !== ha[ea]))))) {\n fa = ((fa || {\n }));\n fa[ea] = ha[ea];\n }\n ;\n ;\n };\n };\n };\n ;\n }\n else fa = ha;\n ;\n ;\n }\n else if (((da === x))) {\n var ja = ((ia && ia.__html)), ka = ((ha && ha.__html));\n if (((ja !== ka))) {\n j.DOMIDOperations.updateInnerHTMLByID(this._rootNodeID, ha);\n }\n ;\n ;\n }\n else if (v[da]) {\n t(this._rootNodeID, da, ha);\n }\n else if (((h.isStandardName[da] || h.isCustomAttribute(da)))) {\n j.DOMIDOperations.updatePropertyByID(this._rootNodeID, da, ha);\n }\n \n \n \n ;\n ;\n };\n };\n };\n ;\n if (fa) {\n j.DOMIDOperations.updateStylesByID(this._rootNodeID, fa);\n }\n ;\n ;\n },\n _updateDOMChildren: function(ba, ca) {\n var da = this.props, ea = ((w[typeof ba.children] ? ba.children : null)), fa = ((w[typeof da.children] ? da.children : null)), ga = ((((ea != null)) ? null : ba.children)), ha = ((((fa != null)) ? null : da.children));\n if (((fa != null))) {\n var ia = ((((ga != null)) && ((ha == null))));\n if (ia) {\n this.updateMultiChild(null, ca);\n }\n ;\n ;\n if (((ea !== fa))) {\n j.DOMIDOperations.updateTextContentByID(this._rootNodeID, ((\"\" + fa)));\n }\n ;\n ;\n }\n else {\n var ja = ((((ea != null)) && ((fa == null))));\n if (ja) {\n j.DOMIDOperations.updateTextContentByID(this._rootNodeID, \"\");\n }\n ;\n ;\n this.updateMultiChild(o(da.children), ca);\n }\n ;\n ;\n },\n unmountComponent: function() {\n k.deleteAllListeners(this._rootNodeID);\n j.Mixin.unmountComponent.call(this);\n this.unmountMultiChild();\n }\n };\n s(aa, j.Mixin);\n s(aa, aa.Mixin);\n s(aa, l.Mixin);\n e.exports = aa;\n});\n__d(\"objMapKeyVal\", [], function(a, b, c, d, e, f) {\n function g(h, i, j) {\n if (!h) {\n return null;\n }\n ;\n ;\n var k = 0, l = {\n };\n {\n var fin85keys = ((window.top.JSBNG_Replay.forInKeys)((h))), fin85i = (0);\n var m;\n for (; (fin85i < fin85keys.length); (fin85i++)) {\n ((m) = (fin85keys[fin85i]));\n {\n if (h.hasOwnProperty(m)) {\n l[m] = i.call(j, m, h[m], k++);\n }\n ;\n ;\n };\n };\n };\n ;\n return l;\n };\n;\n e.exports = g;\n});\n__d(\"ReactDOM\", [\"ReactNativeComponent\",\"mergeInto\",\"objMapKeyVal\",], function(a, b, c, d, e, f) {\n var g = b(\"ReactNativeComponent\"), h = b(\"mergeInto\"), i = b(\"objMapKeyVal\");\n function j(m, n) {\n var o = function() {\n \n };\n o.prototype = new g(m, n);\n o.prototype.constructor = o;\n var p = function(q, r) {\n var s = new o();\n s.construct.apply(s, arguments);\n return s;\n };\n p.componentConstructor = o;\n return p;\n };\n;\n var k = i({\n a: false,\n abbr: false,\n address: false,\n area: false,\n article: false,\n aside: false,\n audio: false,\n b: false,\n base: false,\n bdi: false,\n bdo: false,\n big: false,\n blockquote: false,\n body: false,\n br: true,\n button: false,\n canvas: false,\n caption: false,\n cite: false,\n code: false,\n col: true,\n colgroup: false,\n data: false,\n datalist: false,\n dd: false,\n del: false,\n details: false,\n dfn: false,\n div: false,\n dl: false,\n dt: false,\n em: false,\n embed: true,\n fieldset: false,\n figcaption: false,\n figure: false,\n footer: false,\n form: false,\n h1: false,\n h2: false,\n h3: false,\n h4: false,\n h5: false,\n h6: false,\n head: false,\n header: false,\n hr: true,\n html: false,\n i: false,\n iframe: false,\n img: true,\n input: true,\n ins: false,\n kbd: false,\n keygen: true,\n label: false,\n legend: false,\n li: false,\n link: false,\n main: false,\n map: false,\n mark: false,\n menu: false,\n menuitem: false,\n meta: true,\n meter: false,\n nav: false,\n noscript: false,\n object: false,\n ol: false,\n optgroup: false,\n option: false,\n output: false,\n p: false,\n param: true,\n pre: false,\n progress: false,\n q: false,\n rp: false,\n rt: false,\n ruby: false,\n s: false,\n samp: false,\n script: false,\n section: false,\n select: false,\n small: false,\n source: false,\n span: false,\n strong: false,\n style: false,\n sub: false,\n summary: false,\n sup: false,\n table: false,\n tbody: false,\n td: false,\n textarea: false,\n tfoot: false,\n th: false,\n thead: false,\n time: false,\n title: false,\n tr: false,\n track: true,\n u: false,\n ul: false,\n \"var\": false,\n video: false,\n wbr: false,\n circle: false,\n g: false,\n line: false,\n path: false,\n polyline: false,\n rect: false,\n svg: false,\n text: false\n }, j), l = {\n injectComponentClasses: function(m) {\n h(k, m);\n }\n };\n k.injection = l;\n e.exports = k;\n});\n__d(\"ReactPropTypes\", [\"createObjectFrom\",\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"createObjectFrom\"), h = b(\"invariant\"), i = {\n array: k(\"array\"),\n bool: k(\"boolean\"),\n func: k(\"function\"),\n number: k(\"number\"),\n object: k(\"object\"),\n string: k(\"string\"),\n oneOf: l,\n instanceOf: m\n }, j = \"\\u003C\\u003Canonymous\\u003E\\u003E\";\n function k(o) {\n function p(q, r, s) {\n var t = typeof q;\n if (((((t === \"object\")) && Array.isArray(q)))) {\n t = \"array\";\n }\n ;\n ;\n h(((t === o)));\n };\n ;\n return n(p);\n };\n;\n function l(o) {\n var p = g(o);\n function q(r, s, t) {\n h(p[r]);\n };\n ;\n return n(q);\n };\n;\n function m(o) {\n function p(q, r, s) {\n h(((q instanceof o)));\n };\n ;\n return n(p);\n };\n;\n function n(o) {\n function p(q) {\n function r(s, t, u) {\n var v = s[t];\n if (((v != null))) {\n o(v, t, ((u || j)));\n }\n else h(!q);\n ;\n ;\n };\n ;\n if (!q) {\n r.isRequired = p(true);\n }\n ;\n ;\n return r;\n };\n ;\n return p(false);\n };\n;\n e.exports = i;\n});\n__d(\"ReactServerRendering\", [\"ReactReconcileTransaction\",\"ReactInstanceHandles\",], function(a, b, c, d, e, f) {\n var g = b(\"ReactReconcileTransaction\"), h = b(\"ReactInstanceHandles\");\n function i(j, k) {\n var l = h.createReactRootID(), m = g.getPooled();\n m.reinitializeTransaction();\n try {\n m.perform(function() {\n k(j.mountComponent(l, m));\n }, null);\n } finally {\n g.release(m);\n };\n ;\n };\n;\n e.exports = {\n renderComponentToString: i\n };\n});\n__d(\"ReactDOMForm\", [\"ReactCompositeComponent\",\"ReactDOM\",\"ReactEventEmitter\",\"EventConstants\",], function(a, b, c, d, e, f) {\n var g = b(\"ReactCompositeComponent\"), h = b(\"ReactDOM\"), i = b(\"ReactEventEmitter\"), j = b(\"EventConstants\"), k = h.form, l = g.createClass({\n render: function() {\n return this.transferPropsTo(k(null, this.props.children));\n },\n componentDidMount: function(m) {\n i.trapBubbledEvent(j.topLevelTypes.topSubmit, \"submit\", m);\n }\n });\n e.exports = l;\n});\n__d(\"ReactDOMInput\", [\"DOMPropertyOperations\",\"ReactCompositeComponent\",\"ReactDOM\",\"merge\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMPropertyOperations\"), h = b(\"ReactCompositeComponent\"), i = b(\"ReactDOM\"), j = b(\"merge\"), k = i.input, l = h.createClass({\n getInitialState: function() {\n return {\n checked: ((this.props.defaultChecked || false)),\n value: ((this.props.defaultValue || \"\"))\n };\n },\n shouldComponentUpdate: function() {\n return !this._isChanging;\n },\n getChecked: function() {\n return ((((this.props.checked != null)) ? this.props.checked : this.state.checked));\n },\n getValue: function() {\n return ((((this.props.value != null)) ? ((\"\" + this.props.value)) : this.state.value));\n },\n render: function() {\n var m = j(this.props);\n m.checked = this.getChecked();\n m.value = this.getValue();\n m.onChange = this.handleChange;\n return k(m, this.props.children);\n },\n componentDidUpdate: function(m, n, o) {\n if (((this.props.checked != null))) {\n g.setValueForProperty(o, \"checked\", ((this.props.checked || false)));\n }\n ;\n ;\n if (((this.props.value != null))) {\n g.setValueForProperty(o, \"value\", ((((\"\" + this.props.value)) || \"\")));\n }\n ;\n ;\n },\n handleChange: function(JSBNG__event) {\n var m;\n if (this.props.onChange) {\n this._isChanging = true;\n m = this.props.onChange(JSBNG__event);\n this._isChanging = false;\n }\n ;\n ;\n this.setState({\n checked: JSBNG__event.target.checked,\n value: JSBNG__event.target.value\n });\n return m;\n }\n });\n e.exports = l;\n});\n__d(\"ReactDOMOption\", [\"ReactCompositeComponent\",\"ReactDOM\",], function(a, b, c, d, e, f) {\n var g = b(\"ReactCompositeComponent\"), h = b(\"ReactDOM\"), i = h.option, j = g.createClass({\n componentWillMount: function() {\n ((this.props.selected != null));\n },\n render: function() {\n return i(this.props, this.props.children);\n }\n });\n e.exports = j;\n});\n__d(\"ReactDOMSelect\", [\"ReactCompositeComponent\",\"ReactDOM\",\"invariant\",\"merge\",], function(a, b, c, d, e, f) {\n var g = b(\"ReactCompositeComponent\"), h = b(\"ReactDOM\"), i = b(\"invariant\"), j = b(\"merge\"), k = h.select;\n function l(o, p, q) {\n if (((o[p] == null))) {\n return;\n }\n ;\n ;\n if (o.multiple) {\n i(Array.isArray(o[p]));\n }\n else i(!Array.isArray(o[p]));\n ;\n ;\n };\n;\n function m() {\n if (((this.props.value == null))) {\n return;\n }\n ;\n ;\n var o = this.getDOMNode().options, p = ((\"\" + this.props.value));\n for (var q = 0, r = o.length; ((q < r)); q++) {\n var s = ((this.props.multiple ? ((p.indexOf(o[q].value) >= 0)) : s = ((o[q].value === p))));\n if (((s !== o[q].selected))) {\n o[q].selected = s;\n }\n ;\n ;\n };\n ;\n };\n;\n var n = g.createClass({\n propTypes: {\n defaultValue: l,\n value: l\n },\n getInitialState: function() {\n return {\n value: ((this.props.defaultValue || ((this.props.multiple ? [] : \"\"))))\n };\n },\n componentWillReceiveProps: function(o) {\n if (((!this.props.multiple && o.multiple))) {\n this.setState({\n value: [this.state.value,]\n });\n }\n else if (((this.props.multiple && !o.multiple))) {\n this.setState({\n value: this.state.value[0]\n });\n }\n \n ;\n ;\n },\n shouldComponentUpdate: function() {\n return !this._isChanging;\n },\n render: function() {\n var o = j(this.props);\n o.onChange = this.handleChange;\n o.value = null;\n return k(o, this.props.children);\n },\n componentDidMount: m,\n componentDidUpdate: m,\n handleChange: function(JSBNG__event) {\n var o;\n if (this.props.onChange) {\n this._isChanging = true;\n o = this.props.onChange(JSBNG__event);\n this._isChanging = false;\n }\n ;\n ;\n var p;\n if (this.props.multiple) {\n p = [];\n var q = JSBNG__event.target.options;\n for (var r = 0, s = q.length; ((r < s)); r++) {\n if (q[r].selected) {\n p.push(q[r].value);\n }\n ;\n ;\n };\n ;\n }\n else p = JSBNG__event.target.value;\n ;\n ;\n this.setState({\n value: p\n });\n return o;\n }\n });\n e.exports = n;\n});\n__d(\"ReactDOMTextarea\", [\"DOMPropertyOperations\",\"ReactCompositeComponent\",\"ReactDOM\",\"invariant\",\"merge\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMPropertyOperations\"), h = b(\"ReactCompositeComponent\"), i = b(\"ReactDOM\"), j = b(\"invariant\"), k = b(\"merge\"), l = i.textarea, m = {\n string: true,\n number: true\n }, n = h.createClass({\n getInitialState: function() {\n var o = this.props.defaultValue, p = this.props.children;\n if (((p != null))) {\n j(((o == null)));\n if (Array.isArray(p)) {\n j(((p.length <= 1)));\n p = p[0];\n }\n ;\n ;\n j(m[typeof p]);\n o = ((\"\" + p));\n }\n ;\n ;\n o = ((o || \"\"));\n return {\n initialValue: ((((this.props.value != null)) ? this.props.value : o)),\n value: o\n };\n },\n shouldComponentUpdate: function() {\n return !this._isChanging;\n },\n getValue: function() {\n return ((((this.props.value != null)) ? this.props.value : this.state.value));\n },\n render: function() {\n var o = k(this.props);\n j(((o.dangerouslySetInnerHTML == null)));\n o.value = this.getValue();\n o.onChange = this.handleChange;\n return l(o, this.state.initialValue);\n },\n componentDidUpdate: function(o, p, q) {\n if (((this.props.value != null))) {\n g.setValueForProperty(q, \"value\", ((this.props.value || \"\")));\n }\n ;\n ;\n },\n handleChange: function(JSBNG__event) {\n var o;\n if (this.props.onChange) {\n this._isChanging = true;\n o = this.props.onChange(JSBNG__event);\n this._isChanging = false;\n }\n ;\n ;\n this.setState({\n value: JSBNG__event.target.value\n });\n return o;\n }\n });\n e.exports = n;\n});\n__d(\"DefaultDOMPropertyConfig\", [\"DOMProperty\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMProperty\"), h = g.injection.MUST_USE_ATTRIBUTE, i = g.injection.MUST_USE_PROPERTY, j = g.injection.HAS_BOOLEAN_VALUE, k = g.injection.HAS_SIDE_EFFECTS, l = {\n isCustomAttribute: RegExp.prototype.test.bind(/^(data|aria)-[a-z_][a-z\\d_.\\-]*$/),\n Properties: {\n accessKey: null,\n accept: null,\n action: null,\n ajaxify: h,\n allowFullScreen: ((h | j)),\n allowTransparency: h,\n alt: null,\n autoComplete: null,\n autoFocus: j,\n autoPlay: j,\n cellPadding: null,\n cellSpacing: null,\n checked: ((i | j)),\n className: i,\n colSpan: null,\n contentEditable: null,\n contextMenu: h,\n controls: ((i | j)),\n data: null,\n dateTime: h,\n dir: null,\n disabled: ((i | j)),\n draggable: null,\n encType: null,\n frameBorder: h,\n height: h,\n hidden: ((h | j)),\n href: null,\n htmlFor: null,\n icon: null,\n id: i,\n label: null,\n lang: null,\n list: null,\n max: null,\n maxLength: h,\n method: null,\n min: null,\n multiple: ((i | j)),\n JSBNG__name: null,\n pattern: null,\n poster: null,\n preload: null,\n placeholder: null,\n radioGroup: null,\n rel: null,\n readOnly: ((i | j)),\n required: j,\n role: h,\n scrollLeft: i,\n scrollTop: i,\n selected: ((i | j)),\n size: null,\n spellCheck: null,\n src: null,\n step: null,\n style: null,\n tabIndex: null,\n target: null,\n title: null,\n type: null,\n value: ((i | k)),\n width: h,\n wmode: h,\n cx: i,\n cy: i,\n d: i,\n fill: i,\n fx: i,\n fy: i,\n points: i,\n r: i,\n stroke: i,\n strokeLinecap: i,\n strokeWidth: i,\n transform: i,\n x: i,\n x1: i,\n x2: i,\n version: i,\n viewBox: i,\n y: i,\n y1: i,\n y2: i,\n spreadMethod: i,\n offset: i,\n stopColor: i,\n stopOpacity: i,\n gradientUnits: i,\n gradientTransform: i\n },\n DOMAttributeNames: {\n className: \"class\",\n htmlFor: \"for\",\n strokeLinecap: \"stroke-linecap\",\n strokeWidth: \"stroke-width\",\n stopColor: \"stop-color\",\n stopOpacity: \"stop-opacity\"\n },\n DOMPropertyNames: {\n autoComplete: \"autocomplete\",\n autoFocus: \"autofocus\",\n autoPlay: \"autoplay\",\n encType: \"enctype\",\n radioGroup: \"radiogroup\",\n spellCheck: \"spellcheck\"\n },\n DOMMutationMethods: {\n className: function(m, n) {\n m.className = ((n || \"\"));\n }\n }\n };\n e.exports = l;\n});\n__d(\"DefaultEventPluginOrder\", [\"keyOf\",], function(a, b, c, d, e, f) {\n var g = b(\"keyOf\"), h = [g({\n ResponderEventPlugin: null\n }),g({\n SimpleEventPlugin: null\n }),g({\n TapEventPlugin: null\n }),g({\n EnterLeaveEventPlugin: null\n }),g({\n ChangeEventPlugin: null\n }),g({\n AnalyticsEventPlugin: null\n }),];\n e.exports = h;\n});\n__d(\"SyntheticEvent\", [\"PooledClass\",\"emptyFunction\",\"getEventTarget\",\"merge\",\"mergeInto\",], function(a, b, c, d, e, f) {\n var g = b(\"PooledClass\"), h = b(\"emptyFunction\"), i = b(\"getEventTarget\"), j = b(\"merge\"), k = b(\"mergeInto\"), l = {\n type: null,\n target: i,\n currentTarget: null,\n eventPhase: null,\n bubbles: null,\n cancelable: null,\n timeStamp: function(JSBNG__event) {\n return ((JSBNG__event.timeStamp || JSBNG__Date.now()));\n },\n defaultPrevented: null,\n isTrusted: null\n };\n function m(n, o, p) {\n this.dispatchConfig = n;\n this.dispatchMarker = o;\n this.nativeEvent = p;\n var q = this.constructor.Interface;\n {\n var fin86keys = ((window.top.JSBNG_Replay.forInKeys)((q))), fin86i = (0);\n var r;\n for (; (fin86i < fin86keys.length); (fin86i++)) {\n ((r) = (fin86keys[fin86i]));\n {\n var s = q[r];\n if (s) {\n this[r] = s(p);\n }\n else this[r] = p[r];\n ;\n ;\n };\n };\n };\n ;\n if (((p.defaultPrevented || ((p.returnValue === false))))) {\n this.isDefaultPrevented = h.thatReturnsTrue;\n }\n else this.isDefaultPrevented = h.thatReturnsFalse;\n ;\n ;\n this.isPropagationStopped = h.thatReturnsFalse;\n };\n;\n k(m.prototype, {\n preventDefault: function() {\n this.defaultPrevented = true;\n var JSBNG__event = this.nativeEvent;\n ((JSBNG__event.preventDefault ? JSBNG__event.preventDefault() : JSBNG__event.returnValue = false));\n this.isDefaultPrevented = h.thatReturnsTrue;\n },\n stopPropagation: function() {\n var JSBNG__event = this.nativeEvent;\n ((JSBNG__event.stopPropagation ? JSBNG__event.stopPropagation() : JSBNG__event.cancelBubble = true));\n this.isPropagationStopped = h.thatReturnsTrue;\n },\n persist: function() {\n this.isPersistent = h.thatReturnsTrue;\n },\n isPersistent: h.thatReturnsFalse,\n destructor: function() {\n var n = this.constructor.Interface;\n {\n var fin87keys = ((window.top.JSBNG_Replay.forInKeys)((n))), fin87i = (0);\n var o;\n for (; (fin87i < fin87keys.length); (fin87i++)) {\n ((o) = (fin87keys[fin87i]));\n {\n this[o] = null;\n ;\n };\n };\n };\n ;\n this.dispatchConfig = null;\n this.dispatchMarker = null;\n this.nativeEvent = null;\n }\n });\n m.Interface = l;\n m.augmentClass = function(n, o) {\n var p = this, q = Object.create(p.prototype);\n k(q, n.prototype);\n n.prototype = q;\n n.prototype.constructor = n;\n n.Interface = j(p.Interface, o);\n n.augmentClass = p.augmentClass;\n g.addPoolingTo(n, g.threeArgumentPooler);\n };\n g.addPoolingTo(m, g.threeArgumentPooler);\n e.exports = m;\n});\n__d(\"SyntheticUIEvent\", [\"SyntheticEvent\",], function(a, b, c, d, e, f) {\n var g = b(\"SyntheticEvent\"), h = {\n view: null,\n detail: null\n };\n function i(j, k, l) {\n g.call(this, j, k, l);\n };\n;\n g.augmentClass(i, h);\n e.exports = i;\n});\n__d(\"SyntheticMouseEvent\", [\"SyntheticUIEvent\",\"ViewportMetrics\",], function(a, b, c, d, e, f) {\n var g = b(\"SyntheticUIEvent\"), h = b(\"ViewportMetrics\"), i = {\n JSBNG__screenX: null,\n JSBNG__screenY: null,\n clientX: null,\n clientY: null,\n ctrlKey: null,\n shiftKey: null,\n altKey: null,\n metaKey: null,\n button: function(JSBNG__event) {\n var k = JSBNG__event.button;\n if (((\"which\" in JSBNG__event))) {\n return k;\n }\n ;\n ;\n return ((((k === 2)) ? 2 : ((((k === 4)) ? 1 : 0))));\n },\n buttons: null,\n relatedTarget: function(JSBNG__event) {\n return ((JSBNG__event.relatedTarget || ((((JSBNG__event.fromElement === JSBNG__event.srcElement)) ? JSBNG__event.toElement : JSBNG__event.fromElement))));\n },\n pageX: function(JSBNG__event) {\n return ((((\"pageX\" in JSBNG__event)) ? JSBNG__event.pageX : ((JSBNG__event.clientX + h.currentScrollLeft))));\n },\n pageY: function(JSBNG__event) {\n return ((((\"pageY\" in JSBNG__event)) ? JSBNG__event.pageY : ((JSBNG__event.clientY + h.currentScrollTop))));\n }\n };\n function j(k, l, m) {\n g.call(this, k, l, m);\n };\n;\n g.augmentClass(j, i);\n e.exports = j;\n});\n__d(\"EnterLeaveEventPlugin\", [\"EventConstants\",\"EventPropagators\",\"ExecutionEnvironment\",\"ReactInstanceHandles\",\"SyntheticMouseEvent\",\"ReactID\",\"keyOf\",], function(a, b, c, d, e, f) {\n var g = b(\"EventConstants\"), h = b(\"EventPropagators\"), i = b(\"ExecutionEnvironment\"), j = b(\"ReactInstanceHandles\"), k = b(\"SyntheticMouseEvent\"), l = b(\"ReactID\"), m = b(\"keyOf\"), n = g.topLevelTypes, o = j.getFirstReactDOM, p = {\n mouseEnter: {\n registrationName: m({\n onMouseEnter: null\n })\n },\n mouseLeave: {\n registrationName: m({\n onMouseLeave: null\n })\n }\n }, q = {\n eventTypes: p,\n extractEvents: function(r, s, t, u) {\n if (((((r === n.topMouseOver)) && ((u.relatedTarget || u.fromElement))))) {\n return null;\n }\n ;\n ;\n if (((((r !== n.topMouseOut)) && ((r !== n.topMouseOver))))) {\n return null;\n }\n ;\n ;\n var v, w;\n if (((r === n.topMouseOut))) {\n v = s;\n w = ((o(((u.relatedTarget || u.toElement))) || i.global));\n }\n else {\n v = i.global;\n w = s;\n }\n ;\n ;\n if (((v === w))) {\n return null;\n }\n ;\n ;\n var x = ((v ? l.getID(v) : \"\")), y = ((w ? l.getID(w) : \"\")), z = k.getPooled(p.mouseLeave, x, u), aa = k.getPooled(p.mouseEnter, y, u);\n h.accumulateEnterLeaveDispatches(z, aa, x, y);\n return [z,aa,];\n }\n };\n e.exports = q;\n});\n__d(\"ChangeEventPlugin\", [\"EventConstants\",\"EventPluginHub\",\"EventPropagators\",\"ExecutionEnvironment\",\"SyntheticEvent\",\"isEventSupported\",\"keyOf\",], function(a, b, c, d, e, f) {\n var g = b(\"EventConstants\"), h = b(\"EventPluginHub\"), i = b(\"EventPropagators\"), j = b(\"ExecutionEnvironment\"), k = b(\"SyntheticEvent\"), l = b(\"isEventSupported\"), m = b(\"keyOf\"), n = g.topLevelTypes, o = {\n change: {\n phasedRegistrationNames: {\n bubbled: m({\n onChange: null\n }),\n captured: m({\n onChangeCapture: null\n })\n }\n }\n }, p = null, q = null, r = null, s = null;\n function t(na) {\n return ((((na.nodeName === \"SELECT\")) || ((((na.nodeName === \"INPUT\")) && ((na.type === \"file\"))))));\n };\n;\n var u = false;\n if (j.canUseDOM) {\n u = ((l(\"change\") && ((!((\"documentMode\" in JSBNG__document)) || ((JSBNG__document.documentMode > 8))))));\n }\n;\n;\n function v(na) {\n var JSBNG__event = k.getPooled(o.change, q, na);\n i.accumulateTwoPhaseDispatches(JSBNG__event);\n h.enqueueEvents(JSBNG__event);\n h.processEventQueue();\n };\n;\n function w(na, oa) {\n p = na;\n q = oa;\n p.JSBNG__attachEvent(\"JSBNG__onchange\", v);\n };\n;\n function x() {\n if (!p) {\n return;\n }\n ;\n ;\n p.JSBNG__detachEvent(\"JSBNG__onchange\", v);\n p = null;\n q = null;\n };\n;\n function y(na, oa, pa) {\n if (((na === n.topChange))) {\n return pa;\n }\n ;\n ;\n };\n;\n function z(na, oa, pa) {\n if (((na === n.topFocus))) {\n x();\n w(oa, pa);\n }\n else if (((na === n.topBlur))) {\n x();\n }\n \n ;\n ;\n };\n;\n var aa = false;\n if (j.canUseDOM) {\n aa = ((l(\"input\") && ((!((\"documentMode\" in JSBNG__document)) || ((JSBNG__document.documentMode > 9))))));\n }\n;\n;\n var ba = {\n color: true,\n date: true,\n datetime: true,\n \"datetime-local\": true,\n email: true,\n month: true,\n number: true,\n password: true,\n range: true,\n search: true,\n tel: true,\n text: true,\n time: true,\n url: true,\n week: true\n };\n function ca(na) {\n return ((((((na.nodeName === \"INPUT\")) && ba[na.type])) || ((na.nodeName === \"TEXTAREA\"))));\n };\n;\n var da = {\n get: function() {\n return s.get.call(this);\n },\n set: function(na) {\n r = ((\"\" + na));\n s.set.call(this, na);\n }\n };\n function ea(na, oa) {\n p = na;\n q = oa;\n r = na.value;\n s = Object.getOwnPropertyDescriptor(na.constructor.prototype, \"value\");\n Object.defineProperty(p, \"value\", da);\n p.JSBNG__attachEvent(\"onpropertychange\", ga);\n };\n;\n function fa() {\n if (!p) {\n return;\n }\n ;\n ;\n delete p.value;\n p.JSBNG__detachEvent(\"onpropertychange\", ga);\n p = null;\n q = null;\n r = null;\n s = null;\n };\n;\n function ga(na) {\n if (((na.propertyName !== \"value\"))) {\n return;\n }\n ;\n ;\n var oa = na.srcElement.value;\n if (((oa === r))) {\n return;\n }\n ;\n ;\n r = oa;\n v(na);\n };\n;\n function ha(na, oa, pa) {\n if (((na === n.topInput))) {\n return pa;\n }\n ;\n ;\n };\n;\n function ia(na, oa, pa) {\n if (((na === n.topFocus))) {\n fa();\n ea(oa, pa);\n }\n else if (((na === n.topBlur))) {\n fa();\n }\n \n ;\n ;\n };\n;\n function ja(na, oa, pa) {\n if (((((((na === n.topSelectionChange)) || ((na === n.topKeyUp)))) || ((na === n.topKeyDown))))) {\n if (((p && ((p.value !== r))))) {\n r = p.value;\n return q;\n }\n ;\n }\n ;\n ;\n };\n;\n function ka(na) {\n return ((((na.nodeName === \"INPUT\")) && ((((na.type === \"checkbox\")) || ((na.type === \"radio\"))))));\n };\n;\n function la(na, oa, pa) {\n if (((na === n.topClick))) {\n return pa;\n }\n ;\n ;\n };\n;\n var ma = {\n eventTypes: o,\n extractEvents: function(na, oa, pa, qa) {\n var ra, sa;\n if (t(oa)) {\n if (u) {\n ra = y;\n }\n else sa = z;\n ;\n ;\n }\n else if (ca(oa)) {\n if (aa) {\n ra = ha;\n }\n else {\n ra = ja;\n sa = ia;\n }\n ;\n ;\n }\n else if (ka(oa)) {\n ra = la;\n }\n \n \n ;\n ;\n if (ra) {\n var ta = ra(na, oa, pa);\n if (ta) {\n var JSBNG__event = k.getPooled(o.change, ta, qa);\n i.accumulateTwoPhaseDispatches(JSBNG__event);\n return JSBNG__event;\n }\n ;\n ;\n }\n ;\n ;\n if (sa) {\n sa(na, oa, pa);\n }\n ;\n ;\n }\n };\n e.exports = ma;\n});\n__d(\"SyntheticFocusEvent\", [\"SyntheticUIEvent\",], function(a, b, c, d, e, f) {\n var g = b(\"SyntheticUIEvent\"), h = {\n relatedTarget: null\n };\n function i(j, k, l) {\n g.call(this, j, k, l);\n };\n;\n g.augmentClass(i, h);\n e.exports = i;\n});\n__d(\"SyntheticKeyboardEvent\", [\"SyntheticUIEvent\",], function(a, b, c, d, e, f) {\n var g = b(\"SyntheticUIEvent\"), h = {\n char: null,\n key: null,\n JSBNG__location: null,\n ctrlKey: null,\n shiftKey: null,\n altKey: null,\n metaKey: null,\n repeat: null,\n locale: null,\n charCode: null,\n keyCode: null,\n which: null\n };\n function i(j, k, l) {\n g.call(this, j, k, l);\n };\n;\n g.augmentClass(i, h);\n e.exports = i;\n});\n__d(\"SyntheticMutationEvent\", [\"SyntheticEvent\",], function(a, b, c, d, e, f) {\n var g = b(\"SyntheticEvent\"), h = {\n relatedNode: null,\n prevValue: null,\n newValue: null,\n attrName: null,\n attrChange: null\n };\n function i(j, k, l) {\n g.call(this, j, k, l);\n };\n;\n g.augmentClass(i, h);\n e.exports = i;\n});\n__d(\"SyntheticTouchEvent\", [\"SyntheticUIEvent\",], function(a, b, c, d, e, f) {\n var g = b(\"SyntheticUIEvent\"), h = {\n touches: null,\n targetTouches: null,\n changedTouches: null,\n altKey: null,\n metaKey: null,\n ctrlKey: null,\n shiftKey: null\n };\n function i(j, k, l) {\n g.call(this, j, k, l);\n };\n;\n g.augmentClass(i, h);\n e.exports = i;\n});\n__d(\"SyntheticWheelEvent\", [\"SyntheticMouseEvent\",], function(a, b, c, d, e, f) {\n var g = b(\"SyntheticMouseEvent\"), h = {\n deltaX: function(JSBNG__event) {\n return ((((\"deltaX\" in JSBNG__event)) ? JSBNG__event.deltaX : ((((\"wheelDeltaX\" in JSBNG__event)) ? -JSBNG__event.wheelDeltaX : 0))));\n },\n deltaY: function(JSBNG__event) {\n return ((((\"deltaY\" in JSBNG__event)) ? -JSBNG__event.deltaY : ((((\"wheelDeltaY\" in JSBNG__event)) ? JSBNG__event.wheelDeltaY : ((((\"wheelDelta\" in JSBNG__event)) ? JSBNG__event.wheelData : 0))))));\n },\n deltaZ: null,\n deltaMode: null\n };\n function i(j, k, l) {\n g.call(this, j, k, l);\n };\n;\n g.augmentClass(i, h);\n e.exports = i;\n});\n__d(\"SimpleEventPlugin\", [\"EventConstants\",\"EventPropagators\",\"SyntheticEvent\",\"SyntheticFocusEvent\",\"SyntheticKeyboardEvent\",\"SyntheticMouseEvent\",\"SyntheticMutationEvent\",\"SyntheticTouchEvent\",\"SyntheticUIEvent\",\"SyntheticWheelEvent\",\"invariant\",\"keyOf\",], function(a, b, c, d, e, f) {\n var g = b(\"EventConstants\"), h = b(\"EventPropagators\"), i = b(\"SyntheticEvent\"), j = b(\"SyntheticFocusEvent\"), k = b(\"SyntheticKeyboardEvent\"), l = b(\"SyntheticMouseEvent\"), m = b(\"SyntheticMutationEvent\"), n = b(\"SyntheticTouchEvent\"), o = b(\"SyntheticUIEvent\"), p = b(\"SyntheticWheelEvent\"), q = b(\"invariant\"), r = b(\"keyOf\"), s = g.topLevelTypes, t = {\n JSBNG__blur: {\n phasedRegistrationNames: {\n bubbled: r({\n onBlur: true\n }),\n captured: r({\n onBlurCapture: true\n })\n }\n },\n click: {\n phasedRegistrationNames: {\n bubbled: r({\n onClick: true\n }),\n captured: r({\n onClickCapture: true\n })\n }\n },\n doubleClick: {\n phasedRegistrationNames: {\n bubbled: r({\n onDoubleClick: true\n }),\n captured: r({\n onDoubleClickCapture: true\n })\n }\n },\n drag: {\n phasedRegistrationNames: {\n bubbled: r({\n onDrag: true\n }),\n captured: r({\n onDragCapture: true\n })\n }\n },\n dragEnd: {\n phasedRegistrationNames: {\n bubbled: r({\n onDragEnd: true\n }),\n captured: r({\n onDragEndCapture: true\n })\n }\n },\n dragEnter: {\n phasedRegistrationNames: {\n bubbled: r({\n onDragEnter: true\n }),\n captured: r({\n onDragEnterCapture: true\n })\n }\n },\n dragExit: {\n phasedRegistrationNames: {\n bubbled: r({\n onDragExit: true\n }),\n captured: r({\n onDragExitCapture: true\n })\n }\n },\n dragLeave: {\n phasedRegistrationNames: {\n bubbled: r({\n onDragLeave: true\n }),\n captured: r({\n onDragLeaveCapture: true\n })\n }\n },\n dragOver: {\n phasedRegistrationNames: {\n bubbled: r({\n onDragOver: true\n }),\n captured: r({\n onDragOverCapture: true\n })\n }\n },\n dragStart: {\n phasedRegistrationNames: {\n bubbled: r({\n onDragStart: true\n }),\n captured: r({\n onDragStartCapture: true\n })\n }\n },\n drop: {\n phasedRegistrationNames: {\n bubbled: r({\n onDrop: true\n }),\n captured: r({\n onDropCapture: true\n })\n }\n },\n DOMCharacterDataModified: {\n phasedRegistrationNames: {\n bubbled: r({\n onDOMCharacterDataModified: true\n }),\n captured: r({\n onDOMCharacterDataModifiedCapture: true\n })\n }\n },\n JSBNG__focus: {\n phasedRegistrationNames: {\n bubbled: r({\n onFocus: true\n }),\n captured: r({\n onFocusCapture: true\n })\n }\n },\n input: {\n phasedRegistrationNames: {\n bubbled: r({\n onInput: true\n }),\n captured: r({\n onInputCapture: true\n })\n }\n },\n keyDown: {\n phasedRegistrationNames: {\n bubbled: r({\n onKeyDown: true\n }),\n captured: r({\n onKeyDownCapture: true\n })\n }\n },\n keyPress: {\n phasedRegistrationNames: {\n bubbled: r({\n onKeyPress: true\n }),\n captured: r({\n onKeyPressCapture: true\n })\n }\n },\n keyUp: {\n phasedRegistrationNames: {\n bubbled: r({\n onKeyUp: true\n }),\n captured: r({\n onKeyUpCapture: true\n })\n }\n },\n mouseDown: {\n phasedRegistrationNames: {\n bubbled: r({\n onMouseDown: true\n }),\n captured: r({\n onMouseDownCapture: true\n })\n }\n },\n mouseMove: {\n phasedRegistrationNames: {\n bubbled: r({\n onMouseMove: true\n }),\n captured: r({\n onMouseMoveCapture: true\n })\n }\n },\n mouseUp: {\n phasedRegistrationNames: {\n bubbled: r({\n onMouseUp: true\n }),\n captured: r({\n onMouseUpCapture: true\n })\n }\n },\n JSBNG__scroll: {\n phasedRegistrationNames: {\n bubbled: r({\n onScroll: true\n }),\n captured: r({\n onScrollCapture: true\n })\n }\n },\n submit: {\n phasedRegistrationNames: {\n bubbled: r({\n onSubmit: true\n }),\n captured: r({\n onSubmitCapture: true\n })\n }\n },\n touchCancel: {\n phasedRegistrationNames: {\n bubbled: r({\n onTouchCancel: true\n }),\n captured: r({\n onTouchCancelCapture: true\n })\n }\n },\n touchEnd: {\n phasedRegistrationNames: {\n bubbled: r({\n onTouchEnd: true\n }),\n captured: r({\n onTouchEndCapture: true\n })\n }\n },\n touchMove: {\n phasedRegistrationNames: {\n bubbled: r({\n onTouchMove: true\n }),\n captured: r({\n onTouchMoveCapture: true\n })\n }\n },\n touchStart: {\n phasedRegistrationNames: {\n bubbled: r({\n onTouchStart: true\n }),\n captured: r({\n onTouchStartCapture: true\n })\n }\n },\n wheel: {\n phasedRegistrationNames: {\n bubbled: r({\n onWheel: true\n }),\n captured: r({\n onWheelCapture: true\n })\n }\n }\n }, u = {\n topBlur: t.JSBNG__blur,\n topClick: t.click,\n topDoubleClick: t.doubleClick,\n topDOMCharacterDataModified: t.DOMCharacterDataModified,\n topDrag: t.drag,\n topDragEnd: t.dragEnd,\n topDragEnter: t.dragEnter,\n topDragExit: t.dragExit,\n topDragLeave: t.dragLeave,\n topDragOver: t.dragOver,\n topDragStart: t.dragStart,\n topDrop: t.drop,\n topFocus: t.JSBNG__focus,\n topInput: t.input,\n topKeyDown: t.keyDown,\n topKeyPress: t.keyPress,\n topKeyUp: t.keyUp,\n topMouseDown: t.mouseDown,\n topMouseMove: t.mouseMove,\n topMouseUp: t.mouseUp,\n topScroll: t.JSBNG__scroll,\n topSubmit: t.submit,\n topTouchCancel: t.touchCancel,\n topTouchEnd: t.touchEnd,\n topTouchMove: t.touchMove,\n topTouchStart: t.touchStart,\n topWheel: t.wheel\n }, v = {\n eventTypes: t,\n executeDispatch: function(JSBNG__event, w, x) {\n var y = w(JSBNG__event, x);\n if (((y === false))) {\n JSBNG__event.stopPropagation();\n JSBNG__event.preventDefault();\n }\n ;\n ;\n },\n extractEvents: function(w, x, y, z) {\n var aa = u[w];\n if (!aa) {\n return null;\n }\n ;\n ;\n var ba;\n switch (w) {\n case s.topInput:\n \n case s.topSubmit:\n ba = i;\n break;\n case s.topKeyDown:\n \n case s.topKeyPress:\n \n case s.topKeyUp:\n ba = k;\n break;\n case s.topBlur:\n \n case s.topFocus:\n ba = j;\n break;\n case s.topClick:\n \n case s.topDoubleClick:\n \n case s.topDrag:\n \n case s.topDragEnd:\n \n case s.topDragEnter:\n \n case s.topDragExit:\n \n case s.topDragLeave:\n \n case s.topDragOver:\n \n case s.topDragStart:\n \n case s.topDrop:\n \n case s.topMouseDown:\n \n case s.topMouseMove:\n \n case s.topMouseUp:\n ba = l;\n break;\n case s.topDOMCharacterDataModified:\n ba = m;\n break;\n case s.topTouchCancel:\n \n case s.topTouchEnd:\n \n case s.topTouchMove:\n \n case s.topTouchStart:\n ba = n;\n break;\n case s.topScroll:\n ba = o;\n break;\n case s.topWheel:\n ba = p;\n break;\n };\n ;\n q(ba);\n var JSBNG__event = ba.getPooled(aa, y, z);\n h.accumulateTwoPhaseDispatches(JSBNG__event);\n return JSBNG__event;\n }\n };\n e.exports = v;\n});\n__d(\"ReactDefaultInjection\", [\"ReactDOM\",\"ReactDOMForm\",\"ReactDOMInput\",\"ReactDOMOption\",\"ReactDOMSelect\",\"ReactDOMTextarea\",\"DefaultDOMPropertyConfig\",\"DOMProperty\",\"DefaultEventPluginOrder\",\"EnterLeaveEventPlugin\",\"ChangeEventPlugin\",\"EventPluginHub\",\"ReactInstanceHandles\",\"SimpleEventPlugin\",], function(a, b, c, d, e, f) {\n var g = b(\"ReactDOM\"), h = b(\"ReactDOMForm\"), i = b(\"ReactDOMInput\"), j = b(\"ReactDOMOption\"), k = b(\"ReactDOMSelect\"), l = b(\"ReactDOMTextarea\"), m = b(\"DefaultDOMPropertyConfig\"), n = b(\"DOMProperty\"), o = b(\"DefaultEventPluginOrder\"), p = b(\"EnterLeaveEventPlugin\"), q = b(\"ChangeEventPlugin\"), r = b(\"EventPluginHub\"), s = b(\"ReactInstanceHandles\"), t = b(\"SimpleEventPlugin\");\n function u() {\n r.injection.injectEventPluginOrder(o);\n r.injection.injectInstanceHandle(s);\n r.injection.injectEventPluginsByName({\n SimpleEventPlugin: t,\n EnterLeaveEventPlugin: p,\n ChangeEventPlugin: q\n });\n g.injection.injectComponentClasses({\n form: h,\n input: i,\n option: j,\n select: k,\n textarea: l\n });\n n.injection.injectDOMPropertyConfig(m);\n };\n;\n e.exports = {\n inject: u\n };\n});\n__d(\"React\", [\"ReactCompositeComponent\",\"ReactComponent\",\"ReactDOM\",\"ReactMount\",\"ReactPropTypes\",\"ReactServerRendering\",\"ReactDefaultInjection\",], function(a, b, c, d, e, f) {\n var g = b(\"ReactCompositeComponent\"), h = b(\"ReactComponent\"), i = b(\"ReactDOM\"), j = b(\"ReactMount\"), k = b(\"ReactPropTypes\"), l = b(\"ReactServerRendering\"), m = b(\"ReactDefaultInjection\");\n m.inject();\n var n = {\n DOM: i,\n PropTypes: k,\n initializeTouchEvents: function(o) {\n j.useTouchEvents = o;\n },\n autoBind: g.autoBind,\n createClass: g.createClass,\n constructAndRenderComponent: j.constructAndRenderComponent,\n constructAndRenderComponentByID: j.constructAndRenderComponentByID,\n renderComponent: j.renderComponent,\n renderComponentToString: l.renderComponentToString,\n unmountAndReleaseReactRootNode: j.unmountAndReleaseReactRootNode,\n isValidComponent: h.isValidComponent\n };\n e.exports = n;\n});\n__d(\"CloseButton.react\", [\"React\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"cx\"), i = g.createClass({\n displayName: \"CloseButton\",\n render: function() {\n var j = this.props, k = ((j.size || \"medium\")), l = ((j.appearance || \"normal\")), m = ((k === \"small\")), n = ((k === \"huge\")), o = ((l === \"dark\")), p = ((l === \"inverted\")), q = (((((((((((((\"uiCloseButton\") + ((m ? ((\" \" + \"uiCloseButtonSmall\")) : \"\")))) + ((n ? ((\" \" + \"uiCloseButtonHuge\")) : \"\")))) + ((((m && o)) ? ((\" \" + \"uiCloseButtonSmallDark\")) : \"\")))) + ((((m && p)) ? ((\" \" + \"uiCloseButtonSmallInverted\")) : \"\")))) + ((((!m && o)) ? ((\" \" + \"uiCloseButtonDark\")) : \"\")))) + ((((!m && p)) ? ((\" \" + \"uiCloseButtonInverted\")) : \"\"))));\n return this.transferPropsTo(g.DOM.a({\n href: \"#\",\n role: \"button\",\n \"aria-label\": j.tooltip,\n \"data-hover\": ((j.tooltip && \"tooltip\")),\n \"data-tooltip-alignh\": ((j.tooltip && \"center\")),\n className: q\n }));\n }\n });\n e.exports = i;\n});\n__d(\"HovercardLink\", [\"Bootloader\",\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"Bootloader\"), h = b(\"URI\"), i = {\n getBaseURI: function() {\n return h(\"/ajax/hovercard/hovercard.php\");\n },\n constructEndpoint: function(j, k) {\n return i.constructEndpointWithGroupAndLocation(j, k, null);\n },\n constructEndpointWithLocation: function(j, k) {\n return i.constructEndpointWithGroupAndLocation(j, null, k);\n },\n constructEndpointWithGroupAndLocation: function(j, k, l) {\n g.loadModules([\"Hovercard\",], function() {\n \n });\n var m = new h(i.getBaseURI()).setQueryData({\n id: j.id\n }), n = {\n };\n if (((j.weakreference && k))) {\n n.group_id = k;\n }\n ;\n ;\n if (l) {\n n.hc_location = l;\n }\n ;\n ;\n m.addQueryData({\n extragetparams: JSON.stringify(n)\n });\n return m;\n }\n };\n e.exports = i;\n});\n__d(\"JSBNG__Image.react\", [\"React\",\"invariant\",\"joinClasses\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"invariant\"), i = b(\"joinClasses\"), j = g.createClass({\n displayName: \"ReactImage\",\n propTypes: {\n src: function(k, l, m) {\n var n = k[l];\n h(((((typeof n === \"string\")) || ((((typeof n === \"object\")) && ((((((n.sprited && n.spriteMapCssClass)) && n.spriteCssClass)) || ((!n.sprited && n.uri)))))))));\n }\n },\n render: function() {\n var k, l, m = this.props.src, n = \"img\";\n l = true;\n if (((typeof m === \"string\"))) {\n k = g.DOM.img({\n className: n,\n src: m\n });\n }\n else if (m.sprited) {\n n = i(n, m.spriteMapCssClass, m.spriteCssClass);\n k = g.DOM.i({\n className: n,\n src: null\n });\n l = false;\n }\n else {\n k = g.DOM.img({\n className: n,\n src: m.uri\n });\n if (((((typeof this.props.width === \"undefined\")) && ((typeof this.props.height === \"undefined\"))))) {\n k.props.width = m.width;\n k.props.height = m.height;\n }\n ;\n ;\n }\n \n ;\n ;\n if (this.props.alt) {\n if (l) {\n k.props.alt = this.props.alt;\n }\n else k.props.children = g.DOM.u(null, this.props.alt);\n ;\n }\n ;\n ;\n return this.transferPropsTo(k);\n }\n });\n e.exports = j;\n});\n__d(\"LeftRight.react\", [\"React\",\"cx\",\"keyMirror\",\"throwIf\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"cx\"), i = b(\"keyMirror\"), j = b(\"throwIf\"), k = i({\n left: true,\n right: true,\n both: true\n });\n function l(n) {\n j(((((!n.children || ((n.children.length < 1)))) || ((n.children.length > 2)))), \"LeftRight component must have one or two children.\");\n };\n;\n var m = g.createClass({\n displayName: \"LeftRight\",\n render: function() {\n l(this.props);\n var n = ((this.props.direction || k.both)), o = ((n === k.both)), p = g.DOM.div({\n key: \"left\",\n className: ((((o || ((n === k.left)))) ? \"lfloat\" : \"\"))\n }, this.props.children[0]), q = ((((this.props.children.length < 2)) ? null : g.DOM.div({\n key: \"right\",\n className: ((((o || ((n === k.right)))) ? \"rfloat\" : \"\"))\n }, this.props.children[1]))), r = ((((((n === k.right)) && q)) ? [q,p,] : [p,q,]));\n return this.transferPropsTo(g.DOM.div({\n className: \"clearfix\"\n }, r));\n }\n });\n m.DIRECTION = k;\n e.exports = m;\n});\n__d(\"ImageBlock.react\", [\"LeftRight.react\",\"React\",\"cx\",\"joinClasses\",\"throwIf\",], function(a, b, c, d, e, f) {\n var g = b(\"LeftRight.react\"), h = b(\"React\"), i = b(\"cx\"), j = b(\"joinClasses\"), k = b(\"throwIf\");\n function l(p) {\n k(((((!p.children || ((p.children.length > 3)))) || ((p.children.length < 1)))), \"ImageBlock requires two or three children.\");\n };\n;\n function m(p) {\n return (((((((((\"img\") + ((\" \" + \"-cx-PRIVATE-uiImageBlock__image\")))) + ((((p === \"small\")) ? ((\" \" + \"-cx-PRIVATE-uiImageBlock__smallimage\")) : \"\")))) + ((((p === \"medium\")) ? ((\" \" + \"-cx-PRIVATE-uiImageBlock__mediumimage\")) : \"\")))) + ((((p === \"large\")) ? ((\" \" + \"-cx-PRIVATE-uiImageBlock__largeimage\")) : \"\"))));\n };\n;\n function n(p, q, r) {\n p.props.className = j(m(q), p.props.className, r);\n };\n;\n var o = h.createClass({\n displayName: \"ImageBlock\",\n render: function() {\n l(this.props);\n var p = this.props.children[0], q = this.props.children[1], r = this.props.children[2], s = ((this.props.spacing || \"small\"));\n n(p, s, this.props.imageClassName);\n var t = j(this.props.contentClassName, (((\"-cx-PRIVATE-uiFlexibleBlock__flexiblecontent\") + ((((s === \"small\")) ? ((\" \" + \"-cx-PRIVATE-uiImageBlock__smallcontent\")) : \"\")))));\n if (((p.tagName == \"IMG\"))) {\n if (((p.props.alt === undefined))) {\n p.props.alt = \"\";\n }\n ;\n ;\n }\n else if (((((((((((p.tagName == \"A\")) || ((p.tagName == \"LINK\")))) && ((p.props.tabIndex === undefined)))) && ((p.props.title === undefined)))) && ((p.props[\"aria-label\"] === undefined))))) {\n p.props.tabIndex = \"-1\";\n p.props[\"aria-hidden\"] = \"true\";\n }\n \n ;\n ;\n var u;\n if (!r) {\n u = h.DOM.div({\n className: t\n }, q);\n }\n else u = g({\n className: t,\n direction: g.DIRECTION.right\n }, q, r);\n ;\n ;\n return this.transferPropsTo(g({\n direction: g.DIRECTION.left\n }, p, u));\n }\n });\n e.exports = o;\n});\n__d(\"UntrustedLink\", [\"DOM\",\"JSBNG__Event\",\"URI\",\"UserAgent\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"JSBNG__Event\"), i = b(\"URI\"), j = b(\"UserAgent\"), k = b(\"copyProperties\");\n function l(m, n, o, p) {\n this.dom = m;\n this.url = m.href;\n this.hash = n;\n this.func_get_params = ((p || function() {\n return {\n };\n }));\n h.listen(this.dom, \"click\", this.JSBNG__onclick.bind(this));\n h.listen(this.dom, \"mousedown\", this.JSBNG__onmousedown.bind(this));\n h.listen(this.dom, \"mouseup\", this.JSBNG__onmouseup.bind(this));\n h.listen(this.dom, \"mouseout\", this.JSBNG__onmouseout.bind(this));\n this.JSBNG__onmousedown(h.$E(o));\n };\n;\n l.bootstrap = function(m, n, o, p) {\n if (m.__untrusted) {\n return;\n }\n ;\n ;\n m.__untrusted = true;\n new l(m, n, o, p);\n };\n l.prototype.getRewrittenURI = function() {\n var m = k({\n u: this.url,\n h: this.hash\n }, this.func_get_params(this.dom)), n = new i(\"/l.php\");\n return n.setQueryData(m).setSubdomain(\"www\").setProtocol(\"http\");\n };\n l.prototype.JSBNG__onclick = function() {\n (function() {\n this.setHref(this.url);\n }).bind(this).defer(100);\n this.setHref(this.getRewrittenURI());\n };\n l.prototype.JSBNG__onmousedown = function(m) {\n if (((m.button == 2))) {\n this.setHref(this.getRewrittenURI());\n }\n ;\n ;\n };\n l.prototype.JSBNG__onmouseup = function() {\n this.setHref(this.getRewrittenURI());\n };\n l.prototype.JSBNG__onmouseout = function() {\n this.setHref(this.url);\n };\n l.prototype.setHref = function(m) {\n if (((j.ie() < 9))) {\n var n = g.create(\"span\");\n g.appendContent(this.dom, n);\n this.dom.href = m;\n g.remove(n);\n }\n else this.dom.href = m;\n ;\n ;\n };\n e.exports = l;\n});\n__d(\"Link.react\", [\"React\",\"UntrustedLink\",\"mergeInto\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"UntrustedLink\"), i = b(\"mergeInto\"), j = g.createClass({\n displayName: \"Link\",\n _installLinkshimOnMouseDown: function(JSBNG__event) {\n var k = this.props.href;\n if (k.shimhash) {\n h.bootstrap(this.getDOMNode(), k.shimhash);\n }\n ;\n ;\n ((this.props.onMouseDown && this.props.onMouseDown(JSBNG__event)));\n },\n render: function() {\n var k = this.props.href, l = g.DOM.a(null);\n i(l.props, this.props);\n if (k) {\n l.props.href = k.url;\n var m = !!k.shimhash;\n if (m) {\n l.props.rel = ((l.props.rel ? ((l.props.rel + \" nofollow\")) : \"nofollow\"));\n l.props.onMouseDown = this._installLinkshimOnMouseDown;\n }\n ;\n ;\n }\n else l.props.href = \"#\";\n ;\n ;\n return l;\n }\n });\n e.exports = j;\n});\n__d(\"LoadingIndicator.react\", [\"React\",\"joinClasses\",\"keyMirror\",\"merge\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"joinClasses\"), i = b(\"keyMirror\"), j = b(\"merge\"), k = i({\n white: true,\n blue: true,\n black: true\n }), l = i({\n small: true,\n medium: true,\n large: true\n }), m = {\n white: {\n large: \"/images/loaders/indicator_blue_large.gif\",\n medium: \"/images/loaders/indicator_blue_medium.gif\",\n small: \"/images/loaders/indicator_blue_small.gif\"\n },\n blue: {\n large: \"/images/loaders/indicator_white_large.gif\",\n small: \"/images/loaders/indicator_white_small.gif\"\n },\n black: {\n large: \"/images/loaders/indicator_black.gif\"\n }\n }, n = g.createClass({\n displayName: \"LoadingIndicator\",\n render: function() {\n var o = this.props.color, p = this.props.size;\n if (!m[o]) {\n return g.DOM.span(null);\n }\n ;\n ;\n if (!m[o][p]) {\n return g.DOM.span(null);\n }\n ;\n ;\n var q = ((this.props.showonasync ? \"uiLoadingIndicatorAsync\" : \"\"));\n if (this.props.className) {\n q = h(this.props.className, q);\n }\n ;\n ;\n var r = m[o][p], s = g.DOM.img({\n src: r,\n className: q\n });\n s.props = j(this.props, s.props);\n return s;\n }\n });\n n.SIZES = l;\n n.COLORS = k;\n e.exports = n;\n});\n__d(\"ProfileBrowserLink\", [\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"URI\"), h = \"/ajax/browser/dialog/\", i = \"/browse/\", j = function(l, m, n) {\n return new g(((l + m))).setQueryData(n);\n }, k = {\n constructPageURI: function(l, m) {\n return j(i, l, m);\n },\n constructDialogURI: function(l, m) {\n return j(h, l, m);\n }\n };\n e.exports = k;\n});\n__d(\"ProfileBrowserTypes\", [], function(a, b, c, d, e, f) {\n var g = {\n LIKES: \"likes\",\n GROUP_MESSAGE_VIEWERS: \"group_message_viewers\",\n MUTUAL_FRIENDS: \"mutual_friends\"\n };\n e.exports = g;\n});\n__d(\"TransformTextToDOMMixin\", [\"DOMQuery\",\"createArrayFrom\",\"flattenArray\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMQuery\"), h = b(\"createArrayFrom\"), i = b(\"flattenArray\"), j = 3, k = {\n transform: function(l, m) {\n return i(l.map(function(n) {\n if (!g.isElementNode(n)) {\n var o = n, p = [], q = ((this.MAX_ITEMS || j));\n while (q--) {\n var r = ((m ? [o,].concat(m) : [o,])), s = this.match.apply(this, r);\n if (!s) {\n break;\n }\n ;\n ;\n p.push(o.substring(0, s.startIndex));\n p.push(s.element);\n o = o.substring(s.endIndex);\n };\n ;\n ((o && p.push(o)));\n return p;\n }\n ;\n ;\n return n;\n }.bind(this)));\n },\n params: function() {\n var l = this;\n return {\n __params: true,\n obj: l,\n params: h(arguments)\n };\n }\n };\n e.exports = k;\n});\n__d(\"SupportedEmoji\", [\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"cx\");\n e.exports = {\n utf16Regex: /[\\u203C\\u2049\\u2100-\\u21FF\\u2300-\\u27FF\\u2900-\\u29FF\\u2B00-\\u2BFF\\u3000-\\u30FF\\u3200-\\u32FF]|\\uD83C[\\uDC00-\\uDFFF]|\\uD83D[\\uDC00-\\uDEFF]/,\n emoji: {\n 127744: \"-cx-PRIVATE-fbEmoji__icon_1f300\",\n 127746: \"-cx-PRIVATE-fbEmoji__icon_1f302\",\n 127754: \"-cx-PRIVATE-fbEmoji__icon_1f30a\",\n 127769: \"-cx-PRIVATE-fbEmoji__icon_1f319\",\n 127775: \"-cx-PRIVATE-fbEmoji__icon_1f31f\",\n 127793: \"-cx-PRIVATE-fbEmoji__icon_1f331\",\n 127796: \"-cx-PRIVATE-fbEmoji__icon_1f334\",\n 127797: \"-cx-PRIVATE-fbEmoji__icon_1f335\",\n 127799: \"-cx-PRIVATE-fbEmoji__icon_1f337\",\n 127800: \"-cx-PRIVATE-fbEmoji__icon_1f338\",\n 127801: \"-cx-PRIVATE-fbEmoji__icon_1f339\",\n 127802: \"-cx-PRIVATE-fbEmoji__icon_1f33a\",\n 127803: \"-cx-PRIVATE-fbEmoji__icon_1f33b\",\n 127806: \"-cx-PRIVATE-fbEmoji__icon_1f33e\",\n 127808: \"-cx-PRIVATE-fbEmoji__icon_1f340\",\n 127809: \"-cx-PRIVATE-fbEmoji__icon_1f341\",\n 127810: \"-cx-PRIVATE-fbEmoji__icon_1f342\",\n 127811: \"-cx-PRIVATE-fbEmoji__icon_1f343\",\n 127818: \"-cx-PRIVATE-fbEmoji__icon_1f34a\",\n 127822: \"-cx-PRIVATE-fbEmoji__icon_1f34e\",\n 127827: \"-cx-PRIVATE-fbEmoji__icon_1f353\",\n 127828: \"-cx-PRIVATE-fbEmoji__icon_1f354\",\n 127864: \"-cx-PRIVATE-fbEmoji__icon_1f378\",\n 127866: \"-cx-PRIVATE-fbEmoji__icon_1f37a\",\n 127873: \"-cx-PRIVATE-fbEmoji__icon_1f381\",\n 127875: \"-cx-PRIVATE-fbEmoji__icon_1f383\",\n 127876: \"-cx-PRIVATE-fbEmoji__icon_1f384\",\n 127877: \"-cx-PRIVATE-fbEmoji__icon_1f385\",\n 127880: \"-cx-PRIVATE-fbEmoji__icon_1f388\",\n 127881: \"-cx-PRIVATE-fbEmoji__icon_1f389\",\n 127885: \"-cx-PRIVATE-fbEmoji__icon_1f38d\",\n 127886: \"-cx-PRIVATE-fbEmoji__icon_1f38e\",\n 127887: \"-cx-PRIVATE-fbEmoji__icon_1f38f\",\n 127888: \"-cx-PRIVATE-fbEmoji__icon_1f390\",\n 127891: \"-cx-PRIVATE-fbEmoji__icon_1f393\",\n 127925: \"-cx-PRIVATE-fbEmoji__icon_1f3b5\",\n 127926: \"-cx-PRIVATE-fbEmoji__icon_1f3b6\",\n 127932: \"-cx-PRIVATE-fbEmoji__icon_1f3bc\",\n 128013: \"-cx-PRIVATE-fbEmoji__icon_1f40d\",\n 128014: \"-cx-PRIVATE-fbEmoji__icon_1f40e\",\n 128017: \"-cx-PRIVATE-fbEmoji__icon_1f411\",\n 128018: \"-cx-PRIVATE-fbEmoji__icon_1f412\",\n 128020: \"-cx-PRIVATE-fbEmoji__icon_1f414\",\n 128023: \"-cx-PRIVATE-fbEmoji__icon_1f417\",\n 128024: \"-cx-PRIVATE-fbEmoji__icon_1f418\",\n 128025: \"-cx-PRIVATE-fbEmoji__icon_1f419\",\n 128026: \"-cx-PRIVATE-fbEmoji__icon_1f41a\",\n 128027: \"-cx-PRIVATE-fbEmoji__icon_1f41b\",\n 128031: \"-cx-PRIVATE-fbEmoji__icon_1f41f\",\n 128032: \"-cx-PRIVATE-fbEmoji__icon_1f420\",\n 128033: \"-cx-PRIVATE-fbEmoji__icon_1f421\",\n 128037: \"-cx-PRIVATE-fbEmoji__icon_1f425\",\n 128038: \"-cx-PRIVATE-fbEmoji__icon_1f426\",\n 128039: \"-cx-PRIVATE-fbEmoji__icon_1f427\",\n 128040: \"-cx-PRIVATE-fbEmoji__icon_1f428\",\n 128041: \"-cx-PRIVATE-fbEmoji__icon_1f429\",\n 128043: \"-cx-PRIVATE-fbEmoji__icon_1f42b\",\n 128044: \"-cx-PRIVATE-fbEmoji__icon_1f42c\",\n 128045: \"-cx-PRIVATE-fbEmoji__icon_1f42d\",\n 128046: \"-cx-PRIVATE-fbEmoji__icon_1f42e\",\n 128047: \"-cx-PRIVATE-fbEmoji__icon_1f42f\",\n 128048: \"-cx-PRIVATE-fbEmoji__icon_1f430\",\n 128049: \"-cx-PRIVATE-fbEmoji__icon_1f431\",\n 128051: \"-cx-PRIVATE-fbEmoji__icon_1f433\",\n 128052: \"-cx-PRIVATE-fbEmoji__icon_1f434\",\n 128053: \"-cx-PRIVATE-fbEmoji__icon_1f435\",\n 128054: \"-cx-PRIVATE-fbEmoji__icon_1f436\",\n 128055: \"-cx-PRIVATE-fbEmoji__icon_1f437\",\n 128056: \"-cx-PRIVATE-fbEmoji__icon_1f438\",\n 128057: \"-cx-PRIVATE-fbEmoji__icon_1f439\",\n 128058: \"-cx-PRIVATE-fbEmoji__icon_1f43a\",\n 128059: \"-cx-PRIVATE-fbEmoji__icon_1f43b\",\n 128062: \"-cx-PRIVATE-fbEmoji__icon_1f43e\",\n 128064: \"-cx-PRIVATE-fbEmoji__icon_1f440\",\n 128066: \"-cx-PRIVATE-fbEmoji__icon_1f442\",\n 128067: \"-cx-PRIVATE-fbEmoji__icon_1f443\",\n 128068: \"-cx-PRIVATE-fbEmoji__icon_1f444\",\n 128069: \"-cx-PRIVATE-fbEmoji__icon_1f445\",\n 128070: \"-cx-PRIVATE-fbEmoji__icon_1f446\",\n 128071: \"-cx-PRIVATE-fbEmoji__icon_1f447\",\n 128072: \"-cx-PRIVATE-fbEmoji__icon_1f448\",\n 128073: \"-cx-PRIVATE-fbEmoji__icon_1f449\",\n 128074: \"-cx-PRIVATE-fbEmoji__icon_1f44a\",\n 128075: \"-cx-PRIVATE-fbEmoji__icon_1f44b\",\n 128076: \"-cx-PRIVATE-fbEmoji__icon_1f44c\",\n 128077: \"-cx-PRIVATE-fbEmoji__icon_1f44d\",\n 128078: \"-cx-PRIVATE-fbEmoji__icon_1f44e\",\n 128079: \"-cx-PRIVATE-fbEmoji__icon_1f44f\",\n 128080: \"-cx-PRIVATE-fbEmoji__icon_1f450\",\n 128102: \"-cx-PRIVATE-fbEmoji__icon_1f466\",\n 128103: \"-cx-PRIVATE-fbEmoji__icon_1f467\",\n 128104: \"-cx-PRIVATE-fbEmoji__icon_1f468\",\n 128105: \"-cx-PRIVATE-fbEmoji__icon_1f469\",\n 128107: \"-cx-PRIVATE-fbEmoji__icon_1f46b\",\n 128110: \"-cx-PRIVATE-fbEmoji__icon_1f46e\",\n 128111: \"-cx-PRIVATE-fbEmoji__icon_1f46f\",\n 128113: \"-cx-PRIVATE-fbEmoji__icon_1f471\",\n 128114: \"-cx-PRIVATE-fbEmoji__icon_1f472\",\n 128115: \"-cx-PRIVATE-fbEmoji__icon_1f473\",\n 128116: \"-cx-PRIVATE-fbEmoji__icon_1f474\",\n 128117: \"-cx-PRIVATE-fbEmoji__icon_1f475\",\n 128118: \"-cx-PRIVATE-fbEmoji__icon_1f476\",\n 128119: \"-cx-PRIVATE-fbEmoji__icon_1f477\",\n 128120: \"-cx-PRIVATE-fbEmoji__icon_1f478\",\n 128123: \"-cx-PRIVATE-fbEmoji__icon_1f47b\",\n 128124: \"-cx-PRIVATE-fbEmoji__icon_1f47c\",\n 128125: \"-cx-PRIVATE-fbEmoji__icon_1f47d\",\n 128126: \"-cx-PRIVATE-fbEmoji__icon_1f47e\",\n 128127: \"-cx-PRIVATE-fbEmoji__icon_1f47f\",\n 128128: \"-cx-PRIVATE-fbEmoji__icon_1f480\",\n 128130: \"-cx-PRIVATE-fbEmoji__icon_1f482\",\n 128131: \"-cx-PRIVATE-fbEmoji__icon_1f483\",\n 128133: \"-cx-PRIVATE-fbEmoji__icon_1f485\",\n 128139: \"-cx-PRIVATE-fbEmoji__icon_1f48b\",\n 128143: \"-cx-PRIVATE-fbEmoji__icon_1f48f\",\n 128144: \"-cx-PRIVATE-fbEmoji__icon_1f490\",\n 128145: \"-cx-PRIVATE-fbEmoji__icon_1f491\",\n 128147: \"-cx-PRIVATE-fbEmoji__icon_1f493\",\n 128148: \"-cx-PRIVATE-fbEmoji__icon_1f494\",\n 128150: \"-cx-PRIVATE-fbEmoji__icon_1f496\",\n 128151: \"-cx-PRIVATE-fbEmoji__icon_1f497\",\n 128152: \"-cx-PRIVATE-fbEmoji__icon_1f498\",\n 128153: \"-cx-PRIVATE-fbEmoji__icon_1f499\",\n 128154: \"-cx-PRIVATE-fbEmoji__icon_1f49a\",\n 128155: \"-cx-PRIVATE-fbEmoji__icon_1f49b\",\n 128156: \"-cx-PRIVATE-fbEmoji__icon_1f49c\",\n 128157: \"-cx-PRIVATE-fbEmoji__icon_1f49d\",\n 128162: \"-cx-PRIVATE-fbEmoji__icon_1f4a2\",\n 128164: \"-cx-PRIVATE-fbEmoji__icon_1f4a4\",\n 128166: \"-cx-PRIVATE-fbEmoji__icon_1f4a6\",\n 128168: \"-cx-PRIVATE-fbEmoji__icon_1f4a8\",\n 128169: \"-cx-PRIVATE-fbEmoji__icon_1f4a9\",\n 128170: \"-cx-PRIVATE-fbEmoji__icon_1f4aa\",\n 128187: \"-cx-PRIVATE-fbEmoji__icon_1f4bb\",\n 128189: \"-cx-PRIVATE-fbEmoji__icon_1f4bd\",\n 128190: \"-cx-PRIVATE-fbEmoji__icon_1f4be\",\n 128191: \"-cx-PRIVATE-fbEmoji__icon_1f4bf\",\n 128192: \"-cx-PRIVATE-fbEmoji__icon_1f4c0\",\n 128222: \"-cx-PRIVATE-fbEmoji__icon_1f4de\",\n 128224: \"-cx-PRIVATE-fbEmoji__icon_1f4e0\",\n 128241: \"-cx-PRIVATE-fbEmoji__icon_1f4f1\",\n 128242: \"-cx-PRIVATE-fbEmoji__icon_1f4f2\",\n 128250: \"-cx-PRIVATE-fbEmoji__icon_1f4fa\",\n 128276: \"-cx-PRIVATE-fbEmoji__icon_1f514\",\n 128293: \"-cx-PRIVATE-fbEmoji__icon_1f525\",\n 128513: \"-cx-PRIVATE-fbEmoji__icon_1f601\",\n 128514: \"-cx-PRIVATE-fbEmoji__icon_1f602\",\n 128515: \"-cx-PRIVATE-fbEmoji__icon_1f603\",\n 128516: \"-cx-PRIVATE-fbEmoji__icon_1f604\",\n 128518: \"-cx-PRIVATE-fbEmoji__icon_1f606\",\n 128521: \"-cx-PRIVATE-fbEmoji__icon_1f609\",\n 128523: \"-cx-PRIVATE-fbEmoji__icon_1f60b\",\n 128524: \"-cx-PRIVATE-fbEmoji__icon_1f60c\",\n 128525: \"-cx-PRIVATE-fbEmoji__icon_1f60d\",\n 128527: \"-cx-PRIVATE-fbEmoji__icon_1f60f\",\n 128530: \"-cx-PRIVATE-fbEmoji__icon_1f612\",\n 128531: \"-cx-PRIVATE-fbEmoji__icon_1f613\",\n 128532: \"-cx-PRIVATE-fbEmoji__icon_1f614\",\n 128534: \"-cx-PRIVATE-fbEmoji__icon_1f616\",\n 128536: \"-cx-PRIVATE-fbEmoji__icon_1f618\",\n 128538: \"-cx-PRIVATE-fbEmoji__icon_1f61a\",\n 128540: \"-cx-PRIVATE-fbEmoji__icon_1f61c\",\n 128541: \"-cx-PRIVATE-fbEmoji__icon_1f61d\",\n 128542: \"-cx-PRIVATE-fbEmoji__icon_1f61e\",\n 128544: \"-cx-PRIVATE-fbEmoji__icon_1f620\",\n 128545: \"-cx-PRIVATE-fbEmoji__icon_1f621\",\n 128546: \"-cx-PRIVATE-fbEmoji__icon_1f622\",\n 128547: \"-cx-PRIVATE-fbEmoji__icon_1f623\",\n 128548: \"-cx-PRIVATE-fbEmoji__icon_1f624\",\n 128549: \"-cx-PRIVATE-fbEmoji__icon_1f625\",\n 128552: \"-cx-PRIVATE-fbEmoji__icon_1f628\",\n 128553: \"-cx-PRIVATE-fbEmoji__icon_1f629\",\n 128554: \"-cx-PRIVATE-fbEmoji__icon_1f62a\",\n 128555: \"-cx-PRIVATE-fbEmoji__icon_1f62b\",\n 128557: \"-cx-PRIVATE-fbEmoji__icon_1f62d\",\n 128560: \"-cx-PRIVATE-fbEmoji__icon_1f630\",\n 128561: \"-cx-PRIVATE-fbEmoji__icon_1f631\",\n 128562: \"-cx-PRIVATE-fbEmoji__icon_1f632\",\n 128563: \"-cx-PRIVATE-fbEmoji__icon_1f633\",\n 128565: \"-cx-PRIVATE-fbEmoji__icon_1f635\",\n 128567: \"-cx-PRIVATE-fbEmoji__icon_1f637\",\n 128568: \"-cx-PRIVATE-fbEmoji__icon_1f638\",\n 128569: \"-cx-PRIVATE-fbEmoji__icon_1f639\",\n 128570: \"-cx-PRIVATE-fbEmoji__icon_1f63a\",\n 128571: \"-cx-PRIVATE-fbEmoji__icon_1f63b\",\n 128572: \"-cx-PRIVATE-fbEmoji__icon_1f63c\",\n 128573: \"-cx-PRIVATE-fbEmoji__icon_1f63d\",\n 128575: \"-cx-PRIVATE-fbEmoji__icon_1f63f\",\n 128576: \"-cx-PRIVATE-fbEmoji__icon_1f640\",\n 128587: \"-cx-PRIVATE-fbEmoji__icon_1f64b\",\n 128588: \"-cx-PRIVATE-fbEmoji__icon_1f64c\",\n 128589: \"-cx-PRIVATE-fbEmoji__icon_1f64d\",\n 128591: \"-cx-PRIVATE-fbEmoji__icon_1f64f\",\n 9757: \"-cx-PRIVATE-fbEmoji__icon_261d\",\n 9786: \"-cx-PRIVATE-fbEmoji__icon_263a\",\n 9889: \"-cx-PRIVATE-fbEmoji__icon_26a1\",\n 9924: \"-cx-PRIVATE-fbEmoji__icon_26c4\",\n 9994: \"-cx-PRIVATE-fbEmoji__icon_270a\",\n 9995: \"-cx-PRIVATE-fbEmoji__icon_270b\",\n 9996: \"-cx-PRIVATE-fbEmoji__icon_270c\",\n 9728: \"-cx-PRIVATE-fbEmoji__icon_2600\",\n 9729: \"-cx-PRIVATE-fbEmoji__icon_2601\",\n 9748: \"-cx-PRIVATE-fbEmoji__icon_2614\",\n 9749: \"-cx-PRIVATE-fbEmoji__icon_2615\",\n 10024: \"-cx-PRIVATE-fbEmoji__icon_2728\",\n 10084: \"-cx-PRIVATE-fbEmoji__icon_2764\"\n }\n };\n});\n__d(\"Utf16\", [], function(a, b, c, d, e, f) {\n var g = {\n decode: function(h) {\n switch (h.length) {\n case 1:\n return h.charCodeAt(0);\n case 2:\n return ((((65536 | ((((h.charCodeAt(0) - 55296)) * 1024)))) | ((h.charCodeAt(1) - 56320))));\n };\n ;\n },\n encode: function(h) {\n if (((h < 65536))) {\n return String.fromCharCode(h);\n }\n else return ((String.fromCharCode(((55296 + ((((h - 65536)) >> 10))))) + String.fromCharCode(((56320 + ((h % 1024)))))))\n ;\n }\n };\n e.exports = g;\n});\n__d(\"DOMEmoji\", [\"JSBNG__CSS\",\"JSXDOM\",\"TransformTextToDOMMixin\",\"SupportedEmoji\",\"Utf16\",\"copyProperties\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = b(\"JSXDOM\"), i = b(\"TransformTextToDOMMixin\"), j = b(\"SupportedEmoji\"), k = b(\"Utf16\"), l = b(\"copyProperties\"), m = b(\"cx\"), n = {\n MAX_ITEMS: 40,\n match: function(o) {\n var p = j.utf16Regex.exec(o);\n if (((!p || !p.length))) {\n return false;\n }\n ;\n ;\n var q = p[0], r = p.index, s = k.decode(q), t = j.emoji[s];\n if (!t) {\n return false;\n }\n ;\n ;\n return {\n startIndex: r,\n endIndex: ((r + q.length)),\n element: this._element(t)\n };\n },\n _element: function(o) {\n var p = h.span(null);\n g.addClass(p, \"-cx-PRIVATE-fbEmoji__icon\");\n g.addClass(p, \"-cx-PRIVATE-fbEmoji__size_16\");\n g.addClass(p, o);\n return p;\n }\n };\n e.exports = l(n, i);\n});\n__d(\"EmoticonsList\", [], function(a, b, c, d, e, f) {\n e.exports = {\n emotes: {\n \":)\": \"smile\",\n \":-)\": \"smile\",\n \":]\": \"smile\",\n \"=)\": \"smile\",\n \":(\": \"frown\",\n \":-(\": \"frown\",\n \":[\": \"frown\",\n \"=(\": \"frown\",\n \":P\": \"tongue\",\n \":-P\": \"tongue\",\n \":-p\": \"tongue\",\n \":p\": \"tongue\",\n \"=P\": \"tongue\",\n \"=D\": \"grin\",\n \":-D\": \"grin\",\n \":D\": \"grin\",\n \":o\": \"gasp\",\n \":-O\": \"gasp\",\n \":O\": \"gasp\",\n \":-o\": \"gasp\",\n \";)\": \"wink\",\n \";-)\": \"wink\",\n \"8)\": \"glasses\",\n \"8-)\": \"glasses\",\n \"B)\": \"glasses\",\n \"B-)\": \"glasses\",\n \"B|\": \"sunglasses\",\n \"8-|\": \"sunglasses\",\n \"8|\": \"sunglasses\",\n \"B-|\": \"sunglasses\",\n \"\\u003E:(\": \"grumpy\",\n \"\\u003E:-(\": \"grumpy\",\n \":/\": \"unsure\",\n \":-/\": \"unsure\",\n \":\\\\\": \"unsure\",\n \":-\\\\\": \"unsure\",\n \"=/\": \"unsure\",\n \"=\\\\\": \"unsure\",\n \":'(\": \"cry\",\n \"3:)\": \"devil\",\n \"3:-)\": \"devil\",\n \"O:)\": \"angel\",\n \"O:-)\": \"angel\",\n \":*\": \"kiss\",\n \":-*\": \"kiss\",\n \"\\u003C3\": \"heart\",\n \"<3\": \"heart\",\n \"\\u2665\": \"heart\",\n \"^_^\": \"kiki\",\n \"-_-\": \"squint\",\n \"o.O\": \"confused\",\n \"O.o\": \"confused_rev\",\n \"\\u003E:o\": \"upset\",\n \"\\u003E:O\": \"upset\",\n \"\\u003E:-O\": \"upset\",\n \"\\u003E:-o\": \"upset\",\n \"\\u003E_\\u003C\": \"upset\",\n \"\\u003E.\\u003C\": \"upset\",\n \":v\": \"pacman\",\n \":|]\": \"robot\",\n \":3\": \"colonthree\",\n \"\\u003C(\\\")\": \"penguin\",\n \":putnam:\": \"putnam\",\n \"(^^^)\": \"shark\",\n \"(y)\": \"like\",\n \":like:\": \"like\",\n \"(Y)\": \"like\",\n \":poop:\": \"poop\"\n },\n symbols: {\n smile: \":)\",\n frown: \":(\",\n tongue: \":P\",\n grin: \"=D\",\n gasp: \":o\",\n wink: \";)\",\n glasses: \"8)\",\n sunglasses: \"B|\",\n grumpy: \"\\u003E:(\",\n unsure: \":/\",\n cry: \":'(\",\n devil: \"3:)\",\n angel: \"O:)\",\n kiss: \":*\",\n heart: \"\\u003C3\",\n kiki: \"^_^\",\n squint: \"-_-\",\n confused: \"o.O\",\n confused_rev: \"O.o\",\n upset: \"\\u003E:o\",\n pacman: \":v\",\n robot: \":|]\",\n colonthree: \":3\",\n penguin: \"\\u003C(\\\")\",\n putnam: \":putnam:\",\n shark: \"(^^^)\",\n like: \"(y)\",\n poop: \":poop:\"\n },\n regexp: /(^|[\\s'\".])(:\\)|:\\-\\)|:\\]|=\\)|:\\(|:\\-\\(|:\\[|=\\(|:P|:\\-P|:\\-p|:p|=P|=D|:\\-D|:D|:o|:\\-O|:O|:\\-o|;\\)|;\\-\\)|8\\)|8\\-\\)|B\\)|B\\-\\)|B\\||8\\-\\||8\\||B\\-\\||>:\\(|>:\\-\\(|:\\/|:\\-\\/|:\\\\|:\\-\\\\|=\\/|=\\\\|:'\\(|3:\\)|3:\\-\\)|O:\\)|O:\\-\\)|:\\*|:\\-\\*|<3|<3|\\u2665|\\^_\\^|\\-_\\-|o\\.O|O\\.o|>:o|>:O|>:\\-O|>:\\-o|>_<|>\\.<|:v|:\\|\\]|:3|<\\(\"\\)|:putnam:|\\(\\^\\^\\^\\)|\\(y\\)|:like:|\\(Y\\)|:poop:)([\\s'\".,!?]|<br>|$)/\n };\n});\n__d(\"DOMEmote\", [\"JSBNG__CSS\",\"EmoticonsList\",\"JSXDOM\",\"TransformTextToDOMMixin\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = b(\"EmoticonsList\"), i = b(\"JSXDOM\"), j = b(\"TransformTextToDOMMixin\"), k = b(\"copyProperties\"), l = {\n MAX_ITEMS: 40,\n match: function(m) {\n var n = h.regexp.exec(m);\n if (((!n || !n.length))) {\n return false;\n }\n ;\n ;\n var o = n[2], p = ((n.index + n[1].length));\n return {\n startIndex: p,\n endIndex: ((p + o.length)),\n element: this._element(o, h.emotes[o])\n };\n },\n _element: function(m, n) {\n var o = i.span({\n className: \"emoticon_text\",\n \"aria-hidden\": \"true\"\n }, m), p = i.span({\n title: m,\n className: \"emoticon\"\n });\n g.addClass(p, ((\"emoticon_\" + n)));\n return [o,p,];\n }\n };\n e.exports = k(l, j);\n});\n__d(\"FBIDEmote\", [\"JSXDOM\",\"TransformTextToDOMMixin\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"JSXDOM\"), h = b(\"TransformTextToDOMMixin\"), i = b(\"copyProperties\"), j = /\\[\\[([a-z\\d\\.]+)\\]\\]/i, k = {\n MAX_ITEMS: 40,\n match: function(l) {\n var m = j.exec(l);\n if (((!m || !m.length))) {\n return false;\n }\n ;\n ;\n var n = m[0], o = m[1];\n return {\n startIndex: m.index,\n endIndex: ((m.index + n.length)),\n element: this._element(n, o)\n };\n },\n _element: function(l, m) {\n var n = g.span({\n className: \"emoticon_text\",\n \"aria-hidden\": \"true\"\n }, l), o = g.img({\n alt: l,\n className: \"emoticon emoticon_custom\",\n src: ((((((window.JSBNG__location.protocol + \"//graph.facebook.com/\")) + encodeURIComponent(m))) + \"/picture\"))\n });\n return [n,o,];\n }\n };\n e.exports = i(k, h);\n});\n__d(\"transformTextToDOM\", [\"createArrayFrom\",], function(a, b, c, d, e, f) {\n var g = b(\"createArrayFrom\");\n function h(i, j) {\n var k = [i,];\n j = g(j);\n j.forEach(function(l) {\n var m, n = l;\n if (l.__params) {\n m = l.params;\n n = l.obj;\n }\n ;\n ;\n k = n.transform(k, m);\n });\n return k;\n };\n;\n e.exports = h;\n});\n__d(\"emojiAndEmote\", [\"DOMEmoji\",\"DOMEmote\",\"FBIDEmote\",\"transformTextToDOM\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMEmoji\"), h = b(\"DOMEmote\"), i = b(\"FBIDEmote\"), j = b(\"transformTextToDOM\"), k = function(l, m) {\n var n = [g,h,i,];\n if (((m === false))) {\n n.pop();\n }\n ;\n ;\n return j(l, n);\n };\n e.exports = k;\n});\n__d(\"Emoji\", [\"DOMEmoji\",\"JSXDOM\",\"emojiAndEmote\",\"transformTextToDOM\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMEmoji\"), h = b(\"JSXDOM\"), i = b(\"emojiAndEmote\"), j = b(\"transformTextToDOM\"), k = {\n htmlEmojiAndEmote: function(l, m) {\n return (h.span(null, i(l))).innerHTML;\n },\n htmlEmojiAndEmoteWithoutFBID: function(l, m) {\n return (h.span(null, i(l, false))).innerHTML;\n },\n htmlEmoji: function(l) {\n return (h.span(null, j(l, g))).innerHTML;\n }\n };\n e.exports = k;\n});\n__d(\"Emote\", [\"DOMEmote\",\"FBIDEmote\",\"JSXDOM\",\"transformTextToDOM\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMEmote\"), h = b(\"FBIDEmote\"), i = b(\"JSXDOM\"), j = b(\"transformTextToDOM\"), k = {\n htmlEmoteWithoutFBID: function(l, m) {\n return (i.span(null, j(l, g))).innerHTML;\n },\n htmlEmote: function(l, m) {\n return (i.span(null, j(l, [g,h,]))).innerHTML;\n }\n };\n e.exports = k;\n});\n__d(\"TextWithEmoticons.react\", [\"Emoji\",\"Emote\",\"React\",], function(a, b, c, d, e, f) {\n var g = b(\"Emoji\"), h = b(\"Emote\"), i = b(\"React\"), j = i.createClass({\n displayName: \"ReactTextWithEmoticons\",\n render: function() {\n if (((!this.props.renderEmoticons && !this.props.renderEmoji))) {\n return i.DOM.span(null, this.props.text);\n }\n ;\n ;\n var k;\n if (((this.props.renderEmoticons && this.props.renderEmoji))) {\n k = g.htmlEmojiAndEmoteWithoutFBID(this.props.text);\n }\n else if (this.props.renderEmoticons) {\n k = h.htmlEmoteWithoutFBID(this.props.text);\n }\n else k = g.htmlEmoji(this.props.text);\n \n ;\n ;\n return i.DOM.span({\n dangerouslySetInnerHTML: {\n __html: k\n }\n });\n }\n });\n e.exports = j;\n});\n__d(\"TextWithEntities.react\", [\"Link.react\",\"React\",\"TextWithEmoticons.react\",], function(a, b, c, d, e, f) {\n var g = b(\"Link.react\"), h = b(\"React\"), i = b(\"TextWithEmoticons.react\");\n function j(o) {\n return (o).replace(/<3\\b|♥/g, \"\\u2665\");\n };\n;\n function k(o, p) {\n return (g({\n href: p.entities[0]\n }, o));\n };\n;\n function l(o, p) {\n return ((o.offset - p.offset));\n };\n;\n var m = /(\\r\\n|[\\r\\n])/, n = h.createClass({\n displayName: \"ReactTextWithEntities\",\n _formatStandardText: function(o) {\n var p = o.split(m), q = [];\n for (var r = 0; ((r < p.length)); r++) {\n var s = p[r];\n if (s) {\n if (m.test(s)) {\n q.push(h.DOM.br(null));\n }\n else if (((this.props.renderEmoticons || this.props.renderEmoji))) {\n q.push(i({\n text: s,\n renderEmoticons: this.props.renderEmoticons,\n renderEmoji: this.props.renderEmoji\n }));\n }\n else q.push(j(s));\n \n ;\n }\n ;\n ;\n };\n ;\n return q;\n },\n render: function() {\n var o = 0, p = this.props.ranges, q = this.props.aggregatedRanges, r = this.props.text, s = null;\n if (p) {\n s = ((q ? p.concat(q) : p.slice()));\n }\n else if (q) {\n s = q.slice();\n }\n \n ;\n ;\n if (s) {\n s.sort(l);\n }\n ;\n ;\n var t = [], u = ((s ? s.length : 0));\n for (var v = 0, w = u; ((v < w)); v++) {\n var x = s[v];\n if (((x.offset < o))) {\n continue;\n }\n ;\n ;\n if (((x.offset > o))) {\n t = t.concat(this._formatStandardText(r.substring(o, x.offset)));\n }\n ;\n ;\n var y = r.substr(x.offset, x.length);\n t = t.concat([((this.props.interpolator ? this.props.interpolator(y, x) : k(y, x))),]);\n o = ((x.offset + x.length));\n };\n ;\n if (((r.length > o))) {\n t = t.concat(this._formatStandardText(r.substr(o)));\n }\n ;\n ;\n return h.DOM.span(null, t);\n }\n });\n e.exports = n;\n});\n__d(\"fbt\", [\"copyProperties\",\"substituteTokens\",\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"substituteTokens\"), i = b(\"invariant\"), j = {\n INDEX: 0,\n SUBSTITUTION: 1\n }, k = function() {\n \n };\n k._ = function(l, m) {\n var n = {\n }, o = l;\n for (var p = 0; ((p < m.length)); p++) {\n var q = m[p][j.INDEX];\n if (((q !== null))) {\n i(((q in o)));\n o = o[q];\n }\n ;\n ;\n g(n, m[p][j.SUBSTITUTION]);\n };\n ;\n i(((typeof o === \"string\")));\n return h(o, n);\n };\n k[\"enum\"] = function(l, m) {\n return [l,null,];\n };\n k.param = function(l, m) {\n var n = {\n };\n n[l] = m;\n return [null,n,];\n };\n e.exports = k;\n});\n__d(\"LiveTimer\", [\"JSBNG__CSS\",\"DOM\",\"UserAgent\",\"emptyFunction\",\"fbt\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = b(\"DOM\"), i = b(\"UserAgent\"), j = b(\"emptyFunction\"), k = b(\"fbt\"), l = b(\"tx\"), m = 1000, n = 60, o = 3600, p = 43200, q = 60, r = 20000, s = {\n restart: function(t) {\n this.serverTime = t;\n this.localStartTime = ((JSBNG__Date.now() / 1000));\n this.updateTimeStamps();\n },\n getApproximateServerTime: function() {\n return ((this.getServerTimeOffset() + JSBNG__Date.now()));\n },\n getServerTimeOffset: function() {\n return ((((this.serverTime - this.localStartTime)) * m));\n },\n updateTimeStamps: function() {\n s.timestamps = h.scry(JSBNG__document.body, \"abbr.livetimestamp\");\n s.startLoop(r);\n },\n addTimeStamps: function(t) {\n if (!t) {\n return;\n }\n ;\n ;\n s.timestamps = ((s.timestamps || []));\n if (((h.isNodeOfType(t, \"abbr\") && g.hasClass(t, \"livetimestamp\")))) {\n s.timestamps.push(t);\n }\n else {\n var u = h.scry(t, \"abbr.livetimestamp\");\n for (var v = 0; ((v < u.length)); ++v) {\n s.timestamps.push(u[v]);\n ;\n };\n ;\n }\n ;\n ;\n s.startLoop(0);\n },\n startLoop: function(t) {\n this.JSBNG__stop();\n this.timeout = JSBNG__setTimeout(function() {\n s.loop();\n }, t);\n },\n JSBNG__stop: function() {\n JSBNG__clearTimeout(this.timeout);\n },\n updateNode: function(t, u) {\n s.updateNode = ((((i.ie() < 7)) ? j : h.setContent));\n s.updateNode(t, u);\n },\n loop: function(t) {\n if (t) {\n s.updateTimeStamps();\n }\n ;\n ;\n var u = Math.floor(((s.getApproximateServerTime() / m))), v = -1;\n ((s.timestamps && s.timestamps.forEach(function(x) {\n var y = x.getAttribute(\"data-utime\"), z = x.getAttribute(\"data-shorten\"), aa = s.renderRelativeTime(u, y, z);\n if (aa.text) {\n s.updateNode(x, aa.text);\n }\n ;\n ;\n if (((((aa.next != -1)) && ((((aa.next < v)) || ((v == -1))))))) {\n v = aa.next;\n }\n ;\n ;\n })));\n if (((v != -1))) {\n var w = Math.max(r, ((v * m)));\n s.timeout = JSBNG__setTimeout(function() {\n s.loop();\n }, w);\n }\n ;\n ;\n },\n renderRelativeTime: function(t, u, v) {\n var w = {\n text: \"\",\n next: -1\n };\n if (((((t - u)) > (p)))) {\n return w;\n }\n ;\n ;\n var x = ((t - u)), y = Math.floor(((x / n))), z = Math.floor(((y / q)));\n if (((y < 1))) {\n if (v) {\n x = ((((x > 1)) ? x : 2));\n w.text = k._(\"{number} secs\", [k.param(\"number\", x),]);\n w.next = ((20 - ((x % 20))));\n }\n else {\n w.text = \"a few seconds ago\";\n w.next = ((n - ((x % n))));\n }\n ;\n ;\n return w;\n }\n ;\n ;\n if (((z < 1))) {\n if (((v && ((y == 1))))) {\n w.text = \"1 min\";\n }\n else if (v) {\n w.text = k._(\"{number} mins\", [k.param(\"number\", y),]);\n }\n else w.text = ((((y == 1)) ? \"about a minute ago\" : l._(\"{number} minutes ago\", {\n number: y\n })));\n \n ;\n ;\n w.next = ((n - ((x % n))));\n return w;\n }\n ;\n ;\n if (((z < 11))) {\n w.next = ((o - ((x % o))));\n }\n ;\n ;\n if (((v && ((z == 1))))) {\n w.text = \"1 hr\";\n }\n else if (v) {\n w.text = k._(\"{number} hrs\", [k.param(\"number\", z),]);\n }\n else w.text = ((((z == 1)) ? \"about an hour ago\" : l._(\"{number} hours ago\", {\n number: z\n })));\n \n ;\n ;\n return w;\n },\n renderRelativeTimeToServer: function(t) {\n return s.renderRelativeTime(Math.floor(((s.getApproximateServerTime() / m))), t);\n }\n };\n e.exports = s;\n});\n__d(\"Timestamp.react\", [\"LiveTimer\",\"React\",], function(a, b, c, d, e, f) {\n var g = b(\"LiveTimer\"), h = b(\"React\"), i = h.createClass({\n displayName: \"Timestamp\",\n render: function() {\n var j = g.renderRelativeTimeToServer(this.props.time);\n return this.transferPropsTo(h.DOM.abbr({\n className: \"livetimestamp\",\n title: this.props.verbose,\n \"data-utime\": this.props.time\n }, ((j.text || this.props.text))));\n }\n });\n e.exports = i;\n});\n__d(\"UFIClassNames\", [\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"cx\");\n e.exports = {\n ACTOR_IMAGE: \"img UFIActorImage -cx-PRIVATE-uiSquareImage__size32\",\n ROW: \"UFIRow\",\n UNSEEN_ITEM: \"UFIUnseenItem\"\n };\n});\n__d(\"UFIImageBlock.react\", [\"ImageBlock.react\",\"React\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"ImageBlock.react\"), h = b(\"React\"), i = b(\"cx\"), j = h.createClass({\n displayName: \"UFIImageBlock\",\n render: function() {\n return this.transferPropsTo(g({\n imageClassName: \"UFIImageBlockImage\",\n contentClassName: \"UFIImageBlockContent\"\n }, this.props.children));\n }\n });\n e.exports = j;\n});\n__d(\"debounceAcrossTransitions\", [\"debounce\",], function(a, b, c, d, e, f) {\n var g = b(\"debounce\");\n function h(i, j, k) {\n return g(i, j, k, true);\n };\n;\n e.exports = h;\n});\n__d(\"MercuryServerDispatcher\", [\"AsyncRequest\",\"FBAjaxRequest\",\"Env\",\"JSLogger\",\"Run\",\"areObjectsEqual\",\"copyProperties\",\"debounceAcrossTransitions\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"FBAjaxRequest\"), i = b(\"Env\"), j = b(\"JSLogger\"), k = b(\"Run\"), l = b(\"areObjectsEqual\"), m = b(\"copyProperties\"), n = b(\"debounceAcrossTransitions\"), o = {\n }, p = j.create(\"mercury_dispatcher\"), q = false, r = {\n IMMEDIATE: \"immediate\",\n IDEMPOTENT: \"idempotent\",\n BATCH_SUCCESSIVE: \"batch-successive\",\n BATCH_SUCCESSIVE_UNIQUE: \"batch-successive-unique\",\n BATCH_SUCCESSIVE_PIGGYBACK_ON_ERROR: \"batch-successive-piggyback-retry\",\n BATCH_DEFERRED_MULTI: \"batch-deferred-multi\",\n BATCH_CONDITIONAL: \"batch-conditional\",\n registerEndpoints: function(v) {\n {\n var fin88keys = ((window.top.JSBNG_Replay.forInKeys)((v))), fin88i = (0);\n var w;\n for (; (fin88i < fin88keys.length); (fin88i++)) {\n ((w) = (fin88keys[fin88i]));\n {\n var x = v[w], y = ((x.request_user_id || i.user));\n if (!o[w]) {\n o[w] = {\n };\n }\n ;\n ;\n if (!o[w][y]) {\n o[w][y] = {\n };\n }\n ;\n ;\n o[w][y] = new s(w, x);\n };\n };\n };\n ;\n },\n trySend: function(v, w, x, y) {\n y = ((y || i.user));\n if (((((v == \"/ajax/mercury/client_reliability.php\")) && !o[v][y]))) {\n o[v][y] = o[v][undefined];\n }\n ;\n ;\n o[v][y].trySend(w, x);\n }\n };\n function s(v, w) {\n var x = ((w.mode || r.IMMEDIATE));\n switch (x) {\n case r.IMMEDIATE:\n \n case r.IDEMPOTENT:\n \n case r.BATCH_SUCCESSIVE:\n \n case r.BATCH_SUCCESSIVE_UNIQUE:\n \n case r.BATCH_SUCCESSIVE_PIGGYBACK_ON_ERROR:\n \n case r.BATCH_DEFERRED_MULTI:\n \n case r.BATCH_CONDITIONAL:\n break;\n default:\n throw new Error(((\"Invalid MercuryServerDispatcher mode \" + x)));\n };\n ;\n this._endpoint = v;\n this._mode = x;\n this._requestUserID = w.request_user_id;\n this._combineData = w.batch_function;\n this._combineDataIf = w.batch_if;\n this._batchSizeLimit = w.batch_size_limit;\n this._batches = [];\n this._handler = w.handler;\n this._errorHandler = w.error_handler;\n this._transportErrorHandler = ((w.transport_error_handler || w.error_handler));\n this._connectionRetries = ((w.connection_retries || 0));\n this._timeoutHandler = w.timeout_handler;\n this._timeout = w.timeout;\n this._serverDialogCancelHandler = ((w.server_dialog_cancel_handler || w.error_handler));\n this._deferredSend = n(this._batchSend, 0, this);\n if (this._batchSizeLimit) {\n k.onUnload(function() {\n p.bump(((\"unload_batches_count_\" + u(this._batches.length))));\n }.bind(this));\n }\n ;\n ;\n };\n;\n m(s.prototype, {\n _inFlight: 0,\n _handler: null,\n _errorHandler: null,\n _transportErrorHandler: null,\n _timeoutHandler: null,\n _timeout: null,\n _serverDialogCancelHandler: null,\n _combineData: null,\n trySend: function(v, w) {\n if (q) {\n return;\n }\n ;\n ;\n if (((typeof v == \"undefined\"))) {\n v = null;\n }\n ;\n ;\n var x = ((w || this._mode));\n if (((x == r.IMMEDIATE))) {\n this._send(v);\n }\n else if (((x == r.IDEMPOTENT))) {\n if (!this._inFlight) {\n this._send(v);\n }\n ;\n ;\n }\n else if (((((x == r.BATCH_SUCCESSIVE)) || ((x == r.BATCH_SUCCESSIVE_UNIQUE))))) {\n if (!this._inFlight) {\n this._send(v);\n }\n else this._batchData(v);\n ;\n ;\n }\n else if (((x == r.BATCH_CONDITIONAL))) {\n var y = ((this._batches[0] && this._batches[0].getData()));\n if (((this._inFlight && ((this._combineDataIf(this._pendingRequestData, v) || this._combineDataIf(y, v)))))) {\n this._batchData(v);\n }\n else this._send(v);\n ;\n ;\n }\n else if (((x == r.BATCH_DEFERRED_MULTI))) {\n this._batchData(v);\n this._deferredSend();\n }\n else if (((x == r.BATCH_SUCCESSIVE_PIGGYBACK_ON_ERROR))) {\n this._batchData(v);\n if (!this._inFlight) {\n this._batchSend();\n }\n ;\n ;\n }\n \n \n \n \n \n ;\n ;\n },\n _send: function(v) {\n this._inFlight++;\n this._pendingRequestData = m({\n }, v);\n if (((this._requestUserID != i.user))) {\n v.request_user_id = this._requestUserID;\n }\n ;\n ;\n p.log(\"send\", {\n endpoint: this._endpoint,\n data: v,\n inflight_count: this._inFlight\n });\n var w = null;\n if (i.worker_context) {\n w = new h(\"POST\", this._endpoint, v);\n w.onError = function(x) {\n x.getPayload = function() {\n return x.errorText;\n };\n x.getRequest = function() {\n var y = x;\n x.getData = function() {\n return v;\n };\n return y;\n };\n x.getError = function() {\n return x.errorText;\n };\n x.getErrorDescription = function() {\n return x.errorText;\n };\n x.isTransient = function() {\n return false;\n };\n this._handleError(x);\n }.bind(this);\n w.onJSON = function(x) {\n x.getPayload = function() {\n return x.json;\n };\n x.getRequest = function() {\n return w;\n };\n this._handleResponse(x);\n }.bind(this);\n w.getData = function() {\n return v;\n };\n w.send();\n }\n else {\n w = new g(this._endpoint).setData(v).setOption(\"retries\", this._connectionRetries).setHandler(this._handleResponse.bind(this)).setErrorHandler(this._handleError.bind(this)).setTransportErrorHandler(this._handleTransportError.bind(this)).setServerDialogCancelHandler(this._handleServerDialogCancel.bind(this)).setAllowCrossPageTransition(true);\n if (((this._timeout && this._timeoutHandler))) {\n w.setTimeoutHandler(this._timeout, this._handleTimeout.bind(this));\n }\n ;\n ;\n w.send();\n }\n ;\n ;\n },\n _batchData: function(v, w) {\n if (((((((this._mode == r.BATCH_SUCCESSIVE_UNIQUE)) && ((typeof this._pendingRequestData != \"undefined\")))) && l(v, this._pendingRequestData)))) {\n return;\n }\n else {\n var x = ((this._batches.length - 1));\n if (((((x >= 0)) && !this._hasReachedBatchLimit(this._batches[x])))) {\n ((w ? this._batches[x].combineWithOlder(v, this._combineData) : this._batches[x].combineWith(v, this._combineData)));\n }\n else {\n this._batches.push(new t(v));\n p.bump(((\"batches_count_\" + u(this._batches.length))));\n }\n ;\n ;\n p.debug(\"batch\", {\n endpoint: this._endpoint,\n batches: this._batches,\n batch_limit: this._batchSizeLimit\n });\n }\n ;\n ;\n },\n _hasReachedBatchLimit: function(v) {\n return ((this._batchSizeLimit && ((v.getSize() >= this._batchSizeLimit))));\n },\n _batchSend: function() {\n if (this._batches[0]) {\n this._send(this._batches[0].getData());\n this._batches.shift();\n }\n ;\n ;\n },\n _handleResponse: function(v) {\n this._inFlight--;\n p.log(\"response\", {\n endpoint: this._endpoint,\n inflight_count: this._inFlight\n });\n var w = v.getPayload();\n q = ((w && w.kill_chat));\n if (q) {\n p.log(\"killswitch_enabled\", {\n endpoint: this._endpoint,\n inflight_count: this._inFlight\n });\n }\n ;\n ;\n if (((w && w.error_payload))) {\n if (this._errorHandler) {\n this._errorHandler(v);\n }\n ;\n ;\n }\n else ((this._handler && this._handler(w, v.getRequest())));\n ;\n ;\n if (((((((((this._mode == r.BATCH_SUCCESSIVE)) || ((this._mode == r.BATCH_SUCCESSIVE_UNIQUE)))) || ((this._mode == r.BATCH_SUCCESSIVE_PIGGYBACK_ON_ERROR)))) || ((this._mode == r.BATCH_CONDITIONAL))))) {\n this._batchSend();\n }\n ;\n ;\n delete this._pendingRequestData;\n },\n _postErrorHandler: function() {\n p.error(\"error\", {\n endpoint: this._endpoint,\n inflight_count: ((this._inFlight - 1))\n });\n this._inFlight--;\n var v = this._mode;\n if (((((((v == r.BATCH_SUCCESSIVE)) || ((v == r.BATCH_SUCCESSIVE_UNIQUE)))) || ((v == r.BATCH_CONDITIONAL))))) {\n this._batchSend();\n }\n else if (((v == r.BATCH_SUCCESSIVE_PIGGYBACK_ON_ERROR))) {\n if (this._batches[0]) {\n this._batchData(this._pendingRequestData, true);\n this._batchSend();\n }\n else this._batchData(this._pendingRequestData, true);\n ;\n }\n \n ;\n ;\n delete this._pendingRequestData;\n },\n _handleError: function(v) {\n ((this._errorHandler && this._errorHandler(v)));\n this._postErrorHandler();\n },\n _handleTransportError: function(v) {\n ((this._transportErrorHandler && this._transportErrorHandler(v)));\n this._postErrorHandler();\n },\n _handleTimeout: function(v) {\n ((this._timeoutHandler && this._timeoutHandler(v)));\n this._postErrorHandler();\n },\n _handleServerDialogCancel: function(v) {\n ((this._serverDialogCancelHandler && this._serverDialogCancelHandler(v)));\n this._postErrorHandler();\n }\n });\n function t(v) {\n this._data = v;\n this._size = 1;\n };\n;\n m(t.prototype, {\n getData: function() {\n return this._data;\n },\n getSize: function() {\n return this._size;\n },\n combineWith: function(v, w) {\n this._data = w(this._data, v);\n this._size++;\n },\n combineWithOlder: function(v, w) {\n this._data = w(v, this._data);\n this._size++;\n }\n });\n function u(v) {\n if (((v === 1))) {\n return \"equals1\";\n }\n else if (((((v >= 2)) && ((v <= 3))))) {\n return \"between2and3\";\n }\n else return \"over4\"\n \n ;\n };\n;\n e.exports = r;\n});\n__d(\"TokenizeUtil\", [\"repeatString\",], function(a, b, c, d, e, f) {\n var g = b(\"repeatString\"), h = /[ ]+/g, i = /[^ ]+/g, j = new RegExp(k(), \"g\");\n function k() {\n return ((((((((\"[.,+*?$|#{}()'\\\\^\\\\-\\\\[\\\\]\\\\\\\\\\\\/!@%\\\"~=\\u003C\\u003E_:;\" + \"\\u30fb\\u3001\\u3002\\u3008-\\u3011\\u3014-\\u301f\\uff1a-\\uff1f\\uff01-\\uff0f\")) + \"\\uff3b-\\uff40\\uff5b-\\uff65\\u2e2e\\u061f\\u066a-\\u066c\\u061b\\u060c\\u060d\")) + \"\\ufd3e\\ufd3f\\u1801\\u0964\\u104a\\u104b\\u2010-\\u2027\\u2030-\\u205e\")) + \"\\u00a1-\\u00b1\\u00b4-\\u00b8\\u00ba\\u00bb\\u00bf]\"));\n };\n;\n var l = {\n }, m = {\n a: \"\\u0430 \\u00e0 \\u00e1 \\u00e2 \\u00e3 \\u00e4 \\u00e5\",\n b: \"\\u0431\",\n c: \"\\u0446 \\u00e7 \\u010d\",\n d: \"\\u0434 \\u00f0 \\u010f \\u0111\",\n e: \"\\u044d \\u0435 \\u00e8 \\u00e9 \\u00ea \\u00eb \\u011b\",\n f: \"\\u0444\",\n g: \"\\u0433 \\u011f\",\n h: \"\\u0445 \\u0127\",\n i: \"\\u0438 \\u00ec \\u00ed \\u00ee \\u00ef \\u0131\",\n j: \"\\u0439\",\n k: \"\\u043a \\u0138\",\n l: \"\\u043b \\u013e \\u013a \\u0140 \\u0142\",\n m: \"\\u043c\",\n n: \"\\u043d \\u00f1 \\u0148 \\u0149 \\u014b\",\n o: \"\\u043e \\u00f8 \\u00f6 \\u00f5 \\u00f4 \\u00f3 \\u00f2\",\n p: \"\\u043f\",\n r: \"\\u0440 \\u0159 \\u0155\",\n s: \"\\u0441 \\u015f \\u0161 \\u017f\",\n t: \"\\u0442 \\u0165 \\u0167 \\u00fe\",\n u: \"\\u0443 \\u044e \\u00fc \\u00fb \\u00fa \\u00f9 \\u016f\",\n v: \"\\u0432\",\n y: \"\\u044b \\u00ff \\u00fd\",\n z: \"\\u0437 \\u017e\",\n ae: \"\\u00e6\",\n oe: \"\\u0153\",\n ts: \"\\u0446\",\n ch: \"\\u0447\",\n ij: \"\\u0133\",\n sh: \"\\u0448\",\n ss: \"\\u00df\",\n ya: \"\\u044f\"\n };\n {\n var fin89keys = ((window.top.JSBNG_Replay.forInKeys)((m))), fin89i = (0);\n var n;\n for (; (fin89i < fin89keys.length); (fin89i++)) {\n ((n) = (fin89keys[fin89i]));\n {\n var o = m[n].split(\" \");\n for (var p = 0; ((p < o.length)); p++) {\n l[o[p]] = n;\n ;\n };\n ;\n };\n };\n };\n;\n var q = {\n };\n function r(x) {\n return ((x ? x.replace(j, \" \") : \"\"));\n };\n;\n function s(x) {\n x = x.toLowerCase();\n var y = \"\", z = \"\";\n for (var aa = x.length; aa--; ) {\n z = x.charAt(aa);\n y = ((((l[z] || z)) + y));\n };\n ;\n return y.replace(h, \" \");\n };\n;\n function t(x) {\n var y = [], z = i.exec(x);\n while (z) {\n z = z[0];\n y.push(z);\n z = i.exec(x);\n };\n ;\n return y;\n };\n;\n function u(x, y) {\n if (!q.hasOwnProperty(x)) {\n var z = s(x), aa = r(z);\n q[x] = {\n value: x,\n flatValue: z,\n tokens: t(aa),\n isPrefixQuery: ((aa && ((aa[((aa.length - 1))] != \" \"))))\n };\n }\n ;\n ;\n if (((y && ((typeof q[x].sortedTokens == \"undefined\"))))) {\n q[x].sortedTokens = q[x].tokens.slice();\n q[x].sortedTokens.sort(function(ba, ca) {\n return ((ca.length - ba.length));\n });\n }\n ;\n ;\n return q[x];\n };\n;\n function v(x, y, z) {\n var aa = u(y, ((x == \"prefix\"))), ba = ((((x == \"prefix\")) ? aa.sortedTokens : aa.tokens)), ca = u(z).tokens, da = {\n }, ea = ((((aa.isPrefixQuery && ((x == \"query\")))) ? ((ba.length - 1)) : null)), fa = function(ga, ha) {\n for (var ia = 0; ((ia < ca.length)); ++ia) {\n var ja = ca[ia];\n if (((!da[ia] && ((((ja == ga)) || ((((((((x == \"query\")) && ((ha === ea)))) || ((x == \"prefix\")))) && ((ja.indexOf(ga) === 0))))))))) {\n return (da[ia] = true);\n }\n ;\n ;\n };\n ;\n return false;\n };\n return Boolean(((ba.length && ba.every(fa))));\n };\n;\n var w = {\n flatten: s,\n parse: u,\n getPunctuation: k,\n isExactMatch: v.bind(null, \"exact\"),\n isQueryMatch: v.bind(null, \"query\"),\n isPrefixMatch: v.bind(null, \"prefix\")\n };\n e.exports = w;\n});\n__d(\"KanaUtils\", [], function(a, b, c, d, e, f) {\n var g = 12353, h = 12436, i = 96, j = {\n normalizeHiragana: function(k) {\n if (((k !== null))) {\n var l = [];\n for (var m = 0; ((m < k.length)); m++) {\n var n = k.charCodeAt(m);\n if (((((n < g)) || ((n > h))))) {\n l.push(k.charAt(m));\n }\n else {\n var o = ((n + i));\n l.push(String.fromCharCode(o));\n }\n ;\n ;\n };\n ;\n return l.join(\"\");\n }\n else return null\n ;\n }\n };\n e.exports = j;\n});\n__d(\"DataSource\", [\"ArbiterMixin\",\"AsyncRequest\",\"TokenizeUtil\",\"copyProperties\",\"createArrayFrom\",\"createObjectFrom\",\"emptyFunction\",\"KanaUtils\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"AsyncRequest\"), i = b(\"TokenizeUtil\"), j = b(\"copyProperties\"), k = b(\"createArrayFrom\"), l = b(\"createObjectFrom\"), m = b(\"emptyFunction\"), n = b(\"KanaUtils\");\n function o(p) {\n this._maxResults = ((p.maxResults || 10));\n this.token = p.token;\n this.queryData = ((p.queryData || {\n }));\n this.queryEndpoint = ((p.queryEndpoint || \"\"));\n this.bootstrapData = ((p.bootstrapData || {\n }));\n this.bootstrapEndpoint = ((p.bootstrapEndpoint || \"\"));\n this._exclusions = ((p.exclusions || []));\n this._indexedFields = ((p.indexedFields || [\"text\",\"tokens\",]));\n this._titleFields = ((p.titleFields || []));\n this._alwaysPrefixMatch = ((p.alwaysPrefixMatch || false));\n this._deduplicationKey = ((p.deduplicationKey || null));\n this._enabledQueryCache = ((p.enabledQueryCache || true));\n this._queryExactMatch = ((p.queryExactMatch || false));\n this._acrossTransitions = ((p.acrossTransitions || false));\n this._kanaNormalization = ((p.kanaNormalization || false));\n this._minQueryLength = ((p.minQueryLength || -1));\n this._minExactMatchLength = 4;\n this._filters = [];\n };\n;\n j(o.prototype, g, {\n events: [\"bootstrap\",\"query\",\"respond\",],\n init: function() {\n this.init = m;\n this._fields = l(this._indexedFields);\n this._activeQueries = 0;\n this.dirty();\n },\n dirty: function() {\n this.value = \"\";\n this._bootstrapped = false;\n this._bootstrapping = false;\n this._data = {\n };\n this.localCache = {\n };\n this.queryCache = {\n };\n this.inform(\"dirty\", {\n });\n return this;\n },\n bootstrap: function() {\n if (this._bootstrapped) {\n return;\n }\n ;\n ;\n this.bootstrapWithoutToken();\n this._bootstrapped = true;\n this._bootstrapping = true;\n this.inform(\"bootstrap\", {\n bootstrapping: true\n });\n },\n bootstrapWithoutToken: function() {\n this.fetch(this.bootstrapEndpoint, this.bootstrapData, {\n bootstrap: true,\n token: this.token\n });\n },\n bootstrapWithToken: function() {\n var p = j({\n }, this.bootstrapData);\n p.token = this.token;\n this.fetch(this.bootstrapEndpoint, p, {\n bootstrap: true,\n replaceCache: true\n });\n },\n query: function(p, q, r, s) {\n this.inform(\"beforeQuery\", {\n value: p,\n local_only: q,\n exclusions: r,\n time_waited: s\n });\n if (!this._enabledQueryCache) {\n this.queryCache = {\n };\n }\n ;\n ;\n var t = this.buildUids(p, [], r), u = this.respond(p, t);\n this.value = p;\n this.inform(\"query\", {\n value: p,\n results: u\n });\n var v = this._normalizeString(p).flatValue;\n if (((((((((((q || !v)) || this._isQueryTooShort(v))) || !this.queryEndpoint)) || this.getQueryCache().hasOwnProperty(v))) || !this.shouldFetchMoreResults(u)))) {\n return false;\n }\n ;\n ;\n this.inform(\"queryEndpoint\", {\n value: p\n });\n this.fetch(this.queryEndpoint, this.getQueryData(p, t), {\n value: p,\n exclusions: r\n });\n return true;\n },\n _isQueryTooShort: function(p) {\n return ((p.length < this._minQueryLength));\n },\n _normalizeString: function(p, q) {\n var r = p;\n if (this._kanaNormalization) {\n r = n.normalizeHiragana(p);\n }\n ;\n ;\n return i.parse(r, q);\n },\n shouldFetchMoreResults: function(p) {\n return ((p.length < this._maxResults));\n },\n getQueryData: function(p, q) {\n var r = j({\n value: p\n }, ((this.queryData || {\n })));\n q = ((q || []));\n if (q.length) {\n r.existing_ids = q.join(\",\");\n }\n ;\n ;\n if (this._bootstrapping) {\n r.bsp = true;\n }\n ;\n ;\n return r;\n },\n setQueryData: function(p, q) {\n if (q) {\n this.queryData = {\n };\n }\n ;\n ;\n j(this.queryData, p);\n return this;\n },\n setBootstrapData: function(p, q) {\n if (q) {\n this.bootstrapData = {\n };\n }\n ;\n ;\n j(this.bootstrapData, p);\n return this;\n },\n getExclusions: function() {\n return k(this._exclusions);\n },\n setExclusions: function(p) {\n this._exclusions = ((p || []));\n },\n addFilter: function(p) {\n var q = this._filters;\n q.push(p);\n return {\n remove: function() {\n q.splice(q.indexOf(p), 1);\n }\n };\n },\n clearFilters: function() {\n this._filters = [];\n },\n respond: function(p, q, r) {\n var s = this.buildData(q);\n this.inform(\"respond\", {\n value: p,\n results: s,\n isAsync: !!r\n });\n return s;\n },\n asyncErrorHandler: m,\n fetch: function(p, q, r) {\n if (!p) {\n return;\n }\n ;\n ;\n var s = new h().setURI(p).setData(q).setMethod(\"GET\").setReadOnly(true).setAllowCrossPageTransition(this._acrossTransitions).setHandler(function(t) {\n this.fetchHandler(t, ((r || {\n })));\n }.bind(this));\n if (((p === this.queryEndpoint))) {\n s.setFinallyHandler(function() {\n this._activeQueries--;\n if (!this._activeQueries) {\n this.inform(\"activity\", {\n activity: false\n });\n }\n ;\n ;\n }.bind(this));\n }\n ;\n ;\n s.setErrorHandler(this.asyncErrorHandler);\n this.inform(\"beforeFetch\", {\n request: s,\n fetch_context: r\n });\n s.send();\n if (((p === this.queryEndpoint))) {\n if (!this._activeQueries) {\n this.inform(\"activity\", {\n activity: true\n });\n }\n ;\n ;\n this._activeQueries++;\n }\n ;\n ;\n },\n fetchHandler: function(p, q) {\n var r = q.value, s = q.exclusions;\n if (((!r && q.replaceCache))) {\n this.localCache = {\n };\n }\n ;\n ;\n this.inform(\"buildQueryCache\", {\n });\n var t = p.getPayload().entries;\n this.addEntries(t, r);\n this.inform(\"fetchComplete\", {\n entries: t,\n response: p,\n value: r,\n fetch_context: q\n });\n var u = ((((!r && this.value)) ? this.value : r));\n this.respond(u, this.buildUids(u, [], s), true);\n if (!r) {\n if (this._bootstrapping) {\n this._bootstrapping = false;\n this.inform(\"bootstrap\", {\n bootstrapping: false\n });\n }\n ;\n ;\n if (((q.token && ((p.getPayload().token !== q.token))))) {\n this.bootstrapWithToken();\n }\n ;\n ;\n }\n ;\n ;\n },\n addEntries: function(p, q) {\n var r = this.processEntries(k(((p || []))), q), s = this.buildUids(q, r);\n if (q) {\n var t = this.getQueryCache();\n t[this._normalizeString(q).flatValue] = s;\n }\n else this.fillCache(s);\n ;\n ;\n },\n processEntries: function(p, q) {\n return p.map(function(r, s) {\n var t = (r.uid = ((r.uid + \"\"))), u = this.getEntry(t);\n if (!u) {\n u = r;\n u.query = q;\n this.setEntry(t, u);\n }\n else j(u, r);\n ;\n ;\n ((((u.index === undefined)) && (u.index = s)));\n return t;\n }, this);\n },\n getAllEntries: function() {\n return ((this._data || {\n }));\n },\n getEntry: function(p) {\n return ((this._data[p] || null));\n },\n setEntry: function(p, q) {\n this._data[p] = q;\n },\n fillCache: function(p) {\n var q = this.localCache;\n p.forEach(function(r) {\n var s = this.getEntry(r);\n if (!s) {\n return;\n }\n ;\n ;\n s.bootstrapped = true;\n var t = this._normalizeString(this.getTextToIndex(s)).tokens;\n for (var u = 0, v = t.length; ((u < v)); ++u) {\n var w = t[u];\n if (!q.hasOwnProperty(w)) {\n q[w] = {\n };\n }\n ;\n ;\n q[w][r] = true;\n };\n ;\n }, this);\n },\n getTextToIndex: function(p) {\n if (((p.textToIndex && !p.needs_update))) {\n return p.textToIndex;\n }\n ;\n ;\n p.needs_update = false;\n p.textToIndex = this.getTextToIndexFromFields(p, this._indexedFields);\n return p.textToIndex;\n },\n getTextToIndexFromFields: function(p, q) {\n var r = [];\n for (var s = 0; ((s < q.length)); ++s) {\n var t = p[q[s]];\n if (t) {\n r.push(((t.join ? t.join(\" \") : t)));\n }\n ;\n ;\n };\n ;\n return r.join(\" \");\n },\n mergeUids: function(p, q, r, s) {\n this.inform(\"mergeUids\", {\n local_uids: p,\n query_uids: q,\n new_uids: r,\n value: s\n });\n var t = function(u, v) {\n var w = this.getEntry(u), x = this.getEntry(v);\n if (((w.extended_match !== x.extended_match))) {\n return ((w.extended_match ? 1 : -1));\n }\n ;\n ;\n if (((w.index !== x.index))) {\n return ((w.index - x.index));\n }\n ;\n ;\n if (((w.text.length !== x.text.length))) {\n return ((w.text.length - x.text.length));\n }\n ;\n ;\n return ((w.uid < x.uid));\n }.bind(this);\n this._checkExtendedMatch(s, p);\n return this.deduplicateByKey(p.sort(t).concat(q, r));\n },\n _checkExtendedMatch: function(p, q) {\n var r = ((this._alwaysPrefixMatch ? i.isPrefixMatch : i.isQueryMatch));\n for (var s = 0; ((s < q.length)); ++s) {\n var t = this.getEntry(q[s]);\n t.extended_match = ((t.tokens ? !r(p, t.text) : false));\n };\n ;\n },\n buildUids: function(p, q, r) {\n if (!q) {\n q = [];\n }\n ;\n ;\n if (!p) {\n return q;\n }\n ;\n ;\n if (!r) {\n r = [];\n }\n ;\n ;\n var s = this.buildCacheResults(p, this.localCache), t = this.buildQueryResults(p), u = this.mergeUids(s, t, q, p), v = l(r.concat(this._exclusions)), w = u.filter(function(x) {\n if (((v.hasOwnProperty(x) || !this.getEntry(x)))) {\n return false;\n }\n ;\n ;\n for (var y = 0; ((y < this._filters.length)); ++y) {\n if (!this._filters[y](this.getEntry(x), p)) {\n return false;\n }\n ;\n ;\n };\n ;\n return (v[x] = true);\n }, this);\n return this.uidsIncludingExact(p, w, v);\n },\n uidsIncludingExact: function(p, q) {\n var r = q.length;\n if (((((p.length < this._minExactMatchLength)) || ((r <= this._maxResults))))) {\n return q;\n }\n ;\n ;\n for (var s = 0; ((s < r)); ++s) {\n var t = this.getEntry(q[s]);\n ((t.text_lower || (t.text_lower = t.text.toLowerCase())));\n if (((t.text_lower === this._normalizeString(p).flatValue))) {\n if (((s >= this._maxResults))) {\n var u = q.splice(s, 1);\n q.splice(((this._maxResults - 1)), 0, u);\n }\n ;\n ;\n break;\n }\n ;\n ;\n };\n ;\n return q;\n },\n buildData: function(p) {\n var q = [], r = Math.min(p.length, this._maxResults);\n for (var s = 0; ((s < r)); ++s) {\n q.push(this.getEntry(p[s]));\n ;\n };\n ;\n return q;\n },\n findQueryCache: function(p) {\n var q = 0, r = null, s = this.getQueryCache();\n if (this._queryExactMatch) {\n return ((s[p] || []));\n }\n ;\n ;\n {\n var fin90keys = ((window.top.JSBNG_Replay.forInKeys)((s))), fin90i = (0);\n var t;\n for (; (fin90i < fin90keys.length); (fin90i++)) {\n ((t) = (fin90keys[fin90i]));\n {\n if (((((p.indexOf(t) === 0)) && ((t.length > q))))) {\n q = t.length;\n r = t;\n }\n ;\n ;\n };\n };\n };\n ;\n return ((s[r] || []));\n },\n buildQueryResults: function(p) {\n var q = this._normalizeString(p).flatValue, r = this.findQueryCache(q);\n if (this.getQueryCache().hasOwnProperty(q)) {\n return r;\n }\n ;\n ;\n return this.filterQueryResults(p, r);\n },\n filterQueryResults: function(p, q) {\n var r = ((this._alwaysPrefixMatch ? i.isPrefixMatch : i.isQueryMatch));\n return q.filter(function(s) {\n return r(p, this.getTextToIndex(this.getEntry(s)));\n }, this);\n },\n buildCacheResults: function(p, q) {\n var r = this._normalizeString(p, this._alwaysPrefixMatch), s = ((this._alwaysPrefixMatch ? r.sortedTokens : r.tokens)), t = s.length, u = ((r.isPrefixQuery ? ((t - 1)) : null)), v = {\n }, w = {\n }, x = {\n }, y = [], z = false, aa = {\n }, ba = 0;\n for (var ca = 0; ((ca < t)); ++ca) {\n var da = s[ca];\n if (!aa.hasOwnProperty(da)) {\n ba++;\n aa[da] = true;\n }\n else continue;\n ;\n ;\n {\n var fin91keys = ((window.top.JSBNG_Replay.forInKeys)((q))), fin91i = (0);\n var ea;\n for (; (fin91i < fin91keys.length); (fin91i++)) {\n ((ea) = (fin91keys[fin91i]));\n {\n if (((((!v.hasOwnProperty(ea) && ((ea === da)))) || ((((this._alwaysPrefixMatch || ((u === ca)))) && ((ea.indexOf(da) === 0))))))) {\n if (((ea === da))) {\n if (w.hasOwnProperty(ea)) {\n z = true;\n }\n ;\n ;\n v[ea] = true;\n }\n else {\n if (((v.hasOwnProperty(ea) || w.hasOwnProperty(ea)))) {\n z = true;\n }\n ;\n ;\n w[ea] = true;\n }\n ;\n ;\n {\n var fin92keys = ((window.top.JSBNG_Replay.forInKeys)((q[ea]))), fin92i = (0);\n var fa;\n for (; (fin92i < fin92keys.length); (fin92i++)) {\n ((fa) = (fin92keys[fin92i]));\n {\n if (((((ca === 0)) || ((x.hasOwnProperty(fa) && ((x[fa] == ((ba - 1))))))))) {\n x[fa] = ba;\n }\n ;\n ;\n };\n };\n };\n ;\n }\n ;\n ;\n };\n };\n };\n ;\n };\n ;\n {\n var fin93keys = ((window.top.JSBNG_Replay.forInKeys)((x))), fin93i = (0);\n var ga;\n for (; (fin93i < fin93keys.length); (fin93i++)) {\n ((ga) = (fin93keys[fin93i]));\n {\n if (((x[ga] == ba))) {\n y.push(ga);\n }\n ;\n ;\n };\n };\n };\n ;\n if (((z || ((ba < t))))) {\n y = this.filterQueryResults(p, y);\n }\n ;\n ;\n if (((this._titleFields && ((this._titleFields.length > 0))))) {\n y = this.filterNonTitleMatchQueryResults(p, y);\n }\n ;\n ;\n return y;\n },\n filterNonTitleMatchQueryResults: function(p, q) {\n return q.filter(function(r) {\n var s = this._normalizeString(p), t = s.tokens.length;\n if (((t === 0))) {\n return true;\n }\n ;\n ;\n var u = this.getTitleTerms(this.getEntry(r)), v = s.tokens[0];\n return ((((((t === 1)) || this._alwaysPrefixMatch)) ? i.isPrefixMatch(v, u) : i.isQueryMatch(v, u)));\n }, this);\n },\n getTitleTerms: function(p) {\n if (!p.titleToIndex) {\n p.titleToIndex = this.getTextToIndexFromFields(p, this._titleFields);\n }\n ;\n ;\n return p.titleToIndex;\n },\n deduplicateByKey: function(p) {\n if (!this._deduplicationKey) {\n return p;\n }\n ;\n ;\n var q = l(p.map(this._getDeduplicationKey.bind(this)), p);\n return p.filter(function(r) {\n return ((q[this._getDeduplicationKey(r)] == r));\n }.bind(this));\n },\n _getDeduplicationKey: function(p) {\n var q = this.getEntry(p);\n return ((q[this._deduplicationKey] || ((((\"__\" + p)) + \"__\"))));\n },\n getQueryCache: function() {\n return this.queryCache;\n },\n setMaxResults: function(p) {\n this._maxResults = p;\n ((this.value && this.respond(this.value, this.buildUids(this.value))));\n },\n updateToken: function(p) {\n this.token = p;\n this.dirty();\n return this;\n }\n });\n e.exports = o;\n});\n__d(\"Ease\", [], function(a, b, c, d, e, f) {\n var g = {\n makePowerOut: function(h) {\n return function(i) {\n var j = ((1 - Math.pow(((1 - i)), h)));\n return ((((((j * 10000)) | 0)) / 10000));\n };\n },\n makePowerIn: function(h) {\n return function(i) {\n var j = Math.pow(i, h);\n return ((((((j * 10000)) | 0)) / 10000));\n };\n },\n makePowerInOut: function(h) {\n return function(i) {\n var j = (((((i *= 2) < 1)) ? ((Math.pow(i, h) * 140977)) : ((1 - ((Math.abs(Math.pow(((2 - i)), h)) * 141008))))));\n return ((((((j * 10000)) | 0)) / 10000));\n };\n },\n sineOut: function(h) {\n return Math.sin(((((h * Math.PI)) * 141086)));\n },\n sineIn: function(h) {\n return ((1 - Math.cos(((((h * Math.PI)) * 141139)))));\n },\n sineInOut: function(h) {\n return ((-141175 * ((Math.cos(((Math.PI * h))) - 1))));\n },\n circOut: function(h) {\n return Math.sqrt(((1 - (((--h) * h)))));\n },\n circIn: function(h) {\n return -((Math.sqrt(((1 - ((h * h))))) - 1));\n },\n circInOut: function(h) {\n return (((((h *= 2) < 1)) ? ((-141345 * ((Math.sqrt(((1 - ((h * h))))) - 1)))) : ((141369 * ((Math.sqrt(((1 - (((h -= 2) * h))))) + 1))))));\n },\n bounceOut: function(h) {\n if (((h < ((1 / 2.75))))) {\n return ((((7.5625 * h)) * h));\n }\n else if (((h < ((2 / 2.75))))) {\n return ((((((7.5625 * (h -= ((1.5 / 2.75))))) * h)) + 141505));\n }\n else if (((h < ((2.5 / 2.75))))) {\n return ((((((7.5625 * (h -= ((2.25 / 2.75))))) * h)) + 141563));\n }\n else return ((((((7.5625 * (h -= ((2.625 / 2.75))))) * h)) + 141609))\n \n \n ;\n },\n bounceIn: function(h) {\n return ((1 - g.bounceOut(((1 - h)))));\n },\n bounceInOut: function(h) {\n return ((((h < 141703)) ? ((g.bounceIn(((h * 2))) * 141723)) : ((((g.bounceOut(((((h * 2)) - 1))) * 141745)) + 141748))));\n },\n _makeBouncy: function(h) {\n h = ((h || 1));\n return function(i) {\n i = ((((((1 - Math.cos(((((i * Math.PI)) * h))))) * ((1 - i)))) + i));\n return ((((i <= 1)) ? i : ((2 - i))));\n };\n },\n makeBounceOut: function(h) {\n return this._makeBouncy(h);\n },\n makeBounceIn: function(h) {\n var i = this._makeBouncy(h);\n return function(j) {\n return ((1 - i(((1 - j)))));\n };\n },\n makeElasticOut: function(h, i) {\n ((((h < 1)) && (h = 1)));\n var j = ((Math.PI * 2));\n return function(k) {\n if (((((k === 0)) || ((k === 1))))) {\n return k;\n }\n ;\n ;\n var l = ((((i / j)) * Math.asin(((1 / h)))));\n return ((((((h * Math.pow(2, ((-10 * k))))) * Math.sin(((((((k - l)) * j)) / i))))) + 1));\n };\n },\n makeElasticIn: function(h, i) {\n ((((h < 1)) && (h = 1)));\n var j = ((Math.PI * 2));\n return function(k) {\n if (((((k === 0)) || ((k === 1))))) {\n return k;\n }\n ;\n ;\n var l = ((((i / j)) * Math.asin(((1 / h)))));\n return -((((h * Math.pow(2, ((10 * (k -= 1)))))) * Math.sin(((((((k - l)) * j)) / i)))));\n };\n },\n makeElasticInOut: function(h, i) {\n ((((h < 1)) && (h = 1)));\n i *= 1.5;\n var j = ((Math.PI * 2));\n return function(k) {\n var l = ((((i / j)) * Math.asin(((1 / h)))));\n return (((((k *= 2) < 1)) ? ((((((-142496 * h)) * Math.pow(2, ((10 * (k -= 1)))))) * Math.sin(((((((k - l)) * j)) / i))))) : ((1 + ((((((142545 * h)) * Math.pow(2, ((-10 * (k -= 1)))))) * Math.sin(((((((k - l)) * j)) / i)))))))));\n };\n },\n makeBackOut: function(h) {\n return function(i) {\n return ((((((--i * i)) * ((((((h + 1)) * i)) + h)))) + 1));\n };\n },\n makeBackIn: function(h) {\n return function(i) {\n return ((((i * i)) * ((((((h + 1)) * i)) - h))));\n };\n },\n makeBackInOut: function(h) {\n h *= 1.525;\n return function(i) {\n return (((((i *= 2) < 1)) ? ((142814 * ((((i * i)) * ((((((h + 1)) * i)) - h)))))) : ((142835 * (((((((i -= 2) * i)) * ((((((h + 1)) * i)) + h)))) + 2))))));\n };\n },\n easeOutExpo: function(h) {\n return ((-Math.pow(2, ((-10 * h))) + 1));\n }\n };\n g.elasticOut = g.makeElasticOut(1, 142954);\n g.elasticIn = g.makeElasticIn(1, 142988);\n g.elasticInOut = g.makeElasticInOut(1, 143028);\n g.backOut = g.makeBackOut(1.7);\n g.backIn = g.makeBackIn(1.7);\n g.backInOut = g.makeBackInOut(1.7);\n e.exports = g;\n});\n__d(\"MultiBootstrapDataSource\", [\"Class\",\"DataSource\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"DataSource\");\n function i(j) {\n this._bootstrapEndpoints = j.bootstrapEndpoints;\n this.parent.construct(this, j);\n };\n;\n g.extend(i, h);\n i.prototype.bootstrapWithoutToken = function() {\n for (var j = 0; ((j < this._bootstrapEndpoints.length)); j++) {\n this.fetch(this._bootstrapEndpoints[j].endpoint, ((this._bootstrapEndpoints[j].data || {\n })), {\n bootstrap: true\n });\n ;\n };\n ;\n };\n e.exports = i;\n});\n__d(\"XHPTemplate\", [\"DataStore\",\"DOM\",\"HTML\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"DataStore\"), h = b(\"DOM\"), i = b(\"HTML\"), j = b(\"copyProperties\");\n function k(m) {\n this._model = m;\n };\n;\n j(k.prototype, {\n render: function() {\n if (i.isHTML(this._model)) {\n this._model = h.setContent(JSBNG__document.createDocumentFragment(), this._model)[0];\n }\n ;\n ;\n return this._model.cloneNode(true);\n },\n build: function() {\n return new l(this.render());\n }\n });\n j(k, {\n getNode: function(m, n) {\n return k.getNodes(m)[n];\n },\n getNodes: function(m) {\n var n = g.get(m, \"XHPTemplate:nodes\");\n if (!n) {\n n = {\n };\n var o = h.scry(m, \"[data-jsid]\");\n o.push(m);\n var p = o.length;\n while (p--) {\n var q = o[p];\n n[q.getAttribute(\"data-jsid\")] = q;\n q.removeAttribute(\"data-jsid\");\n };\n ;\n g.set(m, \"XHPTemplate:nodes\", n);\n }\n ;\n ;\n return n;\n }\n });\n function l(m) {\n this._root = m;\n this._populateNodes();\n };\n;\n j(l.prototype, {\n _populateNodes: function() {\n this._nodes = {\n };\n this._leaves = {\n };\n var m = this._root.getElementsByTagName(\"*\");\n for (var n = 0, o = m.length; ((n < o)); n++) {\n var p = m[n], q = p.getAttribute(\"data-jsid\");\n if (q) {\n p.removeAttribute(\"data-jsid\");\n this._nodes[q] = p;\n this._leaves[q] = !p.childNodes.length;\n }\n ;\n ;\n };\n ;\n },\n getRoot: function() {\n return this._root;\n },\n getNode: function(m) {\n return this._nodes[m];\n },\n setNodeProperty: function(m, n, o) {\n this.getNode(m)[n] = o;\n return this;\n },\n setNodeContent: function(m, n) {\n if (!this._leaves[m]) {\n throw new Error(((\"Can't setContent on non-leaf node: \" + m)));\n }\n ;\n ;\n h.setContent(this.getNode(m), n);\n return this;\n }\n });\n e.exports = k;\n});\n__d(\"Scrollable\", [\"JSBNG__Event\",\"Parent\",\"UserAgent\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Parent\"), i = b(\"UserAgent\"), j = function(JSBNG__event) {\n var m = h.byClass(JSBNG__event.getTarget(), \"scrollable\");\n if (!m) {\n return;\n }\n ;\n ;\n if (((((((((typeof JSBNG__event.axis !== \"undefined\")) && ((JSBNG__event.axis === JSBNG__event.HORIZONTAL_AXIS)))) || ((JSBNG__event.wheelDeltaX && !JSBNG__event.wheelDeltaY)))) || ((JSBNG__event.deltaX && !JSBNG__event.deltaY))))) {\n return;\n }\n ;\n ;\n var n = ((((JSBNG__event.wheelDelta || -JSBNG__event.deltaY)) || -JSBNG__event.detail)), o = m.scrollHeight, p = m.clientHeight;\n if (((o > p))) {\n var q = m.scrollTop;\n if (((((((n > 0)) && ((q === 0)))) || ((((n < 0)) && ((q >= ((o - p))))))))) {\n JSBNG__event.prevent();\n }\n else if (((i.ie() < 9))) {\n if (m.currentStyle) {\n var r = m.currentStyle.fontSize;\n if (((r.indexOf(\"px\") < 0))) {\n var s = JSBNG__document.createElement(\"div\");\n s.style.fontSize = r;\n s.style.height = \"1em\";\n r = s.style.pixelHeight;\n }\n else r = parseInt(r, 10);\n ;\n ;\n m.scrollTop = ((q - Math.round(((((n / 120)) * r)))));\n JSBNG__event.prevent();\n }\n ;\n }\n \n ;\n ;\n }\n ;\n ;\n }, k = JSBNG__document.documentElement;\n if (i.firefox()) {\n var l = ((((\"JSBNG__WheelEvent\" in window)) ? \"wheel\" : \"DOMMouseScroll\"));\n k.JSBNG__addEventListener(l, j, false);\n }\n else g.listen(k, \"mousewheel\", j);\n;\n;\n});\n__d(\"randomInt\", [\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"invariant\");\n function h(i, j) {\n var k = arguments.length;\n g(((((k > 0)) && ((k <= 2)))));\n if (((k === 1))) {\n j = i;\n i = 0;\n }\n ;\n ;\n g(((j > i)));\n var l = ((this.JSBNG__random || Math.JSBNG__random));\n return Math.floor(((i + ((l() * ((j - i)))))));\n };\n;\n e.exports = h;\n});"); |
| // 1161 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o12,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yd/r/clqWNoT9Gz_.js",o13); |
| // undefined |
| o12 = null; |
| // undefined |
| o13 = null; |
| // 1166 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"ociRJ\",]);\n}\n;\n__d(\"CLoggerX\", [\"Banzai\",\"DOM\",\"debounce\",\"Event\",\"ge\",\"Parent\",\"Keys\",], function(a, b, c, d, e, f) {\n var g = b(\"Banzai\"), h = b(\"DOM\"), i = b(\"debounce\"), j = b(\"Event\"), k = b(\"ge\"), l = b(\"Parent\"), m = ((10 * 60) * 1000), n = b(\"Keys\").RETURN, o = {\n }, p = function(s) {\n var t = ((s.target || s.srcElement)).id, u = ((s.target || s.srcElement)).value.trim().length, v = q.getTracker(t);\n if (!v) {\n return\n };\n if (((u > 5) && !v.submitted)) {\n g.post(\"censorlogger\", {\n cl_impid: v.impid,\n clearcounter: v.clearcounter,\n instrument: v.type,\n elementid: t,\n parent_fbid: (((v.parent_fbid == \"unknown\") ? null : v.parent_fbid)),\n version: \"x\"\n }, g.VITAL);\n q.setSubmitted(t, true);\n }\n else if ((((u === 0) && v.submitted) && (s.which != n))) {\n o[t] = r(t);\n o[t]();\n }\n else if (((u > 0) && v.submitted)) {\n if (o[t]) {\n o[t].reset();\n }\n }\n \n ;\n }, q = {\n init: function() {\n this.trackedElements = (this.trackedElements || {\n });\n this.feedbackForms = (this.feedbackForms || {\n });\n },\n setImpressionID: function(s) {\n this.init();\n this.impressionID = s;\n this.clean();\n },\n setComposerTargetData: function(s) {\n this.cTargetID = (s.targetID || \"unknown\");\n this.cTargetFBType = (s.targetType || \"unknown\");\n },\n clean: function() {\n for (var s in this.trackedElements) {\n if (o[s]) {\n o[s].reset();\n delete o[s];\n }\n ;\n delete this.trackedElements[s];\n };\n },\n trackComposer: function(s, t, u) {\n this.setComposerTargetData(u);\n this.startTracking(s, \"composer\", this.cTargetID, this.cTargetFBType, t);\n },\n trackFeedbackForm: function(s, t, u) {\n this.init();\n this.impressionID = (this.impressionID || u);\n var v, w, x;\n v = h.getID(s);\n w = (t ? (t.targetID || \"unknown\") : \"unknown\");\n x = (t ? (t.targetType || \"unknown\") : \"unknown\");\n this.feedbackForms[v] = {\n parent_fbid: w,\n parent_type: x\n };\n },\n trackMentionsInput: function(s, t) {\n this.init();\n var u, v, w;\n if (!s) {\n return\n };\n u = l.byTag(s, \"form\");\n if (!u) {\n return\n };\n v = h.getID(u);\n w = this.feedbackForms[v];\n if (!w) {\n return\n };\n var x = (t || w.parent_fbid), y = (t ? 416 : w.parent_type);\n this.startTracking(s, \"comment\", x, y, u);\n },\n startTracking: function(s, t, u, v, w) {\n this.init();\n var x = h.getID(s);\n if (this.getTracker(x)) {\n return\n };\n var y = h.getID(w);\n j.listen(s, \"keyup\", p.bind(this));\n this.trackedElements[x] = {\n submitted: false,\n clearcounter: 0,\n type: t,\n impid: this.impressionID,\n parent_fbid: u,\n parent_type: v,\n parentElID: y\n };\n this.addJoinTableInfoToForm(w, x);\n },\n getTracker: function(s) {\n return ((this.trackedElements ? this.trackedElements[s] : null));\n },\n setSubmitted: function(s, t) {\n if (this.trackedElements[s]) {\n this.trackedElements[s].submitted = t;\n };\n },\n incrementClearCounter: function(s) {\n var t = this.getTracker(s);\n if (!t) {\n return\n };\n t.clearcounter++;\n t.submitted = false;\n var u = h.scry(k(t.parentElID), \"input[name=\\\"clp\\\"]\")[0];\n if (u) {\n u.value = this.getJSONRepForTrackerID(s);\n };\n this.trackedElements[s] = t;\n },\n addJoinTableInfoToForm: function(s, t) {\n var u = this.getTracker(t);\n if (!u) {\n return\n };\n var v = h.scry(s, \"input[name=\\\"clp\\\"]\")[0];\n if (!v) {\n h.prependContent(s, h.create(\"input\", {\n type: \"hidden\",\n name: \"clp\",\n value: this.getJSONRepForTrackerID(t)\n }));\n };\n },\n getCLParamsForTarget: function(s, t) {\n if (!s) {\n return \"\"\n };\n var u = h.getID(s);\n return this.getJSONRepForTrackerID(u, t);\n },\n getJSONRepForTrackerID: function(s, t) {\n var u = this.getTracker(s);\n if (!u) {\n return \"\"\n };\n return JSON.stringify({\n cl_impid: u.impid,\n clearcounter: u.clearcounter,\n elementid: s,\n version: \"x\",\n parent_fbid: (t || u.parent_fbid)\n });\n }\n }, r = function(s) {\n return i(function() {\n q.incrementClearCounter(s);\n }, m, q);\n };\n e.exports = q;\n});\n__d(\"ClickTTIIdentifiers\", [], function(a, b, c, d, e, f) {\n var g = {\n types: {\n TIMELINE_SEE_LIKERS: \"timeline:seelikes\"\n },\n getUserActionID: function(h) {\n return ((\"{\\\"ua_id\\\":\\\"\" + h) + \"\\\"}\");\n }\n };\n e.exports = g;\n});\n__d(\"TrackingNodes\", [], function(a, b, c, d, e, f) {\n var g = {\n types: {\n USER_NAME: 2,\n LIKE_LINK: 5,\n UNLIKE_LINK: 6,\n ATTACHMENT: 15,\n SHARE_LINK: 17,\n USER_MESSAGE: 18,\n SOURCE: 21,\n BLINGBOX: 22,\n VIEW_ALL_COMMENTS: 24,\n COMMENT: 25,\n COMMENT_LINK: 26,\n SMALL_ACTOR_PHOTO: 27,\n XBUTTON: 29,\n HIDE_LINK: 30,\n REPORT_SPAM_LINK: 31,\n HIDE_ALL_LINK: 32,\n ADD_COMMENT_BOX: 34,\n UFI: 36,\n DROPDOWN_BUTTON: 55,\n UNHIDE_LINK: 71,\n RELATED_SHARE: 73\n },\n BASE_CODE_START: 58,\n BASE_CODE_END: 126,\n BASE_CODE_SIZE: 69,\n PREFIX_CODE_START: 42,\n PREFIX_CODE_END: 47,\n PREFIX_CODE_SIZE: 6,\n encodeTrackingInfo: function(h, i) {\n var j = (((h - 1)) % g.BASE_CODE_SIZE), k = parseInt((((h - 1)) / g.BASE_CODE_SIZE), 10);\n if (((h < 1) || (k > g.PREFIX_CODE_SIZE))) {\n throw Error((\"Invalid tracking node: \" + h))\n };\n var l = \"\";\n if ((k > 0)) {\n l += String.fromCharCode(((k - 1) + g.PREFIX_CODE_START));\n };\n l += String.fromCharCode((j + g.BASE_CODE_START));\n if (((typeof i != \"undefined\") && (i > 0))) {\n l += String.fromCharCode(((48 + Math.min(i, 10)) - 1));\n };\n return l;\n },\n decodeTN: function(h) {\n if ((h.length === 0)) {\n return [0,]\n };\n var i = h.charCodeAt(0), j = 1, k, l;\n if (((i >= g.PREFIX_CODE_START) && (i <= g.PREFIX_CODE_END))) {\n if ((h.length == 1)) {\n return [0,]\n };\n l = ((i - g.PREFIX_CODE_START) + 1);\n k = h.charCodeAt(1);\n j = 2;\n }\n else {\n l = 0;\n k = i;\n }\n ;\n if (((k < g.BASE_CODE_START) || (k > g.BASE_CODE_END))) {\n return [0,]\n };\n var m = (((l * g.BASE_CODE_SIZE) + ((k - g.BASE_CODE_START))) + 1);\n if (((h.length > j) && (((h.charAt(j) >= \"0\") && (h.charAt(j) <= \"9\"))))) {\n return [(j + 1),[m,(parseInt(h.charAt(j), 10) + 1),],]\n };\n return [j,[m,],];\n },\n parseTrackingNodeString: function(h) {\n var i = [];\n while ((h.length > 0)) {\n var j = g.decodeTN(h);\n if ((j.length == 1)) {\n return []\n };\n i.push(j[1]);\n h = h.substring(j[0]);\n };\n return i;\n },\n getTrackingInfo: function(h, i) {\n return ((\"{\\\"tn\\\":\\\"\" + g.encodeTrackingInfo(h, i)) + \"\\\"}\");\n }\n };\n e.exports = g;\n});\n__d(\"NumberFormat\", [\"Env\",], function(a, b, c, d, e, f) {\n var g = b(\"Env\"), h = /(\\d{3})(?=\\d)/g, i = 10000, j = function(l) {\n return ((\"\" + l)).split(\"\").reverse().join(\"\");\n }, k = {\n formatIntegerWithDelimiter: function(l, m) {\n if (((((g.locale == \"nb_NO\") || (g.locale == \"nn_NO\"))) && ((Math.abs(l) < i)))) {\n return l.toString()\n };\n var n = j(l);\n return j(n.replace(h, (\"$1\" + m)));\n }\n };\n e.exports = k;\n});\n__d(\"UFIBlingItem.react\", [\"React\",\"NumberFormat\",\"cx\",\"joinClasses\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"NumberFormat\"), i = b(\"cx\"), j = b(\"joinClasses\"), k = g.createClass({\n displayName: \"UFIBlingItem\",\n render: function() {\n var l = j(this.props.className, this.props.iconClassName, \"UFIBlingBoxSprite\"), m = h.formatIntegerWithDelimiter(this.props.count, (this.props.contextArgs.numberdelimiter || \",\"));\n return (g.DOM.span(null, g.DOM.i({\n className: l\n }), g.DOM.span({\n className: \"UFIBlingBoxText\"\n }, m)));\n }\n });\n e.exports = k;\n});\n__d(\"UFIConstants\", [], function(a, b, c, d, e, f) {\n var g = {\n COMMENT_LIKE: \"fa-type:comment-like\",\n COMMENT_SET_SPAM: \"fa-type:mark-spam\",\n DELETE_COMMENT: \"fa-type:delete-comment\",\n LIVE_DELETE_COMMENT: \"fa-type:live-delete-comment\",\n LIKE_ACTION: \"fa-type:like\",\n REMOVE_PREVIEW: \"fa-type:remove-preview\",\n CONFIRM_COMMENT_REMOVAL: \"fa-type:confirm-remove\",\n TRANSLATE_COMMENT: \"fa-type:translate-comment\",\n SUBSCRIBE_ACTION: \"fa-type:subscribe\",\n GIFT_SUGGESTION: \"fa-type:gift-suggestion\",\n UNDO_DELETE_COMMENT: \"fa-type:undo-delete-comment\"\n }, h = {\n DELETED: \"status:deleted\",\n SPAM: \"status:spam\",\n SPAM_DISPLAY: \"status:spam-display\",\n LIVE_DELETED: \"status:live-deleted\",\n FAILED_ADD: \"status:failed-add\",\n FAILED_EDIT: \"status:failed-edit\",\n PENDING_EDIT: \"status:pending-edit\",\n PENDING_UNDO_DELETE: \"status:pending-undo-delete\"\n }, i = {\n MOBILE: 1,\n SMS: 3,\n EMAIL: 4\n }, j = {\n PROFILE: 0,\n NEWS_FEED: 1,\n OBJECT: 2,\n MOBILE: 3,\n EMAIL: 4,\n PROFILE_APROVAL: 10,\n TICKER: 12,\n NONE: 13,\n INTERN: 14,\n ADS: 15,\n PHOTOS_SNOWLIFT: 17\n }, k = {\n UNKNOWN: 0,\n INITIAL_SERVER: 1,\n LIVE_SEND: 2,\n USER_ACTION: 3,\n COLLAPSED_UFI: 4,\n ENDPOINT_LIKE: 10,\n ENDPOINT_COMMENT_LIKE: 11,\n ENDPOINT_ADD_COMMENT: 12,\n ENDPOINT_EDIT_COMMENT: 13,\n ENDPOINT_DELETE_COMMENT: 14,\n ENDPOINT_UNDO_DELETE_COMMENT: 15,\n ENDPOINT_COMMENT_SPAM: 16,\n ENDPOINT_REMOVE_PREVIEW: 17,\n ENDPOINT_ID_COMMENT_FETCH: 18,\n ENDPOINT_COMMENT_FETCH: 19,\n ENDPOINT_TRANSLATE_COMMENT: 20,\n ENDPOINT_BAN: 21,\n ENDPOINT_SUBSCRIBE: 22\n }, l = {\n CHRONOLOGICAL: \"chronological\",\n RANKED_THREADED: \"ranked_threaded\",\n TOPLEVEL: \"toplevel\",\n RECENT_ACTIVITY: \"recent_activity\"\n }, m = 50, n = 7114, o = 420, p = 5, q = 80, r = 2;\n e.exports = {\n UFIActionType: g,\n UFIStatus: h,\n UFISourceType: i,\n UFIFeedbackSourceType: j,\n UFIPayloadSourceType: k,\n UFICommentOrderingMode: l,\n defaultPageSize: m,\n commentTruncationLength: o,\n commentTruncationPercent: n,\n commentTruncationMaxLines: p,\n attachmentTruncationLength: q,\n minCommentsForOrderingModeSelector: r\n };\n});\n__d(\"UFIBlingBox.react\", [\"React\",\"UFIBlingItem.react\",\"UFIConstants\",\"cx\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"UFIBlingItem.react\"), i = b(\"UFIConstants\"), j = b(\"cx\"), k = b(\"tx\"), l = g.createClass({\n displayName: \"UFIBlingBox\",\n render: function() {\n var m = [], n = \"\";\n if (this.props.likes) {\n m.push(h({\n count: this.props.likes,\n className: (((m.length > 0) ? \"mls\" : \"\")),\n iconClassName: \"UFIBlingBoxLikeIcon\",\n contextArgs: this.props.contextArgs\n }));\n n += (((this.props.likes == 1)) ? \"1 like\" : k._(\"{count} likes\", {\n count: this.props.likes\n }));\n n += \" \";\n }\n ;\n if (this.props.comments) {\n m.push(h({\n count: this.props.comments,\n className: (((m.length > 0) ? \"mls\" : \"\")),\n iconClassName: \"UFIBlingBoxCommentIcon\",\n contextArgs: this.props.contextArgs\n }));\n n += (((this.props.comments == 1)) ? \"1 comment\" : k._(\"{count} comments\", {\n count: this.props.comments\n }));\n n += \" \";\n }\n ;\n if (this.props.reshares) {\n m.push(h({\n count: this.props.reshares,\n className: (((m.length > 0) ? \"mls\" : \"\")),\n iconClassName: \"UFIBlingBoxReshareIcon\",\n contextArgs: this.props.contextArgs\n }));\n n += (((this.props.reshares == 1)) ? \"1 share\" : k._(\"{count} shares\", {\n count: this.props.reshares\n }));\n }\n ;\n var o = g.DOM.a({\n className: \"UFIBlingBox uiBlingBox feedbackBling\",\n href: this.props.permalink,\n \"data-ft\": this.props[\"data-ft\"],\n \"aria-label\": n\n }, m);\n if ((this.props.comments < i.defaultPageSize)) {\n o.props.onClick = this.props.onClick;\n o.props.rel = \"ignore\";\n }\n ;\n return o;\n }\n });\n e.exports = l;\n});\n__d(\"UFICentralUpdates\", [\"Arbiter\",\"ChannelConstants\",\"LiveTimer\",\"ShortProfiles\",\"UFIConstants\",\"copyProperties\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ChannelConstants\"), i = b(\"LiveTimer\"), j = b(\"ShortProfiles\"), k = b(\"UFIConstants\"), l = b(\"copyProperties\"), m = b(\"tx\"), n = 0, o = {\n }, p = {\n }, q = {\n }, r = {\n }, s = [];\n g.subscribe(h.getArbiterType(\"live-data\"), function(x, y) {\n if ((y && y.obj)) {\n var z = y.obj, aa = (z.comments || []);\n aa.forEach(function(ba) {\n ba.timestamp.text = \"a few seconds ago\";\n });\n w.handleUpdate(k.UFIPayloadSourceType.LIVE_SEND, z);\n }\n ;\n });\n function t() {\n if (!n) {\n var x = q, y = o, z = p, aa = r;\n q = {\n };\n o = {\n };\n p = {\n };\n r = {\n };\n if (Object.keys(x).length) {\n v(\"feedback-id-changed\", x);\n };\n if (Object.keys(y).length) {\n v(\"feedback-updated\", y);\n };\n if (Object.keys(z).length) {\n v(\"comments-updated\", z);\n };\n if (Object.keys(aa).length) {\n v(\"instance-updated\", aa);\n };\n s.pop();\n }\n ;\n };\n function u() {\n if (s.length) {\n return s[(s.length - 1)];\n }\n else return k.UFIPayloadSourceType.UNKNOWN\n ;\n };\n function v(event, x) {\n w.inform(event, {\n updates: x,\n payloadSource: u()\n });\n };\n var w = l(new g(), {\n handleUpdate: function(x, y) {\n if (Object.keys(y).length) {\n this.synchronizeInforms(function() {\n s.push(x);\n var z = l({\n payloadsource: u()\n }, y);\n this.inform(\"update-feedback\", z);\n this.inform(\"update-comment-lists\", z);\n this.inform(\"update-comments\", z);\n this.inform(\"update-actions\", z);\n ((y.profiles || [])).forEach(function(aa) {\n j.set(aa.id, aa);\n });\n if (y.servertime) {\n i.restart(y.servertime);\n };\n }.bind(this));\n };\n },\n didUpdateFeedback: function(x) {\n o[x] = true;\n t();\n },\n didUpdateComment: function(x) {\n p[x] = true;\n t();\n },\n didUpdateFeedbackID: function(x, y) {\n q[x] = y;\n t();\n },\n didUpdateInstanceState: function(x, y) {\n if (!r[x]) {\n r[x] = {\n };\n };\n r[x][y] = true;\n t();\n },\n synchronizeInforms: function(x) {\n n++;\n try {\n x();\n } catch (y) {\n throw y;\n } finally {\n n--;\n t();\n };\n }\n });\n e.exports = w;\n});\n__d(\"ClientIDs\", [\"randomInt\",], function(a, b, c, d, e, f) {\n var g = b(\"randomInt\"), h = {\n }, i = {\n getNewClientID: function() {\n var j = Date.now(), k = ((j + \":\") + ((g(0, 4294967295) + 1)));\n h[k] = true;\n return k;\n },\n isExistingClientID: function(j) {\n return !!h[j];\n }\n };\n e.exports = i;\n});\n__d(\"ImmutableObject\", [\"keyMirror\",\"merge\",\"mergeInto\",\"mergeHelpers\",\"throwIf\",], function(a, b, c, d, e, f) {\n var g = b(\"keyMirror\"), h = b(\"merge\"), i = b(\"mergeInto\"), j = b(\"mergeHelpers\"), k = b(\"throwIf\"), l = j.checkMergeObjectArgs, m = j.isTerminal, n, o;\n n = g({\n INVALID_MAP_SET_ARG: null\n });\n o = function(q) {\n i(this, q);\n };\n o.set = function(q, r) {\n k(!((q instanceof o)), n.INVALID_MAP_SET_ARG);\n var s = new o(q);\n i(s, r);\n return s;\n };\n o.setField = function(q, r, s) {\n var t = {\n };\n t[r] = s;\n return o.set(q, t);\n };\n o.setDeep = function(q, r) {\n k(!((q instanceof o)), n.INVALID_MAP_SET_ARG);\n return p(q, r);\n };\n function p(q, r) {\n l(q, r);\n var s = {\n }, t = Object.keys(q);\n for (var u = 0; (u < t.length); u++) {\n var v = t[u];\n if (!r.hasOwnProperty(v)) {\n s[v] = q[v];\n }\n else if ((m(q[v]) || m(r[v]))) {\n s[v] = r[v];\n }\n else s[v] = p(q[v], r[v]);\n \n ;\n };\n var w = Object.keys(r);\n for (u = 0; (u < w.length); u++) {\n var x = w[u];\n if (q.hasOwnProperty(x)) {\n continue;\n };\n s[x] = r[x];\n };\n return ((((q instanceof o) || (r instanceof o))) ? new o(s) : s);\n };\n e.exports = o;\n});\n__d(\"UFIFeedbackTargets\", [\"ClientIDs\",\"KeyedCallbackManager\",\"UFICentralUpdates\",\"UFIConstants\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ClientIDs\"), h = b(\"KeyedCallbackManager\"), i = b(\"UFICentralUpdates\"), j = b(\"UFIConstants\"), k = b(\"copyProperties\"), l = new h();\n function m(v) {\n var w = {\n };\n v.forEach(function(x) {\n var y = k({\n }, x);\n delete y.commentlist;\n delete y.commentcount;\n w[x.entidentifier] = y;\n i.didUpdateFeedback(x.entidentifier);\n });\n l.addResourcesAndExecute(w);\n };\n function n(v) {\n for (var w = 0; (w < v.length); w++) {\n var x = v[w];\n switch (x.actiontype) {\n case j.UFIActionType.LIKE_ACTION:\n p(x);\n break;\n case j.UFIActionType.SUBSCRIBE_ACTION:\n q(x);\n break;\n case j.UFIActionType.GIFT_SUGGESTION:\n r(x);\n break;\n };\n };\n };\n function o(v) {\n for (var w = 0; (w < v.length); w++) {\n var x = v[w];\n if (x.orig_ftentidentifier) {\n t(x.orig_ftentidentifier, x.ftentidentifier);\n };\n };\n };\n function p(v) {\n var w = s(v);\n if (w) {\n v.hasviewerliked = !!v.hasviewerliked;\n if (((v.clientid && g.isExistingClientID(v.clientid)) && (v.hasviewerliked != w.hasviewerliked))) {\n return\n };\n w.likecount = (v.likecount || 0);\n w.likesentences = v.likesentences;\n if ((v.actorid == w.actorforpost)) {\n w.hasviewerliked = v.hasviewerliked;\n }\n else if ((v.hasviewerliked != w.hasviewerliked)) {\n w.likesentences = {\n current: v.likesentences.alternate,\n alternate: v.likesentences.current\n };\n if (w.hasviewerliked) {\n w.likecount++;\n }\n else w.likecount--;\n ;\n }\n \n ;\n if ((v.actorid != w.actorforpost)) {\n w.likesentences.isunseen = true;\n };\n m([w,]);\n }\n ;\n };\n function q(v) {\n var w = s(v);\n if (w) {\n v.hasviewersubscribed = !!v.hasviewersubscribed;\n if (((v.clientid && g.isExistingClientID(v.clientid)) && (v.hasviewersubscribed != w.hasviewersubscribed))) {\n return\n };\n if ((v.actorid == w.actorforpost)) {\n w.hasviewersubscribed = v.hasviewersubscribed;\n };\n m([w,]);\n }\n ;\n };\n function r(v) {\n var w = s(v);\n if (!w) {\n return\n };\n if (((v.clientid && g.isExistingClientID(v.clientid)) && (v.hasviewerliked != w.hasviewerliked))) {\n return\n };\n w.giftdata = v.giftdata;\n m([w,]);\n };\n function s(v) {\n if (v.orig_entidentifier) {\n t(v.orig_entidentifier, v.entidentifier);\n };\n return l.getResource(v.entidentifier);\n };\n function t(v, w) {\n var x = l.getResource(v);\n if (x) {\n l.setResource(v, null);\n x.entidentifier = w;\n l.setResource(w, x);\n i.didUpdateFeedbackID(v, w);\n }\n ;\n };\n var u = {\n getFeedbackTarget: function(v, w) {\n var x = l.executeOrEnqueue(v, w), y = l.getUnavailableResources(x);\n y.length;\n return x;\n },\n unsubscribe: function(v) {\n l.unsubscribe(v);\n }\n };\n i.subscribe(\"update-feedback\", function(v, w) {\n var x = w.feedbacktargets;\n if ((x && x.length)) {\n m(x);\n };\n });\n i.subscribe(\"update-actions\", function(v, w) {\n if ((w.actions && w.actions.length)) {\n n(w.actions);\n };\n });\n i.subscribe(\"update-comments\", function(v, w) {\n if ((w.comments && w.comments.length)) {\n o(w.comments);\n };\n });\n e.exports = u;\n});\n__d(\"UFIInstanceState\", [\"UFICentralUpdates\",], function(a, b, c, d, e, f) {\n var g = b(\"UFICentralUpdates\"), h = {\n };\n function i(k) {\n if (!h[k]) {\n h[k] = {\n };\n };\n };\n var j = {\n getKeyForInstance: function(k, l) {\n i(k);\n return h[k][l];\n },\n updateState: function(k, l, m) {\n i(k);\n h[k][l] = m;\n g.didUpdateInstanceState(k, l);\n },\n updateStateField: function(k, l, m, n) {\n var o = (this.getKeyForInstance(k, l) || {\n });\n o[m] = n;\n this.updateState(k, l, o);\n }\n };\n e.exports = j;\n});\n__d(\"UFIComments\", [\"ClientIDs\",\"ImmutableObject\",\"JSLogger\",\"KeyedCallbackManager\",\"MercuryServerDispatcher\",\"UFICentralUpdates\",\"UFIConstants\",\"UFIFeedbackTargets\",\"UFIInstanceState\",\"URI\",\"keyMirror\",\"merge\",\"randomInt\",\"throwIf\",], function(a, b, c, d, e, f) {\n var g = b(\"ClientIDs\"), h = b(\"ImmutableObject\"), i = b(\"JSLogger\"), j = b(\"KeyedCallbackManager\"), k = b(\"MercuryServerDispatcher\"), l = b(\"UFICentralUpdates\"), m = b(\"UFIConstants\"), n = b(\"UFIFeedbackTargets\"), o = b(\"UFIInstanceState\"), p = b(\"URI\"), q = b(\"keyMirror\"), r = b(\"merge\"), s = b(\"randomInt\"), t = b(\"throwIf\"), u = q({\n INVALID_COMMENT_TYPE: null\n }), v = i.create(\"UFIComments\"), w = {\n }, x = {\n }, y = {\n }, z = {\n }, aa = {\n }, ba = {\n }, ca = \"unavailable_comment_key\";\n function da(ab) {\n return ((ab in ba) ? ba[ab] : ab);\n };\n function ea(ab, bb) {\n if (!x[ab]) {\n x[ab] = {\n };\n };\n if (!x[ab][bb]) {\n x[ab][bb] = new j();\n };\n return x[ab][bb];\n };\n function fa(ab) {\n var bb = [];\n if (x[ab]) {\n for (var cb in x[ab]) {\n bb.push(x[ab][cb]);;\n }\n };\n return bb;\n };\n function ga(ab) {\n if (!y[ab]) {\n y[ab] = new j();\n };\n return y[ab];\n };\n function ha(ab) {\n var bb = fa(ab);\n bb.forEach(function(cb) {\n cb.reset();\n });\n };\n function ia(ab, bb) {\n ab.forEach(function(cb) {\n var db = cb.ftentidentifier, eb = (cb.parentcommentid || db);\n n.getFeedbackTarget(db, function(fb) {\n var gb = m.UFIPayloadSourceType, hb = cb.clientid, ib = false, jb = r({\n }, cb);\n if (hb) {\n delete jb.clientid;\n ib = g.isExistingClientID(hb);\n if ((ib && ba[hb])) {\n return\n };\n }\n ;\n if ((((bb === gb.LIVE_SEND) && cb.parentcommentid) && (z[eb] === undefined))) {\n return\n };\n if ((((((bb === gb.LIVE_SEND)) || ((bb === gb.USER_ACTION))) || ((bb === gb.ENDPOINT_ADD_COMMENT))) || ((bb === gb.ENDPOINT_EDIT_COMMENT)))) {\n jb.isunseen = true;\n };\n if (((bb === gb.ENDPOINT_COMMENT_FETCH) || (bb === gb.ENDPOINT_ID_COMMENT_FETCH))) {\n jb.fromfetch = true;\n };\n if (ib) {\n if (w[hb].ufiinstanceid) {\n o.updateStateField(w[hb].ufiinstanceid, \"locallycomposed\", cb.id, true);\n };\n jb.ufiinstanceid = w[hb].ufiinstanceid;\n ba[hb] = cb.id;\n w[cb.id] = w[hb];\n delete w[hb];\n l.didUpdateComment(hb);\n }\n ;\n var kb, lb;\n if (cb.parentcommentid) {\n lb = [ga(eb),];\n }\n else lb = fa(eb);\n ;\n var mb = false;\n lb.forEach(function(qb) {\n var rb = qb.getAllResources(), sb = {\n };\n for (var tb in rb) {\n var ub = rb[tb];\n sb[ub] = tb;\n };\n if (ib) {\n if ((hb in sb)) {\n sb[cb.id] = sb[hb];\n var vb = sb[hb];\n qb.setResource(vb, cb.id);\n }\n \n };\n if (sb[cb.id]) {\n mb = true;\n }\n else {\n var wb = (z[eb] || 0);\n sb[cb.id] = wb;\n qb.setResource(wb, cb.id);\n }\n ;\n kb = sb[cb.id];\n });\n if (!mb) {\n var nb = (z[eb] || 0);\n z[eb] = (nb + 1);\n qa(eb);\n }\n ;\n if ((cb.status === m.UFIStatus.FAILED_ADD)) {\n aa[eb] = (aa[eb] + 1);\n };\n var ob = z[eb];\n jb.replycount = (((z[cb.id] || 0)) - ((aa[cb.id] || 0)));\n var pb = ja(kb, ob);\n if ((cb.parentcommentid && w[cb.parentcommentid])) {\n jb.permalink = p(fb.permalink).addQueryData({\n comment_id: w[cb.parentcommentid].legacyid,\n reply_comment_id: cb.legacyid,\n total_comments: ob\n }).toString();\n }\n else jb.permalink = p(fb.permalink).addQueryData({\n comment_id: cb.legacyid,\n offset: pb,\n total_comments: ob\n }).toString();\n ;\n za.setComment(cb.id, new h(jb));\n l.didUpdateComment(cb.id);\n l.didUpdateFeedback(db);\n });\n });\n };\n function ja(ab, bb) {\n return (Math.floor(((((bb - ab) - 1)) / m.defaultPageSize)) * m.defaultPageSize);\n };\n function ka(ab) {\n for (var bb = 0; (bb < ab.length); bb++) {\n var cb = ab[bb];\n switch (cb.actiontype) {\n case m.UFIActionType.COMMENT_LIKE:\n na(cb);\n break;\n case m.UFIActionType.DELETE_COMMENT:\n ra(cb);\n break;\n case m.UFIActionType.LIVE_DELETE_COMMENT:\n sa(cb);\n break;\n case m.UFIActionType.UNDO_DELETE_COMMENT:\n ta(cb);\n break;\n case m.UFIActionType.REMOVE_PREVIEW:\n ua(cb);\n break;\n case m.UFIActionType.COMMENT_SET_SPAM:\n va(cb);\n break;\n case m.UFIActionType.CONFIRM_COMMENT_REMOVAL:\n wa(cb);\n break;\n case m.UFIActionType.TRANSLATE_COMMENT:\n oa(cb);\n break;\n };\n };\n };\n function la(ab, bb, cb) {\n var db = bb.range, eb = bb.values;\n if (!db) {\n v.error(\"nullrange\", {\n target: ab,\n commentList: bb\n });\n return;\n }\n ;\n var fb = {\n };\n for (var gb = 0; (gb < db.length); gb++) {\n fb[(db.offset + gb)] = (eb[gb] || ca);;\n };\n var hb, ib;\n if (cb) {\n hb = ea(ab, cb);\n ib = ab;\n }\n else {\n hb = ga(ab);\n ib = bb.ftentidentifier;\n if ((bb.count !== undefined)) {\n z[ab] = bb.count;\n aa[ab] = 0;\n }\n ;\n }\n ;\n hb.addResourcesAndExecute(fb);\n l.didUpdateFeedback(ib);\n };\n function ma(ab) {\n ab.forEach(function(bb) {\n z[bb.entidentifier] = bb.commentcount;\n aa[bb.entidentifier] = 0;\n l.didUpdateFeedback(bb.entidentifier);\n });\n };\n function na(ab) {\n var bb = za.getComment(ab.commentid);\n if (bb) {\n var cb = {\n }, db = (ab.clientid && g.isExistingClientID(ab.clientid));\n if (!db) {\n cb.hasviewerliked = ab.viewerliked;\n cb.likecount = ab.likecount;\n }\n ;\n cb.likeconfirmhash = s(0, 1024);\n ya(ab.commentid, cb);\n }\n ;\n };\n function oa(ab) {\n var bb = ab.commentid, cb = za.getComment(ab.commentid);\n if (cb) {\n ya(bb, {\n translatedtext: ab.translatedtext\n });\n };\n };\n function pa(ab) {\n var bb = {\n reportLink: ab.reportLink,\n commenterIsFOF: ab.commenterIsFOF,\n userIsMinor: ab.userIsMinor\n };\n if (ab.undoData) {\n bb.undoData = ab.undoData;\n };\n return bb;\n };\n function qa(ab, bb) {\n if (ab) {\n if ((bb !== undefined)) {\n var cb = (((aa[ab] || 0)) + ((bb ? 1 : -1)));\n aa[ab] = Math.max(cb, 0);\n }\n ;\n var db = za.getComment(ab);\n if (db) {\n var eb = {\n replycount: za.getDisplayedCommentCount(ab)\n };\n ya(ab, eb);\n }\n ;\n }\n ;\n };\n function ra(ab) {\n var bb = za.getComment(ab.commentid);\n if ((bb.status !== m.UFIStatus.DELETED)) {\n var cb = (bb.parentcommentid || bb.ftentidentifier);\n if ((bb.status === m.UFIStatus.FAILED_ADD)) {\n qa(cb);\n }\n else qa(cb, true);\n ;\n }\n ;\n xa(bb, m.UFIStatus.DELETED);\n };\n function sa(ab) {\n var bb = za.getComment(ab.commentid);\n if ((bb && (bb.status !== m.UFIStatus.DELETED))) {\n xa(bb, m.UFIStatus.LIVE_DELETED);\n };\n };\n function ta(ab) {\n var bb = za.getComment(ab.commentid);\n if ((bb.status === m.UFIStatus.DELETED)) {\n var cb = (bb.parentcommentid || bb.ftentidentifier);\n qa(cb, false);\n }\n ;\n xa(bb, m.UFIStatus.PENDING_UNDO_DELETE);\n };\n function ua(ab) {\n ya(ab.commentid, {\n attachment: null\n });\n };\n function va(ab) {\n var bb = za.getComment(ab.commentid), cb = (ab.shouldHideAsSpam ? m.UFIStatus.SPAM_DISPLAY : null);\n xa(bb, cb);\n };\n function wa(ab) {\n ya(ab.commentid, pa(ab));\n };\n function xa(ab, bb) {\n ya(ab.id, {\n priorstatus: ab.status,\n status: bb\n });\n };\n function ya(ab, bb) {\n var cb = (za.getComment(ab) || new h({\n }));\n za.setComment(ab, h.set(cb, bb));\n l.didUpdateComment(cb.id);\n l.didUpdateFeedback(cb.ftentidentifier);\n };\n var za = {\n getComments: function(ab) {\n var bb = {\n };\n for (var cb = 0; (cb < ab.length); cb++) {\n bb[ab[cb]] = za.getComment(ab[cb]);;\n };\n return bb;\n },\n getComment: function(ab) {\n return w[da(ab)];\n },\n setComment: function(ab, bb) {\n w[da(ab)] = bb;\n },\n resetFeedbackTarget: function(ab) {\n var bb = fa(ab), cb = {\n };\n bb.forEach(function(eb) {\n var fb = eb.getAllResources();\n for (var gb in fb) {\n var hb = fb[gb];\n cb[hb] = 1;\n };\n });\n for (var db in cb) {\n delete w[da(db)];;\n };\n ha(ab);\n },\n getCommentsInRange: function(ab, bb, cb, db, eb) {\n var fb = ea(ab, cb);\n n.getFeedbackTarget(ab, function(gb) {\n var hb = [];\n for (var ib = 0; (ib < bb.length); ib++) {\n hb.push((bb.offset + ib));;\n };\n var jb = function(pb) {\n var qb = [], rb = bb.offset, sb = ((bb.offset + bb.length) - 1);\n for (var tb = 0; (tb < bb.length); tb++) {\n var ub = (gb.isranked ? (sb - tb) : (rb + tb));\n if ((pb[ub] != ca)) {\n var vb = this.getComment(pb[ub]);\n if (vb) {\n qb.push(vb);\n };\n }\n ;\n };\n eb(qb);\n }, kb = fb.getUnavailableResourcesFromRequest(hb);\n if (kb.length) {\n var lb = Math.min.apply(Math, kb), mb = Math.max.apply(Math, kb), nb = lb, ob = ((mb - lb) + 1);\n k.trySend(\"/ajax/ufi/comment_fetch.php\", {\n ft_ent_identifier: gb.entidentifier,\n viewas: db,\n source: null,\n offset: nb,\n length: ob,\n orderingmode: cb\n });\n }\n else fb.deferredExecuteOrEnqueue(hb).addCallback(jb, this);\n ;\n }.bind(this));\n },\n getRepliesInRanges: function(ab, bb, cb) {\n var db = {\n }, eb = {\n }, fb = {\n }, gb = false;\n n.getFeedbackTarget(ab, function(hb) {\n for (var ib in bb) {\n var jb = ga(ib), kb = bb[ib], lb = [];\n for (var mb = 0; (mb < kb.length); mb++) {\n lb.push((kb.offset + mb));;\n };\n db[ib] = jb.executeOrEnqueue(lb, function(wb) {\n var xb = [];\n for (var yb = 0; (yb < kb.length); yb++) {\n var zb = (kb.offset + yb);\n if ((wb[zb] != ca)) {\n var ac = this.getComment(wb[zb]);\n if (ac) {\n xb.push(ac);\n };\n }\n ;\n };\n eb[ib] = xb;\n }.bind(this));\n fb[ib] = jb.getUnavailableResources(db[ib]);\n if (fb[ib].length) {\n gb = true;\n jb.unsubscribe(db[ib]);\n }\n ;\n };\n if (!gb) {\n cb(eb);\n }\n else {\n var nb = [], ob = [], pb = [];\n for (var qb in fb) {\n var rb = fb[qb];\n if (rb.length) {\n var sb = Math.min.apply(Math, rb), tb = Math.max.apply(Math, rb), ub = sb, vb = ((tb - sb) + 1);\n nb.push(qb);\n ob.push(ub);\n pb.push(vb);\n }\n ;\n };\n k.trySend(\"/ajax/ufi/reply_fetch.php\", {\n ft_ent_identifier: hb.entidentifier,\n parent_comment_ids: nb,\n source: null,\n offsets: ob,\n lengths: pb\n });\n }\n ;\n }.bind(this));\n return db;\n },\n getCommentCount: function(ab) {\n return (z[ab] || 0);\n },\n getDeletedCount: function(ab) {\n return (aa[ab] || 0);\n },\n getDisplayedCommentCount: function(ab) {\n return (((z[ab] || 0)) - ((aa[ab] || 0)));\n },\n _dump: function() {\n var ab = {\n _comments: w,\n _commentLists: x,\n _replyLists: y,\n _commentCounts: z,\n _deletedCounts: aa,\n _localIDMap: ba\n };\n return JSON.stringify(ab);\n }\n };\n k.registerEndpoints({\n \"/ajax/ufi/comment_fetch.php\": {\n mode: k.IMMEDIATE,\n handler: l.handleUpdate.bind(l, m.UFIPayloadSourceType.ENDPOINT_COMMENT_FETCH)\n },\n \"/ajax/ufi/reply_fetch.php\": {\n mode: k.IMMEDIATE,\n handler: l.handleUpdate.bind(l, m.UFIPayloadSourceType.ENDPOINT_COMMENT_FETCH)\n }\n });\n l.subscribe(\"update-comments\", function(ab, bb) {\n if ((bb.comments && bb.comments.length)) {\n ia(bb.comments, bb.payloadsource);\n };\n });\n l.subscribe(\"update-actions\", function(ab, bb) {\n if ((bb.actions && bb.actions.length)) {\n ka(bb.actions);\n };\n });\n l.subscribe(\"update-comment-lists\", function(ab, bb) {\n var cb = bb.commentlists;\n if ((cb && Object.keys(cb).length)) {\n if (cb.comments) {\n for (var db in cb.comments) {\n for (var eb in cb.comments[db]) {\n la(db, cb.comments[db][eb], eb);;\n };\n }\n };\n if (cb.replies) {\n for (var fb in cb.replies) {\n la(fb, cb.replies[fb]);;\n }\n };\n }\n ;\n });\n l.subscribe(\"update-feedback\", function(ab, bb) {\n var cb = bb.feedbacktargets;\n if ((cb && cb.length)) {\n ma(cb);\n };\n });\n e.exports = za;\n});\n__d(\"UFILikeLink.react\", [\"React\",\"TrackingNodes\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"TrackingNodes\"), i = b(\"tx\"), j = g.createClass({\n displayName: \"UFILikeLink\",\n render: function() {\n var k = (this.props.likeAction ? \"Like\" : \"Unlike\"), l = h.getTrackingInfo((this.props.likeAction ? h.types.LIKE_LINK : h.types.UNLIKE_LINK)), m = (this.props.likeAction ? \"Like this\" : \"Unlike this\");\n return (g.DOM.a({\n className: \"UFILikeLink\",\n href: \"#\",\n role: \"button\",\n \"aria-live\": \"polite\",\n title: m,\n onClick: this.props.onClick,\n \"data-ft\": l\n }, k));\n }\n });\n e.exports = j;\n});\n__d(\"UFISubscribeLink.react\", [\"React\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"tx\"), i = g.createClass({\n displayName: \"UFISubscribeLink\",\n render: function() {\n var j = (this.props.subscribeAction ? \"Follow Post\" : \"Unfollow Post\"), k = (this.props.subscribeAction ? \"Get notified when someone comments\" : \"Stop getting notified when someone comments\");\n return (g.DOM.a({\n className: \"UFISubscribeLink\",\n href: \"#\",\n role: \"button\",\n \"aria-live\": \"polite\",\n title: k,\n onClick: this.props.onClick\n }, j));\n }\n });\n e.exports = i;\n});\n__d(\"UFITimelineBlingBox.react\", [\"ProfileBrowserLink\",\"ProfileBrowserTypes\",\"React\",\"UFIBlingItem.react\",\"URI\",\"cx\",\"fbt\",], function(a, b, c, d, e, f) {\n var g = b(\"ProfileBrowserLink\"), h = b(\"ProfileBrowserTypes\"), i = b(\"React\"), j = b(\"UFIBlingItem.react\"), k = b(\"URI\"), l = b(\"cx\"), m = b(\"fbt\"), n = i.createClass({\n displayName: \"UFITimelineBlingBox\",\n render: function() {\n var o = [];\n if ((this.props.likes && this.props.enableShowLikes)) {\n var p = this._getProfileBrowserURI(), q = \"See who likes this\", r = i.DOM.a({\n ajaxify: p.dialog,\n className: this._getItemClassName(o),\n \"data-ft\": this.props[\"data-ft\"],\n \"data-gt\": this.props[\"data-gt\"],\n \"data-hover\": \"tooltip\",\n \"data-tooltip-alignh\": \"right\",\n \"data-tooltip-uri\": this._getLikeToolTipURI(),\n href: p.page,\n rel: \"dialog\",\n role: \"button\",\n title: q\n }, j({\n contextArgs: this.props.contextArgs,\n count: this.props.likes,\n iconClassName: \"UFIBlingBoxTimelineLikeIcon\"\n }));\n o.push(r);\n }\n ;\n if ((this.props.comments && this.props.enableShowComments)) {\n var s = \"Show comments\", t = i.DOM.a({\n \"aria-label\": s,\n className: this._getItemClassName(o),\n \"data-ft\": this.props[\"data-ft\"],\n \"data-hover\": \"tooltip\",\n \"data-tooltip-alignh\": \"right\",\n href: \"#\",\n onClick: this.props.commentOnClick\n }, j({\n contextArgs: this.props.contextArgs,\n count: this.props.comments,\n iconClassName: \"UFIBlingBoxTimelineCommentIcon\"\n }));\n o.push(t);\n }\n ;\n if (this.props.reshares) {\n var u = \"Show shares\", v = this._getShareViewURI(), w = i.DOM.a({\n ajaxify: v.dialog,\n \"aria-label\": u,\n className: this._getItemClassName(o),\n \"data-ft\": this.props[\"data-ft\"],\n \"data-hover\": \"tooltip\",\n \"data-tooltip-alignh\": \"right\",\n href: v.page,\n rel: \"async\"\n }, j({\n contextArgs: this.props.contextArgs,\n count: this.props.reshares,\n iconClassName: \"UFIBlingBoxTimelineReshareIcon\"\n }));\n o.push(w);\n }\n ;\n return (i.DOM.span(null, o));\n },\n _getItemClassName: function(o) {\n return (((((o.length > 0) ? \"mls\" : \"\")) + ((\" \" + \"UFIBlingBoxTimelineItem\"))));\n },\n _getLikeToolTipURI: function() {\n if (this.props.feedbackFBID) {\n var o = new k(\"/ajax/timeline/likestooltip.php\").setQueryData({\n obj_fbid: this.props.feedbackFBID\n });\n return o.toString();\n }\n else return null\n ;\n },\n _getProfileBrowserURI: function() {\n if (this.props.feedbackFBID) {\n var o = h.LIKES, p = {\n id: this.props.feedbackFBID\n }, q = g.constructDialogURI(o, p), r = g.constructPageURI(o, p), s = {\n dialog: q.toString(),\n page: r.toString()\n };\n return s;\n }\n ;\n },\n _getShareViewURI: function() {\n if (this.props.feedbackFBID) {\n var o = new k(\"/ajax/shares/view\").setQueryData({\n target_fbid: this.props.feedbackFBID\n }), p = new k(\"/shares/view\").setSubdomain(\"www\").setQueryData({\n id: this.props.feedbackFBID\n }), q = {\n dialog: o.toString(),\n page: p.toString()\n };\n return q;\n }\n ;\n }\n });\n e.exports = n;\n});\n__d(\"UFIUserActions\", [\"AsyncResponse\",\"CLoggerX\",\"ClientIDs\",\"ImmutableObject\",\"JSLogger\",\"Nectar\",\"UFICentralUpdates\",\"UFIComments\",\"UFIConstants\",\"UFIFeedbackTargets\",\"MercuryServerDispatcher\",\"collectDataAttributes\",\"copyProperties\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncResponse\"), h = b(\"CLoggerX\"), i = b(\"ClientIDs\"), j = b(\"ImmutableObject\"), k = b(\"JSLogger\"), l = b(\"Nectar\"), m = b(\"UFICentralUpdates\"), n = b(\"UFIComments\"), o = b(\"UFIConstants\"), p = b(\"UFIFeedbackTargets\"), q = b(\"MercuryServerDispatcher\"), r = b(\"collectDataAttributes\"), s = b(\"copyProperties\"), t = b(\"tx\"), u = k.create(\"UFIUserActions\"), v = {\n BAN: \"ban\",\n UNDO_BAN: \"undo_ban\"\n }, w = {\n changeCommentLike: function(ka, la, ma) {\n var na = n.getComment(ka);\n if ((na.hasviewerliked != la)) {\n var oa = x(ma.target), pa = (la ? 1 : -1), qa = {\n commentid: ka,\n actiontype: o.UFIActionType.COMMENT_LIKE,\n viewerliked: la,\n likecount: (na.likecount + pa)\n };\n m.handleUpdate(o.UFIPayloadSourceType.USER_ACTION, {\n actions: [qa,]\n });\n q.trySend(\"/ajax/ufi/comment_like.php\", s({\n comment_id: ka,\n legacy_id: na.legacyid,\n like_action: la,\n ft_ent_identifier: na.ftentidentifier,\n source: ma.source,\n client_id: i.getNewClientID()\n }, oa));\n }\n ;\n },\n addComment: function(ka, la, ma, na) {\n p.getFeedbackTarget(ka, function(oa) {\n var pa = x(na.target), qa = i.getNewClientID();\n if (!oa.actorforpost) {\n return\n };\n var ra = {\n ftentidentifier: ka,\n body: {\n text: la\n },\n author: oa.actorforpost,\n id: qa,\n islocal: true,\n ufiinstanceid: na.ufiinstanceid,\n likecount: 0,\n hasviewerliked: false,\n parentcommentid: na.replyid,\n photo_comment: na.attachedphoto,\n timestamp: {\n time: Date.now(),\n text: \"a few seconds ago\"\n }\n }, sa = {\n actiontype: o.UFIActionType.SUBSCRIBE_ACTION,\n actorid: oa.actorforpost,\n hasviewersubscribed: true,\n entidentifier: ka\n };\n m.handleUpdate(o.UFIPayloadSourceType.USER_ACTION, {\n comments: [ra,],\n actions: [sa,]\n });\n var ta = null;\n if (na.replyid) {\n ta = (n.getComment(na.replyid)).fbid;\n };\n var ua = h.getCLParamsForTarget(na.target, ta);\n q.trySend(\"/ajax/ufi/add_comment.php\", s({\n ft_ent_identifier: oa.entidentifier,\n comment_text: ma,\n source: na.source,\n client_id: qa,\n reply_fbid: ta,\n parent_comment_id: na.replyid,\n timeline_log_data: na.timelinelogdata,\n rootid: na.rootid,\n clp: ua,\n attached_photo_fbid: (na.attachedphoto ? na.attachedphoto.fbid : 0),\n giftoccasion: na.giftoccasion\n }, pa));\n });\n },\n editComment: function(ka, la, ma, na) {\n var oa = x(na.target), pa = n.getComment(ka);\n pa = j.set(pa, {\n status: o.UFIStatus.PENDING_EDIT,\n body: {\n text: la\n },\n timestamp: {\n time: Date.now(),\n text: \"a few seconds ago\"\n },\n originalTimestamp: pa.timestamp.time,\n editnux: null,\n attachment: null\n });\n m.handleUpdate(o.UFIPayloadSourceType.USER_ACTION, {\n comments: [pa,]\n });\n q.trySend(\"/ajax/ufi/edit_comment.php\", s({\n ft_ent_identifier: pa.ftentidentifier,\n comment_text: ma,\n source: na.source,\n comment_id: pa.id,\n parent_comment_id: pa.parentcommentid,\n attached_photo_fbid: (na.attachedPhoto ? na.attachedPhoto.fbid : 0)\n }, oa));\n },\n translateComment: function(ka, la) {\n q.trySend(\"/ajax/ufi/translate_comment.php\", {\n ft_ent_identifier: ka.ftentidentifier,\n comment_ids: [ka.id,],\n source: la.source\n });\n },\n setHideAsSpam: function(ka, la, ma) {\n var na = x(ma.target), oa = n.getComment(ka), pa = {\n commentid: ka,\n actiontype: o.UFIActionType.COMMENT_SET_SPAM,\n shouldHideAsSpam: la\n };\n m.handleUpdate(o.UFIPayloadSourceType.USER_ACTION, {\n actions: [pa,]\n });\n q.trySend(\"/ajax/ufi/comment_spam.php\", s({\n comment_id: ka,\n spam_action: la,\n ft_ent_identifier: oa.ftentidentifier,\n source: ma.source\n }, na));\n },\n removeComment: function(ka, la) {\n var ma = x(la.target), na = n.getComment(ka), oa = {\n actiontype: o.UFIActionType.DELETE_COMMENT,\n commentid: ka,\n oneclick: la.oneclick\n };\n m.handleUpdate(o.UFIPayloadSourceType.USER_ACTION, {\n actions: [oa,]\n });\n q.trySend(\"/ajax/ufi/delete_comment.php\", s({\n comment_id: na.id,\n comment_legacyid: na.legacyid,\n ft_ent_identifier: na.ftentidentifier,\n one_click: la.oneclick,\n source: la.source,\n client_id: i.getNewClientID(),\n timeline_log_data: la.timelinelogdata\n }, ma));\n },\n undoRemoveComment: function(ka, la, ma) {\n var na = n.getComment(ka);\n if (!na.undoData) {\n u.error(\"noundodata\", {\n comment: ka\n });\n return;\n }\n ;\n var oa = x(ma.target), pa = {\n actiontype: o.UFIActionType.UNDO_DELETE_COMMENT,\n commentid: ka\n };\n m.handleUpdate(o.UFIPayloadSourceType.USER_ACTION, {\n actions: [pa,]\n });\n var qa = na.undoData;\n qa.page_admin = la;\n var ra = s(oa, qa);\n q.trySend(\"/ajax/ufi/undo_delete_comment.php\", ra);\n },\n banUser: function(ka, la, ma, na) {\n var oa = (ma ? v.BAN : v.UNDO_BAN);\n q.trySend(\"/ajax/ufi/ban_user.php\", {\n page_id: la,\n commenter_id: ka.author,\n action: oa,\n comment_id: ka.id,\n client_side: true\n });\n },\n changeLike: function(ka, la, ma) {\n p.getFeedbackTarget(ka, function(na) {\n var oa = x(ma.target);\n if ((na.hasviewerliked !== la)) {\n var pa = (la ? 1 : -1), qa = {\n actiontype: o.UFIActionType.LIKE_ACTION,\n actorid: na.actorforpost,\n hasviewerliked: la,\n likecount: (na.likecount + pa),\n entidentifier: ka,\n likesentences: {\n current: na.likesentences.alternate,\n alternate: na.likesentences.current\n }\n };\n m.handleUpdate(o.UFIPayloadSourceType.USER_ACTION, {\n actions: [qa,]\n });\n q.trySend(\"/ajax/ufi/like.php\", s({\n like_action: la,\n ft_ent_identifier: ka,\n source: ma.source,\n client_id: i.getNewClientID(),\n rootid: ma.rootid,\n giftoccasion: ma.giftoccasion\n }, oa));\n }\n ;\n });\n },\n changeSubscribe: function(ka, la, ma) {\n p.getFeedbackTarget(ka, function(na) {\n var oa = x(ma.target);\n if ((na.hasviewersubscribed !== la)) {\n var pa = {\n actiontype: o.UFIActionType.SUBSCRIBE_ACTION,\n actorid: na.actorforpost,\n hasviewersubscribed: la,\n entidentifier: ka\n };\n m.handleUpdate(o.UFIPayloadSourceType.USER_ACTION, {\n actions: [pa,]\n });\n q.trySend(\"/ajax/ufi/subscribe.php\", s({\n subscribe_action: la,\n ft_ent_identifier: ka,\n source: ma.source,\n client_id: i.getNewClientID(),\n rootid: ma.rootid,\n comment_expand_mode: ma.commentexpandmode\n }, oa));\n }\n ;\n });\n },\n fetchSpamComments: function(ka, la, ma, na) {\n q.trySend(\"/ajax/ufi/id_comment_fetch.php\", {\n ft_ent_identifier: ka,\n viewas: na,\n comment_ids: la,\n parent_comment_id: ma,\n source: null\n });\n },\n removePreview: function(ka, la) {\n var ma = x(la.target), na = {\n commentid: ka.id,\n actiontype: o.UFIActionType.REMOVE_PREVIEW\n };\n m.handleUpdate(o.UFIPayloadSourceType.USER_ACTION, {\n actions: [na,]\n });\n q.trySend(\"/ajax/ufi/remove_preview.php\", s({\n comment_id: ka.id,\n ft_ent_identifier: ka.ftentidentifier,\n source: la.source\n }, ma));\n }\n };\n function x(ka) {\n if (!ka) {\n return {\n ft: {\n }\n }\n };\n var la = {\n ft: r(ka, [\"ft\",]).ft\n };\n l.addModuleData(la, ka);\n return la;\n };\n function y(ka) {\n var la = ka.request.data;\n g.defaultErrorHandler(ka);\n var ma = (la.client_id || la.comment_id), na = n.getComment(ma), oa = (((na.status === o.UFIStatus.PENDING_EDIT)) ? o.UFIStatus.FAILED_EDIT : o.UFIStatus.FAILED_ADD);\n na = j.setDeep(na, {\n status: oa,\n allowRetry: z(ka),\n body: {\n mentionstext: la.comment_text\n }\n });\n m.handleUpdate(o.UFIPayloadSourceType.USER_ACTION, {\n comments: [na,]\n });\n };\n function z(ka) {\n var la = ka.getError();\n if ((la === 1404102)) {\n return false\n };\n if (ka.silentError) {\n return true\n };\n if (((la === 1357012) || (la === 1357006))) {\n return false\n };\n return true;\n };\n function aa(ka) {\n var la = ka.request.data, ma = la.comment_id, na = n.getComment(ma);\n na = j.set(na, {\n status: (na.priorstatus || null),\n priorstatus: undefined\n });\n m.handleUpdate(o.UFIPayloadSourceType.USER_ACTION, {\n comments: [na,]\n });\n };\n function ba(ka) {\n var la = ka.request.data, ma = la.comment_id, na = n.getComment(ma);\n if ((la.like_action === na.hasviewerliked)) {\n var oa = (na.hasviewerliked ? -1 : 1), pa = {\n commentid: ma,\n actiontype: o.UFIActionType.COMMENT_LIKE,\n viewerliked: !na.hasviewerliked,\n likecount: (na.likecount + oa)\n };\n m.handleUpdate(o.UFIPayloadSourceType.USER_ACTION, {\n actions: [pa,]\n });\n }\n ;\n g.defaultErrorHandler(ka);\n };\n function ca(ka) {\n var la = ka.request.data, ma = la.ft_ent_identifier;\n p.getFeedbackTarget(ma, function(na) {\n if ((na.hasviewerliked === la.like_action)) {\n var oa = (na.hasviewerliked ? -1 : 1), pa = {\n actiontype: o.UFIActionType.LIKE_ACTION,\n actorid: na.actorforpost,\n hasviewerliked: !na.hasviewerliked,\n likecount: (na.likecount + oa),\n entidentifier: ma,\n likesentences: {\n current: na.likesentences.alternate,\n alternate: na.likesentences.current\n }\n };\n m.handleUpdate(o.UFIPayloadSourceType.USER_ACTION, {\n actions: [pa,]\n });\n }\n ;\n });\n g.defaultErrorHandler(ka);\n };\n function da(ka) {\n var la = ka.request.data, ma = la.ft_ent_identifier;\n p.getFeedbackTarget(ma, function(na) {\n if ((na.hasviewersubscribed === la.subscribe_action)) {\n var oa = {\n actiontype: o.UFIActionType.SUBSCRIBE_ACTION,\n actorid: na.actorforpost,\n hasviewersubscribed: !na.hasviewersubscribed,\n entidentifier: ma\n };\n m.handleUpdate(o.UFIPayloadSourceType.USER_ACTION, {\n actions: [oa,]\n });\n }\n ;\n });\n g.defaultErrorHandler(ka);\n };\n var ea = function(ka) {\n return m.handleUpdate.bind(m, ka);\n }, fa = o.UFIPayloadSourceType;\n q.registerEndpoints({\n \"/ajax/ufi/comment_like.php\": {\n mode: q.BATCH_CONDITIONAL,\n handler: ea(fa.ENDPOINT_COMMENT_LIKE),\n error_handler: ba,\n batch_if: ga,\n batch_function: ja\n },\n \"/ajax/ufi/comment_spam.php\": {\n mode: q.IMMEDIATE,\n handler: ea(fa.ENDPOINT_COMMENT_SPAM),\n error_handler: aa\n },\n \"/ajax/ufi/add_comment.php\": {\n mode: q.IMMEDIATE,\n handler: ea(fa.ENDPOINT_ADD_COMMENT),\n error_handler: y\n },\n \"/ajax/ufi/delete_comment.php\": {\n mode: q.IMMEDIATE,\n handler: ea(fa.ENDPOINT_DELETE_COMMENT),\n error_handler: aa\n },\n \"/ajax/ufi/undo_delete_comment.php\": {\n mode: q.IMMEDIATE,\n handler: ea(fa.ENDPOINT_UNDO_DELETE_COMMENT),\n error_handler: aa\n },\n \"/ajax/ufi/ban_user.php\": {\n mode: q.IMMEDIATE,\n handler: ea(fa.ENDPOINT_BAN)\n },\n \"/ajax/ufi/edit_comment.php\": {\n mode: q.IMMEDIATE,\n handler: ea(fa.ENDPOINT_EDIT_COMMENT),\n error_handler: y\n },\n \"/ajax/ufi/like.php\": {\n mode: q.BATCH_CONDITIONAL,\n handler: ea(fa.ENDPOINT_LIKE),\n error_handler: ca,\n batch_if: ha,\n batch_function: ja\n },\n \"/ajax/ufi/subscribe.php\": {\n mode: q.BATCH_CONDITIONAL,\n handler: ea(fa.ENDPOINT_SUBSCRIBE),\n error_handler: da,\n batch_if: ia,\n batch_function: ja\n },\n \"/ajax/ufi/id_comment_fetch.php\": {\n mode: q.IMMEDIATE,\n handler: ea(fa.ENDPOINT_ID_COMMENT_FETCH)\n },\n \"/ajax/ufi/remove_preview.php\": {\n mode: q.IMMEDIATE,\n handler: ea(fa.ENDPOINT_REMOVE_PREVIEW)\n },\n \"/ajax/ufi/translate_comment.php\": {\n mode: q.IMMEDIATE,\n handler: ea(fa.ENDPOINT_TRANSLATE_COMMENT)\n }\n });\n function ga(ka, la) {\n return ((ka && (ka.ft_ent_identifier == la.ft_ent_identifier)) && (ka.comment_id == la.comment_id));\n };\n function ha(ka, la) {\n return (ka && (ka.ft_ent_identifier == la.ft_ent_identifier));\n };\n function ia(ka, la) {\n return (ka && (ka.ft_ent_identifier == la.ft_ent_identifier));\n };\n function ja(ka, la) {\n return la;\n };\n e.exports = w;\n});\n__d(\"UFIActionLinkController\", [\"Arbiter\",\"ClickTTIIdentifiers\",\"CSS\",\"DOMQuery\",\"Parent\",\"React\",\"TrackingNodes\",\"UFIBlingBox.react\",\"UFICentralUpdates\",\"UFIComments\",\"UFIConstants\",\"UFIFeedbackTargets\",\"UFILikeLink.react\",\"UFISubscribeLink.react\",\"UFITimelineBlingBox.react\",\"UFIUserActions\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ClickTTIIdentifiers\"), i = b(\"CSS\"), j = b(\"DOMQuery\"), k = b(\"Parent\"), l = b(\"React\"), m = b(\"TrackingNodes\"), n = b(\"UFIBlingBox.react\"), o = b(\"UFICentralUpdates\"), p = b(\"UFIComments\"), q = b(\"UFIConstants\"), r = b(\"UFIFeedbackTargets\"), s = b(\"UFILikeLink.react\"), t = b(\"UFISubscribeLink.react\"), u = b(\"UFITimelineBlingBox.react\"), v = b(\"UFIUserActions\"), w = b(\"copyProperties\");\n function x(z, aa, ba) {\n if (this._root) {\n throw new Error((\"UFIActionLinkController attempted to initialize when a root was\" + \" already present\"))\n };\n var ca = j.scry(z, aa)[0];\n if (ca) {\n var da = document.createElement(\"span\");\n ca.parentNode.replaceChild(da, ca);\n da.appendChild(ca);\n if ((typeof ba === \"function\")) {\n ba(da);\n };\n }\n else var ea = g.subscribe(\"PhotoSnowlift.DATA_CHANGE\", function() {\n g.unsubscribe(ea);\n x(z, aa, ba);\n }, g.SUBSCRIBE_NEW)\n ;\n };\n var y = function(z, aa, ba) {\n this._id = aa.ftentidentifier;\n this._ftFBID = ba.targetfbid;\n this._source = aa.source;\n this._contextArgs = aa;\n this._ufiRoot = z;\n if (this._isSourceProfile(this._contextArgs.source)) {\n this._attemptInitializeTimelineBling();\n }\n else this._attemptInitializeBling();\n ;\n if (ba.viewercanlike) {\n this._attemptInitializeLike();\n };\n if (ba.viewercansubscribetopost) {\n this._attemptInitializeSubscribe();\n };\n o.subscribe(\"feedback-updated\", function(ca, da) {\n var ea = da.updates;\n if ((this._id in ea)) {\n this.render();\n };\n }.bind(this));\n o.subscribe(\"feedback-id-changed\", function(ca, da) {\n var ea = da.updates;\n if ((this._id in ea)) {\n this._id = ea[this._id];\n };\n }.bind(this));\n };\n w(y.prototype, {\n _attemptInitializeBling: function() {\n x(this._ufiRoot, \"^form .uiBlingBox\", function(z) {\n this._blingRoot = z;\n if (this._dataReady) {\n this._renderBling();\n };\n }.bind(this));\n },\n _attemptInitializeTimelineBling: function() {\n if (this._root) {\n throw new Error((\"UFIActionLinkController attempted to initialize when a root was\" + \" already present\"))\n };\n var z = j.scry(this._ufiRoot, \"^form .fbTimelineFeedbackActions span\")[0];\n if (z) {\n i.addClass(z, \"UFIBlingBoxTimeline\");\n var aa = j.scry(z, \".fbTimelineFeedbackLikes\")[0];\n this._enableShowLikes = (aa ? true : false);\n var ba = j.scry(z, \".fbTimelineFeedbackComments\")[0];\n this._enableShowComments = (ba ? true : false);\n }\n ;\n this._blingTimelineRoot = z;\n if (this._dataReady) {\n this._renderTimelineBling();\n };\n },\n _attemptInitializeLike: function() {\n x(this._ufiRoot, \"^form .like_link\", function(z) {\n this._likeRoot = z;\n if (this._dataReady) {\n this._renderLike();\n };\n }.bind(this));\n },\n _attemptInitializeSubscribe: function() {\n x(this._ufiRoot, \"^form .unsub_link\", function(z) {\n this._subscribeRoot = z;\n if (this._dataReady) {\n this._renderSubscribe();\n };\n }.bind(this));\n },\n render: function() {\n this._dataReady = true;\n if (this._isSourceProfile(this._contextArgs.source)) {\n this._renderTimelineBling();\n }\n else this._renderBling();\n ;\n this._renderLike();\n this._renderSubscribe();\n },\n _renderBling: function() {\n if (this._blingRoot) {\n r.getFeedbackTarget(this._id, function(z) {\n var aa = function(event) {\n var da = k.byTag(event.target, \"form\");\n i.toggleClass(da, \"collapsed_comments\");\n i.toggleClass(da, \"hidden_add_comment\");\n event.preventDefault();\n }.bind(this), ba = m.getTrackingInfo(m.types.BLINGBOX), ca = n({\n likes: z.likecount,\n comments: p.getDisplayedCommentCount(this._id),\n reshares: z.sharecount,\n permalink: z.permalink,\n contextArgs: this._contextArgs,\n onClick: aa,\n \"data-ft\": ba\n });\n this._blingBox = l.renderComponent(ca, this._blingRoot);\n }.bind(this));\n };\n },\n _renderTimelineBling: function() {\n if (this._blingTimelineRoot) {\n r.getFeedbackTarget(this._id, function(z) {\n var aa = m.getTrackingInfo(m.types.BLINGBOX), ba = h.getUserActionID(h.types.TIMELINE_SEE_LIKERS), ca = function(event) {\n var ea = k.byTag(event.target, \"form\");\n i.removeClass(ea, \"collapsed_comments\");\n var fa = j.scry(ea, \"a.UFIPagerLink\");\n if (fa.length) {\n fa[0].click();\n };\n event.preventDefault();\n }.bind(this), da = u({\n comments: p.getDisplayedCommentCount(this._id),\n commentOnClick: ca,\n contextArgs: this._contextArgs,\n \"data-ft\": aa,\n \"data-gt\": ba,\n enableShowComments: this._enableShowComments,\n enableShowLikes: this._enableShowLikes,\n feedbackFBID: this._ftFBID,\n likes: z.likecount,\n reshares: z.sharecount\n });\n l.renderComponent(da, this._blingTimelineRoot);\n }.bind(this));\n };\n },\n _renderLike: function() {\n if (this._likeRoot) {\n r.getFeedbackTarget(this._id, function(z) {\n var aa = !z.hasviewerliked, ba = function(event) {\n v.changeLike(this._id, aa, {\n source: this._source,\n target: event.target,\n rootid: this._contextArgs.rootid,\n giftoccasion: this._contextArgs.giftoccasion\n });\n event.preventDefault();\n }.bind(this), ca = s({\n onClick: ba,\n likeAction: aa\n });\n this._likeLink = l.renderComponent(ca, this._likeRoot);\n }.bind(this));\n };\n },\n _renderSubscribe: function() {\n if (this._subscribeRoot) {\n r.getFeedbackTarget(this._id, function(z) {\n var aa = !z.hasviewersubscribed, ba = function(event) {\n v.changeSubscribe(this._id, aa, {\n source: this._source,\n target: event.target,\n rootid: this._contextArgs.rootid,\n commentexpandmode: z.commentexpandmode\n });\n event.preventDefault();\n }.bind(this), ca = t({\n onClick: ba,\n subscribeAction: aa\n });\n this._subscribeLink = l.renderComponent(ca, this._subscribeRoot);\n }.bind(this));\n };\n },\n _isSourceProfile: function(z) {\n return (z === q.UFIFeedbackSourceType.PROFILE);\n }\n });\n e.exports = y;\n});\n__d(\"MentionsInputUtils\", [], function(a, b, c, d, e, f) {\n var g = {\n generateDataFromTextWithEntities: function(h) {\n var i = h.text, j = [];\n ((h.ranges || [])).forEach(function(l) {\n var m = l.entities[0];\n if (!m.external) {\n j.push({\n uid: m.id,\n text: i.substr(l.offset, l.length),\n offset: l.offset,\n length: l.length,\n weakreference: !!m.weakreference\n });\n };\n });\n var k = {\n value: i,\n mentions: j\n };\n return k;\n }\n };\n e.exports = g;\n});\n__d(\"ClipboardPhotoUploader\", [\"ArbiterMixin\",\"AsyncRequest\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"AsyncRequest\"), i = b(\"copyProperties\");\n function j(k, l) {\n this.uploadURIString = k;\n this.data = l;\n };\n i(j.prototype, g, {\n handlePaste: function(event) {\n if (!event.clipboardData) {\n return\n };\n var k = event.clipboardData.items;\n if (!k) {\n return\n };\n for (var l = 0; (l < k.length); ++l) {\n var m = k[l];\n if (((m.kind === \"file\") && (m.type.indexOf(\"image/\") !== -1))) {\n var n = new FormData();\n n.append(\"pasted_file\", m.getAsFile());\n var o = new h();\n o.setURI(this.uploadURIString).setData(this.data).setRawData(n).setHandler(function(p) {\n this.inform(\"upload_success\", p);\n }.bind(this)).setErrorHandler(function(p) {\n this.inform(\"upload_error\", p);\n }.bind(this));\n this.inform(\"upload_start\");\n o.send();\n break;\n }\n ;\n };\n }\n });\n e.exports = j;\n});\n__d(\"LegacyMentionsInput.react\", [\"PlaceholderListener\",\"Bootloader\",\"Event\",\"Keys\",\"React\",\"cx\",], function(a, b, c, d, e, f) {\n b(\"PlaceholderListener\");\n var g = b(\"Bootloader\"), h = b(\"Event\"), i = b(\"Keys\"), j = b(\"React\"), k = b(\"cx\"), l = j.createClass({\n displayName: \"ReactLegacyMentionsInput\",\n componentDidMount: function(m) {\n (this.props.initialData && this._initializeTextarea(m));\n },\n hasEnteredText: function() {\n return !!((this._mentionsInput && this._mentionsInput.getValue().trim()));\n },\n _handleKeydown: function(event) {\n var m = event.nativeEvent, n = this.props.onEnterSubmit, o = ((h.getKeyCode(m) == i.RETURN) && !h.$E(m).getModifiers().any), p = (this._mentionsInput && this._mentionsInput.getTypeahead().getView().getSelection());\n if (((n && o) && !p)) {\n if (this.props.isLoadingPhoto) {\n return false\n };\n var q = event.target, r = (q.value && q.value.trim());\n if ((r || this.props.acceptEmptyInput)) {\n var s = {\n visibleValue: r,\n encodedValue: r,\n attachedPhoto: null\n };\n if (this._mentionsInput) {\n s.encodedValue = this._mentionsInput.getRawValue().trim();\n this._mentionsInput.reset();\n }\n ;\n n(s, event);\n }\n ;\n event.preventDefault();\n }\n ;\n },\n _handleFocus: function() {\n (this.props.onFocus && this.props.onFocus());\n this._initializeTextarea(this.refs.root.getDOMNode());\n },\n _handleBlur: function() {\n (this.props.onBlur && this.props.onBlur());\n },\n _initializeTextarea: function(m) {\n if ((this._mentionsInput || this._bootloadingMentions)) {\n return\n };\n this._bootloadingMentions = true;\n g.loadModules([\"CompactTypeaheadRenderer\",\"ContextualTypeaheadView\",\"InputSelection\",\"MentionsInput\",\"TextAreaControl\",\"Typeahead\",\"TypeaheadAreaCore\",\"TypeaheadBestName\",\"TypeaheadHoistFriends\",\"TypeaheadMetrics\",\"TypingDetector\",], function(n, o, p, q, r, s, t, u, v, w, x) {\n var y = this.refs.textarea.getDOMNode();\n new r(y);\n if (this.props.onTypingStateChange) {\n var z = new x(y);\n z.init();\n z.subscribe(\"change\", this.props.onTypingStateChange);\n }\n ;\n var aa = {\n autoSelect: true,\n renderer: n,\n causalElement: y\n };\n if (this.props.viewOptionsTypeObjects) {\n aa.typeObjects = this.props.viewOptionsTypeObjects;\n };\n if (this.props.viewOptionsTypeObjectsOrder) {\n aa.typeObjectsOrder = this.props.viewOptionsTypeObjectsOrder;\n };\n var ba = new s(this.props.datasource, {\n ctor: o,\n options: aa\n }, {\n ctor: t\n }, this.refs.typeahead.getDOMNode()), ca = [u,v,], da = new w({\n extraData: {\n event_name: \"mentions\"\n }\n });\n s.initNow(ba, ca, da);\n this._mentionsInput = new q(m, ba, y, {\n hashtags: this.props.sht\n });\n this._mentionsInput.init({\n max: 6\n }, this.props.initialData);\n if (this.props.initialData) {\n p.set(y, y.value.length);\n };\n if (this.props.onPaste) {\n h.listen(y, \"paste\", this.props.onPaste);\n };\n this._bootloadingMentions = false;\n }.bind(this));\n },\n focus: function() {\n try {\n this.refs.textarea.getDOMNode().focus();\n } catch (m) {\n \n };\n },\n render: function() {\n var m = (((((((\"textInput\") + ((\" \" + \"mentionsTextarea\"))) + ((\" \" + \"uiTextareaAutogrow\"))) + ((\" \" + \"uiTextareaNoResize\"))) + ((\" \" + \"UFIAddCommentInput\"))) + ((\" \" + \"DOMControl_placeholder\"))));\n return (j.DOM.div({\n ref: \"root\",\n className: \"uiMentionsInput textBoxContainer ReactLegacyMentionsInput\"\n }, j.DOM.div({\n className: \"highlighter\"\n }, j.DOM.div(null, j.DOM.span({\n className: \"highlighterContent hidden_elem\"\n }))), j.DOM.div({\n ref: \"typeahead\",\n className: \"uiTypeahead mentionsTypeahead\"\n }, j.DOM.div({\n className: \"wrap\"\n }, j.DOM.input({\n type: \"hidden\",\n autocomplete: \"off\",\n className: \"hiddenInput\"\n }), j.DOM.div({\n className: \"innerWrap\"\n }, j.DOM.textarea({\n ref: \"textarea\",\n name: \"add_comment_text\",\n className: m,\n title: this.props.placeholder,\n placeholder: this.props.placeholder,\n onFocus: this._handleFocus,\n onBlur: this._handleBlur,\n onKeyDown: this._handleKeydown,\n defaultValue: this.props.placeholder\n })))), j.DOM.input({\n type: \"hidden\",\n autocomplete: \"off\",\n className: \"mentionsHidden\",\n defaultValue: \"\"\n })));\n }\n });\n e.exports = l;\n});\n__d(\"UFIAddComment.react\", [\"Bootloader\",\"CLogConfig\",\"ClipboardPhotoUploader\",\"CloseButton.react\",\"Event\",\"Keys\",\"LoadingIndicator.react\",\"React\",\"LegacyMentionsInput.react\",\"TrackingNodes\",\"Run\",\"UFIClassNames\",\"UFIImageBlock.react\",\"cx\",\"fbt\",\"joinClasses\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Bootloader\"), h = b(\"CLogConfig\"), i = b(\"ClipboardPhotoUploader\"), j = b(\"CloseButton.react\"), k = b(\"Event\"), l = b(\"Keys\"), m = b(\"LoadingIndicator.react\"), n = b(\"React\"), o = b(\"LegacyMentionsInput.react\"), p = b(\"TrackingNodes\"), q = b(\"Run\"), r = b(\"UFIClassNames\"), s = b(\"UFIImageBlock.react\"), t = b(\"cx\"), u = b(\"fbt\"), v = b(\"joinClasses\"), w = b(\"tx\"), x = \"Write a comment...\", y = \"Write a reply...\", z = \"fcg fss UFICommentTip\", aa = 19, ba = \"/ajax/ufi/upload/\", ca = n.createClass({\n displayName: \"UFIAddComment\",\n getInitialState: function() {\n if (this.props.attachedPhoto) {\n this.props.contextArgs.attachedphoto = this.props.attachedPhoto;\n };\n return {\n attachedPhoto: (this.props.attachedPhoto ? this.props.attachedPhoto : null),\n isCommenting: false,\n isLoadingPhoto: false,\n isOnBeforeUnloadListenerAdded: false\n };\n },\n _onKeyDown: function(event) {\n if ((this.props.isEditing && (k.getKeyCode(event.nativeEvent) === l.ESC))) {\n this.props.onCancel();\n };\n if ((this.isMounted() && !this.state.isOnBeforeUnloadListenerAdded)) {\n q.onBeforeUnload(this._handleUnsavedChanges);\n this.setState({\n isOnBeforeUnloadListenerAdded: true\n });\n }\n ;\n },\n _handleUnsavedChanges: function() {\n var da = a.PageTransitions;\n if (da) {\n var ea = da.getNextURI(), fa = da.getMostRecentURI();\n if ((ea.getQueryData().hasOwnProperty(\"theater\") || fa.getQueryData().hasOwnProperty(\"theater\"))) {\n return\n };\n }\n ;\n if (((this.refs && this.refs.mentionsinput) && this.refs.mentionsinput.hasEnteredText())) {\n return \"You haven't finished your comment yet. Do you want to leave without finishing?\"\n };\n },\n _blur: function() {\n if ((this.refs.mentionsinput && this.refs.mentionsinput.hasEnteredText())) {\n return\n };\n this.setState({\n isCommenting: false\n });\n },\n _onPaste: function(event) {\n var da = new i(ba, this._getPhotoUploadData());\n this._cancelCurrentSubscriptions();\n this._subscriptions = [da.subscribe(\"upload_start\", this._prepareForAttachedPhotoPreview),da.subscribe(\"upload_error\", this._onRemoveAttachedPhotoPreviewClicked),da.subscribe(\"upload_success\", function(ea, fa) {\n this._onPhotoUploadComplete(fa);\n }.bind(this)),];\n da.handlePaste(event);\n },\n _cancelCurrentSubscriptions: function() {\n if (this._subscriptions) {\n this._subscriptions.forEach(function(da) {\n da.unsubscribe();\n });\n };\n },\n componentWillUnmount: function() {\n this._cancelCurrentSubscriptions();\n },\n focus: function() {\n if ((this.refs && this.refs.mentionsinput)) {\n this.refs.mentionsinput.focus();\n };\n },\n render: function() {\n var da = (!this.props.contextArgs.collapseaddcomment || this.state.isCommenting), ea = null;\n if (this.props.isEditing) {\n ea = n.DOM.span({\n className: z\n }, \"Press Esc to cancel.\");\n }\n else if (this.props.showSendOnEnterTip) {\n ea = n.DOM.span({\n className: z\n }, \"Press Enter to post.\");\n }\n else if (this.props.subtitle) {\n ea = n.DOM.span({\n className: z\n }, this.props.subtitle);\n }\n \n ;\n var fa = null, ga = this.state.attachedPhoto, ha = null;\n if (this.props.allowPhotoAttachments) {\n ha = this._onPaste;\n var ia = \"Choose a file to upload\", ja = n.DOM.input({\n ref: \"PhotoInput\",\n accept: \"image/*\",\n className: \"-cx-PRIVATE-uiFileInput__input\",\n name: \"file[]\",\n type: \"file\",\n multiple: false,\n title: ia\n }), ka = (ga ? \"UFICommentPhotoAttachedIcon\" : \"UFICommentPhotoIcon\"), la = \"UFIPhotoAttachLinkWrapper -cx-PRIVATE-uiFileInput__container\";\n fa = n.DOM.div({\n ref: \"PhotoInputContainer\",\n className: la,\n \"data-hover\": \"tooltip\",\n \"data-tooltip-alignh\": \"center\",\n \"aria-label\": \"Attach a Photo\"\n }, n.DOM.i({\n ref: \"PhotoInputControl\",\n className: ka\n }), ja);\n }\n ;\n var ma = p.getTrackingInfo(p.types.ADD_COMMENT_BOX), na = v(r.ACTOR_IMAGE, ((!da ? \"hidden_elem\" : \"\"))), oa = n.DOM.div({\n className: \"UFIReplyActorPhotoWrapper\"\n }, n.DOM.img({\n className: na,\n src: this.props.viewerActor.thumbSrc\n })), pa = v(r.ROW, ((((((((this.props.hide ? \"noDisplay\" : \"\")) + ((\" \" + \"UFIAddComment\"))) + ((this.props.allowPhotoAttachments ? (\" \" + \"UFIAddCommentWithPhotoAttacher\") : \"\"))) + ((this.props.withoutSeparator ? (\" \" + \"UFIAddCommentWithoutSeparator\") : \"\"))) + ((this.props.isFirstComponent ? (\" \" + \"UFIFirstComponent\") : \"\"))) + ((this.props.isLastComponent ? (\" \" + \"UFILastComponent\") : \"\"))))), qa = (!!this.props.replyCommentID ? y : x), ra = (this.props.contextArgs.entstream ? this._blur : null), sa = this.props.contextArgs.viewoptionstypeobjects, ta = this.props.contextArgs.viewoptionstypeobjectsorder, ua = null, va = this.props.onCommentSubmit;\n if (ga) {\n ua = n.DOM.div({\n isStatic: true,\n dangerouslySetInnerHTML: (this.state.attachedPhoto.markupPreview ? this.state.attachedPhoto.markupPreview : this.state.attachedPhoto.markup)\n });\n ea = null;\n }\n else if (this.state.isLoadingPhoto) {\n ua = m({\n color: \"white\",\n className: \"UFICommentPhotoAttachedPreviewLoadingIndicator\",\n size: \"medium\"\n });\n }\n ;\n var wa;\n if ((ua != null)) {\n wa = n.DOM.div({\n className: \"UFICommentPhotoAttachedPreview pas\"\n }, ua, j({\n onClick: this._onRemoveAttachedPhotoPreviewClicked\n }));\n va = function(xa, event) {\n this.setState({\n isLoadingPhoto: false,\n attachedPhoto: null\n });\n xa.attachedPhoto = this.props.contextArgs.attachedphoto;\n this.props.onCommentSubmit(xa, event);\n }.bind(this);\n }\n ;\n return (n.DOM.li({\n className: pa,\n onKeyDown: this._onKeyDown,\n \"data-ft\": ma\n }, s({\n className: \"UFIMentionsInputWrap\"\n }, oa, n.DOM.div(null, o({\n initialData: this.props.initialData,\n placeholder: qa,\n ref: \"mentionsinput\",\n datasource: this.props.mentionsDataSource,\n acceptEmptyInput: (this.props.isEditing || this.props.contextArgs.attachedphoto),\n onEnterSubmit: va,\n onFocus: this.setState.bind(this, {\n isCommenting: true\n }, null),\n viewOptionsTypeObjects: sa,\n viewOptionsTypeObjectsOrder: ta,\n onBlur: ra,\n onTypingStateChange: this.props.onTypingStateChange,\n onPaste: ha,\n sht: this.props.contextArgs.sht,\n isLoadingPhoto: this.state.isLoadingPhoto\n }), fa, wa, ea))));\n },\n componentDidMount: function(da) {\n if (h.gkResults) {\n var ea = this.props.replyCommentID;\n if ((this.refs && this.refs.mentionsinput)) {\n var fa = this.refs.mentionsinput.refs.textarea.getDOMNode();\n g.loadModules([\"CLoggerX\",\"UFIComments\",], function(ka, la) {\n var ma = la.getComment(ea), na = (ma ? ma.fbid : null);\n ka.trackMentionsInput(fa, na);\n });\n }\n ;\n }\n ;\n if (!this.props.allowPhotoAttachments) {\n return\n };\n var ga = this.refs.PhotoInputContainer.getDOMNode(), ha = this.refs.PhotoInputControl.getDOMNode(), ia = this.refs.PhotoInput.getDOMNode(), ja = k.listen(ga, \"click\", function(event) {\n g.loadModules([\"FileInput\",\"FileInputUploader\",\"Input\",], function(ka, la, ma) {\n var na = new ka(ga, ha, ia), oa = new la().setURI(ba).setData(this._getPhotoUploadData());\n na.subscribe(\"change\", function(event) {\n if (na.getValue()) {\n this._prepareForAttachedPhotoPreview();\n oa.setInput(na.getInput()).send();\n }\n ;\n }.bind(this));\n oa.subscribe(\"success\", function(pa, qa) {\n na.clear();\n this._onPhotoUploadComplete(qa.response);\n }.bind(this));\n }.bind(this));\n ja.remove();\n }.bind(this));\n },\n _getPhotoUploadData: function() {\n return {\n profile_id: this.props.viewerActor.id,\n target_id: this.props.targetID,\n source: aa\n };\n },\n _onPhotoUploadComplete: function(da) {\n if (!this.state.isLoadingPhoto) {\n return\n };\n var ea = da.getPayload();\n if ((ea && ea.fbid)) {\n this.props.contextArgs.attachedphoto = ea;\n this.setState({\n attachedPhoto: ea,\n isLoadingPhoto: false\n });\n }\n ;\n },\n _onRemoveAttachedPhotoPreviewClicked: function(event) {\n this.props.contextArgs.attachedphoto = null;\n this.setState({\n attachedPhoto: null,\n isLoadingPhoto: false\n });\n },\n _prepareForAttachedPhotoPreview: function() {\n this.props.contextArgs.attachedphoto = null;\n this.setState({\n attachedPhoto: null,\n isLoadingPhoto: true\n });\n }\n });\n e.exports = ca;\n});\n__d(\"UFIAddCommentController\", [\"Arbiter\",\"copyProperties\",\"MentionsInputUtils\",\"Parent\",\"UFIAddComment.react\",\"React\",\"ShortProfiles\",\"UFICentralUpdates\",\"UFIComments\",\"UFIFeedbackTargets\",\"UFIInstanceState\",\"UFIUserActions\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"copyProperties\"), i = b(\"MentionsInputUtils\"), j = b(\"Parent\"), k = b(\"UFIAddComment.react\"), l = b(\"React\"), m = b(\"ShortProfiles\"), n = b(\"UFICentralUpdates\"), o = b(\"UFIComments\"), p = b(\"UFIFeedbackTargets\"), q = b(\"UFIInstanceState\"), r = b(\"UFIUserActions\");\n function s(t, u, v, w) {\n this.id = u;\n this._ufiInstanceID = w.instanceid;\n this._contextArgs = w;\n this._replyCommentID = v;\n if (t) {\n this.root = t;\n if (!this._contextArgs.rootid) {\n this._contextArgs.rootid = t.id;\n };\n this.render();\n n.subscribe(\"instance-updated\", function(x, y) {\n var z = y.updates;\n if ((this._ufiInstanceID in z)) {\n this.render();\n };\n }.bind(this));\n }\n ;\n n.subscribe(\"feedback-id-changed\", function(x, y) {\n var z = y.updates;\n if ((this.id in z)) {\n this.id = z[this.id];\n };\n }.bind(this));\n };\n h(s.prototype, {\n _onCommentSubmit: function(t, event) {\n r.addComment(this.id, t.visibleValue, t.encodedValue, {\n source: this._contextArgs.source,\n ufiinstanceid: this._ufiInstanceID,\n target: event.target,\n replyid: this._replyCommentID,\n timelinelogdata: this._contextArgs.timelinelogdata,\n rootid: this._contextArgs.rootid,\n attachedphoto: this._contextArgs.attachedphoto,\n giftoccasion: this._contextArgs.giftoccasion\n });\n this._contextArgs.attachedphoto = null;\n p.getFeedbackTarget(this.id, function(u) {\n var v = j.byTag(this.root, \"form\");\n if (v) {\n g.inform(\"ufi/comment\", {\n form: v,\n isranked: u.isranked\n });\n };\n }.bind(this));\n return false;\n },\n _onTypingStateChange: function(t, u) {\n \n },\n renderAddComment: function(t, u, v, w, x, y, z, aa) {\n var ba = (this._contextArgs.logtyping ? this._onTypingStateChange.bind(this) : null), ca = null, da = (q.getKeyForInstance(this._ufiInstanceID, \"isediting\") && !this._replyCommentID);\n return (k({\n hide: da,\n replyCommentID: this._replyCommentID,\n viewerActor: t,\n targetID: u,\n initialData: ca,\n ref: x,\n withoutSeparator: y,\n onCommentSubmit: this._onCommentSubmit.bind(this),\n mentionsDataSource: v,\n onTypingStateChange: ba,\n showSendOnEnterTip: w,\n allowPhotoAttachments: z,\n source: this._contextArgs.source,\n contextArgs: this._contextArgs,\n subtitle: aa\n }));\n },\n renderEditComment: function(t, u, v, w, x, y, z) {\n var aa = o.getComment(v), ba = i.generateDataFromTextWithEntities(aa.body);\n return (k({\n viewerActor: t,\n targetID: u,\n initialData: ba,\n onCommentSubmit: x,\n onCancel: y,\n mentionsDataSource: w,\n source: this._contextArgs.source,\n contextArgs: this._contextArgs,\n isEditing: true,\n editingCommentID: v,\n attachedPhoto: aa.photo_comment,\n allowPhotoAttachments: z\n }));\n },\n render: function() {\n if (!this.root) {\n throw new Error(\"render called on UFIAddCommentController with no root\")\n };\n p.getFeedbackTarget(this.id, function(t) {\n if ((t.cancomment && t.actorforpost)) {\n m.get(t.actorforpost, function(u) {\n var v = this.renderAddComment(u, t.ownerid, t.mentionsdatasource, t.showsendonentertip, null, null, t.allowphotoattachments, t.subtitle);\n this._addComment = l.renderComponent(v, this.root);\n }.bind(this));\n };\n }.bind(this));\n }\n });\n e.exports = s;\n});\n__d(\"LegacyScrollableArea.react\", [\"Scrollable\",\"Bootloader\",\"React\",\"Style\",\"cx\",], function(a, b, c, d, e, f) {\n b(\"Scrollable\");\n var g = b(\"Bootloader\"), h = b(\"React\"), i = b(\"Style\"), j = b(\"cx\"), k = \"uiScrollableArea native\", l = \"uiScrollableAreaWrap scrollable\", m = \"uiScrollableAreaBody\", n = \"uiScrollableAreaContent\", o = h.createClass({\n displayName: \"ReactLegacyScrollableArea\",\n render: function() {\n var p = {\n height: (this.props.height ? (this.props.height + \"px\") : \"auto\")\n };\n return (h.DOM.div({\n className: k,\n ref: \"root\",\n style: p\n }, h.DOM.div({\n className: l\n }, h.DOM.div({\n className: m,\n ref: \"body\"\n }, h.DOM.div({\n className: n\n }, this.props.children)))));\n },\n getArea: function() {\n return this._area;\n },\n componentDidMount: function() {\n g.loadModules([\"ScrollableArea\",], this._loadScrollableArea);\n },\n _loadScrollableArea: function(p) {\n this._area = p.fromNative(this.refs.root.getDOMNode(), {\n fade: this.props.fade,\n persistent: this.props.persistent,\n shadow: ((this.props.shadow === undefined) ? true : this.props.shadow)\n });\n var q = this.refs.body.getDOMNode();\n i.set(q, \"width\", (this.props.width + \"px\"));\n (this.props.onScroll && this._area.subscribe(\"scroll\", this.props.onScroll));\n }\n });\n e.exports = o;\n});\n__d(\"UFIAddCommentLink.react\", [\"React\",\"UFIClassNames\",\"cx\",\"joinClasses\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"UFIClassNames\"), i = b(\"cx\"), j = b(\"joinClasses\"), k = b(\"tx\"), l = g.createClass({\n displayName: \"UFIAddCommentLink\",\n render: function() {\n var m = j(h.ROW, ((((((\"UFIAddCommentLink\") + ((this.props.isFirstCommentComponent ? (\" \" + \"UFIFirstCommentComponent\") : \"\"))) + ((this.props.isLastCommentComponent ? (\" \" + \"UFILastCommentComponent\") : \"\"))) + ((this.props.isFirstComponent ? (\" \" + \"UFIFirstComponent\") : \"\"))) + ((this.props.isLastComponent ? (\" \" + \"UFILastComponent\") : \"\"))))), n = \"Write a comment...\";\n return (g.DOM.li({\n className: m,\n \"data-ft\": this.props[\"data-ft\"]\n }, g.DOM.a({\n className: \"UFICommentLink\",\n onClick: this.props.onClick,\n href: \"#\",\n role: \"button\"\n }, n)));\n }\n });\n e.exports = l;\n});\n__d(\"PubContentTypes\", [], function(a, b, c, d, e, f) {\n var g = {\n HASHTAG: \"hashtag\",\n TOPIC: \"topic\",\n URL: \"url\"\n };\n e.exports = g;\n});\n__d(\"HovercardLinkInterpolator\", [\"Bootloader\",\"CSS\",\"Event\",\"HovercardLink\",\"Link.react\",\"Parent\",\"PubContentTypes\",\"React\",\"URI\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"Bootloader\"), h = b(\"CSS\"), i = b(\"Event\"), j = b(\"HovercardLink\"), k = b(\"Link.react\"), l = b(\"Parent\"), m = b(\"PubContentTypes\"), n = b(\"React\"), o = b(\"URI\"), p = b(\"cx\");\n function q(r, s, t, u, v) {\n var w = s.entities[0], x = (t || ((w.external ? \"_blank\" : null))), y, z = ((((!w.external ? \"profileLink\" : \"\")) + ((w.weakreference ? (\" \" + \"weakReference\") : \"\"))));\n if (w.hashtag) {\n var aa = h.hasClass(document.body, \"-cx-PUBLIC-hasLitestand__body\"), ba = function(ea) {\n if (i.$E(ea.nativeEvent).isDefaultRequested()) {\n return\n };\n ea.preventDefault();\n var fa = l.byTag(ea.target, \"A\");\n if (aa) {\n g.loadModules([\"EntstreamPubContentOverlay\",], function(ga) {\n ga.pubClick(fa);\n });\n }\n else g.loadModules([\"HashtagLayerPageController\",], function(ga) {\n ga.click(fa);\n });\n ;\n }, ca = null;\n if (aa) {\n ca = {\n type: m.HASHTAG,\n id: w.id,\n source: \"comment\"\n };\n }\n else ca = {\n id: w.id\n };\n ;\n var da = new o(w.url).setSubdomain(\"www\");\n y = n.DOM.a({\n className: \"-cx-PUBLIC-fbHashtagLink__link\",\n \"data-pub\": JSON.stringify(ca),\n href: da.toString(),\n onClick: ba\n }, n.DOM.span({\n className: \"-cx-PUBLIC-fbHashtagLink__hashmark\"\n }, r.substring(0, 1)), n.DOM.span({\n className: \"-cx-PUBLIC-fbHashtagLink__tagname\"\n }, r.substring(1)));\n }\n else if (w.weakreference) {\n y = k({\n className: z,\n href: w,\n target: x\n }, n.DOM.i({\n className: \"UFIWeakReferenceIcon\"\n }), r);\n }\n else y = k({\n className: z,\n href: w,\n target: x\n }, r);\n \n ;\n if ((!w.external && !w.hashtag)) {\n y.props[\"data-hovercard\"] = j.constructEndpointWithGroupAndLocation(w, u, v).toString();\n };\n return y;\n };\n e.exports = q;\n});\n__d(\"LinkButton\", [\"cx\",\"React\",], function(a, b, c, d, e, f) {\n var g = b(\"cx\"), h = b(\"React\"), i = function(j) {\n var k = ((j.name && j.value) ? (((j.name + \"[\") + encodeURIComponent(j.value)) + \"]\") : null);\n return (h.DOM.label({\n className: ((((\"uiLinkButton\") + ((j.subtle ? (\" \" + \"uiLinkButtonSubtle\") : \"\"))) + ((j.showSaving ? (\" \" + \"async_throbber\") : \"\"))))\n }, h.DOM.input({\n type: (j.inputType || \"button\"),\n name: k,\n value: j.label,\n className: ((j.showSaving ? \"stat_elem\" : \"\"))\n })));\n };\n e.exports = i;\n});\n__d(\"SeeMore.react\", [\"React\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"tx\"), i = g.createClass({\n displayName: \"SeeMore\",\n getInitialState: function() {\n return {\n isCollapsed: true\n };\n },\n handleClick: function() {\n this.setState({\n isCollapsed: false\n });\n },\n render: function() {\n var j = this.state.isCollapsed, k = (!j ? null : g.DOM.span(null, \"...\")), l = this.props.children[0], m = (j ? null : g.DOM.span(null, this.props.children[1])), n = (!j ? null : g.DOM.a({\n className: \"SeeMoreLink fss\",\n onClick: this.handleClick,\n href: \"#\",\n role: \"button\"\n }, \"See More\"));\n return (g.DOM.span({\n className: this.props.className\n }, l, k, n, m));\n }\n });\n e.exports = i;\n});\n__d(\"TruncatedTextWithEntities.react\", [\"React\",\"TextWithEntities.react\",\"SeeMore.react\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"TextWithEntities.react\"), i = b(\"SeeMore.react\");\n function j(n, o) {\n var p = (n.offset + n.length);\n return ((o > n.offset) && (o < p));\n };\n function k(n, o) {\n for (var p = 0; (p < n.length); p++) {\n var q = n[p];\n if (j(q, o)) {\n return q.offset\n };\n };\n return o;\n };\n var l = function(n, o, p) {\n var q = [], r = [], s = k(o, p);\n for (var t = 0; (t < o.length); t++) {\n var u = o[t];\n if ((u.offset < s)) {\n q.push(u);\n }\n else r.push({\n offset: (u.offset - s),\n length: u.length,\n entities: u.entities\n });\n ;\n };\n return {\n first: {\n ranges: q,\n text: n.substr(0, s)\n },\n second: {\n ranges: r,\n text: n.substr(s)\n }\n };\n }, m = g.createClass({\n displayName: \"TruncatedTextWithEntities\",\n render: function() {\n var n = this.props.maxLines, o = this.props.maxLength, p = (this.props.truncationPercent || 60750), q = Math.floor((p * o)), r = (this.props.text || \"\"), s = (this.props.ranges || []), t = r.split(\"\\u000a\"), u = (t.length - 1), v = (o && (r.length > o)), w = (n && (u > n));\n if (w) {\n q = Math.min(t.slice(0, n).join(\"\\u000a\").length, q);\n };\n if ((v || w)) {\n var x = l(r, s, q);\n return (g.DOM.span({\n \"data-ft\": this.props[\"data-ft\"],\n dir: this.props.dir\n }, i({\n className: this.props.className\n }, h({\n interpolator: this.props.interpolator,\n ranges: x.first.ranges,\n text: x.first.text,\n renderEmoticons: this.props.renderEmoticons,\n renderEmoji: this.props.renderEmoji\n }), h({\n interpolator: this.props.interpolator,\n ranges: x.second.ranges,\n text: x.second.text,\n renderEmoticons: this.props.renderEmoticons,\n renderEmoji: this.props.renderEmoji\n }))));\n }\n else return (g.DOM.span({\n \"data-ft\": this.props[\"data-ft\"],\n dir: this.props.dir\n }, h({\n className: this.props.className,\n interpolator: this.props.interpolator,\n ranges: s,\n text: r,\n renderEmoticons: this.props.renderEmoticons,\n renderEmoji: this.props.renderEmoji\n })))\n ;\n }\n });\n e.exports = m;\n});\n__d(\"UFICommentAttachment.react\", [\"DOM\",\"React\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"React\"), i = h.createClass({\n displayName: \"UFICommentAttachment\",\n _attachmentFromCommentData: function(j) {\n return (j.photo_comment || j.attachment);\n },\n componentDidMount: function(j) {\n var k = this._attachmentFromCommentData(this.props.comment);\n if (k) {\n this.renderAttachment(k);\n };\n },\n shouldComponentUpdate: function(j, k) {\n var l = this._attachmentFromCommentData(this.props.comment), m = this._attachmentFromCommentData(j.comment);\n if ((!l && !m)) {\n return false\n };\n if (((!l || !m) || (l.markup != m.markup))) {\n return true;\n }\n else return false\n ;\n },\n componentDidUpdate: function(j) {\n var k = this._attachmentFromCommentData(this.props.comment);\n this.renderAttachment(k);\n },\n renderAttachment: function(j) {\n if ((j && this.refs.contents)) {\n g.setContent(this.refs.contents.getDOMNode(), j.markup);\n };\n },\n render: function() {\n if (this._attachmentFromCommentData(this.props.comment)) {\n return h.DOM.div({\n ref: \"contents\"\n });\n }\n else return h.DOM.span(null)\n ;\n }\n });\n e.exports = i;\n});\n__d(\"UFIReplyLink.react\", [\"React\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"tx\"), i = g.createClass({\n displayName: \"UFIReplyLink\",\n render: function() {\n return (g.DOM.a({\n className: \"UFIReplyLink\",\n href: \"#\",\n onClick: this.props.onClick\n }, \"Reply\"));\n }\n });\n e.exports = i;\n});\n__d(\"UFISpamCount\", [\"UFISpamCountImpl\",], function(a, b, c, d, e, f) {\n e.exports = (b(\"UFISpamCountImpl\").module || {\n enabled: false\n });\n});\n__d(\"UFIComment.react\", [\"function-extensions\",\"Bootloader\",\"CloseButton.react\",\"Env\",\"Focus\",\"HovercardLink\",\"HovercardLinkInterpolator\",\"LinkButton\",\"NumberFormat\",\"ProfileBrowserLink\",\"ProfileBrowserTypes\",\"React\",\"Timestamp.react\",\"TrackingNodes\",\"TruncatedTextWithEntities.react\",\"UFIClassNames\",\"UFICommentAttachment.react\",\"UFIConfig\",\"UFIConstants\",\"UFIImageBlock.react\",\"UFIInstanceState\",\"UFIReplyLink.react\",\"UFISpamCount\",\"URI\",\"cx\",\"keyMirror\",\"joinClasses\",\"tx\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"Bootloader\"), h = b(\"CloseButton.react\"), i = b(\"Env\"), j = b(\"Focus\"), k = b(\"HovercardLink\"), l = b(\"HovercardLinkInterpolator\"), m = b(\"LinkButton\"), n = b(\"NumberFormat\"), o = b(\"ProfileBrowserLink\"), p = b(\"ProfileBrowserTypes\"), q = b(\"React\"), r = b(\"Timestamp.react\"), s = b(\"TrackingNodes\"), t = b(\"TruncatedTextWithEntities.react\"), u = b(\"UFIClassNames\"), v = b(\"UFICommentAttachment.react\"), w = b(\"UFIConfig\"), x = b(\"UFIConstants\"), y = b(\"UFIImageBlock.react\"), z = b(\"UFIInstanceState\"), aa = b(\"UFIReplyLink.react\"), ba = b(\"UFISpamCount\"), ca = b(\"URI\"), da = b(\"cx\"), ea = b(\"keyMirror\"), fa = b(\"joinClasses\"), ga = b(\"tx\"), ha = x.UFIStatus, ia = \" \\u00b7 \", ja = ea({\n edit: true,\n hide: true,\n remove: true\n }), ka = \"UFICommentBody\", la = \"UFICommentActorName\", ma = \"UFICommentNotSpamLink\", na = \"fsm fwn fcg UFICommentActions\", oa = \"UFIDeletedMessageIcon\", pa = \"UFIDeletedMessage\", qa = \"UFIFailureMessageIcon\", ra = \"UFIFailureMessage\", sa = \"UFICommentLikeButton\", ta = \"UFICommentLikeIcon\", ua = \"UFITranslateLink\", va = \"UFITranslatedText\", wa = \"uiLinkSubtle\", xa = \"stat_elem\", ya = \"pls\", za = \"fcg\", ab = 27, bb = null, cb = function(kb, lb) {\n var mb = new ca(\"/ajax/like/tooltip.php\").setQueryData({\n comment_fbid: kb.fbid,\n comment_from: kb.author,\n cache_buster: (kb.likeconfirmhash || 0)\n });\n if (lb) {\n mb.addQueryData({\n viewas: lb\n });\n };\n return mb;\n }, db = function(kb) {\n var lb = kb.status;\n return ((lb === ha.FAILED_ADD) || (lb === ha.FAILED_EDIT));\n };\n function eb(kb) {\n return (((kb.commenterIsFOF !== undefined) && (kb.userIsMinor !== undefined)) && (kb.reportLink !== undefined));\n };\n var fb = q.createClass({\n displayName: \"UFICommentLikeCount\",\n render: function() {\n var kb = this.props.comment, lb = n.formatIntegerWithDelimiter((kb.likecount || 0), this.props.contextArgs.numberdelimiter), mb = p.LIKES, nb = {\n id: kb.fbid\n }, ob = cb(this.props.comment, this.props.viewas), pb = q.DOM.i({\n className: ta\n }), qb = q.DOM.span(null, lb);\n return (q.DOM.a({\n className: sa,\n role: \"button\",\n rel: \"dialog\",\n \"data-hover\": \"tooltip\",\n \"data-tooltip-alignh\": \"center\",\n \"data-tooltip-uri\": ob.toString(),\n ajaxify: o.constructDialogURI(mb, nb).toString(),\n href: o.constructPageURI(mb, nb).toString()\n }, pb, qb));\n }\n }), gb = q.createClass({\n displayName: \"UFICommentActions\",\n render: function() {\n var kb = this.props, lb = kb.comment, mb = kb.feedback, nb = kb.markedAsSpamHere, ob = (lb.status === ha.SPAM_DISPLAY), pb = this.props.showReplyLink, qb = this.props.hideAsSpamForPageAdmin, rb, sb, tb, ub, vb, wb, xb = (!lb.islocal && (lb.status !== ha.LIVE_DELETED));\n if (xb) {\n if ((ob && !nb)) {\n if (kb.viewerCanMarkNotSpam) {\n rb = q.DOM.a({\n onClick: kb.onMarkAsNotSpam,\n className: ma,\n href: \"#\",\n role: \"button\"\n }, \"Unhide\");\n };\n if ((((qb && mb.isthreaded) && mb.cancomment) && pb)) {\n vb = aa({\n comment: lb,\n onClick: kb.onCommentReply,\n contextArgs: kb.contextArgs\n });\n };\n }\n else {\n if (mb.viewercanlike) {\n var yb = s.getTrackingInfo((lb.hasviewerliked ? s.types.UNLIKE_LINK : s.types.LIKE_LINK)), zb = (lb.hasviewerliked ? \"Unlike this comment\" : \"Like this comment\");\n sb = q.DOM.a({\n className: \"UFILikeLink\",\n href: \"#\",\n role: \"button\",\n onClick: kb.onCommentLikeToggle,\n \"data-ft\": yb,\n title: zb\n }, (lb.hasviewerliked ? \"Unlike\" : \"Like\"));\n }\n ;\n if (((mb.isthreaded && mb.cancomment) && pb)) {\n vb = aa({\n comment: lb,\n onClick: kb.onCommentReply,\n contextArgs: kb.contextArgs\n });\n };\n if ((lb.likecount > 0)) {\n tb = fb({\n comment: lb,\n viewas: this.props.viewas,\n contextArgs: this.props.contextArgs\n });\n };\n if ((lb.spamcount && ba.enabled)) {\n ub = ba({\n count: lb.spamcount\n });\n };\n }\n ;\n if (((lb.attachment && (lb.attachment.type == \"share\")) && lb.canremove)) {\n wb = q.DOM.a({\n onClick: kb.onPreviewRemove,\n href: \"#\",\n role: \"button\"\n }, \"Remove Preview\");\n };\n }\n ;\n var ac = hb({\n comment: lb,\n onRetrySubmit: kb.onRetrySubmit,\n showPermalink: kb.showPermalink\n }), bc;\n if (kb.contextArgs.entstream) {\n bc = [ac,sb,tb,vb,ub,rb,wb,];\n }\n else if (mb.isthreaded) {\n bc = [sb,vb,rb,wb,tb,ub,ac,];\n }\n else bc = [ac,sb,tb,ub,vb,rb,wb,];\n \n ;\n if ((lb.status === ha.LIVE_DELETED)) {\n var cc = q.DOM.span({\n className: pa\n }, q.DOM.i({\n className: oa,\n \"data-hover\": \"tooltip\",\n \"aria-label\": \"Comment deleted\"\n }));\n bc.push(cc);\n }\n ;\n var dc = [];\n for (var ec = 0; (ec < bc.length); ec++) {\n if (bc[ec]) {\n dc.push(ia);\n dc.push(bc[ec]);\n }\n ;\n };\n dc.shift();\n return (q.DOM.div({\n className: na\n }, dc));\n }\n }), hb = q.createClass({\n displayName: \"UFICommentMetadata\",\n render: function() {\n var kb = this.props.comment, lb = this.props.onRetrySubmit, mb, nb;\n if (db(kb)) {\n mb = [q.DOM.span({\n className: ra\n }, q.DOM.i({\n className: qa\n }), \"Unable to post comment.\"),((kb.allowRetry && lb) ? [\" \",q.DOM.a({\n onClick: lb,\n href: \"#\",\n role: \"button\"\n }, \"Try Again\"),] : null),];\n }\n else {\n var ob = (this.props.showPermalink ? kb.permalink : null), pb = s.getTrackingInfo(s.types.SOURCE), qb = q.DOM.a({\n className: wa,\n href: ob,\n \"data-ft\": pb\n }, r({\n time: kb.timestamp.time,\n text: kb.timestamp.text,\n verbose: kb.timestamp.verbose\n })), rb;\n switch (kb.source) {\n case x.UFISourceType.MOBILE:\n rb = q.DOM.a({\n className: wa,\n href: new ca(\"/mobile/\").setSubdomain(\"www\").toString()\n }, \"mobile\");\n break;\n case x.UFISourceType.SMS:\n rb = q.DOM.a({\n className: wa,\n href: new ca(\"/mobile/?v=texts\").setSubdomain(\"www\").toString()\n }, \"text message\");\n break;\n case x.UFISourceType.EMAIL:\n rb = m({\n subtle: true,\n label: \"email\",\n inputType: \"submit\",\n name: \"email_explain\",\n value: true,\n className: xa\n });\n break;\n };\n nb = qb;\n if (rb) {\n nb = q.DOM.span({\n className: \"UFITimestampViaSource\"\n }, ga._(\"{time} via {source}\", {\n time: qb,\n source: rb\n }));\n };\n }\n ;\n var sb = null;\n if (kb.originalTimestamp) {\n var tb = new ca(\"/ajax/edits/browser/comment\").addQueryData({\n comment_token: kb.id\n }).toString();\n sb = [ia,q.DOM.a({\n ref: \"EditLink\",\n href: \"#\",\n role: \"button\",\n rel: \"dialog\",\n className: \"uiLinkSubtle\",\n ajaxify: tb,\n \"data-hover\": \"tooltip\",\n \"aria-label\": \"Show edit history\",\n title: \"Show edit history\"\n }, \"Edited\"),];\n }\n ;\n return (q.DOM.span(null, nb, mb, sb));\n },\n componentWillUpdate: function(kb) {\n var lb = this.props.comment, mb = kb.comment;\n if ((!lb.editnux && !!mb.editnux)) {\n g.loadModules([\"LegacyContextualDialog\",], function(nb) {\n var ob = new nb();\n ob.init(mb.editnux).setContext(this.refs.EditLink.getDOMNode()).setWidth(300).setPosition(\"below\").show();\n }.bind(this));\n };\n }\n }), ib = q.createClass({\n displayName: \"UFISocialContext\",\n render: function() {\n var kb = this.props.topMutualFriend, lb = this.props.otherMutualCount, mb = this.props.commentAuthor, nb = k.constructEndpoint(kb).toString(), ob = q.DOM.a({\n href: kb.uri,\n \"data-hovercard\": nb\n }, kb.name), pb = (mb.name.length + kb.name.length), qb;\n if ((lb === 0)) {\n qb = ga._(\"Friends with {name}\", {\n name: ob\n });\n }\n else if ((pb < ab)) {\n var rb;\n if ((lb == 1)) {\n rb = \"1 other\";\n }\n else rb = ga._(\"{count} others\", {\n count: lb\n });\n ;\n qb = ga._(\"Friends with {name} and {others}\", {\n name: ob,\n others: this.getOthersLink(rb, mb, kb)\n });\n }\n else {\n var sb = ga._(\"{count} mutual friends\", {\n count: (lb + 1)\n });\n qb = this.getOthersLink(sb, mb);\n }\n \n ;\n return (q.DOM.span({\n className: \"UFICommentSocialContext\"\n }, ia, qb));\n },\n getOthersLink: function(kb, lb, mb) {\n var nb = p.MUTUAL_FRIENDS, ob = {\n uid: lb.id\n }, pb = new ca(\"/ajax/mutual_friends/tooltip.php\").setQueryData({\n friend_id: lb.id\n });\n if (mb) {\n pb.addQueryData({\n exclude_id: mb.id\n });\n };\n var qb = o.constructDialogURI(nb, ob).toString();\n return (q.DOM.a({\n rel: \"dialog\",\n \"data-hover\": \"tooltip\",\n \"data-tooltip-alignh\": \"center\",\n \"data-tooltip-uri\": pb.toString(),\n ajaxify: qb,\n href: o.constructPageURI(nb, ob).toString()\n }, kb));\n }\n }), jb = q.createClass({\n displayName: \"UFIComment\",\n getInitialState: function() {\n return {\n isHighlighting: this.props.comment.highlightcomment,\n wasHighlighted: this.props.comment.highlightcomment,\n markedAsSpamHere: false,\n oneClickRemovedHere: false,\n isInlinePageDeleted: false,\n isInlineBanned: false\n };\n },\n _onHideAsSpam: function(event) {\n this.props.onHideAsSpam(event);\n this.setState({\n markedAsSpamHere: true\n });\n },\n _onMarkAsNotSpam: function(event) {\n this.props.onMarkAsNotSpam(event);\n this.setState({\n markedAsSpamHere: false\n });\n },\n _onDeleteSpam: function(event) {\n this.props.onOneClickRemove(event);\n this.setState({\n isInlinePageDeleted: true\n });\n },\n _onUndoDeleteSpam: function(event) {\n this.props.onUndoOneClickRemove(event);\n this.setState({\n isInlinePageDeleted: false\n });\n },\n _onInlineBan: function(event) {\n this.props.onInlineBan(event);\n this.setState({\n isInlineBanned: true\n });\n },\n _onUndoInlineBan: function(event) {\n this.props.onUndoInlineBan(event);\n this.setState({\n isInlineBanned: false\n });\n },\n _onOneClickRemove: function(event) {\n this.props.onOneClickRemove(event);\n this.setState({\n oneClickRemovedHere: true\n });\n },\n _onUndoOneClickRemove: function(event) {\n this.props.onUndoOneClickRemove(event);\n this.setState({\n oneClickRemovedHere: false\n });\n },\n _onAction: function(event, kb) {\n if ((kb === ja.remove)) {\n this.props.onRemove(event);\n }\n else if ((kb === ja.edit)) {\n this.props.onEdit(event);\n }\n else if ((kb === ja.hide)) {\n this._onHideAsSpam(event);\n }\n \n ;\n },\n _createRemoveReportMenu: function(event) {\n if (this._removeReportMenu) {\n return\n };\n var kb = [{\n label: \"Delete Comment...\",\n value: ja.remove\n },{\n label: \"Hide Comment\",\n value: ja.hide\n },];\n if (event.persist) {\n event.persist();\n }\n else event = event.constructor.persistentCloneOf(event);\n ;\n g.loadModules([\"LegacyMenuUtils\",], function(lb) {\n this._removeReportMenu = lb.createAndShowPopoverMenu(event.target, kb, this._onAction.bind(this, event));\n }.bind(this));\n },\n _createEditDeleteMenu: function(event) {\n if (event.persist) {\n event.persist();\n }\n else event = event.constructor.persistentCloneOf(event);\n ;\n if (this._editDeleteMenu) {\n return\n };\n var kb = [{\n label: \"Edit...\",\n value: ja.edit\n },{\n label: \"Delete...\",\n value: ja.remove\n },];\n g.loadModules([\"LegacyMenuUtils\",], function(lb) {\n this._editDeleteMenu = lb.createAndShowPopoverMenu(event.target, kb, this._onAction.bind(this, event));\n }.bind(this));\n },\n _renderCloseButton: function() {\n var kb = this.props.comment, lb = this.props.feedback, mb = null, nb = null, ob = false;\n if ((kb.canremove && !this.props.hideAsSpamForPageAdmin)) {\n if (this.props.viewerIsAuthor) {\n if (kb.canedit) {\n nb = \"Edit or Delete\";\n mb = this._createEditDeleteMenu;\n ob = true;\n }\n else {\n nb = \"Remove\";\n mb = this.props.onRemove;\n }\n ;\n }\n else if (lb.canremoveall) {\n if (this.props.showRemoveReportMenu) {\n nb = \"Remove or Report\";\n mb = this._createRemoveReportMenu;\n }\n else {\n nb = \"Remove\";\n mb = this._onOneClickRemove;\n }\n \n }\n ;\n }\n else if (kb.canreport) {\n nb = \"Hide\";\n mb = this._onHideAsSpam;\n }\n \n ;\n var pb = ((((\"UFICommentCloseButton\") + ((ob ? (\" \" + \"UFIEditButton\") : \"\"))) + (((mb === null) ? (\" \" + \"hdn\") : \"\"))));\n return (h({\n onClick: mb,\n tooltip: nb,\n className: pb\n }));\n },\n componentDidMount: function(kb) {\n var lb = this.props.comment.ufiinstanceid;\n if (this.state.isHighlighting) {\n g.loadModules([\"UFIScrollHighlight\",], function(nb) {\n nb.actOn.curry(kb).defer();\n });\n this.setState({\n isHighlighting: false\n });\n }\n ;\n var mb = z.getKeyForInstance(lb, \"autofocus\");\n if (mb) {\n j.setWithoutOutline(this.refs.AuthorName.getDOMNode());\n z.updateState(lb, \"autofocus\", false);\n }\n ;\n },\n shouldComponentUpdate: function(kb) {\n var lb = this.props;\n return ((((((((((((kb.comment !== lb.comment) || (kb.showReplyLink !== lb.showReplyLink)) || (kb.showReplies !== lb.showReplies)) || (kb.isFirst !== lb.isFirst)) || (kb.isLast !== lb.isLast)) || (kb.isFirstCommentComponent !== lb.isFirstCommentComponent)) || (kb.isLastCommentComponent !== lb.isLastCommentComponent)) || (kb.isFirstComponent !== lb.isFirstComponent)) || (kb.isLastComponent !== lb.isLastComponent)) || (kb.isFeaturedComment !== lb.isFeaturedComment)) || (kb.hasPartialBorder !== lb.hasPartialBorder)));\n },\n render: function() {\n var kb = this.props.comment, lb = this.props.feedback, mb = (kb.status === ha.DELETED), nb = (kb.status === ha.LIVE_DELETED), ob = (kb.status === ha.SPAM_DISPLAY), pb = (kb.status === ha.PENDING_UNDO_DELETE), qb = this.state.markedAsSpamHere, rb = this.state.oneClickRemovedHere, sb = this.state.isInlinePageDeleted, tb = this.props.hideAsSpamForPageAdmin, ub = this.state.isInlineBanned, vb = eb(kb), wb = (!kb.status && ((kb.isunseen || kb.islocal)));\n if ((!kb.status && lb.lastseentime)) {\n var xb = (kb.originalTimestamp || kb.timestamp.time);\n wb = (wb || (xb > lb.lastseentime));\n }\n ;\n var yb = this.props.contextArgs.markedcomments;\n if ((yb && yb[kb.legacyid])) {\n wb = true;\n };\n if (vb) {\n if (bb) {\n var zb, ac = null, bc = null, cc = null;\n if (tb) {\n bc = (ub ? this._onUndoInlineBan : this._onInlineBan);\n if (sb) {\n ac = this._onUndoDeleteSpam;\n var dc = q.DOM.a({\n href: \"#\",\n onClick: ac\n }, \"Undo\");\n zb = ga._(\"You've deleted this comment so no one can see it. {undo}.\", {\n undo: dc\n });\n }\n else if (qb) {\n zb = \"Now this is only visible to the person who wrote it and their friends.\";\n cc = this._onDeleteSpam;\n ac = this._onMarkAsNotSpam;\n }\n \n ;\n }\n else if (qb) {\n zb = \"This comment has been hidden.\";\n cc = this._onDeleteSpam;\n ac = this._onMarkAsNotSpam;\n }\n else if (rb) {\n zb = \"This comment has been removed.\";\n ac = this._onUndoOneClickRemove;\n }\n \n \n ;\n if (zb) {\n return (q.DOM.li({\n className: fa(u.ROW, \"UFIHide\")\n }, bb({\n notice: zb,\n comment: this.props.comment,\n authorProfiles: this.props.authorProfiles,\n onUndo: ac,\n onBanAction: bc,\n onDeleteAction: cc,\n isInlineBanned: ub,\n hideAsSpamForPageAdmin: tb\n })))\n };\n }\n else g.loadModules([\"UFICommentRemovalControls.react\",], function(hc) {\n bb = hc;\n setTimeout(function() {\n this.forceUpdate();\n }.bind(this));\n }.bind(this));\n \n };\n var ec = (!mb || rb), fc = fa(u.ROW, (((((((((((((((\"UFIComment\") + ((db(kb) ? (\" \" + \"UFICommentFailed\") : \"\"))) + (((((mb || nb) || ob) || pb) ? (\" \" + \"UFITranslucentComment\") : \"\"))) + ((this.state.isHighlighting ? (\" \" + \"highlightComment\") : \"\"))) + ((!ec ? (\" \" + \"noDisplay\") : \"\"))) + ((ec ? (\" \" + \"display\") : \"\"))) + (((this.props.isFirst && !this.props.isReply) ? (\" \" + \"UFIFirstComment\") : \"\"))) + (((this.props.isLast && !this.props.isReply) ? (\" \" + \"UFILastComment\") : \"\"))) + ((this.props.isFirstCommentComponent ? (\" \" + \"UFIFirstCommentComponent\") : \"\"))) + ((this.props.isLastCommentComponent ? (\" \" + \"UFILastCommentComponent\") : \"\"))) + ((this.props.isFirstComponent ? (\" \" + \"UFIFirstComponent\") : \"\"))) + ((this.props.isLastComponent ? (\" \" + \"UFILastComponent\") : \"\"))) + ((this.props.isFeatured ? (\" \" + \"UFIFeaturedComment\") : \"\"))) + (((this.props.hasPartialBorder && !this.props.contextArgs.entstream) ? (\" \" + \"UFIPartialBorder\") : \"\"))))), gc = this.renderComment();\n if (wb) {\n if (this.props.contextArgs.snowliftredesign) {\n gc = q.DOM.div({\n className: \"-cx-PRIVATE-fbPhotoSnowliftRedesign__unseenwrapper\"\n }, q.DOM.div({\n className: \"-cx-PRIVATE-fbPhotoSnowliftRedesign__unseenindicator\"\n }), gc);\n }\n else if ((this.props.contextArgs.entstream && !this.props.isReply)) {\n gc = q.DOM.div({\n className: \"-cx-PRIVATE-fbEntstreamUFI__unseenwrapper\"\n }, q.DOM.div({\n className: \"-cx-PRIVATE-fbEntstreamUFI__unseenindicator\"\n }), gc);\n }\n else fc = fa(fc, u.UNSEEN_ITEM);\n \n \n };\n return (q.DOM.li({\n className: fc,\n \"data-ft\": this.props[\"data-ft\"]\n }, gc));\n },\n renderComment: function() {\n var kb = this.props, lb = kb.comment, mb = kb.feedback, nb = kb.authorProfiles[lb.author], ob = (lb.status === ha.SPAM_DISPLAY), pb = (lb.status === ha.LIVE_DELETED), qb = !((ob || pb)), rb = (mb.canremoveall || lb.hiddenbyviewer), sb = null, tb = null;\n if (((!kb.isLocallyComposed && !this.state.wasHighlighted) && !lb.fromfetch)) {\n tb = x.commentTruncationLength;\n sb = x.commentTruncationMaxLines;\n }\n ;\n var ub = s.getTrackingInfo(s.types.SMALL_ACTOR_PHOTO), vb = s.getTrackingInfo(s.types.USER_NAME), wb = s.getTrackingInfo(s.types.USER_MESSAGE), xb = null, yb = null;\n if ((lb.istranslatable && ((lb.translatedtext === undefined)))) {\n xb = q.DOM.a({\n href: \"#\",\n role: \"button\",\n title: \"Translate this comment\",\n className: ua,\n onClick: kb.onCommentTranslate\n }, \"See Translation\");\n };\n if (lb.translatedtext) {\n var zb = new ca(\"http://bing.com/translator\").addQueryData({\n text: lb.body.text\n });\n yb = q.DOM.span({\n className: va\n }, lb.translatedtext, q.DOM.span({\n className: ya\n }, \" (\", q.DOM.a({\n href: zb.toString(),\n className: za\n }, \"Translated by Bing\"), \") \"));\n }\n ;\n var ac;\n if ((i.rtl && (lb.body.dir === \"ltr\"))) {\n ac = \"rtl\";\n }\n else if ((!i.rtl && (lb.body.dir === \"rtl\"))) {\n ac = \"ltr\";\n }\n ;\n var bc = k.constructEndpointWithLocation(nb, \"ufi\").toString(), cc = q.DOM.a({\n ref: \"AuthorName\",\n className: la,\n href: nb.uri,\n \"data-hovercard\": bc,\n \"data-ft\": vb,\n dir: ac\n }, nb.name), dc = function(ic, jc) {\n return l(ic, jc, \"_blank\", mb.grouporeventid, \"ufi\");\n }, ec = t({\n className: ka,\n interpolator: dc,\n ranges: lb.body.ranges,\n text: lb.body.text,\n truncationPercent: x.commentTruncationPercent,\n maxLength: tb,\n maxLines: sb,\n renderEmoticons: w.renderEmoticons,\n renderEmoji: w.renderEmoji,\n \"data-ft\": wb,\n dir: lb.body.dir\n }), fc;\n if (lb.socialcontext) {\n var gc = lb.socialcontext, hc = ib({\n topMutualFriend: kb.authorProfiles[gc.topmutualid],\n otherMutualCount: gc.othermutualcount,\n commentAuthor: nb\n });\n fc = [cc,hc,q.DOM.div(null, ec),];\n }\n else fc = [cc,\" \",ec,];\n ;\n return (y({\n spacing: \"medium\"\n }, q.DOM.a({\n href: nb.uri,\n \"data-hovercard\": bc,\n \"data-ft\": ub\n }, q.DOM.img({\n src: nb.thumbSrc,\n className: u.ACTOR_IMAGE,\n alt: \"\"\n })), q.DOM.div(null, q.DOM.div({\n className: \"UFICommentContent\"\n }, fc, xb, yb, v({\n comment: kb.comment\n })), gb({\n comment: lb,\n feedback: mb,\n onBlingBoxClick: kb.onBlingBoxClick,\n onCommentLikeToggle: kb.onCommentLikeToggle,\n onCommentReply: kb.onCommentReply,\n onPreviewRemove: kb.onPreviewRemove,\n onRetrySubmit: kb.onRetrySubmit,\n onMarkAsNotSpam: this._onMarkAsNotSpam,\n viewerCanMarkNotSpam: rb,\n viewas: kb.contextArgs.viewas,\n showPermalink: kb.showPermalink,\n showReplyLink: kb.showReplyLink,\n showReplies: kb.showReplies,\n contextArgs: kb.contextArgs,\n markedAsSpamHere: this.state.markedAsSpamHere,\n hideAsSpamForPageAdmin: kb.hideAsSpamForPageAdmin\n })), (qb ? this._renderCloseButton() : null)));\n }\n });\n e.exports = jb;\n});\n__d(\"UFIContainer.react\", [\"React\",\"TrackingNodes\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"TrackingNodes\"), i = b(\"cx\"), j = g.createClass({\n displayName: \"UFIContainer\",\n render: function() {\n var k = null;\n if (this.props.hasNub) {\n k = g.DOM.li({\n className: \"UFIArrow\"\n }, g.DOM.i(null));\n };\n var l = (((((((((!this.props.isReplyList ? \"UFIList\" : \"\")) + ((this.props.isReplyList ? (\" \" + \"UFIReplyList\") : \"\"))) + ((this.props.isParentLiveDeleted ? (\" \" + \"UFITranslucentReplyList\") : \"\"))) + ((this.props.isFirstCommentComponent ? (\" \" + \"UFIFirstCommentComponent\") : \"\"))) + ((this.props.isLastCommentComponent ? (\" \" + \"UFILastCommentComponent\") : \"\"))) + ((this.props.isFirstComponent ? (\" \" + \"UFIFirstComponent\") : \"\"))) + ((this.props.isLastComponent ? (\" \" + \"UFILastComponent\") : \"\"))));\n return (g.DOM.ul({\n className: l,\n \"data-ft\": h.getTrackingInfo(h.types.UFI)\n }, k, this.props.children));\n }\n });\n e.exports = j;\n});\n__d(\"GiftOpportunityLogger\", [\"AsyncRequest\",\"Event\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"Event\"), i = {\n init: function(k, l, m) {\n var n = false;\n h.listen(k, \"click\", function(o) {\n if (n) {\n return true\n };\n n = true;\n i.send(l, m);\n });\n },\n send: function(k, l) {\n if (j[k.opportunity_id]) {\n return\n };\n j[k.opportunity_id] = true;\n return new g().setURI(\"/ajax/gifts/log/opportunity\").setData({\n data: k,\n entry_point: l\n }).send();\n }\n }, j = {\n };\n e.exports = i;\n});\n__d(\"InlineBlock.react\", [\"ReactPropTypes\",\"React\",\"cx\",\"joinClasses\",], function(a, b, c, d, e, f) {\n var g = b(\"ReactPropTypes\"), h = b(\"React\"), i = b(\"cx\"), j = b(\"joinClasses\"), k = {\n baseline: null,\n bottom: \"-cx-PRIVATE-uiInlineBlock__bottom\",\n middle: \"-cx-PRIVATE-uiInlineBlock__middle\",\n top: \"-cx-PRIVATE-uiInlineBlock__top\"\n }, l = h.createClass({\n displayName: \"InlineBlock\",\n propTypes: {\n alignv: g.oneOf([\"baseline\",\"bottom\",\"middle\",\"top\",]),\n height: g.number\n },\n getDefaultProps: function() {\n return {\n alignv: \"baseline\"\n };\n },\n render: function() {\n var m = k[this.props.alignv], n = h.DOM.div({\n className: j(\"-cx-PRIVATE-uiInlineBlock__root\", m)\n }, this.props.children);\n if ((this.props.height != null)) {\n var o = h.DOM.div({\n className: j(\"-cx-PRIVATE-uiInlineBlock__root\", m),\n style: {\n height: (this.props.height + \"px\")\n }\n });\n n = h.DOM.div({\n className: \"-cx-PRIVATE-uiInlineBlock__root\",\n height: null\n }, o, n);\n }\n ;\n return this.transferPropsTo(n);\n }\n });\n e.exports = l;\n});\n__d(\"UFIGiftSentence.react\", [\"AsyncRequest\",\"CloseButton.react\",\"GiftOpportunityLogger\",\"ImageBlock.react\",\"InlineBlock.react\",\"LeftRight.react\",\"Link.react\",\"React\",\"Image.react\",\"UFIClassNames\",\"UFIImageBlock.react\",\"URI\",\"DOM\",\"ix\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"CloseButton.react\"), i = b(\"GiftOpportunityLogger\"), j = b(\"ImageBlock.react\"), k = b(\"InlineBlock.react\"), l = b(\"LeftRight.react\"), m = b(\"Link.react\"), n = b(\"React\"), o = b(\"Image.react\"), p = b(\"UFIClassNames\"), q = b(\"UFIImageBlock.react\"), r = b(\"URI\"), s = b(\"DOM\"), t = b(\"ix\"), u = b(\"tx\"), v = n.createClass({\n displayName: \"UFIGiftSentence\",\n _entry_point: \"detected_gift_worthy_story_inline\",\n render: function() {\n var w = this.props.recipient, x = this.props.giftdata, y = (x ? x.giftproductid : null), z = this._getURI(y).toString();\n this._log();\n return (n.DOM.li({\n className: p.ROW,\n ref: \"UFIGiftSentence\"\n }, l({\n direction: \"right\"\n }, (x ? this._renderGiftSuggestion(z, w, x) : this._renderGiftLink(z, w)), h({\n size: \"small\",\n onClick: function() {\n var aa = this.refs.UFIGiftSentence.getDOMNode();\n s.remove(aa);\n this._requestClose();\n }.bind(this)\n }))));\n },\n _renderGiftSuggestion: function(w, x, y) {\n return (q(null, o({\n src: t(\"/images/group_gifts/icons/gift_icon_red-13px.png\"),\n alt: \"invite\"\n }), n.DOM.div(null, n.DOM.span({\n className: \"fwb\"\n }, u._(\"Surprise {name} with a gift\", {\n name: x.firstName\n })), j({\n spacing: \"medium\",\n className: \"mvs\"\n }, m({\n className: \"fwb\",\n rel: \"async-post\",\n ajaxify: w,\n href: {\n url: \"#\"\n }\n }, o({\n className: \"UFIGiftProductImg\",\n src: y.giftproductimgsrc,\n alt: \"product image\"\n })), k({\n alignv: \"middle\",\n height: 79\n }, n.DOM.p({\n className: \"mvs\"\n }, m({\n className: \"fwb\",\n rel: \"async-post\",\n ajaxify: w,\n href: {\n url: \"#\"\n }\n }, y.giftproductname)), n.DOM.p({\n className: \"mvs fcg\"\n }, y.giftproductpricerange), n.DOM.p({\n className: \"mvs\"\n }, m({\n rel: \"async-post\",\n ajaxify: w,\n href: {\n url: \"#\"\n }\n }, \"Give This Gift\"), \" \\u00b7 \", m({\n rel: \"async-post\",\n ajaxify: this._getURI().toString(),\n href: {\n url: \"#\"\n }\n }, \"See All Gifts\")))))));\n },\n _renderGiftLink: function(w, x) {\n return (q(null, m({\n className: \"UFIGiftIcon\",\n tabIndex: \"-1\",\n href: {\n url: \"#\"\n },\n rel: \"async-post\",\n ajaxify: w\n }, o({\n src: t(\"/images/group_gifts/icons/gift_icon_red-13px.png\"),\n alt: \"invite\"\n })), m({\n rel: \"async-post\",\n href: {\n url: \"#\"\n },\n ajaxify: w\n }, u._(\"Surprise {name} with a gift\", {\n name: x.firstName\n }))));\n },\n _log: function() {\n var w = this.props.giftdata, x = {\n opportunity_id: this.props.contextArgs.ftentidentifier,\n sender_id: this.props.sender.id,\n recipient_id: this.props.recipient.id,\n link_description: \"UFIGiftSentence\",\n product_id: (w ? w.giftproductid : null),\n custom: {\n gift_occasion: this.props.contextArgs.giftoccasion,\n ftentidentifier: this.props.contextArgs.ftentidentifier\n }\n };\n i.send([x,], this._entry_point);\n },\n _getURI: function(w) {\n return r(\"/ajax/gifts/send\").addQueryData({\n gift_occasion: this.props.contextArgs.giftoccasion,\n recipient_id: this.props.recipient.id,\n entry_point: this._entry_point,\n product_id: w\n });\n },\n _requestClose: function() {\n var w = r(\"/ajax/gifts/moments/close/\");\n new g().setMethod(\"POST\").setReadOnly(false).setURI(w).setData({\n action: \"hide\",\n data: JSON.stringify({\n type: \"detected_moment\",\n friend_id: this.props.recipient.id,\n ftentidentifier: this.props.contextArgs.ftentidentifier\n })\n }).send();\n }\n });\n e.exports = v;\n});\n__d(\"UFILikeSentenceText.react\", [\"HovercardLinkInterpolator\",\"ProfileBrowserLink\",\"ProfileBrowserTypes\",\"React\",\"TextWithEntities.react\",\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"HovercardLinkInterpolator\"), h = b(\"ProfileBrowserLink\"), i = b(\"ProfileBrowserTypes\"), j = b(\"React\"), k = b(\"TextWithEntities.react\"), l = b(\"URI\");\n function m(p, q, r, s) {\n if ((s.count != null)) {\n var t = i.LIKES, u = {\n id: p.targetfbid\n };\n return (j.DOM.a({\n href: h.constructPageURI(t, u).toString(),\n target: \"_blank\"\n }, r));\n }\n else return g(r, s, \"_blank\", null, \"ufi\")\n ;\n };\n function n(p, q, r, s) {\n if ((s.count != null)) {\n var t = i.LIKES, u = {\n id: p.targetfbid\n }, v = [];\n for (var w = 0; (w < q.length); w++) {\n if (!q[w].count) {\n v.push(q[w].entities[0].id);\n };\n };\n var x = new l(\"/ajax/like/tooltip.php\").setQueryData({\n comment_fbid: p.targetfbid,\n comment_from: p.actorforpost,\n seen_user_fbids: (v.length ? v : true)\n });\n return (j.DOM.a({\n rel: \"dialog\",\n ajaxify: h.constructDialogURI(t, u).toString(),\n href: h.constructPageURI(t, u).toString(),\n \"data-hover\": \"tooltip\",\n \"data-tooltip-alignh\": \"center\",\n \"data-tooltip-uri\": x.toString()\n }, r));\n }\n else return g(r, s, null, null, \"ufi\")\n ;\n };\n var o = j.createClass({\n displayName: \"UFILikeSentenceText\",\n render: function() {\n var p = this.props.feedback, q = this.props.likeSentenceData, r;\n if (this.props.contextArgs.embedded) {\n r = m;\n }\n else r = n;\n ;\n r = r.bind(null, p, q.ranges);\n return (k({\n interpolator: r,\n ranges: q.ranges,\n aggregatedRanges: q.aggregatedranges,\n text: q.text\n }));\n }\n });\n e.exports = o;\n});\n__d(\"UFILikeSentence.react\", [\"Bootloader\",\"LeftRight.react\",\"ProfileBrowserLink\",\"ProfileBrowserTypes\",\"React\",\"UFIClassNames\",\"UFIImageBlock.react\",\"UFILikeSentenceText.react\",\"URI\",\"cx\",\"joinClasses\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Bootloader\"), h = b(\"LeftRight.react\"), i = b(\"ProfileBrowserLink\"), j = b(\"ProfileBrowserTypes\"), k = b(\"React\"), l = b(\"UFIClassNames\"), m = b(\"UFIImageBlock.react\"), n = b(\"UFILikeSentenceText.react\"), o = b(\"URI\"), p = b(\"cx\"), q = b(\"joinClasses\"), r = b(\"tx\"), s = k.createClass({\n displayName: \"UFILikeSentence\",\n getInitialState: function() {\n return {\n selectorModule: null,\n bootloadedSelectorModule: false\n };\n },\n componentWillMount: function() {\n this._bootloadSelectorModule(this.props);\n },\n componentWillReceiveProps: function(t) {\n this._bootloadSelectorModule(t);\n },\n _bootloadSelectorModule: function(t) {\n if ((t.showOrderingModeSelector && !this.state.bootloadedSelectorModule)) {\n var u = function(v) {\n this.setState({\n selectorModule: v\n });\n }.bind(this);\n if (t.contextArgs.entstream) {\n g.loadModules([\"UFIEntStreamOrderingModeSelector.react\",], u);\n }\n else g.loadModules([\"UFIOrderingModeSelector.react\",], u);\n ;\n this.setState({\n bootloadedSelectorModule: true\n });\n }\n ;\n },\n render: function() {\n var t = this.props.feedback, u = t.likesentences.current, v = this.props.contextArgs.entstream, w = q(l.ROW, (t.likesentences.isunseen ? l.UNSEEN_ITEM : \"\"), ((((\"UFILikeSentence\") + ((this.props.isFirstComponent ? (\" \" + \"UFIFirstComponent\") : \"\"))) + ((this.props.isLastComponent ? (\" \" + \"UFILastComponent\") : \"\"))))), x = null, y = null;\n if (u.text) {\n y = k.DOM.div({\n className: \"UFILikeSentenceText\"\n }, n({\n contextArgs: this.props.contextArgs,\n feedback: t,\n likeSentenceData: u\n }));\n };\n if ((y && !v)) {\n x = k.DOM.i({\n className: \"UFILikeIcon\"\n });\n if ((t.viewercanlike && !t.hasviewerliked)) {\n x = k.DOM.a({\n className: \"UFILikeThumb\",\n href: \"#\",\n tabIndex: \"-1\",\n title: \"Like this\",\n onClick: this.props.onTargetLikeToggle\n }, x);\n };\n }\n ;\n var z = y, aa = null;\n if (((t.seencount > 0) && !v)) {\n var ba = j.GROUP_MESSAGE_VIEWERS, ca = {\n id: t.targetfbid\n }, da = i.constructDialogURI(ba, ca), ea = i.constructPageURI(ba, ca), fa = new o(\"/ajax/ufi/seen_tooltip.php\").setQueryData({\n ft_ent_identifier: t.entidentifier,\n displayed_count: t.seencount\n }), ga;\n if (t.seenbyall) {\n ga = \"Seen by everyone\";\n }\n else ga = ((t.seencount == 1) ? \"Seen by 1\" : r._(\"Seen by {count}\", {\n count: t.seencount\n }));\n ;\n aa = k.DOM.a({\n rel: \"dialog\",\n ajaxify: da.toString(),\n href: ea.toString(),\n tabindex: \"-1\",\n \"data-hover\": \"tooltip\",\n \"data-tooltip-alignh\": \"left\",\n \"data-tooltip-uri\": fa.toString(),\n className: (((\"UFISeenCount\") + ((!!u.text ? (\" \" + \"UFISeenCountRight\") : \"\"))))\n }, k.DOM.span({\n className: \"UFISeenCountIcon\"\n }), ga);\n }\n else if ((this.props.showOrderingModeSelector && this.state.selectorModule)) {\n var ha = this.state.selectorModule;\n aa = ha({\n currentOrderingMode: this.props.orderingMode,\n entstream: v,\n orderingmodes: t.orderingmodes,\n onOrderChanged: this.props.onOrderingModeChange\n });\n if (!z) {\n z = k.DOM.div(null);\n };\n }\n \n ;\n var ia = null;\n if ((x && y)) {\n ia = m(null, x, y, aa);\n }\n else if (z) {\n ia = h(null, z, aa);\n }\n else ia = aa;\n \n ;\n return (k.DOM.li({\n className: w\n }, ia));\n }\n });\n e.exports = s;\n});\n__d(\"UFIPager.react\", [\"LeftRight.react\",\"React\",\"UFIClassNames\",\"UFIImageBlock.react\",\"cx\",\"joinClasses\",], function(a, b, c, d, e, f) {\n var g = b(\"LeftRight.react\"), h = b(\"React\"), i = b(\"UFIClassNames\"), j = b(\"UFIImageBlock.react\"), k = b(\"cx\"), l = b(\"joinClasses\"), m = h.createClass({\n displayName: \"UFIPager\",\n onPagerClick: function(n) {\n ((!this.props.isLoading && this.props.onPagerClick) && this.props.onPagerClick());\n n.nativeEvent.prevent();\n },\n render: function() {\n var n = this.onPagerClick, o = ((this.props.isLoading ? \"ufiPagerLoading\" : \"\")), p = l(i.ROW, (this.props.isUnseen ? i.UNSEEN_ITEM : \"\"), ((((((\"UFIPagerRow\") + ((this.props.isFirstCommentComponent ? (\" \" + \"UFIFirstCommentComponent\") : \"\"))) + ((this.props.isLastCommentComponent ? (\" \" + \"UFILastCommentComponent\") : \"\"))) + ((this.props.isFirstComponent ? (\" \" + \"UFIFirstComponent\") : \"\"))) + ((this.props.isLastComponent ? (\" \" + \"UFILastComponent\") : \"\"))))), q = h.DOM.a({\n className: \"UFIPagerLink\",\n onClick: n,\n href: \"#\",\n role: \"button\"\n }, h.DOM.span({\n className: o\n }, this.props.pagerLabel)), r = (((\"fcg\") + ((\" \" + \"UFIPagerCount\")))), s = h.DOM.span({\n className: r\n }, this.props.countSentence), t;\n if (this.props.contextArgs.entstream) {\n t = (g({\n direction: g.DIRECTION.right\n }, q, s));\n }\n else t = (j(null, h.DOM.a({\n className: \"UFIPagerIcon\",\n onClick: n,\n href: \"#\",\n role: \"button\"\n }), q, s));\n ;\n return (h.DOM.li({\n className: p,\n \"data-ft\": this.props[\"data-ft\"]\n }, t));\n }\n });\n e.exports = m;\n});\n__d(\"UFIReplySocialSentence.react\", [\"LiveTimer\",\"React\",\"Timestamp.react\",\"UFIClassNames\",\"UFIConstants\",\"UFIImageBlock.react\",\"cx\",\"joinClasses\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"LiveTimer\"), h = b(\"React\"), i = b(\"Timestamp.react\"), j = b(\"UFIClassNames\"), k = b(\"UFIConstants\"), l = b(\"UFIImageBlock.react\"), m = b(\"cx\"), n = b(\"joinClasses\"), o = b(\"tx\"), p = \" \\u00b7 \", q = 43200, r = h.createClass({\n displayName: \"UFIReplySocialSentence\",\n render: function() {\n var s = ((this.props.isLoading ? \"UFIReplySocialSentenceLoading\" : \"\")), t = n(j.ROW, ((((\"UFIReplySocialSentenceRow\") + ((this.props.isFirstComponent ? (\" \" + \"UFIFirstComponent\") : \"\"))) + ((this.props.isLastComponent ? (\" \" + \"UFILastComponent\") : \"\"))))), u, v;\n if (this.props.isExpanded) {\n u = ((this.props.replies > 1) ? o._(\"Hide {count} Replies\", {\n count: this.props.replies\n }) : \"Hide 1 Reply\");\n }\n else {\n u = ((this.props.replies > 1) ? o._(\"{count} Replies\", {\n count: this.props.replies\n }) : \"1 Reply\");\n if (this.props.timestamp) {\n var w = ((g.getApproximateServerTime() / 1000) - this.props.timestamp.time);\n if (((w < q) || (this.props.orderingMode == k.UFICommentOrderingMode.RECENT_ACTIVITY))) {\n v = h.DOM.span({\n className: \"fcg\"\n }, p, i({\n time: this.props.timestamp.time,\n text: this.props.timestamp.text,\n verbose: this.props.timestamp.verbose\n }));\n };\n }\n ;\n }\n ;\n var x = Object.keys(this.props.authors), y = (x.length && !this.props.isExpanded), z, aa;\n if (y) {\n var ba = this.props.authors[x[0]];\n z = h.DOM.img({\n alt: \"\",\n src: ba.thumbSrc,\n className: j.ACTOR_IMAGE\n });\n aa = [o._(\"{author} replied\", {\n author: ba.name\n }),p,u,];\n }\n else {\n z = h.DOM.i({\n className: ((((!this.props.isExpanded ? \"UFIPagerIcon\" : \"\")) + ((this.props.isExpanded ? (\" \" + \"UFICollapseIcon\") : \"\"))))\n });\n aa = u;\n }\n ;\n return (h.DOM.li({\n className: t,\n \"data-ft\": this.props[\"data-ft\"]\n }, h.DOM.a({\n className: \"UFICommentLink\",\n onClick: this.props.onClick,\n href: \"#\",\n role: \"button\"\n }, l(null, h.DOM.div({\n className: ((y ? \"UFIReplyActorPhotoWrapper\" : \"\"))\n }, z), h.DOM.span({\n className: s\n }, h.DOM.span({\n className: \"UFIReplySocialSentenceLinkText\"\n }, aa), v)))));\n }\n });\n e.exports = r;\n});\n__d(\"UFIShareRow.react\", [\"NumberFormat\",\"React\",\"UFIClassNames\",\"UFIImageBlock.react\",\"URI\",\"cx\",\"joinClasses\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"NumberFormat\"), h = b(\"React\"), i = b(\"UFIClassNames\"), j = b(\"UFIImageBlock.react\"), k = b(\"URI\"), l = b(\"cx\"), m = b(\"joinClasses\"), n = b(\"tx\"), o = h.createClass({\n displayName: \"UFIShareRow\",\n render: function() {\n var p = new k(\"/ajax/shares/view\").setQueryData({\n target_fbid: this.props.targetID\n }), q = new k(\"/shares/view\").setSubdomain(\"www\").setQueryData({\n id: this.props.targetID\n }), r;\n if ((this.props.shareCount > 1)) {\n var s = g.formatIntegerWithDelimiter(this.props.shareCount, (this.props.contextArgs.numberdelimiter || \",\"));\n r = n._(\"{count} shares\", {\n count: s\n });\n }\n else r = \"1 share\";\n ;\n var t = m(i.ROW, ((((this.props.isFirstComponent ? \"UFIFirstComponent\" : \"\")) + ((this.props.isLastComponent ? (\" \" + \"UFILastComponent\") : \"\")))));\n return (h.DOM.li({\n className: t\n }, j(null, h.DOM.a({\n className: \"UFIShareIcon\",\n rel: \"dialog\",\n ajaxify: p.toString(),\n href: q.toString()\n }), h.DOM.a({\n className: \"UFIShareLink\",\n rel: \"dialog\",\n ajaxify: p.toString(),\n href: q.toString()\n }, r))));\n }\n });\n e.exports = o;\n});\n__d(\"UFISpamPlaceholder.react\", [\"React\",\"UFIClassNames\",\"cx\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"UFIClassNames\"), i = b(\"cx\"), j = b(\"tx\"), k = g.createClass({\n displayName: \"UFISpamPlaceholder\",\n render: function() {\n var l = (((\"UFISpamCommentWrapper\") + ((this.props.isLoading ? (\" \" + \"UFISpamCommentLoading\") : \"\"))));\n return (g.DOM.li({\n className: h.ROW\n }, g.DOM.a({\n href: \"#\",\n role: \"button\",\n className: \"UFISpamCommentLink\",\n onClick: this.props.onClick\n }, g.DOM.span({\n \"data-hover\": \"tooltip\",\n \"data-tooltip-alignh\": \"center\",\n \"aria-label\": j._(\"{count} hidden\", {\n count: this.props.numHidden\n }),\n className: l\n }, g.DOM.i({\n className: \"placeholderIcon\"\n })))));\n }\n });\n e.exports = k;\n});\n__d(\"UFI.react\", [\"NumberFormat\",\"React\",\"LegacyScrollableArea.react\",\"TrackingNodes\",\"UFIAddCommentController\",\"UFIAddCommentLink.react\",\"UFIComment.react\",\"UFIConstants\",\"UFIContainer.react\",\"UFIGiftSentence.react\",\"UFIInstanceState\",\"UFILikeSentence.react\",\"UFIPager.react\",\"UFIReplySocialSentence.react\",\"UFIShareRow.react\",\"UFISpamPlaceholder.react\",\"copyProperties\",\"isEmpty\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"NumberFormat\"), h = b(\"React\"), i = b(\"LegacyScrollableArea.react\"), j = b(\"TrackingNodes\"), k = b(\"UFIAddCommentController\"), l = b(\"UFIAddCommentLink.react\"), m = b(\"UFIComment.react\"), n = b(\"UFIConstants\"), o = b(\"UFIContainer.react\"), p = b(\"UFIGiftSentence.react\"), q = b(\"UFIInstanceState\"), r = b(\"UFILikeSentence.react\"), s = b(\"UFIPager.react\"), t = b(\"UFIReplySocialSentence.react\"), u = b(\"UFIShareRow.react\"), v = b(\"UFISpamPlaceholder.react\"), w = b(\"copyProperties\"), x = b(\"isEmpty\"), y = b(\"tx\"), z = h.createClass({\n displayName: \"UFI\",\n getInitialState: function() {\n return {\n requestRanges: w({\n }, this.props.availableRanges),\n instanceShowRepliesMap: {\n },\n instanceShowReplySocialSentenceMap: {\n },\n loadingSpamIDs: {\n },\n isActiveLoading: false,\n hasPagedToplevel: false\n };\n },\n componentWillReceiveProps: function(aa) {\n if (this.state.isActiveLoading) {\n var ba = this.props.availableRanges[this.props.id], ca = aa.availableRanges[this.props.id];\n if (((ba.offset != ca.offset) || (ba.length != ca.length))) {\n var da = (((ca.offset < ba.offset)) ? 0 : ba.length);\n if ((da < aa.availableComments.length)) {\n var ea = aa.availableComments[da].ufiinstanceid;\n q.updateState(ea, \"autofocus\", true);\n }\n ;\n }\n ;\n this.setState({\n isActiveLoading: false\n });\n }\n ;\n if ((aa.orderingMode != this.props.orderingMode)) {\n this.setState({\n requestRanges: w({\n }, aa.availableRanges)\n });\n };\n },\n render: function() {\n var aa = this.props, ba = aa.feedback, ca = aa.contextArgs, da = (aa.source != n.UFIFeedbackSourceType.ADS), ea = (ba.orderingmodes && (aa.commentCounts[aa.id] >= n.minCommentsForOrderingModeSelector)), fa = ((((!x(ba.likesentences.current) || (((ba.seencount > 0) && !ca.entstream))) || ea)) && da), ga = null;\n if (fa) {\n ga = r({\n contextArgs: ca,\n feedback: ba,\n onTargetLikeToggle: aa.onTargetLikeToggle,\n onOrderingModeChange: aa.onOrderingModeChange,\n orderingMode: aa.orderingMode,\n showOrderingModeSelector: ea\n });\n };\n var ha = null;\n if (((aa.feedback.hasviewerliked && this._shouldShowGiftSentence()) && !ca.embedded)) {\n ha = p({\n contextArgs: ca,\n recipient: aa.giftRecipient,\n sender: aa.authorProfiles[ba.actorforpost],\n giftdata: aa.feedback.giftdata\n });\n };\n var ia = ((aa.availableComments && aa.availableComments.length) && da), ja = null;\n if (ia) {\n ja = this.renderCommentMap(aa.availableComments, aa.availableRanges[aa.id].offset);\n };\n var ka = null, la = ba.cancomment, ma = (((la && ca.showaddcomment) && ba.actorforpost) && !ca.embedded);\n if (ma) {\n var na = new k(null, aa.id, null, ca), oa = aa.authorProfiles[ba.actorforpost];\n ka = na.renderAddComment(oa, ba.ownerid, ba.mentionsdatasource, ba.showsendonentertip, \"toplevelcomposer\", null, ba.allowphotoattachments, ba.subtitle);\n }\n ;\n var pa = null, qa = ((ca.showshares && ba.sharecount) && da);\n if (((qa && !ca.entstream) && !ca.embedded)) {\n pa = u({\n targetID: ba.targetfbid,\n shareCount: ba.sharecount,\n contextArgs: ca\n });\n };\n var ra = (((fa || qa) || ia) || la), sa = this.renderPagers();\n this.applyToUFIComponents([sa.topPager,], ja, [sa.bottomPager,], {\n isFirstCommentComponent: true\n }, {\n isLastCommentComponent: true\n });\n var ta = (ba.commentboxhoisted ? ka : null), ua = (ba.commentboxhoisted ? null : ka), va = null;\n if ((((ma && ba.hasaddcommentlink) && this.state.hasPagedToplevel) && !ca.embedded)) {\n va = l({\n onClick: this.onComment\n });\n };\n this.applyToUFIComponents([ga,pa,ta,sa.topPager,], ja, [sa.bottomPager,ua,va,], {\n isFirstComponent: true\n }, {\n isLastComponent: true\n });\n var wa = [sa.topPager,ja,sa.bottomPager,];\n if (ca.embedded) {\n wa = null;\n }\n else if ((ca.scrollcomments && ca.scrollwidth)) {\n wa = h.DOM.li(null, i({\n width: ca.scrollwidth\n }, h.DOM.ul(null, wa)));\n }\n ;\n return (o({\n hasNub: (ca.shownub && ra)\n }, ga, ha, pa, ta, wa, ua, va));\n },\n applyToUFIComponents: function(aa, ba, ca, da, ea) {\n var fa = Object.keys((ba || {\n })).map(function(ha) {\n return ba[ha];\n }), ga = [].concat(aa, fa, ca);\n this._applyToFirstComponent(ga, da);\n ga.reverse();\n this._applyToFirstComponent(ga, ea);\n },\n _applyToFirstComponent: function(aa, ba) {\n for (var ca = 0; (ca < ((aa || [])).length); ca++) {\n if (aa[ca]) {\n w(aa[ca].props, ba);\n return;\n }\n ;\n };\n },\n renderCommentMap: function(aa, ba) {\n var ca = this.props, da = {\n }, ea = aa.length;\n if (!ea) {\n return da\n };\n var fa = aa[0].parentcommentid, ga = [], ha = function() {\n if ((ga.length > 0)) {\n var qa = function(ra, sa) {\n this.state.loadingSpamIDs[ra[0]] = true;\n this.forceUpdate();\n ca.onSpamFetch(ra, sa);\n }.bind(this, ga, fa);\n da[(\"spam\" + ga[0])] = v({\n onClick: qa,\n numHidden: ga.length,\n isLoading: !!this.state.loadingSpamIDs[ga[0]]\n });\n ga = [];\n }\n ;\n }.bind(this), ia = ca.instanceid, ja = q.getKeyForInstance(ia, \"editcommentid\"), ka = !!aa[0].parentcommentid, la = false;\n for (var ma = 0; (ma < ea); ma++) {\n if ((aa[ma].status == n.UFIStatus.SPAM)) {\n ga.push(aa[ma].id);\n }\n else {\n ha();\n var na = Math.max(((ca.loggingOffset - ma) - ba), 0), oa = aa[ma], pa;\n if ((oa.id == ja)) {\n pa = this.renderEditCommentBox(oa);\n }\n else {\n pa = this.renderComment(oa, na);\n pa.props.isFirst = (ma === 0);\n pa.props.isLast = (ma === (ea - 1));\n if (!ka) {\n pa.props.showReplyLink = true;\n };\n }\n ;\n da[(\"comment\" + oa.id)] = pa;\n if (((((ca.feedback.actorforpost === oa.author) && !la) && !ca.feedback.hasviewerliked) && this._shouldShowGiftSentence())) {\n da[(\"gift\" + oa.id)] = p({\n contextArgs: ca.contextArgs,\n recipient: ca.giftRecipient,\n sender: ca.authorProfiles[ca.feedback.actorforpost],\n giftdata: ca.feedback.giftdata\n });\n la = true;\n }\n ;\n if ((oa.status !== n.UFIStatus.DELETED)) {\n da[(\"replies\" + oa.id)] = this.renderReplyContainer(oa);\n };\n }\n ;\n };\n ha();\n return da;\n },\n _shouldShowGiftSentence: function() {\n var aa = this.props;\n return (aa.contextArgs.giftoccasion && !aa.contextArgs.entstream);\n },\n renderReplyContainer: function(aa) {\n var ba = this.props, ca = {\n };\n for (var da = 0; (da < ((aa.replyauthors || [])).length); da++) {\n var ea = ba.authorProfiles[aa.replyauthors[da]];\n if (ea) {\n ca[ea.id] = ea;\n };\n };\n var fa = ((ba.repliesMap && ba.repliesMap[aa.id]) && this._shouldShowCommentReplies(aa.id)), ga, ha = Math.max((aa.replycount - aa.spamreplycount), 0);\n if ((ha && this._shouldShowReplySocialSentence(aa.id))) {\n var ia = (this._shouldShowCommentReplies(aa.id) && ((this.isLoadingPrev(aa.id) || this.isLoadingNext(aa.id))));\n ga = t({\n authors: ca,\n replies: ha,\n timestamp: aa.recentreplytimestamp,\n onClick: this.onToggleReplies.bind(this, aa),\n isLoading: ia,\n isExpanded: fa,\n orderingMode: this.props.orderingMode\n });\n }\n ;\n var ja, ka, la, ma;\n if (fa) {\n var na = this.renderPagers(aa.id);\n ja = na.topPager;\n la = na.bottomPager;\n ka = this.renderCommentMap(ba.repliesMap[aa.id], ba.availableRanges[aa.id].offset);\n var oa = Object.keys(ka);\n for (var pa = 0; (pa < oa.length); pa++) {\n var qa = ka[oa[pa]];\n if (qa) {\n qa.props.hasPartialBorder = (pa !== 0);\n };\n };\n if (ba.feedback.cancomment) {\n var ra = false, sa = Object.keys(ka);\n for (var da = (sa.length - 1); (da >= 0); da--) {\n var ta = sa[da];\n if ((ta && ka[ta])) {\n ra = ka[ta].props.isAuthorReply;\n break;\n }\n ;\n };\n ma = this.renderReplyComposer(aa, !ra);\n }\n ;\n }\n ;\n var ua;\n if (((((ga || ja) || ka) || la) || ma)) {\n this.applyToUFIComponents([ga,ja,], ka, [la,ma,], {\n isFirstComponent: true\n }, {\n isLastComponent: true\n });\n var va = (aa.status === n.UFIStatus.LIVE_DELETED);\n ua = o({\n isParentLiveDeleted: va,\n isReplyList: true\n }, ga, ja, ka, la, ma);\n }\n ;\n return ua;\n },\n renderReplyComposer: function(aa, ba) {\n var ca = this.props;\n return (new k(null, ca.id, aa.id, ca.contextArgs)).renderAddComment(ca.authorProfiles[ca.feedback.actorforpost], ca.feedback.ownerid, ca.feedback.mentionsdatasource, false, (\"replycomposer-\" + aa.id), ba, ca.feedback.allowphotoattachments);\n },\n renderEditCommentBox: function(aa) {\n var ba = new k(null, this.props.id, null, {\n }), ca = ba.renderEditComment(this.props.authorProfiles[this.props.feedback.actorforpost], this.props.feedback.ownerid, aa.id, this.props.feedback.mentionsdatasource, this.props.onEditAttempt.bind(null, aa), this.props.onCancelEdit, this.props.feedback.allowphotoattachments);\n return ca;\n },\n _shouldShowCommentReplies: function(aa) {\n if ((aa in this.state.instanceShowRepliesMap)) {\n return this.state.instanceShowRepliesMap[aa];\n }\n else if ((aa in this.props.showRepliesMap)) {\n return this.props.showRepliesMap[aa]\n }\n ;\n return false;\n },\n _shouldShowReplySocialSentence: function(aa) {\n if ((aa in this.state.instanceShowReplySocialSentenceMap)) {\n return this.state.instanceShowReplySocialSentenceMap[aa];\n }\n else if ((aa in this.props.showReplySocialSentenceMap)) {\n return this.props.showReplySocialSentenceMap[aa]\n }\n ;\n return false;\n },\n renderComment: function(aa, ba) {\n var ca = this.props, da = ca.feedback, ea = (da.actorforpost === aa.author), fa = q.getKeyForInstance(this.props.instanceid, \"locallycomposed\"), ga = (aa.islocal || (fa && fa[aa.id])), ha = (da.showremovemenu || ((da.viewerid === aa.author))), ia = ((da.canremoveall && da.isownerpage) && !ea), ja = (ca.source != n.UFIFeedbackSourceType.INTERN), ka = j.getTrackingInfo(j.types.COMMENT, ba), la = !!aa.parentcommentid, ma = this._shouldShowCommentReplies(aa.id), na = !!aa.isfeatured;\n return (m({\n comment: aa,\n authorProfiles: this.props.authorProfiles,\n viewerIsAuthor: ea,\n feedback: da,\n \"data-ft\": ka,\n contextArgs: this.props.contextArgs,\n hideAsSpamForPageAdmin: ia,\n isLocallyComposed: ga,\n isReply: la,\n isFeatured: na,\n showPermalink: ja,\n showRemoveReportMenu: ha,\n showReplies: ma,\n onCommentLikeToggle: ca.onCommentLikeToggle.bind(null, aa),\n onCommentReply: this.onCommentReply.bind(this, aa),\n onCommentTranslate: ca.onCommentTranslate.bind(null, aa),\n onEdit: ca.onCommentEdit.bind(null, aa),\n onHideAsSpam: ca.onCommentHideAsSpam.bind(null, aa),\n onInlineBan: ca.onCommentInlineBan.bind(null, aa),\n onMarkAsNotSpam: ca.onCommentMarkAsNotSpam.bind(null, aa),\n onOneClickRemove: ca.onCommentOneClickRemove.bind(null, aa),\n onPreviewRemove: ca.onPreviewRemove.bind(null, aa),\n onRemove: ca.onCommentRemove.bind(null, aa),\n onRetrySubmit: ca.onRetrySubmit.bind(null, aa),\n onUndoInlineBan: ca.onCommentUndoInlineBan.bind(null, aa),\n onUndoOneClickRemove: ca.onCommentUndoOneClickRemove.bind(null, aa)\n }));\n },\n _updateRepliesState: function(aa, ba, ca) {\n var da = this.state.instanceShowRepliesMap;\n da[aa] = ba;\n var ea = this.state.instanceShowReplySocialSentenceMap;\n ea[aa] = ca;\n this.setState({\n instanceShowRepliesMap: da,\n instanceShowReplySocialSentenceMap: ea\n });\n },\n onToggleReplies: function(aa) {\n var ba = !this._shouldShowCommentReplies(aa.id), ca = (this._shouldShowReplySocialSentence(aa.id) && !((ba && (aa.replycount <= this.props.replySocialSentenceMaxReplies))));\n this._updateRepliesState(aa.id, ba, ca);\n var da = this.props.availableRanges[aa.id].length;\n if ((aa.id in this.state.requestRanges)) {\n da = this.state.requestRanges[aa.id].length;\n };\n da -= this.props.deletedCounts[aa.id];\n if ((ba && (da === 0))) {\n var ea = this.props.commentCounts[aa.id], fa = Math.min(ea, this.props.pageSize);\n this.onPage(aa.id, {\n offset: (ea - fa),\n length: fa\n });\n }\n ;\n },\n onPage: function(aa, ba) {\n var ca = this.state.requestRanges;\n ca[aa] = ba;\n var da = (this.state.hasPagedToplevel || (aa === this.props.id));\n this.setState({\n requestRanges: ca,\n isActiveLoading: true,\n hasPagedToplevel: da\n });\n this.props.onChangeRange(aa, ba);\n },\n isLoadingPrev: function(aa) {\n var ba = this.props;\n aa = (aa || ba.id);\n if (!this.state.requestRanges[aa]) {\n this.state.requestRanges[aa] = ba.availableRanges[aa];\n };\n var ca = this.state.requestRanges[aa].offset, da = ba.availableRanges[aa].offset;\n return (ca < da);\n },\n isLoadingNext: function(aa) {\n var ba = this.props;\n aa = (aa || ba.id);\n if (!this.state.requestRanges[aa]) {\n this.state.requestRanges[aa] = ba.availableRanges[aa];\n };\n var ca = this.state.requestRanges[aa].offset, da = this.state.requestRanges[aa].length, ea = ba.availableRanges[aa].offset, fa = ba.availableRanges[aa].length;\n return ((ca + da) > (ea + fa));\n },\n renderPagers: function(aa) {\n var ba = this.props;\n aa = (aa || ba.id);\n var ca = ba.availableRanges[aa].offset, da = ba.availableRanges[aa].length, ea = ba.deletedCounts[aa], fa = ba.commentCounts[aa], ga = (fa - ea), ha = (da - ea), ia = (ba.contextArgs.numberdelimiter || \",\"), ja = (aa !== ba.id), ka = {\n topPager: null,\n bottomPager: null\n };\n if ((ba.source == n.UFIFeedbackSourceType.ADS)) {\n return ka\n };\n var la = this.isLoadingPrev(aa), ma = this.isLoadingNext(aa);\n if ((da == fa)) {\n return ka\n };\n var na = (((ca + da)) == fa);\n if (((((fa < ba.pageSize) && na)) || (ha === 0))) {\n var oa = Math.min(fa, ba.pageSize), pa = this.onPage.bind(this, aa, {\n offset: (fa - oa),\n length: oa\n }), qa, ra;\n if ((ha === 0)) {\n if ((ga == 1)) {\n qa = (ja ? \"View 1 reply\" : \"View 1 comment\");\n }\n else {\n ra = g.formatIntegerWithDelimiter(ga, ia);\n qa = (ja ? y._(\"View all {count} replies\", {\n count: ra\n }) : y._(\"View all {count} comments\", {\n count: ra\n }));\n }\n ;\n }\n else if (((ga - ha) == 1)) {\n qa = (ja ? \"View 1 more reply\" : \"View 1 more comment\");\n }\n else {\n ra = g.formatIntegerWithDelimiter((ga - ha), ia);\n qa = (ja ? y._(\"View {count} more replies\", {\n count: ra\n }) : y._(\"View {count} more comments\", {\n count: ra\n }));\n }\n \n ;\n var sa = j.getTrackingInfo(j.types.VIEW_ALL_COMMENTS), ta = s({\n contextArgs: ba.contextArgs,\n isUnseen: ba.feedback.hasunseencollapsed,\n isLoading: la,\n pagerLabel: qa,\n onPagerClick: pa,\n \"data-ft\": sa\n });\n if ((ba.feedback.isranked && !ja)) {\n ka.bottomPager = ta;\n }\n else ka.topPager = ta;\n ;\n return ka;\n }\n ;\n if ((ca > 0)) {\n var ua = Math.max((ca - ba.pageSize), 0), oa = ((ca + da) - ua), va = this.onPage.bind(this, aa, {\n offset: ua,\n length: oa\n }), wa = g.formatIntegerWithDelimiter(ha, ia), xa = g.formatIntegerWithDelimiter(ga, ia), ya = y._(\"{countshown} of {totalcount}\", {\n countshown: wa,\n totalcount: xa\n });\n if ((ba.feedback.isranked && !ja)) {\n ka.bottomPager = s({\n contextArgs: ba.contextArgs,\n isLoading: la,\n pagerLabel: \"View more comments\",\n onPagerClick: va,\n countSentence: ya\n });\n }\n else {\n var za = (ja ? \"View previous replies\" : \"View previous comments\");\n ka.topPager = s({\n contextArgs: ba.contextArgs,\n isLoading: la,\n pagerLabel: za,\n onPagerClick: va,\n countSentence: ya\n });\n }\n ;\n }\n ;\n if (((ca + da) < fa)) {\n var ab = Math.min((da + ba.pageSize), (fa - ca)), bb = this.onPage.bind(this, aa, {\n offset: ca,\n length: ab\n });\n if ((ba.feedback.isranked && !ja)) {\n ka.topPager = s({\n contextArgs: ba.contextArgs,\n isLoading: ma,\n pagerLabel: \"View previous comments\",\n onPagerClick: bb\n });\n }\n else {\n var cb = (ja ? \"View more replies\" : \"View more comments\");\n ka.bottomPager = s({\n contextArgs: ba.contextArgs,\n isLoading: ma,\n pagerLabel: cb,\n onPagerClick: bb\n });\n }\n ;\n }\n ;\n return ka;\n },\n onCommentReply: function(aa) {\n var ba = (aa.parentcommentid || aa.id);\n if (!this._shouldShowCommentReplies(ba)) {\n this.onToggleReplies(aa);\n };\n if ((this.refs && this.refs[(\"replycomposer-\" + ba)])) {\n this.refs[(\"replycomposer-\" + ba)].focus();\n };\n },\n onComment: function() {\n if ((this.refs && this.refs.toplevelcomposer)) {\n this.refs.toplevelcomposer.focus();\n };\n }\n });\n e.exports = z;\n});\n__d(\"onEnclosingPageletDestroy\", [\"Arbiter\",\"DOMQuery\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"DOMQuery\");\n function i(j, k) {\n var l = g.subscribe(\"pagelet/destroy\", function(m, n) {\n if (h.contains(n.root, j)) {\n l.unsubscribe();\n k();\n }\n ;\n });\n return l;\n };\n e.exports = i;\n});\n__d(\"UFIController\", [\"Arbiter\",\"Bootloader\",\"CSS\",\"DOM\",\"ImmutableObject\",\"LayerRemoveOnHide\",\"LiveTimer\",\"Parent\",\"React\",\"ReactMount\",\"ShortProfiles\",\"UFI.react\",\"UFIActionLinkController\",\"UFICentralUpdates\",\"UFIComments\",\"UFIConstants\",\"UFIFeedbackTargets\",\"UFIInstanceState\",\"UFIUserActions\",\"URI\",\"copyProperties\",\"isEmpty\",\"onEnclosingPageletDestroy\",\"tx\",\"UFICommentTemplates\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Bootloader\"), i = b(\"CSS\"), j = b(\"DOM\"), k = b(\"ImmutableObject\"), l = b(\"LayerRemoveOnHide\"), m = b(\"LiveTimer\"), n = b(\"Parent\"), o = b(\"React\"), p = b(\"ReactMount\"), q = b(\"ShortProfiles\"), r = b(\"UFI.react\"), s = b(\"UFIActionLinkController\"), t = b(\"UFICentralUpdates\"), u = b(\"UFIComments\"), v = b(\"UFIConstants\"), w = b(\"UFIFeedbackTargets\"), x = b(\"UFIInstanceState\"), y = b(\"UFIUserActions\"), z = b(\"URI\"), aa = b(\"copyProperties\"), ba = b(\"isEmpty\"), ca = b(\"onEnclosingPageletDestroy\"), da = b(\"tx\"), ea = b(\"UFICommentTemplates\"), fa = function(ia, ja, ka, la) {\n var ma = ((ia.offset + ia.length) === ja);\n return {\n offset: ia.offset,\n length: (((ma && ga(la))) ? (ka - ia.offset) : ia.length)\n };\n }, ga = function(ia) {\n return ((ia == v.UFIPayloadSourceType.USER_ACTION) || (ia == v.UFIPayloadSourceType.LIVE_SEND));\n };\n function ha(ia, ja, ka) {\n this.root = ia;\n this.id = ja.ftentidentifier;\n this.source = ja.source;\n this._ufiInstanceID = ja.instanceid;\n this._contextArgs = ja;\n this._contextArgs.rootid = this.root.id;\n this._verifiedCommentsExpanded = false;\n var la = ka.feedbacktargets[0];\n this.actionLink = new s(ia, this._contextArgs, la);\n this.orderingMode = la.defaultcommentorderingmode;\n var ma = ka.commentlists.comments[this.id][this.orderingMode];\n this.replyRanges = {\n };\n this.repliesMap = {\n };\n this.showRepliesMap = {\n };\n this.showReplySocialSentenceMap = {\n };\n this.commentcounts = {\n };\n this.commentcounts[this.id] = u.getCommentCount(this.id);\n var na = {\n }, oa = (la.orderingmodes || [{\n value: this.orderingMode\n },]);\n oa.forEach(function(sa) {\n na[sa.value] = aa({\n }, ma.range);\n });\n this.ranges = na;\n if (ka.commentlists.replies) {\n for (var pa = 0; (pa < ma.values.length); pa++) {\n var qa = ma.values[pa], ra = ka.commentlists.replies[qa];\n if (ra) {\n this.commentcounts[qa] = u.getCommentCount(qa);\n this.replyRanges[qa] = aa({\n }, ra.range);\n }\n ;\n }\n };\n this._loggingOffset = null;\n this._ufi = null;\n this.ufiCentralUpdatesSubscriptions = [t.subscribe(\"feedback-updated\", function(sa, ta) {\n var ua = ta.updates, va = ta.payloadSource;\n if (((va != v.UFIPayloadSourceType.COLLAPSED_UFI) && (this.id in ua))) {\n this.fetchAndUpdate(this.render.bind(this), va);\n };\n }.bind(this)),t.subscribe(\"feedback-id-changed\", function(sa, ta) {\n var ua = ta.updates;\n if ((this.id in ua)) {\n this.id = ua[this.id];\n };\n }.bind(this)),t.subscribe(\"instance-updated\", function(sa, ta) {\n var ua = ta.updates;\n if ((this._ufiInstanceID in ua)) {\n var va = ua[this._ufiInstanceID];\n if (va.editcommentid) {\n this.render(ta.payloadSource);\n };\n }\n ;\n }.bind(this)),t.subscribe(\"update-comment-lists\", function(sa, ta) {\n if ((ta.commentlists && ta.commentlists.replies)) {\n var ua = ta.commentlists.replies;\n for (var va in ua) {\n if (((((this.id != va) && ua[va]) && (ua[va].ftentidentifier == this.id)) && !this.replyRanges[va])) {\n this.replyRanges[va] = ua[va].range;\n };\n };\n }\n ;\n }.bind(this)),];\n this.clearPageletSubscription = ca(this.root, this._onEnclosingPageletDestroy.bind(this));\n this.clearPageSubscription = g.subscribe(\"ufi/page_cleared\", this._onDestroy.bind(this));\n t.handleUpdate(v.UFIPayloadSourceType.INITIAL_SERVER, ka);\n if (this._contextArgs.viewas) {\n this.viewasUFICleanSubscription = g.subscribe(\"pre_page_transition\", function(sa, ta) {\n if ((this._contextArgs.viewas !== z(ta.to).getQueryData(\"viewas\"))) {\n u.resetFeedbackTarget(this.id);\n };\n }.bind(this));\n };\n h.loadModules([\"ScrollAwareDOM\",], function(sa) {\n p.scrollMonitor = sa.monitor;\n });\n };\n aa(ha.prototype, {\n _getParentForm: function() {\n if (!this._form) {\n this._form = n.byTag(this.root, \"form\");\n };\n return this._form;\n },\n _onTargetLikeToggle: function(event) {\n var ia = !this.feedback.hasviewerliked;\n y.changeLike(this.id, ia, {\n source: this.source,\n target: event.target,\n rootid: this._contextArgs.rootid\n });\n event.preventDefault();\n },\n _onCommentLikeToggle: function(ia, event) {\n var ja = !ia.hasviewerliked;\n y.changeCommentLike(ia.id, ja, {\n source: this.source,\n target: event.target\n });\n },\n _onCommentEdit: function(ia) {\n x.updateState(this._ufiInstanceID, \"isediting\", true);\n x.updateState(this._ufiInstanceID, \"editcommentid\", ia.id);\n },\n _onEditAttempt: function(ia, ja, event) {\n if ((!ja.visibleValue && !ja.attachedPhoto)) {\n this._onCommentRemove(ia, event);\n }\n else y.editComment(ia.id, ja.visibleValue, ja.encodedValue, {\n source: this._contextArgs.source,\n target: event.target,\n attachedPhoto: ja.attachedPhoto\n });\n ;\n x.updateStateField(this._ufiInstanceID, \"locallycomposed\", ia.id, true);\n this._onEditReset();\n },\n _onEditReset: function() {\n x.updateState(this._ufiInstanceID, \"isediting\", false);\n x.updateState(this._ufiInstanceID, \"editcommentid\", null);\n },\n _onCommentRemove: function(ia, event) {\n var ja = ea[\":fb:ufi:hide-dialog-template\"].build();\n j.setContent(ja.getNode(\"body\"), \"Are you sure you want to delete this comment?\");\n j.setContent(ja.getNode(\"title\"), \"Delete Comment\");\n h.loadModules([\"DialogX\",], function(ka) {\n var la = new ka({\n modal: true,\n width: 465,\n addedBehaviors: [l,]\n }, ja.getRoot());\n la.subscribe(\"confirm\", function() {\n y.removeComment(ia.id, {\n source: this.source,\n oneclick: false,\n target: event.target,\n timelinelogdata: this._contextArgs.timelinelogdata\n });\n la.hide();\n }.bind(this));\n la.show();\n }.bind(this));\n },\n _onCommentOneClickRemove: function(ia, event) {\n y.removeComment(ia.id, {\n source: this.source,\n oneclick: true,\n target: event.target,\n timelinelogdata: this._contextArgs.timelinelogdata\n });\n },\n _onCommentUndoOneClickRemove: function(ia, event) {\n var ja = ((this.feedback.canremoveall && this.feedback.isownerpage) && (this.feedback.actorforpost !== this.authorProfiles[ia.author]));\n y.undoRemoveComment(ia.id, ja, {\n source: this.source,\n target: event.target\n });\n },\n _onCommentHideAsSpam: function(ia, event) {\n y.setHideAsSpam(ia.id, true, {\n source: this.source,\n target: event.target\n });\n },\n _onCommentMarkAsNotSpam: function(ia, event) {\n y.setHideAsSpam(ia.id, false, {\n source: this.source,\n target: event.target\n });\n },\n _onCommentTranslate: function(ia, event) {\n y.translateComment(ia, {\n source: this.source,\n target: event.target\n });\n },\n _onCommentInlineBanChange: function(ia, ja, event) {\n y.banUser(ia, this.feedback.ownerid, ja, {\n source: this.source,\n target: event.target\n });\n },\n _onCommentInlineBan: function(ia, event) {\n this._onCommentInlineBanChange(ia, true, event);\n },\n _onCommentUndoInlineBan: function(ia, event) {\n this._onCommentInlineBanChange(ia, false, event);\n },\n _fetchSpamComments: function(ia, ja) {\n y.fetchSpamComments(this.id, ia, ja, this._contextArgs.viewas);\n },\n _removePreview: function(ia, event) {\n y.removePreview(ia, {\n source: this.source,\n target: event.target\n });\n },\n _retrySubmit: function(ia) {\n h.loadModules([\"UFIRetryActions\",], function(ja) {\n ja.retrySubmit(ia, {\n source: this.source\n });\n }.bind(this));\n },\n _ensureCommentsExpanded: function() {\n if (this._verifiedCommentsExpanded) {\n return\n };\n var ia = n.byTag(this.root, \"form\");\n if (ia) {\n i.removeClass(ia, \"collapsed_comments\");\n this._verifiedCommentsExpanded = true;\n }\n ;\n },\n render: function(ia) {\n var ja = (this.comments.length || !ba(this.feedback.likesentences.current));\n if ((ja && ga(ia))) {\n this._ensureCommentsExpanded();\n };\n if ((this._loggingOffset === null)) {\n this._loggingOffset = ((this.ranges[this.orderingMode].offset + this.comments.length) - 1);\n };\n var ka = (this.feedback.replysocialsentencemaxreplies || -1), la = {\n };\n la[this.id] = u.getDeletedCount(this.id);\n this.comments.forEach(function(oa) {\n la[oa.id] = u.getDeletedCount(oa.id);\n });\n var ma = aa({\n }, this.replyRanges);\n ma[this.id] = this.ranges[this.orderingMode];\n ma = new k(ma);\n var na = r({\n feedback: this.feedback,\n id: this.id,\n onTargetLikeToggle: this._onTargetLikeToggle.bind(this),\n onCommentLikeToggle: this._onCommentLikeToggle.bind(this),\n onCommentRemove: this._onCommentRemove.bind(this),\n onCommentHideAsSpam: this._onCommentHideAsSpam.bind(this),\n onCommentMarkAsNotSpam: this._onCommentMarkAsNotSpam.bind(this),\n onCommentEdit: this._onCommentEdit.bind(this),\n onCommentOneClickRemove: this._onCommentOneClickRemove.bind(this),\n onCommentUndoOneClickRemove: this._onCommentUndoOneClickRemove.bind(this),\n onCommentTranslate: this._onCommentTranslate.bind(this),\n onCommentInlineBan: this._onCommentInlineBan.bind(this),\n onCommentUndoInlineBan: this._onCommentUndoInlineBan.bind(this),\n onEditAttempt: this._onEditAttempt.bind(this),\n onCancelEdit: this._onEditReset.bind(this),\n onChangeRange: this._changeRange.bind(this),\n onSpamFetch: this._fetchSpamComments.bind(this),\n onPreviewRemove: this._removePreview.bind(this),\n onRetrySubmit: this._retrySubmit.bind(this),\n onOrderingModeChange: this._onOrderingModeChange.bind(this),\n contextArgs: this._contextArgs,\n repliesMap: this.repliesMap,\n showRepliesMap: this.showRepliesMap,\n showReplySocialSentenceMap: this.showReplySocialSentenceMap,\n commentCounts: this.commentcounts,\n deletedCounts: la,\n availableComments: this.comments,\n source: this.source,\n availableRanges: ma,\n pageSize: v.defaultPageSize,\n authorProfiles: this.authorProfiles,\n instanceid: this._ufiInstanceID,\n loggingOffset: this._loggingOffset,\n replySocialSentenceMaxReplies: ka,\n giftRecipient: this._giftRecipient,\n orderingMode: this.orderingMode\n });\n this._ufi = o.renderComponent(na, this.root);\n m.updateTimeStamps();\n if (this._getParentForm()) {\n g.inform(\"ufi/changed\", {\n form: this._getParentForm()\n });\n };\n if (((ia != v.UFIPayloadSourceType.INITIAL_SERVER) && (ia != v.UFIPayloadSourceType.COLLAPSED_UFI))) {\n g.inform(\"reflow\");\n };\n },\n fetchAndUpdate: function(ia, ja) {\n w.getFeedbackTarget(this.id, function(ka) {\n var la = u.getCommentCount(this.id), ma = fa(this.ranges[this.orderingMode], this.commentcounts[this.id], la, ja);\n u.getCommentsInRange(this.id, ma, this.orderingMode, this._contextArgs.viewas, function(na) {\n var oa = [], pa = {\n }, qa = {\n };\n if (ka.actorforpost) {\n oa.push(ka.actorforpost);\n };\n for (var ra = 0; (ra < na.length); ra++) {\n if (na[ra].author) {\n oa.push(na[ra].author);\n };\n if (na[ra].socialcontext) {\n oa.push(na[ra].socialcontext.topmutualid);\n };\n if ((na[ra].replyauthors && na[ra].replyauthors.length)) {\n for (var sa = 0; (sa < na[ra].replyauthors.length); sa++) {\n oa.push(na[ra].replyauthors[sa]);;\n }\n };\n if (ka.isthreaded) {\n var ta = na[ra].id, ua = u.getCommentCount(ta), va;\n if (this.replyRanges[ta]) {\n va = fa(this.replyRanges[ta], this.commentcounts[ta], ua, ja);\n }\n else va = {\n offset: 0,\n length: Math.min(ua, 2)\n };\n ;\n pa[ta] = va;\n qa[ta] = ua;\n }\n ;\n };\n u.getRepliesInRanges(this.id, pa, function(wa) {\n for (var xa = 0; (xa < na.length); xa++) {\n var ya = na[xa].id, za = (wa[ya] || []);\n for (var ab = 0; (ab < za.length); ab++) {\n if (za[ab].author) {\n oa.push(za[ab].author);\n };\n if (za[ab].socialcontext) {\n oa.push(za[ab].socialcontext.topmutualid);\n };\n };\n };\n if (this._contextArgs.giftoccasion) {\n oa.push(ka.actorid);\n };\n q.getMulti(oa, function(bb) {\n if (this._contextArgs.giftoccasion) {\n this._giftRecipient = bb[ka.actorid];\n };\n this.authorProfiles = bb;\n this.feedback = ka;\n this.commentcounts[this.id] = la;\n this.comments = na;\n this.ranges[this.orderingMode] = ma;\n for (var cb = 0; (cb < na.length); cb++) {\n var db = na[cb].id, eb = pa[db];\n this.repliesMap[db] = wa[db];\n this.replyRanges[db] = eb;\n this.commentcounts[db] = qa[db];\n this.showRepliesMap[db] = (eb && (eb.length > 0));\n if (((this.showReplySocialSentenceMap[db] === undefined) && (qa[db] > 0))) {\n this.showReplySocialSentenceMap[db] = !this.showRepliesMap[db];\n };\n };\n ia(ja);\n if ((ja == v.UFIPayloadSourceType.ENDPOINT_COMMENT_FETCH)) {\n g.inform(\"CommentUFI.Pager\");\n };\n }.bind(this));\n }.bind(this));\n }.bind(this));\n }.bind(this));\n },\n _changeRange: function(ia, ja) {\n if ((ia == this.id)) {\n this.ranges[this.orderingMode] = ja;\n }\n else this.replyRanges[ia] = ja;\n ;\n this.fetchAndUpdate(this.render.bind(this), v.UFIPayloadSourceType.USER_ACTION);\n },\n _onEnclosingPageletDestroy: function() {\n o.unmountAndReleaseReactRootNode(this.root);\n this.ufiCentralUpdatesSubscriptions.forEach(t.unsubscribe.bind(t));\n g.unsubscribe(this.clearPageSubscription);\n (this.viewasUFICleanSubscription && g.unsubscribe(this.viewasUFICleanSubscription));\n },\n _onDestroy: function() {\n this._onEnclosingPageletDestroy();\n g.unsubscribe(this.clearPageletSubscription);\n },\n _onOrderingModeChange: function(ia) {\n this.orderingMode = ia;\n this.fetchAndUpdate(this.render.bind(this), v.UFIPayloadSourceType.USER_ACTION);\n }\n });\n e.exports = ha;\n});\n__d(\"EntstreamCollapsedUFIActions\", [\"PopupWindow\",\"React\",\"TrackingNodes\",\"URI\",\"cx\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"PopupWindow\"), h = b(\"React\"), i = b(\"TrackingNodes\"), j = b(\"URI\"), k = b(\"cx\"), l = b(\"tx\"), m = h.createClass({\n displayName: \"EntstreamCollapsedUFIActions\",\n getLikeButton: function() {\n return this.refs.likeButton.getDOMNode();\n },\n getLikeIcon: function() {\n return this.refs.likeIcon.getDOMNode();\n },\n render: function() {\n var n;\n if ((this.props.shareHref !== null)) {\n var o = i.getTrackingInfo(i.types.SHARE_LINK), p = j(this.props.shareHref), q = [h.DOM.i({\n className: \"-cx-PUBLIC-fbEntstreamCollapsedUFI__shareicon -cx-PRIVATE-fbEntstreamCollapsedUFI__icon\"\n }),\"Share\",];\n if ((p.getPath().indexOf(\"/ajax\") === 0)) {\n n = h.DOM.a({\n ajaxify: this.props.shareHref,\n className: \"-cx-PUBLIC-fbEntstreamCollapsedUFI__sharelink -cx-PUBLIC-fbEntstreamCollapsedUFI__action\",\n \"data-ft\": o,\n href: \"#\",\n rel: \"dialog\",\n title: \"Share this item\"\n }, q);\n }\n else {\n var r = function() {\n g.open(this.props.shareHref, 480, 600);\n return false;\n }.bind(this);\n n = h.DOM.a({\n className: \"-cx-PUBLIC-fbEntstreamCollapsedUFI__sharelink -cx-PUBLIC-fbEntstreamCollapsedUFI__action\",\n \"data-ft\": o,\n href: this.props.shareHref,\n onClick: r,\n target: \"_blank\",\n title: \"Share this item\"\n }, q);\n }\n ;\n }\n ;\n var s;\n if (this.props.canComment) {\n var t = \"-cx-PUBLIC-fbEntstreamCollapsedUFI__commenticon -cx-PRIVATE-fbEntstreamCollapsedUFI__icon\", u = [h.DOM.i({\n className: t\n }),\"Comment\",], v = \"-cx-PUBLIC-fbEntstreamCollapsedUFI__commentlink -cx-PUBLIC-fbEntstreamCollapsedUFI__action\", w = i.getTrackingInfo(i.types.COMMENT_LINK);\n if (this.props.storyHref) {\n s = h.DOM.a({\n className: v,\n \"data-ft\": w,\n href: this.props.storyHref,\n target: \"_blank\",\n title: \"Write a comment...\"\n }, u);\n }\n else s = h.DOM.a({\n className: v,\n \"data-ft\": w,\n href: \"#\",\n onClick: this.props.onCommentClick,\n title: \"Write a comment...\"\n }, u);\n ;\n }\n ;\n var x;\n if (this.props.canLike) {\n var y = (((((this.props.hasViewerLiked ? \"-cx-PUBLIC-fbEntstreamFeedback__liked\" : \"\")) + ((\" \" + \"-cx-PUBLIC-fbEntstreamCollapsedUFI__likelink\"))) + ((\" \" + \"-cx-PUBLIC-fbEntstreamCollapsedUFI__action\")))), z = i.getTrackingInfo((this.props.hasViewerLiked ? i.types.UNLIKE_LINK : i.types.LIKE_LINK)), aa = (this.props.hasViewerLiked ? \"Unlike this\" : \"Like this\");\n x = h.DOM.a({\n className: y,\n \"data-ft\": z,\n href: \"#\",\n onClick: this.props.onLike,\n onMouseDown: this.props.onLikeMouseDown,\n ref: \"likeButton\",\n title: aa\n }, h.DOM.i({\n className: \"-cx-PUBLIC-fbEntstreamCollapsedUFI__likeicon -cx-PRIVATE-fbEntstreamCollapsedUFI__icon\",\n ref: \"likeIcon\"\n }), \"Like\", h.DOM.div({\n className: \"-cx-PRIVATE-fbEntstreamCollapsedUFI__likecover\"\n }));\n }\n ;\n return (h.DOM.div({\n className: \"-cx-PUBLIC-fbEntstreamCollapsedUFI__icons\"\n }, x, s, n));\n }\n });\n e.exports = m;\n});\n__d(\"EntstreamCollapsedUFISentence\", [\"Bootloader\",\"NumberFormat\",\"ProfileBrowserLink\",\"ProfileBrowserTypes\",\"React\",\"URI\",\"cx\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Bootloader\"), h = b(\"NumberFormat\"), i = b(\"ProfileBrowserLink\"), j = b(\"ProfileBrowserTypes\"), k = b(\"React\"), l = b(\"URI\"), m = b(\"cx\"), n = b(\"tx\"), o = k.createClass({\n displayName: \"EntstreamCollapsedUFISentence\",\n _showShareDialog: function(event) {\n event = event.nativeEvent;\n if (event.isDefaultRequested()) {\n return\n };\n g.loadModules([\"EntstreamShareOverlay\",], function(p) {\n p.display(this.props.feedback.targetfbid, this._getShareString());\n }.bind(this));\n event.prevent();\n },\n _getShareString: function() {\n var p = this.props.feedback.sharecount, q = (this.props.numberDelimiter || \",\");\n if ((p === 1)) {\n return \"1 Share\";\n }\n else if ((p > 1)) {\n var r = h.formatIntegerWithDelimiter(p, q);\n return n._(\"{count} Shares\", {\n count: r\n });\n }\n \n ;\n },\n render: function() {\n var p = this.props.feedback, q = p.likecount, r = this.props.commentCount, s = p.sharecount, t = p.seencount, u = this.props.hasAttachedUFIExpanded, v = (this.props.numberDelimiter || \",\");\n if (u) {\n q = 0;\n r = 0;\n }\n ;\n if ((((!q && !r) && !s) && !t)) {\n return k.DOM.span(null)\n };\n var w;\n if ((q === 1)) {\n w = \"1 Like\";\n }\n else if ((q > 1)) {\n var x = h.formatIntegerWithDelimiter(q, v);\n w = n._(\"{count} Likes\", {\n count: x\n });\n }\n \n ;\n var y;\n if ((r === 1)) {\n y = \"1 Comment\";\n }\n else if ((r > 1)) {\n var z = h.formatIntegerWithDelimiter(r, v);\n y = n._(\"{count} Comments\", {\n count: z\n });\n }\n \n ;\n var aa = this._getShareString(), ba, ca, da;\n if (w) {\n ca = new l(\"/ajax/like/tooltip.php\").setQueryData({\n comment_fbid: p.targetfbid,\n comment_from: p.actorforpost,\n seen_user_fbids: true\n });\n var ea = (((y || aa) ? \"prm\" : \"\"));\n ba = j.LIKES;\n da = {\n id: p.targetfbid\n };\n var fa = i.constructDialogURI(ba, da).toString();\n if (this.props.storyHref) {\n w = null;\n }\n else w = k.DOM.a({\n ajaxify: fa,\n className: ea,\n href: i.constructPageURI(ba, da).toString(),\n \"data-hover\": \"tooltip\",\n \"data-tooltip-alignh\": \"center\",\n \"data-tooltip-uri\": ca.toString(),\n rel: \"dialog\"\n }, w);\n ;\n }\n ;\n var ga;\n if ((t > 0)) {\n ba = j.GROUP_MESSAGE_VIEWERS;\n da = {\n id: p.targetfbid\n };\n var ha = i.constructDialogURI(ba, da), ia = i.constructPageURI(ba, da);\n ca = new l(\"/ajax/ufi/seen_tooltip.php\").setQueryData({\n ft_ent_identifier: p.entidentifier,\n displayed_count: t\n });\n var ja = h.formatIntegerWithDelimiter(t, v);\n if (p.seenbyall) {\n ga = \"Seen by everyone\";\n }\n else ga = ((ja == 1) ? \"Seen by 1\" : n._(\"Seen by {count}\", {\n count: ja\n }));\n ;\n ga = k.DOM.a({\n ajaxify: ha.toString(),\n \"data-hover\": \"tooltip\",\n \"data-tooltip-alignh\": \"center\",\n \"data-tooltip-uri\": ca.toString(),\n href: ia.toString(),\n rel: \"dialog\",\n tabindex: \"-1\"\n }, ga);\n }\n ;\n if (y) {\n var ka = ((aa ? \"prm\" : \"\"));\n if (this.props.storyHref) {\n y = k.DOM.a({\n className: ka,\n href: this.props.storyHref,\n target: \"_blank\"\n }, y);\n }\n else y = k.DOM.a({\n className: ka,\n href: \"#\",\n onClick: this.props.onCommentClick\n }, y);\n ;\n }\n ;\n if (aa) {\n var la = new l(\"/shares/view\").setSubdomain(\"www\").setQueryData({\n id: p.targetfbid\n });\n if (this.props.storyHref) {\n aa = k.DOM.a({\n href: la.toString(),\n target: \"_blank\"\n }, aa);\n }\n else aa = k.DOM.a({\n href: la.toString(),\n onClick: this._showShareDialog,\n rel: \"ignore\"\n }, aa);\n ;\n }\n ;\n return (k.DOM.span({\n className: \"-cx-PUBLIC-fbEntstreamCollapsedUFI__sentencerow\"\n }, w, y, aa, ga));\n }\n });\n e.exports = o;\n});\n__d(\"EntstreamCollapsedUFI\", [\"Event\",\"Animation\",\"BrowserSupport\",\"CSS\",\"DOM\",\"Ease\",\"EntstreamCollapsedUFIActions\",\"EntstreamCollapsedUFISentence\",\"React\",\"TrackingNodes\",\"Vector\",\"cx\",\"queryThenMutateDOM\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Animation\"), i = b(\"BrowserSupport\"), j = b(\"CSS\"), k = b(\"DOM\"), l = b(\"Ease\"), m = b(\"EntstreamCollapsedUFIActions\"), n = b(\"EntstreamCollapsedUFISentence\"), o = b(\"React\"), p = b(\"TrackingNodes\"), q = b(\"Vector\"), r = b(\"cx\"), s = b(\"queryThenMutateDOM\"), t = 16, u = o.createClass({\n displayName: \"EntstreamCollapsedUFI\",\n _animate: function(v, w, x, y) {\n if (!i.hasCSSTransforms()) {\n return\n };\n var z = this.refs.icons.getLikeIcon();\n (this._animation && this._animation.stop());\n this._animation = new h(z).from(\"scaleX\", v).from(\"scaleY\", v).to(\"scaleX\", w).to(\"scaleY\", w).duration(x);\n (y && this._animation.ease(y));\n this._animation.go();\n },\n bounceLike: function() {\n this._animate(1.35, 1, 750, l.bounceOut);\n },\n shrinkLike: function() {\n this._animate(1, 124362, 150);\n this._mouseUpListener = g.listen(document.body, \"mouseup\", this._onMouseUp);\n },\n _onMouseUp: function(event) {\n this._mouseUpListener.remove();\n if (!k.contains(this.refs.icons.getLikeButton(), event.getTarget())) {\n this._animate(124583, 1, 150);\n };\n },\n render: function() {\n var v = this.props.feedback, w = p.getTrackingInfo(p.types.BLINGBOX);\n return (o.DOM.div({\n className: \"clearfix\"\n }, m({\n canLike: v.viewercanlike,\n canComment: v.cancomment,\n hasViewerLiked: v.hasviewerliked,\n onCommentClick: this.props.onCommentClick,\n onLike: this.props.onLike,\n onLikeMouseDown: this.props.onLikeMouseDown,\n ref: \"icons\",\n shareHref: this.props.shareHref,\n storyHref: this.props.storyHref\n }), o.DOM.div({\n className: \"-cx-PUBLIC-fbEntstreamCollapsedUFI__sentence\",\n \"data-ft\": w,\n ref: \"sentence\"\n }, n({\n commentCount: this.props.commentCount,\n feedback: v,\n hasAttachedUFIExpanded: this.props.hasAttachedUFIExpanded,\n numberDelimiter: this.props.numberDelimiter,\n onCommentClick: this.props.onCommentClick,\n storyHref: this.props.storyHref\n }))));\n },\n componentDidMount: function(v) {\n var w = this.refs.icons.getDOMNode(), x = this.refs.sentence.getDOMNode(), y, z, aa;\n s(function() {\n y = q.getElementDimensions(v).x;\n z = q.getElementDimensions(w).x;\n aa = q.getElementDimensions(x).x;\n }, function() {\n if (((z + aa) > (y + t))) {\n j.addClass(v, \"-cx-PRIVATE-fbEntstreamCollapsedUFI__tworow\");\n };\n });\n }\n });\n e.exports = u;\n});\n__d(\"EntstreamCollapsedUFIController\", [\"Bootloader\",\"CommentPrelude\",\"CSS\",\"DOM\",\"EntstreamCollapsedUFI\",\"React\",\"ReactMount\",\"UFICentralUpdates\",\"UFIComments\",\"UFIConstants\",\"UFIFeedbackTargets\",\"UFIUserActions\",\"copyProperties\",\"cx\",\"onEnclosingPageletDestroy\",], function(a, b, c, d, e, f) {\n var g = b(\"Bootloader\"), h = b(\"CommentPrelude\"), i = b(\"CSS\"), j = b(\"DOM\"), k = b(\"EntstreamCollapsedUFI\"), l = b(\"React\"), m = b(\"ReactMount\"), n = b(\"UFICentralUpdates\"), o = b(\"UFIComments\"), p = b(\"UFIConstants\"), q = b(\"UFIFeedbackTargets\"), r = b(\"UFIUserActions\"), s = b(\"copyProperties\"), t = b(\"cx\"), u = b(\"onEnclosingPageletDestroy\"), v = p.UFIPayloadSourceType;\n function w(x, y, z) {\n this._root = x;\n this._id = z.ftentidentifier;\n this._contextArgs = z;\n this._ufiVisible = z.hasattachedufiexpanded;\n this._updateSubscription = n.subscribe(\"feedback-updated\", function(aa, ba) {\n if (((ba.payloadSource != v.INITIAL_SERVER) && (this._id in ba.updates))) {\n this.render();\n };\n }.bind(this));\n n.handleUpdate(p.UFIPayloadSourceType.COLLAPSED_UFI, y);\n g.loadModules([\"ScrollAwareDOM\",], function(aa) {\n m.scrollMonitor = aa.monitor;\n });\n u(this._root, this.destroy.bind(this));\n };\n s(w.prototype, {\n _onLike: function(event) {\n this._feedbackSubscription = q.getFeedbackTarget(this._id, function(x) {\n r.changeLike(this._id, !x.hasviewerliked, {\n source: this._contextArgs.source,\n target: event.target,\n rootid: j.getID(this._root)\n });\n }.bind(this));\n this._ufi.bounceLike();\n event.preventDefault();\n },\n _onLikeMouseDown: function(event) {\n this._ufi.shrinkLike();\n event.preventDefault();\n },\n _onCommentClick: function(event) {\n if (!this._ufiVisible) {\n this._ufiVisible = true;\n i.addClass(this._root, \"-cx-PRIVATE-fbEntstreamCollapsedUFI__hasattachedufiexpanded\");\n }\n ;\n h.click(this._root);\n event.preventDefault();\n },\n render: function() {\n this._feedbackSubscription = q.getFeedbackTarget(this._id, function(x) {\n var y = k({\n commentCount: o.getCommentCount(this._id),\n feedback: x,\n hasAttachedUFIExpanded: this._contextArgs.hasattachedufiexpanded,\n numberDelimiter: this._contextArgs.numberdelimiter,\n onCommentClick: this._onCommentClick.bind(this),\n onLike: this._onLike.bind(this),\n onLikeMouseDown: this._onLikeMouseDown.bind(this),\n shareHref: this._contextArgs.sharehref,\n storyHref: this._contextArgs.storyhref\n });\n l.renderComponent(y, this._root);\n this._ufi = (this._ufi || y);\n }.bind(this));\n },\n destroy: function() {\n if (this._feedbackSubscription) {\n q.unsubscribe(this._feedbackSubscription);\n this._feedbackSubscription = null;\n }\n ;\n this._updateSubscription.unsubscribe();\n this._updateSubscription = null;\n l.unmountAndReleaseReactRootNode(this._root);\n this._root = null;\n this._id = null;\n this._contextArgs = null;\n this._ufiVisible = null;\n }\n });\n e.exports = w;\n});"); |
| // 1167 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s324d77872a45b0b23507e46a3cd090261cebcabc"); |
| // 1168 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"ociRJ\",]);\n}\n;\n;\n__d(\"CLoggerX\", [\"Banzai\",\"DOM\",\"debounce\",\"JSBNG__Event\",\"ge\",\"Parent\",\"Keys\",], function(a, b, c, d, e, f) {\n var g = b(\"Banzai\"), h = b(\"DOM\"), i = b(\"debounce\"), j = b(\"JSBNG__Event\"), k = b(\"ge\"), l = b(\"Parent\"), m = ((((10 * 60)) * 1000)), n = b(\"Keys\").RETURN, o = {\n }, p = function(s) {\n var t = ((s.target || s.srcElement)).id, u = ((s.target || s.srcElement)).value.trim().length, v = q.getTracker(t);\n if (!v) {\n return;\n }\n ;\n ;\n if (((((u > 5)) && !v.submitted))) {\n g.post(\"censorlogger\", {\n cl_impid: v.impid,\n clearcounter: v.clearcounter,\n instrument: v.type,\n elementid: t,\n parent_fbid: ((((v.parent_fbid == \"unknown\")) ? null : v.parent_fbid)),\n version: \"x\"\n }, g.VITAL);\n q.setSubmitted(t, true);\n }\n else if (((((((u === 0)) && v.submitted)) && ((s.which != n))))) {\n o[t] = r(t);\n o[t]();\n }\n else if (((((u > 0)) && v.submitted))) {\n if (o[t]) {\n o[t].reset();\n }\n ;\n }\n \n \n ;\n ;\n }, q = {\n init: function() {\n this.trackedElements = ((this.trackedElements || {\n }));\n this.feedbackForms = ((this.feedbackForms || {\n }));\n },\n setImpressionID: function(s) {\n this.init();\n this.impressionID = s;\n this.clean();\n },\n setComposerTargetData: function(s) {\n this.cTargetID = ((s.targetID || \"unknown\"));\n this.cTargetFBType = ((s.targetType || \"unknown\"));\n },\n clean: function() {\n {\n var fin94keys = ((window.top.JSBNG_Replay.forInKeys)((this.trackedElements))), fin94i = (0);\n var s;\n for (; (fin94i < fin94keys.length); (fin94i++)) {\n ((s) = (fin94keys[fin94i]));\n {\n if (o[s]) {\n o[s].reset();\n delete o[s];\n }\n ;\n ;\n delete this.trackedElements[s];\n };\n };\n };\n ;\n },\n trackComposer: function(s, t, u) {\n this.setComposerTargetData(u);\n this.startTracking(s, \"composer\", this.cTargetID, this.cTargetFBType, t);\n },\n trackFeedbackForm: function(s, t, u) {\n this.init();\n this.impressionID = ((this.impressionID || u));\n var v, w, x;\n v = h.getID(s);\n w = ((t ? ((t.targetID || \"unknown\")) : \"unknown\"));\n x = ((t ? ((t.targetType || \"unknown\")) : \"unknown\"));\n this.feedbackForms[v] = {\n parent_fbid: w,\n parent_type: x\n };\n },\n trackMentionsInput: function(s, t) {\n this.init();\n var u, v, w;\n if (!s) {\n return;\n }\n ;\n ;\n u = l.byTag(s, \"form\");\n if (!u) {\n return;\n }\n ;\n ;\n v = h.getID(u);\n w = this.feedbackForms[v];\n if (!w) {\n return;\n }\n ;\n ;\n var x = ((t || w.parent_fbid)), y = ((t ? 416 : w.parent_type));\n this.startTracking(s, \"comment\", x, y, u);\n },\n startTracking: function(s, t, u, v, w) {\n this.init();\n var x = h.getID(s);\n if (this.getTracker(x)) {\n return;\n }\n ;\n ;\n var y = h.getID(w);\n j.listen(s, \"keyup\", p.bind(this));\n this.trackedElements[x] = {\n submitted: false,\n clearcounter: 0,\n type: t,\n impid: this.impressionID,\n parent_fbid: u,\n parent_type: v,\n parentElID: y\n };\n this.addJoinTableInfoToForm(w, x);\n },\n getTracker: function(s) {\n return ((this.trackedElements ? this.trackedElements[s] : null));\n },\n setSubmitted: function(s, t) {\n if (this.trackedElements[s]) {\n this.trackedElements[s].submitted = t;\n }\n ;\n ;\n },\n incrementClearCounter: function(s) {\n var t = this.getTracker(s);\n if (!t) {\n return;\n }\n ;\n ;\n t.clearcounter++;\n t.submitted = false;\n var u = h.scry(k(t.parentElID), \"input[name=\\\"clp\\\"]\")[0];\n if (u) {\n u.value = this.getJSONRepForTrackerID(s);\n }\n ;\n ;\n this.trackedElements[s] = t;\n },\n addJoinTableInfoToForm: function(s, t) {\n var u = this.getTracker(t);\n if (!u) {\n return;\n }\n ;\n ;\n var v = h.scry(s, \"input[name=\\\"clp\\\"]\")[0];\n if (!v) {\n h.prependContent(s, h.create(\"input\", {\n type: \"hidden\",\n JSBNG__name: \"clp\",\n value: this.getJSONRepForTrackerID(t)\n }));\n }\n ;\n ;\n },\n getCLParamsForTarget: function(s, t) {\n if (!s) {\n return \"\";\n }\n ;\n ;\n var u = h.getID(s);\n return this.getJSONRepForTrackerID(u, t);\n },\n getJSONRepForTrackerID: function(s, t) {\n var u = this.getTracker(s);\n if (!u) {\n return \"\";\n }\n ;\n ;\n return JSON.stringify({\n cl_impid: u.impid,\n clearcounter: u.clearcounter,\n elementid: s,\n version: \"x\",\n parent_fbid: ((t || u.parent_fbid))\n });\n }\n }, r = function(s) {\n return i(function() {\n q.incrementClearCounter(s);\n }, m, q);\n };\n e.exports = q;\n});\n__d(\"ClickTTIIdentifiers\", [], function(a, b, c, d, e, f) {\n var g = {\n types: {\n TIMELINE_SEE_LIKERS: \"timeline:seelikes\"\n },\n getUserActionID: function(h) {\n return ((((\"{\\\"ua_id\\\":\\\"\" + h)) + \"\\\"}\"));\n }\n };\n e.exports = g;\n});\n__d(\"TrackingNodes\", [], function(a, b, c, d, e, f) {\n var g = {\n types: {\n USER_NAME: 2,\n LIKE_LINK: 5,\n UNLIKE_LINK: 6,\n ATTACHMENT: 15,\n SHARE_LINK: 17,\n USER_MESSAGE: 18,\n SOURCE: 21,\n BLINGBOX: 22,\n VIEW_ALL_COMMENTS: 24,\n COMMENT: 25,\n COMMENT_LINK: 26,\n SMALL_ACTOR_PHOTO: 27,\n XBUTTON: 29,\n HIDE_LINK: 30,\n REPORT_SPAM_LINK: 31,\n HIDE_ALL_LINK: 32,\n ADD_COMMENT_BOX: 34,\n UFI: 36,\n DROPDOWN_BUTTON: 55,\n UNHIDE_LINK: 71,\n RELATED_SHARE: 73\n },\n BASE_CODE_START: 58,\n BASE_CODE_END: 126,\n BASE_CODE_SIZE: 69,\n PREFIX_CODE_START: 42,\n PREFIX_CODE_END: 47,\n PREFIX_CODE_SIZE: 6,\n encodeTrackingInfo: function(h, i) {\n var j = ((((h - 1)) % g.BASE_CODE_SIZE)), k = parseInt(((((h - 1)) / g.BASE_CODE_SIZE)), 10);\n if (((((h < 1)) || ((k > g.PREFIX_CODE_SIZE))))) {\n throw Error(((\"Invalid tracking node: \" + h)));\n }\n ;\n ;\n var l = \"\";\n if (((k > 0))) {\n l += String.fromCharCode(((((k - 1)) + g.PREFIX_CODE_START)));\n }\n ;\n ;\n l += String.fromCharCode(((j + g.BASE_CODE_START)));\n if (((((typeof i != \"undefined\")) && ((i > 0))))) {\n l += String.fromCharCode(((((48 + Math.min(i, 10))) - 1)));\n }\n ;\n ;\n return l;\n },\n decodeTN: function(h) {\n if (((h.length === 0))) {\n return [0,];\n }\n ;\n ;\n var i = h.charCodeAt(0), j = 1, k, l;\n if (((((i >= g.PREFIX_CODE_START)) && ((i <= g.PREFIX_CODE_END))))) {\n if (((h.length == 1))) {\n return [0,];\n }\n ;\n ;\n l = ((((i - g.PREFIX_CODE_START)) + 1));\n k = h.charCodeAt(1);\n j = 2;\n }\n else {\n l = 0;\n k = i;\n }\n ;\n ;\n if (((((k < g.BASE_CODE_START)) || ((k > g.BASE_CODE_END))))) {\n return [0,];\n }\n ;\n ;\n var m = ((((((l * g.BASE_CODE_SIZE)) + ((k - g.BASE_CODE_START)))) + 1));\n if (((((h.length > j)) && ((((h.charAt(j) >= \"0\")) && ((h.charAt(j) <= \"9\"))))))) {\n return [((j + 1)),[m,((parseInt(h.charAt(j), 10) + 1)),],];\n }\n ;\n ;\n return [j,[m,],];\n },\n parseTrackingNodeString: function(h) {\n var i = [];\n while (((h.length > 0))) {\n var j = g.decodeTN(h);\n if (((j.length == 1))) {\n return [];\n }\n ;\n ;\n i.push(j[1]);\n h = h.substring(j[0]);\n };\n ;\n return i;\n },\n getTrackingInfo: function(h, i) {\n return ((((\"{\\\"tn\\\":\\\"\" + g.encodeTrackingInfo(h, i))) + \"\\\"}\"));\n }\n };\n e.exports = g;\n});\n__d(\"NumberFormat\", [\"Env\",], function(a, b, c, d, e, f) {\n var g = b(\"Env\"), h = /(\\d{3})(?=\\d)/g, i = 10000, j = function(l) {\n return ((\"\" + l)).split(\"\").reverse().join(\"\");\n }, k = {\n formatIntegerWithDelimiter: function(l, m) {\n if (((((((g.locale == \"nb_NO\")) || ((g.locale == \"nn_NO\")))) && ((Math.abs(l) < i))))) {\n return l.toString();\n }\n ;\n ;\n var n = j(l);\n return j(n.replace(h, ((\"$1\" + m))));\n }\n };\n e.exports = k;\n});\n__d(\"UFIBlingItem.react\", [\"React\",\"NumberFormat\",\"cx\",\"joinClasses\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"NumberFormat\"), i = b(\"cx\"), j = b(\"joinClasses\"), k = g.createClass({\n displayName: \"UFIBlingItem\",\n render: function() {\n var l = j(this.props.className, this.props.iconClassName, \"UFIBlingBoxSprite\"), m = h.formatIntegerWithDelimiter(this.props.count, ((this.props.contextArgs.numberdelimiter || \",\")));\n return (g.DOM.span(null, g.DOM.i({\n className: l\n }), g.DOM.span({\n className: \"UFIBlingBoxText\"\n }, m)));\n }\n });\n e.exports = k;\n});\n__d(\"UFIConstants\", [], function(a, b, c, d, e, f) {\n var g = {\n COMMENT_LIKE: \"fa-type:comment-like\",\n COMMENT_SET_SPAM: \"fa-type:mark-spam\",\n DELETE_COMMENT: \"fa-type:delete-comment\",\n LIVE_DELETE_COMMENT: \"fa-type:live-delete-comment\",\n LIKE_ACTION: \"fa-type:like\",\n REMOVE_PREVIEW: \"fa-type:remove-preview\",\n CONFIRM_COMMENT_REMOVAL: \"fa-type:confirm-remove\",\n TRANSLATE_COMMENT: \"fa-type:translate-comment\",\n SUBSCRIBE_ACTION: \"fa-type:subscribe\",\n GIFT_SUGGESTION: \"fa-type:gift-suggestion\",\n UNDO_DELETE_COMMENT: \"fa-type:undo-delete-comment\"\n }, h = {\n DELETED: \"status:deleted\",\n SPAM: \"status:spam\",\n SPAM_DISPLAY: \"status:spam-display\",\n LIVE_DELETED: \"status:live-deleted\",\n FAILED_ADD: \"status:failed-add\",\n FAILED_EDIT: \"status:failed-edit\",\n PENDING_EDIT: \"status:pending-edit\",\n PENDING_UNDO_DELETE: \"status:pending-undo-delete\"\n }, i = {\n MOBILE: 1,\n SMS: 3,\n EMAIL: 4\n }, j = {\n PROFILE: 0,\n NEWS_FEED: 1,\n OBJECT: 2,\n MOBILE: 3,\n EMAIL: 4,\n PROFILE_APROVAL: 10,\n TICKER: 12,\n NONE: 13,\n INTERN: 14,\n ADS: 15,\n PHOTOS_SNOWLIFT: 17\n }, k = {\n UNKNOWN: 0,\n INITIAL_SERVER: 1,\n LIVE_SEND: 2,\n USER_ACTION: 3,\n COLLAPSED_UFI: 4,\n ENDPOINT_LIKE: 10,\n ENDPOINT_COMMENT_LIKE: 11,\n ENDPOINT_ADD_COMMENT: 12,\n ENDPOINT_EDIT_COMMENT: 13,\n ENDPOINT_DELETE_COMMENT: 14,\n ENDPOINT_UNDO_DELETE_COMMENT: 15,\n ENDPOINT_COMMENT_SPAM: 16,\n ENDPOINT_REMOVE_PREVIEW: 17,\n ENDPOINT_ID_COMMENT_FETCH: 18,\n ENDPOINT_COMMENT_FETCH: 19,\n ENDPOINT_TRANSLATE_COMMENT: 20,\n ENDPOINT_BAN: 21,\n ENDPOINT_SUBSCRIBE: 22\n }, l = {\n CHRONOLOGICAL: \"chronological\",\n RANKED_THREADED: \"ranked_threaded\",\n TOPLEVEL: \"toplevel\",\n RECENT_ACTIVITY: \"recent_activity\"\n }, m = 50, n = 7114, o = 420, p = 5, q = 80, r = 2;\n e.exports = {\n UFIActionType: g,\n UFIStatus: h,\n UFISourceType: i,\n UFIFeedbackSourceType: j,\n UFIPayloadSourceType: k,\n UFICommentOrderingMode: l,\n defaultPageSize: m,\n commentTruncationLength: o,\n commentTruncationPercent: n,\n commentTruncationMaxLines: p,\n attachmentTruncationLength: q,\n minCommentsForOrderingModeSelector: r\n };\n});\n__d(\"UFIBlingBox.react\", [\"React\",\"UFIBlingItem.react\",\"UFIConstants\",\"cx\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"UFIBlingItem.react\"), i = b(\"UFIConstants\"), j = b(\"cx\"), k = b(\"tx\"), l = g.createClass({\n displayName: \"UFIBlingBox\",\n render: function() {\n var m = [], n = \"\";\n if (this.props.likes) {\n m.push(h({\n count: this.props.likes,\n className: ((((m.length > 0)) ? \"mls\" : \"\")),\n iconClassName: \"UFIBlingBoxLikeIcon\",\n contextArgs: this.props.contextArgs\n }));\n n += ((((this.props.likes == 1)) ? \"1 like\" : k._(\"{count} likes\", {\n count: this.props.likes\n })));\n n += \" \";\n }\n ;\n ;\n if (this.props.comments) {\n m.push(h({\n count: this.props.comments,\n className: ((((m.length > 0)) ? \"mls\" : \"\")),\n iconClassName: \"UFIBlingBoxCommentIcon\",\n contextArgs: this.props.contextArgs\n }));\n n += ((((this.props.comments == 1)) ? \"1 comment\" : k._(\"{count} comments\", {\n count: this.props.comments\n })));\n n += \" \";\n }\n ;\n ;\n if (this.props.reshares) {\n m.push(h({\n count: this.props.reshares,\n className: ((((m.length > 0)) ? \"mls\" : \"\")),\n iconClassName: \"UFIBlingBoxReshareIcon\",\n contextArgs: this.props.contextArgs\n }));\n n += ((((this.props.reshares == 1)) ? \"1 share\" : k._(\"{count} shares\", {\n count: this.props.reshares\n })));\n }\n ;\n ;\n var o = g.DOM.a({\n className: \"UFIBlingBox uiBlingBox feedbackBling\",\n href: this.props.permalink,\n \"data-ft\": this.props[\"data-ft\"],\n \"aria-label\": n\n }, m);\n if (((this.props.comments < i.defaultPageSize))) {\n o.props.onClick = this.props.onClick;\n o.props.rel = \"ignore\";\n }\n ;\n ;\n return o;\n }\n });\n e.exports = l;\n});\n__d(\"UFICentralUpdates\", [\"Arbiter\",\"ChannelConstants\",\"LiveTimer\",\"ShortProfiles\",\"UFIConstants\",\"copyProperties\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ChannelConstants\"), i = b(\"LiveTimer\"), j = b(\"ShortProfiles\"), k = b(\"UFIConstants\"), l = b(\"copyProperties\"), m = b(\"tx\"), n = 0, o = {\n }, p = {\n }, q = {\n }, r = {\n }, s = [];\n g.subscribe(h.getArbiterType(\"live-data\"), function(x, y) {\n if (((y && y.obj))) {\n var z = y.obj, aa = ((z.comments || []));\n aa.forEach(function(ba) {\n ba.timestamp.text = \"a few seconds ago\";\n });\n w.handleUpdate(k.UFIPayloadSourceType.LIVE_SEND, z);\n }\n ;\n ;\n });\n function t() {\n if (!n) {\n var x = q, y = o, z = p, aa = r;\n q = {\n };\n o = {\n };\n p = {\n };\n r = {\n };\n if (Object.keys(x).length) {\n v(\"feedback-id-changed\", x);\n }\n ;\n ;\n if (Object.keys(y).length) {\n v(\"feedback-updated\", y);\n }\n ;\n ;\n if (Object.keys(z).length) {\n v(\"comments-updated\", z);\n }\n ;\n ;\n if (Object.keys(aa).length) {\n v(\"instance-updated\", aa);\n }\n ;\n ;\n s.pop();\n }\n ;\n ;\n };\n;\n function u() {\n if (s.length) {\n return s[((s.length - 1))];\n }\n else return k.UFIPayloadSourceType.UNKNOWN\n ;\n };\n;\n function v(JSBNG__event, x) {\n w.inform(JSBNG__event, {\n updates: x,\n payloadSource: u()\n });\n };\n;\n var w = l(new g(), {\n handleUpdate: function(x, y) {\n if (Object.keys(y).length) {\n this.synchronizeInforms(function() {\n s.push(x);\n var z = l({\n payloadsource: u()\n }, y);\n this.inform(\"update-feedback\", z);\n this.inform(\"update-comment-lists\", z);\n this.inform(\"update-comments\", z);\n this.inform(\"update-actions\", z);\n ((y.profiles || [])).forEach(function(aa) {\n j.set(aa.id, aa);\n });\n if (y.servertime) {\n i.restart(y.servertime);\n }\n ;\n ;\n }.bind(this));\n }\n ;\n ;\n },\n didUpdateFeedback: function(x) {\n o[x] = true;\n t();\n },\n didUpdateComment: function(x) {\n p[x] = true;\n t();\n },\n didUpdateFeedbackID: function(x, y) {\n q[x] = y;\n t();\n },\n didUpdateInstanceState: function(x, y) {\n if (!r[x]) {\n r[x] = {\n };\n }\n ;\n ;\n r[x][y] = true;\n t();\n },\n synchronizeInforms: function(x) {\n n++;\n try {\n x();\n } catch (y) {\n throw y;\n } finally {\n n--;\n t();\n };\n ;\n }\n });\n e.exports = w;\n});\n__d(\"ClientIDs\", [\"randomInt\",], function(a, b, c, d, e, f) {\n var g = b(\"randomInt\"), h = {\n }, i = {\n getNewClientID: function() {\n var j = JSBNG__Date.now(), k = ((((j + \":\")) + ((g(0, 4294967295) + 1))));\n h[k] = true;\n return k;\n },\n isExistingClientID: function(j) {\n return !!h[j];\n }\n };\n e.exports = i;\n});\n__d(\"ImmutableObject\", [\"keyMirror\",\"merge\",\"mergeInto\",\"mergeHelpers\",\"throwIf\",], function(a, b, c, d, e, f) {\n var g = b(\"keyMirror\"), h = b(\"merge\"), i = b(\"mergeInto\"), j = b(\"mergeHelpers\"), k = b(\"throwIf\"), l = j.checkMergeObjectArgs, m = j.isTerminal, n, o;\n n = g({\n INVALID_MAP_SET_ARG: null\n });\n o = function(q) {\n i(this, q);\n };\n o.set = function(q, r) {\n k(!((q instanceof o)), n.INVALID_MAP_SET_ARG);\n var s = new o(q);\n i(s, r);\n return s;\n };\n o.setField = function(q, r, s) {\n var t = {\n };\n t[r] = s;\n return o.set(q, t);\n };\n o.setDeep = function(q, r) {\n k(!((q instanceof o)), n.INVALID_MAP_SET_ARG);\n return p(q, r);\n };\n function p(q, r) {\n l(q, r);\n var s = {\n }, t = Object.keys(q);\n for (var u = 0; ((u < t.length)); u++) {\n var v = t[u];\n if (!r.hasOwnProperty(v)) {\n s[v] = q[v];\n }\n else if (((m(q[v]) || m(r[v])))) {\n s[v] = r[v];\n }\n else s[v] = p(q[v], r[v]);\n \n ;\n ;\n };\n ;\n var w = Object.keys(r);\n for (u = 0; ((u < w.length)); u++) {\n var x = w[u];\n if (q.hasOwnProperty(x)) {\n continue;\n }\n ;\n ;\n s[x] = r[x];\n };\n ;\n return ((((((q instanceof o)) || ((r instanceof o)))) ? new o(s) : s));\n };\n;\n e.exports = o;\n});\n__d(\"UFIFeedbackTargets\", [\"ClientIDs\",\"KeyedCallbackManager\",\"UFICentralUpdates\",\"UFIConstants\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ClientIDs\"), h = b(\"KeyedCallbackManager\"), i = b(\"UFICentralUpdates\"), j = b(\"UFIConstants\"), k = b(\"copyProperties\"), l = new h();\n function m(v) {\n var w = {\n };\n v.forEach(function(x) {\n var y = k({\n }, x);\n delete y.commentlist;\n delete y.commentcount;\n w[x.entidentifier] = y;\n i.didUpdateFeedback(x.entidentifier);\n });\n l.addResourcesAndExecute(w);\n };\n;\n function n(v) {\n for (var w = 0; ((w < v.length)); w++) {\n var x = v[w];\n switch (x.actiontype) {\n case j.UFIActionType.LIKE_ACTION:\n p(x);\n break;\n case j.UFIActionType.SUBSCRIBE_ACTION:\n q(x);\n break;\n case j.UFIActionType.GIFT_SUGGESTION:\n r(x);\n break;\n };\n ;\n };\n ;\n };\n;\n function o(v) {\n for (var w = 0; ((w < v.length)); w++) {\n var x = v[w];\n if (x.orig_ftentidentifier) {\n t(x.orig_ftentidentifier, x.ftentidentifier);\n }\n ;\n ;\n };\n ;\n };\n;\n function p(v) {\n var w = s(v);\n if (w) {\n v.hasviewerliked = !!v.hasviewerliked;\n if (((((v.clientid && g.isExistingClientID(v.clientid))) && ((v.hasviewerliked != w.hasviewerliked))))) {\n return;\n }\n ;\n ;\n w.likecount = ((v.likecount || 0));\n w.likesentences = v.likesentences;\n if (((v.actorid == w.actorforpost))) {\n w.hasviewerliked = v.hasviewerliked;\n }\n else if (((v.hasviewerliked != w.hasviewerliked))) {\n w.likesentences = {\n current: v.likesentences.alternate,\n alternate: v.likesentences.current\n };\n if (w.hasviewerliked) {\n w.likecount++;\n }\n else w.likecount--;\n ;\n ;\n }\n \n ;\n ;\n if (((v.actorid != w.actorforpost))) {\n w.likesentences.isunseen = true;\n }\n ;\n ;\n m([w,]);\n }\n ;\n ;\n };\n;\n function q(v) {\n var w = s(v);\n if (w) {\n v.hasviewersubscribed = !!v.hasviewersubscribed;\n if (((((v.clientid && g.isExistingClientID(v.clientid))) && ((v.hasviewersubscribed != w.hasviewersubscribed))))) {\n return;\n }\n ;\n ;\n if (((v.actorid == w.actorforpost))) {\n w.hasviewersubscribed = v.hasviewersubscribed;\n }\n ;\n ;\n m([w,]);\n }\n ;\n ;\n };\n;\n function r(v) {\n var w = s(v);\n if (!w) {\n return;\n }\n ;\n ;\n if (((((v.clientid && g.isExistingClientID(v.clientid))) && ((v.hasviewerliked != w.hasviewerliked))))) {\n return;\n }\n ;\n ;\n w.giftdata = v.giftdata;\n m([w,]);\n };\n;\n function s(v) {\n if (v.orig_entidentifier) {\n t(v.orig_entidentifier, v.entidentifier);\n }\n ;\n ;\n return l.getResource(v.entidentifier);\n };\n;\n function t(v, w) {\n var x = l.getResource(v);\n if (x) {\n l.setResource(v, null);\n x.entidentifier = w;\n l.setResource(w, x);\n i.didUpdateFeedbackID(v, w);\n }\n ;\n ;\n };\n;\n var u = {\n getFeedbackTarget: function(v, w) {\n var x = l.executeOrEnqueue(v, w), y = l.getUnavailableResources(x);\n y.length;\n return x;\n },\n unsubscribe: function(v) {\n l.unsubscribe(v);\n }\n };\n i.subscribe(\"update-feedback\", function(v, w) {\n var x = w.feedbacktargets;\n if (((x && x.length))) {\n m(x);\n }\n ;\n ;\n });\n i.subscribe(\"update-actions\", function(v, w) {\n if (((w.actions && w.actions.length))) {\n n(w.actions);\n }\n ;\n ;\n });\n i.subscribe(\"update-comments\", function(v, w) {\n if (((w.comments && w.comments.length))) {\n o(w.comments);\n }\n ;\n ;\n });\n e.exports = u;\n});\n__d(\"UFIInstanceState\", [\"UFICentralUpdates\",], function(a, b, c, d, e, f) {\n var g = b(\"UFICentralUpdates\"), h = {\n };\n function i(k) {\n if (!h[k]) {\n h[k] = {\n };\n }\n ;\n ;\n };\n;\n var j = {\n getKeyForInstance: function(k, l) {\n i(k);\n return h[k][l];\n },\n updateState: function(k, l, m) {\n i(k);\n h[k][l] = m;\n g.didUpdateInstanceState(k, l);\n },\n updateStateField: function(k, l, m, n) {\n var o = ((this.getKeyForInstance(k, l) || {\n }));\n o[m] = n;\n this.updateState(k, l, o);\n }\n };\n e.exports = j;\n});\n__d(\"UFIComments\", [\"ClientIDs\",\"ImmutableObject\",\"JSLogger\",\"KeyedCallbackManager\",\"MercuryServerDispatcher\",\"UFICentralUpdates\",\"UFIConstants\",\"UFIFeedbackTargets\",\"UFIInstanceState\",\"URI\",\"keyMirror\",\"merge\",\"randomInt\",\"throwIf\",], function(a, b, c, d, e, f) {\n var g = b(\"ClientIDs\"), h = b(\"ImmutableObject\"), i = b(\"JSLogger\"), j = b(\"KeyedCallbackManager\"), k = b(\"MercuryServerDispatcher\"), l = b(\"UFICentralUpdates\"), m = b(\"UFIConstants\"), n = b(\"UFIFeedbackTargets\"), o = b(\"UFIInstanceState\"), p = b(\"URI\"), q = b(\"keyMirror\"), r = b(\"merge\"), s = b(\"randomInt\"), t = b(\"throwIf\"), u = q({\n INVALID_COMMENT_TYPE: null\n }), v = i.create(\"UFIComments\"), w = {\n }, x = {\n }, y = {\n }, z = {\n }, aa = {\n }, ba = {\n }, ca = \"unavailable_comment_key\";\n function da(ab) {\n return ((((ab in ba)) ? ba[ab] : ab));\n };\n;\n function ea(ab, bb) {\n if (!x[ab]) {\n x[ab] = {\n };\n }\n ;\n ;\n if (!x[ab][bb]) {\n x[ab][bb] = new j();\n }\n ;\n ;\n return x[ab][bb];\n };\n;\n function fa(ab) {\n var bb = [];\n if (x[ab]) {\n {\n var fin95keys = ((window.top.JSBNG_Replay.forInKeys)((x[ab]))), fin95i = (0);\n var cb;\n for (; (fin95i < fin95keys.length); (fin95i++)) {\n ((cb) = (fin95keys[fin95i]));\n {\n bb.push(x[ab][cb]);\n ;\n };\n };\n };\n }\n ;\n ;\n return bb;\n };\n;\n function ga(ab) {\n if (!y[ab]) {\n y[ab] = new j();\n }\n ;\n ;\n return y[ab];\n };\n;\n function ha(ab) {\n var bb = fa(ab);\n bb.forEach(function(cb) {\n cb.reset();\n });\n };\n;\n function ia(ab, bb) {\n ab.forEach(function(cb) {\n var db = cb.ftentidentifier, eb = ((cb.parentcommentid || db));\n n.getFeedbackTarget(db, function(fb) {\n var gb = m.UFIPayloadSourceType, hb = cb.clientid, ib = false, jb = r({\n }, cb);\n if (hb) {\n delete jb.clientid;\n ib = g.isExistingClientID(hb);\n if (((ib && ba[hb]))) {\n return;\n }\n ;\n ;\n }\n ;\n ;\n if (((((((bb === gb.LIVE_SEND)) && cb.parentcommentid)) && ((z[eb] === undefined))))) {\n return;\n }\n ;\n ;\n if (((((((((bb === gb.LIVE_SEND)) || ((bb === gb.USER_ACTION)))) || ((bb === gb.ENDPOINT_ADD_COMMENT)))) || ((bb === gb.ENDPOINT_EDIT_COMMENT))))) {\n jb.isunseen = true;\n }\n ;\n ;\n if (((((bb === gb.ENDPOINT_COMMENT_FETCH)) || ((bb === gb.ENDPOINT_ID_COMMENT_FETCH))))) {\n jb.fromfetch = true;\n }\n ;\n ;\n if (ib) {\n if (w[hb].ufiinstanceid) {\n o.updateStateField(w[hb].ufiinstanceid, \"locallycomposed\", cb.id, true);\n }\n ;\n ;\n jb.ufiinstanceid = w[hb].ufiinstanceid;\n ba[hb] = cb.id;\n w[cb.id] = w[hb];\n delete w[hb];\n l.didUpdateComment(hb);\n }\n ;\n ;\n var kb, lb;\n if (cb.parentcommentid) {\n lb = [ga(eb),];\n }\n else lb = fa(eb);\n ;\n ;\n var mb = false;\n lb.forEach(function(qb) {\n var rb = qb.getAllResources(), sb = {\n };\n {\n var fin96keys = ((window.top.JSBNG_Replay.forInKeys)((rb))), fin96i = (0);\n var tb;\n for (; (fin96i < fin96keys.length); (fin96i++)) {\n ((tb) = (fin96keys[fin96i]));\n {\n var ub = rb[tb];\n sb[ub] = tb;\n };\n };\n };\n ;\n if (ib) {\n if (((hb in sb))) {\n sb[cb.id] = sb[hb];\n var vb = sb[hb];\n qb.setResource(vb, cb.id);\n }\n ;\n }\n ;\n ;\n if (sb[cb.id]) {\n mb = true;\n }\n else {\n var wb = ((z[eb] || 0));\n sb[cb.id] = wb;\n qb.setResource(wb, cb.id);\n }\n ;\n ;\n kb = sb[cb.id];\n });\n if (!mb) {\n var nb = ((z[eb] || 0));\n z[eb] = ((nb + 1));\n qa(eb);\n }\n ;\n ;\n if (((cb.JSBNG__status === m.UFIStatus.FAILED_ADD))) {\n aa[eb] = ((aa[eb] + 1));\n }\n ;\n ;\n var ob = z[eb];\n jb.replycount = ((((z[cb.id] || 0)) - ((aa[cb.id] || 0))));\n var pb = ja(kb, ob);\n if (((cb.parentcommentid && w[cb.parentcommentid]))) {\n jb.permalink = p(fb.permalink).addQueryData({\n comment_id: w[cb.parentcommentid].legacyid,\n reply_comment_id: cb.legacyid,\n total_comments: ob\n }).toString();\n }\n else jb.permalink = p(fb.permalink).addQueryData({\n comment_id: cb.legacyid,\n offset: pb,\n total_comments: ob\n }).toString();\n ;\n ;\n za.setComment(cb.id, new h(jb));\n l.didUpdateComment(cb.id);\n l.didUpdateFeedback(db);\n });\n });\n };\n;\n function ja(ab, bb) {\n return ((Math.floor(((((((bb - ab)) - 1)) / m.defaultPageSize))) * m.defaultPageSize));\n };\n;\n function ka(ab) {\n for (var bb = 0; ((bb < ab.length)); bb++) {\n var cb = ab[bb];\n switch (cb.actiontype) {\n case m.UFIActionType.COMMENT_LIKE:\n na(cb);\n break;\n case m.UFIActionType.DELETE_COMMENT:\n ra(cb);\n break;\n case m.UFIActionType.LIVE_DELETE_COMMENT:\n sa(cb);\n break;\n case m.UFIActionType.UNDO_DELETE_COMMENT:\n ta(cb);\n break;\n case m.UFIActionType.REMOVE_PREVIEW:\n ua(cb);\n break;\n case m.UFIActionType.COMMENT_SET_SPAM:\n va(cb);\n break;\n case m.UFIActionType.CONFIRM_COMMENT_REMOVAL:\n wa(cb);\n break;\n case m.UFIActionType.TRANSLATE_COMMENT:\n oa(cb);\n break;\n };\n ;\n };\n ;\n };\n;\n function la(ab, bb, cb) {\n var db = bb.range, eb = bb.values;\n if (!db) {\n v.error(\"nullrange\", {\n target: ab,\n commentList: bb\n });\n return;\n }\n ;\n ;\n var fb = {\n };\n for (var gb = 0; ((gb < db.length)); gb++) {\n fb[((db.offset + gb))] = ((eb[gb] || ca));\n ;\n };\n ;\n var hb, ib;\n if (cb) {\n hb = ea(ab, cb);\n ib = ab;\n }\n else {\n hb = ga(ab);\n ib = bb.ftentidentifier;\n if (((bb.count !== undefined))) {\n z[ab] = bb.count;\n aa[ab] = 0;\n }\n ;\n ;\n }\n ;\n ;\n hb.addResourcesAndExecute(fb);\n l.didUpdateFeedback(ib);\n };\n;\n function ma(ab) {\n ab.forEach(function(bb) {\n z[bb.entidentifier] = bb.commentcount;\n aa[bb.entidentifier] = 0;\n l.didUpdateFeedback(bb.entidentifier);\n });\n };\n;\n function na(ab) {\n var bb = za.getComment(ab.commentid);\n if (bb) {\n var cb = {\n }, db = ((ab.clientid && g.isExistingClientID(ab.clientid)));\n if (!db) {\n cb.hasviewerliked = ab.viewerliked;\n cb.likecount = ab.likecount;\n }\n ;\n ;\n cb.likeconfirmhash = s(0, 1024);\n ya(ab.commentid, cb);\n }\n ;\n ;\n };\n;\n function oa(ab) {\n var bb = ab.commentid, cb = za.getComment(ab.commentid);\n if (cb) {\n ya(bb, {\n translatedtext: ab.translatedtext\n });\n }\n ;\n ;\n };\n;\n function pa(ab) {\n var bb = {\n reportLink: ab.reportLink,\n commenterIsFOF: ab.commenterIsFOF,\n userIsMinor: ab.userIsMinor\n };\n if (ab.undoData) {\n bb.undoData = ab.undoData;\n }\n ;\n ;\n return bb;\n };\n;\n function qa(ab, bb) {\n if (ab) {\n if (((bb !== undefined))) {\n var cb = ((((aa[ab] || 0)) + ((bb ? 1 : -1))));\n aa[ab] = Math.max(cb, 0);\n }\n ;\n ;\n var db = za.getComment(ab);\n if (db) {\n var eb = {\n replycount: za.getDisplayedCommentCount(ab)\n };\n ya(ab, eb);\n }\n ;\n ;\n }\n ;\n ;\n };\n;\n function ra(ab) {\n var bb = za.getComment(ab.commentid);\n if (((bb.JSBNG__status !== m.UFIStatus.DELETED))) {\n var cb = ((bb.parentcommentid || bb.ftentidentifier));\n if (((bb.JSBNG__status === m.UFIStatus.FAILED_ADD))) {\n qa(cb);\n }\n else qa(cb, true);\n ;\n ;\n }\n ;\n ;\n xa(bb, m.UFIStatus.DELETED);\n };\n;\n function sa(ab) {\n var bb = za.getComment(ab.commentid);\n if (((bb && ((bb.JSBNG__status !== m.UFIStatus.DELETED))))) {\n xa(bb, m.UFIStatus.LIVE_DELETED);\n }\n ;\n ;\n };\n;\n function ta(ab) {\n var bb = za.getComment(ab.commentid);\n if (((bb.JSBNG__status === m.UFIStatus.DELETED))) {\n var cb = ((bb.parentcommentid || bb.ftentidentifier));\n qa(cb, false);\n }\n ;\n ;\n xa(bb, m.UFIStatus.PENDING_UNDO_DELETE);\n };\n;\n function ua(ab) {\n ya(ab.commentid, {\n attachment: null\n });\n };\n;\n function va(ab) {\n var bb = za.getComment(ab.commentid), cb = ((ab.shouldHideAsSpam ? m.UFIStatus.SPAM_DISPLAY : null));\n xa(bb, cb);\n };\n;\n function wa(ab) {\n ya(ab.commentid, pa(ab));\n };\n;\n function xa(ab, bb) {\n ya(ab.id, {\n priorstatus: ab.JSBNG__status,\n JSBNG__status: bb\n });\n };\n;\n function ya(ab, bb) {\n var cb = ((za.getComment(ab) || new h({\n })));\n za.setComment(ab, h.set(cb, bb));\n l.didUpdateComment(cb.id);\n l.didUpdateFeedback(cb.ftentidentifier);\n };\n;\n var za = {\n getComments: function(ab) {\n var bb = {\n };\n for (var cb = 0; ((cb < ab.length)); cb++) {\n bb[ab[cb]] = za.getComment(ab[cb]);\n ;\n };\n ;\n return bb;\n },\n getComment: function(ab) {\n return w[da(ab)];\n },\n setComment: function(ab, bb) {\n w[da(ab)] = bb;\n },\n resetFeedbackTarget: function(ab) {\n var bb = fa(ab), cb = {\n };\n bb.forEach(function(eb) {\n var fb = eb.getAllResources();\n {\n var fin97keys = ((window.top.JSBNG_Replay.forInKeys)((fb))), fin97i = (0);\n var gb;\n for (; (fin97i < fin97keys.length); (fin97i++)) {\n ((gb) = (fin97keys[fin97i]));\n {\n var hb = fb[gb];\n cb[hb] = 1;\n };\n };\n };\n ;\n });\n {\n var fin98keys = ((window.top.JSBNG_Replay.forInKeys)((cb))), fin98i = (0);\n var db;\n for (; (fin98i < fin98keys.length); (fin98i++)) {\n ((db) = (fin98keys[fin98i]));\n {\n delete w[da(db)];\n ;\n };\n };\n };\n ;\n ha(ab);\n },\n getCommentsInRange: function(ab, bb, cb, db, eb) {\n var fb = ea(ab, cb);\n n.getFeedbackTarget(ab, function(gb) {\n var hb = [];\n for (var ib = 0; ((ib < bb.length)); ib++) {\n hb.push(((bb.offset + ib)));\n ;\n };\n ;\n var jb = function(pb) {\n var qb = [], rb = bb.offset, sb = ((((bb.offset + bb.length)) - 1));\n for (var tb = 0; ((tb < bb.length)); tb++) {\n var ub = ((gb.isranked ? ((sb - tb)) : ((rb + tb))));\n if (((pb[ub] != ca))) {\n var vb = this.getComment(pb[ub]);\n if (vb) {\n qb.push(vb);\n }\n ;\n ;\n }\n ;\n ;\n };\n ;\n eb(qb);\n }, kb = fb.getUnavailableResourcesFromRequest(hb);\n if (kb.length) {\n var lb = Math.min.apply(Math, kb), mb = Math.max.apply(Math, kb), nb = lb, ob = ((((mb - lb)) + 1));\n k.trySend(\"/ajax/ufi/comment_fetch.php\", {\n ft_ent_identifier: gb.entidentifier,\n viewas: db,\n source: null,\n offset: nb,\n length: ob,\n orderingmode: cb\n });\n }\n else fb.deferredExecuteOrEnqueue(hb).addCallback(jb, this);\n ;\n ;\n }.bind(this));\n },\n getRepliesInRanges: function(ab, bb, cb) {\n var db = {\n }, eb = {\n }, fb = {\n }, gb = false;\n n.getFeedbackTarget(ab, function(hb) {\n {\n var fin99keys = ((window.top.JSBNG_Replay.forInKeys)((bb))), fin99i = (0);\n var ib;\n for (; (fin99i < fin99keys.length); (fin99i++)) {\n ((ib) = (fin99keys[fin99i]));\n {\n var jb = ga(ib), kb = bb[ib], lb = [];\n for (var mb = 0; ((mb < kb.length)); mb++) {\n lb.push(((kb.offset + mb)));\n ;\n };\n ;\n db[ib] = jb.executeOrEnqueue(lb, function(wb) {\n var xb = [];\n for (var yb = 0; ((yb < kb.length)); yb++) {\n var zb = ((kb.offset + yb));\n if (((wb[zb] != ca))) {\n var ac = this.getComment(wb[zb]);\n if (ac) {\n xb.push(ac);\n }\n ;\n ;\n }\n ;\n ;\n };\n ;\n eb[ib] = xb;\n }.bind(this));\n fb[ib] = jb.getUnavailableResources(db[ib]);\n if (fb[ib].length) {\n gb = true;\n jb.unsubscribe(db[ib]);\n }\n ;\n ;\n };\n };\n };\n ;\n if (!gb) {\n cb(eb);\n }\n else {\n var nb = [], ob = [], pb = [];\n {\n var fin100keys = ((window.top.JSBNG_Replay.forInKeys)((fb))), fin100i = (0);\n var qb;\n for (; (fin100i < fin100keys.length); (fin100i++)) {\n ((qb) = (fin100keys[fin100i]));\n {\n var rb = fb[qb];\n if (rb.length) {\n var sb = Math.min.apply(Math, rb), tb = Math.max.apply(Math, rb), ub = sb, vb = ((((tb - sb)) + 1));\n nb.push(qb);\n ob.push(ub);\n pb.push(vb);\n }\n ;\n ;\n };\n };\n };\n ;\n k.trySend(\"/ajax/ufi/reply_fetch.php\", {\n ft_ent_identifier: hb.entidentifier,\n parent_comment_ids: nb,\n source: null,\n offsets: ob,\n lengths: pb\n });\n }\n ;\n ;\n }.bind(this));\n return db;\n },\n getCommentCount: function(ab) {\n return ((z[ab] || 0));\n },\n getDeletedCount: function(ab) {\n return ((aa[ab] || 0));\n },\n getDisplayedCommentCount: function(ab) {\n return ((((z[ab] || 0)) - ((aa[ab] || 0))));\n },\n _dump: function() {\n var ab = {\n _comments: w,\n _commentLists: x,\n _replyLists: y,\n _commentCounts: z,\n _deletedCounts: aa,\n _localIDMap: ba\n };\n return JSON.stringify(ab);\n }\n };\n k.registerEndpoints({\n \"/ajax/ufi/comment_fetch.php\": {\n mode: k.IMMEDIATE,\n handler: l.handleUpdate.bind(l, m.UFIPayloadSourceType.ENDPOINT_COMMENT_FETCH)\n },\n \"/ajax/ufi/reply_fetch.php\": {\n mode: k.IMMEDIATE,\n handler: l.handleUpdate.bind(l, m.UFIPayloadSourceType.ENDPOINT_COMMENT_FETCH)\n }\n });\n l.subscribe(\"update-comments\", function(ab, bb) {\n if (((bb.comments && bb.comments.length))) {\n ia(bb.comments, bb.payloadsource);\n }\n ;\n ;\n });\n l.subscribe(\"update-actions\", function(ab, bb) {\n if (((bb.actions && bb.actions.length))) {\n ka(bb.actions);\n }\n ;\n ;\n });\n l.subscribe(\"update-comment-lists\", function(ab, bb) {\n var cb = bb.commentlists;\n if (((cb && Object.keys(cb).length))) {\n if (cb.comments) {\n {\n var fin101keys = ((window.top.JSBNG_Replay.forInKeys)((cb.comments))), fin101i = (0);\n var db;\n for (; (fin101i < fin101keys.length); (fin101i++)) {\n ((db) = (fin101keys[fin101i]));\n {\n {\n var fin102keys = ((window.top.JSBNG_Replay.forInKeys)((cb.comments[db]))), fin102i = (0);\n var eb;\n for (; (fin102i < fin102keys.length); (fin102i++)) {\n ((eb) = (fin102keys[fin102i]));\n {\n la(db, cb.comments[db][eb], eb);\n ;\n };\n };\n };\n ;\n };\n };\n };\n }\n ;\n ;\n if (cb.replies) {\n {\n var fin103keys = ((window.top.JSBNG_Replay.forInKeys)((cb.replies))), fin103i = (0);\n var fb;\n for (; (fin103i < fin103keys.length); (fin103i++)) {\n ((fb) = (fin103keys[fin103i]));\n {\n la(fb, cb.replies[fb]);\n ;\n };\n };\n };\n }\n ;\n ;\n }\n ;\n ;\n });\n l.subscribe(\"update-feedback\", function(ab, bb) {\n var cb = bb.feedbacktargets;\n if (((cb && cb.length))) {\n ma(cb);\n }\n ;\n ;\n });\n e.exports = za;\n});\n__d(\"UFILikeLink.react\", [\"React\",\"TrackingNodes\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"TrackingNodes\"), i = b(\"tx\"), j = g.createClass({\n displayName: \"UFILikeLink\",\n render: function() {\n var k = ((this.props.likeAction ? \"Like\" : \"Unlike\")), l = h.getTrackingInfo(((this.props.likeAction ? h.types.LIKE_LINK : h.types.UNLIKE_LINK))), m = ((this.props.likeAction ? \"Like this\" : \"Unlike this\"));\n return (g.DOM.a({\n className: \"UFILikeLink\",\n href: \"#\",\n role: \"button\",\n \"aria-live\": \"polite\",\n title: m,\n onClick: this.props.onClick,\n \"data-ft\": l\n }, k));\n }\n });\n e.exports = j;\n});\n__d(\"UFISubscribeLink.react\", [\"React\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"tx\"), i = g.createClass({\n displayName: \"UFISubscribeLink\",\n render: function() {\n var j = ((this.props.subscribeAction ? \"Follow Post\" : \"Unfollow Post\")), k = ((this.props.subscribeAction ? \"Get notified when someone comments\" : \"Stop getting notified when someone comments\"));\n return (g.DOM.a({\n className: \"UFISubscribeLink\",\n href: \"#\",\n role: \"button\",\n \"aria-live\": \"polite\",\n title: k,\n onClick: this.props.onClick\n }, j));\n }\n });\n e.exports = i;\n});\n__d(\"UFITimelineBlingBox.react\", [\"ProfileBrowserLink\",\"ProfileBrowserTypes\",\"React\",\"UFIBlingItem.react\",\"URI\",\"cx\",\"fbt\",], function(a, b, c, d, e, f) {\n var g = b(\"ProfileBrowserLink\"), h = b(\"ProfileBrowserTypes\"), i = b(\"React\"), j = b(\"UFIBlingItem.react\"), k = b(\"URI\"), l = b(\"cx\"), m = b(\"fbt\"), n = i.createClass({\n displayName: \"UFITimelineBlingBox\",\n render: function() {\n var o = [];\n if (((this.props.likes && this.props.enableShowLikes))) {\n var p = this._getProfileBrowserURI(), q = \"See who likes this\", r = i.DOM.a({\n ajaxify: p.dialog,\n className: this._getItemClassName(o),\n \"data-ft\": this.props[\"data-ft\"],\n \"data-gt\": this.props[\"data-gt\"],\n \"data-hover\": \"tooltip\",\n \"data-tooltip-alignh\": \"right\",\n \"data-tooltip-uri\": this._getLikeToolTipURI(),\n href: p.page,\n rel: \"dialog\",\n role: \"button\",\n title: q\n }, j({\n contextArgs: this.props.contextArgs,\n count: this.props.likes,\n iconClassName: \"UFIBlingBoxTimelineLikeIcon\"\n }));\n o.push(r);\n }\n ;\n ;\n if (((this.props.comments && this.props.enableShowComments))) {\n var s = \"Show comments\", t = i.DOM.a({\n \"aria-label\": s,\n className: this._getItemClassName(o),\n \"data-ft\": this.props[\"data-ft\"],\n \"data-hover\": \"tooltip\",\n \"data-tooltip-alignh\": \"right\",\n href: \"#\",\n onClick: this.props.commentOnClick\n }, j({\n contextArgs: this.props.contextArgs,\n count: this.props.comments,\n iconClassName: \"UFIBlingBoxTimelineCommentIcon\"\n }));\n o.push(t);\n }\n ;\n ;\n if (this.props.reshares) {\n var u = \"Show shares\", v = this._getShareViewURI(), w = i.DOM.a({\n ajaxify: v.dialog,\n \"aria-label\": u,\n className: this._getItemClassName(o),\n \"data-ft\": this.props[\"data-ft\"],\n \"data-hover\": \"tooltip\",\n \"data-tooltip-alignh\": \"right\",\n href: v.page,\n rel: \"async\"\n }, j({\n contextArgs: this.props.contextArgs,\n count: this.props.reshares,\n iconClassName: \"UFIBlingBoxTimelineReshareIcon\"\n }));\n o.push(w);\n }\n ;\n ;\n return (i.DOM.span(null, o));\n },\n _getItemClassName: function(o) {\n return ((((((o.length > 0)) ? \"mls\" : \"\")) + ((\" \" + \"UFIBlingBoxTimelineItem\"))));\n },\n _getLikeToolTipURI: function() {\n if (this.props.feedbackFBID) {\n var o = new k(\"/ajax/timeline/likestooltip.php\").setQueryData({\n obj_fbid: this.props.feedbackFBID\n });\n return o.toString();\n }\n else return null\n ;\n },\n _getProfileBrowserURI: function() {\n if (this.props.feedbackFBID) {\n var o = h.LIKES, p = {\n id: this.props.feedbackFBID\n }, q = g.constructDialogURI(o, p), r = g.constructPageURI(o, p), s = {\n dialog: q.toString(),\n page: r.toString()\n };\n return s;\n }\n ;\n ;\n },\n _getShareViewURI: function() {\n if (this.props.feedbackFBID) {\n var o = new k(\"/ajax/shares/view\").setQueryData({\n target_fbid: this.props.feedbackFBID\n }), p = new k(\"/shares/view\").setSubdomain(\"www\").setQueryData({\n id: this.props.feedbackFBID\n }), q = {\n dialog: o.toString(),\n page: p.toString()\n };\n return q;\n }\n ;\n ;\n }\n });\n e.exports = n;\n});\n__d(\"UFIUserActions\", [\"AsyncResponse\",\"CLoggerX\",\"ClientIDs\",\"ImmutableObject\",\"JSLogger\",\"Nectar\",\"UFICentralUpdates\",\"UFIComments\",\"UFIConstants\",\"UFIFeedbackTargets\",\"MercuryServerDispatcher\",\"collectDataAttributes\",\"copyProperties\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncResponse\"), h = b(\"CLoggerX\"), i = b(\"ClientIDs\"), j = b(\"ImmutableObject\"), k = b(\"JSLogger\"), l = b(\"Nectar\"), m = b(\"UFICentralUpdates\"), n = b(\"UFIComments\"), o = b(\"UFIConstants\"), p = b(\"UFIFeedbackTargets\"), q = b(\"MercuryServerDispatcher\"), r = b(\"collectDataAttributes\"), s = b(\"copyProperties\"), t = b(\"tx\"), u = k.create(\"UFIUserActions\"), v = {\n BAN: \"ban\",\n UNDO_BAN: \"undo_ban\"\n }, w = {\n changeCommentLike: function(ka, la, ma) {\n var na = n.getComment(ka);\n if (((na.hasviewerliked != la))) {\n var oa = x(ma.target), pa = ((la ? 1 : -1)), qa = {\n commentid: ka,\n actiontype: o.UFIActionType.COMMENT_LIKE,\n viewerliked: la,\n likecount: ((na.likecount + pa))\n };\n m.handleUpdate(o.UFIPayloadSourceType.USER_ACTION, {\n actions: [qa,]\n });\n q.trySend(\"/ajax/ufi/comment_like.php\", s({\n comment_id: ka,\n legacy_id: na.legacyid,\n like_action: la,\n ft_ent_identifier: na.ftentidentifier,\n source: ma.source,\n client_id: i.getNewClientID()\n }, oa));\n }\n ;\n ;\n },\n addComment: function(ka, la, ma, na) {\n p.getFeedbackTarget(ka, function(oa) {\n var pa = x(na.target), qa = i.getNewClientID();\n if (!oa.actorforpost) {\n return;\n }\n ;\n ;\n var ra = {\n ftentidentifier: ka,\n body: {\n text: la\n },\n author: oa.actorforpost,\n id: qa,\n islocal: true,\n ufiinstanceid: na.ufiinstanceid,\n likecount: 0,\n hasviewerliked: false,\n parentcommentid: na.replyid,\n photo_comment: na.attachedphoto,\n timestamp: {\n time: JSBNG__Date.now(),\n text: \"a few seconds ago\"\n }\n }, sa = {\n actiontype: o.UFIActionType.SUBSCRIBE_ACTION,\n actorid: oa.actorforpost,\n hasviewersubscribed: true,\n entidentifier: ka\n };\n m.handleUpdate(o.UFIPayloadSourceType.USER_ACTION, {\n comments: [ra,],\n actions: [sa,]\n });\n var ta = null;\n if (na.replyid) {\n ta = (n.getComment(na.replyid)).fbid;\n }\n ;\n ;\n var ua = h.getCLParamsForTarget(na.target, ta);\n q.trySend(\"/ajax/ufi/add_comment.php\", s({\n ft_ent_identifier: oa.entidentifier,\n comment_text: ma,\n source: na.source,\n client_id: qa,\n reply_fbid: ta,\n parent_comment_id: na.replyid,\n timeline_log_data: na.timelinelogdata,\n rootid: na.rootid,\n clp: ua,\n attached_photo_fbid: ((na.attachedphoto ? na.attachedphoto.fbid : 0)),\n giftoccasion: na.giftoccasion\n }, pa));\n });\n },\n editComment: function(ka, la, ma, na) {\n var oa = x(na.target), pa = n.getComment(ka);\n pa = j.set(pa, {\n JSBNG__status: o.UFIStatus.PENDING_EDIT,\n body: {\n text: la\n },\n timestamp: {\n time: JSBNG__Date.now(),\n text: \"a few seconds ago\"\n },\n originalTimestamp: pa.timestamp.time,\n editnux: null,\n attachment: null\n });\n m.handleUpdate(o.UFIPayloadSourceType.USER_ACTION, {\n comments: [pa,]\n });\n q.trySend(\"/ajax/ufi/edit_comment.php\", s({\n ft_ent_identifier: pa.ftentidentifier,\n comment_text: ma,\n source: na.source,\n comment_id: pa.id,\n parent_comment_id: pa.parentcommentid,\n attached_photo_fbid: ((na.attachedPhoto ? na.attachedPhoto.fbid : 0))\n }, oa));\n },\n translateComment: function(ka, la) {\n q.trySend(\"/ajax/ufi/translate_comment.php\", {\n ft_ent_identifier: ka.ftentidentifier,\n comment_ids: [ka.id,],\n source: la.source\n });\n },\n setHideAsSpam: function(ka, la, ma) {\n var na = x(ma.target), oa = n.getComment(ka), pa = {\n commentid: ka,\n actiontype: o.UFIActionType.COMMENT_SET_SPAM,\n shouldHideAsSpam: la\n };\n m.handleUpdate(o.UFIPayloadSourceType.USER_ACTION, {\n actions: [pa,]\n });\n q.trySend(\"/ajax/ufi/comment_spam.php\", s({\n comment_id: ka,\n spam_action: la,\n ft_ent_identifier: oa.ftentidentifier,\n source: ma.source\n }, na));\n },\n removeComment: function(ka, la) {\n var ma = x(la.target), na = n.getComment(ka), oa = {\n actiontype: o.UFIActionType.DELETE_COMMENT,\n commentid: ka,\n oneclick: la.oneclick\n };\n m.handleUpdate(o.UFIPayloadSourceType.USER_ACTION, {\n actions: [oa,]\n });\n q.trySend(\"/ajax/ufi/delete_comment.php\", s({\n comment_id: na.id,\n comment_legacyid: na.legacyid,\n ft_ent_identifier: na.ftentidentifier,\n one_click: la.oneclick,\n source: la.source,\n client_id: i.getNewClientID(),\n timeline_log_data: la.timelinelogdata\n }, ma));\n },\n undoRemoveComment: function(ka, la, ma) {\n var na = n.getComment(ka);\n if (!na.undoData) {\n u.error(\"noundodata\", {\n comment: ka\n });\n return;\n }\n ;\n ;\n var oa = x(ma.target), pa = {\n actiontype: o.UFIActionType.UNDO_DELETE_COMMENT,\n commentid: ka\n };\n m.handleUpdate(o.UFIPayloadSourceType.USER_ACTION, {\n actions: [pa,]\n });\n var qa = na.undoData;\n qa.page_admin = la;\n var ra = s(oa, qa);\n q.trySend(\"/ajax/ufi/undo_delete_comment.php\", ra);\n },\n banUser: function(ka, la, ma, na) {\n var oa = ((ma ? v.BAN : v.UNDO_BAN));\n q.trySend(\"/ajax/ufi/ban_user.php\", {\n page_id: la,\n commenter_id: ka.author,\n action: oa,\n comment_id: ka.id,\n client_side: true\n });\n },\n changeLike: function(ka, la, ma) {\n p.getFeedbackTarget(ka, function(na) {\n var oa = x(ma.target);\n if (((na.hasviewerliked !== la))) {\n var pa = ((la ? 1 : -1)), qa = {\n actiontype: o.UFIActionType.LIKE_ACTION,\n actorid: na.actorforpost,\n hasviewerliked: la,\n likecount: ((na.likecount + pa)),\n entidentifier: ka,\n likesentences: {\n current: na.likesentences.alternate,\n alternate: na.likesentences.current\n }\n };\n m.handleUpdate(o.UFIPayloadSourceType.USER_ACTION, {\n actions: [qa,]\n });\n q.trySend(\"/ajax/ufi/like.php\", s({\n like_action: la,\n ft_ent_identifier: ka,\n source: ma.source,\n client_id: i.getNewClientID(),\n rootid: ma.rootid,\n giftoccasion: ma.giftoccasion\n }, oa));\n }\n ;\n ;\n });\n },\n changeSubscribe: function(ka, la, ma) {\n p.getFeedbackTarget(ka, function(na) {\n var oa = x(ma.target);\n if (((na.hasviewersubscribed !== la))) {\n var pa = {\n actiontype: o.UFIActionType.SUBSCRIBE_ACTION,\n actorid: na.actorforpost,\n hasviewersubscribed: la,\n entidentifier: ka\n };\n m.handleUpdate(o.UFIPayloadSourceType.USER_ACTION, {\n actions: [pa,]\n });\n q.trySend(\"/ajax/ufi/subscribe.php\", s({\n subscribe_action: la,\n ft_ent_identifier: ka,\n source: ma.source,\n client_id: i.getNewClientID(),\n rootid: ma.rootid,\n comment_expand_mode: ma.commentexpandmode\n }, oa));\n }\n ;\n ;\n });\n },\n fetchSpamComments: function(ka, la, ma, na) {\n q.trySend(\"/ajax/ufi/id_comment_fetch.php\", {\n ft_ent_identifier: ka,\n viewas: na,\n comment_ids: la,\n parent_comment_id: ma,\n source: null\n });\n },\n removePreview: function(ka, la) {\n var ma = x(la.target), na = {\n commentid: ka.id,\n actiontype: o.UFIActionType.REMOVE_PREVIEW\n };\n m.handleUpdate(o.UFIPayloadSourceType.USER_ACTION, {\n actions: [na,]\n });\n q.trySend(\"/ajax/ufi/remove_preview.php\", s({\n comment_id: ka.id,\n ft_ent_identifier: ka.ftentidentifier,\n source: la.source\n }, ma));\n }\n };\n function x(ka) {\n if (!ka) {\n return {\n ft: {\n }\n };\n }\n ;\n ;\n var la = {\n ft: r(ka, [\"ft\",]).ft\n };\n l.addModuleData(la, ka);\n return la;\n };\n;\n function y(ka) {\n var la = ka.request.data;\n g.defaultErrorHandler(ka);\n var ma = ((la.client_id || la.comment_id)), na = n.getComment(ma), oa = ((((na.JSBNG__status === o.UFIStatus.PENDING_EDIT)) ? o.UFIStatus.FAILED_EDIT : o.UFIStatus.FAILED_ADD));\n na = j.setDeep(na, {\n JSBNG__status: oa,\n allowRetry: z(ka),\n body: {\n mentionstext: la.comment_text\n }\n });\n m.handleUpdate(o.UFIPayloadSourceType.USER_ACTION, {\n comments: [na,]\n });\n };\n;\n function z(ka) {\n var la = ka.getError();\n if (((la === 1404102))) {\n return false;\n }\n ;\n ;\n if (ka.silentError) {\n return true;\n }\n ;\n ;\n if (((((la === 1357012)) || ((la === 1357006))))) {\n return false;\n }\n ;\n ;\n return true;\n };\n;\n function aa(ka) {\n var la = ka.request.data, ma = la.comment_id, na = n.getComment(ma);\n na = j.set(na, {\n JSBNG__status: ((na.priorstatus || null)),\n priorstatus: undefined\n });\n m.handleUpdate(o.UFIPayloadSourceType.USER_ACTION, {\n comments: [na,]\n });\n };\n;\n function ba(ka) {\n var la = ka.request.data, ma = la.comment_id, na = n.getComment(ma);\n if (((la.like_action === na.hasviewerliked))) {\n var oa = ((na.hasviewerliked ? -1 : 1)), pa = {\n commentid: ma,\n actiontype: o.UFIActionType.COMMENT_LIKE,\n viewerliked: !na.hasviewerliked,\n likecount: ((na.likecount + oa))\n };\n m.handleUpdate(o.UFIPayloadSourceType.USER_ACTION, {\n actions: [pa,]\n });\n }\n ;\n ;\n g.defaultErrorHandler(ka);\n };\n;\n function ca(ka) {\n var la = ka.request.data, ma = la.ft_ent_identifier;\n p.getFeedbackTarget(ma, function(na) {\n if (((na.hasviewerliked === la.like_action))) {\n var oa = ((na.hasviewerliked ? -1 : 1)), pa = {\n actiontype: o.UFIActionType.LIKE_ACTION,\n actorid: na.actorforpost,\n hasviewerliked: !na.hasviewerliked,\n likecount: ((na.likecount + oa)),\n entidentifier: ma,\n likesentences: {\n current: na.likesentences.alternate,\n alternate: na.likesentences.current\n }\n };\n m.handleUpdate(o.UFIPayloadSourceType.USER_ACTION, {\n actions: [pa,]\n });\n }\n ;\n ;\n });\n g.defaultErrorHandler(ka);\n };\n;\n function da(ka) {\n var la = ka.request.data, ma = la.ft_ent_identifier;\n p.getFeedbackTarget(ma, function(na) {\n if (((na.hasviewersubscribed === la.subscribe_action))) {\n var oa = {\n actiontype: o.UFIActionType.SUBSCRIBE_ACTION,\n actorid: na.actorforpost,\n hasviewersubscribed: !na.hasviewersubscribed,\n entidentifier: ma\n };\n m.handleUpdate(o.UFIPayloadSourceType.USER_ACTION, {\n actions: [oa,]\n });\n }\n ;\n ;\n });\n g.defaultErrorHandler(ka);\n };\n;\n var ea = function(ka) {\n return m.handleUpdate.bind(m, ka);\n }, fa = o.UFIPayloadSourceType;\n q.registerEndpoints({\n \"/ajax/ufi/comment_like.php\": {\n mode: q.BATCH_CONDITIONAL,\n handler: ea(fa.ENDPOINT_COMMENT_LIKE),\n error_handler: ba,\n batch_if: ga,\n batch_function: ja\n },\n \"/ajax/ufi/comment_spam.php\": {\n mode: q.IMMEDIATE,\n handler: ea(fa.ENDPOINT_COMMENT_SPAM),\n error_handler: aa\n },\n \"/ajax/ufi/add_comment.php\": {\n mode: q.IMMEDIATE,\n handler: ea(fa.ENDPOINT_ADD_COMMENT),\n error_handler: y\n },\n \"/ajax/ufi/delete_comment.php\": {\n mode: q.IMMEDIATE,\n handler: ea(fa.ENDPOINT_DELETE_COMMENT),\n error_handler: aa\n },\n \"/ajax/ufi/undo_delete_comment.php\": {\n mode: q.IMMEDIATE,\n handler: ea(fa.ENDPOINT_UNDO_DELETE_COMMENT),\n error_handler: aa\n },\n \"/ajax/ufi/ban_user.php\": {\n mode: q.IMMEDIATE,\n handler: ea(fa.ENDPOINT_BAN)\n },\n \"/ajax/ufi/edit_comment.php\": {\n mode: q.IMMEDIATE,\n handler: ea(fa.ENDPOINT_EDIT_COMMENT),\n error_handler: y\n },\n \"/ajax/ufi/like.php\": {\n mode: q.BATCH_CONDITIONAL,\n handler: ea(fa.ENDPOINT_LIKE),\n error_handler: ca,\n batch_if: ha,\n batch_function: ja\n },\n \"/ajax/ufi/subscribe.php\": {\n mode: q.BATCH_CONDITIONAL,\n handler: ea(fa.ENDPOINT_SUBSCRIBE),\n error_handler: da,\n batch_if: ia,\n batch_function: ja\n },\n \"/ajax/ufi/id_comment_fetch.php\": {\n mode: q.IMMEDIATE,\n handler: ea(fa.ENDPOINT_ID_COMMENT_FETCH)\n },\n \"/ajax/ufi/remove_preview.php\": {\n mode: q.IMMEDIATE,\n handler: ea(fa.ENDPOINT_REMOVE_PREVIEW)\n },\n \"/ajax/ufi/translate_comment.php\": {\n mode: q.IMMEDIATE,\n handler: ea(fa.ENDPOINT_TRANSLATE_COMMENT)\n }\n });\n function ga(ka, la) {\n return ((((ka && ((ka.ft_ent_identifier == la.ft_ent_identifier)))) && ((ka.comment_id == la.comment_id))));\n };\n;\n function ha(ka, la) {\n return ((ka && ((ka.ft_ent_identifier == la.ft_ent_identifier))));\n };\n;\n function ia(ka, la) {\n return ((ka && ((ka.ft_ent_identifier == la.ft_ent_identifier))));\n };\n;\n function ja(ka, la) {\n return la;\n };\n;\n e.exports = w;\n});\n__d(\"UFIActionLinkController\", [\"Arbiter\",\"ClickTTIIdentifiers\",\"JSBNG__CSS\",\"DOMQuery\",\"Parent\",\"React\",\"TrackingNodes\",\"UFIBlingBox.react\",\"UFICentralUpdates\",\"UFIComments\",\"UFIConstants\",\"UFIFeedbackTargets\",\"UFILikeLink.react\",\"UFISubscribeLink.react\",\"UFITimelineBlingBox.react\",\"UFIUserActions\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ClickTTIIdentifiers\"), i = b(\"JSBNG__CSS\"), j = b(\"DOMQuery\"), k = b(\"Parent\"), l = b(\"React\"), m = b(\"TrackingNodes\"), n = b(\"UFIBlingBox.react\"), o = b(\"UFICentralUpdates\"), p = b(\"UFIComments\"), q = b(\"UFIConstants\"), r = b(\"UFIFeedbackTargets\"), s = b(\"UFILikeLink.react\"), t = b(\"UFISubscribeLink.react\"), u = b(\"UFITimelineBlingBox.react\"), v = b(\"UFIUserActions\"), w = b(\"copyProperties\");\n function x(z, aa, ba) {\n if (this._root) {\n throw new Error(((\"UFIActionLinkController attempted to initialize when a root was\" + \" already present\")));\n }\n ;\n ;\n var ca = j.scry(z, aa)[0];\n if (ca) {\n var da = JSBNG__document.createElement(\"span\");\n ca.parentNode.replaceChild(da, ca);\n da.appendChild(ca);\n if (((typeof ba === \"function\"))) {\n ba(da);\n }\n ;\n ;\n }\n else var ea = g.subscribe(\"PhotoSnowlift.DATA_CHANGE\", function() {\n g.unsubscribe(ea);\n x(z, aa, ba);\n }, g.SUBSCRIBE_NEW)\n ;\n };\n;\n var y = function(z, aa, ba) {\n this._id = aa.ftentidentifier;\n this._ftFBID = ba.targetfbid;\n this._source = aa.source;\n this._contextArgs = aa;\n this._ufiRoot = z;\n if (this._isSourceProfile(this._contextArgs.source)) {\n this._attemptInitializeTimelineBling();\n }\n else this._attemptInitializeBling();\n ;\n ;\n if (ba.viewercanlike) {\n this._attemptInitializeLike();\n }\n ;\n ;\n if (ba.viewercansubscribetopost) {\n this._attemptInitializeSubscribe();\n }\n ;\n ;\n o.subscribe(\"feedback-updated\", function(ca, da) {\n var ea = da.updates;\n if (((this._id in ea))) {\n this.render();\n }\n ;\n ;\n }.bind(this));\n o.subscribe(\"feedback-id-changed\", function(ca, da) {\n var ea = da.updates;\n if (((this._id in ea))) {\n this._id = ea[this._id];\n }\n ;\n ;\n }.bind(this));\n };\n w(y.prototype, {\n _attemptInitializeBling: function() {\n x(this._ufiRoot, \"^form .uiBlingBox\", function(z) {\n this._blingRoot = z;\n if (this._dataReady) {\n this._renderBling();\n }\n ;\n ;\n }.bind(this));\n },\n _attemptInitializeTimelineBling: function() {\n if (this._root) {\n throw new Error(((\"UFIActionLinkController attempted to initialize when a root was\" + \" already present\")));\n }\n ;\n ;\n var z = j.scry(this._ufiRoot, \"^form .fbTimelineFeedbackActions span\")[0];\n if (z) {\n i.addClass(z, \"UFIBlingBoxTimeline\");\n var aa = j.scry(z, \".fbTimelineFeedbackLikes\")[0];\n this._enableShowLikes = ((aa ? true : false));\n var ba = j.scry(z, \".fbTimelineFeedbackComments\")[0];\n this._enableShowComments = ((ba ? true : false));\n }\n ;\n ;\n this._blingTimelineRoot = z;\n if (this._dataReady) {\n this._renderTimelineBling();\n }\n ;\n ;\n },\n _attemptInitializeLike: function() {\n x(this._ufiRoot, \"^form .like_link\", function(z) {\n this._likeRoot = z;\n if (this._dataReady) {\n this._renderLike();\n }\n ;\n ;\n }.bind(this));\n },\n _attemptInitializeSubscribe: function() {\n x(this._ufiRoot, \"^form .unsub_link\", function(z) {\n this._subscribeRoot = z;\n if (this._dataReady) {\n this._renderSubscribe();\n }\n ;\n ;\n }.bind(this));\n },\n render: function() {\n this._dataReady = true;\n if (this._isSourceProfile(this._contextArgs.source)) {\n this._renderTimelineBling();\n }\n else this._renderBling();\n ;\n ;\n this._renderLike();\n this._renderSubscribe();\n },\n _renderBling: function() {\n if (this._blingRoot) {\n r.getFeedbackTarget(this._id, function(z) {\n var aa = function(JSBNG__event) {\n var da = k.byTag(JSBNG__event.target, \"form\");\n i.toggleClass(da, \"collapsed_comments\");\n i.toggleClass(da, \"hidden_add_comment\");\n JSBNG__event.preventDefault();\n }.bind(this), ba = m.getTrackingInfo(m.types.BLINGBOX), ca = n({\n likes: z.likecount,\n comments: p.getDisplayedCommentCount(this._id),\n reshares: z.sharecount,\n permalink: z.permalink,\n contextArgs: this._contextArgs,\n onClick: aa,\n \"data-ft\": ba\n });\n this._blingBox = l.renderComponent(ca, this._blingRoot);\n }.bind(this));\n }\n ;\n ;\n },\n _renderTimelineBling: function() {\n if (this._blingTimelineRoot) {\n r.getFeedbackTarget(this._id, function(z) {\n var aa = m.getTrackingInfo(m.types.BLINGBOX), ba = h.getUserActionID(h.types.TIMELINE_SEE_LIKERS), ca = function(JSBNG__event) {\n var ea = k.byTag(JSBNG__event.target, \"form\");\n i.removeClass(ea, \"collapsed_comments\");\n var fa = j.scry(ea, \"a.UFIPagerLink\");\n if (fa.length) {\n fa[0].click();\n }\n ;\n ;\n JSBNG__event.preventDefault();\n }.bind(this), da = u({\n comments: p.getDisplayedCommentCount(this._id),\n commentOnClick: ca,\n contextArgs: this._contextArgs,\n \"data-ft\": aa,\n \"data-gt\": ba,\n enableShowComments: this._enableShowComments,\n enableShowLikes: this._enableShowLikes,\n feedbackFBID: this._ftFBID,\n likes: z.likecount,\n reshares: z.sharecount\n });\n l.renderComponent(da, this._blingTimelineRoot);\n }.bind(this));\n }\n ;\n ;\n },\n _renderLike: function() {\n if (this._likeRoot) {\n r.getFeedbackTarget(this._id, function(z) {\n var aa = !z.hasviewerliked, ba = function(JSBNG__event) {\n v.changeLike(this._id, aa, {\n source: this._source,\n target: JSBNG__event.target,\n rootid: this._contextArgs.rootid,\n giftoccasion: this._contextArgs.giftoccasion\n });\n JSBNG__event.preventDefault();\n }.bind(this), ca = s({\n onClick: ba,\n likeAction: aa\n });\n this._likeLink = l.renderComponent(ca, this._likeRoot);\n }.bind(this));\n }\n ;\n ;\n },\n _renderSubscribe: function() {\n if (this._subscribeRoot) {\n r.getFeedbackTarget(this._id, function(z) {\n var aa = !z.hasviewersubscribed, ba = function(JSBNG__event) {\n v.changeSubscribe(this._id, aa, {\n source: this._source,\n target: JSBNG__event.target,\n rootid: this._contextArgs.rootid,\n commentexpandmode: z.commentexpandmode\n });\n JSBNG__event.preventDefault();\n }.bind(this), ca = t({\n onClick: ba,\n subscribeAction: aa\n });\n this._subscribeLink = l.renderComponent(ca, this._subscribeRoot);\n }.bind(this));\n }\n ;\n ;\n },\n _isSourceProfile: function(z) {\n return ((z === q.UFIFeedbackSourceType.PROFILE));\n }\n });\n e.exports = y;\n});\n__d(\"MentionsInputUtils\", [], function(a, b, c, d, e, f) {\n var g = {\n generateDataFromTextWithEntities: function(h) {\n var i = h.text, j = [];\n ((h.ranges || [])).forEach(function(l) {\n var m = l.entities[0];\n if (!m.JSBNG__external) {\n j.push({\n uid: m.id,\n text: i.substr(l.offset, l.length),\n offset: l.offset,\n length: l.length,\n weakreference: !!m.weakreference\n });\n }\n ;\n ;\n });\n var k = {\n value: i,\n mentions: j\n };\n return k;\n }\n };\n e.exports = g;\n});\n__d(\"ClipboardPhotoUploader\", [\"ArbiterMixin\",\"AsyncRequest\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"AsyncRequest\"), i = b(\"copyProperties\");\n function j(k, l) {\n this.uploadURIString = k;\n this.data = l;\n };\n;\n i(j.prototype, g, {\n handlePaste: function(JSBNG__event) {\n if (!JSBNG__event.JSBNG__clipboardData) {\n return;\n }\n ;\n ;\n var k = JSBNG__event.JSBNG__clipboardData.items;\n if (!k) {\n return;\n }\n ;\n ;\n for (var l = 0; ((l < k.length)); ++l) {\n var m = k[l];\n if (((((m.kind === \"file\")) && ((m.type.indexOf(\"image/\") !== -1))))) {\n var n = new JSBNG__FormData();\n n.append(\"pasted_file\", m.getAsFile());\n var o = new h();\n o.setURI(this.uploadURIString).setData(this.data).setRawData(n).setHandler(function(p) {\n this.inform(\"upload_success\", p);\n }.bind(this)).setErrorHandler(function(p) {\n this.inform(\"upload_error\", p);\n }.bind(this));\n this.inform(\"upload_start\");\n o.send();\n break;\n }\n ;\n ;\n };\n ;\n }\n });\n e.exports = j;\n});\n__d(\"LegacyMentionsInput.react\", [\"PlaceholderListener\",\"Bootloader\",\"JSBNG__Event\",\"Keys\",\"React\",\"cx\",], function(a, b, c, d, e, f) {\n b(\"PlaceholderListener\");\n var g = b(\"Bootloader\"), h = b(\"JSBNG__Event\"), i = b(\"Keys\"), j = b(\"React\"), k = b(\"cx\"), l = j.createClass({\n displayName: \"ReactLegacyMentionsInput\",\n componentDidMount: function(m) {\n ((this.props.initialData && this._initializeTextarea(m)));\n },\n hasEnteredText: function() {\n return !!((this._mentionsInput && this._mentionsInput.getValue().trim()));\n },\n _handleKeydown: function(JSBNG__event) {\n var m = JSBNG__event.nativeEvent, n = this.props.onEnterSubmit, o = ((((h.getKeyCode(m) == i.RETURN)) && !h.$E(m).getModifiers().any)), p = ((this._mentionsInput && this._mentionsInput.getTypeahead().getView().JSBNG__getSelection()));\n if (((((n && o)) && !p))) {\n if (this.props.isLoadingPhoto) {\n return false;\n }\n ;\n ;\n var q = JSBNG__event.target, r = ((q.value && q.value.trim()));\n if (((r || this.props.acceptEmptyInput))) {\n var s = {\n visibleValue: r,\n encodedValue: r,\n attachedPhoto: null\n };\n if (this._mentionsInput) {\n s.encodedValue = this._mentionsInput.getRawValue().trim();\n this._mentionsInput.reset();\n }\n ;\n ;\n n(s, JSBNG__event);\n }\n ;\n ;\n JSBNG__event.preventDefault();\n }\n ;\n ;\n },\n _handleFocus: function() {\n ((this.props.onFocus && this.props.onFocus()));\n this._initializeTextarea(this.refs.root.getDOMNode());\n },\n _handleBlur: function() {\n ((this.props.onBlur && this.props.onBlur()));\n },\n _initializeTextarea: function(m) {\n if (((this._mentionsInput || this._bootloadingMentions))) {\n return;\n }\n ;\n ;\n this._bootloadingMentions = true;\n g.loadModules([\"CompactTypeaheadRenderer\",\"ContextualTypeaheadView\",\"InputSelection\",\"MentionsInput\",\"TextAreaControl\",\"Typeahead\",\"TypeaheadAreaCore\",\"TypeaheadBestName\",\"TypeaheadHoistFriends\",\"TypeaheadMetrics\",\"TypingDetector\",], function(n, o, p, q, r, s, t, u, v, w, x) {\n var y = this.refs.textarea.getDOMNode();\n new r(y);\n if (this.props.onTypingStateChange) {\n var z = new x(y);\n z.init();\n z.subscribe(\"change\", this.props.onTypingStateChange);\n }\n ;\n ;\n var aa = {\n autoSelect: true,\n renderer: n,\n causalElement: y\n };\n if (this.props.viewOptionsTypeObjects) {\n aa.typeObjects = this.props.viewOptionsTypeObjects;\n }\n ;\n ;\n if (this.props.viewOptionsTypeObjectsOrder) {\n aa.typeObjectsOrder = this.props.viewOptionsTypeObjectsOrder;\n }\n ;\n ;\n var ba = new s(this.props.datasource, {\n ctor: o,\n options: aa\n }, {\n ctor: t\n }, this.refs.typeahead.getDOMNode()), ca = [u,v,], da = new w({\n extraData: {\n event_name: \"mentions\"\n }\n });\n s.initNow(ba, ca, da);\n this._mentionsInput = new q(m, ba, y, {\n hashtags: this.props.sht\n });\n this._mentionsInput.init({\n max: 6\n }, this.props.initialData);\n if (this.props.initialData) {\n p.set(y, y.value.length);\n }\n ;\n ;\n if (this.props.onPaste) {\n h.listen(y, \"paste\", this.props.onPaste);\n }\n ;\n ;\n this._bootloadingMentions = false;\n }.bind(this));\n },\n JSBNG__focus: function() {\n try {\n this.refs.textarea.getDOMNode().JSBNG__focus();\n } catch (m) {\n \n };\n ;\n },\n render: function() {\n var m = (((((((((((\"textInput\") + ((\" \" + \"mentionsTextarea\")))) + ((\" \" + \"uiTextareaAutogrow\")))) + ((\" \" + \"uiTextareaNoResize\")))) + ((\" \" + \"UFIAddCommentInput\")))) + ((\" \" + \"DOMControl_placeholder\"))));\n return (j.DOM.div({\n ref: \"root\",\n className: \"uiMentionsInput textBoxContainer ReactLegacyMentionsInput\"\n }, j.DOM.div({\n className: \"highlighter\"\n }, j.DOM.div(null, j.DOM.span({\n className: \"highlighterContent hidden_elem\"\n }))), j.DOM.div({\n ref: \"typeahead\",\n className: \"uiTypeahead mentionsTypeahead\"\n }, j.DOM.div({\n className: \"wrap\"\n }, j.DOM.input({\n type: \"hidden\",\n autocomplete: \"off\",\n className: \"hiddenInput\"\n }), j.DOM.div({\n className: \"innerWrap\"\n }, j.DOM.textarea({\n ref: \"textarea\",\n JSBNG__name: \"add_comment_text\",\n className: m,\n title: this.props.placeholder,\n placeholder: this.props.placeholder,\n onFocus: this._handleFocus,\n onBlur: this._handleBlur,\n onKeyDown: this._handleKeydown,\n defaultValue: this.props.placeholder\n })))), j.DOM.input({\n type: \"hidden\",\n autocomplete: \"off\",\n className: \"mentionsHidden\",\n defaultValue: \"\"\n })));\n }\n });\n e.exports = l;\n});\n__d(\"UFIAddComment.react\", [\"Bootloader\",\"CLogConfig\",\"ClipboardPhotoUploader\",\"CloseButton.react\",\"JSBNG__Event\",\"Keys\",\"LoadingIndicator.react\",\"React\",\"LegacyMentionsInput.react\",\"TrackingNodes\",\"Run\",\"UFIClassNames\",\"UFIImageBlock.react\",\"cx\",\"fbt\",\"joinClasses\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Bootloader\"), h = b(\"CLogConfig\"), i = b(\"ClipboardPhotoUploader\"), j = b(\"CloseButton.react\"), k = b(\"JSBNG__Event\"), l = b(\"Keys\"), m = b(\"LoadingIndicator.react\"), n = b(\"React\"), o = b(\"LegacyMentionsInput.react\"), p = b(\"TrackingNodes\"), q = b(\"Run\"), r = b(\"UFIClassNames\"), s = b(\"UFIImageBlock.react\"), t = b(\"cx\"), u = b(\"fbt\"), v = b(\"joinClasses\"), w = b(\"tx\"), x = \"Write a comment...\", y = \"Write a reply...\", z = \"fcg fss UFICommentTip\", aa = 19, ba = \"/ajax/ufi/upload/\", ca = n.createClass({\n displayName: \"UFIAddComment\",\n getInitialState: function() {\n if (this.props.attachedPhoto) {\n this.props.contextArgs.attachedphoto = this.props.attachedPhoto;\n }\n ;\n ;\n return {\n attachedPhoto: ((this.props.attachedPhoto ? this.props.attachedPhoto : null)),\n isCommenting: false,\n isLoadingPhoto: false,\n isOnBeforeUnloadListenerAdded: false\n };\n },\n _onKeyDown: function(JSBNG__event) {\n if (((this.props.isEditing && ((k.getKeyCode(JSBNG__event.nativeEvent) === l.ESC))))) {\n this.props.onCancel();\n }\n ;\n ;\n if (((this.isMounted() && !this.state.isOnBeforeUnloadListenerAdded))) {\n q.onBeforeUnload(this._handleUnsavedChanges);\n this.setState({\n isOnBeforeUnloadListenerAdded: true\n });\n }\n ;\n ;\n },\n _handleUnsavedChanges: function() {\n var da = a.PageTransitions;\n if (da) {\n var ea = da.getNextURI(), fa = da.getMostRecentURI();\n if (((ea.getQueryData().hasOwnProperty(\"theater\") || fa.getQueryData().hasOwnProperty(\"theater\")))) {\n return;\n }\n ;\n ;\n }\n ;\n ;\n if (((((this.refs && this.refs.mentionsinput)) && this.refs.mentionsinput.hasEnteredText()))) {\n return \"You haven't finished your comment yet. Do you want to leave without finishing?\";\n }\n ;\n ;\n },\n _blur: function() {\n if (((this.refs.mentionsinput && this.refs.mentionsinput.hasEnteredText()))) {\n return;\n }\n ;\n ;\n this.setState({\n isCommenting: false\n });\n },\n _onPaste: function(JSBNG__event) {\n var da = new i(ba, this._getPhotoUploadData());\n this._cancelCurrentSubscriptions();\n this._subscriptions = [da.subscribe(\"upload_start\", this._prepareForAttachedPhotoPreview),da.subscribe(\"upload_error\", this._onRemoveAttachedPhotoPreviewClicked),da.subscribe(\"upload_success\", function(ea, fa) {\n this._onPhotoUploadComplete(fa);\n }.bind(this)),];\n da.handlePaste(JSBNG__event);\n },\n _cancelCurrentSubscriptions: function() {\n if (this._subscriptions) {\n this._subscriptions.forEach(function(da) {\n da.unsubscribe();\n });\n }\n ;\n ;\n },\n componentWillUnmount: function() {\n this._cancelCurrentSubscriptions();\n },\n JSBNG__focus: function() {\n if (((this.refs && this.refs.mentionsinput))) {\n this.refs.mentionsinput.JSBNG__focus();\n }\n ;\n ;\n },\n render: function() {\n var da = ((!this.props.contextArgs.collapseaddcomment || this.state.isCommenting)), ea = null;\n if (this.props.isEditing) {\n ea = n.DOM.span({\n className: z\n }, \"Press Esc to cancel.\");\n }\n else if (this.props.showSendOnEnterTip) {\n ea = n.DOM.span({\n className: z\n }, \"Press Enter to post.\");\n }\n else if (this.props.subtitle) {\n ea = n.DOM.span({\n className: z\n }, this.props.subtitle);\n }\n \n \n ;\n ;\n var fa = null, ga = this.state.attachedPhoto, ha = null;\n if (this.props.allowPhotoAttachments) {\n ha = this._onPaste;\n var ia = \"Choose a file to upload\", ja = n.DOM.input({\n ref: \"PhotoInput\",\n accept: \"image/*\",\n className: \"-cx-PRIVATE-uiFileInput__input\",\n JSBNG__name: \"file[]\",\n type: \"file\",\n multiple: false,\n title: ia\n }), ka = ((ga ? \"UFICommentPhotoAttachedIcon\" : \"UFICommentPhotoIcon\")), la = \"UFIPhotoAttachLinkWrapper -cx-PRIVATE-uiFileInput__container\";\n fa = n.DOM.div({\n ref: \"PhotoInputContainer\",\n className: la,\n \"data-hover\": \"tooltip\",\n \"data-tooltip-alignh\": \"center\",\n \"aria-label\": \"Attach a Photo\"\n }, n.DOM.i({\n ref: \"PhotoInputControl\",\n className: ka\n }), ja);\n }\n ;\n ;\n var ma = p.getTrackingInfo(p.types.ADD_COMMENT_BOX), na = v(r.ACTOR_IMAGE, ((!da ? \"hidden_elem\" : \"\"))), oa = n.DOM.div({\n className: \"UFIReplyActorPhotoWrapper\"\n }, n.DOM.img({\n className: na,\n src: this.props.viewerActor.thumbSrc\n })), pa = v(r.ROW, ((((((((((((this.props.hide ? \"noDisplay\" : \"\")) + ((\" \" + \"UFIAddComment\")))) + ((this.props.allowPhotoAttachments ? ((\" \" + \"UFIAddCommentWithPhotoAttacher\")) : \"\")))) + ((this.props.withoutSeparator ? ((\" \" + \"UFIAddCommentWithoutSeparator\")) : \"\")))) + ((this.props.isFirstComponent ? ((\" \" + \"UFIFirstComponent\")) : \"\")))) + ((this.props.isLastComponent ? ((\" \" + \"UFILastComponent\")) : \"\"))))), qa = ((!!this.props.replyCommentID ? y : x)), ra = ((this.props.contextArgs.entstream ? this._blur : null)), sa = this.props.contextArgs.viewoptionstypeobjects, ta = this.props.contextArgs.viewoptionstypeobjectsorder, ua = null, va = this.props.onCommentSubmit;\n if (ga) {\n ua = n.DOM.div({\n isStatic: true,\n dangerouslySetInnerHTML: ((this.state.attachedPhoto.markupPreview ? this.state.attachedPhoto.markupPreview : this.state.attachedPhoto.markup))\n });\n ea = null;\n }\n else if (this.state.isLoadingPhoto) {\n ua = m({\n color: \"white\",\n className: \"UFICommentPhotoAttachedPreviewLoadingIndicator\",\n size: \"medium\"\n });\n }\n \n ;\n ;\n var wa;\n if (((ua != null))) {\n wa = n.DOM.div({\n className: \"UFICommentPhotoAttachedPreview pas\"\n }, ua, j({\n onClick: this._onRemoveAttachedPhotoPreviewClicked\n }));\n va = function(xa, JSBNG__event) {\n this.setState({\n isLoadingPhoto: false,\n attachedPhoto: null\n });\n xa.attachedPhoto = this.props.contextArgs.attachedphoto;\n this.props.onCommentSubmit(xa, JSBNG__event);\n }.bind(this);\n }\n ;\n ;\n return (n.DOM.li({\n className: pa,\n onKeyDown: this._onKeyDown,\n \"data-ft\": ma\n }, s({\n className: \"UFIMentionsInputWrap\"\n }, oa, n.DOM.div(null, o({\n initialData: this.props.initialData,\n placeholder: qa,\n ref: \"mentionsinput\",\n datasource: this.props.mentionsDataSource,\n acceptEmptyInput: ((this.props.isEditing || this.props.contextArgs.attachedphoto)),\n onEnterSubmit: va,\n onFocus: this.setState.bind(this, {\n isCommenting: true\n }, null),\n viewOptionsTypeObjects: sa,\n viewOptionsTypeObjectsOrder: ta,\n onBlur: ra,\n onTypingStateChange: this.props.onTypingStateChange,\n onPaste: ha,\n sht: this.props.contextArgs.sht,\n isLoadingPhoto: this.state.isLoadingPhoto\n }), fa, wa, ea))));\n },\n componentDidMount: function(da) {\n if (h.gkResults) {\n var ea = this.props.replyCommentID;\n if (((this.refs && this.refs.mentionsinput))) {\n var fa = this.refs.mentionsinput.refs.textarea.getDOMNode();\n g.loadModules([\"CLoggerX\",\"UFIComments\",], function(ka, la) {\n var ma = la.getComment(ea), na = ((ma ? ma.fbid : null));\n ka.trackMentionsInput(fa, na);\n });\n }\n ;\n ;\n }\n ;\n ;\n if (!this.props.allowPhotoAttachments) {\n return;\n }\n ;\n ;\n var ga = this.refs.PhotoInputContainer.getDOMNode(), ha = this.refs.PhotoInputControl.getDOMNode(), ia = this.refs.PhotoInput.getDOMNode(), ja = k.listen(ga, \"click\", function(JSBNG__event) {\n g.loadModules([\"FileInput\",\"FileInputUploader\",\"Input\",], function(ka, la, ma) {\n var na = new ka(ga, ha, ia), oa = new la().setURI(ba).setData(this._getPhotoUploadData());\n na.subscribe(\"change\", function(JSBNG__event) {\n if (na.getValue()) {\n this._prepareForAttachedPhotoPreview();\n oa.setInput(na.getInput()).send();\n }\n ;\n ;\n }.bind(this));\n oa.subscribe(\"success\", function(pa, qa) {\n na.clear();\n this._onPhotoUploadComplete(qa.response);\n }.bind(this));\n }.bind(this));\n ja.remove();\n }.bind(this));\n },\n _getPhotoUploadData: function() {\n return {\n profile_id: this.props.viewerActor.id,\n target_id: this.props.targetID,\n source: aa\n };\n },\n _onPhotoUploadComplete: function(da) {\n if (!this.state.isLoadingPhoto) {\n return;\n }\n ;\n ;\n var ea = da.getPayload();\n if (((ea && ea.fbid))) {\n this.props.contextArgs.attachedphoto = ea;\n this.setState({\n attachedPhoto: ea,\n isLoadingPhoto: false\n });\n }\n ;\n ;\n },\n _onRemoveAttachedPhotoPreviewClicked: function(JSBNG__event) {\n this.props.contextArgs.attachedphoto = null;\n this.setState({\n attachedPhoto: null,\n isLoadingPhoto: false\n });\n },\n _prepareForAttachedPhotoPreview: function() {\n this.props.contextArgs.attachedphoto = null;\n this.setState({\n attachedPhoto: null,\n isLoadingPhoto: true\n });\n }\n });\n e.exports = ca;\n});\n__d(\"UFIAddCommentController\", [\"Arbiter\",\"copyProperties\",\"MentionsInputUtils\",\"Parent\",\"UFIAddComment.react\",\"React\",\"ShortProfiles\",\"UFICentralUpdates\",\"UFIComments\",\"UFIFeedbackTargets\",\"UFIInstanceState\",\"UFIUserActions\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"copyProperties\"), i = b(\"MentionsInputUtils\"), j = b(\"Parent\"), k = b(\"UFIAddComment.react\"), l = b(\"React\"), m = b(\"ShortProfiles\"), n = b(\"UFICentralUpdates\"), o = b(\"UFIComments\"), p = b(\"UFIFeedbackTargets\"), q = b(\"UFIInstanceState\"), r = b(\"UFIUserActions\");\n function s(t, u, v, w) {\n this.id = u;\n this._ufiInstanceID = w.instanceid;\n this._contextArgs = w;\n this._replyCommentID = v;\n if (t) {\n this.root = t;\n if (!this._contextArgs.rootid) {\n this._contextArgs.rootid = t.id;\n }\n ;\n ;\n this.render();\n n.subscribe(\"instance-updated\", function(x, y) {\n var z = y.updates;\n if (((this._ufiInstanceID in z))) {\n this.render();\n }\n ;\n ;\n }.bind(this));\n }\n ;\n ;\n n.subscribe(\"feedback-id-changed\", function(x, y) {\n var z = y.updates;\n if (((this.id in z))) {\n this.id = z[this.id];\n }\n ;\n ;\n }.bind(this));\n };\n;\n h(s.prototype, {\n _onCommentSubmit: function(t, JSBNG__event) {\n r.addComment(this.id, t.visibleValue, t.encodedValue, {\n source: this._contextArgs.source,\n ufiinstanceid: this._ufiInstanceID,\n target: JSBNG__event.target,\n replyid: this._replyCommentID,\n timelinelogdata: this._contextArgs.timelinelogdata,\n rootid: this._contextArgs.rootid,\n attachedphoto: this._contextArgs.attachedphoto,\n giftoccasion: this._contextArgs.giftoccasion\n });\n this._contextArgs.attachedphoto = null;\n p.getFeedbackTarget(this.id, function(u) {\n var v = j.byTag(this.root, \"form\");\n if (v) {\n g.inform(\"ufi/comment\", {\n form: v,\n isranked: u.isranked\n });\n }\n ;\n ;\n }.bind(this));\n return false;\n },\n _onTypingStateChange: function(t, u) {\n \n },\n renderAddComment: function(t, u, v, w, x, y, z, aa) {\n var ba = ((this._contextArgs.logtyping ? this._onTypingStateChange.bind(this) : null)), ca = null, da = ((q.getKeyForInstance(this._ufiInstanceID, \"isediting\") && !this._replyCommentID));\n return (k({\n hide: da,\n replyCommentID: this._replyCommentID,\n viewerActor: t,\n targetID: u,\n initialData: ca,\n ref: x,\n withoutSeparator: y,\n onCommentSubmit: this._onCommentSubmit.bind(this),\n mentionsDataSource: v,\n onTypingStateChange: ba,\n showSendOnEnterTip: w,\n allowPhotoAttachments: z,\n source: this._contextArgs.source,\n contextArgs: this._contextArgs,\n subtitle: aa\n }));\n },\n renderEditComment: function(t, u, v, w, x, y, z) {\n var aa = o.getComment(v), ba = i.generateDataFromTextWithEntities(aa.body);\n return (k({\n viewerActor: t,\n targetID: u,\n initialData: ba,\n onCommentSubmit: x,\n onCancel: y,\n mentionsDataSource: w,\n source: this._contextArgs.source,\n contextArgs: this._contextArgs,\n isEditing: true,\n editingCommentID: v,\n attachedPhoto: aa.photo_comment,\n allowPhotoAttachments: z\n }));\n },\n render: function() {\n if (!this.root) {\n throw new Error(\"render called on UFIAddCommentController with no root\");\n }\n ;\n ;\n p.getFeedbackTarget(this.id, function(t) {\n if (((t.cancomment && t.actorforpost))) {\n m.get(t.actorforpost, function(u) {\n var v = this.renderAddComment(u, t.ownerid, t.mentionsdatasource, t.showsendonentertip, null, null, t.allowphotoattachments, t.subtitle);\n this._addComment = l.renderComponent(v, this.root);\n }.bind(this));\n }\n ;\n ;\n }.bind(this));\n }\n });\n e.exports = s;\n});\n__d(\"LegacyScrollableArea.react\", [\"Scrollable\",\"Bootloader\",\"React\",\"Style\",\"cx\",], function(a, b, c, d, e, f) {\n b(\"Scrollable\");\n var g = b(\"Bootloader\"), h = b(\"React\"), i = b(\"Style\"), j = b(\"cx\"), k = \"uiScrollableArea native\", l = \"uiScrollableAreaWrap scrollable\", m = \"uiScrollableAreaBody\", n = \"uiScrollableAreaContent\", o = h.createClass({\n displayName: \"ReactLegacyScrollableArea\",\n render: function() {\n var p = {\n height: ((this.props.height ? ((this.props.height + \"px\")) : \"auto\"))\n };\n return (h.DOM.div({\n className: k,\n ref: \"root\",\n style: p\n }, h.DOM.div({\n className: l\n }, h.DOM.div({\n className: m,\n ref: \"body\"\n }, h.DOM.div({\n className: n\n }, this.props.children)))));\n },\n getArea: function() {\n return this._area;\n },\n componentDidMount: function() {\n g.loadModules([\"ScrollableArea\",], this._loadScrollableArea);\n },\n _loadScrollableArea: function(p) {\n this._area = p.fromNative(this.refs.root.getDOMNode(), {\n fade: this.props.fade,\n persistent: this.props.persistent,\n shadow: ((((this.props.shadow === undefined)) ? true : this.props.shadow))\n });\n var q = this.refs.body.getDOMNode();\n i.set(q, \"width\", ((this.props.width + \"px\")));\n ((this.props.onScroll && this._area.subscribe(\"JSBNG__scroll\", this.props.onScroll)));\n }\n });\n e.exports = o;\n});\n__d(\"UFIAddCommentLink.react\", [\"React\",\"UFIClassNames\",\"cx\",\"joinClasses\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"UFIClassNames\"), i = b(\"cx\"), j = b(\"joinClasses\"), k = b(\"tx\"), l = g.createClass({\n displayName: \"UFIAddCommentLink\",\n render: function() {\n var m = j(h.ROW, (((((((((\"UFIAddCommentLink\") + ((this.props.isFirstCommentComponent ? ((\" \" + \"UFIFirstCommentComponent\")) : \"\")))) + ((this.props.isLastCommentComponent ? ((\" \" + \"UFILastCommentComponent\")) : \"\")))) + ((this.props.isFirstComponent ? ((\" \" + \"UFIFirstComponent\")) : \"\")))) + ((this.props.isLastComponent ? ((\" \" + \"UFILastComponent\")) : \"\"))))), n = \"Write a comment...\";\n return (g.DOM.li({\n className: m,\n \"data-ft\": this.props[\"data-ft\"]\n }, g.DOM.a({\n className: \"UFICommentLink\",\n onClick: this.props.onClick,\n href: \"#\",\n role: \"button\"\n }, n)));\n }\n });\n e.exports = l;\n});\n__d(\"PubContentTypes\", [], function(a, b, c, d, e, f) {\n var g = {\n HASHTAG: \"hashtag\",\n TOPIC: \"topic\",\n JSBNG__URL: \"url\"\n };\n e.exports = g;\n});\n__d(\"HovercardLinkInterpolator\", [\"Bootloader\",\"JSBNG__CSS\",\"JSBNG__Event\",\"HovercardLink\",\"Link.react\",\"Parent\",\"PubContentTypes\",\"React\",\"URI\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"Bootloader\"), h = b(\"JSBNG__CSS\"), i = b(\"JSBNG__Event\"), j = b(\"HovercardLink\"), k = b(\"Link.react\"), l = b(\"Parent\"), m = b(\"PubContentTypes\"), n = b(\"React\"), o = b(\"URI\"), p = b(\"cx\");\n function q(r, s, t, u, v) {\n var w = s.entities[0], x = ((t || ((w.JSBNG__external ? \"_blank\" : null)))), y, z = ((((!w.JSBNG__external ? \"profileLink\" : \"\")) + ((w.weakreference ? ((\" \" + \"weakReference\")) : \"\"))));\n if (w.hashtag) {\n var aa = h.hasClass(JSBNG__document.body, \"-cx-PUBLIC-hasLitestand__body\"), ba = function(ea) {\n if (i.$E(ea.nativeEvent).isDefaultRequested()) {\n return;\n }\n ;\n ;\n ea.preventDefault();\n var fa = l.byTag(ea.target, \"A\");\n if (aa) {\n g.loadModules([\"EntstreamPubContentOverlay\",], function(ga) {\n ga.pubClick(fa);\n });\n }\n else g.loadModules([\"HashtagLayerPageController\",], function(ga) {\n ga.click(fa);\n });\n ;\n ;\n }, ca = null;\n if (aa) {\n ca = {\n type: m.HASHTAG,\n id: w.id,\n source: \"comment\"\n };\n }\n else ca = {\n id: w.id\n };\n ;\n ;\n var da = new o(w.url).setSubdomain(\"www\");\n y = n.DOM.a({\n className: \"-cx-PUBLIC-fbHashtagLink__link\",\n \"data-pub\": JSON.stringify(ca),\n href: da.toString(),\n onClick: ba\n }, n.DOM.span({\n className: \"-cx-PUBLIC-fbHashtagLink__hashmark\"\n }, r.substring(0, 1)), n.DOM.span({\n className: \"-cx-PUBLIC-fbHashtagLink__tagname\"\n }, r.substring(1)));\n }\n else if (w.weakreference) {\n y = k({\n className: z,\n href: w,\n target: x\n }, n.DOM.i({\n className: \"UFIWeakReferenceIcon\"\n }), r);\n }\n else y = k({\n className: z,\n href: w,\n target: x\n }, r);\n \n ;\n ;\n if (((!w.JSBNG__external && !w.hashtag))) {\n y.props[\"data-hovercard\"] = j.constructEndpointWithGroupAndLocation(w, u, v).toString();\n }\n ;\n ;\n return y;\n };\n;\n e.exports = q;\n});\n__d(\"LinkButton\", [\"cx\",\"React\",], function(a, b, c, d, e, f) {\n var g = b(\"cx\"), h = b(\"React\"), i = function(j) {\n var k = ((((j.JSBNG__name && j.value)) ? ((((((j.JSBNG__name + \"[\")) + encodeURIComponent(j.value))) + \"]\")) : null));\n return (h.DOM.label({\n className: (((((\"uiLinkButton\") + ((j.subtle ? ((\" \" + \"uiLinkButtonSubtle\")) : \"\")))) + ((j.showSaving ? ((\" \" + \"async_throbber\")) : \"\"))))\n }, h.DOM.input({\n type: ((j.inputType || \"button\")),\n JSBNG__name: k,\n value: j.label,\n className: ((j.showSaving ? \"stat_elem\" : \"\"))\n })));\n };\n e.exports = i;\n});\n__d(\"SeeMore.react\", [\"React\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"tx\"), i = g.createClass({\n displayName: \"SeeMore\",\n getInitialState: function() {\n return {\n isCollapsed: true\n };\n },\n handleClick: function() {\n this.setState({\n isCollapsed: false\n });\n },\n render: function() {\n var j = this.state.isCollapsed, k = ((!j ? null : g.DOM.span(null, \"...\"))), l = this.props.children[0], m = ((j ? null : g.DOM.span(null, this.props.children[1]))), n = ((!j ? null : g.DOM.a({\n className: \"SeeMoreLink fss\",\n onClick: this.handleClick,\n href: \"#\",\n role: \"button\"\n }, \"See More\")));\n return (g.DOM.span({\n className: this.props.className\n }, l, k, n, m));\n }\n });\n e.exports = i;\n});\n__d(\"TruncatedTextWithEntities.react\", [\"React\",\"TextWithEntities.react\",\"SeeMore.react\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"TextWithEntities.react\"), i = b(\"SeeMore.react\");\n function j(n, o) {\n var p = ((n.offset + n.length));\n return ((((o > n.offset)) && ((o < p))));\n };\n;\n function k(n, o) {\n for (var p = 0; ((p < n.length)); p++) {\n var q = n[p];\n if (j(q, o)) {\n return q.offset;\n }\n ;\n ;\n };\n ;\n return o;\n };\n;\n var l = function(n, o, p) {\n var q = [], r = [], s = k(o, p);\n for (var t = 0; ((t < o.length)); t++) {\n var u = o[t];\n if (((u.offset < s))) {\n q.push(u);\n }\n else r.push({\n offset: ((u.offset - s)),\n length: u.length,\n entities: u.entities\n });\n ;\n ;\n };\n ;\n return {\n first: {\n ranges: q,\n text: n.substr(0, s)\n },\n second: {\n ranges: r,\n text: n.substr(s)\n }\n };\n }, m = g.createClass({\n displayName: \"TruncatedTextWithEntities\",\n render: function() {\n var n = this.props.maxLines, o = this.props.maxLength, p = ((this.props.truncationPercent || 60750)), q = Math.floor(((p * o))), r = ((this.props.text || \"\")), s = ((this.props.ranges || [])), t = r.split(\"\\u000a\"), u = ((t.length - 1)), v = ((o && ((r.length > o)))), w = ((n && ((u > n))));\n if (w) {\n q = Math.min(t.slice(0, n).join(\"\\u000a\").length, q);\n }\n ;\n ;\n if (((v || w))) {\n var x = l(r, s, q);\n return (g.DOM.span({\n \"data-ft\": this.props[\"data-ft\"],\n dir: this.props.dir\n }, i({\n className: this.props.className\n }, h({\n interpolator: this.props.interpolator,\n ranges: x.first.ranges,\n text: x.first.text,\n renderEmoticons: this.props.renderEmoticons,\n renderEmoji: this.props.renderEmoji\n }), h({\n interpolator: this.props.interpolator,\n ranges: x.second.ranges,\n text: x.second.text,\n renderEmoticons: this.props.renderEmoticons,\n renderEmoji: this.props.renderEmoji\n }))));\n }\n else return (g.DOM.span({\n \"data-ft\": this.props[\"data-ft\"],\n dir: this.props.dir\n }, h({\n className: this.props.className,\n interpolator: this.props.interpolator,\n ranges: s,\n text: r,\n renderEmoticons: this.props.renderEmoticons,\n renderEmoji: this.props.renderEmoji\n })))\n ;\n }\n });\n e.exports = m;\n});\n__d(\"UFICommentAttachment.react\", [\"DOM\",\"React\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"React\"), i = h.createClass({\n displayName: \"UFICommentAttachment\",\n _attachmentFromCommentData: function(j) {\n return ((j.photo_comment || j.attachment));\n },\n componentDidMount: function(j) {\n var k = this._attachmentFromCommentData(this.props.comment);\n if (k) {\n this.renderAttachment(k);\n }\n ;\n ;\n },\n shouldComponentUpdate: function(j, k) {\n var l = this._attachmentFromCommentData(this.props.comment), m = this._attachmentFromCommentData(j.comment);\n if (((!l && !m))) {\n return false;\n }\n ;\n ;\n if (((((!l || !m)) || ((l.markup != m.markup))))) {\n return true;\n }\n else return false\n ;\n },\n componentDidUpdate: function(j) {\n var k = this._attachmentFromCommentData(this.props.comment);\n this.renderAttachment(k);\n },\n renderAttachment: function(j) {\n if (((j && this.refs.contents))) {\n g.setContent(this.refs.contents.getDOMNode(), j.markup);\n }\n ;\n ;\n },\n render: function() {\n if (this._attachmentFromCommentData(this.props.comment)) {\n return h.DOM.div({\n ref: \"contents\"\n });\n }\n else return h.DOM.span(null)\n ;\n }\n });\n e.exports = i;\n});\n__d(\"UFIReplyLink.react\", [\"React\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"tx\"), i = g.createClass({\n displayName: \"UFIReplyLink\",\n render: function() {\n return (g.DOM.a({\n className: \"UFIReplyLink\",\n href: \"#\",\n onClick: this.props.onClick\n }, \"Reply\"));\n }\n });\n e.exports = i;\n});\n__d(\"UFISpamCount\", [\"UFISpamCountImpl\",], function(a, b, c, d, e, f) {\n e.exports = ((b(\"UFISpamCountImpl\").module || {\n enabled: false\n }));\n});\n__d(\"UFIComment.react\", [\"function-extensions\",\"Bootloader\",\"CloseButton.react\",\"Env\",\"Focus\",\"HovercardLink\",\"HovercardLinkInterpolator\",\"LinkButton\",\"NumberFormat\",\"ProfileBrowserLink\",\"ProfileBrowserTypes\",\"React\",\"Timestamp.react\",\"TrackingNodes\",\"TruncatedTextWithEntities.react\",\"UFIClassNames\",\"UFICommentAttachment.react\",\"UFIConfig\",\"UFIConstants\",\"UFIImageBlock.react\",\"UFIInstanceState\",\"UFIReplyLink.react\",\"UFISpamCount\",\"URI\",\"cx\",\"keyMirror\",\"joinClasses\",\"tx\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"Bootloader\"), h = b(\"CloseButton.react\"), i = b(\"Env\"), j = b(\"Focus\"), k = b(\"HovercardLink\"), l = b(\"HovercardLinkInterpolator\"), m = b(\"LinkButton\"), n = b(\"NumberFormat\"), o = b(\"ProfileBrowserLink\"), p = b(\"ProfileBrowserTypes\"), q = b(\"React\"), r = b(\"Timestamp.react\"), s = b(\"TrackingNodes\"), t = b(\"TruncatedTextWithEntities.react\"), u = b(\"UFIClassNames\"), v = b(\"UFICommentAttachment.react\"), w = b(\"UFIConfig\"), x = b(\"UFIConstants\"), y = b(\"UFIImageBlock.react\"), z = b(\"UFIInstanceState\"), aa = b(\"UFIReplyLink.react\"), ba = b(\"UFISpamCount\"), ca = b(\"URI\"), da = b(\"cx\"), ea = b(\"keyMirror\"), fa = b(\"joinClasses\"), ga = b(\"tx\"), ha = x.UFIStatus, ia = \" \\u00b7 \", ja = ea({\n edit: true,\n hide: true,\n remove: true\n }), ka = \"UFICommentBody\", la = \"UFICommentActorName\", ma = \"UFICommentNotSpamLink\", na = \"fsm fwn fcg UFICommentActions\", oa = \"UFIDeletedMessageIcon\", pa = \"UFIDeletedMessage\", qa = \"UFIFailureMessageIcon\", ra = \"UFIFailureMessage\", sa = \"UFICommentLikeButton\", ta = \"UFICommentLikeIcon\", ua = \"UFITranslateLink\", va = \"UFITranslatedText\", wa = \"uiLinkSubtle\", xa = \"stat_elem\", ya = \"pls\", za = \"fcg\", ab = 27, bb = null, cb = function(kb, lb) {\n var mb = new ca(\"/ajax/like/tooltip.php\").setQueryData({\n comment_fbid: kb.fbid,\n comment_from: kb.author,\n cache_buster: ((kb.likeconfirmhash || 0))\n });\n if (lb) {\n mb.addQueryData({\n viewas: lb\n });\n }\n ;\n ;\n return mb;\n }, db = function(kb) {\n var lb = kb.JSBNG__status;\n return ((((lb === ha.FAILED_ADD)) || ((lb === ha.FAILED_EDIT))));\n };\n function eb(kb) {\n return ((((((kb.commenterIsFOF !== undefined)) && ((kb.userIsMinor !== undefined)))) && ((kb.reportLink !== undefined))));\n };\n;\n var fb = q.createClass({\n displayName: \"UFICommentLikeCount\",\n render: function() {\n var kb = this.props.comment, lb = n.formatIntegerWithDelimiter(((kb.likecount || 0)), this.props.contextArgs.numberdelimiter), mb = p.LIKES, nb = {\n id: kb.fbid\n }, ob = cb(this.props.comment, this.props.viewas), pb = q.DOM.i({\n className: ta\n }), qb = q.DOM.span(null, lb);\n return (q.DOM.a({\n className: sa,\n role: \"button\",\n rel: \"dialog\",\n \"data-hover\": \"tooltip\",\n \"data-tooltip-alignh\": \"center\",\n \"data-tooltip-uri\": ob.toString(),\n ajaxify: o.constructDialogURI(mb, nb).toString(),\n href: o.constructPageURI(mb, nb).toString()\n }, pb, qb));\n }\n }), gb = q.createClass({\n displayName: \"UFICommentActions\",\n render: function() {\n var kb = this.props, lb = kb.comment, mb = kb.feedback, nb = kb.markedAsSpamHere, ob = ((lb.JSBNG__status === ha.SPAM_DISPLAY)), pb = this.props.showReplyLink, qb = this.props.hideAsSpamForPageAdmin, rb, sb, tb, ub, vb, wb, xb = ((!lb.islocal && ((lb.JSBNG__status !== ha.LIVE_DELETED))));\n if (xb) {\n if (((ob && !nb))) {\n if (kb.viewerCanMarkNotSpam) {\n rb = q.DOM.a({\n onClick: kb.onMarkAsNotSpam,\n className: ma,\n href: \"#\",\n role: \"button\"\n }, \"Unhide\");\n }\n ;\n ;\n if (((((((qb && mb.isthreaded)) && mb.cancomment)) && pb))) {\n vb = aa({\n comment: lb,\n onClick: kb.onCommentReply,\n contextArgs: kb.contextArgs\n });\n }\n ;\n ;\n }\n else {\n if (mb.viewercanlike) {\n var yb = s.getTrackingInfo(((lb.hasviewerliked ? s.types.UNLIKE_LINK : s.types.LIKE_LINK))), zb = ((lb.hasviewerliked ? \"Unlike this comment\" : \"Like this comment\"));\n sb = q.DOM.a({\n className: \"UFILikeLink\",\n href: \"#\",\n role: \"button\",\n onClick: kb.onCommentLikeToggle,\n \"data-ft\": yb,\n title: zb\n }, ((lb.hasviewerliked ? \"Unlike\" : \"Like\")));\n }\n ;\n ;\n if (((((mb.isthreaded && mb.cancomment)) && pb))) {\n vb = aa({\n comment: lb,\n onClick: kb.onCommentReply,\n contextArgs: kb.contextArgs\n });\n }\n ;\n ;\n if (((lb.likecount > 0))) {\n tb = fb({\n comment: lb,\n viewas: this.props.viewas,\n contextArgs: this.props.contextArgs\n });\n }\n ;\n ;\n if (((lb.spamcount && ba.enabled))) {\n ub = ba({\n count: lb.spamcount\n });\n }\n ;\n ;\n }\n ;\n ;\n if (((((lb.attachment && ((lb.attachment.type == \"share\")))) && lb.canremove))) {\n wb = q.DOM.a({\n onClick: kb.onPreviewRemove,\n href: \"#\",\n role: \"button\"\n }, \"Remove Preview\");\n }\n ;\n ;\n }\n ;\n ;\n var ac = hb({\n comment: lb,\n onRetrySubmit: kb.onRetrySubmit,\n showPermalink: kb.showPermalink\n }), bc;\n if (kb.contextArgs.entstream) {\n bc = [ac,sb,tb,vb,ub,rb,wb,];\n }\n else if (mb.isthreaded) {\n bc = [sb,vb,rb,wb,tb,ub,ac,];\n }\n else bc = [ac,sb,tb,ub,vb,rb,wb,];\n \n ;\n ;\n if (((lb.JSBNG__status === ha.LIVE_DELETED))) {\n var cc = q.DOM.span({\n className: pa\n }, q.DOM.i({\n className: oa,\n \"data-hover\": \"tooltip\",\n \"aria-label\": \"Comment deleted\"\n }));\n bc.push(cc);\n }\n ;\n ;\n var dc = [];\n for (var ec = 0; ((ec < bc.length)); ec++) {\n if (bc[ec]) {\n dc.push(ia);\n dc.push(bc[ec]);\n }\n ;\n ;\n };\n ;\n dc.shift();\n return (q.DOM.div({\n className: na\n }, dc));\n }\n }), hb = q.createClass({\n displayName: \"UFICommentMetadata\",\n render: function() {\n var kb = this.props.comment, lb = this.props.onRetrySubmit, mb, nb;\n if (db(kb)) {\n mb = [q.DOM.span({\n className: ra\n }, q.DOM.i({\n className: qa\n }), \"Unable to post comment.\"),((((kb.allowRetry && lb)) ? [\" \",q.DOM.a({\n onClick: lb,\n href: \"#\",\n role: \"button\"\n }, \"Try Again\"),] : null)),];\n }\n else {\n var ob = ((this.props.showPermalink ? kb.permalink : null)), pb = s.getTrackingInfo(s.types.SOURCE), qb = q.DOM.a({\n className: wa,\n href: ob,\n \"data-ft\": pb\n }, r({\n time: kb.timestamp.time,\n text: kb.timestamp.text,\n verbose: kb.timestamp.verbose\n })), rb;\n switch (kb.source) {\n case x.UFISourceType.MOBILE:\n rb = q.DOM.a({\n className: wa,\n href: new ca(\"/mobile/\").setSubdomain(\"www\").toString()\n }, \"mobile\");\n break;\n case x.UFISourceType.SMS:\n rb = q.DOM.a({\n className: wa,\n href: new ca(\"/mobile/?v=texts\").setSubdomain(\"www\").toString()\n }, \"text message\");\n break;\n case x.UFISourceType.EMAIL:\n rb = m({\n subtle: true,\n label: \"email\",\n inputType: \"submit\",\n JSBNG__name: \"email_explain\",\n value: true,\n className: xa\n });\n break;\n };\n ;\n nb = qb;\n if (rb) {\n nb = q.DOM.span({\n className: \"UFITimestampViaSource\"\n }, ga._(\"{time} via {source}\", {\n time: qb,\n source: rb\n }));\n }\n ;\n ;\n }\n ;\n ;\n var sb = null;\n if (kb.originalTimestamp) {\n var tb = new ca(\"/ajax/edits/browser/comment\").addQueryData({\n comment_token: kb.id\n }).toString();\n sb = [ia,q.DOM.a({\n ref: \"EditLink\",\n href: \"#\",\n role: \"button\",\n rel: \"dialog\",\n className: \"uiLinkSubtle\",\n ajaxify: tb,\n \"data-hover\": \"tooltip\",\n \"aria-label\": \"Show edit history\",\n title: \"Show edit history\"\n }, \"Edited\"),];\n }\n ;\n ;\n return (q.DOM.span(null, nb, mb, sb));\n },\n componentWillUpdate: function(kb) {\n var lb = this.props.comment, mb = kb.comment;\n if (((!lb.editnux && !!mb.editnux))) {\n g.loadModules([\"LegacyContextualDialog\",], function(nb) {\n var ob = new nb();\n ob.init(mb.editnux).setContext(this.refs.EditLink.getDOMNode()).setWidth(300).setPosition(\"below\").show();\n }.bind(this));\n }\n ;\n ;\n }\n }), ib = q.createClass({\n displayName: \"UFISocialContext\",\n render: function() {\n var kb = this.props.topMutualFriend, lb = this.props.otherMutualCount, mb = this.props.commentAuthor, nb = k.constructEndpoint(kb).toString(), ob = q.DOM.a({\n href: kb.uri,\n \"data-hovercard\": nb\n }, kb.JSBNG__name), pb = ((mb.JSBNG__name.length + kb.JSBNG__name.length)), qb;\n if (((lb === 0))) {\n qb = ga._(\"Friends with {name}\", {\n JSBNG__name: ob\n });\n }\n else if (((pb < ab))) {\n var rb;\n if (((lb == 1))) {\n rb = \"1 other\";\n }\n else rb = ga._(\"{count} others\", {\n count: lb\n });\n ;\n ;\n qb = ga._(\"Friends with {name} and {others}\", {\n JSBNG__name: ob,\n others: this.getOthersLink(rb, mb, kb)\n });\n }\n else {\n var sb = ga._(\"{count} mutual friends\", {\n count: ((lb + 1))\n });\n qb = this.getOthersLink(sb, mb);\n }\n \n ;\n ;\n return (q.DOM.span({\n className: \"UFICommentSocialContext\"\n }, ia, qb));\n },\n getOthersLink: function(kb, lb, mb) {\n var nb = p.MUTUAL_FRIENDS, ob = {\n uid: lb.id\n }, pb = new ca(\"/ajax/mutual_friends/tooltip.php\").setQueryData({\n friend_id: lb.id\n });\n if (mb) {\n pb.addQueryData({\n exclude_id: mb.id\n });\n }\n ;\n ;\n var qb = o.constructDialogURI(nb, ob).toString();\n return (q.DOM.a({\n rel: \"dialog\",\n \"data-hover\": \"tooltip\",\n \"data-tooltip-alignh\": \"center\",\n \"data-tooltip-uri\": pb.toString(),\n ajaxify: qb,\n href: o.constructPageURI(nb, ob).toString()\n }, kb));\n }\n }), jb = q.createClass({\n displayName: \"UFIComment\",\n getInitialState: function() {\n return {\n isHighlighting: this.props.comment.highlightcomment,\n wasHighlighted: this.props.comment.highlightcomment,\n markedAsSpamHere: false,\n oneClickRemovedHere: false,\n isInlinePageDeleted: false,\n isInlineBanned: false\n };\n },\n _onHideAsSpam: function(JSBNG__event) {\n this.props.onHideAsSpam(JSBNG__event);\n this.setState({\n markedAsSpamHere: true\n });\n },\n _onMarkAsNotSpam: function(JSBNG__event) {\n this.props.onMarkAsNotSpam(JSBNG__event);\n this.setState({\n markedAsSpamHere: false\n });\n },\n _onDeleteSpam: function(JSBNG__event) {\n this.props.onOneClickRemove(JSBNG__event);\n this.setState({\n isInlinePageDeleted: true\n });\n },\n _onUndoDeleteSpam: function(JSBNG__event) {\n this.props.onUndoOneClickRemove(JSBNG__event);\n this.setState({\n isInlinePageDeleted: false\n });\n },\n _onInlineBan: function(JSBNG__event) {\n this.props.onInlineBan(JSBNG__event);\n this.setState({\n isInlineBanned: true\n });\n },\n _onUndoInlineBan: function(JSBNG__event) {\n this.props.onUndoInlineBan(JSBNG__event);\n this.setState({\n isInlineBanned: false\n });\n },\n _onOneClickRemove: function(JSBNG__event) {\n this.props.onOneClickRemove(JSBNG__event);\n this.setState({\n oneClickRemovedHere: true\n });\n },\n _onUndoOneClickRemove: function(JSBNG__event) {\n this.props.onUndoOneClickRemove(JSBNG__event);\n this.setState({\n oneClickRemovedHere: false\n });\n },\n _onAction: function(JSBNG__event, kb) {\n if (((kb === ja.remove))) {\n this.props.onRemove(JSBNG__event);\n }\n else if (((kb === ja.edit))) {\n this.props.onEdit(JSBNG__event);\n }\n else if (((kb === ja.hide))) {\n this._onHideAsSpam(JSBNG__event);\n }\n \n \n ;\n ;\n },\n _createRemoveReportMenu: function(JSBNG__event) {\n if (this._removeReportMenu) {\n return;\n }\n ;\n ;\n var kb = [{\n label: \"Delete Comment...\",\n value: ja.remove\n },{\n label: \"Hide Comment\",\n value: ja.hide\n },];\n if (JSBNG__event.persist) {\n JSBNG__event.persist();\n }\n else JSBNG__event = JSBNG__event.constructor.persistentCloneOf(JSBNG__event);\n ;\n ;\n g.loadModules([\"LegacyMenuUtils\",], function(lb) {\n this._removeReportMenu = lb.createAndShowPopoverMenu(JSBNG__event.target, kb, this._onAction.bind(this, JSBNG__event));\n }.bind(this));\n },\n _createEditDeleteMenu: function(JSBNG__event) {\n if (JSBNG__event.persist) {\n JSBNG__event.persist();\n }\n else JSBNG__event = JSBNG__event.constructor.persistentCloneOf(JSBNG__event);\n ;\n ;\n if (this._editDeleteMenu) {\n return;\n }\n ;\n ;\n var kb = [{\n label: \"Edit...\",\n value: ja.edit\n },{\n label: \"Delete...\",\n value: ja.remove\n },];\n g.loadModules([\"LegacyMenuUtils\",], function(lb) {\n this._editDeleteMenu = lb.createAndShowPopoverMenu(JSBNG__event.target, kb, this._onAction.bind(this, JSBNG__event));\n }.bind(this));\n },\n _renderCloseButton: function() {\n var kb = this.props.comment, lb = this.props.feedback, mb = null, nb = null, ob = false;\n if (((kb.canremove && !this.props.hideAsSpamForPageAdmin))) {\n if (this.props.viewerIsAuthor) {\n if (kb.canedit) {\n nb = \"Edit or Delete\";\n mb = this._createEditDeleteMenu;\n ob = true;\n }\n else {\n nb = \"Remove\";\n mb = this.props.onRemove;\n }\n ;\n ;\n }\n else if (lb.canremoveall) {\n if (this.props.showRemoveReportMenu) {\n nb = \"Remove or Report\";\n mb = this._createRemoveReportMenu;\n }\n else {\n nb = \"Remove\";\n mb = this._onOneClickRemove;\n }\n ;\n }\n \n ;\n ;\n }\n else if (kb.canreport) {\n nb = \"Hide\";\n mb = this._onHideAsSpam;\n }\n \n ;\n ;\n var pb = (((((\"UFICommentCloseButton\") + ((ob ? ((\" \" + \"UFIEditButton\")) : \"\")))) + ((((mb === null)) ? ((\" \" + \"hdn\")) : \"\"))));\n return (h({\n onClick: mb,\n tooltip: nb,\n className: pb\n }));\n },\n componentDidMount: function(kb) {\n var lb = this.props.comment.ufiinstanceid;\n if (this.state.isHighlighting) {\n g.loadModules([\"UFIScrollHighlight\",], function(nb) {\n nb.actOn.curry(kb).defer();\n });\n this.setState({\n isHighlighting: false\n });\n }\n ;\n ;\n var mb = z.getKeyForInstance(lb, \"autofocus\");\n if (mb) {\n j.setWithoutOutline(this.refs.AuthorName.getDOMNode());\n z.updateState(lb, \"autofocus\", false);\n }\n ;\n ;\n },\n shouldComponentUpdate: function(kb) {\n var lb = this.props;\n return ((((((((((((((((((((((kb.comment !== lb.comment)) || ((kb.showReplyLink !== lb.showReplyLink)))) || ((kb.showReplies !== lb.showReplies)))) || ((kb.isFirst !== lb.isFirst)))) || ((kb.isLast !== lb.isLast)))) || ((kb.isFirstCommentComponent !== lb.isFirstCommentComponent)))) || ((kb.isLastCommentComponent !== lb.isLastCommentComponent)))) || ((kb.isFirstComponent !== lb.isFirstComponent)))) || ((kb.isLastComponent !== lb.isLastComponent)))) || ((kb.isFeaturedComment !== lb.isFeaturedComment)))) || ((kb.hasPartialBorder !== lb.hasPartialBorder))));\n },\n render: function() {\n var kb = this.props.comment, lb = this.props.feedback, mb = ((kb.JSBNG__status === ha.DELETED)), nb = ((kb.JSBNG__status === ha.LIVE_DELETED)), ob = ((kb.JSBNG__status === ha.SPAM_DISPLAY)), pb = ((kb.JSBNG__status === ha.PENDING_UNDO_DELETE)), qb = this.state.markedAsSpamHere, rb = this.state.oneClickRemovedHere, sb = this.state.isInlinePageDeleted, tb = this.props.hideAsSpamForPageAdmin, ub = this.state.isInlineBanned, vb = eb(kb), wb = ((!kb.JSBNG__status && ((kb.isunseen || kb.islocal))));\n if (((!kb.JSBNG__status && lb.lastseentime))) {\n var xb = ((kb.originalTimestamp || kb.timestamp.time));\n wb = ((wb || ((xb > lb.lastseentime))));\n }\n ;\n ;\n var yb = this.props.contextArgs.markedcomments;\n if (((yb && yb[kb.legacyid]))) {\n wb = true;\n }\n ;\n ;\n if (vb) {\n if (bb) {\n var zb, ac = null, bc = null, cc = null;\n if (tb) {\n bc = ((ub ? this._onUndoInlineBan : this._onInlineBan));\n if (sb) {\n ac = this._onUndoDeleteSpam;\n var dc = q.DOM.a({\n href: \"#\",\n onClick: ac\n }, \"Undo\");\n zb = ga._(\"You've deleted this comment so no one can see it. {undo}.\", {\n undo: dc\n });\n }\n else if (qb) {\n zb = \"Now this is only visible to the person who wrote it and their friends.\";\n cc = this._onDeleteSpam;\n ac = this._onMarkAsNotSpam;\n }\n \n ;\n ;\n }\n else if (qb) {\n zb = \"This comment has been hidden.\";\n cc = this._onDeleteSpam;\n ac = this._onMarkAsNotSpam;\n }\n else if (rb) {\n zb = \"This comment has been removed.\";\n ac = this._onUndoOneClickRemove;\n }\n \n \n ;\n ;\n if (zb) {\n return (q.DOM.li({\n className: fa(u.ROW, \"UFIHide\")\n }, bb({\n notice: zb,\n comment: this.props.comment,\n authorProfiles: this.props.authorProfiles,\n onUndo: ac,\n onBanAction: bc,\n onDeleteAction: cc,\n isInlineBanned: ub,\n hideAsSpamForPageAdmin: tb\n })));\n }\n ;\n ;\n }\n else g.loadModules([\"UFICommentRemovalControls.react\",], function(hc) {\n bb = hc;\n JSBNG__setTimeout(function() {\n this.forceUpdate();\n }.bind(this));\n }.bind(this));\n ;\n }\n ;\n ;\n var ec = ((!mb || rb)), fc = fa(u.ROW, (((((((((((((((((((((((((((\"UFIComment\") + ((db(kb) ? ((\" \" + \"UFICommentFailed\")) : \"\")))) + ((((((((mb || nb)) || ob)) || pb)) ? ((\" \" + \"UFITranslucentComment\")) : \"\")))) + ((this.state.isHighlighting ? ((\" \" + \"highlightComment\")) : \"\")))) + ((!ec ? ((\" \" + \"noDisplay\")) : \"\")))) + ((ec ? ((\" \" + \"display\")) : \"\")))) + ((((this.props.isFirst && !this.props.isReply)) ? ((\" \" + \"UFIFirstComment\")) : \"\")))) + ((((this.props.isLast && !this.props.isReply)) ? ((\" \" + \"UFILastComment\")) : \"\")))) + ((this.props.isFirstCommentComponent ? ((\" \" + \"UFIFirstCommentComponent\")) : \"\")))) + ((this.props.isLastCommentComponent ? ((\" \" + \"UFILastCommentComponent\")) : \"\")))) + ((this.props.isFirstComponent ? ((\" \" + \"UFIFirstComponent\")) : \"\")))) + ((this.props.isLastComponent ? ((\" \" + \"UFILastComponent\")) : \"\")))) + ((this.props.isFeatured ? ((\" \" + \"UFIFeaturedComment\")) : \"\")))) + ((((this.props.hasPartialBorder && !this.props.contextArgs.entstream)) ? ((\" \" + \"UFIPartialBorder\")) : \"\"))))), gc = this.renderComment();\n if (wb) {\n if (this.props.contextArgs.snowliftredesign) {\n gc = q.DOM.div({\n className: \"-cx-PRIVATE-fbPhotoSnowliftRedesign__unseenwrapper\"\n }, q.DOM.div({\n className: \"-cx-PRIVATE-fbPhotoSnowliftRedesign__unseenindicator\"\n }), gc);\n }\n else if (((this.props.contextArgs.entstream && !this.props.isReply))) {\n gc = q.DOM.div({\n className: \"-cx-PRIVATE-fbEntstreamUFI__unseenwrapper\"\n }, q.DOM.div({\n className: \"-cx-PRIVATE-fbEntstreamUFI__unseenindicator\"\n }), gc);\n }\n else fc = fa(fc, u.UNSEEN_ITEM);\n \n ;\n }\n ;\n ;\n return (q.DOM.li({\n className: fc,\n \"data-ft\": this.props[\"data-ft\"]\n }, gc));\n },\n renderComment: function() {\n var kb = this.props, lb = kb.comment, mb = kb.feedback, nb = kb.authorProfiles[lb.author], ob = ((lb.JSBNG__status === ha.SPAM_DISPLAY)), pb = ((lb.JSBNG__status === ha.LIVE_DELETED)), qb = !((ob || pb)), rb = ((mb.canremoveall || lb.hiddenbyviewer)), sb = null, tb = null;\n if (((((!kb.isLocallyComposed && !this.state.wasHighlighted)) && !lb.fromfetch))) {\n tb = x.commentTruncationLength;\n sb = x.commentTruncationMaxLines;\n }\n ;\n ;\n var ub = s.getTrackingInfo(s.types.SMALL_ACTOR_PHOTO), vb = s.getTrackingInfo(s.types.USER_NAME), wb = s.getTrackingInfo(s.types.USER_MESSAGE), xb = null, yb = null;\n if (((lb.istranslatable && ((lb.translatedtext === undefined))))) {\n xb = q.DOM.a({\n href: \"#\",\n role: \"button\",\n title: \"Translate this comment\",\n className: ua,\n onClick: kb.onCommentTranslate\n }, \"See Translation\");\n }\n ;\n ;\n if (lb.translatedtext) {\n var zb = new ca(\"http://bing.com/translator\").addQueryData({\n text: lb.body.text\n });\n yb = q.DOM.span({\n className: va\n }, lb.translatedtext, q.DOM.span({\n className: ya\n }, \" (\", q.DOM.a({\n href: zb.toString(),\n className: za\n }, \"Translated by Bing\"), \") \"));\n }\n ;\n ;\n var ac;\n if (((i.rtl && ((lb.body.dir === \"ltr\"))))) {\n ac = \"rtl\";\n }\n else if (((!i.rtl && ((lb.body.dir === \"rtl\"))))) {\n ac = \"ltr\";\n }\n \n ;\n ;\n var bc = k.constructEndpointWithLocation(nb, \"ufi\").toString(), cc = q.DOM.a({\n ref: \"AuthorName\",\n className: la,\n href: nb.uri,\n \"data-hovercard\": bc,\n \"data-ft\": vb,\n dir: ac\n }, nb.JSBNG__name), dc = function(ic, jc) {\n return l(ic, jc, \"_blank\", mb.grouporeventid, \"ufi\");\n }, ec = t({\n className: ka,\n interpolator: dc,\n ranges: lb.body.ranges,\n text: lb.body.text,\n truncationPercent: x.commentTruncationPercent,\n maxLength: tb,\n maxLines: sb,\n renderEmoticons: w.renderEmoticons,\n renderEmoji: w.renderEmoji,\n \"data-ft\": wb,\n dir: lb.body.dir\n }), fc;\n if (lb.socialcontext) {\n var gc = lb.socialcontext, hc = ib({\n topMutualFriend: kb.authorProfiles[gc.topmutualid],\n otherMutualCount: gc.othermutualcount,\n commentAuthor: nb\n });\n fc = [cc,hc,q.DOM.div(null, ec),];\n }\n else fc = [cc,\" \",ec,];\n ;\n ;\n return (y({\n spacing: \"medium\"\n }, q.DOM.a({\n href: nb.uri,\n \"data-hovercard\": bc,\n \"data-ft\": ub\n }, q.DOM.img({\n src: nb.thumbSrc,\n className: u.ACTOR_IMAGE,\n alt: \"\"\n })), q.DOM.div(null, q.DOM.div({\n className: \"UFICommentContent\"\n }, fc, xb, yb, v({\n comment: kb.comment\n })), gb({\n comment: lb,\n feedback: mb,\n onBlingBoxClick: kb.onBlingBoxClick,\n onCommentLikeToggle: kb.onCommentLikeToggle,\n onCommentReply: kb.onCommentReply,\n onPreviewRemove: kb.onPreviewRemove,\n onRetrySubmit: kb.onRetrySubmit,\n onMarkAsNotSpam: this._onMarkAsNotSpam,\n viewerCanMarkNotSpam: rb,\n viewas: kb.contextArgs.viewas,\n showPermalink: kb.showPermalink,\n showReplyLink: kb.showReplyLink,\n showReplies: kb.showReplies,\n contextArgs: kb.contextArgs,\n markedAsSpamHere: this.state.markedAsSpamHere,\n hideAsSpamForPageAdmin: kb.hideAsSpamForPageAdmin\n })), ((qb ? this._renderCloseButton() : null))));\n }\n });\n e.exports = jb;\n});\n__d(\"UFIContainer.react\", [\"React\",\"TrackingNodes\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"TrackingNodes\"), i = b(\"cx\"), j = g.createClass({\n displayName: \"UFIContainer\",\n render: function() {\n var k = null;\n if (this.props.hasNub) {\n k = g.DOM.li({\n className: \"UFIArrow\"\n }, g.DOM.i(null));\n }\n ;\n ;\n var l = ((((((((((((((!this.props.isReplyList ? \"UFIList\" : \"\")) + ((this.props.isReplyList ? ((\" \" + \"UFIReplyList\")) : \"\")))) + ((this.props.isParentLiveDeleted ? ((\" \" + \"UFITranslucentReplyList\")) : \"\")))) + ((this.props.isFirstCommentComponent ? ((\" \" + \"UFIFirstCommentComponent\")) : \"\")))) + ((this.props.isLastCommentComponent ? ((\" \" + \"UFILastCommentComponent\")) : \"\")))) + ((this.props.isFirstComponent ? ((\" \" + \"UFIFirstComponent\")) : \"\")))) + ((this.props.isLastComponent ? ((\" \" + \"UFILastComponent\")) : \"\"))));\n return (g.DOM.ul({\n className: l,\n \"data-ft\": h.getTrackingInfo(h.types.UFI)\n }, k, this.props.children));\n }\n });\n e.exports = j;\n});\n__d(\"GiftOpportunityLogger\", [\"AsyncRequest\",\"JSBNG__Event\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"JSBNG__Event\"), i = {\n init: function(k, l, m) {\n var n = false;\n h.listen(k, \"click\", function(o) {\n if (n) {\n return true;\n }\n ;\n ;\n n = true;\n i.send(l, m);\n });\n },\n send: function(k, l) {\n if (j[k.opportunity_id]) {\n return;\n }\n ;\n ;\n j[k.opportunity_id] = true;\n return new g().setURI(\"/ajax/gifts/log/opportunity\").setData({\n data: k,\n entry_point: l\n }).send();\n }\n }, j = {\n };\n e.exports = i;\n});\n__d(\"InlineBlock.react\", [\"ReactPropTypes\",\"React\",\"cx\",\"joinClasses\",], function(a, b, c, d, e, f) {\n var g = b(\"ReactPropTypes\"), h = b(\"React\"), i = b(\"cx\"), j = b(\"joinClasses\"), k = {\n baseline: null,\n bottom: \"-cx-PRIVATE-uiInlineBlock__bottom\",\n middle: \"-cx-PRIVATE-uiInlineBlock__middle\",\n JSBNG__top: \"-cx-PRIVATE-uiInlineBlock__top\"\n }, l = h.createClass({\n displayName: \"InlineBlock\",\n propTypes: {\n alignv: g.oneOf([\"baseline\",\"bottom\",\"middle\",\"JSBNG__top\",]),\n height: g.number\n },\n getDefaultProps: function() {\n return {\n alignv: \"baseline\"\n };\n },\n render: function() {\n var m = k[this.props.alignv], n = h.DOM.div({\n className: j(\"-cx-PRIVATE-uiInlineBlock__root\", m)\n }, this.props.children);\n if (((this.props.height != null))) {\n var o = h.DOM.div({\n className: j(\"-cx-PRIVATE-uiInlineBlock__root\", m),\n style: {\n height: ((this.props.height + \"px\"))\n }\n });\n n = h.DOM.div({\n className: \"-cx-PRIVATE-uiInlineBlock__root\",\n height: null\n }, o, n);\n }\n ;\n ;\n return this.transferPropsTo(n);\n }\n });\n e.exports = l;\n});\n__d(\"UFIGiftSentence.react\", [\"AsyncRequest\",\"CloseButton.react\",\"GiftOpportunityLogger\",\"ImageBlock.react\",\"InlineBlock.react\",\"LeftRight.react\",\"Link.react\",\"React\",\"JSBNG__Image.react\",\"UFIClassNames\",\"UFIImageBlock.react\",\"URI\",\"DOM\",\"ix\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"CloseButton.react\"), i = b(\"GiftOpportunityLogger\"), j = b(\"ImageBlock.react\"), k = b(\"InlineBlock.react\"), l = b(\"LeftRight.react\"), m = b(\"Link.react\"), n = b(\"React\"), o = b(\"JSBNG__Image.react\"), p = b(\"UFIClassNames\"), q = b(\"UFIImageBlock.react\"), r = b(\"URI\"), s = b(\"DOM\"), t = b(\"ix\"), u = b(\"tx\"), v = n.createClass({\n displayName: \"UFIGiftSentence\",\n _entry_point: \"detected_gift_worthy_story_inline\",\n render: function() {\n var w = this.props.recipient, x = this.props.giftdata, y = ((x ? x.giftproductid : null)), z = this._getURI(y).toString();\n this._log();\n return (n.DOM.li({\n className: p.ROW,\n ref: \"UFIGiftSentence\"\n }, l({\n direction: \"right\"\n }, ((x ? this._renderGiftSuggestion(z, w, x) : this._renderGiftLink(z, w))), h({\n size: \"small\",\n onClick: function() {\n var aa = this.refs.UFIGiftSentence.getDOMNode();\n s.remove(aa);\n this._requestClose();\n }.bind(this)\n }))));\n },\n _renderGiftSuggestion: function(w, x, y) {\n return (q(null, o({\n src: t(\"/images/group_gifts/icons/gift_icon_red-13px.png\"),\n alt: \"invite\"\n }), n.DOM.div(null, n.DOM.span({\n className: \"fwb\"\n }, u._(\"Surprise {name} with a gift\", {\n JSBNG__name: x.firstName\n })), j({\n spacing: \"medium\",\n className: \"mvs\"\n }, m({\n className: \"fwb\",\n rel: \"async-post\",\n ajaxify: w,\n href: {\n url: \"#\"\n }\n }, o({\n className: \"UFIGiftProductImg\",\n src: y.giftproductimgsrc,\n alt: \"product image\"\n })), k({\n alignv: \"middle\",\n height: 79\n }, n.DOM.p({\n className: \"mvs\"\n }, m({\n className: \"fwb\",\n rel: \"async-post\",\n ajaxify: w,\n href: {\n url: \"#\"\n }\n }, y.giftproductname)), n.DOM.p({\n className: \"mvs fcg\"\n }, y.giftproductpricerange), n.DOM.p({\n className: \"mvs\"\n }, m({\n rel: \"async-post\",\n ajaxify: w,\n href: {\n url: \"#\"\n }\n }, \"Give This Gift\"), \" \\u00b7 \", m({\n rel: \"async-post\",\n ajaxify: this._getURI().toString(),\n href: {\n url: \"#\"\n }\n }, \"See All Gifts\")))))));\n },\n _renderGiftLink: function(w, x) {\n return (q(null, m({\n className: \"UFIGiftIcon\",\n tabIndex: \"-1\",\n href: {\n url: \"#\"\n },\n rel: \"async-post\",\n ajaxify: w\n }, o({\n src: t(\"/images/group_gifts/icons/gift_icon_red-13px.png\"),\n alt: \"invite\"\n })), m({\n rel: \"async-post\",\n href: {\n url: \"#\"\n },\n ajaxify: w\n }, u._(\"Surprise {name} with a gift\", {\n JSBNG__name: x.firstName\n }))));\n },\n _log: function() {\n var w = this.props.giftdata, x = {\n opportunity_id: this.props.contextArgs.ftentidentifier,\n sender_id: this.props.sender.id,\n recipient_id: this.props.recipient.id,\n link_description: \"UFIGiftSentence\",\n product_id: ((w ? w.giftproductid : null)),\n custom: {\n gift_occasion: this.props.contextArgs.giftoccasion,\n ftentidentifier: this.props.contextArgs.ftentidentifier\n }\n };\n i.send([x,], this._entry_point);\n },\n _getURI: function(w) {\n return r(\"/ajax/gifts/send\").addQueryData({\n gift_occasion: this.props.contextArgs.giftoccasion,\n recipient_id: this.props.recipient.id,\n entry_point: this._entry_point,\n product_id: w\n });\n },\n _requestClose: function() {\n var w = r(\"/ajax/gifts/moments/close/\");\n new g().setMethod(\"POST\").setReadOnly(false).setURI(w).setData({\n action: \"hide\",\n data: JSON.stringify({\n type: \"detected_moment\",\n friend_id: this.props.recipient.id,\n ftentidentifier: this.props.contextArgs.ftentidentifier\n })\n }).send();\n }\n });\n e.exports = v;\n});\n__d(\"UFILikeSentenceText.react\", [\"HovercardLinkInterpolator\",\"ProfileBrowserLink\",\"ProfileBrowserTypes\",\"React\",\"TextWithEntities.react\",\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"HovercardLinkInterpolator\"), h = b(\"ProfileBrowserLink\"), i = b(\"ProfileBrowserTypes\"), j = b(\"React\"), k = b(\"TextWithEntities.react\"), l = b(\"URI\");\n function m(p, q, r, s) {\n if (((s.count != null))) {\n var t = i.LIKES, u = {\n id: p.targetfbid\n };\n return (j.DOM.a({\n href: h.constructPageURI(t, u).toString(),\n target: \"_blank\"\n }, r));\n }\n else return g(r, s, \"_blank\", null, \"ufi\")\n ;\n };\n;\n function n(p, q, r, s) {\n if (((s.count != null))) {\n var t = i.LIKES, u = {\n id: p.targetfbid\n }, v = [];\n for (var w = 0; ((w < q.length)); w++) {\n if (!q[w].count) {\n v.push(q[w].entities[0].id);\n }\n ;\n ;\n };\n ;\n var x = new l(\"/ajax/like/tooltip.php\").setQueryData({\n comment_fbid: p.targetfbid,\n comment_from: p.actorforpost,\n seen_user_fbids: ((v.length ? v : true))\n });\n return (j.DOM.a({\n rel: \"dialog\",\n ajaxify: h.constructDialogURI(t, u).toString(),\n href: h.constructPageURI(t, u).toString(),\n \"data-hover\": \"tooltip\",\n \"data-tooltip-alignh\": \"center\",\n \"data-tooltip-uri\": x.toString()\n }, r));\n }\n else return g(r, s, null, null, \"ufi\")\n ;\n };\n;\n var o = j.createClass({\n displayName: \"UFILikeSentenceText\",\n render: function() {\n var p = this.props.feedback, q = this.props.likeSentenceData, r;\n if (this.props.contextArgs.embedded) {\n r = m;\n }\n else r = n;\n ;\n ;\n r = r.bind(null, p, q.ranges);\n return (k({\n interpolator: r,\n ranges: q.ranges,\n aggregatedRanges: q.aggregatedranges,\n text: q.text\n }));\n }\n });\n e.exports = o;\n});\n__d(\"UFILikeSentence.react\", [\"Bootloader\",\"LeftRight.react\",\"ProfileBrowserLink\",\"ProfileBrowserTypes\",\"React\",\"UFIClassNames\",\"UFIImageBlock.react\",\"UFILikeSentenceText.react\",\"URI\",\"cx\",\"joinClasses\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Bootloader\"), h = b(\"LeftRight.react\"), i = b(\"ProfileBrowserLink\"), j = b(\"ProfileBrowserTypes\"), k = b(\"React\"), l = b(\"UFIClassNames\"), m = b(\"UFIImageBlock.react\"), n = b(\"UFILikeSentenceText.react\"), o = b(\"URI\"), p = b(\"cx\"), q = b(\"joinClasses\"), r = b(\"tx\"), s = k.createClass({\n displayName: \"UFILikeSentence\",\n getInitialState: function() {\n return {\n selectorModule: null,\n bootloadedSelectorModule: false\n };\n },\n componentWillMount: function() {\n this._bootloadSelectorModule(this.props);\n },\n componentWillReceiveProps: function(t) {\n this._bootloadSelectorModule(t);\n },\n _bootloadSelectorModule: function(t) {\n if (((t.showOrderingModeSelector && !this.state.bootloadedSelectorModule))) {\n var u = function(v) {\n this.setState({\n selectorModule: v\n });\n }.bind(this);\n if (t.contextArgs.entstream) {\n g.loadModules([\"UFIEntStreamOrderingModeSelector.react\",], u);\n }\n else g.loadModules([\"UFIOrderingModeSelector.react\",], u);\n ;\n ;\n this.setState({\n bootloadedSelectorModule: true\n });\n }\n ;\n ;\n },\n render: function() {\n var t = this.props.feedback, u = t.likesentences.current, v = this.props.contextArgs.entstream, w = q(l.ROW, ((t.likesentences.isunseen ? l.UNSEEN_ITEM : \"\")), (((((\"UFILikeSentence\") + ((this.props.isFirstComponent ? ((\" \" + \"UFIFirstComponent\")) : \"\")))) + ((this.props.isLastComponent ? ((\" \" + \"UFILastComponent\")) : \"\"))))), x = null, y = null;\n if (u.text) {\n y = k.DOM.div({\n className: \"UFILikeSentenceText\"\n }, n({\n contextArgs: this.props.contextArgs,\n feedback: t,\n likeSentenceData: u\n }));\n }\n ;\n ;\n if (((y && !v))) {\n x = k.DOM.i({\n className: \"UFILikeIcon\"\n });\n if (((t.viewercanlike && !t.hasviewerliked))) {\n x = k.DOM.a({\n className: \"UFILikeThumb\",\n href: \"#\",\n tabIndex: \"-1\",\n title: \"Like this\",\n onClick: this.props.onTargetLikeToggle\n }, x);\n }\n ;\n ;\n }\n ;\n ;\n var z = y, aa = null;\n if (((((t.seencount > 0)) && !v))) {\n var ba = j.GROUP_MESSAGE_VIEWERS, ca = {\n id: t.targetfbid\n }, da = i.constructDialogURI(ba, ca), ea = i.constructPageURI(ba, ca), fa = new o(\"/ajax/ufi/seen_tooltip.php\").setQueryData({\n ft_ent_identifier: t.entidentifier,\n displayed_count: t.seencount\n }), ga;\n if (t.seenbyall) {\n ga = \"Seen by everyone\";\n }\n else ga = ((((t.seencount == 1)) ? \"Seen by 1\" : r._(\"Seen by {count}\", {\n count: t.seencount\n })));\n ;\n ;\n aa = k.DOM.a({\n rel: \"dialog\",\n ajaxify: da.toString(),\n href: ea.toString(),\n tabindex: \"-1\",\n \"data-hover\": \"tooltip\",\n \"data-tooltip-alignh\": \"left\",\n \"data-tooltip-uri\": fa.toString(),\n className: (((\"UFISeenCount\") + ((!!u.text ? ((\" \" + \"UFISeenCountRight\")) : \"\"))))\n }, k.DOM.span({\n className: \"UFISeenCountIcon\"\n }), ga);\n }\n else if (((this.props.showOrderingModeSelector && this.state.selectorModule))) {\n var ha = this.state.selectorModule;\n aa = ha({\n currentOrderingMode: this.props.orderingMode,\n entstream: v,\n orderingmodes: t.orderingmodes,\n onOrderChanged: this.props.onOrderingModeChange\n });\n if (!z) {\n z = k.DOM.div(null);\n }\n ;\n ;\n }\n \n ;\n ;\n var ia = null;\n if (((x && y))) {\n ia = m(null, x, y, aa);\n }\n else if (z) {\n ia = h(null, z, aa);\n }\n else ia = aa;\n \n ;\n ;\n return (k.DOM.li({\n className: w\n }, ia));\n }\n });\n e.exports = s;\n});\n__d(\"UFIPager.react\", [\"LeftRight.react\",\"React\",\"UFIClassNames\",\"UFIImageBlock.react\",\"cx\",\"joinClasses\",], function(a, b, c, d, e, f) {\n var g = b(\"LeftRight.react\"), h = b(\"React\"), i = b(\"UFIClassNames\"), j = b(\"UFIImageBlock.react\"), k = b(\"cx\"), l = b(\"joinClasses\"), m = h.createClass({\n displayName: \"UFIPager\",\n onPagerClick: function(n) {\n ((((!this.props.isLoading && this.props.onPagerClick)) && this.props.onPagerClick()));\n n.nativeEvent.prevent();\n },\n render: function() {\n var n = this.onPagerClick, o = ((this.props.isLoading ? \"ufiPagerLoading\" : \"\")), p = l(i.ROW, ((this.props.isUnseen ? i.UNSEEN_ITEM : \"\")), (((((((((\"UFIPagerRow\") + ((this.props.isFirstCommentComponent ? ((\" \" + \"UFIFirstCommentComponent\")) : \"\")))) + ((this.props.isLastCommentComponent ? ((\" \" + \"UFILastCommentComponent\")) : \"\")))) + ((this.props.isFirstComponent ? ((\" \" + \"UFIFirstComponent\")) : \"\")))) + ((this.props.isLastComponent ? ((\" \" + \"UFILastComponent\")) : \"\"))))), q = h.DOM.a({\n className: \"UFIPagerLink\",\n onClick: n,\n href: \"#\",\n role: \"button\"\n }, h.DOM.span({\n className: o\n }, this.props.pagerLabel)), r = (((\"fcg\") + ((\" \" + \"UFIPagerCount\")))), s = h.DOM.span({\n className: r\n }, this.props.countSentence), t;\n if (this.props.contextArgs.entstream) {\n t = (g({\n direction: g.DIRECTION.right\n }, q, s));\n }\n else t = (j(null, h.DOM.a({\n className: \"UFIPagerIcon\",\n onClick: n,\n href: \"#\",\n role: \"button\"\n }), q, s));\n ;\n ;\n return (h.DOM.li({\n className: p,\n \"data-ft\": this.props[\"data-ft\"]\n }, t));\n }\n });\n e.exports = m;\n});\n__d(\"UFIReplySocialSentence.react\", [\"LiveTimer\",\"React\",\"Timestamp.react\",\"UFIClassNames\",\"UFIConstants\",\"UFIImageBlock.react\",\"cx\",\"joinClasses\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"LiveTimer\"), h = b(\"React\"), i = b(\"Timestamp.react\"), j = b(\"UFIClassNames\"), k = b(\"UFIConstants\"), l = b(\"UFIImageBlock.react\"), m = b(\"cx\"), n = b(\"joinClasses\"), o = b(\"tx\"), p = \" \\u00b7 \", q = 43200, r = h.createClass({\n displayName: \"UFIReplySocialSentence\",\n render: function() {\n var s = ((this.props.isLoading ? \"UFIReplySocialSentenceLoading\" : \"\")), t = n(j.ROW, (((((\"UFIReplySocialSentenceRow\") + ((this.props.isFirstComponent ? ((\" \" + \"UFIFirstComponent\")) : \"\")))) + ((this.props.isLastComponent ? ((\" \" + \"UFILastComponent\")) : \"\"))))), u, v;\n if (this.props.isExpanded) {\n u = ((((this.props.replies > 1)) ? o._(\"Hide {count} Replies\", {\n count: this.props.replies\n }) : \"Hide 1 Reply\"));\n }\n else {\n u = ((((this.props.replies > 1)) ? o._(\"{count} Replies\", {\n count: this.props.replies\n }) : \"1 Reply\"));\n if (this.props.timestamp) {\n var w = ((((g.getApproximateServerTime() / 1000)) - this.props.timestamp.time));\n if (((((w < q)) || ((this.props.orderingMode == k.UFICommentOrderingMode.RECENT_ACTIVITY))))) {\n v = h.DOM.span({\n className: \"fcg\"\n }, p, i({\n time: this.props.timestamp.time,\n text: this.props.timestamp.text,\n verbose: this.props.timestamp.verbose\n }));\n }\n ;\n ;\n }\n ;\n ;\n }\n ;\n ;\n var x = Object.keys(this.props.authors), y = ((x.length && !this.props.isExpanded)), z, aa;\n if (y) {\n var ba = this.props.authors[x[0]];\n z = h.DOM.img({\n alt: \"\",\n src: ba.thumbSrc,\n className: j.ACTOR_IMAGE\n });\n aa = [o._(\"{author} replied\", {\n author: ba.JSBNG__name\n }),p,u,];\n }\n else {\n z = h.DOM.i({\n className: ((((!this.props.isExpanded ? \"UFIPagerIcon\" : \"\")) + ((this.props.isExpanded ? ((\" \" + \"UFICollapseIcon\")) : \"\"))))\n });\n aa = u;\n }\n ;\n ;\n return (h.DOM.li({\n className: t,\n \"data-ft\": this.props[\"data-ft\"]\n }, h.DOM.a({\n className: \"UFICommentLink\",\n onClick: this.props.onClick,\n href: \"#\",\n role: \"button\"\n }, l(null, h.DOM.div({\n className: ((y ? \"UFIReplyActorPhotoWrapper\" : \"\"))\n }, z), h.DOM.span({\n className: s\n }, h.DOM.span({\n className: \"UFIReplySocialSentenceLinkText\"\n }, aa), v)))));\n }\n });\n e.exports = r;\n});\n__d(\"UFIShareRow.react\", [\"NumberFormat\",\"React\",\"UFIClassNames\",\"UFIImageBlock.react\",\"URI\",\"cx\",\"joinClasses\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"NumberFormat\"), h = b(\"React\"), i = b(\"UFIClassNames\"), j = b(\"UFIImageBlock.react\"), k = b(\"URI\"), l = b(\"cx\"), m = b(\"joinClasses\"), n = b(\"tx\"), o = h.createClass({\n displayName: \"UFIShareRow\",\n render: function() {\n var p = new k(\"/ajax/shares/view\").setQueryData({\n target_fbid: this.props.targetID\n }), q = new k(\"/shares/view\").setSubdomain(\"www\").setQueryData({\n id: this.props.targetID\n }), r;\n if (((this.props.shareCount > 1))) {\n var s = g.formatIntegerWithDelimiter(this.props.shareCount, ((this.props.contextArgs.numberdelimiter || \",\")));\n r = n._(\"{count} shares\", {\n count: s\n });\n }\n else r = \"1 share\";\n ;\n ;\n var t = m(i.ROW, ((((this.props.isFirstComponent ? \"UFIFirstComponent\" : \"\")) + ((this.props.isLastComponent ? ((\" \" + \"UFILastComponent\")) : \"\")))));\n return (h.DOM.li({\n className: t\n }, j(null, h.DOM.a({\n className: \"UFIShareIcon\",\n rel: \"dialog\",\n ajaxify: p.toString(),\n href: q.toString()\n }), h.DOM.a({\n className: \"UFIShareLink\",\n rel: \"dialog\",\n ajaxify: p.toString(),\n href: q.toString()\n }, r))));\n }\n });\n e.exports = o;\n});\n__d(\"UFISpamPlaceholder.react\", [\"React\",\"UFIClassNames\",\"cx\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"UFIClassNames\"), i = b(\"cx\"), j = b(\"tx\"), k = g.createClass({\n displayName: \"UFISpamPlaceholder\",\n render: function() {\n var l = (((\"UFISpamCommentWrapper\") + ((this.props.isLoading ? ((\" \" + \"UFISpamCommentLoading\")) : \"\"))));\n return (g.DOM.li({\n className: h.ROW\n }, g.DOM.a({\n href: \"#\",\n role: \"button\",\n className: \"UFISpamCommentLink\",\n onClick: this.props.onClick\n }, g.DOM.span({\n \"data-hover\": \"tooltip\",\n \"data-tooltip-alignh\": \"center\",\n \"aria-label\": j._(\"{count} hidden\", {\n count: this.props.numHidden\n }),\n className: l\n }, g.DOM.i({\n className: \"placeholderIcon\"\n })))));\n }\n });\n e.exports = k;\n});\n__d(\"UFI.react\", [\"NumberFormat\",\"React\",\"LegacyScrollableArea.react\",\"TrackingNodes\",\"UFIAddCommentController\",\"UFIAddCommentLink.react\",\"UFIComment.react\",\"UFIConstants\",\"UFIContainer.react\",\"UFIGiftSentence.react\",\"UFIInstanceState\",\"UFILikeSentence.react\",\"UFIPager.react\",\"UFIReplySocialSentence.react\",\"UFIShareRow.react\",\"UFISpamPlaceholder.react\",\"copyProperties\",\"isEmpty\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"NumberFormat\"), h = b(\"React\"), i = b(\"LegacyScrollableArea.react\"), j = b(\"TrackingNodes\"), k = b(\"UFIAddCommentController\"), l = b(\"UFIAddCommentLink.react\"), m = b(\"UFIComment.react\"), n = b(\"UFIConstants\"), o = b(\"UFIContainer.react\"), p = b(\"UFIGiftSentence.react\"), q = b(\"UFIInstanceState\"), r = b(\"UFILikeSentence.react\"), s = b(\"UFIPager.react\"), t = b(\"UFIReplySocialSentence.react\"), u = b(\"UFIShareRow.react\"), v = b(\"UFISpamPlaceholder.react\"), w = b(\"copyProperties\"), x = b(\"isEmpty\"), y = b(\"tx\"), z = h.createClass({\n displayName: \"UFI\",\n getInitialState: function() {\n return {\n requestRanges: w({\n }, this.props.availableRanges),\n instanceShowRepliesMap: {\n },\n instanceShowReplySocialSentenceMap: {\n },\n loadingSpamIDs: {\n },\n isActiveLoading: false,\n hasPagedToplevel: false\n };\n },\n componentWillReceiveProps: function(aa) {\n if (this.state.isActiveLoading) {\n var ba = this.props.availableRanges[this.props.id], ca = aa.availableRanges[this.props.id];\n if (((((ba.offset != ca.offset)) || ((ba.length != ca.length))))) {\n var da = ((((ca.offset < ba.offset)) ? 0 : ba.length));\n if (((da < aa.availableComments.length))) {\n var ea = aa.availableComments[da].ufiinstanceid;\n q.updateState(ea, \"autofocus\", true);\n }\n ;\n ;\n }\n ;\n ;\n this.setState({\n isActiveLoading: false\n });\n }\n ;\n ;\n if (((aa.orderingMode != this.props.orderingMode))) {\n this.setState({\n requestRanges: w({\n }, aa.availableRanges)\n });\n }\n ;\n ;\n },\n render: function() {\n var aa = this.props, ba = aa.feedback, ca = aa.contextArgs, da = ((aa.source != n.UFIFeedbackSourceType.ADS)), ea = ((ba.orderingmodes && ((aa.commentCounts[aa.id] >= n.minCommentsForOrderingModeSelector)))), fa = ((((((!x(ba.likesentences.current) || ((((ba.seencount > 0)) && !ca.entstream)))) || ea)) && da)), ga = null;\n if (fa) {\n ga = r({\n contextArgs: ca,\n feedback: ba,\n onTargetLikeToggle: aa.onTargetLikeToggle,\n onOrderingModeChange: aa.onOrderingModeChange,\n orderingMode: aa.orderingMode,\n showOrderingModeSelector: ea\n });\n }\n ;\n ;\n var ha = null;\n if (((((aa.feedback.hasviewerliked && this._shouldShowGiftSentence())) && !ca.embedded))) {\n ha = p({\n contextArgs: ca,\n recipient: aa.giftRecipient,\n sender: aa.authorProfiles[ba.actorforpost],\n giftdata: aa.feedback.giftdata\n });\n }\n ;\n ;\n var ia = ((((aa.availableComments && aa.availableComments.length)) && da)), ja = null;\n if (ia) {\n ja = this.renderCommentMap(aa.availableComments, aa.availableRanges[aa.id].offset);\n }\n ;\n ;\n var ka = null, la = ba.cancomment, ma = ((((((la && ca.showaddcomment)) && ba.actorforpost)) && !ca.embedded));\n if (ma) {\n var na = new k(null, aa.id, null, ca), oa = aa.authorProfiles[ba.actorforpost];\n ka = na.renderAddComment(oa, ba.ownerid, ba.mentionsdatasource, ba.showsendonentertip, \"toplevelcomposer\", null, ba.allowphotoattachments, ba.subtitle);\n }\n ;\n ;\n var pa = null, qa = ((((ca.showshares && ba.sharecount)) && da));\n if (((((qa && !ca.entstream)) && !ca.embedded))) {\n pa = u({\n targetID: ba.targetfbid,\n shareCount: ba.sharecount,\n contextArgs: ca\n });\n }\n ;\n ;\n var ra = ((((((fa || qa)) || ia)) || la)), sa = this.renderPagers();\n this.applyToUFIComponents([sa.topPager,], ja, [sa.bottomPager,], {\n isFirstCommentComponent: true\n }, {\n isLastCommentComponent: true\n });\n var ta = ((ba.commentboxhoisted ? ka : null)), ua = ((ba.commentboxhoisted ? null : ka)), va = null;\n if (((((((ma && ba.hasaddcommentlink)) && this.state.hasPagedToplevel)) && !ca.embedded))) {\n va = l({\n onClick: this.onComment\n });\n }\n ;\n ;\n this.applyToUFIComponents([ga,pa,ta,sa.topPager,], ja, [sa.bottomPager,ua,va,], {\n isFirstComponent: true\n }, {\n isLastComponent: true\n });\n var wa = [sa.topPager,ja,sa.bottomPager,];\n if (ca.embedded) {\n wa = null;\n }\n else if (((ca.scrollcomments && ca.scrollwidth))) {\n wa = h.DOM.li(null, i({\n width: ca.scrollwidth\n }, h.DOM.ul(null, wa)));\n }\n \n ;\n ;\n return (o({\n hasNub: ((ca.shownub && ra))\n }, ga, ha, pa, ta, wa, ua, va));\n },\n applyToUFIComponents: function(aa, ba, ca, da, ea) {\n var fa = Object.keys(((ba || {\n }))).map(function(ha) {\n return ba[ha];\n }), ga = [].concat(aa, fa, ca);\n this._applyToFirstComponent(ga, da);\n ga.reverse();\n this._applyToFirstComponent(ga, ea);\n },\n _applyToFirstComponent: function(aa, ba) {\n for (var ca = 0; ((ca < ((aa || [])).length)); ca++) {\n if (aa[ca]) {\n w(aa[ca].props, ba);\n return;\n }\n ;\n ;\n };\n ;\n },\n renderCommentMap: function(aa, ba) {\n var ca = this.props, da = {\n }, ea = aa.length;\n if (!ea) {\n return da;\n }\n ;\n ;\n var fa = aa[0].parentcommentid, ga = [], ha = function() {\n if (((ga.length > 0))) {\n var qa = function(ra, sa) {\n this.state.loadingSpamIDs[ra[0]] = true;\n this.forceUpdate();\n ca.onSpamFetch(ra, sa);\n }.bind(this, ga, fa);\n da[((\"spam\" + ga[0]))] = v({\n onClick: qa,\n numHidden: ga.length,\n isLoading: !!this.state.loadingSpamIDs[ga[0]]\n });\n ga = [];\n }\n ;\n ;\n }.bind(this), ia = ca.instanceid, ja = q.getKeyForInstance(ia, \"editcommentid\"), ka = !!aa[0].parentcommentid, la = false;\n for (var ma = 0; ((ma < ea)); ma++) {\n if (((aa[ma].JSBNG__status == n.UFIStatus.SPAM))) {\n ga.push(aa[ma].id);\n }\n else {\n ha();\n var na = Math.max(((((ca.loggingOffset - ma)) - ba)), 0), oa = aa[ma], pa;\n if (((oa.id == ja))) {\n pa = this.renderEditCommentBox(oa);\n }\n else {\n pa = this.renderComment(oa, na);\n pa.props.isFirst = ((ma === 0));\n pa.props.isLast = ((ma === ((ea - 1))));\n if (!ka) {\n pa.props.showReplyLink = true;\n }\n ;\n ;\n }\n ;\n ;\n da[((\"comment\" + oa.id))] = pa;\n if (((((((((ca.feedback.actorforpost === oa.author)) && !la)) && !ca.feedback.hasviewerliked)) && this._shouldShowGiftSentence()))) {\n da[((\"gift\" + oa.id))] = p({\n contextArgs: ca.contextArgs,\n recipient: ca.giftRecipient,\n sender: ca.authorProfiles[ca.feedback.actorforpost],\n giftdata: ca.feedback.giftdata\n });\n la = true;\n }\n ;\n ;\n if (((oa.JSBNG__status !== n.UFIStatus.DELETED))) {\n da[((\"replies\" + oa.id))] = this.renderReplyContainer(oa);\n }\n ;\n ;\n }\n ;\n ;\n };\n ;\n ha();\n return da;\n },\n _shouldShowGiftSentence: function() {\n var aa = this.props;\n return ((aa.contextArgs.giftoccasion && !aa.contextArgs.entstream));\n },\n renderReplyContainer: function(aa) {\n var ba = this.props, ca = {\n };\n for (var da = 0; ((da < ((aa.replyauthors || [])).length)); da++) {\n var ea = ba.authorProfiles[aa.replyauthors[da]];\n if (ea) {\n ca[ea.id] = ea;\n }\n ;\n ;\n };\n ;\n var fa = ((((ba.repliesMap && ba.repliesMap[aa.id])) && this._shouldShowCommentReplies(aa.id))), ga, ha = Math.max(((aa.replycount - aa.spamreplycount)), 0);\n if (((ha && this._shouldShowReplySocialSentence(aa.id)))) {\n var ia = ((this._shouldShowCommentReplies(aa.id) && ((this.isLoadingPrev(aa.id) || this.isLoadingNext(aa.id)))));\n ga = t({\n authors: ca,\n replies: ha,\n timestamp: aa.recentreplytimestamp,\n onClick: this.onToggleReplies.bind(this, aa),\n isLoading: ia,\n isExpanded: fa,\n orderingMode: this.props.orderingMode\n });\n }\n ;\n ;\n var ja, ka, la, ma;\n if (fa) {\n var na = this.renderPagers(aa.id);\n ja = na.topPager;\n la = na.bottomPager;\n ka = this.renderCommentMap(ba.repliesMap[aa.id], ba.availableRanges[aa.id].offset);\n var oa = Object.keys(ka);\n for (var pa = 0; ((pa < oa.length)); pa++) {\n var qa = ka[oa[pa]];\n if (qa) {\n qa.props.hasPartialBorder = ((pa !== 0));\n }\n ;\n ;\n };\n ;\n if (ba.feedback.cancomment) {\n var ra = false, sa = Object.keys(ka);\n for (var da = ((sa.length - 1)); ((da >= 0)); da--) {\n var ta = sa[da];\n if (((ta && ka[ta]))) {\n ra = ka[ta].props.isAuthorReply;\n break;\n }\n ;\n ;\n };\n ;\n ma = this.renderReplyComposer(aa, !ra);\n }\n ;\n ;\n }\n ;\n ;\n var ua;\n if (((((((((ga || ja)) || ka)) || la)) || ma))) {\n this.applyToUFIComponents([ga,ja,], ka, [la,ma,], {\n isFirstComponent: true\n }, {\n isLastComponent: true\n });\n var va = ((aa.JSBNG__status === n.UFIStatus.LIVE_DELETED));\n ua = o({\n isParentLiveDeleted: va,\n isReplyList: true\n }, ga, ja, ka, la, ma);\n }\n ;\n ;\n return ua;\n },\n renderReplyComposer: function(aa, ba) {\n var ca = this.props;\n return (new k(null, ca.id, aa.id, ca.contextArgs)).renderAddComment(ca.authorProfiles[ca.feedback.actorforpost], ca.feedback.ownerid, ca.feedback.mentionsdatasource, false, ((\"replycomposer-\" + aa.id)), ba, ca.feedback.allowphotoattachments);\n },\n renderEditCommentBox: function(aa) {\n var ba = new k(null, this.props.id, null, {\n }), ca = ba.renderEditComment(this.props.authorProfiles[this.props.feedback.actorforpost], this.props.feedback.ownerid, aa.id, this.props.feedback.mentionsdatasource, this.props.onEditAttempt.bind(null, aa), this.props.onCancelEdit, this.props.feedback.allowphotoattachments);\n return ca;\n },\n _shouldShowCommentReplies: function(aa) {\n if (((aa in this.state.instanceShowRepliesMap))) {\n return this.state.instanceShowRepliesMap[aa];\n }\n else if (((aa in this.props.showRepliesMap))) {\n return this.props.showRepliesMap[aa];\n }\n \n ;\n ;\n return false;\n },\n _shouldShowReplySocialSentence: function(aa) {\n if (((aa in this.state.instanceShowReplySocialSentenceMap))) {\n return this.state.instanceShowReplySocialSentenceMap[aa];\n }\n else if (((aa in this.props.showReplySocialSentenceMap))) {\n return this.props.showReplySocialSentenceMap[aa];\n }\n \n ;\n ;\n return false;\n },\n renderComment: function(aa, ba) {\n var ca = this.props, da = ca.feedback, ea = ((da.actorforpost === aa.author)), fa = q.getKeyForInstance(this.props.instanceid, \"locallycomposed\"), ga = ((aa.islocal || ((fa && fa[aa.id])))), ha = ((da.showremovemenu || ((da.viewerid === aa.author)))), ia = ((((da.canremoveall && da.isownerpage)) && !ea)), ja = ((ca.source != n.UFIFeedbackSourceType.INTERN)), ka = j.getTrackingInfo(j.types.COMMENT, ba), la = !!aa.parentcommentid, ma = this._shouldShowCommentReplies(aa.id), na = !!aa.isfeatured;\n return (m({\n comment: aa,\n authorProfiles: this.props.authorProfiles,\n viewerIsAuthor: ea,\n feedback: da,\n \"data-ft\": ka,\n contextArgs: this.props.contextArgs,\n hideAsSpamForPageAdmin: ia,\n isLocallyComposed: ga,\n isReply: la,\n isFeatured: na,\n showPermalink: ja,\n showRemoveReportMenu: ha,\n showReplies: ma,\n onCommentLikeToggle: ca.onCommentLikeToggle.bind(null, aa),\n onCommentReply: this.onCommentReply.bind(this, aa),\n onCommentTranslate: ca.onCommentTranslate.bind(null, aa),\n onEdit: ca.onCommentEdit.bind(null, aa),\n onHideAsSpam: ca.onCommentHideAsSpam.bind(null, aa),\n onInlineBan: ca.onCommentInlineBan.bind(null, aa),\n onMarkAsNotSpam: ca.onCommentMarkAsNotSpam.bind(null, aa),\n onOneClickRemove: ca.onCommentOneClickRemove.bind(null, aa),\n onPreviewRemove: ca.onPreviewRemove.bind(null, aa),\n onRemove: ca.onCommentRemove.bind(null, aa),\n onRetrySubmit: ca.onRetrySubmit.bind(null, aa),\n onUndoInlineBan: ca.onCommentUndoInlineBan.bind(null, aa),\n onUndoOneClickRemove: ca.onCommentUndoOneClickRemove.bind(null, aa)\n }));\n },\n _updateRepliesState: function(aa, ba, ca) {\n var da = this.state.instanceShowRepliesMap;\n da[aa] = ba;\n var ea = this.state.instanceShowReplySocialSentenceMap;\n ea[aa] = ca;\n this.setState({\n instanceShowRepliesMap: da,\n instanceShowReplySocialSentenceMap: ea\n });\n },\n onToggleReplies: function(aa) {\n var ba = !this._shouldShowCommentReplies(aa.id), ca = ((this._shouldShowReplySocialSentence(aa.id) && !((ba && ((aa.replycount <= this.props.replySocialSentenceMaxReplies))))));\n this._updateRepliesState(aa.id, ba, ca);\n var da = this.props.availableRanges[aa.id].length;\n if (((aa.id in this.state.requestRanges))) {\n da = this.state.requestRanges[aa.id].length;\n }\n ;\n ;\n da -= this.props.deletedCounts[aa.id];\n if (((ba && ((da === 0))))) {\n var ea = this.props.commentCounts[aa.id], fa = Math.min(ea, this.props.pageSize);\n this.onPage(aa.id, {\n offset: ((ea - fa)),\n length: fa\n });\n }\n ;\n ;\n },\n onPage: function(aa, ba) {\n var ca = this.state.requestRanges;\n ca[aa] = ba;\n var da = ((this.state.hasPagedToplevel || ((aa === this.props.id))));\n this.setState({\n requestRanges: ca,\n isActiveLoading: true,\n hasPagedToplevel: da\n });\n this.props.onChangeRange(aa, ba);\n },\n isLoadingPrev: function(aa) {\n var ba = this.props;\n aa = ((aa || ba.id));\n if (!this.state.requestRanges[aa]) {\n this.state.requestRanges[aa] = ba.availableRanges[aa];\n }\n ;\n ;\n var ca = this.state.requestRanges[aa].offset, da = ba.availableRanges[aa].offset;\n return ((ca < da));\n },\n isLoadingNext: function(aa) {\n var ba = this.props;\n aa = ((aa || ba.id));\n if (!this.state.requestRanges[aa]) {\n this.state.requestRanges[aa] = ba.availableRanges[aa];\n }\n ;\n ;\n var ca = this.state.requestRanges[aa].offset, da = this.state.requestRanges[aa].length, ea = ba.availableRanges[aa].offset, fa = ba.availableRanges[aa].length;\n return ((((ca + da)) > ((ea + fa))));\n },\n renderPagers: function(aa) {\n var ba = this.props;\n aa = ((aa || ba.id));\n var ca = ba.availableRanges[aa].offset, da = ba.availableRanges[aa].length, ea = ba.deletedCounts[aa], fa = ba.commentCounts[aa], ga = ((fa - ea)), ha = ((da - ea)), ia = ((ba.contextArgs.numberdelimiter || \",\")), ja = ((aa !== ba.id)), ka = {\n topPager: null,\n bottomPager: null\n };\n if (((ba.source == n.UFIFeedbackSourceType.ADS))) {\n return ka;\n }\n ;\n ;\n var la = this.isLoadingPrev(aa), ma = this.isLoadingNext(aa);\n if (((da == fa))) {\n return ka;\n }\n ;\n ;\n var na = ((((ca + da)) == fa));\n if (((((((fa < ba.pageSize)) && na)) || ((ha === 0))))) {\n var oa = Math.min(fa, ba.pageSize), pa = this.onPage.bind(this, aa, {\n offset: ((fa - oa)),\n length: oa\n }), qa, ra;\n if (((ha === 0))) {\n if (((ga == 1))) {\n qa = ((ja ? \"View 1 reply\" : \"View 1 comment\"));\n }\n else {\n ra = g.formatIntegerWithDelimiter(ga, ia);\n qa = ((ja ? y._(\"View all {count} replies\", {\n count: ra\n }) : y._(\"View all {count} comments\", {\n count: ra\n })));\n }\n ;\n ;\n }\n else if (((((ga - ha)) == 1))) {\n qa = ((ja ? \"View 1 more reply\" : \"View 1 more comment\"));\n }\n else {\n ra = g.formatIntegerWithDelimiter(((ga - ha)), ia);\n qa = ((ja ? y._(\"View {count} more replies\", {\n count: ra\n }) : y._(\"View {count} more comments\", {\n count: ra\n })));\n }\n \n ;\n ;\n var sa = j.getTrackingInfo(j.types.VIEW_ALL_COMMENTS), ta = s({\n contextArgs: ba.contextArgs,\n isUnseen: ba.feedback.hasunseencollapsed,\n isLoading: la,\n pagerLabel: qa,\n onPagerClick: pa,\n \"data-ft\": sa\n });\n if (((ba.feedback.isranked && !ja))) {\n ka.bottomPager = ta;\n }\n else ka.topPager = ta;\n ;\n ;\n return ka;\n }\n ;\n ;\n if (((ca > 0))) {\n var ua = Math.max(((ca - ba.pageSize)), 0), oa = ((((ca + da)) - ua)), va = this.onPage.bind(this, aa, {\n offset: ua,\n length: oa\n }), wa = g.formatIntegerWithDelimiter(ha, ia), xa = g.formatIntegerWithDelimiter(ga, ia), ya = y._(\"{countshown} of {totalcount}\", {\n countshown: wa,\n totalcount: xa\n });\n if (((ba.feedback.isranked && !ja))) {\n ka.bottomPager = s({\n contextArgs: ba.contextArgs,\n isLoading: la,\n pagerLabel: \"View more comments\",\n onPagerClick: va,\n countSentence: ya\n });\n }\n else {\n var za = ((ja ? \"View previous replies\" : \"View previous comments\"));\n ka.topPager = s({\n contextArgs: ba.contextArgs,\n isLoading: la,\n pagerLabel: za,\n onPagerClick: va,\n countSentence: ya\n });\n }\n ;\n ;\n }\n ;\n ;\n if (((((ca + da)) < fa))) {\n var ab = Math.min(((da + ba.pageSize)), ((fa - ca))), bb = this.onPage.bind(this, aa, {\n offset: ca,\n length: ab\n });\n if (((ba.feedback.isranked && !ja))) {\n ka.topPager = s({\n contextArgs: ba.contextArgs,\n isLoading: ma,\n pagerLabel: \"View previous comments\",\n onPagerClick: bb\n });\n }\n else {\n var cb = ((ja ? \"View more replies\" : \"View more comments\"));\n ka.bottomPager = s({\n contextArgs: ba.contextArgs,\n isLoading: ma,\n pagerLabel: cb,\n onPagerClick: bb\n });\n }\n ;\n ;\n }\n ;\n ;\n return ka;\n },\n onCommentReply: function(aa) {\n var ba = ((aa.parentcommentid || aa.id));\n if (!this._shouldShowCommentReplies(ba)) {\n this.onToggleReplies(aa);\n }\n ;\n ;\n if (((this.refs && this.refs[((\"replycomposer-\" + ba))]))) {\n this.refs[((\"replycomposer-\" + ba))].JSBNG__focus();\n }\n ;\n ;\n },\n onComment: function() {\n if (((this.refs && this.refs.toplevelcomposer))) {\n this.refs.toplevelcomposer.JSBNG__focus();\n }\n ;\n ;\n }\n });\n e.exports = z;\n});\n__d(\"onEnclosingPageletDestroy\", [\"Arbiter\",\"DOMQuery\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"DOMQuery\");\n function i(j, k) {\n var l = g.subscribe(\"pagelet/destroy\", function(m, n) {\n if (h.contains(n.root, j)) {\n l.unsubscribe();\n k();\n }\n ;\n ;\n });\n return l;\n };\n;\n e.exports = i;\n});\n__d(\"UFIController\", [\"Arbiter\",\"Bootloader\",\"JSBNG__CSS\",\"DOM\",\"ImmutableObject\",\"LayerRemoveOnHide\",\"LiveTimer\",\"Parent\",\"React\",\"ReactMount\",\"ShortProfiles\",\"UFI.react\",\"UFIActionLinkController\",\"UFICentralUpdates\",\"UFIComments\",\"UFIConstants\",\"UFIFeedbackTargets\",\"UFIInstanceState\",\"UFIUserActions\",\"URI\",\"copyProperties\",\"isEmpty\",\"onEnclosingPageletDestroy\",\"tx\",\"UFICommentTemplates\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Bootloader\"), i = b(\"JSBNG__CSS\"), j = b(\"DOM\"), k = b(\"ImmutableObject\"), l = b(\"LayerRemoveOnHide\"), m = b(\"LiveTimer\"), n = b(\"Parent\"), o = b(\"React\"), p = b(\"ReactMount\"), q = b(\"ShortProfiles\"), r = b(\"UFI.react\"), s = b(\"UFIActionLinkController\"), t = b(\"UFICentralUpdates\"), u = b(\"UFIComments\"), v = b(\"UFIConstants\"), w = b(\"UFIFeedbackTargets\"), x = b(\"UFIInstanceState\"), y = b(\"UFIUserActions\"), z = b(\"URI\"), aa = b(\"copyProperties\"), ba = b(\"isEmpty\"), ca = b(\"onEnclosingPageletDestroy\"), da = b(\"tx\"), ea = b(\"UFICommentTemplates\"), fa = function(ia, ja, ka, la) {\n var ma = ((((ia.offset + ia.length)) === ja));\n return {\n offset: ia.offset,\n length: ((((ma && ga(la))) ? ((ka - ia.offset)) : ia.length))\n };\n }, ga = function(ia) {\n return ((((ia == v.UFIPayloadSourceType.USER_ACTION)) || ((ia == v.UFIPayloadSourceType.LIVE_SEND))));\n };\n function ha(ia, ja, ka) {\n this.root = ia;\n this.id = ja.ftentidentifier;\n this.source = ja.source;\n this._ufiInstanceID = ja.instanceid;\n this._contextArgs = ja;\n this._contextArgs.rootid = this.root.id;\n this._verifiedCommentsExpanded = false;\n var la = ka.feedbacktargets[0];\n this.actionLink = new s(ia, this._contextArgs, la);\n this.orderingMode = la.defaultcommentorderingmode;\n var ma = ka.commentlists.comments[this.id][this.orderingMode];\n this.replyRanges = {\n };\n this.repliesMap = {\n };\n this.showRepliesMap = {\n };\n this.showReplySocialSentenceMap = {\n };\n this.commentcounts = {\n };\n this.commentcounts[this.id] = u.getCommentCount(this.id);\n var na = {\n }, oa = ((la.orderingmodes || [{\n value: this.orderingMode\n },]));\n oa.forEach(function(sa) {\n na[sa.value] = aa({\n }, ma.range);\n });\n this.ranges = na;\n if (ka.commentlists.replies) {\n for (var pa = 0; ((pa < ma.values.length)); pa++) {\n var qa = ma.values[pa], ra = ka.commentlists.replies[qa];\n if (ra) {\n this.commentcounts[qa] = u.getCommentCount(qa);\n this.replyRanges[qa] = aa({\n }, ra.range);\n }\n ;\n ;\n };\n }\n ;\n ;\n this._loggingOffset = null;\n this._ufi = null;\n this.ufiCentralUpdatesSubscriptions = [t.subscribe(\"feedback-updated\", function(sa, ta) {\n var ua = ta.updates, va = ta.payloadSource;\n if (((((va != v.UFIPayloadSourceType.COLLAPSED_UFI)) && ((this.id in ua))))) {\n this.fetchAndUpdate(this.render.bind(this), va);\n }\n ;\n ;\n }.bind(this)),t.subscribe(\"feedback-id-changed\", function(sa, ta) {\n var ua = ta.updates;\n if (((this.id in ua))) {\n this.id = ua[this.id];\n }\n ;\n ;\n }.bind(this)),t.subscribe(\"instance-updated\", function(sa, ta) {\n var ua = ta.updates;\n if (((this._ufiInstanceID in ua))) {\n var va = ua[this._ufiInstanceID];\n if (va.editcommentid) {\n this.render(ta.payloadSource);\n }\n ;\n ;\n }\n ;\n ;\n }.bind(this)),t.subscribe(\"update-comment-lists\", function(sa, ta) {\n if (((ta.commentlists && ta.commentlists.replies))) {\n var ua = ta.commentlists.replies;\n {\n var fin104keys = ((window.top.JSBNG_Replay.forInKeys)((ua))), fin104i = (0);\n var va;\n for (; (fin104i < fin104keys.length); (fin104i++)) {\n ((va) = (fin104keys[fin104i]));\n {\n if (((((((((this.id != va)) && ua[va])) && ((ua[va].ftentidentifier == this.id)))) && !this.replyRanges[va]))) {\n this.replyRanges[va] = ua[va].range;\n }\n ;\n ;\n };\n };\n };\n ;\n }\n ;\n ;\n }.bind(this)),];\n this.clearPageletSubscription = ca(this.root, this._onEnclosingPageletDestroy.bind(this));\n this.clearPageSubscription = g.subscribe(\"ufi/page_cleared\", this._onDestroy.bind(this));\n t.handleUpdate(v.UFIPayloadSourceType.INITIAL_SERVER, ka);\n if (this._contextArgs.viewas) {\n this.viewasUFICleanSubscription = g.subscribe(\"pre_page_transition\", function(sa, ta) {\n if (((this._contextArgs.viewas !== z(ta.to).getQueryData(\"viewas\")))) {\n u.resetFeedbackTarget(this.id);\n }\n ;\n ;\n }.bind(this));\n }\n ;\n ;\n h.loadModules([\"ScrollAwareDOM\",], function(sa) {\n p.scrollMonitor = sa.monitor;\n });\n };\n;\n aa(ha.prototype, {\n _getParentForm: function() {\n if (!this._form) {\n this._form = n.byTag(this.root, \"form\");\n }\n ;\n ;\n return this._form;\n },\n _onTargetLikeToggle: function(JSBNG__event) {\n var ia = !this.feedback.hasviewerliked;\n y.changeLike(this.id, ia, {\n source: this.source,\n target: JSBNG__event.target,\n rootid: this._contextArgs.rootid\n });\n JSBNG__event.preventDefault();\n },\n _onCommentLikeToggle: function(ia, JSBNG__event) {\n var ja = !ia.hasviewerliked;\n y.changeCommentLike(ia.id, ja, {\n source: this.source,\n target: JSBNG__event.target\n });\n },\n _onCommentEdit: function(ia) {\n x.updateState(this._ufiInstanceID, \"isediting\", true);\n x.updateState(this._ufiInstanceID, \"editcommentid\", ia.id);\n },\n _onEditAttempt: function(ia, ja, JSBNG__event) {\n if (((!ja.visibleValue && !ja.attachedPhoto))) {\n this._onCommentRemove(ia, JSBNG__event);\n }\n else y.editComment(ia.id, ja.visibleValue, ja.encodedValue, {\n source: this._contextArgs.source,\n target: JSBNG__event.target,\n attachedPhoto: ja.attachedPhoto\n });\n ;\n ;\n x.updateStateField(this._ufiInstanceID, \"locallycomposed\", ia.id, true);\n this._onEditReset();\n },\n _onEditReset: function() {\n x.updateState(this._ufiInstanceID, \"isediting\", false);\n x.updateState(this._ufiInstanceID, \"editcommentid\", null);\n },\n _onCommentRemove: function(ia, JSBNG__event) {\n var ja = ea[\":fb:ufi:hide-dialog-template\"].build();\n j.setContent(ja.getNode(\"body\"), \"Are you sure you want to delete this comment?\");\n j.setContent(ja.getNode(\"title\"), \"Delete Comment\");\n h.loadModules([\"DialogX\",], function(ka) {\n var la = new ka({\n modal: true,\n width: 465,\n addedBehaviors: [l,]\n }, ja.getRoot());\n la.subscribe(\"JSBNG__confirm\", function() {\n y.removeComment(ia.id, {\n source: this.source,\n oneclick: false,\n target: JSBNG__event.target,\n timelinelogdata: this._contextArgs.timelinelogdata\n });\n la.hide();\n }.bind(this));\n la.show();\n }.bind(this));\n },\n _onCommentOneClickRemove: function(ia, JSBNG__event) {\n y.removeComment(ia.id, {\n source: this.source,\n oneclick: true,\n target: JSBNG__event.target,\n timelinelogdata: this._contextArgs.timelinelogdata\n });\n },\n _onCommentUndoOneClickRemove: function(ia, JSBNG__event) {\n var ja = ((((this.feedback.canremoveall && this.feedback.isownerpage)) && ((this.feedback.actorforpost !== this.authorProfiles[ia.author]))));\n y.undoRemoveComment(ia.id, ja, {\n source: this.source,\n target: JSBNG__event.target\n });\n },\n _onCommentHideAsSpam: function(ia, JSBNG__event) {\n y.setHideAsSpam(ia.id, true, {\n source: this.source,\n target: JSBNG__event.target\n });\n },\n _onCommentMarkAsNotSpam: function(ia, JSBNG__event) {\n y.setHideAsSpam(ia.id, false, {\n source: this.source,\n target: JSBNG__event.target\n });\n },\n _onCommentTranslate: function(ia, JSBNG__event) {\n y.translateComment(ia, {\n source: this.source,\n target: JSBNG__event.target\n });\n },\n _onCommentInlineBanChange: function(ia, ja, JSBNG__event) {\n y.banUser(ia, this.feedback.ownerid, ja, {\n source: this.source,\n target: JSBNG__event.target\n });\n },\n _onCommentInlineBan: function(ia, JSBNG__event) {\n this._onCommentInlineBanChange(ia, true, JSBNG__event);\n },\n _onCommentUndoInlineBan: function(ia, JSBNG__event) {\n this._onCommentInlineBanChange(ia, false, JSBNG__event);\n },\n _fetchSpamComments: function(ia, ja) {\n y.fetchSpamComments(this.id, ia, ja, this._contextArgs.viewas);\n },\n _removePreview: function(ia, JSBNG__event) {\n y.removePreview(ia, {\n source: this.source,\n target: JSBNG__event.target\n });\n },\n _retrySubmit: function(ia) {\n h.loadModules([\"UFIRetryActions\",], function(ja) {\n ja.retrySubmit(ia, {\n source: this.source\n });\n }.bind(this));\n },\n _ensureCommentsExpanded: function() {\n if (this._verifiedCommentsExpanded) {\n return;\n }\n ;\n ;\n var ia = n.byTag(this.root, \"form\");\n if (ia) {\n i.removeClass(ia, \"collapsed_comments\");\n this._verifiedCommentsExpanded = true;\n }\n ;\n ;\n },\n render: function(ia) {\n var ja = ((this.comments.length || !ba(this.feedback.likesentences.current)));\n if (((ja && ga(ia)))) {\n this._ensureCommentsExpanded();\n }\n ;\n ;\n if (((this._loggingOffset === null))) {\n this._loggingOffset = ((((this.ranges[this.orderingMode].offset + this.comments.length)) - 1));\n }\n ;\n ;\n var ka = ((this.feedback.replysocialsentencemaxreplies || -1)), la = {\n };\n la[this.id] = u.getDeletedCount(this.id);\n this.comments.forEach(function(oa) {\n la[oa.id] = u.getDeletedCount(oa.id);\n });\n var ma = aa({\n }, this.replyRanges);\n ma[this.id] = this.ranges[this.orderingMode];\n ma = new k(ma);\n var na = r({\n feedback: this.feedback,\n id: this.id,\n onTargetLikeToggle: this._onTargetLikeToggle.bind(this),\n onCommentLikeToggle: this._onCommentLikeToggle.bind(this),\n onCommentRemove: this._onCommentRemove.bind(this),\n onCommentHideAsSpam: this._onCommentHideAsSpam.bind(this),\n onCommentMarkAsNotSpam: this._onCommentMarkAsNotSpam.bind(this),\n onCommentEdit: this._onCommentEdit.bind(this),\n onCommentOneClickRemove: this._onCommentOneClickRemove.bind(this),\n onCommentUndoOneClickRemove: this._onCommentUndoOneClickRemove.bind(this),\n onCommentTranslate: this._onCommentTranslate.bind(this),\n onCommentInlineBan: this._onCommentInlineBan.bind(this),\n onCommentUndoInlineBan: this._onCommentUndoInlineBan.bind(this),\n onEditAttempt: this._onEditAttempt.bind(this),\n onCancelEdit: this._onEditReset.bind(this),\n onChangeRange: this._changeRange.bind(this),\n onSpamFetch: this._fetchSpamComments.bind(this),\n onPreviewRemove: this._removePreview.bind(this),\n onRetrySubmit: this._retrySubmit.bind(this),\n onOrderingModeChange: this._onOrderingModeChange.bind(this),\n contextArgs: this._contextArgs,\n repliesMap: this.repliesMap,\n showRepliesMap: this.showRepliesMap,\n showReplySocialSentenceMap: this.showReplySocialSentenceMap,\n commentCounts: this.commentcounts,\n deletedCounts: la,\n availableComments: this.comments,\n source: this.source,\n availableRanges: ma,\n pageSize: v.defaultPageSize,\n authorProfiles: this.authorProfiles,\n instanceid: this._ufiInstanceID,\n loggingOffset: this._loggingOffset,\n replySocialSentenceMaxReplies: ka,\n giftRecipient: this._giftRecipient,\n orderingMode: this.orderingMode\n });\n this._ufi = o.renderComponent(na, this.root);\n m.updateTimeStamps();\n if (this._getParentForm()) {\n g.inform(\"ufi/changed\", {\n form: this._getParentForm()\n });\n }\n ;\n ;\n if (((((ia != v.UFIPayloadSourceType.INITIAL_SERVER)) && ((ia != v.UFIPayloadSourceType.COLLAPSED_UFI))))) {\n g.inform(\"reflow\");\n }\n ;\n ;\n },\n fetchAndUpdate: function(ia, ja) {\n w.getFeedbackTarget(this.id, function(ka) {\n var la = u.getCommentCount(this.id), ma = fa(this.ranges[this.orderingMode], this.commentcounts[this.id], la, ja);\n u.getCommentsInRange(this.id, ma, this.orderingMode, this._contextArgs.viewas, function(na) {\n var oa = [], pa = {\n }, qa = {\n };\n if (ka.actorforpost) {\n oa.push(ka.actorforpost);\n }\n ;\n ;\n for (var ra = 0; ((ra < na.length)); ra++) {\n if (na[ra].author) {\n oa.push(na[ra].author);\n }\n ;\n ;\n if (na[ra].socialcontext) {\n oa.push(na[ra].socialcontext.topmutualid);\n }\n ;\n ;\n if (((na[ra].replyauthors && na[ra].replyauthors.length))) {\n for (var sa = 0; ((sa < na[ra].replyauthors.length)); sa++) {\n oa.push(na[ra].replyauthors[sa]);\n ;\n };\n }\n ;\n ;\n if (ka.isthreaded) {\n var ta = na[ra].id, ua = u.getCommentCount(ta), va;\n if (this.replyRanges[ta]) {\n va = fa(this.replyRanges[ta], this.commentcounts[ta], ua, ja);\n }\n else va = {\n offset: 0,\n length: Math.min(ua, 2)\n };\n ;\n ;\n pa[ta] = va;\n qa[ta] = ua;\n }\n ;\n ;\n };\n ;\n u.getRepliesInRanges(this.id, pa, function(wa) {\n for (var xa = 0; ((xa < na.length)); xa++) {\n var ya = na[xa].id, za = ((wa[ya] || []));\n for (var ab = 0; ((ab < za.length)); ab++) {\n if (za[ab].author) {\n oa.push(za[ab].author);\n }\n ;\n ;\n if (za[ab].socialcontext) {\n oa.push(za[ab].socialcontext.topmutualid);\n }\n ;\n ;\n };\n ;\n };\n ;\n if (this._contextArgs.giftoccasion) {\n oa.push(ka.actorid);\n }\n ;\n ;\n q.getMulti(oa, function(bb) {\n if (this._contextArgs.giftoccasion) {\n this._giftRecipient = bb[ka.actorid];\n }\n ;\n ;\n this.authorProfiles = bb;\n this.feedback = ka;\n this.commentcounts[this.id] = la;\n this.comments = na;\n this.ranges[this.orderingMode] = ma;\n for (var cb = 0; ((cb < na.length)); cb++) {\n var db = na[cb].id, eb = pa[db];\n this.repliesMap[db] = wa[db];\n this.replyRanges[db] = eb;\n this.commentcounts[db] = qa[db];\n this.showRepliesMap[db] = ((eb && ((eb.length > 0))));\n if (((((this.showReplySocialSentenceMap[db] === undefined)) && ((qa[db] > 0))))) {\n this.showReplySocialSentenceMap[db] = !this.showRepliesMap[db];\n }\n ;\n ;\n };\n ;\n ia(ja);\n if (((ja == v.UFIPayloadSourceType.ENDPOINT_COMMENT_FETCH))) {\n g.inform(\"CommentUFI.Pager\");\n }\n ;\n ;\n }.bind(this));\n }.bind(this));\n }.bind(this));\n }.bind(this));\n },\n _changeRange: function(ia, ja) {\n if (((ia == this.id))) {\n this.ranges[this.orderingMode] = ja;\n }\n else this.replyRanges[ia] = ja;\n ;\n ;\n this.fetchAndUpdate(this.render.bind(this), v.UFIPayloadSourceType.USER_ACTION);\n },\n _onEnclosingPageletDestroy: function() {\n o.unmountAndReleaseReactRootNode(this.root);\n this.ufiCentralUpdatesSubscriptions.forEach(t.unsubscribe.bind(t));\n g.unsubscribe(this.clearPageSubscription);\n ((this.viewasUFICleanSubscription && g.unsubscribe(this.viewasUFICleanSubscription)));\n },\n _onDestroy: function() {\n this._onEnclosingPageletDestroy();\n g.unsubscribe(this.clearPageletSubscription);\n },\n _onOrderingModeChange: function(ia) {\n this.orderingMode = ia;\n this.fetchAndUpdate(this.render.bind(this), v.UFIPayloadSourceType.USER_ACTION);\n }\n });\n e.exports = ha;\n});\n__d(\"EntstreamCollapsedUFIActions\", [\"PopupWindow\",\"React\",\"TrackingNodes\",\"URI\",\"cx\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"PopupWindow\"), h = b(\"React\"), i = b(\"TrackingNodes\"), j = b(\"URI\"), k = b(\"cx\"), l = b(\"tx\"), m = h.createClass({\n displayName: \"EntstreamCollapsedUFIActions\",\n getLikeButton: function() {\n return this.refs.likeButton.getDOMNode();\n },\n getLikeIcon: function() {\n return this.refs.likeIcon.getDOMNode();\n },\n render: function() {\n var n;\n if (((this.props.shareHref !== null))) {\n var o = i.getTrackingInfo(i.types.SHARE_LINK), p = j(this.props.shareHref), q = [h.DOM.i({\n className: \"-cx-PUBLIC-fbEntstreamCollapsedUFI__shareicon -cx-PRIVATE-fbEntstreamCollapsedUFI__icon\"\n }),\"Share\",];\n if (((p.getPath().indexOf(\"/ajax\") === 0))) {\n n = h.DOM.a({\n ajaxify: this.props.shareHref,\n className: \"-cx-PUBLIC-fbEntstreamCollapsedUFI__sharelink -cx-PUBLIC-fbEntstreamCollapsedUFI__action\",\n \"data-ft\": o,\n href: \"#\",\n rel: \"dialog\",\n title: \"Share this item\"\n }, q);\n }\n else {\n var r = function() {\n g.open(this.props.shareHref, 480, 600);\n return false;\n }.bind(this);\n n = h.DOM.a({\n className: \"-cx-PUBLIC-fbEntstreamCollapsedUFI__sharelink -cx-PUBLIC-fbEntstreamCollapsedUFI__action\",\n \"data-ft\": o,\n href: this.props.shareHref,\n onClick: r,\n target: \"_blank\",\n title: \"Share this item\"\n }, q);\n }\n ;\n ;\n }\n ;\n ;\n var s;\n if (this.props.canComment) {\n var t = \"-cx-PUBLIC-fbEntstreamCollapsedUFI__commenticon -cx-PRIVATE-fbEntstreamCollapsedUFI__icon\", u = [h.DOM.i({\n className: t\n }),\"JSBNG__Comment\",], v = \"-cx-PUBLIC-fbEntstreamCollapsedUFI__commentlink -cx-PUBLIC-fbEntstreamCollapsedUFI__action\", w = i.getTrackingInfo(i.types.COMMENT_LINK);\n if (this.props.storyHref) {\n s = h.DOM.a({\n className: v,\n \"data-ft\": w,\n href: this.props.storyHref,\n target: \"_blank\",\n title: \"Write a comment...\"\n }, u);\n }\n else s = h.DOM.a({\n className: v,\n \"data-ft\": w,\n href: \"#\",\n onClick: this.props.onCommentClick,\n title: \"Write a comment...\"\n }, u);\n ;\n ;\n }\n ;\n ;\n var x;\n if (this.props.canLike) {\n var y = ((((((this.props.hasViewerLiked ? \"-cx-PUBLIC-fbEntstreamFeedback__liked\" : \"\")) + ((\" \" + \"-cx-PUBLIC-fbEntstreamCollapsedUFI__likelink\")))) + ((\" \" + \"-cx-PUBLIC-fbEntstreamCollapsedUFI__action\")))), z = i.getTrackingInfo(((this.props.hasViewerLiked ? i.types.UNLIKE_LINK : i.types.LIKE_LINK))), aa = ((this.props.hasViewerLiked ? \"Unlike this\" : \"Like this\"));\n x = h.DOM.a({\n className: y,\n \"data-ft\": z,\n href: \"#\",\n onClick: this.props.onLike,\n onMouseDown: this.props.onLikeMouseDown,\n ref: \"likeButton\",\n title: aa\n }, h.DOM.i({\n className: \"-cx-PUBLIC-fbEntstreamCollapsedUFI__likeicon -cx-PRIVATE-fbEntstreamCollapsedUFI__icon\",\n ref: \"likeIcon\"\n }), \"Like\", h.DOM.div({\n className: \"-cx-PRIVATE-fbEntstreamCollapsedUFI__likecover\"\n }));\n }\n ;\n ;\n return (h.DOM.div({\n className: \"-cx-PUBLIC-fbEntstreamCollapsedUFI__icons\"\n }, x, s, n));\n }\n });\n e.exports = m;\n});\n__d(\"EntstreamCollapsedUFISentence\", [\"Bootloader\",\"NumberFormat\",\"ProfileBrowserLink\",\"ProfileBrowserTypes\",\"React\",\"URI\",\"cx\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Bootloader\"), h = b(\"NumberFormat\"), i = b(\"ProfileBrowserLink\"), j = b(\"ProfileBrowserTypes\"), k = b(\"React\"), l = b(\"URI\"), m = b(\"cx\"), n = b(\"tx\"), o = k.createClass({\n displayName: \"EntstreamCollapsedUFISentence\",\n _showShareDialog: function(JSBNG__event) {\n JSBNG__event = JSBNG__event.nativeEvent;\n if (JSBNG__event.isDefaultRequested()) {\n return;\n }\n ;\n ;\n g.loadModules([\"EntstreamShareOverlay\",], function(p) {\n p.display(this.props.feedback.targetfbid, this._getShareString());\n }.bind(this));\n JSBNG__event.prevent();\n },\n _getShareString: function() {\n var p = this.props.feedback.sharecount, q = ((this.props.numberDelimiter || \",\"));\n if (((p === 1))) {\n return \"1 Share\";\n }\n else if (((p > 1))) {\n var r = h.formatIntegerWithDelimiter(p, q);\n return n._(\"{count} Shares\", {\n count: r\n });\n }\n \n ;\n ;\n },\n render: function() {\n var p = this.props.feedback, q = p.likecount, r = this.props.commentCount, s = p.sharecount, t = p.seencount, u = this.props.hasAttachedUFIExpanded, v = ((this.props.numberDelimiter || \",\"));\n if (u) {\n q = 0;\n r = 0;\n }\n ;\n ;\n if (((((((!q && !r)) && !s)) && !t))) {\n return k.DOM.span(null);\n }\n ;\n ;\n var w;\n if (((q === 1))) {\n w = \"1 Like\";\n }\n else if (((q > 1))) {\n var x = h.formatIntegerWithDelimiter(q, v);\n w = n._(\"{count} Likes\", {\n count: x\n });\n }\n \n ;\n ;\n var y;\n if (((r === 1))) {\n y = \"1 Comment\";\n }\n else if (((r > 1))) {\n var z = h.formatIntegerWithDelimiter(r, v);\n y = n._(\"{count} Comments\", {\n count: z\n });\n }\n \n ;\n ;\n var aa = this._getShareString(), ba, ca, da;\n if (w) {\n ca = new l(\"/ajax/like/tooltip.php\").setQueryData({\n comment_fbid: p.targetfbid,\n comment_from: p.actorforpost,\n seen_user_fbids: true\n });\n var ea = ((((y || aa)) ? \"prm\" : \"\"));\n ba = j.LIKES;\n da = {\n id: p.targetfbid\n };\n var fa = i.constructDialogURI(ba, da).toString();\n if (this.props.storyHref) {\n w = null;\n }\n else w = k.DOM.a({\n ajaxify: fa,\n className: ea,\n href: i.constructPageURI(ba, da).toString(),\n \"data-hover\": \"tooltip\",\n \"data-tooltip-alignh\": \"center\",\n \"data-tooltip-uri\": ca.toString(),\n rel: \"dialog\"\n }, w);\n ;\n ;\n }\n ;\n ;\n var ga;\n if (((t > 0))) {\n ba = j.GROUP_MESSAGE_VIEWERS;\n da = {\n id: p.targetfbid\n };\n var ha = i.constructDialogURI(ba, da), ia = i.constructPageURI(ba, da);\n ca = new l(\"/ajax/ufi/seen_tooltip.php\").setQueryData({\n ft_ent_identifier: p.entidentifier,\n displayed_count: t\n });\n var ja = h.formatIntegerWithDelimiter(t, v);\n if (p.seenbyall) {\n ga = \"Seen by everyone\";\n }\n else ga = ((((ja == 1)) ? \"Seen by 1\" : n._(\"Seen by {count}\", {\n count: ja\n })));\n ;\n ;\n ga = k.DOM.a({\n ajaxify: ha.toString(),\n \"data-hover\": \"tooltip\",\n \"data-tooltip-alignh\": \"center\",\n \"data-tooltip-uri\": ca.toString(),\n href: ia.toString(),\n rel: \"dialog\",\n tabindex: \"-1\"\n }, ga);\n }\n ;\n ;\n if (y) {\n var ka = ((aa ? \"prm\" : \"\"));\n if (this.props.storyHref) {\n y = k.DOM.a({\n className: ka,\n href: this.props.storyHref,\n target: \"_blank\"\n }, y);\n }\n else y = k.DOM.a({\n className: ka,\n href: \"#\",\n onClick: this.props.onCommentClick\n }, y);\n ;\n ;\n }\n ;\n ;\n if (aa) {\n var la = new l(\"/shares/view\").setSubdomain(\"www\").setQueryData({\n id: p.targetfbid\n });\n if (this.props.storyHref) {\n aa = k.DOM.a({\n href: la.toString(),\n target: \"_blank\"\n }, aa);\n }\n else aa = k.DOM.a({\n href: la.toString(),\n onClick: this._showShareDialog,\n rel: \"ignore\"\n }, aa);\n ;\n ;\n }\n ;\n ;\n return (k.DOM.span({\n className: \"-cx-PUBLIC-fbEntstreamCollapsedUFI__sentencerow\"\n }, w, y, aa, ga));\n }\n });\n e.exports = o;\n});\n__d(\"EntstreamCollapsedUFI\", [\"JSBNG__Event\",\"Animation\",\"BrowserSupport\",\"JSBNG__CSS\",\"DOM\",\"Ease\",\"EntstreamCollapsedUFIActions\",\"EntstreamCollapsedUFISentence\",\"React\",\"TrackingNodes\",\"Vector\",\"cx\",\"queryThenMutateDOM\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Animation\"), i = b(\"BrowserSupport\"), j = b(\"JSBNG__CSS\"), k = b(\"DOM\"), l = b(\"Ease\"), m = b(\"EntstreamCollapsedUFIActions\"), n = b(\"EntstreamCollapsedUFISentence\"), o = b(\"React\"), p = b(\"TrackingNodes\"), q = b(\"Vector\"), r = b(\"cx\"), s = b(\"queryThenMutateDOM\"), t = 16, u = o.createClass({\n displayName: \"EntstreamCollapsedUFI\",\n _animate: function(v, w, x, y) {\n if (!i.hasCSSTransforms()) {\n return;\n }\n ;\n ;\n var z = this.refs.icons.getLikeIcon();\n ((this._animation && this._animation.JSBNG__stop()));\n this._animation = new h(z).from(\"scaleX\", v).from(\"scaleY\", v).to(\"scaleX\", w).to(\"scaleY\", w).duration(x);\n ((y && this._animation.ease(y)));\n this._animation.go();\n },\n bounceLike: function() {\n this._animate(1.35, 1, 750, l.bounceOut);\n },\n shrinkLike: function() {\n this._animate(1, 124362, 150);\n this._mouseUpListener = g.listen(JSBNG__document.body, \"mouseup\", this._onMouseUp);\n },\n _onMouseUp: function(JSBNG__event) {\n this._mouseUpListener.remove();\n if (!k.contains(this.refs.icons.getLikeButton(), JSBNG__event.getTarget())) {\n this._animate(124583, 1, 150);\n }\n ;\n ;\n },\n render: function() {\n var v = this.props.feedback, w = p.getTrackingInfo(p.types.BLINGBOX);\n return (o.DOM.div({\n className: \"clearfix\"\n }, m({\n canLike: v.viewercanlike,\n canComment: v.cancomment,\n hasViewerLiked: v.hasviewerliked,\n onCommentClick: this.props.onCommentClick,\n onLike: this.props.onLike,\n onLikeMouseDown: this.props.onLikeMouseDown,\n ref: \"icons\",\n shareHref: this.props.shareHref,\n storyHref: this.props.storyHref\n }), o.DOM.div({\n className: \"-cx-PUBLIC-fbEntstreamCollapsedUFI__sentence\",\n \"data-ft\": w,\n ref: \"sentence\"\n }, n({\n commentCount: this.props.commentCount,\n feedback: v,\n hasAttachedUFIExpanded: this.props.hasAttachedUFIExpanded,\n numberDelimiter: this.props.numberDelimiter,\n onCommentClick: this.props.onCommentClick,\n storyHref: this.props.storyHref\n }))));\n },\n componentDidMount: function(v) {\n var w = this.refs.icons.getDOMNode(), x = this.refs.sentence.getDOMNode(), y, z, aa;\n s(function() {\n y = q.getElementDimensions(v).x;\n z = q.getElementDimensions(w).x;\n aa = q.getElementDimensions(x).x;\n }, function() {\n if (((((z + aa)) > ((y + t))))) {\n j.addClass(v, \"-cx-PRIVATE-fbEntstreamCollapsedUFI__tworow\");\n }\n ;\n ;\n });\n }\n });\n e.exports = u;\n});\n__d(\"EntstreamCollapsedUFIController\", [\"Bootloader\",\"CommentPrelude\",\"JSBNG__CSS\",\"DOM\",\"EntstreamCollapsedUFI\",\"React\",\"ReactMount\",\"UFICentralUpdates\",\"UFIComments\",\"UFIConstants\",\"UFIFeedbackTargets\",\"UFIUserActions\",\"copyProperties\",\"cx\",\"onEnclosingPageletDestroy\",], function(a, b, c, d, e, f) {\n var g = b(\"Bootloader\"), h = b(\"CommentPrelude\"), i = b(\"JSBNG__CSS\"), j = b(\"DOM\"), k = b(\"EntstreamCollapsedUFI\"), l = b(\"React\"), m = b(\"ReactMount\"), n = b(\"UFICentralUpdates\"), o = b(\"UFIComments\"), p = b(\"UFIConstants\"), q = b(\"UFIFeedbackTargets\"), r = b(\"UFIUserActions\"), s = b(\"copyProperties\"), t = b(\"cx\"), u = b(\"onEnclosingPageletDestroy\"), v = p.UFIPayloadSourceType;\n function w(x, y, z) {\n this._root = x;\n this._id = z.ftentidentifier;\n this._contextArgs = z;\n this._ufiVisible = z.hasattachedufiexpanded;\n this._updateSubscription = n.subscribe(\"feedback-updated\", function(aa, ba) {\n if (((((ba.payloadSource != v.INITIAL_SERVER)) && ((this._id in ba.updates))))) {\n this.render();\n }\n ;\n ;\n }.bind(this));\n n.handleUpdate(p.UFIPayloadSourceType.COLLAPSED_UFI, y);\n g.loadModules([\"ScrollAwareDOM\",], function(aa) {\n m.scrollMonitor = aa.monitor;\n });\n u(this._root, this.destroy.bind(this));\n };\n;\n s(w.prototype, {\n _onLike: function(JSBNG__event) {\n this._feedbackSubscription = q.getFeedbackTarget(this._id, function(x) {\n r.changeLike(this._id, !x.hasviewerliked, {\n source: this._contextArgs.source,\n target: JSBNG__event.target,\n rootid: j.getID(this._root)\n });\n }.bind(this));\n this._ufi.bounceLike();\n JSBNG__event.preventDefault();\n },\n _onLikeMouseDown: function(JSBNG__event) {\n this._ufi.shrinkLike();\n JSBNG__event.preventDefault();\n },\n _onCommentClick: function(JSBNG__event) {\n if (!this._ufiVisible) {\n this._ufiVisible = true;\n i.addClass(this._root, \"-cx-PRIVATE-fbEntstreamCollapsedUFI__hasattachedufiexpanded\");\n }\n ;\n ;\n h.click(this._root);\n JSBNG__event.preventDefault();\n },\n render: function() {\n this._feedbackSubscription = q.getFeedbackTarget(this._id, function(x) {\n var y = k({\n commentCount: o.getCommentCount(this._id),\n feedback: x,\n hasAttachedUFIExpanded: this._contextArgs.hasattachedufiexpanded,\n numberDelimiter: this._contextArgs.numberdelimiter,\n onCommentClick: this._onCommentClick.bind(this),\n onLike: this._onLike.bind(this),\n onLikeMouseDown: this._onLikeMouseDown.bind(this),\n shareHref: this._contextArgs.sharehref,\n storyHref: this._contextArgs.storyhref\n });\n l.renderComponent(y, this._root);\n this._ufi = ((this._ufi || y));\n }.bind(this));\n },\n destroy: function() {\n if (this._feedbackSubscription) {\n q.unsubscribe(this._feedbackSubscription);\n this._feedbackSubscription = null;\n }\n ;\n ;\n this._updateSubscription.unsubscribe();\n this._updateSubscription = null;\n l.unmountAndReleaseReactRootNode(this._root);\n this._root = null;\n this._id = null;\n this._contextArgs = null;\n this._ufiVisible = null;\n }\n });\n e.exports = w;\n});"); |
| // 1171 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o14,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yu/r/OZ92iwfpUMS.js",o15); |
| // undefined |
| o14 = null; |
| // undefined |
| o15 = null; |
| // 1176 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"function ef13d6b06d5d5881acc3d896ce5229c2eda3f450c(event) {\n (window.Toggler && Toggler.hide());\n};"); |
| // 1177 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"sb7929521b863cb1d6adc61f8970b2818f8cd1d64"); |
| // 1178 |
| geval("function ef13d6b06d5d5881acc3d896ce5229c2eda3f450c(JSBNG__event) {\n ((window.Toggler && Toggler.hide()));\n};\n;"); |
| // 1179 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"function e6047474d5d84fdef3954b8f8f3cd7189cb72d81a(event) {\n return run_with(this, [\"min-notifications-jewel\",], function() {\n MinNotifications.bootstrap(this);\n });\n};"); |
| // 1180 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s341b234373c96266bbeae61786719fd8671e6027"); |
| // 1181 |
| geval("function e6047474d5d84fdef3954b8f8f3cd7189cb72d81a(JSBNG__event) {\n return run_with(this, [\"min-notifications-jewel\",], function() {\n MinNotifications.bootstrap(this);\n });\n};\n;"); |
| // 1182 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"function e632ff9b29729b37089a62e62aa4eebb9164aa7ed(event) {\n return ((window.Event && Event.__inlineSubmit) && Event.__inlineSubmit(this, event));\n};"); |
| // 1183 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"se5136da5382da0322bf91fa47e57658b382d6307"); |
| // 1184 |
| geval("function e632ff9b29729b37089a62e62aa4eebb9164aa7ed(JSBNG__event) {\n return ((((window.JSBNG__Event && JSBNG__Event.__inlineSubmit)) && JSBNG__Event.__inlineSubmit(this, JSBNG__event)));\n};\n;"); |
| // 1185 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"function e5a5de7f8876a74f1d5f942be7ae73d0f9c682902(event) {\n Bootloader.loadModules([\"FacebarTypeaheadNavigation\",\"FacebarTypeaheadDecorateEntities\",\"FacebarTypeaheadDisambiguateResults\",\"FacebarTypeaheadSeeMoreSerp\",\"FacebarTypeaheadSizeAdjuster\",\"FacebarTypeaheadShortcut\",\"FacebarTypeaheadWebSearch\",\"FacebarTypeaheadTrigger\",\"FacebarTypeaheadQuickSelect\",\"FacebarTypeaheadMagGo\",\"FacebarTypeaheadSelectAll\",\"FacebarTypeaheadRecorderBasic\",\"FacebarTypeaheadHashtagResult\",\"FacebarTypeaheadTour\",\"FacebarTypeaheadNarrowDrawer\",\"FacebarTypeaheadCore\",\"FacebarTypeaheadView\",\"FacebarDataSource\",\"FacebarTypeaheadRenderer\",\"FacebarTypeahead\",], emptyFunction);\n};"); |
| // 1186 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"sbc8ec2777fe0f9c38e94f05125680e4a5e641264"); |
| // 1187 |
| geval("function e5a5de7f8876a74f1d5f942be7ae73d0f9c682902(JSBNG__event) {\n Bootloader.loadModules([\"FacebarTypeaheadNavigation\",\"FacebarTypeaheadDecorateEntities\",\"FacebarTypeaheadDisambiguateResults\",\"FacebarTypeaheadSeeMoreSerp\",\"FacebarTypeaheadSizeAdjuster\",\"FacebarTypeaheadShortcut\",\"FacebarTypeaheadWebSearch\",\"FacebarTypeaheadTrigger\",\"FacebarTypeaheadQuickSelect\",\"FacebarTypeaheadMagGo\",\"FacebarTypeaheadSelectAll\",\"FacebarTypeaheadRecorderBasic\",\"FacebarTypeaheadHashtagResult\",\"FacebarTypeaheadTour\",\"FacebarTypeaheadNarrowDrawer\",\"FacebarTypeaheadCore\",\"FacebarTypeaheadView\",\"FacebarDataSource\",\"FacebarTypeaheadRenderer\",\"FacebarTypeahead\",], emptyFunction);\n};\n;"); |
| // 1188 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"function efaae450cea8a7ef59ca232c2699380b98a6cf7d8(event) {\n Bootloader.loadModules([\"FacebarTypeaheadNavigation\",\"FacebarTypeaheadDecorateEntities\",\"FacebarTypeaheadDisambiguateResults\",\"FacebarTypeaheadSeeMoreSerp\",\"FacebarTypeaheadSizeAdjuster\",\"FacebarTypeaheadShortcut\",\"FacebarTypeaheadWebSearch\",\"FacebarTypeaheadTrigger\",\"FacebarTypeaheadQuickSelect\",\"FacebarTypeaheadMagGo\",\"FacebarTypeaheadSelectAll\",\"FacebarTypeaheadRecorderBasic\",\"FacebarTypeaheadHashtagResult\",\"FacebarTypeaheadTour\",\"FacebarTypeaheadNarrowDrawer\",\"FacebarTypeaheadCore\",\"FacebarTypeaheadView\",\"FacebarDataSource\",\"FacebarTypeaheadRenderer\",\"FacebarTypeahead\",], emptyFunction);\n};"); |
| // 1189 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"sdd446cf6a28e44334ee53ef7d5df1f2487fce6f5"); |
| // 1190 |
| geval("function efaae450cea8a7ef59ca232c2699380b98a6cf7d8(JSBNG__event) {\n Bootloader.loadModules([\"FacebarTypeaheadNavigation\",\"FacebarTypeaheadDecorateEntities\",\"FacebarTypeaheadDisambiguateResults\",\"FacebarTypeaheadSeeMoreSerp\",\"FacebarTypeaheadSizeAdjuster\",\"FacebarTypeaheadShortcut\",\"FacebarTypeaheadWebSearch\",\"FacebarTypeaheadTrigger\",\"FacebarTypeaheadQuickSelect\",\"FacebarTypeaheadMagGo\",\"FacebarTypeaheadSelectAll\",\"FacebarTypeaheadRecorderBasic\",\"FacebarTypeaheadHashtagResult\",\"FacebarTypeaheadTour\",\"FacebarTypeaheadNarrowDrawer\",\"FacebarTypeaheadCore\",\"FacebarTypeaheadView\",\"FacebarDataSource\",\"FacebarTypeaheadRenderer\",\"FacebarTypeahead\",], emptyFunction);\n};\n;"); |
| // 1191 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"function si_cj(m) {\n setTimeout(function() {\n new Image().src = ((\"http://jsbngssl.error.facebook.com/common/scribe_endpoint.php?c=si_clickjacking&t=1008\" + \"&m=\") + m);\n }, 5000);\n};\nif (((top != self) && !false)) {\n try {\n if ((parent != top)) {\n throw 1;\n }\n ;\n var si_cj_d = [\"apps.facebook.com\",\"/pages/\",\"apps.beta.facebook.com\",];\n var href = top.location.href.toLowerCase();\n for (var i = 0; (i < si_cj_d.length); i++) {\n if ((href.indexOf(si_cj_d[i]) >= 0)) {\n throw 1;\n }\n ;\n };\n si_cj(\"3 \");\n } catch (e) {\n si_cj(\"1 \\u0009\");\n window.document.write(\"\\u003Cstyle\\u003Ebody * {display:none !important;}\\u003C/style\\u003E\\u003Ca href=\\\"#\\\" onclick=\\\"top.location.href=window.location.href\\\" style=\\\"display:block !important;padding:10px\\\"\\u003E\\u003Ci class=\\\"img sp_4p6kmz sx_aac1e3\\\" style=\\\"display:block !important\\\"\\u003E\\u003C/i\\u003EGo to Facebook.com\\u003C/a\\u003E\");\n };\n}\n;"); |
| // 1192 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s8d73e631a9d738203636e3b3a0ccc2fd29755145"); |
| // 1193 |
| geval("function si_cj(m) {\n JSBNG__setTimeout(function() {\n new JSBNG__Image().src = ((((\"http://jsbngssl.error.facebook.com/common/scribe_endpoint.php?c=si_clickjacking&t=1008\" + \"&m=\")) + m));\n }, 5000);\n};\n;\nif (((((JSBNG__top != JSBNG__self)) && !false))) {\n try {\n if (((parent != JSBNG__top))) {\n throw 1;\n }\n ;\n ;\n var si_cj_d = [\"apps.facebook.com\",\"/pages/\",\"apps.beta.facebook.com\",];\n var href = JSBNG__top.JSBNG__location.href.toLowerCase();\n for (var i = 0; ((i < si_cj_d.length)); i++) {\n if (((href.indexOf(si_cj_d[i]) >= 0))) {\n throw 1;\n }\n ;\n ;\n };\n ;\n si_cj(\"3 \");\n } catch (e) {\n si_cj(\"1 \\u0009\");\n window.JSBNG__document.write(\"\\u003Cstyle\\u003Ebody * {display:none !important;}\\u003C/style\\u003E\\u003Ca href=\\\"#\\\" onclick=\\\"top.JSBNG__location.href=window.JSBNG__location.href\\\" style=\\\"display:block !important;padding:10px\\\"\\u003E\\u003Ci class=\\\"img sp_4p6kmz sx_aac1e3\\\" style=\\\"display:block !important\\\"\\u003E\\u003C/i\\u003EGo to Facebook.com\\u003C/a\\u003E\");\n };\n;\n}\n;\n;"); |
| // 1194 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"Bootloader.setResourceMap({\n \"UmFO+\": {\n type: \"css\",\n permanent: 1,\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yP/r/9mw4nQDxDC9.css\"\n },\n \"X/Fq6\": {\n type: \"css\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yu/r/mziGa9Rv8rV.css\"\n },\n j1x0z: {\n type: \"css\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yi/r/4oH7eQzJjdc.css\"\n },\n tKv6W: {\n type: \"css\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/ys/r/1DOzCljCl3K.css\"\n },\n ynBUm: {\n type: \"css\",\n permanent: 1,\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yD/r/OWwnO_yMqhK.css\"\n },\n tAd6o: {\n type: \"css\",\n nonblocking: 1,\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y7/r/bzWQh7BY86J.css\"\n },\n za92D: {\n type: \"css\",\n permanent: 1,\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yL/r/OO7ppcHlCNm.css\"\n },\n veUjj: {\n type: \"css\",\n permanent: 1,\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yM/r/IqonxdwHUtT.css\"\n },\n VDymv: {\n type: \"css\",\n permanent: 1,\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yD/r/w-0_vzOt03Y.css\"\n },\n c6lUE: {\n type: \"css\",\n permanent: 1,\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y1/r/i2fjJiK4liE.css\"\n }\n});\nBootloader.setResourceMap({\n C3MER: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yP/r/hnJRUTuHHeP.js\"\n },\n NMNM4: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yl/r/-vSG_5pzFFr.js\"\n },\n AVmr9: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yR/r/n7J6-ECl4cu.js\"\n },\n OH3xD: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yJ/r/MAGRPTCpjAg.js\"\n },\n TXKLp: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yC/r/601-E9kc9jy.js\"\n },\n MqSmz: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yH/r/ghlEJgSKAee.js\"\n },\n AtxWD: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yU/r/RXieOTwv9ZN.js\"\n },\n js0se: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y0/r/BIPIZ5kbghZ.js\"\n },\n \"+P3v8\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yI/r/KWNdF_J3cUf.js\"\n },\n \"4/uwC\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y8/r/9g0s6xsMYpS.js\"\n },\n C6rJk: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yk/r/mvmvxDKTeL4.js\"\n },\n \"/rNYe\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y7/r/lbu10yj4WR0.js\"\n },\n bwsMw: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y_/r/hwOyT9fmfZV.js\"\n },\n \"I+n09\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yT/r/yNh6K2TPYo5.js\"\n },\n mBpeN: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yx/r/TabxUMg74t0.js\"\n },\n XH2Cu: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yd/r/clqWNoT9Gz_.js\"\n },\n iIySo: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yM/r/1K9gOk4Dh47.js\"\n },\n WLpRY: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y_/r/gen4xnT_5g3.js\"\n },\n hofTc: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yP/r/EKA5EzGo0o5.js\"\n },\n Rs18G: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/ys/r/2XMmSn6wuDr.js\"\n },\n \"/MWWQ\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yd/r/cV-1QIoVTI-.js\"\n },\n cNca2: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yv/r/OHUUx9tXXmr.js\"\n },\n BjpNB: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yw/r/npgrFgy_XMu.js\"\n },\n oE4Do: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yq/r/MDwOqV08JHh.js\"\n },\n tIw4R: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yq/r/ztXltT1LKGv.js\"\n },\n zBhY6: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yu/r/jXjHtkFmkD1.js\"\n },\n \"wxq+C\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y7/r/HXOT2PHhPzY.js\"\n },\n an9R5: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yW/r/MmluDUavnV2.js\"\n },\n G3fzU: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y6/r/QRKzqNeXwzk.js\"\n },\n \"OSd/n\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yi/r/gZ1fwdeYASl.js\"\n },\n f7Tpb: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y5/r/eV_B8SPw3se.js\"\n },\n \"4vv8/\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y4/r/VctjjLR0rnO.js\"\n },\n \"m+DMw\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yf/r/OZXLGeTATPh.js\"\n },\n e0RyX: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/ya/r/pKyqR8GP59i.js\"\n },\n H42Jh: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yh/r/Rm-mi-BO--u.js\"\n },\n gyG67: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yV/r/ul7Pqk1hCQb.js\"\n },\n \"97Zhe\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yJ/r/wz04JJfiB2n.js\"\n },\n zyFOp: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y-/r/sHx45baQNJv.js\"\n },\n WD1Wm: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yN/r/Mt8gx_sQz92.js\"\n },\n ociRJ: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yu/r/OZ92iwfpUMS.js\"\n },\n nxD7O: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y3/r/8VWsK8lNjX5.js\"\n }\n});\nBootloader.enableBootload({\n PhotoTagger: {\n resources: [\"OH3xD\",\"f7Tpb\",\"UmFO+\",\"AVmr9\",\"nxD7O\",\"iIySo\",\"/MWWQ\",\"gyG67\",],\n \"module\": true\n },\n AsyncDOM: {\n resources: [\"OH3xD\",\"WLpRY\",],\n \"module\": true\n },\n HighContrastMode: {\n resources: [\"OH3xD\",\"NMNM4\",],\n \"module\": true\n },\n TagTokenizer: {\n resources: [\"OH3xD\",\"veUjj\",\"4/uwC\",\"iIySo\",\"UmFO+\",\"/MWWQ\",],\n \"module\": true\n },\n VideoRotate: {\n resources: [\"OH3xD\",\"f7Tpb\",\"UmFO+\",\"AVmr9\",\"XH2Cu\",\"H42Jh\",],\n \"module\": true\n },\n ErrorSignal: {\n resources: [\"OH3xD\",\"cNca2\",],\n \"module\": true\n },\n PhotoSnowlift: {\n resources: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"UmFO+\",\"XH2Cu\",\"veUjj\",\"gyG67\",\"/MWWQ\",\"e0RyX\",],\n \"module\": true\n },\n FacebarTypeaheadHashtagResult: {\n resources: [\"+P3v8\",\"OSd/n\",\"OH3xD\",\"G3fzU\",],\n \"module\": true\n },\n Event: {\n resources: [\"OH3xD\",],\n \"module\": true\n },\n DOM: {\n resources: [\"OH3xD\",],\n \"module\": true\n },\n FacebarTypeaheadNavigation: {\n resources: [\"OH3xD\",\"G3fzU\",],\n \"module\": true\n },\n Dialog: {\n resources: [\"OH3xD\",\"f7Tpb\",\"UmFO+\",\"AVmr9\",],\n \"module\": true\n },\n PhotosButtonTooltips: {\n resources: [\"OH3xD\",\"/MWWQ\",\"f7Tpb\",\"UmFO+\",\"AVmr9\",\"veUjj\",\"Rs18G\",],\n \"module\": true\n },\n FacebarTypeaheadRenderer: {\n resources: [\"OH3xD\",\"OSd/n\",\"G3fzU\",\"XH2Cu\",\"veUjj\",\"/MWWQ\",\"BjpNB\",\"c6lUE\",\"+P3v8\",],\n \"module\": true\n },\n SnowliftPicCropper: {\n resources: [\"OH3xD\",\"f7Tpb\",\"UmFO+\",\"AVmr9\",\"gyG67\",\"m+DMw\",\"/MWWQ\",\"za92D\",\"wxq+C\",],\n \"module\": true\n },\n Live: {\n resources: [\"OH3xD\",\"WLpRY\",\"XH2Cu\",],\n \"module\": true\n },\n FacebarTypeaheadCore: {\n resources: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"I+n09\",\"UmFO+\",\"c6lUE\",\"G3fzU\",\"mBpeN\",\"BjpNB\",],\n \"module\": true\n },\n FacebarTypeaheadDecorateEntities: {\n resources: [\"AVmr9\",\"G3fzU\",],\n \"module\": true\n },\n FacebarTypeaheadSeeMoreSerp: {\n resources: [\"OH3xD\",\"G3fzU\",\"XH2Cu\",\"c6lUE\",],\n \"module\": true\n },\n Tooltip: {\n resources: [\"OH3xD\",\"/MWWQ\",\"f7Tpb\",\"UmFO+\",\"AVmr9\",\"veUjj\",],\n \"module\": true\n },\n \"legacy:detect-broken-proxy-cache\": {\n resources: [\"OH3xD\",\"NMNM4\",]\n },\n PhotoInlineEditor: {\n resources: [\"OH3xD\",\"gyG67\",\"f7Tpb\",\"UmFO+\",\"AVmr9\",\"/MWWQ\",\"iIySo\",\"AtxWD\",],\n \"module\": true\n },\n LiveTimer: {\n resources: [\"OH3xD\",\"XH2Cu\",],\n \"module\": true\n },\n FacebarTypeaheadShortcut: {\n resources: [\"OH3xD\",\"f7Tpb\",\"G3fzU\",],\n \"module\": true\n },\n Form: {\n resources: [\"OH3xD\",\"f7Tpb\",],\n \"module\": true\n },\n AdsHidePoll: {\n resources: [\"OH3xD\",\"f7Tpb\",\"an9R5\",],\n \"module\": true\n },\n FacebarTypeaheadWebSearch: {\n resources: [\"OH3xD\",\"G3fzU\",],\n \"module\": true\n },\n Toggler: {\n resources: [\"OH3xD\",\"f7Tpb\",\"UmFO+\",\"AVmr9\",\"/MWWQ\",],\n \"module\": true\n },\n PhotoTagApproval: {\n resources: [\"OH3xD\",\"gyG67\",\"iIySo\",],\n \"module\": true\n },\n FacebarTypeaheadTour: {\n resources: [\"OH3xD\",\"BjpNB\",\"G3fzU\",\"f7Tpb\",\"XH2Cu\",\"UmFO+\",\"AVmr9\",\"js0se\",\"c6lUE\",\"veUjj\",\"+P3v8\",\"OSd/n\",\"/MWWQ\",],\n \"module\": true\n },\n DesktopNotifications: {\n resources: [\"C3MER\",],\n \"module\": true\n },\n AsyncResponse: {\n resources: [\"OH3xD\",],\n \"module\": true\n },\n FbdDialogProvider: {\n resources: [\"/rNYe\",\"OH3xD\",\"bwsMw\",],\n \"module\": true\n },\n trackReferrer: {\n resources: [],\n \"module\": true\n },\n FacebarTypeaheadDisambiguateResults: {\n resources: [\"OH3xD\",\"BjpNB\",\"f7Tpb\",\"UmFO+\",\"AVmr9\",\"OSd/n\",\"G3fzU\",\"XH2Cu\",\"veUjj\",\"/MWWQ\",\"c6lUE\",],\n \"module\": true\n },\n AsyncDialog: {\n resources: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"UmFO+\",\"XH2Cu\",],\n \"module\": true\n },\n FacebarTypeaheadMagGo: {\n resources: [\"OH3xD\",\"/MWWQ\",\"G3fzU\",],\n \"module\": true\n },\n FacebarTypeaheadSizeAdjuster: {\n resources: [\"BjpNB\",\"OH3xD\",\"f7Tpb\",\"G3fzU\",],\n \"module\": true\n },\n ChatTabModel: {\n resources: [\"OH3xD\",\"OSd/n\",\"XH2Cu\",\"AVmr9\",\"TXKLp\",\"zBhY6\",\"WD1Wm\",\"/MWWQ\",\"f7Tpb\",],\n \"module\": true\n },\n SpotlightShareViewer: {\n resources: [\"OH3xD\",\"AVmr9\",\"f7Tpb\",\"X/Fq6\",\"zyFOp\",],\n \"module\": true\n },\n Input: {\n resources: [\"OH3xD\",],\n \"module\": true\n },\n ConfirmationDialog: {\n resources: [\"OH3xD\",\"f7Tpb\",\"oE4Do\",],\n \"module\": true\n },\n IframeShim: {\n resources: [\"OH3xD\",\"f7Tpb\",\"/MWWQ\",\"MqSmz\",],\n \"module\": true\n },\n FacebarTypeaheadSelectAll: {\n resources: [\"f7Tpb\",\"G3fzU\",],\n \"module\": true\n },\n FacebarTypeaheadNarrowDrawer: {\n resources: [\"c6lUE\",\"G3fzU\",],\n \"module\": true\n },\n FacebarDataSource: {\n resources: [\"OH3xD\",\"G3fzU\",\"+P3v8\",\"XH2Cu\",\"OSd/n\",\"f7Tpb\",\"AVmr9\",],\n \"module\": true\n },\n FacebarTypeaheadRecorderBasic: {\n resources: [\"OH3xD\",\"js0se\",\"XH2Cu\",\"f7Tpb\",\"+P3v8\",\"G3fzU\",],\n \"module\": true\n },\n DimensionTracking: {\n resources: [\"OH3xD\",\"NMNM4\",],\n \"module\": true\n },\n PrivacyLiteNUXController: {\n resources: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"+P3v8\",\"c6lUE\",\"OSd/n\",\"UmFO+\",\"XH2Cu\",\"/MWWQ\",\"veUjj\",\"97Zhe\",],\n \"module\": true\n },\n \"legacy:min-notifications-jewel\": {\n resources: [\"OH3xD\",\"AVmr9\",\"tIw4R\",\"hofTc\",]\n },\n AsyncRequest: {\n resources: [\"OH3xD\",],\n \"module\": true\n },\n React: {\n resources: [\"XH2Cu\",\"OH3xD\",],\n \"module\": true\n },\n PhotoTags: {\n resources: [\"OH3xD\",\"gyG67\",\"UmFO+\",\"iIySo\",],\n \"module\": true\n },\n \"fb-photos-snowlift-fullscreen-css\": {\n resources: [\"VDymv\",]\n },\n PrivacyLiteFlyout: {\n resources: [\"OH3xD\",\"f7Tpb\",\"XH2Cu\",\"UmFO+\",\"AVmr9\",\"/MWWQ\",\"veUjj\",\"c6lUE\",\"+P3v8\",],\n \"module\": true\n },\n FacebarTypeaheadQuickSelect: {\n resources: [\"OH3xD\",\"G3fzU\",],\n \"module\": true\n },\n FacebarTypeaheadTrigger: {\n resources: [\"G3fzU\",],\n \"module\": true\n },\n FacebarTypeahead: {\n resources: [\"f7Tpb\",\"OH3xD\",\"veUjj\",\"/MWWQ\",\"G3fzU\",],\n \"module\": true\n },\n FacebarTypeaheadView: {\n resources: [\"OH3xD\",\"f7Tpb\",\"/MWWQ\",\"UmFO+\",\"AVmr9\",\"XH2Cu\",\"veUjj\",\"c6lUE\",\"G3fzU\",],\n \"module\": true\n }\n});"); |
| // 1195 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s1bc33aa1abf983846cc7802d52c3640f2c7d2888"); |
| // 1196 |
| geval("Bootloader.setResourceMap({\n \"UmFO+\": {\n type: \"css\",\n permanent: 1,\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yP/r/9mw4nQDxDC9.css\"\n },\n \"X/Fq6\": {\n type: \"css\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yu/r/mziGa9Rv8rV.css\"\n },\n j1x0z: {\n type: \"css\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yi/r/4oH7eQzJjdc.css\"\n },\n tKv6W: {\n type: \"css\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/ys/r/1DOzCljCl3K.css\"\n },\n ynBUm: {\n type: \"css\",\n permanent: 1,\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yD/r/OWwnO_yMqhK.css\"\n },\n tAd6o: {\n type: \"css\",\n nonblocking: 1,\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y7/r/bzWQh7BY86J.css\"\n },\n za92D: {\n type: \"css\",\n permanent: 1,\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yL/r/OO7ppcHlCNm.css\"\n },\n veUjj: {\n type: \"css\",\n permanent: 1,\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yM/r/IqonxdwHUtT.css\"\n },\n VDymv: {\n type: \"css\",\n permanent: 1,\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yD/r/w-0_vzOt03Y.css\"\n },\n c6lUE: {\n type: \"css\",\n permanent: 1,\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y1/r/i2fjJiK4liE.css\"\n }\n});\nBootloader.setResourceMap({\n C3MER: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yP/r/hnJRUTuHHeP.js\"\n },\n NMNM4: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yl/r/-vSG_5pzFFr.js\"\n },\n AVmr9: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yR/r/n7J6-ECl4cu.js\"\n },\n OH3xD: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yJ/r/MAGRPTCpjAg.js\"\n },\n TXKLp: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yC/r/601-E9kc9jy.js\"\n },\n MqSmz: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yH/r/ghlEJgSKAee.js\"\n },\n AtxWD: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yU/r/RXieOTwv9ZN.js\"\n },\n js0se: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y0/r/BIPIZ5kbghZ.js\"\n },\n \"+P3v8\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yI/r/KWNdF_J3cUf.js\"\n },\n \"4/uwC\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y8/r/9g0s6xsMYpS.js\"\n },\n C6rJk: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yk/r/mvmvxDKTeL4.js\"\n },\n \"/rNYe\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y7/r/lbu10yj4WR0.js\"\n },\n bwsMw: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y_/r/hwOyT9fmfZV.js\"\n },\n \"I+n09\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yT/r/yNh6K2TPYo5.js\"\n },\n mBpeN: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yx/r/TabxUMg74t0.js\"\n },\n XH2Cu: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yd/r/clqWNoT9Gz_.js\"\n },\n iIySo: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yM/r/1K9gOk4Dh47.js\"\n },\n WLpRY: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y_/r/gen4xnT_5g3.js\"\n },\n hofTc: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yP/r/EKA5EzGo0o5.js\"\n },\n Rs18G: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/ys/r/2XMmSn6wuDr.js\"\n },\n \"/MWWQ\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yd/r/cV-1QIoVTI-.js\"\n },\n cNca2: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yv/r/OHUUx9tXXmr.js\"\n },\n BjpNB: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yw/r/npgrFgy_XMu.js\"\n },\n oE4Do: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yq/r/MDwOqV08JHh.js\"\n },\n tIw4R: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yq/r/ztXltT1LKGv.js\"\n },\n zBhY6: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yu/r/jXjHtkFmkD1.js\"\n },\n \"wxq+C\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y7/r/HXOT2PHhPzY.js\"\n },\n an9R5: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yW/r/MmluDUavnV2.js\"\n },\n G3fzU: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y6/r/QRKzqNeXwzk.js\"\n },\n \"OSd/n\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yi/r/gZ1fwdeYASl.js\"\n },\n f7Tpb: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y5/r/eV_B8SPw3se.js\"\n },\n \"4vv8/\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y4/r/VctjjLR0rnO.js\"\n },\n \"m+DMw\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yf/r/OZXLGeTATPh.js\"\n },\n e0RyX: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/ya/r/pKyqR8GP59i.js\"\n },\n H42Jh: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yh/r/Rm-mi-BO--u.js\"\n },\n gyG67: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yV/r/ul7Pqk1hCQb.js\"\n },\n \"97Zhe\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yJ/r/wz04JJfiB2n.js\"\n },\n zyFOp: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y-/r/sHx45baQNJv.js\"\n },\n WD1Wm: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yN/r/Mt8gx_sQz92.js\"\n },\n ociRJ: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yu/r/OZ92iwfpUMS.js\"\n },\n nxD7O: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y3/r/8VWsK8lNjX5.js\"\n }\n});\nBootloader.enableBootload({\n PhotoTagger: {\n resources: [\"OH3xD\",\"f7Tpb\",\"UmFO+\",\"AVmr9\",\"nxD7O\",\"iIySo\",\"/MWWQ\",\"gyG67\",],\n \"module\": true\n },\n AsyncDOM: {\n resources: [\"OH3xD\",\"WLpRY\",],\n \"module\": true\n },\n HighContrastMode: {\n resources: [\"OH3xD\",\"NMNM4\",],\n \"module\": true\n },\n TagTokenizer: {\n resources: [\"OH3xD\",\"veUjj\",\"4/uwC\",\"iIySo\",\"UmFO+\",\"/MWWQ\",],\n \"module\": true\n },\n VideoRotate: {\n resources: [\"OH3xD\",\"f7Tpb\",\"UmFO+\",\"AVmr9\",\"XH2Cu\",\"H42Jh\",],\n \"module\": true\n },\n ErrorSignal: {\n resources: [\"OH3xD\",\"cNca2\",],\n \"module\": true\n },\n PhotoSnowlift: {\n resources: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"UmFO+\",\"XH2Cu\",\"veUjj\",\"gyG67\",\"/MWWQ\",\"e0RyX\",],\n \"module\": true\n },\n FacebarTypeaheadHashtagResult: {\n resources: [\"+P3v8\",\"OSd/n\",\"OH3xD\",\"G3fzU\",],\n \"module\": true\n },\n JSBNG__Event: {\n resources: [\"OH3xD\",],\n \"module\": true\n },\n DOM: {\n resources: [\"OH3xD\",],\n \"module\": true\n },\n FacebarTypeaheadNavigation: {\n resources: [\"OH3xD\",\"G3fzU\",],\n \"module\": true\n },\n Dialog: {\n resources: [\"OH3xD\",\"f7Tpb\",\"UmFO+\",\"AVmr9\",],\n \"module\": true\n },\n PhotosButtonTooltips: {\n resources: [\"OH3xD\",\"/MWWQ\",\"f7Tpb\",\"UmFO+\",\"AVmr9\",\"veUjj\",\"Rs18G\",],\n \"module\": true\n },\n FacebarTypeaheadRenderer: {\n resources: [\"OH3xD\",\"OSd/n\",\"G3fzU\",\"XH2Cu\",\"veUjj\",\"/MWWQ\",\"BjpNB\",\"c6lUE\",\"+P3v8\",],\n \"module\": true\n },\n SnowliftPicCropper: {\n resources: [\"OH3xD\",\"f7Tpb\",\"UmFO+\",\"AVmr9\",\"gyG67\",\"m+DMw\",\"/MWWQ\",\"za92D\",\"wxq+C\",],\n \"module\": true\n },\n Live: {\n resources: [\"OH3xD\",\"WLpRY\",\"XH2Cu\",],\n \"module\": true\n },\n FacebarTypeaheadCore: {\n resources: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"I+n09\",\"UmFO+\",\"c6lUE\",\"G3fzU\",\"mBpeN\",\"BjpNB\",],\n \"module\": true\n },\n FacebarTypeaheadDecorateEntities: {\n resources: [\"AVmr9\",\"G3fzU\",],\n \"module\": true\n },\n FacebarTypeaheadSeeMoreSerp: {\n resources: [\"OH3xD\",\"G3fzU\",\"XH2Cu\",\"c6lUE\",],\n \"module\": true\n },\n Tooltip: {\n resources: [\"OH3xD\",\"/MWWQ\",\"f7Tpb\",\"UmFO+\",\"AVmr9\",\"veUjj\",],\n \"module\": true\n },\n \"legacy:detect-broken-proxy-cache\": {\n resources: [\"OH3xD\",\"NMNM4\",]\n },\n PhotoInlineEditor: {\n resources: [\"OH3xD\",\"gyG67\",\"f7Tpb\",\"UmFO+\",\"AVmr9\",\"/MWWQ\",\"iIySo\",\"AtxWD\",],\n \"module\": true\n },\n LiveTimer: {\n resources: [\"OH3xD\",\"XH2Cu\",],\n \"module\": true\n },\n FacebarTypeaheadShortcut: {\n resources: [\"OH3xD\",\"f7Tpb\",\"G3fzU\",],\n \"module\": true\n },\n Form: {\n resources: [\"OH3xD\",\"f7Tpb\",],\n \"module\": true\n },\n AdsHidePoll: {\n resources: [\"OH3xD\",\"f7Tpb\",\"an9R5\",],\n \"module\": true\n },\n FacebarTypeaheadWebSearch: {\n resources: [\"OH3xD\",\"G3fzU\",],\n \"module\": true\n },\n Toggler: {\n resources: [\"OH3xD\",\"f7Tpb\",\"UmFO+\",\"AVmr9\",\"/MWWQ\",],\n \"module\": true\n },\n PhotoTagApproval: {\n resources: [\"OH3xD\",\"gyG67\",\"iIySo\",],\n \"module\": true\n },\n FacebarTypeaheadTour: {\n resources: [\"OH3xD\",\"BjpNB\",\"G3fzU\",\"f7Tpb\",\"XH2Cu\",\"UmFO+\",\"AVmr9\",\"js0se\",\"c6lUE\",\"veUjj\",\"+P3v8\",\"OSd/n\",\"/MWWQ\",],\n \"module\": true\n },\n DesktopNotifications: {\n resources: [\"C3MER\",],\n \"module\": true\n },\n AsyncResponse: {\n resources: [\"OH3xD\",],\n \"module\": true\n },\n FbdDialogProvider: {\n resources: [\"/rNYe\",\"OH3xD\",\"bwsMw\",],\n \"module\": true\n },\n trackReferrer: {\n resources: [],\n \"module\": true\n },\n FacebarTypeaheadDisambiguateResults: {\n resources: [\"OH3xD\",\"BjpNB\",\"f7Tpb\",\"UmFO+\",\"AVmr9\",\"OSd/n\",\"G3fzU\",\"XH2Cu\",\"veUjj\",\"/MWWQ\",\"c6lUE\",],\n \"module\": true\n },\n AsyncDialog: {\n resources: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"UmFO+\",\"XH2Cu\",],\n \"module\": true\n },\n FacebarTypeaheadMagGo: {\n resources: [\"OH3xD\",\"/MWWQ\",\"G3fzU\",],\n \"module\": true\n },\n FacebarTypeaheadSizeAdjuster: {\n resources: [\"BjpNB\",\"OH3xD\",\"f7Tpb\",\"G3fzU\",],\n \"module\": true\n },\n ChatTabModel: {\n resources: [\"OH3xD\",\"OSd/n\",\"XH2Cu\",\"AVmr9\",\"TXKLp\",\"zBhY6\",\"WD1Wm\",\"/MWWQ\",\"f7Tpb\",],\n \"module\": true\n },\n SpotlightShareViewer: {\n resources: [\"OH3xD\",\"AVmr9\",\"f7Tpb\",\"X/Fq6\",\"zyFOp\",],\n \"module\": true\n },\n Input: {\n resources: [\"OH3xD\",],\n \"module\": true\n },\n ConfirmationDialog: {\n resources: [\"OH3xD\",\"f7Tpb\",\"oE4Do\",],\n \"module\": true\n },\n IframeShim: {\n resources: [\"OH3xD\",\"f7Tpb\",\"/MWWQ\",\"MqSmz\",],\n \"module\": true\n },\n FacebarTypeaheadSelectAll: {\n resources: [\"f7Tpb\",\"G3fzU\",],\n \"module\": true\n },\n FacebarTypeaheadNarrowDrawer: {\n resources: [\"c6lUE\",\"G3fzU\",],\n \"module\": true\n },\n FacebarDataSource: {\n resources: [\"OH3xD\",\"G3fzU\",\"+P3v8\",\"XH2Cu\",\"OSd/n\",\"f7Tpb\",\"AVmr9\",],\n \"module\": true\n },\n FacebarTypeaheadRecorderBasic: {\n resources: [\"OH3xD\",\"js0se\",\"XH2Cu\",\"f7Tpb\",\"+P3v8\",\"G3fzU\",],\n \"module\": true\n },\n DimensionTracking: {\n resources: [\"OH3xD\",\"NMNM4\",],\n \"module\": true\n },\n PrivacyLiteNUXController: {\n resources: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"+P3v8\",\"c6lUE\",\"OSd/n\",\"UmFO+\",\"XH2Cu\",\"/MWWQ\",\"veUjj\",\"97Zhe\",],\n \"module\": true\n },\n \"legacy:min-notifications-jewel\": {\n resources: [\"OH3xD\",\"AVmr9\",\"tIw4R\",\"hofTc\",]\n },\n AsyncRequest: {\n resources: [\"OH3xD\",],\n \"module\": true\n },\n React: {\n resources: [\"XH2Cu\",\"OH3xD\",],\n \"module\": true\n },\n PhotoTags: {\n resources: [\"OH3xD\",\"gyG67\",\"UmFO+\",\"iIySo\",],\n \"module\": true\n },\n \"fb-photos-snowlift-fullscreen-css\": {\n resources: [\"VDymv\",]\n },\n PrivacyLiteFlyout: {\n resources: [\"OH3xD\",\"f7Tpb\",\"XH2Cu\",\"UmFO+\",\"AVmr9\",\"/MWWQ\",\"veUjj\",\"c6lUE\",\"+P3v8\",],\n \"module\": true\n },\n FacebarTypeaheadQuickSelect: {\n resources: [\"OH3xD\",\"G3fzU\",],\n \"module\": true\n },\n FacebarTypeaheadTrigger: {\n resources: [\"G3fzU\",],\n \"module\": true\n },\n FacebarTypeahead: {\n resources: [\"f7Tpb\",\"OH3xD\",\"veUjj\",\"/MWWQ\",\"G3fzU\",],\n \"module\": true\n },\n FacebarTypeaheadView: {\n resources: [\"OH3xD\",\"f7Tpb\",\"/MWWQ\",\"UmFO+\",\"AVmr9\",\"XH2Cu\",\"veUjj\",\"c6lUE\",\"G3fzU\",],\n \"module\": true\n }\n});"); |
| // 1197 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"require(\"InitialJSLoader\").loadOnDOMContentReady([\"OH3xD\",\"XH2Cu\",\"ociRJ\",\"AVmr9\",\"I+n09\",\"4vv8/\",\"zBhY6\",\"f7Tpb\",\"OSd/n\",\"+P3v8\",\"js0se\",\"BjpNB\",\"/MWWQ\",\"G3fzU\",\"mBpeN\",\"C6rJk\",\"97Zhe\",\"tAd6o\",]);"); |
| // 1198 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s83f5312660290032aa582123dcc37aca65055db7"); |
| // 1199 |
| geval("require(\"InitialJSLoader\").loadOnDOMContentReady([\"OH3xD\",\"XH2Cu\",\"ociRJ\",\"AVmr9\",\"I+n09\",\"4vv8/\",\"zBhY6\",\"f7Tpb\",\"OSd/n\",\"+P3v8\",\"js0se\",\"BjpNB\",\"/MWWQ\",\"G3fzU\",\"mBpeN\",\"C6rJk\",\"97Zhe\",\"tAd6o\",]);"); |
| // 1201 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"Bootloader.configurePage([\"veUjj\",\"UmFO+\",\"c6lUE\",\"za92D\",\"j1x0z\",\"tKv6W\",\"ynBUm\",]);\nBootloader.done([\"jDr+c\",]);\nJSCC.init(({\n j1z1iqLKJPdtUqBToi0: function() {\n return new RequestsJewel();\n }\n}));\nrequire(\"InitialJSLoader\").handleServerJS({\n require: [[\"Intl\",\"setPhonologicalRules\",[],[{\n meta: {\n \"/_B/\": \"([.,!?\\\\s]|^)\",\n \"/_E/\": \"([.,!?\\\\s]|$)\"\n },\n patterns: {\n \"/\\u0001(.*)('|')s\\u0001(?:'|')s(.*)/\": \"\\u0001$1$2s\\u0001$3\",\n \"/_\\u0001([^\\u0001]*)\\u0001/e\": \"mb_strtolower(\\\"\\u0001$1\\u0001\\\")\",\n \"/\\\\^\\\\x01([^\\\\x01])(?=[^\\\\x01]*\\\\x01)/e\": \"mb_strtoupper(\\\"\\u0001$1\\\")\",\n \"/_\\u0001([^\\u0001]*)\\u0001/\": \"javascript\"\n }\n },],],[\"PostLoadJS\",\"loadAndRequire\",[],[\"DimensionTracking\",],],[\"PostLoadJS\",\"loadAndCall\",[],[\"HighContrastMode\",\"init\",[{\n currentState: true,\n spacerImage: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y4/r/-PAXP-deijE.gif\"\n },],],],[\"ScriptPath\",\"set\",[],[\"/profile_book.php\",\"98f03730\",],],[\"ClickRefLogger\",],[\"userAction\",\"setUATypeConfig\",[],[{\n \"ua:n\": false,\n \"ua:i\": false,\n \"ua:d\": false,\n \"ua:e\": false\n },],],[\"ScriptPathState\",\"setUserURISampleRate\",[],[1066,],],[\"userAction\",\"setCustomSampleConfig\",[],[{\n \"ua:n\": {\n test: {\n ua_id: {\n test: true\n }\n }\n },\n \"ua:i\": {\n snowlift: {\n action: {\n open: true,\n close: true\n }\n },\n canvas: {\n action: {\n mouseover: true,\n mouseout: true\n }\n }\n }\n },],],[\"UserActionHistory\",],[\"ScriptPath\",\"startLogging\",[],[],],[\"TimeSpentBitArrayLogger\",\"init\",[],[],],[\"PixelRatio\",\"startDetecting\",[],[1,],],[\"LiveTimer\",\"restart\",[],[1374851147,],],[\"MessagingReliabilityLogger\",],[\"FacebarNavigation\",\"setPageQuery\",[],[{\n structure: [{\n text: \"Gregor Richards\",\n type: \"ent:user\",\n uid: 1055580469\n },],\n semantic: null\n },],],[\"SidebarPrelude\",\"addSidebarMode\",[],[1225,],],[\"Quickling\",],[\"TinyViewport\",],[\"WebStorageMonster\",\"schedule\",[],[false,],],[\"AsyncRequestNectarLogging\",],[\"ViewasChromeBar\",\"initChromeBar\",[\"m_0_0\",],[{\n __m: \"m_0_0\"\n },],],[\"PagesVoiceBar\",\"initVoiceBar\",[],[],],[\"LitestandChromeHomeCount\",\"init\",[],[0,],],[\"AccessibleMenu\",\"init\",[\"m_0_1\",],[{\n __m: \"m_0_1\"\n },],],[\"MercuryJewel\",],[\"TitanLeftNav\",\"initialize\",[],[],],[\"m_0_2\",],[\"m_0_4\",],[\"ChatOpenTab\",\"listenOpenEmptyTab\",[\"m_0_6\",],[{\n __m: \"m_0_6\"\n },],],[\"Scrollable\",],[\"m_0_8\",],[\"BrowseNUXBootstrap\",\"registerTypeaheadUnit\",[\"m_0_9\",],[{\n __m: \"m_0_9\"\n },],],[\"FacebarNavigation\",\"registerInput\",[\"m_0_a\",],[{\n __m: \"m_0_a\"\n },],],[\"BrowseNUXBootstrap\",\"registerFacebar\",[\"m_0_b\",\"m_0_c\",],[{\n input: {\n __m: \"m_0_b\"\n },\n typeahead: {\n __m: \"m_0_c\"\n },\n FacebarTypeaheadSponsoredResults: null\n },],],[\"WebStorageMonster\",\"registerLogoutForm\",[\"m_0_d\",],[{\n __m: \"m_0_d\"\n },[\"^Banzai$\",\"^\\\\:userchooser\\\\:osessusers$\",\"^[0-9]+:powereditor:\",\"^[0-9]+:page_insights:\",\"^_SocialFoxExternal_machineid$\",\"^_SocialFoxExternal_LoggedInBefore$\",\"^_socialfox_worker_enabled$\",],],],[\"m_0_c\",],[\"PlaceholderListener\",],[\"m_0_b\",],[\"PlaceholderOnsubmitFormListener\",],[\"FlipDirectionOnKeypress\",],[\"m_0_9\",],[\"m_0_k\",],[\"m_0_n\",],[\"m_0_p\",],[\"m_0_q\",],[\"PrivacyLiteNUXController\",\"init\",[\"m_0_q\",],[{\n dialog: {\n __m: \"m_0_q\"\n },\n sectionID: \"who_can_see\",\n subsectionID: \"plite_activity_log\",\n showOnExpand: true\n },],],[\"PrivacyLiteFlyout\",\"registerFlyoutToggler\",[\"m_0_s\",\"m_0_t\",],[{\n __m: \"m_0_s\"\n },{\n __m: \"m_0_t\"\n },],],[\"Primer\",],[\"m_0_z\",],[\"enforceMaxLength\",],],\n instances: [[\"m_0_4\",[\"JewelX\",\"m_0_5\",],[{\n __m: \"m_0_5\"\n },{\n name: \"requests\"\n },],2,],[\"m_0_k\",[\"ScrollableArea\",\"m_0_j\",],[{\n __m: \"m_0_j\"\n },{\n shadow: false\n },],1,],[\"m_0_q\",[\"ContextualDialog\",\"ContextualDialogArrow\",\"ContextualDialogDefaultTheme\",\"LayerRemoveOnHide\",\"LayerHideOnTransition\",\"LayerFadeOnShow\",\"m_0_r\",],[{\n width: 300,\n context: null,\n contextID: null,\n contextSelector: null,\n position: \"left\",\n alignment: \"left\",\n offsetX: 0,\n offsetY: 0,\n arrowBehavior: {\n __m: \"ContextualDialogArrow\"\n },\n theme: {\n __m: \"ContextualDialogDefaultTheme\"\n },\n addedBehaviors: [{\n __m: \"LayerRemoveOnHide\"\n },{\n __m: \"LayerHideOnTransition\"\n },{\n __m: \"LayerFadeOnShow\"\n },]\n },{\n __m: \"m_0_r\"\n },],3,],[\"m_0_12\",[\"XHPTemplate\",\"m_0_18\",],[{\n __m: \"m_0_18\"\n },],2,],[\"m_0_10\",[\"XHPTemplate\",\"m_0_16\",],[{\n __m: \"m_0_16\"\n },],2,],[\"m_0_8\",[\"ScrollableArea\",\"m_0_7\",],[{\n __m: \"m_0_7\"\n },{\n persistent: true\n },],1,],[\"m_0_p\",[\"ScrollableArea\",\"m_0_o\",],[{\n __m: \"m_0_o\"\n },{\n persistent: true\n },],1,],[\"m_0_11\",[\"XHPTemplate\",\"m_0_17\",],[{\n __m: \"m_0_17\"\n },],2,],[\"m_0_13\",[\"XHPTemplate\",\"m_0_19\",],[{\n __m: \"m_0_19\"\n },],2,],[\"m_0_9\",[\"FacebarTypeaheadViewMegaphone\",\"m_0_g\",\"m_0_h\",\"m_0_i\",],[{\n __m: \"m_0_g\"\n },{\n __m: \"m_0_h\"\n },{\n __m: \"m_0_i\"\n },],3,],[\"m_0_f\",[\"FacebarDataSource\",],[{\n minQueryLength: 2,\n allowWebSuggOnTop: false,\n maxWebSuggToCountFetchMore: 2,\n maxResults: 8,\n indexedFields: [\"text\",\"tokens\",\"alias\",\"non_title_tokens\",],\n titleFields: [\"text\",\"alias\",\"tokens\",],\n queryData: {\n context: \"facebar\",\n grammar_version: \"9ab0d482a92fc9cfa37e6c174e4543ea4a022340\",\n viewer: 100006118350059,\n rsp: \"search\"\n },\n queryEndpoint: \"/ajax/typeahead/search/facebar/query/\",\n bootstrapData: {\n context: \"facebar\",\n viewer: 100006118350059,\n token: \"v7\"\n },\n bootstrapEndpoint: \"/ajax/typeahead/search/facebar/bootstrap/\",\n token: \"1374777501-7\",\n genTime: 1374851147,\n enabledQueryCache: true,\n queryExactMatch: false,\n enabledHashtag: true,\n grammarOptions: {\n grammar_version: \"9ab0d482a92fc9cfa37e6c174e4543ea4a022340\"\n },\n grammarVersion: \"9ab0d482a92fc9cfa37e6c174e4543ea4a022340\",\n allowGrammar: true,\n mixGrammarAndEntity: false,\n oldSeeMore: false,\n webSearchLockedInMode: true\n },],2,],[\"m_0_c\",[\"FacebarTypeahead\",\"m_0_f\",\"FacebarTypeaheadView\",\"m_0_a\",\"FacebarTypeaheadRenderer\",\"FacebarTypeaheadCore\",\"m_0_e\",\"FacebarTypeaheadNavigation\",\"FacebarTypeaheadDecorateEntities\",\"FacebarTypeaheadDisambiguateResults\",\"FacebarTypeaheadSeeMoreSerp\",\"FacebarTypeaheadSizeAdjuster\",\"FacebarTypeaheadShortcut\",\"FacebarTypeaheadWebSearch\",\"FacebarTypeaheadTrigger\",\"FacebarTypeaheadQuickSelect\",\"FacebarTypeaheadMagGo\",\"FacebarTypeaheadSelectAll\",\"FacebarTypeaheadRecorderBasic\",\"FacebarTypeaheadHashtagResult\",\"FacebarTypeaheadTour\",\"FacebarTypeaheadNarrowDrawer\",],[{\n __m: \"m_0_f\"\n },{\n node_id: \"u_0_1\",\n ctor: {\n __m: \"FacebarTypeaheadView\"\n },\n options: {\n causalElement: {\n __m: \"m_0_a\"\n },\n minWidth: 0,\n alignment: \"left\",\n renderer: {\n __m: \"FacebarTypeaheadRenderer\"\n },\n maxResults: 8,\n webSearchForm: \"FBKBFA\",\n showBadges: 1,\n autoSelect: true,\n seeMoreSerpEndpoint: \"/search/more/\"\n }\n },{\n ctor: {\n __m: \"FacebarTypeaheadCore\"\n },\n options: {\n scubaInfo: {\n sample_rate: 1,\n site: \"prod\"\n }\n }\n },{\n __m: \"m_0_e\"\n },[{\n __m: \"FacebarTypeaheadNavigation\"\n },{\n __m: \"FacebarTypeaheadDecorateEntities\"\n },{\n __m: \"FacebarTypeaheadDisambiguateResults\"\n },{\n __m: \"FacebarTypeaheadSeeMoreSerp\"\n },{\n __m: \"FacebarTypeaheadSizeAdjuster\"\n },{\n __m: \"FacebarTypeaheadShortcut\"\n },{\n __m: \"FacebarTypeaheadWebSearch\"\n },{\n __m: \"FacebarTypeaheadTrigger\"\n },{\n __m: \"FacebarTypeaheadQuickSelect\"\n },{\n __m: \"FacebarTypeaheadMagGo\"\n },{\n __m: \"FacebarTypeaheadSelectAll\"\n },{\n __m: \"FacebarTypeaheadRecorderBasic\"\n },{\n __m: \"FacebarTypeaheadHashtagResult\"\n },{\n __m: \"FacebarTypeaheadTour\"\n },{\n __m: \"FacebarTypeaheadNarrowDrawer\"\n },],null,],3,],[\"m_0_14\",[\"XHPTemplate\",\"m_0_1a\",],[{\n __m: \"m_0_1a\"\n },],2,],[\"m_0_15\",[\"XHPTemplate\",\"m_0_1b\",],[{\n __m: \"m_0_1b\"\n },],2,],[\"m_0_n\",[\"JewelX\",\"m_0_m\",],[{\n __m: \"m_0_m\"\n },{\n name: \"notifications\"\n },],1,],[\"m_0_z\",[\"PrivacyLiteFlyoutHelp\",\"m_0_u\",\"m_0_v\",\"m_0_w\",\"m_0_x\",\"m_0_y\",],[{\n __m: \"m_0_u\"\n },{\n __m: \"m_0_v\"\n },{\n __m: \"m_0_w\"\n },{\n __m: \"m_0_x\"\n },{\n __m: \"m_0_y\"\n },],1,],[\"m_0_2\",[\"JewelX\",\"m_0_3\",],[{\n __m: \"m_0_3\"\n },{\n name: \"mercurymessages\"\n },],2,],[\"m_0_b\",[\"StructuredInput\",\"m_0_a\",],[{\n __m: \"m_0_a\"\n },],3,],],\n define: [[\"MercuryThreadlistIconTemplates\",[\"m_0_10\",\"m_0_11\",],{\n \":fb:mercury:attachment-indicator\": {\n __m: \"m_0_10\"\n },\n \":fb:mercury:attachment-icon-text\": {\n __m: \"m_0_11\"\n }\n },42,],[\"HashtagSearchResultConfig\",[],{\n boost_result: 1,\n hashtag_cost: 7529,\n image_url: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yF/r/irmqzCEvUpb.png\"\n },146,],[\"FacebarTypeNamedXTokenOptions\",[],{\n additionalResultsToFetch: 0,\n enabled: false,\n showFacepile: false,\n inlineSubtext: false\n },139,],[\"MercuryJewelTemplates\",[\"m_0_12\",],{\n \":fb:mercury:jewel:threadlist-row\": {\n __m: \"m_0_12\"\n }\n },39,],[\"QuicklingConfig\",[],{\n version: \"888463;0;1;0\",\n inactivePageRegex: \"^/(fr/u\\\\.php|ads/|advertising|ac\\\\.php|ae\\\\.php|ajax/emu/(end|f|h)\\\\.php|badges/|comments\\\\.php|connect/uiserver\\\\.php|editalbum\\\\.php.+add=1|ext/|feeds/|help([/?]|$)|identity_switch\\\\.php|intern/|login\\\\.php|logout\\\\.php|sitetour/homepage_tour\\\\.php|sorry\\\\.php|syndication\\\\.php|webmessenger|/plugins/subscribe|\\\\.pdf$|brandpermissions|gameday|pxlcld)\",\n sessionLength: 30\n },60,],[\"PresencePrivacyInitialData\",[],{\n visibility: 1,\n privacyData: {\n },\n onlinePolicy: 1\n },58,],[\"ResultsBucketizerConfig\",[],{\n rules: {\n main: [{\n propertyName: \"isSeeMore\",\n propertyValue: \"true\",\n position: 2,\n hidden: true\n },{\n propertyName: \"objectType\",\n propertyValue: \"websuggestion\",\n position: 1,\n hidden: false\n },{\n propertyName: \"resultSetType\",\n propertyValue: \"unimplemented\",\n position: 0,\n hidden: false\n },{\n propertyName: \"objectType\",\n propertyValue: \"grammar\",\n position: 0,\n hidden: false\n },{\n bucketName: \"entities\",\n subBucketRules: \"typeBuckets\",\n position: 0,\n hidden: false\n },],\n typeBuckets: [{\n propertyName: \"renderType\",\n position: 0,\n hidden: false\n },{\n position: 0,\n hidden: false\n },]\n }\n },164,],[\"MercuryServerRequestsConfig\",[],{\n sendMessageTimeout: 45000\n },107,],[\"MercuryThreadlistConstants\",[],{\n SEARCH_TAB: \"searchtab\",\n JEWEL_MORE_COUNT: 10,\n WEBMESSENGER_SEARCH_SNIPPET_COUNT: 5,\n WEBMESSENGER_SEARCH_SNIPPET_MORE: 5,\n RECENT_MESSAGES_LIMIT: 10,\n WEBMESSENGER_SEARCH_SNIPPET_LIMIT: 5,\n WEBMESSENGER_MORE_MESSAGES_COUNT: 20,\n WEBMESSENGER_MORE_COUNT: 20,\n JEWEL_THREAD_COUNT: 5,\n RECENT_THREAD_OFFSET: 0,\n MAX_CHARS_BEFORE_BREAK: 280,\n MESSAGE_TIMESTAMP_THRESHOLD: 1209600000,\n GROUPING_THRESHOLD: 300000,\n MAX_UNSEEN_COUNT: 99,\n MAX_UNREAD_COUNT: 99,\n WEBMESSENGER_THREAD_COUNT: 20\n },96,],[\"MessagingConfig\",[],{\n SEND_BATCH_LIMIT: 5,\n IDLE_CUTOFF: 30000,\n SEND_CONNECTION_RETRIES: 2\n },97,],[\"MercuryParticipantsConstants\",[],{\n EMAIL_IMAGE: \"/images/messaging/threadlist/envelope.png\",\n BIG_IMAGE_SIZE: 50,\n IMAGE_SIZE: 32,\n UNKNOWN_GENDER: 0\n },109,],[\"MercuryConfig\",[],{\n WebMessengerSharedPhotosGK: 0,\n \"24h_times\": false,\n idle_poll_interval: 300000,\n activity_limit: 60000,\n WebMessengerThreadSearchGK: 1,\n ChatSaveDraftsGK: 0,\n VideoCallingNoJavaGK: 0,\n BigThumbsUpStickerWWWGK: 0,\n MessagesJewelToggleReadGK: 1,\n SocialContextGK: 0,\n ChatMultiTypGK: 0,\n ChatMultiTypSendGK: 1,\n NewVCGK: 0,\n local_storage_crypto: null,\n MessagesDisableForwardingGK: 1,\n MessagesJewelOpenInChat: 0,\n filtering_active: true,\n idle_limit: 1800000,\n \"roger.seen_delay\": 15000\n },35,],[\"MessagingReliabilityLoggerInitialData\",[],{\n enabled: false,\n app: \"mercury\"\n },44,],[\"DateFormatConfig\",[],{\n weekStart: 6,\n ordinalSuffixes: {\n 1: \"st\",\n 2: \"nd\",\n 3: \"rd\",\n 4: \"th\",\n 5: \"th\",\n 6: \"th\",\n 7: \"th\",\n 8: \"th\",\n 9: \"th\",\n 10: \"th\",\n 11: \"th\",\n 12: \"th\",\n 13: \"th\",\n 14: \"th\",\n 15: \"th\",\n 16: \"th\",\n 17: \"th\",\n 18: \"th\",\n 19: \"th\",\n 20: \"th\",\n 21: \"st\",\n 22: \"nd\",\n 23: \"rd\",\n 24: \"th\",\n 25: \"th\",\n 26: \"th\",\n 27: \"th\",\n 28: \"th\",\n 29: \"th\",\n 30: \"th\",\n 31: \"st\"\n },\n numericDateSeparator: \"/\",\n numericDateOrder: [\"m\",\"d\",\"y\",],\n shortDayNames: [\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\",\"Sun\",],\n formats: []\n },165,],[\"MercuryStatusTemplates\",[\"m_0_13\",\"m_0_14\",\"m_0_15\",],{\n \":fb:mercury:resend-indicator\": {\n __m: \"m_0_13\"\n },\n \":fb:mercury:filtered-message\": {\n __m: \"m_0_14\"\n },\n \":fb:mercury:error-indicator\": {\n __m: \"m_0_15\"\n }\n },41,],[\"LitestandSidebarBookmarkConfig\",[],{\n badge_nf: 0,\n nf_count_query_interval_ms: 300000\n },88,],[\"TimeSpentConfig\",[],{\n delay: 200000,\n initial_timeout: 8,\n initial_delay: 1000\n },142,],],\n elements: [[\"m_0_g\",\"u_0_4\",2,],[\"m_0_3\",\"fbMessagesJewel\",2,],[\"m_0_i\",\"u_0_6\",2,],[\"m_0_a\",\"u_0_3\",6,],[\"m_0_x\",\"u_0_d\",2,],[\"m_0_0\",\"u_0_h\",2,],[\"m_0_d\",\"logout_form\",2,],[\"m_0_w\",\"u_0_e\",2,],[\"m_0_7\",\"MercuryJewelThreadList\",2,],[\"m_0_u\",\"u_0_f\",2,],[\"m_0_5\",\"fbRequestsJewel\",2,],[\"m_0_t\",\"u_0_a\",2,],[\"m_0_v\",\"u_0_c\",2,],[\"m_0_l\",\"logout_form\",2,],[\"m_0_6\",\"u_0_0\",2,],[\"m_0_h\",\"u_0_5\",2,],[\"m_0_y\",\"u_0_b\",2,],[\"m_0_e\",\"u_0_2\",2,],[\"m_0_j\",\"u_0_7\",2,],[\"m_0_o\",\"u_0_8\",2,],[\"m_0_s\",\"u_0_9\",2,],[\"m_0_1\",\"u_0_g\",2,],[\"m_0_m\",\"fbNotificationsJewel\",2,],],\n markup: [[\"m_0_18\",{\n __html: \"\\u003Cli\\u003E\\u003Ca class=\\\"messagesContent\\\" data-jsid=\\\"link\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003Cdiv class=\\\"clearfix\\\"\\u003E\\u003Cdiv class=\\\"MercuryThreadImage -cx-PRIVATE-uiImageBlock__image -cx-PRIVATE-uiImageBlock__mediumimage lfloat\\\" data-jsid=\\\"image\\\"\\u003E\\u003Cimg class=\\\"-cx-PRIVATE-uiSquareImage__root -cx-PRIVATE-uiSquareImage__large img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yw/r/drP8vlvSl_8.gif\\\" /\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"clearfix -cx-PRIVATE-uiFlexibleBlock__flexiblecontent\\\"\\u003E\\u003Cdiv class=\\\"snippetThumbnail rfloat\\\"\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-jewelInlineThumbnail__thumbnail hidden_elem\\\" data-jsid=\\\"snippet-thumbnail-single\\\"\\u003E\\u003Ci style=\\\"background-image: url(/images/blank.gif);\\\"\\u003E\\u003C/i\\u003E\\u003C/span\\u003E\\u003Cspan class=\\\"hidden_elem\\\" data-jsid=\\\"snippet-thumbnail-multiple\\\"\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-jewelInlineThumbnail__albumframe\\\"\\u003E\\u003C/span\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-jewelInlineThumbnail__thumbnail\\\"\\u003E\\u003Ci style=\\\"background-image: url(/images/blank.gif);\\\"\\u003E\\u003C/i\\u003E\\u003C/span\\u003E\\u003C/span\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"content fsm fwn fcg\\\"\\u003E\\u003Cdiv class=\\\"author\\\"\\u003E\\u003Cstrong data-jsid=\\\"name\\\"\\u003E\\u003C/strong\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"snippet preview fsm fwn fcg\\\"\\u003E\\u003Cspan data-jsid=\\\"snippet\\\"\\u003E\\u003C/span\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"time\\\"\\u003E\\u003Cabbr title=\\\"Wednesday, December 31, 1969 at 4:00pm\\\" data-utime=\\\"0\\\" class=\\\"hidden_elem timestamp\\\" data-jsid=\\\"timestamp\\\"\\u003Eover a year ago\\u003C/abbr\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\"\n },2,],[\"m_0_19\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryStatus__status\\\"\\u003E\\u003Cimg class=\\\"img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yv/r/O7ihJIPh_G0.gif\\\" alt=\\\"\\\" width=\\\"15\\\" height=\\\"15\\\" /\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-fbMercuryStatus__retrytext\\\"\\u003ESending...\\u003C/span\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_1b\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryStatus__status\\\"\\u003E\\u003Ci class=\\\"img sp_b8k8sa sx_00f51f\\\"\\u003E\\u003C/i\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-fbMercuryStatus__errortext\\\"\\u003EFailed to send\\u003C/span\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_r\",{\n __html: \"\\u003Cdiv\\u003E\\u003Cdiv class=\\\"-cx-PUBLIC-abstractContextualDialog__defaultpadding\\\"\\u003E\\u003Cdiv\\u003E\\u003Ca class=\\\"-cx-PRIVATE-fbPrivacyLiteMegaphone__sigilhide -cx-PRIVATE-fbPrivacyLiteMegaphone__dialogclose\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003Cimg class=\\\"img\\\" alt=\\\"Close\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y0/r/K4K8h0mqOQN.png\\\" width=\\\"11\\\" height=\\\"13\\\" /\\u003E\\u003C/a\\u003E\\u003Cspan class=\\\"fsl\\\"\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-fbPrivacyLiteMegaphone__introtext\\\"\\u003ETry your new Privacy Shortcuts.\\u003C/span\\u003E Visit your Activity Log to review photos you're tagged in and things you've hidden from your timeline.\\u003C/span\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_16\",{\n __html: \"\\u003Ci class=\\\"mrs MercuryThreadlistIcon img sp_4ie5gn sx_d23bdd\\\"\\u003E\\u003C/i\\u003E\"\n },2,],[\"m_0_17\",{\n __html: \"\\u003Cspan class=\\\"uiIconText -cx-PRIVATE-mercuryAttachments__icontext\\\"\\u003E\\u003Ci class=\\\"img sp_4ie5gn sx_0adf5e\\\"\\u003E\\u003C/i\\u003E\\u003C/span\\u003E\"\n },2,],[\"m_0_1a\",{\n __html: \"\\u003Cdiv class=\\\"mas pam uiBoxYellow\\\"\\u003E\\u003Cstrong\\u003EThis message is no longer available\\u003C/strong\\u003E because it was identified as abusive or marked as spam.\\u003C/div\\u003E\"\n },2,],]\n});\nonloadRegister_DEPRECATED(function() {\n requireLazy([\"MercuryJewel\",], function(MercuryJewel) {\n new MercuryJewel($(\"fbMessagesFlyout\"), $(\"fbMessagesJewel\"), require(\"m_0_2\"), {\n message_counts: [{\n unread_count: 0,\n unseen_count: 0,\n seen_timestamp: 0,\n last_action_id: 0,\n folder: \"inbox\"\n },{\n unread_count: 0,\n unseen_count: 0,\n seen_timestamp: 0,\n last_action_id: null,\n folder: \"other\"\n },],\n payload_source: \"server_initial_data\"\n });\n });\n});\nonloadRegister_DEPRECATED(function() {\n window.presenceRequests = JSCC.get(\"j1z1iqLKJPdtUqBToi0\").init(require(\"m_0_4\"), \"[fb]requests\", false);\n});\nonloadRegister_DEPRECATED(function() {\n window.presenceNotifications = new Notifications({\n updateTime: 1374851147000,\n latestNotif: null,\n latestReadNotif: null,\n updatePeriod: 480000,\n cacheVersion: 2,\n allowDesktopNotifications: false,\n notifReceivedType: \"notification\",\n wrapperID: \"fbNotificationsJewel\",\n contentID: \"fbNotificationsList\",\n shouldLogImpressions: 0,\n useInfiniteScroll: 1,\n persistUnreadColor: true,\n unseenVsUnread: 0\n });\n});\nonloadRegister_DEPRECATED(function() {\n Arbiter.inform(\"jewel/count-initial\", {\n jewel: \"notifications\",\n count: 0\n }, Arbiter.BEHAVIOR_STATE);\n});\nonafterloadRegister_DEPRECATED(function() {\n Bootloader.loadComponents([\"legacy:detect-broken-proxy-cache\",], function() {\n detect_broken_proxy_cache(\"100006118350059\", \"c_user\");\n });\n});"); |
| // 1202 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s42d7f2932f3fe1bbfc27130fd80240240a77a7e2"); |
| // 1203 |
| geval("Bootloader.configurePage([\"veUjj\",\"UmFO+\",\"c6lUE\",\"za92D\",\"j1x0z\",\"tKv6W\",\"ynBUm\",]);\nBootloader.done([\"jDr+c\",]);\nJSCC.init(({\n j1z1iqLKJPdtUqBToi0: function() {\n return new RequestsJewel();\n }\n}));\nrequire(\"InitialJSLoader\").handleServerJS({\n require: [[\"JSBNG__Intl\",\"setPhonologicalRules\",[],[{\n meta: {\n \"/_B/\": \"([.,!?\\\\s]|^)\",\n \"/_E/\": \"([.,!?\\\\s]|$)\"\n },\n patterns: {\n \"/\\u0001(.*)('|')s\\u0001(?:'|')s(.*)/\": \"\\u0001$1$2s\\u0001$3\",\n \"/_\\u0001([^\\u0001]*)\\u0001/e\": \"mb_strtolower(\\\"\\u0001$1\\u0001\\\")\",\n \"/\\\\^\\\\x01([^\\\\x01])(?=[^\\\\x01]*\\\\x01)/e\": \"mb_strtoupper(\\\"\\u0001$1\\\")\",\n \"/_\\u0001([^\\u0001]*)\\u0001/\": \"javascript\"\n }\n },],],[\"PostLoadJS\",\"loadAndRequire\",[],[\"DimensionTracking\",],],[\"PostLoadJS\",\"loadAndCall\",[],[\"HighContrastMode\",\"init\",[{\n currentState: true,\n spacerImage: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y4/r/-PAXP-deijE.gif\"\n },],],],[\"ScriptPath\",\"set\",[],[\"/profile_book.php\",\"98f03730\",],],[\"ClickRefLogger\",],[\"userAction\",\"setUATypeConfig\",[],[{\n \"ua:n\": false,\n \"ua:i\": false,\n \"ua:d\": false,\n \"ua:e\": false\n },],],[\"ScriptPathState\",\"setUserURISampleRate\",[],[1066,],],[\"userAction\",\"setCustomSampleConfig\",[],[{\n \"ua:n\": {\n test: {\n ua_id: {\n test: true\n }\n }\n },\n \"ua:i\": {\n snowlift: {\n action: {\n open: true,\n close: true\n }\n },\n canvas: {\n action: {\n mouseover: true,\n mouseout: true\n }\n }\n }\n },],],[\"UserActionHistory\",],[\"ScriptPath\",\"startLogging\",[],[],],[\"TimeSpentBitArrayLogger\",\"init\",[],[],],[\"PixelRatio\",\"startDetecting\",[],[1,],],[\"LiveTimer\",\"restart\",[],[1374851147,],],[\"MessagingReliabilityLogger\",],[\"FacebarNavigation\",\"setPageQuery\",[],[{\n structure: [{\n text: \"Gregor Richards\",\n type: \"ent:user\",\n uid: 1055580469\n },],\n semantic: null\n },],],[\"SidebarPrelude\",\"addSidebarMode\",[],[1225,],],[\"Quickling\",],[\"TinyViewport\",],[\"WebStorageMonster\",\"schedule\",[],[false,],],[\"AsyncRequestNectarLogging\",],[\"ViewasChromeBar\",\"initChromeBar\",[\"m_0_0\",],[{\n __m: \"m_0_0\"\n },],],[\"PagesVoiceBar\",\"initVoiceBar\",[],[],],[\"LitestandChromeHomeCount\",\"init\",[],[0,],],[\"AccessibleMenu\",\"init\",[\"m_0_1\",],[{\n __m: \"m_0_1\"\n },],],[\"MercuryJewel\",],[\"TitanLeftNav\",\"initialize\",[],[],],[\"m_0_2\",],[\"m_0_4\",],[\"ChatOpenTab\",\"listenOpenEmptyTab\",[\"m_0_6\",],[{\n __m: \"m_0_6\"\n },],],[\"Scrollable\",],[\"m_0_8\",],[\"BrowseNUXBootstrap\",\"registerTypeaheadUnit\",[\"m_0_9\",],[{\n __m: \"m_0_9\"\n },],],[\"FacebarNavigation\",\"registerInput\",[\"m_0_a\",],[{\n __m: \"m_0_a\"\n },],],[\"BrowseNUXBootstrap\",\"registerFacebar\",[\"m_0_b\",\"m_0_c\",],[{\n input: {\n __m: \"m_0_b\"\n },\n typeahead: {\n __m: \"m_0_c\"\n },\n FacebarTypeaheadSponsoredResults: null\n },],],[\"WebStorageMonster\",\"registerLogoutForm\",[\"m_0_d\",],[{\n __m: \"m_0_d\"\n },[\"^Banzai$\",\"^\\\\:userchooser\\\\:osessusers$\",\"^[0-9]+:powereditor:\",\"^[0-9]+:page_insights:\",\"^_SocialFoxExternal_machineid$\",\"^_SocialFoxExternal_LoggedInBefore$\",\"^_socialfox_worker_enabled$\",],],],[\"m_0_c\",],[\"PlaceholderListener\",],[\"m_0_b\",],[\"PlaceholderOnsubmitFormListener\",],[\"FlipDirectionOnKeypress\",],[\"m_0_9\",],[\"m_0_k\",],[\"m_0_n\",],[\"m_0_p\",],[\"m_0_q\",],[\"PrivacyLiteNUXController\",\"init\",[\"m_0_q\",],[{\n dialog: {\n __m: \"m_0_q\"\n },\n sectionID: \"who_can_see\",\n subsectionID: \"plite_activity_log\",\n showOnExpand: true\n },],],[\"PrivacyLiteFlyout\",\"registerFlyoutToggler\",[\"m_0_s\",\"m_0_t\",],[{\n __m: \"m_0_s\"\n },{\n __m: \"m_0_t\"\n },],],[\"Primer\",],[\"m_0_z\",],[\"enforceMaxLength\",],],\n instances: [[\"m_0_4\",[\"JewelX\",\"m_0_5\",],[{\n __m: \"m_0_5\"\n },{\n JSBNG__name: \"requests\"\n },],2,],[\"m_0_k\",[\"ScrollableArea\",\"m_0_j\",],[{\n __m: \"m_0_j\"\n },{\n shadow: false\n },],1,],[\"m_0_q\",[\"ContextualDialog\",\"ContextualDialogArrow\",\"ContextualDialogDefaultTheme\",\"LayerRemoveOnHide\",\"LayerHideOnTransition\",\"LayerFadeOnShow\",\"m_0_r\",],[{\n width: 300,\n context: null,\n contextID: null,\n contextSelector: null,\n position: \"left\",\n alignment: \"left\",\n offsetX: 0,\n offsetY: 0,\n arrowBehavior: {\n __m: \"ContextualDialogArrow\"\n },\n theme: {\n __m: \"ContextualDialogDefaultTheme\"\n },\n addedBehaviors: [{\n __m: \"LayerRemoveOnHide\"\n },{\n __m: \"LayerHideOnTransition\"\n },{\n __m: \"LayerFadeOnShow\"\n },]\n },{\n __m: \"m_0_r\"\n },],3,],[\"m_0_12\",[\"XHPTemplate\",\"m_0_18\",],[{\n __m: \"m_0_18\"\n },],2,],[\"m_0_10\",[\"XHPTemplate\",\"m_0_16\",],[{\n __m: \"m_0_16\"\n },],2,],[\"m_0_8\",[\"ScrollableArea\",\"m_0_7\",],[{\n __m: \"m_0_7\"\n },{\n persistent: true\n },],1,],[\"m_0_p\",[\"ScrollableArea\",\"m_0_o\",],[{\n __m: \"m_0_o\"\n },{\n persistent: true\n },],1,],[\"m_0_11\",[\"XHPTemplate\",\"m_0_17\",],[{\n __m: \"m_0_17\"\n },],2,],[\"m_0_13\",[\"XHPTemplate\",\"m_0_19\",],[{\n __m: \"m_0_19\"\n },],2,],[\"m_0_9\",[\"FacebarTypeaheadViewMegaphone\",\"m_0_g\",\"m_0_h\",\"m_0_i\",],[{\n __m: \"m_0_g\"\n },{\n __m: \"m_0_h\"\n },{\n __m: \"m_0_i\"\n },],3,],[\"m_0_f\",[\"FacebarDataSource\",],[{\n minQueryLength: 2,\n allowWebSuggOnTop: false,\n maxWebSuggToCountFetchMore: 2,\n maxResults: 8,\n indexedFields: [\"text\",\"tokens\",\"alias\",\"non_title_tokens\",],\n titleFields: [\"text\",\"alias\",\"tokens\",],\n queryData: {\n context: \"facebar\",\n grammar_version: \"9ab0d482a92fc9cfa37e6c174e4543ea4a022340\",\n viewer: 100006118350059,\n rsp: \"search\"\n },\n queryEndpoint: \"/ajax/typeahead/search/facebar/query/\",\n bootstrapData: {\n context: \"facebar\",\n viewer: 100006118350059,\n token: \"v7\"\n },\n bootstrapEndpoint: \"/ajax/typeahead/search/facebar/bootstrap/\",\n token: \"1374777501-7\",\n genTime: 1374851147,\n enabledQueryCache: true,\n queryExactMatch: false,\n enabledHashtag: true,\n grammarOptions: {\n grammar_version: \"9ab0d482a92fc9cfa37e6c174e4543ea4a022340\"\n },\n grammarVersion: \"9ab0d482a92fc9cfa37e6c174e4543ea4a022340\",\n allowGrammar: true,\n mixGrammarAndEntity: false,\n oldSeeMore: false,\n webSearchLockedInMode: true\n },],2,],[\"m_0_c\",[\"FacebarTypeahead\",\"m_0_f\",\"FacebarTypeaheadView\",\"m_0_a\",\"FacebarTypeaheadRenderer\",\"FacebarTypeaheadCore\",\"m_0_e\",\"FacebarTypeaheadNavigation\",\"FacebarTypeaheadDecorateEntities\",\"FacebarTypeaheadDisambiguateResults\",\"FacebarTypeaheadSeeMoreSerp\",\"FacebarTypeaheadSizeAdjuster\",\"FacebarTypeaheadShortcut\",\"FacebarTypeaheadWebSearch\",\"FacebarTypeaheadTrigger\",\"FacebarTypeaheadQuickSelect\",\"FacebarTypeaheadMagGo\",\"FacebarTypeaheadSelectAll\",\"FacebarTypeaheadRecorderBasic\",\"FacebarTypeaheadHashtagResult\",\"FacebarTypeaheadTour\",\"FacebarTypeaheadNarrowDrawer\",],[{\n __m: \"m_0_f\"\n },{\n node_id: \"u_0_1\",\n ctor: {\n __m: \"FacebarTypeaheadView\"\n },\n options: {\n causalElement: {\n __m: \"m_0_a\"\n },\n minWidth: 0,\n alignment: \"left\",\n renderer: {\n __m: \"FacebarTypeaheadRenderer\"\n },\n maxResults: 8,\n webSearchForm: \"FBKBFA\",\n showBadges: 1,\n autoSelect: true,\n seeMoreSerpEndpoint: \"/search/more/\"\n }\n },{\n ctor: {\n __m: \"FacebarTypeaheadCore\"\n },\n options: {\n scubaInfo: {\n sample_rate: 1,\n site: \"prod\"\n }\n }\n },{\n __m: \"m_0_e\"\n },[{\n __m: \"FacebarTypeaheadNavigation\"\n },{\n __m: \"FacebarTypeaheadDecorateEntities\"\n },{\n __m: \"FacebarTypeaheadDisambiguateResults\"\n },{\n __m: \"FacebarTypeaheadSeeMoreSerp\"\n },{\n __m: \"FacebarTypeaheadSizeAdjuster\"\n },{\n __m: \"FacebarTypeaheadShortcut\"\n },{\n __m: \"FacebarTypeaheadWebSearch\"\n },{\n __m: \"FacebarTypeaheadTrigger\"\n },{\n __m: \"FacebarTypeaheadQuickSelect\"\n },{\n __m: \"FacebarTypeaheadMagGo\"\n },{\n __m: \"FacebarTypeaheadSelectAll\"\n },{\n __m: \"FacebarTypeaheadRecorderBasic\"\n },{\n __m: \"FacebarTypeaheadHashtagResult\"\n },{\n __m: \"FacebarTypeaheadTour\"\n },{\n __m: \"FacebarTypeaheadNarrowDrawer\"\n },],null,],3,],[\"m_0_14\",[\"XHPTemplate\",\"m_0_1a\",],[{\n __m: \"m_0_1a\"\n },],2,],[\"m_0_15\",[\"XHPTemplate\",\"m_0_1b\",],[{\n __m: \"m_0_1b\"\n },],2,],[\"m_0_n\",[\"JewelX\",\"m_0_m\",],[{\n __m: \"m_0_m\"\n },{\n JSBNG__name: \"notifications\"\n },],1,],[\"m_0_z\",[\"PrivacyLiteFlyoutHelp\",\"m_0_u\",\"m_0_v\",\"m_0_w\",\"m_0_x\",\"m_0_y\",],[{\n __m: \"m_0_u\"\n },{\n __m: \"m_0_v\"\n },{\n __m: \"m_0_w\"\n },{\n __m: \"m_0_x\"\n },{\n __m: \"m_0_y\"\n },],1,],[\"m_0_2\",[\"JewelX\",\"m_0_3\",],[{\n __m: \"m_0_3\"\n },{\n JSBNG__name: \"mercurymessages\"\n },],2,],[\"m_0_b\",[\"StructuredInput\",\"m_0_a\",],[{\n __m: \"m_0_a\"\n },],3,],],\n define: [[\"MercuryThreadlistIconTemplates\",[\"m_0_10\",\"m_0_11\",],{\n \":fb:mercury:attachment-indicator\": {\n __m: \"m_0_10\"\n },\n \":fb:mercury:attachment-icon-text\": {\n __m: \"m_0_11\"\n }\n },42,],[\"HashtagSearchResultConfig\",[],{\n boost_result: 1,\n hashtag_cost: 7529,\n image_url: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yF/r/irmqzCEvUpb.png\"\n },146,],[\"FacebarTypeNamedXTokenOptions\",[],{\n additionalResultsToFetch: 0,\n enabled: false,\n showFacepile: false,\n inlineSubtext: false\n },139,],[\"MercuryJewelTemplates\",[\"m_0_12\",],{\n \":fb:mercury:jewel:threadlist-row\": {\n __m: \"m_0_12\"\n }\n },39,],[\"QuicklingConfig\",[],{\n version: \"888463;0;1;0\",\n inactivePageRegex: \"^/(fr/u\\\\.php|ads/|advertising|ac\\\\.php|ae\\\\.php|ajax/emu/(end|f|h)\\\\.php|badges/|comments\\\\.php|connect/uiserver\\\\.php|editalbum\\\\.php.+add=1|ext/|feeds/|help([/?]|$)|identity_switch\\\\.php|intern/|login\\\\.php|logout\\\\.php|sitetour/homepage_tour\\\\.php|sorry\\\\.php|syndication\\\\.php|webmessenger|/plugins/subscribe|\\\\.pdf$|brandpermissions|gameday|pxlcld)\",\n sessionLength: 30\n },60,],[\"PresencePrivacyInitialData\",[],{\n visibility: 1,\n privacyData: {\n },\n onlinePolicy: 1\n },58,],[\"ResultsBucketizerConfig\",[],{\n rules: {\n main: [{\n propertyName: \"isSeeMore\",\n propertyValue: \"true\",\n position: 2,\n hidden: true\n },{\n propertyName: \"objectType\",\n propertyValue: \"websuggestion\",\n position: 1,\n hidden: false\n },{\n propertyName: \"resultSetType\",\n propertyValue: \"unimplemented\",\n position: 0,\n hidden: false\n },{\n propertyName: \"objectType\",\n propertyValue: \"grammar\",\n position: 0,\n hidden: false\n },{\n bucketName: \"entities\",\n subBucketRules: \"typeBuckets\",\n position: 0,\n hidden: false\n },],\n typeBuckets: [{\n propertyName: \"renderType\",\n position: 0,\n hidden: false\n },{\n position: 0,\n hidden: false\n },]\n }\n },164,],[\"MercuryServerRequestsConfig\",[],{\n sendMessageTimeout: 45000\n },107,],[\"MercuryThreadlistConstants\",[],{\n SEARCH_TAB: \"searchtab\",\n JEWEL_MORE_COUNT: 10,\n WEBMESSENGER_SEARCH_SNIPPET_COUNT: 5,\n WEBMESSENGER_SEARCH_SNIPPET_MORE: 5,\n RECENT_MESSAGES_LIMIT: 10,\n WEBMESSENGER_SEARCH_SNIPPET_LIMIT: 5,\n WEBMESSENGER_MORE_MESSAGES_COUNT: 20,\n WEBMESSENGER_MORE_COUNT: 20,\n JEWEL_THREAD_COUNT: 5,\n RECENT_THREAD_OFFSET: 0,\n MAX_CHARS_BEFORE_BREAK: 280,\n MESSAGE_TIMESTAMP_THRESHOLD: 1209600000,\n GROUPING_THRESHOLD: 300000,\n MAX_UNSEEN_COUNT: 99,\n MAX_UNREAD_COUNT: 99,\n WEBMESSENGER_THREAD_COUNT: 20\n },96,],[\"MessagingConfig\",[],{\n SEND_BATCH_LIMIT: 5,\n IDLE_CUTOFF: 30000,\n SEND_CONNECTION_RETRIES: 2\n },97,],[\"MercuryParticipantsConstants\",[],{\n EMAIL_IMAGE: \"/images/messaging/threadlist/envelope.png\",\n BIG_IMAGE_SIZE: 50,\n IMAGE_SIZE: 32,\n UNKNOWN_GENDER: 0\n },109,],[\"MercuryConfig\",[],{\n WebMessengerSharedPhotosGK: 0,\n \"24h_times\": false,\n idle_poll_interval: 300000,\n activity_limit: 60000,\n WebMessengerThreadSearchGK: 1,\n ChatSaveDraftsGK: 0,\n VideoCallingNoJavaGK: 0,\n BigThumbsUpStickerWWWGK: 0,\n MessagesJewelToggleReadGK: 1,\n SocialContextGK: 0,\n ChatMultiTypGK: 0,\n ChatMultiTypSendGK: 1,\n NewVCGK: 0,\n local_storage_crypto: null,\n MessagesDisableForwardingGK: 1,\n MessagesJewelOpenInChat: 0,\n filtering_active: true,\n idle_limit: 1800000,\n \"roger.seen_delay\": 15000\n },35,],[\"MessagingReliabilityLoggerInitialData\",[],{\n enabled: false,\n app: \"mercury\"\n },44,],[\"DateFormatConfig\",[],{\n weekStart: 6,\n ordinalSuffixes: {\n 1: \"st\",\n 2: \"nd\",\n 3: \"rd\",\n 4: \"th\",\n 5: \"th\",\n 6: \"th\",\n 7: \"th\",\n 8: \"th\",\n 9: \"th\",\n 10: \"th\",\n 11: \"th\",\n 12: \"th\",\n 13: \"th\",\n 14: \"th\",\n 15: \"th\",\n 16: \"th\",\n 17: \"th\",\n 18: \"th\",\n 19: \"th\",\n 20: \"th\",\n 21: \"st\",\n 22: \"nd\",\n 23: \"rd\",\n 24: \"th\",\n 25: \"th\",\n 26: \"th\",\n 27: \"th\",\n 28: \"th\",\n 29: \"th\",\n 30: \"th\",\n 31: \"st\"\n },\n numericDateSeparator: \"/\",\n numericDateOrder: [\"m\",\"d\",\"y\",],\n shortDayNames: [\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\",\"Sun\",],\n formats: []\n },165,],[\"MercuryStatusTemplates\",[\"m_0_13\",\"m_0_14\",\"m_0_15\",],{\n \":fb:mercury:resend-indicator\": {\n __m: \"m_0_13\"\n },\n \":fb:mercury:filtered-message\": {\n __m: \"m_0_14\"\n },\n \":fb:mercury:error-indicator\": {\n __m: \"m_0_15\"\n }\n },41,],[\"LitestandSidebarBookmarkConfig\",[],{\n badge_nf: 0,\n nf_count_query_interval_ms: 300000\n },88,],[\"TimeSpentConfig\",[],{\n delay: 200000,\n initial_timeout: 8,\n initial_delay: 1000\n },142,],],\n elements: [[\"m_0_g\",\"u_0_4\",2,],[\"m_0_3\",\"fbMessagesJewel\",2,],[\"m_0_i\",\"u_0_6\",2,],[\"m_0_a\",\"u_0_3\",6,],[\"m_0_x\",\"u_0_d\",2,],[\"m_0_0\",\"u_0_h\",2,],[\"m_0_d\",\"logout_form\",2,],[\"m_0_w\",\"u_0_e\",2,],[\"m_0_7\",\"MercuryJewelThreadList\",2,],[\"m_0_u\",\"u_0_f\",2,],[\"m_0_5\",\"fbRequestsJewel\",2,],[\"m_0_t\",\"u_0_a\",2,],[\"m_0_v\",\"u_0_c\",2,],[\"m_0_l\",\"logout_form\",2,],[\"m_0_6\",\"u_0_0\",2,],[\"m_0_h\",\"u_0_5\",2,],[\"m_0_y\",\"u_0_b\",2,],[\"m_0_e\",\"u_0_2\",2,],[\"m_0_j\",\"u_0_7\",2,],[\"m_0_o\",\"u_0_8\",2,],[\"m_0_s\",\"u_0_9\",2,],[\"m_0_1\",\"u_0_g\",2,],[\"m_0_m\",\"fbNotificationsJewel\",2,],],\n markup: [[\"m_0_18\",{\n __html: \"\\u003Cli\\u003E\\u003Ca class=\\\"messagesContent\\\" data-jsid=\\\"link\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003Cdiv class=\\\"clearfix\\\"\\u003E\\u003Cdiv class=\\\"MercuryThreadImage -cx-PRIVATE-uiImageBlock__image -cx-PRIVATE-uiImageBlock__mediumimage lfloat\\\" data-jsid=\\\"image\\\"\\u003E\\u003Cimg class=\\\"-cx-PRIVATE-uiSquareImage__root -cx-PRIVATE-uiSquareImage__large img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yw/r/drP8vlvSl_8.gif\\\" /\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"clearfix -cx-PRIVATE-uiFlexibleBlock__flexiblecontent\\\"\\u003E\\u003Cdiv class=\\\"snippetThumbnail rfloat\\\"\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-jewelInlineThumbnail__thumbnail hidden_elem\\\" data-jsid=\\\"snippet-thumbnail-single\\\"\\u003E\\u003Ci style=\\\"background-image: url(/images/blank.gif);\\\"\\u003E\\u003C/i\\u003E\\u003C/span\\u003E\\u003Cspan class=\\\"hidden_elem\\\" data-jsid=\\\"snippet-thumbnail-multiple\\\"\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-jewelInlineThumbnail__albumframe\\\"\\u003E\\u003C/span\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-jewelInlineThumbnail__thumbnail\\\"\\u003E\\u003Ci style=\\\"background-image: url(/images/blank.gif);\\\"\\u003E\\u003C/i\\u003E\\u003C/span\\u003E\\u003C/span\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"content fsm fwn fcg\\\"\\u003E\\u003Cdiv class=\\\"author\\\"\\u003E\\u003Cstrong data-jsid=\\\"name\\\"\\u003E\\u003C/strong\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"snippet preview fsm fwn fcg\\\"\\u003E\\u003Cspan data-jsid=\\\"snippet\\\"\\u003E\\u003C/span\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"time\\\"\\u003E\\u003Cabbr title=\\\"Wednesday, December 31, 1969 at 4:00pm\\\" data-utime=\\\"0\\\" class=\\\"hidden_elem timestamp\\\" data-jsid=\\\"timestamp\\\"\\u003Eover a year ago\\u003C/abbr\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\"\n },2,],[\"m_0_19\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryStatus__status\\\"\\u003E\\u003Cimg class=\\\"img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yv/r/O7ihJIPh_G0.gif\\\" alt=\\\"\\\" width=\\\"15\\\" height=\\\"15\\\" /\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-fbMercuryStatus__retrytext\\\"\\u003ESending...\\u003C/span\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_1b\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryStatus__status\\\"\\u003E\\u003Ci class=\\\"img sp_b8k8sa sx_00f51f\\\"\\u003E\\u003C/i\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-fbMercuryStatus__errortext\\\"\\u003EFailed to send\\u003C/span\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_r\",{\n __html: \"\\u003Cdiv\\u003E\\u003Cdiv class=\\\"-cx-PUBLIC-abstractContextualDialog__defaultpadding\\\"\\u003E\\u003Cdiv\\u003E\\u003Ca class=\\\"-cx-PRIVATE-fbPrivacyLiteMegaphone__sigilhide -cx-PRIVATE-fbPrivacyLiteMegaphone__dialogclose\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003Cimg class=\\\"img\\\" alt=\\\"Close\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y0/r/K4K8h0mqOQN.png\\\" width=\\\"11\\\" height=\\\"13\\\" /\\u003E\\u003C/a\\u003E\\u003Cspan class=\\\"fsl\\\"\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-fbPrivacyLiteMegaphone__introtext\\\"\\u003ETry your new Privacy Shortcuts.\\u003C/span\\u003E Visit your Activity Log to review photos you're tagged in and things you've hidden from your timeline.\\u003C/span\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_16\",{\n __html: \"\\u003Ci class=\\\"mrs MercuryThreadlistIcon img sp_4ie5gn sx_d23bdd\\\"\\u003E\\u003C/i\\u003E\"\n },2,],[\"m_0_17\",{\n __html: \"\\u003Cspan class=\\\"uiIconText -cx-PRIVATE-mercuryAttachments__icontext\\\"\\u003E\\u003Ci class=\\\"img sp_4ie5gn sx_0adf5e\\\"\\u003E\\u003C/i\\u003E\\u003C/span\\u003E\"\n },2,],[\"m_0_1a\",{\n __html: \"\\u003Cdiv class=\\\"mas pam uiBoxYellow\\\"\\u003E\\u003Cstrong\\u003EThis message is no longer available\\u003C/strong\\u003E because it was identified as abusive or marked as spam.\\u003C/div\\u003E\"\n },2,],]\n});\nonloadRegister_DEPRECATED(function() {\n requireLazy([\"MercuryJewel\",], function(MercuryJewel) {\n new MercuryJewel($(\"fbMessagesFlyout\"), $(\"fbMessagesJewel\"), require(\"m_0_2\"), {\n message_counts: [{\n unread_count: 0,\n unseen_count: 0,\n seen_timestamp: 0,\n last_action_id: 0,\n folder: \"inbox\"\n },{\n unread_count: 0,\n unseen_count: 0,\n seen_timestamp: 0,\n last_action_id: null,\n folder: \"other\"\n },],\n payload_source: \"server_initial_data\"\n });\n });\n});\nonloadRegister_DEPRECATED(function() {\n window.presenceRequests = JSCC.get(\"j1z1iqLKJPdtUqBToi0\").init(require(\"m_0_4\"), \"[fb]requests\", false);\n});\nonloadRegister_DEPRECATED(function() {\n window.presenceNotifications = new Notifications({\n updateTime: 1374851147000,\n latestNotif: null,\n latestReadNotif: null,\n updatePeriod: 480000,\n cacheVersion: 2,\n allowDesktopNotifications: false,\n notifReceivedType: \"notification\",\n wrapperID: \"fbNotificationsJewel\",\n contentID: \"fbNotificationsList\",\n shouldLogImpressions: 0,\n useInfiniteScroll: 1,\n persistUnreadColor: true,\n unseenVsUnread: 0\n });\n});\nonloadRegister_DEPRECATED(function() {\n Arbiter.inform(\"jewel/count-initial\", {\n jewel: \"notifications\",\n count: 0\n }, Arbiter.BEHAVIOR_STATE);\n});\nonafterloadRegister_DEPRECATED(function() {\n Bootloader.loadComponents([\"legacy:detect-broken-proxy-cache\",], function() {\n detect_broken_proxy_cache(\"100006118350059\", \"c_user\");\n });\n});"); |
| // 1477 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"var bigPipe = new (require(\"BigPipe\"))({\n lid: 0,\n forceFinish: true\n});"); |
| // 1478 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"se151abf45cd37f530e5c8a27b753d912bd1be56a"); |
| // 1479 |
| geval("var bigPipe = new (require(\"BigPipe\"))({\n lid: 0,\n forceFinish: true\n});"); |
| // 1485 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"bigPipe.onPageletArrive({\n id: \"first_response\",\n phase: 0,\n jsmods: {\n },\n is_last: true,\n css: [\"veUjj\",\"UmFO+\",\"c6lUE\",\"za92D\",\"j1x0z\",\"tKv6W\",\"ynBUm\",\"tAd6o\",],\n bootloadable: {\n },\n resource_map: {\n },\n js: [\"OH3xD\",\"XH2Cu\",\"ociRJ\",\"AVmr9\",\"I+n09\",\"4vv8/\",\"zBhY6\",\"f7Tpb\",\"OSd/n\",\"+P3v8\",\"js0se\",\"BjpNB\",\"/MWWQ\",\"G3fzU\",\"mBpeN\",\"C6rJk\",\"97Zhe\",],\n displayJS: [\"OH3xD\",]\n});"); |
| // 1486 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s107f6e97b022732c8fb4267064b1fd772daa5be8"); |
| // 1487 |
| geval("bigPipe.onPageletArrive({\n id: \"first_response\",\n phase: 0,\n jsmods: {\n },\n is_last: true,\n css: [\"veUjj\",\"UmFO+\",\"c6lUE\",\"za92D\",\"j1x0z\",\"tKv6W\",\"ynBUm\",\"tAd6o\",],\n bootloadable: {\n },\n resource_map: {\n },\n js: [\"OH3xD\",\"XH2Cu\",\"ociRJ\",\"AVmr9\",\"I+n09\",\"4vv8/\",\"zBhY6\",\"f7Tpb\",\"OSd/n\",\"+P3v8\",\"js0se\",\"BjpNB\",\"/MWWQ\",\"G3fzU\",\"mBpeN\",\"C6rJk\",\"97Zhe\",],\n displayJS: [\"OH3xD\",]\n});"); |
| // 1543 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"bigPipe.onPageletArrive({\n content: {\n pagelet_timeline_main_column: {\n container_id: \"u_0_i\"\n }\n },\n jsmods: {\n require: [[\"TimelineController\",\"init\",[],[\"1055580469\",\"timeline\",{\n has_fixed_ads: false,\n one_column_minimal: true\n },],],]\n },\n bootloadable: {\n },\n resource_map: {\n },\n js: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"/MWWQ\",\"nxD7O\",],\n id: \"pagelet_timeline_main_column\",\n phase: 1\n});"); |
| // 1544 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"sf1857b96b66ad91a42a50549933b0195d72e3a05"); |
| // 1545 |
| geval("bigPipe.onPageletArrive({\n JSBNG__content: {\n pagelet_timeline_main_column: {\n container_id: \"u_0_i\"\n }\n },\n jsmods: {\n require: [[\"TimelineController\",\"init\",[],[\"1055580469\",\"timeline\",{\n has_fixed_ads: false,\n one_column_minimal: true\n },],],]\n },\n bootloadable: {\n },\n resource_map: {\n },\n js: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"/MWWQ\",\"nxD7O\",],\n id: \"pagelet_timeline_main_column\",\n phase: 1\n});"); |
| // 1590 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"bigPipe.onPageletArrive({\n display_dependency: [\"pagelet_timeline_main_column\",],\n content: {\n pagelet_main_column_personal: {\n container_id: \"u_0_p\"\n }\n },\n jsmods: {\n require: [[\"TimelineContentLoader\",\"registerTimePeriod\",[\"m_0_1c\",],[{\n __m: \"m_0_1c\"\n },\"recent\",{\n profile_id: 1055580469,\n start: 0,\n end: 1375340399,\n query_type: 39,\n section_pagelet_id: \"pagelet_timeline_recent\",\n load_immediately: true\n },true,null,0,-1,],],[\"TimelineCoverCollapse\",\"collapse\",[\"m_0_1d\",],[{\n __m: \"m_0_1d\"\n },160,],],[\"m_0_1e\",],[\"m_0_1g\",],[\"m_0_1h\",],[\"m_0_1j\",],[\"m_0_1k\",],[\"m_0_1n\",],[\"PhotoSnowlift\",\"initWithSpotlight\",[\"m_0_1n\",],[{\n __m: \"m_0_1n\"\n },{\n refresh_fast: true,\n refresh_rate: 20000,\n hw_rendering: false,\n pivot_hover: false,\n pivot_end_metric: false,\n pagers_on_keyboard_nav: false,\n og_videos: false,\n snowlift_profile_pic_cropper: false,\n product_collections_visible: false,\n snowlift_hover_shows_all_tags_and_faces: true,\n resize_comments_for_ads: false,\n snowlift_redesign: false,\n min_ads: 2\n },],],[\"PhotoSnowlift\",\"touch\",[\"m_0_1m\",],[{\n __m: \"m_0_1m\"\n },],],],\n instances: [[\"m_0_1j\",[\"PopoverAsyncMenu\",\"m_0_1k\",\"m_0_1i\",\"m_0_1h\",\"PopoverMenuShowOnHover\",],[{\n __m: \"m_0_1k\"\n },{\n __m: \"m_0_1i\"\n },{\n __m: \"m_0_1h\"\n },\"/ajax/timeline/collections/nav_light_dropdown_menu/?profileid=1055580469&offset=3\",[{\n __m: \"PopoverMenuShowOnHover\"\n },],],1,],[\"m_0_1e\",[\"TimelineCover\",\"m_0_1d\",],[{\n __m: \"m_0_1d\"\n },{\n cover_height: 315,\n cover_width: 851\n },],1,],[\"m_0_1g\",[\"TimelineNavLight\",\"m_0_1f\",],[{\n __m: \"m_0_1f\"\n },],1,],[\"m_0_1n\",[\"Spotlight\",\"LayerHideOnBlur\",\"LayerHideOnEscape\",\"m_0_1o\",],[{\n addedBehaviors: [{\n __m: \"LayerHideOnBlur\"\n },{\n __m: \"LayerHideOnEscape\"\n },],\n attributes: {\n id: \"photos_snowlift\",\n tabindex: \"0\",\n role: \"region\",\n \"aria-label\": \"Facebook Photo Theater\",\n \"aria-busy\": \"true\"\n },\n classNames: [\"fbPhotoSnowlift\",\"fbxPhoto\",]\n },{\n __m: \"m_0_1o\"\n },],3,],[\"m_0_1h\",[\"PopoverLoadingMenu\",\"MenuTheme\",],[{\n theme: {\n __m: \"MenuTheme\"\n }\n },],3,],[\"m_0_1k\",[\"Popover\",\"m_0_1l\",\"m_0_1i\",],[{\n __m: \"m_0_1l\"\n },{\n __m: \"m_0_1i\"\n },[],{\n alignh: \"left\"\n },],3,],],\n elements: [[\"m_0_1c\",\"pagelet_timeline_recent\",2,],[\"m_0_1d\",\"u_0_j\",4,],[\"m_0_1i\",\"u_0_m\",4,],[\"m_0_1p\",\"u_0_o\",2,\"m_0_1o\",],[\"m_0_1f\",\"u_0_k\",2,],[\"m_0_1l\",\"u_0_l\",2,],],\n markup: [[\"m_0_1m\",{\n __html: \"\\u003Cdiv\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_1o\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PRIVATE-uiSpotlight__content\\\"\\u003E\\u003Cdiv class=\\\"fbPhotoSnowliftContainer uiContextualLayerParent\\\" data-ft=\\\"{"type":44}\\\"\\u003E\\u003Cdiv class=\\\"clearfix fbPhotoSnowliftPopup\\\"\\u003E\\u003Cdiv class=\\\"stageWrapper lfloat\\\"\\u003E\\u003Cdiv class=\\\"fbPhotoSnowliftFullScreen fullScreenSwitch\\\" id=\\\"fullScreenSwitch\\\"\\u003E\\u003Ca data-hover=\\\"tooltip\\\" aria-label=\\\"Enter Fullscreen\\\" data-tooltip-position=\\\"below\\\" data-tooltip-alignh=\\\"right\\\" href=\\\"#\\\" id=\\\"fbPhotoSnowliftFullScreenSwitch\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003Ca data-hover=\\\"tooltip\\\" aria-label=\\\"Press Esc to exit fullscreen\\\" data-tooltip-position=\\\"below\\\" data-tooltip-alignh=\\\"right\\\" href=\\\"#\\\" id=\\\"fbPhotoSnowliftFullScreenClose\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"stage\\\"\\u003E\\u003Cdiv class=\\\"fbPhotosCornerWantButton\\\" id=\\\"fbPhotoSnowliftWantButton\\\"\\u003E\\u003C/div\\u003E\\u003Cimg class=\\\"spotlight spotlight\\\" src=\\\"/images/spacer.gif\\\" /\\u003E\\u003Cdiv class=\\\"fbPhotosPhotoTagboxes tagContainer\\\" id=\\\"fbPhotoSnowliftTagBoxes\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fbPhotoTagApproval\\\" id=\\\"fbPhotoSnowliftTagApproval\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbPhotoCVInfo__wrapper\\\" id=\\\"fbPhotoSnowliftComputerVisionInfo\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"videoStage\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"stageActions\\\" id=\\\"snowliftStageActions\\\"\\u003E\\u003Cdiv class=\\\"clearfix snowliftOverlay snowliftOverlayBar rightButtons\\\"\\u003E\\u003Cdiv class=\\\"overlayBarButtons rfloat\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-uiInlineBlock__root -cx-PRIVATE-uiInlineBlock__middle fbPhotosPhotoActions\\\" id=\\\"fbPhotoSnowliftActions\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fbPhotosPhotoButtons\\\" id=\\\"fbPhotoSnowliftButtons\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"mediaTitleInfo\\\"\\u003E\\u003Cdiv class=\\\"mediaTitleBoxFlex\\\"\\u003E\\u003Cdiv id=\\\"fbPhotoSnowliftMediaTitle\\\"\\u003E\\u003C/div\\u003E\\u003Cspan class=\\\"mlm hidden_elem\\\" id=\\\"fbPhotoSnowliftPositionAndCount\\\"\\u003E\\u003C/span\\u003E\\u003Cdiv class=\\\"mediaTitleInfoSpacer\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fbPhotosPhotoTagboxBase newTagBox hidden_elem\\\" style=\\\"\\\"\\u003E\\u003Cdiv class=\\\"borderTagBox\\\"\\u003E\\u003Cdiv class=\\\"innerTagBox\\\"\\u003E\\u003Cdiv class=\\\"ieContentFix\\\"\\u003E\\u00a0\\u00a0\\u00a0\\u00a0\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"tag\\\" style=\\\"\\\"\\u003E\\u003Cdiv class=\\\"tagPointer\\\"\\u003E\\u003Ci class=\\\"tagArrow img sp_3yt8ar sx_077cc0\\\"\\u003E\\u003C/i\\u003E\\u003Cdiv class=\\\"tagName\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Ca class=\\\"snowliftPager prev\\\" title=\\\"Previous\\\"\\u003E\\u003Ci\\u003E\\u003C/i\\u003E\\u003C/a\\u003E\\u003Ca class=\\\"snowliftPager next\\\" title=\\\"Next\\\"\\u003E\\u003Ci\\u003E\\u003C/i\\u003E\\u003C/a\\u003E\\u003Cdiv class=\\\"photoError stageError\\\" id=\\\"fbPhotoSnowliftError\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"rhc photoUfiContainer\\\"\\u003E\\u003Cdiv class=\\\"rhcHeader\\\"\\u003E\\u003Cdiv class=\\\"fbPhotoSnowliftControls\\\"\\u003E\\u003Ca data-hover=\\\"tooltip\\\" aria-label=\\\"Press Esc to close\\\" data-tooltip-position=\\\"below\\\" data-tooltip-alignh=\\\"right\\\" class=\\\"closeTheater\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003Ca data-hover=\\\"tooltip\\\" aria-label=\\\"Press Esc to exit fullscreen\\\" data-tooltip-position=\\\"below\\\" data-tooltip-alignh=\\\"right\\\" class=\\\"closeTheater fullscreenCommentClose\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\\u003Cdiv id=\\\"fbPhotoSnowliftInlineEditor\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cform rel=\\\"async\\\" class=\\\"fbPhotosSnowliftFeedbackForm rhcBody commentable_item autoexpand_mode\\\" method=\\\"post\\\" action=\\\"/ajax/ufi/modify.php\\\" onsubmit=\\\"return window.Event && Event.__inlineSubmit && Event.__inlineSubmit(this,event)\\\" id=\\\"u_0_o\\\"\\u003E\\u003Cinput type=\\\"hidden\\\" name=\\\"charset_test\\\" value=\\\"€,´,\\u20ac,\\u00b4,\\u6c34,\\u0414,\\u0404\\\" /\\u003E\\u003Cinput type=\\\"hidden\\\" name=\\\"fb_dtsg\\\" value=\\\"AQApxIm6\\\" autocomplete=\\\"off\\\" /\\u003E\\u003Cdiv class=\\\"uiScrollableArea rhcScroller native\\\" style=\\\"width:285px;\\\"\\u003E\\u003Cdiv class=\\\"uiScrollableAreaWrap scrollable\\\" aria-label=\\\"Scrollable region\\\" tabindex=\\\"0\\\"\\u003E\\u003Cdiv class=\\\"uiScrollableAreaBody\\\"\\u003E\\u003Cdiv class=\\\"uiScrollableAreaContent\\\"\\u003E\\u003Cspan id=\\\"fbPhotoSnowliftSpecificAudience\\\"\\u003E\\u003C/span\\u003E\\u003Cdiv class=\\\"clearfix fbPhotoSnowliftAuthorInfo\\\"\\u003E\\u003Cdiv class=\\\"lfloat\\\" id=\\\"fbPhotoSnowliftAuthorPic\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv\\u003E\\u003Cdiv class=\\\"fbPhotoContributorName\\\" id=\\\"fbPhotoSnowliftAuthorName\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"mrs fsm fwn fcg\\\"\\u003E\\u003Cspan id=\\\"fbPhotoSnowliftSubscribe\\\"\\u003E\\u003C/span\\u003E\\u003Cspan id=\\\"fbPhotoSnowliftTimestamp\\\"\\u003E\\u003C/span\\u003E\\u003Cdiv class=\\\"mls\\\" id=\\\"fbPhotoSnowliftAudienceSelector\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fsm fwn fcg\\\"\\u003E\\u003Cdiv class=\\\"fbPhotosOnProfile\\\" id=\\\"fbPhotoSnowliftOnProfile\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cspan id=\\\"fbPhotoSnowliftViewOnApp\\\"\\u003E\\u003C/span\\u003E\\u003Cspan id=\\\"fbPhotoSnowliftUseApp\\\"\\u003E\\u003C/span\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv\\u003E\\u003Cspan class=\\\"fbPhotosPhotoCaption\\\" tabindex=\\\"0\\\" aria-live=\\\"polite\\\" data-ft=\\\"{"type":45}\\\" id=\\\"fbPhotoSnowliftCaption\\\"\\u003E\\u003C/span\\u003E\\u003Cspan class=\\\"fbPhotoTagList\\\" id=\\\"fbPhotoSnowliftTagList\\\"\\u003E\\u003C/span\\u003E\\u003Cdiv class=\\\"fbPhotoPagesTagList\\\" id=\\\"fbPhotoSnowliftPagesTagList\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"pts fbPhotoLegacyTagList\\\" id=\\\"fbPhotoSnowliftLegacyTagList\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fbPhotosPhotoOwnerButtons stat_elem\\\" id=\\\"fbPhotoSnowliftOwnerButtons\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fbPhotosSnowliftFeedback\\\" id=\\\"fbPhotoSnowliftFeedback\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fbPhotosSnowboxFeedbackInput\\\" id=\\\"fbPhotoSnowliftFeedbackInput\\\"\\u003E\\u003C/div\\u003E\\u003C/form\\u003E\\u003Cdiv class=\\\"fbPhotosSnowliftProductMetadata\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PUBLIC-snowliftAds__root rhcFooter\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv id=\\\"pagelet_photo_viewer_init\\\" class=\\\"hidden_elem\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },3,],]\n },\n css: [\"j1x0z\",\"UmFO+\",\"veUjj\",],\n bootloadable: {\n PhotoCropper: {\n resources: [\"OH3xD\",\"f7Tpb\",\"UmFO+\",\"AVmr9\",\"gyG67\",\"m+DMw\",\"/MWWQ\",\"za92D\",\"iIySo\",],\n \"module\": true\n }\n },\n resource_map: {\n xfhln: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yV/r/qrynZd4S1j9.js\"\n },\n OYzUx: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yN/r/bD9K1YDrR29.js\"\n },\n \"4kgAq\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y6/r/UTKDDtdCpTB.js\"\n }\n },\n js: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"/MWWQ\",\"nxD7O\",\"xfhln\",\"4kgAq\",\"OYzUx\",\"XH2Cu\",\"gyG67\",\"e0RyX\",],\n displayJS: [\"OH3xD\",],\n id: \"pagelet_main_column_personal\",\n phase: 1\n});"); |
| // 1591 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s5a3b5f935338c9f617a3d79fcb404ee9e841ac66"); |
| // 1592 |
| geval("bigPipe.onPageletArrive({\n display_dependency: [\"pagelet_timeline_main_column\",],\n JSBNG__content: {\n pagelet_main_column_personal: {\n container_id: \"u_0_p\"\n }\n },\n jsmods: {\n require: [[\"TimelineContentLoader\",\"registerTimePeriod\",[\"m_0_1c\",],[{\n __m: \"m_0_1c\"\n },\"recent\",{\n profile_id: 1055580469,\n start: 0,\n end: 1375340399,\n query_type: 39,\n section_pagelet_id: \"pagelet_timeline_recent\",\n load_immediately: true\n },true,null,0,-1,],],[\"TimelineCoverCollapse\",\"collapse\",[\"m_0_1d\",],[{\n __m: \"m_0_1d\"\n },160,],],[\"m_0_1e\",],[\"m_0_1g\",],[\"m_0_1h\",],[\"m_0_1j\",],[\"m_0_1k\",],[\"m_0_1n\",],[\"PhotoSnowlift\",\"initWithSpotlight\",[\"m_0_1n\",],[{\n __m: \"m_0_1n\"\n },{\n refresh_fast: true,\n refresh_rate: 20000,\n hw_rendering: false,\n pivot_hover: false,\n pivot_end_metric: false,\n pagers_on_keyboard_nav: false,\n og_videos: false,\n snowlift_profile_pic_cropper: false,\n product_collections_visible: false,\n snowlift_hover_shows_all_tags_and_faces: true,\n resize_comments_for_ads: false,\n snowlift_redesign: false,\n min_ads: 2\n },],],[\"PhotoSnowlift\",\"touch\",[\"m_0_1m\",],[{\n __m: \"m_0_1m\"\n },],],],\n instances: [[\"m_0_1j\",[\"PopoverAsyncMenu\",\"m_0_1k\",\"m_0_1i\",\"m_0_1h\",\"PopoverMenuShowOnHover\",],[{\n __m: \"m_0_1k\"\n },{\n __m: \"m_0_1i\"\n },{\n __m: \"m_0_1h\"\n },\"/ajax/timeline/collections/nav_light_dropdown_menu/?profileid=1055580469&offset=3\",[{\n __m: \"PopoverMenuShowOnHover\"\n },],],1,],[\"m_0_1e\",[\"TimelineCover\",\"m_0_1d\",],[{\n __m: \"m_0_1d\"\n },{\n cover_height: 315,\n cover_width: 851\n },],1,],[\"m_0_1g\",[\"TimelineNavLight\",\"m_0_1f\",],[{\n __m: \"m_0_1f\"\n },],1,],[\"m_0_1n\",[\"Spotlight\",\"LayerHideOnBlur\",\"LayerHideOnEscape\",\"m_0_1o\",],[{\n addedBehaviors: [{\n __m: \"LayerHideOnBlur\"\n },{\n __m: \"LayerHideOnEscape\"\n },],\n attributes: {\n id: \"photos_snowlift\",\n tabindex: \"0\",\n role: \"region\",\n \"aria-label\": \"Facebook Photo Theater\",\n \"aria-busy\": \"true\"\n },\n classNames: [\"fbPhotoSnowlift\",\"fbxPhoto\",]\n },{\n __m: \"m_0_1o\"\n },],3,],[\"m_0_1h\",[\"PopoverLoadingMenu\",\"MenuTheme\",],[{\n theme: {\n __m: \"MenuTheme\"\n }\n },],3,],[\"m_0_1k\",[\"Popover\",\"m_0_1l\",\"m_0_1i\",],[{\n __m: \"m_0_1l\"\n },{\n __m: \"m_0_1i\"\n },[],{\n alignh: \"left\"\n },],3,],],\n elements: [[\"m_0_1c\",\"pagelet_timeline_recent\",2,],[\"m_0_1d\",\"u_0_j\",4,],[\"m_0_1i\",\"u_0_m\",4,],[\"m_0_1p\",\"u_0_o\",2,\"m_0_1o\",],[\"m_0_1f\",\"u_0_k\",2,],[\"m_0_1l\",\"u_0_l\",2,],],\n markup: [[\"m_0_1m\",{\n __html: \"\\u003Cdiv\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_1o\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PRIVATE-uiSpotlight__content\\\"\\u003E\\u003Cdiv class=\\\"fbPhotoSnowliftContainer uiContextualLayerParent\\\" data-ft=\\\"{"type":44}\\\"\\u003E\\u003Cdiv class=\\\"clearfix fbPhotoSnowliftPopup\\\"\\u003E\\u003Cdiv class=\\\"stageWrapper lfloat\\\"\\u003E\\u003Cdiv class=\\\"fbPhotoSnowliftFullScreen fullScreenSwitch\\\" id=\\\"fullScreenSwitch\\\"\\u003E\\u003Ca data-hover=\\\"tooltip\\\" aria-label=\\\"Enter Fullscreen\\\" data-tooltip-position=\\\"below\\\" data-tooltip-alignh=\\\"right\\\" href=\\\"#\\\" id=\\\"fbPhotoSnowliftFullScreenSwitch\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003Ca data-hover=\\\"tooltip\\\" aria-label=\\\"Press Esc to exit fullscreen\\\" data-tooltip-position=\\\"below\\\" data-tooltip-alignh=\\\"right\\\" href=\\\"#\\\" id=\\\"fbPhotoSnowliftFullScreenClose\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"stage\\\"\\u003E\\u003Cdiv class=\\\"fbPhotosCornerWantButton\\\" id=\\\"fbPhotoSnowliftWantButton\\\"\\u003E\\u003C/div\\u003E\\u003Cimg class=\\\"spotlight spotlight\\\" src=\\\"/images/spacer.gif\\\" /\\u003E\\u003Cdiv class=\\\"fbPhotosPhotoTagboxes tagContainer\\\" id=\\\"fbPhotoSnowliftTagBoxes\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fbPhotoTagApproval\\\" id=\\\"fbPhotoSnowliftTagApproval\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbPhotoCVInfo__wrapper\\\" id=\\\"fbPhotoSnowliftComputerVisionInfo\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"videoStage\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"stageActions\\\" id=\\\"snowliftStageActions\\\"\\u003E\\u003Cdiv class=\\\"clearfix snowliftOverlay snowliftOverlayBar rightButtons\\\"\\u003E\\u003Cdiv class=\\\"overlayBarButtons rfloat\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-uiInlineBlock__root -cx-PRIVATE-uiInlineBlock__middle fbPhotosPhotoActions\\\" id=\\\"fbPhotoSnowliftActions\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fbPhotosPhotoButtons\\\" id=\\\"fbPhotoSnowliftButtons\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"mediaTitleInfo\\\"\\u003E\\u003Cdiv class=\\\"mediaTitleBoxFlex\\\"\\u003E\\u003Cdiv id=\\\"fbPhotoSnowliftMediaTitle\\\"\\u003E\\u003C/div\\u003E\\u003Cspan class=\\\"mlm hidden_elem\\\" id=\\\"fbPhotoSnowliftPositionAndCount\\\"\\u003E\\u003C/span\\u003E\\u003Cdiv class=\\\"mediaTitleInfoSpacer\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fbPhotosPhotoTagboxBase newTagBox hidden_elem\\\" style=\\\"\\\"\\u003E\\u003Cdiv class=\\\"borderTagBox\\\"\\u003E\\u003Cdiv class=\\\"innerTagBox\\\"\\u003E\\u003Cdiv class=\\\"ieContentFix\\\"\\u003E\\u00a0\\u00a0\\u00a0\\u00a0\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"tag\\\" style=\\\"\\\"\\u003E\\u003Cdiv class=\\\"tagPointer\\\"\\u003E\\u003Ci class=\\\"tagArrow img sp_3yt8ar sx_077cc0\\\"\\u003E\\u003C/i\\u003E\\u003Cdiv class=\\\"tagName\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Ca class=\\\"snowliftPager prev\\\" title=\\\"Previous\\\"\\u003E\\u003Ci\\u003E\\u003C/i\\u003E\\u003C/a\\u003E\\u003Ca class=\\\"snowliftPager next\\\" title=\\\"Next\\\"\\u003E\\u003Ci\\u003E\\u003C/i\\u003E\\u003C/a\\u003E\\u003Cdiv class=\\\"photoError stageError\\\" id=\\\"fbPhotoSnowliftError\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"rhc photoUfiContainer\\\"\\u003E\\u003Cdiv class=\\\"rhcHeader\\\"\\u003E\\u003Cdiv class=\\\"fbPhotoSnowliftControls\\\"\\u003E\\u003Ca data-hover=\\\"tooltip\\\" aria-label=\\\"Press Esc to close\\\" data-tooltip-position=\\\"below\\\" data-tooltip-alignh=\\\"right\\\" class=\\\"closeTheater\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003Ca data-hover=\\\"tooltip\\\" aria-label=\\\"Press Esc to exit fullscreen\\\" data-tooltip-position=\\\"below\\\" data-tooltip-alignh=\\\"right\\\" class=\\\"closeTheater fullscreenCommentClose\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\\u003Cdiv id=\\\"fbPhotoSnowliftInlineEditor\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cform rel=\\\"async\\\" class=\\\"fbPhotosSnowliftFeedbackForm rhcBody commentable_item autoexpand_mode\\\" method=\\\"post\\\" action=\\\"/ajax/ufi/modify.php\\\" onsubmit=\\\"return window.Event && Event.__inlineSubmit && Event.__inlineSubmit(this,event)\\\" id=\\\"u_0_o\\\"\\u003E\\u003Cinput type=\\\"hidden\\\" name=\\\"charset_test\\\" value=\\\"€,´,\\u20ac,\\u00b4,\\u6c34,\\u0414,\\u0404\\\" /\\u003E\\u003Cinput type=\\\"hidden\\\" name=\\\"fb_dtsg\\\" value=\\\"AQApxIm6\\\" autocomplete=\\\"off\\\" /\\u003E\\u003Cdiv class=\\\"uiScrollableArea rhcScroller native\\\" style=\\\"width:285px;\\\"\\u003E\\u003Cdiv class=\\\"uiScrollableAreaWrap scrollable\\\" aria-label=\\\"Scrollable region\\\" tabindex=\\\"0\\\"\\u003E\\u003Cdiv class=\\\"uiScrollableAreaBody\\\"\\u003E\\u003Cdiv class=\\\"uiScrollableAreaContent\\\"\\u003E\\u003Cspan id=\\\"fbPhotoSnowliftSpecificAudience\\\"\\u003E\\u003C/span\\u003E\\u003Cdiv class=\\\"clearfix fbPhotoSnowliftAuthorInfo\\\"\\u003E\\u003Cdiv class=\\\"lfloat\\\" id=\\\"fbPhotoSnowliftAuthorPic\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv\\u003E\\u003Cdiv class=\\\"fbPhotoContributorName\\\" id=\\\"fbPhotoSnowliftAuthorName\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"mrs fsm fwn fcg\\\"\\u003E\\u003Cspan id=\\\"fbPhotoSnowliftSubscribe\\\"\\u003E\\u003C/span\\u003E\\u003Cspan id=\\\"fbPhotoSnowliftTimestamp\\\"\\u003E\\u003C/span\\u003E\\u003Cdiv class=\\\"mls\\\" id=\\\"fbPhotoSnowliftAudienceSelector\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fsm fwn fcg\\\"\\u003E\\u003Cdiv class=\\\"fbPhotosOnProfile\\\" id=\\\"fbPhotoSnowliftOnProfile\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cspan id=\\\"fbPhotoSnowliftViewOnApp\\\"\\u003E\\u003C/span\\u003E\\u003Cspan id=\\\"fbPhotoSnowliftUseApp\\\"\\u003E\\u003C/span\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv\\u003E\\u003Cspan class=\\\"fbPhotosPhotoCaption\\\" tabindex=\\\"0\\\" aria-live=\\\"polite\\\" data-ft=\\\"{"type":45}\\\" id=\\\"fbPhotoSnowliftCaption\\\"\\u003E\\u003C/span\\u003E\\u003Cspan class=\\\"fbPhotoTagList\\\" id=\\\"fbPhotoSnowliftTagList\\\"\\u003E\\u003C/span\\u003E\\u003Cdiv class=\\\"fbPhotoPagesTagList\\\" id=\\\"fbPhotoSnowliftPagesTagList\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"pts fbPhotoLegacyTagList\\\" id=\\\"fbPhotoSnowliftLegacyTagList\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fbPhotosPhotoOwnerButtons stat_elem\\\" id=\\\"fbPhotoSnowliftOwnerButtons\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fbPhotosSnowliftFeedback\\\" id=\\\"fbPhotoSnowliftFeedback\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fbPhotosSnowboxFeedbackInput\\\" id=\\\"fbPhotoSnowliftFeedbackInput\\\"\\u003E\\u003C/div\\u003E\\u003C/form\\u003E\\u003Cdiv class=\\\"fbPhotosSnowliftProductMetadata\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PUBLIC-snowliftAds__root rhcFooter\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv id=\\\"pagelet_photo_viewer_init\\\" class=\\\"hidden_elem\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },3,],]\n },\n css: [\"j1x0z\",\"UmFO+\",\"veUjj\",],\n bootloadable: {\n PhotoCropper: {\n resources: [\"OH3xD\",\"f7Tpb\",\"UmFO+\",\"AVmr9\",\"gyG67\",\"m+DMw\",\"/MWWQ\",\"za92D\",\"iIySo\",],\n \"module\": true\n }\n },\n resource_map: {\n xfhln: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yV/r/qrynZd4S1j9.js\"\n },\n OYzUx: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yN/r/bD9K1YDrR29.js\"\n },\n \"4kgAq\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y6/r/UTKDDtdCpTB.js\"\n }\n },\n js: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"/MWWQ\",\"nxD7O\",\"xfhln\",\"4kgAq\",\"OYzUx\",\"XH2Cu\",\"gyG67\",\"e0RyX\",],\n displayJS: [\"OH3xD\",],\n id: \"pagelet_main_column_personal\",\n phase: 1\n});"); |
| // 1691 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"bigPipe.onPageletArrive({\n display_dependency: [\"pagelet_main_column_personal\",],\n content: {\n pagelet_escape_hatch: {\n container_id: \"u_0_t\"\n }\n },\n jsmods: {\n require: [[\"AddFriendButton\",\"init\",[\"m_0_1q\",],[{\n __m: \"m_0_1q\"\n },1055580469,false,\"profile_button\",\"none\",\"/ajax/add_friend/action.php\",null,null,null,false,],],[\"m_0_1r\",],[\"FriendListFlyoutController\",\"init\",[\"m_0_1r\",],[{\n __m: \"m_0_1r\"\n },50,],],[\"AddFriendButton\",\"init\",[\"m_0_1t\",],[{\n __m: \"m_0_1t\"\n },1055580469,null,\"profile_button\",\"none\",\"/ajax/add_friend/action.php\",\"\",true,null,false,null,0,],],[\"FriendStatus\",\"setSpecialLists\",[],[{\n close: 1374283956118870,\n acq: \"100006118350059_124542800973931\"\n },],],],\n instances: [[\"m_0_1r\",[\"ContextualDialog\",\"ContextualDialogArrow\",\"ContextualDialogDefaultTheme\",\"LayerRemoveOnHide\",\"LayerHideOnTransition\",\"LayerFadeOnShow\",\"ContextualLayerAutoFlip\",\"DialogHideOnSuccess\",\"m_0_1s\",],[{\n width: 192,\n context: null,\n contextID: null,\n contextSelector: null,\n position: \"below\",\n alignment: \"left\",\n offsetX: 0,\n offsetY: 0,\n arrowBehavior: {\n __m: \"ContextualDialogArrow\"\n },\n theme: {\n __m: \"ContextualDialogDefaultTheme\"\n },\n addedBehaviors: [{\n __m: \"LayerRemoveOnHide\"\n },{\n __m: \"LayerHideOnTransition\"\n },{\n __m: \"LayerFadeOnShow\"\n },{\n __m: \"ContextualLayerAutoFlip\"\n },{\n __m: \"DialogHideOnSuccess\"\n },]\n },{\n __m: \"m_0_1s\"\n },],3,],],\n elements: [[\"m_0_1t\",\"u_0_q\",2,],[\"m_0_1q\",\"u_0_s\",2,],],\n markup: [[\"m_0_1s\",{\n __html: \"\\u003Cdiv\\u003E\\u003Cdiv\\u003E\\u003Cdiv\\u003E\\u003Cdiv class=\\\"FriendListFlyoutLoading\\\"\\u003E\\u003Cimg class=\\\"mvl center img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yk/r/LOOn0JtHNzb.gif\\\" alt=\\\"\\\" width=\\\"16\\\" height=\\\"16\\\" /\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],]\n },\n css: [\"j1x0z\",\"UmFO+\",\"veUjj\",],\n bootloadable: {\n },\n resource_map: {\n cstCX: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yW/r/W9EdqwZ5ZfH.js\"\n }\n },\n js: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"/MWWQ\",\"cstCX\",],\n id: \"pagelet_escape_hatch\",\n phase: 1\n});"); |
| // 1692 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s6a2a298da1b988661b8ec89b154649ff4ef0e491"); |
| // 1693 |
| geval("bigPipe.onPageletArrive({\n display_dependency: [\"pagelet_main_column_personal\",],\n JSBNG__content: {\n pagelet_escape_hatch: {\n container_id: \"u_0_t\"\n }\n },\n jsmods: {\n require: [[\"AddFriendButton\",\"init\",[\"m_0_1q\",],[{\n __m: \"m_0_1q\"\n },1055580469,false,\"profile_button\",\"none\",\"/ajax/add_friend/action.php\",null,null,null,false,],],[\"m_0_1r\",],[\"FriendListFlyoutController\",\"init\",[\"m_0_1r\",],[{\n __m: \"m_0_1r\"\n },50,],],[\"AddFriendButton\",\"init\",[\"m_0_1t\",],[{\n __m: \"m_0_1t\"\n },1055580469,null,\"profile_button\",\"none\",\"/ajax/add_friend/action.php\",\"\",true,null,false,null,0,],],[\"FriendStatus\",\"setSpecialLists\",[],[{\n close: 1374283956118870,\n acq: \"100006118350059_124542800973931\"\n },],],],\n instances: [[\"m_0_1r\",[\"ContextualDialog\",\"ContextualDialogArrow\",\"ContextualDialogDefaultTheme\",\"LayerRemoveOnHide\",\"LayerHideOnTransition\",\"LayerFadeOnShow\",\"ContextualLayerAutoFlip\",\"DialogHideOnSuccess\",\"m_0_1s\",],[{\n width: 192,\n context: null,\n contextID: null,\n contextSelector: null,\n position: \"below\",\n alignment: \"left\",\n offsetX: 0,\n offsetY: 0,\n arrowBehavior: {\n __m: \"ContextualDialogArrow\"\n },\n theme: {\n __m: \"ContextualDialogDefaultTheme\"\n },\n addedBehaviors: [{\n __m: \"LayerRemoveOnHide\"\n },{\n __m: \"LayerHideOnTransition\"\n },{\n __m: \"LayerFadeOnShow\"\n },{\n __m: \"ContextualLayerAutoFlip\"\n },{\n __m: \"DialogHideOnSuccess\"\n },]\n },{\n __m: \"m_0_1s\"\n },],3,],],\n elements: [[\"m_0_1t\",\"u_0_q\",2,],[\"m_0_1q\",\"u_0_s\",2,],],\n markup: [[\"m_0_1s\",{\n __html: \"\\u003Cdiv\\u003E\\u003Cdiv\\u003E\\u003Cdiv\\u003E\\u003Cdiv class=\\\"FriendListFlyoutLoading\\\"\\u003E\\u003Cimg class=\\\"mvl center img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yk/r/LOOn0JtHNzb.gif\\\" alt=\\\"\\\" width=\\\"16\\\" height=\\\"16\\\" /\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],]\n },\n css: [\"j1x0z\",\"UmFO+\",\"veUjj\",],\n bootloadable: {\n },\n resource_map: {\n cstCX: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yW/r/W9EdqwZ5ZfH.js\"\n }\n },\n js: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"/MWWQ\",\"cstCX\",],\n id: \"pagelet_escape_hatch\",\n phase: 1\n});"); |
| // 1745 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"bigPipe.onPageletArrive({\n display_dependency: [\"pagelet_main_column_personal\",],\n content: {\n pagelet_above_header_timeline: \"\"\n },\n jsmods: {\n require: [[\"m_0_1u\",],[\"m_0_1w\",],[\"TimelineCurationNUXController\",\"init\",[\"m_0_1u\",\"m_0_1w\",],[{\n next_step: \"add_button\",\n dialogs: {\n add_button: {\n __m: \"m_0_1u\"\n },\n privacy: {\n __m: \"m_0_1w\"\n }\n }\n },],],],\n instances: [[\"m_0_1u\",[\"ContextualDialog\",\"ContextualDialogArrow\",\"ContextualDialogDefaultTheme\",\"LayerRemoveOnHide\",\"LayerHideOnTransition\",\"LayerFadeOnShow\",\"m_0_1v\",],[{\n width: 300,\n context: null,\n contextID: null,\n contextSelector: null,\n position: \"above\",\n alignment: \"left\",\n offsetX: 0,\n offsetY: 0,\n arrowBehavior: {\n __m: \"ContextualDialogArrow\"\n },\n theme: {\n __m: \"ContextualDialogDefaultTheme\"\n },\n addedBehaviors: [{\n __m: \"LayerRemoveOnHide\"\n },{\n __m: \"LayerHideOnTransition\"\n },{\n __m: \"LayerFadeOnShow\"\n },]\n },{\n __m: \"m_0_1v\"\n },],3,],[\"m_0_1w\",[\"ContextualDialog\",\"ContextualDialogArrow\",\"ContextualDialogDefaultTheme\",\"LayerRemoveOnHide\",\"LayerHideOnTransition\",\"LayerFadeOnShow\",\"ContextualLayerAutoFlip\",\"DialogHideOnSuccess\",\"m_0_1x\",],[{\n width: 300,\n context: null,\n contextID: null,\n contextSelector: null,\n position: \"right\",\n alignment: \"left\",\n offsetX: 0,\n offsetY: 0,\n arrowBehavior: {\n __m: \"ContextualDialogArrow\"\n },\n theme: {\n __m: \"ContextualDialogDefaultTheme\"\n },\n addedBehaviors: [{\n __m: \"LayerRemoveOnHide\"\n },{\n __m: \"LayerHideOnTransition\"\n },{\n __m: \"LayerFadeOnShow\"\n },{\n __m: \"ContextualLayerAutoFlip\"\n },{\n __m: \"DialogHideOnSuccess\"\n },]\n },{\n __m: \"m_0_1x\"\n },],3,],],\n define: [[\"NumberFormatConfig\",[],{\n decimalSeparator: \".\",\n numberDelimiter: \",\"\n },54,],[\"TimelineDynamicSectionConfig\",[\"m_0_1y\",\"m_0_1z\",\"m_0_20\",],{\n smallThrobber: {\n __m: \"m_0_1y\"\n },\n pager: {\n __m: \"m_0_1z\"\n },\n throbber: {\n __m: \"m_0_20\"\n },\n skmapping: {\n friends_recent: \"friends\",\n friends_all: \"friends\",\n friends_mutual: \"friends\",\n photos_of: \"photos\",\n photos_all: \"photos\",\n photos_albums: \"photos\",\n likes_recent: \"likes\",\n info_all: \"info\",\n music_my_music: \"music\",\n music_favs: \"music\",\n music_playlists: \"music\",\n places_all: \"map\",\n books_read: \"books\",\n books_favorite: \"books\",\n books_want: \"books\",\n places_recent: null,\n fitness_overview: \"fitness\",\n fitness_daily_activity: null,\n fitness_sports_i_play: null,\n friends_featured: null,\n places_want: null,\n info_basic: \"info\",\n info_contact: null,\n fitness_running: \"fitness\",\n fitness_cycling: \"fitness\",\n friends_followers: \"friends\",\n friends_following: \"friends\",\n music_radio: \"music\",\n info_history: \"info\",\n games_play: \"games\",\n products_want: null,\n photos_archive: \"photos\",\n notes_my_notes: \"notes\",\n notes_drafts: \"notes\",\n notes_about_me: \"notes\",\n likes_sports_teams: \"likes\",\n likes_activities: \"likes\",\n likes_interests: \"likes\",\n likes_other: \"likes\",\n video_movies_watch: \"movies\",\n video_tv_show_watch: \"tv\",\n music_saved: \"music\",\n video_movies_want: \"movies\",\n video_tv_show_want: \"tv\",\n video_movies_favorite: \"movies\",\n video_tv_show_favorite: \"tv\",\n friends_high_school: \"friends\",\n friends_college: \"friends\",\n friends_work: \"friends\",\n friends_suggested: \"friends\",\n apps_like: \"games\",\n upcoming_events: \"events\",\n past_events: \"events\",\n likes_people: \"likes\",\n likes_sports: \"likes\",\n likes_athletes: \"likes\",\n fitness_report: null,\n groups_member: \"groups\",\n music_all_time: \"music\",\n music_heavy_rotation: \"music\",\n photos_album: \"photos\",\n photos_untagged: \"photos\",\n music_mutual: \"music\",\n likes_foods: \"likes\",\n likes_restaurants: \"likes\",\n restaurants_visited: \"restaurants\",\n restaurants_want: \"restaurants\",\n likes_websites: \"likes\",\n likes_clothing: \"likes\",\n followers: \"friends\",\n following: \"friends\",\n media_set: \"photos\",\n photos_stream: \"photos\",\n photos_synced: \"photos\"\n }\n },68,],[\"AppSectionCurationState\",[],{\n showItems: \"show_items\",\n showApps: \"show_apps\",\n hide: \"hide\"\n },145,],[\"AdsCurrencyConfig\",[],{\n currencies: {\n ARS: [\"{symbol} {amount}\",\"$\",100,],\n AUD: [\"{symbol}{amount}\",\"$\",100,],\n BOB: [\"{symbol} {amount}\",\"$b\",100,],\n BRL: [\"{symbol} {amount}\",\"R$\",100,],\n GBP: [\"{symbol}{amount}\",\"\\u00a3\",100,],\n CAD: [\"{symbol}{amount}\",\"$\",100,],\n CLP: [\"{symbol} {amount}\",\"$\",1,],\n CNY: [\"{amount} {symbol}\",\"\\uffe5\",100,],\n COP: [\"{symbol} {amount}\",\"$\",1,],\n CRC: [\"{symbol}{amount}\",\"\\u20a1\",1,],\n CZK: [\"{amount} {symbol}\",\"K\\u010d\",100,],\n DKK: [\"{symbol} {amount}\",\"DKK\",100,],\n EUR: [\"{symbol} {amount}\",\"\\u20ac\",100,],\n GTQ: [\"{symbol}{amount}\",\"Q\",100,],\n HNL: [\"{symbol} {amount}\",\"L.\",100,],\n HKD: [\"{symbol}{amount}\",\"$\",100,],\n HUF: [\"{amount} {symbol}\",\"Ft\",1,],\n ISK: [\"{amount} {symbol}\",\"kr.\",1,],\n INR: [\"{symbol} {amount}\",\"\\u0930\\u0941\",100,],\n IDR: [\"{symbol} {amount}\",\"Rp\",1,],\n ILS: [\"{symbol} {amount}\",\"\\u20aa\",100,],\n JPY: [\"{symbol}{amount}\",\"\\u00a5\",1,],\n KRW: [\"{symbol}{amount}\",\"\\u20a9\",1,],\n MOP: [\"{symbol}{amount}\",\"MOP\",100,],\n MYR: [\"{symbol}{amount}\",\"R\",100,],\n MXN: [\"{symbol}{amount}\",\"$\",100,],\n NZD: [\"{amount}{symbol}\",\"$\",100,],\n NIO: [\"{symbol} {amount}\",\"C$\",100,],\n NOK: [\"{symbol} {amount}\",\"NOK\",100,],\n PYG: [\"{symbol} {amount}\",\"Gs\",1,],\n PEN: [\"{symbol} {amount}\",\"S/.\",100,],\n PHP: [\"{symbol}{amount}\",\"Php\",100,],\n PLN: [\"{amount} {symbol}\",\"z\\u0142\",100,],\n QAR: [\"{amount} {symbol}\",\"\\u0631.\\u0642.\",100,],\n RON: [\"{amount} {symbol}\",\"lei\",100,],\n RUB: [\"{amount}{symbol}\",\"RUB\",100,],\n SAR: [\"{amount} {symbol}\",\"\\u0631.\\u0633.\",100,],\n SGD: [\"{symbol}{amount}\",\"$\",100,],\n ZAR: [\"{symbol} {amount}\",\"R\",100,],\n SEK: [\"{amount} {symbol}\",\"kr\",100,],\n CHF: [\"{symbol} {amount}\",\"CHF\",100,],\n TWD: [\"{symbol}{amount}\",\"NT$\",1,],\n THB: [\"{symbol}{amount}\",\"\\u0e3f\",100,],\n TRY: [\"{amount} {symbol}\",\"TL\",100,],\n AED: [\"{amount} {symbol}\",\"\\u062f.\\u0625.\",100,],\n USD: [\"{symbol}{amount}\",\"$\",100,],\n UYU: [\"{symbol} {amount}\",\"$U\",100,],\n VEF: [\"{symbol} {amount}\",\"Bs\",100,],\n VND: [\"{amount} {symbol}\",\"\\u20ab\",1,]\n }\n },168,],],\n markup: [[\"m_0_1y\",{\n __html: \"\\u003Cimg class=\\\"img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yb/r/GsNJNwuI-UM.gif\\\" alt=\\\"\\\" width=\\\"16\\\" height=\\\"11\\\" /\\u003E\"\n },2,],[\"m_0_20\",{\n __html: \"\\u003Cimg class=\\\"-cx-PRIVATE-fbTimelineMedley__throbber img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y9/r/jKEcVPZFk-2.gif\\\" alt=\\\"\\\" width=\\\"32\\\" height=\\\"32\\\" /\\u003E\"\n },2,],[\"m_0_1v\",{\n __html: \"\\u003Cdiv\\u003E\\u003Cdiv class=\\\"-cx-PUBLIC-abstractContextualDialog__defaultpadding\\\"\\u003E\\u003Cdiv\\u003E\\u003Ca data-hover=\\\"tooltip\\\" aria-label=\\\"Close\\\" class=\\\"layerButton rfloat uiCloseButton uiCloseButtonSmall\\\" href=\\\"#\\\" role=\\\"button\\\" data-action=\\\"close\\\"\\u003E\\u003C/a\\u003EUse the [+] button or search tool to add a story about movies, books or something else you enjoy.\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"uiOverlayFooter -cx-PUBLIC-abstractContextualDialog__footer uiBoxGray topborder\\\"\\u003E\\u003Ca class=\\\"-cx-PRIVATE-abstractButton__root -cx-PRIVATE-uiButton__root layerButton uiOverlayButton selected -cx-PRIVATE-uiButton__confirm\\\" role=\\\"button\\\" href=\\\"#\\\" data-action=\\\"next\\\"\\u003ENext\\u003C/a\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_1z\",{\n __html: \"\\u003Ca class=\\\"-cx-PRIVATE-fbTimelineMedleyPager__root\\\" href=\\\"#\\\" data-referrer=\\\"timeline_collections_overview_see_all\\\" role=\\\"button\\\"\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-fbTimelineMedleyPager__text fwb\\\"\\u003ESee All\\u003C/span\\u003E\\u003Cimg class=\\\"uiLoadingIndicatorAsync img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yb/r/GsNJNwuI-UM.gif\\\" alt=\\\"\\\" width=\\\"16\\\" height=\\\"11\\\" /\\u003E\\u003C/a\\u003E\"\n },2,],[\"m_0_1x\",{\n __html: \"\\u003Cdiv\\u003E\\u003Cdiv class=\\\"-cx-PUBLIC-abstractContextualDialog__defaultpadding\\\"\\u003E\\u003Cdiv\\u003E\\u003Ca data-hover=\\\"tooltip\\\" aria-label=\\\"Close\\\" class=\\\"layerButton rfloat uiCloseButton uiCloseButtonSmall\\\" href=\\\"#\\\" role=\\\"button\\\" data-action=\\\"done\\\"\\u003E\\u003C/a\\u003EUse the audience selector to choose who can see what you add [+].\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"uiOverlayFooter -cx-PUBLIC-abstractContextualDialog__footer uiBoxGray topborder\\\"\\u003E\\u003Ca class=\\\"-cx-PRIVATE-abstractButton__root -cx-PRIVATE-uiButton__root layerButton uiOverlayButton selected -cx-PRIVATE-uiButton__confirm\\\" role=\\\"button\\\" href=\\\"#\\\" data-action=\\\"done\\\"\\u003EDone\\u003C/a\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],]\n },\n css: [\"UmFO+\",\"veUjj\",\"j1x0z\",],\n bootloadable: {\n },\n resource_map: {\n },\n js: [\"OH3xD\",\"AVmr9\",\"f7Tpb\",\"/MWWQ\",\"nxD7O\",\"4kgAq\",\"XH2Cu\",],\n id: \"pagelet_above_header_timeline\",\n phase: 1\n});"); |
| // 1746 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s65e5cb4a6bc44b128757c40efe7cb937f631c660"); |
| // 1747 |
| geval("bigPipe.onPageletArrive({\n display_dependency: [\"pagelet_main_column_personal\",],\n JSBNG__content: {\n pagelet_above_header_timeline: \"\"\n },\n jsmods: {\n require: [[\"m_0_1u\",],[\"m_0_1w\",],[\"TimelineCurationNUXController\",\"init\",[\"m_0_1u\",\"m_0_1w\",],[{\n next_step: \"add_button\",\n dialogs: {\n add_button: {\n __m: \"m_0_1u\"\n },\n privacy: {\n __m: \"m_0_1w\"\n }\n }\n },],],],\n instances: [[\"m_0_1u\",[\"ContextualDialog\",\"ContextualDialogArrow\",\"ContextualDialogDefaultTheme\",\"LayerRemoveOnHide\",\"LayerHideOnTransition\",\"LayerFadeOnShow\",\"m_0_1v\",],[{\n width: 300,\n context: null,\n contextID: null,\n contextSelector: null,\n position: \"above\",\n alignment: \"left\",\n offsetX: 0,\n offsetY: 0,\n arrowBehavior: {\n __m: \"ContextualDialogArrow\"\n },\n theme: {\n __m: \"ContextualDialogDefaultTheme\"\n },\n addedBehaviors: [{\n __m: \"LayerRemoveOnHide\"\n },{\n __m: \"LayerHideOnTransition\"\n },{\n __m: \"LayerFadeOnShow\"\n },]\n },{\n __m: \"m_0_1v\"\n },],3,],[\"m_0_1w\",[\"ContextualDialog\",\"ContextualDialogArrow\",\"ContextualDialogDefaultTheme\",\"LayerRemoveOnHide\",\"LayerHideOnTransition\",\"LayerFadeOnShow\",\"ContextualLayerAutoFlip\",\"DialogHideOnSuccess\",\"m_0_1x\",],[{\n width: 300,\n context: null,\n contextID: null,\n contextSelector: null,\n position: \"right\",\n alignment: \"left\",\n offsetX: 0,\n offsetY: 0,\n arrowBehavior: {\n __m: \"ContextualDialogArrow\"\n },\n theme: {\n __m: \"ContextualDialogDefaultTheme\"\n },\n addedBehaviors: [{\n __m: \"LayerRemoveOnHide\"\n },{\n __m: \"LayerHideOnTransition\"\n },{\n __m: \"LayerFadeOnShow\"\n },{\n __m: \"ContextualLayerAutoFlip\"\n },{\n __m: \"DialogHideOnSuccess\"\n },]\n },{\n __m: \"m_0_1x\"\n },],3,],],\n define: [[\"NumberFormatConfig\",[],{\n decimalSeparator: \".\",\n numberDelimiter: \",\"\n },54,],[\"TimelineDynamicSectionConfig\",[\"m_0_1y\",\"m_0_1z\",\"m_0_20\",],{\n smallThrobber: {\n __m: \"m_0_1y\"\n },\n pager: {\n __m: \"m_0_1z\"\n },\n throbber: {\n __m: \"m_0_20\"\n },\n skmapping: {\n friends_recent: \"friends\",\n friends_all: \"friends\",\n friends_mutual: \"friends\",\n photos_of: \"photos\",\n photos_all: \"photos\",\n photos_albums: \"photos\",\n likes_recent: \"likes\",\n info_all: \"info\",\n music_my_music: \"music\",\n music_favs: \"music\",\n music_playlists: \"music\",\n places_all: \"map\",\n books_read: \"books\",\n books_favorite: \"books\",\n books_want: \"books\",\n places_recent: null,\n fitness_overview: \"fitness\",\n fitness_daily_activity: null,\n fitness_sports_i_play: null,\n friends_featured: null,\n places_want: null,\n info_basic: \"info\",\n info_contact: null,\n fitness_running: \"fitness\",\n fitness_cycling: \"fitness\",\n friends_followers: \"friends\",\n friends_following: \"friends\",\n music_radio: \"music\",\n info_history: \"info\",\n games_play: \"games\",\n products_want: null,\n photos_archive: \"photos\",\n notes_my_notes: \"notes\",\n notes_drafts: \"notes\",\n notes_about_me: \"notes\",\n likes_sports_teams: \"likes\",\n likes_activities: \"likes\",\n likes_interests: \"likes\",\n likes_other: \"likes\",\n video_movies_watch: \"movies\",\n video_tv_show_watch: \"tv\",\n music_saved: \"music\",\n video_movies_want: \"movies\",\n video_tv_show_want: \"tv\",\n video_movies_favorite: \"movies\",\n video_tv_show_favorite: \"tv\",\n friends_high_school: \"friends\",\n friends_college: \"friends\",\n friends_work: \"friends\",\n friends_suggested: \"friends\",\n apps_like: \"games\",\n upcoming_events: \"events\",\n past_events: \"events\",\n likes_people: \"likes\",\n likes_sports: \"likes\",\n likes_athletes: \"likes\",\n fitness_report: null,\n groups_member: \"groups\",\n music_all_time: \"music\",\n music_heavy_rotation: \"music\",\n photos_album: \"photos\",\n photos_untagged: \"photos\",\n music_mutual: \"music\",\n likes_foods: \"likes\",\n likes_restaurants: \"likes\",\n restaurants_visited: \"restaurants\",\n restaurants_want: \"restaurants\",\n likes_websites: \"likes\",\n likes_clothing: \"likes\",\n followers: \"friends\",\n following: \"friends\",\n media_set: \"photos\",\n photos_stream: \"photos\",\n photos_synced: \"photos\"\n }\n },68,],[\"AppSectionCurationState\",[],{\n showItems: \"show_items\",\n showApps: \"show_apps\",\n hide: \"hide\"\n },145,],[\"AdsCurrencyConfig\",[],{\n currencies: {\n ARS: [\"{symbol} {amount}\",\"$\",100,],\n AUD: [\"{symbol}{amount}\",\"$\",100,],\n BOB: [\"{symbol} {amount}\",\"$b\",100,],\n BRL: [\"{symbol} {amount}\",\"R$\",100,],\n GBP: [\"{symbol}{amount}\",\"\\u00a3\",100,],\n CAD: [\"{symbol}{amount}\",\"$\",100,],\n CLP: [\"{symbol} {amount}\",\"$\",1,],\n CNY: [\"{amount} {symbol}\",\"\\uffe5\",100,],\n COP: [\"{symbol} {amount}\",\"$\",1,],\n CRC: [\"{symbol}{amount}\",\"\\u20a1\",1,],\n CZK: [\"{amount} {symbol}\",\"K\\u010d\",100,],\n DKK: [\"{symbol} {amount}\",\"DKK\",100,],\n EUR: [\"{symbol} {amount}\",\"\\u20ac\",100,],\n GTQ: [\"{symbol}{amount}\",\"Q\",100,],\n HNL: [\"{symbol} {amount}\",\"L.\",100,],\n HKD: [\"{symbol}{amount}\",\"$\",100,],\n HUF: [\"{amount} {symbol}\",\"Ft\",1,],\n ISK: [\"{amount} {symbol}\",\"kr.\",1,],\n INR: [\"{symbol} {amount}\",\"\\u0930\\u0941\",100,],\n IDR: [\"{symbol} {amount}\",\"Rp\",1,],\n ILS: [\"{symbol} {amount}\",\"\\u20aa\",100,],\n JPY: [\"{symbol}{amount}\",\"\\u00a5\",1,],\n KRW: [\"{symbol}{amount}\",\"\\u20a9\",1,],\n MOP: [\"{symbol}{amount}\",\"MOP\",100,],\n MYR: [\"{symbol}{amount}\",\"R\",100,],\n MXN: [\"{symbol}{amount}\",\"$\",100,],\n NZD: [\"{amount}{symbol}\",\"$\",100,],\n NIO: [\"{symbol} {amount}\",\"C$\",100,],\n NOK: [\"{symbol} {amount}\",\"NOK\",100,],\n PYG: [\"{symbol} {amount}\",\"Gs\",1,],\n PEN: [\"{symbol} {amount}\",\"S/.\",100,],\n PHP: [\"{symbol}{amount}\",\"Php\",100,],\n PLN: [\"{amount} {symbol}\",\"z\\u0142\",100,],\n QAR: [\"{amount} {symbol}\",\"\\u0631.\\u0642.\",100,],\n RON: [\"{amount} {symbol}\",\"lei\",100,],\n RUB: [\"{amount}{symbol}\",\"RUB\",100,],\n SAR: [\"{amount} {symbol}\",\"\\u0631.\\u0633.\",100,],\n SGD: [\"{symbol}{amount}\",\"$\",100,],\n ZAR: [\"{symbol} {amount}\",\"R\",100,],\n SEK: [\"{amount} {symbol}\",\"kr\",100,],\n CHF: [\"{symbol} {amount}\",\"CHF\",100,],\n TWD: [\"{symbol}{amount}\",\"NT$\",1,],\n THB: [\"{symbol}{amount}\",\"\\u0e3f\",100,],\n TRY: [\"{amount} {symbol}\",\"TL\",100,],\n AED: [\"{amount} {symbol}\",\"\\u062f.\\u0625.\",100,],\n USD: [\"{symbol}{amount}\",\"$\",100,],\n UYU: [\"{symbol} {amount}\",\"$U\",100,],\n VEF: [\"{symbol} {amount}\",\"Bs\",100,],\n VND: [\"{amount} {symbol}\",\"\\u20ab\",1,]\n }\n },168,],],\n markup: [[\"m_0_1y\",{\n __html: \"\\u003Cimg class=\\\"img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yb/r/GsNJNwuI-UM.gif\\\" alt=\\\"\\\" width=\\\"16\\\" height=\\\"11\\\" /\\u003E\"\n },2,],[\"m_0_20\",{\n __html: \"\\u003Cimg class=\\\"-cx-PRIVATE-fbTimelineMedley__throbber img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y9/r/jKEcVPZFk-2.gif\\\" alt=\\\"\\\" width=\\\"32\\\" height=\\\"32\\\" /\\u003E\"\n },2,],[\"m_0_1v\",{\n __html: \"\\u003Cdiv\\u003E\\u003Cdiv class=\\\"-cx-PUBLIC-abstractContextualDialog__defaultpadding\\\"\\u003E\\u003Cdiv\\u003E\\u003Ca data-hover=\\\"tooltip\\\" aria-label=\\\"Close\\\" class=\\\"layerButton rfloat uiCloseButton uiCloseButtonSmall\\\" href=\\\"#\\\" role=\\\"button\\\" data-action=\\\"close\\\"\\u003E\\u003C/a\\u003EUse the [+] button or search tool to add a story about movies, books or something else you enjoy.\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"uiOverlayFooter -cx-PUBLIC-abstractContextualDialog__footer uiBoxGray topborder\\\"\\u003E\\u003Ca class=\\\"-cx-PRIVATE-abstractButton__root -cx-PRIVATE-uiButton__root layerButton uiOverlayButton selected -cx-PRIVATE-uiButton__confirm\\\" role=\\\"button\\\" href=\\\"#\\\" data-action=\\\"next\\\"\\u003ENext\\u003C/a\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_1z\",{\n __html: \"\\u003Ca class=\\\"-cx-PRIVATE-fbTimelineMedleyPager__root\\\" href=\\\"#\\\" data-referrer=\\\"timeline_collections_overview_see_all\\\" role=\\\"button\\\"\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-fbTimelineMedleyPager__text fwb\\\"\\u003ESee All\\u003C/span\\u003E\\u003Cimg class=\\\"uiLoadingIndicatorAsync img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yb/r/GsNJNwuI-UM.gif\\\" alt=\\\"\\\" width=\\\"16\\\" height=\\\"11\\\" /\\u003E\\u003C/a\\u003E\"\n },2,],[\"m_0_1x\",{\n __html: \"\\u003Cdiv\\u003E\\u003Cdiv class=\\\"-cx-PUBLIC-abstractContextualDialog__defaultpadding\\\"\\u003E\\u003Cdiv\\u003E\\u003Ca data-hover=\\\"tooltip\\\" aria-label=\\\"Close\\\" class=\\\"layerButton rfloat uiCloseButton uiCloseButtonSmall\\\" href=\\\"#\\\" role=\\\"button\\\" data-action=\\\"done\\\"\\u003E\\u003C/a\\u003EUse the audience selector to choose who can see what you add [+].\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"uiOverlayFooter -cx-PUBLIC-abstractContextualDialog__footer uiBoxGray topborder\\\"\\u003E\\u003Ca class=\\\"-cx-PRIVATE-abstractButton__root -cx-PRIVATE-uiButton__root layerButton uiOverlayButton selected -cx-PRIVATE-uiButton__confirm\\\" role=\\\"button\\\" href=\\\"#\\\" data-action=\\\"done\\\"\\u003EDone\\u003C/a\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],]\n },\n css: [\"UmFO+\",\"veUjj\",\"j1x0z\",],\n bootloadable: {\n },\n resource_map: {\n },\n js: [\"OH3xD\",\"AVmr9\",\"f7Tpb\",\"/MWWQ\",\"nxD7O\",\"4kgAq\",\"XH2Cu\",],\n id: \"pagelet_above_header_timeline\",\n phase: 1\n});"); |
| // 1791 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"bigPipe.onPageletArrive({\n display_dependency: [\"pagelet_main_column_personal\",],\n is_last: true,\n content: {\n pagelet_timeline_profile_actions: {\n container_id: \"u_0_18\"\n }\n },\n jsmods: {\n require: [[\"m_0_21\",],[\"m_0_22\",],[\"ButtonGroupMonitor\",],[\"SelectorDeprecated\",],[\"m_0_26\",],[\"SubscribeButton\",\"init\",[\"m_0_29\",\"m_0_28\",\"m_0_2a\",],[{\n __m: \"m_0_29\"\n },{\n __m: \"m_0_28\"\n },{\n __m: \"m_0_2a\"\n },\"1055580469\",0,false,],],[\"m_0_29\",],[\"m_0_2a\",],[\"m_0_2f\",],[\"m_0_2e\",],[\"AddFriendButton\",\"init\",[\"m_0_2i\",],[{\n __m: \"m_0_2i\"\n },1055580469,\"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby?sk=wall\",\"profile_button\",\"none\",\"/ajax/add_friend/action.php\",\"\",true,null,false,null,0,],],[\"FriendStatus\",\"setSpecialLists\",[],[{\n close: 1374283956118870,\n acq: \"100006118350059_124542800973931\"\n },],],],\n instances: [[\"m_0_21\",[\"ButtonGroup\",\"m_0_23\",],[{\n __m: \"m_0_23\"\n },],1,],[\"m_0_22\",[\"ButtonGroup\",\"m_0_24\",],[{\n __m: \"m_0_24\"\n },],1,],[\"m_0_29\",[\"SwapButtonDEPRECATED\",\"m_0_28\",\"m_0_2b\",],[{\n __m: \"m_0_28\"\n },{\n __m: \"m_0_2b\"\n },false,],3,],[\"m_0_26\",[\"AsyncMenu\",\"m_0_27\",],[\"/ajax/lists/interests_submenu.php?profile_id=1055580469&list_location=gear_menu\",{\n __m: \"m_0_27\"\n },],2,],[\"m_0_2a\",[\"HoverButton\",\"m_0_2c\",\"m_0_2e\",\"m_0_2d\",],[{\n __m: \"m_0_2c\"\n },{\n __m: \"m_0_2e\"\n },{\n __m: \"m_0_2d\"\n },\"/ajax/lists/interests_menu.php?profile_id=1055580469&list_location=follow_1&follow_location=1\",],3,],[\"m_0_2f\",[\"ContextualDialog\",\"ContextualDialogArrow\",\"ContextualDialogDefaultTheme\",\"LayerRemoveOnHide\",\"LayerHideOnTransition\",\"LayerFadeOnShow\",\"LayerHideOnEscape\",\"ContextualLayerAutoFlip\",\"DialogHideOnSuccess\",\"m_0_2g\",],[{\n width: null,\n context: null,\n contextID: null,\n contextSelector: null,\n position: \"below\",\n alignment: \"left\",\n offsetX: 0,\n offsetY: 0,\n arrowBehavior: {\n __m: \"ContextualDialogArrow\"\n },\n theme: {\n __m: \"ContextualDialogDefaultTheme\"\n },\n addedBehaviors: [{\n __m: \"LayerRemoveOnHide\"\n },{\n __m: \"LayerHideOnTransition\"\n },{\n __m: \"LayerFadeOnShow\"\n },{\n __m: \"LayerHideOnEscape\"\n },{\n __m: \"ContextualLayerAutoFlip\"\n },{\n __m: \"DialogHideOnSuccess\"\n },]\n },{\n __m: \"m_0_2g\"\n },],3,],[\"m_0_2e\",[\"HoverFlyout\",\"m_0_2f\",\"m_0_2h\",],[{\n __m: \"m_0_2f\"\n },{\n __m: \"m_0_2h\"\n },150,150,],3,],],\n elements: [[\"m_0_2b\",\"u_0_13\",2,],[\"m_0_2i\",\"u_0_16\",2,],[\"m_0_2d\",\"u_0_14\",2,\"m_0_2g\",],[\"m_0_2c\",\"u_0_13\",2,],[\"m_0_24\",\"u_0_v\",2,],[\"m_0_2h\",\"u_0_13\",2,],[\"m_0_27\",\"u_0_11\",2,],[\"m_0_25\",\"u_0_w\",2,],[\"m_0_23\",\"u_0_u\",2,],[\"m_0_28\",\"u_0_12\",4,],],\n markup: [[\"m_0_2g\",{\n __html: \"\\u003Cdiv\\u003E\\u003Cdiv\\u003E\\u003Cdiv\\u003E\\u003Cdiv id=\\\"u_0_14\\\"\\u003E\\u003Cimg class=\\\"mal pal -cx-PRIVATE-uiHoverButton__loading center img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yk/r/LOOn0JtHNzb.gif\\\" alt=\\\"\\\" width=\\\"16\\\" height=\\\"16\\\" /\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },3,],]\n },\n css: [\"UmFO+\",\"veUjj\",\"j1x0z\",],\n bootloadable: {\n },\n resource_map: {\n dShSX: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yZ/r/JdjE3mVpxG6.js\"\n }\n },\n js: [\"OH3xD\",\"/MWWQ\",\"AVmr9\",\"f7Tpb\",\"nxD7O\",\"4kgAq\",\"dShSX\",\"OYzUx\",\"cstCX\",],\n jscc_map: \"({\\\"jo0ho56azciA4s4HSJ0\\\":function(){return new SubMenu()}})\",\n onload: [\"JSCC.get(\\\"jo0ho56azciA4s4HSJ0\\\").init($(\\\"u_0_x\\\"), $(\\\"u_0_y\\\"), $(\\\"u_0_z\\\"), $(\\\"u_0_10\\\"));\",\"JSCC.get(\\\"jo0ho56azciA4s4HSJ0\\\").initAsyncChildMenu(require(\\\"m_0_26\\\"));\",],\n id: \"pagelet_timeline_profile_actions\",\n phase: 1\n});"); |
| // 1792 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s78d34a342a9c2347cf56ff34ec7f40ed3a8bdb78"); |
| // 1793 |
| geval("bigPipe.onPageletArrive({\n display_dependency: [\"pagelet_main_column_personal\",],\n is_last: true,\n JSBNG__content: {\n pagelet_timeline_profile_actions: {\n container_id: \"u_0_18\"\n }\n },\n jsmods: {\n require: [[\"m_0_21\",],[\"m_0_22\",],[\"ButtonGroupMonitor\",],[\"SelectorDeprecated\",],[\"m_0_26\",],[\"SubscribeButton\",\"init\",[\"m_0_29\",\"m_0_28\",\"m_0_2a\",],[{\n __m: \"m_0_29\"\n },{\n __m: \"m_0_28\"\n },{\n __m: \"m_0_2a\"\n },\"1055580469\",0,false,],],[\"m_0_29\",],[\"m_0_2a\",],[\"m_0_2f\",],[\"m_0_2e\",],[\"AddFriendButton\",\"init\",[\"m_0_2i\",],[{\n __m: \"m_0_2i\"\n },1055580469,\"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby?sk=wall\",\"profile_button\",\"none\",\"/ajax/add_friend/action.php\",\"\",true,null,false,null,0,],],[\"FriendStatus\",\"setSpecialLists\",[],[{\n close: 1374283956118870,\n acq: \"100006118350059_124542800973931\"\n },],],],\n instances: [[\"m_0_21\",[\"ButtonGroup\",\"m_0_23\",],[{\n __m: \"m_0_23\"\n },],1,],[\"m_0_22\",[\"ButtonGroup\",\"m_0_24\",],[{\n __m: \"m_0_24\"\n },],1,],[\"m_0_29\",[\"SwapButtonDEPRECATED\",\"m_0_28\",\"m_0_2b\",],[{\n __m: \"m_0_28\"\n },{\n __m: \"m_0_2b\"\n },false,],3,],[\"m_0_26\",[\"AsyncMenu\",\"m_0_27\",],[\"/ajax/lists/interests_submenu.php?profile_id=1055580469&list_location=gear_menu\",{\n __m: \"m_0_27\"\n },],2,],[\"m_0_2a\",[\"HoverButton\",\"m_0_2c\",\"m_0_2e\",\"m_0_2d\",],[{\n __m: \"m_0_2c\"\n },{\n __m: \"m_0_2e\"\n },{\n __m: \"m_0_2d\"\n },\"/ajax/lists/interests_menu.php?profile_id=1055580469&list_location=follow_1&follow_location=1\",],3,],[\"m_0_2f\",[\"ContextualDialog\",\"ContextualDialogArrow\",\"ContextualDialogDefaultTheme\",\"LayerRemoveOnHide\",\"LayerHideOnTransition\",\"LayerFadeOnShow\",\"LayerHideOnEscape\",\"ContextualLayerAutoFlip\",\"DialogHideOnSuccess\",\"m_0_2g\",],[{\n width: null,\n context: null,\n contextID: null,\n contextSelector: null,\n position: \"below\",\n alignment: \"left\",\n offsetX: 0,\n offsetY: 0,\n arrowBehavior: {\n __m: \"ContextualDialogArrow\"\n },\n theme: {\n __m: \"ContextualDialogDefaultTheme\"\n },\n addedBehaviors: [{\n __m: \"LayerRemoveOnHide\"\n },{\n __m: \"LayerHideOnTransition\"\n },{\n __m: \"LayerFadeOnShow\"\n },{\n __m: \"LayerHideOnEscape\"\n },{\n __m: \"ContextualLayerAutoFlip\"\n },{\n __m: \"DialogHideOnSuccess\"\n },]\n },{\n __m: \"m_0_2g\"\n },],3,],[\"m_0_2e\",[\"HoverFlyout\",\"m_0_2f\",\"m_0_2h\",],[{\n __m: \"m_0_2f\"\n },{\n __m: \"m_0_2h\"\n },150,150,],3,],],\n elements: [[\"m_0_2b\",\"u_0_13\",2,],[\"m_0_2i\",\"u_0_16\",2,],[\"m_0_2d\",\"u_0_14\",2,\"m_0_2g\",],[\"m_0_2c\",\"u_0_13\",2,],[\"m_0_24\",\"u_0_v\",2,],[\"m_0_2h\",\"u_0_13\",2,],[\"m_0_27\",\"u_0_11\",2,],[\"m_0_25\",\"u_0_w\",2,],[\"m_0_23\",\"u_0_u\",2,],[\"m_0_28\",\"u_0_12\",4,],],\n markup: [[\"m_0_2g\",{\n __html: \"\\u003Cdiv\\u003E\\u003Cdiv\\u003E\\u003Cdiv\\u003E\\u003Cdiv id=\\\"u_0_14\\\"\\u003E\\u003Cimg class=\\\"mal pal -cx-PRIVATE-uiHoverButton__loading center img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yk/r/LOOn0JtHNzb.gif\\\" alt=\\\"\\\" width=\\\"16\\\" height=\\\"16\\\" /\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },3,],]\n },\n css: [\"UmFO+\",\"veUjj\",\"j1x0z\",],\n bootloadable: {\n },\n resource_map: {\n dShSX: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yZ/r/JdjE3mVpxG6.js\"\n }\n },\n js: [\"OH3xD\",\"/MWWQ\",\"AVmr9\",\"f7Tpb\",\"nxD7O\",\"4kgAq\",\"dShSX\",\"OYzUx\",\"cstCX\",],\n jscc_map: \"({\\\"jo0ho56azciA4s4HSJ0\\\":function(){return new SubMenu()}})\",\n JSBNG__onload: [\"JSCC.get(\\\"jo0ho56azciA4s4HSJ0\\\").init($(\\\"u_0_x\\\"), $(\\\"u_0_y\\\"), $(\\\"u_0_z\\\"), $(\\\"u_0_10\\\"));\",\"JSCC.get(\\\"jo0ho56azciA4s4HSJ0\\\").initAsyncChildMenu(require(\\\"m_0_26\\\"));\",],\n id: \"pagelet_timeline_profile_actions\",\n phase: 1\n});"); |
| // 1887 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"bigPipe.onPageletArrive({\n content: {\n pagelet_timeline_recent: {\n container_id: \"u_0_1b\"\n }\n },\n jsmods: {\n require: [[\"TimelineContentLoader\",\"removeSection\",[],[\"month_1969_12\",],],[\"TimelineLogging\",\"init\",[],[1055580469,],],[\"TimelineContentLoader\",\"enableScrollLoadOnClick\",[],[\"u_0_1a_scroll_trigger\",\"recent\",250,],],[\"TimelineController\",],[\"Arbiter\",\"inform\",[],[\"TimelineConstants/sectionLoaded\",{\n key: \"recent\"\n },],],[\"TimelineStickyRightColumn\",\"init\",[],[],],]\n },\n css: [\"j1x0z\",\"UmFO+\",\"veUjj\",],\n bootloadable: {\n },\n resource_map: {\n },\n js: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"/MWWQ\",\"nxD7O\",\"xfhln\",\"XH2Cu\",\"gyG67\",\"e0RyX\",],\n id: \"pagelet_timeline_recent\",\n phase: 2\n});"); |
| // 1888 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"sd8f699c4f754512173acbd65c7f27fe4c934c6a1"); |
| // 1889 |
| geval("bigPipe.onPageletArrive({\n JSBNG__content: {\n pagelet_timeline_recent: {\n container_id: \"u_0_1b\"\n }\n },\n jsmods: {\n require: [[\"TimelineContentLoader\",\"removeSection\",[],[\"month_1969_12\",],],[\"TimelineLogging\",\"init\",[],[1055580469,],],[\"TimelineContentLoader\",\"enableScrollLoadOnClick\",[],[\"u_0_1a_scroll_trigger\",\"recent\",250,],],[\"TimelineController\",],[\"Arbiter\",\"inform\",[],[\"TimelineConstants/sectionLoaded\",{\n key: \"recent\"\n },],],[\"TimelineStickyRightColumn\",\"init\",[],[],],]\n },\n css: [\"j1x0z\",\"UmFO+\",\"veUjj\",],\n bootloadable: {\n },\n resource_map: {\n },\n js: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"/MWWQ\",\"nxD7O\",\"xfhln\",\"XH2Cu\",\"gyG67\",\"e0RyX\",],\n id: \"pagelet_timeline_recent\",\n phase: 2\n});"); |
| // 1938 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"bigPipe.onPageletArrive({\n append: \"u_0_19_left\",\n display_dependency: [\"pagelet_timeline_recent\",],\n content: {\n pagelet_timeline_composer: \"\"\n },\n bootloadable: {\n },\n resource_map: {\n },\n id: \"pagelet_timeline_composer\",\n phase: 2\n});"); |
| // 1939 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"sedd38a224adc2a34a06d3ad5629cd6d487167cfa"); |
| // 1940 |
| geval("bigPipe.onPageletArrive({\n append: \"u_0_19_left\",\n display_dependency: [\"pagelet_timeline_recent\",],\n JSBNG__content: {\n pagelet_timeline_composer: \"\"\n },\n bootloadable: {\n },\n resource_map: {\n },\n id: \"pagelet_timeline_composer\",\n phase: 2\n});"); |
| // 1970 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"bigPipe.onPageletArrive({\n append: \"u_0_19_left\",\n display_dependency: [\"pagelet_timeline_recent\",\"pagelet_timeline_composer\",],\n is_last: true,\n content: {\n pagelet_timeline_recent_segment_0_0_left: {\n container_id: \"u_0_20\"\n }\n },\n jsmods: {\n require: [[\"TimelineCapsule\",\"loadTwoColumnUnits\",[],[\"u_0_19\",],],[\"TimelineStickyRightColumn\",\"adjust\",[],[],],[\"m_0_2j\",],[\"m_0_2l\",],[\"m_0_2m\",],[\"m_0_2o\",],[\"m_0_2q\",],[\"m_0_2r\",],[\"m_0_2t\",],[\"m_0_2v\",],[\"m_0_2w\",],[\"m_0_2y\",],[\"m_0_30\",],[\"m_0_31\",],[\"Hovercard\",],[\"CensorLogger\",\"registerForm\",[],[\"u_0_1o\",\"10200343222477260\",],],[\"CLoggerX\",\"trackFeedbackForm\",[\"m_0_33\",],[{\n __m: \"m_0_33\"\n },{\n targetID: \"10200343222477260\"\n },\"b1113c18\",],],[\"CensorLogger\",\"registerForm\",[],[\"u_0_1p\",\"10200350995551582\",],],[\"CLoggerX\",\"trackFeedbackForm\",[\"m_0_34\",],[{\n __m: \"m_0_34\"\n },{\n targetID: \"10200350995551582\"\n },\"b1113c18\",],],[\"CensorLogger\",\"registerForm\",[],[\"u_0_1q\",\"10200407437602598\",],],[\"CLoggerX\",\"trackFeedbackForm\",[\"m_0_35\",],[{\n __m: \"m_0_35\"\n },{\n targetID: \"10200407437602598\"\n },\"b1113c18\",],],[\"CensorLogger\",\"registerForm\",[],[\"u_0_1r\",\"10200453104264236\",],],[\"CLoggerX\",\"trackFeedbackForm\",[\"m_0_36\",],[{\n __m: \"m_0_36\"\n },{\n targetID: \"10200453104264236\"\n },\"b1113c18\",],],[\"m_0_3c\",],[\"Tooltip\",],[\"m_0_3f\",],[\"m_0_3i\",],[\"m_0_3l\",],],\n instances: [[\"m_0_3j\",[\"MultiBootstrapDataSource\",],[{\n maxResults: 3,\n queryData: {\n context: \"topics_limited_autosuggest\",\n viewer: 100006118350059,\n filter: [\"page\",\"user\",],\n rsp: \"mentions\"\n },\n queryEndpoint: \"/ajax/typeahead/search.php\",\n bootstrapData: {\n rsp: \"mentions\"\n },\n bootstrapEndpoints: [{\n endpoint: \"/ajax/typeahead/first_degree.php\",\n data: {\n context: \"mentions\",\n viewer: 100006118350059,\n token: \"1374777501-7\",\n filter: [\"page\",\"group\",\"app\",\"event\",\"user\",],\n options: [\"friends_only\",\"nm\",]\n }\n },]\n },],2,],[\"m_0_2j\",[\"PopoverLoadingMenu\",\"MenuTheme\",],[{\n theme: {\n __m: \"MenuTheme\"\n }\n },],3,],[\"m_0_3f\",[\"UFIController\",\"m_0_3e\",\"m_0_3g\",],[{\n __m: \"m_0_3e\"\n },{\n ftentidentifier: \"10200350995551582\",\n instanceid: \"u_0_1u\",\n source: 0,\n showaddcomment: true,\n collapseaddcomment: false,\n markedcomments: [],\n scrollcomments: false,\n scrollwidth: null,\n showshares: false,\n shownub: false,\n numberdelimiter: \",\",\n showtyping: 0,\n logtyping: 0,\n entstream: false,\n embedded: false,\n viewoptionstypeobjects: null,\n viewoptionstypeobjectsorder: null,\n giftoccasion: null,\n sht: 1,\n snowliftredesign: false,\n timelinelogdata: \"AQAlgopmGq0ZHy3R2kG5GCpd5xIfDZrje41Cn5hx-UlsHHRAwheTYxSzlwYwMpREMCS1JzMspOsjwHMvtkLT5mevdKJ5cVCAvAuX27rrKowEqOkMfTMLZUPN1rAxw6MGGS4mPIFncGunb2x4Zvciyb1ByglygI1yMRvuoa0v4NOWz9oh4WDi2m6Yy88oHchGKfGyFif0A5kPret2iWpsleSHzYdahUXoAaZMKVWrob8i3juFAvTKWa-tKVBuqqiY5_tJc35Sx0baaluOD2TWxJk6gE6A0q-OqdD3ula2NuhAZsxRB372jbu-OT-yYpSXLZvKCLeWcqezaITd_2k9ZLyRDI2-ZyHmhsluREWOeZsnozHStiTfaGOkH_uKR5zOCvqJMygffpWg7KXJ8QMncKZt\"\n },{\n feedbacktargets: [{\n targetfbid: \"10200350995551582\",\n entidentifier: \"10200350995551582\",\n permalink: \"/LawlabeeTheWallaby/posts/10200350995551582\",\n commentcount: 5,\n likecount: 1,\n viewercanlike: true,\n hasviewerliked: false,\n cancomment: false,\n showremovemenu: false,\n actorforpost: \"100006118350059\",\n viewerid: \"100006118350059\",\n likesentences: {\n current: {\n text: \"Jan Vitek likes this.\",\n ranges: [{\n offset: 0,\n length: 9,\n entities: [{\n url: \"http://jsbngssl.www.facebook.com/jvitekjr\",\n id: 719575350\n },]\n },],\n aggregatedranges: []\n },\n alternate: {\n text: \"You and Jan Vitek like this.\",\n ranges: [{\n offset: 8,\n length: 9,\n entities: [{\n url: \"http://jsbngssl.www.facebook.com/jvitekjr\",\n id: 719575350\n },]\n },],\n aggregatedranges: []\n }\n },\n sharecount: 0,\n ownerid: \"1055580469\",\n lastseentime: null,\n canremoveall: false,\n seencount: 0,\n seenbyall: false,\n hasunseencollapsed: false,\n mentionsdatasource: {\n __m: \"m_0_3g\"\n },\n isranked: false,\n isthreaded: false,\n isownerpage: false,\n actorid: \"1055580469\",\n grouporeventid: null,\n allowphotoattachments: true,\n replysocialsentencemaxreplies: 10,\n showfeaturedreplies: false,\n viewercansubscribetopost: false,\n hasviewersubscribed: false,\n commentboxhoisted: false,\n hasaddcommentlink: false,\n defaultcommentorderingmode: \"chronological\",\n showsendonentertip: true\n },],\n comments: [{\n id: \"10200350995551582_4954379\",\n fbid: \"10200357365790834\",\n legacyid: \"4954379\",\n body: {\n text: \"You should have snatched it out of his hands, and played it/\",\n ranges: [],\n aggregatedranges: []\n },\n author: \"1710926078\",\n ftentidentifier: \"10200350995551582\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: null,\n istranslatable: false,\n timestamp: {\n time: 1373168110,\n text: \"July 6 at 8:35pm\",\n verbose: \"Saturday, July 6, 2013 at 8:35pm\"\n },\n spamreplycount: 0,\n replyauthors: []\n },{\n id: \"10200350995551582_4955913\",\n fbid: \"10200359402281745\",\n legacyid: \"4955913\",\n body: {\n text: \"I've found that stealing musical instruments in non-English-speaking countries hasn't brought me great luck in the past.\",\n ranges: [],\n aggregatedranges: []\n },\n author: \"1055580469\",\n ftentidentifier: \"10200350995551582\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: null,\n istranslatable: false,\n timestamp: {\n time: 1373214256,\n text: \"July 7 at 9:24am\",\n verbose: \"Sunday, July 7, 2013 at 9:24am\"\n },\n spamreplycount: 0,\n replyauthors: []\n },{\n id: \"10200350995551582_4955915\",\n fbid: \"10200359408281895\",\n legacyid: \"4955915\",\n body: {\n text: \"But in English-speaking countries it's just fine.\",\n ranges: [],\n aggregatedranges: []\n },\n author: \"10715287\",\n ftentidentifier: \"10200350995551582\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: null,\n istranslatable: false,\n timestamp: {\n time: 1373214355,\n text: \"July 7 at 9:25am\",\n verbose: \"Sunday, July 7, 2013 at 9:25am\"\n },\n spamreplycount: 0,\n replyauthors: []\n },{\n id: \"10200350995551582_4955918\",\n fbid: \"10200359410801958\",\n legacyid: \"4955918\",\n body: {\n text: \"Naturally.\",\n ranges: [],\n aggregatedranges: []\n },\n author: \"1055580469\",\n ftentidentifier: \"10200350995551582\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: null,\n istranslatable: false,\n timestamp: {\n time: 1373214375,\n text: \"July 7 at 9:26am\",\n verbose: \"Sunday, July 7, 2013 at 9:26am\"\n },\n spamreplycount: 0,\n replyauthors: []\n },],\n profiles: [{\n id: \"1710926078\",\n name: \"Kathy Wertheimer Richards\",\n firstName: \"Kathy\",\n vanity: \"kathy.w.richards\",\n thumbSrc: \"http://jsbngssl.profile-a-iad.xx.fbcdn.net/hprofile-prn2/s32x32/276006_1710926078_512651488_q.jpg\",\n uri: \"http://jsbngssl.www.facebook.com/kathy.w.richards\",\n gender: 1,\n type: \"user\",\n is_friend: false,\n social_snippets: null\n },{\n id: \"1055580469\",\n name: \"Gregor Richards\",\n firstName: \"Gregor\",\n vanity: \"LawlabeeTheWallaby\",\n thumbSrc: \"http://jsbngssl.fbcdn-profile-a.akamaihd.net/hprofile-ak-prn2/s32x32/276274_1055580469_962040234_q.jpg\",\n uri: \"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby\",\n gender: 2,\n type: \"user\",\n is_friend: false,\n social_snippets: null\n },{\n id: \"10715287\",\n name: \"Michael A Goss\",\n firstName: \"Michael\",\n vanity: \"michael.a.goss\",\n thumbSrc: \"http://jsbngssl.fbcdn-profile-a.akamaihd.net/hprofile-ak-prn2/s32x32/186115_10715287_1845932200_q.jpg\",\n uri: \"http://jsbngssl.www.facebook.com/michael.a.goss\",\n gender: 2,\n type: \"user\",\n is_friend: false,\n social_snippets: null\n },],\n actions: [],\n commentlists: {\n comments: {\n 10200350995551582: {\n chronological: {\n range: {\n offset: 1,\n length: 4\n },\n values: [\"10200350995551582_4954379\",\"10200350995551582_4955913\",\"10200350995551582_4955915\",\"10200350995551582_4955918\",]\n }\n }\n },\n replies: {\n \"10200350995551582_4954379\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200350995551582\"\n },\n \"10200350995551582_4955913\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200350995551582\"\n },\n \"10200350995551582_4955915\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200350995551582\"\n },\n \"10200350995551582_4955918\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200350995551582\"\n }\n }\n },\n servertime: 1374851147\n },],1,],[\"m_0_3c\",[\"UFIController\",\"m_0_3b\",\"m_0_3d\",],[{\n __m: \"m_0_3b\"\n },{\n ftentidentifier: \"10200453104264236\",\n instanceid: \"u_0_1s\",\n source: 0,\n showaddcomment: true,\n collapseaddcomment: false,\n markedcomments: [],\n scrollcomments: false,\n scrollwidth: null,\n showshares: false,\n shownub: false,\n numberdelimiter: \",\",\n showtyping: 0,\n logtyping: 0,\n entstream: false,\n embedded: false,\n viewoptionstypeobjects: null,\n viewoptionstypeobjectsorder: null,\n giftoccasion: null,\n sht: 1,\n snowliftredesign: false,\n timelinelogdata: \"AQBNptZHHmcHSBHH338FbJIldzhdcVkA422y6Sejlj24O_ESfCpT1dhcH8BotHbB73c3HUp4765d0qfNUgarP7Vf2rTTbV5euFgCJSt9-8B4i86TjWur6gJ3K29twN6V9lo7fU3rQepgiuZt5KILXg7MqgN_w213GHwJL6FGgcWbUZlVBhXGuoklz4varOFzrDvH_-rITQWylbk82zJBzOEix9PGZ6QnysZWTe0NbHgtmvvEgOVVTF_JPYYKjGJasYG-JYrNmL-tbERXVcwbZ5iFNz9l0M26pG6TZqE6wNK0_l10ScDeVnFbXwhuV6wk73AHZ58nAtgqevhrI3rGzBuPUx02KACTcf1ScQRa2UwIeybAIzG6SY3-kSka4I-DhWD1-EPGDFc5Ff7eeuTE6lPB\"\n },{\n feedbacktargets: [{\n targetfbid: \"10200453104264236\",\n entidentifier: \"10200453104264236\",\n permalink: \"http://jsbngssl.www.facebook.com/photo.php?fbid=10200453104264236&set=a.1138433375108.2021456.1055580469&type=1\",\n commentcount: 8,\n likecount: 0,\n viewercanlike: true,\n hasviewerliked: false,\n cancomment: false,\n showremovemenu: false,\n actorforpost: \"100006118350059\",\n viewerid: \"100006118350059\",\n likesentences: {\n current: {\n },\n alternate: {\n text: \"You like this.\",\n ranges: [],\n aggregatedranges: []\n }\n },\n sharecount: 0,\n ownerid: \"1055580469\",\n lastseentime: null,\n canremoveall: false,\n seencount: 0,\n seenbyall: false,\n hasunseencollapsed: false,\n mentionsdatasource: {\n __m: \"m_0_3d\"\n },\n isranked: false,\n isthreaded: false,\n isownerpage: false,\n actorid: \"1055580469\",\n grouporeventid: null,\n allowphotoattachments: true,\n replysocialsentencemaxreplies: 10,\n showfeaturedreplies: false,\n viewercansubscribetopost: true,\n hasviewersubscribed: false,\n commentboxhoisted: false,\n hasaddcommentlink: false,\n defaultcommentorderingmode: \"chronological\",\n showsendonentertip: true\n },],\n comments: [{\n id: \"10200453104264236_3195897\",\n fbid: \"10200453144105232\",\n legacyid: \"3195897\",\n body: {\n text: \"When you add a hat it removes the long hair \\u003E_\\u003C\",\n ranges: [],\n aggregatedranges: []\n },\n author: \"1055580469\",\n ftentidentifier: \"10200453104264236\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: null,\n istranslatable: false,\n timestamp: {\n time: 1374637972,\n text: \"Tuesday at 8:52pm\",\n verbose: \"Tuesday, July 23, 2013 at 8:52pm\"\n },\n spamreplycount: 0,\n replyauthors: []\n },{\n id: \"10200453104264236_3195898\",\n fbid: \"10200453146945303\",\n legacyid: \"3195898\",\n body: {\n text: \"so.. the hair is a hat? steam's not down with hats on hats?\",\n ranges: [],\n aggregatedranges: []\n },\n author: \"8300496\",\n ftentidentifier: \"10200453104264236\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: null,\n istranslatable: false,\n timestamp: {\n time: 1374638034,\n text: \"Tuesday at 8:53pm\",\n verbose: \"Tuesday, July 23, 2013 at 8:53pm\"\n },\n spamreplycount: 0,\n replyauthors: []\n },{\n id: \"10200453104264236_3195907\",\n fbid: \"10200453153145458\",\n legacyid: \"3195907\",\n body: {\n text: \"(This is Saints Row the Third, so can't really blame Steam)\\u000a\\u000aNo, hats are a separate customization option, but it wouldn't let you combine long hair with the hat. It's like he stuffed all the hair into his hat.\",\n ranges: [],\n aggregatedranges: []\n },\n author: \"1055580469\",\n ftentidentifier: \"10200453104264236\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: null,\n istranslatable: false,\n timestamp: {\n time: 1374638180,\n text: \"Tuesday at 8:56pm\",\n verbose: \"Tuesday, July 23, 2013 at 8:56pm\"\n },\n spamreplycount: 0,\n replyauthors: []\n },{\n id: \"10200453104264236_3198160\",\n fbid: \"10200459439942624\",\n legacyid: \"3198160\",\n body: {\n text: \"You finally tried Saints Row the Third? :)\",\n ranges: [],\n aggregatedranges: []\n },\n author: \"1633181753\",\n ftentidentifier: \"10200453104264236\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: null,\n istranslatable: false,\n timestamp: {\n time: 1374733044,\n text: \"Wednesday at 11:17pm\",\n verbose: \"Wednesday, July 24, 2013 at 11:17pm\"\n },\n spamreplycount: 0,\n replyauthors: []\n },],\n profiles: [{\n id: \"100006118350059\",\n name: \"Javasee Cript\",\n firstName: \"Javasee\",\n vanity: \"javasee.cript\",\n thumbSrc: \"http://jsbngssl.fbcdn-profile-a.akamaihd.net/hprofile-ak-prn2/s32x32/275646_100006118350059_324335073_q.jpg\",\n uri: \"http://jsbngssl.www.facebook.com/javasee.cript\",\n gender: 2,\n type: \"user\",\n is_friend: false,\n social_snippets: null\n },{\n id: \"1055580469\",\n name: \"Gregor Richards\",\n firstName: \"Gregor\",\n vanity: \"LawlabeeTheWallaby\",\n thumbSrc: \"http://jsbngssl.fbcdn-profile-a.akamaihd.net/hprofile-ak-prn2/s32x32/276274_1055580469_962040234_q.jpg\",\n uri: \"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby\",\n gender: 2,\n type: \"user\",\n is_friend: false,\n social_snippets: null\n },{\n id: \"8300496\",\n name: \"Philip Ritchey\",\n firstName: \"Philip\",\n vanity: \"philipritchey\",\n thumbSrc: \"http://jsbngssl.profile-a-iad.xx.fbcdn.net/hprofile-prn1/s32x32/41769_8300496_5612_q.jpg\",\n uri: \"http://jsbngssl.www.facebook.com/philipritchey\",\n gender: 2,\n type: \"user\",\n is_friend: false,\n social_snippets: null\n },{\n id: \"1633181753\",\n name: \"Robert Nesius\",\n firstName: \"Robert\",\n vanity: \"rnesius\",\n thumbSrc: \"http://jsbngssl.fbcdn-profile-a.akamaihd.net/hprofile-ak-prn1/s32x32/573766_1633181753_1114062672_q.jpg\",\n uri: \"http://jsbngssl.www.facebook.com/rnesius\",\n gender: 2,\n type: \"user\",\n is_friend: false,\n social_snippets: null\n },],\n actions: [],\n commentlists: {\n comments: {\n 10200453104264236: {\n chronological: {\n range: {\n offset: 4,\n length: 4\n },\n values: [\"10200453104264236_3195897\",\"10200453104264236_3195898\",\"10200453104264236_3195907\",\"10200453104264236_3198160\",]\n }\n }\n },\n replies: {\n \"10200453104264236_3195897\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200453104264236\"\n },\n \"10200453104264236_3195898\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200453104264236\"\n },\n \"10200453104264236_3195907\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200453104264236\"\n },\n \"10200453104264236_3198160\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200453104264236\"\n }\n }\n },\n servertime: 1374851147\n },],1,],[\"m_0_3i\",[\"UFIController\",\"m_0_3h\",\"m_0_3j\",],[{\n __m: \"m_0_3h\"\n },{\n ftentidentifier: \"10200407437602598\",\n instanceid: \"u_0_1w\",\n source: 0,\n showaddcomment: true,\n collapseaddcomment: false,\n markedcomments: [],\n scrollcomments: false,\n scrollwidth: null,\n showshares: false,\n shownub: false,\n numberdelimiter: \",\",\n showtyping: 0,\n logtyping: 0,\n entstream: false,\n embedded: false,\n viewoptionstypeobjects: null,\n viewoptionstypeobjectsorder: null,\n giftoccasion: null,\n sht: 1,\n snowliftredesign: false,\n timelinelogdata: \"AQDQFbb-noUffn08-wYWq3sqYkrBn6PemZTva6mbp5t66h4yjEavOAYdkUoacT9VWRl0uDEW7vDbks_tWcJUANE75miHVSFsRLzVp0z6QRS8A-6U-bxgPk4MluQZyAw547yznIXQx6K5k79h3Q5XWXZCoLRpUsMobuUIt5V7QrU3wrLvqhL5bMnzwHbz3QzSYT6d5SwYbBLB-UDRNhNwiVw-SMynyyl0eYXm5Sh70OjHuBFTR0b0dpGqqRbsfSmcbiDTCwszsk-U82fECniRaqHQxpG7Kl5ystDd2c73YJ7j85bFpA6-N8fT1jM32e0sJM7oSj21k3xAu4cp7omIf5ObzedtL5uoB9-D2VKTHaFWRhDg-CzF1cwJDRSRPvlhZ5sWyw1hjgpeB2bGwZymew_x\"\n },{\n feedbacktargets: [{\n targetfbid: \"10200407437602598\",\n entidentifier: \"10200407437602598\",\n permalink: \"/LawlabeeTheWallaby/posts/10200407437602598\",\n commentcount: 13,\n likecount: 4,\n viewercanlike: true,\n hasviewerliked: false,\n cancomment: false,\n showremovemenu: false,\n actorforpost: \"100006118350059\",\n viewerid: \"100006118350059\",\n likesentences: {\n current: {\n text: \"4 people like this.\",\n ranges: [],\n aggregatedranges: [{\n offset: 0,\n length: 8,\n count: 4\n },]\n },\n alternate: {\n text: \"You and 4 others like this.\",\n ranges: [],\n aggregatedranges: [{\n offset: 8,\n length: 8,\n count: 4\n },]\n }\n },\n sharecount: 0,\n ownerid: \"1055580469\",\n lastseentime: null,\n canremoveall: false,\n seencount: 0,\n seenbyall: false,\n hasunseencollapsed: false,\n mentionsdatasource: {\n __m: \"m_0_3j\"\n },\n isranked: false,\n isthreaded: false,\n isownerpage: false,\n actorid: \"1055580469\",\n grouporeventid: null,\n allowphotoattachments: true,\n replysocialsentencemaxreplies: 10,\n showfeaturedreplies: false,\n viewercansubscribetopost: false,\n hasviewersubscribed: false,\n commentboxhoisted: false,\n hasaddcommentlink: false,\n defaultcommentorderingmode: \"chronological\",\n showsendonentertip: true\n },],\n comments: [{\n id: \"10200407437602598_4992459\",\n fbid: \"10200412564730773\",\n legacyid: \"4992459\",\n body: {\n text: \"You are the antithesis of what my husband has been writing his dissertation about.\",\n ranges: [],\n aggregatedranges: []\n },\n author: \"42000540\",\n ftentidentifier: \"10200407437602598\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: 1,\n istranslatable: false,\n timestamp: {\n time: 1374039953,\n text: \"July 16 at 10:45pm\",\n verbose: \"Tuesday, July 16, 2013 at 10:45pm\"\n },\n spamreplycount: 0,\n replyauthors: []\n },{\n id: \"10200407437602598_4992465\",\n fbid: \"10200412568530868\",\n legacyid: \"4992465\",\n body: {\n text: \"Harry: I'm turning 27, not 4\\u00bd...\\u000a\\u000aChrissi: Oh?\",\n ranges: [],\n aggregatedranges: []\n },\n author: \"1055580469\",\n ftentidentifier: \"10200407437602598\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: null,\n istranslatable: false,\n timestamp: {\n time: 1374040107,\n text: \"July 16 at 10:48pm\",\n verbose: \"Tuesday, July 16, 2013 at 10:48pm\"\n },\n spamreplycount: 0,\n replyauthors: []\n },{\n id: \"10200407437602598_4992473\",\n fbid: \"10200412578931128\",\n legacyid: \"4992473\",\n body: {\n text: \"irony vs satire/sarcasm, pragmatism, william james type stuff\",\n ranges: [],\n aggregatedranges: []\n },\n author: \"42000540\",\n ftentidentifier: \"10200407437602598\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: 1,\n istranslatable: false,\n timestamp: {\n time: 1374040490,\n text: \"July 16 at 10:54pm\",\n verbose: \"Tuesday, July 16, 2013 at 10:54pm\"\n },\n spamreplycount: 0,\n replyauthors: []\n },{\n id: \"10200407437602598_4996311\",\n fbid: \"10200417729139880\",\n legacyid: \"4996311\",\n body: {\n text: \":)\",\n ranges: [],\n aggregatedranges: []\n },\n author: \"1729068700\",\n ftentidentifier: \"10200407437602598\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: 1,\n istranslatable: false,\n timestamp: {\n time: 1374119198,\n text: \"July 17 at 8:46pm\",\n verbose: \"Wednesday, July 17, 2013 at 8:46pm\"\n },\n spamreplycount: 0,\n replyauthors: []\n },],\n profiles: [{\n id: \"42000540\",\n name: \"Chrissi Keith\",\n firstName: \"Chrissi\",\n vanity: \"taskmasterkeith\",\n thumbSrc: \"http://jsbngssl.profile-b-iad.xx.fbcdn.net/hprofile-ash4/s32x32/276211_42000540_1185711920_q.jpg\",\n uri: \"http://jsbngssl.www.facebook.com/taskmasterkeith\",\n gender: 1,\n type: \"user\",\n is_friend: false,\n social_snippets: null\n },{\n id: \"1055580469\",\n name: \"Gregor Richards\",\n firstName: \"Gregor\",\n vanity: \"LawlabeeTheWallaby\",\n thumbSrc: \"http://jsbngssl.fbcdn-profile-a.akamaihd.net/hprofile-ak-prn2/s32x32/276274_1055580469_962040234_q.jpg\",\n uri: \"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby\",\n gender: 2,\n type: \"user\",\n is_friend: false,\n social_snippets: null\n },{\n id: \"1729068700\",\n name: \"Donna Rubens Renhard\",\n firstName: \"Donna\",\n vanity: \"donna.rubensrenhard\",\n thumbSrc: \"http://jsbngssl.fbcdn-profile-a.akamaihd.net/hprofile-ak-prn2/s32x32/187733_1729068700_888004086_q.jpg\",\n uri: \"http://jsbngssl.www.facebook.com/donna.rubensrenhard\",\n gender: 1,\n type: \"user\",\n is_friend: false,\n social_snippets: null\n },],\n actions: [],\n commentlists: {\n comments: {\n 10200407437602598: {\n chronological: {\n range: {\n offset: 9,\n length: 4\n },\n values: [\"10200407437602598_4992459\",\"10200407437602598_4992465\",\"10200407437602598_4992473\",\"10200407437602598_4996311\",]\n }\n }\n },\n replies: {\n \"10200407437602598_4992459\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200407437602598\"\n },\n \"10200407437602598_4992465\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200407437602598\"\n },\n \"10200407437602598_4992473\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200407437602598\"\n },\n \"10200407437602598_4996311\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200407437602598\"\n }\n }\n },\n servertime: 1374851147\n },],1,],[\"m_0_31\",[\"Popover\",\"m_0_32\",\"m_0_2z\",\"ContextualLayerAsyncRelative\",\"ContextualLayerAutoFlip\",],[{\n __m: \"m_0_32\"\n },{\n __m: \"m_0_2z\"\n },[{\n __m: \"ContextualLayerAsyncRelative\"\n },{\n __m: \"ContextualLayerAutoFlip\"\n },],{\n alignh: \"right\"\n },],3,],[\"m_0_3m\",[\"MultiBootstrapDataSource\",],[{\n maxResults: 3,\n queryData: {\n context: \"topics_limited_autosuggest\",\n viewer: 100006118350059,\n filter: [\"page\",\"user\",],\n rsp: \"mentions\"\n },\n queryEndpoint: \"/ajax/typeahead/search.php\",\n bootstrapData: {\n rsp: \"mentions\"\n },\n bootstrapEndpoints: [{\n endpoint: \"/ajax/typeahead/first_degree.php\",\n data: {\n context: \"mentions\",\n viewer: 100006118350059,\n token: \"1374777501-7\",\n filter: [\"page\",\"group\",\"app\",\"event\",\"user\",],\n options: [\"friends_only\",\"nm\",]\n }\n },]\n },],2,],[\"m_0_2v\",[\"PopoverAsyncMenu\",\"m_0_2w\",\"m_0_2u\",\"m_0_2t\",],[{\n __m: \"m_0_2w\"\n },{\n __m: \"m_0_2u\"\n },{\n __m: \"m_0_2t\"\n },\"/ajax/timeline/curation_menu_new.php?unit_data%5Bunit_type%5D=2&unit_data%5Bhash%5D=5791137008599102559&unit_data%5Bwindow_size%5D=3&unit_data%5Bwindow_start_time%5D=0&unit_data%5Bwindow_end_time%5D=1375340399&unit_data%5Bunit_start_time%5D=1373991800&unit_data%5Bunit_end_time%5D=1373991800&dom_id=u_0_1i×tamp=1373991800&impression_id=b1113c18&is_start=1&friendship_page_id=0&is_pinned_page_post=0&profile_id=1055580469&start=0&end=1375340399&query_type=39&show_star=1&star_req=1\",[],],1,],[\"m_0_2r\",[\"Popover\",\"m_0_2s\",\"m_0_2p\",\"ContextualLayerAsyncRelative\",\"ContextualLayerAutoFlip\",],[{\n __m: \"m_0_2s\"\n },{\n __m: \"m_0_2p\"\n },[{\n __m: \"ContextualLayerAsyncRelative\"\n },{\n __m: \"ContextualLayerAutoFlip\"\n },],{\n alignh: \"right\"\n },],3,],[\"m_0_3g\",[\"MultiBootstrapDataSource\",],[{\n maxResults: 3,\n queryData: {\n context: \"topics_limited_autosuggest\",\n viewer: 100006118350059,\n filter: [\"page\",\"user\",],\n rsp: \"mentions\"\n },\n queryEndpoint: \"/ajax/typeahead/search.php\",\n bootstrapData: {\n rsp: \"mentions\"\n },\n bootstrapEndpoints: [{\n endpoint: \"/ajax/typeahead/first_degree.php\",\n data: {\n context: \"mentions\",\n viewer: 100006118350059,\n token: \"1374777501-7\",\n filter: [\"page\",\"group\",\"app\",\"event\",\"user\",],\n options: [\"friends_only\",\"nm\",]\n }\n },]\n },],2,],[\"m_0_3n\",[\"XHPTemplate\",\"m_0_3o\",],[{\n __m: \"m_0_3o\"\n },],2,],[\"m_0_2o\",[\"PopoverLoadingMenu\",\"MenuTheme\",],[{\n theme: {\n __m: \"MenuTheme\"\n }\n },],3,],[\"m_0_3d\",[\"MultiBootstrapDataSource\",],[{\n maxResults: 3,\n queryData: {\n context: \"topics_limited_autosuggest\",\n viewer: 100006118350059,\n filter: [\"page\",\"user\",],\n rsp: \"mentions\",\n photo_fbid: \"10200453104264236\"\n },\n queryEndpoint: \"/ajax/typeahead/search.php\",\n bootstrapData: {\n rsp: \"mentions\"\n },\n bootstrapEndpoints: [{\n endpoint: \"/ajax/typeahead/first_degree.php\",\n data: {\n context: \"mentions\",\n viewer: 100006118350059,\n token: \"1374777501-7\",\n filter: [\"page\",\"group\",\"app\",\"event\",\"user\",],\n options: [\"friends_only\",\"nm\",]\n }\n },]\n },],2,],[\"m_0_2q\",[\"PopoverAsyncMenu\",\"m_0_2r\",\"m_0_2p\",\"m_0_2o\",],[{\n __m: \"m_0_2r\"\n },{\n __m: \"m_0_2p\"\n },{\n __m: \"m_0_2o\"\n },\"/ajax/timeline/curation_menu_new.php?unit_data%5Bunit_type%5D=2&unit_data%5Bhash%5D=2953496614934485437&unit_data%5Bwindow_size%5D=3&unit_data%5Bwindow_start_time%5D=0&unit_data%5Bwindow_end_time%5D=1375340399&unit_data%5Bunit_start_time%5D=1373055341&unit_data%5Bunit_end_time%5D=1373055341&dom_id=u_0_1f×tamp=1373055341&impression_id=b1113c18&is_start=1&friendship_page_id=0&is_pinned_page_post=0&profile_id=1055580469&start=0&end=1375340399&query_type=39&show_star=1&star_req=1\",[],],1,],[\"m_0_2t\",[\"PopoverLoadingMenu\",\"MenuTheme\",],[{\n theme: {\n __m: \"MenuTheme\"\n }\n },],3,],[\"m_0_30\",[\"PopoverAsyncMenu\",\"m_0_31\",\"m_0_2z\",\"m_0_2y\",],[{\n __m: \"m_0_31\"\n },{\n __m: \"m_0_2z\"\n },{\n __m: \"m_0_2y\"\n },\"/ajax/timeline/curation_menu_new.php?unit_data%5Bunit_type%5D=69&unit_data%5Bhash%5D=1267290328123522761&unit_data%5Bwindow_size%5D=3&unit_data%5Bwindow_start_time%5D=0&unit_data%5Bwindow_end_time%5D=1375340399&unit_data%5Bunit_start_time%5D=1374637162&unit_data%5Bunit_end_time%5D=1374637162&dom_id=u_0_1l×tamp=1374637162&impression_id=b1113c18&is_start=1&friendship_page_id=0&is_pinned_page_post=0&profile_id=1055580469&start=0&end=1375340399&query_type=39&show_star=1&star_req=1\",[],],1,],[\"m_0_2y\",[\"PopoverLoadingMenu\",\"MenuTheme\",],[{\n theme: {\n __m: \"MenuTheme\"\n }\n },],3,],[\"m_0_2m\",[\"Popover\",\"m_0_2n\",\"m_0_2k\",\"ContextualLayerAsyncRelative\",\"ContextualLayerAutoFlip\",],[{\n __m: \"m_0_2n\"\n },{\n __m: \"m_0_2k\"\n },[{\n __m: \"ContextualLayerAsyncRelative\"\n },{\n __m: \"ContextualLayerAutoFlip\"\n },],{\n alignh: \"right\"\n },],3,],[\"m_0_3l\",[\"UFIController\",\"m_0_3k\",\"m_0_3m\",],[{\n __m: \"m_0_3k\"\n },{\n ftentidentifier: \"10200343222477260\",\n instanceid: \"u_0_1y\",\n source: 0,\n showaddcomment: true,\n collapseaddcomment: false,\n markedcomments: [],\n scrollcomments: false,\n scrollwidth: null,\n showshares: false,\n shownub: false,\n numberdelimiter: \",\",\n showtyping: 0,\n logtyping: 0,\n entstream: false,\n embedded: false,\n viewoptionstypeobjects: null,\n viewoptionstypeobjectsorder: null,\n giftoccasion: null,\n sht: 1,\n snowliftredesign: false,\n timelinelogdata: \"AQAr9lR2vZdldJ-VKsQo7OWaxXGctSzumkX_OWY9tMv34KoO2FztCqmqb8QBDYnKVWW99VqdbOskntjWhjy7W_MUFXYbmHi4oEJJ321uNu0XUYOzGWm_7u7pnY0zKn9thJ5ghe3h9Y4OukyraP07GphpWlsRiSVa_A-1EMIWIdeKmf-CJmEKmfCxEsM18xb2jjadO65ng8zpr6Dn3Z4o7hjV6OmtF3SCq3PgmXDdmdeFwvX8OgXFZncq4jrAd-dd1qH-0sddZKJuEM2b9WV5eyh_PipSNsi3uC6SpYHby30MLarSM5sgjVZxzOxLhdYkWGiF5kRqMgD0DZdRN5FoDtL6gTy--Mt8pP_wYiB8kl7IExZc3NIFNruO-xiWNXHnSp7mFJ4K4onngXPGTiY4s_d4\"\n },{\n feedbacktargets: [{\n targetfbid: \"10200343222477260\",\n entidentifier: \"10200343222477260\",\n permalink: \"/LawlabeeTheWallaby/posts/10200343222477260\",\n commentcount: 11,\n likecount: 7,\n viewercanlike: true,\n hasviewerliked: false,\n cancomment: false,\n showremovemenu: false,\n actorforpost: \"100006118350059\",\n viewerid: \"100006118350059\",\n likesentences: {\n current: {\n text: \"7 people like this.\",\n ranges: [],\n aggregatedranges: [{\n offset: 0,\n length: 8,\n count: 7\n },]\n },\n alternate: {\n text: \"You and 7 others like this.\",\n ranges: [],\n aggregatedranges: [{\n offset: 8,\n length: 8,\n count: 7\n },]\n }\n },\n sharecount: 0,\n ownerid: \"1055580469\",\n lastseentime: null,\n canremoveall: false,\n seencount: 0,\n seenbyall: false,\n hasunseencollapsed: false,\n mentionsdatasource: {\n __m: \"m_0_3m\"\n },\n isranked: false,\n isthreaded: false,\n isownerpage: false,\n actorid: \"1055580469\",\n grouporeventid: null,\n allowphotoattachments: true,\n replysocialsentencemaxreplies: 10,\n showfeaturedreplies: false,\n viewercansubscribetopost: false,\n hasviewersubscribed: false,\n commentboxhoisted: false,\n hasaddcommentlink: false,\n defaultcommentorderingmode: \"chronological\",\n showsendonentertip: true\n },],\n comments: [{\n id: \"10200343222477260_4946958\",\n fbid: \"10200346777686138\",\n legacyid: \"4946958\",\n body: {\n text: \"Does it have a sense of the surreal or are you just sharing a data point? ;)\",\n ranges: [],\n aggregatedranges: []\n },\n author: \"1633181753\",\n ftentidentifier: \"10200343222477260\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: null,\n istranslatable: false,\n timestamp: {\n time: 1372985540,\n text: \"July 4 at 5:52pm\",\n verbose: \"Thursday, July 4, 2013 at 5:52pm\"\n },\n spamreplycount: 0,\n replyauthors: []\n },{\n id: \"10200343222477260_4947623\",\n fbid: \"10200347758230651\",\n legacyid: \"4947623\",\n body: {\n text: \"Merely minor amusement.\",\n ranges: [],\n aggregatedranges: []\n },\n author: \"1055580469\",\n ftentidentifier: \"10200343222477260\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: null,\n istranslatable: false,\n timestamp: {\n time: 1373002430,\n text: \"July 4 at 10:33pm\",\n verbose: \"Thursday, July 4, 2013 at 10:33pm\"\n },\n spamreplycount: 0,\n replyauthors: []\n },{\n id: \"10200343222477260_4950566\",\n fbid: \"10200351838652659\",\n legacyid: \"4950566\",\n body: {\n text: \"Did you wear http://img2.etsystatic.com/005/0/8125869/il_570xN.471485474_swpa.jpg\",\n ranges: [{\n offset: 13,\n length: 68,\n entities: [{\n url: \"http://img2.etsystatic.com/005/0/8125869/il_570xN.471485474_swpa.jpg\",\n shimhash: \"zAQGz2cVu\",\n id: \"0746af69b9da85d793efe61531abaafe\",\n external: true\n },]\n },],\n aggregatedranges: []\n },\n author: \"53600996\",\n ftentidentifier: \"10200343222477260\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: null,\n istranslatable: false,\n timestamp: {\n time: 1373066508,\n text: \"July 5 at 4:21pm\",\n verbose: \"Friday, July 5, 2013 at 4:21pm\"\n },\n spamreplycount: 0,\n replyauthors: []\n },{\n id: \"10200343222477260_4950571\",\n fbid: \"10200351843052769\",\n legacyid: \"4950571\",\n body: {\n text: \"That's the most delightfully offensive piece of apparel I've seen in quite some time.\",\n ranges: [],\n aggregatedranges: []\n },\n author: \"1055580469\",\n ftentidentifier: \"10200343222477260\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: null,\n istranslatable: false,\n timestamp: {\n time: 1373066594,\n text: \"July 5 at 4:23pm\",\n verbose: \"Friday, July 5, 2013 at 4:23pm\"\n },\n spamreplycount: 0,\n replyauthors: []\n },],\n profiles: [{\n id: \"53600996\",\n name: \"Harrison Metzger\",\n firstName: \"Harrison\",\n vanity: \"harrisonmetz\",\n thumbSrc: \"http://jsbngssl.fbcdn-profile-a.akamaihd.net/hprofile-ak-ash4/s32x32/195694_53600996_1993816119_q.jpg\",\n uri: \"http://jsbngssl.www.facebook.com/harrisonmetz\",\n gender: 2,\n type: \"user\",\n is_friend: false,\n social_snippets: null\n },],\n actions: [],\n commentlists: {\n comments: {\n 10200343222477260: {\n chronological: {\n range: {\n offset: 7,\n length: 4\n },\n values: [\"10200343222477260_4946958\",\"10200343222477260_4947623\",\"10200343222477260_4950566\",\"10200343222477260_4950571\",]\n }\n }\n },\n replies: {\n \"10200343222477260_4946958\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200343222477260\"\n },\n \"10200343222477260_4947623\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200343222477260\"\n },\n \"10200343222477260_4950566\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200343222477260\"\n },\n \"10200343222477260_4950571\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200343222477260\"\n }\n }\n },\n servertime: 1374851147\n },],1,],[\"m_0_2w\",[\"Popover\",\"m_0_2x\",\"m_0_2u\",\"ContextualLayerAsyncRelative\",\"ContextualLayerAutoFlip\",],[{\n __m: \"m_0_2x\"\n },{\n __m: \"m_0_2u\"\n },[{\n __m: \"ContextualLayerAsyncRelative\"\n },{\n __m: \"ContextualLayerAutoFlip\"\n },],{\n alignh: \"right\"\n },],3,],[\"m_0_2l\",[\"PopoverAsyncMenu\",\"m_0_2m\",\"m_0_2k\",\"m_0_2j\",],[{\n __m: \"m_0_2m\"\n },{\n __m: \"m_0_2k\"\n },{\n __m: \"m_0_2j\"\n },\"/ajax/timeline/curation_menu_new.php?unit_data%5Bunit_type%5D=2&unit_data%5Bhash%5D=4498726532280095426&unit_data%5Bwindow_size%5D=3&unit_data%5Bwindow_start_time%5D=0&unit_data%5Bwindow_end_time%5D=1375340399&unit_data%5Bunit_start_time%5D=1372923465&unit_data%5Bunit_end_time%5D=1372923465&dom_id=u_0_1c×tamp=1372923465&impression_id=b1113c18&is_start=1&friendship_page_id=0&is_pinned_page_post=0&profile_id=1055580469&start=0&end=1375340399&query_type=39&show_star=1&star_req=1\",[],],1,],],\n define: [[\"CLogConfig\",[],{\n gkResults: 1\n },174,],[\"UFICommentTemplates\",[\"m_0_3n\",],{\n \":fb:ufi:hide-dialog-template\": {\n __m: \"m_0_3n\"\n }\n },70,],[\"UFISpamCountImpl\",[],{\n \"module\": null\n },72,],[\"UFIConfig\",[],{\n renderEmoji: true,\n renderEmoticons: 1\n },71,],],\n elements: [[\"m_0_34\",\"u_0_1p\",2,],[\"m_0_3b\",\"u_0_1t\",2,],[\"m_0_2x\",\"u_0_1j\",2,],[\"m_0_36\",\"u_0_1r\",2,],[\"m_0_2s\",\"u_0_1g\",2,],[\"m_0_2k\",\"u_0_1e\",4,],[\"m_0_32\",\"u_0_1m\",2,],[\"m_0_33\",\"u_0_1o\",2,],[\"m_0_39\",\"u_0_1q\",2,],[\"m_0_3e\",\"u_0_1v\",2,],[\"m_0_35\",\"u_0_1q\",2,],[\"m_0_38\",\"u_0_1p\",2,],[\"m_0_3h\",\"u_0_1x\",2,],[\"m_0_3k\",\"u_0_1z\",2,],[\"m_0_3a\",\"u_0_1r\",2,],[\"m_0_37\",\"u_0_1o\",2,],[\"m_0_2z\",\"u_0_1n\",4,],[\"m_0_2p\",\"u_0_1h\",4,],[\"m_0_2u\",\"u_0_1k\",4,],[\"m_0_2n\",\"u_0_1d\",2,],],\n markup: [[\"m_0_3o\",{\n __html: \"\\u003Cdiv\\u003E\\u003Cdiv class=\\\"pvs phm -cx-PUBLIC-uiDialog__title\\\" data-jsid=\\\"title\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"pam -cx-PRIVATE-uiDialog__body\\\" data-jsid=\\\"body\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-uiDialog__footer\\\"\\u003E\\u003Cdiv class=\\\"pam uiOverlayFooter uiBoxGray topborder\\\"\\u003E\\u003Cbutton value=\\\"1\\\" class=\\\"-cx-PRIVATE-abstractButton__root -cx-PRIVATE-uiButton__root layerConfirm uiOverlayButton selected -cx-PRIVATE-uiButton__confirm -cx-PRIVATE-uiButton__large\\\" data-jsid=\\\"delete\\\" type=\\\"submit\\\"\\u003EDelete\\u003C/button\\u003E\\u003Ca class=\\\"-cx-PRIVATE-abstractButton__root -cx-PRIVATE-uiButton__root layerCancel uiOverlayButton -cx-PRIVATE-uiButton__large\\\" role=\\\"button\\\" href=\\\"#\\\"\\u003ECancel\\u003C/a\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],]\n },\n css: [\"UmFO+\",\"veUjj\",\"j1x0z\",\"tAd6o\",],\n bootloadable: {\n TypeaheadHoistFriends: {\n resources: [\"OFYQ5\",],\n \"module\": true\n },\n \"UFIEntStreamOrderingModeSelector.react\": {\n resources: [\"OH3xD\",\"XH2Cu\",\"UmFO+\",\"ociRJ\",\"/MWWQ\",\"f7Tpb\",\"AVmr9\",\"OYzUx\",\"veUjj\",\"dShSX\",\"HgCpx\",\"0q2Dj\",\"QZ9ii\",\"aG0Oj\",\"iAvmX\",\"TXKLp\",\"kcpXP\",],\n \"module\": true\n },\n InputSelection: {\n resources: [\"OH3xD\",\"UmFO+\",\"f7Tpb\",],\n \"module\": true\n },\n FileInputUploader: {\n resources: [\"OH3xD\",\"f7Tpb\",\"TXKLp\",\"4/uwC\",\"7w6kA\",],\n \"module\": true\n },\n DialogX: {\n resources: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"UmFO+\",\"XH2Cu\",],\n \"module\": true\n },\n ContextualTypeaheadView: {\n resources: [\"OH3xD\",\"veUjj\",\"/MWWQ\",\"UmFO+\",\"f7Tpb\",\"AVmr9\",],\n \"module\": true\n },\n TypeaheadBestName: {\n resources: [\"XH2Cu\",\"/MWWQ\",],\n \"module\": true\n },\n TypeaheadMetrics: {\n resources: [\"OH3xD\",\"OFYQ5\",],\n \"module\": true\n },\n MentionsInput: {\n resources: [\"OH3xD\",\"UmFO+\",\"f7Tpb\",\"OFYQ5\",\"XH2Cu\",\"AVmr9\",\"veUjj\",],\n \"module\": true\n },\n TypingDetector: {\n resources: [\"OH3xD\",\"OSd/n\",],\n \"module\": true\n },\n TypeaheadAreaCore: {\n resources: [\"OH3xD\",\"UmFO+\",\"f7Tpb\",\"/MWWQ\",\"OFYQ5\",],\n \"module\": true\n },\n EntstreamPubContentOverlay: {\n resources: [\"OH3xD\",\"XH2Cu\",\"veUjj\",\"ociRJ\",\"f7Tpb\",\"UmFO+\",\"AVmr9\",\"SZ74q\",\"gJ7+m\",\"/MWWQ\",\"TXKLp\",\"za92D\",\"kcpXP\",\"js0se\",\"m5aEV\",],\n \"module\": true\n },\n CompactTypeaheadRenderer: {\n resources: [\"OH3xD\",\"veUjj\",\"/MWWQ\",],\n \"module\": true\n },\n ScrollAwareDOM: {\n resources: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",],\n \"module\": true\n },\n \"legacy:live-js\": {\n resources: [\"OH3xD\",\"WLpRY\",\"XH2Cu\",]\n },\n collectDataAttributes: {\n resources: [\"OH3xD\",],\n \"module\": true\n },\n UFIScrollHighlight: {\n resources: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"5iOnb\",\"rSdpp\",],\n \"module\": true\n },\n UFIComments: {\n resources: [\"XH2Cu\",\"ociRJ\",\"OH3xD\",],\n \"module\": true\n },\n UFIRetryActions: {\n resources: [\"OH3xD\",\"XH2Cu\",\"ociRJ\",\"8ay4F\",],\n \"module\": true\n },\n LegacyMenuUtils: {\n resources: [\"OH3xD\",\"OYzUx\",\"f7Tpb\",\"/MWWQ\",\"AVmr9\",\"veUjj\",\"XH2Cu\",\"0q2Dj\",\"UmFO+\",\"BRnsj\",],\n \"module\": true\n },\n HashtagLayerPageController: {\n resources: [\"OH3xD\",\"XH2Cu\",\"veUjj\",\"ociRJ\",\"f7Tpb\",\"UmFO+\",\"AVmr9\",\"SZ74q\",\"IxyKh\",\"9epYo\",\"Vczhe\",\"/MWWQ\",\"gJ7+m\",\"BBKr2\",\"MuiPI\",\"AMFDz\",\"qRGqD\",],\n \"module\": true\n },\n \"legacy:ufi-tracking-js\": {\n resources: [\"WLpRY\",]\n },\n CLoggerX: {\n resources: [\"OH3xD\",\"ociRJ\",],\n \"module\": true\n },\n \"UFICommentRemovalControls.react\": {\n resources: [\"XH2Cu\",\"OH3xD\",\"veUjj\",\"OZCPo\",],\n \"module\": true\n },\n DOMScroll: {\n resources: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",],\n \"module\": true\n },\n ScrollableArea: {\n resources: [\"OH3xD\",\"f7Tpb\",\"/MWWQ\",\"AVmr9\",\"veUjj\",],\n \"module\": true\n },\n HashtagParser: {\n resources: [\"OSd/n\",\"+P3v8\",],\n \"module\": true\n },\n TextAreaControl: {\n resources: [\"OH3xD\",\"4/uwC\",\"veUjj\",],\n \"module\": true\n },\n LegacyContextualDialog: {\n resources: [\"OH3xD\",\"/MWWQ\",\"bmJBG\",\"f7Tpb\",\"AVmr9\",\"UmFO+\",\"veUjj\",],\n \"module\": true\n },\n Typeahead: {\n resources: [\"f7Tpb\",\"OH3xD\",\"veUjj\",\"/MWWQ\",],\n \"module\": true\n },\n Hovercard: {\n resources: [\"OH3xD\",\"UmFO+\",\"/MWWQ\",\"AVmr9\",\"f7Tpb\",],\n \"module\": true\n },\n FileInput: {\n resources: [\"OH3xD\",\"AVmr9\",\"UmFO+\",\"veUjj\",],\n \"module\": true\n },\n \"UFIOrderingModeSelector.react\": {\n resources: [\"OH3xD\",\"XH2Cu\",\"UmFO+\",\"ociRJ\",\"OYzUx\",\"f7Tpb\",\"/MWWQ\",\"AVmr9\",\"veUjj\",\"dShSX\",],\n \"module\": true\n }\n },\n resource_map: {\n kcpXP: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y7/r/F1V9PnKbxuN.js\"\n },\n SZ74q: {\n type: \"css\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yB/r/2TiFHJIlpz4.css\"\n },\n ywV7J: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yt/r/wyUJpAs1Jud.js\"\n },\n \"7w6kA\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y7/r/P5ro3SB0fYh.js\"\n },\n rSdpp: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yc/r/2PkTFjdVPzc.js\"\n },\n BRnsj: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yG/r/Zl5MQqq69ii.js\"\n },\n qRGqD: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yq/r/0zNvPsl4_Iy.js\"\n },\n \"0q2Dj\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/ye/r/6AN8Ic-0Y1P.js\"\n },\n IxyKh: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yz/r/7f-bDgHTzcK.js\"\n },\n BBKr2: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yi/r/2RUWo8vhW3Y.js\"\n },\n HgCpx: {\n type: \"css\",\n permanent: 1,\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yZ/r/b9CwnSvNFr4.css\"\n },\n Vczhe: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yx/r/PNcm9agI5Po.js\"\n },\n \"8ay4F\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yC/r/VrfxLTcinh0.js\"\n },\n m5aEV: {\n type: \"css\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yV/r/yfRGukr04iK.css\"\n },\n OZCPo: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yR/r/wHB0tbxOz8q.js\"\n },\n aG0Oj: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yD/r/56drIuXqn1s.js\"\n },\n MuiPI: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yh/r/7aLu6r05bf7.js\"\n },\n \"9epYo\": {\n type: \"css\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yg/r/cgIp7Mxhz_d.css\"\n },\n bmJBG: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yK/r/RErt59oF4EQ.js\"\n },\n QZ9ii: {\n type: \"css\",\n permanent: 1,\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yI/r/BdtVXmiio69.css\"\n },\n OFYQ5: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y-/r/EKMXXey106d.js\"\n },\n iAvmX: {\n type: \"css\",\n permanent: 1,\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yj/r/-UKFu9u490q.css\"\n },\n \"gJ7+m\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yw/r/YaDMduhjA8v.js\"\n },\n \"5iOnb\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yt/r/MjMy0el_azO.js\"\n },\n AMFDz: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yb/r/l0jEiYB1BY4.js\"\n }\n },\n ixData: {\n \"/images/group_gifts/icons/gift_icon_red-13px.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_b8k8sa\",\n spriteCssClass: \"sx_b82a0c\"\n }\n },\n js: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"nxD7O\",\"xfhln\",\"XH2Cu\",\"gyG67\",\"/MWWQ\",\"e0RyX\",\"OYzUx\",\"ywV7J\",\"ociRJ\",],\n displayJS: [\"OH3xD\",\"XH2Cu\",\"ociRJ\",],\n onafterload: [\"Bootloader.loadComponents([\\\"legacy:live-js\\\"], function(){ Live.startup() });\",\"Bootloader.loadComponents([\\\"legacy:live-js\\\"], function(){ Live.startup() });\",\"Bootloader.loadComponents([\\\"legacy:live-js\\\"], function(){ Live.startup() });\",\"Bootloader.loadComponents([\\\"legacy:live-js\\\"], function(){ Live.startup() });\",\"Bootloader.loadComponents([\\\"legacy:ufi-tracking-js\\\"], function(){ ufi_add_all_link_data(); });\",],\n id: \"pagelet_timeline_recent_segment_0_0_left\",\n phase: 2,\n tti_phase: 2\n});"); |
| // 1971 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s1cb959dc28fffd55354a9c777050c7daa28cd8e9"); |
| // 1972 |
| geval("bigPipe.onPageletArrive({\n append: \"u_0_19_left\",\n display_dependency: [\"pagelet_timeline_recent\",\"pagelet_timeline_composer\",],\n is_last: true,\n JSBNG__content: {\n pagelet_timeline_recent_segment_0_0_left: {\n container_id: \"u_0_20\"\n }\n },\n jsmods: {\n require: [[\"TimelineCapsule\",\"loadTwoColumnUnits\",[],[\"u_0_19\",],],[\"TimelineStickyRightColumn\",\"adjust\",[],[],],[\"m_0_2j\",],[\"m_0_2l\",],[\"m_0_2m\",],[\"m_0_2o\",],[\"m_0_2q\",],[\"m_0_2r\",],[\"m_0_2t\",],[\"m_0_2v\",],[\"m_0_2w\",],[\"m_0_2y\",],[\"m_0_30\",],[\"m_0_31\",],[\"Hovercard\",],[\"CensorLogger\",\"registerForm\",[],[\"u_0_1o\",\"10200343222477260\",],],[\"CLoggerX\",\"trackFeedbackForm\",[\"m_0_33\",],[{\n __m: \"m_0_33\"\n },{\n targetID: \"10200343222477260\"\n },\"b1113c18\",],],[\"CensorLogger\",\"registerForm\",[],[\"u_0_1p\",\"10200350995551582\",],],[\"CLoggerX\",\"trackFeedbackForm\",[\"m_0_34\",],[{\n __m: \"m_0_34\"\n },{\n targetID: \"10200350995551582\"\n },\"b1113c18\",],],[\"CensorLogger\",\"registerForm\",[],[\"u_0_1q\",\"10200407437602598\",],],[\"CLoggerX\",\"trackFeedbackForm\",[\"m_0_35\",],[{\n __m: \"m_0_35\"\n },{\n targetID: \"10200407437602598\"\n },\"b1113c18\",],],[\"CensorLogger\",\"registerForm\",[],[\"u_0_1r\",\"10200453104264236\",],],[\"CLoggerX\",\"trackFeedbackForm\",[\"m_0_36\",],[{\n __m: \"m_0_36\"\n },{\n targetID: \"10200453104264236\"\n },\"b1113c18\",],],[\"m_0_3c\",],[\"Tooltip\",],[\"m_0_3f\",],[\"m_0_3i\",],[\"m_0_3l\",],],\n instances: [[\"m_0_3j\",[\"MultiBootstrapDataSource\",],[{\n maxResults: 3,\n queryData: {\n context: \"topics_limited_autosuggest\",\n viewer: 100006118350059,\n filter: [\"page\",\"user\",],\n rsp: \"mentions\"\n },\n queryEndpoint: \"/ajax/typeahead/search.php\",\n bootstrapData: {\n rsp: \"mentions\"\n },\n bootstrapEndpoints: [{\n endpoint: \"/ajax/typeahead/first_degree.php\",\n data: {\n context: \"mentions\",\n viewer: 100006118350059,\n token: \"1374777501-7\",\n filter: [\"page\",\"group\",\"app\",\"JSBNG__event\",\"user\",],\n options: [\"friends_only\",\"nm\",]\n }\n },]\n },],2,],[\"m_0_2j\",[\"PopoverLoadingMenu\",\"MenuTheme\",],[{\n theme: {\n __m: \"MenuTheme\"\n }\n },],3,],[\"m_0_3f\",[\"UFIController\",\"m_0_3e\",\"m_0_3g\",],[{\n __m: \"m_0_3e\"\n },{\n ftentidentifier: \"10200350995551582\",\n instanceid: \"u_0_1u\",\n source: 0,\n showaddcomment: true,\n collapseaddcomment: false,\n markedcomments: [],\n scrollcomments: false,\n scrollwidth: null,\n showshares: false,\n shownub: false,\n numberdelimiter: \",\",\n showtyping: 0,\n logtyping: 0,\n entstream: false,\n embedded: false,\n viewoptionstypeobjects: null,\n viewoptionstypeobjectsorder: null,\n giftoccasion: null,\n sht: 1,\n snowliftredesign: false,\n timelinelogdata: \"AQAlgopmGq0ZHy3R2kG5GCpd5xIfDZrje41Cn5hx-UlsHHRAwheTYxSzlwYwMpREMCS1JzMspOsjwHMvtkLT5mevdKJ5cVCAvAuX27rrKowEqOkMfTMLZUPN1rAxw6MGGS4mPIFncGunb2x4Zvciyb1ByglygI1yMRvuoa0v4NOWz9oh4WDi2m6Yy88oHchGKfGyFif0A5kPret2iWpsleSHzYdahUXoAaZMKVWrob8i3juFAvTKWa-tKVBuqqiY5_tJc35Sx0baaluOD2TWxJk6gE6A0q-OqdD3ula2NuhAZsxRB372jbu-OT-yYpSXLZvKCLeWcqezaITd_2k9ZLyRDI2-ZyHmhsluREWOeZsnozHStiTfaGOkH_uKR5zOCvqJMygffpWg7KXJ8QMncKZt\"\n },{\n feedbacktargets: [{\n targetfbid: \"10200350995551582\",\n entidentifier: \"10200350995551582\",\n permalink: \"/LawlabeeTheWallaby/posts/10200350995551582\",\n commentcount: 5,\n likecount: 1,\n viewercanlike: true,\n hasviewerliked: false,\n cancomment: false,\n showremovemenu: false,\n actorforpost: \"100006118350059\",\n viewerid: \"100006118350059\",\n likesentences: {\n current: {\n text: \"Jan Vitek likes this.\",\n ranges: [{\n offset: 0,\n length: 9,\n entities: [{\n url: \"http://jsbngssl.www.facebook.com/jvitekjr\",\n id: 719575350\n },]\n },],\n aggregatedranges: []\n },\n alternate: {\n text: \"You and Jan Vitek like this.\",\n ranges: [{\n offset: 8,\n length: 9,\n entities: [{\n url: \"http://jsbngssl.www.facebook.com/jvitekjr\",\n id: 719575350\n },]\n },],\n aggregatedranges: []\n }\n },\n sharecount: 0,\n ownerid: \"1055580469\",\n lastseentime: null,\n canremoveall: false,\n seencount: 0,\n seenbyall: false,\n hasunseencollapsed: false,\n mentionsdatasource: {\n __m: \"m_0_3g\"\n },\n isranked: false,\n isthreaded: false,\n isownerpage: false,\n actorid: \"1055580469\",\n grouporeventid: null,\n allowphotoattachments: true,\n replysocialsentencemaxreplies: 10,\n showfeaturedreplies: false,\n viewercansubscribetopost: false,\n hasviewersubscribed: false,\n commentboxhoisted: false,\n hasaddcommentlink: false,\n defaultcommentorderingmode: \"chronological\",\n showsendonentertip: true\n },],\n comments: [{\n id: \"10200350995551582_4954379\",\n fbid: \"10200357365790834\",\n legacyid: \"4954379\",\n body: {\n text: \"You should have snatched it out of his hands, and played it/\",\n ranges: [],\n aggregatedranges: []\n },\n author: \"1710926078\",\n ftentidentifier: \"10200350995551582\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: null,\n istranslatable: false,\n timestamp: {\n time: 1373168110,\n text: \"July 6 at 8:35pm\",\n verbose: \"Saturday, July 6, 2013 at 8:35pm\"\n },\n spamreplycount: 0,\n replyauthors: []\n },{\n id: \"10200350995551582_4955913\",\n fbid: \"10200359402281745\",\n legacyid: \"4955913\",\n body: {\n text: \"I've found that stealing musical instruments in non-English-speaking countries hasn't brought me great luck in the past.\",\n ranges: [],\n aggregatedranges: []\n },\n author: \"1055580469\",\n ftentidentifier: \"10200350995551582\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: null,\n istranslatable: false,\n timestamp: {\n time: 1373214256,\n text: \"July 7 at 9:24am\",\n verbose: \"Sunday, July 7, 2013 at 9:24am\"\n },\n spamreplycount: 0,\n replyauthors: []\n },{\n id: \"10200350995551582_4955915\",\n fbid: \"10200359408281895\",\n legacyid: \"4955915\",\n body: {\n text: \"But in English-speaking countries it's just fine.\",\n ranges: [],\n aggregatedranges: []\n },\n author: \"10715287\",\n ftentidentifier: \"10200350995551582\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: null,\n istranslatable: false,\n timestamp: {\n time: 1373214355,\n text: \"July 7 at 9:25am\",\n verbose: \"Sunday, July 7, 2013 at 9:25am\"\n },\n spamreplycount: 0,\n replyauthors: []\n },{\n id: \"10200350995551582_4955918\",\n fbid: \"10200359410801958\",\n legacyid: \"4955918\",\n body: {\n text: \"Naturally.\",\n ranges: [],\n aggregatedranges: []\n },\n author: \"1055580469\",\n ftentidentifier: \"10200350995551582\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: null,\n istranslatable: false,\n timestamp: {\n time: 1373214375,\n text: \"July 7 at 9:26am\",\n verbose: \"Sunday, July 7, 2013 at 9:26am\"\n },\n spamreplycount: 0,\n replyauthors: []\n },],\n profiles: [{\n id: \"1710926078\",\n JSBNG__name: \"Kathy Wertheimer Richards\",\n firstName: \"Kathy\",\n vanity: \"kathy.w.richards\",\n thumbSrc: \"http://jsbngssl.profile-a-iad.xx.fbcdn.net/hprofile-prn2/s32x32/276006_1710926078_512651488_q.jpg\",\n uri: \"http://jsbngssl.www.facebook.com/kathy.w.richards\",\n gender: 1,\n type: \"user\",\n is_friend: false,\n social_snippets: null\n },{\n id: \"1055580469\",\n JSBNG__name: \"Gregor Richards\",\n firstName: \"Gregor\",\n vanity: \"LawlabeeTheWallaby\",\n thumbSrc: \"http://jsbngssl.fbcdn-profile-a.akamaihd.net/hprofile-ak-prn2/s32x32/276274_1055580469_962040234_q.jpg\",\n uri: \"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby\",\n gender: 2,\n type: \"user\",\n is_friend: false,\n social_snippets: null\n },{\n id: \"10715287\",\n JSBNG__name: \"Michael A Goss\",\n firstName: \"Michael\",\n vanity: \"michael.a.goss\",\n thumbSrc: \"http://jsbngssl.fbcdn-profile-a.akamaihd.net/hprofile-ak-prn2/s32x32/186115_10715287_1845932200_q.jpg\",\n uri: \"http://jsbngssl.www.facebook.com/michael.a.goss\",\n gender: 2,\n type: \"user\",\n is_friend: false,\n social_snippets: null\n },],\n actions: [],\n commentlists: {\n comments: {\n 10200350995551582: {\n chronological: {\n range: {\n offset: 1,\n length: 4\n },\n values: [\"10200350995551582_4954379\",\"10200350995551582_4955913\",\"10200350995551582_4955915\",\"10200350995551582_4955918\",]\n }\n }\n },\n replies: {\n \"10200350995551582_4954379\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200350995551582\"\n },\n \"10200350995551582_4955913\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200350995551582\"\n },\n \"10200350995551582_4955915\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200350995551582\"\n },\n \"10200350995551582_4955918\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200350995551582\"\n }\n }\n },\n servertime: 1374851147\n },],1,],[\"m_0_3c\",[\"UFIController\",\"m_0_3b\",\"m_0_3d\",],[{\n __m: \"m_0_3b\"\n },{\n ftentidentifier: \"10200453104264236\",\n instanceid: \"u_0_1s\",\n source: 0,\n showaddcomment: true,\n collapseaddcomment: false,\n markedcomments: [],\n scrollcomments: false,\n scrollwidth: null,\n showshares: false,\n shownub: false,\n numberdelimiter: \",\",\n showtyping: 0,\n logtyping: 0,\n entstream: false,\n embedded: false,\n viewoptionstypeobjects: null,\n viewoptionstypeobjectsorder: null,\n giftoccasion: null,\n sht: 1,\n snowliftredesign: false,\n timelinelogdata: \"AQBNptZHHmcHSBHH338FbJIldzhdcVkA422y6Sejlj24O_ESfCpT1dhcH8BotHbB73c3HUp4765d0qfNUgarP7Vf2rTTbV5euFgCJSt9-8B4i86TjWur6gJ3K29twN6V9lo7fU3rQepgiuZt5KILXg7MqgN_w213GHwJL6FGgcWbUZlVBhXGuoklz4varOFzrDvH_-rITQWylbk82zJBzOEix9PGZ6QnysZWTe0NbHgtmvvEgOVVTF_JPYYKjGJasYG-JYrNmL-tbERXVcwbZ5iFNz9l0M26pG6TZqE6wNK0_l10ScDeVnFbXwhuV6wk73AHZ58nAtgqevhrI3rGzBuPUx02KACTcf1ScQRa2UwIeybAIzG6SY3-kSka4I-DhWD1-EPGDFc5Ff7eeuTE6lPB\"\n },{\n feedbacktargets: [{\n targetfbid: \"10200453104264236\",\n entidentifier: \"10200453104264236\",\n permalink: \"http://jsbngssl.www.facebook.com/photo.php?fbid=10200453104264236&set=a.1138433375108.2021456.1055580469&type=1\",\n commentcount: 8,\n likecount: 0,\n viewercanlike: true,\n hasviewerliked: false,\n cancomment: false,\n showremovemenu: false,\n actorforpost: \"100006118350059\",\n viewerid: \"100006118350059\",\n likesentences: {\n current: {\n },\n alternate: {\n text: \"You like this.\",\n ranges: [],\n aggregatedranges: []\n }\n },\n sharecount: 0,\n ownerid: \"1055580469\",\n lastseentime: null,\n canremoveall: false,\n seencount: 0,\n seenbyall: false,\n hasunseencollapsed: false,\n mentionsdatasource: {\n __m: \"m_0_3d\"\n },\n isranked: false,\n isthreaded: false,\n isownerpage: false,\n actorid: \"1055580469\",\n grouporeventid: null,\n allowphotoattachments: true,\n replysocialsentencemaxreplies: 10,\n showfeaturedreplies: false,\n viewercansubscribetopost: true,\n hasviewersubscribed: false,\n commentboxhoisted: false,\n hasaddcommentlink: false,\n defaultcommentorderingmode: \"chronological\",\n showsendonentertip: true\n },],\n comments: [{\n id: \"10200453104264236_3195897\",\n fbid: \"10200453144105232\",\n legacyid: \"3195897\",\n body: {\n text: \"When you add a hat it removes the long hair \\u003E_\\u003C\",\n ranges: [],\n aggregatedranges: []\n },\n author: \"1055580469\",\n ftentidentifier: \"10200453104264236\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: null,\n istranslatable: false,\n timestamp: {\n time: 1374637972,\n text: \"Tuesday at 8:52pm\",\n verbose: \"Tuesday, July 23, 2013 at 8:52pm\"\n },\n spamreplycount: 0,\n replyauthors: []\n },{\n id: \"10200453104264236_3195898\",\n fbid: \"10200453146945303\",\n legacyid: \"3195898\",\n body: {\n text: \"so.. the hair is a hat? steam's not down with hats on hats?\",\n ranges: [],\n aggregatedranges: []\n },\n author: \"8300496\",\n ftentidentifier: \"10200453104264236\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: null,\n istranslatable: false,\n timestamp: {\n time: 1374638034,\n text: \"Tuesday at 8:53pm\",\n verbose: \"Tuesday, July 23, 2013 at 8:53pm\"\n },\n spamreplycount: 0,\n replyauthors: []\n },{\n id: \"10200453104264236_3195907\",\n fbid: \"10200453153145458\",\n legacyid: \"3195907\",\n body: {\n text: \"(This is Saints Row the Third, so can't really blame Steam)\\u000a\\u000aNo, hats are a separate customization option, but it wouldn't let you combine long hair with the hat. It's like he stuffed all the hair into his hat.\",\n ranges: [],\n aggregatedranges: []\n },\n author: \"1055580469\",\n ftentidentifier: \"10200453104264236\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: null,\n istranslatable: false,\n timestamp: {\n time: 1374638180,\n text: \"Tuesday at 8:56pm\",\n verbose: \"Tuesday, July 23, 2013 at 8:56pm\"\n },\n spamreplycount: 0,\n replyauthors: []\n },{\n id: \"10200453104264236_3198160\",\n fbid: \"10200459439942624\",\n legacyid: \"3198160\",\n body: {\n text: \"You finally tried Saints Row the Third? :)\",\n ranges: [],\n aggregatedranges: []\n },\n author: \"1633181753\",\n ftentidentifier: \"10200453104264236\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: null,\n istranslatable: false,\n timestamp: {\n time: 1374733044,\n text: \"Wednesday at 11:17pm\",\n verbose: \"Wednesday, July 24, 2013 at 11:17pm\"\n },\n spamreplycount: 0,\n replyauthors: []\n },],\n profiles: [{\n id: \"100006118350059\",\n JSBNG__name: \"Javasee Cript\",\n firstName: \"Javasee\",\n vanity: \"javasee.cript\",\n thumbSrc: \"http://jsbngssl.fbcdn-profile-a.akamaihd.net/hprofile-ak-prn2/s32x32/275646_100006118350059_324335073_q.jpg\",\n uri: \"http://jsbngssl.www.facebook.com/javasee.cript\",\n gender: 2,\n type: \"user\",\n is_friend: false,\n social_snippets: null\n },{\n id: \"1055580469\",\n JSBNG__name: \"Gregor Richards\",\n firstName: \"Gregor\",\n vanity: \"LawlabeeTheWallaby\",\n thumbSrc: \"http://jsbngssl.fbcdn-profile-a.akamaihd.net/hprofile-ak-prn2/s32x32/276274_1055580469_962040234_q.jpg\",\n uri: \"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby\",\n gender: 2,\n type: \"user\",\n is_friend: false,\n social_snippets: null\n },{\n id: \"8300496\",\n JSBNG__name: \"Philip Ritchey\",\n firstName: \"Philip\",\n vanity: \"philipritchey\",\n thumbSrc: \"http://jsbngssl.profile-a-iad.xx.fbcdn.net/hprofile-prn1/s32x32/41769_8300496_5612_q.jpg\",\n uri: \"http://jsbngssl.www.facebook.com/philipritchey\",\n gender: 2,\n type: \"user\",\n is_friend: false,\n social_snippets: null\n },{\n id: \"1633181753\",\n JSBNG__name: \"Robert Nesius\",\n firstName: \"Robert\",\n vanity: \"rnesius\",\n thumbSrc: \"http://jsbngssl.fbcdn-profile-a.akamaihd.net/hprofile-ak-prn1/s32x32/573766_1633181753_1114062672_q.jpg\",\n uri: \"http://jsbngssl.www.facebook.com/rnesius\",\n gender: 2,\n type: \"user\",\n is_friend: false,\n social_snippets: null\n },],\n actions: [],\n commentlists: {\n comments: {\n 10200453104264236: {\n chronological: {\n range: {\n offset: 4,\n length: 4\n },\n values: [\"10200453104264236_3195897\",\"10200453104264236_3195898\",\"10200453104264236_3195907\",\"10200453104264236_3198160\",]\n }\n }\n },\n replies: {\n \"10200453104264236_3195897\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200453104264236\"\n },\n \"10200453104264236_3195898\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200453104264236\"\n },\n \"10200453104264236_3195907\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200453104264236\"\n },\n \"10200453104264236_3198160\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200453104264236\"\n }\n }\n },\n servertime: 1374851147\n },],1,],[\"m_0_3i\",[\"UFIController\",\"m_0_3h\",\"m_0_3j\",],[{\n __m: \"m_0_3h\"\n },{\n ftentidentifier: \"10200407437602598\",\n instanceid: \"u_0_1w\",\n source: 0,\n showaddcomment: true,\n collapseaddcomment: false,\n markedcomments: [],\n scrollcomments: false,\n scrollwidth: null,\n showshares: false,\n shownub: false,\n numberdelimiter: \",\",\n showtyping: 0,\n logtyping: 0,\n entstream: false,\n embedded: false,\n viewoptionstypeobjects: null,\n viewoptionstypeobjectsorder: null,\n giftoccasion: null,\n sht: 1,\n snowliftredesign: false,\n timelinelogdata: \"AQDQFbb-noUffn08-wYWq3sqYkrBn6PemZTva6mbp5t66h4yjEavOAYdkUoacT9VWRl0uDEW7vDbks_tWcJUANE75miHVSFsRLzVp0z6QRS8A-6U-bxgPk4MluQZyAw547yznIXQx6K5k79h3Q5XWXZCoLRpUsMobuUIt5V7QrU3wrLvqhL5bMnzwHbz3QzSYT6d5SwYbBLB-UDRNhNwiVw-SMynyyl0eYXm5Sh70OjHuBFTR0b0dpGqqRbsfSmcbiDTCwszsk-U82fECniRaqHQxpG7Kl5ystDd2c73YJ7j85bFpA6-N8fT1jM32e0sJM7oSj21k3xAu4cp7omIf5ObzedtL5uoB9-D2VKTHaFWRhDg-CzF1cwJDRSRPvlhZ5sWyw1hjgpeB2bGwZymew_x\"\n },{\n feedbacktargets: [{\n targetfbid: \"10200407437602598\",\n entidentifier: \"10200407437602598\",\n permalink: \"/LawlabeeTheWallaby/posts/10200407437602598\",\n commentcount: 13,\n likecount: 4,\n viewercanlike: true,\n hasviewerliked: false,\n cancomment: false,\n showremovemenu: false,\n actorforpost: \"100006118350059\",\n viewerid: \"100006118350059\",\n likesentences: {\n current: {\n text: \"4 people like this.\",\n ranges: [],\n aggregatedranges: [{\n offset: 0,\n length: 8,\n count: 4\n },]\n },\n alternate: {\n text: \"You and 4 others like this.\",\n ranges: [],\n aggregatedranges: [{\n offset: 8,\n length: 8,\n count: 4\n },]\n }\n },\n sharecount: 0,\n ownerid: \"1055580469\",\n lastseentime: null,\n canremoveall: false,\n seencount: 0,\n seenbyall: false,\n hasunseencollapsed: false,\n mentionsdatasource: {\n __m: \"m_0_3j\"\n },\n isranked: false,\n isthreaded: false,\n isownerpage: false,\n actorid: \"1055580469\",\n grouporeventid: null,\n allowphotoattachments: true,\n replysocialsentencemaxreplies: 10,\n showfeaturedreplies: false,\n viewercansubscribetopost: false,\n hasviewersubscribed: false,\n commentboxhoisted: false,\n hasaddcommentlink: false,\n defaultcommentorderingmode: \"chronological\",\n showsendonentertip: true\n },],\n comments: [{\n id: \"10200407437602598_4992459\",\n fbid: \"10200412564730773\",\n legacyid: \"4992459\",\n body: {\n text: \"You are the antithesis of what my husband has been writing his dissertation about.\",\n ranges: [],\n aggregatedranges: []\n },\n author: \"42000540\",\n ftentidentifier: \"10200407437602598\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: 1,\n istranslatable: false,\n timestamp: {\n time: 1374039953,\n text: \"July 16 at 10:45pm\",\n verbose: \"Tuesday, July 16, 2013 at 10:45pm\"\n },\n spamreplycount: 0,\n replyauthors: []\n },{\n id: \"10200407437602598_4992465\",\n fbid: \"10200412568530868\",\n legacyid: \"4992465\",\n body: {\n text: \"Harry: I'm turning 27, not 4\\u00bd...\\u000a\\u000aChrissi: Oh?\",\n ranges: [],\n aggregatedranges: []\n },\n author: \"1055580469\",\n ftentidentifier: \"10200407437602598\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: null,\n istranslatable: false,\n timestamp: {\n time: 1374040107,\n text: \"July 16 at 10:48pm\",\n verbose: \"Tuesday, July 16, 2013 at 10:48pm\"\n },\n spamreplycount: 0,\n replyauthors: []\n },{\n id: \"10200407437602598_4992473\",\n fbid: \"10200412578931128\",\n legacyid: \"4992473\",\n body: {\n text: \"irony vs satire/sarcasm, pragmatism, william james type stuff\",\n ranges: [],\n aggregatedranges: []\n },\n author: \"42000540\",\n ftentidentifier: \"10200407437602598\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: 1,\n istranslatable: false,\n timestamp: {\n time: 1374040490,\n text: \"July 16 at 10:54pm\",\n verbose: \"Tuesday, July 16, 2013 at 10:54pm\"\n },\n spamreplycount: 0,\n replyauthors: []\n },{\n id: \"10200407437602598_4996311\",\n fbid: \"10200417729139880\",\n legacyid: \"4996311\",\n body: {\n text: \":)\",\n ranges: [],\n aggregatedranges: []\n },\n author: \"1729068700\",\n ftentidentifier: \"10200407437602598\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: 1,\n istranslatable: false,\n timestamp: {\n time: 1374119198,\n text: \"July 17 at 8:46pm\",\n verbose: \"Wednesday, July 17, 2013 at 8:46pm\"\n },\n spamreplycount: 0,\n replyauthors: []\n },],\n profiles: [{\n id: \"42000540\",\n JSBNG__name: \"Chrissi Keith\",\n firstName: \"Chrissi\",\n vanity: \"taskmasterkeith\",\n thumbSrc: \"http://jsbngssl.profile-b-iad.xx.fbcdn.net/hprofile-ash4/s32x32/276211_42000540_1185711920_q.jpg\",\n uri: \"http://jsbngssl.www.facebook.com/taskmasterkeith\",\n gender: 1,\n type: \"user\",\n is_friend: false,\n social_snippets: null\n },{\n id: \"1055580469\",\n JSBNG__name: \"Gregor Richards\",\n firstName: \"Gregor\",\n vanity: \"LawlabeeTheWallaby\",\n thumbSrc: \"http://jsbngssl.fbcdn-profile-a.akamaihd.net/hprofile-ak-prn2/s32x32/276274_1055580469_962040234_q.jpg\",\n uri: \"http://jsbngssl.www.facebook.com/LawlabeeTheWallaby\",\n gender: 2,\n type: \"user\",\n is_friend: false,\n social_snippets: null\n },{\n id: \"1729068700\",\n JSBNG__name: \"Donna Rubens Renhard\",\n firstName: \"Donna\",\n vanity: \"donna.rubensrenhard\",\n thumbSrc: \"http://jsbngssl.fbcdn-profile-a.akamaihd.net/hprofile-ak-prn2/s32x32/187733_1729068700_888004086_q.jpg\",\n uri: \"http://jsbngssl.www.facebook.com/donna.rubensrenhard\",\n gender: 1,\n type: \"user\",\n is_friend: false,\n social_snippets: null\n },],\n actions: [],\n commentlists: {\n comments: {\n 10200407437602598: {\n chronological: {\n range: {\n offset: 9,\n length: 4\n },\n values: [\"10200407437602598_4992459\",\"10200407437602598_4992465\",\"10200407437602598_4992473\",\"10200407437602598_4996311\",]\n }\n }\n },\n replies: {\n \"10200407437602598_4992459\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200407437602598\"\n },\n \"10200407437602598_4992465\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200407437602598\"\n },\n \"10200407437602598_4992473\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200407437602598\"\n },\n \"10200407437602598_4996311\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200407437602598\"\n }\n }\n },\n servertime: 1374851147\n },],1,],[\"m_0_31\",[\"Popover\",\"m_0_32\",\"m_0_2z\",\"ContextualLayerAsyncRelative\",\"ContextualLayerAutoFlip\",],[{\n __m: \"m_0_32\"\n },{\n __m: \"m_0_2z\"\n },[{\n __m: \"ContextualLayerAsyncRelative\"\n },{\n __m: \"ContextualLayerAutoFlip\"\n },],{\n alignh: \"right\"\n },],3,],[\"m_0_3m\",[\"MultiBootstrapDataSource\",],[{\n maxResults: 3,\n queryData: {\n context: \"topics_limited_autosuggest\",\n viewer: 100006118350059,\n filter: [\"page\",\"user\",],\n rsp: \"mentions\"\n },\n queryEndpoint: \"/ajax/typeahead/search.php\",\n bootstrapData: {\n rsp: \"mentions\"\n },\n bootstrapEndpoints: [{\n endpoint: \"/ajax/typeahead/first_degree.php\",\n data: {\n context: \"mentions\",\n viewer: 100006118350059,\n token: \"1374777501-7\",\n filter: [\"page\",\"group\",\"app\",\"JSBNG__event\",\"user\",],\n options: [\"friends_only\",\"nm\",]\n }\n },]\n },],2,],[\"m_0_2v\",[\"PopoverAsyncMenu\",\"m_0_2w\",\"m_0_2u\",\"m_0_2t\",],[{\n __m: \"m_0_2w\"\n },{\n __m: \"m_0_2u\"\n },{\n __m: \"m_0_2t\"\n },\"/ajax/timeline/curation_menu_new.php?unit_data%5Bunit_type%5D=2&unit_data%5Bhash%5D=5791137008599102559&unit_data%5Bwindow_size%5D=3&unit_data%5Bwindow_start_time%5D=0&unit_data%5Bwindow_end_time%5D=1375340399&unit_data%5Bunit_start_time%5D=1373991800&unit_data%5Bunit_end_time%5D=1373991800&dom_id=u_0_1i×tamp=1373991800&impression_id=b1113c18&is_start=1&friendship_page_id=0&is_pinned_page_post=0&profile_id=1055580469&start=0&end=1375340399&query_type=39&show_star=1&star_req=1\",[],],1,],[\"m_0_2r\",[\"Popover\",\"m_0_2s\",\"m_0_2p\",\"ContextualLayerAsyncRelative\",\"ContextualLayerAutoFlip\",],[{\n __m: \"m_0_2s\"\n },{\n __m: \"m_0_2p\"\n },[{\n __m: \"ContextualLayerAsyncRelative\"\n },{\n __m: \"ContextualLayerAutoFlip\"\n },],{\n alignh: \"right\"\n },],3,],[\"m_0_3g\",[\"MultiBootstrapDataSource\",],[{\n maxResults: 3,\n queryData: {\n context: \"topics_limited_autosuggest\",\n viewer: 100006118350059,\n filter: [\"page\",\"user\",],\n rsp: \"mentions\"\n },\n queryEndpoint: \"/ajax/typeahead/search.php\",\n bootstrapData: {\n rsp: \"mentions\"\n },\n bootstrapEndpoints: [{\n endpoint: \"/ajax/typeahead/first_degree.php\",\n data: {\n context: \"mentions\",\n viewer: 100006118350059,\n token: \"1374777501-7\",\n filter: [\"page\",\"group\",\"app\",\"JSBNG__event\",\"user\",],\n options: [\"friends_only\",\"nm\",]\n }\n },]\n },],2,],[\"m_0_3n\",[\"XHPTemplate\",\"m_0_3o\",],[{\n __m: \"m_0_3o\"\n },],2,],[\"m_0_2o\",[\"PopoverLoadingMenu\",\"MenuTheme\",],[{\n theme: {\n __m: \"MenuTheme\"\n }\n },],3,],[\"m_0_3d\",[\"MultiBootstrapDataSource\",],[{\n maxResults: 3,\n queryData: {\n context: \"topics_limited_autosuggest\",\n viewer: 100006118350059,\n filter: [\"page\",\"user\",],\n rsp: \"mentions\",\n photo_fbid: \"10200453104264236\"\n },\n queryEndpoint: \"/ajax/typeahead/search.php\",\n bootstrapData: {\n rsp: \"mentions\"\n },\n bootstrapEndpoints: [{\n endpoint: \"/ajax/typeahead/first_degree.php\",\n data: {\n context: \"mentions\",\n viewer: 100006118350059,\n token: \"1374777501-7\",\n filter: [\"page\",\"group\",\"app\",\"JSBNG__event\",\"user\",],\n options: [\"friends_only\",\"nm\",]\n }\n },]\n },],2,],[\"m_0_2q\",[\"PopoverAsyncMenu\",\"m_0_2r\",\"m_0_2p\",\"m_0_2o\",],[{\n __m: \"m_0_2r\"\n },{\n __m: \"m_0_2p\"\n },{\n __m: \"m_0_2o\"\n },\"/ajax/timeline/curation_menu_new.php?unit_data%5Bunit_type%5D=2&unit_data%5Bhash%5D=2953496614934485437&unit_data%5Bwindow_size%5D=3&unit_data%5Bwindow_start_time%5D=0&unit_data%5Bwindow_end_time%5D=1375340399&unit_data%5Bunit_start_time%5D=1373055341&unit_data%5Bunit_end_time%5D=1373055341&dom_id=u_0_1f×tamp=1373055341&impression_id=b1113c18&is_start=1&friendship_page_id=0&is_pinned_page_post=0&profile_id=1055580469&start=0&end=1375340399&query_type=39&show_star=1&star_req=1\",[],],1,],[\"m_0_2t\",[\"PopoverLoadingMenu\",\"MenuTheme\",],[{\n theme: {\n __m: \"MenuTheme\"\n }\n },],3,],[\"m_0_30\",[\"PopoverAsyncMenu\",\"m_0_31\",\"m_0_2z\",\"m_0_2y\",],[{\n __m: \"m_0_31\"\n },{\n __m: \"m_0_2z\"\n },{\n __m: \"m_0_2y\"\n },\"/ajax/timeline/curation_menu_new.php?unit_data%5Bunit_type%5D=69&unit_data%5Bhash%5D=1267290328123522761&unit_data%5Bwindow_size%5D=3&unit_data%5Bwindow_start_time%5D=0&unit_data%5Bwindow_end_time%5D=1375340399&unit_data%5Bunit_start_time%5D=1374637162&unit_data%5Bunit_end_time%5D=1374637162&dom_id=u_0_1l×tamp=1374637162&impression_id=b1113c18&is_start=1&friendship_page_id=0&is_pinned_page_post=0&profile_id=1055580469&start=0&end=1375340399&query_type=39&show_star=1&star_req=1\",[],],1,],[\"m_0_2y\",[\"PopoverLoadingMenu\",\"MenuTheme\",],[{\n theme: {\n __m: \"MenuTheme\"\n }\n },],3,],[\"m_0_2m\",[\"Popover\",\"m_0_2n\",\"m_0_2k\",\"ContextualLayerAsyncRelative\",\"ContextualLayerAutoFlip\",],[{\n __m: \"m_0_2n\"\n },{\n __m: \"m_0_2k\"\n },[{\n __m: \"ContextualLayerAsyncRelative\"\n },{\n __m: \"ContextualLayerAutoFlip\"\n },],{\n alignh: \"right\"\n },],3,],[\"m_0_3l\",[\"UFIController\",\"m_0_3k\",\"m_0_3m\",],[{\n __m: \"m_0_3k\"\n },{\n ftentidentifier: \"10200343222477260\",\n instanceid: \"u_0_1y\",\n source: 0,\n showaddcomment: true,\n collapseaddcomment: false,\n markedcomments: [],\n scrollcomments: false,\n scrollwidth: null,\n showshares: false,\n shownub: false,\n numberdelimiter: \",\",\n showtyping: 0,\n logtyping: 0,\n entstream: false,\n embedded: false,\n viewoptionstypeobjects: null,\n viewoptionstypeobjectsorder: null,\n giftoccasion: null,\n sht: 1,\n snowliftredesign: false,\n timelinelogdata: \"AQAr9lR2vZdldJ-VKsQo7OWaxXGctSzumkX_OWY9tMv34KoO2FztCqmqb8QBDYnKVWW99VqdbOskntjWhjy7W_MUFXYbmHi4oEJJ321uNu0XUYOzGWm_7u7pnY0zKn9thJ5ghe3h9Y4OukyraP07GphpWlsRiSVa_A-1EMIWIdeKmf-CJmEKmfCxEsM18xb2jjadO65ng8zpr6Dn3Z4o7hjV6OmtF3SCq3PgmXDdmdeFwvX8OgXFZncq4jrAd-dd1qH-0sddZKJuEM2b9WV5eyh_PipSNsi3uC6SpYHby30MLarSM5sgjVZxzOxLhdYkWGiF5kRqMgD0DZdRN5FoDtL6gTy--Mt8pP_wYiB8kl7IExZc3NIFNruO-xiWNXHnSp7mFJ4K4onngXPGTiY4s_d4\"\n },{\n feedbacktargets: [{\n targetfbid: \"10200343222477260\",\n entidentifier: \"10200343222477260\",\n permalink: \"/LawlabeeTheWallaby/posts/10200343222477260\",\n commentcount: 11,\n likecount: 7,\n viewercanlike: true,\n hasviewerliked: false,\n cancomment: false,\n showremovemenu: false,\n actorforpost: \"100006118350059\",\n viewerid: \"100006118350059\",\n likesentences: {\n current: {\n text: \"7 people like this.\",\n ranges: [],\n aggregatedranges: [{\n offset: 0,\n length: 8,\n count: 7\n },]\n },\n alternate: {\n text: \"You and 7 others like this.\",\n ranges: [],\n aggregatedranges: [{\n offset: 8,\n length: 8,\n count: 7\n },]\n }\n },\n sharecount: 0,\n ownerid: \"1055580469\",\n lastseentime: null,\n canremoveall: false,\n seencount: 0,\n seenbyall: false,\n hasunseencollapsed: false,\n mentionsdatasource: {\n __m: \"m_0_3m\"\n },\n isranked: false,\n isthreaded: false,\n isownerpage: false,\n actorid: \"1055580469\",\n grouporeventid: null,\n allowphotoattachments: true,\n replysocialsentencemaxreplies: 10,\n showfeaturedreplies: false,\n viewercansubscribetopost: false,\n hasviewersubscribed: false,\n commentboxhoisted: false,\n hasaddcommentlink: false,\n defaultcommentorderingmode: \"chronological\",\n showsendonentertip: true\n },],\n comments: [{\n id: \"10200343222477260_4946958\",\n fbid: \"10200346777686138\",\n legacyid: \"4946958\",\n body: {\n text: \"Does it have a sense of the surreal or are you just sharing a data point? ;)\",\n ranges: [],\n aggregatedranges: []\n },\n author: \"1633181753\",\n ftentidentifier: \"10200343222477260\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: null,\n istranslatable: false,\n timestamp: {\n time: 1372985540,\n text: \"July 4 at 5:52pm\",\n verbose: \"Thursday, July 4, 2013 at 5:52pm\"\n },\n spamreplycount: 0,\n replyauthors: []\n },{\n id: \"10200343222477260_4947623\",\n fbid: \"10200347758230651\",\n legacyid: \"4947623\",\n body: {\n text: \"Merely minor amusement.\",\n ranges: [],\n aggregatedranges: []\n },\n author: \"1055580469\",\n ftentidentifier: \"10200343222477260\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: null,\n istranslatable: false,\n timestamp: {\n time: 1373002430,\n text: \"July 4 at 10:33pm\",\n verbose: \"Thursday, July 4, 2013 at 10:33pm\"\n },\n spamreplycount: 0,\n replyauthors: []\n },{\n id: \"10200343222477260_4950566\",\n fbid: \"10200351838652659\",\n legacyid: \"4950566\",\n body: {\n text: \"Did you wear http://img2.etsystatic.com/005/0/8125869/il_570xN.471485474_swpa.jpg\",\n ranges: [{\n offset: 13,\n length: 68,\n entities: [{\n url: \"http://img2.etsystatic.com/005/0/8125869/il_570xN.471485474_swpa.jpg\",\n shimhash: \"zAQGz2cVu\",\n id: \"0746af69b9da85d793efe61531abaafe\",\n JSBNG__external: true\n },]\n },],\n aggregatedranges: []\n },\n author: \"53600996\",\n ftentidentifier: \"10200343222477260\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: null,\n istranslatable: false,\n timestamp: {\n time: 1373066508,\n text: \"July 5 at 4:21pm\",\n verbose: \"Friday, July 5, 2013 at 4:21pm\"\n },\n spamreplycount: 0,\n replyauthors: []\n },{\n id: \"10200343222477260_4950571\",\n fbid: \"10200351843052769\",\n legacyid: \"4950571\",\n body: {\n text: \"That's the most delightfully offensive piece of apparel I've seen in quite some time.\",\n ranges: [],\n aggregatedranges: []\n },\n author: \"1055580469\",\n ftentidentifier: \"10200343222477260\",\n likecount: 0,\n hasviewerliked: false,\n canremove: false,\n canreport: true,\n canedit: false,\n source: null,\n istranslatable: false,\n timestamp: {\n time: 1373066594,\n text: \"July 5 at 4:23pm\",\n verbose: \"Friday, July 5, 2013 at 4:23pm\"\n },\n spamreplycount: 0,\n replyauthors: []\n },],\n profiles: [{\n id: \"53600996\",\n JSBNG__name: \"Harrison Metzger\",\n firstName: \"Harrison\",\n vanity: \"harrisonmetz\",\n thumbSrc: \"http://jsbngssl.fbcdn-profile-a.akamaihd.net/hprofile-ak-ash4/s32x32/195694_53600996_1993816119_q.jpg\",\n uri: \"http://jsbngssl.www.facebook.com/harrisonmetz\",\n gender: 2,\n type: \"user\",\n is_friend: false,\n social_snippets: null\n },],\n actions: [],\n commentlists: {\n comments: {\n 10200343222477260: {\n chronological: {\n range: {\n offset: 7,\n length: 4\n },\n values: [\"10200343222477260_4946958\",\"10200343222477260_4947623\",\"10200343222477260_4950566\",\"10200343222477260_4950571\",]\n }\n }\n },\n replies: {\n \"10200343222477260_4946958\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200343222477260\"\n },\n \"10200343222477260_4947623\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200343222477260\"\n },\n \"10200343222477260_4950566\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200343222477260\"\n },\n \"10200343222477260_4950571\": {\n range: {\n offset: 0,\n length: 0\n },\n values: [],\n count: 0,\n ftentidentifier: \"10200343222477260\"\n }\n }\n },\n servertime: 1374851147\n },],1,],[\"m_0_2w\",[\"Popover\",\"m_0_2x\",\"m_0_2u\",\"ContextualLayerAsyncRelative\",\"ContextualLayerAutoFlip\",],[{\n __m: \"m_0_2x\"\n },{\n __m: \"m_0_2u\"\n },[{\n __m: \"ContextualLayerAsyncRelative\"\n },{\n __m: \"ContextualLayerAutoFlip\"\n },],{\n alignh: \"right\"\n },],3,],[\"m_0_2l\",[\"PopoverAsyncMenu\",\"m_0_2m\",\"m_0_2k\",\"m_0_2j\",],[{\n __m: \"m_0_2m\"\n },{\n __m: \"m_0_2k\"\n },{\n __m: \"m_0_2j\"\n },\"/ajax/timeline/curation_menu_new.php?unit_data%5Bunit_type%5D=2&unit_data%5Bhash%5D=4498726532280095426&unit_data%5Bwindow_size%5D=3&unit_data%5Bwindow_start_time%5D=0&unit_data%5Bwindow_end_time%5D=1375340399&unit_data%5Bunit_start_time%5D=1372923465&unit_data%5Bunit_end_time%5D=1372923465&dom_id=u_0_1c×tamp=1372923465&impression_id=b1113c18&is_start=1&friendship_page_id=0&is_pinned_page_post=0&profile_id=1055580469&start=0&end=1375340399&query_type=39&show_star=1&star_req=1\",[],],1,],],\n define: [[\"CLogConfig\",[],{\n gkResults: 1\n },174,],[\"UFICommentTemplates\",[\"m_0_3n\",],{\n \":fb:ufi:hide-dialog-template\": {\n __m: \"m_0_3n\"\n }\n },70,],[\"UFISpamCountImpl\",[],{\n \"module\": null\n },72,],[\"UFIConfig\",[],{\n renderEmoji: true,\n renderEmoticons: 1\n },71,],],\n elements: [[\"m_0_34\",\"u_0_1p\",2,],[\"m_0_3b\",\"u_0_1t\",2,],[\"m_0_2x\",\"u_0_1j\",2,],[\"m_0_36\",\"u_0_1r\",2,],[\"m_0_2s\",\"u_0_1g\",2,],[\"m_0_2k\",\"u_0_1e\",4,],[\"m_0_32\",\"u_0_1m\",2,],[\"m_0_33\",\"u_0_1o\",2,],[\"m_0_39\",\"u_0_1q\",2,],[\"m_0_3e\",\"u_0_1v\",2,],[\"m_0_35\",\"u_0_1q\",2,],[\"m_0_38\",\"u_0_1p\",2,],[\"m_0_3h\",\"u_0_1x\",2,],[\"m_0_3k\",\"u_0_1z\",2,],[\"m_0_3a\",\"u_0_1r\",2,],[\"m_0_37\",\"u_0_1o\",2,],[\"m_0_2z\",\"u_0_1n\",4,],[\"m_0_2p\",\"u_0_1h\",4,],[\"m_0_2u\",\"u_0_1k\",4,],[\"m_0_2n\",\"u_0_1d\",2,],],\n markup: [[\"m_0_3o\",{\n __html: \"\\u003Cdiv\\u003E\\u003Cdiv class=\\\"pvs phm -cx-PUBLIC-uiDialog__title\\\" data-jsid=\\\"title\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"pam -cx-PRIVATE-uiDialog__body\\\" data-jsid=\\\"body\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-uiDialog__footer\\\"\\u003E\\u003Cdiv class=\\\"pam uiOverlayFooter uiBoxGray topborder\\\"\\u003E\\u003Cbutton value=\\\"1\\\" class=\\\"-cx-PRIVATE-abstractButton__root -cx-PRIVATE-uiButton__root layerConfirm uiOverlayButton selected -cx-PRIVATE-uiButton__confirm -cx-PRIVATE-uiButton__large\\\" data-jsid=\\\"delete\\\" type=\\\"submit\\\"\\u003EDelete\\u003C/button\\u003E\\u003Ca class=\\\"-cx-PRIVATE-abstractButton__root -cx-PRIVATE-uiButton__root layerCancel uiOverlayButton -cx-PRIVATE-uiButton__large\\\" role=\\\"button\\\" href=\\\"#\\\"\\u003ECancel\\u003C/a\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],]\n },\n css: [\"UmFO+\",\"veUjj\",\"j1x0z\",\"tAd6o\",],\n bootloadable: {\n TypeaheadHoistFriends: {\n resources: [\"OFYQ5\",],\n \"module\": true\n },\n \"UFIEntStreamOrderingModeSelector.react\": {\n resources: [\"OH3xD\",\"XH2Cu\",\"UmFO+\",\"ociRJ\",\"/MWWQ\",\"f7Tpb\",\"AVmr9\",\"OYzUx\",\"veUjj\",\"dShSX\",\"HgCpx\",\"0q2Dj\",\"QZ9ii\",\"aG0Oj\",\"iAvmX\",\"TXKLp\",\"kcpXP\",],\n \"module\": true\n },\n InputSelection: {\n resources: [\"OH3xD\",\"UmFO+\",\"f7Tpb\",],\n \"module\": true\n },\n FileInputUploader: {\n resources: [\"OH3xD\",\"f7Tpb\",\"TXKLp\",\"4/uwC\",\"7w6kA\",],\n \"module\": true\n },\n DialogX: {\n resources: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"UmFO+\",\"XH2Cu\",],\n \"module\": true\n },\n ContextualTypeaheadView: {\n resources: [\"OH3xD\",\"veUjj\",\"/MWWQ\",\"UmFO+\",\"f7Tpb\",\"AVmr9\",],\n \"module\": true\n },\n TypeaheadBestName: {\n resources: [\"XH2Cu\",\"/MWWQ\",],\n \"module\": true\n },\n TypeaheadMetrics: {\n resources: [\"OH3xD\",\"OFYQ5\",],\n \"module\": true\n },\n MentionsInput: {\n resources: [\"OH3xD\",\"UmFO+\",\"f7Tpb\",\"OFYQ5\",\"XH2Cu\",\"AVmr9\",\"veUjj\",],\n \"module\": true\n },\n TypingDetector: {\n resources: [\"OH3xD\",\"OSd/n\",],\n \"module\": true\n },\n TypeaheadAreaCore: {\n resources: [\"OH3xD\",\"UmFO+\",\"f7Tpb\",\"/MWWQ\",\"OFYQ5\",],\n \"module\": true\n },\n EntstreamPubContentOverlay: {\n resources: [\"OH3xD\",\"XH2Cu\",\"veUjj\",\"ociRJ\",\"f7Tpb\",\"UmFO+\",\"AVmr9\",\"SZ74q\",\"gJ7+m\",\"/MWWQ\",\"TXKLp\",\"za92D\",\"kcpXP\",\"js0se\",\"m5aEV\",],\n \"module\": true\n },\n CompactTypeaheadRenderer: {\n resources: [\"OH3xD\",\"veUjj\",\"/MWWQ\",],\n \"module\": true\n },\n ScrollAwareDOM: {\n resources: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",],\n \"module\": true\n },\n \"legacy:live-js\": {\n resources: [\"OH3xD\",\"WLpRY\",\"XH2Cu\",]\n },\n collectDataAttributes: {\n resources: [\"OH3xD\",],\n \"module\": true\n },\n UFIScrollHighlight: {\n resources: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"5iOnb\",\"rSdpp\",],\n \"module\": true\n },\n UFIComments: {\n resources: [\"XH2Cu\",\"ociRJ\",\"OH3xD\",],\n \"module\": true\n },\n UFIRetryActions: {\n resources: [\"OH3xD\",\"XH2Cu\",\"ociRJ\",\"8ay4F\",],\n \"module\": true\n },\n LegacyMenuUtils: {\n resources: [\"OH3xD\",\"OYzUx\",\"f7Tpb\",\"/MWWQ\",\"AVmr9\",\"veUjj\",\"XH2Cu\",\"0q2Dj\",\"UmFO+\",\"BRnsj\",],\n \"module\": true\n },\n HashtagLayerPageController: {\n resources: [\"OH3xD\",\"XH2Cu\",\"veUjj\",\"ociRJ\",\"f7Tpb\",\"UmFO+\",\"AVmr9\",\"SZ74q\",\"IxyKh\",\"9epYo\",\"Vczhe\",\"/MWWQ\",\"gJ7+m\",\"BBKr2\",\"MuiPI\",\"AMFDz\",\"qRGqD\",],\n \"module\": true\n },\n \"legacy:ufi-tracking-js\": {\n resources: [\"WLpRY\",]\n },\n CLoggerX: {\n resources: [\"OH3xD\",\"ociRJ\",],\n \"module\": true\n },\n \"UFICommentRemovalControls.react\": {\n resources: [\"XH2Cu\",\"OH3xD\",\"veUjj\",\"OZCPo\",],\n \"module\": true\n },\n DOMScroll: {\n resources: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",],\n \"module\": true\n },\n ScrollableArea: {\n resources: [\"OH3xD\",\"f7Tpb\",\"/MWWQ\",\"AVmr9\",\"veUjj\",],\n \"module\": true\n },\n HashtagParser: {\n resources: [\"OSd/n\",\"+P3v8\",],\n \"module\": true\n },\n TextAreaControl: {\n resources: [\"OH3xD\",\"4/uwC\",\"veUjj\",],\n \"module\": true\n },\n LegacyContextualDialog: {\n resources: [\"OH3xD\",\"/MWWQ\",\"bmJBG\",\"f7Tpb\",\"AVmr9\",\"UmFO+\",\"veUjj\",],\n \"module\": true\n },\n Typeahead: {\n resources: [\"f7Tpb\",\"OH3xD\",\"veUjj\",\"/MWWQ\",],\n \"module\": true\n },\n Hovercard: {\n resources: [\"OH3xD\",\"UmFO+\",\"/MWWQ\",\"AVmr9\",\"f7Tpb\",],\n \"module\": true\n },\n FileInput: {\n resources: [\"OH3xD\",\"AVmr9\",\"UmFO+\",\"veUjj\",],\n \"module\": true\n },\n \"UFIOrderingModeSelector.react\": {\n resources: [\"OH3xD\",\"XH2Cu\",\"UmFO+\",\"ociRJ\",\"OYzUx\",\"f7Tpb\",\"/MWWQ\",\"AVmr9\",\"veUjj\",\"dShSX\",],\n \"module\": true\n }\n },\n resource_map: {\n kcpXP: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y7/r/F1V9PnKbxuN.js\"\n },\n SZ74q: {\n type: \"css\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yB/r/2TiFHJIlpz4.css\"\n },\n ywV7J: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yt/r/wyUJpAs1Jud.js\"\n },\n \"7w6kA\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y7/r/P5ro3SB0fYh.js\"\n },\n rSdpp: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yc/r/2PkTFjdVPzc.js\"\n },\n BRnsj: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yG/r/Zl5MQqq69ii.js\"\n },\n qRGqD: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yq/r/0zNvPsl4_Iy.js\"\n },\n \"0q2Dj\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/ye/r/6AN8Ic-0Y1P.js\"\n },\n IxyKh: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yz/r/7f-bDgHTzcK.js\"\n },\n BBKr2: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yi/r/2RUWo8vhW3Y.js\"\n },\n HgCpx: {\n type: \"css\",\n permanent: 1,\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yZ/r/b9CwnSvNFr4.css\"\n },\n Vczhe: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yx/r/PNcm9agI5Po.js\"\n },\n \"8ay4F\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yC/r/VrfxLTcinh0.js\"\n },\n m5aEV: {\n type: \"css\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yV/r/yfRGukr04iK.css\"\n },\n OZCPo: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yR/r/wHB0tbxOz8q.js\"\n },\n aG0Oj: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yD/r/56drIuXqn1s.js\"\n },\n MuiPI: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yh/r/7aLu6r05bf7.js\"\n },\n \"9epYo\": {\n type: \"css\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yg/r/cgIp7Mxhz_d.css\"\n },\n bmJBG: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yK/r/RErt59oF4EQ.js\"\n },\n QZ9ii: {\n type: \"css\",\n permanent: 1,\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yI/r/BdtVXmiio69.css\"\n },\n OFYQ5: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y-/r/EKMXXey106d.js\"\n },\n iAvmX: {\n type: \"css\",\n permanent: 1,\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yj/r/-UKFu9u490q.css\"\n },\n \"gJ7+m\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yw/r/YaDMduhjA8v.js\"\n },\n \"5iOnb\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yt/r/MjMy0el_azO.js\"\n },\n AMFDz: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yb/r/l0jEiYB1BY4.js\"\n }\n },\n ixData: {\n \"/images/group_gifts/icons/gift_icon_red-13px.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_b8k8sa\",\n spriteCssClass: \"sx_b82a0c\"\n }\n },\n js: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"nxD7O\",\"xfhln\",\"XH2Cu\",\"gyG67\",\"/MWWQ\",\"e0RyX\",\"OYzUx\",\"ywV7J\",\"ociRJ\",],\n displayJS: [\"OH3xD\",\"XH2Cu\",\"ociRJ\",],\n onafterload: [\"Bootloader.loadComponents([\\\"legacy:live-js\\\"], function(){ Live.startup() });\",\"Bootloader.loadComponents([\\\"legacy:live-js\\\"], function(){ Live.startup() });\",\"Bootloader.loadComponents([\\\"legacy:live-js\\\"], function(){ Live.startup() });\",\"Bootloader.loadComponents([\\\"legacy:live-js\\\"], function(){ Live.startup() });\",\"Bootloader.loadComponents([\\\"legacy:ufi-tracking-js\\\"], function(){ ufi_add_all_link_data(); });\",],\n id: \"pagelet_timeline_recent_segment_0_0_left\",\n phase: 2,\n tti_phase: 2\n});"); |
| // 5043 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_175[0], o23,o37); |
| // undefined |
| o23 = null; |
| // undefined |
| o37 = null; |
| // 5047 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"/MWWQ\",]);\n}\n;\n__d(\"EgoAdsObjectSet\", [\"copyProperties\",\"csx\",\"DOM\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"csx\"), i = b(\"DOM\");\n function j() {\n this._allEgoUnits = [];\n this._egoUnits = [];\n };\n g(j.prototype, {\n init: function(l) {\n this._allEgoUnits = l;\n this._egoUnits = [];\n this._allEgoUnits.forEach(function(m) {\n var n = k(m);\n if ((!n || !n.holdout)) {\n this._egoUnits.push(m);\n };\n }, this);\n },\n getCount: function() {\n return this._egoUnits.length;\n },\n forEach: function(l, m) {\n this._egoUnits.forEach(l, m);\n },\n getUnit: function(l) {\n return this._egoUnits[l];\n },\n getHoldoutAdIDsForSpace: function(l, m) {\n if ((!l || !m)) {\n return []\n };\n var n = [];\n for (var o = 0; ((l > 0) && (o < this._allEgoUnits.length)); o++) {\n var p = this._allEgoUnits[o], q = m(p), r = k(p);\n if ((((l >= q) && r) && r.holdout)) {\n n.push(r.adid);\n };\n l -= q;\n };\n return n;\n },\n getHoldoutAdIDsForNumAds: function(l) {\n l = Math.min(l, this._allEgoUnits.length);\n var m = [];\n for (var n = 0; (n < l); n++) {\n var o = this._allEgoUnits[n], p = k(o);\n if ((p && p.holdout)) {\n m.push(p.adid);\n };\n };\n return m;\n }\n });\n function k(l) {\n var m = i.scry(l, \"div.-cx-PUBLIC-fbAdUnit__root\")[0], n = (m && m.getAttribute(\"data-ad\"));\n return ((n && JSON.parse(n)) || undefined);\n };\n e.exports = j;\n});\n__d(\"Rect\", [\"Vector\",\"$\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Vector\"), h = b(\"$\"), i = b(\"copyProperties\");\n function j(k, l, m, n, o) {\n if ((arguments.length === 1)) {\n if ((k instanceof j)) {\n return k\n };\n if ((k instanceof g)) {\n return new j(k.y, k.x, k.y, k.x, k.domain)\n };\n return j.getElementBounds(h(k));\n }\n ;\n i(this, {\n t: k,\n r: l,\n b: m,\n l: n,\n domain: (o || \"pure\")\n });\n };\n i(j.prototype, {\n w: function() {\n return (this.r - this.l);\n },\n h: function() {\n return (this.b - this.t);\n },\n toString: function() {\n return ((((((((\"((\" + this.l) + \", \") + this.t) + \"), (\") + this.r) + \", \") + this.b) + \"))\");\n },\n contains: function(k) {\n k = new j(k).convertTo(this.domain);\n var l = this;\n return (((((l.l <= k.l) && (l.r >= k.r)) && (l.t <= k.t)) && (l.b >= k.b)));\n },\n add: function(k, l) {\n if ((arguments.length == 1)) {\n if ((k.domain != \"pure\")) {\n k = k.convertTo(this.domain);\n };\n return this.add(k.x, k.y);\n }\n ;\n var m = parseFloat(k), n = parseFloat(l);\n return new j((this.t + n), (this.r + m), (this.b + n), (this.l + m), this.domain);\n },\n sub: function(k, l) {\n if ((arguments.length == 1)) {\n return this.add(k.mul(-1));\n }\n else return this.add(-k, -l)\n ;\n },\n rotateAroundOrigin: function(k) {\n var l = this.getCenter().rotate(((k * Math.PI) / 2)), m, n;\n if ((k % 2)) {\n m = this.h();\n n = this.w();\n }\n else {\n m = this.w();\n n = this.h();\n }\n ;\n var o = (l.y - (n / 2)), p = (l.x - (m / 2)), q = (o + n), r = (p + m);\n return new j(o, r, q, p, this.domain);\n },\n boundWithin: function(k) {\n var l = 0, m = 0;\n if ((this.l < k.l)) {\n l = (k.l - this.l);\n }\n else if ((this.r > k.r)) {\n l = (k.r - this.r);\n }\n ;\n if ((this.t < k.t)) {\n m = (k.t - this.t);\n }\n else if ((this.b > k.b)) {\n m = (k.b - this.b);\n }\n ;\n return this.add(l, m);\n },\n getCenter: function() {\n return new g((this.l + (this.w() / 2)), (this.t + (this.h() / 2)), this.domain);\n },\n getPositionVector: function() {\n return new g(this.l, this.t, this.domain);\n },\n getDimensionVector: function() {\n return new g(this.w(), this.h(), \"pure\");\n },\n convertTo: function(k) {\n if ((this.domain == k)) {\n return this\n };\n if ((k == \"pure\")) {\n return new j(this.t, this.r, this.b, this.l, \"pure\")\n };\n if ((this.domain == \"pure\")) {\n return new j(0, 0, 0, 0)\n };\n var l = new g(this.l, this.t, this.domain).convertTo(k);\n return new j(l.y, (l.x + this.w()), (l.y + this.h()), l.x, k);\n }\n });\n i(j, {\n deserialize: function(k) {\n var l = k.split(\":\");\n return new j(parseFloat(l[1]), parseFloat(l[2]), parseFloat(l[3]), parseFloat(l[0]));\n },\n newFromVectors: function(k, l) {\n return new j(k.y, (k.x + l.x), (k.y + l.y), k.x, k.domain);\n },\n getElementBounds: function(k) {\n return j.newFromVectors(g.getElementPosition(k), g.getElementDimensions(k));\n },\n getViewportBounds: function() {\n return j.newFromVectors(g.getScrollPosition(), g.getViewportDimensions());\n },\n minimumBoundingBox: function(k) {\n var l = new j(Math.min(), Math.max(), Math.max(), Math.min()), m;\n for (var n = 0; (n < k.length); n++) {\n m = k[n];\n l.t = Math.min(l.t, m.t);\n l.r = Math.max(l.r, m.r);\n l.b = Math.max(l.b, m.b);\n l.l = Math.min(l.l, m.l);\n };\n return l;\n }\n });\n e.exports = j;\n});\n__d(\"legacy:ChatTypeaheadBehavior\", [\"ChatTypeaheadBehavior\",], function(a, b, c, d) {\n var e = b(\"ChatTypeaheadBehavior\");\n if (!a.TypeaheadBehaviors) {\n a.TypeaheadBehaviors = {\n };\n };\n a.TypeaheadBehaviors.chatTypeahead = function(f) {\n f.enableBehavior(e);\n };\n}, 3);\n__d(\"legacy:dom-html\", [\"HTML\",], function(a, b, c, d) {\n a.HTML = b(\"HTML\");\n}, 3);\n__d(\"legacy:dom\", [\"DOM\",], function(a, b, c, d) {\n a.DOM = b(\"DOM\");\n}, 3);\n__d(\"TypeaheadFacepile\", [\"DOM\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\");\n function h() {\n \n };\n h.render = function(i) {\n var j = [g.create(\"span\", {\n className: \"splitpic leftpic\"\n }, [g.create(\"img\", {\n alt: \"\",\n src: i[0]\n }),]),g.create(\"span\", {\n className: (\"splitpic\" + ((i[2] ? \" toppic\" : \"\")))\n }, [g.create(\"img\", {\n alt: \"\",\n src: i[1]\n }),]),];\n if (i[2]) {\n j.push(g.create(\"span\", {\n className: \"splitpic bottompic\"\n }, [g.create(\"img\", {\n alt: \"\",\n src: i[2]\n }),]));\n };\n return g.create(\"span\", {\n className: \"splitpics clearfix\"\n }, j);\n };\n e.exports = h;\n});\n__d(\"NavigationMessage\", [], function(a, b, c, d, e, f) {\n var g = {\n NAVIGATION_BEGIN: \"NavigationMessage/navigationBegin\",\n NAVIGATION_SELECT: \"NavigationMessage/navigationSelect\",\n NAVIGATION_FIRST_RESPONSE: \"NavigationMessage/navigationFirstResponse\",\n NAVIGATION_COMPLETED: \"NavigationMessage/navigationCompleted\",\n NAVIGATION_FAILED: \"NavigationMessage/navigationFailed\",\n NAVIGATION_COUNT_UPDATE: \"NavigationMessage/navigationCount\",\n NAVIGATION_FAVORITE_UPDATE: \"NavigationMessage/navigationFavoriteUpdate\",\n NAVIGATION_ITEM_REMOVED: \"NavigationMessage/navigationItemRemoved\",\n NAVIGATION_ITEM_HIDDEN: \"NavigationMessage/navigationItemHidden\",\n INTERNAL_LOADING_BEGIN: \"NavigationMessage/internalLoadingBegin\",\n INTERNAL_LOADING_COMPLETED: \"NavigationMessage/internalLoadingCompleted\"\n };\n e.exports = g;\n});\n__d(\"SimpleDrag\", [\"Event\",\"ArbiterMixin\",\"UserAgent\",\"Vector\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"ArbiterMixin\"), i = b(\"UserAgent\"), j = b(\"Vector\"), k = b(\"copyProperties\"), l = b(\"emptyFunction\");\n function m(n) {\n this.minDragDistance = 0;\n g.listen(n, \"mousedown\", this._start.bind(this));\n };\n k(m.prototype, h, {\n setMinDragDistance: function(n) {\n this.minDragDistance = n;\n },\n _start: function(event) {\n var n = false, o = true, p = null;\n if (this.inform(\"mousedown\", event)) {\n o = false;\n };\n if (this.minDragDistance) {\n p = j.getEventPosition(event);\n }\n else {\n n = true;\n var q = this.inform(\"start\", event);\n if ((q === true)) {\n o = false;\n }\n else if ((q === false)) {\n n = false;\n return;\n }\n \n ;\n }\n ;\n var r = ((i.ie() < 9) ? document.documentElement : window), s = g.listen(r, {\n selectstart: (o ? g.prevent : l),\n mousemove: function(event) {\n if (!n) {\n var t = j.getEventPosition(event);\n if ((p.distanceTo(t) < this.minDragDistance)) {\n return\n };\n n = true;\n if ((this.inform(\"start\", event) === false)) {\n n = false;\n return;\n }\n ;\n }\n ;\n this.inform(\"update\", event);\n }.bind(this),\n mouseup: function(event) {\n for (var t in s) {\n s[t].remove();;\n };\n if (n) {\n this.inform(\"end\", event);\n }\n else this.inform(\"click\", event);\n ;\n }.bind(this)\n });\n (o && event.prevent());\n }\n });\n e.exports = m;\n});\n__d(\"ARIA\", [\"DOM\",\"emptyFunction\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"emptyFunction\"), i = b(\"ge\"), j, k, l = function() {\n j = i(\"ariaAssertiveAlert\");\n if (!j) {\n j = g.create(\"div\", {\n id: \"ariaAssertiveAlert\",\n className: \"accessible_elem\",\n \"aria-live\": \"assertive\"\n });\n g.appendContent(document.body, j);\n }\n ;\n k = i(\"ariaPoliteAlert\");\n if (!k) {\n k = j.cloneNode(false);\n k.setAttribute(\"id\", \"ariaPoliteAlert\");\n k.setAttribute(\"aria-live\", \"polite\");\n g.appendContent(document.body, k);\n }\n ;\n l = h;\n };\n function m(o, p) {\n l();\n var q = (p ? j : k);\n g.setContent(q, o);\n };\n var n = {\n owns: function(o, p) {\n o.setAttribute(\"aria-owns\", g.getID(p));\n },\n setPopup: function(o, p) {\n var q = g.getID(p);\n o.setAttribute(\"aria-owns\", q);\n o.setAttribute(\"aria-haspopup\", \"true\");\n if ((o.tabIndex == -1)) {\n o.tabIndex = 0;\n };\n },\n announce: function(o) {\n m(o, true);\n },\n notify: function(o) {\n m(o);\n }\n };\n e.exports = n;\n});\n__d(\"AudienceSelectorTags\", [], function(a, b, c, d, e, f) {\n var g = {\n }, h = {\n hasTags: function(i) {\n return g.hasOwnProperty(i);\n },\n setHasTags: function(i) {\n if (i) {\n g[i] = true;\n };\n }\n };\n e.exports = h;\n});\n__d(\"Badge\", [\"CSS\",\"DOM\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"CSS\"), h = b(\"DOM\"), i = b(\"cx\"), j = function(k, l) {\n var m;\n switch (k) {\n case \"xsmall\":\n m = \"-cx-PUBLIC-profileBadge__root -cx-PUBLIC-profileBadge__xsmall\";\n break;\n case \"small\":\n m = \"-cx-PUBLIC-profileBadge__root -cx-PUBLIC-profileBadge__small\";\n break;\n case \"medium\":\n m = \"-cx-PUBLIC-profileBadge__root -cx-PUBLIC-profileBadge__medium\";\n break;\n case \"large\":\n m = \"-cx-PUBLIC-profileBadge__root -cx-PUBLIC-profileBadge__large\";\n break;\n case \"xlarge\":\n m = \"-cx-PUBLIC-profileBadge__root -cx-PUBLIC-profileBadge__xlarge\";\n break;\n };\n if (m) {\n var n = h.create(\"span\", {\n className: m\n });\n if ((l === \"verified\")) {\n g.addClass(n, \"-cx-PRIVATE-verifiedBadge__root\");\n }\n else return null\n ;\n return n;\n }\n ;\n return null;\n };\n e.exports = j;\n});\n__d(\"BasicTypeaheadRenderer\", [\"Badge\",\"DOM\",], function(a, b, c, d, e, f) {\n var g = b(\"Badge\"), h = b(\"DOM\");\n function i(j, k) {\n var l = [];\n if (j.icon) {\n l.push(h.create(\"img\", {\n alt: \"\",\n src: j.icon\n }));\n };\n if (j.text) {\n var m = [j.text,];\n if (j.verified) {\n m.push(g(\"xsmall\", \"verified\"));\n };\n l.push(h.create(\"span\", {\n className: \"text\"\n }, m));\n }\n ;\n if (j.subtext) {\n l.push(h.create(\"span\", {\n className: \"subtext\"\n }, [j.subtext,]));\n };\n var n = h.create(\"li\", {\n className: (j.type || \"\")\n }, l);\n if (j.text) {\n n.setAttribute(\"aria-label\", j.text);\n };\n return n;\n };\n i.className = \"basic\";\n e.exports = i;\n});\n__d(\"TypeaheadView\", [\"Event\",\"ArbiterMixin\",\"BasicTypeaheadRenderer\",\"CSS\",\"DOM\",\"Parent\",\"$\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"ArbiterMixin\"), i = b(\"BasicTypeaheadRenderer\"), j = b(\"CSS\"), k = b(\"DOM\"), l = b(\"Parent\"), m = b(\"$\"), n = b(\"copyProperties\"), o = b(\"emptyFunction\");\n function p(q, r) {\n this.element = this.content = m(q);\n this.showBadges = r.showBadges;\n n(this, r);\n };\n n(p.prototype, h, {\n events: [\"highlight\",\"render\",\"reset\",\"select\",\"beforeRender\",\"next\",\"prev\",],\n renderer: i,\n autoSelect: false,\n ignoreMouseover: false,\n init: function() {\n this.init = o;\n this.initializeEvents();\n this.reset();\n },\n initializeEvents: function() {\n g.listen(this.element, {\n mouseup: this.mouseup.bind(this),\n mouseover: this.mouseover.bind(this)\n });\n },\n setTypeahead: function(q) {\n this.typeahead = q;\n },\n setAccessibilityControlElement: function(q) {\n this.accessibilityElement = q;\n },\n getElement: function() {\n return this.element;\n },\n mouseup: function(event) {\n if ((event.button != 2)) {\n this.select(true);\n event.kill();\n }\n ;\n },\n mouseover: function(event) {\n if (this.ignoreMouseover) {\n this.ignoreMouseover = false;\n return;\n }\n ;\n if (this.visible) {\n this.highlight(this.getIndex(event));\n };\n },\n reset: function(q) {\n if (!q) {\n this.disableAutoSelect = false;\n };\n this.justRendered = false;\n this.justShown = false;\n this.index = -1;\n this.items = [];\n this.results = [];\n this.value = \"\";\n this.content.innerHTML = \"\";\n this.inform(\"reset\");\n return this;\n },\n getIndex: function(event) {\n return this.items.indexOf(l.byTag(event.getTarget(), \"li\"));\n },\n getSelection: function() {\n var q = (this.results[this.index] || null);\n return (this.visible ? q : null);\n },\n isEmpty: function() {\n return !this.results.length;\n },\n isVisible: function() {\n return !!this.visible;\n },\n show: function() {\n j.show(this.element);\n if ((this.results && this.results.length)) {\n if (((this.autoSelect && this.accessibilityElement) && this.selected)) {\n this.accessibilityElement.setAttribute(\"aria-activedescendant\", k.getID(this.selected));\n }\n };\n (this.accessibilityElement && this.accessibilityElement.setAttribute(\"aria-expanded\", \"true\"));\n this.visible = true;\n return this;\n },\n hide: function() {\n j.hide(this.element);\n if (this.accessibilityElement) {\n this.accessibilityElement.setAttribute(\"aria-expanded\", \"false\");\n this.accessibilityElement.removeAttribute(\"aria-activedescendant\");\n }\n ;\n this.visible = false;\n return this;\n },\n render: function(q, r) {\n this.value = q;\n if (!r.length) {\n (this.accessibilityElement && this.accessibilityElement.removeAttribute(\"aria-activedescendant\"));\n this.reset(true);\n return;\n }\n ;\n this.justRendered = true;\n if (!this.results.length) {\n this.justShown = true;\n };\n var s = {\n results: r,\n value: q\n };\n this.inform(\"beforeRender\", s);\n r = s.results;\n var t = this.getDefaultIndex(r);\n if (((this.index > 0) && (this.index !== this.getDefaultIndex(this.results)))) {\n var u = this.results[this.index];\n for (var v = 0, w = r.length; (v < w); ++v) {\n if ((u.uid == r[v].uid)) {\n t = v;\n break;\n }\n ;\n };\n }\n ;\n this.results = r;\n k.setContent(this.content, this.buildResults(r));\n this.items = this.getItems();\n this.highlight(t, false);\n this.inform(\"render\", r);\n },\n getItems: function() {\n return k.scry(this.content, \"li\");\n },\n buildResults: function(q) {\n var r, s = null;\n if ((typeof this.renderer == \"function\")) {\n r = this.renderer;\n s = (this.renderer.className || \"\");\n }\n else {\n r = a.TypeaheadRenderers[this.renderer];\n s = this.renderer;\n }\n ;\n r = r.bind(this);\n var t = this.showBadges, u = q.map(function(w, x) {\n if (!t) {\n w.verified = null;\n };\n var y = (w.node || r(w, x));\n y.setAttribute(\"role\", \"option\");\n return y;\n }), v = k.create(\"ul\", {\n className: s,\n id: (\"typeahead_list_\" + ((this.typeahead ? k.getID(this.typeahead) : k.getID(this.element))))\n }, u);\n v.setAttribute(\"role\", \"listbox\");\n return v;\n },\n getDefaultIndex: function() {\n var q = ((this.autoSelect && !this.disableAutoSelect));\n return (((this.index < 0) && !q) ? -1 : 0);\n },\n next: function() {\n this.highlight((this.index + 1));\n this.inform(\"next\", this.selected);\n },\n prev: function() {\n this.highlight((this.index - 1));\n this.inform(\"prev\", this.selected);\n },\n getItemText: function(q) {\n var r = \"\";\n if (q) {\n r = q.getAttribute(\"aria-label\");\n if (!r) {\n r = k.getText(q);\n q.setAttribute(\"aria-label\", r);\n }\n ;\n }\n ;\n return r;\n },\n setIsViewingSelectedItems: function(q) {\n this.viewingSelected = q;\n return this;\n },\n getIsViewingSelectedItems: function() {\n return !!this.viewingSelected;\n },\n highlight: function(q, r) {\n var s = true;\n if (this.selected) {\n j.removeClass(this.selected, \"selected\");\n this.selected.setAttribute(\"aria-selected\", \"false\");\n }\n ;\n if ((q > (this.items.length - 1))) {\n q = -1;\n }\n else if ((q < -1)) {\n q = (this.items.length - 1);\n }\n ;\n if (((q >= 0) && (q < this.items.length))) {\n if ((this.selected && (this.getItemText(this.items[q]) === this.getItemText(this.selected)))) {\n s = false;\n };\n this.selected = this.items[q];\n j.addClass(this.selected, \"selected\");\n this.selected.setAttribute(\"aria-selected\", \"true\");\n if (this.accessibilityElement) {\n (function() {\n this.accessibilityElement.setAttribute(\"aria-activedescendant\", k.getID(this.selected));\n }).bind(this).defer();\n };\n }\n else (this.accessibilityElement && this.accessibilityElement.removeAttribute(\"aria-activedescendant\"));\n ;\n this.index = q;\n this.disableAutoSelect = ((q == -1));\n var t = ((q !== -1)), u = this.getItemText(this.selected);\n if (((((q !== -1) && this.isVisible()) && u) && this.autoSelect)) {\n if (this.justShown) {\n this.justRendered = false;\n this.justShown = false;\n t = false;\n }\n else if ((s && this.justRendered)) {\n this.justRendered = false;\n t = false;\n }\n \n \n };\n if ((r !== false)) {\n this.inform(\"highlight\", {\n index: q,\n selected: this.results[q],\n element: this.selected\n });\n };\n },\n select: function(q) {\n var r = this.index, s = this.results[r], t = this.element.getAttribute(\"id\");\n if (s) {\n this.inform(\"select\", {\n index: r,\n clicked: !!q,\n selected: s,\n id: t,\n query: this.value\n });\n this.inform(\"afterSelect\");\n }\n ;\n }\n });\n e.exports = p;\n});\n__d(\"BucketedTypeaheadView\", [\"Class\",\"DOM\",\"tx\",\"TypeaheadView\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"DOM\"), i = b(\"tx\"), j = b(\"TypeaheadView\"), k = b(\"copyProperties\");\n function l(m, n) {\n this.parent.construct(this, m, n);\n };\n g.extend(l, j);\n k(l.prototype, {\n render: function(m, n, o) {\n n = this.buildBuckets(m, n);\n return this.parent.render(m, n, o);\n },\n highlight: function(m, n) {\n if (((m == -1) && (this.index !== 0))) {\n m = this.index;\n };\n while ((((m >= 0) && (m < this.items.length)) && !this.isHighlightable(this.results[m]))) {\n m = (m + 1);;\n };\n this.parent.highlight(m, n);\n },\n buildBuckets: function(m, n) {\n if (((!this.typeObjects || !n) || !n.length)) {\n return n\n };\n var o = [], p = {\n };\n for (var q = 0; (q < n.length); ++q) {\n var r = n[q], s = (r.render_type || r.type);\n if (!p.hasOwnProperty(s)) {\n p[s] = o.length;\n o.push([this.buildBucketHeader(s),]);\n }\n ;\n r.classNames = s;\n r.groupIndex = p[s];\n r.indexInGroup = (o[r.groupIndex].length - 1);\n o[r.groupIndex].push(r);\n };\n for (s in this.typeObjects) {\n if ((!p.hasOwnProperty(s) && this.typeObjects[s].show_always)) {\n p[s] = o.length;\n o.push([this.buildBucketHeader(s),]);\n r = this.buildNoResultsEntry();\n r.classNames = r.type;\n r.groupIndex = p[s];\n r.indexInGroup = (o[r.groupIndex].length - 1);\n o[r.groupIndex].push(r);\n }\n ;\n };\n var t = [];\n if (this.typeObjectsOrder) {\n for (var u = 0; (u < this.typeObjectsOrder.length); ++u) {\n var v = this.typeObjectsOrder[u];\n if (p.hasOwnProperty(v)) {\n t = t.concat(o[p[v]]);\n };\n };\n }\n else for (var w = 0; (w < o.length); ++w) {\n t = t.concat(o[w]);;\n }\n ;\n return t;\n },\n buildNoResultsEntry: function() {\n return {\n uid: \"disabled_result\",\n type: \"disabled_result\",\n text: \"No Results\"\n };\n },\n buildBucketHeader: function(m) {\n var n = this.typeObjects[m];\n if ((n === undefined)) {\n throw new Error(((m + \" is undefined in \") + JSON.stringify(this.typeObjects)))\n };\n if (n.markup) {\n n.text = n.markup;\n delete n.markup;\n }\n ;\n return this.typeObjects[m];\n },\n buildResults: function(m) {\n var n = this.parent.buildResults(m);\n if (this.typeObjects) {\n return h.create(\"div\", {\n className: \"bucketed\"\n }, [n,]);\n }\n else return n\n ;\n },\n isHighlightable: function(m) {\n return ((m.type != \"header\") && (m.type != \"disabled_result\"));\n },\n select: function(m) {\n var n = this.results[this.index];\n if ((n && this.isHighlightable(n))) {\n this.parent.select(m);\n };\n },\n normalizeIndex: function(m) {\n var n = this.results.length;\n if ((n === 0)) {\n return -1;\n }\n else if ((m < -1)) {\n return ((((m % n)) + n) + 1);\n }\n else if ((m >= n)) {\n return (((m % n)) - 1);\n }\n else return m\n \n \n ;\n },\n getDefaultIndex: function(m) {\n var n = ((this.autoSelect && !this.disableAutoSelect));\n if (((this.index < 0) && !n)) {\n return -1\n };\n if ((m.length === 0)) {\n return -1\n };\n var o = 0;\n while ((!this.isHighlightable(m) && (o < m.length))) {\n o++;;\n };\n return o;\n },\n prev: function() {\n var m = this.results[this.normalizeIndex((this.index - 1))];\n while ((m && !this.isHighlightable(m))) {\n this.index = this.normalizeIndex((this.index - 1));\n m = this.results[this.normalizeIndex((this.index - 1))];\n };\n return this.parent.prev();\n },\n next: function() {\n var m = this.results[this.normalizeIndex((this.index + 1))];\n while ((m && !this.isHighlightable(m))) {\n this.index = this.normalizeIndex((this.index + 1));\n m = this.results[this.normalizeIndex((this.index + 1))];\n };\n return this.parent.next();\n }\n });\n e.exports = l;\n});\n__d(\"LayerHideOnTransition\", [\"function-extensions\",\"PageTransitions\",\"copyProperties\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"PageTransitions\"), h = b(\"copyProperties\");\n function i(j) {\n this._layer = j;\n };\n h(i.prototype, {\n _enabled: false,\n _subscribed: false,\n enable: function() {\n this._enabled = true;\n if (!this._subscribed) {\n this._subscribe.bind(this).defer();\n this._subscribed = true;\n }\n ;\n },\n disable: function() {\n this._enabled = false;\n },\n _subscribe: function() {\n g.registerHandler(function() {\n if (this._enabled) {\n this._layer.hide();\n };\n this._subscribed = false;\n }.bind(this));\n }\n });\n e.exports = i;\n});\n__d(\"SVGChecker\", [], function(a, b, c, d, e, f) {\n e.exports = {\n isSVG: function(g) {\n return (!!g.ownerSVGElement || (g.tagName.toLowerCase() === \"svg\"));\n },\n isDisplayed: function(g) {\n try {\n var i = g.getBBox();\n if ((i && (((i.height === 0) || (i.width === 0))))) {\n return false\n };\n } catch (h) {\n return false;\n };\n return true;\n }\n };\n});\n__d(\"ContextualLayer\", [\"Event\",\"Arbiter\",\"ARIA\",\"Class\",\"ContextualThing\",\"CSS\",\"DataStore\",\"DOM\",\"Layer\",\"LayerHideOnTransition\",\"Locale\",\"Parent\",\"Rect\",\"Style\",\"Vector\",\"SVGChecker\",\"arrayContains\",\"copyProperties\",\"emptyFunction\",\"getOverlayZIndex\",\"removeFromArray\",\"throttle\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Arbiter\"), i = b(\"ARIA\"), j = b(\"Class\"), k = b(\"ContextualThing\"), l = b(\"CSS\"), m = b(\"DataStore\"), n = b(\"DOM\"), o = b(\"Layer\"), p = b(\"LayerHideOnTransition\"), q = b(\"Locale\"), r = b(\"Parent\"), s = b(\"Rect\"), t = b(\"Style\"), u = b(\"Vector\"), v = b(\"SVGChecker\"), w = b(\"arrayContains\"), x = b(\"copyProperties\"), y = b(\"emptyFunction\"), z = b(\"getOverlayZIndex\"), aa = b(\"removeFromArray\"), ba = b(\"throttle\");\n function ca(ja) {\n return ((ja.getPosition() === \"left\") || ((ja.isVertical() && (ja.getAlignment() === \"right\"))));\n };\n function da(ja) {\n var ka = ja.parentNode;\n if (ka) {\n var la = t.get(ka, \"position\");\n if ((la === \"static\")) {\n if ((ka === document.body)) {\n ka = document.documentElement;\n }\n else ka = da(ka);\n ;\n }\n else return ka\n ;\n }\n else ka = document.documentElement;\n ;\n return ka;\n };\n function ea(ja, ka) {\n this.parent.construct(this, ja, ka);\n };\n var fa = [];\n h.subscribe(\"reflow\", function() {\n fa.forEach(function(ja) {\n if ((ja.updatePosition() === false)) {\n ja.hide();\n };\n });\n });\n j.extend(ea, o);\n x(ea.prototype, {\n _contentWrapper: null,\n _content: null,\n _contextNode: null,\n _contextBounds: null,\n _contextSelector: null,\n _parentLayer: null,\n _parentSubscription: null,\n _orientation: null,\n _orientationClass: null,\n _shouldSetARIAProperties: true,\n _configure: function(ja, ka) {\n this.parent._configure(ja, ka);\n if (ja.context) {\n this.setContext(ja.context);\n }\n else if (ja.contextID) {\n this._setContextID(ja.contextID);\n }\n else if (ja.contextSelector) {\n this._setContextSelector(ja.contextSelector);\n }\n \n ;\n this.setPosition(ja.position);\n this.setAlignment(ja.alignment);\n this.setOffsetX(ja.offsetX);\n this.setOffsetY(ja.offsetY);\n this._content = ka;\n },\n _getDefaultBehaviors: function() {\n return this.parent._getDefaultBehaviors().concat([p,]);\n },\n _buildWrapper: function(ja, ka) {\n this._contentWrapper = n.create(\"div\", {\n className: \"uiContextualLayer\"\n }, ka);\n return n.create(\"div\", {\n className: \"uiContextualLayerPositioner\"\n }, this._contentWrapper);\n },\n getInsertParent: function() {\n var ja = this._insertParent;\n if (!ja) {\n var ka = this.getContext();\n if (ka) {\n ja = r.byClass(ka, \"uiContextualLayerParent\");\n };\n }\n ;\n return (ja || this.parent.getInsertParent());\n },\n setContent: function(ja) {\n this._content = ja;\n n.setContent(this._contentWrapper, this._content);\n (this._shown && this.updatePosition());\n return this;\n },\n setContext: function(ja) {\n return this.setContextWithBounds(ja, null);\n },\n setContextWithBounds: function(ja, ka) {\n this._contextNode = ja;\n this._contextBounds = (ka || null);\n this._contextSelector = this._contextScrollParent = null;\n if (this._shown) {\n k.register(this.getRoot(), this._contextNode);\n this.updatePosition();\n }\n ;\n this._setParentSubscription();\n this.setARIAProperties();\n return this;\n },\n shouldSetARIAProperties: function(ja) {\n this._shouldSetARIAProperties = ja;\n return this;\n },\n setARIAProperties: function() {\n if (this._shouldSetARIAProperties) {\n i.setPopup(this.getCausalElement(), this.getRoot());\n };\n return this;\n },\n _setContextID: function(ja) {\n this._contextSelector = (\"#\" + ja);\n this._contextNode = null;\n },\n _setContextSelector: function(ja) {\n this._contextSelector = ja;\n this._contextNode = null;\n },\n getCausalElement: function() {\n return (this.parent.getCausalElement() || this.getContext());\n },\n _setParentSubscription: function() {\n var ja = this.getContext(), ka = null;\n while ((ja !== null)) {\n ka = m.get(ja, \"layer\");\n if (ka) {\n break;\n };\n ja = ja.parentNode;\n };\n if ((ka === this._parentLayer)) {\n return\n };\n if ((this._parentLayer && this._parentSubscription)) {\n this._parentLayer.unsubscribe(this._parentSubscription);\n this._parentSubscription = null;\n }\n ;\n if (ka) {\n this._parentSubscription = ka.subscribe(\"hide\", this.hide.bind(this));\n };\n this._parentLayer = ka;\n },\n setPosition: function(ja) {\n if (this._getOrientation().setDefaultPosition(ja)) {\n (this._shown && this.updatePosition());\n };\n return this;\n },\n setAlignment: function(ja) {\n if (this._getOrientation().setDefaultAlignment(ja)) {\n (this._shown && this.updatePosition());\n };\n return this;\n },\n setOffsetX: function(ja) {\n if (this._getOrientation().setDefaultOffsetX(ja)) {\n (this._shown && this.updatePosition());\n };\n return this;\n },\n setOffsetY: function(ja) {\n if (this._getOrientation().setDefaultOffsetY(ja)) {\n (this._shown && this.updatePosition());\n };\n return this;\n },\n _getOrientation: function() {\n if (!this._orientation) {\n this._orientation = new ia();\n };\n return this._orientation;\n },\n getContentRoot: function() {\n return this._contentWrapper;\n },\n getContent: function() {\n return this._content;\n },\n getContext: function() {\n if (!this._contextNode) {\n this._contextNode = n.find(document, this._contextSelector);\n };\n return this._contextNode;\n },\n getContextBounds: function(ja) {\n if (this._contextBounds) {\n return this._contextBounds.convertTo(ja)\n };\n var ka = this.getContext();\n return s.newFromVectors(u.getElementPosition(ka, ja), u.getElementDimensions(ka));\n },\n getContextScrollParent: function() {\n if (!this._contextScrollParent) {\n this._contextScrollParent = t.getScrollParent(this.getContext());\n };\n return this._contextScrollParent;\n },\n setInsertParent: function(ja) {\n this._insertScrollParent = null;\n return this.parent.setInsertParent(ja);\n },\n getInsertScrollParent: function() {\n if (!this._insertScrollParent) {\n this._insertScrollParent = t.getScrollParent(this.getInsertParent());\n };\n return this._insertScrollParent;\n },\n show: function() {\n if (this._shown) {\n return this\n };\n this.parent.show();\n if (this._shown) {\n k.register(this.getRoot(), this.getContext());\n fa.push(this);\n this._resizeListener = (this._resizeListener || g.listen(window, \"resize\", ba(this.updatePosition.bind(this))));\n }\n ;\n return this;\n },\n finishHide: function() {\n aa(fa, this);\n (this._resizeListener && this._resizeListener.remove());\n this._resizeListener = null;\n return this.parent.finishHide();\n },\n isFixed: function() {\n return ((t.isFixed(this.getContext()) && !t.isFixed(this.getInsertParent())));\n },\n updatePosition: function() {\n var ja = this.getContext();\n if (!ja) {\n return false\n };\n var ka = this.isFixed();\n if ((!ka && !((ja.offsetParent || ((v.isSVG(ja) && v.isDisplayed(ja))))))) {\n return false\n };\n var la = this.getRoot();\n t.set(la, \"width\", (u.getViewportDimensions().x + \"px\"));\n var ma = this._getOrientation();\n this.inform(\"adjust\", ma.reset());\n if (!ma.isValid()) {\n return false\n };\n this._updateWrapperPosition(ma);\n this._updateWrapperClass(ma);\n l.conditionClass(la, \"uiContextualLayerPositionerFixed\", ka);\n var na, oa, pa = (ka ? \"viewport\" : \"document\"), qa = (ka ? document.documentElement : da(la));\n if ((qa === document.documentElement)) {\n na = new u(0, 0);\n oa = document.documentElement.clientWidth;\n }\n else if (!la.offsetParent) {\n return false;\n }\n else {\n na = u.getElementPosition(qa, pa);\n oa = qa.offsetWidth;\n if ((qa !== document.body)) {\n na = na.sub(new u(qa.scrollLeft, qa.scrollTop));\n };\n }\n \n ;\n var ra = this.getContextBounds(pa), sa = (ra.l - na.x), ta = (ra.t - na.y), ua = ra.h(), va = ra.w(), wa = q.isRTL();\n if ((ma.getPosition() === \"below\")) {\n ta += ua;\n };\n if (((((ma.getPosition() === \"right\") || ((ma.isVertical() && (ma.getAlignment() === \"right\"))))) != wa)) {\n sa += va;\n };\n var xa = ma.getOffsetX();\n if ((ma.isVertical() && (ma.getAlignment() === \"center\"))) {\n xa += (((va - this.getContentRoot().offsetWidth)) / 2);\n };\n if (wa) {\n xa *= -1;\n };\n var ya = \"left\", za = Math.floor((sa + xa));\n if ((ca(ma) !== wa)) {\n ya = \"right\";\n za = (oa - za);\n }\n ;\n t.set(la, ya, (za + \"px\"));\n t.set(la, ((ya === \"left\") ? \"right\" : \"left\"), \"\");\n var ab = this.getInsertScrollParent(), bb;\n if ((ab !== window)) {\n bb = ab.clientWidth;\n }\n else bb = document.documentElement.clientWidth;\n ;\n var cb = u.getElementPosition(la).x;\n if ((ya === \"left\")) {\n if (((bb - cb) > 0)) {\n t.set(la, \"width\", (((bb - cb)) + \"px\"));\n }\n else t.set(la, \"width\", \"\");\n ;\n }\n else t.set(la, \"width\", ((cb + la.offsetWidth) + \"px\"));\n ;\n t.set(la, \"top\", (((ta + ma.getOffsetY())) + \"px\"));\n var db = z(ja, this.getInsertParent());\n t.set(la, \"z-index\", ((db > 200) ? db : \"\"));\n this.inform(\"reposition\", ma);\n return true;\n },\n _updateWrapperPosition: function(ja) {\n var ka = (ja.getPosition() === \"above\");\n t.set(this._contentWrapper, \"bottom\", (ka ? \"0\" : null));\n var la = (q.isRTL() ? \"left\" : \"right\"), ma = ca(ja);\n t.set(this._contentWrapper, la, (ma ? \"0\" : null));\n },\n _updateWrapperClass: function(ja) {\n var ka = ja.getClassName();\n if ((ka === this._orientationClass)) {\n return\n };\n if (this._orientationClass) {\n l.removeClass(this._contentWrapper, this._orientationClass);\n };\n this._orientationClass = ka;\n l.addClass(this._contentWrapper, ka);\n },\n simulateOrientation: function(ja, ka) {\n var la = ja.getClassName();\n if ((la === this._orientationClass)) {\n return ka();\n }\n else {\n if (this._orientationClass) {\n l.removeClass(this._contentWrapper, this._orientationClass);\n };\n l.addClass(this._contentWrapper, la);\n var ma = ka();\n l.removeClass(this._contentWrapper, la);\n if (this._orientationClass) {\n l.addClass(this._contentWrapper, this._orientationClass);\n };\n return ma;\n }\n ;\n },\n destroy: function() {\n this.parent.destroy();\n this._contentWrapper = null;\n this._content = null;\n return this;\n }\n });\n var ga = y.thatReturnsArgument, ha = y.thatReturnsArgument;\n function ia() {\n this._default = {\n _position: \"above\",\n _alignment: \"left\",\n _offsetX: 0,\n _offsetY: 0,\n _valid: true\n };\n this.reset();\n };\n ia.OPPOSITE = {\n above: \"below\",\n below: \"above\",\n left: \"right\",\n right: \"left\"\n };\n x(ia.prototype, {\n setPosition: function(ja) {\n this._position = ga(ja);\n return this;\n },\n setAlignment: function(ja) {\n this._alignment = ha(ja);\n return this;\n },\n getOppositePosition: function() {\n return ia.OPPOSITE[this.getPosition()];\n },\n invalidate: function() {\n this._valid = false;\n return this;\n },\n getPosition: function() {\n return (this._position || \"above\");\n },\n getAlignment: function() {\n return (this._alignment || \"left\");\n },\n getOffsetX: function() {\n var ja = (this._offsetX || 0);\n if (!this.isVertical()) {\n if ((this._default._position !== this._position)) {\n ja *= -1;\n };\n }\n else if ((this._default._alignment !== this._alignment)) {\n ja *= -1;\n }\n ;\n return ja;\n },\n getOffsetY: function() {\n var ja = (this._offsetY || 0);\n if ((this.isVertical() && (this._default._position !== this._position))) {\n ja *= -1;\n };\n return ja;\n },\n getClassName: function() {\n var ja = this.getAlignment(), ka = this.getPosition();\n if ((ka === \"below\")) {\n if ((ja === \"left\")) {\n return \"uiContextualLayerBelowLeft\";\n }\n else if ((ja === \"right\")) {\n return \"uiContextualLayerBelowRight\";\n }\n else return \"uiContextualLayerBelowCenter\"\n \n ;\n }\n else if ((ka === \"above\")) {\n if ((ja === \"left\")) {\n return \"uiContextualLayerAboveLeft\";\n }\n else if ((ja === \"right\")) {\n return \"uiContextualLayerAboveRight\";\n }\n else return \"uiContextualLayerAboveCenter\"\n \n ;\n }\n else if ((ka === \"left\")) {\n return \"uiContextualLayerLeft\";\n }\n else return \"uiContextualLayerRight\"\n \n \n ;\n },\n isValid: function() {\n return this._valid;\n },\n isVertical: function() {\n return ((this.getPosition() === \"above\") || (this.getPosition() === \"below\"));\n },\n reset: function(ja, ka) {\n x(this, this._default);\n return this;\n },\n setDefaultPosition: function(ja) {\n var ka = this._default._position;\n this._default._position = ga(ja);\n return (ka !== ja);\n },\n setDefaultAlignment: function(ja) {\n var ka = this._default._alignment;\n this._default._alignment = ha(ja);\n return (ka !== ja);\n },\n setDefaultOffsetX: function(ja) {\n var ka = this._default._offsetX;\n this._default._offsetX = ja;\n return (ka !== ja);\n },\n setDefaultOffsetY: function(ja) {\n var ka = this._default._offsetY;\n this._default._offsetY = ja;\n return (ka !== ja);\n }\n });\n e.exports = ea;\n});\n__d(\"ContextualLayerDimensions\", [\"DOM\",\"Locale\",\"Rect\",\"Vector\",\"ViewportBounds\",\"ge\",\"getOverlayZIndex\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"Locale\"), i = b(\"Rect\"), j = b(\"Vector\"), k = b(\"ViewportBounds\"), l = b(\"ge\"), m = b(\"getOverlayZIndex\"), n = {\n getViewportRect: function(o) {\n var p = l(\"globalContainer\"), q = o.getContext(), r = (((p && g.contains(p, q))) || (m(q) < 300)), s = i.getViewportBounds();\n if (r) {\n s.t += k.getTop();\n if (h.isRTL()) {\n s.r -= k.getLeft();\n s.l += k.getRight();\n }\n else {\n s.r -= k.getRight();\n s.l += k.getLeft();\n }\n ;\n }\n ;\n return s;\n },\n getLayerRect: function(o, p) {\n var q = o.getContextBounds(\"viewport\"), r = o.simulateOrientation(p, function() {\n return j.getElementDimensions(o.getContent());\n }), s = (q.t + p.getOffsetY());\n if ((p.getPosition() === \"above\")) {\n s -= r.y;\n }\n else if ((p.getPosition() === \"below\")) {\n s += (q.b - q.t);\n }\n ;\n var t = (q.l + p.getOffsetX()), u = (q.r - q.l);\n if (p.isVertical()) {\n var v = p.getAlignment();\n if ((v === \"center\")) {\n t += (((u - r.x)) / 2);\n }\n else if ((((v === \"right\")) !== h.isRTL())) {\n t += (u - r.x);\n }\n ;\n }\n else if ((((p.getPosition() === \"right\")) !== h.isRTL())) {\n t += u;\n }\n else t -= r.x;\n \n ;\n return new i(s, (t + r.x), (s + r.y), t, \"viewport\");\n }\n };\n e.exports = n;\n});\n__d(\"ContextualLayerAutoFlip\", [\"ContextualLayerDimensions\",\"DOM\",\"Vector\",\"arrayContains\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ContextualLayerDimensions\"), h = b(\"DOM\"), i = b(\"Vector\"), j = b(\"arrayContains\"), k = b(\"copyProperties\");\n function l(m) {\n this._layer = m;\n };\n k(l.prototype, {\n _subscription: null,\n enable: function() {\n this._subscription = this._layer.subscribe(\"adjust\", this._adjustOrientation.bind(this));\n if (this._layer.isShown()) {\n this._layer.updatePosition();\n };\n },\n disable: function() {\n this._subscription.unsubscribe();\n this._subscription = null;\n if (this._layer.isShown()) {\n this._layer.updatePosition();\n };\n },\n _adjustOrientation: function(m, n) {\n var o = this._getValidPositions(n);\n if (!o.length) {\n n.invalidate();\n return;\n }\n ;\n var p = g.getViewportRect(this._layer), q = this._getValidAlignments(n), r, s, t;\n for (r = 0; (r < q.length); r++) {\n n.setAlignment(q[r]);\n for (s = 0; (s < o.length); s++) {\n n.setPosition(o[s]);\n t = g.getLayerRect(this._layer, n);\n if (p.contains(t)) {\n return\n };\n };\n };\n n.setPosition((j(o, \"below\") ? \"below\" : o[0]));\n for (r = 0; (r < q.length); r++) {\n n.setAlignment(q[r]);\n t = g.getLayerRect(this._layer, n);\n if (((t.l >= p.l) && (t.r <= p.r))) {\n return\n };\n };\n n.setAlignment(q[0]);\n },\n _getValidPositions: function(m) {\n var n = [m.getPosition(),m.getOppositePosition(),], o = this._layer.getContextScrollParent();\n if (((o === window) || (o === h.getDocumentScrollElement()))) {\n return n\n };\n var p = this._layer.getContext(), q = i.getElementPosition(o, \"viewport\").y, r = i.getElementPosition(p, \"viewport\").y;\n if (m.isVertical()) {\n return n.filter(function(t) {\n if ((t === \"above\")) {\n return (r >= q);\n }\n else {\n var u = (q + o.offsetHeight), v = (r + p.offsetHeight);\n return (v <= u);\n }\n ;\n });\n }\n else {\n var s = (q + o.offsetHeight);\n if (((r >= q) && ((r + p.offsetHeight) <= s))) {\n return n;\n }\n else return []\n ;\n }\n ;\n },\n _getValidAlignments: function(m) {\n var n = [\"left\",\"right\",\"center\",], o = m.getAlignment(), p = n.indexOf(o);\n if ((p > 0)) {\n n.splice(p, 1);\n n.unshift(o);\n }\n ;\n return n;\n }\n });\n e.exports = l;\n});\n__d(\"ContextualLayerHideOnScroll\", [\"Event\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"copyProperties\");\n function i(j) {\n this._layer = j;\n };\n h(i.prototype, {\n _subscriptions: [],\n enable: function() {\n this._subscriptions = [this._layer.subscribe(\"contextchange\", this._handleContextChange.bind(this)),this._layer.subscribe(\"show\", this.attach.bind(this)),this._layer.subscribe(\"hide\", this.detach.bind(this)),];\n },\n disable: function() {\n while (this._subscriptions.length) {\n this._subscriptions.pop().unsubscribe();;\n };\n this.detach();\n },\n attach: function() {\n if (this._listener) {\n return\n };\n var j = this._layer.getContextScrollParent();\n if ((j === window)) {\n return\n };\n this._listener = g.listen(j, \"scroll\", this._layer.hide.bind(this._layer));\n },\n detach: function() {\n (this._listener && this._listener.remove());\n this._listener = null;\n },\n _handleContextChange: function() {\n this.detach();\n if (this._layer.isShown()) {\n this.attach();\n };\n }\n });\n e.exports = i;\n});\n__d(\"ContextualTypeaheadView\", [\"BucketedTypeaheadView\",\"CSS\",\"Class\",\"ContextualLayer\",\"ContextualLayerAutoFlip\",\"ContextualLayerHideOnScroll\",\"DOM\",\"DOMDimensions\",\"Style\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"BucketedTypeaheadView\"), h = b(\"CSS\"), i = b(\"Class\"), j = b(\"ContextualLayer\"), k = b(\"ContextualLayerAutoFlip\"), l = b(\"ContextualLayerHideOnScroll\"), m = b(\"DOM\"), n = b(\"DOMDimensions\"), o = b(\"Style\"), p = b(\"copyProperties\");\n function q(r, s) {\n this.parent.construct(this, r, s);\n };\n i.extend(q, g);\n p(q.prototype, {\n init: function() {\n this.initializeLayer();\n this.parent.init();\n },\n initializeLayer: function() {\n this.context = this.getContext();\n this.wrapper = m.create(\"div\");\n m.appendContent(this.wrapper, this.element);\n h.addClass(this.element, \"uiContextualTypeaheadView\");\n this.layer = new j({\n context: this.context,\n position: \"below\",\n alignment: this.alignment,\n causalElement: this.causalElement,\n permanent: true\n }, this.wrapper);\n this.layer.enableBehavior(l);\n if ((o.isFixed(this.context) || this.autoflip)) {\n this.layer.enableBehavior(k);\n };\n this.subscribe(\"render\", this.renderLayer.bind(this));\n },\n show: function() {\n if (this.minWidth) {\n o.set(this.wrapper, \"min-width\", (this.minWidth + \"px\"));\n }\n else if (this.width) {\n o.set(this.wrapper, \"width\", (this.width + \"px\"));\n }\n else o.set(this.wrapper, \"width\", (n.getElementDimensions(this.context).width + \"px\"));\n \n ;\n var r = this.parent.show();\n this.layer.show();\n return r;\n },\n hide: function() {\n this.layer.hide();\n return this.parent.hide();\n },\n renderLayer: function() {\n if (!this.isVisible()) {\n return\n };\n if (this.layer.isShown()) {\n this.layer.updatePosition();\n }\n else this.layer.show();\n ;\n },\n clearText: function() {\n this.layer.getCausalElement().value = \"\";\n },\n getContext: function() {\n return this.element.parentNode;\n }\n });\n e.exports = q;\n});\n__d(\"DialogHideOnSuccess\", [\"copyProperties\",\"CSS\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"CSS\"), i = b(\"cx\");\n function j(k) {\n this._layer = k;\n };\n g(j.prototype, {\n _subscription: null,\n enable: function() {\n this._subscription = this._layer.subscribe(\"success\", this._handle.bind(this));\n },\n disable: function() {\n this._subscription.unsubscribe();\n this._subscription = null;\n },\n _handle: function(k, event) {\n if (h.hasClass(event.getTarget(), \"-cx-PRIVATE-uiDialog__form\")) {\n this._layer.hide();\n };\n }\n });\n e.exports = j;\n});\n__d(\"DoublyLinkedListMap\", [\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\");\n function h() {\n this._head = null;\n this._tail = null;\n this._nodes = {\n };\n this._nodeCount = 0;\n };\n g(h.prototype, {\n get: function(i) {\n return (this._nodes[i] ? this._nodes[i].data : null);\n },\n getIndex: function(i) {\n for (var j = this._head, k = 0; j; j = j.next, k++) {\n if ((j.key === i)) {\n return k\n };\n };\n return null;\n },\n _insert: function(i, j, k, l) {\n ((k && !this._nodes[k]) && (k = null));\n var m = (((k && this._nodes[k])) || ((l ? this._head : this._tail))), n = {\n data: j,\n key: i,\n next: null,\n prev: null\n };\n if (m) {\n this.remove(i);\n if (l) {\n n.prev = m.prev;\n (m.prev && (m.prev.next = n));\n m.prev = n;\n n.next = m;\n }\n else {\n n.next = m.next;\n (m.next && (m.next.prev = n));\n m.next = n;\n n.prev = m;\n }\n ;\n }\n ;\n ((n.prev === null) && (this._head = n));\n ((n.next === null) && (this._tail = n));\n this._nodes[i] = n;\n this._nodeCount++;\n return this;\n },\n insertBefore: function(i, j, k) {\n return this._insert(i, j, k, true);\n },\n insertAfter: function(i, j, k) {\n return this._insert(i, j, k, false);\n },\n prepend: function(i, j) {\n return this.insertBefore(i, j, (this._head && this._head.key));\n },\n append: function(i, j) {\n return this.insertAfter(i, j, (this._tail && this._tail.key));\n },\n remove: function(i) {\n var j = this._nodes[i];\n if (j) {\n var k = j.next, l = j.prev;\n (k && (k.prev = l));\n (l && (l.next = k));\n ((this._head === j) && (this._head = k));\n ((this._tail === j) && (this._tail = l));\n delete this._nodes[i];\n this._nodeCount--;\n }\n ;\n return this;\n },\n find: function(i) {\n for (var j = this._head; j; j = j.next) {\n if (i(j.data)) {\n return j.key\n };\n };\n return null;\n },\n reduce: function(i, j) {\n for (var k = this._head; k; k = k.next) {\n j = i(k.data, j);;\n };\n return j;\n },\n exists: function(i) {\n return !!this._nodes[i];\n },\n isEmpty: function() {\n return !this._head;\n },\n reset: function() {\n this._head = null;\n this._tail = null;\n this._nodes = {\n };\n this._nodeCount = 0;\n },\n map: function(i) {\n for (var j = this._head; j; j = j.next) {\n i(j.data);;\n };\n },\n getCount: function() {\n return this._nodeCount;\n },\n getHead: function() {\n return (this._head && this._head.data);\n },\n getTail: function() {\n return (this._tail && this._tail.data);\n },\n getNext: function(i) {\n var j = this._nodes[i];\n if ((j && j.next)) {\n return j.next.data\n };\n return null;\n },\n getPrev: function(i) {\n var j = this._nodes[i];\n if ((j && j.prev)) {\n return j.prev.data\n };\n return null;\n }\n });\n e.exports = h;\n});\n__d(\"MenuDeprecated\", [\"Event\",\"Arbiter\",\"CSS\",\"DataStore\",\"DOM\",\"HTML\",\"Keys\",\"Parent\",\"Style\",\"UserAgent\",\"copyProperties\",\"emptyFunction\",\"Run\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Arbiter\"), i = b(\"CSS\"), j = b(\"DataStore\"), k = b(\"DOM\"), l = b(\"HTML\"), m = b(\"Keys\"), n = b(\"Parent\"), o = b(\"Style\"), p = b(\"UserAgent\"), q = b(\"copyProperties\"), r = b(\"emptyFunction\"), s = \"menu:mouseover\", t = null;\n function u(ea) {\n if (i.hasClass(ea, \"uiMenuContainer\")) {\n return ea\n };\n return n.byClass(ea, \"uiMenu\");\n };\n function v(ea) {\n return n.byClass(ea, \"uiMenuItem\");\n };\n function w(ea) {\n if (document.activeElement) {\n var fa = v(document.activeElement);\n return ea.indexOf(fa);\n }\n ;\n return -1;\n };\n function x(ea) {\n return k.find(ea, \"a.itemAnchor\");\n };\n function y(ea) {\n return i.hasClass(ea, \"checked\");\n };\n function z(ea) {\n return (!i.hasClass(ea, \"disabled\") && (o.get(ea, \"display\") !== \"none\"));\n };\n function aa(event) {\n var ea = document.activeElement;\n if (((!ea || !n.byClass(ea, \"uiMenu\")) || !k.isInputNode(ea))) {\n var fa = v(event.getTarget());\n (fa && da.focusItem(fa));\n }\n ;\n };\n function ba(ea) {\n (p.firefox() && x(ea).blur());\n da.inform(\"select\", {\n menu: u(ea),\n item: ea\n });\n };\n var ca = function() {\n ca = r;\n var ea = {\n };\n ea.click = function(event) {\n var fa = v(event.getTarget());\n if ((fa && z(fa))) {\n ba(fa);\n var ga = x(fa), ha = ga.href, ia = ga.getAttribute(\"rel\");\n return (((ia && (ia !== \"ignore\"))) || ((ha && (ha.charAt((ha.length - 1)) !== \"#\"))));\n }\n ;\n };\n ea.keydown = function(event) {\n var fa = event.getTarget();\n if (event.getModifiers().any) {\n return\n };\n if ((!t || k.isInputNode(fa))) {\n return\n };\n var ga = g.getKeyCode(event), ha;\n switch (ga) {\n case m.UP:\n \n case m.DOWN:\n var ia = da.getEnabledItems(t);\n ha = w(ia);\n da.focusItem(ia[(ha + (((ga === m.UP) ? -1 : 1)))]);\n return false;\n case m.SPACE:\n var ja = v(fa);\n if (ja) {\n ba(ja);\n event.prevent();\n }\n ;\n break;\n default:\n var ka = String.fromCharCode(ga).toLowerCase(), la = da.getEnabledItems(t);\n ha = w(la);\n var ma = ha, na = la.length;\n while ((((~ha && ((ma = (++ma % na)) !== ha))) || ((!~ha && (++ma < na))))) {\n var oa = da.getItemLabel(la[ma]);\n if ((oa && (oa.charAt(0).toLowerCase() === ka))) {\n da.focusItem(la[ma]);\n return false;\n }\n ;\n };\n };\n };\n g.listen(document.body, ea);\n }, da = q(new h(), {\n focusItem: function(ea) {\n if ((ea && z(ea))) {\n this._removeSelected(u(ea));\n i.addClass(ea, \"selected\");\n x(ea).focus();\n }\n ;\n },\n getEnabledItems: function(ea) {\n return da.getItems(ea).filter(z);\n },\n getCheckedItems: function(ea) {\n return da.getItems(ea).filter(y);\n },\n getItems: function(ea) {\n return k.scry(ea, \"li.uiMenuItem\");\n },\n getItemLabel: function(ea) {\n return (ea.getAttribute(\"data-label\", 2) || \"\");\n },\n isItemChecked: function(ea) {\n return i.hasClass(ea, \"checked\");\n },\n autoregister: function(ea, fa, ga) {\n ea.subscribe(\"show\", function() {\n da.register(fa, ga);\n });\n ea.subscribe(\"hide\", function() {\n da.unregister(fa);\n });\n },\n register: function(ea, fa) {\n ea = u(ea);\n ca();\n if (!j.get(ea, s)) {\n j.set(ea, s, g.listen(ea, \"mouseover\", aa));\n };\n if ((fa !== false)) {\n t = ea;\n };\n },\n setItemEnabled: function(ea, fa) {\n if ((!fa && !k.scry(ea, \"span.disabledAnchor\")[0])) {\n k.appendContent(ea, k.create(\"span\", {\n className: (k.find(ea, \"a\").className + \" disabledAnchor\")\n }, l(x(ea).innerHTML)));\n };\n i.conditionClass(ea, \"disabled\", !fa);\n },\n toggleItem: function(ea) {\n var fa = !da.isItemChecked(ea);\n da.setItemChecked(ea, fa);\n },\n setItemChecked: function(ea, fa) {\n i.conditionClass(ea, \"checked\", fa);\n x(ea).setAttribute(\"aria-checked\", fa);\n },\n unregister: function(ea) {\n ea = u(ea);\n var fa = j.remove(ea, s);\n (fa && fa.remove());\n t = null;\n this._removeSelected(ea);\n },\n _removeSelected: function(ea) {\n da.getItems(ea).filter(function(fa) {\n return i.hasClass(fa, \"selected\");\n }).forEach(function(fa) {\n i.removeClass(fa, \"selected\");\n });\n }\n });\n e.exports = da;\n});\n__d(\"coalesce\", [], function(a, b, c, d, e, f) {\n function g() {\n for (var h = 0; (h < arguments.length); ++h) {\n if ((arguments[h] != null)) {\n return arguments[h]\n };\n };\n return null;\n };\n e.exports = g;\n});\n__d(\"OnVisible\", [\"Arbiter\",\"DOM\",\"Event\",\"Parent\",\"Run\",\"Vector\",\"ViewportBounds\",\"coalesce\",\"copyProperties\",\"queryThenMutateDOM\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"DOM\"), i = b(\"Event\"), j = b(\"Parent\"), k = b(\"Run\"), l = b(\"Vector\"), m = b(\"ViewportBounds\"), n = b(\"coalesce\"), o = b(\"copyProperties\"), p = b(\"queryThenMutateDOM\"), q = [], r, s = 0, t = [], u, v, w, x, y;\n function z() {\n q.forEach(function(fa) {\n fa.remove();\n });\n if (v) {\n v.remove();\n u.remove();\n r.unsubscribe();\n v = u = r = null;\n }\n ;\n s = 0;\n q.length = 0;\n };\n function aa() {\n if (!q.length) {\n z();\n return;\n }\n ;\n t.length = 0;\n w = l.getScrollPosition().y;\n x = l.getViewportDimensions().y;\n y = m.getTop();\n for (var fa = 0; (fa < q.length); ++fa) {\n var ga = q[fa];\n if (isNaN(ga.elementHeight)) {\n t.push(fa);\n };\n ga.elementHeight = l.getElementDimensions(ga.element).y;\n ga.elementPos = l.getElementPosition(ga.element);\n ga.hidden = j.byClass(ga.element, \"hidden_elem\");\n if (ga.scrollArea) {\n ga.scrollAreaHeight = l.getElementDimensions(ga.scrollArea).y;\n ga.scrollAreaY = l.getElementPosition(ga.scrollArea).y;\n }\n ;\n };\n s = fa;\n };\n function ba() {\n for (var fa = (Math.min(q.length, s) - 1); (fa >= 0); --fa) {\n var ga = q[fa];\n if (((!ga.elementPos || ga.removed) || ga.hidden)) {\n q.splice(fa, 1);\n continue;\n }\n ;\n var ha = ((w + x) + ga.buffer), ia = false;\n if ((ha > ga.elementPos.y)) {\n var ja = (!ga.strict || ((((w + y) - ga.buffer) < ((ga.elementPos.y + ga.elementHeight)))));\n ia = ja;\n if ((ia && ga.scrollArea)) {\n var ka = ((ga.scrollAreaY + ga.scrollAreaHeight) + ga.buffer);\n ia = (((ga.elementPos.y > (ga.scrollAreaY - ga.buffer))) && ((ga.elementPos.y < ka)));\n }\n ;\n }\n ;\n if ((ga.inverse ? !ia : ia)) {\n ga.remove();\n ga.handler((t.indexOf(fa) !== -1));\n }\n ;\n };\n };\n function ca() {\n da();\n if (q.length) {\n return\n };\n v = i.listen(window, \"scroll\", da);\n u = i.listen(window, \"resize\", da);\n r = g.subscribe(\"dom-scroll\", da);\n };\n function da() {\n p(aa, ba, \"OnVisible/positionCheck\");\n };\n function ea(fa, ga, ha, ia, ja, ka) {\n this.element = fa;\n this.handler = ga;\n this.strict = ha;\n this.buffer = n(ia, 300);\n this.inverse = n(ja, false);\n this.scrollArea = (ka || null);\n if (this.scrollArea) {\n this.scrollAreaListener = i.listen(h.find(ka, \".uiScrollableAreaWrap\"), \"scroll\", this.checkBuffer);\n };\n if ((q.length === 0)) {\n k.onLeave(z);\n };\n ca();\n q.push(this);\n };\n o(ea, {\n checkBuffer: da\n });\n o(ea.prototype, {\n remove: function() {\n this.removed = true;\n if (this.scrollAreaListener) {\n this.scrollAreaListener.remove();\n };\n },\n reset: function() {\n this.elementHeight = null;\n this.removed = false;\n ((q.indexOf(this) === -1) && q.push(this));\n ca();\n },\n setBuffer: function(fa) {\n this.buffer = fa;\n da();\n },\n checkBuffer: function() {\n da();\n }\n });\n e.exports = ea;\n});\n__d(\"PrivacyConst\", [], function(a, b, c, d, e, f) {\n var g = {\n FRIENDS_PLUS_GAMER_FRIENDS: 128,\n FRIENDS_MINUS_ACQUAINTANCES: 127,\n FACEBOOK_EMPLOYEES: 112,\n CUSTOM: 111,\n EVERYONE: 80,\n NETWORKS_FRIENDS_OF_FRIENDS: 60,\n NETWORKS_FRIENDS: 55,\n FRIENDS_OF_FRIENDS: 50,\n ALL_FRIENDS: 40,\n SELF: 10,\n NOBODY: 0\n }, h = {\n EVERYONE: 80,\n NETWORKS_FRIENDS: 55,\n FRIENDS_OF_FRIENDS: 50,\n ALL_FRIENDS: 40,\n SOME_FRIENDS: 30,\n SELF: 10,\n NO_FRIENDS: 0\n }, i = {\n NONE: 0,\n TAGGEES: 1,\n FRIENDS_OF_TAGGEES: 2\n }, j = {\n BaseValue: g,\n FriendsValue: h,\n TagExpansion: i\n };\n e.exports = j;\n});\n__d(\"Toggler\", [\"Event\",\"Arbiter\",\"ArbiterMixin\",\"ContextualThing\",\"CSS\",\"DataStore\",\"Dialog\",\"DOM\",\"DOMQuery\",\"Focus\",\"Parent\",\"TabbableElements\",\"arrayContains\",\"cx\",\"copyProperties\",\"createArrayFrom\",\"emptyFunction\",\"ge\",\"getContextualParent\",\"getObjectValues\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Arbiter\"), i = b(\"ArbiterMixin\"), j = b(\"ContextualThing\"), k = b(\"CSS\"), l = b(\"DataStore\"), m = b(\"Dialog\"), n = b(\"DOM\"), o = b(\"DOMQuery\"), p = b(\"Focus\"), q = b(\"Parent\"), r = b(\"TabbableElements\"), s = b(\"arrayContains\"), t = b(\"cx\"), u = b(\"copyProperties\"), v = b(\"createArrayFrom\"), w = b(\"emptyFunction\"), x = b(\"ge\"), y = b(\"getContextualParent\"), z = b(\"getObjectValues\"), aa = [], ba;\n function ca() {\n ca = w;\n g.listen(document.documentElement, \"click\", function(event) {\n var ga = event.getTarget();\n aa.forEach(function(ha) {\n ha.clickedTarget = ga;\n ((((((ha.active && !ha.sticky) && !j.containsIncludingLayers(ha.getActive(), ga)) && !ha.inTargetFlyout(ga)) && ha.inActiveDialog()) && !ha.isIgnoredByModalLayer(ga)) && ha.hide());\n });\n }, g.Priority.URGENT);\n };\n var da = function() {\n this.active = null;\n this.togglers = {\n };\n this.setSticky(false);\n aa.push(this);\n this.subscribe([\"show\",\"hide\",], da.inform.bind(da));\n return ca();\n };\n u(da.prototype, i, {\n show: function(ga) {\n var ha = ea(this, ga), ia = ha.active;\n if ((ga !== ia)) {\n (ia && ha.hide());\n ha.active = ga;\n k.addClass(ga, \"openToggler\");\n var ja = n.scry(ga, \"a[rel=\\\"toggle\\\"]\");\n if (((ja.length > 0) && ja[0].getAttribute(\"data-target\"))) {\n k.removeClass(x(ja[0].getAttribute(\"data-target\")), \"toggleTargetClosed\");\n };\n var ka = o.scry(ga, \".uiToggleFlyout\")[0];\n if (ka) {\n var la = (r.find(ka)[0] || ka);\n if ((la.tabIndex == -1)) {\n la.tabIndex = 0;\n };\n p.setWithoutOutline(la);\n }\n ;\n n.appendContent(ga, ha.getToggler(\"next\"));\n n.prependContent(ga, ha.getToggler(\"prev\"));\n ha.inform(\"show\", ha);\n }\n ;\n },\n hide: function(ga) {\n var ha = ea(this, ga), ia = ha.active;\n if ((ia && ((!ga || (ga === ia))))) {\n k.removeClass(ia, \"openToggler\");\n var ja = n.scry(ia, \"a[rel=\\\"toggle\\\"]\");\n if (((ja.length > 0) && ja[0].getAttribute(\"data-target\"))) {\n k.addClass(x(ja[0].getAttribute(\"data-target\")), \"toggleTargetClosed\");\n };\n z(ha.togglers).forEach(n.remove);\n ha.inform(\"hide\", ha);\n ha.active = null;\n }\n ;\n },\n toggle: function(ga) {\n var ha = ea(this, ga);\n if ((ha.active === ga)) {\n ha.hide();\n }\n else ha.show(ga);\n ;\n },\n getActive: function() {\n return ea(this).active;\n },\n isShown: function() {\n return (ea(this).active && k.hasClass(ea(this).active, \"openToggler\"));\n },\n inTargetFlyout: function(ga) {\n var ha = fa(this.getActive());\n return (ha && j.containsIncludingLayers(ha, ga));\n },\n inActiveDialog: function() {\n var ga = m.getCurrent();\n return (!ga || n.contains(ga.getRoot(), this.getActive()));\n },\n isIgnoredByModalLayer: function(ga) {\n return (q.byClass(ga, \"-cx-PRIVATE-ModalLayer__root\") && !q.byClass(this.getActive(), \"-cx-PRIVATE-ModalLayer__root\"));\n },\n getToggler: function(ga) {\n var ha = ea(this);\n if (!ha.togglers[ga]) {\n ha.togglers[ga] = n.create(\"button\", {\n className: \"hideToggler\",\n onfocus: function() {\n var ia = n.scry(ha.active, \"a[rel=\\\"toggle\\\"]\")[0];\n (ia && ia.focus());\n ha.hide();\n }\n });\n ha.togglers[ga].setAttribute(\"type\", \"button\");\n }\n ;\n return this.togglers[ga];\n },\n setSticky: function(ga) {\n var ha = ea(this);\n ga = (ga !== false);\n if ((ga !== ha.sticky)) {\n ha.sticky = ga;\n if (ga) {\n (ha._pt && ha._pt.unsubscribe());\n }\n else ha._pt = h.subscribe(\"pre_page_transition\", ha.hide.bind(ha, null));\n ;\n }\n ;\n return ha;\n }\n });\n u(da, da.prototype);\n u(da, {\n bootstrap: function(ga) {\n var ha = ga.parentNode;\n da.getInstance(ha).toggle(ha);\n },\n createInstance: function(ga) {\n var ha = new da().setSticky(true);\n l.set(ga, \"toggler\", ha);\n return ha;\n },\n destroyInstance: function(ga) {\n l.remove(ga, \"toggler\");\n },\n getInstance: function(ga) {\n while (ga) {\n var ha = l.get(ga, \"toggler\");\n if (ha) {\n return ha\n };\n if (k.hasClass(ga, \"uiToggleContext\")) {\n return da.createInstance(ga)\n };\n ga = y(ga);\n };\n return (ba = (ba || new da()));\n },\n listen: function(ga, ha, ia) {\n return da.subscribe(v(ga), function(ja, ka) {\n if ((ka.getActive() === ha)) {\n return ia(ja, ka)\n };\n });\n },\n subscribe: (function(ga) {\n return function(ha, ia) {\n ha = v(ha);\n if (s(ha, \"show\")) {\n aa.forEach(function(ja) {\n if (ja.getActive()) {\n ia.curry(\"show\", ja).defer();\n };\n });\n };\n return ga(ha, ia);\n };\n })(da.subscribe.bind(da))\n });\n function ea(ga, ha) {\n if ((ga instanceof da)) {\n return ga\n };\n return da.getInstance(ha);\n };\n function fa(ga) {\n var ha = n.scry(ga, \"a[rel=\\\"toggle\\\"]\");\n if (((ha.length > 0) && ha[0].getAttribute(\"data-target\"))) {\n return x(ha[0].getAttribute(\"data-target\"))\n };\n };\n e.exports = da;\n});\n__d(\"Tooltip\", [\"Event\",\"AsyncRequest\",\"ContextualLayer\",\"ContextualLayerAutoFlip\",\"CSS\",\"DataStore\",\"DOM\",\"Style\",\"URI\",\"copyProperties\",\"emptyFunction\",\"cx\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"AsyncRequest\"), i = b(\"ContextualLayer\"), j = b(\"ContextualLayerAutoFlip\"), k = b(\"CSS\"), l = b(\"DataStore\"), m = b(\"DOM\"), n = b(\"Style\"), o = b(\"URI\"), p = b(\"copyProperties\"), q = b(\"emptyFunction\"), r = b(\"cx\"), s = b(\"tx\"), t = null, u = null, v = null, w = [], x;\n function y() {\n if (!u) {\n v = m.create(\"div\", {\n className: \"tooltipContent\"\n });\n var fa = m.create(\"i\", {\n className: \"arrow\"\n }), ga = m.create(\"div\", {\n className: \"uiTooltipX\"\n }, [v,fa,]);\n u = new i({\n }, ga);\n u.shouldSetARIAProperties(false);\n u.enableBehavior(j);\n }\n ;\n };\n function z(fa) {\n return p({\n content: fa.getAttribute(\"aria-label\"),\n position: (fa.getAttribute(\"data-tooltip-position\") || \"above\"),\n alignH: (fa.getAttribute(\"data-tooltip-alignh\") || \"left\")\n }, l.get(fa, \"tooltip\"));\n };\n function aa(fa, ga) {\n var ha = z(fa);\n l.set(fa, \"tooltip\", {\n content: (ga.content || ha.content),\n position: (ga.position || ha.position),\n alignH: (ga.alignH || ha.alignH),\n suspend: (ga.suspend || ha.suspend)\n });\n fa.setAttribute(\"data-hover\", \"tooltip\");\n };\n function ba(fa, ga) {\n ea.set(fa, \"Loading...\");\n new h(ga).setHandler(function(ha) {\n ea.set(fa, ha.getPayload());\n }).setErrorHandler(q).send();\n };\n var ca = /(\\r\\n|[\\r\\n])/;\n function da(fa) {\n return fa.split(ca).map(function(ga) {\n return (ca.test(ga) ? m.create(\"br\") : ga);\n });\n };\n var ea = {\n process: function(fa, ga) {\n if (!m.contains(fa, ga)) {\n return\n };\n if (((fa !== t) && !fa.getAttribute(\"data-tooltip-suspend\"))) {\n var ha = fa.getAttribute(\"data-tooltip-uri\");\n if (ha) {\n fa.removeAttribute(\"data-tooltip-uri\");\n ba(fa, ha);\n }\n ;\n ea.show(fa);\n }\n ;\n },\n remove: function(fa) {\n l.remove(fa, \"tooltip\");\n fa.removeAttribute(\"data-hover\");\n fa.removeAttribute(\"data-tooltip-position\");\n fa.removeAttribute(\"data-tooltip-alignh\");\n ((fa === t) && ea.hide());\n },\n suspend: function(fa) {\n fa.setAttribute(\"data-tooltip-suspend\", true);\n ((fa === t) && ea.hide());\n },\n unsuspend: function(fa) {\n fa.removeAttribute(\"data-tooltip-suspend\");\n },\n hide: function() {\n if (t) {\n u.hide();\n t = null;\n while (w.length) {\n w.pop().remove();;\n };\n }\n ;\n },\n set: function(fa, ga, ha, ia) {\n if ((ha || ia)) {\n aa(fa, {\n position: ha,\n alignH: ia\n });\n };\n if ((ga instanceof o)) {\n if ((fa === t)) {\n ba(fa, ga);\n }\n else fa.setAttribute(\"data-tooltip-uri\", ga);\n ;\n }\n else {\n if ((typeof ga !== \"string\")) {\n ga = m.create(\"div\", {\n }, ga);\n fa.setAttribute(\"aria-label\", m.getText(ga));\n }\n else fa.setAttribute(\"aria-label\", ga);\n ;\n aa(fa, {\n content: ga\n });\n ((fa === t) && ea.show(fa));\n }\n ;\n },\n show: function(fa) {\n y();\n ea.hide();\n var ga = z(fa);\n if (!ga.content) {\n return\n };\n var ha = 0, ia = 0;\n if (((ga.position === \"left\") || (ga.position === \"right\"))) {\n x = (x || k.hasClass(document.body, \"-cx-PUBLIC-hasLitestand__body\"));\n var ja = (x ? 28 : 20);\n ia = (((fa.offsetHeight - ja)) / 2);\n }\n else if ((ga.alignH !== \"center\")) {\n var ka = fa.offsetWidth;\n if ((ka < 18)) {\n ha = ((((ka - 18)) / 2) * (((ga.alignH === \"right\") ? -1 : 1)));\n };\n }\n \n ;\n u.setContext(fa).setOffsetX(ha).setOffsetY(ia).setPosition(ga.position).setAlignment(ga.alignH);\n if ((typeof ga.content === \"string\")) {\n k.addClass(u.getRoot(), \"invisible_elem\");\n var la = m.create(\"span\", {\n }, da(ga.content)), ma = m.create(\"div\", {\n className: \"tooltipText\"\n }, la);\n m.setContent(v, ma);\n u.show();\n var na;\n if (ma.getClientRects) {\n var oa = ma.getClientRects()[0];\n if (oa) {\n na = Math.round((oa.right - oa.left));\n };\n }\n ;\n if (!na) {\n na = ma.offsetWidth;\n };\n if ((na < la.offsetWidth)) {\n k.addClass(ma, \"tooltipWrap\");\n u.updatePosition();\n }\n ;\n k.removeClass(u.getRoot(), \"invisible_elem\");\n }\n else {\n m.setContent(v, ga.content);\n u.show();\n }\n ;\n var pa = function(ra) {\n if (!m.contains(t, ra.getTarget())) {\n ea.hide();\n };\n };\n w.push(g.listen(document.documentElement, \"mouseover\", pa), g.listen(document.documentElement, \"focusin\", pa));\n var qa = n.getScrollParent(fa);\n if ((qa !== window)) {\n w.push(g.listen(qa, \"scroll\", ea.hide));\n };\n w.push(g.listen(fa, \"click\", ea.hide));\n t = fa;\n }\n };\n g.listen(window, \"scroll\", ea.hide);\n e.exports = ea;\n});\n__d(\"SelectorDeprecated\", [\"Event\",\"Arbiter\",\"Button\",\"ContextualLayer\",\"CSS\",\"DataStore\",\"DOM\",\"Focus\",\"HTML\",\"Keys\",\"KeyStatus\",\"MenuDeprecated\",\"Parent\",\"Style\",\"Toggler\",\"Tooltip\",\"Vector\",\"arrayContains\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Arbiter\"), i = b(\"Button\"), j = b(\"ContextualLayer\"), k = b(\"CSS\"), l = b(\"DataStore\"), m = b(\"DOM\"), n = b(\"Focus\"), o = b(\"HTML\"), p = b(\"Keys\"), q = b(\"KeyStatus\"), r = b(\"MenuDeprecated\"), s = b(\"Parent\"), t = b(\"Style\"), u = b(\"Toggler\"), v = b(\"Tooltip\"), w = b(\"Vector\"), x = b(\"arrayContains\"), y = b(\"copyProperties\"), z = b(\"emptyFunction\"), aa, ba, ca = [], da;\n function ea(pa) {\n return s.byClass(pa, \"uiSelector\");\n };\n function fa(pa) {\n return s.byClass(pa, \"uiSelectorButton\");\n };\n function ga() {\n if (!ba) {\n ba = new j({\n position: \"below\"\n }, m.create(\"div\"));\n k.addClass(ba.getRoot(), \"uiSelectorContextualLayer\");\n }\n ;\n return ba;\n };\n function ha(pa) {\n return m.scry(pa, \"select\")[0];\n };\n function ia(pa) {\n return m.find(pa, \"div.uiSelectorMenuWrapper\");\n };\n function ja() {\n ja = z;\n r.subscribe(\"select\", function(pa, qa) {\n if (((!aa || !qa) || (qa.menu !== oa.getSelectorMenu(aa)))) {\n return\n };\n var ra = ka(aa), sa = la(qa.item);\n if (sa) {\n var ta = aa, ua = oa.isOptionSelected(qa.item), va = oa.inform(\"select\", {\n selector: ta,\n option: qa.item,\n clone: da\n });\n if ((va === false)) {\n return\n };\n if ((ra || !ua)) {\n oa.setSelected(ta, oa.getOptionValue(qa.item), !ua);\n oa.inform(\"toggle\", {\n selector: ta,\n option: qa.item\n });\n oa.inform(\"change\", {\n selector: ta\n });\n h.inform(\"Form/change\", {\n node: ta\n });\n if (ma(ta)) {\n l.set(ta, \"dirty\", true);\n };\n }\n ;\n }\n ;\n if ((!ra || !sa)) {\n (aa && oa.toggle(aa));\n };\n });\n };\n function ka(pa) {\n return !!pa.getAttribute(\"data-multiple\");\n };\n function la(pa) {\n return k.hasClass(pa, \"uiSelectorOption\");\n };\n function ma(pa) {\n return !!pa.getAttribute(\"data-autosubmit\");\n };\n var na = function() {\n na = z;\n var pa = {\n keydown: function(event) {\n var qa = event.getTarget();\n if (m.isInputNode(qa)) {\n return\n };\n switch (g.getKeyCode(event)) {\n case p.DOWN:\n \n case p.SPACE:\n \n case p.UP:\n if (fa(qa)) {\n var ra = ea(qa);\n oa.toggle(ra);\n return false;\n }\n ;\n break;\n case p.ESC:\n if (aa) {\n var sa = oa.getSelectorButton(aa);\n oa.toggle(aa);\n (sa && n.set(sa));\n return false;\n }\n ;\n break;\n };\n },\n mouseover: function(event) {\n var qa = s.byAttribute(event.getTarget(), \"ajaxify\");\n if ((qa && k.hasClass(qa, \"uiSelectorButton\"))) {\n oa.loadMenu(ea(qa));\n };\n }\n };\n g.listen(document.body, pa);\n };\n u.subscribe([\"show\",\"hide\",], function(pa, qa) {\n var ra = ea(qa.getActive());\n if (ra) {\n na();\n ja();\n var sa = oa.getSelectorButton(ra), ta = oa.getSelectorMenu(ra), ua = (pa === \"show\");\n sa.setAttribute(\"aria-expanded\", (ua ? \"true\" : \"false\"));\n if (ua) {\n aa = ra;\n if (k.hasClass(sa, \"uiButtonDisabled\")) {\n oa.setEnabled(ra, false);\n return false;\n }\n ;\n ta = (ta || oa.loadMenu(ra));\n var va = t.getScrollParent(ra), wa = ((va !== window) && (va !== m.getDocumentScrollElement()));\n if ((wa || k.hasClass(ra, \"uiSelectorUseLayer\"))) {\n if (wa) {\n ca.push(g.listen(va, \"scroll\", function() {\n qa.hide();\n }));\n };\n da = m.create(\"div\", {\n className: ra.className\n });\n k.addClass(da, \"invisible_elem\");\n w.getElementDimensions(ra).setElementDimensions(da);\n m.replace(ra, da);\n var xa = k.hasClass(ra, \"uiSelectorRight\"), ya = k.hasClass(ra, \"uiSelectorBottomUp\");\n ga().setContext(da).setContent(ra).setPosition((ya ? \"above\" : \"below\")).setAlignment((xa ? \"right\" : \"left\")).show();\n }\n ;\n r.register(ta);\n if (q.isKeyDown()) {\n var za = r.getCheckedItems(ta);\n if (!za.length) {\n za = r.getEnabledItems(ta);\n };\n r.focusItem(za[0]);\n }\n ;\n }\n else {\n aa = null;\n if (da) {\n while (ca.length) {\n ca.pop().remove();;\n };\n m.replace(da, ra);\n ga().hide();\n da = null;\n }\n ;\n (ta && r.unregister(ta));\n if ((ma(ra) && l.get(ra, \"dirty\"))) {\n var ab = m.scry(ra, \"input.submitButton\")[0];\n (ab && ab.click());\n l.remove(ra, \"dirty\");\n }\n ;\n }\n ;\n k.conditionClass(oa.getSelectorButton(ra), \"selected\", ua);\n oa.inform((ua ? \"open\" : \"close\"), {\n selector: ra,\n clone: da\n });\n }\n ;\n });\n var oa = y(new h(), {\n attachMenu: function(pa, qa, ra) {\n pa = ea(pa);\n if (pa) {\n (aa && r.unregister(oa.getSelectorMenu(aa)));\n m.setContent(ia(pa), qa);\n (aa && r.register(oa.getSelectorMenu(pa)));\n (da && ga().updatePosition());\n if (ra) {\n var sa = pa.getAttribute(\"data-name\");\n (sa && ra.setAttribute(\"name\", sa));\n if (!ka(pa)) {\n ra.setAttribute(\"multiple\", false);\n };\n var ta = ha(pa);\n if (ta) {\n m.replace(ta, ra);\n }\n else m.insertAfter(pa.firstChild, ra);\n ;\n }\n ;\n return true;\n }\n ;\n },\n getOption: function(pa, qa) {\n var ra = oa.getOptions(pa), sa = ra.length;\n while (sa--) {\n if ((qa === oa.getOptionValue(ra[sa]))) {\n return ra[sa]\n };\n };\n return null;\n },\n getOptions: function(pa) {\n var qa = r.getItems(oa.getSelectorMenu(pa));\n return qa.filter(la);\n },\n getEnabledOptions: function(pa) {\n var qa = r.getEnabledItems(oa.getSelectorMenu(pa));\n return qa.filter(la);\n },\n getSelectedOptions: function(pa) {\n return r.getCheckedItems(oa.getSelectorMenu(pa));\n },\n getOptionText: function(pa) {\n return r.getItemLabel(pa);\n },\n getOptionValue: function(pa) {\n var qa = ea(pa), ra = ha(qa), sa = oa.getOptions(qa).indexOf(pa);\n return ((sa >= 0) ? ra.options[(sa + 1)].value : \"\");\n },\n getSelectorButton: function(pa) {\n return m.find(pa, \"a.uiSelectorButton\");\n },\n getSelectorMenu: function(pa) {\n return m.scry(pa, \"div.uiSelectorMenu\")[0];\n },\n getValue: function(pa) {\n var qa = ha(pa);\n if (!qa) {\n return null\n };\n if (!ka(pa)) {\n return qa.value\n };\n var ra = [], sa = qa.options;\n for (var ta = 1, ua = sa.length; (ta < ua); ta++) {\n if (sa[ta].selected) {\n ra.push(sa[ta].value);\n };\n };\n return ra;\n },\n isOptionSelected: function(pa) {\n return r.isItemChecked(pa);\n },\n listen: function(pa, qa, ra) {\n return this.subscribe(qa, function(sa, ta) {\n if ((ta.selector === pa)) {\n return ra(ta, sa)\n };\n });\n },\n loadMenu: function(pa) {\n var qa = oa.getSelectorMenu(pa);\n if (!qa) {\n var ra = oa.getSelectorButton(pa), sa = ra.getAttribute(\"ajaxify\");\n if (sa) {\n d([\"AsyncRequest\",], function(ua) {\n ua.bootstrap(sa, ra);\n });\n var ta = o(((((((\"\\u003Cdiv class=\\\"uiSelectorMenuWrapper uiToggleFlyout\\\"\\u003E\" + \"\\u003Cdiv class=\\\"uiMenu uiSelectorMenu loading\\\"\\u003E\") + \"\\u003Cul class=\\\"uiMenuInner\\\"\\u003E\") + \"\\u003Cli\\u003E\\u003Cspan\\u003E\\u003C/span\\u003E\\u003C/li\\u003E\") + \"\\u003C/ul\\u003E\") + \"\\u003C/div\\u003E\") + \"\\u003C/div\\u003E\"));\n m.appendContent(ra.parentNode, ta);\n qa = oa.getSelectorMenu(pa);\n ra.removeAttribute(\"onmouseover\");\n }\n ;\n }\n ;\n return qa;\n },\n setButtonLabel: function(pa, qa) {\n var ra = oa.getSelectorButton(pa), sa = parseInt(ra.getAttribute(\"data-length\"), 10);\n qa = ((qa || ra.getAttribute(\"data-label\")) || \"\");\n i.setLabel(ra, qa);\n if ((typeof qa === \"string\")) {\n k.conditionClass(ra, \"uiSelectorBigButtonLabel\", (qa.length > sa));\n if ((sa && (qa.length > sa))) {\n ra.setAttribute(\"title\", qa);\n }\n else ra.removeAttribute(\"title\");\n ;\n }\n ;\n },\n setButtonTooltip: function(pa, qa) {\n var ra = oa.getSelectorButton(pa), sa = s.byTag(ra, \"a\");\n (sa && v.set(sa, ((qa || ra.getAttribute(\"data-tooltip\")) || \"\")));\n },\n updateButtonARIALabel: function(pa, qa) {\n var ra = oa.getSelectorButton(pa), sa = s.byTag(ra, \"a\");\n if (sa) {\n var ta = ra.getAttribute(\"data-ariaprefix\");\n if (ta) {\n ra.setAttribute(\"aria-label\", ((ta + \": \") + qa));\n };\n }\n ;\n },\n setEnabled: function(pa, qa) {\n if (((!qa && aa) && (ea(pa) === aa))) {\n oa.toggle(pa);\n };\n i.setEnabled(oa.getSelectorButton(pa), qa);\n },\n setOptionEnabled: function(pa, qa) {\n r.setItemEnabled(pa, qa);\n },\n setSelected: function(pa, qa, ra) {\n ra = (ra !== false);\n var sa = oa.getOption(pa, qa);\n if (!sa) {\n return\n };\n var ta = oa.isOptionSelected(sa);\n if ((ra !== ta)) {\n if ((!ka(pa) && !ta)) {\n var ua = oa.getSelectedOptions(pa)[0];\n (ua && r.toggleItem(ua));\n }\n ;\n r.toggleItem(sa);\n }\n ;\n oa.updateSelector(pa);\n },\n toggle: function(pa) {\n u.toggle(m.scry(ea(pa), \"div.wrap\")[0]);\n },\n updateSelector: function(pa) {\n var qa = oa.getOptions(pa), ra = oa.getSelectedOptions(pa), sa = ha(pa).options, ta = [], ua = [];\n for (var va = 0, wa = qa.length; (va < wa); va++) {\n var xa = x(ra, qa[va]);\n sa[(va + 1)].selected = xa;\n if (xa) {\n var ya = oa.getOptionText(qa[va]);\n ta.push(ya);\n ua.push((qa[va].getAttribute(\"data-tooltip\") || ya));\n }\n ;\n };\n sa[0].selected = !ra.length;\n var za = k.hasClass(pa, \"uiSelectorDynamicLabel\"), ab = k.hasClass(pa, \"uiSelectorDynamicTooltip\");\n if ((za || ab)) {\n var bb = \"\";\n if (ka(pa)) {\n var cb = oa.getSelectorButton(pa);\n bb = (cb.getAttribute(\"data-delimiter\") || \", \");\n }\n ;\n ta = ta.join(bb);\n ua = ua.join(bb);\n if (za) {\n oa.setButtonLabel(pa, ta);\n oa.updateButtonARIALabel(pa, ta);\n }\n ;\n (ab && oa.setButtonTooltip(pa, ua));\n }\n ;\n }\n });\n e.exports = oa;\n});\n__d(\"SubscriptionsHandler\", [\"JSLogger\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"JSLogger\"), h = b(\"copyProperties\"), i = g.create(\"subscriptions_handler\");\n function j(k) {\n this._name = (k || \"unnamed\");\n this._subscriptions = [];\n };\n h(j.prototype, {\n addSubscriptions: function() {\n if (this._subscriptions) {\n Array.prototype.push.apply(this._subscriptions, arguments);\n }\n else {\n i.warn((this._name + \".subscribe_while_released\"));\n for (var k = 0, l = arguments.length; (k < l); k++) {\n this._unsubscribe(arguments[k]);;\n };\n }\n ;\n },\n engage: function() {\n this._subscriptions = (this._subscriptions || []);\n },\n release: function() {\n if (this._subscriptions) {\n this._subscriptions.forEach(this._unsubscribe.bind(this));\n };\n this._subscriptions = null;\n },\n _unsubscribe: function(k) {\n if (k.remove) {\n k.remove();\n }\n else if (k.reset) {\n k.reset();\n }\n else if (k.unsubscribe) {\n k.unsubscribe();\n }\n else i.error((this._name + \".invalid\"), k);\n \n \n ;\n }\n });\n e.exports = j;\n});\n__d(\"Typeahead\", [\"ArbiterMixin\",\"BehaviorsMixin\",\"DOM\",\"DataStore\",\"Event\",\"Parent\",\"Run\",\"copyProperties\",\"emptyFunction\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"BehaviorsMixin\"), i = b(\"DOM\"), j = b(\"DataStore\"), k = b(\"Event\"), l = b(\"Parent\"), m = b(\"Run\"), n = b(\"copyProperties\"), o = b(\"emptyFunction\"), p = b(\"ge\");\n function q(r, s, t, u) {\n this.args = {\n data: r,\n view: s,\n core: t\n };\n j.set(u, \"Typeahead\", this);\n this.element = u;\n };\n q.getInstance = function(r) {\n var s = l.byClass(r, \"uiTypeahead\");\n return (s ? j.get(s, \"Typeahead\") : null);\n };\n n(q.prototype, g, h, {\n init: function(r) {\n this.init = o;\n this.getCore();\n this.getView().setAccessibilityControlElement(this.getCore().getElement());\n this.proxyEvents();\n this.initBehaviors((r || []));\n this.inform(\"init\", this);\n this.data.bootstrap();\n this.core.focus();\n },\n getData: function() {\n if (!this.data) {\n var r = this.args.data;\n this.data = r;\n this.data.init();\n }\n ;\n return this.data;\n },\n getView: function() {\n if (!this.view) {\n var r = this.args.view, s = (r.node || p(r.node_id));\n if (!s) {\n s = i.create(\"div\", {\n className: \"uiTypeaheadView\"\n });\n i.appendContent(this.element, s);\n }\n ;\n if ((typeof r.ctor === \"string\")) {\n this.view = new window[r.ctor](s, (r.options || {\n }));\n }\n else this.view = new r.ctor(s, (r.options || {\n }));\n ;\n this.view.init();\n this.view.setTypeahead(this.element);\n }\n ;\n return this.view;\n },\n getCore: function() {\n if (!this.core) {\n var r = this.args.core;\n if ((typeof r.ctor === \"string\")) {\n this.core = new window[r.ctor]((r.options || {\n }));\n }\n else this.core = new r.ctor((r.options || {\n }));\n ;\n this.core.init(this.getData(), this.getView(), this.getElement());\n }\n ;\n return this.core;\n },\n getElement: function() {\n return this.element;\n },\n swapData: function(r) {\n var s = this.core;\n this.data = this.args.data = r;\n r.init();\n if (s) {\n s.data = r;\n s.initData();\n s.reset();\n }\n ;\n r.bootstrap();\n return r;\n },\n proxyEvents: function() {\n [this.data,this.view,this.core,].forEach(function(r) {\n r.subscribe(r.events, this.inform.bind(this));\n }, this);\n },\n initBehaviors: function(r) {\n r.forEach(function(s) {\n if ((typeof s === \"string\")) {\n if ((a.TypeaheadBehaviors && a.TypeaheadBehaviors[s])) {\n a.TypeaheadBehaviors[s](this);\n }\n else m.onLoad(function() {\n if (a.TypeaheadBehaviors) {\n ((a.TypeaheadBehaviors[s] || o))(this);\n };\n }.bind(this));\n ;\n }\n else this.enableBehavior(s);\n ;\n }, this);\n }\n });\n q.initNow = function(r, s, t) {\n if (t) {\n t.init(r);\n };\n r.init(s);\n };\n q.init = function(r, s, t, u) {\n if (!i.isNodeOfType(r, [\"input\",\"textarea\",])) {\n r = (i.scry(r, \"input\")[0] || i.scry(r, \"textarea\")[0]);\n };\n var v = false;\n try {\n v = (document.activeElement === r);\n } catch (w) {\n \n };\n if (v) {\n q.initNow(s, t, u);\n }\n else var x = k.listen(r, \"focus\", function() {\n q.initNow(s, t, u);\n x.remove();\n })\n ;\n };\n e.exports = q;\n});\n__d(\"StickyPlaceholderInput\", [\"Event\",\"CSS\",\"DOM\",\"Input\",\"Parent\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"CSS\"), i = b(\"DOM\"), j = b(\"Input\"), k = b(\"Parent\"), l = b(\"emptyFunction\");\n function m(q) {\n return k.byClass(q, \"uiStickyPlaceholderInput\");\n };\n function n(q) {\n return i.scry(q, \".placeholder\")[0];\n };\n function o(q) {\n q = (q || window.event);\n var r = (q.target || q.srcElement);\n if (i.isNodeOfType(r, [\"input\",\"textarea\",])) {\n var s = m(r);\n if (s) {\n (function() {\n h.conditionClass(s, \"uiStickyPlaceholderEmptyInput\", !r.value.length);\n }).defer();\n };\n }\n ;\n };\n var p = {\n init: function() {\n p.init = l;\n g.listen(document.documentElement, {\n keydown: o,\n paste: o,\n focusout: o\n });\n },\n registerInput: function(q) {\n p.init();\n var r = (q.getAttribute(\"placeholder\") || \"\");\n if (r.length) {\n if ((document.activeElement === q)) {\n var s = g.listen(q, \"blur\", function() {\n p.manipulateInput(q, r);\n s.remove();\n });\n }\n else p.manipulateInput(q, r);\n \n };\n },\n manipulateInput: function(q, r) {\n var s = i.create(\"div\", {\n className: \"placeholder\",\n \"aria-hidden\": \"true\"\n }, r), t = i.create(\"div\", {\n className: \"uiStickyPlaceholderInput\"\n }, s);\n if (i.isNodeOfType(q, \"textarea\")) {\n h.addClass(t, \"uiStickyPlaceholderTextarea\");\n };\n g.listen(s, \"click\", function() {\n q.focus();\n });\n if ((q.value === r)) {\n q.value = \"\";\n };\n h.removeClass(q, \"DOMControl_placeholder\");\n q.setAttribute(\"placeholder\", \"\");\n i.replace(q, t);\n i.appendContent(t, q);\n h.conditionClass(t, \"uiStickyPlaceholderEmptyInput\", !q.value.length);\n },\n setPlaceholderText: function(q, r) {\n var s = m(q);\n if (!s) {\n j.setPlaceholder(q, r);\n }\n else {\n var t = n(s);\n (t && i.setContent(t, r));\n }\n ;\n },\n getPlaceholderText: function(q) {\n var r = m(q), s = n(r);\n return (s && i.getText(s));\n },\n update: function(q) {\n var r = m(q);\n if (r) {\n h.conditionClass(r, \"uiStickyPlaceholderEmptyInput\", !q.value.length);\n };\n },\n getVisibleText: function(q) {\n var r = m(q);\n if (h.hasClass(r, \"uiStickyPlaceholderEmptyInput\")) {\n var s = n(r);\n return (s && i.getText(s));\n }\n else return q.value\n ;\n }\n };\n e.exports = p;\n});\n__d(\"TypeaheadCore\", [\"Event\",\"Arbiter\",\"ArbiterMixin\",\"CSS\",\"DOM\",\"Focus\",\"Input\",\"InputSelection\",\"Keys\",\"StickyPlaceholderInput\",\"UserAgent\",\"bind\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Arbiter\"), i = b(\"ArbiterMixin\"), j = b(\"CSS\"), k = b(\"DOM\"), l = b(\"Focus\"), m = b(\"Input\"), n = b(\"InputSelection\"), o = b(\"Keys\"), p = b(\"StickyPlaceholderInput\"), q = b(\"UserAgent\"), r = b(\"bind\"), s = b(\"copyProperties\"), t = b(\"emptyFunction\");\n function u(v) {\n s(this, v);\n };\n s(u.prototype, i, {\n events: [\"blur\",\"focus\",\"click\",\"unselect\",\"loading\",],\n keepFocused: true,\n resetOnSelect: false,\n resetOnKeyup: true,\n setValueOnSelect: false,\n queryTimeout: 250,\n preventFocusChangeOnTab: false,\n init: function(v, w, x) {\n this.init = t;\n this.data = v;\n this.view = w;\n this.root = x;\n this.initInput();\n this.inputWrap = k.find(x, \"div.wrap\");\n this.hiddenInput = k.find(x, \"input.hiddenInput\");\n this.value = \"\";\n this.nextQuery = null;\n this.selectedText = null;\n if ((this.setValueOnSelect && j.hasClass(this.inputWrap, \"selected\"))) {\n this.selectedText = this.getValue();\n };\n this.initView();\n this.initData();\n this.initEvents();\n this.initToggle();\n this._exclusions = [];\n },\n initInput: function() {\n this.element = k.find(this.root, \".textInput\");\n var v = k.scry(this.element, \"input\")[0];\n if (v) {\n this.element = v;\n };\n },\n initView: function() {\n this.view.subscribe(\"highlight\", l.set.curry(this.element));\n this.view.subscribe(\"select\", function(v, w) {\n this.select(w.selected);\n }.bind(this));\n this.view.subscribe(\"afterSelect\", function() {\n this.afterSelect();\n }.bind(this));\n },\n initData: function() {\n this.data.subscribe(\"respond\", function(v, w) {\n if ((w.forceDisplay || ((w.value == this.getValue()) && !this.element.disabled))) {\n this.view.render(w.value, w.results, w.isAsync);\n };\n }.bind(this));\n this.data.subscribe(\"activity\", function(v, w) {\n this.fetching = w.activity;\n if (!this.fetching) {\n (this.nextQuery && this.performQuery());\n };\n if ((this.loading != this.fetching)) {\n this.loading = this.fetching;\n this.inform(\"loading\", {\n loading: this.loading\n });\n }\n ;\n }.bind(this));\n },\n initEvents: function() {\n g.listen(this.view.getElement(), {\n mouseup: this.viewMouseup.bind(this),\n mousedown: this.viewMousedown.bind(this)\n });\n var v = {\n blur: r(this, \"blur\"),\n focus: r(this, \"focus\"),\n click: r(this, \"click\"),\n keyup: r(this, \"keyup\"),\n keydown: r(this, \"keydown\")\n };\n if (q.firefox()) {\n v.text = v.keyup;\n };\n if ((q.firefox() < 4)) {\n v.keypress = v.keydown;\n delete v.keydown;\n }\n ;\n g.listen(this.element, v);\n g.listen(this.element, \"keypress\", r(this, \"keypress\"));\n },\n initToggle: function() {\n this.subscribe(\"blur\", this.view.hide.bind(this.view));\n this.subscribe(\"focus\", this.view.show.bind(this.view));\n },\n viewMousedown: function() {\n this.selecting = true;\n },\n viewMouseup: function() {\n this.selecting = false;\n },\n blur: function() {\n if (this.selecting) {\n this.selecting = false;\n return;\n }\n ;\n this.inform(\"blur\");\n },\n click: function() {\n var v = n.get(this.element);\n if ((v.start == v.end)) {\n this.element.select();\n };\n this.inform(\"click\");\n },\n focus: function() {\n this.checkValue();\n this.inform(\"focus\");\n },\n keyup: function() {\n if ((this.resetOnKeyup && !this.getValue())) {\n this.view.reset();\n };\n this.checkValue();\n },\n keydown: function(event) {\n if ((!this.view.isVisible() || this.view.isEmpty())) {\n this.checkValue.bind(this).defer();\n return;\n }\n ;\n switch (g.getKeyCode(event)) {\n case o.TAB:\n this.handleTab(event);\n return;\n case o.UP:\n this.view.prev();\n break;\n case o.DOWN:\n this.view.next();\n break;\n case o.ESC:\n this.view.reset();\n break;\n default:\n this.checkValue.bind(this).defer();\n return;\n };\n event.kill();\n },\n keypress: function(event) {\n if ((this.view.getSelection() && (g.getKeyCode(event) == o.RETURN))) {\n this.view.select();\n event.kill();\n }\n ;\n },\n handleTab: function(event) {\n if (this.preventFocusChangeOnTab) {\n if (this.view.getSelection()) {\n event.kill();\n }\n else event.prevent();\n \n };\n this.view.select();\n },\n select: function(v) {\n if ((v && this.setValueOnSelect)) {\n this.setValue(v.text);\n this.setHiddenValue(v.uid);\n this.selectedText = v.text;\n j.addClass(this.inputWrap, \"selected\");\n }\n ;\n },\n afterSelect: function() {\n (this.keepFocused ? l.set(this.element) : this.element.blur());\n (this.resetOnSelect ? this.reset() : this.view.reset());\n },\n unselect: function() {\n if (this.setValueOnSelect) {\n this.selectedText = null;\n j.removeClass(this.inputWrap, \"selected\");\n }\n ;\n this.setHiddenValue();\n this.inform(\"unselect\", this);\n },\n setEnabled: function(v) {\n var w = (v === false);\n this.element.disabled = w;\n j.conditionClass(this.root, \"uiTypeaheadDisabled\", w);\n },\n reset: function() {\n this.unselect();\n this.setValue();\n (!this.keepFocused && m.reset(this.element));\n this.view.reset();\n this.inform(\"reset\");\n },\n getElement: function() {\n return this.element;\n },\n setExclusions: function(v) {\n this._exclusions = v;\n },\n getExclusions: function() {\n return this._exclusions;\n },\n setValue: function(v) {\n this.value = this.nextQuery = (v || \"\");\n m.setValue(this.element, this.value);\n p.update(this.element);\n },\n setHiddenValue: function(v) {\n this.hiddenInput.value = (((v || (v === 0))) ? v : \"\");\n h.inform(\"Form/change\", {\n node: this.hiddenInput\n });\n },\n getValue: function() {\n return m.getValue(this.element);\n },\n getHiddenValue: function() {\n return (this.hiddenInput.value || \"\");\n },\n checkValue: function() {\n var v = this.getValue();\n if ((v == this.value)) {\n return\n };\n if ((this.selectedText && (this.selectedText != v))) {\n this.unselect();\n };\n var w = Date.now(), x = (w - this.time);\n this.time = w;\n this.value = this.nextQuery = v;\n this.performQuery(x);\n },\n performQuery: function(v) {\n if (this.selectedText) {\n return\n };\n v = (v || 0);\n if ((this.fetching && (v < this.queryTimeout))) {\n this.data.query(this.nextQuery, true, this._exclusions, v);\n }\n else {\n this.data.query(this.nextQuery, false, this._exclusions, v);\n this.nextQuery = null;\n }\n ;\n }\n });\n e.exports = u;\n});\n__d(\"reportData\", [\"EagleEye\",\"userAction\",], function(a, b, c, d, e, f) {\n var g = b(\"EagleEye\"), h = b(\"userAction\");\n function i(j, k) {\n k = (k || {\n });\n var l = {\n ft: ((k.ft || {\n })),\n gt: ((k.gt || {\n }))\n }, m = \"-\", n = a.ArbiterMonitor, o = ((!!n) ? n.getActFields() : []), p = ((!n) ? \"r\" : \"a\"), q = [Date.now(),h.getCurrentUECount(),m,j,m,m,p,(a.URI ? a.URI.getRequestURI(true, true).getUnqualifiedURI().toString() : ((location.pathname + location.search) + location.hash)),l,0,0,0,0,].concat(o);\n g.log(\"act\", q);\n };\n e.exports = i;\n});\n__d(\"TimelineSection\", [\"Arbiter\",\"DOMScroll\",\"DoublyLinkedListMap\",\"Run\",\"TidyArbiterMixin\",\"copyProperties\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"DOMScroll\"), i = b(\"DoublyLinkedListMap\"), j = b(\"Run\"), k = b(\"TidyArbiterMixin\"), l = b(\"copyProperties\"), m = b(\"ge\"), n = null;\n function o() {\n n = null;\n };\n function p(q, r, s) {\n this.id = q;\n this.label = s;\n this.nodeID = r;\n this._parentSection = null;\n this.childSections = new i();\n this._isLoaded = false;\n p.inform.bind(p, (\"sectionInitialized/\" + q), {\n section: this\n }, g.BEHAVIOR_STATE).defer();\n };\n l(p, k, {\n callWithSection: function(q, r) {\n this.subscribe((\"sectionInitialized/\" + q), function(s, t) {\n r(t.section);\n });\n },\n setActiveSectionID: function(q) {\n (!n && j.onLeave(o));\n n = q;\n }\n });\n l(p.prototype, {\n appendSection: function(q) {\n this.childSections.append(q.id, q);\n q._parentSection = this;\n },\n freeze: function() {\n this.freezeChildren();\n },\n freezeChildren: function() {\n var q = this.childSections.getHead();\n while (q) {\n (!q.isActive() && q.freeze());\n q = q.getNext();\n };\n },\n getNext: function() {\n return (this._parentSection && this._parentSection.childSections.getNext(this.id));\n },\n getPrev: function() {\n return (this._parentSection && this._parentSection.childSections.getPrev(this.id));\n },\n isActive: function() {\n var q = this;\n while (q) {\n if ((q.id === n)) {\n return true\n };\n q = q._parentSection;\n };\n return false;\n },\n isLoaded: function() {\n return this._isLoaded;\n },\n setIsLoaded: function(q) {\n this._isLoaded = q;\n return this;\n },\n scrollTo: function() {\n if (!m(this.nodeID)) {\n return\n };\n h.scrollTo(this.getNode(), true, false, false, h.scrollTo.bind(this).curry(this.getNode(), 0));\n },\n thaw: function() {\n this.thawChildren();\n },\n thawChildren: function() {\n var q = this.childSections.getHead();\n while (q) {\n q.thaw();\n q = q.getNext();\n };\n }\n });\n e.exports = p;\n});\n__d(\"TypeaheadBestName\", [\"TokenizeUtil\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"TokenizeUtil\"), h = b(\"copyProperties\");\n function i(j) {\n this._typeahead = j;\n };\n i.prototype.enable = function() {\n var j = this._typeahead.getView();\n this._subscription = j.subscribe(\"beforeRender\", function(k, l) {\n var m = l.value;\n for (var n = 0; (n < l.results.length); ++n) {\n var o = l.results[n];\n if ((o.alternate_names == null)) {\n continue;\n };\n if (g.isQueryMatch(m, o.default_name)) {\n o.text = o.default_name;\n return;\n }\n ;\n for (var p = 0; (p < o.alternate_names.length); p++) {\n if (g.isQueryMatch(m, o.alternate_names[p])) {\n o.text = o.alternate_names[p];\n return;\n }\n ;\n };\n o.text = o.default_name;\n };\n });\n };\n i.prototype.disable = function() {\n this._typeahead.getView().unsubscribe(this._subscription);\n this._subscription = null;\n };\n h(i.prototype, {\n _subscription: null\n });\n e.exports = i;\n});\n__d(\"legacy:BestNameTypeaheadBehavior\", [\"TypeaheadBestName\",], function(a, b, c, d) {\n var e = b(\"TypeaheadBestName\");\n if (!a.TypeaheadBehaviors) {\n a.TypeaheadBehaviors = {\n };\n };\n a.TypeaheadBehaviors.buildBestAvailableNames = function(f) {\n f.enableBehavior(e);\n };\n}, 3);\n__d(\"UIIntentionalStreamMessage\", [], function(a, b, c, d, e, f) {\n var g = {\n SET_AUTO_INSERT: \"UIIntentionalStream/setAutoInsert\",\n UPDATE_STREAM: \"UIIntentionalStreamRefresh/updateStream\",\n REFRESH_STREAM: \"UIIntentionalStreamRefresh/refreshStream\",\n UPDATE_AUTOREFRESH_CONFIG: \"UIIntentionalStream/updateAutoRefreshConfig\",\n UPDATE_HTML_CONTENT: \"UIIntentionalStream/updateHtmlContent\",\n UPDATE_LAST_REFRESH_TIME: \"UIIntentionalStream/updateLastRefreshTime\",\n INSERT_STORIES: \"UIIntentionalStream/updateLastRefreshTime\",\n UNLOAD: \"UIIntentionalStream/unload\"\n };\n e.exports = g;\n});\n__d(\"AccessibleLayer\", [\"Event\",\"DOM\",\"Focus\",\"copyProperties\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"DOM\"), i = b(\"Focus\"), j = b(\"copyProperties\"), k = b(\"tx\");\n function l(m) {\n this._layer = m;\n };\n j(l.prototype, {\n enable: function() {\n this._afterShowSubscription = this._layer.subscribe(\"aftershow\", this._onAfterShow.bind(this));\n },\n disable: function() {\n (this._listener && this._listener.remove());\n this._afterShowSubscription.unsubscribe();\n this._listener = this._afterShowSubscription = null;\n },\n _closeListener: function(event) {\n var m = this._layer.getCausalElement();\n if (m) {\n if ((m.tabIndex == -1)) {\n m.tabIndex = 0;\n i.setWithoutOutline(m);\n }\n else i.set(m);\n \n };\n this._layer.hide();\n },\n _onAfterShow: function() {\n var m = this._layer.getContentRoot();\n if (h.scry(m, \".layer_close_elem\")[0]) {\n return\n };\n var n = h.create(\"a\", {\n className: \"accessible_elem layer_close_elem\",\n href: \"#\"\n }, [\"Close popup and return\",]);\n h.appendContent(m, n);\n this._listener = g.listen(n, \"click\", this._closeListener.bind(this));\n }\n });\n e.exports = l;\n});\n__d(\"LayerDestroyOnHide\", [\"function-extensions\",\"copyProperties\",\"shield\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"copyProperties\"), h = b(\"shield\");\n function i(j) {\n this._layer = j;\n };\n g(i.prototype, {\n _subscription: null,\n enable: function() {\n this._subscription = this._layer.subscribe(\"hide\", h(Function.prototype.defer, this._layer.destroy.bind(this._layer)));\n },\n disable: function() {\n if (this._subscription) {\n this._subscription.unsubscribe();\n this._subscription = null;\n }\n ;\n }\n });\n e.exports = i;\n});\n__d(\"LayerFadeOnHide\", [\"Animation\",\"Layer\",\"Style\",\"UserAgent\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"Layer\"), i = b(\"Style\"), j = b(\"UserAgent\"), k = b(\"copyProperties\");\n function l(m) {\n this._layer = m;\n };\n k(l.prototype, {\n _subscription: null,\n enable: function() {\n if ((j.ie() < 9)) {\n return\n };\n this._subscription = this._layer.subscribe(\"starthide\", this._handleStartHide.bind(this));\n },\n disable: function() {\n if (this._subscription) {\n this._subscription.unsubscribe();\n this._subscription = null;\n }\n ;\n },\n _handleStartHide: function() {\n var m = true, n = h.subscribe(\"show\", function() {\n n.unsubscribe();\n m = false;\n });\n (function() {\n n.unsubscribe();\n n = null;\n if (m) {\n this._animate();\n }\n else this._layer.finishHide();\n ;\n }).bind(this).defer();\n return false;\n },\n _animate: function() {\n new g(this._layer.getRoot()).from(\"opacity\", 1).to(\"opacity\", 0).duration(150).ondone(this._finish.bind(this)).go();\n },\n _finish: function() {\n i.set(this._layer.getRoot(), \"opacity\", \"\");\n this._layer.finishHide();\n }\n });\n e.exports = l;\n});\n__d(\"LayerHideOnBlur\", [\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\");\n function h(i) {\n this._layer = i;\n };\n g(h.prototype, {\n _subscriptions: null,\n _onBlur: null,\n enable: function() {\n this._subscriptions = [this._layer.subscribe(\"show\", this._attach.bind(this)),this._layer.subscribe(\"hide\", this._detach.bind(this)),];\n if (this._layer.isShown()) {\n this._attach();\n };\n },\n disable: function() {\n this._detach();\n while (this._subscriptions.length) {\n this._subscriptions.pop().unsubscribe();;\n };\n this._subscriptions = null;\n },\n _detach: function() {\n (this._onBlur && this._onBlur.unsubscribe());\n this._onBlur = null;\n },\n _attach: function() {\n this._onBlur = this._layer.subscribe(\"blur\", function() {\n this._layer.hide();\n return false;\n }.bind(this));\n }\n });\n e.exports = h;\n});\n__d(\"LayerHideOnEscape\", [\"Event\",\"copyProperties\",\"Keys\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"copyProperties\"), i = b(\"Keys\");\n function j(k) {\n this._layer = k;\n };\n h(j.prototype, {\n _subscription: null,\n enable: function() {\n this._subscription = this._layer.subscribe(\"key\", this._handle.bind(this));\n },\n disable: function() {\n this._subscription.unsubscribe();\n this._subscription = null;\n },\n _handle: function(k, event) {\n if ((g.getKeyCode(event) === i.ESC)) {\n this._layer.hide();\n return false;\n }\n ;\n }\n });\n e.exports = j;\n});\n__d(\"LayerMouseHooks\", [\"Event\",\"function-extensions\",\"Arbiter\",\"ContextualThing\",\"Layer\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\");\n b(\"function-extensions\");\n var h = b(\"Arbiter\"), i = b(\"ContextualThing\"), j = b(\"Layer\"), k = b(\"copyProperties\"), l = new h();\n function m(n) {\n this._layer = n;\n this._subscriptions = [];\n this._currentlyActive = false;\n };\n k(m.prototype, {\n enable: function() {\n this._subscriptions = [l.subscribe(\"mouseenter\", this._handleActive.bind(this)),l.subscribe(\"mouseleave\", this._handleInactive.bind(this)),this._layer.subscribe(\"hide\", function() {\n this._currentlyActive = false;\n }.bind(this)),];\n },\n disable: function() {\n while (this._subscriptions.length) {\n this._subscriptions.pop().unsubscribe();;\n };\n this._subscriptions = [];\n this._currentlyActive = false;\n },\n _handleActive: function(n, o) {\n if ((!this._currentlyActive && this._isNodeWithinStack(o))) {\n this._layer.inform(\"mouseenter\");\n this._currentlyActive = true;\n }\n ;\n },\n _handleInactive: function(n, o) {\n if (this._currentlyActive) {\n if ((!o || !this._isNodeWithinStack(o))) {\n this._layer.inform(\"mouseleave\");\n this._currentlyActive = false;\n }\n \n };\n },\n _isNodeWithinStack: function(n) {\n return i.containsIncludingLayers(this._layer.getContentRoot(), n);\n }\n });\n j.subscribe(\"show\", function(n, o) {\n var p = o.getContentRoot(), q = [g.listen(p, \"mouseenter\", function() {\n l.inform(\"mouseenter\", p);\n }),g.listen(p, \"mouseleave\", function(s) {\n l.inform(\"mouseleave\", s.getRelatedTarget());\n }),], r = o.subscribe(\"hide\", function() {\n while (q.length) {\n q.pop().remove();;\n };\n r.unsubscribe();\n q = r = null;\n });\n });\n e.exports = m;\n});\n__d(\"ContextualDialogArrow\", [\"JSXDOM\",\"CSS\",\"DOM\",\"Locale\",\"Style\",\"Vector\",\"copyProperties\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSXDOM\"), h = b(\"CSS\"), i = b(\"DOM\"), j = b(\"Locale\"), k = b(\"Style\"), l = b(\"Vector\"), m = b(\"copyProperties\"), n = b(\"cx\"), o = {\n bottom: \"-cx-PUBLIC-abstractContextualDialog__arrowbottom\",\n top: \"-cx-PUBLIC-abstractContextualDialog__arrowtop\",\n right: \"-cx-PUBLIC-abstractContextualDialog__arrowright\",\n left: \"-cx-PUBLIC-abstractContextualDialog__arrowleft\"\n }, p = {\n above: \"bottom\",\n below: \"top\",\n left: \"right\",\n right: \"left\"\n };\n function q(r) {\n this._layer = r;\n };\n m(q.prototype, {\n _subscription: null,\n _arrow: null,\n enable: function() {\n this._subscription = this._layer.subscribe([\"adjust\",\"reposition\",], this._handle.bind(this));\n },\n disable: function() {\n this._subscription.unsubscribe();\n this._subscription = null;\n },\n _handle: function(r, s) {\n if ((r === \"adjust\")) {\n this._repositionArrow(s);\n }\n else this._repositionRoot(s);\n ;\n },\n _repositionRoot: function(r) {\n var s = r.getAlignment();\n if ((s == \"center\")) {\n return\n };\n var t = this._layer.getRoot(), u = this._layer.getContext(), v = r.isVertical(), w = this._layer.getArrowDimensions(), x = w.offset, y = w.length, z = l.getElementDimensions(u), aa = (v ? z.x : z.y);\n if ((aa >= (y + ((x * 2))))) {\n return\n };\n var ba = (((y / 2)) + x), ca = (aa / 2), da = parseInt((ba - ca), 10);\n if (v) {\n if ((s == \"left\")) {\n var ea = parseInt(k.get(t, \"left\"), 10);\n k.set(t, \"left\", (((ea - da)) + \"px\"));\n }\n else {\n var fa = parseInt(k.get(t, \"right\"), 10);\n k.set(t, \"right\", (((fa - da)) + \"px\"));\n }\n ;\n }\n else {\n var ga = parseInt(k.get(t, \"top\"), 10);\n k.set(t, \"top\", (((ga - da)) + \"px\"));\n }\n ;\n },\n _repositionArrow: function(r) {\n var s = this._layer.getContentRoot(), t = r.getPosition(), u = p[t];\n for (var v in o) {\n h.conditionClass(s, o[v], (u === v));;\n };\n if ((t == \"none\")) {\n return\n };\n if (!this._arrow) {\n this._arrow = g.i({\n className: \"-cx-PUBLIC-abstractContextualDialog__arrow\"\n });\n i.appendContent(s, this._arrow);\n }\n ;\n h.conditionClass(s, \"-cx-PRIVATE-uiContextualDialog__withfooter\", this._layer.getFooter());\n k.set(this._arrow, \"top\", \"\");\n k.set(this._arrow, \"left\", \"\");\n k.set(this._arrow, \"right\", \"\");\n k.set(this._arrow, \"margin\", \"\");\n var w = q.getOffsetPercent(r), x = q.getOffset(r, w, this._layer), y = q.getOffsetSide(r);\n k.set(this._arrow, y, (w + \"%\"));\n k.set(this._arrow, (\"margin-\" + y), (x + \"px\"));\n }\n });\n m(q, {\n getOffsetPercent: function(r) {\n var s = r.getAlignment(), t = r.getPosition();\n if (((t == \"above\") || (t == \"below\"))) {\n if ((s == \"center\")) {\n return 50;\n }\n else if ((s == \"right\")) {\n return 100\n }\n \n };\n return 0;\n },\n getOffsetSide: function(r) {\n var s = r.isVertical();\n return (s ? ((j.isRTL() ? \"right\" : \"left\")) : \"top\");\n },\n getOffset: function(r, s, t) {\n var u = t.getArrowDimensions(), v = u.offset, w = u.length, x = r.getAlignment(), y = (((x == \"center\")) ? 0 : v);\n y += ((w * s) / 100);\n if ((x != \"left\")) {\n y *= -1;\n };\n return y;\n }\n });\n e.exports = q;\n});\n__d(\"ContextualDialogFitInViewport\", [\"Event\",\"ContextualLayerDimensions\",\"Style\",\"Vector\",\"copyProperties\",\"throttle\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"ContextualLayerDimensions\"), i = b(\"Style\"), j = b(\"Vector\"), k = b(\"copyProperties\"), l = b(\"throttle\");\n function m(n) {\n this._layer = n;\n this._listeners = [];\n };\n k(m.prototype, {\n _subscription: null,\n _minimumTop: null,\n enable: function() {\n var n = this._layer.getArrowDimensions();\n this._arrowOffset = n.offset;\n var o = n.length;\n this._arrowBuffer = (this._arrowOffset + o);\n this._subscription = this._layer.subscribe([\"show\",\"hide\",\"reposition\",], function(p, q) {\n if ((p == \"reposition\")) {\n this._calculateMinimumTop(q);\n }\n else if ((p == \"show\")) {\n this._attachScroll();\n this._adjustForScroll();\n }\n else this._detachScroll();\n \n ;\n }.bind(this));\n if (this._layer.isShown()) {\n this._attachScroll();\n };\n },\n disable: function() {\n if (this._layer.isShown()) {\n this._detachScroll();\n };\n this._subscription.unsubscribe();\n this._subscription = null;\n },\n _attachScroll: function() {\n var n = l(this._adjustForScroll.bind(this)), o = (this._layer.getContextScrollParent() || window);\n this._listeners = [g.listen(o, \"scroll\", n),g.listen(window, \"resize\", n),];\n },\n _detachScroll: function() {\n while (this._listeners.length) {\n this._listeners.pop().remove();;\n };\n this._listeners = [];\n },\n _getContentHeight: function() {\n return j.getElementDimensions(this._layer._contentWrapper).y;\n },\n _getContextY: function() {\n return j.getElementPosition(this._layer.getContext()).y;\n },\n _calculateMinimumTop: function(n) {\n if (n.isVertical()) {\n return\n };\n this._minimumTop = (((this._getContextY() - ((this._getContentHeight() - this._arrowBuffer))) + n.getOffsetY()));\n },\n _adjustForScroll: function() {\n if (this._layer.isFixed()) {\n return\n };\n var n = this._layer._getOrientation();\n if (n.isVertical()) {\n return\n };\n var o = h.getViewportRect(this._layer), p = (o.b - this._minimumTop);\n if ((p < 0)) {\n return\n };\n var q = this._getContentHeight(), r = (q - ((this._arrowBuffer + this._arrowOffset))), s = Math.max(0, Math.min(r, (r - ((p - q)))));\n i.set(this._layer.getContent(), \"top\", (-s + \"px\"));\n }\n });\n e.exports = m;\n});\n__d(\"ContextualDialogDefaultTheme\", [\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"cx\"), h = {\n wrapperClassName: \"-cx-PRIVATE-uiContextualDialog__root\",\n arrowDimensions: {\n offset: 15,\n length: 16\n }\n };\n e.exports = h;\n});\n__d(\"ContextualDialog\", [\"AccessibleLayer\",\"Class\",\"ContextualDialogArrow\",\"ContextualDialogFitInViewport\",\"ContextualLayer\",\"ContextualDialogDefaultTheme\",\"CSS\",\"DOM\",\"JSXDOM\",\"LayerAutoFocus\",\"LayerButtons\",\"LayerHideOnTransition\",\"LayerFormHooks\",\"LayerMouseHooks\",\"Style\",\"copyProperties\",\"csx\",\"cx\",\"invariant\",\"removeFromArray\",], function(a, b, c, d, e, f) {\n var g = b(\"AccessibleLayer\"), h = b(\"Class\"), i = b(\"ContextualDialogArrow\"), j = b(\"ContextualDialogFitInViewport\"), k = b(\"ContextualLayer\"), l = b(\"ContextualDialogDefaultTheme\"), m = b(\"CSS\"), n = b(\"DOM\"), o = b(\"JSXDOM\"), p = b(\"LayerAutoFocus\"), q = b(\"LayerButtons\"), r = b(\"LayerHideOnTransition\"), s = b(\"LayerFormHooks\"), t = b(\"LayerMouseHooks\"), u = b(\"Style\"), v = b(\"copyProperties\"), w = b(\"csx\"), x = b(\"cx\"), y = b(\"invariant\"), z = b(\"removeFromArray\");\n function aa(ba, ca) {\n this.parent.construct(this, ba, ca);\n };\n h.extend(aa, k);\n v(aa.prototype, {\n _footer: null,\n _configure: function(ba, ca) {\n v(ba, (ba.theme || l));\n var da = (ba.arrowBehavior || i);\n ba.addedBehaviors = (ba.addedBehaviors || []);\n ba.addedBehaviors.push(da);\n this._footer = n.scry(ca, \"div.-cx-PUBLIC-abstractContextualDialog__footer\")[0];\n this.parent._configure(ba, ca);\n },\n _getDefaultBehaviors: function() {\n var ba = this.parent._getDefaultBehaviors();\n z(ba, r);\n return ba.concat([g,p,j,q,s,t,]);\n },\n _buildWrapper: function(ba, ca) {\n m.addClass(ca, \"-cx-PUBLIC-abstractContextualDialog__content\");\n this._innerWrapper = o.div(null, ca);\n var da = this.parent._buildWrapper(ba, this._innerWrapper);\n m.addClass(da, ba.wrapperClassName);\n if (ba.width) {\n this.setWidth(ba.width);\n };\n return da;\n },\n getContentRoot: function() {\n y(!!this._innerWrapper);\n return this._innerWrapper;\n },\n setContent: function(ba) {\n m.addClass(ba, \"-cx-PUBLIC-abstractContextualDialog__content\");\n n.setContent(this.getContentRoot(), ba);\n },\n setWidth: function(ba) {\n this._width = Math.floor(ba);\n u.set(this.getContentRoot(), \"width\", (ba + \"px\"));\n return this;\n },\n getFooter: function() {\n return this._footer;\n },\n getArrowDimensions: function() {\n return this._config.arrowDimensions;\n }\n });\n v(aa, {\n setContext: function(ba, ca) {\n ba.setContext(ca);\n }\n });\n e.exports = aa;\n});\n__d(\"Hovercard\", [\"JSXDOM\",\"Event\",\"function-extensions\",\"AccessibleLayer\",\"Arbiter\",\"AsyncRequest\",\"AsyncSignal\",\"ContextualDialog\",\"ContextualThing\",\"DOM\",\"LayerAutoFocus\",\"Parent\",\"Rect\",\"Style\",\"UserAgent\",\"Vector\",\"clickRefAction\",\"cx\",\"csx\",\"emptyFunction\",\"tx\",\"userAction\",], function(a, b, c, d, e, f) {\n var g = b(\"JSXDOM\"), h = b(\"Event\");\n b(\"function-extensions\");\n var i = b(\"AccessibleLayer\"), j = b(\"Arbiter\"), k = b(\"AsyncRequest\"), l = b(\"AsyncSignal\"), m = b(\"ContextualDialog\"), n = b(\"ContextualThing\"), o = b(\"DOM\"), p = b(\"LayerAutoFocus\"), q = b(\"Parent\"), r = b(\"Rect\"), s = b(\"Style\"), t = b(\"UserAgent\"), u = b(\"Vector\"), v = b(\"clickRefAction\"), w = b(\"cx\"), x = b(\"csx\"), y = b(\"emptyFunction\"), z = b(\"tx\"), aa = b(\"userAction\"), ba = {\n }, ca = {\n }, da = null, ea = null, fa = null, ga = 150, ha = 700, ia = 1000, ja = 250, ka = null, la = null, ma = null, na = null;\n function oa(event) {\n var db = q.byTag(event.getTarget(), \"a\");\n (cb.processNode(db) && event.stop());\n };\n function pa(db) {\n ea = db;\n if (!qa(db)) {\n var eb;\n if ((!db || !(eb = ra(db)))) {\n (ca.moveToken && ca.moveToken.remove());\n ca = {\n };\n return false;\n }\n ;\n if ((ca.node != db)) {\n (ca.moveToken && ca.moveToken.remove());\n ca = {\n node: db,\n endpoint: eb,\n pos: null\n };\n }\n ;\n }\n ;\n return true;\n };\n function qa(db) {\n return ((db && da) && (ca.node == db));\n };\n function ra(db) {\n return db.getAttribute(\"data-hovercard\");\n };\n function sa(db) {\n var eb = o.scry(db, \"^.-cx-PRIVATE-fbEntstreamFeedObject__root .-cx-PUBLIC-fbEntstreamEmbed__root\").length;\n if (eb) {\n return\n };\n var fb = h.listen(db, \"mouseout\", function() {\n clearTimeout(ka);\n clearTimeout(la);\n fb.remove();\n ea = null;\n if (!cb.contains(db)) {\n cb.hide();\n };\n });\n if (!ca.moveToken) {\n ca.moveToken = h.listen(db, \"mousemove\", function(event) {\n ca.pos = u.getEventPosition(event);\n });\n };\n clearTimeout(ka);\n clearTimeout(la);\n clearTimeout(na);\n var gb = ga, hb = (da ? ja : ha);\n if (db.getAttribute(\"data-hovercard-instant\")) {\n gb = hb = 50;\n };\n ka = setTimeout(xa.curry(db), gb);\n la = setTimeout(ta.curry(db), hb);\n };\n function ta(db, eb) {\n if ((ca.node != db)) {\n return\n };\n var fb = ba[ra(db)];\n if (fb) {\n va(fb);\n }\n else if (eb) {\n va(za());\n }\n else {\n var gb = (da ? ja : ha);\n ma = setTimeout(ta.curry(db, true), (ia - gb));\n }\n \n ;\n };\n function ua() {\n cb.hide(true);\n clearTimeout(la);\n };\n function va(db) {\n var eb = ca.node, fb = da, gb = (fb != eb);\n if (fa) {\n var hb = fa.getContentRoot();\n if (!n.containsIncludingLayers(hb, eb)) {\n fa.hide();\n };\n }\n ;\n if (!o.contains(document.body, eb)) {\n cb.hide(true);\n return;\n }\n ;\n da = eb;\n fa = db;\n db.setContextWithBounds(eb, wa(eb)).show();\n if (gb) {\n (function() {\n new l(\"/ajax/hovercard/shown.php\").send();\n v(\"himp\", da, null, \"FORCE\", {\n ft: {\n evt: 39\n }\n });\n aa(\"hovercard\", da).uai(\"show\");\n }).defer();\n };\n };\n function wa(db) {\n var eb = ca.pos, fb = db.getClientRects();\n if ((!eb || (fb.length === 0))) {\n return r.getElementBounds(db)\n };\n var gb, hb = false;\n for (var ib = 0; (ib < fb.length); ib++) {\n var jb = new r(Math.round(fb[ib].top), Math.round(fb[ib].right), Math.round(fb[ib].bottom), Math.round(fb[ib].left), \"viewport\").convertTo(\"document\"), kb = jb.getPositionVector(), lb = kb.add(jb.getDimensionVector());\n if ((!gb || (((kb.x <= gb.l) && (kb.y > gb.t))))) {\n if (hb) {\n break;\n };\n gb = new r(kb.y, lb.x, lb.y, kb.x, \"document\");\n }\n else {\n gb.t = Math.min(gb.t, kb.y);\n gb.b = Math.max(gb.b, lb.y);\n gb.r = lb.x;\n }\n ;\n if (jb.contains(eb)) {\n hb = true;\n };\n };\n return gb;\n };\n function xa(db) {\n if ((db.id && (ba[db.id] != null))) {\n return\n };\n var eb = ra(db);\n if ((ba[eb] != null)) {\n return\n };\n ya(eb);\n var fb = function() {\n cb.dirty(eb);\n ua();\n };\n new k(eb).setData({\n endpoint: eb\n }).setMethod(\"GET\").setReadOnly(true).setErrorHandler(fb).setTransportErrorHandler(fb).send();\n };\n function ya(db) {\n ba[db] = false;\n };\n var za = function() {\n var db = new m({\n width: 275\n }, g.div({\n className: \"-cx-PRIVATE-hovercard__loading\"\n }, \"Loading...\"));\n db.disableBehavior(i).disableBehavior(p);\n ab(db);\n za = y.thatReturns(db);\n return db;\n };\n function ab(db) {\n var eb = [db.subscribe(\"mouseenter\", function() {\n clearTimeout(na);\n ea = ca.node;\n }),db.subscribe(\"mouseleave\", function() {\n db.hide();\n ea = null;\n }),db.subscribe(\"destroy\", function() {\n while (eb.length) {\n eb.pop().unsubscribe();;\n };\n eb = null;\n }),];\n };\n var bb = true, cb = {\n hide: function(db) {\n if (!da) {\n return\n };\n if (db) {\n if (fa) {\n fa.hide();\n };\n ea = null;\n da = null;\n fa = null;\n }\n else na = setTimeout(cb.hide.curry(true), ja);\n ;\n },\n setDialog: function(db, eb) {\n eb.disableBehavior(i).disableBehavior(p);\n ba[db] = eb;\n ab(eb);\n if (((ca.endpoint == db) && (ea == ca.node))) {\n za().hide();\n var fb = ca.node.getAttribute(\"data-hovercard-position\");\n (fb && eb.setPosition(fb));\n var gb = ca.node.getAttribute(\"data-hovercard-offset-x\");\n (gb && eb.setOffsetX(parseInt(gb, 10)));\n var hb = ca.node.getAttribute(\"data-hovercard-offset-y\");\n (hb && eb.setOffsetY(parseInt(hb, 10)));\n va(eb);\n }\n ;\n },\n getDialog: function(db) {\n return ba[db];\n },\n contains: function(db) {\n if (fa) {\n return n.containsIncludingLayers(fa.getContentRoot(), db)\n };\n return false;\n },\n dirty: function(db) {\n var eb = ba[db];\n if (eb) {\n eb.destroy();\n delete ba[db];\n }\n ;\n },\n dirtyAll: function() {\n for (var db in ba) {\n var eb = ba[db];\n (eb && cb.dirty(db));\n };\n j.inform(\"Hovercard/dirty\");\n },\n processNode: function(db) {\n if ((db && pa(db))) {\n sa(db);\n return true;\n }\n ;\n return false;\n },\n setDirtyAllOnPageTransition: function(db) {\n bb = db;\n }\n };\n (function() {\n if ((t.ie() < 8)) {\n return\n };\n h.listen(document.documentElement, \"mouseover\", oa);\n h.listen(window, \"scroll\", function() {\n if ((da && s.isFixed(da))) {\n cb.hide(true);\n };\n });\n j.subscribe(\"page_transition\", function() {\n ua();\n (bb && cb.dirtyAll());\n }, j.SUBSCRIBE_NEW);\n })();\n e.exports = cb;\n});\n__d(\"ScrollableArea\", [\"Animation\",\"ArbiterMixin\",\"BrowserSupport\",\"CSS\",\"DataStore\",\"DOM\",\"Event\",\"Parent\",\"Run\",\"SimpleDrag\",\"Style\",\"UserAgent\",\"Vector\",\"copyProperties\",\"throttle\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"ArbiterMixin\"), i = b(\"BrowserSupport\"), j = b(\"CSS\"), k = b(\"DataStore\"), l = b(\"DOM\"), m = b(\"Event\"), n = b(\"Parent\"), o = b(\"Run\"), p = b(\"SimpleDrag\"), q = b(\"Style\"), r = b(\"UserAgent\"), s = b(\"Vector\"), t = b(\"copyProperties\"), u = b(\"throttle\"), v = 12;\n function w(x, y) {\n if (!x) {\n return\n };\n y = (y || {\n });\n this._elem = x;\n this._wrap = l.find(x, \"div.uiScrollableAreaWrap\");\n this._body = l.find(this._wrap, \"div.uiScrollableAreaBody\");\n this._content = l.find(this._body, \"div.uiScrollableAreaContent\");\n this._track = l.find(x, \"div.uiScrollableAreaTrack\");\n this._gripper = l.find(this._track, \"div.uiScrollableAreaGripper\");\n this._options = y;\n this._throttledComputeHeights = u.withBlocking(this._computeHeights, 250, this);\n this.throttledAdjustGripper = u.withBlocking(this.adjustGripper, 250, this);\n this._throttledShowGripperAndShadows = u.withBlocking(this._showGripperAndShadows, 250, this);\n this._throttledRespondMouseMove = u(this._respondMouseMove, 250, this);\n this.adjustGripper.bind(this).defer();\n this._listeners = [m.listen(this._wrap, \"scroll\", this._handleScroll.bind(this)),m.listen(x, \"mousemove\", this._handleMouseMove.bind(this)),m.listen(this._track, \"click\", this._handleClickOnTrack.bind(this)),];\n if (i.hasPointerEvents()) {\n this._listeners.push(m.listen(x, \"click\", this._handleClickOnTrack.bind(this)));\n };\n if ((y.fade !== false)) {\n this._listeners.push(m.listen(x, \"mouseenter\", this._handleMouseEnter.bind(this)), m.listen(x, \"mouseleave\", this._handleMouseLeave.bind(this)), m.listen(x, \"focusin\", this.showScrollbar.bind(this, false)), m.listen(x, \"focusout\", this.hideScrollbar.bind(this)));\n }\n else if (i.hasPointerEvents()) {\n this._listeners.push(m.listen(x, \"mouseleave\", j.removeClass.curry(x, \"uiScrollableAreaTrackOver\")));\n }\n ;\n if ((r.webkit() || r.chrome())) {\n this._listeners.push(m.listen(x, \"mousedown\", function() {\n var z = m.listen(window, \"mouseup\", function() {\n if (x.scrollLeft) {\n x.scrollLeft = 0;\n };\n z.remove();\n });\n }));\n }\n else if (r.firefox()) {\n this._wrap.addEventListener(\"DOMMouseScroll\", function(event) {\n ((event.axis === event.HORIZONTAL_AXIS) && event.preventDefault());\n }, false);\n }\n ;\n this.initDrag();\n k.set(this._elem, \"ScrollableArea\", this);\n if (!y.persistent) {\n o.onLeave(this.destroy.bind(this));\n };\n if ((y.shadow !== false)) {\n j.addClass(this._elem, \"uiScrollableAreaWithShadow\");\n };\n };\n t(w, {\n renderDOM: function() {\n var x = l.create(\"div\", {\n className: \"uiScrollableAreaContent\"\n }), y = l.create(\"div\", {\n className: \"uiScrollableAreaBody\"\n }, x), z = l.create(\"div\", {\n className: \"uiScrollableAreaWrap\"\n }, y), aa = l.create(\"div\", {\n className: \"uiScrollableArea native\"\n }, z);\n return {\n root: aa,\n wrap: z,\n body: y,\n content: x\n };\n },\n fromNative: function(x, y) {\n if ((!j.hasClass(x, \"uiScrollableArea\") || !j.hasClass(x, \"native\"))) {\n return\n };\n y = (y || {\n });\n j.removeClass(x, \"native\");\n var z = l.create(\"div\", {\n className: \"uiScrollableAreaTrack\"\n }, l.create(\"div\", {\n className: \"uiScrollableAreaGripper\"\n }));\n if ((y.fade !== false)) {\n j.addClass(x, \"fade\");\n j.addClass(z, \"invisible_elem\");\n }\n else j.addClass(x, \"nofade\");\n ;\n l.appendContent(x, z);\n var aa = new w(x, y);\n aa.resize();\n return aa;\n },\n getInstance: function(x) {\n var y = n.byClass(x, \"uiScrollableArea\");\n return (y ? k.get(y, \"ScrollableArea\") : null);\n },\n poke: function(x) {\n var y = w.getInstance(x);\n (y && y.poke());\n }\n });\n t(w.prototype, h, {\n initDrag: function() {\n var x = i.hasPointerEvents(), y = new p((x ? this._elem : this._gripper));\n y.subscribe(\"start\", function(z, event) {\n if (!((((event.which && (event.which === 1))) || ((event.button && (event.button === 1)))))) {\n return\n };\n var aa = s.getEventPosition(event, \"viewport\");\n if (x) {\n var ba = this._gripper.getBoundingClientRect();\n if (((((aa.x < ba.left) || (aa.x > ba.right)) || (aa.y < ba.top)) || (aa.y > ba.bottom))) {\n return false\n };\n }\n ;\n this.inform(\"grip_start\");\n var ca = aa.y, da = this._gripper.offsetTop;\n j.addClass(this._elem, \"uiScrollableAreaDragging\");\n var ea = y.subscribe(\"update\", function(ga, event) {\n var ha = (s.getEventPosition(event, \"viewport\").y - ca);\n this._throttledComputeHeights();\n var ia = (this._contentHeight - this._containerHeight), ja = (da + ha), ka = (this._trackHeight - this._gripperHeight);\n ja = Math.max(Math.min(ja, ka), 0);\n var la = ((ja / ka) * ia);\n this._wrap.scrollTop = la;\n }.bind(this)), fa = y.subscribe(\"end\", function() {\n y.unsubscribe(ea);\n y.unsubscribe(fa);\n j.removeClass(this._elem, \"uiScrollableAreaDragging\");\n this.inform(\"grip_end\");\n }.bind(this));\n }.bind(this));\n },\n adjustGripper: function() {\n if (this._needsGripper()) {\n q.set(this._gripper, \"height\", (this._gripperHeight + \"px\"));\n this._slideGripper();\n }\n ;\n this._throttledShowGripperAndShadows();\n return this;\n },\n _computeHeights: function() {\n this._containerHeight = this._elem.clientHeight;\n this._contentHeight = this._content.offsetHeight;\n this._trackHeight = this._track.offsetHeight;\n this._gripperHeight = Math.max(((this._containerHeight / this._contentHeight) * this._trackHeight), v);\n },\n _needsGripper: function() {\n this._throttledComputeHeights();\n return (this._gripperHeight < this._trackHeight);\n },\n _slideGripper: function() {\n var x = ((this._wrap.scrollTop / ((this._contentHeight - this._containerHeight))) * ((this._trackHeight - this._gripperHeight)));\n q.set(this._gripper, \"top\", (x + \"px\"));\n },\n _showGripperAndShadows: function() {\n j.conditionShow(this._gripper, this._needsGripper());\n j.conditionClass(this._elem, \"contentBefore\", (this._wrap.scrollTop > 0));\n j.conditionClass(this._elem, \"contentAfter\", !this.isScrolledToBottom());\n },\n destroy: function() {\n this._listeners.forEach(function(x) {\n x.remove();\n });\n this._listeners.length = 0;\n },\n _handleClickOnTrack: function(event) {\n var x = s.getEventPosition(event, \"viewport\"), y = this._gripper.getBoundingClientRect();\n if (((x.x < y.right) && (x.x > y.left))) {\n if ((x.y < y.top)) {\n this.setScrollTop((this.getScrollTop() - this._elem.clientHeight));\n }\n else if ((x.y > y.bottom)) {\n this.setScrollTop((this.getScrollTop() + this._elem.clientHeight));\n }\n ;\n event.prevent();\n }\n ;\n },\n _handleMouseMove: function(event) {\n var x = (this._options.fade !== false);\n if ((i.hasPointerEvents() || x)) {\n this._mousePos = s.getEventPosition(event);\n this._throttledRespondMouseMove();\n }\n ;\n },\n _respondMouseMove: function() {\n if (!this._mouseOver) {\n return\n };\n var x = (this._options.fade !== false), y = this._mousePos, z = s.getElementPosition(this._track).x, aa = s.getElementDimensions(this._track).x, ba = Math.abs(((z + (aa / 2)) - y.x));\n j.conditionClass(this._elem, \"uiScrollableAreaTrackOver\", (i.hasPointerEvents() && (ba <= 10)));\n if (x) {\n if ((ba < 25)) {\n this.showScrollbar(false);\n }\n else if (!this._options.no_fade_on_hover) {\n this.hideScrollbar();\n }\n \n };\n },\n _handleScroll: function(event) {\n if (this._needsGripper()) {\n this._slideGripper();\n };\n this.throttledAdjustGripper();\n if ((this._options.fade !== false)) {\n this.showScrollbar();\n };\n this.inform(\"scroll\");\n },\n _handleMouseLeave: function() {\n this._mouseOver = false;\n this.hideScrollbar();\n },\n _handleMouseEnter: function() {\n this._mouseOver = true;\n this.showScrollbar();\n },\n hideScrollbar: function(x) {\n if (!this._scrollbarVisible) {\n return this\n };\n this._scrollbarVisible = false;\n if (this._hideTimeout) {\n clearTimeout(this._hideTimeout);\n this._hideTimeout = null;\n }\n ;\n if (x) {\n q.set(this._track, \"opacity\", 0);\n j.addClass.curry(this._track, \"invisible_elem\");\n }\n else this._hideTimeout = function() {\n if (this._hideAnimation) {\n this._hideAnimation.stop();\n this._hideAnimation = null;\n }\n ;\n this._hideAnimation = (new g(this._track)).from(\"opacity\", 1).to(\"opacity\", 0).duration(250).ondone(j.addClass.curry(this._track, \"invisible_elem\")).go();\n }.bind(this).defer(750);\n ;\n return this;\n },\n resize: function() {\n var x = s.getElementDimensions(this._elem).x;\n if ((this._options.fade === false)) {\n x -= 10;\n };\n x = Math.max(0, x);\n q.set(this._body, \"width\", (x + \"px\"));\n return this;\n },\n showScrollbar: function(x) {\n this.throttledAdjustGripper();\n if (this._scrollbarVisible) {\n return this\n };\n this._scrollbarVisible = true;\n if (this._hideTimeout) {\n clearTimeout(this._hideTimeout);\n this._hideTimeout = null;\n }\n ;\n if (this._hideAnimation) {\n this._hideAnimation.stop();\n this._hideAnimation = null;\n }\n ;\n q.set(this._track, \"opacity\", 1);\n j.removeClass(this._track, \"invisible_elem\");\n if ((((x !== false)) && !this._options.no_fade_on_hover)) {\n this.hideScrollbar();\n };\n return this;\n },\n isScrolledToBottom: function() {\n return (this._wrap.scrollTop >= (this._contentHeight - this._containerHeight));\n },\n isScrolledToTop: function() {\n return (this._wrap.scrollTop === 0);\n },\n scrollToBottom: function(x) {\n this.setScrollTop(this._wrap.scrollHeight, x);\n },\n scrollToTop: function(x) {\n this.setScrollTop(0, x);\n },\n scrollIntoView: function(x, y) {\n var z = this._wrap.clientHeight, aa = x.offsetHeight, ba = this._wrap.scrollTop, ca = (ba + z), da = x.offsetTop, ea = (da + aa);\n if (((da < ba) || (z < aa))) {\n this.setScrollTop(da, y);\n }\n else if ((ea > ca)) {\n this.setScrollTop((ba + ((ea - ca))), y);\n }\n ;\n },\n scrollElemToTop: function(x, y, z) {\n this.setScrollTop(x.offsetTop, y, {\n callback: z\n });\n },\n poke: function() {\n var x = this._wrap.scrollTop;\n this._wrap.scrollTop += 1;\n this._wrap.scrollTop -= 1;\n this._wrap.scrollTop = x;\n return this.showScrollbar(false);\n },\n getScrollTop: function() {\n return this._wrap.scrollTop;\n },\n getScrollHeight: function() {\n return this._wrap.scrollHeight;\n },\n setScrollTop: function(x, y, z) {\n z = (z || {\n });\n if ((y !== false)) {\n if (this._scrollTopAnimation) {\n this._scrollTopAnimation.stop();\n };\n var aa = (z.duration || 250), ba = (z.ease || g.ease.end);\n this._scrollTopAnimation = (new g(this._wrap)).to(\"scrollTop\", x).ease(ba).duration(aa).ondone(z.callback).go();\n }\n else {\n this._wrap.scrollTop = x;\n (z.callback && z.callback());\n }\n ;\n }\n });\n e.exports = w;\n});\n__d(\"legacy:Tooltip\", [\"Tooltip\",], function(a, b, c, d) {\n a.Tooltip = b(\"Tooltip\");\n}, 3);\n__d(\"ClearableTypeahead\", [\"Event\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = {\n resetOnCloseButtonClick: function(i, j) {\n g.listen(j, \"click\", function() {\n var k = i.getCore();\n k.getElement().focus();\n k.reset();\n });\n }\n };\n e.exports = h;\n});\n__d(\"TypeaheadShowLoadingIndicator\", [\"CSS\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"CSS\"), h = b(\"copyProperties\");\n function i(j) {\n this._typeahead = j;\n };\n h(i.prototype, {\n _subscription: null,\n enable: function() {\n this._subscription = this._typeahead.subscribe(\"loading\", function(j, k) {\n g.conditionClass(this._typeahead.getElement(), \"typeaheadLoading\", k.loading);\n g.conditionClass(this._typeahead.getView().getElement(), \"typeaheadViewLoading\", k.loading);\n }.bind(this));\n },\n disable: function() {\n this._typeahead.unsubscribe(this._subscription);\n this._subscription = null;\n }\n });\n e.exports = i;\n});\n__d(\"legacy:ShowLoadingIndicatorTypeaheadBehavior\", [\"TypeaheadShowLoadingIndicator\",], function(a, b, c, d) {\n var e = b(\"TypeaheadShowLoadingIndicator\");\n if (!a.TypeaheadBehaviors) {\n a.TypeaheadBehaviors = {\n };\n };\n a.TypeaheadBehaviors.showLoadingIndicator = function(f) {\n f.enableBehavior(e);\n };\n}, 3);\n__d(\"CompactTypeaheadRenderer\", [\"Badge\",\"DOM\",\"TypeaheadFacepile\",], function(a, b, c, d, e, f) {\n var g = b(\"Badge\"), h = b(\"DOM\"), i = b(\"TypeaheadFacepile\");\n function j(k, l) {\n var m = [];\n if (k.xhp) {\n return h.create(\"li\", {\n className: \"raw\"\n }, k.xhp)\n };\n var n = (k.photos || k.photo);\n if (n) {\n if ((n instanceof Array)) {\n n = i.render(n);\n }\n else n = h.create(\"img\", {\n alt: \"\",\n src: n\n });\n ;\n m.push(n);\n }\n ;\n if (k.text) {\n var o = [k.text,];\n if (k.verified) {\n o.push(g(\"xsmall\", \"verified\"));\n };\n m.push(h.create(\"span\", {\n className: \"text\"\n }, o));\n }\n ;\n var p = k.subtext, q = k.category;\n if ((p || q)) {\n var r = [];\n (p && r.push(p));\n ((p && q) && r.push(\" \\u00b7 \"));\n (q && r.push(q));\n m.push(h.create(\"span\", {\n className: \"subtext\"\n }, r));\n }\n ;\n var s = h.create(\"li\", {\n className: (k.type || \"\")\n }, m);\n if (k.text) {\n s.setAttribute(\"aria-label\", k.text);\n };\n return s;\n };\n j.className = \"compact\";\n e.exports = j;\n});\n__d(\"endsWith\", [], function(a, b, c, d, e, f) {\n function g(h, i) {\n return (h.indexOf(i, (h.length - i.length)) > -1);\n };\n e.exports = g;\n});\n__d(\"extendArray\", [], function(a, b, c, d, e, f) {\n function g(h, i) {\n Array.prototype.push.apply(h, i);\n return h;\n };\n e.exports = g;\n});"); |
| // 5048 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s1da4c91f736d950de61ac9962e5a050e9ae4a4ed"); |
| // 5049 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"/MWWQ\",]);\n}\n;\n;\n__d(\"EgoAdsObjectSet\", [\"copyProperties\",\"csx\",\"DOM\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"csx\"), i = b(\"DOM\");\n function j() {\n this._allEgoUnits = [];\n this._egoUnits = [];\n };\n;\n g(j.prototype, {\n init: function(l) {\n this._allEgoUnits = l;\n this._egoUnits = [];\n this._allEgoUnits.forEach(function(m) {\n var n = k(m);\n if (((!n || !n.holdout))) {\n this._egoUnits.push(m);\n }\n ;\n ;\n }, this);\n },\n getCount: function() {\n return this._egoUnits.length;\n },\n forEach: function(l, m) {\n this._egoUnits.forEach(l, m);\n },\n getUnit: function(l) {\n return this._egoUnits[l];\n },\n getHoldoutAdIDsForSpace: function(l, m) {\n if (((!l || !m))) {\n return [];\n }\n ;\n ;\n var n = [];\n for (var o = 0; ((((l > 0)) && ((o < this._allEgoUnits.length)))); o++) {\n var p = this._allEgoUnits[o], q = m(p), r = k(p);\n if (((((((l >= q)) && r)) && r.holdout))) {\n n.push(r.adid);\n }\n ;\n ;\n l -= q;\n };\n ;\n return n;\n },\n getHoldoutAdIDsForNumAds: function(l) {\n l = Math.min(l, this._allEgoUnits.length);\n var m = [];\n for (var n = 0; ((n < l)); n++) {\n var o = this._allEgoUnits[n], p = k(o);\n if (((p && p.holdout))) {\n m.push(p.adid);\n }\n ;\n ;\n };\n ;\n return m;\n }\n });\n function k(l) {\n var m = i.scry(l, \"div.-cx-PUBLIC-fbAdUnit__root\")[0], n = ((m && m.getAttribute(\"data-ad\")));\n return ((((n && JSON.parse(n))) || undefined));\n };\n;\n e.exports = j;\n});\n__d(\"JSBNG__Rect\", [\"Vector\",\"$\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Vector\"), h = b(\"$\"), i = b(\"copyProperties\");\n function j(k, l, m, n, o) {\n if (((arguments.length === 1))) {\n if (((k instanceof j))) {\n return k;\n }\n ;\n ;\n if (((k instanceof g))) {\n return new j(k.y, k.x, k.y, k.x, k.domain);\n }\n ;\n ;\n return j.getElementBounds(h(k));\n }\n ;\n ;\n i(this, {\n t: k,\n r: l,\n b: m,\n l: n,\n domain: ((o || \"pure\"))\n });\n };\n;\n i(j.prototype, {\n w: function() {\n return ((this.r - this.l));\n },\n h: function() {\n return ((this.b - this.t));\n },\n toString: function() {\n return ((((((((((((((((\"((\" + this.l)) + \", \")) + this.t)) + \"), (\")) + this.r)) + \", \")) + this.b)) + \"))\"));\n },\n contains: function(k) {\n k = new j(k).convertTo(this.domain);\n var l = this;\n return ((((((((l.l <= k.l)) && ((l.r >= k.r)))) && ((l.t <= k.t)))) && ((l.b >= k.b))));\n },\n add: function(k, l) {\n if (((arguments.length == 1))) {\n if (((k.domain != \"pure\"))) {\n k = k.convertTo(this.domain);\n }\n ;\n ;\n return this.add(k.x, k.y);\n }\n ;\n ;\n var m = parseFloat(k), n = parseFloat(l);\n return new j(((this.t + n)), ((this.r + m)), ((this.b + n)), ((this.l + m)), this.domain);\n },\n sub: function(k, l) {\n if (((arguments.length == 1))) {\n return this.add(k.mul(-1));\n }\n else return this.add(-k, -l)\n ;\n },\n rotateAroundOrigin: function(k) {\n var l = this.getCenter().rotate(((((k * Math.PI)) / 2))), m, n;\n if (((k % 2))) {\n m = this.h();\n n = this.w();\n }\n else {\n m = this.w();\n n = this.h();\n }\n ;\n ;\n var o = ((l.y - ((n / 2)))), p = ((l.x - ((m / 2)))), q = ((o + n)), r = ((p + m));\n return new j(o, r, q, p, this.domain);\n },\n boundWithin: function(k) {\n var l = 0, m = 0;\n if (((this.l < k.l))) {\n l = ((k.l - this.l));\n }\n else if (((this.r > k.r))) {\n l = ((k.r - this.r));\n }\n \n ;\n ;\n if (((this.t < k.t))) {\n m = ((k.t - this.t));\n }\n else if (((this.b > k.b))) {\n m = ((k.b - this.b));\n }\n \n ;\n ;\n return this.add(l, m);\n },\n getCenter: function() {\n return new g(((this.l + ((this.w() / 2)))), ((this.t + ((this.h() / 2)))), this.domain);\n },\n getPositionVector: function() {\n return new g(this.l, this.t, this.domain);\n },\n getDimensionVector: function() {\n return new g(this.w(), this.h(), \"pure\");\n },\n convertTo: function(k) {\n if (((this.domain == k))) {\n return this;\n }\n ;\n ;\n if (((k == \"pure\"))) {\n return new j(this.t, this.r, this.b, this.l, \"pure\");\n }\n ;\n ;\n if (((this.domain == \"pure\"))) {\n return new j(0, 0, 0, 0);\n }\n ;\n ;\n var l = new g(this.l, this.t, this.domain).convertTo(k);\n return new j(l.y, ((l.x + this.w())), ((l.y + this.h())), l.x, k);\n }\n });\n i(j, {\n deserialize: function(k) {\n var l = k.split(\":\");\n return new j(parseFloat(l[1]), parseFloat(l[2]), parseFloat(l[3]), parseFloat(l[0]));\n },\n newFromVectors: function(k, l) {\n return new j(k.y, ((k.x + l.x)), ((k.y + l.y)), k.x, k.domain);\n },\n getElementBounds: function(k) {\n return j.newFromVectors(g.getElementPosition(k), g.getElementDimensions(k));\n },\n getViewportBounds: function() {\n return j.newFromVectors(g.getScrollPosition(), g.getViewportDimensions());\n },\n minimumBoundingBox: function(k) {\n var l = new j(Math.min(), Math.max(), Math.max(), Math.min()), m;\n for (var n = 0; ((n < k.length)); n++) {\n m = k[n];\n l.t = Math.min(l.t, m.t);\n l.r = Math.max(l.r, m.r);\n l.b = Math.max(l.b, m.b);\n l.l = Math.min(l.l, m.l);\n };\n ;\n return l;\n }\n });\n e.exports = j;\n});\n__d(\"legacy:ChatTypeaheadBehavior\", [\"ChatTypeaheadBehavior\",], function(a, b, c, d) {\n var e = b(\"ChatTypeaheadBehavior\");\n if (!a.TypeaheadBehaviors) {\n a.TypeaheadBehaviors = {\n };\n }\n;\n;\n a.TypeaheadBehaviors.chatTypeahead = function(f) {\n f.enableBehavior(e);\n };\n}, 3);\n__d(\"legacy:dom-html\", [\"HTML\",], function(a, b, c, d) {\n a.HTML = b(\"HTML\");\n}, 3);\n__d(\"legacy:dom\", [\"DOM\",], function(a, b, c, d) {\n a.DOM = b(\"DOM\");\n}, 3);\n__d(\"TypeaheadFacepile\", [\"DOM\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\");\n function h() {\n \n };\n;\n h.render = function(i) {\n var j = [g.create(\"span\", {\n className: \"splitpic leftpic\"\n }, [g.create(\"img\", {\n alt: \"\",\n src: i[0]\n }),]),g.create(\"span\", {\n className: ((\"splitpic\" + ((i[2] ? \" toppic\" : \"\"))))\n }, [g.create(\"img\", {\n alt: \"\",\n src: i[1]\n }),]),];\n if (i[2]) {\n j.push(g.create(\"span\", {\n className: \"splitpic bottompic\"\n }, [g.create(\"img\", {\n alt: \"\",\n src: i[2]\n }),]));\n }\n ;\n ;\n return g.create(\"span\", {\n className: \"splitpics clearfix\"\n }, j);\n };\n e.exports = h;\n});\n__d(\"NavigationMessage\", [], function(a, b, c, d, e, f) {\n var g = {\n NAVIGATION_BEGIN: \"NavigationMessage/navigationBegin\",\n NAVIGATION_SELECT: \"NavigationMessage/navigationSelect\",\n NAVIGATION_FIRST_RESPONSE: \"NavigationMessage/navigationFirstResponse\",\n NAVIGATION_COMPLETED: \"NavigationMessage/navigationCompleted\",\n NAVIGATION_FAILED: \"NavigationMessage/navigationFailed\",\n NAVIGATION_COUNT_UPDATE: \"NavigationMessage/navigationCount\",\n NAVIGATION_FAVORITE_UPDATE: \"NavigationMessage/navigationFavoriteUpdate\",\n NAVIGATION_ITEM_REMOVED: \"NavigationMessage/navigationItemRemoved\",\n NAVIGATION_ITEM_HIDDEN: \"NavigationMessage/navigationItemHidden\",\n INTERNAL_LOADING_BEGIN: \"NavigationMessage/internalLoadingBegin\",\n INTERNAL_LOADING_COMPLETED: \"NavigationMessage/internalLoadingCompleted\"\n };\n e.exports = g;\n});\n__d(\"SimpleDrag\", [\"JSBNG__Event\",\"ArbiterMixin\",\"UserAgent\",\"Vector\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"ArbiterMixin\"), i = b(\"UserAgent\"), j = b(\"Vector\"), k = b(\"copyProperties\"), l = b(\"emptyFunction\");\n function m(n) {\n this.minDragDistance = 0;\n g.listen(n, \"mousedown\", this._start.bind(this));\n };\n;\n k(m.prototype, h, {\n setMinDragDistance: function(n) {\n this.minDragDistance = n;\n },\n _start: function(JSBNG__event) {\n var n = false, o = true, p = null;\n if (this.inform(\"mousedown\", JSBNG__event)) {\n o = false;\n }\n ;\n ;\n if (this.minDragDistance) {\n p = j.getEventPosition(JSBNG__event);\n }\n else {\n n = true;\n var q = this.inform(\"start\", JSBNG__event);\n if (((q === true))) {\n o = false;\n }\n else if (((q === false))) {\n n = false;\n return;\n }\n \n ;\n ;\n }\n ;\n ;\n var r = ((((i.ie() < 9)) ? JSBNG__document.documentElement : window)), s = g.listen(r, {\n selectstart: ((o ? g.prevent : l)),\n mousemove: function(JSBNG__event) {\n if (!n) {\n var t = j.getEventPosition(JSBNG__event);\n if (((p.distanceTo(t) < this.minDragDistance))) {\n return;\n }\n ;\n ;\n n = true;\n if (((this.inform(\"start\", JSBNG__event) === false))) {\n n = false;\n return;\n }\n ;\n ;\n }\n ;\n ;\n this.inform(\"update\", JSBNG__event);\n }.bind(this),\n mouseup: function(JSBNG__event) {\n {\n var fin105keys = ((window.top.JSBNG_Replay.forInKeys)((s))), fin105i = (0);\n var t;\n for (; (fin105i < fin105keys.length); (fin105i++)) {\n ((t) = (fin105keys[fin105i]));\n {\n s[t].remove();\n ;\n };\n };\n };\n ;\n if (n) {\n this.inform(\"end\", JSBNG__event);\n }\n else this.inform(\"click\", JSBNG__event);\n ;\n ;\n }.bind(this)\n });\n ((o && JSBNG__event.prevent()));\n }\n });\n e.exports = m;\n});\n__d(\"ARIA\", [\"DOM\",\"emptyFunction\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"emptyFunction\"), i = b(\"ge\"), j, k, l = function() {\n j = i(\"ariaAssertiveAlert\");\n if (!j) {\n j = g.create(\"div\", {\n id: \"ariaAssertiveAlert\",\n className: \"accessible_elem\",\n \"aria-live\": \"assertive\"\n });\n g.appendContent(JSBNG__document.body, j);\n }\n ;\n ;\n k = i(\"ariaPoliteAlert\");\n if (!k) {\n k = j.cloneNode(false);\n k.setAttribute(\"id\", \"ariaPoliteAlert\");\n k.setAttribute(\"aria-live\", \"polite\");\n g.appendContent(JSBNG__document.body, k);\n }\n ;\n ;\n l = h;\n };\n function m(o, p) {\n l();\n var q = ((p ? j : k));\n g.setContent(q, o);\n };\n;\n var n = {\n owns: function(o, p) {\n o.setAttribute(\"aria-owns\", g.getID(p));\n },\n setPopup: function(o, p) {\n var q = g.getID(p);\n o.setAttribute(\"aria-owns\", q);\n o.setAttribute(\"aria-haspopup\", \"true\");\n if (((o.tabIndex == -1))) {\n o.tabIndex = 0;\n }\n ;\n ;\n },\n announce: function(o) {\n m(o, true);\n },\n notify: function(o) {\n m(o);\n }\n };\n e.exports = n;\n});\n__d(\"AudienceSelectorTags\", [], function(a, b, c, d, e, f) {\n var g = {\n }, h = {\n hasTags: function(i) {\n return g.hasOwnProperty(i);\n },\n setHasTags: function(i) {\n if (i) {\n g[i] = true;\n }\n ;\n ;\n }\n };\n e.exports = h;\n});\n__d(\"Badge\", [\"JSBNG__CSS\",\"DOM\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = b(\"DOM\"), i = b(\"cx\"), j = function(k, l) {\n var m;\n switch (k) {\n case \"xsmall\":\n m = \"-cx-PUBLIC-profileBadge__root -cx-PUBLIC-profileBadge__xsmall\";\n break;\n case \"small\":\n m = \"-cx-PUBLIC-profileBadge__root -cx-PUBLIC-profileBadge__small\";\n break;\n case \"medium\":\n m = \"-cx-PUBLIC-profileBadge__root -cx-PUBLIC-profileBadge__medium\";\n break;\n case \"large\":\n m = \"-cx-PUBLIC-profileBadge__root -cx-PUBLIC-profileBadge__large\";\n break;\n case \"xlarge\":\n m = \"-cx-PUBLIC-profileBadge__root -cx-PUBLIC-profileBadge__xlarge\";\n break;\n };\n ;\n if (m) {\n var n = h.create(\"span\", {\n className: m\n });\n if (((l === \"verified\"))) {\n g.addClass(n, \"-cx-PRIVATE-verifiedBadge__root\");\n }\n else return null\n ;\n return n;\n }\n ;\n ;\n return null;\n };\n e.exports = j;\n});\n__d(\"BasicTypeaheadRenderer\", [\"Badge\",\"DOM\",], function(a, b, c, d, e, f) {\n var g = b(\"Badge\"), h = b(\"DOM\");\n function i(j, k) {\n var l = [];\n if (j.icon) {\n l.push(h.create(\"img\", {\n alt: \"\",\n src: j.icon\n }));\n }\n ;\n ;\n if (j.text) {\n var m = [j.text,];\n if (j.verified) {\n m.push(g(\"xsmall\", \"verified\"));\n }\n ;\n ;\n l.push(h.create(\"span\", {\n className: \"text\"\n }, m));\n }\n ;\n ;\n if (j.subtext) {\n l.push(h.create(\"span\", {\n className: \"subtext\"\n }, [j.subtext,]));\n }\n ;\n ;\n var n = h.create(\"li\", {\n className: ((j.type || \"\"))\n }, l);\n if (j.text) {\n n.setAttribute(\"aria-label\", j.text);\n }\n ;\n ;\n return n;\n };\n;\n i.className = \"basic\";\n e.exports = i;\n});\n__d(\"TypeaheadView\", [\"JSBNG__Event\",\"ArbiterMixin\",\"BasicTypeaheadRenderer\",\"JSBNG__CSS\",\"DOM\",\"Parent\",\"$\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"ArbiterMixin\"), i = b(\"BasicTypeaheadRenderer\"), j = b(\"JSBNG__CSS\"), k = b(\"DOM\"), l = b(\"Parent\"), m = b(\"$\"), n = b(\"copyProperties\"), o = b(\"emptyFunction\");\n function p(q, r) {\n this.element = this.JSBNG__content = m(q);\n this.showBadges = r.showBadges;\n n(this, r);\n };\n;\n n(p.prototype, h, {\n events: [\"highlight\",\"render\",\"reset\",\"select\",\"beforeRender\",\"next\",\"prev\",],\n renderer: i,\n autoSelect: false,\n ignoreMouseover: false,\n init: function() {\n this.init = o;\n this.initializeEvents();\n this.reset();\n },\n initializeEvents: function() {\n g.listen(this.element, {\n mouseup: this.mouseup.bind(this),\n mouseover: this.mouseover.bind(this)\n });\n },\n setTypeahead: function(q) {\n this.typeahead = q;\n },\n setAccessibilityControlElement: function(q) {\n this.accessibilityElement = q;\n },\n getElement: function() {\n return this.element;\n },\n mouseup: function(JSBNG__event) {\n if (((JSBNG__event.button != 2))) {\n this.select(true);\n JSBNG__event.kill();\n }\n ;\n ;\n },\n mouseover: function(JSBNG__event) {\n if (this.ignoreMouseover) {\n this.ignoreMouseover = false;\n return;\n }\n ;\n ;\n if (this.visible) {\n this.highlight(this.getIndex(JSBNG__event));\n }\n ;\n ;\n },\n reset: function(q) {\n if (!q) {\n this.disableAutoSelect = false;\n }\n ;\n ;\n this.justRendered = false;\n this.justShown = false;\n this.index = -1;\n this.items = [];\n this.results = [];\n this.value = \"\";\n this.JSBNG__content.innerHTML = \"\";\n this.inform(\"reset\");\n return this;\n },\n getIndex: function(JSBNG__event) {\n return this.items.indexOf(l.byTag(JSBNG__event.getTarget(), \"li\"));\n },\n JSBNG__getSelection: function() {\n var q = ((this.results[this.index] || null));\n return ((this.visible ? q : null));\n },\n isEmpty: function() {\n return !this.results.length;\n },\n isVisible: function() {\n return !!this.visible;\n },\n show: function() {\n j.show(this.element);\n if (((this.results && this.results.length))) {\n if (((((this.autoSelect && this.accessibilityElement)) && this.selected))) {\n this.accessibilityElement.setAttribute(\"aria-activedescendant\", k.getID(this.selected));\n }\n ;\n }\n ;\n ;\n ((this.accessibilityElement && this.accessibilityElement.setAttribute(\"aria-expanded\", \"true\")));\n this.visible = true;\n return this;\n },\n hide: function() {\n j.hide(this.element);\n if (this.accessibilityElement) {\n this.accessibilityElement.setAttribute(\"aria-expanded\", \"false\");\n this.accessibilityElement.removeAttribute(\"aria-activedescendant\");\n }\n ;\n ;\n this.visible = false;\n return this;\n },\n render: function(q, r) {\n this.value = q;\n if (!r.length) {\n ((this.accessibilityElement && this.accessibilityElement.removeAttribute(\"aria-activedescendant\")));\n this.reset(true);\n return;\n }\n ;\n ;\n this.justRendered = true;\n if (!this.results.length) {\n this.justShown = true;\n }\n ;\n ;\n var s = {\n results: r,\n value: q\n };\n this.inform(\"beforeRender\", s);\n r = s.results;\n var t = this.getDefaultIndex(r);\n if (((((this.index > 0)) && ((this.index !== this.getDefaultIndex(this.results)))))) {\n var u = this.results[this.index];\n for (var v = 0, w = r.length; ((v < w)); ++v) {\n if (((u.uid == r[v].uid))) {\n t = v;\n break;\n }\n ;\n ;\n };\n ;\n }\n ;\n ;\n this.results = r;\n k.setContent(this.JSBNG__content, this.buildResults(r));\n this.items = this.getItems();\n this.highlight(t, false);\n this.inform(\"render\", r);\n },\n getItems: function() {\n return k.scry(this.JSBNG__content, \"li\");\n },\n buildResults: function(q) {\n var r, s = null;\n if (((typeof this.renderer == \"function\"))) {\n r = this.renderer;\n s = ((this.renderer.className || \"\"));\n }\n else {\n r = a.TypeaheadRenderers[this.renderer];\n s = this.renderer;\n }\n ;\n ;\n r = r.bind(this);\n var t = this.showBadges, u = q.map(function(w, x) {\n if (!t) {\n w.verified = null;\n }\n ;\n ;\n var y = ((w.node || r(w, x)));\n y.setAttribute(\"role\", \"option\");\n return y;\n }), v = k.create(\"ul\", {\n className: s,\n id: ((\"typeahead_list_\" + ((this.typeahead ? k.getID(this.typeahead) : k.getID(this.element)))))\n }, u);\n v.setAttribute(\"role\", \"listbox\");\n return v;\n },\n getDefaultIndex: function() {\n var q = ((this.autoSelect && !this.disableAutoSelect));\n return ((((((this.index < 0)) && !q)) ? -1 : 0));\n },\n next: function() {\n this.highlight(((this.index + 1)));\n this.inform(\"next\", this.selected);\n },\n prev: function() {\n this.highlight(((this.index - 1)));\n this.inform(\"prev\", this.selected);\n },\n getItemText: function(q) {\n var r = \"\";\n if (q) {\n r = q.getAttribute(\"aria-label\");\n if (!r) {\n r = k.getText(q);\n q.setAttribute(\"aria-label\", r);\n }\n ;\n ;\n }\n ;\n ;\n return r;\n },\n setIsViewingSelectedItems: function(q) {\n this.viewingSelected = q;\n return this;\n },\n getIsViewingSelectedItems: function() {\n return !!this.viewingSelected;\n },\n highlight: function(q, r) {\n var s = true;\n if (this.selected) {\n j.removeClass(this.selected, \"selected\");\n this.selected.setAttribute(\"aria-selected\", \"false\");\n }\n ;\n ;\n if (((q > ((this.items.length - 1))))) {\n q = -1;\n }\n else if (((q < -1))) {\n q = ((this.items.length - 1));\n }\n \n ;\n ;\n if (((((q >= 0)) && ((q < this.items.length))))) {\n if (((this.selected && ((this.getItemText(this.items[q]) === this.getItemText(this.selected)))))) {\n s = false;\n }\n ;\n ;\n this.selected = this.items[q];\n j.addClass(this.selected, \"selected\");\n this.selected.setAttribute(\"aria-selected\", \"true\");\n if (this.accessibilityElement) {\n (function() {\n this.accessibilityElement.setAttribute(\"aria-activedescendant\", k.getID(this.selected));\n }).bind(this).defer();\n }\n ;\n ;\n }\n else ((this.accessibilityElement && this.accessibilityElement.removeAttribute(\"aria-activedescendant\")));\n ;\n ;\n this.index = q;\n this.disableAutoSelect = ((q == -1));\n var t = ((q !== -1)), u = this.getItemText(this.selected);\n if (((((((((q !== -1)) && this.isVisible())) && u)) && this.autoSelect))) {\n if (this.justShown) {\n this.justRendered = false;\n this.justShown = false;\n t = false;\n }\n else if (((s && this.justRendered))) {\n this.justRendered = false;\n t = false;\n }\n \n ;\n }\n ;\n ;\n if (((r !== false))) {\n this.inform(\"highlight\", {\n index: q,\n selected: this.results[q],\n element: this.selected\n });\n }\n ;\n ;\n },\n select: function(q) {\n var r = this.index, s = this.results[r], t = this.element.getAttribute(\"id\");\n if (s) {\n this.inform(\"select\", {\n index: r,\n clicked: !!q,\n selected: s,\n id: t,\n query: this.value\n });\n this.inform(\"afterSelect\");\n }\n ;\n ;\n }\n });\n e.exports = p;\n});\n__d(\"BucketedTypeaheadView\", [\"Class\",\"DOM\",\"tx\",\"TypeaheadView\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"DOM\"), i = b(\"tx\"), j = b(\"TypeaheadView\"), k = b(\"copyProperties\");\n function l(m, n) {\n this.parent.construct(this, m, n);\n };\n;\n g.extend(l, j);\n k(l.prototype, {\n render: function(m, n, o) {\n n = this.buildBuckets(m, n);\n return this.parent.render(m, n, o);\n },\n highlight: function(m, n) {\n if (((((m == -1)) && ((this.index !== 0))))) {\n m = this.index;\n }\n ;\n ;\n while (((((((m >= 0)) && ((m < this.items.length)))) && !this.isHighlightable(this.results[m])))) {\n m = ((m + 1));\n ;\n };\n ;\n this.parent.highlight(m, n);\n },\n buildBuckets: function(m, n) {\n if (((((!this.typeObjects || !n)) || !n.length))) {\n return n;\n }\n ;\n ;\n var o = [], p = {\n };\n for (var q = 0; ((q < n.length)); ++q) {\n var r = n[q], s = ((r.render_type || r.type));\n if (!p.hasOwnProperty(s)) {\n p[s] = o.length;\n o.push([this.buildBucketHeader(s),]);\n }\n ;\n ;\n r.classNames = s;\n r.groupIndex = p[s];\n r.indexInGroup = ((o[r.groupIndex].length - 1));\n o[r.groupIndex].push(r);\n };\n ;\n {\n var fin106keys = ((window.top.JSBNG_Replay.forInKeys)((this.typeObjects))), fin106i = (0);\n (0);\n for (; (fin106i < fin106keys.length); (fin106i++)) {\n ((s) = (fin106keys[fin106i]));\n {\n if (((!p.hasOwnProperty(s) && this.typeObjects[s].show_always))) {\n p[s] = o.length;\n o.push([this.buildBucketHeader(s),]);\n r = this.buildNoResultsEntry();\n r.classNames = r.type;\n r.groupIndex = p[s];\n r.indexInGroup = ((o[r.groupIndex].length - 1));\n o[r.groupIndex].push(r);\n }\n ;\n ;\n };\n };\n };\n ;\n var t = [];\n if (this.typeObjectsOrder) {\n for (var u = 0; ((u < this.typeObjectsOrder.length)); ++u) {\n var v = this.typeObjectsOrder[u];\n if (p.hasOwnProperty(v)) {\n t = t.concat(o[p[v]]);\n }\n ;\n ;\n };\n ;\n }\n else for (var w = 0; ((w < o.length)); ++w) {\n t = t.concat(o[w]);\n ;\n }\n ;\n ;\n return t;\n },\n buildNoResultsEntry: function() {\n return {\n uid: \"disabled_result\",\n type: \"disabled_result\",\n text: \"No Results\"\n };\n },\n buildBucketHeader: function(m) {\n var n = this.typeObjects[m];\n if (((n === undefined))) {\n throw new Error(((((m + \" is undefined in \")) + JSON.stringify(this.typeObjects))));\n }\n ;\n ;\n if (n.markup) {\n n.text = n.markup;\n delete n.markup;\n }\n ;\n ;\n return this.typeObjects[m];\n },\n buildResults: function(m) {\n var n = this.parent.buildResults(m);\n if (this.typeObjects) {\n return h.create(\"div\", {\n className: \"bucketed\"\n }, [n,]);\n }\n else return n\n ;\n },\n isHighlightable: function(m) {\n return ((((m.type != \"header\")) && ((m.type != \"disabled_result\"))));\n },\n select: function(m) {\n var n = this.results[this.index];\n if (((n && this.isHighlightable(n)))) {\n this.parent.select(m);\n }\n ;\n ;\n },\n normalizeIndex: function(m) {\n var n = this.results.length;\n if (((n === 0))) {\n return -1;\n }\n else if (((m < -1))) {\n return ((((((m % n)) + n)) + 1));\n }\n else if (((m >= n))) {\n return ((((m % n)) - 1));\n }\n else return m\n \n \n ;\n },\n getDefaultIndex: function(m) {\n var n = ((this.autoSelect && !this.disableAutoSelect));\n if (((((this.index < 0)) && !n))) {\n return -1;\n }\n ;\n ;\n if (((m.length === 0))) {\n return -1;\n }\n ;\n ;\n var o = 0;\n while (((!this.isHighlightable(m) && ((o < m.length))))) {\n o++;\n ;\n };\n ;\n return o;\n },\n prev: function() {\n var m = this.results[this.normalizeIndex(((this.index - 1)))];\n while (((m && !this.isHighlightable(m)))) {\n this.index = this.normalizeIndex(((this.index - 1)));\n m = this.results[this.normalizeIndex(((this.index - 1)))];\n };\n ;\n return this.parent.prev();\n },\n next: function() {\n var m = this.results[this.normalizeIndex(((this.index + 1)))];\n while (((m && !this.isHighlightable(m)))) {\n this.index = this.normalizeIndex(((this.index + 1)));\n m = this.results[this.normalizeIndex(((this.index + 1)))];\n };\n ;\n return this.parent.next();\n }\n });\n e.exports = l;\n});\n__d(\"LayerHideOnTransition\", [\"function-extensions\",\"PageTransitions\",\"copyProperties\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"PageTransitions\"), h = b(\"copyProperties\");\n function i(j) {\n this._layer = j;\n };\n;\n h(i.prototype, {\n _enabled: false,\n _subscribed: false,\n enable: function() {\n this._enabled = true;\n if (!this._subscribed) {\n this._subscribe.bind(this).defer();\n this._subscribed = true;\n }\n ;\n ;\n },\n disable: function() {\n this._enabled = false;\n },\n _subscribe: ((window.top.JSBNG_Replay.push)((window.top.JSBNG_Replay.s1da4c91f736d950de61ac9962e5a050e9ae4a4ed_104), function() {\n g.registerHandler(function() {\n if (this._enabled) {\n this._layer.hide();\n }\n ;\n ;\n this._subscribed = false;\n }.bind(this));\n }))\n });\n e.exports = i;\n});\n__d(\"SVGChecker\", [], function(a, b, c, d, e, f) {\n e.exports = {\n isSVG: function(g) {\n return ((!!g.ownerSVGElement || ((g.tagName.toLowerCase() === \"svg\"))));\n },\n isDisplayed: function(g) {\n try {\n var i = g.getBBox();\n if (((i && ((((i.height === 0)) || ((i.width === 0))))))) {\n return false;\n }\n ;\n ;\n } catch (h) {\n return false;\n };\n ;\n return true;\n }\n };\n});\n__d(\"ContextualLayer\", [\"JSBNG__Event\",\"Arbiter\",\"ARIA\",\"Class\",\"ContextualThing\",\"JSBNG__CSS\",\"DataStore\",\"DOM\",\"Layer\",\"LayerHideOnTransition\",\"Locale\",\"Parent\",\"JSBNG__Rect\",\"Style\",\"Vector\",\"SVGChecker\",\"arrayContains\",\"copyProperties\",\"emptyFunction\",\"getOverlayZIndex\",\"removeFromArray\",\"throttle\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Arbiter\"), i = b(\"ARIA\"), j = b(\"Class\"), k = b(\"ContextualThing\"), l = b(\"JSBNG__CSS\"), m = b(\"DataStore\"), n = b(\"DOM\"), o = b(\"Layer\"), p = b(\"LayerHideOnTransition\"), q = b(\"Locale\"), r = b(\"Parent\"), s = b(\"JSBNG__Rect\"), t = b(\"Style\"), u = b(\"Vector\"), v = b(\"SVGChecker\"), w = b(\"arrayContains\"), x = b(\"copyProperties\"), y = b(\"emptyFunction\"), z = b(\"getOverlayZIndex\"), aa = b(\"removeFromArray\"), ba = b(\"throttle\");\n function ca(ja) {\n return ((((ja.getPosition() === \"left\")) || ((ja.isVertical() && ((ja.getAlignment() === \"right\"))))));\n };\n;\n function da(ja) {\n var ka = ja.parentNode;\n if (ka) {\n var la = t.get(ka, \"position\");\n if (((la === \"static\"))) {\n if (((ka === JSBNG__document.body))) {\n ka = JSBNG__document.documentElement;\n }\n else ka = da(ka);\n ;\n ;\n }\n else return ka\n ;\n }\n else ka = JSBNG__document.documentElement;\n ;\n ;\n return ka;\n };\n;\n function ea(ja, ka) {\n this.parent.construct(this, ja, ka);\n };\n;\n var fa = [];\n h.subscribe(\"reflow\", function() {\n fa.forEach(function(ja) {\n if (((ja.updatePosition() === false))) {\n ja.hide();\n }\n ;\n ;\n });\n });\n j.extend(ea, o);\n x(ea.prototype, {\n _contentWrapper: null,\n _content: null,\n _contextNode: null,\n _contextBounds: null,\n _contextSelector: null,\n _parentLayer: null,\n _parentSubscription: null,\n _orientation: null,\n _orientationClass: null,\n _shouldSetARIAProperties: true,\n _configure: function(ja, ka) {\n this.parent._configure(ja, ka);\n if (ja.context) {\n this.setContext(ja.context);\n }\n else if (ja.contextID) {\n this._setContextID(ja.contextID);\n }\n else if (ja.contextSelector) {\n this._setContextSelector(ja.contextSelector);\n }\n \n \n ;\n ;\n this.setPosition(ja.position);\n this.setAlignment(ja.alignment);\n this.setOffsetX(ja.offsetX);\n this.setOffsetY(ja.offsetY);\n this._content = ka;\n },\n _getDefaultBehaviors: function() {\n return this.parent._getDefaultBehaviors().concat([p,]);\n },\n _buildWrapper: function(ja, ka) {\n this._contentWrapper = n.create(\"div\", {\n className: \"uiContextualLayer\"\n }, ka);\n return n.create(\"div\", {\n className: \"uiContextualLayerPositioner\"\n }, this._contentWrapper);\n },\n getInsertParent: function() {\n var ja = this._insertParent;\n if (!ja) {\n var ka = this.getContext();\n if (ka) {\n ja = r.byClass(ka, \"uiContextualLayerParent\");\n }\n ;\n ;\n }\n ;\n ;\n return ((ja || this.parent.getInsertParent()));\n },\n setContent: function(ja) {\n this._content = ja;\n n.setContent(this._contentWrapper, this._content);\n ((this._shown && this.updatePosition()));\n return this;\n },\n setContext: function(ja) {\n return this.setContextWithBounds(ja, null);\n },\n setContextWithBounds: function(ja, ka) {\n this._contextNode = ja;\n this._contextBounds = ((ka || null));\n this._contextSelector = this._contextScrollParent = null;\n if (this._shown) {\n k.register(this.getRoot(), this._contextNode);\n this.updatePosition();\n }\n ;\n ;\n this._setParentSubscription();\n this.setARIAProperties();\n return this;\n },\n shouldSetARIAProperties: function(ja) {\n this._shouldSetARIAProperties = ja;\n return this;\n },\n setARIAProperties: function() {\n if (this._shouldSetARIAProperties) {\n i.setPopup(this.getCausalElement(), this.getRoot());\n }\n ;\n ;\n return this;\n },\n _setContextID: function(ja) {\n this._contextSelector = ((\"#\" + ja));\n this._contextNode = null;\n },\n _setContextSelector: function(ja) {\n this._contextSelector = ja;\n this._contextNode = null;\n },\n getCausalElement: function() {\n return ((this.parent.getCausalElement() || this.getContext()));\n },\n _setParentSubscription: function() {\n var ja = this.getContext(), ka = null;\n while (((ja !== null))) {\n ka = m.get(ja, \"layer\");\n if (ka) {\n break;\n }\n ;\n ;\n ja = ja.parentNode;\n };\n ;\n if (((ka === this._parentLayer))) {\n return;\n }\n ;\n ;\n if (((this._parentLayer && this._parentSubscription))) {\n this._parentLayer.unsubscribe(this._parentSubscription);\n this._parentSubscription = null;\n }\n ;\n ;\n if (ka) {\n this._parentSubscription = ka.subscribe(\"hide\", this.hide.bind(this));\n }\n ;\n ;\n this._parentLayer = ka;\n },\n setPosition: function(ja) {\n if (this._getOrientation().setDefaultPosition(ja)) {\n ((this._shown && this.updatePosition()));\n }\n ;\n ;\n return this;\n },\n setAlignment: function(ja) {\n if (this._getOrientation().setDefaultAlignment(ja)) {\n ((this._shown && this.updatePosition()));\n }\n ;\n ;\n return this;\n },\n setOffsetX: function(ja) {\n if (this._getOrientation().setDefaultOffsetX(ja)) {\n ((this._shown && this.updatePosition()));\n }\n ;\n ;\n return this;\n },\n setOffsetY: function(ja) {\n if (this._getOrientation().setDefaultOffsetY(ja)) {\n ((this._shown && this.updatePosition()));\n }\n ;\n ;\n return this;\n },\n _getOrientation: function() {\n if (!this._orientation) {\n this._orientation = new ia();\n }\n ;\n ;\n return this._orientation;\n },\n getContentRoot: function() {\n return this._contentWrapper;\n },\n getContent: function() {\n return this._content;\n },\n getContext: function() {\n if (!this._contextNode) {\n this._contextNode = n.JSBNG__find(JSBNG__document, this._contextSelector);\n }\n ;\n ;\n return this._contextNode;\n },\n getContextBounds: function(ja) {\n if (this._contextBounds) {\n return this._contextBounds.convertTo(ja);\n }\n ;\n ;\n var ka = this.getContext();\n return s.newFromVectors(u.getElementPosition(ka, ja), u.getElementDimensions(ka));\n },\n getContextScrollParent: function() {\n if (!this._contextScrollParent) {\n this._contextScrollParent = t.getScrollParent(this.getContext());\n }\n ;\n ;\n return this._contextScrollParent;\n },\n setInsertParent: function(ja) {\n this._insertScrollParent = null;\n return this.parent.setInsertParent(ja);\n },\n getInsertScrollParent: function() {\n if (!this._insertScrollParent) {\n this._insertScrollParent = t.getScrollParent(this.getInsertParent());\n }\n ;\n ;\n return this._insertScrollParent;\n },\n show: function() {\n if (this._shown) {\n return this;\n }\n ;\n ;\n this.parent.show();\n if (this._shown) {\n k.register(this.getRoot(), this.getContext());\n fa.push(this);\n this._resizeListener = ((this._resizeListener || g.listen(window, \"resize\", ba(this.updatePosition.bind(this)))));\n }\n ;\n ;\n return this;\n },\n finishHide: function() {\n aa(fa, this);\n ((this._resizeListener && this._resizeListener.remove()));\n this._resizeListener = null;\n return this.parent.finishHide();\n },\n isFixed: function() {\n return ((t.isFixed(this.getContext()) && !t.isFixed(this.getInsertParent())));\n },\n updatePosition: function() {\n var ja = this.getContext();\n if (!ja) {\n return false;\n }\n ;\n ;\n var ka = this.isFixed();\n if (((!ka && !((ja.offsetParent || ((v.isSVG(ja) && v.isDisplayed(ja)))))))) {\n return false;\n }\n ;\n ;\n var la = this.getRoot();\n t.set(la, \"width\", ((u.getViewportDimensions().x + \"px\")));\n var ma = this._getOrientation();\n this.inform(\"adjust\", ma.reset());\n if (!ma.isValid()) {\n return false;\n }\n ;\n ;\n this._updateWrapperPosition(ma);\n this._updateWrapperClass(ma);\n l.conditionClass(la, \"uiContextualLayerPositionerFixed\", ka);\n var na, oa, pa = ((ka ? \"viewport\" : \"JSBNG__document\")), qa = ((ka ? JSBNG__document.documentElement : da(la)));\n if (((qa === JSBNG__document.documentElement))) {\n na = new u(0, 0);\n oa = JSBNG__document.documentElement.clientWidth;\n }\n else if (!la.offsetParent) {\n return false;\n }\n else {\n na = u.getElementPosition(qa, pa);\n oa = qa.offsetWidth;\n if (((qa !== JSBNG__document.body))) {\n na = na.sub(new u(qa.scrollLeft, qa.scrollTop));\n }\n ;\n ;\n }\n \n ;\n ;\n var ra = this.getContextBounds(pa), sa = ((ra.l - na.x)), ta = ((ra.t - na.y)), ua = ra.h(), va = ra.w(), wa = q.isRTL();\n if (((ma.getPosition() === \"below\"))) {\n ta += ua;\n }\n ;\n ;\n if (((((((ma.getPosition() === \"right\")) || ((ma.isVertical() && ((ma.getAlignment() === \"right\")))))) != wa))) {\n sa += va;\n }\n ;\n ;\n var xa = ma.getOffsetX();\n if (((ma.isVertical() && ((ma.getAlignment() === \"center\"))))) {\n xa += ((((va - this.getContentRoot().offsetWidth)) / 2));\n }\n ;\n ;\n if (wa) {\n xa *= -1;\n }\n ;\n ;\n var ya = \"left\", za = Math.floor(((sa + xa)));\n if (((ca(ma) !== wa))) {\n ya = \"right\";\n za = ((oa - za));\n }\n ;\n ;\n t.set(la, ya, ((za + \"px\")));\n t.set(la, ((((ya === \"left\")) ? \"right\" : \"left\")), \"\");\n var ab = this.getInsertScrollParent(), bb;\n if (((ab !== window))) {\n bb = ab.clientWidth;\n }\n else bb = JSBNG__document.documentElement.clientWidth;\n ;\n ;\n var cb = u.getElementPosition(la).x;\n if (((ya === \"left\"))) {\n if (((((bb - cb)) > 0))) {\n t.set(la, \"width\", ((((bb - cb)) + \"px\")));\n }\n else t.set(la, \"width\", \"\");\n ;\n ;\n }\n else t.set(la, \"width\", ((((cb + la.offsetWidth)) + \"px\")));\n ;\n ;\n t.set(la, \"JSBNG__top\", ((((ta + ma.getOffsetY())) + \"px\")));\n var db = z(ja, this.getInsertParent());\n t.set(la, \"z-index\", ((((db > 200)) ? db : \"\")));\n this.inform(\"reposition\", ma);\n return true;\n },\n _updateWrapperPosition: function(ja) {\n var ka = ((ja.getPosition() === \"above\"));\n t.set(this._contentWrapper, \"bottom\", ((ka ? \"0\" : null)));\n var la = ((q.isRTL() ? \"left\" : \"right\")), ma = ca(ja);\n t.set(this._contentWrapper, la, ((ma ? \"0\" : null)));\n },\n _updateWrapperClass: function(ja) {\n var ka = ja.getClassName();\n if (((ka === this._orientationClass))) {\n return;\n }\n ;\n ;\n if (this._orientationClass) {\n l.removeClass(this._contentWrapper, this._orientationClass);\n }\n ;\n ;\n this._orientationClass = ka;\n l.addClass(this._contentWrapper, ka);\n },\n simulateOrientation: function(ja, ka) {\n var la = ja.getClassName();\n if (((la === this._orientationClass))) {\n return ka();\n }\n else {\n if (this._orientationClass) {\n l.removeClass(this._contentWrapper, this._orientationClass);\n }\n ;\n ;\n l.addClass(this._contentWrapper, la);\n var ma = ka();\n l.removeClass(this._contentWrapper, la);\n if (this._orientationClass) {\n l.addClass(this._contentWrapper, this._orientationClass);\n }\n ;\n ;\n return ma;\n }\n ;\n ;\n },\n destroy: function() {\n this.parent.destroy();\n this._contentWrapper = null;\n this._content = null;\n return this;\n }\n });\n var ga = y.thatReturnsArgument, ha = y.thatReturnsArgument;\n function ia() {\n this._default = {\n _position: \"above\",\n _alignment: \"left\",\n _offsetX: 0,\n _offsetY: 0,\n _valid: true\n };\n this.reset();\n };\n;\n ia.OPPOSITE = {\n above: \"below\",\n below: \"above\",\n left: \"right\",\n right: \"left\"\n };\n x(ia.prototype, {\n setPosition: function(ja) {\n this._position = ga(ja);\n return this;\n },\n setAlignment: function(ja) {\n this._alignment = ha(ja);\n return this;\n },\n getOppositePosition: function() {\n return ia.OPPOSITE[this.getPosition()];\n },\n invalidate: function() {\n this._valid = false;\n return this;\n },\n getPosition: function() {\n return ((this._position || \"above\"));\n },\n getAlignment: function() {\n return ((this._alignment || \"left\"));\n },\n getOffsetX: function() {\n var ja = ((this._offsetX || 0));\n if (!this.isVertical()) {\n if (((this._default._position !== this._position))) {\n ja *= -1;\n }\n ;\n ;\n }\n else if (((this._default._alignment !== this._alignment))) {\n ja *= -1;\n }\n \n ;\n ;\n return ja;\n },\n getOffsetY: function() {\n var ja = ((this._offsetY || 0));\n if (((this.isVertical() && ((this._default._position !== this._position))))) {\n ja *= -1;\n }\n ;\n ;\n return ja;\n },\n getClassName: function() {\n var ja = this.getAlignment(), ka = this.getPosition();\n if (((ka === \"below\"))) {\n if (((ja === \"left\"))) {\n return \"uiContextualLayerBelowLeft\";\n }\n else if (((ja === \"right\"))) {\n return \"uiContextualLayerBelowRight\";\n }\n else return \"uiContextualLayerBelowCenter\"\n \n ;\n }\n else if (((ka === \"above\"))) {\n if (((ja === \"left\"))) {\n return \"uiContextualLayerAboveLeft\";\n }\n else if (((ja === \"right\"))) {\n return \"uiContextualLayerAboveRight\";\n }\n else return \"uiContextualLayerAboveCenter\"\n \n ;\n }\n else if (((ka === \"left\"))) {\n return \"uiContextualLayerLeft\";\n }\n else return \"uiContextualLayerRight\"\n \n \n ;\n },\n isValid: function() {\n return this._valid;\n },\n isVertical: function() {\n return ((((this.getPosition() === \"above\")) || ((this.getPosition() === \"below\"))));\n },\n reset: function(ja, ka) {\n x(this, this._default);\n return this;\n },\n setDefaultPosition: function(ja) {\n var ka = this._default._position;\n this._default._position = ga(ja);\n return ((ka !== ja));\n },\n setDefaultAlignment: function(ja) {\n var ka = this._default._alignment;\n this._default._alignment = ha(ja);\n return ((ka !== ja));\n },\n setDefaultOffsetX: function(ja) {\n var ka = this._default._offsetX;\n this._default._offsetX = ja;\n return ((ka !== ja));\n },\n setDefaultOffsetY: function(ja) {\n var ka = this._default._offsetY;\n this._default._offsetY = ja;\n return ((ka !== ja));\n }\n });\n e.exports = ea;\n});\n__d(\"ContextualLayerDimensions\", [\"DOM\",\"Locale\",\"JSBNG__Rect\",\"Vector\",\"ViewportBounds\",\"ge\",\"getOverlayZIndex\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"Locale\"), i = b(\"JSBNG__Rect\"), j = b(\"Vector\"), k = b(\"ViewportBounds\"), l = b(\"ge\"), m = b(\"getOverlayZIndex\"), n = {\n getViewportRect: function(o) {\n var p = l(\"globalContainer\"), q = o.getContext(), r = ((((p && g.contains(p, q))) || ((m(q) < 300)))), s = i.getViewportBounds();\n if (r) {\n s.t += k.getTop();\n if (h.isRTL()) {\n s.r -= k.getLeft();\n s.l += k.getRight();\n }\n else {\n s.r -= k.getRight();\n s.l += k.getLeft();\n }\n ;\n ;\n }\n ;\n ;\n return s;\n },\n getLayerRect: function(o, p) {\n var q = o.getContextBounds(\"viewport\"), r = o.simulateOrientation(p, function() {\n return j.getElementDimensions(o.getContent());\n }), s = ((q.t + p.getOffsetY()));\n if (((p.getPosition() === \"above\"))) {\n s -= r.y;\n }\n else if (((p.getPosition() === \"below\"))) {\n s += ((q.b - q.t));\n }\n \n ;\n ;\n var t = ((q.l + p.getOffsetX())), u = ((q.r - q.l));\n if (p.isVertical()) {\n var v = p.getAlignment();\n if (((v === \"center\"))) {\n t += ((((u - r.x)) / 2));\n }\n else if (((((v === \"right\")) !== h.isRTL()))) {\n t += ((u - r.x));\n }\n \n ;\n ;\n }\n else if (((((p.getPosition() === \"right\")) !== h.isRTL()))) {\n t += u;\n }\n else t -= r.x;\n \n ;\n ;\n return new i(s, ((t + r.x)), ((s + r.y)), t, \"viewport\");\n }\n };\n e.exports = n;\n});\n__d(\"ContextualLayerAutoFlip\", [\"ContextualLayerDimensions\",\"DOM\",\"Vector\",\"arrayContains\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ContextualLayerDimensions\"), h = b(\"DOM\"), i = b(\"Vector\"), j = b(\"arrayContains\"), k = b(\"copyProperties\");\n function l(m) {\n this._layer = m;\n };\n;\n k(l.prototype, {\n _subscription: null,\n enable: function() {\n this._subscription = this._layer.subscribe(\"adjust\", this._adjustOrientation.bind(this));\n if (this._layer.isShown()) {\n this._layer.updatePosition();\n }\n ;\n ;\n },\n disable: function() {\n this._subscription.unsubscribe();\n this._subscription = null;\n if (this._layer.isShown()) {\n this._layer.updatePosition();\n }\n ;\n ;\n },\n _adjustOrientation: function(m, n) {\n var o = this._getValidPositions(n);\n if (!o.length) {\n n.invalidate();\n return;\n }\n ;\n ;\n var p = g.getViewportRect(this._layer), q = this._getValidAlignments(n), r, s, t;\n for (r = 0; ((r < q.length)); r++) {\n n.setAlignment(q[r]);\n for (s = 0; ((s < o.length)); s++) {\n n.setPosition(o[s]);\n t = g.getLayerRect(this._layer, n);\n if (p.contains(t)) {\n return;\n }\n ;\n ;\n };\n ;\n };\n ;\n n.setPosition(((j(o, \"below\") ? \"below\" : o[0])));\n for (r = 0; ((r < q.length)); r++) {\n n.setAlignment(q[r]);\n t = g.getLayerRect(this._layer, n);\n if (((((t.l >= p.l)) && ((t.r <= p.r))))) {\n return;\n }\n ;\n ;\n };\n ;\n n.setAlignment(q[0]);\n },\n _getValidPositions: function(m) {\n var n = [m.getPosition(),m.getOppositePosition(),], o = this._layer.getContextScrollParent();\n if (((((o === window)) || ((o === h.getDocumentScrollElement()))))) {\n return n;\n }\n ;\n ;\n var p = this._layer.getContext(), q = i.getElementPosition(o, \"viewport\").y, r = i.getElementPosition(p, \"viewport\").y;\n if (m.isVertical()) {\n return n.filter(function(t) {\n if (((t === \"above\"))) {\n return ((r >= q));\n }\n else {\n var u = ((q + o.offsetHeight)), v = ((r + p.offsetHeight));\n return ((v <= u));\n }\n ;\n ;\n });\n }\n else {\n var s = ((q + o.offsetHeight));\n if (((((r >= q)) && ((((r + p.offsetHeight)) <= s))))) {\n return n;\n }\n else return []\n ;\n }\n ;\n ;\n },\n _getValidAlignments: function(m) {\n var n = [\"left\",\"right\",\"center\",], o = m.getAlignment(), p = n.indexOf(o);\n if (((p > 0))) {\n n.splice(p, 1);\n n.unshift(o);\n }\n ;\n ;\n return n;\n }\n });\n e.exports = l;\n});\n__d(\"ContextualLayerHideOnScroll\", [\"JSBNG__Event\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"copyProperties\");\n function i(j) {\n this._layer = j;\n };\n;\n h(i.prototype, {\n _subscriptions: [],\n enable: function() {\n this._subscriptions = [this._layer.subscribe(\"contextchange\", this._handleContextChange.bind(this)),this._layer.subscribe(\"show\", this.attach.bind(this)),this._layer.subscribe(\"hide\", this.detach.bind(this)),];\n },\n disable: function() {\n while (this._subscriptions.length) {\n this._subscriptions.pop().unsubscribe();\n ;\n };\n ;\n this.detach();\n },\n attach: function() {\n if (this._listener) {\n return;\n }\n ;\n ;\n var j = this._layer.getContextScrollParent();\n if (((j === window))) {\n return;\n }\n ;\n ;\n this._listener = g.listen(j, \"JSBNG__scroll\", this._layer.hide.bind(this._layer));\n },\n detach: function() {\n ((this._listener && this._listener.remove()));\n this._listener = null;\n },\n _handleContextChange: function() {\n this.detach();\n if (this._layer.isShown()) {\n this.attach();\n }\n ;\n ;\n }\n });\n e.exports = i;\n});\n__d(\"ContextualTypeaheadView\", [\"BucketedTypeaheadView\",\"JSBNG__CSS\",\"Class\",\"ContextualLayer\",\"ContextualLayerAutoFlip\",\"ContextualLayerHideOnScroll\",\"DOM\",\"DOMDimensions\",\"Style\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"BucketedTypeaheadView\"), h = b(\"JSBNG__CSS\"), i = b(\"Class\"), j = b(\"ContextualLayer\"), k = b(\"ContextualLayerAutoFlip\"), l = b(\"ContextualLayerHideOnScroll\"), m = b(\"DOM\"), n = b(\"DOMDimensions\"), o = b(\"Style\"), p = b(\"copyProperties\");\n function q(r, s) {\n this.parent.construct(this, r, s);\n };\n;\n i.extend(q, g);\n p(q.prototype, {\n init: function() {\n this.initializeLayer();\n this.parent.init();\n },\n initializeLayer: function() {\n this.context = this.getContext();\n this.wrapper = m.create(\"div\");\n m.appendContent(this.wrapper, this.element);\n h.addClass(this.element, \"uiContextualTypeaheadView\");\n this.layer = new j({\n context: this.context,\n position: \"below\",\n alignment: this.alignment,\n causalElement: this.causalElement,\n permanent: true\n }, this.wrapper);\n this.layer.enableBehavior(l);\n if (((o.isFixed(this.context) || this.autoflip))) {\n this.layer.enableBehavior(k);\n }\n ;\n ;\n this.subscribe(\"render\", this.renderLayer.bind(this));\n },\n show: function() {\n if (this.minWidth) {\n o.set(this.wrapper, \"min-width\", ((this.minWidth + \"px\")));\n }\n else if (this.width) {\n o.set(this.wrapper, \"width\", ((this.width + \"px\")));\n }\n else o.set(this.wrapper, \"width\", ((n.getElementDimensions(this.context).width + \"px\")));\n \n ;\n ;\n var r = this.parent.show();\n this.layer.show();\n return r;\n },\n hide: function() {\n this.layer.hide();\n return this.parent.hide();\n },\n renderLayer: function() {\n if (!this.isVisible()) {\n return;\n }\n ;\n ;\n if (this.layer.isShown()) {\n this.layer.updatePosition();\n }\n else this.layer.show();\n ;\n ;\n },\n clearText: function() {\n this.layer.getCausalElement().value = \"\";\n },\n getContext: function() {\n return this.element.parentNode;\n }\n });\n e.exports = q;\n});\n__d(\"DialogHideOnSuccess\", [\"copyProperties\",\"JSBNG__CSS\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"JSBNG__CSS\"), i = b(\"cx\");\n function j(k) {\n this._layer = k;\n };\n;\n g(j.prototype, {\n _subscription: null,\n enable: function() {\n this._subscription = this._layer.subscribe(\"success\", this._handle.bind(this));\n },\n disable: function() {\n this._subscription.unsubscribe();\n this._subscription = null;\n },\n _handle: function(k, JSBNG__event) {\n if (h.hasClass(JSBNG__event.getTarget(), \"-cx-PRIVATE-uiDialog__form\")) {\n this._layer.hide();\n }\n ;\n ;\n }\n });\n e.exports = j;\n});\n__d(\"DoublyLinkedListMap\", [\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\");\n function h() {\n this._head = null;\n this._tail = null;\n this._nodes = {\n };\n this._nodeCount = 0;\n };\n;\n g(h.prototype, {\n get: function(i) {\n return ((this._nodes[i] ? this._nodes[i].data : null));\n },\n getIndex: function(i) {\n for (var j = this._head, k = 0; j; j = j.next, k++) {\n if (((j.key === i))) {\n return k;\n }\n ;\n ;\n };\n ;\n return null;\n },\n _insert: function(i, j, k, l) {\n ((((k && !this._nodes[k])) && (k = null)));\n var m = ((((k && this._nodes[k])) || ((l ? this._head : this._tail)))), n = {\n data: j,\n key: i,\n next: null,\n prev: null\n };\n if (m) {\n this.remove(i);\n if (l) {\n n.prev = m.prev;\n ((m.prev && (m.prev.next = n)));\n m.prev = n;\n n.next = m;\n }\n else {\n n.next = m.next;\n ((m.next && (m.next.prev = n)));\n m.next = n;\n n.prev = m;\n }\n ;\n ;\n }\n ;\n ;\n ((((n.prev === null)) && (this._head = n)));\n ((((n.next === null)) && (this._tail = n)));\n this._nodes[i] = n;\n this._nodeCount++;\n return this;\n },\n insertBefore: function(i, j, k) {\n return this._insert(i, j, k, true);\n },\n insertAfter: function(i, j, k) {\n return this._insert(i, j, k, false);\n },\n prepend: function(i, j) {\n return this.insertBefore(i, j, ((this._head && this._head.key)));\n },\n append: function(i, j) {\n return this.insertAfter(i, j, ((this._tail && this._tail.key)));\n },\n remove: function(i) {\n var j = this._nodes[i];\n if (j) {\n var k = j.next, l = j.prev;\n ((k && (k.prev = l)));\n ((l && (l.next = k)));\n ((((this._head === j)) && (this._head = k)));\n ((((this._tail === j)) && (this._tail = l)));\n delete this._nodes[i];\n this._nodeCount--;\n }\n ;\n ;\n return this;\n },\n JSBNG__find: function(i) {\n for (var j = this._head; j; j = j.next) {\n if (i(j.data)) {\n return j.key;\n }\n ;\n ;\n };\n ;\n return null;\n },\n reduce: function(i, j) {\n for (var k = this._head; k; k = k.next) {\n j = i(k.data, j);\n ;\n };\n ;\n return j;\n },\n exists: function(i) {\n return !!this._nodes[i];\n },\n isEmpty: function() {\n return !this._head;\n },\n reset: function() {\n this._head = null;\n this._tail = null;\n this._nodes = {\n };\n this._nodeCount = 0;\n },\n map: function(i) {\n for (var j = this._head; j; j = j.next) {\n i(j.data);\n ;\n };\n ;\n },\n getCount: function() {\n return this._nodeCount;\n },\n getHead: function() {\n return ((this._head && this._head.data));\n },\n getTail: function() {\n return ((this._tail && this._tail.data));\n },\n getNext: function(i) {\n var j = this._nodes[i];\n if (((j && j.next))) {\n return j.next.data;\n }\n ;\n ;\n return null;\n },\n getPrev: function(i) {\n var j = this._nodes[i];\n if (((j && j.prev))) {\n return j.prev.data;\n }\n ;\n ;\n return null;\n }\n });\n e.exports = h;\n});\n__d(\"MenuDeprecated\", [\"JSBNG__Event\",\"Arbiter\",\"JSBNG__CSS\",\"DataStore\",\"DOM\",\"HTML\",\"Keys\",\"Parent\",\"Style\",\"UserAgent\",\"copyProperties\",\"emptyFunction\",\"Run\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Arbiter\"), i = b(\"JSBNG__CSS\"), j = b(\"DataStore\"), k = b(\"DOM\"), l = b(\"HTML\"), m = b(\"Keys\"), n = b(\"Parent\"), o = b(\"Style\"), p = b(\"UserAgent\"), q = b(\"copyProperties\"), r = b(\"emptyFunction\"), s = \"menu:mouseover\", t = null;\n function u(ea) {\n if (i.hasClass(ea, \"uiMenuContainer\")) {\n return ea;\n }\n ;\n ;\n return n.byClass(ea, \"uiMenu\");\n };\n;\n function v(ea) {\n return n.byClass(ea, \"uiMenuItem\");\n };\n;\n function w(ea) {\n if (JSBNG__document.activeElement) {\n var fa = v(JSBNG__document.activeElement);\n return ea.indexOf(fa);\n }\n ;\n ;\n return -1;\n };\n;\n function x(ea) {\n return k.JSBNG__find(ea, \"a.itemAnchor\");\n };\n;\n function y(ea) {\n return i.hasClass(ea, \"checked\");\n };\n;\n function z(ea) {\n return ((!i.hasClass(ea, \"disabled\") && ((o.get(ea, \"display\") !== \"none\"))));\n };\n;\n function aa(JSBNG__event) {\n var ea = JSBNG__document.activeElement;\n if (((((!ea || !n.byClass(ea, \"uiMenu\"))) || !k.isInputNode(ea)))) {\n var fa = v(JSBNG__event.getTarget());\n ((fa && da.focusItem(fa)));\n }\n ;\n ;\n };\n;\n function ba(ea) {\n ((p.firefox() && x(ea).JSBNG__blur()));\n da.inform(\"select\", {\n menu: u(ea),\n JSBNG__item: ea\n });\n };\n;\n var ca = function() {\n ca = r;\n var ea = {\n };\n ea.click = function(JSBNG__event) {\n var fa = v(JSBNG__event.getTarget());\n if (((fa && z(fa)))) {\n ba(fa);\n var ga = x(fa), ha = ga.href, ia = ga.getAttribute(\"rel\");\n return ((((ia && ((ia !== \"ignore\")))) || ((ha && ((ha.charAt(((ha.length - 1))) !== \"#\"))))));\n }\n ;\n ;\n };\n ea.keydown = function(JSBNG__event) {\n var fa = JSBNG__event.getTarget();\n if (JSBNG__event.getModifiers().any) {\n return;\n }\n ;\n ;\n if (((!t || k.isInputNode(fa)))) {\n return;\n }\n ;\n ;\n var ga = g.getKeyCode(JSBNG__event), ha;\n switch (ga) {\n case m.UP:\n \n case m.DOWN:\n var ia = da.getEnabledItems(t);\n ha = w(ia);\n da.focusItem(ia[((ha + ((((ga === m.UP)) ? -1 : 1))))]);\n return false;\n case m.SPACE:\n var ja = v(fa);\n if (ja) {\n ba(ja);\n JSBNG__event.prevent();\n }\n ;\n ;\n break;\n default:\n var ka = String.fromCharCode(ga).toLowerCase(), la = da.getEnabledItems(t);\n ha = w(la);\n var ma = ha, na = la.length;\n while (((((~ha && (((ma = ((++ma % na))) !== ha)))) || ((!~ha && ((++ma < na))))))) {\n var oa = da.getItemLabel(la[ma]);\n if (((oa && ((oa.charAt(0).toLowerCase() === ka))))) {\n da.focusItem(la[ma]);\n return false;\n }\n ;\n ;\n };\n ;\n };\n ;\n };\n g.listen(JSBNG__document.body, ea);\n }, da = q(new h(), {\n focusItem: function(ea) {\n if (((ea && z(ea)))) {\n this._removeSelected(u(ea));\n i.addClass(ea, \"selected\");\n x(ea).JSBNG__focus();\n }\n ;\n ;\n },\n getEnabledItems: function(ea) {\n return da.getItems(ea).filter(z);\n },\n getCheckedItems: function(ea) {\n return da.getItems(ea).filter(y);\n },\n getItems: function(ea) {\n return k.scry(ea, \"li.uiMenuItem\");\n },\n getItemLabel: function(ea) {\n return ((ea.getAttribute(\"data-label\", 2) || \"\"));\n },\n isItemChecked: function(ea) {\n return i.hasClass(ea, \"checked\");\n },\n autoregister: function(ea, fa, ga) {\n ea.subscribe(\"show\", function() {\n da.register(fa, ga);\n });\n ea.subscribe(\"hide\", function() {\n da.unregister(fa);\n });\n },\n register: function(ea, fa) {\n ea = u(ea);\n ca();\n if (!j.get(ea, s)) {\n j.set(ea, s, g.listen(ea, \"mouseover\", aa));\n }\n ;\n ;\n if (((fa !== false))) {\n t = ea;\n }\n ;\n ;\n },\n setItemEnabled: function(ea, fa) {\n if (((!fa && !k.scry(ea, \"span.disabledAnchor\")[0]))) {\n k.appendContent(ea, k.create(\"span\", {\n className: ((k.JSBNG__find(ea, \"a\").className + \" disabledAnchor\"))\n }, l(x(ea).innerHTML)));\n }\n ;\n ;\n i.conditionClass(ea, \"disabled\", !fa);\n },\n toggleItem: function(ea) {\n var fa = !da.isItemChecked(ea);\n da.setItemChecked(ea, fa);\n },\n setItemChecked: function(ea, fa) {\n i.conditionClass(ea, \"checked\", fa);\n x(ea).setAttribute(\"aria-checked\", fa);\n },\n unregister: function(ea) {\n ea = u(ea);\n var fa = j.remove(ea, s);\n ((fa && fa.remove()));\n t = null;\n this._removeSelected(ea);\n },\n _removeSelected: function(ea) {\n da.getItems(ea).filter(function(fa) {\n return i.hasClass(fa, \"selected\");\n }).forEach(function(fa) {\n i.removeClass(fa, \"selected\");\n });\n }\n });\n e.exports = da;\n});\n__d(\"coalesce\", [], function(a, b, c, d, e, f) {\n function g() {\n for (var h = 0; ((h < arguments.length)); ++h) {\n if (((arguments[h] != null))) {\n return arguments[h];\n }\n ;\n ;\n };\n ;\n return null;\n };\n;\n e.exports = g;\n});\n__d(\"OnVisible\", [\"Arbiter\",\"DOM\",\"JSBNG__Event\",\"Parent\",\"Run\",\"Vector\",\"ViewportBounds\",\"coalesce\",\"copyProperties\",\"queryThenMutateDOM\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"DOM\"), i = b(\"JSBNG__Event\"), j = b(\"Parent\"), k = b(\"Run\"), l = b(\"Vector\"), m = b(\"ViewportBounds\"), n = b(\"coalesce\"), o = b(\"copyProperties\"), p = b(\"queryThenMutateDOM\"), q = [], r, s = 0, t = [], u, v, w, x, y;\n function z() {\n q.forEach(function(fa) {\n fa.remove();\n });\n if (v) {\n v.remove();\n u.remove();\n r.unsubscribe();\n v = u = r = null;\n }\n ;\n ;\n s = 0;\n q.length = 0;\n };\n;\n function aa() {\n if (!q.length) {\n z();\n return;\n }\n ;\n ;\n t.length = 0;\n w = l.getScrollPosition().y;\n x = l.getViewportDimensions().y;\n y = m.getTop();\n for (var fa = 0; ((fa < q.length)); ++fa) {\n var ga = q[fa];\n if (isNaN(ga.elementHeight)) {\n t.push(fa);\n }\n ;\n ;\n ga.elementHeight = l.getElementDimensions(ga.element).y;\n ga.elementPos = l.getElementPosition(ga.element);\n ga.hidden = j.byClass(ga.element, \"hidden_elem\");\n if (ga.scrollArea) {\n ga.scrollAreaHeight = l.getElementDimensions(ga.scrollArea).y;\n ga.scrollAreaY = l.getElementPosition(ga.scrollArea).y;\n }\n ;\n ;\n };\n ;\n s = fa;\n };\n;\n function ba() {\n for (var fa = ((Math.min(q.length, s) - 1)); ((fa >= 0)); --fa) {\n var ga = q[fa];\n if (((((!ga.elementPos || ga.removed)) || ga.hidden))) {\n q.splice(fa, 1);\n continue;\n }\n ;\n ;\n var ha = ((((w + x)) + ga.buffer)), ia = false;\n if (((ha > ga.elementPos.y))) {\n var ja = ((!ga.strict || ((((((w + y)) - ga.buffer)) < ((ga.elementPos.y + ga.elementHeight))))));\n ia = ja;\n if (((ia && ga.scrollArea))) {\n var ka = ((((ga.scrollAreaY + ga.scrollAreaHeight)) + ga.buffer));\n ia = ((((ga.elementPos.y > ((ga.scrollAreaY - ga.buffer)))) && ((ga.elementPos.y < ka))));\n }\n ;\n ;\n }\n ;\n ;\n if (((ga.inverse ? !ia : ia))) {\n ga.remove();\n ga.handler(((t.indexOf(fa) !== -1)));\n }\n ;\n ;\n };\n ;\n };\n;\n function ca() {\n da();\n if (q.length) {\n return;\n }\n ;\n ;\n v = i.listen(window, \"JSBNG__scroll\", da);\n u = i.listen(window, \"resize\", da);\n r = g.subscribe(\"dom-scroll\", da);\n };\n;\n function da() {\n p(aa, ba, \"OnVisible/positionCheck\");\n };\n;\n function ea(fa, ga, ha, ia, ja, ka) {\n this.element = fa;\n this.handler = ga;\n this.strict = ha;\n this.buffer = n(ia, 300);\n this.inverse = n(ja, false);\n this.scrollArea = ((ka || null));\n if (this.scrollArea) {\n this.scrollAreaListener = i.listen(h.JSBNG__find(ka, \".uiScrollableAreaWrap\"), \"JSBNG__scroll\", this.checkBuffer);\n }\n ;\n ;\n if (((q.length === 0))) {\n k.onLeave(z);\n }\n ;\n ;\n ca();\n q.push(this);\n };\n;\n o(ea, {\n checkBuffer: da\n });\n o(ea.prototype, {\n remove: function() {\n this.removed = true;\n if (this.scrollAreaListener) {\n this.scrollAreaListener.remove();\n }\n ;\n ;\n },\n reset: function() {\n this.elementHeight = null;\n this.removed = false;\n ((((q.indexOf(this) === -1)) && q.push(this)));\n ca();\n },\n setBuffer: function(fa) {\n this.buffer = fa;\n da();\n },\n checkBuffer: function() {\n da();\n }\n });\n e.exports = ea;\n});\n__d(\"PrivacyConst\", [], function(a, b, c, d, e, f) {\n var g = {\n FRIENDS_PLUS_GAMER_FRIENDS: 128,\n FRIENDS_MINUS_ACQUAINTANCES: 127,\n FACEBOOK_EMPLOYEES: 112,\n CUSTOM: 111,\n EVERYONE: 80,\n NETWORKS_FRIENDS_OF_FRIENDS: 60,\n NETWORKS_FRIENDS: 55,\n FRIENDS_OF_FRIENDS: 50,\n ALL_FRIENDS: 40,\n SELF: 10,\n NOBODY: 0\n }, h = {\n EVERYONE: 80,\n NETWORKS_FRIENDS: 55,\n FRIENDS_OF_FRIENDS: 50,\n ALL_FRIENDS: 40,\n SOME_FRIENDS: 30,\n SELF: 10,\n NO_FRIENDS: 0\n }, i = {\n NONE: 0,\n TAGGEES: 1,\n FRIENDS_OF_TAGGEES: 2\n }, j = {\n BaseValue: g,\n FriendsValue: h,\n TagExpansion: i\n };\n e.exports = j;\n});\n__d(\"Toggler\", [\"JSBNG__Event\",\"Arbiter\",\"ArbiterMixin\",\"ContextualThing\",\"JSBNG__CSS\",\"DataStore\",\"Dialog\",\"DOM\",\"DOMQuery\",\"Focus\",\"Parent\",\"TabbableElements\",\"arrayContains\",\"cx\",\"copyProperties\",\"createArrayFrom\",\"emptyFunction\",\"ge\",\"getContextualParent\",\"getObjectValues\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Arbiter\"), i = b(\"ArbiterMixin\"), j = b(\"ContextualThing\"), k = b(\"JSBNG__CSS\"), l = b(\"DataStore\"), m = b(\"Dialog\"), n = b(\"DOM\"), o = b(\"DOMQuery\"), p = b(\"Focus\"), q = b(\"Parent\"), r = b(\"TabbableElements\"), s = b(\"arrayContains\"), t = b(\"cx\"), u = b(\"copyProperties\"), v = b(\"createArrayFrom\"), w = b(\"emptyFunction\"), x = b(\"ge\"), y = b(\"getContextualParent\"), z = b(\"getObjectValues\"), aa = [], ba;\n function ca() {\n ca = w;\n g.listen(JSBNG__document.documentElement, \"click\", function(JSBNG__event) {\n var ga = JSBNG__event.getTarget();\n aa.forEach(function(ha) {\n ha.clickedTarget = ga;\n ((((((((((((ha.active && !ha.sticky)) && !j.containsIncludingLayers(ha.getActive(), ga))) && !ha.inTargetFlyout(ga))) && ha.inActiveDialog())) && !ha.isIgnoredByModalLayer(ga))) && ha.hide()));\n });\n }, g.Priority.URGENT);\n };\n;\n var da = function() {\n this.active = null;\n this.togglers = {\n };\n this.setSticky(false);\n aa.push(this);\n this.subscribe([\"show\",\"hide\",], da.inform.bind(da));\n return ca();\n };\n u(da.prototype, i, {\n show: function(ga) {\n var ha = ea(this, ga), ia = ha.active;\n if (((ga !== ia))) {\n ((ia && ha.hide()));\n ha.active = ga;\n k.addClass(ga, \"openToggler\");\n var ja = n.scry(ga, \"a[rel=\\\"toggle\\\"]\");\n if (((((ja.length > 0)) && ja[0].getAttribute(\"data-target\")))) {\n k.removeClass(x(ja[0].getAttribute(\"data-target\")), \"toggleTargetClosed\");\n }\n ;\n ;\n var ka = o.scry(ga, \".uiToggleFlyout\")[0];\n if (ka) {\n var la = ((r.JSBNG__find(ka)[0] || ka));\n if (((la.tabIndex == -1))) {\n la.tabIndex = 0;\n }\n ;\n ;\n p.setWithoutOutline(la);\n }\n ;\n ;\n n.appendContent(ga, ha.getToggler(\"next\"));\n n.prependContent(ga, ha.getToggler(\"prev\"));\n ha.inform(\"show\", ha);\n }\n ;\n ;\n },\n hide: function(ga) {\n var ha = ea(this, ga), ia = ha.active;\n if (((ia && ((!ga || ((ga === ia))))))) {\n k.removeClass(ia, \"openToggler\");\n var ja = n.scry(ia, \"a[rel=\\\"toggle\\\"]\");\n if (((((ja.length > 0)) && ja[0].getAttribute(\"data-target\")))) {\n k.addClass(x(ja[0].getAttribute(\"data-target\")), \"toggleTargetClosed\");\n }\n ;\n ;\n z(ha.togglers).forEach(n.remove);\n ha.inform(\"hide\", ha);\n ha.active = null;\n }\n ;\n ;\n },\n toggle: function(ga) {\n var ha = ea(this, ga);\n if (((ha.active === ga))) {\n ha.hide();\n }\n else ha.show(ga);\n ;\n ;\n },\n getActive: function() {\n return ea(this).active;\n },\n isShown: function() {\n return ((ea(this).active && k.hasClass(ea(this).active, \"openToggler\")));\n },\n inTargetFlyout: function(ga) {\n var ha = fa(this.getActive());\n return ((ha && j.containsIncludingLayers(ha, ga)));\n },\n inActiveDialog: function() {\n var ga = m.getCurrent();\n return ((!ga || n.contains(ga.getRoot(), this.getActive())));\n },\n isIgnoredByModalLayer: function(ga) {\n return ((q.byClass(ga, \"-cx-PRIVATE-ModalLayer__root\") && !q.byClass(this.getActive(), \"-cx-PRIVATE-ModalLayer__root\")));\n },\n getToggler: function(ga) {\n var ha = ea(this);\n if (!ha.togglers[ga]) {\n ha.togglers[ga] = n.create(\"button\", {\n className: \"hideToggler\",\n JSBNG__onfocus: function() {\n var ia = n.scry(ha.active, \"a[rel=\\\"toggle\\\"]\")[0];\n ((ia && ia.JSBNG__focus()));\n ha.hide();\n }\n });\n ha.togglers[ga].setAttribute(\"type\", \"button\");\n }\n ;\n ;\n return this.togglers[ga];\n },\n setSticky: function(ga) {\n var ha = ea(this);\n ga = ((ga !== false));\n if (((ga !== ha.sticky))) {\n ha.sticky = ga;\n if (ga) {\n ((ha._pt && ha._pt.unsubscribe()));\n }\n else ha._pt = h.subscribe(\"pre_page_transition\", ha.hide.bind(ha, null));\n ;\n ;\n }\n ;\n ;\n return ha;\n }\n });\n u(da, da.prototype);\n u(da, {\n bootstrap: function(ga) {\n var ha = ga.parentNode;\n da.getInstance(ha).toggle(ha);\n },\n createInstance: function(ga) {\n var ha = new da().setSticky(true);\n l.set(ga, \"toggler\", ha);\n return ha;\n },\n destroyInstance: function(ga) {\n l.remove(ga, \"toggler\");\n },\n getInstance: function(ga) {\n while (ga) {\n var ha = l.get(ga, \"toggler\");\n if (ha) {\n return ha;\n }\n ;\n ;\n if (k.hasClass(ga, \"uiToggleContext\")) {\n return da.createInstance(ga);\n }\n ;\n ;\n ga = y(ga);\n };\n ;\n return (ba = ((ba || new da())));\n },\n listen: function(ga, ha, ia) {\n return da.subscribe(v(ga), function(ja, ka) {\n if (((ka.getActive() === ha))) {\n return ia(ja, ka);\n }\n ;\n ;\n });\n },\n subscribe: (function(ga) {\n return function(ha, ia) {\n ha = v(ha);\n if (s(ha, \"show\")) {\n aa.forEach(function(ja) {\n if (ja.getActive()) {\n ia.curry(\"show\", ja).defer();\n }\n ;\n ;\n });\n }\n ;\n ;\n return ga(ha, ia);\n };\n })(da.subscribe.bind(da))\n });\n function ea(ga, ha) {\n if (((ga instanceof da))) {\n return ga;\n }\n ;\n ;\n return da.getInstance(ha);\n };\n;\n function fa(ga) {\n var ha = n.scry(ga, \"a[rel=\\\"toggle\\\"]\");\n if (((((ha.length > 0)) && ha[0].getAttribute(\"data-target\")))) {\n return x(ha[0].getAttribute(\"data-target\"));\n }\n ;\n ;\n };\n;\n e.exports = da;\n});\n__d(\"Tooltip\", [\"JSBNG__Event\",\"AsyncRequest\",\"ContextualLayer\",\"ContextualLayerAutoFlip\",\"JSBNG__CSS\",\"DataStore\",\"DOM\",\"Style\",\"URI\",\"copyProperties\",\"emptyFunction\",\"cx\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"AsyncRequest\"), i = b(\"ContextualLayer\"), j = b(\"ContextualLayerAutoFlip\"), k = b(\"JSBNG__CSS\"), l = b(\"DataStore\"), m = b(\"DOM\"), n = b(\"Style\"), o = b(\"URI\"), p = b(\"copyProperties\"), q = b(\"emptyFunction\"), r = b(\"cx\"), s = b(\"tx\"), t = null, u = null, v = null, w = [], x;\n function y() {\n if (!u) {\n v = m.create(\"div\", {\n className: \"tooltipContent\"\n });\n var fa = m.create(\"i\", {\n className: \"arrow\"\n }), ga = m.create(\"div\", {\n className: \"uiTooltipX\"\n }, [v,fa,]);\n u = new i({\n }, ga);\n u.shouldSetARIAProperties(false);\n u.enableBehavior(j);\n }\n ;\n ;\n };\n;\n function z(fa) {\n return p({\n JSBNG__content: fa.getAttribute(\"aria-label\"),\n position: ((fa.getAttribute(\"data-tooltip-position\") || \"above\")),\n alignH: ((fa.getAttribute(\"data-tooltip-alignh\") || \"left\"))\n }, l.get(fa, \"tooltip\"));\n };\n;\n function aa(fa, ga) {\n var ha = z(fa);\n l.set(fa, \"tooltip\", {\n JSBNG__content: ((ga.JSBNG__content || ha.JSBNG__content)),\n position: ((ga.position || ha.position)),\n alignH: ((ga.alignH || ha.alignH)),\n suspend: ((ga.suspend || ha.suspend))\n });\n fa.setAttribute(\"data-hover\", \"tooltip\");\n };\n;\n function ba(fa, ga) {\n ea.set(fa, \"Loading...\");\n new h(ga).setHandler(function(ha) {\n ea.set(fa, ha.getPayload());\n }).setErrorHandler(q).send();\n };\n;\n var ca = /(\\r\\n|[\\r\\n])/;\n function da(fa) {\n return fa.split(ca).map(function(ga) {\n return ((ca.test(ga) ? m.create(\"br\") : ga));\n });\n };\n;\n var ea = {\n process: function(fa, ga) {\n if (!m.contains(fa, ga)) {\n return;\n }\n ;\n ;\n if (((((fa !== t)) && !fa.getAttribute(\"data-tooltip-suspend\")))) {\n var ha = fa.getAttribute(\"data-tooltip-uri\");\n if (ha) {\n fa.removeAttribute(\"data-tooltip-uri\");\n ba(fa, ha);\n }\n ;\n ;\n ea.show(fa);\n }\n ;\n ;\n },\n remove: function(fa) {\n l.remove(fa, \"tooltip\");\n fa.removeAttribute(\"data-hover\");\n fa.removeAttribute(\"data-tooltip-position\");\n fa.removeAttribute(\"data-tooltip-alignh\");\n ((((fa === t)) && ea.hide()));\n },\n suspend: function(fa) {\n fa.setAttribute(\"data-tooltip-suspend\", true);\n ((((fa === t)) && ea.hide()));\n },\n unsuspend: function(fa) {\n fa.removeAttribute(\"data-tooltip-suspend\");\n },\n hide: function() {\n if (t) {\n u.hide();\n t = null;\n while (w.length) {\n w.pop().remove();\n ;\n };\n ;\n }\n ;\n ;\n },\n set: function(fa, ga, ha, ia) {\n if (((ha || ia))) {\n aa(fa, {\n position: ha,\n alignH: ia\n });\n }\n ;\n ;\n if (((ga instanceof o))) {\n if (((fa === t))) {\n ba(fa, ga);\n }\n else fa.setAttribute(\"data-tooltip-uri\", ga);\n ;\n ;\n }\n else {\n if (((typeof ga !== \"string\"))) {\n ga = m.create(\"div\", {\n }, ga);\n fa.setAttribute(\"aria-label\", m.getText(ga));\n }\n else fa.setAttribute(\"aria-label\", ga);\n ;\n ;\n aa(fa, {\n JSBNG__content: ga\n });\n ((((fa === t)) && ea.show(fa)));\n }\n ;\n ;\n },\n show: function(fa) {\n y();\n ea.hide();\n var ga = z(fa);\n if (!ga.JSBNG__content) {\n return;\n }\n ;\n ;\n var ha = 0, ia = 0;\n if (((((ga.position === \"left\")) || ((ga.position === \"right\"))))) {\n x = ((x || k.hasClass(JSBNG__document.body, \"-cx-PUBLIC-hasLitestand__body\")));\n var ja = ((x ? 28 : 20));\n ia = ((((fa.offsetHeight - ja)) / 2));\n }\n else if (((ga.alignH !== \"center\"))) {\n var ka = fa.offsetWidth;\n if (((ka < 18))) {\n ha = ((((((ka - 18)) / 2)) * ((((ga.alignH === \"right\")) ? -1 : 1))));\n }\n ;\n ;\n }\n \n ;\n ;\n u.setContext(fa).setOffsetX(ha).setOffsetY(ia).setPosition(ga.position).setAlignment(ga.alignH);\n if (((typeof ga.JSBNG__content === \"string\"))) {\n k.addClass(u.getRoot(), \"invisible_elem\");\n var la = m.create(\"span\", {\n }, da(ga.JSBNG__content)), ma = m.create(\"div\", {\n className: \"tooltipText\"\n }, la);\n m.setContent(v, ma);\n u.show();\n var na;\n if (ma.getClientRects) {\n var oa = ma.getClientRects()[0];\n if (oa) {\n na = Math.round(((oa.right - oa.left)));\n }\n ;\n ;\n }\n ;\n ;\n if (!na) {\n na = ma.offsetWidth;\n }\n ;\n ;\n if (((na < la.offsetWidth))) {\n k.addClass(ma, \"tooltipWrap\");\n u.updatePosition();\n }\n ;\n ;\n k.removeClass(u.getRoot(), \"invisible_elem\");\n }\n else {\n m.setContent(v, ga.JSBNG__content);\n u.show();\n }\n ;\n ;\n var pa = function(ra) {\n if (!m.contains(t, ra.getTarget())) {\n ea.hide();\n }\n ;\n ;\n };\n w.push(g.listen(JSBNG__document.documentElement, \"mouseover\", pa), g.listen(JSBNG__document.documentElement, \"focusin\", pa));\n var qa = n.getScrollParent(fa);\n if (((qa !== window))) {\n w.push(g.listen(qa, \"JSBNG__scroll\", ea.hide));\n }\n ;\n ;\n w.push(g.listen(fa, \"click\", ea.hide));\n t = fa;\n }\n };\n g.listen(window, \"JSBNG__scroll\", ea.hide);\n e.exports = ea;\n});\n__d(\"SelectorDeprecated\", [\"JSBNG__Event\",\"Arbiter\",\"Button\",\"ContextualLayer\",\"JSBNG__CSS\",\"DataStore\",\"DOM\",\"Focus\",\"HTML\",\"Keys\",\"KeyStatus\",\"MenuDeprecated\",\"Parent\",\"Style\",\"Toggler\",\"Tooltip\",\"Vector\",\"arrayContains\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Arbiter\"), i = b(\"Button\"), j = b(\"ContextualLayer\"), k = b(\"JSBNG__CSS\"), l = b(\"DataStore\"), m = b(\"DOM\"), n = b(\"Focus\"), o = b(\"HTML\"), p = b(\"Keys\"), q = b(\"KeyStatus\"), r = b(\"MenuDeprecated\"), s = b(\"Parent\"), t = b(\"Style\"), u = b(\"Toggler\"), v = b(\"Tooltip\"), w = b(\"Vector\"), x = b(\"arrayContains\"), y = b(\"copyProperties\"), z = b(\"emptyFunction\"), aa, ba, ca = [], da;\n function ea(pa) {\n return s.byClass(pa, \"uiSelector\");\n };\n;\n function fa(pa) {\n return s.byClass(pa, \"uiSelectorButton\");\n };\n;\n function ga() {\n if (!ba) {\n ba = new j({\n position: \"below\"\n }, m.create(\"div\"));\n k.addClass(ba.getRoot(), \"uiSelectorContextualLayer\");\n }\n ;\n ;\n return ba;\n };\n;\n function ha(pa) {\n return m.scry(pa, \"select\")[0];\n };\n;\n function ia(pa) {\n return m.JSBNG__find(pa, \"div.uiSelectorMenuWrapper\");\n };\n;\n function ja() {\n ja = z;\n r.subscribe(\"select\", function(pa, qa) {\n if (((((!aa || !qa)) || ((qa.menu !== oa.getSelectorMenu(aa)))))) {\n return;\n }\n ;\n ;\n var ra = ka(aa), sa = la(qa.JSBNG__item);\n if (sa) {\n var ta = aa, ua = oa.isOptionSelected(qa.JSBNG__item), va = oa.inform(\"select\", {\n selector: ta,\n option: qa.JSBNG__item,\n clone: da\n });\n if (((va === false))) {\n return;\n }\n ;\n ;\n if (((ra || !ua))) {\n oa.setSelected(ta, oa.getOptionValue(qa.JSBNG__item), !ua);\n oa.inform(\"toggle\", {\n selector: ta,\n option: qa.JSBNG__item\n });\n oa.inform(\"change\", {\n selector: ta\n });\n h.inform(\"Form/change\", {\n node: ta\n });\n if (ma(ta)) {\n l.set(ta, \"dirty\", true);\n }\n ;\n ;\n }\n ;\n ;\n }\n ;\n ;\n if (((!ra || !sa))) {\n ((aa && oa.toggle(aa)));\n }\n ;\n ;\n });\n };\n;\n function ka(pa) {\n return !!pa.getAttribute(\"data-multiple\");\n };\n;\n function la(pa) {\n return k.hasClass(pa, \"uiSelectorOption\");\n };\n;\n function ma(pa) {\n return !!pa.getAttribute(\"data-autosubmit\");\n };\n;\n var na = function() {\n na = z;\n var pa = {\n keydown: function(JSBNG__event) {\n var qa = JSBNG__event.getTarget();\n if (m.isInputNode(qa)) {\n return;\n }\n ;\n ;\n switch (g.getKeyCode(JSBNG__event)) {\n case p.DOWN:\n \n case p.SPACE:\n \n case p.UP:\n if (fa(qa)) {\n var ra = ea(qa);\n oa.toggle(ra);\n return false;\n }\n ;\n ;\n break;\n case p.ESC:\n if (aa) {\n var sa = oa.getSelectorButton(aa);\n oa.toggle(aa);\n ((sa && n.set(sa)));\n return false;\n }\n ;\n ;\n break;\n };\n ;\n },\n mouseover: function(JSBNG__event) {\n var qa = s.byAttribute(JSBNG__event.getTarget(), \"ajaxify\");\n if (((qa && k.hasClass(qa, \"uiSelectorButton\")))) {\n oa.loadMenu(ea(qa));\n }\n ;\n ;\n }\n };\n g.listen(JSBNG__document.body, pa);\n };\n u.subscribe([\"show\",\"hide\",], function(pa, qa) {\n var ra = ea(qa.getActive());\n if (ra) {\n na();\n ja();\n var sa = oa.getSelectorButton(ra), ta = oa.getSelectorMenu(ra), ua = ((pa === \"show\"));\n sa.setAttribute(\"aria-expanded\", ((ua ? \"true\" : \"false\")));\n if (ua) {\n aa = ra;\n if (k.hasClass(sa, \"uiButtonDisabled\")) {\n oa.setEnabled(ra, false);\n return false;\n }\n ;\n ;\n ta = ((ta || oa.loadMenu(ra)));\n var va = t.getScrollParent(ra), wa = ((((va !== window)) && ((va !== m.getDocumentScrollElement()))));\n if (((wa || k.hasClass(ra, \"uiSelectorUseLayer\")))) {\n if (wa) {\n ca.push(g.listen(va, \"JSBNG__scroll\", function() {\n qa.hide();\n }));\n }\n ;\n ;\n da = m.create(\"div\", {\n className: ra.className\n });\n k.addClass(da, \"invisible_elem\");\n w.getElementDimensions(ra).setElementDimensions(da);\n m.replace(ra, da);\n var xa = k.hasClass(ra, \"uiSelectorRight\"), ya = k.hasClass(ra, \"uiSelectorBottomUp\");\n ga().setContext(da).setContent(ra).setPosition(((ya ? \"above\" : \"below\"))).setAlignment(((xa ? \"right\" : \"left\"))).show();\n }\n ;\n ;\n r.register(ta);\n if (q.isKeyDown()) {\n var za = r.getCheckedItems(ta);\n if (!za.length) {\n za = r.getEnabledItems(ta);\n }\n ;\n ;\n r.focusItem(za[0]);\n }\n ;\n ;\n }\n else {\n aa = null;\n if (da) {\n while (ca.length) {\n ca.pop().remove();\n ;\n };\n ;\n m.replace(da, ra);\n ga().hide();\n da = null;\n }\n ;\n ;\n ((ta && r.unregister(ta)));\n if (((ma(ra) && l.get(ra, \"dirty\")))) {\n var ab = m.scry(ra, \"input.submitButton\")[0];\n ((ab && ab.click()));\n l.remove(ra, \"dirty\");\n }\n ;\n ;\n }\n ;\n ;\n k.conditionClass(oa.getSelectorButton(ra), \"selected\", ua);\n oa.inform(((ua ? \"open\" : \"close\")), {\n selector: ra,\n clone: da\n });\n }\n ;\n ;\n });\n var oa = y(new h(), {\n attachMenu: function(pa, qa, ra) {\n pa = ea(pa);\n if (pa) {\n ((aa && r.unregister(oa.getSelectorMenu(aa))));\n m.setContent(ia(pa), qa);\n ((aa && r.register(oa.getSelectorMenu(pa))));\n ((da && ga().updatePosition()));\n if (ra) {\n var sa = pa.getAttribute(\"data-name\");\n ((sa && ra.setAttribute(\"JSBNG__name\", sa)));\n if (!ka(pa)) {\n ra.setAttribute(\"multiple\", false);\n }\n ;\n ;\n var ta = ha(pa);\n if (ta) {\n m.replace(ta, ra);\n }\n else m.insertAfter(pa.firstChild, ra);\n ;\n ;\n }\n ;\n ;\n return true;\n }\n ;\n ;\n },\n getOption: function(pa, qa) {\n var ra = oa.getOptions(pa), sa = ra.length;\n while (sa--) {\n if (((qa === oa.getOptionValue(ra[sa])))) {\n return ra[sa];\n }\n ;\n ;\n };\n ;\n return null;\n },\n getOptions: function(pa) {\n var qa = r.getItems(oa.getSelectorMenu(pa));\n return qa.filter(la);\n },\n getEnabledOptions: function(pa) {\n var qa = r.getEnabledItems(oa.getSelectorMenu(pa));\n return qa.filter(la);\n },\n getSelectedOptions: function(pa) {\n return r.getCheckedItems(oa.getSelectorMenu(pa));\n },\n getOptionText: function(pa) {\n return r.getItemLabel(pa);\n },\n getOptionValue: function(pa) {\n var qa = ea(pa), ra = ha(qa), sa = oa.getOptions(qa).indexOf(pa);\n return ((((sa >= 0)) ? ra.options[((sa + 1))].value : \"\"));\n },\n getSelectorButton: function(pa) {\n return m.JSBNG__find(pa, \"a.uiSelectorButton\");\n },\n getSelectorMenu: function(pa) {\n return m.scry(pa, \"div.uiSelectorMenu\")[0];\n },\n getValue: function(pa) {\n var qa = ha(pa);\n if (!qa) {\n return null;\n }\n ;\n ;\n if (!ka(pa)) {\n return qa.value;\n }\n ;\n ;\n var ra = [], sa = qa.options;\n for (var ta = 1, ua = sa.length; ((ta < ua)); ta++) {\n if (sa[ta].selected) {\n ra.push(sa[ta].value);\n }\n ;\n ;\n };\n ;\n return ra;\n },\n isOptionSelected: function(pa) {\n return r.isItemChecked(pa);\n },\n listen: function(pa, qa, ra) {\n return this.subscribe(qa, function(sa, ta) {\n if (((ta.selector === pa))) {\n return ra(ta, sa);\n }\n ;\n ;\n });\n },\n loadMenu: function(pa) {\n var qa = oa.getSelectorMenu(pa);\n if (!qa) {\n var ra = oa.getSelectorButton(pa), sa = ra.getAttribute(\"ajaxify\");\n if (sa) {\n d([\"AsyncRequest\",], function(ua) {\n ua.bootstrap(sa, ra);\n });\n var ta = o(((((((((((((\"\\u003Cdiv class=\\\"uiSelectorMenuWrapper uiToggleFlyout\\\"\\u003E\" + \"\\u003Cdiv class=\\\"uiMenu uiSelectorMenu loading\\\"\\u003E\")) + \"\\u003Cul class=\\\"uiMenuInner\\\"\\u003E\")) + \"\\u003Cli\\u003E\\u003Cspan\\u003E\\u003C/span\\u003E\\u003C/li\\u003E\")) + \"\\u003C/ul\\u003E\")) + \"\\u003C/div\\u003E\")) + \"\\u003C/div\\u003E\")));\n m.appendContent(ra.parentNode, ta);\n qa = oa.getSelectorMenu(pa);\n ra.removeAttribute(\"JSBNG__onmouseover\");\n }\n ;\n ;\n }\n ;\n ;\n return qa;\n },\n setButtonLabel: function(pa, qa) {\n var ra = oa.getSelectorButton(pa), sa = parseInt(ra.getAttribute(\"data-length\"), 10);\n qa = ((((qa || ra.getAttribute(\"data-label\"))) || \"\"));\n i.setLabel(ra, qa);\n if (((typeof qa === \"string\"))) {\n k.conditionClass(ra, \"uiSelectorBigButtonLabel\", ((qa.length > sa)));\n if (((sa && ((qa.length > sa))))) {\n ra.setAttribute(\"title\", qa);\n }\n else ra.removeAttribute(\"title\");\n ;\n ;\n }\n ;\n ;\n },\n setButtonTooltip: function(pa, qa) {\n var ra = oa.getSelectorButton(pa), sa = s.byTag(ra, \"a\");\n ((sa && v.set(sa, ((((qa || ra.getAttribute(\"data-tooltip\"))) || \"\")))));\n },\n updateButtonARIALabel: function(pa, qa) {\n var ra = oa.getSelectorButton(pa), sa = s.byTag(ra, \"a\");\n if (sa) {\n var ta = ra.getAttribute(\"data-ariaprefix\");\n if (ta) {\n ra.setAttribute(\"aria-label\", ((((ta + \": \")) + qa)));\n }\n ;\n ;\n }\n ;\n ;\n },\n setEnabled: function(pa, qa) {\n if (((((!qa && aa)) && ((ea(pa) === aa))))) {\n oa.toggle(pa);\n }\n ;\n ;\n i.setEnabled(oa.getSelectorButton(pa), qa);\n },\n setOptionEnabled: function(pa, qa) {\n r.setItemEnabled(pa, qa);\n },\n setSelected: function(pa, qa, ra) {\n ra = ((ra !== false));\n var sa = oa.getOption(pa, qa);\n if (!sa) {\n return;\n }\n ;\n ;\n var ta = oa.isOptionSelected(sa);\n if (((ra !== ta))) {\n if (((!ka(pa) && !ta))) {\n var ua = oa.getSelectedOptions(pa)[0];\n ((ua && r.toggleItem(ua)));\n }\n ;\n ;\n r.toggleItem(sa);\n }\n ;\n ;\n oa.updateSelector(pa);\n },\n toggle: function(pa) {\n u.toggle(m.scry(ea(pa), \"div.wrap\")[0]);\n },\n updateSelector: function(pa) {\n var qa = oa.getOptions(pa), ra = oa.getSelectedOptions(pa), sa = ha(pa).options, ta = [], ua = [];\n for (var va = 0, wa = qa.length; ((va < wa)); va++) {\n var xa = x(ra, qa[va]);\n sa[((va + 1))].selected = xa;\n if (xa) {\n var ya = oa.getOptionText(qa[va]);\n ta.push(ya);\n ua.push(((qa[va].getAttribute(\"data-tooltip\") || ya)));\n }\n ;\n ;\n };\n ;\n sa[0].selected = !ra.length;\n var za = k.hasClass(pa, \"uiSelectorDynamicLabel\"), ab = k.hasClass(pa, \"uiSelectorDynamicTooltip\");\n if (((za || ab))) {\n var bb = \"\";\n if (ka(pa)) {\n var cb = oa.getSelectorButton(pa);\n bb = ((cb.getAttribute(\"data-delimiter\") || \", \"));\n }\n ;\n ;\n ta = ta.join(bb);\n ua = ua.join(bb);\n if (za) {\n oa.setButtonLabel(pa, ta);\n oa.updateButtonARIALabel(pa, ta);\n }\n ;\n ;\n ((ab && oa.setButtonTooltip(pa, ua)));\n }\n ;\n ;\n }\n });\n e.exports = oa;\n});\n__d(\"SubscriptionsHandler\", [\"JSLogger\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"JSLogger\"), h = b(\"copyProperties\"), i = g.create(\"subscriptions_handler\");\n function j(k) {\n this._name = ((k || \"unnamed\"));\n this._subscriptions = [];\n };\n;\n h(j.prototype, {\n addSubscriptions: function() {\n if (this._subscriptions) {\n Array.prototype.push.apply(this._subscriptions, arguments);\n }\n else {\n i.warn(((this._name + \".subscribe_while_released\")));\n for (var k = 0, l = arguments.length; ((k < l)); k++) {\n this._unsubscribe(arguments[k]);\n ;\n };\n ;\n }\n ;\n ;\n },\n engage: function() {\n this._subscriptions = ((this._subscriptions || []));\n },\n release: function() {\n if (this._subscriptions) {\n this._subscriptions.forEach(this._unsubscribe.bind(this));\n }\n ;\n ;\n this._subscriptions = null;\n },\n _unsubscribe: function(k) {\n if (k.remove) {\n k.remove();\n }\n else if (k.reset) {\n k.reset();\n }\n else if (k.unsubscribe) {\n k.unsubscribe();\n }\n else i.error(((this._name + \".invalid\")), k);\n \n \n ;\n ;\n }\n });\n e.exports = j;\n});\n__d(\"Typeahead\", [\"ArbiterMixin\",\"BehaviorsMixin\",\"DOM\",\"DataStore\",\"JSBNG__Event\",\"Parent\",\"Run\",\"copyProperties\",\"emptyFunction\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"BehaviorsMixin\"), i = b(\"DOM\"), j = b(\"DataStore\"), k = b(\"JSBNG__Event\"), l = b(\"Parent\"), m = b(\"Run\"), n = b(\"copyProperties\"), o = b(\"emptyFunction\"), p = b(\"ge\");\n function q(r, s, t, u) {\n this.args = {\n data: r,\n view: s,\n core: t\n };\n j.set(u, \"Typeahead\", this);\n this.element = u;\n };\n;\n q.getInstance = function(r) {\n var s = l.byClass(r, \"uiTypeahead\");\n return ((s ? j.get(s, \"Typeahead\") : null));\n };\n n(q.prototype, g, h, {\n init: function(r) {\n this.init = o;\n this.getCore();\n this.getView().setAccessibilityControlElement(this.getCore().getElement());\n this.proxyEvents();\n this.initBehaviors(((r || [])));\n this.inform(\"init\", this);\n this.data.bootstrap();\n this.core.JSBNG__focus();\n },\n getData: function() {\n if (!this.data) {\n var r = this.args.data;\n this.data = r;\n this.data.init();\n }\n ;\n ;\n return this.data;\n },\n getView: function() {\n if (!this.view) {\n var r = this.args.view, s = ((r.node || p(r.node_id)));\n if (!s) {\n s = i.create(\"div\", {\n className: \"uiTypeaheadView\"\n });\n i.appendContent(this.element, s);\n }\n ;\n ;\n if (((typeof r.ctor === \"string\"))) {\n this.view = new window[r.ctor](s, ((r.options || {\n })));\n }\n else this.view = new r.ctor(s, ((r.options || {\n })));\n ;\n ;\n this.view.init();\n this.view.setTypeahead(this.element);\n }\n ;\n ;\n return this.view;\n },\n getCore: function() {\n if (!this.core) {\n var r = this.args.core;\n if (((typeof r.ctor === \"string\"))) {\n this.core = new window[r.ctor](((r.options || {\n })));\n }\n else this.core = new r.ctor(((r.options || {\n })));\n ;\n ;\n this.core.init(this.getData(), this.getView(), this.getElement());\n }\n ;\n ;\n return this.core;\n },\n getElement: function() {\n return this.element;\n },\n swapData: function(r) {\n var s = this.core;\n this.data = this.args.data = r;\n r.init();\n if (s) {\n s.data = r;\n s.initData();\n s.reset();\n }\n ;\n ;\n r.bootstrap();\n return r;\n },\n proxyEvents: function() {\n [this.data,this.view,this.core,].forEach(function(r) {\n r.subscribe(r.events, this.inform.bind(this));\n }, this);\n },\n initBehaviors: function(r) {\n r.forEach(function(s) {\n if (((typeof s === \"string\"))) {\n if (((a.TypeaheadBehaviors && a.TypeaheadBehaviors[s]))) {\n a.TypeaheadBehaviors[s](this);\n }\n else m.onLoad(function() {\n if (a.TypeaheadBehaviors) {\n ((a.TypeaheadBehaviors[s] || o))(this);\n }\n ;\n ;\n }.bind(this));\n ;\n ;\n }\n else this.enableBehavior(s);\n ;\n ;\n }, this);\n }\n });\n q.initNow = function(r, s, t) {\n if (t) {\n t.init(r);\n }\n ;\n ;\n r.init(s);\n };\n q.init = function(r, s, t, u) {\n if (!i.isNodeOfType(r, [\"input\",\"textarea\",])) {\n r = ((i.scry(r, \"input\")[0] || i.scry(r, \"textarea\")[0]));\n }\n ;\n ;\n var v = false;\n try {\n v = ((JSBNG__document.activeElement === r));\n } catch (w) {\n \n };\n ;\n if (v) {\n q.initNow(s, t, u);\n }\n else var x = k.listen(r, \"JSBNG__focus\", function() {\n q.initNow(s, t, u);\n x.remove();\n })\n ;\n };\n e.exports = q;\n});\n__d(\"StickyPlaceholderInput\", [\"JSBNG__Event\",\"JSBNG__CSS\",\"DOM\",\"Input\",\"Parent\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"JSBNG__CSS\"), i = b(\"DOM\"), j = b(\"Input\"), k = b(\"Parent\"), l = b(\"emptyFunction\");\n function m(q) {\n return k.byClass(q, \"uiStickyPlaceholderInput\");\n };\n;\n function n(q) {\n return i.scry(q, \".placeholder\")[0];\n };\n;\n function o(q) {\n q = ((q || window.JSBNG__event));\n var r = ((q.target || q.srcElement));\n if (i.isNodeOfType(r, [\"input\",\"textarea\",])) {\n var s = m(r);\n if (s) {\n (function() {\n h.conditionClass(s, \"uiStickyPlaceholderEmptyInput\", !r.value.length);\n }).defer();\n }\n ;\n ;\n }\n ;\n ;\n };\n;\n var p = {\n init: function() {\n p.init = l;\n g.listen(JSBNG__document.documentElement, {\n keydown: o,\n paste: o,\n focusout: o\n });\n },\n registerInput: function(q) {\n p.init();\n var r = ((q.getAttribute(\"placeholder\") || \"\"));\n if (r.length) {\n if (((JSBNG__document.activeElement === q))) {\n var s = g.listen(q, \"JSBNG__blur\", function() {\n p.manipulateInput(q, r);\n s.remove();\n });\n }\n else p.manipulateInput(q, r);\n ;\n }\n ;\n ;\n },\n manipulateInput: function(q, r) {\n var s = i.create(\"div\", {\n className: \"placeholder\",\n \"aria-hidden\": \"true\"\n }, r), t = i.create(\"div\", {\n className: \"uiStickyPlaceholderInput\"\n }, s);\n if (i.isNodeOfType(q, \"textarea\")) {\n h.addClass(t, \"uiStickyPlaceholderTextarea\");\n }\n ;\n ;\n g.listen(s, \"click\", function() {\n q.JSBNG__focus();\n });\n if (((q.value === r))) {\n q.value = \"\";\n }\n ;\n ;\n h.removeClass(q, \"DOMControl_placeholder\");\n q.setAttribute(\"placeholder\", \"\");\n i.replace(q, t);\n i.appendContent(t, q);\n h.conditionClass(t, \"uiStickyPlaceholderEmptyInput\", !q.value.length);\n },\n setPlaceholderText: function(q, r) {\n var s = m(q);\n if (!s) {\n j.setPlaceholder(q, r);\n }\n else {\n var t = n(s);\n ((t && i.setContent(t, r)));\n }\n ;\n ;\n },\n getPlaceholderText: function(q) {\n var r = m(q), s = n(r);\n return ((s && i.getText(s)));\n },\n update: function(q) {\n var r = m(q);\n if (r) {\n h.conditionClass(r, \"uiStickyPlaceholderEmptyInput\", !q.value.length);\n }\n ;\n ;\n },\n getVisibleText: function(q) {\n var r = m(q);\n if (h.hasClass(r, \"uiStickyPlaceholderEmptyInput\")) {\n var s = n(r);\n return ((s && i.getText(s)));\n }\n else return q.value\n ;\n }\n };\n e.exports = p;\n});\n__d(\"TypeaheadCore\", [\"JSBNG__Event\",\"Arbiter\",\"ArbiterMixin\",\"JSBNG__CSS\",\"DOM\",\"Focus\",\"Input\",\"InputSelection\",\"Keys\",\"StickyPlaceholderInput\",\"UserAgent\",\"bind\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Arbiter\"), i = b(\"ArbiterMixin\"), j = b(\"JSBNG__CSS\"), k = b(\"DOM\"), l = b(\"Focus\"), m = b(\"Input\"), n = b(\"InputSelection\"), o = b(\"Keys\"), p = b(\"StickyPlaceholderInput\"), q = b(\"UserAgent\"), r = b(\"bind\"), s = b(\"copyProperties\"), t = b(\"emptyFunction\");\n function u(v) {\n s(this, v);\n };\n;\n s(u.prototype, i, {\n events: [\"JSBNG__blur\",\"JSBNG__focus\",\"click\",\"unselect\",\"loading\",],\n keepFocused: true,\n resetOnSelect: false,\n resetOnKeyup: true,\n setValueOnSelect: false,\n queryTimeout: 250,\n preventFocusChangeOnTab: false,\n init: function(v, w, x) {\n this.init = t;\n this.data = v;\n this.view = w;\n this.root = x;\n this.initInput();\n this.inputWrap = k.JSBNG__find(x, \"div.wrap\");\n this.hiddenInput = k.JSBNG__find(x, \"input.hiddenInput\");\n this.value = \"\";\n this.nextQuery = null;\n this.selectedText = null;\n if (((this.setValueOnSelect && j.hasClass(this.inputWrap, \"selected\")))) {\n this.selectedText = this.getValue();\n }\n ;\n ;\n this.initView();\n this.initData();\n this.initEvents();\n this.initToggle();\n this._exclusions = [];\n },\n initInput: function() {\n this.element = k.JSBNG__find(this.root, \".textInput\");\n var v = k.scry(this.element, \"input\")[0];\n if (v) {\n this.element = v;\n }\n ;\n ;\n },\n initView: function() {\n this.view.subscribe(\"highlight\", l.set.curry(this.element));\n this.view.subscribe(\"select\", function(v, w) {\n this.select(w.selected);\n }.bind(this));\n this.view.subscribe(\"afterSelect\", function() {\n this.afterSelect();\n }.bind(this));\n },\n initData: function() {\n this.data.subscribe(\"respond\", function(v, w) {\n if (((w.forceDisplay || ((((w.value == this.getValue())) && !this.element.disabled))))) {\n this.view.render(w.value, w.results, w.isAsync);\n }\n ;\n ;\n }.bind(this));\n this.data.subscribe(\"activity\", function(v, w) {\n this.fetching = w.activity;\n if (!this.fetching) {\n ((this.nextQuery && this.performQuery()));\n }\n ;\n ;\n if (((this.loading != this.fetching))) {\n this.loading = this.fetching;\n this.inform(\"loading\", {\n loading: this.loading\n });\n }\n ;\n ;\n }.bind(this));\n },\n initEvents: function() {\n g.listen(this.view.getElement(), {\n mouseup: this.viewMouseup.bind(this),\n mousedown: this.viewMousedown.bind(this)\n });\n var v = {\n JSBNG__blur: r(this, \"JSBNG__blur\"),\n JSBNG__focus: r(this, \"JSBNG__focus\"),\n click: r(this, \"click\"),\n keyup: r(this, \"keyup\"),\n keydown: r(this, \"keydown\")\n };\n if (q.firefox()) {\n v.text = v.keyup;\n }\n ;\n ;\n if (((q.firefox() < 4))) {\n v.keypress = v.keydown;\n delete v.keydown;\n }\n ;\n ;\n g.listen(this.element, v);\n g.listen(this.element, \"keypress\", r(this, \"keypress\"));\n },\n initToggle: function() {\n this.subscribe(\"JSBNG__blur\", this.view.hide.bind(this.view));\n this.subscribe(\"JSBNG__focus\", this.view.show.bind(this.view));\n },\n viewMousedown: function() {\n this.selecting = true;\n },\n viewMouseup: function() {\n this.selecting = false;\n },\n JSBNG__blur: function() {\n if (this.selecting) {\n this.selecting = false;\n return;\n }\n ;\n ;\n this.inform(\"JSBNG__blur\");\n },\n click: function() {\n var v = n.get(this.element);\n if (((v.start == v.end))) {\n this.element.select();\n }\n ;\n ;\n this.inform(\"click\");\n },\n JSBNG__focus: function() {\n this.checkValue();\n this.inform(\"JSBNG__focus\");\n },\n keyup: function() {\n if (((this.resetOnKeyup && !this.getValue()))) {\n this.view.reset();\n }\n ;\n ;\n this.checkValue();\n },\n keydown: function(JSBNG__event) {\n if (((!this.view.isVisible() || this.view.isEmpty()))) {\n this.checkValue.bind(this).defer();\n return;\n }\n ;\n ;\n switch (g.getKeyCode(JSBNG__event)) {\n case o.TAB:\n this.handleTab(JSBNG__event);\n return;\n case o.UP:\n this.view.prev();\n break;\n case o.DOWN:\n this.view.next();\n break;\n case o.ESC:\n this.view.reset();\n break;\n default:\n this.checkValue.bind(this).defer();\n return;\n };\n ;\n JSBNG__event.kill();\n },\n keypress: function(JSBNG__event) {\n if (((this.view.JSBNG__getSelection() && ((g.getKeyCode(JSBNG__event) == o.RETURN))))) {\n this.view.select();\n JSBNG__event.kill();\n }\n ;\n ;\n },\n handleTab: function(JSBNG__event) {\n if (this.preventFocusChangeOnTab) {\n if (this.view.JSBNG__getSelection()) {\n JSBNG__event.kill();\n }\n else JSBNG__event.prevent();\n ;\n }\n ;\n ;\n this.view.select();\n },\n select: function(v) {\n if (((v && this.setValueOnSelect))) {\n this.setValue(v.text);\n this.setHiddenValue(v.uid);\n this.selectedText = v.text;\n j.addClass(this.inputWrap, \"selected\");\n }\n ;\n ;\n },\n afterSelect: function() {\n ((this.keepFocused ? l.set(this.element) : this.element.JSBNG__blur()));\n ((this.resetOnSelect ? this.reset() : this.view.reset()));\n },\n unselect: function() {\n if (this.setValueOnSelect) {\n this.selectedText = null;\n j.removeClass(this.inputWrap, \"selected\");\n }\n ;\n ;\n this.setHiddenValue();\n this.inform(\"unselect\", this);\n },\n setEnabled: function(v) {\n var w = ((v === false));\n this.element.disabled = w;\n j.conditionClass(this.root, \"uiTypeaheadDisabled\", w);\n },\n reset: function() {\n this.unselect();\n this.setValue();\n ((!this.keepFocused && m.reset(this.element)));\n this.view.reset();\n this.inform(\"reset\");\n },\n getElement: function() {\n return this.element;\n },\n setExclusions: function(v) {\n this._exclusions = v;\n },\n getExclusions: function() {\n return this._exclusions;\n },\n setValue: function(v) {\n this.value = this.nextQuery = ((v || \"\"));\n m.setValue(this.element, this.value);\n p.update(this.element);\n },\n setHiddenValue: function(v) {\n this.hiddenInput.value = ((((v || ((v === 0)))) ? v : \"\"));\n h.inform(\"Form/change\", {\n node: this.hiddenInput\n });\n },\n getValue: function() {\n return m.getValue(this.element);\n },\n getHiddenValue: function() {\n return ((this.hiddenInput.value || \"\"));\n },\n checkValue: function() {\n var v = this.getValue();\n if (((v == this.value))) {\n return;\n }\n ;\n ;\n if (((this.selectedText && ((this.selectedText != v))))) {\n this.unselect();\n }\n ;\n ;\n var w = JSBNG__Date.now(), x = ((w - this.time));\n this.time = w;\n this.value = this.nextQuery = v;\n this.performQuery(x);\n },\n performQuery: function(v) {\n if (this.selectedText) {\n return;\n }\n ;\n ;\n v = ((v || 0));\n if (((this.fetching && ((v < this.queryTimeout))))) {\n this.data.query(this.nextQuery, true, this._exclusions, v);\n }\n else {\n this.data.query(this.nextQuery, false, this._exclusions, v);\n this.nextQuery = null;\n }\n ;\n ;\n }\n });\n e.exports = u;\n});\n__d(\"reportData\", [\"EagleEye\",\"userAction\",], function(a, b, c, d, e, f) {\n var g = b(\"EagleEye\"), h = b(\"userAction\");\n function i(j, k) {\n k = ((k || {\n }));\n var l = {\n ft: ((k.ft || {\n })),\n gt: ((k.gt || {\n }))\n }, m = \"-\", n = a.ArbiterMonitor, o = (((!!n) ? n.getActFields() : [])), p = (((!n) ? \"r\" : \"a\")), q = [JSBNG__Date.now(),h.getCurrentUECount(),m,j,m,m,p,((a.URI ? a.URI.getRequestURI(true, true).getUnqualifiedURI().toString() : ((((JSBNG__location.pathname + JSBNG__location.search)) + JSBNG__location.hash)))),l,0,0,0,0,].concat(o);\n g.log(\"act\", q);\n };\n;\n e.exports = i;\n});\n__d(\"TimelineSection\", [\"Arbiter\",\"DOMScroll\",\"DoublyLinkedListMap\",\"Run\",\"TidyArbiterMixin\",\"copyProperties\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"DOMScroll\"), i = b(\"DoublyLinkedListMap\"), j = b(\"Run\"), k = b(\"TidyArbiterMixin\"), l = b(\"copyProperties\"), m = b(\"ge\"), n = null;\n function o() {\n n = null;\n };\n;\n function p(q, r, s) {\n this.id = q;\n this.label = s;\n this.nodeID = r;\n this._parentSection = null;\n this.childSections = new i();\n this._isLoaded = false;\n p.inform.bind(p, ((\"sectionInitialized/\" + q)), {\n section: this\n }, g.BEHAVIOR_STATE).defer();\n };\n;\n l(p, k, {\n callWithSection: function(q, r) {\n this.subscribe(((\"sectionInitialized/\" + q)), function(s, t) {\n r(t.section);\n });\n },\n setActiveSectionID: function(q) {\n ((!n && j.onLeave(o)));\n n = q;\n }\n });\n l(p.prototype, {\n appendSection: function(q) {\n this.childSections.append(q.id, q);\n q._parentSection = this;\n },\n freeze: function() {\n this.freezeChildren();\n },\n freezeChildren: function() {\n var q = this.childSections.getHead();\n while (q) {\n ((!q.isActive() && q.freeze()));\n q = q.getNext();\n };\n ;\n },\n getNext: function() {\n return ((this._parentSection && this._parentSection.childSections.getNext(this.id)));\n },\n getPrev: function() {\n return ((this._parentSection && this._parentSection.childSections.getPrev(this.id)));\n },\n isActive: function() {\n var q = this;\n while (q) {\n if (((q.id === n))) {\n return true;\n }\n ;\n ;\n q = q._parentSection;\n };\n ;\n return false;\n },\n isLoaded: function() {\n return this._isLoaded;\n },\n setIsLoaded: function(q) {\n this._isLoaded = q;\n return this;\n },\n JSBNG__scrollTo: function() {\n if (!m(this.nodeID)) {\n return;\n }\n ;\n ;\n h.JSBNG__scrollTo(this.getNode(), true, false, false, h.JSBNG__scrollTo.bind(this).curry(this.getNode(), 0));\n },\n thaw: function() {\n this.thawChildren();\n },\n thawChildren: function() {\n var q = this.childSections.getHead();\n while (q) {\n q.thaw();\n q = q.getNext();\n };\n ;\n }\n });\n e.exports = p;\n});\n__d(\"TypeaheadBestName\", [\"TokenizeUtil\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"TokenizeUtil\"), h = b(\"copyProperties\");\n function i(j) {\n this._typeahead = j;\n };\n;\n i.prototype.enable = function() {\n var j = this._typeahead.getView();\n this._subscription = j.subscribe(\"beforeRender\", function(k, l) {\n var m = l.value;\n for (var n = 0; ((n < l.results.length)); ++n) {\n var o = l.results[n];\n if (((o.alternate_names == null))) {\n continue;\n }\n ;\n ;\n if (g.isQueryMatch(m, o.default_name)) {\n o.text = o.default_name;\n return;\n }\n ;\n ;\n for (var p = 0; ((p < o.alternate_names.length)); p++) {\n if (g.isQueryMatch(m, o.alternate_names[p])) {\n o.text = o.alternate_names[p];\n return;\n }\n ;\n ;\n };\n ;\n o.text = o.default_name;\n };\n ;\n });\n };\n i.prototype.disable = function() {\n this._typeahead.getView().unsubscribe(this._subscription);\n this._subscription = null;\n };\n h(i.prototype, {\n _subscription: null\n });\n e.exports = i;\n});\n__d(\"legacy:BestNameTypeaheadBehavior\", [\"TypeaheadBestName\",], function(a, b, c, d) {\n var e = b(\"TypeaheadBestName\");\n if (!a.TypeaheadBehaviors) {\n a.TypeaheadBehaviors = {\n };\n }\n;\n;\n a.TypeaheadBehaviors.buildBestAvailableNames = function(f) {\n f.enableBehavior(e);\n };\n}, 3);\n__d(\"UIIntentionalStreamMessage\", [], function(a, b, c, d, e, f) {\n var g = {\n SET_AUTO_INSERT: \"UIIntentionalStream/setAutoInsert\",\n UPDATE_STREAM: \"UIIntentionalStreamRefresh/updateStream\",\n REFRESH_STREAM: \"UIIntentionalStreamRefresh/refreshStream\",\n UPDATE_AUTOREFRESH_CONFIG: \"UIIntentionalStream/updateAutoRefreshConfig\",\n UPDATE_HTML_CONTENT: \"UIIntentionalStream/updateHtmlContent\",\n UPDATE_LAST_REFRESH_TIME: \"UIIntentionalStream/updateLastRefreshTime\",\n INSERT_STORIES: \"UIIntentionalStream/updateLastRefreshTime\",\n UNLOAD: \"UIIntentionalStream/unload\"\n };\n e.exports = g;\n});\n__d(\"AccessibleLayer\", [\"JSBNG__Event\",\"DOM\",\"Focus\",\"copyProperties\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"DOM\"), i = b(\"Focus\"), j = b(\"copyProperties\"), k = b(\"tx\");\n function l(m) {\n this._layer = m;\n };\n;\n j(l.prototype, {\n enable: function() {\n this._afterShowSubscription = this._layer.subscribe(\"aftershow\", this._onAfterShow.bind(this));\n },\n disable: function() {\n ((this._listener && this._listener.remove()));\n this._afterShowSubscription.unsubscribe();\n this._listener = this._afterShowSubscription = null;\n },\n _closeListener: function(JSBNG__event) {\n var m = this._layer.getCausalElement();\n if (m) {\n if (((m.tabIndex == -1))) {\n m.tabIndex = 0;\n i.setWithoutOutline(m);\n }\n else i.set(m);\n ;\n }\n ;\n ;\n this._layer.hide();\n },\n _onAfterShow: function() {\n var m = this._layer.getContentRoot();\n if (h.scry(m, \".layer_close_elem\")[0]) {\n return;\n }\n ;\n ;\n var n = h.create(\"a\", {\n className: \"accessible_elem layer_close_elem\",\n href: \"#\"\n }, [\"Close popup and return\",]);\n h.appendContent(m, n);\n this._listener = g.listen(n, \"click\", this._closeListener.bind(this));\n }\n });\n e.exports = l;\n});\n__d(\"LayerDestroyOnHide\", [\"function-extensions\",\"copyProperties\",\"shield\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"copyProperties\"), h = b(\"shield\");\n function i(j) {\n this._layer = j;\n };\n;\n g(i.prototype, {\n _subscription: null,\n enable: function() {\n this._subscription = this._layer.subscribe(\"hide\", h(Function.prototype.defer, this._layer.destroy.bind(this._layer)));\n },\n disable: function() {\n if (this._subscription) {\n this._subscription.unsubscribe();\n this._subscription = null;\n }\n ;\n ;\n }\n });\n e.exports = i;\n});\n__d(\"LayerFadeOnHide\", [\"Animation\",\"Layer\",\"Style\",\"UserAgent\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"Layer\"), i = b(\"Style\"), j = b(\"UserAgent\"), k = b(\"copyProperties\");\n function l(m) {\n this._layer = m;\n };\n;\n k(l.prototype, {\n _subscription: null,\n enable: function() {\n if (((j.ie() < 9))) {\n return;\n }\n ;\n ;\n this._subscription = this._layer.subscribe(\"starthide\", this._handleStartHide.bind(this));\n },\n disable: function() {\n if (this._subscription) {\n this._subscription.unsubscribe();\n this._subscription = null;\n }\n ;\n ;\n },\n _handleStartHide: function() {\n var m = true, n = h.subscribe(\"show\", function() {\n n.unsubscribe();\n m = false;\n });\n (function() {\n n.unsubscribe();\n n = null;\n if (m) {\n this._animate();\n }\n else this._layer.finishHide();\n ;\n ;\n }).bind(this).defer();\n return false;\n },\n _animate: function() {\n new g(this._layer.getRoot()).from(\"opacity\", 1).to(\"opacity\", 0).duration(150).ondone(this._finish.bind(this)).go();\n },\n _finish: function() {\n i.set(this._layer.getRoot(), \"opacity\", \"\");\n this._layer.finishHide();\n }\n });\n e.exports = l;\n});\n__d(\"LayerHideOnBlur\", [\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\");\n function h(i) {\n this._layer = i;\n };\n;\n g(h.prototype, {\n _subscriptions: null,\n _onBlur: null,\n enable: function() {\n this._subscriptions = [this._layer.subscribe(\"show\", this._attach.bind(this)),this._layer.subscribe(\"hide\", this._detach.bind(this)),];\n if (this._layer.isShown()) {\n this._attach();\n }\n ;\n ;\n },\n disable: function() {\n this._detach();\n while (this._subscriptions.length) {\n this._subscriptions.pop().unsubscribe();\n ;\n };\n ;\n this._subscriptions = null;\n },\n _detach: function() {\n ((this._onBlur && this._onBlur.unsubscribe()));\n this._onBlur = null;\n },\n _attach: function() {\n this._onBlur = this._layer.subscribe(\"JSBNG__blur\", function() {\n this._layer.hide();\n return false;\n }.bind(this));\n }\n });\n e.exports = h;\n});\n__d(\"LayerHideOnEscape\", [\"JSBNG__Event\",\"copyProperties\",\"Keys\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"copyProperties\"), i = b(\"Keys\");\n function j(k) {\n this._layer = k;\n };\n;\n h(j.prototype, {\n _subscription: null,\n enable: function() {\n this._subscription = this._layer.subscribe(\"key\", this._handle.bind(this));\n },\n disable: function() {\n this._subscription.unsubscribe();\n this._subscription = null;\n },\n _handle: function(k, JSBNG__event) {\n if (((g.getKeyCode(JSBNG__event) === i.ESC))) {\n this._layer.hide();\n return false;\n }\n ;\n ;\n }\n });\n e.exports = j;\n});\n__d(\"LayerMouseHooks\", [\"JSBNG__Event\",\"function-extensions\",\"Arbiter\",\"ContextualThing\",\"Layer\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\");\n b(\"function-extensions\");\n var h = b(\"Arbiter\"), i = b(\"ContextualThing\"), j = b(\"Layer\"), k = b(\"copyProperties\"), l = new h();\n function m(n) {\n this._layer = n;\n this._subscriptions = [];\n this._currentlyActive = false;\n };\n;\n k(m.prototype, {\n enable: function() {\n this._subscriptions = [l.subscribe(\"mouseenter\", this._handleActive.bind(this)),l.subscribe(\"mouseleave\", this._handleInactive.bind(this)),this._layer.subscribe(\"hide\", function() {\n this._currentlyActive = false;\n }.bind(this)),];\n },\n disable: function() {\n while (this._subscriptions.length) {\n this._subscriptions.pop().unsubscribe();\n ;\n };\n ;\n this._subscriptions = [];\n this._currentlyActive = false;\n },\n _handleActive: function(n, o) {\n if (((!this._currentlyActive && this._isNodeWithinStack(o)))) {\n this._layer.inform(\"mouseenter\");\n this._currentlyActive = true;\n }\n ;\n ;\n },\n _handleInactive: function(n, o) {\n if (this._currentlyActive) {\n if (((!o || !this._isNodeWithinStack(o)))) {\n this._layer.inform(\"mouseleave\");\n this._currentlyActive = false;\n }\n ;\n }\n ;\n ;\n },\n _isNodeWithinStack: function(n) {\n return i.containsIncludingLayers(this._layer.getContentRoot(), n);\n }\n });\n j.subscribe(\"show\", function(n, o) {\n var p = o.getContentRoot(), q = [g.listen(p, \"mouseenter\", function() {\n l.inform(\"mouseenter\", p);\n }),g.listen(p, \"mouseleave\", function(s) {\n l.inform(\"mouseleave\", s.getRelatedTarget());\n }),], r = o.subscribe(\"hide\", function() {\n while (q.length) {\n q.pop().remove();\n ;\n };\n ;\n r.unsubscribe();\n q = r = null;\n });\n });\n e.exports = m;\n});\n__d(\"ContextualDialogArrow\", [\"JSXDOM\",\"JSBNG__CSS\",\"DOM\",\"Locale\",\"Style\",\"Vector\",\"copyProperties\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSXDOM\"), h = b(\"JSBNG__CSS\"), i = b(\"DOM\"), j = b(\"Locale\"), k = b(\"Style\"), l = b(\"Vector\"), m = b(\"copyProperties\"), n = b(\"cx\"), o = {\n bottom: \"-cx-PUBLIC-abstractContextualDialog__arrowbottom\",\n JSBNG__top: \"-cx-PUBLIC-abstractContextualDialog__arrowtop\",\n right: \"-cx-PUBLIC-abstractContextualDialog__arrowright\",\n left: \"-cx-PUBLIC-abstractContextualDialog__arrowleft\"\n }, p = {\n above: \"bottom\",\n below: \"JSBNG__top\",\n left: \"right\",\n right: \"left\"\n };\n function q(r) {\n this._layer = r;\n };\n;\n m(q.prototype, {\n _subscription: null,\n _arrow: null,\n enable: function() {\n this._subscription = this._layer.subscribe([\"adjust\",\"reposition\",], this._handle.bind(this));\n },\n disable: function() {\n this._subscription.unsubscribe();\n this._subscription = null;\n },\n _handle: function(r, s) {\n if (((r === \"adjust\"))) {\n this._repositionArrow(s);\n }\n else this._repositionRoot(s);\n ;\n ;\n },\n _repositionRoot: function(r) {\n var s = r.getAlignment();\n if (((s == \"center\"))) {\n return;\n }\n ;\n ;\n var t = this._layer.getRoot(), u = this._layer.getContext(), v = r.isVertical(), w = this._layer.getArrowDimensions(), x = w.offset, y = w.length, z = l.getElementDimensions(u), aa = ((v ? z.x : z.y));\n if (((aa >= ((y + ((x * 2))))))) {\n return;\n }\n ;\n ;\n var ba = ((((y / 2)) + x)), ca = ((aa / 2)), da = parseInt(((ba - ca)), 10);\n if (v) {\n if (((s == \"left\"))) {\n var ea = parseInt(k.get(t, \"left\"), 10);\n k.set(t, \"left\", ((((ea - da)) + \"px\")));\n }\n else {\n var fa = parseInt(k.get(t, \"right\"), 10);\n k.set(t, \"right\", ((((fa - da)) + \"px\")));\n }\n ;\n ;\n }\n else {\n var ga = parseInt(k.get(t, \"JSBNG__top\"), 10);\n k.set(t, \"JSBNG__top\", ((((ga - da)) + \"px\")));\n }\n ;\n ;\n },\n _repositionArrow: function(r) {\n var s = this._layer.getContentRoot(), t = r.getPosition(), u = p[t];\n {\n var fin107keys = ((window.top.JSBNG_Replay.forInKeys)((o))), fin107i = (0);\n var v;\n for (; (fin107i < fin107keys.length); (fin107i++)) {\n ((v) = (fin107keys[fin107i]));\n {\n h.conditionClass(s, o[v], ((u === v)));\n ;\n };\n };\n };\n ;\n if (((t == \"none\"))) {\n return;\n }\n ;\n ;\n if (!this._arrow) {\n this._arrow = g.i({\n className: \"-cx-PUBLIC-abstractContextualDialog__arrow\"\n });\n i.appendContent(s, this._arrow);\n }\n ;\n ;\n h.conditionClass(s, \"-cx-PRIVATE-uiContextualDialog__withfooter\", this._layer.getFooter());\n k.set(this._arrow, \"JSBNG__top\", \"\");\n k.set(this._arrow, \"left\", \"\");\n k.set(this._arrow, \"right\", \"\");\n k.set(this._arrow, \"margin\", \"\");\n var w = q.getOffsetPercent(r), x = q.getOffset(r, w, this._layer), y = q.getOffsetSide(r);\n k.set(this._arrow, y, ((w + \"%\")));\n k.set(this._arrow, ((\"margin-\" + y)), ((x + \"px\")));\n }\n });\n m(q, {\n getOffsetPercent: function(r) {\n var s = r.getAlignment(), t = r.getPosition();\n if (((((t == \"above\")) || ((t == \"below\"))))) {\n if (((s == \"center\"))) {\n return 50;\n }\n else if (((s == \"right\"))) {\n return 100;\n }\n \n ;\n }\n ;\n ;\n return 0;\n },\n getOffsetSide: function(r) {\n var s = r.isVertical();\n return ((s ? ((j.isRTL() ? \"right\" : \"left\")) : \"JSBNG__top\"));\n },\n getOffset: function(r, s, t) {\n var u = t.getArrowDimensions(), v = u.offset, w = u.length, x = r.getAlignment(), y = ((((x == \"center\")) ? 0 : v));\n y += ((((w * s)) / 100));\n if (((x != \"left\"))) {\n y *= -1;\n }\n ;\n ;\n return y;\n }\n });\n e.exports = q;\n});\n__d(\"ContextualDialogFitInViewport\", [\"JSBNG__Event\",\"ContextualLayerDimensions\",\"Style\",\"Vector\",\"copyProperties\",\"throttle\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"ContextualLayerDimensions\"), i = b(\"Style\"), j = b(\"Vector\"), k = b(\"copyProperties\"), l = b(\"throttle\");\n function m(n) {\n this._layer = n;\n this._listeners = [];\n };\n;\n k(m.prototype, {\n _subscription: null,\n _minimumTop: null,\n enable: function() {\n var n = this._layer.getArrowDimensions();\n this._arrowOffset = n.offset;\n var o = n.length;\n this._arrowBuffer = ((this._arrowOffset + o));\n this._subscription = this._layer.subscribe([\"show\",\"hide\",\"reposition\",], function(p, q) {\n if (((p == \"reposition\"))) {\n this._calculateMinimumTop(q);\n }\n else if (((p == \"show\"))) {\n this._attachScroll();\n this._adjustForScroll();\n }\n else this._detachScroll();\n \n ;\n ;\n }.bind(this));\n if (this._layer.isShown()) {\n this._attachScroll();\n }\n ;\n ;\n },\n disable: function() {\n if (this._layer.isShown()) {\n this._detachScroll();\n }\n ;\n ;\n this._subscription.unsubscribe();\n this._subscription = null;\n },\n _attachScroll: function() {\n var n = l(this._adjustForScroll.bind(this)), o = ((this._layer.getContextScrollParent() || window));\n this._listeners = [g.listen(o, \"JSBNG__scroll\", n),g.listen(window, \"resize\", n),];\n },\n _detachScroll: function() {\n while (this._listeners.length) {\n this._listeners.pop().remove();\n ;\n };\n ;\n this._listeners = [];\n },\n _getContentHeight: function() {\n return j.getElementDimensions(this._layer._contentWrapper).y;\n },\n _getContextY: function() {\n return j.getElementPosition(this._layer.getContext()).y;\n },\n _calculateMinimumTop: function(n) {\n if (n.isVertical()) {\n return;\n }\n ;\n ;\n this._minimumTop = ((((this._getContextY() - ((this._getContentHeight() - this._arrowBuffer)))) + n.getOffsetY()));\n },\n _adjustForScroll: function() {\n if (this._layer.isFixed()) {\n return;\n }\n ;\n ;\n var n = this._layer._getOrientation();\n if (n.isVertical()) {\n return;\n }\n ;\n ;\n var o = h.getViewportRect(this._layer), p = ((o.b - this._minimumTop));\n if (((p < 0))) {\n return;\n }\n ;\n ;\n var q = this._getContentHeight(), r = ((q - ((this._arrowBuffer + this._arrowOffset)))), s = Math.max(0, Math.min(r, ((r - ((p - q))))));\n i.set(this._layer.getContent(), \"JSBNG__top\", ((-s + \"px\")));\n }\n });\n e.exports = m;\n});\n__d(\"ContextualDialogDefaultTheme\", [\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"cx\"), h = {\n wrapperClassName: \"-cx-PRIVATE-uiContextualDialog__root\",\n arrowDimensions: {\n offset: 15,\n length: 16\n }\n };\n e.exports = h;\n});\n__d(\"ContextualDialog\", [\"AccessibleLayer\",\"Class\",\"ContextualDialogArrow\",\"ContextualDialogFitInViewport\",\"ContextualLayer\",\"ContextualDialogDefaultTheme\",\"JSBNG__CSS\",\"DOM\",\"JSXDOM\",\"LayerAutoFocus\",\"LayerButtons\",\"LayerHideOnTransition\",\"LayerFormHooks\",\"LayerMouseHooks\",\"Style\",\"copyProperties\",\"csx\",\"cx\",\"invariant\",\"removeFromArray\",], function(a, b, c, d, e, f) {\n var g = b(\"AccessibleLayer\"), h = b(\"Class\"), i = b(\"ContextualDialogArrow\"), j = b(\"ContextualDialogFitInViewport\"), k = b(\"ContextualLayer\"), l = b(\"ContextualDialogDefaultTheme\"), m = b(\"JSBNG__CSS\"), n = b(\"DOM\"), o = b(\"JSXDOM\"), p = b(\"LayerAutoFocus\"), q = b(\"LayerButtons\"), r = b(\"LayerHideOnTransition\"), s = b(\"LayerFormHooks\"), t = b(\"LayerMouseHooks\"), u = b(\"Style\"), v = b(\"copyProperties\"), w = b(\"csx\"), x = b(\"cx\"), y = b(\"invariant\"), z = b(\"removeFromArray\");\n function aa(ba, ca) {\n this.parent.construct(this, ba, ca);\n };\n;\n h.extend(aa, k);\n v(aa.prototype, {\n _footer: null,\n _configure: function(ba, ca) {\n v(ba, ((ba.theme || l)));\n var da = ((ba.arrowBehavior || i));\n ba.addedBehaviors = ((ba.addedBehaviors || []));\n ba.addedBehaviors.push(da);\n this._footer = n.scry(ca, \"div.-cx-PUBLIC-abstractContextualDialog__footer\")[0];\n this.parent._configure(ba, ca);\n },\n _getDefaultBehaviors: function() {\n var ba = this.parent._getDefaultBehaviors();\n z(ba, r);\n return ba.concat([g,p,j,q,s,t,]);\n },\n _buildWrapper: function(ba, ca) {\n m.addClass(ca, \"-cx-PUBLIC-abstractContextualDialog__content\");\n this._innerWrapper = o.div(null, ca);\n var da = this.parent._buildWrapper(ba, this._innerWrapper);\n m.addClass(da, ba.wrapperClassName);\n if (ba.width) {\n this.setWidth(ba.width);\n }\n ;\n ;\n return da;\n },\n getContentRoot: function() {\n y(!!this._innerWrapper);\n return this._innerWrapper;\n },\n setContent: function(ba) {\n m.addClass(ba, \"-cx-PUBLIC-abstractContextualDialog__content\");\n n.setContent(this.getContentRoot(), ba);\n },\n setWidth: function(ba) {\n this._width = Math.floor(ba);\n u.set(this.getContentRoot(), \"width\", ((ba + \"px\")));\n return this;\n },\n getFooter: function() {\n return this._footer;\n },\n getArrowDimensions: function() {\n return this._config.arrowDimensions;\n }\n });\n v(aa, {\n setContext: function(ba, ca) {\n ba.setContext(ca);\n }\n });\n e.exports = aa;\n});\n__d(\"Hovercard\", [\"JSXDOM\",\"JSBNG__Event\",\"function-extensions\",\"AccessibleLayer\",\"Arbiter\",\"AsyncRequest\",\"AsyncSignal\",\"ContextualDialog\",\"ContextualThing\",\"DOM\",\"LayerAutoFocus\",\"Parent\",\"JSBNG__Rect\",\"Style\",\"UserAgent\",\"Vector\",\"clickRefAction\",\"cx\",\"csx\",\"emptyFunction\",\"tx\",\"userAction\",], function(a, b, c, d, e, f) {\n var g = b(\"JSXDOM\"), h = b(\"JSBNG__Event\");\n b(\"function-extensions\");\n var i = b(\"AccessibleLayer\"), j = b(\"Arbiter\"), k = b(\"AsyncRequest\"), l = b(\"AsyncSignal\"), m = b(\"ContextualDialog\"), n = b(\"ContextualThing\"), o = b(\"DOM\"), p = b(\"LayerAutoFocus\"), q = b(\"Parent\"), r = b(\"JSBNG__Rect\"), s = b(\"Style\"), t = b(\"UserAgent\"), u = b(\"Vector\"), v = b(\"clickRefAction\"), w = b(\"cx\"), x = b(\"csx\"), y = b(\"emptyFunction\"), z = b(\"tx\"), aa = b(\"userAction\"), ba = {\n }, ca = {\n }, da = null, ea = null, fa = null, ga = 150, ha = 700, ia = 1000, ja = 250, ka = null, la = null, ma = null, na = null;\n function oa(JSBNG__event) {\n var db = q.byTag(JSBNG__event.getTarget(), \"a\");\n ((cb.processNode(db) && JSBNG__event.JSBNG__stop()));\n };\n;\n function pa(db) {\n ea = db;\n if (!qa(db)) {\n var eb;\n if (((!db || !(eb = ra(db))))) {\n ((ca.moveToken && ca.moveToken.remove()));\n ca = {\n };\n return false;\n }\n ;\n ;\n if (((ca.node != db))) {\n ((ca.moveToken && ca.moveToken.remove()));\n ca = {\n node: db,\n endpoint: eb,\n pos: null\n };\n }\n ;\n ;\n }\n ;\n ;\n return true;\n };\n;\n function qa(db) {\n return ((((db && da)) && ((ca.node == db))));\n };\n;\n function ra(db) {\n return db.getAttribute(\"data-hovercard\");\n };\n;\n function sa(db) {\n var eb = o.scry(db, \"^.-cx-PRIVATE-fbEntstreamFeedObject__root .-cx-PUBLIC-fbEntstreamEmbed__root\").length;\n if (eb) {\n return;\n }\n ;\n ;\n var fb = h.listen(db, \"mouseout\", function() {\n JSBNG__clearTimeout(ka);\n JSBNG__clearTimeout(la);\n fb.remove();\n ea = null;\n if (!cb.contains(db)) {\n cb.hide();\n }\n ;\n ;\n });\n if (!ca.moveToken) {\n ca.moveToken = h.listen(db, \"mousemove\", function(JSBNG__event) {\n ca.pos = u.getEventPosition(JSBNG__event);\n });\n }\n ;\n ;\n JSBNG__clearTimeout(ka);\n JSBNG__clearTimeout(la);\n JSBNG__clearTimeout(na);\n var gb = ga, hb = ((da ? ja : ha));\n if (db.getAttribute(\"data-hovercard-instant\")) {\n gb = hb = 50;\n }\n ;\n ;\n ka = JSBNG__setTimeout(xa.curry(db), gb);\n la = JSBNG__setTimeout(ta.curry(db), hb);\n };\n;\n function ta(db, eb) {\n if (((ca.node != db))) {\n return;\n }\n ;\n ;\n var fb = ba[ra(db)];\n if (fb) {\n va(fb);\n }\n else if (eb) {\n va(za());\n }\n else {\n var gb = ((da ? ja : ha));\n ma = JSBNG__setTimeout(ta.curry(db, true), ((ia - gb)));\n }\n \n ;\n ;\n };\n;\n function ua() {\n cb.hide(true);\n JSBNG__clearTimeout(la);\n };\n;\n function va(db) {\n var eb = ca.node, fb = da, gb = ((fb != eb));\n if (fa) {\n var hb = fa.getContentRoot();\n if (!n.containsIncludingLayers(hb, eb)) {\n fa.hide();\n }\n ;\n ;\n }\n ;\n ;\n if (!o.contains(JSBNG__document.body, eb)) {\n cb.hide(true);\n return;\n }\n ;\n ;\n da = eb;\n fa = db;\n db.setContextWithBounds(eb, wa(eb)).show();\n if (gb) {\n (function() {\n new l(\"/ajax/hovercard/shown.php\").send();\n v(\"himp\", da, null, \"FORCE\", {\n ft: {\n evt: 39\n }\n });\n aa(\"hovercard\", da).uai(\"show\");\n }).defer();\n }\n ;\n ;\n };\n;\n function wa(db) {\n var eb = ca.pos, fb = db.getClientRects();\n if (((!eb || ((fb.length === 0))))) {\n return r.getElementBounds(db);\n }\n ;\n ;\n var gb, hb = false;\n for (var ib = 0; ((ib < fb.length)); ib++) {\n var jb = new r(Math.round(fb[ib].JSBNG__top), Math.round(fb[ib].right), Math.round(fb[ib].bottom), Math.round(fb[ib].left), \"viewport\").convertTo(\"JSBNG__document\"), kb = jb.getPositionVector(), lb = kb.add(jb.getDimensionVector());\n if (((!gb || ((((kb.x <= gb.l)) && ((kb.y > gb.t))))))) {\n if (hb) {\n break;\n }\n ;\n ;\n gb = new r(kb.y, lb.x, lb.y, kb.x, \"JSBNG__document\");\n }\n else {\n gb.t = Math.min(gb.t, kb.y);\n gb.b = Math.max(gb.b, lb.y);\n gb.r = lb.x;\n }\n ;\n ;\n if (jb.contains(eb)) {\n hb = true;\n }\n ;\n ;\n };\n ;\n return gb;\n };\n;\n function xa(db) {\n if (((db.id && ((ba[db.id] != null))))) {\n return;\n }\n ;\n ;\n var eb = ra(db);\n if (((ba[eb] != null))) {\n return;\n }\n ;\n ;\n ya(eb);\n var fb = function() {\n cb.dirty(eb);\n ua();\n };\n new k(eb).setData({\n endpoint: eb\n }).setMethod(\"GET\").setReadOnly(true).setErrorHandler(fb).setTransportErrorHandler(fb).send();\n };\n;\n function ya(db) {\n ba[db] = false;\n };\n;\n var za = function() {\n var db = new m({\n width: 275\n }, g.div({\n className: \"-cx-PRIVATE-hovercard__loading\"\n }, \"Loading...\"));\n db.disableBehavior(i).disableBehavior(p);\n ab(db);\n za = y.thatReturns(db);\n return db;\n };\n function ab(db) {\n var eb = [db.subscribe(\"mouseenter\", function() {\n JSBNG__clearTimeout(na);\n ea = ca.node;\n }),db.subscribe(\"mouseleave\", function() {\n db.hide();\n ea = null;\n }),db.subscribe(\"destroy\", function() {\n while (eb.length) {\n eb.pop().unsubscribe();\n ;\n };\n ;\n eb = null;\n }),];\n };\n;\n var bb = true, cb = {\n hide: function(db) {\n if (!da) {\n return;\n }\n ;\n ;\n if (db) {\n if (fa) {\n fa.hide();\n }\n ;\n ;\n ea = null;\n da = null;\n fa = null;\n }\n else na = JSBNG__setTimeout(cb.hide.curry(true), ja);\n ;\n ;\n },\n setDialog: function(db, eb) {\n eb.disableBehavior(i).disableBehavior(p);\n ba[db] = eb;\n ab(eb);\n if (((((ca.endpoint == db)) && ((ea == ca.node))))) {\n za().hide();\n var fb = ca.node.getAttribute(\"data-hovercard-position\");\n ((fb && eb.setPosition(fb)));\n var gb = ca.node.getAttribute(\"data-hovercard-offset-x\");\n ((gb && eb.setOffsetX(parseInt(gb, 10))));\n var hb = ca.node.getAttribute(\"data-hovercard-offset-y\");\n ((hb && eb.setOffsetY(parseInt(hb, 10))));\n va(eb);\n }\n ;\n ;\n },\n getDialog: function(db) {\n return ba[db];\n },\n contains: function(db) {\n if (fa) {\n return n.containsIncludingLayers(fa.getContentRoot(), db);\n }\n ;\n ;\n return false;\n },\n dirty: function(db) {\n var eb = ba[db];\n if (eb) {\n eb.destroy();\n delete ba[db];\n }\n ;\n ;\n },\n dirtyAll: function() {\n {\n var fin108keys = ((window.top.JSBNG_Replay.forInKeys)((ba))), fin108i = (0);\n var db;\n for (; (fin108i < fin108keys.length); (fin108i++)) {\n ((db) = (fin108keys[fin108i]));\n {\n var eb = ba[db];\n ((eb && cb.dirty(db)));\n };\n };\n };\n ;\n j.inform(\"Hovercard/dirty\");\n },\n processNode: function(db) {\n if (((db && pa(db)))) {\n sa(db);\n return true;\n }\n ;\n ;\n return false;\n },\n setDirtyAllOnPageTransition: function(db) {\n bb = db;\n }\n };\n (function() {\n if (((t.ie() < 8))) {\n return;\n }\n ;\n ;\n h.listen(JSBNG__document.documentElement, \"mouseover\", oa);\n h.listen(window, \"JSBNG__scroll\", function() {\n if (((da && s.isFixed(da)))) {\n cb.hide(true);\n }\n ;\n ;\n });\n j.subscribe(\"page_transition\", function() {\n ua();\n ((bb && cb.dirtyAll()));\n }, j.SUBSCRIBE_NEW);\n })();\n e.exports = cb;\n});\n__d(\"ScrollableArea\", [\"Animation\",\"ArbiterMixin\",\"BrowserSupport\",\"JSBNG__CSS\",\"DataStore\",\"DOM\",\"JSBNG__Event\",\"Parent\",\"Run\",\"SimpleDrag\",\"Style\",\"UserAgent\",\"Vector\",\"copyProperties\",\"throttle\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"ArbiterMixin\"), i = b(\"BrowserSupport\"), j = b(\"JSBNG__CSS\"), k = b(\"DataStore\"), l = b(\"DOM\"), m = b(\"JSBNG__Event\"), n = b(\"Parent\"), o = b(\"Run\"), p = b(\"SimpleDrag\"), q = b(\"Style\"), r = b(\"UserAgent\"), s = b(\"Vector\"), t = b(\"copyProperties\"), u = b(\"throttle\"), v = 12;\n function w(x, y) {\n if (!x) {\n return;\n }\n ;\n ;\n y = ((y || {\n }));\n this._elem = x;\n this._wrap = l.JSBNG__find(x, \"div.uiScrollableAreaWrap\");\n this._body = l.JSBNG__find(this._wrap, \"div.uiScrollableAreaBody\");\n this._content = l.JSBNG__find(this._body, \"div.uiScrollableAreaContent\");\n this._track = l.JSBNG__find(x, \"div.uiScrollableAreaTrack\");\n this._gripper = l.JSBNG__find(this._track, \"div.uiScrollableAreaGripper\");\n this._options = y;\n this._throttledComputeHeights = u.withBlocking(this._computeHeights, 250, this);\n this.throttledAdjustGripper = u.withBlocking(this.adjustGripper, 250, this);\n this._throttledShowGripperAndShadows = u.withBlocking(this._showGripperAndShadows, 250, this);\n this._throttledRespondMouseMove = u(this._respondMouseMove, 250, this);\n this.adjustGripper.bind(this).defer();\n this._listeners = [m.listen(this._wrap, \"JSBNG__scroll\", this._handleScroll.bind(this)),m.listen(x, \"mousemove\", this._handleMouseMove.bind(this)),m.listen(this._track, \"click\", this._handleClickOnTrack.bind(this)),];\n if (i.hasPointerEvents()) {\n this._listeners.push(m.listen(x, \"click\", this._handleClickOnTrack.bind(this)));\n }\n ;\n ;\n if (((y.fade !== false))) {\n this._listeners.push(m.listen(x, \"mouseenter\", this._handleMouseEnter.bind(this)), m.listen(x, \"mouseleave\", this._handleMouseLeave.bind(this)), m.listen(x, \"focusin\", this.showScrollbar.bind(this, false)), m.listen(x, \"focusout\", this.hideScrollbar.bind(this)));\n }\n else if (i.hasPointerEvents()) {\n this._listeners.push(m.listen(x, \"mouseleave\", j.removeClass.curry(x, \"uiScrollableAreaTrackOver\")));\n }\n \n ;\n ;\n if (((r.webkit() || r.chrome()))) {\n this._listeners.push(m.listen(x, \"mousedown\", function() {\n var z = m.listen(window, \"mouseup\", function() {\n if (x.scrollLeft) {\n x.scrollLeft = 0;\n }\n ;\n ;\n z.remove();\n });\n }));\n }\n else if (r.firefox()) {\n this._wrap.JSBNG__addEventListener(\"DOMMouseScroll\", function(JSBNG__event) {\n ((((JSBNG__event.axis === JSBNG__event.HORIZONTAL_AXIS)) && JSBNG__event.preventDefault()));\n }, false);\n }\n \n ;\n ;\n this.initDrag();\n k.set(this._elem, \"ScrollableArea\", this);\n if (!y.persistent) {\n o.onLeave(this.destroy.bind(this));\n }\n ;\n ;\n if (((y.shadow !== false))) {\n j.addClass(this._elem, \"uiScrollableAreaWithShadow\");\n }\n ;\n ;\n };\n;\n t(w, {\n renderDOM: function() {\n var x = l.create(\"div\", {\n className: \"uiScrollableAreaContent\"\n }), y = l.create(\"div\", {\n className: \"uiScrollableAreaBody\"\n }, x), z = l.create(\"div\", {\n className: \"uiScrollableAreaWrap\"\n }, y), aa = l.create(\"div\", {\n className: \"uiScrollableArea native\"\n }, z);\n return {\n root: aa,\n wrap: z,\n body: y,\n JSBNG__content: x\n };\n },\n fromNative: function(x, y) {\n if (((!j.hasClass(x, \"uiScrollableArea\") || !j.hasClass(x, \"native\")))) {\n return;\n }\n ;\n ;\n y = ((y || {\n }));\n j.removeClass(x, \"native\");\n var z = l.create(\"div\", {\n className: \"uiScrollableAreaTrack\"\n }, l.create(\"div\", {\n className: \"uiScrollableAreaGripper\"\n }));\n if (((y.fade !== false))) {\n j.addClass(x, \"fade\");\n j.addClass(z, \"invisible_elem\");\n }\n else j.addClass(x, \"nofade\");\n ;\n ;\n l.appendContent(x, z);\n var aa = new w(x, y);\n aa.resize();\n return aa;\n },\n getInstance: function(x) {\n var y = n.byClass(x, \"uiScrollableArea\");\n return ((y ? k.get(y, \"ScrollableArea\") : null));\n },\n poke: function(x) {\n var y = w.getInstance(x);\n ((y && y.poke()));\n }\n });\n t(w.prototype, h, {\n initDrag: function() {\n var x = i.hasPointerEvents(), y = new p(((x ? this._elem : this._gripper)));\n y.subscribe(\"start\", function(z, JSBNG__event) {\n if (!((((JSBNG__event.which && ((JSBNG__event.which === 1)))) || ((JSBNG__event.button && ((JSBNG__event.button === 1))))))) {\n return;\n }\n ;\n ;\n var aa = s.getEventPosition(JSBNG__event, \"viewport\");\n if (x) {\n var ba = this._gripper.getBoundingClientRect();\n if (((((((((aa.x < ba.left)) || ((aa.x > ba.right)))) || ((aa.y < ba.JSBNG__top)))) || ((aa.y > ba.bottom))))) {\n return false;\n }\n ;\n ;\n }\n ;\n ;\n this.inform(\"grip_start\");\n var ca = aa.y, da = this._gripper.offsetTop;\n j.addClass(this._elem, \"uiScrollableAreaDragging\");\n var ea = y.subscribe(\"update\", function(ga, JSBNG__event) {\n var ha = ((s.getEventPosition(JSBNG__event, \"viewport\").y - ca));\n this._throttledComputeHeights();\n var ia = ((this._contentHeight - this._containerHeight)), ja = ((da + ha)), ka = ((this._trackHeight - this._gripperHeight));\n ja = Math.max(Math.min(ja, ka), 0);\n var la = ((((ja / ka)) * ia));\n this._wrap.scrollTop = la;\n }.bind(this)), fa = y.subscribe(\"end\", function() {\n y.unsubscribe(ea);\n y.unsubscribe(fa);\n j.removeClass(this._elem, \"uiScrollableAreaDragging\");\n this.inform(\"grip_end\");\n }.bind(this));\n }.bind(this));\n },\n adjustGripper: ((window.top.JSBNG_Replay.push)((window.top.JSBNG_Replay.s1da4c91f736d950de61ac9962e5a050e9ae4a4ed_565), function() {\n if (this._needsGripper()) {\n q.set(this._gripper, \"height\", ((this._gripperHeight + \"px\")));\n this._slideGripper();\n }\n ;\n ;\n this._throttledShowGripperAndShadows();\n return this;\n })),\n _computeHeights: function() {\n this._containerHeight = this._elem.clientHeight;\n this._contentHeight = this._content.offsetHeight;\n this._trackHeight = this._track.offsetHeight;\n this._gripperHeight = Math.max(((((this._containerHeight / this._contentHeight)) * this._trackHeight)), v);\n },\n _needsGripper: function() {\n this._throttledComputeHeights();\n return ((this._gripperHeight < this._trackHeight));\n },\n _slideGripper: function() {\n var x = ((((this._wrap.scrollTop / ((this._contentHeight - this._containerHeight)))) * ((this._trackHeight - this._gripperHeight))));\n q.set(this._gripper, \"JSBNG__top\", ((x + \"px\")));\n },\n _showGripperAndShadows: function() {\n j.conditionShow(this._gripper, this._needsGripper());\n j.conditionClass(this._elem, \"contentBefore\", ((this._wrap.scrollTop > 0)));\n j.conditionClass(this._elem, \"contentAfter\", !this.isScrolledToBottom());\n },\n destroy: function() {\n this._listeners.forEach(function(x) {\n x.remove();\n });\n this._listeners.length = 0;\n },\n _handleClickOnTrack: function(JSBNG__event) {\n var x = s.getEventPosition(JSBNG__event, \"viewport\"), y = this._gripper.getBoundingClientRect();\n if (((((x.x < y.right)) && ((x.x > y.left))))) {\n if (((x.y < y.JSBNG__top))) {\n this.setScrollTop(((this.getScrollTop() - this._elem.clientHeight)));\n }\n else if (((x.y > y.bottom))) {\n this.setScrollTop(((this.getScrollTop() + this._elem.clientHeight)));\n }\n \n ;\n ;\n JSBNG__event.prevent();\n }\n ;\n ;\n },\n _handleMouseMove: function(JSBNG__event) {\n var x = ((this._options.fade !== false));\n if (((i.hasPointerEvents() || x))) {\n this._mousePos = s.getEventPosition(JSBNG__event);\n this._throttledRespondMouseMove();\n }\n ;\n ;\n },\n _respondMouseMove: function() {\n if (!this._mouseOver) {\n return;\n }\n ;\n ;\n var x = ((this._options.fade !== false)), y = this._mousePos, z = s.getElementPosition(this._track).x, aa = s.getElementDimensions(this._track).x, ba = Math.abs(((((z + ((aa / 2)))) - y.x)));\n j.conditionClass(this._elem, \"uiScrollableAreaTrackOver\", ((i.hasPointerEvents() && ((ba <= 10)))));\n if (x) {\n if (((ba < 25))) {\n this.showScrollbar(false);\n }\n else if (!this._options.no_fade_on_hover) {\n this.hideScrollbar();\n }\n \n ;\n }\n ;\n ;\n },\n _handleScroll: function(JSBNG__event) {\n if (this._needsGripper()) {\n this._slideGripper();\n }\n ;\n ;\n this.throttledAdjustGripper();\n if (((this._options.fade !== false))) {\n this.showScrollbar();\n }\n ;\n ;\n this.inform(\"JSBNG__scroll\");\n },\n _handleMouseLeave: function() {\n this._mouseOver = false;\n this.hideScrollbar();\n },\n _handleMouseEnter: function() {\n this._mouseOver = true;\n this.showScrollbar();\n },\n hideScrollbar: function(x) {\n if (!this._scrollbarVisible) {\n return this;\n }\n ;\n ;\n this._scrollbarVisible = false;\n if (this._hideTimeout) {\n JSBNG__clearTimeout(this._hideTimeout);\n this._hideTimeout = null;\n }\n ;\n ;\n if (x) {\n q.set(this._track, \"opacity\", 0);\n j.addClass.curry(this._track, \"invisible_elem\");\n }\n else this._hideTimeout = function() {\n if (this._hideAnimation) {\n this._hideAnimation.JSBNG__stop();\n this._hideAnimation = null;\n }\n ;\n ;\n this._hideAnimation = (new g(this._track)).from(\"opacity\", 1).to(\"opacity\", 0).duration(250).ondone(j.addClass.curry(this._track, \"invisible_elem\")).go();\n }.bind(this).defer(750);\n ;\n ;\n return this;\n },\n resize: function() {\n var x = s.getElementDimensions(this._elem).x;\n if (((this._options.fade === false))) {\n x -= 10;\n }\n ;\n ;\n x = Math.max(0, x);\n q.set(this._body, \"width\", ((x + \"px\")));\n return this;\n },\n showScrollbar: function(x) {\n this.throttledAdjustGripper();\n if (this._scrollbarVisible) {\n return this;\n }\n ;\n ;\n this._scrollbarVisible = true;\n if (this._hideTimeout) {\n JSBNG__clearTimeout(this._hideTimeout);\n this._hideTimeout = null;\n }\n ;\n ;\n if (this._hideAnimation) {\n this._hideAnimation.JSBNG__stop();\n this._hideAnimation = null;\n }\n ;\n ;\n q.set(this._track, \"opacity\", 1);\n j.removeClass(this._track, \"invisible_elem\");\n if (((((x !== false)) && !this._options.no_fade_on_hover))) {\n this.hideScrollbar();\n }\n ;\n ;\n return this;\n },\n isScrolledToBottom: function() {\n return ((this._wrap.scrollTop >= ((this._contentHeight - this._containerHeight))));\n },\n isScrolledToTop: function() {\n return ((this._wrap.scrollTop === 0));\n },\n scrollToBottom: function(x) {\n this.setScrollTop(this._wrap.scrollHeight, x);\n },\n scrollToTop: function(x) {\n this.setScrollTop(0, x);\n },\n scrollIntoView: function(x, y) {\n var z = this._wrap.clientHeight, aa = x.offsetHeight, ba = this._wrap.scrollTop, ca = ((ba + z)), da = x.offsetTop, ea = ((da + aa));\n if (((((da < ba)) || ((z < aa))))) {\n this.setScrollTop(da, y);\n }\n else if (((ea > ca))) {\n this.setScrollTop(((ba + ((ea - ca)))), y);\n }\n \n ;\n ;\n },\n scrollElemToTop: function(x, y, z) {\n this.setScrollTop(x.offsetTop, y, {\n callback: z\n });\n },\n poke: function() {\n var x = this._wrap.scrollTop;\n this._wrap.scrollTop += 1;\n this._wrap.scrollTop -= 1;\n this._wrap.scrollTop = x;\n return this.showScrollbar(false);\n },\n getScrollTop: function() {\n return this._wrap.scrollTop;\n },\n getScrollHeight: function() {\n return this._wrap.scrollHeight;\n },\n setScrollTop: function(x, y, z) {\n z = ((z || {\n }));\n if (((y !== false))) {\n if (this._scrollTopAnimation) {\n this._scrollTopAnimation.JSBNG__stop();\n }\n ;\n ;\n var aa = ((z.duration || 250)), ba = ((z.ease || g.ease.end));\n this._scrollTopAnimation = (new g(this._wrap)).to(\"scrollTop\", x).ease(ba).duration(aa).ondone(z.callback).go();\n }\n else {\n this._wrap.scrollTop = x;\n ((z.callback && z.callback()));\n }\n ;\n ;\n }\n });\n e.exports = w;\n});\n__d(\"legacy:Tooltip\", [\"Tooltip\",], function(a, b, c, d) {\n a.Tooltip = b(\"Tooltip\");\n}, 3);\n__d(\"ClearableTypeahead\", [\"JSBNG__Event\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = {\n resetOnCloseButtonClick: function(i, j) {\n g.listen(j, \"click\", function() {\n var k = i.getCore();\n k.getElement().JSBNG__focus();\n k.reset();\n });\n }\n };\n e.exports = h;\n});\n__d(\"TypeaheadShowLoadingIndicator\", [\"JSBNG__CSS\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = b(\"copyProperties\");\n function i(j) {\n this._typeahead = j;\n };\n;\n h(i.prototype, {\n _subscription: null,\n enable: function() {\n this._subscription = this._typeahead.subscribe(\"loading\", function(j, k) {\n g.conditionClass(this._typeahead.getElement(), \"typeaheadLoading\", k.loading);\n g.conditionClass(this._typeahead.getView().getElement(), \"typeaheadViewLoading\", k.loading);\n }.bind(this));\n },\n disable: function() {\n this._typeahead.unsubscribe(this._subscription);\n this._subscription = null;\n }\n });\n e.exports = i;\n});\n__d(\"legacy:ShowLoadingIndicatorTypeaheadBehavior\", [\"TypeaheadShowLoadingIndicator\",], function(a, b, c, d) {\n var e = b(\"TypeaheadShowLoadingIndicator\");\n if (!a.TypeaheadBehaviors) {\n a.TypeaheadBehaviors = {\n };\n }\n;\n;\n a.TypeaheadBehaviors.showLoadingIndicator = function(f) {\n f.enableBehavior(e);\n };\n}, 3);\n__d(\"CompactTypeaheadRenderer\", [\"Badge\",\"DOM\",\"TypeaheadFacepile\",], function(a, b, c, d, e, f) {\n var g = b(\"Badge\"), h = b(\"DOM\"), i = b(\"TypeaheadFacepile\");\n function j(k, l) {\n var m = [];\n if (k.xhp) {\n return h.create(\"li\", {\n className: \"raw\"\n }, k.xhp);\n }\n ;\n ;\n var n = ((k.photos || k.photo));\n if (n) {\n if (((n instanceof Array))) {\n n = i.render(n);\n }\n else n = h.create(\"img\", {\n alt: \"\",\n src: n\n });\n ;\n ;\n m.push(n);\n }\n ;\n ;\n if (k.text) {\n var o = [k.text,];\n if (k.verified) {\n o.push(g(\"xsmall\", \"verified\"));\n }\n ;\n ;\n m.push(h.create(\"span\", {\n className: \"text\"\n }, o));\n }\n ;\n ;\n var p = k.subtext, q = k.category;\n if (((p || q))) {\n var r = [];\n ((p && r.push(p)));\n ((((p && q)) && r.push(\" \\u00b7 \")));\n ((q && r.push(q)));\n m.push(h.create(\"span\", {\n className: \"subtext\"\n }, r));\n }\n ;\n ;\n var s = h.create(\"li\", {\n className: ((k.type || \"\"))\n }, m);\n if (k.text) {\n s.setAttribute(\"aria-label\", k.text);\n }\n ;\n ;\n return s;\n };\n;\n j.className = \"compact\";\n e.exports = j;\n});\n__d(\"endsWith\", [], function(a, b, c, d, e, f) {\n function g(h, i) {\n return ((h.indexOf(i, ((h.length - i.length))) > -1));\n };\n;\n e.exports = g;\n});\n__d(\"extendArray\", [], function(a, b, c, d, e, f) {\n function g(h, i) {\n Array.prototype.push.apply(h, i);\n return h;\n };\n;\n e.exports = g;\n});"); |
| // 5056 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o38,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yd/r/cV-1QIoVTI-.js",o55); |
| // undefined |
| o38 = null; |
| // undefined |
| o55 = null; |
| // 5061 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"AVmr9\",]);\n}\n;\n__d(\"ChatConfig\", [\"ChatConfigInitialData\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ChatConfigInitialData\"), h = b(\"copyProperties\"), i = {\n }, j = {\n get: function(k, l) {\n return ((k in i) ? i[k] : l);\n },\n set: function(k) {\n if ((arguments.length > 1)) {\n var l = {\n };\n l[k] = arguments[1];\n k = l;\n }\n ;\n h(i, k);\n },\n getDebugInfo: function() {\n return i;\n }\n };\n j.set(g);\n e.exports = j;\n});\n__d(\"XUISpinner.react\", [\"BrowserSupport\",\"ReactPropTypes\",\"React\",\"cx\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"BrowserSupport\"), h = b(\"ReactPropTypes\"), i = b(\"React\"), j = b(\"cx\"), k = b(\"tx\"), l = g.hasCSSAnimations(), m = i.createClass({\n displayName: \"XUISpinner\",\n propTypes: {\n size: h.oneOf([\"small\",\"large\",]),\n background: h.oneOf([\"light\",\"dark\",])\n },\n getDefaultProps: function() {\n return {\n size: \"small\",\n background: \"light\"\n };\n },\n render: function() {\n var n = (((((((\"-cx-PRIVATE-xuiSpinner__root\") + (((this.props.size == \"small\") ? (\" \" + \"-cx-PRIVATE-xuiSpinner__small\") : \"\"))) + (((this.props.size == \"large\") ? (\" \" + \"-cx-PRIVATE-xuiSpinner__large\") : \"\"))) + (((this.props.background == \"light\") ? (\" \" + \"-cx-PRIVATE-xuiSpinner__light\") : \"\"))) + (((this.props.background == \"dark\") ? (\" \" + \"-cx-PRIVATE-xuiSpinner__dark\") : \"\"))) + ((!l ? (\" \" + \"-cx-PRIVATE-xuiSpinner__animatedgif\") : \"\"))));\n return this.transferPropsTo(i.DOM.span({\n className: n\n }, \"Loading...\"));\n }\n });\n e.exports = m;\n});\n__d(\"ViewportBounds\", [\"Style\",\"Vector\",\"emptyFunction\",\"ge\",\"removeFromArray\",], function(a, b, c, d, e, f) {\n var g = b(\"Style\"), h = b(\"Vector\"), i = b(\"emptyFunction\"), j = b(\"ge\"), k = b(\"removeFromArray\"), l = {\n top: [],\n right: [],\n bottom: [],\n left: []\n };\n function m(q) {\n return function() {\n var r = 0;\n l[q].forEach(function(s) {\n r = Math.max(r, s.getSize());\n });\n return r;\n };\n };\n function n(q) {\n return function(r) {\n return new o(q, r);\n };\n };\n function o(q, r) {\n this.getSide = i.thatReturns(q);\n this.getSize = function() {\n return ((typeof r === \"function\") ? r() : r);\n };\n l[q].push(this);\n };\n o.prototype.remove = function() {\n k(l[this.getSide()], this);\n };\n var p = {\n getTop: m(\"top\"),\n getRight: m(\"right\"),\n getBottom: m(\"bottom\"),\n getLeft: m(\"left\"),\n getElementPosition: function(q) {\n var r = h.getElementPosition(q);\n r.y -= p.getTop();\n return r;\n },\n addTop: n(\"top\"),\n addRight: n(\"right\"),\n addBottom: n(\"bottom\"),\n addLeft: n(\"left\")\n };\n p.addTop(function() {\n var q = j(\"blueBar\");\n if ((q && g.isFixed(q))) {\n return j(\"blueBarHolder\").offsetHeight\n };\n return 0;\n });\n e.exports = p;\n});\n__d(\"isAsyncScrollQuery\", [\"UserAgent\",], function(a, b, c, d, e, f) {\n var g = b(\"UserAgent\"), h = null;\n function i() {\n if ((h === null)) {\n h = (((g.osx() >= 10.8) && (g.webkit() >= 536.25)) && !g.chrome());\n };\n return h;\n };\n e.exports = i;\n});\n__d(\"ScrollAwareDOM\", [\"ArbiterMixin\",\"CSS\",\"DOM\",\"DOMDimensions\",\"DOMPosition\",\"DOMQuery\",\"HTML\",\"Vector\",\"ViewportBounds\",\"copyProperties\",\"isAsyncScrollQuery\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"CSS\"), i = b(\"DOM\"), j = b(\"DOMDimensions\"), k = b(\"DOMPosition\"), l = b(\"DOMQuery\"), m = b(\"HTML\"), n = b(\"Vector\"), o = b(\"ViewportBounds\"), p = b(\"copyProperties\"), q = b(\"isAsyncScrollQuery\");\n function r(w, x) {\n return function() {\n v.monitor(arguments[w], x.curry.apply(x, arguments));\n };\n };\n function s(w) {\n if (!((w instanceof Array))) {\n w = [w,];\n };\n for (var x = 0; (x < w.length); x++) {\n var y = m.replaceJSONWrapper(w[x]);\n if ((y instanceof m)) {\n return y.getRootNode();\n }\n else if (i.isNode(y)) {\n return y\n }\n ;\n };\n return null;\n };\n function t(w) {\n return (k.getElementPosition(w).y > o.getTop());\n };\n function u(w) {\n var x = (k.getElementPosition(w).y + j.getElementDimensions(w).height), y = (j.getViewportDimensions().height - o.getBottom());\n return (x >= y);\n };\n var v = p({\n monitor: function(w, x) {\n if (q()) {\n return x()\n };\n var y = s(w);\n if (y) {\n var z = !!y.offsetParent;\n if ((z && ((t(y) || u(y))))) {\n return x()\n };\n var aa = n.getDocumentDimensions(), ba = x();\n if ((z || ((y.offsetParent && !t(y))))) {\n var ca = n.getDocumentDimensions().sub(aa), da = {\n delta: ca,\n target: y\n };\n if ((v.inform(\"scroll\", da) !== false)) {\n ca.scrollElementBy(l.getDocumentScrollElement());\n };\n }\n ;\n return ba;\n }\n else return x()\n ;\n },\n replace: function(w, x) {\n var y = s(x);\n if ((!y || h.hasClass(y, \"hidden_elem\"))) {\n y = w;\n };\n return v.monitor(y, function() {\n i.replace(w, x);\n });\n },\n prependContent: r(1, i.prependContent),\n insertAfter: r(1, i.insertAfter),\n insertBefore: r(1, i.insertBefore),\n setContent: r(0, i.setContent),\n appendContent: r(1, i.appendContent),\n remove: r(0, i.remove),\n empty: r(0, i.empty)\n }, g);\n e.exports = v;\n});\n__d(\"legacy:ScrollAwareDOM\", [\"ScrollAwareDOM\",], function(a, b, c, d) {\n a.ScrollAwareDOM = b(\"ScrollAwareDOM\");\n}, 3);\n__d(\"legacy:css\", [\"CSS\",], function(a, b, c, d) {\n a.CSS = b(\"CSS\");\n}, 3);\n__d(\"FBDesktopDetect\", [\"UserAgent\",], function(a, b, c, d, e, f) {\n var g = b(\"UserAgent\"), h = \"facebook.desktopplugin\", i = {\n mimeType: \"application/x-facebook-desktop-1\",\n isPluginInstalled: function() {\n if (g.osx()) {\n return false\n };\n var j = null;\n if (a.ActiveXObject) {\n try {\n j = new a.ActiveXObject(h);\n if (j) {\n return true\n };\n } catch (k) {\n \n };\n }\n else if ((a.navigator && a.navigator.plugins)) {\n a.navigator.plugins.refresh(false);\n for (var l = 0, m = a.navigator.plugins.length; (l < m); l++) {\n j = a.navigator.plugins[l];\n if ((j.length && (j[0].type === this.mimeType))) {\n return true\n };\n };\n }\n \n ;\n return false;\n }\n };\n e.exports = i;\n});\n__d(\"FlipDirectionOnKeypress\", [\"Event\",\"DOM\",\"Input\",\"Style\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"DOM\"), i = b(\"Input\"), j = b(\"Style\");\n function k(event) {\n var l = event.getTarget(), m = (h.isNodeOfType(l, \"input\") && ((l.type == \"text\"))), n = h.isNodeOfType(l, \"textarea\");\n if ((!((m || n)) || l.getAttribute(\"data-prevent-auto-flip\"))) {\n return\n };\n var o = i.getValue(l), p = ((l.style && l.style.direction));\n if (!p) {\n var q = 0, r = true;\n for (var s = 0; (s < o.length); s++) {\n var t = o.charCodeAt(s);\n if ((t >= 48)) {\n if (r) {\n r = false;\n q++;\n }\n ;\n if (((t >= 1470) && (t <= 1920))) {\n j.set(l, \"direction\", \"rtl\");\n return;\n }\n ;\n if ((q == 5)) {\n j.set(l, \"direction\", \"ltr\");\n return;\n }\n ;\n }\n else r = true;\n ;\n };\n }\n else if ((o.length === 0)) {\n j.set(l, \"direction\", \"\");\n }\n ;\n };\n g.listen(document.documentElement, {\n keyup: k,\n input: k\n });\n});\n__d(\"PlaceholderOnsubmitFormListener\", [\"Event\",\"Input\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Input\");\n g.listen(document.documentElement, \"submit\", function(i) {\n var j = i.getTarget().getElementsByTagName(\"*\");\n for (var k = 0; (k < j.length); k++) {\n if ((j[k].getAttribute(\"placeholder\") && h.isEmpty(j[k]))) {\n h.setValue(j[k], \"\");\n };\n };\n });\n});\n__d(\"EagleEye\", [\"Arbiter\",\"Env\",\"OnloadEvent\",\"isInIframe\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Env\"), i = b(\"OnloadEvent\"), j = b(\"isInIframe\"), k = (h.eagleEyeConfig || {\n }), l = \"_e_\", m = ((window.name || \"\")).toString();\n if (((m.length == 7) && (m.substr(0, 3) == l))) {\n m = m.substr(3);\n }\n else {\n m = k.seed;\n if (!j()) {\n window.name = (l + m);\n };\n }\n;\n var n = ((((window.location.protocol == \"https:\") && document.cookie.match(/\\bcsm=1/))) ? \"; secure\" : \"\"), o = ((l + m) + \"_\"), p = new Date((Date.now() + 604800000)).toGMTString(), q = window.location.hostname.replace(/^.*(facebook\\..*)$/i, \"$1\"), r = ((((\"; expires=\" + p) + \";path=/; domain=\") + q) + n), s = 0, t, u = (k.sessionStorage && a.sessionStorage), v = document.cookie.length, w = false, x = Date.now();\n function y(ca) {\n return ((((o + (s++)) + \"=\") + encodeURIComponent(ca)) + r);\n };\n function z() {\n var ca = [], da = false, ea = 0, fa = 0;\n this.isEmpty = function() {\n return !ca.length;\n };\n this.enqueue = function(ga, ha) {\n if (ha) {\n ca.unshift(ga);\n }\n else ca.push(ga);\n ;\n };\n this.dequeue = function() {\n ca.shift();\n };\n this.peek = function() {\n return ca[0];\n };\n this.clear = function(ga) {\n v = Math.min(v, document.cookie.length);\n if ((!w && (((new Date() - x) > 60000)))) {\n w = true;\n };\n var ha = (!ga && ((document.cookie.search(l) >= 0))), ia = !!h.cookie_header_limit, ja = (h.cookie_count_limit || 19), ka = (h.cookie_header_limit || 3950), la = (ja - 5), ma = (ka - 1000);\n while (!this.isEmpty()) {\n var na = y(this.peek());\n if ((ia && (((na.length > ka) || ((w && ((na.length + v) > ka))))))) {\n this.dequeue();\n continue;\n }\n ;\n if ((((ha || ia)) && (((((document.cookie.length + na.length) > ka)) || ((document.cookie.split(\";\").length > ja)))))) {\n break;\n };\n document.cookie = na;\n ha = true;\n this.dequeue();\n };\n var oa = Date.now();\n if ((ga || ((((!da && ha) && ((((fa > 0)) && (((Math.min((10 * Math.pow(2, (fa - 1))), 60000) + ea) < oa))))) && g.query(i.ONLOAD)) && (((!this.isEmpty() || ((document.cookie.length > ma))) || ((document.cookie.split(\";\").length > la))))))) {\n var pa = new Image(), qa = this, ra = (h.tracking_domain || \"\");\n da = true;\n pa.onload = function ua() {\n da = false;\n fa = 0;\n qa.clear();\n };\n pa.onerror = pa.onabort = function ua() {\n da = false;\n ea = Date.now();\n fa++;\n };\n var sa = (h.fb_isb ? (\"&fb_isb=\" + h.fb_isb) : \"\"), ta = (\"&__user=\" + h.user);\n pa.src = (((((((ra + \"/ajax/nectar.php?asyncSignal=\") + ((Math.floor((Math.random() * 10000)) + 1))) + sa) + ta) + \"&\") + ((!ga ? \"\" : \"s=\"))) + oa);\n }\n ;\n };\n };\n t = new z();\n if (u) {\n var aa = function() {\n var ca = 0, da = ca;\n function ea() {\n var ha = sessionStorage.getItem(\"_e_ids\");\n if (ha) {\n var ia = ((ha + \"\")).split(\";\");\n if ((ia.length == 2)) {\n ca = parseInt(ia[0], 10);\n da = parseInt(ia[1], 10);\n }\n ;\n }\n ;\n };\n function fa() {\n var ha = ((ca + \";\") + da);\n sessionStorage.setItem(\"_e_ids\", ha);\n };\n function ga(ha) {\n return (\"_e_\" + ((((ha !== undefined)) ? ha : ca++)));\n };\n this.isEmpty = function() {\n return (da === ca);\n };\n this.enqueue = function(ha, ia) {\n var ja = (ia ? ga(--da) : ga());\n sessionStorage.setItem(ja, ha);\n fa();\n };\n this.dequeue = function() {\n this.isEmpty();\n sessionStorage.removeItem(ga(da));\n da++;\n fa();\n };\n this.peek = function() {\n var ha = sessionStorage.getItem(ga(da));\n return (ha ? ((ha + \"\")) : ha);\n };\n this.clear = t.clear;\n ea();\n };\n t = new aa();\n }\n;\n var ba = {\n log: function(ca, da, ea) {\n if (h.no_cookies) {\n return\n };\n var fa = [m,Date.now(),ca,].concat(da);\n fa.push(fa.length);\n function ga() {\n var ha = JSON.stringify(fa);\n try {\n t.enqueue(ha, !!ea);\n t.clear(!!ea);\n } catch (ia) {\n if ((u && ((ia.code === 1000)))) {\n t = new z();\n u = false;\n ga();\n }\n ;\n };\n };\n ga();\n },\n getSessionID: function() {\n return m;\n }\n };\n e.exports = ba;\n a.EagleEye = ba;\n}, 3);\n__d(\"ScriptPathState\", [\"Arbiter\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h, i, j, k, l = 100, m = {\n setIsUIPageletRequest: function(n) {\n j = n;\n },\n setUserURISampleRate: function(n) {\n k = n;\n },\n reset: function() {\n h = null;\n i = false;\n j = false;\n },\n _shouldUpdateScriptPath: function() {\n return ((i && !j));\n },\n _shouldSendURI: function() {\n return ((Math.random() < k));\n },\n getParams: function() {\n var n = {\n };\n if (m._shouldUpdateScriptPath()) {\n if ((m._shouldSendURI() && (h !== null))) {\n n.user_uri = h.substring(0, l);\n };\n }\n else n.no_script_path = 1;\n ;\n return n;\n }\n };\n g.subscribe(\"pre_page_transition\", function(n, o) {\n i = true;\n h = o.to.getUnqualifiedURI().toString();\n });\n e.exports = a.ScriptPathState = m;\n});\n__d(\"goOrReplace\", [\"URI\",\"UserAgent\",], function(a, b, c, d, e, f) {\n var g = b(\"URI\"), h = b(\"UserAgent\");\n function i(j, k, l) {\n var m = new g(k), n = a.Quickling;\n if ((((((j.pathname == \"/\") && (m.getPath() != \"/\")) && n) && n.isActive()) && n.isPageActive(m))) {\n var o = (j.search ? {\n } : {\n q: \"\"\n });\n m = new g().setPath(\"/\").setQueryData(o).setFragment(m.getUnqualifiedURI().toString());\n k = m.toString();\n }\n ;\n if ((l && !((h.ie() < 8)))) {\n j.replace(k);\n }\n else if ((j.href == k)) {\n j.reload();\n }\n else j.href = k;\n \n ;\n };\n e.exports = i;\n});\n__d(\"AjaxPipeRequest\", [\"Arbiter\",\"AsyncRequest\",\"BigPipe\",\"CSS\",\"DOM\",\"Env\",\"PageletSet\",\"ScriptPathState\",\"URI\",\"copyProperties\",\"goOrReplace\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncRequest\"), i = b(\"BigPipe\"), j = b(\"CSS\"), k = b(\"DOM\"), l = b(\"Env\"), m = b(\"PageletSet\"), n = b(\"ScriptPathState\"), o = b(\"URI\"), p = b(\"copyProperties\"), q = b(\"goOrReplace\"), r = b(\"ge\"), s;\n function t(w, x) {\n var y = r(w);\n if (!y) {\n return\n };\n if (!x) {\n y.style.minHeight = \"600px\";\n };\n var z = m.getPageletIDs();\n for (var aa = 0; (aa < z.length); aa++) {\n var ba = z[aa];\n if (k.contains(y, ba)) {\n m.removePagelet(ba);\n };\n };\n k.empty(y);\n g.inform(\"pagelet/destroy\", {\n id: null,\n root: y\n });\n };\n function u(w, x) {\n var y = r(w);\n if ((y && !x)) {\n y.style.minHeight = \"100px\";\n };\n };\n function v(w, x) {\n this._uri = w;\n this._query_data = x;\n this._request = new h();\n this._canvas_id = null;\n this._allow_cross_page_transition = true;\n };\n p(v.prototype, {\n setCanvasId: function(w) {\n this._canvas_id = w;\n return this;\n },\n setURI: function(w) {\n this._uri = w;\n return this;\n },\n setData: function(w) {\n this._query_data = w;\n return this;\n },\n getData: function(w) {\n return this._query_data;\n },\n setAllowCrossPageTransition: function(w) {\n this._allow_cross_page_transition = w;\n return this;\n },\n setAppend: function(w) {\n this._append = w;\n return this;\n },\n send: function() {\n var w = {\n ajaxpipe: 1,\n ajaxpipe_token: l.ajaxpipe_token\n };\n p(w, n.getParams());\n n.reset();\n this._request.setOption(\"useIframeTransport\", true).setURI(this._uri).setData(p(w, this._query_data)).setPreBootloadHandler(this._preBootloadHandler.bind(this)).setInitialHandler(this._onInitialResponse.bind(this)).setHandler(this._onResponse.bind(this)).setMethod(\"GET\").setReadOnly(true).setAllowCrossPageTransition(this._allow_cross_page_transition);\n if (this._automatic) {\n this._relevantRequest = s;\n }\n else s = this._request;\n ;\n this._request.send();\n return this;\n },\n _preBootloadFirstResponse: function(w) {\n return false;\n },\n _fireDomContentCallback: function() {\n this._arbiter.inform(\"ajaxpipe/domcontent_callback\", true, g.BEHAVIOR_STATE);\n },\n _fireOnloadCallback: function() {\n this._arbiter.inform(\"ajaxpipe/onload_callback\", true, g.BEHAVIOR_STATE);\n },\n _isRelevant: function(w) {\n return (((this._request == s) || ((this._automatic && (this._relevantRequest == s)))) || this._jsNonBlock);\n },\n _preBootloadHandler: function(w) {\n var x = w.getPayload();\n if (((!x || x.redirect) || !this._isRelevant(w))) {\n return false\n };\n var y = false;\n if (w.is_first) {\n ((!this._append && !this._displayCallback) && t(this._canvas_id, this._constHeight));\n this._arbiter = new g();\n y = this._preBootloadFirstResponse(w);\n this.pipe = new i({\n arbiter: this._arbiter,\n rootNodeID: this._canvas_id,\n lid: this._request.lid,\n isAjax: true,\n domContentCallback: this._fireDomContentCallback.bind(this),\n onloadCallback: this._fireOnloadCallback.bind(this),\n domContentEvt: \"ajaxpipe/domcontent_callback\",\n onloadEvt: \"ajaxpipe/onload_callback\",\n jsNonBlock: this._jsNonBlock,\n automatic: this._automatic,\n displayCallback: this._displayCallback\n });\n }\n ;\n return y;\n },\n _redirect: function(w) {\n if (w.redirect) {\n if ((w.force || !this.isPageActive(w.redirect))) {\n var x = [\"ajaxpipe\",\"ajaxpipe_token\",].concat(this.getSanitizedParameters());\n q(window.location, o(w.redirect).removeQueryData(x), true);\n }\n else {\n var y = a.PageTransitions;\n y.go(w.redirect, true);\n }\n ;\n return true;\n }\n else return false\n ;\n },\n isPageActive: function(w) {\n return true;\n },\n getSanitizedParameters: function() {\n return [];\n },\n _versionCheck: function(w) {\n return true;\n },\n _onInitialResponse: function(w) {\n var x = w.getPayload();\n if (!this._isRelevant(w)) {\n return false\n };\n if (!x) {\n return true\n };\n if ((this._redirect(x) || !this._versionCheck(x))) {\n return false\n };\n return true;\n },\n _processFirstResponse: function(w) {\n var x = w.getPayload();\n if ((r(this._canvas_id) && (x.canvas_class != null))) {\n j.setClass(this._canvas_id, x.canvas_class);\n };\n },\n setFirstResponseCallback: function(w) {\n this._firstResponseCallback = w;\n return this;\n },\n setFirstResponseHandler: function(w) {\n this._processFirstResponse = w;\n return this;\n },\n _onResponse: function(w) {\n var x = w.payload;\n if (!this._isRelevant(w)) {\n return h.suppressOnloadToken\n };\n if (w.is_first) {\n this._processFirstResponse(w);\n (this._firstResponseCallback && this._firstResponseCallback());\n x.provides = (x.provides || []);\n x.provides.push(\"uipage_onload\");\n if (this._append) {\n x.append = this._canvas_id;\n };\n }\n ;\n if (x) {\n if ((((\"content\" in x.content) && (this._canvas_id !== null)) && (this._canvas_id != \"content\"))) {\n x.content[this._canvas_id] = x.content.content;\n delete x.content.content;\n }\n ;\n this.pipe.onPageletArrive(x);\n }\n ;\n if (w.is_last) {\n u(this._canvas_id, this._constHeight);\n };\n return h.suppressOnloadToken;\n },\n setNectarModuleDataSafe: function(w) {\n this._request.setNectarModuleDataSafe(w);\n return this;\n },\n setFinallyHandler: function(w) {\n this._request.setFinallyHandler(w);\n return this;\n },\n setErrorHandler: function(w) {\n this._request.setErrorHandler(w);\n return this;\n },\n abort: function() {\n this._request.abort();\n if ((s == this._request)) {\n s = null;\n };\n this._request = null;\n return this;\n },\n setJSNonBlock: function(w) {\n this._jsNonBlock = w;\n return this;\n },\n setAutomatic: function(w) {\n this._automatic = w;\n return this;\n },\n setDisplayCallback: function(w) {\n this._displayCallback = w;\n return this;\n },\n setConstHeight: function(w) {\n this._constHeight = w;\n return this;\n },\n getAsyncRequest: function() {\n return this._request;\n }\n });\n p(v, {\n getCurrentRequest: function() {\n return s;\n },\n setCurrentRequest: function(w) {\n s = w;\n }\n });\n e.exports = v;\n});\n__d(\"AsyncRequestNectarLogging\", [\"AsyncRequest\",\"Nectar\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"Nectar\"), i = b(\"copyProperties\");\n i(g.prototype, {\n setNectarModuleData: function(j) {\n if ((this.method == \"POST\")) {\n h.addModuleData(this.data, j);\n };\n },\n setNectarImpressionId: function() {\n if ((this.method == \"POST\")) {\n h.addImpressionID(this.data);\n };\n }\n });\n});\n__d(\"CSSClassTransition\", [\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = [];\n function i() {\n \n };\n g(i, {\n go: function(j, k, l, m) {\n var n;\n for (var o = 0; (o < h.length); o++) {\n if ((h[o](j, k, l, m) === true)) {\n n = true;\n };\n };\n if (!n) {\n j.className = k;\n };\n },\n registerHandler: function(j) {\n h.push(j);\n return {\n remove: function() {\n var k = h.indexOf(j);\n if ((k >= 0)) {\n h.splice(k, 1);\n };\n }\n };\n }\n });\n e.exports = i;\n});\n__d(\"DOMClone\", [], function(a, b, c, d, e, f) {\n var g = {\n shallowClone: function(i) {\n return h(i, false);\n },\n deepClone: function(i) {\n return h(i, true);\n }\n };\n function h(i, j) {\n var k = i.cloneNode(j);\n if ((typeof k.__FB_TOKEN !== \"undefined\")) {\n delete k.__FB_TOKEN;\n };\n return k;\n };\n e.exports = g;\n});\n__d(\"DOMScroll\", [\"Animation\",\"Arbiter\",\"DOM\",\"DOMQuery\",\"Vector\",\"ViewportBounds\",\"ge\",\"isAsyncScrollQuery\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"Arbiter\"), i = b(\"DOM\"), j = b(\"DOMQuery\"), k = b(\"Vector\"), l = b(\"ViewportBounds\"), m = b(\"ge\"), n = b(\"isAsyncScrollQuery\"), o = {\n SCROLL: \"dom-scroll\",\n getScrollState: function() {\n var p = k.getViewportDimensions(), q = k.getDocumentDimensions(), r = ((q.x > p.x)), s = ((q.y > p.y));\n r += 0;\n s += 0;\n return new k(r, s);\n },\n _scrollbarSize: null,\n _initScrollbarSize: function() {\n var p = i.create(\"p\");\n p.style.width = \"100%\";\n p.style.height = \"200px\";\n var q = i.create(\"div\");\n q.style.position = \"absolute\";\n q.style.top = \"0px\";\n q.style.left = \"0px\";\n q.style.visibility = \"hidden\";\n q.style.width = \"200px\";\n q.style.height = \"150px\";\n q.style.overflow = \"hidden\";\n q.appendChild(p);\n document.body.appendChild(q);\n var r = p.offsetWidth;\n q.style.overflow = \"scroll\";\n var s = p.offsetWidth;\n if ((r == s)) {\n s = q.clientWidth;\n };\n document.body.removeChild(q);\n o._scrollbarSize = (r - s);\n },\n getScrollbarSize: function() {\n if ((o._scrollbarSize === null)) {\n o._initScrollbarSize();\n };\n return o._scrollbarSize;\n },\n scrollTo: function(p, q, r, s, t) {\n if (((typeof q == \"undefined\") || (q === true))) {\n q = 750;\n };\n if (n()) {\n q = false;\n };\n if (!((p instanceof k))) {\n var u = k.getScrollPosition().x, v = k.getElementPosition(m(p)).y;\n p = new k(u, v, \"document\");\n if (!s) {\n p.y -= (l.getTop() / ((r ? 2 : 1)));\n };\n }\n ;\n if (r) {\n p.y -= (k.getViewportDimensions().y / 2);\n }\n else if (s) {\n p.y -= k.getViewportDimensions().y;\n p.y += s;\n }\n \n ;\n p = p.convertTo(\"document\");\n if (q) {\n return new g(document.body).to(\"scrollTop\", p.y).to(\"scrollLeft\", p.x).ease(g.ease.end).duration(q).ondone(t).go();\n }\n else if (window.scrollTo) {\n window.scrollTo(p.x, p.y);\n (t && t());\n }\n \n ;\n h.inform(o.SCROLL);\n },\n ensureVisible: function(p, q, r, s, t) {\n if ((r === undefined)) {\n r = 10;\n };\n p = m(p);\n if (q) {\n p = j.find(p, q);\n };\n var u = k.getScrollPosition().x, v = k.getScrollPosition().y, w = (v + k.getViewportDimensions().y), x = k.getElementPosition(p).y, y = (x + k.getElementDimensions(p).y);\n x -= l.getTop();\n x -= r;\n y += r;\n if ((x < v)) {\n o.scrollTo(new k(u, x, \"document\"), s, false, false, t);\n }\n else if ((y > w)) {\n if (((x - ((y - w))) < v)) {\n o.scrollTo(new k(u, x, \"document\"), s, false, false, t);\n }\n else o.scrollTo(new k(u, y, \"document\"), s, false, true, t);\n \n }\n ;\n },\n scrollToTop: function(p) {\n var q = k.getScrollPosition();\n o.scrollTo(new k(q.x, 0, \"document\"), (p !== false));\n }\n };\n e.exports = o;\n});\n__d(\"Button\", [\"CSS\",\"DataStore\",\"DOM\",\"Event\",\"Parent\",\"cx\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"CSS\"), h = b(\"DataStore\"), i = b(\"DOM\"), j = b(\"Event\"), k = b(\"Parent\"), l = b(\"cx\"), m = b(\"emptyFunction\"), n = \"uiButtonDisabled\", o = \"uiButtonDepressed\", p = \"-cx-PUBLIC-abstractButton__disabled\", q = \"-cx-PUBLIC-abstractButton__depressed\", r = \"button:blocker\", s = \"href\", t = \"ajaxify\";\n function u(aa, ba) {\n var ca = h.get(aa, r);\n if (ba) {\n if (ca) {\n ca.remove();\n h.remove(aa, r);\n }\n ;\n }\n else if (!ca) {\n h.set(aa, r, j.listen(aa, \"click\", m.thatReturnsFalse, j.Priority.URGENT));\n }\n ;\n };\n function v(aa) {\n var ba = (k.byClass(aa, \"uiButton\") || k.byClass(aa, \"-cx-PRIVATE-abstractButton__root\"));\n if (!ba) {\n throw new Error(\"invalid use case\")\n };\n return ba;\n };\n function w(aa) {\n return i.isNodeOfType(aa, \"a\");\n };\n function x(aa) {\n return i.isNodeOfType(aa, \"button\");\n };\n function y(aa) {\n return g.hasClass(aa, \"-cx-PRIVATE-abstractButton__root\");\n };\n var z = {\n getInputElement: function(aa) {\n aa = v(aa);\n if (w(aa)) {\n throw new Error(\"invalid use case\")\n };\n return (x(aa) ? aa : i.find(aa, \"input\"));\n },\n isEnabled: function(aa) {\n return !((g.hasClass(v(aa), n) || g.hasClass(v(aa), p)));\n },\n setEnabled: function(aa, ba) {\n aa = v(aa);\n var ca = (y(aa) ? p : n);\n g.conditionClass(aa, ca, !ba);\n if (w(aa)) {\n var da = aa.getAttribute(\"href\"), ea = aa.getAttribute(\"ajaxify\"), fa = h.get(aa, s, \"#\"), ga = h.get(aa, t);\n if (ba) {\n if (!da) {\n aa.setAttribute(\"href\", fa);\n };\n if ((!ea && ga)) {\n aa.setAttribute(\"ajaxify\", ga);\n };\n aa.removeAttribute(\"tabIndex\");\n }\n else {\n if ((da && (da !== fa))) {\n h.set(aa, s, da);\n };\n if ((ea && (ea !== ga))) {\n h.set(aa, t, ea);\n };\n aa.removeAttribute(\"href\");\n aa.removeAttribute(\"ajaxify\");\n aa.setAttribute(\"tabIndex\", \"-1\");\n }\n ;\n u(aa, ba);\n }\n else {\n var ha = z.getInputElement(aa);\n ha.disabled = !ba;\n u(ha, ba);\n }\n ;\n },\n setDepressed: function(aa, ba) {\n aa = v(aa);\n var ca = (y(aa) ? q : o);\n g.conditionClass(aa, ca, ba);\n },\n isDepressed: function(aa) {\n aa = v(aa);\n var ba = (y(aa) ? q : o);\n return g.hasClass(aa, ba);\n },\n setLabel: function(aa, ba) {\n aa = v(aa);\n if (y(aa)) {\n var ca = [];\n if (ba) {\n ca.push(ba);\n };\n var da = i.scry(aa, \".img\")[0];\n if (da) {\n if ((aa.firstChild == da)) {\n ca.unshift(da);\n }\n else ca.push(da);\n \n };\n i.setContent(aa, ca);\n }\n else if (w(aa)) {\n var ea = i.find(aa, \"span.uiButtonText\");\n i.setContent(ea, ba);\n }\n else z.getInputElement(aa).value = ba;\n \n ;\n var fa = (y(aa) ? \"-cx-PUBLIC-abstractButton__notext\" : \"uiButtonNoText\");\n g.conditionClass(aa, fa, !ba);\n },\n setIcon: function(aa, ba) {\n if ((ba && !i.isNode(ba))) {\n return\n };\n aa = v(aa);\n var ca = i.scry(aa, \".img\")[0];\n if (!ba) {\n (ca && i.remove(ca));\n return;\n }\n ;\n g.addClass(ba, \"customimg\");\n if ((ca != ba)) {\n if (ca) {\n i.replace(ca, ba);\n }\n else i.prependContent(aa, ba);\n \n };\n }\n };\n e.exports = z;\n});\n__d(\"Locale\", [\"Style\",], function(a, b, c, d, e, f) {\n var g = b(\"Style\"), h, i = {\n isRTL: function() {\n if ((h === undefined)) {\n h = ((\"rtl\" === g.get(document.body, \"direction\")));\n };\n return h;\n }\n };\n e.exports = i;\n});\n__d(\"getOverlayZIndex\", [\"Style\",], function(a, b, c, d, e, f) {\n var g = b(\"Style\");\n function h(i, j) {\n j = (j || document.body);\n var k = [];\n while ((i && (i !== j))) {\n k.push(i);\n i = i.parentNode;\n };\n if ((i !== j)) {\n return 0\n };\n for (var l = (k.length - 1); (l >= 0); l--) {\n var m = k[l];\n if ((g.get(m, \"position\") != \"static\")) {\n var n = parseInt(g.get(m, \"z-index\"), 10);\n if (!isNaN(n)) {\n return n\n };\n }\n ;\n };\n return 0;\n };\n e.exports = h;\n});\n__d(\"Dialog\", [\"Animation\",\"Arbiter\",\"AsyncRequest\",\"Bootloader\",\"Button\",\"ContextualThing\",\"CSS\",\"DOM\",\"Event\",\"Focus\",\"Form\",\"HTML\",\"Keys\",\"Locale\",\"Parent\",\"Run\",\"Style\",\"URI\",\"UserAgent\",\"Vector\",\"bind\",\"copyProperties\",\"createArrayFrom\",\"emptyFunction\",\"getObjectValues\",\"getOverlayZIndex\",\"removeFromArray\",\"shield\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"Arbiter\"), i = b(\"AsyncRequest\"), j = b(\"Bootloader\"), k = b(\"Button\"), l = b(\"ContextualThing\"), m = b(\"CSS\"), n = b(\"DOM\"), o = b(\"Event\"), p = b(\"Focus\"), q = b(\"Form\"), r = b(\"HTML\"), s = b(\"Keys\"), t = b(\"Locale\"), u = b(\"Parent\"), v = b(\"Run\"), w = b(\"Style\"), x = b(\"URI\"), y = b(\"UserAgent\"), z = b(\"Vector\"), aa = b(\"bind\"), ba = b(\"copyProperties\"), ca = b(\"createArrayFrom\"), da = b(\"emptyFunction\"), ea = b(\"getObjectValues\"), fa = b(\"getOverlayZIndex\"), ga = b(\"removeFromArray\"), ha = b(\"shield\"), ia = b(\"tx\"), ja = function() {\n var la = document.body, ma = document.createElement(\"div\"), na = document.createElement(\"div\");\n la.insertBefore(ma, la.firstChild);\n la.insertBefore(na, la.firstChild);\n ma.style.position = \"fixed\";\n ma.style.top = \"20px\";\n var oa = (ma.offsetTop !== na.offsetTop);\n la.removeChild(ma);\n la.removeChild(na);\n ja = da.thatReturns(oa);\n return oa;\n };\n function ka(la) {\n this._show_loading = true;\n this._auto_focus = true;\n this._submit_on_enter = false;\n this._fade_enabled = true;\n this._onload_handlers = [];\n this._top = 125;\n this._uniqueID = (\"dialog_\" + ka._globalCount++);\n this._content = null;\n this._obj = null;\n this._popup = null;\n this._overlay = null;\n this._shim = null;\n this._causal_elem = null;\n this._previous_focus = null;\n this._buttons = [];\n this._buildDialog();\n if (la) {\n this._setFromModel(la);\n };\n ka._init();\n };\n ba(ka, {\n OK: {\n name: \"ok\",\n label: \"Okay\"\n },\n CANCEL: {\n name: \"cancel\",\n label: \"Cancel\",\n className: \"inputaux\"\n },\n CLOSE: {\n name: \"close\",\n label: \"Close\"\n },\n NEXT: {\n name: \"next\",\n label: \"Next\"\n },\n SAVE: {\n name: \"save\",\n label: \"Save\"\n },\n SUBMIT: {\n name: \"submit\",\n label: \"Submit\"\n },\n CONFIRM: {\n name: \"confirm\",\n label: \"Confirm\"\n },\n DELETE: {\n name: \"delete\",\n label: \"Delete\"\n },\n _globalCount: 0,\n _bottoms: [0,],\n max_bottom: 0,\n _updateMaxBottom: function() {\n ka.max_bottom = Math.max.apply(Math, ka._bottoms);\n }\n });\n ba(ka, {\n OK_AND_CANCEL: [ka.OK,ka.CANCEL,],\n _STANDARD_BUTTONS: [ka.OK,ka.CANCEL,ka.CLOSE,ka.SAVE,ka.SUBMIT,ka.CONFIRM,ka.DELETE,],\n SIZE: {\n WIDE: 555,\n STANDARD: 445\n },\n _HALO_WIDTH: 10,\n _BORDER_WIDTH: 1,\n _PADDING_WIDTH: 10,\n _PAGE_MARGIN: 40,\n _stack: [],\n _isUsingCSSBorders: function() {\n return (y.ie() < 7);\n },\n newButton: function(la, ma, na, oa) {\n var pa = {\n name: la,\n label: ma\n };\n if (na) {\n pa.className = na;\n };\n if (oa) {\n pa.handler = oa;\n };\n return pa;\n },\n getCurrent: function() {\n var la = ka._stack;\n return (la.length ? la[(la.length - 1)] : null);\n },\n hideCurrent: function() {\n var la = ka.getCurrent();\n (la && la.hide());\n },\n bootstrap: function(la, ma, na, oa, pa, qa) {\n ma = (ma || {\n });\n ba(ma, new x(la).getQueryData());\n oa = (oa || ((na ? \"GET\" : \"POST\")));\n var ra = (u.byClass(qa, \"stat_elem\") || qa);\n if ((ra && m.hasClass(ra, \"async_saving\"))) {\n return false\n };\n var sa = new i().setReadOnly(!!na).setMethod(oa).setRelativeTo(qa).setStatusElement(ra).setURI(la).setNectarModuleDataSafe(qa).setData(ma), ta = new ka(pa).setCausalElement(qa).setAsync(sa);\n ta.show();\n return false;\n },\n showFromModel: function(la, ma) {\n var na = new ka(la).setCausalElement(ma).show();\n if (la.hiding) {\n na.hide();\n };\n },\n _init: function() {\n this._init = da;\n v.onLeave(ha(ka._tearDown, null, false));\n h.subscribe(\"page_transition\", ha(ka._tearDown, null, true));\n o.listen(document.documentElement, \"keydown\", function(event) {\n if (((o.getKeyCode(event) == s.ESC) && !event.getModifiers().any)) {\n if (ka._escape()) {\n event.kill();\n };\n }\n else if (((o.getKeyCode(event) == s.RETURN) && !event.getModifiers().any)) {\n if (ka._enter()) {\n event.kill();\n }\n }\n ;\n });\n o.listen(window, \"resize\", function(event) {\n var la = ka.getCurrent();\n (la && la._resetDialogObj());\n });\n },\n _findButton: function(la, ma) {\n if (la) {\n for (var na = 0; (na < la.length); ++na) {\n if ((la[na].name == ma)) {\n return la[na]\n };\n }\n };\n return null;\n },\n _tearDown: function(la) {\n var ma = ka._stack.slice();\n for (var na = (ma.length - 1); (na >= 0); na--) {\n if ((((la && !ma[na]._cross_transition)) || ((!la && !ma[na]._cross_quickling)))) {\n ma[na].hide();\n };\n };\n },\n _escape: function() {\n var la = ka.getCurrent();\n if (!la) {\n return false\n };\n var ma = la._semi_modal, na = la._buttons;\n if ((!na.length && !ma)) {\n return false\n };\n if ((ma && !na.length)) {\n la.hide();\n return true;\n }\n ;\n var oa, pa = ka._findButton(na, \"cancel\");\n if (la._cancelHandler) {\n la.cancel();\n return true;\n }\n else if (pa) {\n oa = pa;\n }\n else if ((na.length == 1)) {\n oa = na[0];\n }\n else return false\n \n \n ;\n la._handleButton(oa);\n return true;\n },\n _enter: function() {\n var la = ka.getCurrent();\n if ((!la || !la._submit_on_enter)) {\n return false\n };\n if ((document.activeElement != la._frame)) {\n return false\n };\n var ma = la._buttons;\n if (!ma) {\n return false\n };\n la._handleButton(ma[0]);\n return true;\n },\n call_or_eval: function(la, ma, na) {\n if (!ma) {\n return undefined\n };\n na = (na || {\n });\n if ((typeof ma == \"string\")) {\n var oa = Object.keys(na).join(\", \");\n ma = (eval)(((((\"({f: function(\" + oa) + \") { \") + ma) + \"}})\")).f;\n }\n ;\n return ma.apply(la, ea(na));\n }\n });\n ba(ka.prototype, {\n _cross_quickling: false,\n _cross_transition: false,\n _loading: false,\n _showing: false,\n show: function() {\n this._showing = true;\n if (this._async_request) {\n if (this._show_loading) {\n this.showLoading();\n };\n }\n else this._update();\n ;\n return this;\n },\n showLoading: function() {\n this._loading = true;\n m.addClass(this._frame, \"dialog_loading_shown\");\n this._renderDialog();\n return this;\n },\n hide: function() {\n if ((!this._showing && !this._loading)) {\n return this\n };\n this._showing = false;\n if (this._autohide_timeout) {\n clearTimeout(this._autohide_timeout);\n this._autohide_timeout = null;\n }\n ;\n if ((this._fade_enabled && (ka._stack.length <= 1))) {\n this._fadeOut();\n }\n else this._hide();\n ;\n return this;\n },\n cancel: function() {\n if ((!this._cancelHandler || (this._cancelHandler() !== false))) {\n this.hide();\n };\n },\n getRoot: function() {\n return this._obj;\n },\n getBody: function() {\n return n.scry(this._obj, \"div.dialog_body\")[0];\n },\n getButtonElement: function(la) {\n if ((typeof la == \"string\")) {\n la = ka._findButton(this._buttons, la);\n };\n if ((!la || !la.name)) {\n return null\n };\n var ma = n.scry(this._popup, \"input\"), na = function(oa) {\n return (oa.name == la.name);\n };\n return (ma.filter(na)[0] || null);\n },\n getContentNode: function() {\n return n.find(this._content, \"div.dialog_content\");\n },\n getFormData: function() {\n return q.serialize(this.getContentNode());\n },\n setAllowCrossPageTransition: function(la) {\n this._cross_transition = la;\n return this;\n },\n setAllowCrossQuicklingNavigation: function(la) {\n this._cross_quickling = la;\n return this;\n },\n setShowing: function() {\n this.show();\n return this;\n },\n setHiding: function() {\n this.hide();\n return this;\n },\n setTitle: function(la) {\n var ma = this._nodes.title, na = this._nodes.title_inner, oa = this._nodes.content;\n n.setContent(na, this._format((la || \"\")));\n m.conditionShow(ma, !!la);\n m.conditionClass(oa, \"dialog_content_titleless\", !la);\n return this;\n },\n setBody: function(la) {\n n.setContent(this._nodes.body, this._format(la));\n return this;\n },\n setExtraData: function(la) {\n this._extra_data = la;\n return this;\n },\n setReturnData: function(la) {\n this._return_data = la;\n return this;\n },\n setShowLoading: function(la) {\n this._show_loading = la;\n return this;\n },\n setCustomLoading: function(la) {\n var ma = n.create(\"div\", {\n className: \"dialog_loading\"\n }, la);\n n.setContent(this._frame, [this._nodes.title,this._nodes.content,ma,]);\n return this;\n },\n setFullBleed: function(la) {\n this._full_bleed = la;\n this._updateWidth();\n m.conditionClass(this._obj, \"full_bleed\", la);\n return this;\n },\n setCausalElement: function(la) {\n this._causal_elem = la;\n return this;\n },\n setUserData: function(la) {\n this._user_data = la;\n return this;\n },\n getUserData: function() {\n return this._user_data;\n },\n setAutohide: function(la) {\n if (la) {\n if (this._showing) {\n this._autohide_timeout = setTimeout(ha(this.hide, this), la);\n }\n else this._autohide = la;\n ;\n }\n else {\n this._autohide = null;\n if (this._autohide_timeout) {\n clearTimeout(this._autohide_timeout);\n this._autohide_timeout = null;\n }\n ;\n }\n ;\n return this;\n },\n setSummary: function(la) {\n var ma = this._nodes.summary;\n n.setContent(ma, this._format((la || \"\")));\n m.conditionShow(ma, !!la);\n return this;\n },\n setButtons: function(la) {\n var ma, na;\n if (!((la instanceof Array))) {\n ma = ca(arguments);\n }\n else ma = la;\n ;\n for (var oa = 0; (oa < ma.length); ++oa) {\n if ((typeof ma[oa] == \"string\")) {\n na = ka._findButton(ka._STANDARD_BUTTONS, ma[oa]);\n ma[oa] = na;\n }\n ;\n };\n this._buttons = ma;\n var pa = [];\n if ((ma && (ma.length > 0))) {\n for (var qa = 0; (qa < ma.length); qa++) {\n na = ma[qa];\n var ra = n.create(\"input\", {\n type: \"button\",\n name: (na.name || \"\"),\n value: na.label\n }), sa = n.create(\"label\", {\n className: \"uiButton uiButtonLarge uiButtonConfirm\"\n }, ra);\n if (na.className) {\n na.className.split(/\\s+/).forEach(function(ua) {\n m.addClass(sa, ua);\n });\n if (m.hasClass(sa, \"inputaux\")) {\n m.removeClass(sa, \"inputaux\");\n m.removeClass(sa, \"uiButtonConfirm\");\n }\n ;\n if (m.hasClass(sa, \"uiButtonSpecial\")) {\n m.removeClass(sa, \"uiButtonConfirm\");\n };\n }\n ;\n if (na.icon) {\n n.prependContent(sa, n.create(\"img\", {\n src: na.icon,\n className: \"img mrs\"\n }));\n };\n if (na.disabled) {\n k.setEnabled(sa, false);\n };\n o.listen(ra, \"click\", this._handleButton.bind(this, na.name));\n for (var ta in na) {\n if (((ta.indexOf(\"data-\") === 0) && (ta.length > 5))) {\n ra.setAttribute(ta, na[ta]);\n };\n };\n pa.push(sa);\n }\n };\n n.setContent(this._nodes.buttons, pa);\n this._updateButtonVisibility();\n return this;\n },\n setButtonsMessage: function(la) {\n n.setContent(this._nodes.button_message, this._format((la || \"\")));\n this._has_button_message = !!la;\n this._updateButtonVisibility();\n return this;\n },\n _updateButtonVisibility: function() {\n var la = ((this._buttons.length > 0) || this._has_button_message);\n m.conditionShow(this._nodes.button_wrapper, la);\n m.conditionClass(this._obj, \"omitDialogFooter\", !la);\n },\n setClickButtonOnEnter: function(la, ma) {\n this._clickOnEnterTarget = la;\n if (!this._clickOnEnterListener) {\n this._clickOnEnterListener = o.listen(this._nodes.body, \"keypress\", function(event) {\n var na = event.getTarget();\n if ((na && (na.id === this._clickOnEnterTarget))) {\n if ((o.getKeyCode(event) == s.RETURN)) {\n this._handleButton(ma);\n event.kill();\n }\n \n };\n return true;\n }.bind(this));\n };\n return this;\n },\n setStackable: function(la, ma) {\n this._is_stackable = la;\n this._shown_while_stacked = (la && ma);\n return this;\n },\n setHandler: function(la) {\n this._handler = la;\n return this;\n },\n setCancelHandler: function(la) {\n this._cancelHandler = ka.call_or_eval.bind(null, this, la);\n return this;\n },\n setCloseHandler: function(la) {\n this._close_handler = ka.call_or_eval.bind(null, this, la);\n return this;\n },\n clearHandler: function() {\n return this.setHandler(null);\n },\n setPostURI: function(la, ma) {\n if ((ma === undefined)) {\n ma = true;\n };\n if (ma) {\n this.setHandler(this._submitForm.bind(this, \"POST\", la));\n }\n else this.setHandler(function() {\n q.post(la, this.getFormData());\n this.hide();\n }.bind(this));\n ;\n return this;\n },\n setGetURI: function(la) {\n this.setHandler(this._submitForm.bind(this, \"GET\", la));\n return this;\n },\n setModal: function(la) {\n this._modal = la;\n m.conditionClass(this._obj, \"generic_dialog_modal\", la);\n return this;\n },\n setSemiModal: function(la) {\n if (la) {\n this.setModal(true);\n this._semiModalListener = o.listen(this._obj, \"click\", function(ma) {\n if (!n.contains(this._popup, ma.getTarget())) {\n this.hide();\n };\n }.bind(this));\n }\n else (this._semiModalListener && this._semiModalListener.remove());\n ;\n this._semi_modal = la;\n return this;\n },\n setWideDialog: function(la) {\n this._wide_dialog = la;\n this._updateWidth();\n return this;\n },\n setContentWidth: function(la) {\n this._content_width = la;\n this._updateWidth();\n return this;\n },\n setTitleLoading: function(la) {\n if ((la === undefined)) {\n la = true;\n };\n var ma = n.find(this._popup, \"h2.dialog_title\");\n if (ma) {\n m.conditionClass(ma, \"loading\", la);\n };\n return this;\n },\n setSecure: function(la) {\n m.conditionClass(this._nodes.title, \"secure\", la);\n return this;\n },\n setClassName: function(la) {\n la.split(/\\s+/).forEach(m.addClass.bind(m, this._obj));\n return this;\n },\n setFadeEnabled: function(la) {\n this._fade_enabled = la;\n return this;\n },\n setFooter: function(la) {\n var ma = this._nodes.footer;\n n.setContent(ma, this._format((la || \"\")));\n m.conditionShow(ma, !!la);\n return this;\n },\n setAutoFocus: function(la) {\n this._auto_focus = la;\n return this;\n },\n setTop: function(la) {\n this._top = la;\n this._resetDialogObj();\n return this;\n },\n onloadRegister: function(la) {\n ca(la).forEach(function(ma) {\n if ((typeof ma == \"string\")) {\n ma = new Function(ma);\n };\n this._onload_handlers.push(ma.bind(this));\n }.bind(this));\n return this;\n },\n setAsyncURL: function(la) {\n return this.setAsync(new i(la));\n },\n setAsync: function(la) {\n var ma = function(ua) {\n if ((this._async_request != la)) {\n return\n };\n this._async_request = null;\n var va = ua.getPayload(), wa = va;\n if (this._loading) {\n this._showing = true;\n };\n if ((typeof wa == \"string\")) {\n this.setBody(wa);\n }\n else this._setFromModel(wa);\n ;\n this._update();\n }.bind(this), na = la.getData();\n na.__d = 1;\n la.setData(na);\n var oa = (la.getHandler() || da);\n la.setHandler(function(ua) {\n oa(ua);\n ma(ua);\n });\n var pa = la, qa = (pa.getErrorHandler() || da), ra = (pa.getTransportErrorHandler() || da), sa = function() {\n this._async_request = null;\n this._loading = false;\n if ((this._showing && this._shown_while_stacked)) {\n this._update();\n }\n else this._hide(this._is_stackable);\n ;\n }.bind(this), ta = (pa.getServerDialogCancelHandler() || sa);\n pa.setAllowCrossPageTransition(this._cross_transition).setErrorHandler(function(ua) {\n sa();\n qa(ua);\n }).setTransportErrorHandler(function(ua) {\n sa();\n ra(ua);\n }).setServerDialogCancelHandler(ta);\n la.send();\n this._async_request = la;\n if (this._showing) {\n this.show();\n };\n return this;\n },\n _format: function(la) {\n if ((typeof la == \"string\")) {\n la = r(la);\n }\n else la = r.replaceJSONWrapper(la);\n ;\n if ((la instanceof r)) {\n la.setDeferred(true);\n };\n return la;\n },\n _update: function() {\n if (!this._showing) {\n return\n };\n if (((this._autohide && !this._async_request) && !this._autohide_timeout)) {\n this._autohide_timeout = setTimeout(aa(this, \"hide\"), this._autohide);\n };\n m.removeClass(this._frame, \"dialog_loading_shown\");\n this._loading = false;\n this._renderDialog();\n this._runOnloads();\n this._previous_focus = document.activeElement;\n p.set(this._frame);\n },\n _runOnloads: function() {\n for (var la = 0; (la < this._onload_handlers.length); ++la) {\n try {\n this._onload_handlers[la]();\n } catch (ma) {\n \n };\n };\n this._onload_handlers = [];\n },\n _updateWidth: function() {\n var la = (2 * ka._BORDER_WIDTH);\n if (ka._isUsingCSSBorders()) {\n la += (2 * ka._HALO_WIDTH);\n };\n if (this._content_width) {\n la += this._content_width;\n if (!this._full_bleed) {\n la += (2 * ka._PADDING_WIDTH);\n };\n }\n else if (this._wide_dialog) {\n la += ka.SIZE.WIDE;\n }\n else la += ka.SIZE.STANDARD;\n \n ;\n this._popup.style.width = (la + \"px\");\n },\n _updateZIndex: function() {\n if ((!this._hasSetZIndex && this._causal_elem)) {\n var la = fa(this._causal_elem), ma = this._causal_elem;\n while ((!la && (ma = l.getContext(ma)))) {\n la = fa(ma);;\n };\n this._hasSetZIndex = (la > ((this._modal ? 400 : 200)));\n w.set(this._obj, \"z-index\", (this._hasSetZIndex ? la : \"\"));\n }\n ;\n },\n _renderDialog: function() {\n this._updateZIndex();\n this._pushOntoStack();\n this._obj.style.height = (((this._modal && (y.ie() < 7))) ? (z.getDocumentDimensions().y + \"px\") : null);\n if ((this._obj && this._obj.style.display)) {\n this._obj.style.visibility = \"hidden\";\n this._obj.style.display = \"\";\n this.resetDialogPosition();\n this._obj.style.visibility = \"\";\n this._obj.dialog = this;\n }\n else this.resetDialogPosition();\n ;\n clearInterval(this.active_hiding);\n this.active_hiding = setInterval(this._activeResize.bind(this), 500);\n this._submit_on_enter = false;\n if (this._auto_focus) {\n var la = q.getFirstElement(this._content, [\"input[type=\\\"text\\\"]\",\"textarea\",\"input[type=\\\"password\\\"]\",]);\n if (la) {\n q.focusFirst.bind(this, this._content).defer();\n }\n else this._submit_on_enter = true;\n ;\n }\n ;\n var ma = (z.getElementDimensions(this._content).y + z.getElementPosition(this._content).y);\n ka._bottoms.push(ma);\n this._bottom = ma;\n ka._updateMaxBottom();\n return this;\n },\n _buildDialog: function() {\n this._obj = n.create(\"div\", {\n className: \"generic_dialog\",\n id: this._uniqueID\n });\n this._obj.style.display = \"none\";\n n.appendContent(document.body, this._obj);\n if (!this._popup) {\n this._popup = n.create(\"div\", {\n className: \"generic_dialog_popup\"\n });\n };\n this._obj.appendChild(this._popup);\n if (((y.ie() < 7) && !this._shim)) {\n j.loadModules([\"IframeShim\",], function(xa) {\n this._shim = new xa(this._popup);\n });\n };\n m.addClass(this._obj, \"pop_dialog\");\n if (t.isRTL()) {\n m.addClass(this._obj, \"pop_dialog_rtl\");\n };\n var la;\n if (ka._isUsingCSSBorders()) {\n la = ((\"\\u003Cdiv class=\\\"pop_container_advanced\\\"\\u003E\" + \"\\u003Cdiv class=\\\"pop_content\\\" id=\\\"pop_content\\\"\\u003E\\u003C/div\\u003E\") + \"\\u003C/div\\u003E\");\n }\n else la = ((((((((\"\\u003Cdiv class=\\\"pop_container\\\"\\u003E\" + \"\\u003Cdiv class=\\\"pop_verticalslab\\\"\\u003E\\u003C/div\\u003E\") + \"\\u003Cdiv class=\\\"pop_horizontalslab\\\"\\u003E\\u003C/div\\u003E\") + \"\\u003Cdiv class=\\\"pop_topleft\\\"\\u003E\\u003C/div\\u003E\") + \"\\u003Cdiv class=\\\"pop_topright\\\"\\u003E\\u003C/div\\u003E\") + \"\\u003Cdiv class=\\\"pop_bottomright\\\"\\u003E\\u003C/div\\u003E\") + \"\\u003Cdiv class=\\\"pop_bottomleft\\\"\\u003E\\u003C/div\\u003E\") + \"\\u003Cdiv class=\\\"pop_content pop_content_old\\\" id=\\\"pop_content\\\"\\u003E\\u003C/div\\u003E\") + \"\\u003C/div\\u003E\");\n ;\n n.setContent(this._popup, r(la));\n var ma = n.find(this._popup, \"div.pop_content\");\n ma.setAttribute(\"tabIndex\", \"0\");\n ma.setAttribute(\"role\", \"alertdialog\");\n this._frame = this._content = ma;\n var na = n.create(\"div\", {\n className: \"dialog_loading\"\n }, \"Loading...\"), oa = n.create(\"span\"), pa = n.create(\"h2\", {\n className: \"dialog_title hidden_elem\",\n id: (\"title_\" + this._uniqueID)\n }, oa), qa = n.create(\"div\", {\n className: \"dialog_summary hidden_elem\"\n }), ra = n.create(\"div\", {\n className: \"dialog_body\"\n }), sa = n.create(\"div\", {\n className: \"rfloat mlm\"\n }), ta = n.create(\"div\", {\n className: \"dialog_buttons_msg\"\n }), ua = n.create(\"div\", {\n className: \"dialog_buttons clearfix hidden_elem\"\n }, [sa,ta,]), va = n.create(\"div\", {\n className: \"dialog_footer hidden_elem\"\n }), wa = n.create(\"div\", {\n className: \"dialog_content\"\n }, [qa,ra,ua,va,]);\n this._nodes = {\n summary: qa,\n body: ra,\n buttons: sa,\n button_message: ta,\n button_wrapper: ua,\n footer: va,\n content: wa,\n title: pa,\n title_inner: oa\n };\n n.setContent(this._frame, [pa,wa,na,]);\n },\n _updateShim: function() {\n return (this._shim && this._shim.show());\n },\n _activeResize: function() {\n if ((this.last_offset_height != this._content.offsetHeight)) {\n this.last_offset_height = this._content.offsetHeight;\n this.resetDialogPosition();\n }\n ;\n },\n resetDialogPosition: function() {\n if (!this._popup) {\n return\n };\n this._resetDialogObj();\n this._updateShim();\n },\n _resetDialogObj: function() {\n var la = (2 * ka._PAGE_MARGIN), ma = z.getViewportDimensions(), na = (ma.x - la), oa = (ma.y - la), pa = (2 * ka._HALO_WIDTH), qa = z.getElementDimensions(this._content), ra = (qa.x + pa), sa = (qa.y + pa), ta = this._top, ua = (na - ra), va = (oa - sa);\n if ((va < 0)) {\n ta = ka._PAGE_MARGIN;\n }\n else if ((ta > va)) {\n ta = (ka._PAGE_MARGIN + ((Math.max(va, 0) / 2)));\n }\n ;\n var wa = ja();\n if (!wa) {\n ta += z.getScrollPosition().y;\n };\n w.set(this._popup, \"marginTop\", (ta + \"px\"));\n var xa = (wa && (((ua < 0) || (va < 0))));\n m.conditionClass(this._obj, \"generic_dialog_fixed_overflow\", xa);\n m.conditionClass(document.documentElement, \"generic_dialog_overflow_mode\", xa);\n },\n _fadeOut: function(la) {\n if (!this._popup) {\n return\n };\n try {\n new g(this._obj).duration(0).checkpoint().to(\"opacity\", 0).hide().duration(250).ondone(this._hide.bind(this, la)).go();\n } catch (ma) {\n this._hide(la);\n };\n },\n _hide: function(la) {\n if (this._obj) {\n this._obj.style.display = \"none\";\n };\n m.removeClass(document.documentElement, \"generic_dialog_overflow_mode\");\n this._updateShim();\n clearInterval(this.active_hiding);\n if (this._bottom) {\n var ma = ka._bottoms;\n ma.splice(ma.indexOf(this._bottom), 1);\n ka._updateMaxBottom();\n }\n ;\n if (((this._previous_focus && document.activeElement) && n.contains(this._obj, document.activeElement))) {\n p.set(this._previous_focus);\n };\n if (la) {\n return\n };\n this.destroy();\n },\n destroy: function() {\n this._popFromStack();\n clearInterval(this.active_hiding);\n if (this._obj) {\n n.remove(this._obj);\n this._obj = null;\n (this._shim && this._shim.hide());\n this._shim = null;\n }\n ;\n (this._clickOnEnterListener && this._clickOnEnterListener.remove());\n if (this._close_handler) {\n this._close_handler({\n return_data: this._return_data\n });\n };\n },\n _handleButton: function(la) {\n if ((typeof la == \"string\")) {\n la = ka._findButton(this._buttons, la);\n };\n var ma = ka.call_or_eval(la, la.handler);\n if ((ma === false)) {\n return\n };\n if ((la.name == \"cancel\")) {\n this.cancel();\n }\n else if ((ka.call_or_eval(this, this._handler, {\n button: la\n }) !== false)) {\n this.hide();\n }\n ;\n },\n _submitForm: function(la, ma, na) {\n var oa = this.getFormData();\n if (na) {\n oa[na.name] = na.label;\n };\n if (this._extra_data) {\n ba(oa, this._extra_data);\n };\n var pa = new i().setURI(ma).setData(oa).setMethod(la).setNectarModuleDataSafe(this._causal_elem).setReadOnly((la == \"GET\"));\n this.setAsync(pa);\n return false;\n },\n _setFromModel: function(la) {\n var ma = {\n };\n ba(ma, la);\n for (var na in ma) {\n if ((na == \"onloadRegister\")) {\n this.onloadRegister(ma[na]);\n continue;\n }\n ;\n var oa = this[((\"set\" + na.substr(0, 1).toUpperCase()) + na.substr(1))];\n oa.apply(this, ca(ma[na]));\n };\n },\n _updateBottom: function() {\n var la = (z.getElementDimensions(this._content).y + z.getElementPosition(this._content).y);\n ka._bottoms[(ka._bottoms.length - 1)] = la;\n ka._updateMaxBottom();\n },\n _pushOntoStack: function() {\n var la = ka._stack;\n if (!la.length) {\n h.inform(\"layer_shown\", {\n type: \"Dialog\"\n });\n };\n ga(la, this);\n la.push(this);\n for (var ma = (la.length - 2); (ma >= 0); ma--) {\n var na = la[ma];\n if ((!na._is_stackable && !na._async_request)) {\n na._hide();\n }\n else if (!na._shown_while_stacked) {\n na._hide(true);\n }\n ;\n };\n },\n _popFromStack: function() {\n var la = ka._stack, ma = ((la[(la.length - 1)] === this));\n ga(la, this);\n if (la.length) {\n if (ma) {\n la[(la.length - 1)].show();\n };\n }\n else h.inform(\"layer_hidden\", {\n type: \"Dialog\"\n });\n ;\n }\n });\n e.exports = ka;\n a.Dialog = ka;\n});\n__d(\"DocumentTitle\", [\"Arbiter\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = document.title, i = null, j = 1500, k = [], l = 0, m = null, n = false;\n function o() {\n if ((k.length > 0)) {\n if (!n) {\n p(k[l].title);\n l = (++l % k.length);\n }\n else q();\n ;\n }\n else {\n clearInterval(m);\n m = null;\n q();\n }\n ;\n };\n function p(s) {\n document.title = s;\n n = true;\n };\n function q() {\n r.set((i || h), true);\n n = false;\n };\n var r = {\n get: function() {\n return h;\n },\n set: function(s, t) {\n document.title = s;\n if (!t) {\n h = s;\n i = null;\n g.inform(\"update_title\", s);\n }\n else i = s;\n ;\n },\n blink: function(s) {\n var t = {\n title: s\n };\n k.push(t);\n if ((m === null)) {\n m = setInterval(o, j);\n };\n return {\n stop: function() {\n var u = k.indexOf(t);\n if ((u >= 0)) {\n k.splice(u, 1);\n if ((l > u)) {\n l--;\n }\n else if (((l == u) && (l == k.length))) {\n l = 0;\n }\n ;\n }\n ;\n }\n };\n }\n };\n e.exports = r;\n});\n__d(\"FileInput\", [\"Event\",\"ArbiterMixin\",\"DOM\",\"DOMClone\",\"Focus\",\"UserAgent\",\"copyProperties\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"ArbiterMixin\"), i = b(\"DOM\"), j = b(\"DOMClone\"), k = b(\"Focus\"), l = b(\"UserAgent\"), m = b(\"copyProperties\"), n = b(\"cx\"), o = l.ie();\n function p(q, r, s) {\n this.container = q;\n this.control = r;\n this.input = s;\n var t = i.scry(this.container, \"a\")[0];\n (t && t.removeAttribute(\"href\"));\n var u = i.create(\"div\", {\n className: \"-cx-PRIVATE-uiFileInput__wrap\"\n }, this.input);\n i.appendContent(this.control, u);\n this._initListeners();\n };\n m(p.prototype, h, {\n getValue: function() {\n return this.input.value;\n },\n getInput: function() {\n return this.input;\n },\n clear: function() {\n if (o) {\n var q = j.deepClone(this.input);\n i.replace(this.input, q);\n this.input = q;\n while (this._listeners.length) {\n this._listeners.pop().remove();;\n };\n this._initListeners();\n }\n else {\n this.input.value = \"\";\n this.input.files = null;\n }\n ;\n },\n _initListeners: function() {\n k.relocate(this.input, this.control);\n this._listeners = [g.listen(this.input, \"change\", this._handleChange.bind(this)),];\n },\n _handleChange: function(event) {\n this.inform(\"change\", event);\n var q = this.input.form;\n if ((q && (o < 9))) {\n g.fire(q, \"change\", event);\n };\n }\n });\n e.exports = p;\n});\n__d(\"LinkController\", [\"Event\",\"DataStore\",\"Parent\",\"trackReferrer\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"DataStore\"), i = b(\"Parent\"), j = b(\"trackReferrer\"), k = \"LinkControllerHandler\", l = [], m = [];\n function n(event) {\n var r = i.byTag(event.getTarget(), \"a\"), s = (r && r.getAttribute(\"href\", 2));\n if ((((!s || r.rel) || !p(s)) || h.get(r, k))) {\n return\n };\n var t = g.listen(r, \"click\", function(u) {\n if ((s.charAt((s.length - 1)) == \"#\")) {\n u.prevent();\n return;\n }\n ;\n j(r, s);\n o(r, u);\n });\n h.set(r, k, t);\n };\n function o(r, event) {\n if ((((r.target || r.rel) || event.getModifiers().any) || ((event.which && (event.which != 1))))) {\n return\n };\n var s = l.concat(m);\n for (var t = 0, u = s.length; (t < u); t++) {\n if ((s[t](r, event) === false)) {\n return event.prevent()\n };\n };\n };\n function p(r) {\n var s = r.match(/^(\\w+):/);\n return (!s || s[1].match(/^http/i));\n };\n var q = {\n registerHandler: function(r) {\n l.push(r);\n },\n registerFallbackHandler: function(r) {\n m.push(r);\n }\n };\n g.listen(document.documentElement, \"mousedown\", n);\n g.listen(document.documentElement, \"keydown\", n);\n e.exports = q;\n});\n__d(\"OnloadHooks\", [\"Arbiter\",\"ErrorUtils\",\"InitialJSLoader\",\"OnloadEvent\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ErrorUtils\"), i = b(\"InitialJSLoader\"), j = b(\"OnloadEvent\");\n function k() {\n var r = a.CavalryLogger;\n if ((!window.loaded && r)) {\n r.getInstance().setTimeStamp(\"t_prehooks\");\n };\n n(\"onloadhooks\");\n if ((!window.loaded && r)) {\n r.getInstance().setTimeStamp(\"t_hooks\");\n };\n window.loaded = true;\n g.inform(\"uipage_onload\", true, g.BEHAVIOR_STATE);\n };\n function l() {\n n(\"onafterloadhooks\");\n window.afterloaded = true;\n };\n function m(r, s) {\n return h.applyWithGuard(r, null, null, function(t) {\n t.event_type = s;\n t.category = \"runhook\";\n });\n };\n function n(r) {\n var s = (((r == \"onbeforeleavehooks\")) || ((r == \"onbeforeunloadhooks\")));\n do {\n var t = window[r];\n if (!t) {\n break;\n };\n if (!s) {\n window[r] = null;\n };\n for (var u = 0; (u < t.length); u++) {\n var v = m(t[u], r);\n if ((s && v)) {\n return v\n };\n };\n } while ((!s && window[r]));\n };\n function o() {\n if (!window.loaded) {\n window.loaded = true;\n n(\"onloadhooks\");\n }\n ;\n if (!window.afterloaded) {\n window.afterloaded = true;\n n(\"onafterloadhooks\");\n }\n ;\n };\n function p() {\n g.registerCallback(k, [j.ONLOAD_DOMCONTENT_CALLBACK,i.INITIAL_JS_READY,]);\n g.registerCallback(l, [j.ONLOAD_DOMCONTENT_CALLBACK,j.ONLOAD_CALLBACK,i.INITIAL_JS_READY,]);\n g.subscribe(j.ONBEFOREUNLOAD, function(r, s) {\n s.warn = (n(\"onbeforeleavehooks\") || n(\"onbeforeunloadhooks\"));\n if (!s.warn) {\n window.loaded = false;\n window.afterloaded = false;\n }\n ;\n }, g.SUBSCRIBE_NEW);\n g.subscribe(j.ONUNLOAD, function(r, s) {\n n(\"onunloadhooks\");\n n(\"onafterunloadhooks\");\n }, g.SUBSCRIBE_NEW);\n };\n var q = {\n _onloadHook: k,\n _onafterloadHook: l,\n runHook: m,\n runHooks: n,\n keepWindowSetAsLoaded: o\n };\n p();\n a.OnloadHooks = e.exports = q;\n});\n__d(\"areEqual\", [], function(a, b, c, d, e, f) {\n var g = function(k, l, m, n) {\n if ((k === l)) {\n return ((k !== 0) || ((1 / k) == (1 / l)))\n };\n if (((k == null) || (l == null))) {\n return false\n };\n if (((typeof k != \"object\") || (typeof l != \"object\"))) {\n return false\n };\n var o = Object.prototype.toString, p = o.call(k);\n if ((p != o.call(l))) {\n return false\n };\n switch (p) {\n case \"[object String]\":\n return (k == String(l));\n case \"[object Number]\":\n return ((isNaN(k) || isNaN(l)) ? false : (k == Number(l)));\n case \"[object Date]\":\n \n case \"[object Boolean]\":\n return (+k == +l);\n case \"[object RegExp]\":\n return ((((k.source == l.source) && (k.global == l.global)) && (k.multiline == l.multiline)) && (k.ignoreCase == l.ignoreCase));\n };\n var q = m.length;\n while (q--) {\n if ((m[q] == k)) {\n return (n[q] == l)\n };\n };\n m.push(k);\n n.push(l);\n var r = 0;\n if ((p === \"[object Array]\")) {\n r = k.length;\n if ((r !== l.length)) {\n return false\n };\n while (r--) {\n if (!g(k[r], l[r], m, n)) {\n return false\n };\n };\n }\n else {\n if ((k.constructor !== l.constructor)) {\n return false\n };\n if ((k.hasOwnProperty(\"valueOf\") && l.hasOwnProperty(\"valueOf\"))) {\n return (k.valueOf() == l.valueOf())\n };\n var s = Object.keys(k);\n if ((s.length != Object.keys(l).length)) {\n return false\n };\n for (var t = 0; (t < s.length); t++) {\n if (!g(k[s[t]], l[s[t]], m, n)) {\n return false\n };\n };\n }\n ;\n m.pop();\n n.pop();\n return true;\n }, h = [], i = [], j = function(k, l) {\n var m = (h.length ? h.pop() : []), n = (i.length ? i.pop() : []), o = g(k, l, m, n);\n m.length = 0;\n n.length = 0;\n h.push(m);\n i.push(n);\n return o;\n };\n e.exports = j;\n});\n__d(\"computeRelativeURI\", [\"URI\",\"isEmpty\",], function(a, b, c, d, e, f) {\n var g = b(\"URI\"), h = b(\"isEmpty\");\n function i(k, l) {\n if (!l) {\n return k\n };\n if ((l.charAt(0) == \"/\")) {\n return l\n };\n var m = k.split(\"/\").slice(0, -1);\n (m[0] !== \"\");\n l.split(\"/\").forEach(function(n) {\n if (!((n == \".\"))) {\n if ((n == \"..\")) {\n if ((m.length > 1)) {\n m = m.slice(0, -1);\n };\n }\n else m.push(n);\n \n };\n });\n return m.join(\"/\");\n };\n function j(k, l) {\n var m = new g(), n = l;\n k = new g(k);\n l = new g(l);\n if ((l.getDomain() && !l.isFacebookURI())) {\n return n\n };\n var o = k, p = [\"Protocol\",\"Domain\",\"Port\",\"Path\",\"QueryData\",\"Fragment\",];\n p.forEach(function(q) {\n var r = ((q == \"Path\") && (o === k));\n if (r) {\n m.setPath(i(k.getPath(), l.getPath()));\n };\n if (!h(l[(\"get\" + q)]())) {\n o = l;\n };\n if (!r) {\n m[(\"set\" + q)](o[(\"get\" + q)]());\n };\n });\n return m;\n };\n e.exports = j;\n});\n__d(\"escapeJSQuotes\", [], function(a, b, c, d, e, f) {\n function g(h) {\n if ((((typeof h == \"undefined\") || (h == null)) || !h.valueOf())) {\n return \"\"\n };\n return h.toString().replace(/\\\\/g, \"\\\\\\\\\").replace(/\\n/g, \"\\\\n\").replace(/\\r/g, \"\\\\r\").replace(/\"/g, \"\\\\x22\").replace(/'/g, \"\\\\'\").replace(/</g, \"\\\\x3c\").replace(/>/g, \"\\\\x3e\").replace(/&/g, \"\\\\x26\");\n };\n e.exports = g;\n});\n__d(\"htmlSpecialChars\", [], function(a, b, c, d, e, f) {\n var g = /&/g, h = /</g, i = />/g, j = /\"/g, k = /'/g;\n function l(m) {\n if ((((typeof m == \"undefined\") || (m === null)) || !m.toString)) {\n return \"\"\n };\n if ((m === false)) {\n return \"0\";\n }\n else if ((m === true)) {\n return \"1\"\n }\n ;\n return m.toString().replace(g, \"&\").replace(j, \""\").replace(k, \"'\").replace(h, \"<\").replace(i, \">\");\n };\n e.exports = l;\n});\n__d(\"htmlize\", [\"htmlSpecialChars\",], function(a, b, c, d, e, f) {\n var g = b(\"htmlSpecialChars\");\n function h(i) {\n return g(i).replace(/\\r\\n|[\\r\\n]/g, \"\\u003Cbr/\\u003E\");\n };\n e.exports = h;\n});\n__d(\"setTimeoutAcrossTransitions\", [], function(a, b, c, d, e, f) {\n function g(h, i) {\n return setTimeout(h, i, false);\n };\n e.exports = g;\n});\n__d(\"PageTransitions\", [\"Arbiter\",\"Dialog\",\"DOMQuery\",\"DOMScroll\",\"Env\",\"Event\",\"Form\",\"HistoryManager\",\"JSLogger\",\"LinkController\",\"OnloadHooks\",\"Parent\",\"URI\",\"UserAgent\",\"Vector\",\"areEqual\",\"clickRefAction\",\"computeRelativeURI\",\"copyProperties\",\"escapeJSQuotes\",\"ge\",\"goOrReplace\",\"htmlize\",\"setTimeoutAcrossTransitions\",\"startsWith\",\"tx\",\"userAction\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Dialog\"), i = b(\"DOMQuery\"), j = b(\"DOMScroll\"), k = b(\"Env\"), l = b(\"Event\"), m = b(\"Form\"), n = b(\"HistoryManager\"), o = b(\"JSLogger\"), p = b(\"LinkController\"), q = b(\"OnloadHooks\"), r = b(\"Parent\"), s = b(\"URI\"), t = b(\"UserAgent\"), u = b(\"Vector\"), v = b(\"areEqual\"), w = b(\"clickRefAction\"), x = b(\"computeRelativeURI\"), y = b(\"copyProperties\"), z = b(\"escapeJSQuotes\"), aa = b(\"ge\"), ba = b(\"goOrReplace\"), ca = b(\"htmlize\"), da = b(\"setTimeoutAcrossTransitions\"), ea = b(\"startsWith\"), fa = b(\"tx\"), ga = b(\"userAction\"), ha = {\n };\n function ia(ta, ua) {\n ha[ta.getUnqualifiedURI()] = ua;\n };\n function ja(ta) {\n return ha[ta.getUnqualifiedURI()];\n };\n function ka(ta) {\n delete ha[ta.getUnqualifiedURI()];\n };\n var la = null, ma = null;\n function na(ta) {\n ma = ta;\n da(function() {\n ma = null;\n }, 0);\n };\n function oa(event) {\n if (ma) {\n if (!event.isDefaultPrevented()) {\n pa(ma);\n sa.lookBusy(ma);\n ra.go(ma.getAttribute(\"href\"));\n }\n ;\n event.prevent();\n }\n else {\n la = event.getTarget();\n da(function() {\n la = null;\n }, 0);\n }\n ;\n };\n function pa(ta) {\n var ua = ta.getAttribute(\"href\"), va = x(ra._most_recent_uri.getQualifiedURI(), ua).toString();\n if ((ua != va)) {\n ta.setAttribute(\"href\", va);\n };\n };\n function qa(event) {\n var ta = event.getTarget();\n if ((m.getAttribute(ta, \"rel\") || m.getAttribute(ta, \"target\"))) {\n return\n };\n w(\"form\", ta, event).set_namespace(\"page_transition\");\n var ua = ga(\"page_transitions\", ta, event, {\n mode: \"DEDUP\"\n }).uai_fallback(null, \"form\"), va = a.ArbiterMonitor;\n if (va) {\n va.initUA(ua, [ta,]);\n };\n var wa = new s((m.getAttribute(ta, \"action\") || \"\")), xa = x(ra._most_recent_uri, wa);\n ta.setAttribute(\"action\", xa.toString());\n if ((((m.getAttribute(ta, \"method\") || \"GET\")).toUpperCase() === \"GET\")) {\n var ya = m.serialize(ta), za = la;\n if (((za && (((i.isNodeOfType(za, \"input\") && (za.type === \"submit\")) || (za = r.byTag(za, \"button\"))))) && za.name)) {\n ya[za.name] = za.value;\n };\n ra.go(xa.addQueryData(ya));\n event.kill();\n }\n ;\n };\n var ra = {\n _transition_handlers: [],\n _scroll_locked: false,\n isInitialized: function() {\n return !!ra._initialized;\n },\n _init: function() {\n if (k.DISABLE_PAGE_TRANSITIONS) {\n return\n };\n if ((!k.ALLOW_TRANSITION_IN_IFRAME && (window != window.top))) {\n return\n };\n if (ra._initialized) {\n return ra\n };\n ra._initialized = true;\n var ta = s.getRequestURI(false), ua = ta.getUnqualifiedURI(), va = s(ua).setFragment(null), wa = ua.getFragment();\n if (((wa.charAt(0) === \"!\") && (va.toString() === wa.substr(1)))) {\n ua = va;\n };\n y(ra, {\n _current_uri: ua,\n _most_recent_uri: ua,\n _next_uri: ua\n });\n var xa;\n if (ea(ta.getFragment(), \"/\")) {\n xa = ta.getFragment();\n }\n else xa = ua;\n ;\n n.init().setCanonicalLocation((\"#\" + xa)).registerURIHandler(ra._historyManagerHandler);\n p.registerFallbackHandler(na);\n l.listen(document, \"click\", oa, l.Priority._BUBBLE);\n l.listen(document, \"submit\", qa, l.Priority._BUBBLE);\n l.listen(window, \"scroll\", function() {\n if (!ra._scroll_locked) {\n ia(ra._current_uri, u.getScrollPosition());\n };\n });\n return ra;\n },\n registerHandler: function(ta, ua) {\n ra._init();\n ua = (ua || 5);\n if (!ra._transition_handlers[ua]) {\n ra._transition_handlers[ua] = [];\n };\n ra._transition_handlers[ua].push(ta);\n },\n getCurrentURI: function(ta) {\n if ((!ra._current_uri && !ta)) {\n return new s(ra._most_recent_uri)\n };\n return new s(ra._current_uri);\n },\n getMostRecentURI: function() {\n return new s(ra._most_recent_uri);\n },\n getNextURI: function() {\n return new s(ra._next_uri);\n },\n go: function(ta, ua) {\n var va = new s(ta).removeQueryData(\"quickling\").getQualifiedURI();\n o.create(\"pagetransition\").debug(\"go\", {\n uri: va.toString()\n });\n ka(va);\n (!ua && w(\"uri\", {\n href: va.toString()\n }, null, \"INDIRECT\"));\n sa.lookBusy();\n ra._loadPage(va, function(wa) {\n if (wa) {\n n.go(va.toString(), false, ua);\n }\n else ba(window.location, va, ua);\n ;\n });\n },\n _historyManagerHandler: function(ta) {\n if ((ta.charAt(0) != \"/\")) {\n return false\n };\n w(\"h\", {\n href: ta\n });\n ga(\"page_transitions\").uai(null, \"history_manager\");\n ra._loadPage(new s(ta), function(ua) {\n if (!ua) {\n ba(window.location, ta, true);\n };\n });\n return true;\n },\n _loadPage: function(ta, ua) {\n if ((s(ta).getFragment() && v(s(ta).setFragment(null).getQualifiedURI(), s(ra._current_uri).setFragment(null).getQualifiedURI()))) {\n if (ra.restoreScrollPosition(ta)) {\n ra._current_uri = ra._most_recent_uri = ta;\n sa.stopLookingBusy();\n return;\n }\n \n };\n var va;\n if (ra._current_uri) {\n va = ja(ra._current_uri);\n };\n ra._current_uri = null;\n ra._next_uri = ta;\n if (va) {\n j.scrollTo(va, false);\n };\n var wa = function() {\n ra._scroll_locked = true;\n var ya = ra._handleTransition(ta);\n (ua && ua(ya));\n }, xa = q.runHooks(\"onbeforeleavehooks\");\n if (xa) {\n sa.stopLookingBusy();\n ra._warnBeforeLeaving(xa, wa);\n }\n else wa();\n ;\n },\n _handleTransition: function(ta) {\n window.onbeforeleavehooks = undefined;\n sa.lookBusy();\n if (!ta.isSameOrigin()) {\n return false\n };\n var ua = (window.AsyncRequest && window.AsyncRequest.getLastID());\n g.inform(\"pre_page_transition\", {\n from: ra.getMostRecentURI(),\n to: ta\n });\n for (var va = (ra._transition_handlers.length - 1); (va >= 0); --va) {\n var wa = ra._transition_handlers[va];\n if (!wa) {\n continue;\n };\n for (var xa = (wa.length - 1); (xa >= 0); --xa) {\n if ((wa[xa](ta) === true)) {\n var ya = {\n sender: this,\n uri: ta,\n id: ua\n };\n try {\n g.inform(\"page_transition\", ya);\n } catch (za) {\n \n };\n return true;\n }\n else wa.splice(xa, 1);\n ;\n };\n };\n return false;\n },\n unifyURI: function() {\n ra._current_uri = ra._most_recent_uri = ra._next_uri;\n },\n transitionComplete: function(ta) {\n ra._executeCompletionCallback();\n sa.stopLookingBusy();\n ra.unifyURI();\n if (!ta) {\n ra.restoreScrollPosition(ra._current_uri);\n };\n try {\n if ((document.activeElement && (document.activeElement.nodeName === \"A\"))) {\n document.activeElement.blur();\n };\n } catch (ua) {\n \n };\n },\n _executeCompletionCallback: function() {\n if (ra._completionCallback) {\n ra._completionCallback();\n };\n ra._completionCallback = null;\n },\n setCompletionCallback: function(ta) {\n ra._completionCallback = ta;\n },\n rewriteCurrentURI: function(ta, ua) {\n ra.registerHandler(function() {\n if ((ta == ra.getMostRecentURI().getUnqualifiedURI().toString())) {\n ra.transitionComplete();\n return true;\n }\n ;\n });\n ra.go(ua, true);\n },\n _warnBeforeLeaving: function(ta, ua) {\n new h().setTitle(\"Are you sure you want to leave this page?\").setBody(ca(ta)).setButtons([{\n name: \"leave_page\",\n label: \"Leave this Page\",\n handler: ua\n },{\n name: \"continue_editing\",\n label: \"Stay on this Page\",\n className: \"inputaux\"\n },]).setModal(true).show();\n },\n restoreScrollPosition: function(ta) {\n ra._scroll_locked = false;\n var ua = ja(ta);\n if (ua) {\n j.scrollTo(ua, false);\n return true;\n }\n ;\n function va(ya) {\n if (!ya) {\n return null\n };\n var za = ((\"a[name='\" + z(ya)) + \"']\");\n return (i.scry(document.body, za)[0] || aa(ya));\n };\n var wa = va(s(ta).getFragment());\n if (wa) {\n var xa = u.getElementPosition(wa);\n xa.x = 0;\n j.scrollTo(xa);\n return true;\n }\n ;\n return false;\n }\n }, sa = (window._BusyUIManager || {\n _looking_busy: false,\n _original_cursors: [],\n lookBusy: function(ta) {\n if (ta) {\n sa._giveProgressCursor(ta);\n };\n if (sa._looking_busy) {\n return\n };\n sa._looking_busy = true;\n sa._giveProgressCursor(document.documentElement);\n },\n stopLookingBusy: function() {\n if (!sa._looking_busy) {\n return\n };\n sa._looking_busy = false;\n while (sa._original_cursors.length) {\n var ta = sa._original_cursors.pop(), ua = ta[0], va = ta[1];\n if (ua.style) {\n ua.style.cursor = (va || \"\");\n };\n };\n },\n _giveProgressCursor: function(ta) {\n if (!t.webkit()) {\n sa._original_cursors.push([ta,ta.style.cursor,]);\n ta.style.cursor = \"progress\";\n }\n ;\n }\n });\n e.exports = ra;\n a.PageTransitions = ra;\n});\n__d(\"PixelRatio\", [\"Arbiter\",\"Cookie\",\"Run\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Cookie\"), i = b(\"Run\"), j = \"dpr\", k, l;\n function m() {\n return (window.devicePixelRatio || 1);\n };\n function n() {\n h.set(j, m());\n };\n function o() {\n h.clear(j);\n };\n function p() {\n var r = m();\n if ((r !== k)) {\n n();\n }\n else o();\n ;\n };\n var q = {\n startDetecting: function(r) {\n k = (r || 1);\n o();\n if (l) {\n return\n };\n l = [g.subscribe(\"pre_page_transition\", p),];\n i.onBeforeUnload(p);\n }\n };\n e.exports = q;\n});\n__d(\"PostLoadJS\", [\"Bootloader\",\"Run\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Bootloader\"), h = b(\"Run\"), i = b(\"emptyFunction\");\n function j(l, m) {\n h.onAfterLoad(function() {\n g.loadModules.call(g, [l,], m);\n });\n };\n var k = {\n loadAndRequire: function(l) {\n j(l, i);\n },\n loadAndCall: function(l, m, n) {\n j(l, function(o) {\n o[m].apply(o, n);\n });\n }\n };\n e.exports = k;\n});\n__d(\"ControlledReferer\", [\"Event\",\"URI\",\"UserAgent\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"URI\"), i = b(\"UserAgent\"), j = {\n useFacebookReferer: function(k, l, m) {\n var n = false;\n function o() {\n if (n) {\n return\n };\n var q = k.contentWindow.location.pathname;\n if (((q !== \"/intern/common/referer_frame.php\") && (q !== \"/common/referer_frame.php\"))) {\n return\n };\n n = true;\n k.contentWindow.document.body.style.margin = 0;\n l();\n };\n var p;\n if ((document.domain !== \"facebook.com\")) {\n p = \"/intern/common/referer_frame.php\";\n }\n else if (i.opera()) {\n p = \"/common/referer_frame.php\";\n }\n else if (h().isSecure()) {\n p = \"https://s-static.ak.facebook.com/common/referer_frame.php\";\n }\n else p = \"http://static.ak.facebook.com/common/referer_frame.php\";\n \n \n ;\n if (m) {\n p += (\"?fb_source=\" + m);\n };\n g.listen(k, \"load\", o);\n k.src = p;\n },\n useFacebookRefererHtml: function(k, l, m) {\n j.useFacebookReferer(k, function() {\n k.contentWindow.document.body.innerHTML = l;\n }, m);\n }\n };\n e.exports = j;\n});\n__d(\"SoundRPC\", [\"Event\",\"SoundSynchronizer\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"SoundSynchronizer\");\n function i(k, l, m) {\n h.play(k, l, m);\n };\n var j = {\n playLocal: i,\n playRemote: function(k, l, m, n) {\n var o = {\n paths: l,\n sync: m,\n loop: n\n };\n k.postMessage(JSON.stringify(o), \"*\");\n },\n supportsRPC: function() {\n return !!window.postMessage;\n },\n _listen: function() {\n g.listen(window, \"message\", function(k) {\n if (!/\\.facebook.com$/.test(k.origin)) {\n return\n };\n var l = JSON.parse(k.data);\n i(l.paths, l.sync, l.loop);\n });\n }\n };\n e.exports = j;\n});\n__d(\"TabbableElements\", [\"Style\",\"createArrayFrom\",], function(a, b, c, d, e, f) {\n var g = b(\"Style\"), h = b(\"createArrayFrom\");\n function i(l) {\n if ((l.tabIndex >= 0)) {\n return true\n };\n switch (l.tagName) {\n case \"A\":\n return (l.href && (l.rel != \"ignore\"));\n case \"INPUT\":\n return (((l.type != \"hidden\") && (l.type != \"file\")) && !l.disabled);\n case \"BUTTON\":\n \n case \"SELECT\":\n \n case \"TEXTAREA\":\n return !l.disabled;\n };\n return false;\n };\n function j(l) {\n if (((l.offsetHeight === 0) && (l.offsetWidth === 0))) {\n return false\n };\n while (((l !== document) && (g.get(l, \"visibility\") != \"hidden\"))) {\n l = l.parentNode;;\n };\n return (l === document);\n };\n var k = {\n find: function(l) {\n var m = h(l.getElementsByTagName(\"*\"));\n return m.filter(k.isTabbable);\n },\n isTabbable: function(l) {\n return (i(l) && j(l));\n }\n };\n e.exports = k;\n});\n__d(\"UserActivity\", [\"Arbiter\",\"Event\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Event\"), i = 5000, j = 500, k = -5, l = Date.now(), m = l, n = {\n subscribeOnce: function(p) {\n var q = n.subscribe(function() {\n n.unsubscribe(q);\n p();\n });\n },\n subscribe: function(p) {\n return g.subscribe(\"useractivity/activity\", p);\n },\n unsubscribe: function(p) {\n p.unsubscribe();\n },\n isActive: function(p) {\n return (((new Date() - l) < ((p || i))));\n },\n getLastInformTime: function() {\n return m;\n }\n };\n function o(event) {\n l = Date.now();\n var p = (l - m);\n if ((p > j)) {\n m = l;\n g.inform(\"useractivity/activity\", {\n event: event,\n idleness: p,\n last_inform: m\n });\n }\n else if ((p < k)) {\n m = l;\n }\n ;\n };\n h.listen(window, \"scroll\", o);\n h.listen(window, \"focus\", o);\n h.listen(document.documentElement, {\n DOMMouseScroll: o,\n mousewheel: o,\n keydown: o,\n mouseover: o,\n mousemove: o,\n click: o\n });\n g.subscribe(\"Event/stop\", function(p, q) {\n o(q.event);\n });\n e.exports = n;\n});\n__d(\"guid\", [], function(a, b, c, d, e, f) {\n function g() {\n return (\"f\" + ((Math.random() * ((1 << 30)))).toString(16).replace(\".\", \"\"));\n };\n e.exports = g;\n});\n__d(\"throttle\", [\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\");\n function h(j, k, l) {\n return i(j, k, l, false, false);\n };\n g(h, {\n acrossTransitions: function(j, k, l) {\n return i(j, k, l, true, false);\n },\n withBlocking: function(j, k, l) {\n return i(j, k, l, false, true);\n }\n });\n function i(j, k, l, m, n) {\n if ((k == null)) {\n k = 100;\n };\n var o, p, q;\n function r() {\n p = Date.now();\n if (o) {\n j.apply(l, o);\n o = null;\n q = setTimeout(r, k, !m);\n }\n else q = false;\n ;\n };\n return function s() {\n o = arguments;\n if ((!q || (((Date.now() - p) > k)))) {\n if (n) {\n r();\n }\n else q = setTimeout(r, 0, !m);\n \n };\n };\n };\n e.exports = h;\n});\n__d(\"UIPagelet\", [\"AjaxPipeRequest\",\"AsyncRequest\",\"DOM\",\"HTML\",\"ScriptPathState\",\"URI\",\"copyProperties\",\"emptyFunction\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"AjaxPipeRequest\"), h = b(\"AsyncRequest\"), i = b(\"DOM\"), j = b(\"HTML\"), k = b(\"ScriptPathState\"), l = b(\"URI\"), m = b(\"copyProperties\"), n = b(\"emptyFunction\"), o = b(\"ge\");\n function p(q, r, s) {\n var t = ((q && i.isElementNode(q)) ? q.id : q);\n this._id = (t || null);\n this._element = o((q || i.create(\"div\")));\n this._src = (r || null);\n this._context_data = (s || {\n });\n this._data = {\n };\n this._handler = n;\n this._request = null;\n this._use_ajaxpipe = false;\n this._is_bundle = true;\n this._allow_cross_page_transition = false;\n this._append = false;\n };\n p.loadFromEndpoint = function(q, r, s, t) {\n t = (t || {\n });\n var u = (\"/ajax/pagelet/generic.php/\" + q);\n if (t.intern) {\n u = (\"/intern\" + u);\n };\n var v = new l(u.replace(/\\/+/g, \"/\"));\n if (t.subdomain) {\n v.setSubdomain(t.subdomain);\n };\n var w = new p(r, v, s).setUseAjaxPipe(t.usePipe).setBundleOption((t.bundle !== false)).setAppend(t.append).setJSNonBlock(t.jsNonblock).setAutomatic(t.automatic).setDisplayCallback(t.displayCallback).setConstHeight(t.constHeight).setAllowCrossPageTransition(t.crossPage).setFinallyHandler((t.finallyHandler || n)).setTransportErrorHandler(t.transportErrorHandler);\n (t.handler && w.setHandler(t.handler));\n w.go();\n return w;\n };\n m(p.prototype, {\n getElement: function() {\n return this._element;\n },\n setHandler: function(q) {\n this._handler = q;\n return this;\n },\n go: function(q, r) {\n if (((arguments.length >= 2) || (typeof q == \"string\"))) {\n this._src = q;\n this._data = (r || {\n });\n }\n else if ((arguments.length == 1)) {\n this._data = q;\n }\n ;\n this.refresh();\n return this;\n },\n setAllowCrossPageTransition: function(q) {\n this._allow_cross_page_transition = q;\n return this;\n },\n setBundleOption: function(q) {\n this._is_bundle = q;\n return this;\n },\n setTransportErrorHandler: function(q) {\n this.transportErrorHandler = q;\n return this;\n },\n refresh: function() {\n if (this._use_ajaxpipe) {\n k.setIsUIPageletRequest(true);\n this._request = new g();\n this._request.setCanvasId(this._id).setAppend(this._append).setConstHeight(this._constHeight).setJSNonBlock(this._jsNonblock).setAutomatic(this._automatic).setDisplayCallback(this._displayCallback).setFinallyHandler(this._finallyHandler);\n }\n else {\n var q = function(t) {\n this._request = null;\n var u = j(t.getPayload());\n if (this._append) {\n i.appendContent(this._element, u);\n }\n else i.setContent(this._element, u);\n ;\n this._handler();\n }.bind(this), r = this._displayCallback;\n this._request = new h().setMethod(\"GET\").setReadOnly(true).setOption(\"bundle\", this._is_bundle).setHandler(function(t) {\n if (r) {\n r(q.curry(t));\n }\n else q(t);\n ;\n if (this._finallyHandler) {\n this._finallyHandler();\n };\n });\n if (this.transportErrorHandler) {\n this._request.setTransportErrorHandler(this.transportErrorHandler);\n };\n }\n ;\n var s = {\n };\n m(s, this._context_data);\n m(s, this._data);\n this._request.setURI(this._src).setAllowCrossPageTransition(this._allow_cross_page_transition).setData({\n data: JSON.stringify(s)\n }).send();\n return this;\n },\n cancel: function() {\n if (this._request) {\n this._request.abort();\n };\n },\n setUseAjaxPipe: function(q) {\n this._use_ajaxpipe = !!q;\n return this;\n },\n setAppend: function(q) {\n this._append = !!q;\n return this;\n },\n setJSNonBlock: function(q) {\n this._jsNonblock = !!q;\n return this;\n },\n setAutomatic: function(q) {\n this._automatic = !!q;\n return this;\n },\n setDisplayCallback: function(q) {\n this._displayCallback = q;\n return this;\n },\n setConstHeight: function(q) {\n this._constHeight = !!q;\n return this;\n },\n setFinallyHandler: function(q) {\n this._finallyHandler = q;\n return this;\n }\n });\n e.exports = p;\n});\n__d(\"TabIsolation\", [\"Event\",\"DOMQuery\",\"Focus\",\"Keys\",\"TabbableElements\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"DOMQuery\"), i = b(\"Focus\"), j = b(\"Keys\"), k = b(\"TabbableElements\"), l = b(\"copyProperties\"), m = [], n = 0;\n function o(p) {\n this._root = p;\n this._eventHandler = null;\n this._identifier = n++;\n };\n l(o.prototype, {\n enable: function() {\n m.unshift(this._identifier);\n this._eventHandler = g.listen(window, \"keydown\", function(p) {\n if ((m[0] === this._identifier)) {\n this._tabHandler(p);\n };\n }.bind(this), g.Priority.URGENT);\n },\n disable: function() {\n var p;\n if (this._eventHandler) {\n p = m.indexOf(this._identifier);\n if ((p > -1)) {\n m.splice(p, 1);\n };\n this._eventHandler.remove();\n this._eventHandler = null;\n }\n ;\n },\n _tabHandler: function(p) {\n if ((g.getKeyCode(p) !== j.TAB)) {\n return\n };\n var q = p.getTarget();\n if (!q) {\n return\n };\n var r = k.find(this._root), s = r[0], t = r[(r.length - 1)], u = p.getModifiers().shift;\n if ((u && (q === s))) {\n p.preventDefault();\n i.set(t);\n }\n else if ((((!u && (q === t))) || !h.contains(this._root, q))) {\n p.preventDefault();\n i.set(s);\n }\n \n ;\n }\n });\n e.exports = o;\n});\n__d(\"ContextualLayerUpdateOnScroll\", [\"Event\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"copyProperties\");\n function i(j) {\n this._layer = j;\n };\n h(i.prototype, {\n _subscriptions: [],\n enable: function() {\n this._subscriptions = [this._layer.subscribe(\"show\", this._attachScrollListener.bind(this)),this._layer.subscribe(\"hide\", this._removeScrollListener.bind(this)),];\n },\n disable: function() {\n while (this._subscriptions.length) {\n this._subscriptions.pop().unsubscribe();;\n };\n this.detach();\n },\n _attachScrollListener: function() {\n if (this._listener) {\n return\n };\n var j = this._layer.getContextScrollParent();\n this._listener = g.listen(j, \"scroll\", this._layer.updatePosition.bind(this._layer));\n },\n _removeScrollListener: function() {\n (this._listener && this._listener.remove());\n this._listener = null;\n }\n });\n e.exports = i;\n});\n__d(\"LayerAutoFocus\", [\"function-extensions\",\"DOMQuery\",\"Focus\",\"TabbableElements\",\"copyProperties\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"DOMQuery\"), h = b(\"Focus\"), i = b(\"TabbableElements\"), j = b(\"copyProperties\");\n function k(l) {\n this._layer = l;\n };\n j(k.prototype, {\n _subscription: null,\n enable: function() {\n this._subscription = this._layer.subscribe(\"aftershow\", this._focus.bind(this));\n },\n disable: function() {\n this._subscription.unsubscribe();\n this._subscription = null;\n },\n _focus: function() {\n var l = this._layer.getRoot(), m = g.scry(l, \".autofocus\")[0], n = true;\n if (!m) {\n var o = document.activeElement;\n if (g.isNodeOfType(o, [\"input\",\"textarea\",])) {\n return\n };\n var p = i.find(l);\n for (var q = 0; (q < p.length); q++) {\n if ((p[q].tagName != \"A\")) {\n m = p[q];\n n = false;\n break;\n }\n ;\n };\n }\n else if ((m.tabIndex !== 0)) {\n n = false;\n }\n ;\n if (m) {\n (n ? h.set(m) : h.setWithoutOutline(m));\n }\n else {\n l.tabIndex = 0;\n h.setWithoutOutline(l);\n }\n ;\n }\n });\n e.exports = k;\n});\n__d(\"LayerButtons\", [\"Event\",\"Parent\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Parent\"), i = b(\"copyProperties\");\n function j(k) {\n this._layer = k;\n };\n i(j.prototype, {\n _listener: null,\n enable: function() {\n this._listener = g.listen(this._layer.getRoot(), \"click\", this._handle.bind(this));\n },\n disable: function() {\n this._listener.remove();\n this._listener = null;\n },\n _handle: function(k) {\n var l = k.getTarget(), m = h.byClass(l, \"layerConfirm\");\n if (m) {\n if ((this._layer.inform(\"confirm\", m) === false)) {\n k.prevent();\n };\n return;\n }\n ;\n var n = h.byClass(l, \"layerCancel\");\n if (n) {\n if ((this._layer.inform(\"cancel\", n) !== false)) {\n this._layer.hide();\n };\n k.prevent();\n return;\n }\n ;\n var o = h.byClass(l, \"layerButton\");\n if (o) {\n if ((this._layer.inform(\"button\", o) === false)) {\n k.prevent();\n }\n };\n }\n });\n e.exports = j;\n});\n__d(\"LayerFadeOnShow\", [\"Animation\",\"Style\",\"UserAgent\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"Style\"), i = b(\"UserAgent\"), j = b(\"copyProperties\");\n function k(l) {\n this._layer = l;\n };\n j(k.prototype, {\n _subscriptions: null,\n enable: function() {\n if ((i.ie() < 9)) {\n return\n };\n this._subscriptions = [this._layer.subscribe(\"beforeshow\", function() {\n h.set(this._layer.getRoot(), \"opacity\", 0);\n }.bind(this)),this._layer.subscribe(\"show\", this._animate.bind(this)),];\n },\n disable: function() {\n if (this._subscriptions) {\n while (this._subscriptions.length) {\n this._subscriptions.pop().unsubscribe();;\n };\n this._subscriptions = null;\n }\n ;\n },\n _getDuration: function() {\n return 100;\n },\n _animate: function() {\n var l = this._layer.getRoot();\n new g(l).from(\"opacity\", 0).to(\"opacity\", 1).duration(this._getDuration()).ondone(h.set.curry(l, \"opacity\", \"\")).go();\n }\n });\n e.exports = k;\n});\n__d(\"LayerFormHooks\", [\"Event\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"copyProperties\");\n function i(j) {\n this._layer = j;\n };\n h(i.prototype, {\n _subscriptions: null,\n enable: function() {\n var j = this._layer.getRoot();\n this._subscriptions = [g.listen(j, \"submit\", this._onSubmit.bind(this)),g.listen(j, \"success\", this._onSuccess.bind(this)),g.listen(j, \"error\", this._onError.bind(this)),];\n },\n disable: function() {\n this._subscriptions.forEach(function(j) {\n j.remove();\n });\n this._subscriptions = null;\n },\n _onSubmit: function(event) {\n if ((this._layer.inform(\"submit\", event) === false)) {\n event.kill();\n };\n },\n _onSuccess: function(event) {\n if ((this._layer.inform(\"success\", event) === false)) {\n event.kill();\n };\n },\n _onError: function(event) {\n var j = event.getData();\n if ((this._layer.inform(\"error\", {\n response: j.response\n }) === false)) {\n event.kill();\n };\n }\n });\n e.exports = i;\n});\n__d(\"LayerRefocusOnHide\", [\"copyProperties\",\"Focus\",\"ContextualThing\",\"DOM\",\"DOMQuery\",\"Parent\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"Focus\"), i = b(\"ContextualThing\"), j = b(\"DOM\"), k = b(\"DOMQuery\"), l = b(\"Parent\");\n function m(n) {\n this._layer = n;\n };\n g(m.prototype, {\n _subscription: null,\n enable: function() {\n this._subscription = this._layer.subscribe(\"hide\", this._handle.bind(this));\n },\n disable: function() {\n this._subscription.unsubscribe();\n this._subscription = null;\n },\n _handle: function(n, event) {\n if (((document.activeElement === document.body) || k.contains(this._layer.getRoot(), document.activeElement))) {\n var o = this._layer.getCausalElement();\n while ((o && (!o.offsetWidth))) {\n var p = l.byClass(o, \"uiToggle\");\n if ((p && p.offsetWidth)) {\n o = j.scry(p, \"[rel=\\\"toggle\\\"]\")[0];\n }\n else {\n var q = i.getContext(o);\n if (q) {\n o = q;\n }\n else o = o.parentNode;\n ;\n }\n ;\n };\n if ((o && ((o.tabIndex != -1)))) {\n h.setWithoutOutline(o);\n };\n }\n ;\n }\n });\n e.exports = m;\n});\n__d(\"LayerTabIsolation\", [\"TabIsolation\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"TabIsolation\"), h = b(\"copyProperties\");\n function i(j) {\n this._layer = j;\n this._tabIsolation = null;\n };\n h(i.prototype, {\n _subscriptions: [],\n enable: function() {\n this._tabIsolation = new g(this._layer.getRoot());\n this._subscriptions = [this._layer.subscribe(\"show\", this._tabIsolation.enable.bind(this._tabIsolation)),this._layer.subscribe(\"hide\", this._tabIsolation.disable.bind(this._tabIsolation)),];\n },\n disable: function() {\n while (this._subscriptions.length) {\n this._subscriptions.pop().unsubscribe();;\n };\n this._tabIsolation.disable();\n this._tabIsolation = null;\n }\n });\n e.exports = i;\n});\n__d(\"ModalLayer\", [\"Event\",\"function-extensions\",\"Arbiter\",\"CSS\",\"DataStore\",\"DOM\",\"DOMDimensions\",\"DOMQuery\",\"ScrollAwareDOM\",\"Style\",\"URI\",\"UserAgent\",\"Vector\",\"copyProperties\",\"csx\",\"cx\",\"debounceAcrossTransitions\",\"isAsyncScrollQuery\",\"removeFromArray\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\");\n b(\"function-extensions\");\n var h = b(\"Arbiter\"), i = b(\"CSS\"), j = b(\"DataStore\"), k = b(\"DOM\"), l = b(\"DOMDimensions\"), m = b(\"DOMQuery\"), n = b(\"ScrollAwareDOM\"), o = b(\"Style\"), p = b(\"URI\"), q = b(\"UserAgent\"), r = b(\"Vector\"), s = b(\"copyProperties\"), t = b(\"csx\"), u = b(\"cx\"), v = b(\"debounceAcrossTransitions\"), w = b(\"isAsyncScrollQuery\"), x = b(\"removeFromArray\"), y = [], z = null, aa = null, ba = null;\n function ca() {\n if (!ba) {\n ba = m.scry(document.body, \".-cx-PRIVATE-fbLayout__root\")[0];\n };\n return ba;\n };\n function da(la) {\n var ma = {\n position: r.getScrollPosition()\n }, na = (la.offsetTop - ma.position.y);\n i.addClass(la, \"-cx-PRIVATE-ModalLayer__fixed\");\n o.set(la, \"top\", (na + \"px\"));\n h.inform(\"reflow\");\n ma.listener = n.subscribe(\"scroll\", function(oa, pa) {\n if (m.contains(la, pa.target)) {\n var qa = (la.offsetTop - pa.delta.y);\n o.set(la, \"top\", (qa + \"px\"));\n ma.position = ma.position.add(pa.delta);\n return false;\n }\n ;\n });\n j.set(la, \"ModalLayerData\", ma);\n if ((q.firefox() < 13)) {\n ea.curry(la).defer();\n };\n };\n function ea(la) {\n m.scry(la, \"div.swfObject\").forEach(function(ma) {\n var na = ma.getAttribute(\"data-swfid\");\n if ((na && window[na])) {\n var oa = window[na];\n oa.addParam(\"autostart\", \"false\");\n oa.addParam(\"autoplay\", \"false\");\n oa.addParam(\"play\", \"false\");\n oa.addVariable(\"video_autoplay\", \"0\");\n oa.addVariable(\"autoplay\", \"0\");\n oa.addVariable(\"play\", \"0\");\n var pa = p(oa.getAttribute(\"swf\"));\n pa.addQueryData({\n autoplay: \"0\"\n });\n pa.setPath(pa.getPath().replace(\"autoplay=1\", \"autoplay=0\"));\n oa.setAttribute(\"swf\", pa.toString());\n oa.write(ma);\n }\n ;\n });\n };\n function fa(la, ma) {\n var na = j.get(la, \"ModalLayerData\");\n if (na) {\n var oa = function() {\n i.removeClass(la, \"-cx-PRIVATE-ModalLayer__fixed\");\n o.set(la, \"top\", \"\");\n if (ma) {\n var ra = m.getDocumentScrollElement();\n ra.scrollTop = na.position.y;\n }\n ;\n h.inform(\"reflow\");\n na.listener.unsubscribe();\n na.listener = null;\n j.remove(la, \"ModalLayerData\");\n };\n if ((ma && w())) {\n var pa = k.create(\"div\", {\n className: \"-cx-PRIVATE-ModalLayer__support\"\n });\n o.set(pa, \"height\", (la.offsetHeight + \"px\"));\n k.appendContent(document.body, pa);\n var qa = m.getDocumentScrollElement();\n qa.scrollTop = na.position.y;\n ma = false;\n !function() {\n oa();\n k.remove(pa);\n }.defer();\n }\n else oa();\n ;\n }\n ;\n if ((q.ie() < 7)) {\n o.set(la, \"height\", \"\");\n };\n };\n function ga() {\n var la = ca();\n if (!i.hasClass(la, \"-cx-PRIVATE-ModalLayer__fixed\")) {\n da(la);\n };\n };\n function ha() {\n if (!y.length) {\n fa(ca(), true);\n };\n };\n function ia() {\n var la;\n if ((q.ie() < 7)) {\n var ma = y[(y.length - 1)].getLayerRoot(), na = Math.max(ma.offsetHeight, ma.scrollHeight);\n la = function(ta) {\n o.set(ta, \"height\", (((-ta.offsetTop + na)) + \"px\"));\n };\n }\n ;\n var oa = y.length;\n while (oa--) {\n var pa = y[oa], qa = pa.getLayerRoot();\n ja(qa, \"\");\n var ra = pa.getLayerContentRoot(), sa = (ra.offsetWidth + l.measureElementBox(ra, \"width\", 0, 0, 1));\n ja(qa, sa);\n if ((la && (oa < (y.length - 1)))) {\n la(qa);\n };\n };\n (la && la(ca()));\n };\n function ja(la, ma) {\n var na = (q.ie() < 7);\n if (((na && ma) && (ma <= document.body.clientWidth))) {\n ma = \"\";\n };\n o.set(la, (na ? \"width\" : \"min-width\"), (ma + ((ma ? \"px\" : \"\"))));\n };\n function ka(la) {\n this._layer = la;\n };\n s(ka.prototype, {\n _subscription: null,\n enable: function() {\n if (!ca()) {\n return\n };\n this._subscription = this._layer.subscribe([\"show\",\"hide\",], function(la) {\n ((la == \"show\") ? this._addModal() : this._removeModal());\n }.bind(this));\n if (this._layer.isShown()) {\n this._addModal();\n };\n },\n disable: function() {\n if (!ca()) {\n return\n };\n this._subscription.unsubscribe();\n this._subscription = null;\n if (this._layer.isShown()) {\n this._removeModal();\n };\n },\n _addModal: function() {\n i.addClass(this.getLayerRoot(), \"-cx-PRIVATE-ModalLayer__root\");\n var la = y[(y.length - 1)];\n if (la) {\n da(la.getLayerRoot());\n }\n else ga();\n ;\n var ma = m.getDocumentScrollElement();\n ma.scrollTop = 0;\n if (!y.length) {\n if ((q.ie() < 7)) {\n i.addClass(document.documentElement, \"-cx-PRIVATE-ModalLayer__open\");\n };\n var na = v(ia, 100);\n z = g.listen(window, \"resize\", na);\n aa = h.subscribe(\"reflow\", na);\n }\n ;\n y.push(this);\n ia.defer();\n },\n _removeModal: function() {\n var la = this.getLayerRoot();\n i.removeClass(la, \"-cx-PRIVATE-ModalLayer__root\");\n ja(la, \"\");\n var ma = (this === y[(y.length - 1)]);\n x(y, this);\n var na = y[(y.length - 1)];\n if (!na) {\n z.remove();\n z = null;\n aa.unsubscribe();\n aa = null;\n }\n ;\n !function() {\n if (na) {\n fa(na.getLayerRoot(), ma);\n }\n else ha();\n ;\n if (y.length) {\n ia.defer();\n }\n else if ((q.ie() < 7)) {\n i.removeClass(document.documentElement, \"-cx-PRIVATE-ModalLayer__open\");\n }\n ;\n }.defer(400, false);\n },\n getLayerRoot: function() {\n return this._layer.getRoot();\n },\n getLayerContentRoot: function() {\n return this._layer.getContentRoot();\n }\n });\n e.exports = ka;\n});\n__d(\"DialogPosition\", [\"Vector\",], function(a, b, c, d, e, f) {\n var g = b(\"Vector\"), h = 40, i, j = {\n calculateTopMargin: function(k, l) {\n if (i) {\n return i\n };\n var m = g.getViewportDimensions(), n = Math.floor(((((m.x + k)) * ((m.y - l))) / ((4 * m.x))));\n return Math.max(n, h);\n },\n setFixedTopMargin: function(k) {\n i = k;\n }\n };\n e.exports = j;\n});\n__d(\"DialogX\", [\"function-extensions\",\"JSXDOM\",\"Arbiter\",\"Class\",\"CSS\",\"DialogPosition\",\"Event\",\"Layer\",\"LayerAutoFocus\",\"LayerButtons\",\"LayerFormHooks\",\"LayerRefocusOnHide\",\"LayerTabIsolation\",\"ModalLayer\",\"Style\",\"Vector\",\"copyProperties\",\"cx\",\"debounce\",\"shield\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"JSXDOM\"), h = b(\"Arbiter\"), i = b(\"Class\"), j = b(\"CSS\"), k = b(\"DialogPosition\"), l = b(\"Event\"), m = b(\"Layer\"), n = b(\"LayerAutoFocus\"), o = b(\"LayerButtons\"), p = b(\"LayerFormHooks\"), q = b(\"LayerRefocusOnHide\"), r = b(\"LayerTabIsolation\"), s = b(\"ModalLayer\"), t = b(\"Style\"), u = b(\"Vector\"), v = b(\"copyProperties\"), w = b(\"cx\"), x = b(\"debounce\"), y = b(\"shield\");\n function z(ba, ca) {\n this.parent.construct(this, ba, ca);\n };\n i.extend(z, m);\n v(z.prototype, {\n _configure: function(ba, ca) {\n this.parent._configure(ba, ca);\n j.addClass(this.getRoot(), \"-cx-PRIVATE-ModalLayer__xui\");\n if (ba.autohide) {\n var da = this.subscribe(\"show\", function() {\n da.unsubscribe();\n y(this.hide, this).defer(ba.autohide);\n }.bind(this))\n };\n },\n _getDefaultBehaviors: function() {\n return this.parent._getDefaultBehaviors().concat([aa,s,n,o,p,r,q,]);\n },\n _buildWrapper: function(ba, ca) {\n var da = (ba.xui ? \"-cx-PRIVATE-xuiDialog__content\" : \"-cx-PRIVATE-uiDialog__content\"), ea = (ba.xui ? \"-cx-PUBLIC-xuiDialog__wrapper\" : \"-cx-PUBLIC-uiDialog__wrapper\");\n this._innerContent = g.div(null, ca);\n this._wrapper = g.div({\n className: ea,\n role: \"dialog\",\n \"aria-labelledby\": (ba.titleID || null)\n }, g.div({\n className: da\n }, this._innerContent));\n this.setWidth(ba.width);\n return (g.div({\n className: \"-cx-PRIVATE-uiDialog__positioner\",\n role: \"dialog\"\n }, this._wrapper));\n },\n getContentRoot: function() {\n return this._wrapper;\n },\n getInnerContent: function() {\n return this._innerContent;\n },\n updatePosition: function() {\n var ba = u.getElementDimensions(this._wrapper), ca = k.calculateTopMargin(ba.x, ba.y);\n t.set(this._wrapper, \"margin-top\", (ca + \"px\"));\n this.inform(\"update_position\", {\n type: \"DialogX\",\n top: ca\n });\n },\n setWidth: function(ba) {\n ba = Math.floor(ba);\n if ((ba === this._width)) {\n return\n };\n this._width = ba;\n t.set(this._wrapper, \"width\", (ba + \"px\"));\n },\n getWidth: function() {\n return this._width;\n }\n });\n function aa(ba) {\n this._layer = ba;\n };\n v(aa.prototype, {\n _subscription: null,\n _resize: null,\n enable: function() {\n this._subscription = this._layer.subscribe([\"show\",\"hide\",], function(ba) {\n if ((ba === \"show\")) {\n this._attach();\n h.inform(\"layer_shown\", {\n type: \"DialogX\"\n });\n }\n else {\n this._detach();\n h.inform(\"layer_hidden\", {\n type: \"DialogX\"\n });\n }\n ;\n }.bind(this));\n },\n disable: function() {\n this._subscription.unsubscribe();\n this._subscription = null;\n (this._resize && this._detach());\n },\n _attach: function() {\n this._layer.updatePosition();\n this._resize = l.listen(window, \"resize\", x(this._layer.updatePosition.bind(this._layer)));\n },\n _detach: function() {\n this._resize.remove();\n this._resize = null;\n }\n });\n e.exports = z;\n});\n__d(\"eachKeyVal\", [], function(a, b, c, d, e, f) {\n function g(h, i, j) {\n if ((!h || !i)) {\n return\n };\n var k = Object.keys(h), l;\n for (l = 0; (l < k.length); l++) {\n i.call(j, k[l], h[k[l]], h, l);;\n };\n };\n e.exports = g;\n});\n__d(\"LoadingDialogDimensions\", [], function(a, b, c, d, e, f) {\n var g = {\n HEIGHT: 96,\n WIDTH: 300\n };\n e.exports = g;\n});\n__d(\"AsyncDialog\", [\"AsyncRequest\",\"Bootloader\",\"CSS\",\"DialogX\",\"DOM\",\"Env\",\"Keys\",\"LayerFadeOnShow\",\"Parent\",\"React\",\"URI\",\"XUISpinner.react\",\"copyProperties\",\"cx\",\"eachKeyVal\",\"emptyFunction\",\"LoadingDialogDimensions\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"Bootloader\"), i = b(\"CSS\"), j = b(\"DialogX\"), k = b(\"DOM\"), l = b(\"Env\"), m = b(\"Keys\"), n = b(\"LayerFadeOnShow\"), o = b(\"Parent\"), p = b(\"React\"), q = b(\"URI\"), r = b(\"XUISpinner.react\"), s = b(\"copyProperties\"), t = b(\"cx\"), u = b(\"eachKeyVal\"), v = b(\"emptyFunction\"), w = b(\"LoadingDialogDimensions\").WIDTH, x;\n function y() {\n if (!x) {\n var ga = k.create(\"div\", {\n className: \"-cx-PRIVATE-loadingDialog__spinnercontainer\"\n });\n x = new j({\n width: w,\n addedBehaviors: [n,],\n xui: true\n }, k.create(\"div\", null, ga));\n p.renderComponent(r({\n size: \"large\"\n }), ga);\n x.subscribe([\"key\",\"blur\",], function(ha, ia) {\n if (((ha == \"blur\") || (((ha == \"key\") && (ia.keyCode == m.ESC))))) {\n ca();\n return false;\n }\n ;\n });\n }\n ;\n return x;\n };\n var z = {\n }, aa = 1, ba = [];\n function ca() {\n u(z, function(ga, ha) {\n ha.abandon();\n da(ga);\n });\n };\n function da(ga) {\n delete z[ga];\n if (!Object.keys(z).length) {\n y().hide();\n };\n };\n function ea(ga, ha) {\n var ia = aa++;\n ba[ia] = ha;\n z[ia] = ga;\n var ja = da.curry((\"\" + ia));\n s(ga.getData(), {\n __asyncDialog: ia\n });\n y().setCausalElement(ga.getRelativeTo()).show();\n var ka = ga.finallyHandler;\n ga.setFinallyHandler(function(la) {\n var ma = la.getPayload();\n if ((ma && ma.asyncURL)) {\n fa.send(new g(ma.asyncURL));\n };\n ja();\n (ka && ka(la));\n });\n ga.setInterceptHandler(ja).setAbortHandler(ja);\n ga.send();\n };\n var fa = {\n send: function(ga, ha) {\n ea(ga, (ha || v));\n },\n bootstrap: function(ga, ha, ia) {\n if (!ga) {\n return\n };\n var ja = (o.byClass(ha, \"stat_elem\") || ha);\n if ((ja && i.hasClass(ja, \"async_saving\"))) {\n return false\n };\n var ka = new q(ga).getQueryData(), la = (ia === \"dialog\"), ma = new g().setURI(ga).setData(ka).setMethod((la ? \"GET\" : \"POST\")).setReadOnly(la).setRelativeTo(ha).setStatusElement(ja).setNectarModuleDataSafe(ha);\n if (l.is_desktop) {\n h.loadModules([\"FbdDialogProvider\",], function(na) {\n na.sendDialog(ma, fa.send);\n });\n return;\n }\n ;\n fa.send(ma);\n },\n respond: function(ga, ha) {\n var ia = ba[ga];\n if (ia) {\n ia(ha);\n delete ba[ga];\n }\n ;\n },\n getLoadingDialog: function() {\n return y();\n }\n };\n e.exports = fa;\n});\n__d(\"MenuTheme\", [\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"cx\");\n e.exports = {\n className: \"-cx-PRIVATE-uiMenu__root\"\n };\n});\n__d(\"BanzaiODS\", [\"Banzai\",\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"Banzai\"), h = b(\"invariant\");\n function i() {\n var k = {\n }, l = {\n };\n function m(n, o, p, q) {\n if ((p === undefined)) {\n p = 1;\n };\n if ((q === undefined)) {\n q = 1;\n };\n if ((n in l)) {\n if ((l[n] <= 0)) {\n return;\n }\n else p /= l[n];\n \n };\n var r = (k[n] || (k[n] = {\n })), s = (r[o] || (r[o] = [0,]));\n p = Number(p);\n q = Number(q);\n if ((!isFinite(p) || !isFinite(q))) {\n return\n };\n s[0] += p;\n if ((arguments.length >= 4)) {\n if (!s[1]) {\n s[1] = 0;\n };\n s[1] += q;\n }\n ;\n };\n return {\n setEntitySample: function(n, o) {\n l[n] = ((Math.random() < o) ? o : 0);\n },\n bumpEntityKey: function(n, o, p) {\n m(n, o, p);\n },\n bumpFraction: function(n, o, p, q) {\n m(n, o, p, q);\n },\n flush: function(n) {\n for (var o in k) {\n g.post((\"ods:\" + o), k[o], n);;\n };\n k = {\n };\n }\n };\n };\n var j = i();\n j.create = i;\n g.subscribe(g.SEND, j.flush.bind(j, null));\n e.exports = j;\n});\n__d(\"arrayContains\", [], function(a, b, c, d, e, f) {\n function g(h, i) {\n return (h.indexOf(i) != -1);\n };\n e.exports = g;\n});"); |
| // 5062 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"safe1dc0686fd0ec733696cd5bd87cc5a6bc0fea2"); |
| // 5063 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"AVmr9\",]);\n}\n;\n;\n__d(\"ChatConfig\", [\"ChatConfigInitialData\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ChatConfigInitialData\"), h = b(\"copyProperties\"), i = {\n }, j = {\n get: function(k, l) {\n return ((((k in i)) ? i[k] : l));\n },\n set: function(k) {\n if (((arguments.length > 1))) {\n var l = {\n };\n l[k] = arguments[1];\n k = l;\n }\n ;\n ;\n h(i, k);\n },\n getDebugInfo: function() {\n return i;\n }\n };\n j.set(g);\n e.exports = j;\n});\n__d(\"XUISpinner.react\", [\"BrowserSupport\",\"ReactPropTypes\",\"React\",\"cx\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"BrowserSupport\"), h = b(\"ReactPropTypes\"), i = b(\"React\"), j = b(\"cx\"), k = b(\"tx\"), l = g.hasCSSAnimations(), m = i.createClass({\n displayName: \"XUISpinner\",\n propTypes: {\n size: h.oneOf([\"small\",\"large\",]),\n background: h.oneOf([\"light\",\"dark\",])\n },\n getDefaultProps: function() {\n return {\n size: \"small\",\n background: \"light\"\n };\n },\n render: function() {\n var n = (((((((((((\"-cx-PRIVATE-xuiSpinner__root\") + ((((this.props.size == \"small\")) ? ((\" \" + \"-cx-PRIVATE-xuiSpinner__small\")) : \"\")))) + ((((this.props.size == \"large\")) ? ((\" \" + \"-cx-PRIVATE-xuiSpinner__large\")) : \"\")))) + ((((this.props.background == \"light\")) ? ((\" \" + \"-cx-PRIVATE-xuiSpinner__light\")) : \"\")))) + ((((this.props.background == \"dark\")) ? ((\" \" + \"-cx-PRIVATE-xuiSpinner__dark\")) : \"\")))) + ((!l ? ((\" \" + \"-cx-PRIVATE-xuiSpinner__animatedgif\")) : \"\"))));\n return this.transferPropsTo(i.DOM.span({\n className: n\n }, \"Loading...\"));\n }\n });\n e.exports = m;\n});\n__d(\"ViewportBounds\", [\"Style\",\"Vector\",\"emptyFunction\",\"ge\",\"removeFromArray\",], function(a, b, c, d, e, f) {\n var g = b(\"Style\"), h = b(\"Vector\"), i = b(\"emptyFunction\"), j = b(\"ge\"), k = b(\"removeFromArray\"), l = {\n JSBNG__top: [],\n right: [],\n bottom: [],\n left: []\n };\n function m(q) {\n return function() {\n var r = 0;\n l[q].forEach(function(s) {\n r = Math.max(r, s.getSize());\n });\n return r;\n };\n };\n;\n function n(q) {\n return function(r) {\n return new o(q, r);\n };\n };\n;\n function o(q, r) {\n this.getSide = i.thatReturns(q);\n this.getSize = function() {\n return ((((typeof r === \"function\")) ? r() : r));\n };\n l[q].push(this);\n };\n;\n o.prototype.remove = function() {\n k(l[this.getSide()], this);\n };\n var p = {\n getTop: m(\"JSBNG__top\"),\n getRight: m(\"right\"),\n getBottom: m(\"bottom\"),\n getLeft: m(\"left\"),\n getElementPosition: function(q) {\n var r = h.getElementPosition(q);\n r.y -= p.getTop();\n return r;\n },\n addTop: n(\"JSBNG__top\"),\n addRight: n(\"right\"),\n addBottom: n(\"bottom\"),\n addLeft: n(\"left\")\n };\n p.addTop(function() {\n var q = j(\"blueBar\");\n if (((q && g.isFixed(q)))) {\n return j(\"blueBarHolder\").offsetHeight;\n }\n ;\n ;\n return 0;\n });\n e.exports = p;\n});\n__d(\"isAsyncScrollQuery\", [\"UserAgent\",], function(a, b, c, d, e, f) {\n var g = b(\"UserAgent\"), h = null;\n function i() {\n if (((h === null))) {\n h = ((((((g.osx() >= 10.8)) && ((g.webkit() >= 536.25)))) && !g.chrome()));\n }\n ;\n ;\n return h;\n };\n;\n e.exports = i;\n});\n__d(\"ScrollAwareDOM\", [\"ArbiterMixin\",\"JSBNG__CSS\",\"DOM\",\"DOMDimensions\",\"DOMPosition\",\"DOMQuery\",\"HTML\",\"Vector\",\"ViewportBounds\",\"copyProperties\",\"isAsyncScrollQuery\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"JSBNG__CSS\"), i = b(\"DOM\"), j = b(\"DOMDimensions\"), k = b(\"DOMPosition\"), l = b(\"DOMQuery\"), m = b(\"HTML\"), n = b(\"Vector\"), o = b(\"ViewportBounds\"), p = b(\"copyProperties\"), q = b(\"isAsyncScrollQuery\");\n function r(w, x) {\n return function() {\n v.monitor(arguments[w], x.curry.apply(x, arguments));\n };\n };\n;\n function s(w) {\n if (!((w instanceof Array))) {\n w = [w,];\n }\n ;\n ;\n for (var x = 0; ((x < w.length)); x++) {\n var y = m.replaceJSONWrapper(w[x]);\n if (((y instanceof m))) {\n return y.getRootNode();\n }\n else if (i.isNode(y)) {\n return y;\n }\n \n ;\n ;\n };\n ;\n return null;\n };\n;\n function t(w) {\n return ((k.getElementPosition(w).y > o.getTop()));\n };\n;\n function u(w) {\n var x = ((k.getElementPosition(w).y + j.getElementDimensions(w).height)), y = ((j.getViewportDimensions().height - o.getBottom()));\n return ((x >= y));\n };\n;\n var v = p({\n monitor: function(w, x) {\n if (q()) {\n return x();\n }\n ;\n ;\n var y = s(w);\n if (y) {\n var z = !!y.offsetParent;\n if (((z && ((t(y) || u(y)))))) {\n return x();\n }\n ;\n ;\n var aa = n.getDocumentDimensions(), ba = x();\n if (((z || ((y.offsetParent && !t(y)))))) {\n var ca = n.getDocumentDimensions().sub(aa), da = {\n delta: ca,\n target: y\n };\n if (((v.inform(\"JSBNG__scroll\", da) !== false))) {\n ca.scrollElementBy(l.getDocumentScrollElement());\n }\n ;\n ;\n }\n ;\n ;\n return ba;\n }\n else return x()\n ;\n },\n replace: function(w, x) {\n var y = s(x);\n if (((!y || h.hasClass(y, \"hidden_elem\")))) {\n y = w;\n }\n ;\n ;\n return v.monitor(y, function() {\n i.replace(w, x);\n });\n },\n prependContent: r(1, i.prependContent),\n insertAfter: r(1, i.insertAfter),\n insertBefore: r(1, i.insertBefore),\n setContent: r(0, i.setContent),\n appendContent: r(1, i.appendContent),\n remove: r(0, i.remove),\n empty: r(0, i.empty)\n }, g);\n e.exports = v;\n});\n__d(\"legacy:ScrollAwareDOM\", [\"ScrollAwareDOM\",], function(a, b, c, d) {\n a.ScrollAwareDOM = b(\"ScrollAwareDOM\");\n}, 3);\n__d(\"legacy:css\", [\"JSBNG__CSS\",], function(a, b, c, d) {\n a.JSBNG__CSS = b(\"JSBNG__CSS\");\n}, 3);\n__d(\"FBDesktopDetect\", [\"UserAgent\",], function(a, b, c, d, e, f) {\n var g = b(\"UserAgent\"), h = \"facebook.desktopplugin\", i = {\n mimeType: \"application/x-facebook-desktop-1\",\n isPluginInstalled: function() {\n if (g.osx()) {\n return false;\n }\n ;\n ;\n var j = null;\n if (a.ActiveXObject) {\n try {\n j = new a.ActiveXObject(h);\n if (j) {\n return true;\n }\n ;\n ;\n } catch (k) {\n \n };\n ;\n }\n else if (((a.JSBNG__navigator && a.JSBNG__navigator.plugins))) {\n a.JSBNG__navigator.plugins.refresh(false);\n for (var l = 0, m = a.JSBNG__navigator.plugins.length; ((l < m)); l++) {\n j = a.JSBNG__navigator.plugins[l];\n if (((j.length && ((j[0].type === this.mimeType))))) {\n return true;\n }\n ;\n ;\n };\n ;\n }\n \n ;\n ;\n return false;\n }\n };\n e.exports = i;\n});\n__d(\"FlipDirectionOnKeypress\", [\"JSBNG__Event\",\"DOM\",\"Input\",\"Style\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"DOM\"), i = b(\"Input\"), j = b(\"Style\");\n function k(JSBNG__event) {\n var l = JSBNG__event.getTarget(), m = ((h.isNodeOfType(l, \"input\") && ((l.type == \"text\")))), n = h.isNodeOfType(l, \"textarea\");\n if (((!((m || n)) || l.getAttribute(\"data-prevent-auto-flip\")))) {\n return;\n }\n ;\n ;\n var o = i.getValue(l), p = ((l.style && l.style.direction));\n if (!p) {\n var q = 0, r = true;\n for (var s = 0; ((s < o.length)); s++) {\n var t = o.charCodeAt(s);\n if (((t >= 48))) {\n if (r) {\n r = false;\n q++;\n }\n ;\n ;\n if (((((t >= 1470)) && ((t <= 1920))))) {\n j.set(l, \"direction\", \"rtl\");\n return;\n }\n ;\n ;\n if (((q == 5))) {\n j.set(l, \"direction\", \"ltr\");\n return;\n }\n ;\n ;\n }\n else r = true;\n ;\n ;\n };\n ;\n }\n else if (((o.length === 0))) {\n j.set(l, \"direction\", \"\");\n }\n \n ;\n ;\n };\n;\n g.listen(JSBNG__document.documentElement, {\n keyup: k,\n input: k\n });\n});\n__d(\"PlaceholderOnsubmitFormListener\", [\"JSBNG__Event\",\"Input\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Input\");\n g.listen(JSBNG__document.documentElement, \"submit\", function(i) {\n var j = i.getTarget().getElementsByTagName(\"*\");\n for (var k = 0; ((k < j.length)); k++) {\n if (((j[k].getAttribute(\"placeholder\") && h.isEmpty(j[k])))) {\n h.setValue(j[k], \"\");\n }\n ;\n ;\n };\n ;\n });\n});\n__d(\"EagleEye\", [\"Arbiter\",\"Env\",\"OnloadEvent\",\"isInIframe\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Env\"), i = b(\"OnloadEvent\"), j = b(\"isInIframe\"), k = ((h.eagleEyeConfig || {\n })), l = \"_e_\", m = ((window.JSBNG__name || \"\")).toString();\n if (((((m.length == 7)) && ((m.substr(0, 3) == l))))) {\n m = m.substr(3);\n }\n else {\n m = k.seed;\n if (!j()) {\n window.JSBNG__name = ((l + m));\n }\n ;\n ;\n }\n;\n;\n var n = ((((((window.JSBNG__location.protocol == \"https:\")) && JSBNG__document.cookie.match(/\\bcsm=1/))) ? \"; secure\" : \"\")), o = ((((l + m)) + \"_\")), p = new JSBNG__Date(((JSBNG__Date.now() + 604800000))).toGMTString(), q = window.JSBNG__location.hostname.replace(/^.*(facebook\\..*)$/i, \"$1\"), r = ((((((((\"; expires=\" + p)) + \";path=/; domain=\")) + q)) + n)), s = 0, t, u = ((k.JSBNG__sessionStorage && a.JSBNG__sessionStorage)), v = JSBNG__document.cookie.length, w = false, x = JSBNG__Date.now();\n function y(ca) {\n return ((((((((o + (s++))) + \"=\")) + encodeURIComponent(ca))) + r));\n };\n;\n function z() {\n var ca = [], da = false, ea = 0, fa = 0;\n this.isEmpty = function() {\n return !ca.length;\n };\n this.enqueue = function(ga, ha) {\n if (ha) {\n ca.unshift(ga);\n }\n else ca.push(ga);\n ;\n ;\n };\n this.dequeue = function() {\n ca.shift();\n };\n this.peek = function() {\n return ca[0];\n };\n this.clear = function(ga) {\n v = Math.min(v, JSBNG__document.cookie.length);\n if (((!w && ((((new JSBNG__Date() - x)) > 60000))))) {\n w = true;\n }\n ;\n ;\n var ha = ((!ga && ((JSBNG__document.cookie.search(l) >= 0)))), ia = !!h.cookie_header_limit, ja = ((h.cookie_count_limit || 19)), ka = ((h.cookie_header_limit || 3950)), la = ((ja - 5)), ma = ((ka - 1000));\n while (!this.isEmpty()) {\n var na = y(this.peek());\n if (((ia && ((((na.length > ka)) || ((w && ((((na.length + v)) > ka))))))))) {\n this.dequeue();\n continue;\n }\n ;\n ;\n if (((((ha || ia)) && ((((((JSBNG__document.cookie.length + na.length)) > ka)) || ((JSBNG__document.cookie.split(\";\").length > ja))))))) {\n break;\n }\n ;\n ;\n JSBNG__document.cookie = na;\n ha = true;\n this.dequeue();\n };\n ;\n var oa = JSBNG__Date.now();\n if (((ga || ((((((((!da && ha)) && ((((fa > 0)) && ((((Math.min(((10 * Math.pow(2, ((fa - 1))))), 60000) + ea)) < oa)))))) && g.query(i.ONLOAD))) && ((((!this.isEmpty() || ((JSBNG__document.cookie.length > ma)))) || ((JSBNG__document.cookie.split(\";\").length > la))))))))) {\n var pa = new JSBNG__Image(), qa = this, ra = ((h.tracking_domain || \"\"));\n da = true;\n pa.JSBNG__onload = function ua() {\n da = false;\n fa = 0;\n qa.clear();\n };\n pa.JSBNG__onerror = pa.JSBNG__onabort = function ua() {\n da = false;\n ea = JSBNG__Date.now();\n fa++;\n };\n var sa = ((h.fb_isb ? ((\"&fb_isb=\" + h.fb_isb)) : \"\")), ta = ((\"&__user=\" + h.user));\n pa.src = ((((((((((((((ra + \"/ajax/nectar.php?asyncSignal=\")) + ((Math.floor(((Math.JSBNG__random() * 10000))) + 1)))) + sa)) + ta)) + \"&\")) + ((!ga ? \"\" : \"s=\")))) + oa));\n }\n ;\n ;\n };\n };\n;\n t = new z();\n if (u) {\n var aa = function() {\n var ca = 0, da = ca;\n function ea() {\n var ha = JSBNG__sessionStorage.getItem(\"_e_ids\");\n if (ha) {\n var ia = ((ha + \"\")).split(\";\");\n if (((ia.length == 2))) {\n ca = parseInt(ia[0], 10);\n da = parseInt(ia[1], 10);\n }\n ;\n ;\n }\n ;\n ;\n };\n ;\n function fa() {\n var ha = ((((ca + \";\")) + da));\n JSBNG__sessionStorage.setItem(\"_e_ids\", ha);\n };\n ;\n function ga(ha) {\n return ((\"_e_\" + ((((ha !== undefined)) ? ha : ca++))));\n };\n ;\n this.isEmpty = function() {\n return ((da === ca));\n };\n this.enqueue = function(ha, ia) {\n var ja = ((ia ? ga(--da) : ga()));\n JSBNG__sessionStorage.setItem(ja, ha);\n fa();\n };\n this.dequeue = function() {\n this.isEmpty();\n JSBNG__sessionStorage.removeItem(ga(da));\n da++;\n fa();\n };\n this.peek = function() {\n var ha = JSBNG__sessionStorage.getItem(ga(da));\n return ((ha ? ((ha + \"\")) : ha));\n };\n this.clear = t.clear;\n ea();\n };\n t = new aa();\n }\n;\n;\n var ba = {\n log: function(ca, da, ea) {\n if (h.no_cookies) {\n return;\n }\n ;\n ;\n var fa = [m,JSBNG__Date.now(),ca,].concat(da);\n fa.push(fa.length);\n function ga() {\n var ha = JSON.stringify(fa);\n try {\n t.enqueue(ha, !!ea);\n t.clear(!!ea);\n } catch (ia) {\n if (((u && ((ia.code === 1000))))) {\n t = new z();\n u = false;\n ga();\n }\n ;\n ;\n };\n ;\n };\n ;\n ga();\n },\n getSessionID: function() {\n return m;\n }\n };\n e.exports = ba;\n a.EagleEye = ba;\n}, 3);\n__d(\"ScriptPathState\", [\"Arbiter\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h, i, j, k, l = 100, m = {\n setIsUIPageletRequest: function(n) {\n j = n;\n },\n setUserURISampleRate: function(n) {\n k = n;\n },\n reset: function() {\n h = null;\n i = false;\n j = false;\n },\n _shouldUpdateScriptPath: function() {\n return ((i && !j));\n },\n _shouldSendURI: function() {\n return ((Math.JSBNG__random() < k));\n },\n getParams: function() {\n var n = {\n };\n if (m._shouldUpdateScriptPath()) {\n if (((m._shouldSendURI() && ((h !== null))))) {\n n.user_uri = h.substring(0, l);\n }\n ;\n ;\n }\n else n.no_script_path = 1;\n ;\n ;\n return n;\n }\n };\n g.subscribe(\"pre_page_transition\", function(n, o) {\n i = true;\n h = o.to.getUnqualifiedURI().toString();\n });\n e.exports = a.ScriptPathState = m;\n});\n__d(\"goOrReplace\", [\"URI\",\"UserAgent\",], function(a, b, c, d, e, f) {\n var g = b(\"URI\"), h = b(\"UserAgent\");\n function i(j, k, l) {\n var m = new g(k), n = a.Quickling;\n if (((((((((((j.pathname == \"/\")) && ((m.getPath() != \"/\")))) && n)) && n.isActive())) && n.isPageActive(m)))) {\n var o = ((j.search ? {\n } : {\n q: \"\"\n }));\n m = new g().setPath(\"/\").setQueryData(o).setFragment(m.getUnqualifiedURI().toString());\n k = m.toString();\n }\n ;\n ;\n if (((l && !((h.ie() < 8))))) {\n j.replace(k);\n }\n else if (((j.href == k))) {\n j.reload();\n }\n else j.href = k;\n \n ;\n ;\n };\n;\n e.exports = i;\n});\n__d(\"AjaxPipeRequest\", [\"Arbiter\",\"AsyncRequest\",\"BigPipe\",\"JSBNG__CSS\",\"DOM\",\"Env\",\"PageletSet\",\"ScriptPathState\",\"URI\",\"copyProperties\",\"goOrReplace\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncRequest\"), i = b(\"BigPipe\"), j = b(\"JSBNG__CSS\"), k = b(\"DOM\"), l = b(\"Env\"), m = b(\"PageletSet\"), n = b(\"ScriptPathState\"), o = b(\"URI\"), p = b(\"copyProperties\"), q = b(\"goOrReplace\"), r = b(\"ge\"), s;\n function t(w, x) {\n var y = r(w);\n if (!y) {\n return;\n }\n ;\n ;\n if (!x) {\n y.style.minHeight = \"600px\";\n }\n ;\n ;\n var z = m.getPageletIDs();\n for (var aa = 0; ((aa < z.length)); aa++) {\n var ba = z[aa];\n if (k.contains(y, ba)) {\n m.removePagelet(ba);\n }\n ;\n ;\n };\n ;\n k.empty(y);\n g.inform(\"pagelet/destroy\", {\n id: null,\n root: y\n });\n };\n;\n function u(w, x) {\n var y = r(w);\n if (((y && !x))) {\n y.style.minHeight = \"100px\";\n }\n ;\n ;\n };\n;\n function v(w, x) {\n this._uri = w;\n this._query_data = x;\n this._request = new h();\n this._canvas_id = null;\n this._allow_cross_page_transition = true;\n };\n;\n p(v.prototype, {\n setCanvasId: function(w) {\n this._canvas_id = w;\n return this;\n },\n setURI: function(w) {\n this._uri = w;\n return this;\n },\n setData: function(w) {\n this._query_data = w;\n return this;\n },\n getData: function(w) {\n return this._query_data;\n },\n setAllowCrossPageTransition: function(w) {\n this._allow_cross_page_transition = w;\n return this;\n },\n setAppend: function(w) {\n this._append = w;\n return this;\n },\n send: function() {\n var w = {\n ajaxpipe: 1,\n ajaxpipe_token: l.ajaxpipe_token\n };\n p(w, n.getParams());\n n.reset();\n this._request.setOption(\"useIframeTransport\", true).setURI(this._uri).setData(p(w, this._query_data)).setPreBootloadHandler(this._preBootloadHandler.bind(this)).setInitialHandler(this._onInitialResponse.bind(this)).setHandler(this._onResponse.bind(this)).setMethod(\"GET\").setReadOnly(true).setAllowCrossPageTransition(this._allow_cross_page_transition);\n if (this._automatic) {\n this._relevantRequest = s;\n }\n else s = this._request;\n ;\n ;\n this._request.send();\n return this;\n },\n _preBootloadFirstResponse: function(w) {\n return false;\n },\n _fireDomContentCallback: function() {\n this._arbiter.inform(\"ajaxpipe/domcontent_callback\", true, g.BEHAVIOR_STATE);\n },\n _fireOnloadCallback: function() {\n this._arbiter.inform(\"ajaxpipe/onload_callback\", true, g.BEHAVIOR_STATE);\n },\n _isRelevant: function(w) {\n return ((((((this._request == s)) || ((this._automatic && ((this._relevantRequest == s)))))) || this._jsNonBlock));\n },\n _preBootloadHandler: function(w) {\n var x = w.getPayload();\n if (((((!x || x.redirect)) || !this._isRelevant(w)))) {\n return false;\n }\n ;\n ;\n var y = false;\n if (w.is_first) {\n ((((!this._append && !this._displayCallback)) && t(this._canvas_id, this._constHeight)));\n this._arbiter = new g();\n y = this._preBootloadFirstResponse(w);\n this.pipe = new i({\n arbiter: this._arbiter,\n rootNodeID: this._canvas_id,\n lid: this._request.lid,\n isAjax: true,\n domContentCallback: this._fireDomContentCallback.bind(this),\n onloadCallback: this._fireOnloadCallback.bind(this),\n domContentEvt: \"ajaxpipe/domcontent_callback\",\n onloadEvt: \"ajaxpipe/onload_callback\",\n jsNonBlock: this._jsNonBlock,\n automatic: this._automatic,\n displayCallback: this._displayCallback\n });\n }\n ;\n ;\n return y;\n },\n _redirect: function(w) {\n if (w.redirect) {\n if (((w.force || !this.isPageActive(w.redirect)))) {\n var x = [\"ajaxpipe\",\"ajaxpipe_token\",].concat(this.getSanitizedParameters());\n q(window.JSBNG__location, o(w.redirect).removeQueryData(x), true);\n }\n else {\n var y = a.PageTransitions;\n y.go(w.redirect, true);\n }\n ;\n ;\n return true;\n }\n else return false\n ;\n },\n isPageActive: function(w) {\n return true;\n },\n getSanitizedParameters: function() {\n return [];\n },\n _versionCheck: function(w) {\n return true;\n },\n _onInitialResponse: function(w) {\n var x = w.getPayload();\n if (!this._isRelevant(w)) {\n return false;\n }\n ;\n ;\n if (!x) {\n return true;\n }\n ;\n ;\n if (((this._redirect(x) || !this._versionCheck(x)))) {\n return false;\n }\n ;\n ;\n return true;\n },\n _processFirstResponse: function(w) {\n var x = w.getPayload();\n if (((r(this._canvas_id) && ((x.canvas_class != null))))) {\n j.setClass(this._canvas_id, x.canvas_class);\n }\n ;\n ;\n },\n setFirstResponseCallback: function(w) {\n this._firstResponseCallback = w;\n return this;\n },\n setFirstResponseHandler: function(w) {\n this._processFirstResponse = w;\n return this;\n },\n _onResponse: function(w) {\n var x = w.payload;\n if (!this._isRelevant(w)) {\n return h.suppressOnloadToken;\n }\n ;\n ;\n if (w.is_first) {\n this._processFirstResponse(w);\n ((this._firstResponseCallback && this._firstResponseCallback()));\n x.provides = ((x.provides || []));\n x.provides.push(\"uipage_onload\");\n if (this._append) {\n x.append = this._canvas_id;\n }\n ;\n ;\n }\n ;\n ;\n if (x) {\n if (((((((\"JSBNG__content\" in x.JSBNG__content)) && ((this._canvas_id !== null)))) && ((this._canvas_id != \"JSBNG__content\"))))) {\n x.JSBNG__content[this._canvas_id] = x.JSBNG__content.JSBNG__content;\n delete x.JSBNG__content.JSBNG__content;\n }\n ;\n ;\n this.pipe.onPageletArrive(x);\n }\n ;\n ;\n if (w.is_last) {\n u(this._canvas_id, this._constHeight);\n }\n ;\n ;\n return h.suppressOnloadToken;\n },\n setNectarModuleDataSafe: function(w) {\n this._request.setNectarModuleDataSafe(w);\n return this;\n },\n setFinallyHandler: function(w) {\n this._request.setFinallyHandler(w);\n return this;\n },\n setErrorHandler: function(w) {\n this._request.setErrorHandler(w);\n return this;\n },\n abort: function() {\n this._request.abort();\n if (((s == this._request))) {\n s = null;\n }\n ;\n ;\n this._request = null;\n return this;\n },\n setJSNonBlock: function(w) {\n this._jsNonBlock = w;\n return this;\n },\n setAutomatic: function(w) {\n this._automatic = w;\n return this;\n },\n setDisplayCallback: function(w) {\n this._displayCallback = w;\n return this;\n },\n setConstHeight: function(w) {\n this._constHeight = w;\n return this;\n },\n getAsyncRequest: function() {\n return this._request;\n }\n });\n p(v, {\n getCurrentRequest: function() {\n return s;\n },\n setCurrentRequest: function(w) {\n s = w;\n }\n });\n e.exports = v;\n});\n__d(\"AsyncRequestNectarLogging\", [\"AsyncRequest\",\"Nectar\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"Nectar\"), i = b(\"copyProperties\");\n i(g.prototype, {\n setNectarModuleData: function(j) {\n if (((this.method == \"POST\"))) {\n h.addModuleData(this.data, j);\n }\n ;\n ;\n },\n setNectarImpressionId: function() {\n if (((this.method == \"POST\"))) {\n h.addImpressionID(this.data);\n }\n ;\n ;\n }\n });\n});\n__d(\"CSSClassTransition\", [\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = [];\n function i() {\n \n };\n;\n g(i, {\n go: function(j, k, l, m) {\n var n;\n for (var o = 0; ((o < h.length)); o++) {\n if (((h[o](j, k, l, m) === true))) {\n n = true;\n }\n ;\n ;\n };\n ;\n if (!n) {\n j.className = k;\n }\n ;\n ;\n },\n registerHandler: function(j) {\n h.push(j);\n return {\n remove: function() {\n var k = h.indexOf(j);\n if (((k >= 0))) {\n h.splice(k, 1);\n }\n ;\n ;\n }\n };\n }\n });\n e.exports = i;\n});\n__d(\"DOMClone\", [], function(a, b, c, d, e, f) {\n var g = {\n shallowClone: function(i) {\n return h(i, false);\n },\n deepClone: function(i) {\n return h(i, true);\n }\n };\n function h(i, j) {\n var k = i.cloneNode(j);\n if (((typeof k.__FB_TOKEN !== \"undefined\"))) {\n delete k.__FB_TOKEN;\n }\n ;\n ;\n return k;\n };\n;\n e.exports = g;\n});\n__d(\"DOMScroll\", [\"Animation\",\"Arbiter\",\"DOM\",\"DOMQuery\",\"Vector\",\"ViewportBounds\",\"ge\",\"isAsyncScrollQuery\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"Arbiter\"), i = b(\"DOM\"), j = b(\"DOMQuery\"), k = b(\"Vector\"), l = b(\"ViewportBounds\"), m = b(\"ge\"), n = b(\"isAsyncScrollQuery\"), o = {\n SCROLL: \"dom-scroll\",\n getScrollState: function() {\n var p = k.getViewportDimensions(), q = k.getDocumentDimensions(), r = ((q.x > p.x)), s = ((q.y > p.y));\n r += 0;\n s += 0;\n return new k(r, s);\n },\n _scrollbarSize: null,\n _initScrollbarSize: function() {\n var p = i.create(\"p\");\n p.style.width = \"100%\";\n p.style.height = \"200px\";\n var q = i.create(\"div\");\n q.style.position = \"absolute\";\n q.style.JSBNG__top = \"0px\";\n q.style.left = \"0px\";\n q.style.visibility = \"hidden\";\n q.style.width = \"200px\";\n q.style.height = \"150px\";\n q.style.overflow = \"hidden\";\n q.appendChild(p);\n JSBNG__document.body.appendChild(q);\n var r = p.offsetWidth;\n q.style.overflow = \"JSBNG__scroll\";\n var s = p.offsetWidth;\n if (((r == s))) {\n s = q.clientWidth;\n }\n ;\n ;\n JSBNG__document.body.removeChild(q);\n o._scrollbarSize = ((r - s));\n },\n getScrollbarSize: function() {\n if (((o._scrollbarSize === null))) {\n o._initScrollbarSize();\n }\n ;\n ;\n return o._scrollbarSize;\n },\n JSBNG__scrollTo: function(p, q, r, s, t) {\n if (((((typeof q == \"undefined\")) || ((q === true))))) {\n q = 750;\n }\n ;\n ;\n if (n()) {\n q = false;\n }\n ;\n ;\n if (!((p instanceof k))) {\n var u = k.getScrollPosition().x, v = k.getElementPosition(m(p)).y;\n p = new k(u, v, \"JSBNG__document\");\n if (!s) {\n p.y -= ((l.getTop() / ((r ? 2 : 1))));\n }\n ;\n ;\n }\n ;\n ;\n if (r) {\n p.y -= ((k.getViewportDimensions().y / 2));\n }\n else if (s) {\n p.y -= k.getViewportDimensions().y;\n p.y += s;\n }\n \n ;\n ;\n p = p.convertTo(\"JSBNG__document\");\n if (q) {\n return new g(JSBNG__document.body).to(\"scrollTop\", p.y).to(\"scrollLeft\", p.x).ease(g.ease.end).duration(q).ondone(t).go();\n }\n else if (window.JSBNG__scrollTo) {\n window.JSBNG__scrollTo(p.x, p.y);\n ((t && t()));\n }\n \n ;\n ;\n h.inform(o.SCROLL);\n },\n ensureVisible: function(p, q, r, s, t) {\n if (((r === undefined))) {\n r = 10;\n }\n ;\n ;\n p = m(p);\n if (q) {\n p = j.JSBNG__find(p, q);\n }\n ;\n ;\n var u = k.getScrollPosition().x, v = k.getScrollPosition().y, w = ((v + k.getViewportDimensions().y)), x = k.getElementPosition(p).y, y = ((x + k.getElementDimensions(p).y));\n x -= l.getTop();\n x -= r;\n y += r;\n if (((x < v))) {\n o.JSBNG__scrollTo(new k(u, x, \"JSBNG__document\"), s, false, false, t);\n }\n else if (((y > w))) {\n if (((((x - ((y - w)))) < v))) {\n o.JSBNG__scrollTo(new k(u, x, \"JSBNG__document\"), s, false, false, t);\n }\n else o.JSBNG__scrollTo(new k(u, y, \"JSBNG__document\"), s, false, true, t);\n ;\n }\n \n ;\n ;\n },\n scrollToTop: function(p) {\n var q = k.getScrollPosition();\n o.JSBNG__scrollTo(new k(q.x, 0, \"JSBNG__document\"), ((p !== false)));\n }\n };\n e.exports = o;\n});\n__d(\"Button\", [\"JSBNG__CSS\",\"DataStore\",\"DOM\",\"JSBNG__Event\",\"Parent\",\"cx\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = b(\"DataStore\"), i = b(\"DOM\"), j = b(\"JSBNG__Event\"), k = b(\"Parent\"), l = b(\"cx\"), m = b(\"emptyFunction\"), n = \"uiButtonDisabled\", o = \"uiButtonDepressed\", p = \"-cx-PUBLIC-abstractButton__disabled\", q = \"-cx-PUBLIC-abstractButton__depressed\", r = \"button:blocker\", s = \"href\", t = \"ajaxify\";\n function u(aa, ba) {\n var ca = h.get(aa, r);\n if (ba) {\n if (ca) {\n ca.remove();\n h.remove(aa, r);\n }\n ;\n ;\n }\n else if (!ca) {\n h.set(aa, r, j.listen(aa, \"click\", m.thatReturnsFalse, j.Priority.URGENT));\n }\n \n ;\n ;\n };\n;\n function v(aa) {\n var ba = ((k.byClass(aa, \"uiButton\") || k.byClass(aa, \"-cx-PRIVATE-abstractButton__root\")));\n if (!ba) {\n throw new Error(\"invalid use case\");\n }\n ;\n ;\n return ba;\n };\n;\n function w(aa) {\n return i.isNodeOfType(aa, \"a\");\n };\n;\n function x(aa) {\n return i.isNodeOfType(aa, \"button\");\n };\n;\n function y(aa) {\n return g.hasClass(aa, \"-cx-PRIVATE-abstractButton__root\");\n };\n;\n var z = {\n getInputElement: function(aa) {\n aa = v(aa);\n if (w(aa)) {\n throw new Error(\"invalid use case\");\n }\n ;\n ;\n return ((x(aa) ? aa : i.JSBNG__find(aa, \"input\")));\n },\n isEnabled: function(aa) {\n return !((g.hasClass(v(aa), n) || g.hasClass(v(aa), p)));\n },\n setEnabled: function(aa, ba) {\n aa = v(aa);\n var ca = ((y(aa) ? p : n));\n g.conditionClass(aa, ca, !ba);\n if (w(aa)) {\n var da = aa.getAttribute(\"href\"), ea = aa.getAttribute(\"ajaxify\"), fa = h.get(aa, s, \"#\"), ga = h.get(aa, t);\n if (ba) {\n if (!da) {\n aa.setAttribute(\"href\", fa);\n }\n ;\n ;\n if (((!ea && ga))) {\n aa.setAttribute(\"ajaxify\", ga);\n }\n ;\n ;\n aa.removeAttribute(\"tabIndex\");\n }\n else {\n if (((da && ((da !== fa))))) {\n h.set(aa, s, da);\n }\n ;\n ;\n if (((ea && ((ea !== ga))))) {\n h.set(aa, t, ea);\n }\n ;\n ;\n aa.removeAttribute(\"href\");\n aa.removeAttribute(\"ajaxify\");\n aa.setAttribute(\"tabIndex\", \"-1\");\n }\n ;\n ;\n u(aa, ba);\n }\n else {\n var ha = z.getInputElement(aa);\n ha.disabled = !ba;\n u(ha, ba);\n }\n ;\n ;\n },\n setDepressed: function(aa, ba) {\n aa = v(aa);\n var ca = ((y(aa) ? q : o));\n g.conditionClass(aa, ca, ba);\n },\n isDepressed: function(aa) {\n aa = v(aa);\n var ba = ((y(aa) ? q : o));\n return g.hasClass(aa, ba);\n },\n setLabel: function(aa, ba) {\n aa = v(aa);\n if (y(aa)) {\n var ca = [];\n if (ba) {\n ca.push(ba);\n }\n ;\n ;\n var da = i.scry(aa, \".img\")[0];\n if (da) {\n if (((aa.firstChild == da))) {\n ca.unshift(da);\n }\n else ca.push(da);\n ;\n }\n ;\n ;\n i.setContent(aa, ca);\n }\n else if (w(aa)) {\n var ea = i.JSBNG__find(aa, \"span.uiButtonText\");\n i.setContent(ea, ba);\n }\n else z.getInputElement(aa).value = ba;\n \n ;\n ;\n var fa = ((y(aa) ? \"-cx-PUBLIC-abstractButton__notext\" : \"uiButtonNoText\"));\n g.conditionClass(aa, fa, !ba);\n },\n setIcon: function(aa, ba) {\n if (((ba && !i.isNode(ba)))) {\n return;\n }\n ;\n ;\n aa = v(aa);\n var ca = i.scry(aa, \".img\")[0];\n if (!ba) {\n ((ca && i.remove(ca)));\n return;\n }\n ;\n ;\n g.addClass(ba, \"customimg\");\n if (((ca != ba))) {\n if (ca) {\n i.replace(ca, ba);\n }\n else i.prependContent(aa, ba);\n ;\n }\n ;\n ;\n }\n };\n e.exports = z;\n});\n__d(\"Locale\", [\"Style\",], function(a, b, c, d, e, f) {\n var g = b(\"Style\"), h, i = {\n isRTL: function() {\n if (((h === undefined))) {\n h = ((\"rtl\" === g.get(JSBNG__document.body, \"direction\")));\n }\n ;\n ;\n return h;\n }\n };\n e.exports = i;\n});\n__d(\"getOverlayZIndex\", [\"Style\",], function(a, b, c, d, e, f) {\n var g = b(\"Style\");\n function h(i, j) {\n j = ((j || JSBNG__document.body));\n var k = [];\n while (((i && ((i !== j))))) {\n k.push(i);\n i = i.parentNode;\n };\n ;\n if (((i !== j))) {\n return 0;\n }\n ;\n ;\n for (var l = ((k.length - 1)); ((l >= 0)); l--) {\n var m = k[l];\n if (((g.get(m, \"position\") != \"static\"))) {\n var n = parseInt(g.get(m, \"z-index\"), 10);\n if (!isNaN(n)) {\n return n;\n }\n ;\n ;\n }\n ;\n ;\n };\n ;\n return 0;\n };\n;\n e.exports = h;\n});\n__d(\"Dialog\", [\"Animation\",\"Arbiter\",\"AsyncRequest\",\"Bootloader\",\"Button\",\"ContextualThing\",\"JSBNG__CSS\",\"DOM\",\"JSBNG__Event\",\"Focus\",\"Form\",\"HTML\",\"Keys\",\"Locale\",\"Parent\",\"Run\",\"Style\",\"URI\",\"UserAgent\",\"Vector\",\"bind\",\"copyProperties\",\"createArrayFrom\",\"emptyFunction\",\"getObjectValues\",\"getOverlayZIndex\",\"removeFromArray\",\"shield\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"Arbiter\"), i = b(\"AsyncRequest\"), j = b(\"Bootloader\"), k = b(\"Button\"), l = b(\"ContextualThing\"), m = b(\"JSBNG__CSS\"), n = b(\"DOM\"), o = b(\"JSBNG__Event\"), p = b(\"Focus\"), q = b(\"Form\"), r = b(\"HTML\"), s = b(\"Keys\"), t = b(\"Locale\"), u = b(\"Parent\"), v = b(\"Run\"), w = b(\"Style\"), x = b(\"URI\"), y = b(\"UserAgent\"), z = b(\"Vector\"), aa = b(\"bind\"), ba = b(\"copyProperties\"), ca = b(\"createArrayFrom\"), da = b(\"emptyFunction\"), ea = b(\"getObjectValues\"), fa = b(\"getOverlayZIndex\"), ga = b(\"removeFromArray\"), ha = b(\"shield\"), ia = b(\"tx\"), ja = function() {\n var la = JSBNG__document.body, ma = JSBNG__document.createElement(\"div\"), na = JSBNG__document.createElement(\"div\");\n la.insertBefore(ma, la.firstChild);\n la.insertBefore(na, la.firstChild);\n ma.style.position = \"fixed\";\n ma.style.JSBNG__top = \"20px\";\n var oa = ((ma.offsetTop !== na.offsetTop));\n la.removeChild(ma);\n la.removeChild(na);\n ja = da.thatReturns(oa);\n return oa;\n };\n function ka(la) {\n this._show_loading = true;\n this._auto_focus = true;\n this._submit_on_enter = false;\n this._fade_enabled = true;\n this._onload_handlers = [];\n this._top = 125;\n this._uniqueID = ((\"dialog_\" + ka._globalCount++));\n this._content = null;\n this._obj = null;\n this._popup = null;\n this._overlay = null;\n this._shim = null;\n this._causal_elem = null;\n this._previous_focus = null;\n this._buttons = [];\n this._buildDialog();\n if (la) {\n this._setFromModel(la);\n }\n ;\n ;\n ka._init();\n };\n;\n ba(ka, {\n OK: {\n JSBNG__name: \"ok\",\n label: \"Okay\"\n },\n CANCEL: {\n JSBNG__name: \"cancel\",\n label: \"Cancel\",\n className: \"inputaux\"\n },\n CLOSE: {\n JSBNG__name: \"close\",\n label: \"Close\"\n },\n NEXT: {\n JSBNG__name: \"next\",\n label: \"Next\"\n },\n SAVE: {\n JSBNG__name: \"save\",\n label: \"Save\"\n },\n SUBMIT: {\n JSBNG__name: \"submit\",\n label: \"Submit\"\n },\n CONFIRM: {\n JSBNG__name: \"JSBNG__confirm\",\n label: \"Confirm\"\n },\n DELETE: {\n JSBNG__name: \"delete\",\n label: \"Delete\"\n },\n _globalCount: 0,\n _bottoms: [0,],\n max_bottom: 0,\n _updateMaxBottom: function() {\n ka.max_bottom = Math.max.apply(Math, ka._bottoms);\n }\n });\n ba(ka, {\n OK_AND_CANCEL: [ka.OK,ka.CANCEL,],\n _STANDARD_BUTTONS: [ka.OK,ka.CANCEL,ka.CLOSE,ka.SAVE,ka.SUBMIT,ka.CONFIRM,ka.DELETE,],\n SIZE: {\n WIDE: 555,\n STANDARD: 445\n },\n _HALO_WIDTH: 10,\n _BORDER_WIDTH: 1,\n _PADDING_WIDTH: 10,\n _PAGE_MARGIN: 40,\n _stack: [],\n _isUsingCSSBorders: function() {\n return ((y.ie() < 7));\n },\n newButton: function(la, ma, na, oa) {\n var pa = {\n JSBNG__name: la,\n label: ma\n };\n if (na) {\n pa.className = na;\n }\n ;\n ;\n if (oa) {\n pa.handler = oa;\n }\n ;\n ;\n return pa;\n },\n getCurrent: function() {\n var la = ka._stack;\n return ((la.length ? la[((la.length - 1))] : null));\n },\n hideCurrent: function() {\n var la = ka.getCurrent();\n ((la && la.hide()));\n },\n bootstrap: function(la, ma, na, oa, pa, qa) {\n ma = ((ma || {\n }));\n ba(ma, new x(la).getQueryData());\n oa = ((oa || ((na ? \"GET\" : \"POST\"))));\n var ra = ((u.byClass(qa, \"stat_elem\") || qa));\n if (((ra && m.hasClass(ra, \"async_saving\")))) {\n return false;\n }\n ;\n ;\n var sa = new i().setReadOnly(!!na).setMethod(oa).setRelativeTo(qa).setStatusElement(ra).setURI(la).setNectarModuleDataSafe(qa).setData(ma), ta = new ka(pa).setCausalElement(qa).setAsync(sa);\n ta.show();\n return false;\n },\n showFromModel: function(la, ma) {\n var na = new ka(la).setCausalElement(ma).show();\n if (la.hiding) {\n na.hide();\n }\n ;\n ;\n },\n _init: function() {\n this._init = da;\n v.onLeave(ha(ka._tearDown, null, false));\n h.subscribe(\"page_transition\", ha(ka._tearDown, null, true));\n o.listen(JSBNG__document.documentElement, \"keydown\", function(JSBNG__event) {\n if (((((o.getKeyCode(JSBNG__event) == s.ESC)) && !JSBNG__event.getModifiers().any))) {\n if (ka._escape()) {\n JSBNG__event.kill();\n }\n ;\n ;\n }\n else if (((((o.getKeyCode(JSBNG__event) == s.RETURN)) && !JSBNG__event.getModifiers().any))) {\n if (ka._enter()) {\n JSBNG__event.kill();\n }\n ;\n }\n \n ;\n ;\n });\n o.listen(window, \"resize\", function(JSBNG__event) {\n var la = ka.getCurrent();\n ((la && la._resetDialogObj()));\n });\n },\n _findButton: function(la, ma) {\n if (la) {\n for (var na = 0; ((na < la.length)); ++na) {\n if (((la[na].JSBNG__name == ma))) {\n return la[na];\n }\n ;\n ;\n };\n }\n ;\n ;\n return null;\n },\n _tearDown: function(la) {\n var ma = ka._stack.slice();\n for (var na = ((ma.length - 1)); ((na >= 0)); na--) {\n if (((((la && !ma[na]._cross_transition)) || ((!la && !ma[na]._cross_quickling))))) {\n ma[na].hide();\n }\n ;\n ;\n };\n ;\n },\n _escape: function() {\n var la = ka.getCurrent();\n if (!la) {\n return false;\n }\n ;\n ;\n var ma = la._semi_modal, na = la._buttons;\n if (((!na.length && !ma))) {\n return false;\n }\n ;\n ;\n if (((ma && !na.length))) {\n la.hide();\n return true;\n }\n ;\n ;\n var oa, pa = ka._findButton(na, \"cancel\");\n if (la._cancelHandler) {\n la.cancel();\n return true;\n }\n else if (pa) {\n oa = pa;\n }\n else if (((na.length == 1))) {\n oa = na[0];\n }\n else return false\n \n \n ;\n la._handleButton(oa);\n return true;\n },\n _enter: function() {\n var la = ka.getCurrent();\n if (((!la || !la._submit_on_enter))) {\n return false;\n }\n ;\n ;\n if (((JSBNG__document.activeElement != la._frame))) {\n return false;\n }\n ;\n ;\n var ma = la._buttons;\n if (!ma) {\n return false;\n }\n ;\n ;\n la._handleButton(ma[0]);\n return true;\n },\n call_or_eval: function(la, ma, na) {\n if (!ma) {\n return undefined;\n }\n ;\n ;\n na = ((na || {\n }));\n if (((typeof ma == \"string\"))) {\n var oa = Object.keys(na).join(\", \");\n ma = (eval)(((((((((\"({f: function(\" + oa)) + \") { \")) + ma)) + \"}})\"))).f;\n }\n ;\n ;\n return ma.apply(la, ea(na));\n }\n });\n ba(ka.prototype, {\n _cross_quickling: false,\n _cross_transition: false,\n _loading: false,\n _showing: false,\n show: function() {\n this._showing = true;\n if (this._async_request) {\n if (this._show_loading) {\n this.showLoading();\n }\n ;\n ;\n }\n else this._update();\n ;\n ;\n return this;\n },\n showLoading: function() {\n this._loading = true;\n m.addClass(this._frame, \"dialog_loading_shown\");\n this._renderDialog();\n return this;\n },\n hide: function() {\n if (((!this._showing && !this._loading))) {\n return this;\n }\n ;\n ;\n this._showing = false;\n if (this._autohide_timeout) {\n JSBNG__clearTimeout(this._autohide_timeout);\n this._autohide_timeout = null;\n }\n ;\n ;\n if (((this._fade_enabled && ((ka._stack.length <= 1))))) {\n this._fadeOut();\n }\n else this._hide();\n ;\n ;\n return this;\n },\n cancel: function() {\n if (((!this._cancelHandler || ((this._cancelHandler() !== false))))) {\n this.hide();\n }\n ;\n ;\n },\n getRoot: function() {\n return this._obj;\n },\n getBody: function() {\n return n.scry(this._obj, \"div.dialog_body\")[0];\n },\n getButtonElement: function(la) {\n if (((typeof la == \"string\"))) {\n la = ka._findButton(this._buttons, la);\n }\n ;\n ;\n if (((!la || !la.JSBNG__name))) {\n return null;\n }\n ;\n ;\n var ma = n.scry(this._popup, \"input\"), na = function(oa) {\n return ((oa.JSBNG__name == la.JSBNG__name));\n };\n return ((ma.filter(na)[0] || null));\n },\n getContentNode: function() {\n return n.JSBNG__find(this._content, \"div.dialog_content\");\n },\n getFormData: function() {\n return q.serialize(this.getContentNode());\n },\n setAllowCrossPageTransition: function(la) {\n this._cross_transition = la;\n return this;\n },\n setAllowCrossQuicklingNavigation: function(la) {\n this._cross_quickling = la;\n return this;\n },\n setShowing: function() {\n this.show();\n return this;\n },\n setHiding: function() {\n this.hide();\n return this;\n },\n setTitle: function(la) {\n var ma = this._nodes.title, na = this._nodes.title_inner, oa = this._nodes.JSBNG__content;\n n.setContent(na, this._format(((la || \"\"))));\n m.conditionShow(ma, !!la);\n m.conditionClass(oa, \"dialog_content_titleless\", !la);\n return this;\n },\n setBody: function(la) {\n n.setContent(this._nodes.body, this._format(la));\n return this;\n },\n setExtraData: function(la) {\n this._extra_data = la;\n return this;\n },\n setReturnData: function(la) {\n this._return_data = la;\n return this;\n },\n setShowLoading: function(la) {\n this._show_loading = la;\n return this;\n },\n setCustomLoading: function(la) {\n var ma = n.create(\"div\", {\n className: \"dialog_loading\"\n }, la);\n n.setContent(this._frame, [this._nodes.title,this._nodes.JSBNG__content,ma,]);\n return this;\n },\n setFullBleed: function(la) {\n this._full_bleed = la;\n this._updateWidth();\n m.conditionClass(this._obj, \"full_bleed\", la);\n return this;\n },\n setCausalElement: function(la) {\n this._causal_elem = la;\n return this;\n },\n setUserData: function(la) {\n this._user_data = la;\n return this;\n },\n getUserData: function() {\n return this._user_data;\n },\n setAutohide: function(la) {\n if (la) {\n if (this._showing) {\n this._autohide_timeout = JSBNG__setTimeout(ha(this.hide, this), la);\n }\n else this._autohide = la;\n ;\n ;\n }\n else {\n this._autohide = null;\n if (this._autohide_timeout) {\n JSBNG__clearTimeout(this._autohide_timeout);\n this._autohide_timeout = null;\n }\n ;\n ;\n }\n ;\n ;\n return this;\n },\n setSummary: function(la) {\n var ma = this._nodes.summary;\n n.setContent(ma, this._format(((la || \"\"))));\n m.conditionShow(ma, !!la);\n return this;\n },\n setButtons: function(la) {\n var ma, na;\n if (!((la instanceof Array))) {\n ma = ca(arguments);\n }\n else ma = la;\n ;\n ;\n for (var oa = 0; ((oa < ma.length)); ++oa) {\n if (((typeof ma[oa] == \"string\"))) {\n na = ka._findButton(ka._STANDARD_BUTTONS, ma[oa]);\n ma[oa] = na;\n }\n ;\n ;\n };\n ;\n this._buttons = ma;\n var pa = [];\n if (((ma && ((ma.length > 0))))) {\n for (var qa = 0; ((qa < ma.length)); qa++) {\n na = ma[qa];\n var ra = n.create(\"input\", {\n type: \"button\",\n JSBNG__name: ((na.JSBNG__name || \"\")),\n value: na.label\n }), sa = n.create(\"label\", {\n className: \"uiButton uiButtonLarge uiButtonConfirm\"\n }, ra);\n if (na.className) {\n na.className.split(/\\s+/).forEach(function(ua) {\n m.addClass(sa, ua);\n });\n if (m.hasClass(sa, \"inputaux\")) {\n m.removeClass(sa, \"inputaux\");\n m.removeClass(sa, \"uiButtonConfirm\");\n }\n ;\n ;\n if (m.hasClass(sa, \"uiButtonSpecial\")) {\n m.removeClass(sa, \"uiButtonConfirm\");\n }\n ;\n ;\n }\n ;\n ;\n if (na.icon) {\n n.prependContent(sa, n.create(\"img\", {\n src: na.icon,\n className: \"img mrs\"\n }));\n }\n ;\n ;\n if (na.disabled) {\n k.setEnabled(sa, false);\n }\n ;\n ;\n o.listen(ra, \"click\", this._handleButton.bind(this, na.JSBNG__name));\n {\n var fin109keys = ((window.top.JSBNG_Replay.forInKeys)((na))), fin109i = (0);\n var ta;\n for (; (fin109i < fin109keys.length); (fin109i++)) {\n ((ta) = (fin109keys[fin109i]));\n {\n if (((((ta.indexOf(\"data-\") === 0)) && ((ta.length > 5))))) {\n ra.setAttribute(ta, na[ta]);\n }\n ;\n ;\n };\n };\n };\n ;\n pa.push(sa);\n };\n }\n ;\n ;\n n.setContent(this._nodes.buttons, pa);\n this._updateButtonVisibility();\n return this;\n },\n setButtonsMessage: function(la) {\n n.setContent(this._nodes.button_message, this._format(((la || \"\"))));\n this._has_button_message = !!la;\n this._updateButtonVisibility();\n return this;\n },\n _updateButtonVisibility: function() {\n var la = ((((this._buttons.length > 0)) || this._has_button_message));\n m.conditionShow(this._nodes.button_wrapper, la);\n m.conditionClass(this._obj, \"omitDialogFooter\", !la);\n },\n setClickButtonOnEnter: function(la, ma) {\n this._clickOnEnterTarget = la;\n if (!this._clickOnEnterListener) {\n this._clickOnEnterListener = o.listen(this._nodes.body, \"keypress\", function(JSBNG__event) {\n var na = JSBNG__event.getTarget();\n if (((na && ((na.id === this._clickOnEnterTarget))))) {\n if (((o.getKeyCode(JSBNG__event) == s.RETURN))) {\n this._handleButton(ma);\n JSBNG__event.kill();\n }\n ;\n }\n ;\n ;\n return true;\n }.bind(this));\n }\n ;\n ;\n return this;\n },\n setStackable: function(la, ma) {\n this._is_stackable = la;\n this._shown_while_stacked = ((la && ma));\n return this;\n },\n setHandler: function(la) {\n this._handler = la;\n return this;\n },\n setCancelHandler: function(la) {\n this._cancelHandler = ka.call_or_eval.bind(null, this, la);\n return this;\n },\n setCloseHandler: function(la) {\n this._close_handler = ka.call_or_eval.bind(null, this, la);\n return this;\n },\n clearHandler: function() {\n return this.setHandler(null);\n },\n setPostURI: function(la, ma) {\n if (((ma === undefined))) {\n ma = true;\n }\n ;\n ;\n if (ma) {\n this.setHandler(this._submitForm.bind(this, \"POST\", la));\n }\n else this.setHandler(function() {\n q.post(la, this.getFormData());\n this.hide();\n }.bind(this));\n ;\n ;\n return this;\n },\n setGetURI: function(la) {\n this.setHandler(this._submitForm.bind(this, \"GET\", la));\n return this;\n },\n setModal: function(la) {\n this._modal = la;\n m.conditionClass(this._obj, \"generic_dialog_modal\", la);\n return this;\n },\n setSemiModal: function(la) {\n if (la) {\n this.setModal(true);\n this._semiModalListener = o.listen(this._obj, \"click\", function(ma) {\n if (!n.contains(this._popup, ma.getTarget())) {\n this.hide();\n }\n ;\n ;\n }.bind(this));\n }\n else ((this._semiModalListener && this._semiModalListener.remove()));\n ;\n ;\n this._semi_modal = la;\n return this;\n },\n setWideDialog: function(la) {\n this._wide_dialog = la;\n this._updateWidth();\n return this;\n },\n setContentWidth: function(la) {\n this._content_width = la;\n this._updateWidth();\n return this;\n },\n setTitleLoading: function(la) {\n if (((la === undefined))) {\n la = true;\n }\n ;\n ;\n var ma = n.JSBNG__find(this._popup, \"h2.dialog_title\");\n if (ma) {\n m.conditionClass(ma, \"loading\", la);\n }\n ;\n ;\n return this;\n },\n setSecure: function(la) {\n m.conditionClass(this._nodes.title, \"secure\", la);\n return this;\n },\n setClassName: function(la) {\n la.split(/\\s+/).forEach(m.addClass.bind(m, this._obj));\n return this;\n },\n setFadeEnabled: function(la) {\n this._fade_enabled = la;\n return this;\n },\n setFooter: function(la) {\n var ma = this._nodes.footer;\n n.setContent(ma, this._format(((la || \"\"))));\n m.conditionShow(ma, !!la);\n return this;\n },\n setAutoFocus: function(la) {\n this._auto_focus = la;\n return this;\n },\n setTop: function(la) {\n this._top = la;\n this._resetDialogObj();\n return this;\n },\n onloadRegister: function(la) {\n ca(la).forEach(function(ma) {\n if (((typeof ma == \"string\"))) {\n ma = new Function(ma);\n }\n ;\n ;\n this._onload_handlers.push(ma.bind(this));\n }.bind(this));\n return this;\n },\n setAsyncURL: function(la) {\n return this.setAsync(new i(la));\n },\n setAsync: function(la) {\n var ma = function(ua) {\n if (((this._async_request != la))) {\n return;\n }\n ;\n ;\n this._async_request = null;\n var va = ua.getPayload(), wa = va;\n if (this._loading) {\n this._showing = true;\n }\n ;\n ;\n if (((typeof wa == \"string\"))) {\n this.setBody(wa);\n }\n else this._setFromModel(wa);\n ;\n ;\n this._update();\n }.bind(this), na = la.getData();\n na.__d = 1;\n la.setData(na);\n var oa = ((la.getHandler() || da));\n la.setHandler(function(ua) {\n oa(ua);\n ma(ua);\n });\n var pa = la, qa = ((pa.getErrorHandler() || da)), ra = ((pa.getTransportErrorHandler() || da)), sa = function() {\n this._async_request = null;\n this._loading = false;\n if (((this._showing && this._shown_while_stacked))) {\n this._update();\n }\n else this._hide(this._is_stackable);\n ;\n ;\n }.bind(this), ta = ((pa.getServerDialogCancelHandler() || sa));\n pa.setAllowCrossPageTransition(this._cross_transition).setErrorHandler(function(ua) {\n sa();\n qa(ua);\n }).setTransportErrorHandler(function(ua) {\n sa();\n ra(ua);\n }).setServerDialogCancelHandler(ta);\n la.send();\n this._async_request = la;\n if (this._showing) {\n this.show();\n }\n ;\n ;\n return this;\n },\n _format: function(la) {\n if (((typeof la == \"string\"))) {\n la = r(la);\n }\n else la = r.replaceJSONWrapper(la);\n ;\n ;\n if (((la instanceof r))) {\n la.setDeferred(true);\n }\n ;\n ;\n return la;\n },\n _update: function() {\n if (!this._showing) {\n return;\n }\n ;\n ;\n if (((((this._autohide && !this._async_request)) && !this._autohide_timeout))) {\n this._autohide_timeout = JSBNG__setTimeout(aa(this, \"hide\"), this._autohide);\n }\n ;\n ;\n m.removeClass(this._frame, \"dialog_loading_shown\");\n this._loading = false;\n this._renderDialog();\n this._runOnloads();\n this._previous_focus = JSBNG__document.activeElement;\n p.set(this._frame);\n },\n _runOnloads: function() {\n for (var la = 0; ((la < this._onload_handlers.length)); ++la) {\n try {\n this._onload_handlers[la]();\n } catch (ma) {\n \n };\n ;\n };\n ;\n this._onload_handlers = [];\n },\n _updateWidth: function() {\n var la = ((2 * ka._BORDER_WIDTH));\n if (ka._isUsingCSSBorders()) {\n la += ((2 * ka._HALO_WIDTH));\n }\n ;\n ;\n if (this._content_width) {\n la += this._content_width;\n if (!this._full_bleed) {\n la += ((2 * ka._PADDING_WIDTH));\n }\n ;\n ;\n }\n else if (this._wide_dialog) {\n la += ka.SIZE.WIDE;\n }\n else la += ka.SIZE.STANDARD;\n \n ;\n ;\n this._popup.style.width = ((la + \"px\"));\n },\n _updateZIndex: function() {\n if (((!this._hasSetZIndex && this._causal_elem))) {\n var la = fa(this._causal_elem), ma = this._causal_elem;\n while (((!la && (ma = l.getContext(ma))))) {\n la = fa(ma);\n ;\n };\n ;\n this._hasSetZIndex = ((la > ((this._modal ? 400 : 200))));\n w.set(this._obj, \"z-index\", ((this._hasSetZIndex ? la : \"\")));\n }\n ;\n ;\n },\n _renderDialog: function() {\n this._updateZIndex();\n this._pushOntoStack();\n this._obj.style.height = ((((this._modal && ((y.ie() < 7)))) ? ((z.getDocumentDimensions().y + \"px\")) : null));\n if (((this._obj && this._obj.style.display))) {\n this._obj.style.visibility = \"hidden\";\n this._obj.style.display = \"\";\n this.resetDialogPosition();\n this._obj.style.visibility = \"\";\n this._obj.dialog = this;\n }\n else this.resetDialogPosition();\n ;\n ;\n JSBNG__clearInterval(this.active_hiding);\n this.active_hiding = JSBNG__setInterval(this._activeResize.bind(this), 500);\n this._submit_on_enter = false;\n if (this._auto_focus) {\n var la = q.getFirstElement(this._content, [\"input[type=\\\"text\\\"]\",\"textarea\",\"input[type=\\\"password\\\"]\",]);\n if (la) {\n q.focusFirst.bind(this, this._content).defer();\n }\n else this._submit_on_enter = true;\n ;\n ;\n }\n ;\n ;\n var ma = ((z.getElementDimensions(this._content).y + z.getElementPosition(this._content).y));\n ka._bottoms.push(ma);\n this._bottom = ma;\n ka._updateMaxBottom();\n return this;\n },\n _buildDialog: function() {\n this._obj = n.create(\"div\", {\n className: \"generic_dialog\",\n id: this._uniqueID\n });\n this._obj.style.display = \"none\";\n n.appendContent(JSBNG__document.body, this._obj);\n if (!this._popup) {\n this._popup = n.create(\"div\", {\n className: \"generic_dialog_popup\"\n });\n }\n ;\n ;\n this._obj.appendChild(this._popup);\n if (((((y.ie() < 7)) && !this._shim))) {\n j.loadModules([\"IframeShim\",], function(xa) {\n this._shim = new xa(this._popup);\n });\n }\n ;\n ;\n m.addClass(this._obj, \"pop_dialog\");\n if (t.isRTL()) {\n m.addClass(this._obj, \"pop_dialog_rtl\");\n }\n ;\n ;\n var la;\n if (ka._isUsingCSSBorders()) {\n la = ((((\"\\u003Cdiv class=\\\"pop_container_advanced\\\"\\u003E\" + \"\\u003Cdiv class=\\\"pop_content\\\" id=\\\"pop_content\\\"\\u003E\\u003C/div\\u003E\")) + \"\\u003C/div\\u003E\"));\n }\n else la = ((((((((((((((((\"\\u003Cdiv class=\\\"pop_container\\\"\\u003E\" + \"\\u003Cdiv class=\\\"pop_verticalslab\\\"\\u003E\\u003C/div\\u003E\")) + \"\\u003Cdiv class=\\\"pop_horizontalslab\\\"\\u003E\\u003C/div\\u003E\")) + \"\\u003Cdiv class=\\\"pop_topleft\\\"\\u003E\\u003C/div\\u003E\")) + \"\\u003Cdiv class=\\\"pop_topright\\\"\\u003E\\u003C/div\\u003E\")) + \"\\u003Cdiv class=\\\"pop_bottomright\\\"\\u003E\\u003C/div\\u003E\")) + \"\\u003Cdiv class=\\\"pop_bottomleft\\\"\\u003E\\u003C/div\\u003E\")) + \"\\u003Cdiv class=\\\"pop_content pop_content_old\\\" id=\\\"pop_content\\\"\\u003E\\u003C/div\\u003E\")) + \"\\u003C/div\\u003E\"));\n ;\n ;\n n.setContent(this._popup, r(la));\n var ma = n.JSBNG__find(this._popup, \"div.pop_content\");\n ma.setAttribute(\"tabIndex\", \"0\");\n ma.setAttribute(\"role\", \"alertdialog\");\n this._frame = this._content = ma;\n var na = n.create(\"div\", {\n className: \"dialog_loading\"\n }, \"Loading...\"), oa = n.create(\"span\"), pa = n.create(\"h2\", {\n className: \"dialog_title hidden_elem\",\n id: ((\"title_\" + this._uniqueID))\n }, oa), qa = n.create(\"div\", {\n className: \"dialog_summary hidden_elem\"\n }), ra = n.create(\"div\", {\n className: \"dialog_body\"\n }), sa = n.create(\"div\", {\n className: \"rfloat mlm\"\n }), ta = n.create(\"div\", {\n className: \"dialog_buttons_msg\"\n }), ua = n.create(\"div\", {\n className: \"dialog_buttons clearfix hidden_elem\"\n }, [sa,ta,]), va = n.create(\"div\", {\n className: \"dialog_footer hidden_elem\"\n }), wa = n.create(\"div\", {\n className: \"dialog_content\"\n }, [qa,ra,ua,va,]);\n this._nodes = {\n summary: qa,\n body: ra,\n buttons: sa,\n button_message: ta,\n button_wrapper: ua,\n footer: va,\n JSBNG__content: wa,\n title: pa,\n title_inner: oa\n };\n n.setContent(this._frame, [pa,wa,na,]);\n },\n _updateShim: function() {\n return ((this._shim && this._shim.show()));\n },\n _activeResize: function() {\n if (((this.last_offset_height != this._content.offsetHeight))) {\n this.last_offset_height = this._content.offsetHeight;\n this.resetDialogPosition();\n }\n ;\n ;\n },\n resetDialogPosition: function() {\n if (!this._popup) {\n return;\n }\n ;\n ;\n this._resetDialogObj();\n this._updateShim();\n },\n _resetDialogObj: function() {\n var la = ((2 * ka._PAGE_MARGIN)), ma = z.getViewportDimensions(), na = ((ma.x - la)), oa = ((ma.y - la)), pa = ((2 * ka._HALO_WIDTH)), qa = z.getElementDimensions(this._content), ra = ((qa.x + pa)), sa = ((qa.y + pa)), ta = this._top, ua = ((na - ra)), va = ((oa - sa));\n if (((va < 0))) {\n ta = ka._PAGE_MARGIN;\n }\n else if (((ta > va))) {\n ta = ((ka._PAGE_MARGIN + ((Math.max(va, 0) / 2))));\n }\n \n ;\n ;\n var wa = ja();\n if (!wa) {\n ta += z.getScrollPosition().y;\n }\n ;\n ;\n w.set(this._popup, \"marginTop\", ((ta + \"px\")));\n var xa = ((wa && ((((ua < 0)) || ((va < 0))))));\n m.conditionClass(this._obj, \"generic_dialog_fixed_overflow\", xa);\n m.conditionClass(JSBNG__document.documentElement, \"generic_dialog_overflow_mode\", xa);\n },\n _fadeOut: function(la) {\n if (!this._popup) {\n return;\n }\n ;\n ;\n try {\n new g(this._obj).duration(0).checkpoint().to(\"opacity\", 0).hide().duration(250).ondone(this._hide.bind(this, la)).go();\n } catch (ma) {\n this._hide(la);\n };\n ;\n },\n _hide: function(la) {\n if (this._obj) {\n this._obj.style.display = \"none\";\n }\n ;\n ;\n m.removeClass(JSBNG__document.documentElement, \"generic_dialog_overflow_mode\");\n this._updateShim();\n JSBNG__clearInterval(this.active_hiding);\n if (this._bottom) {\n var ma = ka._bottoms;\n ma.splice(ma.indexOf(this._bottom), 1);\n ka._updateMaxBottom();\n }\n ;\n ;\n if (((((this._previous_focus && JSBNG__document.activeElement)) && n.contains(this._obj, JSBNG__document.activeElement)))) {\n p.set(this._previous_focus);\n }\n ;\n ;\n if (la) {\n return;\n }\n ;\n ;\n this.destroy();\n },\n destroy: function() {\n this._popFromStack();\n JSBNG__clearInterval(this.active_hiding);\n if (this._obj) {\n n.remove(this._obj);\n this._obj = null;\n ((this._shim && this._shim.hide()));\n this._shim = null;\n }\n ;\n ;\n ((this._clickOnEnterListener && this._clickOnEnterListener.remove()));\n if (this._close_handler) {\n this._close_handler({\n return_data: this._return_data\n });\n }\n ;\n ;\n },\n _handleButton: function(la) {\n if (((typeof la == \"string\"))) {\n la = ka._findButton(this._buttons, la);\n }\n ;\n ;\n var ma = ka.call_or_eval(la, la.handler);\n if (((ma === false))) {\n return;\n }\n ;\n ;\n if (((la.JSBNG__name == \"cancel\"))) {\n this.cancel();\n }\n else if (((ka.call_or_eval(this, this._handler, {\n button: la\n }) !== false))) {\n this.hide();\n }\n \n ;\n ;\n },\n _submitForm: function(la, ma, na) {\n var oa = this.getFormData();\n if (na) {\n oa[na.JSBNG__name] = na.label;\n }\n ;\n ;\n if (this._extra_data) {\n ba(oa, this._extra_data);\n }\n ;\n ;\n var pa = new i().setURI(ma).setData(oa).setMethod(la).setNectarModuleDataSafe(this._causal_elem).setReadOnly(((la == \"GET\")));\n this.setAsync(pa);\n return false;\n },\n _setFromModel: function(la) {\n var ma = {\n };\n ba(ma, la);\n {\n var fin110keys = ((window.top.JSBNG_Replay.forInKeys)((ma))), fin110i = (0);\n var na;\n for (; (fin110i < fin110keys.length); (fin110i++)) {\n ((na) = (fin110keys[fin110i]));\n {\n if (((na == \"onloadRegister\"))) {\n this.onloadRegister(ma[na]);\n continue;\n }\n ;\n ;\n var oa = this[((((\"set\" + na.substr(0, 1).toUpperCase())) + na.substr(1)))];\n oa.apply(this, ca(ma[na]));\n };\n };\n };\n ;\n },\n _updateBottom: function() {\n var la = ((z.getElementDimensions(this._content).y + z.getElementPosition(this._content).y));\n ka._bottoms[((ka._bottoms.length - 1))] = la;\n ka._updateMaxBottom();\n },\n _pushOntoStack: function() {\n var la = ka._stack;\n if (!la.length) {\n h.inform(\"layer_shown\", {\n type: \"Dialog\"\n });\n }\n ;\n ;\n ga(la, this);\n la.push(this);\n for (var ma = ((la.length - 2)); ((ma >= 0)); ma--) {\n var na = la[ma];\n if (((!na._is_stackable && !na._async_request))) {\n na._hide();\n }\n else if (!na._shown_while_stacked) {\n na._hide(true);\n }\n \n ;\n ;\n };\n ;\n },\n _popFromStack: function() {\n var la = ka._stack, ma = ((la[((la.length - 1))] === this));\n ga(la, this);\n if (la.length) {\n if (ma) {\n la[((la.length - 1))].show();\n }\n ;\n ;\n }\n else h.inform(\"layer_hidden\", {\n type: \"Dialog\"\n });\n ;\n ;\n }\n });\n e.exports = ka;\n a.Dialog = ka;\n});\n__d(\"DocumentTitle\", [\"Arbiter\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = JSBNG__document.title, i = null, j = 1500, k = [], l = 0, m = null, n = false;\n function o() {\n if (((k.length > 0))) {\n if (!n) {\n p(k[l].title);\n l = ((++l % k.length));\n }\n else q();\n ;\n ;\n }\n else {\n JSBNG__clearInterval(m);\n m = null;\n q();\n }\n ;\n ;\n };\n;\n function p(s) {\n JSBNG__document.title = s;\n n = true;\n };\n;\n function q() {\n r.set(((i || h)), true);\n n = false;\n };\n;\n var r = {\n get: function() {\n return h;\n },\n set: function(s, t) {\n JSBNG__document.title = s;\n if (!t) {\n h = s;\n i = null;\n g.inform(\"update_title\", s);\n }\n else i = s;\n ;\n ;\n },\n blink: function(s) {\n var t = {\n title: s\n };\n k.push(t);\n if (((m === null))) {\n m = JSBNG__setInterval(o, j);\n }\n ;\n ;\n return {\n JSBNG__stop: function() {\n var u = k.indexOf(t);\n if (((u >= 0))) {\n k.splice(u, 1);\n if (((l > u))) {\n l--;\n }\n else if (((((l == u)) && ((l == k.length))))) {\n l = 0;\n }\n \n ;\n ;\n }\n ;\n ;\n }\n };\n }\n };\n e.exports = r;\n});\n__d(\"FileInput\", [\"JSBNG__Event\",\"ArbiterMixin\",\"DOM\",\"DOMClone\",\"Focus\",\"UserAgent\",\"copyProperties\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"ArbiterMixin\"), i = b(\"DOM\"), j = b(\"DOMClone\"), k = b(\"Focus\"), l = b(\"UserAgent\"), m = b(\"copyProperties\"), n = b(\"cx\"), o = l.ie();\n function p(q, r, s) {\n this.container = q;\n this.control = r;\n this.input = s;\n var t = i.scry(this.container, \"a\")[0];\n ((t && t.removeAttribute(\"href\")));\n var u = i.create(\"div\", {\n className: \"-cx-PRIVATE-uiFileInput__wrap\"\n }, this.input);\n i.appendContent(this.control, u);\n this._initListeners();\n };\n;\n m(p.prototype, h, {\n getValue: function() {\n return this.input.value;\n },\n getInput: function() {\n return this.input;\n },\n clear: function() {\n if (o) {\n var q = j.deepClone(this.input);\n i.replace(this.input, q);\n this.input = q;\n while (this._listeners.length) {\n this._listeners.pop().remove();\n ;\n };\n ;\n this._initListeners();\n }\n else {\n this.input.value = \"\";\n this.input.files = null;\n }\n ;\n ;\n },\n _initListeners: function() {\n k.relocate(this.input, this.control);\n this._listeners = [g.listen(this.input, \"change\", this._handleChange.bind(this)),];\n },\n _handleChange: function(JSBNG__event) {\n this.inform(\"change\", JSBNG__event);\n var q = this.input.form;\n if (((q && ((o < 9))))) {\n g.fire(q, \"change\", JSBNG__event);\n }\n ;\n ;\n }\n });\n e.exports = p;\n});\n__d(\"LinkController\", [\"JSBNG__Event\",\"DataStore\",\"Parent\",\"trackReferrer\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"DataStore\"), i = b(\"Parent\"), j = b(\"trackReferrer\"), k = \"LinkControllerHandler\", l = [], m = [];\n function n(JSBNG__event) {\n var r = i.byTag(JSBNG__event.getTarget(), \"a\"), s = ((r && r.getAttribute(\"href\", 2)));\n if (((((((!s || r.rel)) || !p(s))) || h.get(r, k)))) {\n return;\n }\n ;\n ;\n var t = g.listen(r, \"click\", function(u) {\n if (((s.charAt(((s.length - 1))) == \"#\"))) {\n u.prevent();\n return;\n }\n ;\n ;\n j(r, s);\n o(r, u);\n });\n h.set(r, k, t);\n };\n;\n function o(r, JSBNG__event) {\n if (((((((r.target || r.rel)) || JSBNG__event.getModifiers().any)) || ((JSBNG__event.which && ((JSBNG__event.which != 1))))))) {\n return;\n }\n ;\n ;\n var s = l.concat(m);\n for (var t = 0, u = s.length; ((t < u)); t++) {\n if (((s[t](r, JSBNG__event) === false))) {\n return JSBNG__event.prevent();\n }\n ;\n ;\n };\n ;\n };\n;\n function p(r) {\n var s = r.match(/^(\\w+):/);\n return ((!s || s[1].match(/^http/i)));\n };\n;\n var q = {\n registerHandler: function(r) {\n l.push(r);\n },\n registerFallbackHandler: function(r) {\n m.push(r);\n }\n };\n g.listen(JSBNG__document.documentElement, \"mousedown\", n);\n g.listen(JSBNG__document.documentElement, \"keydown\", n);\n e.exports = q;\n});\n__d(\"OnloadHooks\", [\"Arbiter\",\"ErrorUtils\",\"InitialJSLoader\",\"OnloadEvent\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ErrorUtils\"), i = b(\"InitialJSLoader\"), j = b(\"OnloadEvent\");\n function k() {\n var r = a.CavalryLogger;\n if (((!window.loaded && r))) {\n r.getInstance().setTimeStamp(\"t_prehooks\");\n }\n ;\n ;\n n(\"onloadhooks\");\n if (((!window.loaded && r))) {\n r.getInstance().setTimeStamp(\"t_hooks\");\n }\n ;\n ;\n window.loaded = true;\n g.inform(\"uipage_onload\", true, g.BEHAVIOR_STATE);\n };\n;\n function l() {\n n(\"onafterloadhooks\");\n window.afterloaded = true;\n };\n;\n function m(r, s) {\n return h.applyWithGuard(r, null, null, function(t) {\n t.event_type = s;\n t.category = \"runhook\";\n });\n };\n;\n function n(r) {\n var s = ((((r == \"onbeforeleavehooks\")) || ((r == \"onbeforeunloadhooks\"))));\n do {\n var t = window[r];\n if (!t) {\n break;\n }\n ;\n ;\n if (!s) {\n window[r] = null;\n }\n ;\n ;\n for (var u = 0; ((u < t.length)); u++) {\n var v = m(t[u], r);\n if (((s && v))) {\n return v;\n }\n ;\n ;\n };\n ;\n } while (((!s && window[r])));\n };\n;\n function o() {\n if (!window.loaded) {\n window.loaded = true;\n n(\"onloadhooks\");\n }\n ;\n ;\n if (!window.afterloaded) {\n window.afterloaded = true;\n n(\"onafterloadhooks\");\n }\n ;\n ;\n };\n;\n function p() {\n g.registerCallback(k, [j.ONLOAD_DOMCONTENT_CALLBACK,i.INITIAL_JS_READY,]);\n g.registerCallback(l, [j.ONLOAD_DOMCONTENT_CALLBACK,j.ONLOAD_CALLBACK,i.INITIAL_JS_READY,]);\n g.subscribe(j.ONBEFOREUNLOAD, function(r, s) {\n s.warn = ((n(\"onbeforeleavehooks\") || n(\"onbeforeunloadhooks\")));\n if (!s.warn) {\n window.loaded = false;\n window.afterloaded = false;\n }\n ;\n ;\n }, g.SUBSCRIBE_NEW);\n g.subscribe(j.ONUNLOAD, function(r, s) {\n n(\"onunloadhooks\");\n n(\"onafterunloadhooks\");\n }, g.SUBSCRIBE_NEW);\n };\n;\n var q = {\n _onloadHook: k,\n _onafterloadHook: l,\n runHook: m,\n runHooks: n,\n keepWindowSetAsLoaded: o\n };\n p();\n a.OnloadHooks = e.exports = q;\n});\n__d(\"areEqual\", [], function(a, b, c, d, e, f) {\n var g = function(k, l, m, n) {\n if (((k === l))) {\n return ((((k !== 0)) || ((((1 / k)) == ((1 / l))))));\n }\n ;\n ;\n if (((((k == null)) || ((l == null))))) {\n return false;\n }\n ;\n ;\n if (((((typeof k != \"object\")) || ((typeof l != \"object\"))))) {\n return false;\n }\n ;\n ;\n var o = Object.prototype.toString, p = o.call(k);\n if (((p != o.call(l)))) {\n return false;\n }\n ;\n ;\n switch (p) {\n case \"[object String]\":\n return ((k == String(l)));\n case \"[object Number]\":\n return ((((isNaN(k) || isNaN(l))) ? false : ((k == Number(l)))));\n case \"[object Date]\":\n \n case \"[object Boolean]\":\n return ((+k == +l));\n case \"[object RegExp]\":\n return ((((((((k.source == l.source)) && ((k.global == l.global)))) && ((k.multiline == l.multiline)))) && ((k.ignoreCase == l.ignoreCase))));\n };\n ;\n var q = m.length;\n while (q--) {\n if (((m[q] == k))) {\n return ((n[q] == l));\n }\n ;\n ;\n };\n ;\n m.push(k);\n n.push(l);\n var r = 0;\n if (((p === \"[object Array]\"))) {\n r = k.length;\n if (((r !== l.length))) {\n return false;\n }\n ;\n ;\n while (r--) {\n if (!g(k[r], l[r], m, n)) {\n return false;\n }\n ;\n ;\n };\n ;\n }\n else {\n if (((k.constructor !== l.constructor))) {\n return false;\n }\n ;\n ;\n if (((k.hasOwnProperty(\"valueOf\") && l.hasOwnProperty(\"valueOf\")))) {\n return ((k.valueOf() == l.valueOf()));\n }\n ;\n ;\n var s = Object.keys(k);\n if (((s.length != Object.keys(l).length))) {\n return false;\n }\n ;\n ;\n for (var t = 0; ((t < s.length)); t++) {\n if (!g(k[s[t]], l[s[t]], m, n)) {\n return false;\n }\n ;\n ;\n };\n ;\n }\n ;\n ;\n m.pop();\n n.pop();\n return true;\n }, h = [], i = [], j = function(k, l) {\n var m = ((h.length ? h.pop() : [])), n = ((i.length ? i.pop() : [])), o = g(k, l, m, n);\n m.length = 0;\n n.length = 0;\n h.push(m);\n i.push(n);\n return o;\n };\n e.exports = j;\n});\n__d(\"computeRelativeURI\", [\"URI\",\"isEmpty\",], function(a, b, c, d, e, f) {\n var g = b(\"URI\"), h = b(\"isEmpty\");\n function i(k, l) {\n if (!l) {\n return k;\n }\n ;\n ;\n if (((l.charAt(0) == \"/\"))) {\n return l;\n }\n ;\n ;\n var m = k.split(\"/\").slice(0, -1);\n ((m[0] !== \"\"));\n l.split(\"/\").forEach(function(n) {\n if (!((n == \".\"))) {\n if (((n == \"..\"))) {\n if (((m.length > 1))) {\n m = m.slice(0, -1);\n }\n ;\n ;\n }\n else m.push(n);\n ;\n }\n ;\n ;\n });\n return m.join(\"/\");\n };\n;\n function j(k, l) {\n var m = new g(), n = l;\n k = new g(k);\n l = new g(l);\n if (((l.getDomain() && !l.isFacebookURI()))) {\n return n;\n }\n ;\n ;\n var o = k, p = [\"Protocol\",\"Domain\",\"Port\",\"Path\",\"QueryData\",\"Fragment\",];\n p.forEach(function(q) {\n var r = ((((q == \"Path\")) && ((o === k))));\n if (r) {\n m.setPath(i(k.getPath(), l.getPath()));\n }\n ;\n ;\n if (!h(l[((\"get\" + q))]())) {\n o = l;\n }\n ;\n ;\n if (!r) {\n m[((\"set\" + q))](o[((\"get\" + q))]());\n }\n ;\n ;\n });\n return m;\n };\n;\n e.exports = j;\n});\n__d(\"escapeJSQuotes\", [], function(a, b, c, d, e, f) {\n function g(h) {\n if (((((((typeof h == \"undefined\")) || ((h == null)))) || !h.valueOf()))) {\n return \"\";\n }\n ;\n ;\n return h.toString().replace(/\\\\/g, \"\\\\\\\\\").replace(/\\n/g, \"\\\\n\").replace(/\\r/g, \"\\\\r\").replace(/\"/g, \"\\\\x22\").replace(/'/g, \"\\\\'\").replace(/</g, \"\\\\x3c\").replace(/>/g, \"\\\\x3e\").replace(/&/g, \"\\\\x26\");\n };\n;\n e.exports = g;\n});\n__d(\"htmlSpecialChars\", [], function(a, b, c, d, e, f) {\n var g = /&/g, h = /</g, i = />/g, j = /\"/g, k = /'/g;\n function l(m) {\n if (((((((typeof m == \"undefined\")) || ((m === null)))) || !m.toString))) {\n return \"\";\n }\n ;\n ;\n if (((m === false))) {\n return \"0\";\n }\n else if (((m === true))) {\n return \"1\";\n }\n \n ;\n ;\n return m.toString().replace(g, \"&\").replace(j, \""\").replace(k, \"'\").replace(h, \"<\").replace(i, \">\");\n };\n;\n e.exports = l;\n});\n__d(\"htmlize\", [\"htmlSpecialChars\",], function(a, b, c, d, e, f) {\n var g = b(\"htmlSpecialChars\");\n function h(i) {\n return g(i).replace(/\\r\\n|[\\r\\n]/g, \"\\u003Cbr/\\u003E\");\n };\n;\n e.exports = h;\n});\n__d(\"setTimeoutAcrossTransitions\", [], function(a, b, c, d, e, f) {\n function g(h, i) {\n return JSBNG__setTimeout(h, i, false);\n };\n;\n e.exports = g;\n});\n__d(\"PageTransitions\", [\"Arbiter\",\"Dialog\",\"DOMQuery\",\"DOMScroll\",\"Env\",\"JSBNG__Event\",\"Form\",\"HistoryManager\",\"JSLogger\",\"LinkController\",\"OnloadHooks\",\"Parent\",\"URI\",\"UserAgent\",\"Vector\",\"areEqual\",\"clickRefAction\",\"computeRelativeURI\",\"copyProperties\",\"escapeJSQuotes\",\"ge\",\"goOrReplace\",\"htmlize\",\"setTimeoutAcrossTransitions\",\"startsWith\",\"tx\",\"userAction\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Dialog\"), i = b(\"DOMQuery\"), j = b(\"DOMScroll\"), k = b(\"Env\"), l = b(\"JSBNG__Event\"), m = b(\"Form\"), n = b(\"HistoryManager\"), o = b(\"JSLogger\"), p = b(\"LinkController\"), q = b(\"OnloadHooks\"), r = b(\"Parent\"), s = b(\"URI\"), t = b(\"UserAgent\"), u = b(\"Vector\"), v = b(\"areEqual\"), w = b(\"clickRefAction\"), x = b(\"computeRelativeURI\"), y = b(\"copyProperties\"), z = b(\"escapeJSQuotes\"), aa = b(\"ge\"), ba = b(\"goOrReplace\"), ca = b(\"htmlize\"), da = b(\"setTimeoutAcrossTransitions\"), ea = b(\"startsWith\"), fa = b(\"tx\"), ga = b(\"userAction\"), ha = {\n };\n function ia(ta, ua) {\n ha[ta.getUnqualifiedURI()] = ua;\n };\n;\n function ja(ta) {\n return ha[ta.getUnqualifiedURI()];\n };\n;\n function ka(ta) {\n delete ha[ta.getUnqualifiedURI()];\n };\n;\n var la = null, ma = null;\n function na(ta) {\n ma = ta;\n da(function() {\n ma = null;\n }, 0);\n };\n;\n function oa(JSBNG__event) {\n if (ma) {\n if (!JSBNG__event.isDefaultPrevented()) {\n pa(ma);\n sa.lookBusy(ma);\n ra.go(ma.getAttribute(\"href\"));\n }\n ;\n ;\n JSBNG__event.prevent();\n }\n else {\n la = JSBNG__event.getTarget();\n da(function() {\n la = null;\n }, 0);\n }\n ;\n ;\n };\n;\n function pa(ta) {\n var ua = ta.getAttribute(\"href\"), va = x(ra._most_recent_uri.getQualifiedURI(), ua).toString();\n if (((ua != va))) {\n ta.setAttribute(\"href\", va);\n }\n ;\n ;\n };\n;\n function qa(JSBNG__event) {\n var ta = JSBNG__event.getTarget();\n if (((m.getAttribute(ta, \"rel\") || m.getAttribute(ta, \"target\")))) {\n return;\n }\n ;\n ;\n w(\"form\", ta, JSBNG__event).set_namespace(\"page_transition\");\n var ua = ga(\"page_transitions\", ta, JSBNG__event, {\n mode: \"DEDUP\"\n }).uai_fallback(null, \"form\"), va = a.ArbiterMonitor;\n if (va) {\n va.initUA(ua, [ta,]);\n }\n ;\n ;\n var wa = new s(((m.getAttribute(ta, \"action\") || \"\"))), xa = x(ra._most_recent_uri, wa);\n ta.setAttribute(\"action\", xa.toString());\n if (((((m.getAttribute(ta, \"method\") || \"GET\")).toUpperCase() === \"GET\"))) {\n var ya = m.serialize(ta), za = la;\n if (((((za && ((((i.isNodeOfType(za, \"input\") && ((za.type === \"submit\")))) || (za = r.byTag(za, \"button\")))))) && za.JSBNG__name))) {\n ya[za.JSBNG__name] = za.value;\n }\n ;\n ;\n ra.go(xa.addQueryData(ya));\n JSBNG__event.kill();\n }\n ;\n ;\n };\n;\n var ra = {\n _transition_handlers: [],\n _scroll_locked: false,\n isInitialized: function() {\n return !!ra._initialized;\n },\n _init: function() {\n if (k.DISABLE_PAGE_TRANSITIONS) {\n return;\n }\n ;\n ;\n if (((!k.ALLOW_TRANSITION_IN_IFRAME && ((window != window.JSBNG__top))))) {\n return;\n }\n ;\n ;\n if (ra._initialized) {\n return ra;\n }\n ;\n ;\n ra._initialized = true;\n var ta = s.getRequestURI(false), ua = ta.getUnqualifiedURI(), va = s(ua).setFragment(null), wa = ua.getFragment();\n if (((((wa.charAt(0) === \"!\")) && ((va.toString() === wa.substr(1)))))) {\n ua = va;\n }\n ;\n ;\n y(ra, {\n _current_uri: ua,\n _most_recent_uri: ua,\n _next_uri: ua\n });\n var xa;\n if (ea(ta.getFragment(), \"/\")) {\n xa = ta.getFragment();\n }\n else xa = ua;\n ;\n ;\n n.init().setCanonicalLocation(((\"#\" + xa))).registerURIHandler(ra._historyManagerHandler);\n p.registerFallbackHandler(na);\n l.listen(JSBNG__document, \"click\", oa, l.Priority._BUBBLE);\n l.listen(JSBNG__document, \"submit\", qa, l.Priority._BUBBLE);\n l.listen(window, \"JSBNG__scroll\", function() {\n if (!ra._scroll_locked) {\n ia(ra._current_uri, u.getScrollPosition());\n }\n ;\n ;\n });\n return ra;\n },\n registerHandler: function(ta, ua) {\n ra._init();\n ua = ((ua || 5));\n if (!ra._transition_handlers[ua]) {\n ra._transition_handlers[ua] = [];\n }\n ;\n ;\n ra._transition_handlers[ua].push(ta);\n },\n getCurrentURI: function(ta) {\n if (((!ra._current_uri && !ta))) {\n return new s(ra._most_recent_uri);\n }\n ;\n ;\n return new s(ra._current_uri);\n },\n getMostRecentURI: function() {\n return new s(ra._most_recent_uri);\n },\n getNextURI: function() {\n return new s(ra._next_uri);\n },\n go: function(ta, ua) {\n var va = new s(ta).removeQueryData(\"quickling\").getQualifiedURI();\n o.create(\"pagetransition\").debug(\"go\", {\n uri: va.toString()\n });\n ka(va);\n ((!ua && w(\"uri\", {\n href: va.toString()\n }, null, \"INDIRECT\")));\n sa.lookBusy();\n ra._loadPage(va, function(wa) {\n if (wa) {\n n.go(va.toString(), false, ua);\n }\n else ba(window.JSBNG__location, va, ua);\n ;\n ;\n });\n },\n _historyManagerHandler: function(ta) {\n if (((ta.charAt(0) != \"/\"))) {\n return false;\n }\n ;\n ;\n w(\"h\", {\n href: ta\n });\n ga(\"page_transitions\").uai(null, \"history_manager\");\n ra._loadPage(new s(ta), function(ua) {\n if (!ua) {\n ba(window.JSBNG__location, ta, true);\n }\n ;\n ;\n });\n return true;\n },\n _loadPage: function(ta, ua) {\n if (((s(ta).getFragment() && v(s(ta).setFragment(null).getQualifiedURI(), s(ra._current_uri).setFragment(null).getQualifiedURI())))) {\n if (ra.restoreScrollPosition(ta)) {\n ra._current_uri = ra._most_recent_uri = ta;\n sa.stopLookingBusy();\n return;\n }\n ;\n }\n ;\n ;\n var va;\n if (ra._current_uri) {\n va = ja(ra._current_uri);\n }\n ;\n ;\n ra._current_uri = null;\n ra._next_uri = ta;\n if (va) {\n j.JSBNG__scrollTo(va, false);\n }\n ;\n ;\n var wa = function() {\n ra._scroll_locked = true;\n var ya = ra._handleTransition(ta);\n ((ua && ua(ya)));\n }, xa = q.runHooks(\"onbeforeleavehooks\");\n if (xa) {\n sa.stopLookingBusy();\n ra._warnBeforeLeaving(xa, wa);\n }\n else wa();\n ;\n ;\n },\n _handleTransition: function(ta) {\n window.onbeforeleavehooks = undefined;\n sa.lookBusy();\n if (!ta.isSameOrigin()) {\n return false;\n }\n ;\n ;\n var ua = ((window.AsyncRequest && window.AsyncRequest.getLastID()));\n g.inform(\"pre_page_transition\", {\n from: ra.getMostRecentURI(),\n to: ta\n });\n for (var va = ((ra._transition_handlers.length - 1)); ((va >= 0)); --va) {\n var wa = ra._transition_handlers[va];\n if (!wa) {\n continue;\n }\n ;\n ;\n for (var xa = ((wa.length - 1)); ((xa >= 0)); --xa) {\n if (((wa[xa](ta) === true))) {\n var ya = {\n sender: this,\n uri: ta,\n id: ua\n };\n try {\n g.inform(\"page_transition\", ya);\n } catch (za) {\n \n };\n ;\n return true;\n }\n else wa.splice(xa, 1);\n ;\n ;\n };\n ;\n };\n ;\n return false;\n },\n unifyURI: function() {\n ra._current_uri = ra._most_recent_uri = ra._next_uri;\n },\n transitionComplete: function(ta) {\n ra._executeCompletionCallback();\n sa.stopLookingBusy();\n ra.unifyURI();\n if (!ta) {\n ra.restoreScrollPosition(ra._current_uri);\n }\n ;\n ;\n try {\n if (((JSBNG__document.activeElement && ((JSBNG__document.activeElement.nodeName === \"A\"))))) {\n JSBNG__document.activeElement.JSBNG__blur();\n }\n ;\n ;\n } catch (ua) {\n \n };\n ;\n },\n _executeCompletionCallback: function() {\n if (ra._completionCallback) {\n ra._completionCallback();\n }\n ;\n ;\n ra._completionCallback = null;\n },\n setCompletionCallback: function(ta) {\n ra._completionCallback = ta;\n },\n rewriteCurrentURI: function(ta, ua) {\n ra.registerHandler(function() {\n if (((ta == ra.getMostRecentURI().getUnqualifiedURI().toString()))) {\n ra.transitionComplete();\n return true;\n }\n ;\n ;\n });\n ra.go(ua, true);\n },\n _warnBeforeLeaving: function(ta, ua) {\n new h().setTitle(\"Are you sure you want to leave this page?\").setBody(ca(ta)).setButtons([{\n JSBNG__name: \"leave_page\",\n label: \"Leave this Page\",\n handler: ua\n },{\n JSBNG__name: \"continue_editing\",\n label: \"Stay on this Page\",\n className: \"inputaux\"\n },]).setModal(true).show();\n },\n restoreScrollPosition: function(ta) {\n ra._scroll_locked = false;\n var ua = ja(ta);\n if (ua) {\n j.JSBNG__scrollTo(ua, false);\n return true;\n }\n ;\n ;\n function va(ya) {\n if (!ya) {\n return null;\n }\n ;\n ;\n var za = ((((\"a[name='\" + z(ya))) + \"']\"));\n return ((i.scry(JSBNG__document.body, za)[0] || aa(ya)));\n };\n ;\n var wa = va(s(ta).getFragment());\n if (wa) {\n var xa = u.getElementPosition(wa);\n xa.x = 0;\n j.JSBNG__scrollTo(xa);\n return true;\n }\n ;\n ;\n return false;\n }\n }, sa = ((window._BusyUIManager || {\n _looking_busy: false,\n _original_cursors: [],\n lookBusy: function(ta) {\n if (ta) {\n sa._giveProgressCursor(ta);\n }\n ;\n ;\n if (sa._looking_busy) {\n return;\n }\n ;\n ;\n sa._looking_busy = true;\n sa._giveProgressCursor(JSBNG__document.documentElement);\n },\n stopLookingBusy: function() {\n if (!sa._looking_busy) {\n return;\n }\n ;\n ;\n sa._looking_busy = false;\n while (sa._original_cursors.length) {\n var ta = sa._original_cursors.pop(), ua = ta[0], va = ta[1];\n if (ua.style) {\n ua.style.cursor = ((va || \"\"));\n }\n ;\n ;\n };\n ;\n },\n _giveProgressCursor: function(ta) {\n if (!t.webkit()) {\n sa._original_cursors.push([ta,ta.style.cursor,]);\n ta.style.cursor = \"progress\";\n }\n ;\n ;\n }\n }));\n e.exports = ra;\n a.PageTransitions = ra;\n});\n__d(\"PixelRatio\", [\"Arbiter\",\"Cookie\",\"Run\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Cookie\"), i = b(\"Run\"), j = \"dpr\", k, l;\n function m() {\n return ((window.JSBNG__devicePixelRatio || 1));\n };\n;\n function n() {\n h.set(j, m());\n };\n;\n function o() {\n h.clear(j);\n };\n;\n function p() {\n var r = m();\n if (((r !== k))) {\n n();\n }\n else o();\n ;\n ;\n };\n;\n var q = {\n startDetecting: function(r) {\n k = ((r || 1));\n o();\n if (l) {\n return;\n }\n ;\n ;\n l = [g.subscribe(\"pre_page_transition\", p),];\n i.onBeforeUnload(p);\n }\n };\n e.exports = q;\n});\n__d(\"PostLoadJS\", [\"Bootloader\",\"Run\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Bootloader\"), h = b(\"Run\"), i = b(\"emptyFunction\");\n function j(l, m) {\n h.onAfterLoad(function() {\n g.loadModules.call(g, [l,], m);\n });\n };\n;\n var k = {\n loadAndRequire: function(l) {\n j(l, i);\n },\n loadAndCall: function(l, m, n) {\n j(l, function(o) {\n o[m].apply(o, n);\n });\n }\n };\n e.exports = k;\n});\n__d(\"ControlledReferer\", [\"JSBNG__Event\",\"URI\",\"UserAgent\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"URI\"), i = b(\"UserAgent\"), j = {\n useFacebookReferer: function(k, l, m) {\n var n = false;\n function o() {\n if (n) {\n return;\n }\n ;\n ;\n var q = k.contentWindow.JSBNG__location.pathname;\n if (((((q !== \"/intern/common/referer_frame.php\")) && ((q !== \"/common/referer_frame.php\"))))) {\n return;\n }\n ;\n ;\n n = true;\n k.contentWindow.JSBNG__document.body.style.margin = 0;\n l();\n };\n ;\n var p;\n if (((JSBNG__document.domain !== \"facebook.com\"))) {\n p = \"/intern/common/referer_frame.php\";\n }\n else if (i.JSBNG__opera()) {\n p = \"/common/referer_frame.php\";\n }\n else if (h().isSecure()) {\n p = \"https://s-static.ak.facebook.com/common/referer_frame.php\";\n }\n else p = \"http://static.ak.facebook.com/common/referer_frame.php\";\n \n \n ;\n ;\n if (m) {\n p += ((\"?fb_source=\" + m));\n }\n ;\n ;\n g.listen(k, \"load\", o);\n k.src = p;\n },\n useFacebookRefererHtml: function(k, l, m) {\n j.useFacebookReferer(k, function() {\n k.contentWindow.JSBNG__document.body.innerHTML = l;\n }, m);\n }\n };\n e.exports = j;\n});\n__d(\"SoundRPC\", [\"JSBNG__Event\",\"SoundSynchronizer\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"SoundSynchronizer\");\n function i(k, l, m) {\n h.play(k, l, m);\n };\n;\n var j = {\n playLocal: i,\n playRemote: function(k, l, m, n) {\n var o = {\n paths: l,\n sync: m,\n loop: n\n };\n k.JSBNG__postMessage(JSON.stringify(o), \"*\");\n },\n supportsRPC: function() {\n return !!window.JSBNG__postMessage;\n },\n _listen: function() {\n g.listen(window, \"message\", function(k) {\n if (!/\\.facebook.com$/.test(k.origin)) {\n return;\n }\n ;\n ;\n var l = JSON.parse(k.data);\n i(l.paths, l.sync, l.loop);\n });\n }\n };\n e.exports = j;\n});\n__d(\"TabbableElements\", [\"Style\",\"createArrayFrom\",], function(a, b, c, d, e, f) {\n var g = b(\"Style\"), h = b(\"createArrayFrom\");\n function i(l) {\n if (((l.tabIndex >= 0))) {\n return true;\n }\n ;\n ;\n switch (l.tagName) {\n case \"A\":\n return ((l.href && ((l.rel != \"ignore\"))));\n case \"INPUT\":\n return ((((((l.type != \"hidden\")) && ((l.type != \"file\")))) && !l.disabled));\n case \"BUTTON\":\n \n case \"SELECT\":\n \n case \"TEXTAREA\":\n return !l.disabled;\n };\n ;\n return false;\n };\n;\n function j(l) {\n if (((((l.offsetHeight === 0)) && ((l.offsetWidth === 0))))) {\n return false;\n }\n ;\n ;\n while (((((l !== JSBNG__document)) && ((g.get(l, \"visibility\") != \"hidden\"))))) {\n l = l.parentNode;\n ;\n };\n ;\n return ((l === JSBNG__document));\n };\n;\n var k = {\n JSBNG__find: function(l) {\n var m = h(l.getElementsByTagName(\"*\"));\n return m.filter(k.isTabbable);\n },\n isTabbable: function(l) {\n return ((i(l) && j(l)));\n }\n };\n e.exports = k;\n});\n__d(\"UserActivity\", [\"Arbiter\",\"JSBNG__Event\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"JSBNG__Event\"), i = 5000, j = 500, k = -5, l = JSBNG__Date.now(), m = l, n = {\n subscribeOnce: function(p) {\n var q = n.subscribe(function() {\n n.unsubscribe(q);\n p();\n });\n },\n subscribe: function(p) {\n return g.subscribe(\"useractivity/activity\", p);\n },\n unsubscribe: function(p) {\n p.unsubscribe();\n },\n isActive: function(p) {\n return ((((new JSBNG__Date() - l)) < ((p || i))));\n },\n getLastInformTime: function() {\n return m;\n }\n };\n function o(JSBNG__event) {\n l = JSBNG__Date.now();\n var p = ((l - m));\n if (((p > j))) {\n m = l;\n g.inform(\"useractivity/activity\", {\n JSBNG__event: JSBNG__event,\n idleness: p,\n last_inform: m\n });\n }\n else if (((p < k))) {\n m = l;\n }\n \n ;\n ;\n };\n;\n h.listen(window, \"JSBNG__scroll\", o);\n h.listen(window, \"JSBNG__focus\", o);\n h.listen(JSBNG__document.documentElement, {\n DOMMouseScroll: o,\n mousewheel: o,\n keydown: o,\n mouseover: o,\n mousemove: o,\n click: o\n });\n g.subscribe(\"Event/stop\", function(p, q) {\n o(q.JSBNG__event);\n });\n e.exports = n;\n});\n__d(\"guid\", [], function(a, b, c, d, e, f) {\n function g() {\n return ((\"f\" + ((Math.JSBNG__random() * ((1 << 30)))).toString(16).replace(\".\", \"\")));\n };\n;\n e.exports = g;\n});\n__d(\"throttle\", [\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\");\n function h(j, k, l) {\n return i(j, k, l, false, false);\n };\n;\n g(h, {\n acrossTransitions: function(j, k, l) {\n return i(j, k, l, true, false);\n },\n withBlocking: function(j, k, l) {\n return i(j, k, l, false, true);\n }\n });\n function i(j, k, l, m, n) {\n if (((k == null))) {\n k = 100;\n }\n ;\n ;\n var o, p, q;\n function r() {\n p = JSBNG__Date.now();\n if (o) {\n j.apply(l, o);\n o = null;\n q = JSBNG__setTimeout(r, k, !m);\n }\n else q = false;\n ;\n ;\n };\n ;\n return function s() {\n o = arguments;\n if (((!q || ((((JSBNG__Date.now() - p)) > k))))) {\n if (n) {\n r();\n }\n else q = JSBNG__setTimeout(r, 0, !m);\n ;\n }\n ;\n ;\n };\n };\n;\n e.exports = h;\n});\n__d(\"UIPagelet\", [\"AjaxPipeRequest\",\"AsyncRequest\",\"DOM\",\"HTML\",\"ScriptPathState\",\"URI\",\"copyProperties\",\"emptyFunction\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"AjaxPipeRequest\"), h = b(\"AsyncRequest\"), i = b(\"DOM\"), j = b(\"HTML\"), k = b(\"ScriptPathState\"), l = b(\"URI\"), m = b(\"copyProperties\"), n = b(\"emptyFunction\"), o = b(\"ge\");\n function p(q, r, s) {\n var t = ((((q && i.isElementNode(q))) ? q.id : q));\n this._id = ((t || null));\n this._element = o(((q || i.create(\"div\"))));\n this._src = ((r || null));\n this._context_data = ((s || {\n }));\n this._data = {\n };\n this._handler = n;\n this._request = null;\n this._use_ajaxpipe = false;\n this._is_bundle = true;\n this._allow_cross_page_transition = false;\n this._append = false;\n };\n;\n p.loadFromEndpoint = function(q, r, s, t) {\n t = ((t || {\n }));\n var u = ((\"/ajax/pagelet/generic.php/\" + q));\n if (t.intern) {\n u = ((\"/intern\" + u));\n }\n ;\n ;\n var v = new l(u.replace(/\\/+/g, \"/\"));\n if (t.subdomain) {\n v.setSubdomain(t.subdomain);\n }\n ;\n ;\n var w = new p(r, v, s).setUseAjaxPipe(t.usePipe).setBundleOption(((t.bundle !== false))).setAppend(t.append).setJSNonBlock(t.jsNonblock).setAutomatic(t.automatic).setDisplayCallback(t.displayCallback).setConstHeight(t.constHeight).setAllowCrossPageTransition(t.crossPage).setFinallyHandler(((t.finallyHandler || n))).setTransportErrorHandler(t.transportErrorHandler);\n ((t.handler && w.setHandler(t.handler)));\n w.go();\n return w;\n };\n m(p.prototype, {\n getElement: function() {\n return this._element;\n },\n setHandler: function(q) {\n this._handler = q;\n return this;\n },\n go: function(q, r) {\n if (((((arguments.length >= 2)) || ((typeof q == \"string\"))))) {\n this._src = q;\n this._data = ((r || {\n }));\n }\n else if (((arguments.length == 1))) {\n this._data = q;\n }\n \n ;\n ;\n this.refresh();\n return this;\n },\n setAllowCrossPageTransition: function(q) {\n this._allow_cross_page_transition = q;\n return this;\n },\n setBundleOption: function(q) {\n this._is_bundle = q;\n return this;\n },\n setTransportErrorHandler: function(q) {\n this.transportErrorHandler = q;\n return this;\n },\n refresh: function() {\n if (this._use_ajaxpipe) {\n k.setIsUIPageletRequest(true);\n this._request = new g();\n this._request.setCanvasId(this._id).setAppend(this._append).setConstHeight(this._constHeight).setJSNonBlock(this._jsNonblock).setAutomatic(this._automatic).setDisplayCallback(this._displayCallback).setFinallyHandler(this._finallyHandler);\n }\n else {\n var q = function(t) {\n this._request = null;\n var u = j(t.getPayload());\n if (this._append) {\n i.appendContent(this._element, u);\n }\n else i.setContent(this._element, u);\n ;\n ;\n this._handler();\n }.bind(this), r = this._displayCallback;\n this._request = new h().setMethod(\"GET\").setReadOnly(true).setOption(\"bundle\", this._is_bundle).setHandler(function(t) {\n if (r) {\n r(q.curry(t));\n }\n else q(t);\n ;\n ;\n if (this._finallyHandler) {\n this._finallyHandler();\n }\n ;\n ;\n });\n if (this.transportErrorHandler) {\n this._request.setTransportErrorHandler(this.transportErrorHandler);\n }\n ;\n ;\n }\n ;\n ;\n var s = {\n };\n m(s, this._context_data);\n m(s, this._data);\n this._request.setURI(this._src).setAllowCrossPageTransition(this._allow_cross_page_transition).setData({\n data: JSON.stringify(s)\n }).send();\n return this;\n },\n cancel: function() {\n if (this._request) {\n this._request.abort();\n }\n ;\n ;\n },\n setUseAjaxPipe: function(q) {\n this._use_ajaxpipe = !!q;\n return this;\n },\n setAppend: function(q) {\n this._append = !!q;\n return this;\n },\n setJSNonBlock: function(q) {\n this._jsNonblock = !!q;\n return this;\n },\n setAutomatic: function(q) {\n this._automatic = !!q;\n return this;\n },\n setDisplayCallback: function(q) {\n this._displayCallback = q;\n return this;\n },\n setConstHeight: function(q) {\n this._constHeight = !!q;\n return this;\n },\n setFinallyHandler: function(q) {\n this._finallyHandler = q;\n return this;\n }\n });\n e.exports = p;\n});\n__d(\"TabIsolation\", [\"JSBNG__Event\",\"DOMQuery\",\"Focus\",\"Keys\",\"TabbableElements\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"DOMQuery\"), i = b(\"Focus\"), j = b(\"Keys\"), k = b(\"TabbableElements\"), l = b(\"copyProperties\"), m = [], n = 0;\n function o(p) {\n this._root = p;\n this._eventHandler = null;\n this._identifier = n++;\n };\n;\n l(o.prototype, {\n enable: function() {\n m.unshift(this._identifier);\n this._eventHandler = g.listen(window, \"keydown\", function(p) {\n if (((m[0] === this._identifier))) {\n this._tabHandler(p);\n }\n ;\n ;\n }.bind(this), g.Priority.URGENT);\n },\n disable: function() {\n var p;\n if (this._eventHandler) {\n p = m.indexOf(this._identifier);\n if (((p > -1))) {\n m.splice(p, 1);\n }\n ;\n ;\n this._eventHandler.remove();\n this._eventHandler = null;\n }\n ;\n ;\n },\n _tabHandler: function(p) {\n if (((g.getKeyCode(p) !== j.TAB))) {\n return;\n }\n ;\n ;\n var q = p.getTarget();\n if (!q) {\n return;\n }\n ;\n ;\n var r = k.JSBNG__find(this._root), s = r[0], t = r[((r.length - 1))], u = p.getModifiers().shift;\n if (((u && ((q === s))))) {\n p.preventDefault();\n i.set(t);\n }\n else if (((((!u && ((q === t)))) || !h.contains(this._root, q)))) {\n p.preventDefault();\n i.set(s);\n }\n \n ;\n ;\n }\n });\n e.exports = o;\n});\n__d(\"ContextualLayerUpdateOnScroll\", [\"JSBNG__Event\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"copyProperties\");\n function i(j) {\n this._layer = j;\n };\n;\n h(i.prototype, {\n _subscriptions: [],\n enable: function() {\n this._subscriptions = [this._layer.subscribe(\"show\", this._attachScrollListener.bind(this)),this._layer.subscribe(\"hide\", this._removeScrollListener.bind(this)),];\n },\n disable: function() {\n while (this._subscriptions.length) {\n this._subscriptions.pop().unsubscribe();\n ;\n };\n ;\n this.detach();\n },\n _attachScrollListener: function() {\n if (this._listener) {\n return;\n }\n ;\n ;\n var j = this._layer.getContextScrollParent();\n this._listener = g.listen(j, \"JSBNG__scroll\", this._layer.updatePosition.bind(this._layer));\n },\n _removeScrollListener: function() {\n ((this._listener && this._listener.remove()));\n this._listener = null;\n }\n });\n e.exports = i;\n});\n__d(\"LayerAutoFocus\", [\"function-extensions\",\"DOMQuery\",\"Focus\",\"TabbableElements\",\"copyProperties\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"DOMQuery\"), h = b(\"Focus\"), i = b(\"TabbableElements\"), j = b(\"copyProperties\");\n function k(l) {\n this._layer = l;\n };\n;\n j(k.prototype, {\n _subscription: null,\n enable: function() {\n this._subscription = this._layer.subscribe(\"aftershow\", this._focus.bind(this));\n },\n disable: function() {\n this._subscription.unsubscribe();\n this._subscription = null;\n },\n _focus: function() {\n var l = this._layer.getRoot(), m = g.scry(l, \".autofocus\")[0], n = true;\n if (!m) {\n var o = JSBNG__document.activeElement;\n if (g.isNodeOfType(o, [\"input\",\"textarea\",])) {\n return;\n }\n ;\n ;\n var p = i.JSBNG__find(l);\n for (var q = 0; ((q < p.length)); q++) {\n if (((p[q].tagName != \"A\"))) {\n m = p[q];\n n = false;\n break;\n }\n ;\n ;\n };\n ;\n }\n else if (((m.tabIndex !== 0))) {\n n = false;\n }\n \n ;\n ;\n if (m) {\n ((n ? h.set(m) : h.setWithoutOutline(m)));\n }\n else {\n l.tabIndex = 0;\n h.setWithoutOutline(l);\n }\n ;\n ;\n }\n });\n e.exports = k;\n});\n__d(\"LayerButtons\", [\"JSBNG__Event\",\"Parent\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Parent\"), i = b(\"copyProperties\");\n function j(k) {\n this._layer = k;\n };\n;\n i(j.prototype, {\n _listener: null,\n enable: function() {\n this._listener = g.listen(this._layer.getRoot(), \"click\", this._handle.bind(this));\n },\n disable: function() {\n this._listener.remove();\n this._listener = null;\n },\n _handle: function(k) {\n var l = k.getTarget(), m = h.byClass(l, \"layerConfirm\");\n if (m) {\n if (((this._layer.inform(\"JSBNG__confirm\", m) === false))) {\n k.prevent();\n }\n ;\n ;\n return;\n }\n ;\n ;\n var n = h.byClass(l, \"layerCancel\");\n if (n) {\n if (((this._layer.inform(\"cancel\", n) !== false))) {\n this._layer.hide();\n }\n ;\n ;\n k.prevent();\n return;\n }\n ;\n ;\n var o = h.byClass(l, \"layerButton\");\n if (o) {\n if (((this._layer.inform(\"button\", o) === false))) {\n k.prevent();\n }\n ;\n }\n ;\n ;\n }\n });\n e.exports = j;\n});\n__d(\"LayerFadeOnShow\", [\"Animation\",\"Style\",\"UserAgent\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"Style\"), i = b(\"UserAgent\"), j = b(\"copyProperties\");\n function k(l) {\n this._layer = l;\n };\n;\n j(k.prototype, {\n _subscriptions: null,\n enable: function() {\n if (((i.ie() < 9))) {\n return;\n }\n ;\n ;\n this._subscriptions = [this._layer.subscribe(\"beforeshow\", function() {\n h.set(this._layer.getRoot(), \"opacity\", 0);\n }.bind(this)),this._layer.subscribe(\"show\", this._animate.bind(this)),];\n },\n disable: function() {\n if (this._subscriptions) {\n while (this._subscriptions.length) {\n this._subscriptions.pop().unsubscribe();\n ;\n };\n ;\n this._subscriptions = null;\n }\n ;\n ;\n },\n _getDuration: function() {\n return 100;\n },\n _animate: function() {\n var l = this._layer.getRoot();\n new g(l).from(\"opacity\", 0).to(\"opacity\", 1).duration(this._getDuration()).ondone(h.set.curry(l, \"opacity\", \"\")).go();\n }\n });\n e.exports = k;\n});\n__d(\"LayerFormHooks\", [\"JSBNG__Event\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"copyProperties\");\n function i(j) {\n this._layer = j;\n };\n;\n h(i.prototype, {\n _subscriptions: null,\n enable: function() {\n var j = this._layer.getRoot();\n this._subscriptions = [g.listen(j, \"submit\", this._onSubmit.bind(this)),g.listen(j, \"success\", this._onSuccess.bind(this)),g.listen(j, \"error\", this._onError.bind(this)),];\n },\n disable: function() {\n this._subscriptions.forEach(function(j) {\n j.remove();\n });\n this._subscriptions = null;\n },\n _onSubmit: function(JSBNG__event) {\n if (((this._layer.inform(\"submit\", JSBNG__event) === false))) {\n JSBNG__event.kill();\n }\n ;\n ;\n },\n _onSuccess: function(JSBNG__event) {\n if (((this._layer.inform(\"success\", JSBNG__event) === false))) {\n JSBNG__event.kill();\n }\n ;\n ;\n },\n _onError: function(JSBNG__event) {\n var j = JSBNG__event.getData();\n if (((this._layer.inform(\"error\", {\n response: j.response\n }) === false))) {\n JSBNG__event.kill();\n }\n ;\n ;\n }\n });\n e.exports = i;\n});\n__d(\"LayerRefocusOnHide\", [\"copyProperties\",\"Focus\",\"ContextualThing\",\"DOM\",\"DOMQuery\",\"Parent\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"Focus\"), i = b(\"ContextualThing\"), j = b(\"DOM\"), k = b(\"DOMQuery\"), l = b(\"Parent\");\n function m(n) {\n this._layer = n;\n };\n;\n g(m.prototype, {\n _subscription: null,\n enable: function() {\n this._subscription = this._layer.subscribe(\"hide\", this._handle.bind(this));\n },\n disable: function() {\n this._subscription.unsubscribe();\n this._subscription = null;\n },\n _handle: function(n, JSBNG__event) {\n if (((((JSBNG__document.activeElement === JSBNG__document.body)) || k.contains(this._layer.getRoot(), JSBNG__document.activeElement)))) {\n var o = this._layer.getCausalElement();\n while (((o && (!o.offsetWidth)))) {\n var p = l.byClass(o, \"uiToggle\");\n if (((p && p.offsetWidth))) {\n o = j.scry(p, \"[rel=\\\"toggle\\\"]\")[0];\n }\n else {\n var q = i.getContext(o);\n if (q) {\n o = q;\n }\n else o = o.parentNode;\n ;\n ;\n }\n ;\n ;\n };\n ;\n if (((o && ((o.tabIndex != -1))))) {\n h.setWithoutOutline(o);\n }\n ;\n ;\n }\n ;\n ;\n }\n });\n e.exports = m;\n});\n__d(\"LayerTabIsolation\", [\"TabIsolation\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"TabIsolation\"), h = b(\"copyProperties\");\n function i(j) {\n this._layer = j;\n this._tabIsolation = null;\n };\n;\n h(i.prototype, {\n _subscriptions: [],\n enable: function() {\n this._tabIsolation = new g(this._layer.getRoot());\n this._subscriptions = [this._layer.subscribe(\"show\", this._tabIsolation.enable.bind(this._tabIsolation)),this._layer.subscribe(\"hide\", this._tabIsolation.disable.bind(this._tabIsolation)),];\n },\n disable: function() {\n while (this._subscriptions.length) {\n this._subscriptions.pop().unsubscribe();\n ;\n };\n ;\n this._tabIsolation.disable();\n this._tabIsolation = null;\n }\n });\n e.exports = i;\n});\n__d(\"ModalLayer\", [\"JSBNG__Event\",\"function-extensions\",\"Arbiter\",\"JSBNG__CSS\",\"DataStore\",\"DOM\",\"DOMDimensions\",\"DOMQuery\",\"ScrollAwareDOM\",\"Style\",\"URI\",\"UserAgent\",\"Vector\",\"copyProperties\",\"csx\",\"cx\",\"debounceAcrossTransitions\",\"isAsyncScrollQuery\",\"removeFromArray\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\");\n b(\"function-extensions\");\n var h = b(\"Arbiter\"), i = b(\"JSBNG__CSS\"), j = b(\"DataStore\"), k = b(\"DOM\"), l = b(\"DOMDimensions\"), m = b(\"DOMQuery\"), n = b(\"ScrollAwareDOM\"), o = b(\"Style\"), p = b(\"URI\"), q = b(\"UserAgent\"), r = b(\"Vector\"), s = b(\"copyProperties\"), t = b(\"csx\"), u = b(\"cx\"), v = b(\"debounceAcrossTransitions\"), w = b(\"isAsyncScrollQuery\"), x = b(\"removeFromArray\"), y = [], z = null, aa = null, ba = null;\n function ca() {\n if (!ba) {\n ba = m.scry(JSBNG__document.body, \".-cx-PRIVATE-fbLayout__root\")[0];\n }\n ;\n ;\n return ba;\n };\n;\n function da(la) {\n var ma = {\n position: r.getScrollPosition()\n }, na = ((la.offsetTop - ma.position.y));\n i.addClass(la, \"-cx-PRIVATE-ModalLayer__fixed\");\n o.set(la, \"JSBNG__top\", ((na + \"px\")));\n h.inform(\"reflow\");\n ma.listener = n.subscribe(\"JSBNG__scroll\", function(oa, pa) {\n if (m.contains(la, pa.target)) {\n var qa = ((la.offsetTop - pa.delta.y));\n o.set(la, \"JSBNG__top\", ((qa + \"px\")));\n ma.position = ma.position.add(pa.delta);\n return false;\n }\n ;\n ;\n });\n j.set(la, \"ModalLayerData\", ma);\n if (((q.firefox() < 13))) {\n ea.curry(la).defer();\n }\n ;\n ;\n };\n;\n function ea(la) {\n m.scry(la, \"div.swfObject\").forEach(function(ma) {\n var na = ma.getAttribute(\"data-swfid\");\n if (((na && window[na]))) {\n var oa = window[na];\n oa.addParam(\"autostart\", \"false\");\n oa.addParam(\"autoplay\", \"false\");\n oa.addParam(\"play\", \"false\");\n oa.addVariable(\"video_autoplay\", \"0\");\n oa.addVariable(\"autoplay\", \"0\");\n oa.addVariable(\"play\", \"0\");\n var pa = p(oa.getAttribute(\"swf\"));\n pa.addQueryData({\n autoplay: \"0\"\n });\n pa.setPath(pa.getPath().replace(\"autoplay=1\", \"autoplay=0\"));\n oa.setAttribute(\"swf\", pa.toString());\n oa.write(ma);\n }\n ;\n ;\n });\n };\n;\n function fa(la, ma) {\n var na = j.get(la, \"ModalLayerData\");\n if (na) {\n var oa = function() {\n i.removeClass(la, \"-cx-PRIVATE-ModalLayer__fixed\");\n o.set(la, \"JSBNG__top\", \"\");\n if (ma) {\n var ra = m.getDocumentScrollElement();\n ra.scrollTop = na.position.y;\n }\n ;\n ;\n h.inform(\"reflow\");\n na.listener.unsubscribe();\n na.listener = null;\n j.remove(la, \"ModalLayerData\");\n };\n if (((ma && w()))) {\n var pa = k.create(\"div\", {\n className: \"-cx-PRIVATE-ModalLayer__support\"\n });\n o.set(pa, \"height\", ((la.offsetHeight + \"px\")));\n k.appendContent(JSBNG__document.body, pa);\n var qa = m.getDocumentScrollElement();\n qa.scrollTop = na.position.y;\n ma = false;\n !function() {\n oa();\n k.remove(pa);\n }.defer();\n }\n else oa();\n ;\n ;\n }\n ;\n ;\n if (((q.ie() < 7))) {\n o.set(la, \"height\", \"\");\n }\n ;\n ;\n };\n;\n function ga() {\n var la = ca();\n if (!i.hasClass(la, \"-cx-PRIVATE-ModalLayer__fixed\")) {\n da(la);\n }\n ;\n ;\n };\n;\n function ha() {\n if (!y.length) {\n fa(ca(), true);\n }\n ;\n ;\n };\n;\n function ia() {\n var la;\n if (((q.ie() < 7))) {\n var ma = y[((y.length - 1))].getLayerRoot(), na = Math.max(ma.offsetHeight, ma.scrollHeight);\n la = function(ta) {\n o.set(ta, \"height\", ((((-ta.offsetTop + na)) + \"px\")));\n };\n }\n ;\n ;\n var oa = y.length;\n while (oa--) {\n var pa = y[oa], qa = pa.getLayerRoot();\n ja(qa, \"\");\n var ra = pa.getLayerContentRoot(), sa = ((ra.offsetWidth + l.measureElementBox(ra, \"width\", 0, 0, 1)));\n ja(qa, sa);\n if (((la && ((oa < ((y.length - 1))))))) {\n la(qa);\n }\n ;\n ;\n };\n ;\n ((la && la(ca())));\n };\n;\n function ja(la, ma) {\n var na = ((q.ie() < 7));\n if (((((na && ma)) && ((ma <= JSBNG__document.body.clientWidth))))) {\n ma = \"\";\n }\n ;\n ;\n o.set(la, ((na ? \"width\" : \"min-width\")), ((ma + ((ma ? \"px\" : \"\")))));\n };\n;\n function ka(la) {\n this._layer = la;\n };\n;\n s(ka.prototype, {\n _subscription: null,\n enable: function() {\n if (!ca()) {\n return;\n }\n ;\n ;\n this._subscription = this._layer.subscribe([\"show\",\"hide\",], function(la) {\n ((((la == \"show\")) ? this._addModal() : this._removeModal()));\n }.bind(this));\n if (this._layer.isShown()) {\n this._addModal();\n }\n ;\n ;\n },\n disable: function() {\n if (!ca()) {\n return;\n }\n ;\n ;\n this._subscription.unsubscribe();\n this._subscription = null;\n if (this._layer.isShown()) {\n this._removeModal();\n }\n ;\n ;\n },\n _addModal: function() {\n i.addClass(this.getLayerRoot(), \"-cx-PRIVATE-ModalLayer__root\");\n var la = y[((y.length - 1))];\n if (la) {\n da(la.getLayerRoot());\n }\n else ga();\n ;\n ;\n var ma = m.getDocumentScrollElement();\n ma.scrollTop = 0;\n if (!y.length) {\n if (((q.ie() < 7))) {\n i.addClass(JSBNG__document.documentElement, \"-cx-PRIVATE-ModalLayer__open\");\n }\n ;\n ;\n var na = v(ia, 100);\n z = g.listen(window, \"resize\", na);\n aa = h.subscribe(\"reflow\", na);\n }\n ;\n ;\n y.push(this);\n ia.defer();\n },\n _removeModal: function() {\n var la = this.getLayerRoot();\n i.removeClass(la, \"-cx-PRIVATE-ModalLayer__root\");\n ja(la, \"\");\n var ma = ((this === y[((y.length - 1))]));\n x(y, this);\n var na = y[((y.length - 1))];\n if (!na) {\n z.remove();\n z = null;\n aa.unsubscribe();\n aa = null;\n }\n ;\n ;\n !function() {\n if (na) {\n fa(na.getLayerRoot(), ma);\n }\n else ha();\n ;\n ;\n if (y.length) {\n ia.defer();\n }\n else if (((q.ie() < 7))) {\n i.removeClass(JSBNG__document.documentElement, \"-cx-PRIVATE-ModalLayer__open\");\n }\n \n ;\n ;\n }.defer(400, false);\n },\n getLayerRoot: function() {\n return this._layer.getRoot();\n },\n getLayerContentRoot: function() {\n return this._layer.getContentRoot();\n }\n });\n e.exports = ka;\n});\n__d(\"DialogPosition\", [\"Vector\",], function(a, b, c, d, e, f) {\n var g = b(\"Vector\"), h = 40, i, j = {\n calculateTopMargin: function(k, l) {\n if (i) {\n return i;\n }\n ;\n ;\n var m = g.getViewportDimensions(), n = Math.floor(((((((m.x + k)) * ((m.y - l)))) / ((4 * m.x)))));\n return Math.max(n, h);\n },\n setFixedTopMargin: function(k) {\n i = k;\n }\n };\n e.exports = j;\n});\n__d(\"DialogX\", [\"function-extensions\",\"JSXDOM\",\"Arbiter\",\"Class\",\"JSBNG__CSS\",\"DialogPosition\",\"JSBNG__Event\",\"Layer\",\"LayerAutoFocus\",\"LayerButtons\",\"LayerFormHooks\",\"LayerRefocusOnHide\",\"LayerTabIsolation\",\"ModalLayer\",\"Style\",\"Vector\",\"copyProperties\",\"cx\",\"debounce\",\"shield\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"JSXDOM\"), h = b(\"Arbiter\"), i = b(\"Class\"), j = b(\"JSBNG__CSS\"), k = b(\"DialogPosition\"), l = b(\"JSBNG__Event\"), m = b(\"Layer\"), n = b(\"LayerAutoFocus\"), o = b(\"LayerButtons\"), p = b(\"LayerFormHooks\"), q = b(\"LayerRefocusOnHide\"), r = b(\"LayerTabIsolation\"), s = b(\"ModalLayer\"), t = b(\"Style\"), u = b(\"Vector\"), v = b(\"copyProperties\"), w = b(\"cx\"), x = b(\"debounce\"), y = b(\"shield\");\n function z(ba, ca) {\n this.parent.construct(this, ba, ca);\n };\n;\n i.extend(z, m);\n v(z.prototype, {\n _configure: function(ba, ca) {\n this.parent._configure(ba, ca);\n j.addClass(this.getRoot(), \"-cx-PRIVATE-ModalLayer__xui\");\n if (ba.autohide) {\n var da = this.subscribe(\"show\", function() {\n da.unsubscribe();\n y(this.hide, this).defer(ba.autohide);\n }.bind(this));\n }\n ;\n ;\n },\n _getDefaultBehaviors: function() {\n return this.parent._getDefaultBehaviors().concat([aa,s,n,o,p,r,q,]);\n },\n _buildWrapper: function(ba, ca) {\n var da = ((ba.xui ? \"-cx-PRIVATE-xuiDialog__content\" : \"-cx-PRIVATE-uiDialog__content\")), ea = ((ba.xui ? \"-cx-PUBLIC-xuiDialog__wrapper\" : \"-cx-PUBLIC-uiDialog__wrapper\"));\n this._innerContent = g.div(null, ca);\n this._wrapper = g.div({\n className: ea,\n role: \"dialog\",\n \"aria-labelledby\": ((ba.titleID || null))\n }, g.div({\n className: da\n }, this._innerContent));\n this.setWidth(ba.width);\n return (g.div({\n className: \"-cx-PRIVATE-uiDialog__positioner\",\n role: \"dialog\"\n }, this._wrapper));\n },\n getContentRoot: function() {\n return this._wrapper;\n },\n getInnerContent: function() {\n return this._innerContent;\n },\n updatePosition: function() {\n var ba = u.getElementDimensions(this._wrapper), ca = k.calculateTopMargin(ba.x, ba.y);\n t.set(this._wrapper, \"margin-top\", ((ca + \"px\")));\n this.inform(\"update_position\", {\n type: \"DialogX\",\n JSBNG__top: ca\n });\n },\n setWidth: function(ba) {\n ba = Math.floor(ba);\n if (((ba === this._width))) {\n return;\n }\n ;\n ;\n this._width = ba;\n t.set(this._wrapper, \"width\", ((ba + \"px\")));\n },\n getWidth: function() {\n return this._width;\n }\n });\n function aa(ba) {\n this._layer = ba;\n };\n;\n v(aa.prototype, {\n _subscription: null,\n _resize: null,\n enable: function() {\n this._subscription = this._layer.subscribe([\"show\",\"hide\",], function(ba) {\n if (((ba === \"show\"))) {\n this._attach();\n h.inform(\"layer_shown\", {\n type: \"DialogX\"\n });\n }\n else {\n this._detach();\n h.inform(\"layer_hidden\", {\n type: \"DialogX\"\n });\n }\n ;\n ;\n }.bind(this));\n },\n disable: function() {\n this._subscription.unsubscribe();\n this._subscription = null;\n ((this._resize && this._detach()));\n },\n _attach: function() {\n this._layer.updatePosition();\n this._resize = l.listen(window, \"resize\", x(this._layer.updatePosition.bind(this._layer)));\n },\n _detach: function() {\n this._resize.remove();\n this._resize = null;\n }\n });\n e.exports = z;\n});\n__d(\"eachKeyVal\", [], function(a, b, c, d, e, f) {\n function g(h, i, j) {\n if (((!h || !i))) {\n return;\n }\n ;\n ;\n var k = Object.keys(h), l;\n for (l = 0; ((l < k.length)); l++) {\n i.call(j, k[l], h[k[l]], h, l);\n ;\n };\n ;\n };\n;\n e.exports = g;\n});\n__d(\"LoadingDialogDimensions\", [], function(a, b, c, d, e, f) {\n var g = {\n HEIGHT: 96,\n WIDTH: 300\n };\n e.exports = g;\n});\n__d(\"AsyncDialog\", [\"AsyncRequest\",\"Bootloader\",\"JSBNG__CSS\",\"DialogX\",\"DOM\",\"Env\",\"Keys\",\"LayerFadeOnShow\",\"Parent\",\"React\",\"URI\",\"XUISpinner.react\",\"copyProperties\",\"cx\",\"eachKeyVal\",\"emptyFunction\",\"LoadingDialogDimensions\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"Bootloader\"), i = b(\"JSBNG__CSS\"), j = b(\"DialogX\"), k = b(\"DOM\"), l = b(\"Env\"), m = b(\"Keys\"), n = b(\"LayerFadeOnShow\"), o = b(\"Parent\"), p = b(\"React\"), q = b(\"URI\"), r = b(\"XUISpinner.react\"), s = b(\"copyProperties\"), t = b(\"cx\"), u = b(\"eachKeyVal\"), v = b(\"emptyFunction\"), w = b(\"LoadingDialogDimensions\").WIDTH, x;\n function y() {\n if (!x) {\n var ga = k.create(\"div\", {\n className: \"-cx-PRIVATE-loadingDialog__spinnercontainer\"\n });\n x = new j({\n width: w,\n addedBehaviors: [n,],\n xui: true\n }, k.create(\"div\", null, ga));\n p.renderComponent(r({\n size: \"large\"\n }), ga);\n x.subscribe([\"key\",\"JSBNG__blur\",], function(ha, ia) {\n if (((((ha == \"JSBNG__blur\")) || ((((ha == \"key\")) && ((ia.keyCode == m.ESC))))))) {\n ca();\n return false;\n }\n ;\n ;\n });\n }\n ;\n ;\n return x;\n };\n;\n var z = {\n }, aa = 1, ba = [];\n function ca() {\n u(z, function(ga, ha) {\n ha.abandon();\n da(ga);\n });\n };\n;\n function da(ga) {\n delete z[ga];\n if (!Object.keys(z).length) {\n y().hide();\n }\n ;\n ;\n };\n;\n function ea(ga, ha) {\n var ia = aa++;\n ba[ia] = ha;\n z[ia] = ga;\n var ja = da.curry(((\"\" + ia)));\n s(ga.getData(), {\n __asyncDialog: ia\n });\n y().setCausalElement(ga.getRelativeTo()).show();\n var ka = ga.finallyHandler;\n ga.setFinallyHandler(function(la) {\n var ma = la.getPayload();\n if (((ma && ma.asyncURL))) {\n fa.send(new g(ma.asyncURL));\n }\n ;\n ;\n ja();\n ((ka && ka(la)));\n });\n ga.setInterceptHandler(ja).setAbortHandler(ja);\n ga.send();\n };\n;\n var fa = {\n send: function(ga, ha) {\n ea(ga, ((ha || v)));\n },\n bootstrap: function(ga, ha, ia) {\n if (!ga) {\n return;\n }\n ;\n ;\n var ja = ((o.byClass(ha, \"stat_elem\") || ha));\n if (((ja && i.hasClass(ja, \"async_saving\")))) {\n return false;\n }\n ;\n ;\n var ka = new q(ga).getQueryData(), la = ((ia === \"dialog\")), ma = new g().setURI(ga).setData(ka).setMethod(((la ? \"GET\" : \"POST\"))).setReadOnly(la).setRelativeTo(ha).setStatusElement(ja).setNectarModuleDataSafe(ha);\n if (l.is_desktop) {\n h.loadModules([\"FbdDialogProvider\",], function(na) {\n na.sendDialog(ma, fa.send);\n });\n return;\n }\n ;\n ;\n fa.send(ma);\n },\n respond: function(ga, ha) {\n var ia = ba[ga];\n if (ia) {\n ia(ha);\n delete ba[ga];\n }\n ;\n ;\n },\n getLoadingDialog: function() {\n return y();\n }\n };\n e.exports = fa;\n});\n__d(\"MenuTheme\", [\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"cx\");\n e.exports = {\n className: \"-cx-PRIVATE-uiMenu__root\"\n };\n});\n__d(\"BanzaiODS\", [\"Banzai\",\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"Banzai\"), h = b(\"invariant\");\n function i() {\n var k = {\n }, l = {\n };\n function m(n, o, p, q) {\n if (((p === undefined))) {\n p = 1;\n }\n ;\n ;\n if (((q === undefined))) {\n q = 1;\n }\n ;\n ;\n if (((n in l))) {\n if (((l[n] <= 0))) {\n return;\n }\n else p /= l[n];\n ;\n }\n ;\n ;\n var r = ((k[n] || (k[n] = {\n }))), s = ((r[o] || (r[o] = [0,])));\n p = Number(p);\n q = Number(q);\n if (((!isFinite(p) || !isFinite(q)))) {\n return;\n }\n ;\n ;\n s[0] += p;\n if (((arguments.length >= 4))) {\n if (!s[1]) {\n s[1] = 0;\n }\n ;\n ;\n s[1] += q;\n }\n ;\n ;\n };\n ;\n return {\n setEntitySample: function(n, o) {\n l[n] = ((((Math.JSBNG__random() < o)) ? o : 0));\n },\n bumpEntityKey: function(n, o, p) {\n m(n, o, p);\n },\n bumpFraction: function(n, o, p, q) {\n m(n, o, p, q);\n },\n flush: function(n) {\n {\n var fin111keys = ((window.top.JSBNG_Replay.forInKeys)((k))), fin111i = (0);\n var o;\n for (; (fin111i < fin111keys.length); (fin111i++)) {\n ((o) = (fin111keys[fin111i]));\n {\n g.post(((\"ods:\" + o)), k[o], n);\n ;\n };\n };\n };\n ;\n k = {\n };\n }\n };\n };\n;\n var j = i();\n j.create = i;\n g.subscribe(g.SEND, j.flush.bind(j, null));\n e.exports = j;\n});\n__d(\"arrayContains\", [], function(a, b, c, d, e, f) {\n function g(h, i) {\n return ((h.indexOf(i) != -1));\n };\n;\n e.exports = g;\n});"); |
| // 5118 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o60,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yR/r/n7J6-ECl4cu.js",o61); |
| // undefined |
| o60 = null; |
| // undefined |
| o61 = null; |
| // 5123 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"f7Tpb\",]);\n}\n;\n__d(\"BrowserSupport\", [\"DOM\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = {\n }, i = [\"Webkit\",\"Moz\",\"O\",\"ms\",], j = document.createElement(\"div\"), k = function(m) {\n if ((h[m] === undefined)) {\n var n = null;\n if ((m in j.style)) {\n n = m;\n }\n else for (var o = 0; (o < i.length); o++) {\n var p = ((i[o] + m.charAt(0).toUpperCase()) + m.slice(1));\n if ((p in j.style)) {\n n = p;\n break;\n }\n ;\n }\n ;\n h[m] = n;\n }\n ;\n return h[m];\n }, l = {\n hasCSSAnimations: function() {\n return !!k(\"animationName\");\n },\n hasCSSTransforms: function() {\n return !!k(\"transform\");\n },\n hasCSS3DTransforms: function() {\n return !!k(\"perspective\");\n },\n hasCSSTransitions: function() {\n return !!k(\"transition\");\n },\n hasPositionSticky: function() {\n if ((h.sticky === undefined)) {\n j.style.cssText = (\"position:-webkit-sticky;position:-moz-sticky;\" + \"position:-o-sticky;position:-ms-sticky;position:sticky;\");\n h.sticky = /sticky/.test(j.style.position);\n }\n ;\n return h.sticky;\n },\n hasPointerEvents: function() {\n if ((h.pointerEvents === undefined)) {\n if (!((\"pointerEvents\" in j.style))) {\n h.pointerEvents = false;\n }\n else {\n j.style.pointerEvents = \"auto\";\n j.style.pointerEvents = \"x\";\n g.appendContent(document.documentElement, j);\n h.pointerEvents = (window.getComputedStyle && (getComputedStyle(j, \"\").pointerEvents === \"auto\"));\n g.remove(j);\n }\n \n };\n return h.pointerEvents;\n },\n getTransitionEndEvent: function() {\n if ((h.transitionEnd === undefined)) {\n var m = {\n transition: \"transitionend\",\n WebkitTransition: \"webkitTransitionEnd\",\n MozTransition: \"mozTransitionEnd\",\n OTransition: \"oTransitionEnd\"\n }, n = k(\"transition\");\n h.transitionEnd = (m[n] || null);\n }\n ;\n return h.transitionEnd;\n }\n };\n e.exports = l;\n});\n__d(\"shield\", [], function(a, b, c, d, e, f) {\n function g(h, i) {\n if ((typeof h != \"function\")) {\n throw new TypeError()\n };\n var j = Array.prototype.slice.call(arguments, 2);\n return function() {\n return h.apply(i, j);\n };\n };\n e.exports = g;\n});\n__d(\"Animation\", [\"BrowserSupport\",\"CSS\",\"DataStore\",\"DOM\",\"Style\",\"shield\",], function(a, b, c, d, e, f) {\n var g = b(\"BrowserSupport\"), h = b(\"CSS\"), i = b(\"DataStore\"), j = b(\"DOM\"), k = b(\"Style\"), l = b(\"shield\"), m, n = [], o;\n function p(ga) {\n if ((a == this)) {\n return new p(ga);\n }\n else {\n this.obj = ga;\n this._reset_state();\n this.queue = [];\n this.last_attr = null;\n }\n ;\n };\n function q(ga) {\n if (g.hasCSS3DTransforms()) {\n return t(ga);\n }\n else return s(ga)\n ;\n };\n function r(ga) {\n return ga.toFixed(8);\n };\n function s(ga) {\n ga = [ga[0],ga[4],ga[1],ga[5],ga[12],ga[13],];\n return ((\"matrix(\" + ga.map(r).join(\",\")) + \")\");\n };\n function t(ga) {\n return ((\"matrix3d(\" + ga.map(r).join(\",\")) + \")\");\n };\n function u(ga, ha) {\n if (!ga) {\n ga = [1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1,];\n };\n var ia = [];\n for (var ja = 0; (ja < 4); ja++) {\n for (var ka = 0; (ka < 4); ka++) {\n var la = 0;\n for (var ma = 0; (ma < 4); ma++) {\n la += (ga[((ja * 4) + ma)] * ha[((ma * 4) + ka)]);;\n };\n ia[((ja * 4) + ka)] = la;\n };\n };\n return ia;\n };\n var v = 0;\n p.prototype._reset_state = function() {\n this.state = {\n attrs: {\n },\n duration: 500\n };\n };\n p.prototype.stop = function() {\n this._reset_state();\n this.queue = [];\n return this;\n };\n p.prototype._build_container = function() {\n if (this.container_div) {\n this._refresh_container();\n return;\n }\n ;\n if ((this.obj.firstChild && this.obj.firstChild.__animation_refs)) {\n this.container_div = this.obj.firstChild;\n this.container_div.__animation_refs++;\n this._refresh_container();\n return;\n }\n ;\n var ga = document.createElement(\"div\");\n ga.style.padding = \"0px\";\n ga.style.margin = \"0px\";\n ga.style.border = \"0px\";\n ga.__animation_refs = 1;\n var ha = this.obj.childNodes;\n while (ha.length) {\n ga.appendChild(ha[0]);;\n };\n this.obj.appendChild(ga);\n this._orig_overflow = this.obj.style.overflow;\n this.obj.style.overflow = \"hidden\";\n this.container_div = ga;\n this._refresh_container();\n };\n p.prototype._refresh_container = function() {\n this.container_div.style.height = \"auto\";\n this.container_div.style.width = \"auto\";\n this.container_div.style.height = (this.container_div.offsetHeight + \"px\");\n this.container_div.style.width = (this.container_div.offsetWidth + \"px\");\n };\n p.prototype._destroy_container = function() {\n if (!this.container_div) {\n return\n };\n if (!--this.container_div.__animation_refs) {\n var ga = this.container_div.childNodes;\n while (ga.length) {\n this.obj.appendChild(ga[0]);;\n };\n this.obj.removeChild(this.container_div);\n }\n ;\n this.container_div = null;\n this.obj.style.overflow = this._orig_overflow;\n };\n var w = 1, x = 2, y = 3;\n p.prototype._attr = function(ga, ha, ia) {\n ga = ga.replace(/-[a-z]/gi, function(ka) {\n return ka.substring(1).toUpperCase();\n });\n var ja = false;\n switch (ga) {\n case \"background\":\n this._attr(\"backgroundColor\", ha, ia);\n return this;\n case \"backgroundColor\":\n \n case \"borderColor\":\n \n case \"color\":\n ha = ca(ha);\n break;\n case \"opacity\":\n ha = parseFloat(ha, 10);\n break;\n case \"height\":\n \n case \"width\":\n if ((ha == \"auto\")) {\n ja = true;\n }\n else ha = parseInt(ha, 10);\n ;\n break;\n case \"borderWidth\":\n \n case \"lineHeight\":\n \n case \"fontSize\":\n \n case \"margin\":\n \n case \"marginBottom\":\n \n case \"marginLeft\":\n \n case \"marginRight\":\n \n case \"marginTop\":\n \n case \"padding\":\n \n case \"paddingBottom\":\n \n case \"paddingLeft\":\n \n case \"paddingRight\":\n \n case \"paddingTop\":\n \n case \"bottom\":\n \n case \"left\":\n \n case \"right\":\n \n case \"top\":\n \n case \"scrollTop\":\n \n case \"scrollLeft\":\n ha = parseInt(ha, 10);\n break;\n case \"rotateX\":\n \n case \"rotateY\":\n \n case \"rotateZ\":\n ha = ((parseInt(ha, 10) * Math.PI) / 180);\n break;\n case \"translateX\":\n \n case \"translateY\":\n \n case \"translateZ\":\n \n case \"scaleX\":\n \n case \"scaleY\":\n \n case \"scaleZ\":\n ha = parseFloat(ha, 10);\n break;\n case \"rotate3d\":\n this._attr(\"rotateX\", ha[0], ia);\n this._attr(\"rotateY\", ha[1], ia);\n this._attr(\"rotateZ\", ha[2], ia);\n return this;\n case \"rotate\":\n this._attr(\"rotateZ\", ha, ia);\n return this;\n case \"scale3d\":\n this._attr(\"scaleZ\", ha[2], ia);\n case \"scale\":\n this._attr(\"scaleX\", ha[0], ia);\n this._attr(\"scaleY\", ha[1], ia);\n return this;\n case \"translate3d\":\n this._attr(\"translateZ\", ha[2], ia);\n case \"translate\":\n this._attr(\"translateX\", ha[0], ia);\n this._attr(\"translateY\", ha[1], ia);\n return this;\n default:\n throw new Error((ga + \" is not a supported attribute!\"));\n };\n if ((this.state.attrs[ga] === undefined)) {\n this.state.attrs[ga] = {\n };\n };\n if (ja) {\n this.state.attrs[ga].auto = true;\n };\n switch (ia) {\n case y:\n this.state.attrs[ga].start = ha;\n break;\n case x:\n this.state.attrs[ga].by = true;\n case w:\n this.state.attrs[ga].value = ha;\n break;\n };\n };\n function z(ga) {\n var ha = parseInt(k.get(ga, \"paddingLeft\"), 10), ia = parseInt(k.get(ga, \"paddingRight\"), 10), ja = parseInt(k.get(ga, \"borderLeftWidth\"), 10), ka = parseInt(k.get(ga, \"borderRightWidth\"), 10);\n return ((((ga.offsetWidth - ((ha ? ha : 0))) - ((ia ? ia : 0))) - ((ja ? ja : 0))) - ((ka ? ka : 0)));\n };\n function aa(ga) {\n var ha = parseInt(k.get(ga, \"paddingTop\"), 10), ia = parseInt(k.get(ga, \"paddingBottom\"), 10), ja = parseInt(k.get(ga, \"borderTopWidth\"), 10), ka = parseInt(k.get(ga, \"borderBottomWidth\"), 10);\n return ((((ga.offsetHeight - ((ha ? ha : 0))) - ((ia ? ia : 0))) - ((ja ? ja : 0))) - ((ka ? ka : 0)));\n };\n p.prototype.to = function(ga, ha) {\n if ((ha === undefined)) {\n this._attr(this.last_attr, ga, w);\n }\n else {\n this._attr(ga, ha, w);\n this.last_attr = ga;\n }\n ;\n return this;\n };\n p.prototype.by = function(ga, ha) {\n if ((ha === undefined)) {\n this._attr(this.last_attr, ga, x);\n }\n else {\n this._attr(ga, ha, x);\n this.last_attr = ga;\n }\n ;\n return this;\n };\n p.prototype.from = function(ga, ha) {\n if ((ha === undefined)) {\n this._attr(this.last_attr, ga, y);\n }\n else {\n this._attr(ga, ha, y);\n this.last_attr = ga;\n }\n ;\n return this;\n };\n p.prototype.duration = function(ga) {\n this.state.duration = (ga ? ga : 0);\n return this;\n };\n p.prototype.checkpoint = function(ga, ha) {\n if ((ga === undefined)) {\n ga = 1;\n };\n this.state.checkpoint = ga;\n this.queue.push(this.state);\n this._reset_state();\n this.state.checkpointcb = ha;\n return this;\n };\n p.prototype.blind = function() {\n this.state.blind = true;\n return this;\n };\n p.prototype.hide = function() {\n this.state.hide = true;\n return this;\n };\n p.prototype.show = function() {\n this.state.show = true;\n return this;\n };\n p.prototype.ease = function(ga) {\n this.state.ease = ga;\n return this;\n };\n p.prototype.go = function() {\n var ga = Date.now();\n this.queue.push(this.state);\n for (var ha = 0; (ha < this.queue.length); ha++) {\n this.queue[ha].start = (ga - v);\n if (this.queue[ha].checkpoint) {\n ga += (this.queue[ha].checkpoint * this.queue[ha].duration);\n };\n };\n da(this);\n return this;\n };\n p.prototype._show = function() {\n h.show(this.obj);\n };\n p.prototype._hide = function() {\n h.hide(this.obj);\n };\n p.prototype._frame = function(ga) {\n var ha = true, ia = false, ja;\n function ka(db) {\n return (document.documentElement[db] || document.body[db]);\n };\n for (var la = 0; (la < this.queue.length); la++) {\n var ma = this.queue[la];\n if ((ma.start > ga)) {\n ha = false;\n continue;\n }\n ;\n if (ma.checkpointcb) {\n this._callback(ma.checkpointcb, (ga - ma.start));\n ma.checkpointcb = null;\n }\n ;\n if ((ma.started === undefined)) {\n if (ma.show) {\n this._show();\n };\n for (var na in ma.attrs) {\n if ((ma.attrs[na].start !== undefined)) {\n continue;\n };\n switch (na) {\n case \"backgroundColor\":\n \n case \"borderColor\":\n \n case \"color\":\n ja = ca(k.get(this.obj, ((na == \"borderColor\") ? \"borderLeftColor\" : na)));\n if (ma.attrs[na].by) {\n ma.attrs[na].value[0] = Math.min(255, Math.max(0, (ma.attrs[na].value[0] + ja[0])));\n ma.attrs[na].value[1] = Math.min(255, Math.max(0, (ma.attrs[na].value[1] + ja[1])));\n ma.attrs[na].value[2] = Math.min(255, Math.max(0, (ma.attrs[na].value[2] + ja[2])));\n }\n ;\n break;\n case \"opacity\":\n ja = k.getOpacity(this.obj);\n if (ma.attrs[na].by) {\n ma.attrs[na].value = Math.min(1, Math.max(0, (ma.attrs[na].value + ja)));\n };\n break;\n case \"height\":\n ja = aa(this.obj);\n if (ma.attrs[na].by) {\n ma.attrs[na].value += ja;\n };\n break;\n case \"width\":\n ja = z(this.obj);\n if (ma.attrs[na].by) {\n ma.attrs[na].value += ja;\n };\n break;\n case \"scrollLeft\":\n \n case \"scrollTop\":\n ja = (((this.obj === document.body)) ? ka(na) : this.obj[na]);\n if (ma.attrs[na].by) {\n ma.attrs[na].value += ja;\n };\n ma[(\"last\" + na)] = ja;\n break;\n case \"rotateX\":\n \n case \"rotateY\":\n \n case \"rotateZ\":\n \n case \"translateX\":\n \n case \"translateY\":\n \n case \"translateZ\":\n ja = i.get(this.obj, na, 0);\n if (ma.attrs[na].by) {\n ma.attrs[na].value += ja;\n };\n break;\n case \"scaleX\":\n \n case \"scaleY\":\n \n case \"scaleZ\":\n ja = i.get(this.obj, na, 1);\n if (ma.attrs[na].by) {\n ma.attrs[na].value += ja;\n };\n break;\n default:\n ja = (parseInt(k.get(this.obj, na), 10) || 0);\n if (ma.attrs[na].by) {\n ma.attrs[na].value += ja;\n };\n break;\n };\n ma.attrs[na].start = ja;\n };\n if ((((ma.attrs.height && ma.attrs.height.auto)) || ((ma.attrs.width && ma.attrs.width.auto)))) {\n this._destroy_container();\n for (var na in {\n height: 1,\n width: 1,\n fontSize: 1,\n borderLeftWidth: 1,\n borderRightWidth: 1,\n borderTopWidth: 1,\n borderBottomWidth: 1,\n paddingLeft: 1,\n paddingRight: 1,\n paddingTop: 1,\n paddingBottom: 1\n }) {\n if (ma.attrs[na]) {\n this.obj.style[na] = (ma.attrs[na].value + (((typeof ma.attrs[na].value == \"number\") ? \"px\" : \"\")));\n };\n };\n if ((ma.attrs.height && ma.attrs.height.auto)) {\n ma.attrs.height.value = aa(this.obj);\n };\n if ((ma.attrs.width && ma.attrs.width.auto)) {\n ma.attrs.width.value = z(this.obj);\n };\n }\n ;\n ma.started = true;\n if (ma.blind) {\n this._build_container();\n };\n }\n ;\n var oa = (((ga - ma.start)) / ma.duration);\n if ((oa >= 1)) {\n oa = 1;\n if (ma.hide) {\n this._hide();\n };\n }\n else ha = false;\n ;\n var pa = (ma.ease ? ma.ease(oa) : oa);\n if (((!ia && (oa != 1)) && ma.blind)) {\n ia = true;\n };\n for (var na in ma.attrs) {\n switch (na) {\n case \"backgroundColor\":\n \n case \"borderColor\":\n \n case \"color\":\n if ((ma.attrs[na].start[3] != ma.attrs[na].value[3])) {\n this.obj.style[na] = ((((((((\"rgba(\" + ba(pa, ma.attrs[na].start[0], ma.attrs[na].value[0], true)) + \",\") + ba(pa, ma.attrs[na].start[1], ma.attrs[na].value[1], true)) + \",\") + ba(pa, ma.attrs[na].start[2], ma.attrs[na].value[2], true)) + \",\") + ba(pa, ma.attrs[na].start[3], ma.attrs[na].value[3], false)) + \")\");\n }\n else this.obj.style[na] = ((((((\"rgb(\" + ba(pa, ma.attrs[na].start[0], ma.attrs[na].value[0], true)) + \",\") + ba(pa, ma.attrs[na].start[1], ma.attrs[na].value[1], true)) + \",\") + ba(pa, ma.attrs[na].start[2], ma.attrs[na].value[2], true)) + \")\");\n ;\n break;\n case \"opacity\":\n k.set(this.obj, \"opacity\", ba(pa, ma.attrs[na].start, ma.attrs[na].value));\n break;\n case \"height\":\n \n case \"width\":\n this.obj.style[na] = (((pa == 1) && ma.attrs[na].auto) ? \"auto\" : (ba(pa, ma.attrs[na].start, ma.attrs[na].value, true) + \"px\"));\n break;\n case \"scrollLeft\":\n \n case \"scrollTop\":\n var qa = (this.obj === document.body);\n ja = (qa ? ka(na) : this.obj[na]);\n if ((ma[(\"last\" + na)] !== ja)) {\n delete ma.attrs[na];\n }\n else {\n var ra = ba(pa, ma.attrs[na].start, ma.attrs[na].value, true);\n if (!qa) {\n ra = this.obj[na] = ra;\n }\n else {\n if ((na == \"scrollLeft\")) {\n a.scrollTo(ra, ka(\"scrollTop\"));\n }\n else a.scrollTo(ka(\"scrollLeft\"), ra);\n ;\n ra = ka(na);\n }\n ;\n ma[(\"last\" + na)] = ra;\n }\n ;\n break;\n case \"translateX\":\n \n case \"translateY\":\n \n case \"translateZ\":\n \n case \"rotateX\":\n \n case \"rotateY\":\n \n case \"rotateZ\":\n \n case \"scaleX\":\n \n case \"scaleY\":\n \n case \"scaleZ\":\n i.set(this.obj, na, ba(pa, ma.attrs[na].start, ma.attrs[na].value, false));\n break;\n default:\n this.obj.style[na] = (ba(pa, ma.attrs[na].start, ma.attrs[na].value, true) + \"px\");\n break;\n };\n };\n var sa = null, ta = i.get(this.obj, \"translateX\", 0), ua = i.get(this.obj, \"translateY\", 0), va = i.get(this.obj, \"translateZ\", 0);\n if (((ta || ua) || va)) {\n sa = u(sa, [1,0,0,0,0,1,0,0,0,0,1,0,ta,ua,va,1,]);\n };\n var wa = i.get(this.obj, \"scaleX\", 1), xa = i.get(this.obj, \"scaleY\", 1), ya = i.get(this.obj, \"scaleZ\", 1);\n if ((((wa - 1) || (xa - 1)) || (ya - 1))) {\n sa = u(sa, [wa,0,0,0,0,xa,0,0,0,0,ya,0,0,0,0,1,]);\n };\n var za = i.get(this.obj, \"rotateX\", 0);\n if (za) {\n sa = u(sa, [1,0,0,0,0,Math.cos(za),Math.sin(-za),0,0,Math.sin(za),Math.cos(za),0,0,0,0,1,]);\n };\n var ab = i.get(this.obj, \"rotateY\", 0);\n if (ab) {\n sa = u(sa, [Math.cos(ab),0,Math.sin(ab),0,0,1,0,0,Math.sin(-ab),0,Math.cos(ab),0,0,0,0,1,]);\n };\n var bb = i.get(this.obj, \"rotateZ\", 0);\n if (bb) {\n sa = u(sa, [Math.cos(bb),Math.sin(-bb),0,0,Math.sin(bb),Math.cos(bb),0,0,0,0,1,0,0,0,0,1,]);\n };\n if (sa) {\n var cb = q(sa);\n k.apply(this.obj, {\n \"-webkit-transform\": cb,\n \"-moz-transform\": cb,\n \"-ms-transform\": cb,\n \"-o-transform\": cb,\n transform: cb\n });\n }\n else if (ha) {\n k.apply(this.obj, {\n \"-webkit-transform\": null,\n \"-moz-transform\": null,\n \"-ms-transform\": null,\n \"-o-transform\": null,\n transform: null\n });\n }\n ;\n if ((oa == 1)) {\n this.queue.splice(la--, 1);\n this._callback(ma.ondone, ((ga - ma.start) - ma.duration));\n }\n ;\n };\n if ((!ia && this.container_div)) {\n this._destroy_container();\n };\n return !ha;\n };\n p.prototype.ondone = function(ga) {\n this.state.ondone = ga;\n return this;\n };\n p.prototype._callback = function(ga, ha) {\n if (ga) {\n v = ha;\n ga.call(this);\n v = 0;\n }\n ;\n };\n function ba(ga, ha, ia, ja) {\n return ((ja ? parseInt : parseFloat))(((((ia - ha)) * ga) + ha), 10);\n };\n function ca(ga) {\n var ha = /^#([a-f0-9]{1,2})([a-f0-9]{1,2})([a-f0-9]{1,2})$/i.exec(ga);\n if (ha) {\n return [parseInt(((ha[1].length == 1) ? (ha[1] + ha[1]) : ha[1]), 16),parseInt(((ha[2].length == 1) ? (ha[2] + ha[2]) : ha[2]), 16),parseInt(((ha[3].length == 1) ? (ha[3] + ha[3]) : ha[3]), 16),1,];\n }\n else {\n var ia = /^rgba? *\\(([0-9]+), *([0-9]+), *([0-9]+)(?:, *([0-9\\.]+))?\\)$/.exec(ga);\n if (ia) {\n return [parseInt(ia[1], 10),parseInt(ia[2], 10),parseInt(ia[3], 10),(ia[4] ? parseFloat(ia[4]) : 1),];\n }\n else if ((ga == \"transparent\")) {\n return [255,255,255,0,];\n }\n else throw \"Named color attributes are not supported.\"\n \n ;\n }\n ;\n };\n function da(ga) {\n n.push(ga);\n if ((n.length === 1)) {\n if (!m) {\n var ha = ((a.requestAnimationFrame || a.webkitRequestAnimationFrame) || a.mozRequestAnimationFrame);\n if (ha) {\n m = ha.bind(a);\n };\n }\n ;\n if (m) {\n m(fa);\n }\n else o = setInterval(fa, 20, false);\n ;\n }\n ;\n if (m) {\n ea();\n };\n fa(Date.now(), true);\n };\n function ea() {\n if (!m) {\n throw new Error(\"Ending timer only valid with requestAnimationFrame\")\n };\n var ga = 0;\n for (var ha = 0; (ha < n.length); ha++) {\n var ia = n[ha];\n for (var ja = 0; (ja < ia.queue.length); ja++) {\n var ka = (ia.queue[ja].start + ia.queue[ja].duration);\n if ((ka > ga)) {\n ga = ka;\n };\n };\n };\n if (o) {\n clearTimeout(o);\n o = null;\n }\n ;\n var la = Date.now();\n if ((ga > la)) {\n o = setTimeout(l(fa), (ga - la), false);\n };\n };\n function fa(ga, ha) {\n var ia = Date.now();\n for (var ja = (((ha === true)) ? (n.length - 1) : 0); (ja < n.length); ja++) {\n try {\n if (!n[ja]._frame(ia)) {\n n.splice(ja--, 1);\n };\n } catch (ka) {\n n.splice(ja--, 1);\n };\n };\n if ((n.length === 0)) {\n if (o) {\n if (m) {\n clearTimeout(o);\n }\n else clearInterval(o);\n ;\n o = null;\n }\n ;\n }\n else if (m) {\n m(fa);\n }\n ;\n };\n p.ease = {\n };\n p.ease.begin = function(ga) {\n return (Math.sin(((Math.PI / 2) * ((ga - 1)))) + 1);\n };\n p.ease.end = function(ga) {\n return Math.sin(((14085 * Math.PI) * ga));\n };\n p.ease.both = function(ga) {\n return ((14134 * Math.sin((Math.PI * ((ga - 14158))))) + 14163);\n };\n p.prependInsert = function(ga, ha) {\n p.insert(ga, ha, j.prependContent);\n };\n p.appendInsert = function(ga, ha) {\n p.insert(ga, ha, j.appendContent);\n };\n p.insert = function(ga, ha, ia) {\n k.set(ha, \"opacity\", 0);\n ia(ga, ha);\n new p(ha).from(\"opacity\", 0).to(\"opacity\", 1).duration(400).go();\n };\n e.exports = p;\n});\n__d(\"BootloadedReact\", [\"Bootloader\",], function(a, b, c, d, e, f) {\n var g = b(\"Bootloader\"), h = function(j) {\n g.loadModules([\"React\",], j);\n }, i = {\n isValidComponent: function(j) {\n return (((j && (typeof j.mountComponentIntoNode === \"function\")) && (typeof j.receiveProps === \"function\")));\n },\n initializeTouchEvents: function(j, k) {\n h(function(l) {\n l.initializeTouchEvents(j);\n (k && k());\n });\n },\n createClass: function(j, k) {\n h(function(l) {\n var m = l.createClass(j);\n (k && k(m));\n });\n },\n renderComponent: function(j, k, l) {\n h(function(m) {\n var n = m.renderComponent(j, k);\n (l && l(n));\n });\n },\n unmountAndReleaseReactRootNode: function(j, k) {\n h(function(l) {\n l.unmountAndReleaseReactRootNode(j);\n (k && k());\n });\n }\n };\n e.exports = i;\n});\n__d(\"ContextualThing\", [\"DOM\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"ge\"), i = {\n register: function(j, k) {\n j.setAttribute(\"data-ownerid\", g.getID(k));\n },\n containsIncludingLayers: function(j, k) {\n while (k) {\n if (g.contains(j, k)) {\n return true\n };\n k = i.getContext(k);\n };\n return false;\n },\n getContext: function(j) {\n var k;\n while (j) {\n if ((j.getAttribute && (k = j.getAttribute(\"data-ownerid\")))) {\n return h(k)\n };\n j = j.parentNode;\n };\n return null;\n }\n };\n e.exports = i;\n});\n__d(\"DOMPosition\", [\"DOMDimensions\",\"DOMQuery\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMDimensions\"), h = b(\"DOMQuery\"), i = {\n getScrollPosition: function() {\n var j = h.getDocumentScrollElement();\n return {\n x: j.scrollLeft,\n y: j.scrollTop\n };\n },\n getNormalizedScrollPosition: function() {\n var j = i.getScrollPosition(), k = g.getDocumentDimensions(), l = g.getViewportDimensions(), m = (k.height - l.height), n = (k.width - l.width);\n return {\n y: Math.max(0, Math.min(j.y, m)),\n x: Math.max(0, Math.min(j.x, n))\n };\n },\n getElementPosition: function(j) {\n if (!j) {\n return\n };\n var k = document.documentElement;\n if ((!((\"getBoundingClientRect\" in j)) || !h.contains(k, j))) {\n return {\n x: 0,\n y: 0\n }\n };\n var l = j.getBoundingClientRect(), m = (Math.round(l.left) - k.clientLeft), n = (Math.round(l.top) - k.clientTop);\n return {\n x: m,\n y: n\n };\n }\n };\n e.exports = i;\n});\n__d(\"Form\", [\"Event\",\"AsyncRequest\",\"AsyncResponse\",\"CSS\",\"DOM\",\"DOMPosition\",\"DOMQuery\",\"DataStore\",\"Env\",\"Input\",\"Parent\",\"URI\",\"createArrayFrom\",\"trackReferrer\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"AsyncRequest\"), i = b(\"AsyncResponse\"), j = b(\"CSS\"), k = b(\"DOM\"), l = b(\"DOMPosition\"), m = b(\"DOMQuery\"), n = b(\"DataStore\"), o = b(\"Env\"), p = b(\"Input\"), q = b(\"Parent\"), r = b(\"URI\"), s = b(\"createArrayFrom\"), t = b(\"trackReferrer\"), u = (\"FileList\" in window), v = (\"FormData\" in window);\n function w(y) {\n var z = {\n };\n r.implodeQuery(y).split(\"&\").forEach(function(aa) {\n if (aa) {\n var ba = /^([^=]*)(?:=(.*))?$/.exec(aa), ca = r.decodeComponent(ba[1]), da = (ba[2] ? r.decodeComponent(ba[2]) : null);\n z[ca] = da;\n }\n ;\n });\n return z;\n };\n var x = {\n getInputs: function(y) {\n y = (y || document);\n return [].concat(s(m.scry(y, \"input\")), s(m.scry(y, \"select\")), s(m.scry(y, \"textarea\")), s(m.scry(y, \"button\")));\n },\n getInputsByName: function(y) {\n var z = {\n };\n x.getInputs(y).forEach(function(aa) {\n var ba = z[aa.name];\n z[aa.name] = ((typeof ba === \"undefined\") ? aa : [aa,].concat(ba));\n });\n return z;\n },\n getSelectValue: function(y) {\n return y.options[y.selectedIndex].value;\n },\n setSelectValue: function(y, z) {\n for (var aa = 0; (aa < y.options.length); ++aa) {\n if ((y.options[aa].value == z)) {\n y.selectedIndex = aa;\n break;\n }\n ;\n };\n },\n getRadioValue: function(y) {\n for (var z = 0; (z < y.length); z++) {\n if (y[z].checked) {\n return y[z].value\n };\n };\n return null;\n },\n getElements: function(y) {\n return s((((y.tagName == \"FORM\") && (y.elements != y)) ? y.elements : x.getInputs(y)));\n },\n getAttribute: function(y, z) {\n return (((y.getAttributeNode(z) || {\n })).value || null);\n },\n setDisabled: function(y, z) {\n x.getElements(y).forEach(function(aa) {\n if ((aa.disabled !== undefined)) {\n var ba = n.get(aa, \"origDisabledState\");\n if (z) {\n if ((ba === undefined)) {\n n.set(aa, \"origDisabledState\", aa.disabled);\n };\n aa.disabled = z;\n }\n else if ((ba !== true)) {\n aa.disabled = false;\n }\n ;\n }\n ;\n });\n },\n bootstrap: function(y, z) {\n var aa = ((x.getAttribute(y, \"method\") || \"GET\")).toUpperCase();\n z = (q.byTag(z, \"button\") || z);\n var ba = (q.byClass(z, \"stat_elem\") || y);\n if (j.hasClass(ba, \"async_saving\")) {\n return\n };\n if ((z && ((((z.form !== y) || (((z.nodeName != \"INPUT\") && (z.nodeName != \"BUTTON\")))) || (z.type != \"submit\"))))) {\n var ca = m.scry(y, \".enter_submit_target\")[0];\n (ca && (z = ca));\n }\n ;\n var da = x.serialize(y, z);\n x.setDisabled(y, true);\n var ea = (x.getAttribute(y, \"ajaxify\") || x.getAttribute(y, \"action\"));\n t(y, ea);\n var fa = new h(ea);\n fa.setData(da).setNectarModuleDataSafe(y).setReadOnly((aa == \"GET\")).setMethod(aa).setRelativeTo(y).setStatusElement(ba).setInitialHandler(x.setDisabled.curry(y, false)).setHandler(function(ga) {\n g.fire(y, \"success\", {\n response: ga\n });\n }).setErrorHandler(function(ga) {\n if ((g.fire(y, \"error\", {\n response: ga\n }) !== false)) {\n i.defaultErrorHandler(ga);\n };\n }).setFinallyHandler(x.setDisabled.curry(y, false)).send();\n },\n forEachValue: function(y, z, aa) {\n x.getElements(y).forEach(function(ba) {\n if (((ba.name && !ba.disabled) && (ba.type !== \"submit\"))) {\n if ((((((!ba.type || (((((ba.type === \"radio\") || (ba.type === \"checkbox\"))) && ba.checked))) || (ba.type === \"text\")) || (ba.type === \"password\")) || (ba.type === \"hidden\")) || (ba.nodeName === \"TEXTAREA\"))) {\n aa(ba.type, ba.name, p.getValue(ba));\n }\n else if ((ba.nodeName === \"SELECT\")) {\n for (var ca = 0, da = ba.options.length; (ca < da); ca++) {\n var ea = ba.options[ca];\n if (ea.selected) {\n aa(\"select\", ba.name, ea.value);\n };\n };\n }\n else if ((u && (ba.type === \"file\"))) {\n var fa = ba.files;\n for (var ga = 0; (ga < fa.length); ga++) {\n aa(\"file\", ba.name, fa.item(ga));;\n };\n }\n \n \n \n };\n });\n if (((((z && z.name) && (z.type === \"submit\")) && m.contains(y, z)) && m.isNodeOfType(z, [\"input\",\"button\",]))) {\n aa(\"submit\", z.name, z.value);\n };\n },\n createFormData: function(y, z) {\n if (!v) {\n return null\n };\n var aa = new FormData();\n if (y) {\n if (m.isNode(y)) {\n x.forEachValue(y, z, function(da, ea, fa) {\n aa.append(ea, fa);\n });\n }\n else {\n var ba = w(y);\n for (var ca in ba) {\n aa.append(ca, ba[ca]);;\n };\n }\n \n };\n return aa;\n },\n serialize: function(y, z) {\n var aa = {\n };\n x.forEachValue(y, z, function(ba, ca, da) {\n if ((ba === \"file\")) {\n return\n };\n x._serializeHelper(aa, ca, da);\n });\n return x._serializeFix(aa);\n },\n _serializeHelper: function(y, z, aa) {\n var ba = Object.prototype.hasOwnProperty, ca = /([^\\]]+)\\[([^\\]]*)\\](.*)/.exec(z);\n if (ca) {\n if ((!y[ca[1]] || !ba.call(y, ca[1]))) {\n var da;\n y[ca[1]] = da = {\n };\n if ((y[ca[1]] !== da)) {\n return\n };\n }\n ;\n var ea = 0;\n if ((ca[2] === \"\")) {\n while ((y[ca[1]][ea] !== undefined)) {\n ea++;;\n };\n }\n else ea = ca[2];\n ;\n if ((ca[3] === \"\")) {\n y[ca[1]][ea] = aa;\n }\n else x._serializeHelper(y[ca[1]], ea.concat(ca[3]), aa);\n ;\n }\n else y[z] = aa;\n ;\n },\n _serializeFix: function(y) {\n for (var z in y) {\n if ((y[z] instanceof Object)) {\n y[z] = x._serializeFix(y[z]);\n };\n };\n var aa = Object.keys(y);\n if (((aa.length === 0) || aa.some(isNaN))) {\n return y\n };\n aa.sort(function(da, ea) {\n return (da - ea);\n });\n var ba = 0, ca = aa.every(function(da) {\n return (+da === ba++);\n });\n if (ca) {\n return aa.map(function(da) {\n return y[da];\n })\n };\n return y;\n },\n post: function(y, z, aa) {\n var ba = document.createElement(\"form\");\n ba.action = y.toString();\n ba.method = \"POST\";\n ba.style.display = \"none\";\n if (aa) {\n ba.target = aa;\n };\n z.fb_dtsg = o.fb_dtsg;\n x.createHiddenInputs(z, ba);\n m.getRootElement().appendChild(ba);\n ba.submit();\n return false;\n },\n createHiddenInputs: function(y, z, aa, ba) {\n aa = (aa || {\n });\n var ca = w(y);\n for (var da in ca) {\n if ((ca[da] === null)) {\n continue;\n };\n if ((aa[da] && ba)) {\n aa[da].value = ca[da];\n }\n else {\n var ea = k.create(\"input\", {\n type: \"hidden\",\n name: da,\n value: ca[da]\n });\n aa[da] = ea;\n z.appendChild(ea);\n }\n ;\n };\n return aa;\n },\n getFirstElement: function(y, z) {\n z = (z || [\"input[type=\\\"text\\\"]\",\"textarea\",\"input[type=\\\"password\\\"]\",\"input[type=\\\"button\\\"]\",\"input[type=\\\"submit\\\"]\",]);\n var aa = [];\n for (var ba = 0; (ba < z.length); ba++) {\n aa = m.scry(y, z[ba]);\n for (var ca = 0; (ca < aa.length); ca++) {\n var da = aa[ca];\n try {\n var fa = l.getElementPosition(da);\n if (((fa.y > 0) && (fa.x > 0))) {\n return da\n };\n } catch (ea) {\n \n };\n };\n };\n return null;\n },\n focusFirst: function(y) {\n var z = x.getFirstElement(y);\n if (z) {\n z.focus();\n return true;\n }\n ;\n return false;\n }\n };\n e.exports = x;\n});\n__d(\"HistoryManager\", [\"Event\",\"function-extensions\",\"Cookie\",\"Env\",\"URI\",\"UserAgent\",\"copyProperties\",\"emptyFunction\",\"goOrReplace\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\");\n b(\"function-extensions\");\n var h = b(\"Cookie\"), i = b(\"Env\"), j = b(\"URI\"), k = b(\"UserAgent\"), l = b(\"copyProperties\"), m = b(\"emptyFunction\"), n = b(\"goOrReplace\"), o = {\n _IFRAME_BASE_URI: \"http://static.ak.facebook.com/common/history_manager.php\",\n history: null,\n current: 0,\n fragment: null,\n _setIframeSrcFragment: function(p) {\n p = p.toString();\n var q = (o.history.length - 1);\n o.iframe.src = ((((o._IFRAME_BASE_URI + \"?|index=\") + q) + \"#\") + encodeURIComponent(p));\n return o;\n },\n getIframeSrcFragment: function() {\n return decodeURIComponent(j(o.iframe.contentWindow.document.location.href).getFragment());\n },\n nextframe: function(p, q) {\n if (q) {\n o._setIframeSrcFragment(p);\n return;\n }\n ;\n if ((p !== undefined)) {\n o.iframeQueue.push(p);\n }\n else {\n o.iframeQueue.splice(0, 1);\n o.iframeTimeout = null;\n o.checkURI();\n }\n ;\n if ((o.iframeQueue.length && !o.iframeTimeout)) {\n var r = o.iframeQueue[0];\n o.iframeTimeout = setTimeout(function() {\n o._setIframeSrcFragment(r);\n }, 100, false);\n }\n ;\n },\n isInitialized: function() {\n return !!o._initialized;\n },\n init: function() {\n if ((!i.ALLOW_TRANSITION_IN_IFRAME && (window != window.top))) {\n return\n };\n if (o._initialized) {\n return o\n };\n var p = j(), q = (p.getFragment() || \"\");\n if ((q.charAt(0) === \"!\")) {\n q = q.substr(1);\n p.setFragment(q);\n }\n ;\n if ((j.getRequestURI(false).getProtocol().toLowerCase() == \"https\")) {\n o._IFRAME_BASE_URI = \"https://s-static.ak.facebook.com/common/history_manager.php\";\n };\n l(o, {\n _initialized: true,\n fragment: q,\n orig_fragment: q,\n history: [p,],\n callbacks: [],\n lastChanged: Date.now(),\n canonical: j(\"#\"),\n fragmentTimeout: null,\n user: 0,\n iframeTimeout: null,\n iframeQueue: [],\n enabled: true,\n debug: m\n });\n if ((window.history && history.pushState)) {\n this.lastURI = document.URL;\n window.history.replaceState(this.lastURI, null);\n g.listen(window, \"popstate\", function(r) {\n if (((r && r.state) && (o.lastURI != r.state))) {\n o.lastURI = r.state;\n o.lastChanged = Date.now();\n o.notify(j(r.state).getUnqualifiedURI().toString());\n }\n ;\n }.bind(o));\n if (((k.webkit() < 534) || (k.chrome() <= 13))) {\n setInterval(o.checkURI, 42, false);\n o._updateRefererURI(this.lastURI);\n }\n ;\n return o;\n }\n ;\n o._updateRefererURI(j.getRequestURI(false));\n if (((k.webkit() < 500) || (k.firefox() < 2))) {\n o.enabled = false;\n return o;\n }\n ;\n if ((k.ie() < 8)) {\n o.iframe = document.createElement(\"iframe\");\n l(o.iframe.style, {\n width: \"0\",\n height: \"0\",\n frameborder: \"0\",\n left: \"0\",\n top: \"0\",\n position: \"absolute\"\n });\n o._setIframeSrcFragment(q);\n document.body.insertBefore(o.iframe, document.body.firstChild);\n }\n else if ((\"onhashchange\" in window)) {\n g.listen(window, \"hashchange\", function() {\n o.checkURI.bind(o).defer();\n });\n }\n else setInterval(o.checkURI, 42, false);\n \n ;\n return o;\n },\n registerURIHandler: function(p) {\n o.callbacks.push(p);\n return o;\n },\n setCanonicalLocation: function(p) {\n o.canonical = j(p);\n return o;\n },\n notify: function(p) {\n if ((p == o.orig_fragment)) {\n p = o.canonical.getFragment();\n };\n for (var q = 0; (q < o.callbacks.length); q++) {\n try {\n if (o.callbacks[q](p)) {\n return true\n };\n } catch (r) {\n \n };\n };\n return false;\n },\n checkURI: function() {\n if (((Date.now() - o.lastChanged) < 400)) {\n return\n };\n if ((window.history && history.pushState)) {\n var p = j(document.URL).removeQueryData(\"ref\").toString(), q = j(o.lastURI).removeQueryData(\"ref\").toString();\n if ((p != q)) {\n o.lastChanged = Date.now();\n o.lastURI = p;\n if ((k.webkit() < 534)) {\n o._updateRefererURI(p);\n };\n o.notify(j(p).getUnqualifiedURI().toString());\n }\n ;\n return;\n }\n ;\n if (((k.ie() < 8) && o.iframeQueue.length)) {\n return\n };\n if ((k.webkit() && (window.history.length == 200))) {\n if (!o.warned) {\n o.warned = true;\n };\n return;\n }\n ;\n var r = j().getFragment();\n if ((r.charAt(0) == \"!\")) {\n r = r.substr(1);\n };\n if ((k.ie() < 8)) {\n r = o.getIframeSrcFragment();\n };\n r = r.replace(/%23/g, \"#\");\n if ((r != o.fragment.replace(/%23/g, \"#\"))) {\n o.debug([r,\" vs \",o.fragment,\"whl: \",window.history.length,\"QHL: \",o.history.length,].join(\" \"));\n for (var s = (o.history.length - 1); (s >= 0); --s) {\n if ((o.history[s].getFragment().replace(/%23/g, \"#\") == r)) {\n break;\n };\n };\n ++o.user;\n if ((s >= 0)) {\n o.go((s - o.current));\n }\n else o.go((\"#\" + r));\n ;\n --o.user;\n }\n ;\n },\n _updateRefererURI: function(p) {\n p = p.toString();\n if (((p.charAt(0) != \"/\") && (p.indexOf(\"//\") == -1))) {\n return\n };\n var q = new j(window.location);\n if (q.isFacebookURI()) {\n var r = (q.getPath() + window.location.search);\n }\n else var r = \"\"\n ;\n var s = j(p).getQualifiedURI().setFragment(r).toString(), t = 2048;\n if ((s.length > t)) {\n s = (s.substring(0, t) + \"...\");\n };\n h.set(\"x-referer\", s);\n },\n go: function(p, q, r) {\n if ((window.history && history.pushState)) {\n (q || (typeof (p) == \"number\"));\n var s = j(p).removeQueryData(\"ref\").toString();\n o.lastChanged = Date.now();\n this.lastURI = s;\n if (r) {\n window.history.replaceState(p, null, s);\n }\n else window.history.pushState(p, null, s);\n ;\n if ((k.webkit() < 534)) {\n o._updateRefererURI(p);\n };\n return false;\n }\n ;\n o.debug((\"go: \" + p));\n if ((q === undefined)) {\n q = true;\n };\n if (!o.enabled) {\n if (!q) {\n return false\n }\n };\n if ((typeof (p) == \"number\")) {\n if (!p) {\n return false\n };\n var t = (p + o.current), u = Math.max(0, Math.min((o.history.length - 1), t));\n o.current = u;\n t = (o.history[u].getFragment() || o.orig_fragment);\n t = j(t).removeQueryData(\"ref\").getUnqualifiedURI().toString();\n o.fragment = t;\n o.lastChanged = Date.now();\n if ((k.ie() < 8)) {\n if (o.fragmentTimeout) {\n clearTimeout(o.fragmentTimeout);\n };\n o._temporary_fragment = t;\n o.fragmentTimeout = setTimeout(function() {\n window.location.hash = (\"#!\" + t);\n delete o._temporary_fragment;\n }, 750, false);\n if (!o.user) {\n o.nextframe(t, r);\n };\n }\n else if (!o.user) {\n n(window.location, ((window.location.href.split(\"#\")[0] + \"#!\") + t), r);\n }\n ;\n if (q) {\n o.notify(t);\n };\n o._updateRefererURI(t);\n return false;\n }\n ;\n p = j(p);\n if ((p.getDomain() == j().getDomain())) {\n p = j((\"#\" + p.getUnqualifiedURI()));\n };\n var v = o.history[o.current].getFragment(), w = p.getFragment();\n if (((w == v) || (((v == o.orig_fragment) && (w == o.canonical.getFragment()))))) {\n if (q) {\n o.notify(w);\n };\n o._updateRefererURI(w);\n return false;\n }\n ;\n if (r) {\n o.current--;\n };\n var x = (((o.history.length - o.current)) - 1);\n o.history.splice((o.current + 1), x);\n o.history.push(j(p));\n return o.go(1, q, r);\n },\n getCurrentFragment: function() {\n var p = ((o._temporary_fragment !== undefined) ? o._temporary_fragment : j.getRequestURI(false).getFragment());\n return ((p == o.orig_fragment) ? o.canonical.getFragment() : p);\n }\n };\n e.exports = o;\n});\n__d(\"InputSelection\", [\"DOM\",\"Focus\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"Focus\"), i = {\n get: function(j) {\n if (!document.selection) {\n return {\n start: j.selectionStart,\n end: j.selectionEnd\n }\n };\n var k = document.selection.createRange();\n if ((k.parentElement() !== j)) {\n return {\n start: 0,\n end: 0\n }\n };\n var l = j.value.length;\n if (g.isNodeOfType(j, \"input\")) {\n return {\n start: -k.moveStart(\"character\", -l),\n end: -k.moveEnd(\"character\", -l)\n };\n }\n else {\n var m = k.duplicate();\n m.moveToElementText(j);\n m.setEndPoint(\"StartToEnd\", k);\n var n = (l - m.text.length);\n m.setEndPoint(\"StartToStart\", k);\n return {\n start: (l - m.text.length),\n end: n\n };\n }\n ;\n },\n set: function(j, k, l) {\n if ((typeof l == \"undefined\")) {\n l = k;\n };\n if (document.selection) {\n if ((j.tagName == \"TEXTAREA\")) {\n var m = ((j.value.slice(0, k).match(/\\r/g) || [])).length, n = ((j.value.slice(k, l).match(/\\r/g) || [])).length;\n k -= m;\n l -= (m + n);\n }\n ;\n var o = j.createTextRange();\n o.collapse(true);\n o.moveStart(\"character\", k);\n o.moveEnd(\"character\", (l - k));\n o.select();\n }\n else {\n j.selectionStart = k;\n j.selectionEnd = Math.min(l, j.value.length);\n h.set(j);\n }\n ;\n }\n };\n e.exports = i;\n});\n__d(\"JSONPTransport\", [\"ArbiterMixin\",\"DOM\",\"HTML\",\"URI\",\"asyncCallback\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"DOM\"), i = b(\"HTML\"), j = b(\"URI\"), k = b(\"asyncCallback\"), l = b(\"copyProperties\"), m = {\n }, n = 2, o = \"jsonp\", p = \"iframe\";\n function q(s) {\n delete m[s];\n };\n function r(s, t) {\n this._type = s;\n this._uri = t;\n m[this.getID()] = this;\n };\n l(r, {\n respond: function(s, t, u) {\n var v = m[s];\n if (v) {\n if (!u) {\n q(s);\n };\n if ((v._type == p)) {\n t = JSON.parse(JSON.stringify(t));\n };\n k(v.handleResponse.bind(v), \"json\")(t);\n }\n else {\n var w = a.ErrorSignal;\n if ((w && !u)) {\n w.logJSError(\"ajax\", {\n error: \"UnexpectedJsonResponse\",\n extra: {\n id: s,\n uri: (((t.payload && t.payload.uri)) || \"\")\n }\n });\n };\n }\n ;\n }\n });\n l(r.prototype, g, {\n getID: function() {\n return (this._id || (this._id = n++));\n },\n hasFinished: function() {\n return !((this.getID() in m));\n },\n getRequestURI: function() {\n return j(this._uri).addQueryData({\n __a: 1,\n __adt: this.getID(),\n __req: (\"jsonp_\" + this.getID())\n });\n },\n getTransportFrame: function() {\n if (this._iframe) {\n return this._iframe\n };\n var s = (\"transport_frame_\" + this.getID()), t = i(((\"\\u003Ciframe class=\\\"hidden_elem\\\" name=\\\"\" + s) + \"\\\" src=\\\"javascript:void(0)\\\" /\\u003E\"));\n return this._iframe = h.appendContent(document.body, t)[0];\n },\n send: function() {\n if ((this._type === o)) {\n (function() {\n h.appendContent(document.body, h.create(\"script\", {\n src: this.getRequestURI().toString(),\n type: \"text/javascript\"\n }));\n }).bind(this).defer();\n }\n else this.getTransportFrame().src = this.getRequestURI().toString();\n ;\n },\n handleResponse: function(s) {\n this.inform(\"response\", s);\n if (this.hasFinished()) {\n this._cleanup.bind(this).defer();\n };\n },\n abort: function() {\n if (this._aborted) {\n return\n };\n this._aborted = true;\n this._cleanup();\n q(this.getID());\n this.inform(\"abort\");\n },\n _cleanup: function() {\n if (this._iframe) {\n h.remove(this._iframe);\n this._iframe = null;\n }\n ;\n }\n });\n e.exports = r;\n});\n__d(\"KeyEventController\", [\"DOM\",\"Event\",\"Run\",\"copyProperties\",\"isEmpty\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"Event\"), i = b(\"Run\"), j = b(\"copyProperties\"), k = b(\"isEmpty\");\n function l() {\n this.handlers = {\n };\n document.onkeyup = this.onkeyevent.bind(this, \"onkeyup\");\n document.onkeydown = this.onkeyevent.bind(this, \"onkeydown\");\n document.onkeypress = this.onkeyevent.bind(this, \"onkeypress\");\n };\n j(l, {\n instance: null,\n getInstance: function() {\n return (l.instance || (l.instance = new l()));\n },\n defaultFilter: function(event, m) {\n event = h.$E(event);\n return ((l.filterEventTypes(event, m) && l.filterEventTargets(event, m)) && l.filterEventModifiers(event, m));\n },\n filterEventTypes: function(event, m) {\n if ((m === \"onkeydown\")) {\n return true\n };\n return false;\n },\n filterEventTargets: function(event, m) {\n var n = event.getTarget(), o = (n.contentEditable === \"true\");\n return (((!((o || g.isNodeOfType(n, l._interactiveElements))) || (n.type in l._uninterestingTypes)) || (((event.keyCode in l._controlKeys) && ((((g.isNodeOfType(n, [\"input\",\"textarea\",]) && (n.value.length === 0))) || ((o && (g.getText(n).length === 0)))))))));\n },\n filterEventModifiers: function(event, m) {\n if ((((event.ctrlKey || event.altKey) || event.metaKey) || event.repeat)) {\n return false\n };\n return true;\n },\n registerKey: function(m, n, o, p) {\n if ((o === undefined)) {\n o = l.defaultFilter;\n };\n var q = l.getInstance(), r = q.mapKey(m);\n if (k(q.handlers)) {\n i.onLeave(q.resetHandlers.bind(q));\n };\n var s = {\n };\n for (var t = 0; (t < r.length); t++) {\n m = r[t];\n if ((!q.handlers[m] || p)) {\n q.handlers[m] = [];\n };\n var u = {\n callback: n,\n filter: o\n };\n s[m] = u;\n q.handlers[m].push(u);\n };\n return {\n remove: function() {\n for (var v in s) {\n if ((q.handlers[v] && q.handlers[v].length)) {\n var w = q.handlers[v].indexOf(s[v]);\n ((w >= 0) && q.handlers[v].splice(w, 1));\n }\n ;\n delete s[v];\n };\n }\n };\n },\n keyCodeMap: {\n BACKSPACE: [8,],\n TAB: [9,],\n RETURN: [13,],\n ESCAPE: [27,],\n LEFT: [37,63234,],\n UP: [38,63232,],\n RIGHT: [39,63235,],\n DOWN: [40,63233,],\n DELETE: [46,],\n COMMA: [188,],\n PERIOD: [190,],\n SLASH: [191,],\n \"`\": [192,],\n \"[\": [219,],\n \"]\": [221,]\n },\n _interactiveElements: [\"input\",\"select\",\"textarea\",\"object\",\"embed\",],\n _uninterestingTypes: {\n button: 1,\n checkbox: 1,\n radio: 1,\n submit: 1\n },\n _controlKeys: {\n 8: 1,\n 9: 1,\n 13: 1,\n 27: 1,\n 37: 1,\n 63234: 1,\n 38: 1,\n 63232: 1,\n 39: 1,\n 63235: 1,\n 40: 1,\n 63233: 1,\n 46: 1\n }\n });\n j(l.prototype, {\n mapKey: function(m) {\n if (((m >= 0) && (m <= 9))) {\n if ((typeof (m) != \"number\")) {\n m = (m.charCodeAt(0) - 48);\n };\n return [(48 + m),(96 + m),];\n }\n ;\n var n = l.keyCodeMap[m.toUpperCase()];\n if (n) {\n return n\n };\n return [m.toUpperCase().charCodeAt(0),];\n },\n onkeyevent: function(m, n) {\n n = h.$E(n);\n var o = (this.handlers[n.keyCode] || this.handlers[n.which]), p, q, r;\n if (o) {\n for (var s = 0; (s < o.length); s++) {\n p = o[s].callback;\n q = o[s].filter;\n try {\n if ((!q || q(n, m))) {\n r = p(n, m);\n if ((r === false)) {\n return h.kill(n)\n };\n }\n ;\n } catch (t) {\n \n };\n }\n };\n return true;\n },\n resetHandlers: function() {\n this.handlers = {\n };\n }\n });\n e.exports = l;\n});\n__d(\"KeyStatus\", [\"Event\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = null, i = null;\n function j() {\n if (!i) {\n i = g.listen(window, \"blur\", function() {\n h = null;\n k();\n });\n };\n };\n function k() {\n if (i) {\n i.remove();\n i = null;\n }\n ;\n };\n g.listen(document.documentElement, \"keydown\", function(m) {\n h = g.getKeyCode(m);\n j();\n }, g.Priority.URGENT);\n g.listen(document.documentElement, \"keyup\", function(m) {\n h = null;\n k();\n }, g.Priority.URGENT);\n var l = {\n isKeyDown: function() {\n return !!h;\n },\n getKeyDownCode: function() {\n return h;\n }\n };\n e.exports = l;\n});\n__d(\"BehaviorsMixin\", [\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\");\n function h(l) {\n this._behavior = l;\n this._enabled = false;\n };\n g(h.prototype, {\n enable: function() {\n if (!this._enabled) {\n this._enabled = true;\n this._behavior.enable();\n }\n ;\n },\n disable: function() {\n if (this._enabled) {\n this._enabled = false;\n this._behavior.disable();\n }\n ;\n }\n });\n var i = 1;\n function j(l) {\n if (!l.__BEHAVIOR_ID) {\n l.__BEHAVIOR_ID = i++;\n };\n return l.__BEHAVIOR_ID;\n };\n var k = {\n enableBehavior: function(l) {\n if (!this._behaviors) {\n this._behaviors = {\n };\n };\n var m = j(l);\n if (!this._behaviors[m]) {\n this._behaviors[m] = new h(new l(this));\n };\n this._behaviors[m].enable();\n return this;\n },\n disableBehavior: function(l) {\n if (this._behaviors) {\n var m = j(l);\n if (this._behaviors[m]) {\n this._behaviors[m].disable();\n };\n }\n ;\n return this;\n },\n enableBehaviors: function(l) {\n l.forEach(this.enableBehavior.bind(this));\n return this;\n },\n destroyBehaviors: function() {\n if (this._behaviors) {\n for (var l in this._behaviors) {\n this._behaviors[l].disable();;\n };\n this._behaviors = {\n };\n }\n ;\n }\n };\n e.exports = k;\n});\n__d(\"removeFromArray\", [], function(a, b, c, d, e, f) {\n function g(h, i) {\n var j = h.indexOf(i);\n ((j != -1) && h.splice(j, 1));\n };\n e.exports = g;\n});\n__d(\"Layer\", [\"Event\",\"function-extensions\",\"ArbiterMixin\",\"BehaviorsMixin\",\"BootloadedReact\",\"ContextualThing\",\"CSS\",\"DataStore\",\"DOM\",\"HTML\",\"KeyEventController\",\"Parent\",\"Style\",\"copyProperties\",\"ge\",\"removeFromArray\",\"KeyStatus\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\");\n b(\"function-extensions\");\n var h = b(\"ArbiterMixin\"), i = b(\"BehaviorsMixin\"), j = b(\"BootloadedReact\"), k = b(\"ContextualThing\"), l = b(\"CSS\"), m = b(\"DataStore\"), n = b(\"DOM\"), o = b(\"HTML\"), p = b(\"KeyEventController\"), q = b(\"Parent\"), r = b(\"Style\"), s = b(\"copyProperties\"), t = b(\"ge\"), u = b(\"removeFromArray\");\n b(\"KeyStatus\");\n var v = [];\n function w(x, y) {\n this._config = (x || {\n });\n if (y) {\n this._configure(this._config, y);\n var z = (this._config.addedBehaviors || []);\n this.enableBehaviors(this._getDefaultBehaviors().concat(z));\n }\n ;\n };\n s(w, h);\n s(w, {\n init: function(x, y) {\n x.init(y);\n },\n initAndShow: function(x, y) {\n x.init(y).show();\n },\n show: function(x) {\n x.show();\n },\n getTopmostLayer: function() {\n return v[(v.length - 1)];\n }\n });\n s(w.prototype, h, i, {\n _initialized: false,\n _root: null,\n _shown: false,\n _hiding: false,\n _causalElement: null,\n _reactContainer: null,\n init: function(x) {\n this._configure(this._config, x);\n var y = (this._config.addedBehaviors || []);\n this.enableBehaviors(this._getDefaultBehaviors().concat(y));\n this._initialized = true;\n return this;\n },\n _configure: function(x, y) {\n if (y) {\n var z = n.isNode(y), aa = ((typeof y === \"string\") || o.isHTML(y));\n this.containsReactComponent = j.isValidComponent(y);\n if (aa) {\n y = o(y).getRootNode();\n }\n else if (this.containsReactComponent) {\n var ba = document.createElement(\"div\");\n j.renderComponent(y, ba);\n y = this._reactContainer = ba;\n }\n \n ;\n }\n ;\n this._root = this._buildWrapper(x, y);\n if (x.attributes) {\n n.setAttributes(this._root, x.attributes);\n };\n if (x.classNames) {\n x.classNames.forEach(l.addClass.curry(this._root));\n };\n l.addClass(this._root, \"uiLayer\");\n if (x.causalElement) {\n this._causalElement = t(x.causalElement);\n };\n if (x.permanent) {\n this._permanent = x.permanent;\n };\n m.set(this._root, \"layer\", this);\n },\n _getDefaultBehaviors: function() {\n return [];\n },\n getCausalElement: function() {\n return this._causalElement;\n },\n setCausalElement: function(x) {\n this._causalElement = x;\n return this;\n },\n getInsertParent: function() {\n return (this._insertParent || document.body);\n },\n getRoot: function() {\n return this._root;\n },\n getContentRoot: function() {\n return this._root;\n },\n _buildWrapper: function(x, y) {\n return y;\n },\n setInsertParent: function(x) {\n if (x) {\n if ((this._shown && (x !== this.getInsertParent()))) {\n n.appendContent(x, this.getRoot());\n this.updatePosition();\n }\n ;\n this._insertParent = x;\n }\n ;\n return this;\n },\n show: function() {\n if (this._shown) {\n return this\n };\n var x = this.getRoot();\n this.inform(\"beforeshow\");\n r.set(x, \"visibility\", \"hidden\");\n r.set(x, \"overflow\", \"hidden\");\n l.show(x);\n n.appendContent(this.getInsertParent(), x);\n if ((this.updatePosition() !== false)) {\n this._shown = true;\n this.inform(\"show\");\n w.inform(\"show\", this);\n if (!this._permanent) {\n !function() {\n if (this._shown) {\n v.push(this);\n };\n }.bind(this).defer();\n };\n }\n else l.hide(x);\n ;\n r.set(x, \"visibility\", \"\");\n r.set(x, \"overflow\", \"\");\n this.inform(\"aftershow\");\n return this;\n },\n hide: function() {\n if (((this._hiding || !this._shown) || (this.inform(\"beforehide\") === false))) {\n return this\n };\n this._hiding = true;\n if ((this.inform(\"starthide\") !== false)) {\n this.finishHide();\n };\n return this;\n },\n conditionShow: function(x) {\n return (x ? this.show() : this.hide());\n },\n finishHide: function() {\n if (this._shown) {\n if (!this._permanent) {\n u(v, this);\n };\n this._hiding = false;\n this._shown = false;\n l.hide(this.getRoot());\n this.inform(\"hide\");\n w.inform(\"hide\", this);\n }\n ;\n },\n isShown: function() {\n return this._shown;\n },\n updatePosition: function() {\n return true;\n },\n destroy: function() {\n if (this.containsReactComponent) {\n j.unmountAndReleaseReactRootNode(this._reactContainer);\n };\n this.finishHide();\n var x = this.getRoot();\n n.remove(x);\n this.destroyBehaviors();\n this.inform(\"destroy\");\n w.inform(\"destroy\", this);\n m.remove(x, \"layer\");\n this._root = this._causalElement = null;\n }\n });\n g.listen(document.documentElement, \"keydown\", function(event) {\n if (p.filterEventTargets(event, \"keydown\")) {\n for (var x = (v.length - 1); (x >= 0); x--) {\n if ((v[x].inform(\"key\", event) === false)) {\n return false\n };\n }\n };\n }, g.Priority.URGENT);\n g.listen(document.documentElement, \"click\", function(event) {\n var x = v.length;\n if (!x) {\n return\n };\n var y = event.getTarget();\n if (!n.contains(document.documentElement, y)) {\n return\n };\n if (!y.offsetWidth) {\n return\n };\n if (q.byClass(y, \"generic_dialog\")) {\n return\n };\n while (x--) {\n var z = v[x], aa = z.getContentRoot();\n if (k.containsIncludingLayers(aa, y)) {\n return\n };\n if (((z.inform(\"blur\") === false) || z.isShown())) {\n return\n };\n };\n });\n e.exports = w;\n});\n__d(\"PopupWindow\", [\"DOMDimensions\",\"DOMQuery\",\"Layer\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMDimensions\"), h = b(\"DOMQuery\"), i = b(\"Layer\"), j = b(\"copyProperties\"), k = {\n _opts: {\n allowShrink: true,\n strategy: \"vector\",\n timeout: 100,\n widthElement: null\n },\n init: function(l) {\n j(k._opts, l);\n setInterval(k._resizeCheck, k._opts.timeout);\n },\n _resizeCheck: function() {\n var l = g.getViewportDimensions(), m = k._getDocumentSize(), n = i.getTopmostLayer();\n if (n) {\n var o = n.getRoot().firstChild, p = g.getElementDimensions(o);\n p.height += g.measureElementBox(o, \"height\", true, true, true);\n p.width += g.measureElementBox(o, \"width\", true, true, true);\n m.height = Math.max(m.height, p.height);\n m.width = Math.max(m.width, p.width);\n }\n ;\n var q = (m.height - l.height), r = (m.width - l.width);\n if (((r < 0) && !k._opts.widthElement)) {\n r = 0;\n };\n r = ((r > 1) ? r : 0);\n if ((!k._opts.allowShrink && (q < 0))) {\n q = 0;\n };\n if ((q || r)) {\n try {\n (window.console && window.console.firebug);\n window.resizeBy(r, q);\n if (r) {\n window.moveBy((r / -2), 0);\n };\n } catch (s) {\n \n }\n };\n },\n _getDocumentSize: function() {\n var l = g.getDocumentDimensions();\n if ((k._opts.strategy === \"offsetHeight\")) {\n l.height = document.body.offsetHeight;\n };\n if (k._opts.widthElement) {\n var m = h.scry(document.body, k._opts.widthElement)[0];\n if (m) {\n l.width = g.getElementDimensions(m).width;\n };\n }\n ;\n var n = a.Dialog;\n if (((n && n.max_bottom) && (n.max_bottom > l.height))) {\n l.height = n.max_bottom;\n };\n return l;\n },\n open: function(l, m, n) {\n var o = ((typeof window.screenX != \"undefined\") ? window.screenX : window.screenLeft), p = ((typeof window.screenY != \"undefined\") ? window.screenY : window.screenTop), q = ((typeof window.outerWidth != \"undefined\") ? window.outerWidth : document.body.clientWidth), r = ((typeof window.outerHeight != \"undefined\") ? window.outerHeight : ((document.body.clientHeight - 22))), s = parseInt((o + ((((q - n)) / 2))), 10), t = parseInt((p + ((((r - m)) / 2.5))), 10), u = ((((((((\"width=\" + n) + \",height=\") + m) + \",left=\") + s) + \",top=\") + t));\n return window.open(l, \"_blank\", u);\n }\n };\n e.exports = k;\n});\n__d(\"Vector\", [\"Event\",\"DOMDimensions\",\"DOMPosition\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"DOMDimensions\"), i = b(\"DOMPosition\"), j = b(\"copyProperties\");\n function k(l, m, n) {\n j(this, {\n x: parseFloat(l),\n y: parseFloat(m),\n domain: (n || \"pure\")\n });\n };\n j(k.prototype, {\n toString: function() {\n return ((((\"(\" + this.x) + \", \") + this.y) + \")\");\n },\n add: function(l, m) {\n if ((arguments.length == 1)) {\n if ((l.domain != \"pure\")) {\n l = l.convertTo(this.domain);\n };\n return this.add(l.x, l.y);\n }\n ;\n var n = parseFloat(l), o = parseFloat(m);\n return new k((this.x + n), (this.y + o), this.domain);\n },\n mul: function(l, m) {\n if ((typeof m == \"undefined\")) {\n m = l;\n };\n return new k((this.x * l), (this.y * m), this.domain);\n },\n div: function(l, m) {\n if ((typeof m == \"undefined\")) {\n m = l;\n };\n return new k(((this.x * 1) / l), ((this.y * 1) / m), this.domain);\n },\n sub: function(l, m) {\n if ((arguments.length == 1)) {\n return this.add(l.mul(-1));\n }\n else return this.add(-l, -m)\n ;\n },\n distanceTo: function(l) {\n return this.sub(l).magnitude();\n },\n magnitude: function() {\n return Math.sqrt((((this.x * this.x)) + ((this.y * this.y))));\n },\n rotate: function(l) {\n return new k(((this.x * Math.cos(l)) - (this.y * Math.sin(l))), ((this.x * Math.sin(l)) + (this.y * Math.cos(l))));\n },\n convertTo: function(l) {\n if ((((l != \"pure\") && (l != \"viewport\")) && (l != \"document\"))) {\n return new k(0, 0)\n };\n if ((l == this.domain)) {\n return new k(this.x, this.y, this.domain)\n };\n if ((l == \"pure\")) {\n return new k(this.x, this.y)\n };\n if ((this.domain == \"pure\")) {\n return new k(0, 0)\n };\n var m = k.getScrollPosition(\"document\"), n = this.x, o = this.y;\n if ((this.domain == \"document\")) {\n n -= m.x;\n o -= m.y;\n }\n else {\n n += m.x;\n o += m.y;\n }\n ;\n return new k(n, o, l);\n },\n setElementPosition: function(l) {\n var m = this.convertTo(\"document\");\n l.style.left = (parseInt(m.x) + \"px\");\n l.style.top = (parseInt(m.y) + \"px\");\n return this;\n },\n setElementDimensions: function(l) {\n return this.setElementWidth(l).setElementHeight(l);\n },\n setElementWidth: function(l) {\n l.style.width = (parseInt(this.x, 10) + \"px\");\n return this;\n },\n setElementHeight: function(l) {\n l.style.height = (parseInt(this.y, 10) + \"px\");\n return this;\n },\n scrollElementBy: function(l) {\n if ((l == document.body)) {\n window.scrollBy(this.x, this.y);\n }\n else {\n l.scrollLeft += this.x;\n l.scrollTop += this.y;\n }\n ;\n return this;\n }\n });\n j(k, {\n getEventPosition: function(l, m) {\n m = (m || \"document\");\n var n = g.getPosition(l), o = new k(n.x, n.y, \"document\");\n return o.convertTo(m);\n },\n getScrollPosition: function(l) {\n l = (l || \"document\");\n var m = i.getScrollPosition();\n return new k(m.x, m.y, \"document\").convertTo(l);\n },\n getElementPosition: function(l, m) {\n m = (m || \"document\");\n var n = i.getElementPosition(l);\n return new k(n.x, n.y, \"viewport\").convertTo(m);\n },\n getElementDimensions: function(l) {\n var m = h.getElementDimensions(l);\n return new k(m.width, m.height);\n },\n getViewportDimensions: function() {\n var l = h.getViewportDimensions();\n return new k(l.width, l.height, \"viewport\");\n },\n getDocumentDimensions: function(l) {\n var m = h.getDocumentDimensions(l);\n return new k(m.width, m.height, \"document\");\n },\n deserialize: function(l) {\n var m = l.split(\",\");\n return new k(m[0], m[1]);\n }\n });\n e.exports = k;\n});\n__d(\"enforceMaxLength\", [\"Event\",\"function-extensions\",\"DOM\",\"Input\",\"InputSelection\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\");\n b(\"function-extensions\");\n var h = b(\"DOM\"), i = b(\"Input\"), j = b(\"InputSelection\"), k = function(n, o) {\n var p = i.getValue(n), q = p.length, r = (q - o);\n if ((r > 0)) {\n var s, t;\n try {\n s = j.get(n);\n t = s.end;\n } catch (u) {\n s = null;\n t = 0;\n };\n if ((t >= r)) {\n q = t;\n };\n var v = (q - r);\n if ((v && (((p.charCodeAt((v - 1)) & 64512)) === 55296))) {\n v--;\n };\n t = Math.min(t, v);\n i.setValue(n, (p.slice(0, v) + p.slice(q)));\n if (s) {\n j.set(n, Math.min(s.start, t), t);\n };\n }\n ;\n }, l = function(event) {\n var n = event.getTarget(), o = (n.getAttribute && parseInt(n.getAttribute(\"maxlength\"), 10));\n if (((o > 0) && h.isNodeOfType(n, [\"input\",\"textarea\",]))) {\n k.bind(null, n, o).defer();\n };\n }, m = ((\"maxLength\" in h.create(\"input\")) && (\"maxLength\" in h.create(\"textarea\")));\n if (!m) {\n g.listen(document.documentElement, {\n keydown: l,\n paste: l\n });\n };\n e.exports = k;\n});\n__d(\"requestAnimationFrame\", [\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"emptyFunction\"), h = 0, i = (((((a.requestAnimationFrame || a.webkitRequestAnimationFrame) || a.mozRequestAnimationFrame) || a.oRequestAnimationFrame) || a.msRequestAnimationFrame) || function(j) {\n var k = Date.now(), l = Math.max(0, (16 - ((k - h))));\n h = (k + l);\n return a.setTimeout(j, l);\n });\n i(g);\n e.exports = i;\n});\n__d(\"queryThenMutateDOM\", [\"function-extensions\",\"Run\",\"createArrayFrom\",\"emptyFunction\",\"requestAnimationFrame\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"Run\"), h = b(\"createArrayFrom\"), i = b(\"emptyFunction\"), j = b(\"requestAnimationFrame\"), k, l, m = {\n }, n = [], o = [];\n function p(s, t, u) {\n if ((!s && !t)) {\n return\n };\n if ((u && m.hasOwnProperty(u))) {\n return;\n }\n else if (u) {\n m[u] = 1;\n }\n ;\n n.push((t || i));\n o.push((s || i));\n r();\n if (!k) {\n k = true;\n g.onLeave(function() {\n k = false;\n l = false;\n m = {\n };\n n.length = 0;\n o.length = 0;\n });\n }\n ;\n };\n p.prepare = function(s, t, u) {\n return function() {\n var v = h(arguments);\n v.unshift(this);\n var w = Function.prototype.bind.apply(s, v), x = t.bind(this);\n p(w, x, u);\n };\n };\n function q() {\n m = {\n };\n var s = o.length, t = n.length, u = [], v;\n while (s--) {\n v = o.shift();\n u.push(v());\n };\n while (t--) {\n v = n.shift();\n v(u.shift());\n };\n l = false;\n r();\n };\n function r() {\n if ((!l && ((o.length || n.length)))) {\n l = true;\n j(q);\n }\n ;\n };\n e.exports = p;\n});\n__d(\"UIForm\", [\"Event\",\"ArbiterMixin\",\"BehaviorsMixin\",\"DOM\",\"Form\",\"Run\",\"areObjectsEqual\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"ArbiterMixin\"), i = b(\"BehaviorsMixin\"), j = b(\"DOM\"), k = b(\"Form\"), l = b(\"Run\"), m = b(\"areObjectsEqual\"), n = b(\"copyProperties\");\n function o(p, q, r, s, t) {\n this._root = p;\n this.controller = p;\n this._message = q;\n if (s) {\n this._confirm_dialog = s;\n s.subscribe(\"confirm\", this._handleDialogConfirm.bind(this));\n j.prependContent(this._root, j.create(\"input\", {\n type: \"hidden\",\n name: \"confirmed\",\n value: \"true\"\n }));\n }\n ;\n l.onAfterLoad(function() {\n this._originalState = k.serialize(this._root);\n }.bind(this));\n this._forceDirty = r;\n this._confirmed = false;\n this._submitted = false;\n g.listen(this._root, \"submit\", this._handleSubmit.bind(this));\n if ((t && t.length)) {\n this.enableBehaviors(t);\n };\n var u = true;\n l.onBeforeUnload(this.checkUnsaved.bind(this), u);\n };\n n(o.prototype, h, i, {\n getRoot: function() {\n return this._root;\n },\n _handleSubmit: function() {\n if ((this._confirm_dialog && !this._confirmed)) {\n this._confirm_dialog.show();\n return false;\n }\n ;\n if ((this.inform(\"submit\") === false)) {\n return false\n };\n this._submitted = true;\n return true;\n },\n _handleDialogConfirm: function() {\n this._confirmed = true;\n this._confirm_dialog.hide();\n if (this._root.getAttribute(\"ajaxify\")) {\n g.fire(this._root, \"submit\");\n }\n else if (this._handleSubmit()) {\n this._root.submit();\n }\n ;\n },\n reset: function() {\n this.inform(\"reset\");\n this._submitted = false;\n this._confirmed = false;\n },\n isDirty: function() {\n if ((this._submitted || !j.contains(document.body, this._root))) {\n return false\n };\n if (this._forceDirty) {\n return true\n };\n var p = k.serialize(this._root);\n return !m(p, this._originalState);\n },\n checkUnsaved: function() {\n if (this.isDirty()) {\n return this._message\n };\n return null;\n }\n });\n e.exports = (a.UIForm || o);\n});"); |
| // 5124 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s745724cb144ffb0314d39065d8a453b0cfbd0f73"); |
| // 5125 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"f7Tpb\",]);\n}\n;\n;\n__d(\"BrowserSupport\", [\"DOM\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = {\n }, i = [\"Webkit\",\"Moz\",\"O\",\"ms\",], j = JSBNG__document.createElement(\"div\"), k = function(m) {\n if (((h[m] === undefined))) {\n var n = null;\n if (((m in j.style))) {\n n = m;\n }\n else for (var o = 0; ((o < i.length)); o++) {\n var p = ((((i[o] + m.charAt(0).toUpperCase())) + m.slice(1)));\n if (((p in j.style))) {\n n = p;\n break;\n }\n ;\n ;\n }\n ;\n ;\n h[m] = n;\n }\n ;\n ;\n return h[m];\n }, l = {\n hasCSSAnimations: function() {\n return !!k(\"animationName\");\n },\n hasCSSTransforms: function() {\n return !!k(\"transform\");\n },\n hasCSS3DTransforms: function() {\n return !!k(\"perspective\");\n },\n hasCSSTransitions: function() {\n return !!k(\"transition\");\n },\n hasPositionSticky: function() {\n if (((h.sticky === undefined))) {\n j.style.cssText = ((\"position:-webkit-sticky;position:-moz-sticky;\" + \"position:-o-sticky;position:-ms-sticky;position:sticky;\"));\n h.sticky = /sticky/.test(j.style.position);\n }\n ;\n ;\n return h.sticky;\n },\n hasPointerEvents: function() {\n if (((h.pointerEvents === undefined))) {\n if (!((\"pointerEvents\" in j.style))) {\n h.pointerEvents = false;\n }\n else {\n j.style.pointerEvents = \"auto\";\n j.style.pointerEvents = \"x\";\n g.appendContent(JSBNG__document.documentElement, j);\n h.pointerEvents = ((window.JSBNG__getComputedStyle && ((JSBNG__getComputedStyle(j, \"\").pointerEvents === \"auto\"))));\n g.remove(j);\n }\n ;\n }\n ;\n ;\n return h.pointerEvents;\n },\n getTransitionEndEvent: function() {\n if (((h.transitionEnd === undefined))) {\n var m = {\n transition: \"transitionend\",\n WebkitTransition: \"webkitTransitionEnd\",\n MozTransition: \"mozTransitionEnd\",\n OTransition: \"oTransitionEnd\"\n }, n = k(\"transition\");\n h.transitionEnd = ((m[n] || null));\n }\n ;\n ;\n return h.transitionEnd;\n }\n };\n e.exports = l;\n});\n__d(\"shield\", [], function(a, b, c, d, e, f) {\n function g(h, i) {\n if (((typeof h != \"function\"))) {\n throw new TypeError();\n }\n ;\n ;\n var j = Array.prototype.slice.call(arguments, 2);\n return function() {\n return h.apply(i, j);\n };\n };\n;\n e.exports = g;\n});\n__d(\"Animation\", [\"BrowserSupport\",\"JSBNG__CSS\",\"DataStore\",\"DOM\",\"Style\",\"shield\",], function(a, b, c, d, e, f) {\n var g = b(\"BrowserSupport\"), h = b(\"JSBNG__CSS\"), i = b(\"DataStore\"), j = b(\"DOM\"), k = b(\"Style\"), l = b(\"shield\"), m, n = [], o;\n function p(ga) {\n if (((a == this))) {\n return new p(ga);\n }\n else {\n this.obj = ga;\n this._reset_state();\n this.queue = [];\n this.last_attr = null;\n }\n ;\n ;\n };\n;\n function q(ga) {\n if (g.hasCSS3DTransforms()) {\n return t(ga);\n }\n else return s(ga)\n ;\n };\n;\n function r(ga) {\n return ga.toFixed(8);\n };\n;\n function s(ga) {\n ga = [ga[0],ga[4],ga[1],ga[5],ga[12],ga[13],];\n return ((((\"matrix(\" + ga.map(r).join(\",\"))) + \")\"));\n };\n;\n function t(ga) {\n return ((((\"matrix3d(\" + ga.map(r).join(\",\"))) + \")\"));\n };\n;\n function u(ga, ha) {\n if (!ga) {\n ga = [1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1,];\n }\n ;\n ;\n var ia = [];\n for (var ja = 0; ((ja < 4)); ja++) {\n for (var ka = 0; ((ka < 4)); ka++) {\n var la = 0;\n for (var ma = 0; ((ma < 4)); ma++) {\n la += ((ga[((((ja * 4)) + ma))] * ha[((((ma * 4)) + ka))]));\n ;\n };\n ;\n ia[((((ja * 4)) + ka))] = la;\n };\n ;\n };\n ;\n return ia;\n };\n;\n var v = 0;\n p.prototype._reset_state = function() {\n this.state = {\n attrs: {\n },\n duration: 500\n };\n };\n p.prototype.JSBNG__stop = function() {\n this._reset_state();\n this.queue = [];\n return this;\n };\n p.prototype._build_container = function() {\n if (this.container_div) {\n this._refresh_container();\n return;\n }\n ;\n ;\n if (((this.obj.firstChild && this.obj.firstChild.__animation_refs))) {\n this.container_div = this.obj.firstChild;\n this.container_div.__animation_refs++;\n this._refresh_container();\n return;\n }\n ;\n ;\n var ga = JSBNG__document.createElement(\"div\");\n ga.style.padding = \"0px\";\n ga.style.margin = \"0px\";\n ga.style.border = \"0px\";\n ga.__animation_refs = 1;\n var ha = this.obj.childNodes;\n while (ha.length) {\n ga.appendChild(ha[0]);\n ;\n };\n ;\n this.obj.appendChild(ga);\n this._orig_overflow = this.obj.style.overflow;\n this.obj.style.overflow = \"hidden\";\n this.container_div = ga;\n this._refresh_container();\n };\n p.prototype._refresh_container = function() {\n this.container_div.style.height = \"auto\";\n this.container_div.style.width = \"auto\";\n this.container_div.style.height = ((this.container_div.offsetHeight + \"px\"));\n this.container_div.style.width = ((this.container_div.offsetWidth + \"px\"));\n };\n p.prototype._destroy_container = function() {\n if (!this.container_div) {\n return;\n }\n ;\n ;\n if (!--this.container_div.__animation_refs) {\n var ga = this.container_div.childNodes;\n while (ga.length) {\n this.obj.appendChild(ga[0]);\n ;\n };\n ;\n this.obj.removeChild(this.container_div);\n }\n ;\n ;\n this.container_div = null;\n this.obj.style.overflow = this._orig_overflow;\n };\n var w = 1, x = 2, y = 3;\n p.prototype._attr = function(ga, ha, ia) {\n ga = ga.replace(/-[a-z]/gi, function(ka) {\n return ka.substring(1).toUpperCase();\n });\n var ja = false;\n switch (ga) {\n case \"background\":\n this._attr(\"backgroundColor\", ha, ia);\n return this;\n case \"backgroundColor\":\n \n case \"borderColor\":\n \n case \"color\":\n ha = ca(ha);\n break;\n case \"opacity\":\n ha = parseFloat(ha, 10);\n break;\n case \"height\":\n \n case \"width\":\n if (((ha == \"auto\"))) {\n ja = true;\n }\n else ha = parseInt(ha, 10);\n ;\n ;\n break;\n case \"borderWidth\":\n \n case \"lineHeight\":\n \n case \"fontSize\":\n \n case \"margin\":\n \n case \"marginBottom\":\n \n case \"marginLeft\":\n \n case \"marginRight\":\n \n case \"marginTop\":\n \n case \"padding\":\n \n case \"paddingBottom\":\n \n case \"paddingLeft\":\n \n case \"paddingRight\":\n \n case \"paddingTop\":\n \n case \"bottom\":\n \n case \"left\":\n \n case \"right\":\n \n case \"JSBNG__top\":\n \n case \"scrollTop\":\n \n case \"scrollLeft\":\n ha = parseInt(ha, 10);\n break;\n case \"rotateX\":\n \n case \"rotateY\":\n \n case \"rotateZ\":\n ha = ((((parseInt(ha, 10) * Math.PI)) / 180));\n break;\n case \"translateX\":\n \n case \"translateY\":\n \n case \"translateZ\":\n \n case \"scaleX\":\n \n case \"scaleY\":\n \n case \"scaleZ\":\n ha = parseFloat(ha, 10);\n break;\n case \"rotate3d\":\n this._attr(\"rotateX\", ha[0], ia);\n this._attr(\"rotateY\", ha[1], ia);\n this._attr(\"rotateZ\", ha[2], ia);\n return this;\n case \"rotate\":\n this._attr(\"rotateZ\", ha, ia);\n return this;\n case \"scale3d\":\n this._attr(\"scaleZ\", ha[2], ia);\n case \"scale\":\n this._attr(\"scaleX\", ha[0], ia);\n this._attr(\"scaleY\", ha[1], ia);\n return this;\n case \"translate3d\":\n this._attr(\"translateZ\", ha[2], ia);\n case \"translate\":\n this._attr(\"translateX\", ha[0], ia);\n this._attr(\"translateY\", ha[1], ia);\n return this;\n default:\n throw new Error(((ga + \" is not a supported attribute!\")));\n };\n ;\n if (((this.state.attrs[ga] === undefined))) {\n this.state.attrs[ga] = {\n };\n }\n ;\n ;\n if (ja) {\n this.state.attrs[ga].auto = true;\n }\n ;\n ;\n switch (ia) {\n case y:\n this.state.attrs[ga].start = ha;\n break;\n case x:\n this.state.attrs[ga].by = true;\n case w:\n this.state.attrs[ga].value = ha;\n break;\n };\n ;\n };\n function z(ga) {\n var ha = parseInt(k.get(ga, \"paddingLeft\"), 10), ia = parseInt(k.get(ga, \"paddingRight\"), 10), ja = parseInt(k.get(ga, \"borderLeftWidth\"), 10), ka = parseInt(k.get(ga, \"borderRightWidth\"), 10);\n return ((((((((ga.offsetWidth - ((ha ? ha : 0)))) - ((ia ? ia : 0)))) - ((ja ? ja : 0)))) - ((ka ? ka : 0))));\n };\n;\n function aa(ga) {\n var ha = parseInt(k.get(ga, \"paddingTop\"), 10), ia = parseInt(k.get(ga, \"paddingBottom\"), 10), ja = parseInt(k.get(ga, \"borderTopWidth\"), 10), ka = parseInt(k.get(ga, \"borderBottomWidth\"), 10);\n return ((((((((ga.offsetHeight - ((ha ? ha : 0)))) - ((ia ? ia : 0)))) - ((ja ? ja : 0)))) - ((ka ? ka : 0))));\n };\n;\n p.prototype.to = function(ga, ha) {\n if (((ha === undefined))) {\n this._attr(this.last_attr, ga, w);\n }\n else {\n this._attr(ga, ha, w);\n this.last_attr = ga;\n }\n ;\n ;\n return this;\n };\n p.prototype.by = function(ga, ha) {\n if (((ha === undefined))) {\n this._attr(this.last_attr, ga, x);\n }\n else {\n this._attr(ga, ha, x);\n this.last_attr = ga;\n }\n ;\n ;\n return this;\n };\n p.prototype.from = function(ga, ha) {\n if (((ha === undefined))) {\n this._attr(this.last_attr, ga, y);\n }\n else {\n this._attr(ga, ha, y);\n this.last_attr = ga;\n }\n ;\n ;\n return this;\n };\n p.prototype.duration = function(ga) {\n this.state.duration = ((ga ? ga : 0));\n return this;\n };\n p.prototype.checkpoint = function(ga, ha) {\n if (((ga === undefined))) {\n ga = 1;\n }\n ;\n ;\n this.state.checkpoint = ga;\n this.queue.push(this.state);\n this._reset_state();\n this.state.checkpointcb = ha;\n return this;\n };\n p.prototype.blind = function() {\n this.state.blind = true;\n return this;\n };\n p.prototype.hide = function() {\n this.state.hide = true;\n return this;\n };\n p.prototype.show = function() {\n this.state.show = true;\n return this;\n };\n p.prototype.ease = function(ga) {\n this.state.ease = ga;\n return this;\n };\n p.prototype.go = function() {\n var ga = JSBNG__Date.now();\n this.queue.push(this.state);\n for (var ha = 0; ((ha < this.queue.length)); ha++) {\n this.queue[ha].start = ((ga - v));\n if (this.queue[ha].checkpoint) {\n ga += ((this.queue[ha].checkpoint * this.queue[ha].duration));\n }\n ;\n ;\n };\n ;\n da(this);\n return this;\n };\n p.prototype._show = function() {\n h.show(this.obj);\n };\n p.prototype._hide = function() {\n h.hide(this.obj);\n };\n p.prototype._frame = function(ga) {\n var ha = true, ia = false, ja;\n function ka(db) {\n return ((JSBNG__document.documentElement[db] || JSBNG__document.body[db]));\n };\n ;\n for (var la = 0; ((la < this.queue.length)); la++) {\n var ma = this.queue[la];\n if (((ma.start > ga))) {\n ha = false;\n continue;\n }\n ;\n ;\n if (ma.checkpointcb) {\n this._callback(ma.checkpointcb, ((ga - ma.start)));\n ma.checkpointcb = null;\n }\n ;\n ;\n if (((ma.started === undefined))) {\n if (ma.show) {\n this._show();\n }\n ;\n ;\n {\n var fin112keys = ((window.top.JSBNG_Replay.forInKeys)((ma.attrs))), fin112i = (0);\n var na;\n for (; (fin112i < fin112keys.length); (fin112i++)) {\n ((na) = (fin112keys[fin112i]));\n {\n if (((ma.attrs[na].start !== undefined))) {\n continue;\n }\n ;\n ;\n switch (na) {\n case \"backgroundColor\":\n \n case \"borderColor\":\n \n case \"color\":\n ja = ca(k.get(this.obj, ((((na == \"borderColor\")) ? \"borderLeftColor\" : na))));\n if (ma.attrs[na].by) {\n ma.attrs[na].value[0] = Math.min(255, Math.max(0, ((ma.attrs[na].value[0] + ja[0]))));\n ma.attrs[na].value[1] = Math.min(255, Math.max(0, ((ma.attrs[na].value[1] + ja[1]))));\n ma.attrs[na].value[2] = Math.min(255, Math.max(0, ((ma.attrs[na].value[2] + ja[2]))));\n }\n ;\n ;\n break;\n case \"opacity\":\n ja = k.getOpacity(this.obj);\n if (ma.attrs[na].by) {\n ma.attrs[na].value = Math.min(1, Math.max(0, ((ma.attrs[na].value + ja))));\n }\n ;\n ;\n break;\n case \"height\":\n ja = aa(this.obj);\n if (ma.attrs[na].by) {\n ma.attrs[na].value += ja;\n }\n ;\n ;\n break;\n case \"width\":\n ja = z(this.obj);\n if (ma.attrs[na].by) {\n ma.attrs[na].value += ja;\n }\n ;\n ;\n break;\n case \"scrollLeft\":\n \n case \"scrollTop\":\n ja = ((((this.obj === JSBNG__document.body)) ? ka(na) : this.obj[na]));\n if (ma.attrs[na].by) {\n ma.attrs[na].value += ja;\n }\n ;\n ;\n ma[((\"last\" + na))] = ja;\n break;\n case \"rotateX\":\n \n case \"rotateY\":\n \n case \"rotateZ\":\n \n case \"translateX\":\n \n case \"translateY\":\n \n case \"translateZ\":\n ja = i.get(this.obj, na, 0);\n if (ma.attrs[na].by) {\n ma.attrs[na].value += ja;\n }\n ;\n ;\n break;\n case \"scaleX\":\n \n case \"scaleY\":\n \n case \"scaleZ\":\n ja = i.get(this.obj, na, 1);\n if (ma.attrs[na].by) {\n ma.attrs[na].value += ja;\n }\n ;\n ;\n break;\n default:\n ja = ((parseInt(k.get(this.obj, na), 10) || 0));\n if (ma.attrs[na].by) {\n ma.attrs[na].value += ja;\n }\n ;\n ;\n break;\n };\n ;\n ma.attrs[na].start = ja;\n };\n };\n };\n ;\n if (((((ma.attrs.height && ma.attrs.height.auto)) || ((ma.attrs.width && ma.attrs.width.auto))))) {\n this._destroy_container();\n {\n var fin113keys = ((window.top.JSBNG_Replay.forInKeys)(({\n height: 1,\n width: 1,\n fontSize: 1,\n borderLeftWidth: 1,\n borderRightWidth: 1,\n borderTopWidth: 1,\n borderBottomWidth: 1,\n paddingLeft: 1,\n paddingRight: 1,\n paddingTop: 1,\n paddingBottom: 1\n }))), fin113i = (0);\n var na;\n for (; (fin113i < fin113keys.length); (fin113i++)) {\n ((na) = (fin113keys[fin113i]));\n {\n if (ma.attrs[na]) {\n this.obj.style[na] = ((ma.attrs[na].value + ((((typeof ma.attrs[na].value == \"number\")) ? \"px\" : \"\"))));\n }\n ;\n ;\n };\n };\n };\n ;\n if (((ma.attrs.height && ma.attrs.height.auto))) {\n ma.attrs.height.value = aa(this.obj);\n }\n ;\n ;\n if (((ma.attrs.width && ma.attrs.width.auto))) {\n ma.attrs.width.value = z(this.obj);\n }\n ;\n ;\n }\n ;\n ;\n ma.started = true;\n if (ma.blind) {\n this._build_container();\n }\n ;\n ;\n }\n ;\n ;\n var oa = ((((ga - ma.start)) / ma.duration));\n if (((oa >= 1))) {\n oa = 1;\n if (ma.hide) {\n this._hide();\n }\n ;\n ;\n }\n else ha = false;\n ;\n ;\n var pa = ((ma.ease ? ma.ease(oa) : oa));\n if (((((!ia && ((oa != 1)))) && ma.blind))) {\n ia = true;\n }\n ;\n ;\n {\n var fin114keys = ((window.top.JSBNG_Replay.forInKeys)((ma.attrs))), fin114i = (0);\n var na;\n for (; (fin114i < fin114keys.length); (fin114i++)) {\n ((na) = (fin114keys[fin114i]));\n {\n switch (na) {\n case \"backgroundColor\":\n \n case \"borderColor\":\n \n case \"color\":\n if (((ma.attrs[na].start[3] != ma.attrs[na].value[3]))) {\n this.obj.style[na] = ((((((((((((((((\"rgba(\" + ba(pa, ma.attrs[na].start[0], ma.attrs[na].value[0], true))) + \",\")) + ba(pa, ma.attrs[na].start[1], ma.attrs[na].value[1], true))) + \",\")) + ba(pa, ma.attrs[na].start[2], ma.attrs[na].value[2], true))) + \",\")) + ba(pa, ma.attrs[na].start[3], ma.attrs[na].value[3], false))) + \")\"));\n }\n else this.obj.style[na] = ((((((((((((\"rgb(\" + ba(pa, ma.attrs[na].start[0], ma.attrs[na].value[0], true))) + \",\")) + ba(pa, ma.attrs[na].start[1], ma.attrs[na].value[1], true))) + \",\")) + ba(pa, ma.attrs[na].start[2], ma.attrs[na].value[2], true))) + \")\"));\n ;\n ;\n break;\n case \"opacity\":\n k.set(this.obj, \"opacity\", ba(pa, ma.attrs[na].start, ma.attrs[na].value));\n break;\n case \"height\":\n \n case \"width\":\n this.obj.style[na] = ((((((pa == 1)) && ma.attrs[na].auto)) ? \"auto\" : ((ba(pa, ma.attrs[na].start, ma.attrs[na].value, true) + \"px\"))));\n break;\n case \"scrollLeft\":\n \n case \"scrollTop\":\n var qa = ((this.obj === JSBNG__document.body));\n ja = ((qa ? ka(na) : this.obj[na]));\n if (((ma[((\"last\" + na))] !== ja))) {\n delete ma.attrs[na];\n }\n else {\n var ra = ba(pa, ma.attrs[na].start, ma.attrs[na].value, true);\n if (!qa) {\n ra = this.obj[na] = ra;\n }\n else {\n if (((na == \"scrollLeft\"))) {\n a.JSBNG__scrollTo(ra, ka(\"scrollTop\"));\n }\n else a.JSBNG__scrollTo(ka(\"scrollLeft\"), ra);\n ;\n ;\n ra = ka(na);\n }\n ;\n ;\n ma[((\"last\" + na))] = ra;\n }\n ;\n ;\n break;\n case \"translateX\":\n \n case \"translateY\":\n \n case \"translateZ\":\n \n case \"rotateX\":\n \n case \"rotateY\":\n \n case \"rotateZ\":\n \n case \"scaleX\":\n \n case \"scaleY\":\n \n case \"scaleZ\":\n i.set(this.obj, na, ba(pa, ma.attrs[na].start, ma.attrs[na].value, false));\n break;\n default:\n this.obj.style[na] = ((ba(pa, ma.attrs[na].start, ma.attrs[na].value, true) + \"px\"));\n break;\n };\n ;\n };\n };\n };\n ;\n var sa = null, ta = i.get(this.obj, \"translateX\", 0), ua = i.get(this.obj, \"translateY\", 0), va = i.get(this.obj, \"translateZ\", 0);\n if (((((ta || ua)) || va))) {\n sa = u(sa, [1,0,0,0,0,1,0,0,0,0,1,0,ta,ua,va,1,]);\n }\n ;\n ;\n var wa = i.get(this.obj, \"scaleX\", 1), xa = i.get(this.obj, \"scaleY\", 1), ya = i.get(this.obj, \"scaleZ\", 1);\n if (((((((wa - 1)) || ((xa - 1)))) || ((ya - 1))))) {\n sa = u(sa, [wa,0,0,0,0,xa,0,0,0,0,ya,0,0,0,0,1,]);\n }\n ;\n ;\n var za = i.get(this.obj, \"rotateX\", 0);\n if (za) {\n sa = u(sa, [1,0,0,0,0,Math.cos(za),Math.sin(-za),0,0,Math.sin(za),Math.cos(za),0,0,0,0,1,]);\n }\n ;\n ;\n var ab = i.get(this.obj, \"rotateY\", 0);\n if (ab) {\n sa = u(sa, [Math.cos(ab),0,Math.sin(ab),0,0,1,0,0,Math.sin(-ab),0,Math.cos(ab),0,0,0,0,1,]);\n }\n ;\n ;\n var bb = i.get(this.obj, \"rotateZ\", 0);\n if (bb) {\n sa = u(sa, [Math.cos(bb),Math.sin(-bb),0,0,Math.sin(bb),Math.cos(bb),0,0,0,0,1,0,0,0,0,1,]);\n }\n ;\n ;\n if (sa) {\n var cb = q(sa);\n k.apply(this.obj, {\n \"-webkit-transform\": cb,\n \"-moz-transform\": cb,\n \"-ms-transform\": cb,\n \"-o-transform\": cb,\n transform: cb\n });\n }\n else if (ha) {\n k.apply(this.obj, {\n \"-webkit-transform\": null,\n \"-moz-transform\": null,\n \"-ms-transform\": null,\n \"-o-transform\": null,\n transform: null\n });\n }\n \n ;\n ;\n if (((oa == 1))) {\n this.queue.splice(la--, 1);\n this._callback(ma.ondone, ((((ga - ma.start)) - ma.duration)));\n }\n ;\n ;\n };\n ;\n if (((!ia && this.container_div))) {\n this._destroy_container();\n }\n ;\n ;\n return !ha;\n };\n p.prototype.ondone = function(ga) {\n this.state.ondone = ga;\n return this;\n };\n p.prototype._callback = function(ga, ha) {\n if (ga) {\n v = ha;\n ga.call(this);\n v = 0;\n }\n ;\n ;\n };\n function ba(ga, ha, ia, ja) {\n return ((ja ? parseInt : parseFloat))(((((((ia - ha)) * ga)) + ha)), 10);\n };\n;\n function ca(ga) {\n var ha = /^#([a-f0-9]{1,2})([a-f0-9]{1,2})([a-f0-9]{1,2})$/i.exec(ga);\n if (ha) {\n return [parseInt(((((ha[1].length == 1)) ? ((ha[1] + ha[1])) : ha[1])), 16),parseInt(((((ha[2].length == 1)) ? ((ha[2] + ha[2])) : ha[2])), 16),parseInt(((((ha[3].length == 1)) ? ((ha[3] + ha[3])) : ha[3])), 16),1,];\n }\n else {\n var ia = /^rgba? *\\(([0-9]+), *([0-9]+), *([0-9]+)(?:, *([0-9\\.]+))?\\)$/.exec(ga);\n if (ia) {\n return [parseInt(ia[1], 10),parseInt(ia[2], 10),parseInt(ia[3], 10),((ia[4] ? parseFloat(ia[4]) : 1)),];\n }\n else if (((ga == \"transparent\"))) {\n return [255,255,255,0,];\n }\n else throw \"Named color attributes are not supported.\"\n \n ;\n }\n ;\n ;\n };\n;\n function da(ga) {\n n.push(ga);\n if (((n.length === 1))) {\n if (!m) {\n var ha = ((((a.JSBNG__requestAnimationFrame || a.JSBNG__webkitRequestAnimationFrame)) || a.JSBNG__mozRequestAnimationFrame));\n if (ha) {\n m = ha.bind(a);\n }\n ;\n ;\n }\n ;\n ;\n if (m) {\n m(fa);\n }\n else o = JSBNG__setInterval(fa, 20, false);\n ;\n ;\n }\n ;\n ;\n if (m) {\n ea();\n }\n ;\n ;\n fa(JSBNG__Date.now(), true);\n };\n;\n function ea() {\n if (!m) {\n throw new Error(\"Ending timer only valid with requestAnimationFrame\");\n }\n ;\n ;\n var ga = 0;\n for (var ha = 0; ((ha < n.length)); ha++) {\n var ia = n[ha];\n for (var ja = 0; ((ja < ia.queue.length)); ja++) {\n var ka = ((ia.queue[ja].start + ia.queue[ja].duration));\n if (((ka > ga))) {\n ga = ka;\n }\n ;\n ;\n };\n ;\n };\n ;\n if (o) {\n JSBNG__clearTimeout(o);\n o = null;\n }\n ;\n ;\n var la = JSBNG__Date.now();\n if (((ga > la))) {\n o = JSBNG__setTimeout(l(fa), ((ga - la)), false);\n }\n ;\n ;\n };\n;\n function fa(ga, ha) {\n var ia = JSBNG__Date.now();\n for (var ja = ((((ha === true)) ? ((n.length - 1)) : 0)); ((ja < n.length)); ja++) {\n try {\n if (!n[ja]._frame(ia)) {\n n.splice(ja--, 1);\n }\n ;\n ;\n } catch (ka) {\n n.splice(ja--, 1);\n };\n ;\n };\n ;\n if (((n.length === 0))) {\n if (o) {\n if (m) {\n JSBNG__clearTimeout(o);\n }\n else JSBNG__clearInterval(o);\n ;\n ;\n o = null;\n }\n ;\n ;\n }\n else if (m) {\n m(fa);\n }\n \n ;\n ;\n };\n;\n p.ease = {\n };\n p.ease.begin = function(ga) {\n return ((Math.sin(((((Math.PI / 2)) * ((ga - 1))))) + 1));\n };\n p.ease.end = function(ga) {\n return Math.sin(((((14085 * Math.PI)) * ga)));\n };\n p.ease.both = function(ga) {\n return ((((14134 * Math.sin(((Math.PI * ((ga - 14158))))))) + 14163));\n };\n p.prependInsert = function(ga, ha) {\n p.insert(ga, ha, j.prependContent);\n };\n p.appendInsert = function(ga, ha) {\n p.insert(ga, ha, j.appendContent);\n };\n p.insert = function(ga, ha, ia) {\n k.set(ha, \"opacity\", 0);\n ia(ga, ha);\n new p(ha).from(\"opacity\", 0).to(\"opacity\", 1).duration(400).go();\n };\n e.exports = p;\n});\n__d(\"BootloadedReact\", [\"Bootloader\",], function(a, b, c, d, e, f) {\n var g = b(\"Bootloader\"), h = function(j) {\n g.loadModules([\"React\",], j);\n }, i = {\n isValidComponent: function(j) {\n return ((((j && ((typeof j.mountComponentIntoNode === \"function\")))) && ((typeof j.receiveProps === \"function\"))));\n },\n initializeTouchEvents: function(j, k) {\n h(function(l) {\n l.initializeTouchEvents(j);\n ((k && k()));\n });\n },\n createClass: function(j, k) {\n h(function(l) {\n var m = l.createClass(j);\n ((k && k(m)));\n });\n },\n renderComponent: function(j, k, l) {\n h(function(m) {\n var n = m.renderComponent(j, k);\n ((l && l(n)));\n });\n },\n unmountAndReleaseReactRootNode: function(j, k) {\n h(function(l) {\n l.unmountAndReleaseReactRootNode(j);\n ((k && k()));\n });\n }\n };\n e.exports = i;\n});\n__d(\"ContextualThing\", [\"DOM\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"ge\"), i = {\n register: function(j, k) {\n j.setAttribute(\"data-ownerid\", g.getID(k));\n },\n containsIncludingLayers: function(j, k) {\n while (k) {\n if (g.contains(j, k)) {\n return true;\n }\n ;\n ;\n k = i.getContext(k);\n };\n ;\n return false;\n },\n getContext: function(j) {\n var k;\n while (j) {\n if (((j.getAttribute && (k = j.getAttribute(\"data-ownerid\"))))) {\n return h(k);\n }\n ;\n ;\n j = j.parentNode;\n };\n ;\n return null;\n }\n };\n e.exports = i;\n});\n__d(\"DOMPosition\", [\"DOMDimensions\",\"DOMQuery\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMDimensions\"), h = b(\"DOMQuery\"), i = {\n getScrollPosition: function() {\n var j = h.getDocumentScrollElement();\n return {\n x: j.scrollLeft,\n y: j.scrollTop\n };\n },\n getNormalizedScrollPosition: function() {\n var j = i.getScrollPosition(), k = g.getDocumentDimensions(), l = g.getViewportDimensions(), m = ((k.height - l.height)), n = ((k.width - l.width));\n return {\n y: Math.max(0, Math.min(j.y, m)),\n x: Math.max(0, Math.min(j.x, n))\n };\n },\n getElementPosition: function(j) {\n if (!j) {\n return;\n }\n ;\n ;\n var k = JSBNG__document.documentElement;\n if (((!((\"getBoundingClientRect\" in j)) || !h.contains(k, j)))) {\n return {\n x: 0,\n y: 0\n };\n }\n ;\n ;\n var l = j.getBoundingClientRect(), m = ((Math.round(l.left) - k.clientLeft)), n = ((Math.round(l.JSBNG__top) - k.clientTop));\n return {\n x: m,\n y: n\n };\n }\n };\n e.exports = i;\n});\n__d(\"Form\", [\"JSBNG__Event\",\"AsyncRequest\",\"AsyncResponse\",\"JSBNG__CSS\",\"DOM\",\"DOMPosition\",\"DOMQuery\",\"DataStore\",\"Env\",\"Input\",\"Parent\",\"URI\",\"createArrayFrom\",\"trackReferrer\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"AsyncRequest\"), i = b(\"AsyncResponse\"), j = b(\"JSBNG__CSS\"), k = b(\"DOM\"), l = b(\"DOMPosition\"), m = b(\"DOMQuery\"), n = b(\"DataStore\"), o = b(\"Env\"), p = b(\"Input\"), q = b(\"Parent\"), r = b(\"URI\"), s = b(\"createArrayFrom\"), t = b(\"trackReferrer\"), u = ((\"JSBNG__FileList\" in window)), v = ((\"JSBNG__FormData\" in window));\n function w(y) {\n var z = {\n };\n r.implodeQuery(y).split(\"&\").forEach(function(aa) {\n if (aa) {\n var ba = /^([^=]*)(?:=(.*))?$/.exec(aa), ca = r.decodeComponent(ba[1]), da = ((ba[2] ? r.decodeComponent(ba[2]) : null));\n z[ca] = da;\n }\n ;\n ;\n });\n return z;\n };\n;\n var x = {\n getInputs: function(y) {\n y = ((y || JSBNG__document));\n return [].concat(s(m.scry(y, \"input\")), s(m.scry(y, \"select\")), s(m.scry(y, \"textarea\")), s(m.scry(y, \"button\")));\n },\n getInputsByName: function(y) {\n var z = {\n };\n x.getInputs(y).forEach(function(aa) {\n var ba = z[aa.JSBNG__name];\n z[aa.JSBNG__name] = ((((typeof ba === \"undefined\")) ? aa : [aa,].concat(ba)));\n });\n return z;\n },\n getSelectValue: function(y) {\n return y.options[y.selectedIndex].value;\n },\n setSelectValue: function(y, z) {\n for (var aa = 0; ((aa < y.options.length)); ++aa) {\n if (((y.options[aa].value == z))) {\n y.selectedIndex = aa;\n break;\n }\n ;\n ;\n };\n ;\n },\n getRadioValue: function(y) {\n for (var z = 0; ((z < y.length)); z++) {\n if (y[z].checked) {\n return y[z].value;\n }\n ;\n ;\n };\n ;\n return null;\n },\n getElements: function(y) {\n return s(((((((y.tagName == \"FORM\")) && ((y.elements != y)))) ? y.elements : x.getInputs(y))));\n },\n getAttribute: function(y, z) {\n return ((((y.getAttributeNode(z) || {\n })).value || null));\n },\n setDisabled: function(y, z) {\n x.getElements(y).forEach(function(aa) {\n if (((aa.disabled !== undefined))) {\n var ba = n.get(aa, \"origDisabledState\");\n if (z) {\n if (((ba === undefined))) {\n n.set(aa, \"origDisabledState\", aa.disabled);\n }\n ;\n ;\n aa.disabled = z;\n }\n else if (((ba !== true))) {\n aa.disabled = false;\n }\n \n ;\n ;\n }\n ;\n ;\n });\n },\n bootstrap: function(y, z) {\n var aa = ((x.getAttribute(y, \"method\") || \"GET\")).toUpperCase();\n z = ((q.byTag(z, \"button\") || z));\n var ba = ((q.byClass(z, \"stat_elem\") || y));\n if (j.hasClass(ba, \"async_saving\")) {\n return;\n }\n ;\n ;\n if (((z && ((((((z.form !== y)) || ((((z.nodeName != \"INPUT\")) && ((z.nodeName != \"BUTTON\")))))) || ((z.type != \"submit\"))))))) {\n var ca = m.scry(y, \".enter_submit_target\")[0];\n ((ca && (z = ca)));\n }\n ;\n ;\n var da = x.serialize(y, z);\n x.setDisabled(y, true);\n var ea = ((x.getAttribute(y, \"ajaxify\") || x.getAttribute(y, \"action\")));\n t(y, ea);\n var fa = new h(ea);\n fa.setData(da).setNectarModuleDataSafe(y).setReadOnly(((aa == \"GET\"))).setMethod(aa).setRelativeTo(y).setStatusElement(ba).setInitialHandler(x.setDisabled.curry(y, false)).setHandler(function(ga) {\n g.fire(y, \"success\", {\n response: ga\n });\n }).setErrorHandler(function(ga) {\n if (((g.fire(y, \"error\", {\n response: ga\n }) !== false))) {\n i.defaultErrorHandler(ga);\n }\n ;\n ;\n }).setFinallyHandler(x.setDisabled.curry(y, false)).send();\n },\n forEachValue: function(y, z, aa) {\n x.getElements(y).forEach(function(ba) {\n if (((((ba.JSBNG__name && !ba.disabled)) && ((ba.type !== \"submit\"))))) {\n if (((((((((((!ba.type || ((((((ba.type === \"radio\")) || ((ba.type === \"checkbox\")))) && ba.checked)))) || ((ba.type === \"text\")))) || ((ba.type === \"password\")))) || ((ba.type === \"hidden\")))) || ((ba.nodeName === \"TEXTAREA\"))))) {\n aa(ba.type, ba.JSBNG__name, p.getValue(ba));\n }\n else if (((ba.nodeName === \"SELECT\"))) {\n for (var ca = 0, da = ba.options.length; ((ca < da)); ca++) {\n var ea = ba.options[ca];\n if (ea.selected) {\n aa(\"select\", ba.JSBNG__name, ea.value);\n }\n ;\n ;\n };\n ;\n }\n else if (((u && ((ba.type === \"file\"))))) {\n var fa = ba.files;\n for (var ga = 0; ((ga < fa.length)); ga++) {\n aa(\"file\", ba.JSBNG__name, fa.JSBNG__item(ga));\n ;\n };\n ;\n }\n \n \n ;\n }\n ;\n ;\n });\n if (((((((((z && z.JSBNG__name)) && ((z.type === \"submit\")))) && m.contains(y, z))) && m.isNodeOfType(z, [\"input\",\"button\",])))) {\n aa(\"submit\", z.JSBNG__name, z.value);\n }\n ;\n ;\n },\n createFormData: function(y, z) {\n if (!v) {\n return null;\n }\n ;\n ;\n var aa = new JSBNG__FormData();\n if (y) {\n if (m.isNode(y)) {\n x.forEachValue(y, z, function(da, ea, fa) {\n aa.append(ea, fa);\n });\n }\n else {\n var ba = w(y);\n {\n var fin115keys = ((window.top.JSBNG_Replay.forInKeys)((ba))), fin115i = (0);\n var ca;\n for (; (fin115i < fin115keys.length); (fin115i++)) {\n ((ca) = (fin115keys[fin115i]));\n {\n aa.append(ca, ba[ca]);\n ;\n };\n };\n };\n ;\n }\n ;\n }\n ;\n ;\n return aa;\n },\n serialize: function(y, z) {\n var aa = {\n };\n x.forEachValue(y, z, function(ba, ca, da) {\n if (((ba === \"file\"))) {\n return;\n }\n ;\n ;\n x._serializeHelper(aa, ca, da);\n });\n return x._serializeFix(aa);\n },\n _serializeHelper: function(y, z, aa) {\n var ba = Object.prototype.hasOwnProperty, ca = /([^\\]]+)\\[([^\\]]*)\\](.*)/.exec(z);\n if (ca) {\n if (((!y[ca[1]] || !ba.call(y, ca[1])))) {\n var da;\n y[ca[1]] = da = {\n };\n if (((y[ca[1]] !== da))) {\n return;\n }\n ;\n ;\n }\n ;\n ;\n var ea = 0;\n if (((ca[2] === \"\"))) {\n while (((y[ca[1]][ea] !== undefined))) {\n ea++;\n ;\n };\n ;\n }\n else ea = ca[2];\n ;\n ;\n if (((ca[3] === \"\"))) {\n y[ca[1]][ea] = aa;\n }\n else x._serializeHelper(y[ca[1]], ea.concat(ca[3]), aa);\n ;\n ;\n }\n else y[z] = aa;\n ;\n ;\n },\n _serializeFix: function(y) {\n {\n var fin116keys = ((window.top.JSBNG_Replay.forInKeys)((y))), fin116i = (0);\n var z;\n for (; (fin116i < fin116keys.length); (fin116i++)) {\n ((z) = (fin116keys[fin116i]));\n {\n if (((y[z] instanceof Object))) {\n y[z] = x._serializeFix(y[z]);\n }\n ;\n ;\n };\n };\n };\n ;\n var aa = Object.keys(y);\n if (((((aa.length === 0)) || aa.some(isNaN)))) {\n return y;\n }\n ;\n ;\n aa.sort(function(da, ea) {\n return ((da - ea));\n });\n var ba = 0, ca = aa.every(function(da) {\n return ((+da === ba++));\n });\n if (ca) {\n return aa.map(function(da) {\n return y[da];\n });\n }\n ;\n ;\n return y;\n },\n post: function(y, z, aa) {\n var ba = JSBNG__document.createElement(\"form\");\n ba.action = y.toString();\n ba.method = \"POST\";\n ba.style.display = \"none\";\n if (aa) {\n ba.target = aa;\n }\n ;\n ;\n z.fb_dtsg = o.fb_dtsg;\n x.createHiddenInputs(z, ba);\n m.getRootElement().appendChild(ba);\n ba.submit();\n return false;\n },\n createHiddenInputs: function(y, z, aa, ba) {\n aa = ((aa || {\n }));\n var ca = w(y);\n {\n var fin117keys = ((window.top.JSBNG_Replay.forInKeys)((ca))), fin117i = (0);\n var da;\n for (; (fin117i < fin117keys.length); (fin117i++)) {\n ((da) = (fin117keys[fin117i]));\n {\n if (((ca[da] === null))) {\n continue;\n }\n ;\n ;\n if (((aa[da] && ba))) {\n aa[da].value = ca[da];\n }\n else {\n var ea = k.create(\"input\", {\n type: \"hidden\",\n JSBNG__name: da,\n value: ca[da]\n });\n aa[da] = ea;\n z.appendChild(ea);\n }\n ;\n ;\n };\n };\n };\n ;\n return aa;\n },\n getFirstElement: function(y, z) {\n z = ((z || [\"input[type=\\\"text\\\"]\",\"textarea\",\"input[type=\\\"password\\\"]\",\"input[type=\\\"button\\\"]\",\"input[type=\\\"submit\\\"]\",]));\n var aa = [];\n for (var ba = 0; ((ba < z.length)); ba++) {\n aa = m.scry(y, z[ba]);\n for (var ca = 0; ((ca < aa.length)); ca++) {\n var da = aa[ca];\n try {\n var fa = l.getElementPosition(da);\n if (((((fa.y > 0)) && ((fa.x > 0))))) {\n return da;\n }\n ;\n ;\n } catch (ea) {\n \n };\n ;\n };\n ;\n };\n ;\n return null;\n },\n focusFirst: function(y) {\n var z = x.getFirstElement(y);\n if (z) {\n z.JSBNG__focus();\n return true;\n }\n ;\n ;\n return false;\n }\n };\n e.exports = x;\n});\n__d(\"HistoryManager\", [\"JSBNG__Event\",\"function-extensions\",\"Cookie\",\"Env\",\"URI\",\"UserAgent\",\"copyProperties\",\"emptyFunction\",\"goOrReplace\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\");\n b(\"function-extensions\");\n var h = b(\"Cookie\"), i = b(\"Env\"), j = b(\"URI\"), k = b(\"UserAgent\"), l = b(\"copyProperties\"), m = b(\"emptyFunction\"), n = b(\"goOrReplace\"), o = {\n _IFRAME_BASE_URI: \"http://static.ak.facebook.com/common/history_manager.php\",\n JSBNG__history: null,\n current: 0,\n fragment: null,\n _setIframeSrcFragment: function(p) {\n p = p.toString();\n var q = ((o.JSBNG__history.length - 1));\n o.iframe.src = ((((((((o._IFRAME_BASE_URI + \"?|index=\")) + q)) + \"#\")) + encodeURIComponent(p)));\n return o;\n },\n getIframeSrcFragment: function() {\n return decodeURIComponent(j(o.iframe.contentWindow.JSBNG__document.JSBNG__location.href).getFragment());\n },\n nextframe: function(p, q) {\n if (q) {\n o._setIframeSrcFragment(p);\n return;\n }\n ;\n ;\n if (((p !== undefined))) {\n o.iframeQueue.push(p);\n }\n else {\n o.iframeQueue.splice(0, 1);\n o.iframeTimeout = null;\n o.checkURI();\n }\n ;\n ;\n if (((o.iframeQueue.length && !o.iframeTimeout))) {\n var r = o.iframeQueue[0];\n o.iframeTimeout = JSBNG__setTimeout(function() {\n o._setIframeSrcFragment(r);\n }, 100, false);\n }\n ;\n ;\n },\n isInitialized: function() {\n return !!o._initialized;\n },\n init: function() {\n if (((!i.ALLOW_TRANSITION_IN_IFRAME && ((window != window.JSBNG__top))))) {\n return;\n }\n ;\n ;\n if (o._initialized) {\n return o;\n }\n ;\n ;\n var p = j(), q = ((p.getFragment() || \"\"));\n if (((q.charAt(0) === \"!\"))) {\n q = q.substr(1);\n p.setFragment(q);\n }\n ;\n ;\n if (((j.getRequestURI(false).getProtocol().toLowerCase() == \"https\"))) {\n o._IFRAME_BASE_URI = \"https://s-static.ak.facebook.com/common/history_manager.php\";\n }\n ;\n ;\n l(o, {\n _initialized: true,\n fragment: q,\n orig_fragment: q,\n JSBNG__history: [p,],\n callbacks: [],\n lastChanged: JSBNG__Date.now(),\n canonical: j(\"#\"),\n fragmentTimeout: null,\n user: 0,\n iframeTimeout: null,\n iframeQueue: [],\n enabled: true,\n debug: m\n });\n if (((window.JSBNG__history && JSBNG__history.pushState))) {\n this.lastURI = JSBNG__document.JSBNG__URL;\n window.JSBNG__history.replaceState(this.lastURI, null);\n g.listen(window, \"popstate\", function(r) {\n if (((((r && r.state)) && ((o.lastURI != r.state))))) {\n o.lastURI = r.state;\n o.lastChanged = JSBNG__Date.now();\n o.notify(j(r.state).getUnqualifiedURI().toString());\n }\n ;\n ;\n }.bind(o));\n if (((((k.webkit() < 534)) || ((k.chrome() <= 13))))) {\n JSBNG__setInterval(o.checkURI, 42, false);\n o._updateRefererURI(this.lastURI);\n }\n ;\n ;\n return o;\n }\n ;\n ;\n o._updateRefererURI(j.getRequestURI(false));\n if (((((k.webkit() < 500)) || ((k.firefox() < 2))))) {\n o.enabled = false;\n return o;\n }\n ;\n ;\n if (((k.ie() < 8))) {\n o.iframe = JSBNG__document.createElement(\"div\");\n l(o.iframe.style, {\n width: \"0\",\n height: \"0\",\n frameborder: \"0\",\n left: \"0\",\n JSBNG__top: \"0\",\n position: \"absolute\"\n });\n o._setIframeSrcFragment(q);\n JSBNG__document.body.insertBefore(o.iframe, JSBNG__document.body.firstChild);\n }\n else if (((\"JSBNG__onhashchange\" in window))) {\n g.listen(window, \"hashchange\", function() {\n o.checkURI.bind(o).defer();\n });\n }\n else JSBNG__setInterval(o.checkURI, 42, false);\n \n ;\n ;\n return o;\n },\n registerURIHandler: function(p) {\n o.callbacks.push(p);\n return o;\n },\n setCanonicalLocation: function(p) {\n o.canonical = j(p);\n return o;\n },\n notify: function(p) {\n if (((p == o.orig_fragment))) {\n p = o.canonical.getFragment();\n }\n ;\n ;\n for (var q = 0; ((q < o.callbacks.length)); q++) {\n try {\n if (o.callbacks[q](p)) {\n return true;\n }\n ;\n ;\n } catch (r) {\n \n };\n ;\n };\n ;\n return false;\n },\n checkURI: function() {\n if (((((JSBNG__Date.now() - o.lastChanged)) < 400))) {\n return;\n }\n ;\n ;\n if (((window.JSBNG__history && JSBNG__history.pushState))) {\n var p = j(JSBNG__document.JSBNG__URL).removeQueryData(\"ref\").toString(), q = j(o.lastURI).removeQueryData(\"ref\").toString();\n if (((p != q))) {\n o.lastChanged = JSBNG__Date.now();\n o.lastURI = p;\n if (((k.webkit() < 534))) {\n o._updateRefererURI(p);\n }\n ;\n ;\n o.notify(j(p).getUnqualifiedURI().toString());\n }\n ;\n ;\n return;\n }\n ;\n ;\n if (((((k.ie() < 8)) && o.iframeQueue.length))) {\n return;\n }\n ;\n ;\n if (((k.webkit() && ((window.JSBNG__history.length == 200))))) {\n if (!o.warned) {\n o.warned = true;\n }\n ;\n ;\n return;\n }\n ;\n ;\n var r = j().getFragment();\n if (((r.charAt(0) == \"!\"))) {\n r = r.substr(1);\n }\n ;\n ;\n if (((k.ie() < 8))) {\n r = o.getIframeSrcFragment();\n }\n ;\n ;\n r = r.replace(/%23/g, \"#\");\n if (((r != o.fragment.replace(/%23/g, \"#\")))) {\n o.debug([r,\" vs \",o.fragment,\"whl: \",window.JSBNG__history.length,\"QHL: \",o.JSBNG__history.length,].join(\" \"));\n for (var s = ((o.JSBNG__history.length - 1)); ((s >= 0)); --s) {\n if (((o.JSBNG__history[s].getFragment().replace(/%23/g, \"#\") == r))) {\n break;\n }\n ;\n ;\n };\n ;\n ++o.user;\n if (((s >= 0))) {\n o.go(((s - o.current)));\n }\n else o.go(((\"#\" + r)));\n ;\n ;\n --o.user;\n }\n ;\n ;\n },\n _updateRefererURI: function(p) {\n p = p.toString();\n if (((((p.charAt(0) != \"/\")) && ((p.indexOf(\"//\") == -1))))) {\n return;\n }\n ;\n ;\n var q = new j(window.JSBNG__location);\n if (q.isFacebookURI()) {\n var r = ((q.getPath() + window.JSBNG__location.search));\n }\n else var r = \"\"\n ;\n var s = j(p).getQualifiedURI().setFragment(r).toString(), t = 2048;\n if (((s.length > t))) {\n s = ((s.substring(0, t) + \"...\"));\n }\n ;\n ;\n h.set(\"x-referer\", s);\n },\n go: function(p, q, r) {\n if (((window.JSBNG__history && JSBNG__history.pushState))) {\n ((q || ((typeof (p) == \"number\"))));\n var s = j(p).removeQueryData(\"ref\").toString();\n o.lastChanged = JSBNG__Date.now();\n this.lastURI = s;\n if (r) {\n window.JSBNG__history.replaceState(p, null, s);\n }\n else window.JSBNG__history.pushState(p, null, s);\n ;\n ;\n if (((k.webkit() < 534))) {\n o._updateRefererURI(p);\n }\n ;\n ;\n return false;\n }\n ;\n ;\n o.debug(((\"go: \" + p)));\n if (((q === undefined))) {\n q = true;\n }\n ;\n ;\n if (!o.enabled) {\n if (!q) {\n return false;\n }\n ;\n }\n ;\n ;\n if (((typeof (p) == \"number\"))) {\n if (!p) {\n return false;\n }\n ;\n ;\n var t = ((p + o.current)), u = Math.max(0, Math.min(((o.JSBNG__history.length - 1)), t));\n o.current = u;\n t = ((o.JSBNG__history[u].getFragment() || o.orig_fragment));\n t = j(t).removeQueryData(\"ref\").getUnqualifiedURI().toString();\n o.fragment = t;\n o.lastChanged = JSBNG__Date.now();\n if (((k.ie() < 8))) {\n if (o.fragmentTimeout) {\n JSBNG__clearTimeout(o.fragmentTimeout);\n }\n ;\n ;\n o._temporary_fragment = t;\n o.fragmentTimeout = JSBNG__setTimeout(function() {\n window.JSBNG__location.hash = ((\"#!\" + t));\n delete o._temporary_fragment;\n }, 750, false);\n if (!o.user) {\n o.nextframe(t, r);\n }\n ;\n ;\n }\n else if (!o.user) {\n n(window.JSBNG__location, ((((window.JSBNG__location.href.split(\"#\")[0] + \"#!\")) + t)), r);\n }\n \n ;\n ;\n if (q) {\n o.notify(t);\n }\n ;\n ;\n o._updateRefererURI(t);\n return false;\n }\n ;\n ;\n p = j(p);\n if (((p.getDomain() == j().getDomain()))) {\n p = j(((\"#\" + p.getUnqualifiedURI())));\n }\n ;\n ;\n var v = o.JSBNG__history[o.current].getFragment(), w = p.getFragment();\n if (((((w == v)) || ((((v == o.orig_fragment)) && ((w == o.canonical.getFragment()))))))) {\n if (q) {\n o.notify(w);\n }\n ;\n ;\n o._updateRefererURI(w);\n return false;\n }\n ;\n ;\n if (r) {\n o.current--;\n }\n ;\n ;\n var x = ((((o.JSBNG__history.length - o.current)) - 1));\n o.JSBNG__history.splice(((o.current + 1)), x);\n o.JSBNG__history.push(j(p));\n return o.go(1, q, r);\n },\n getCurrentFragment: function() {\n var p = ((((o._temporary_fragment !== undefined)) ? o._temporary_fragment : j.getRequestURI(false).getFragment()));\n return ((((p == o.orig_fragment)) ? o.canonical.getFragment() : p));\n }\n };\n e.exports = o;\n});\n__d(\"InputSelection\", [\"DOM\",\"Focus\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"Focus\"), i = {\n get: function(j) {\n if (!JSBNG__document.selection) {\n return {\n start: j.selectionStart,\n end: j.selectionEnd\n };\n }\n ;\n ;\n var k = JSBNG__document.selection.createRange();\n if (((k.parentElement() !== j))) {\n return {\n start: 0,\n end: 0\n };\n }\n ;\n ;\n var l = j.value.length;\n if (g.isNodeOfType(j, \"input\")) {\n return {\n start: -k.moveStart(\"character\", -l),\n end: -k.moveEnd(\"character\", -l)\n };\n }\n else {\n var m = k.duplicate();\n m.moveToElementText(j);\n m.setEndPoint(\"StartToEnd\", k);\n var n = ((l - m.text.length));\n m.setEndPoint(\"StartToStart\", k);\n return {\n start: ((l - m.text.length)),\n end: n\n };\n }\n ;\n ;\n },\n set: function(j, k, l) {\n if (((typeof l == \"undefined\"))) {\n l = k;\n }\n ;\n ;\n if (JSBNG__document.selection) {\n if (((j.tagName == \"TEXTAREA\"))) {\n var m = ((j.value.slice(0, k).match(/\\r/g) || [])).length, n = ((j.value.slice(k, l).match(/\\r/g) || [])).length;\n k -= m;\n l -= ((m + n));\n }\n ;\n ;\n var o = j.createTextRange();\n o.collapse(true);\n o.moveStart(\"character\", k);\n o.moveEnd(\"character\", ((l - k)));\n o.select();\n }\n else {\n j.selectionStart = k;\n j.selectionEnd = Math.min(l, j.value.length);\n h.set(j);\n }\n ;\n ;\n }\n };\n e.exports = i;\n});\n__d(\"JSONPTransport\", [\"ArbiterMixin\",\"DOM\",\"HTML\",\"URI\",\"asyncCallback\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"DOM\"), i = b(\"HTML\"), j = b(\"URI\"), k = b(\"asyncCallback\"), l = b(\"copyProperties\"), m = {\n }, n = 2, o = \"jsonp\", p = \"div\";\n function q(s) {\n delete m[s];\n };\n;\n function r(s, t) {\n this._type = s;\n this._uri = t;\n m[this.getID()] = this;\n };\n;\n l(r, {\n respond: function(s, t, u) {\n var v = m[s];\n if (v) {\n if (!u) {\n q(s);\n }\n ;\n ;\n if (((v._type == p))) {\n t = JSON.parse(JSON.stringify(t));\n }\n ;\n ;\n k(v.handleResponse.bind(v), \"json\")(t);\n }\n else {\n var w = a.ErrorSignal;\n if (((w && !u))) {\n w.logJSError(\"ajax\", {\n error: \"UnexpectedJsonResponse\",\n extra: {\n id: s,\n uri: ((((t.payload && t.payload.uri)) || \"\"))\n }\n });\n }\n ;\n ;\n }\n ;\n ;\n }\n });\n l(r.prototype, g, {\n getID: function() {\n return ((this._id || (this._id = n++)));\n },\n hasFinished: function() {\n return !((this.getID() in m));\n },\n getRequestURI: function() {\n return j(this._uri).addQueryData({\n __a: 1,\n __adt: this.getID(),\n __req: ((\"jsonp_\" + this.getID()))\n });\n },\n getTransportFrame: function() {\n if (this._iframe) {\n return this._iframe;\n }\n ;\n ;\n var s = ((\"transport_frame_\" + this.getID())), t = i(((((\"\\u003Ciframe class=\\\"hidden_elem\\\" name=\\\"\" + s)) + \"\\\" src=\\\"javascript:void(0)\\\" /\\u003E\")));\n return this._iframe = h.appendContent(JSBNG__document.body, t)[0];\n },\n send: function() {\n if (((this._type === o))) {\n (function() {\n h.appendContent(JSBNG__document.body, h.create(\"script\", {\n src: this.getRequestURI().toString(),\n type: \"text/javascript\"\n }));\n }).bind(this).defer();\n }\n else this.getTransportFrame().src = this.getRequestURI().toString();\n ;\n ;\n },\n handleResponse: function(s) {\n this.inform(\"response\", s);\n if (this.hasFinished()) {\n this._cleanup.bind(this).defer();\n }\n ;\n ;\n },\n abort: function() {\n if (this._aborted) {\n return;\n }\n ;\n ;\n this._aborted = true;\n this._cleanup();\n q(this.getID());\n this.inform(\"abort\");\n },\n _cleanup: function() {\n if (this._iframe) {\n h.remove(this._iframe);\n this._iframe = null;\n }\n ;\n ;\n }\n });\n e.exports = r;\n});\n__d(\"KeyEventController\", [\"DOM\",\"JSBNG__Event\",\"Run\",\"copyProperties\",\"isEmpty\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"JSBNG__Event\"), i = b(\"Run\"), j = b(\"copyProperties\"), k = b(\"isEmpty\");\n function l() {\n this.handlers = {\n };\n JSBNG__document.JSBNG__onkeyup = this.onkeyevent.bind(this, \"JSBNG__onkeyup\");\n JSBNG__document.JSBNG__onkeydown = this.onkeyevent.bind(this, \"JSBNG__onkeydown\");\n JSBNG__document.JSBNG__onkeypress = this.onkeyevent.bind(this, \"JSBNG__onkeypress\");\n };\n;\n j(l, {\n instance: null,\n getInstance: function() {\n return ((l.instance || (l.instance = new l())));\n },\n defaultFilter: function(JSBNG__event, m) {\n JSBNG__event = h.$E(JSBNG__event);\n return ((((l.filterEventTypes(JSBNG__event, m) && l.filterEventTargets(JSBNG__event, m))) && l.filterEventModifiers(JSBNG__event, m)));\n },\n filterEventTypes: function(JSBNG__event, m) {\n if (((m === \"JSBNG__onkeydown\"))) {\n return true;\n }\n ;\n ;\n return false;\n },\n filterEventTargets: function(JSBNG__event, m) {\n var n = JSBNG__event.getTarget(), o = ((n.contentEditable === \"true\"));\n return ((((!((o || g.isNodeOfType(n, l._interactiveElements))) || ((n.type in l._uninterestingTypes)))) || ((((JSBNG__event.keyCode in l._controlKeys)) && ((((g.isNodeOfType(n, [\"input\",\"textarea\",]) && ((n.value.length === 0)))) || ((o && ((g.getText(n).length === 0))))))))));\n },\n filterEventModifiers: function(JSBNG__event, m) {\n if (((((((JSBNG__event.ctrlKey || JSBNG__event.altKey)) || JSBNG__event.metaKey)) || JSBNG__event.repeat))) {\n return false;\n }\n ;\n ;\n return true;\n },\n registerKey: function(m, n, o, p) {\n if (((o === undefined))) {\n o = l.defaultFilter;\n }\n ;\n ;\n var q = l.getInstance(), r = q.mapKey(m);\n if (k(q.handlers)) {\n i.onLeave(q.resetHandlers.bind(q));\n }\n ;\n ;\n var s = {\n };\n for (var t = 0; ((t < r.length)); t++) {\n m = r[t];\n if (((!q.handlers[m] || p))) {\n q.handlers[m] = [];\n }\n ;\n ;\n var u = {\n callback: n,\n filter: o\n };\n s[m] = u;\n q.handlers[m].push(u);\n };\n ;\n return {\n remove: function() {\n {\n var fin118keys = ((window.top.JSBNG_Replay.forInKeys)((s))), fin118i = (0);\n var v;\n for (; (fin118i < fin118keys.length); (fin118i++)) {\n ((v) = (fin118keys[fin118i]));\n {\n if (((q.handlers[v] && q.handlers[v].length))) {\n var w = q.handlers[v].indexOf(s[v]);\n ((((w >= 0)) && q.handlers[v].splice(w, 1)));\n }\n ;\n ;\n delete s[v];\n };\n };\n };\n ;\n }\n };\n },\n keyCodeMap: {\n BACKSPACE: [8,],\n TAB: [9,],\n RETURN: [13,],\n ESCAPE: [27,],\n LEFT: [37,63234,],\n UP: [38,63232,],\n RIGHT: [39,63235,],\n DOWN: [40,63233,],\n DELETE: [46,],\n COMMA: [188,],\n PERIOD: [190,],\n SLASH: [191,],\n \"`\": [192,],\n \"[\": [219,],\n \"]\": [221,]\n },\n _interactiveElements: [\"input\",\"select\",\"textarea\",\"object\",\"embed\",],\n _uninterestingTypes: {\n button: 1,\n checkbox: 1,\n radio: 1,\n submit: 1\n },\n _controlKeys: {\n 8: 1,\n 9: 1,\n 13: 1,\n 27: 1,\n 37: 1,\n 63234: 1,\n 38: 1,\n 63232: 1,\n 39: 1,\n 63235: 1,\n 40: 1,\n 63233: 1,\n 46: 1\n }\n });\n j(l.prototype, {\n mapKey: function(m) {\n if (((((m >= 0)) && ((m <= 9))))) {\n if (((typeof (m) != \"number\"))) {\n m = ((m.charCodeAt(0) - 48));\n }\n ;\n ;\n return [((48 + m)),((96 + m)),];\n }\n ;\n ;\n var n = l.keyCodeMap[m.toUpperCase()];\n if (n) {\n return n;\n }\n ;\n ;\n return [m.toUpperCase().charCodeAt(0),];\n },\n onkeyevent: ((window.top.JSBNG_Replay.push)((window.top.JSBNG_Replay.s745724cb144ffb0314d39065d8a453b0cfbd0f73_148), function(m, n) {\n n = h.$E(n);\n var o = ((this.handlers[n.keyCode] || this.handlers[n.which])), p, q, r;\n if (o) {\n for (var s = 0; ((s < o.length)); s++) {\n p = o[s].callback;\n q = o[s].filter;\n try {\n if (((!q || q(n, m)))) {\n r = p(n, m);\n if (((r === false))) {\n return h.kill(n);\n }\n ;\n ;\n }\n ;\n ;\n } catch (t) {\n \n };\n ;\n };\n }\n ;\n ;\n return true;\n })),\n resetHandlers: function() {\n this.handlers = {\n };\n }\n });\n e.exports = l;\n});\n__d(\"KeyStatus\", [\"JSBNG__Event\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = null, i = null;\n function j() {\n if (!i) {\n i = g.listen(window, \"JSBNG__blur\", function() {\n h = null;\n k();\n });\n }\n ;\n ;\n };\n;\n function k() {\n if (i) {\n i.remove();\n i = null;\n }\n ;\n ;\n };\n;\n g.listen(JSBNG__document.documentElement, \"keydown\", function(m) {\n h = g.getKeyCode(m);\n j();\n }, g.Priority.URGENT);\n g.listen(JSBNG__document.documentElement, \"keyup\", function(m) {\n h = null;\n k();\n }, g.Priority.URGENT);\n var l = {\n isKeyDown: function() {\n return !!h;\n },\n getKeyDownCode: function() {\n return h;\n }\n };\n e.exports = l;\n});\n__d(\"BehaviorsMixin\", [\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\");\n function h(l) {\n this._behavior = l;\n this._enabled = false;\n };\n;\n g(h.prototype, {\n enable: function() {\n if (!this._enabled) {\n this._enabled = true;\n this._behavior.enable();\n }\n ;\n ;\n },\n disable: function() {\n if (this._enabled) {\n this._enabled = false;\n this._behavior.disable();\n }\n ;\n ;\n }\n });\n var i = 1;\n function j(l) {\n if (!l.__BEHAVIOR_ID) {\n l.__BEHAVIOR_ID = i++;\n }\n ;\n ;\n return l.__BEHAVIOR_ID;\n };\n;\n var k = {\n enableBehavior: function(l) {\n if (!this._behaviors) {\n this._behaviors = {\n };\n }\n ;\n ;\n var m = j(l);\n if (!this._behaviors[m]) {\n this._behaviors[m] = new h(new l(this));\n }\n ;\n ;\n this._behaviors[m].enable();\n return this;\n },\n disableBehavior: function(l) {\n if (this._behaviors) {\n var m = j(l);\n if (this._behaviors[m]) {\n this._behaviors[m].disable();\n }\n ;\n ;\n }\n ;\n ;\n return this;\n },\n enableBehaviors: function(l) {\n l.forEach(this.enableBehavior.bind(this));\n return this;\n },\n destroyBehaviors: function() {\n if (this._behaviors) {\n {\n var fin119keys = ((window.top.JSBNG_Replay.forInKeys)((this._behaviors))), fin119i = (0);\n var l;\n for (; (fin119i < fin119keys.length); (fin119i++)) {\n ((l) = (fin119keys[fin119i]));\n {\n this._behaviors[l].disable();\n ;\n };\n };\n };\n ;\n this._behaviors = {\n };\n }\n ;\n ;\n }\n };\n e.exports = k;\n});\n__d(\"removeFromArray\", [], function(a, b, c, d, e, f) {\n function g(h, i) {\n var j = h.indexOf(i);\n ((((j != -1)) && h.splice(j, 1)));\n };\n;\n e.exports = g;\n});\n__d(\"Layer\", [\"JSBNG__Event\",\"function-extensions\",\"ArbiterMixin\",\"BehaviorsMixin\",\"BootloadedReact\",\"ContextualThing\",\"JSBNG__CSS\",\"DataStore\",\"DOM\",\"HTML\",\"KeyEventController\",\"Parent\",\"Style\",\"copyProperties\",\"ge\",\"removeFromArray\",\"KeyStatus\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\");\n b(\"function-extensions\");\n var h = b(\"ArbiterMixin\"), i = b(\"BehaviorsMixin\"), j = b(\"BootloadedReact\"), k = b(\"ContextualThing\"), l = b(\"JSBNG__CSS\"), m = b(\"DataStore\"), n = b(\"DOM\"), o = b(\"HTML\"), p = b(\"KeyEventController\"), q = b(\"Parent\"), r = b(\"Style\"), s = b(\"copyProperties\"), t = b(\"ge\"), u = b(\"removeFromArray\");\n b(\"KeyStatus\");\n var v = [];\n function w(x, y) {\n this._config = ((x || {\n }));\n if (y) {\n this._configure(this._config, y);\n var z = ((this._config.addedBehaviors || []));\n this.enableBehaviors(this._getDefaultBehaviors().concat(z));\n }\n ;\n ;\n };\n;\n s(w, h);\n s(w, {\n init: function(x, y) {\n x.init(y);\n },\n initAndShow: function(x, y) {\n x.init(y).show();\n },\n show: function(x) {\n x.show();\n },\n getTopmostLayer: function() {\n return v[((v.length - 1))];\n }\n });\n s(w.prototype, h, i, {\n _initialized: false,\n _root: null,\n _shown: false,\n _hiding: false,\n _causalElement: null,\n _reactContainer: null,\n init: function(x) {\n this._configure(this._config, x);\n var y = ((this._config.addedBehaviors || []));\n this.enableBehaviors(this._getDefaultBehaviors().concat(y));\n this._initialized = true;\n return this;\n },\n _configure: function(x, y) {\n if (y) {\n var z = n.isNode(y), aa = ((((typeof y === \"string\")) || o.isHTML(y)));\n this.containsReactComponent = j.isValidComponent(y);\n if (aa) {\n y = o(y).getRootNode();\n }\n else if (this.containsReactComponent) {\n var ba = JSBNG__document.createElement(\"div\");\n j.renderComponent(y, ba);\n y = this._reactContainer = ba;\n }\n \n ;\n ;\n }\n ;\n ;\n this._root = this._buildWrapper(x, y);\n if (x.attributes) {\n n.setAttributes(this._root, x.attributes);\n }\n ;\n ;\n if (x.classNames) {\n x.classNames.forEach(l.addClass.curry(this._root));\n }\n ;\n ;\n l.addClass(this._root, \"uiLayer\");\n if (x.causalElement) {\n this._causalElement = t(x.causalElement);\n }\n ;\n ;\n if (x.permanent) {\n this._permanent = x.permanent;\n }\n ;\n ;\n m.set(this._root, \"layer\", this);\n },\n _getDefaultBehaviors: function() {\n return [];\n },\n getCausalElement: function() {\n return this._causalElement;\n },\n setCausalElement: function(x) {\n this._causalElement = x;\n return this;\n },\n getInsertParent: function() {\n return ((this._insertParent || JSBNG__document.body));\n },\n getRoot: function() {\n return this._root;\n },\n getContentRoot: function() {\n return this._root;\n },\n _buildWrapper: function(x, y) {\n return y;\n },\n setInsertParent: function(x) {\n if (x) {\n if (((this._shown && ((x !== this.getInsertParent()))))) {\n n.appendContent(x, this.getRoot());\n this.updatePosition();\n }\n ;\n ;\n this._insertParent = x;\n }\n ;\n ;\n return this;\n },\n show: function() {\n if (this._shown) {\n return this;\n }\n ;\n ;\n var x = this.getRoot();\n this.inform(\"beforeshow\");\n r.set(x, \"visibility\", \"hidden\");\n r.set(x, \"overflow\", \"hidden\");\n l.show(x);\n n.appendContent(this.getInsertParent(), x);\n if (((this.updatePosition() !== false))) {\n this._shown = true;\n this.inform(\"show\");\n w.inform(\"show\", this);\n if (!this._permanent) {\n !function() {\n if (this._shown) {\n v.push(this);\n }\n ;\n ;\n }.bind(this).defer();\n }\n ;\n ;\n }\n else l.hide(x);\n ;\n ;\n r.set(x, \"visibility\", \"\");\n r.set(x, \"overflow\", \"\");\n this.inform(\"aftershow\");\n return this;\n },\n hide: function() {\n if (((((this._hiding || !this._shown)) || ((this.inform(\"beforehide\") === false))))) {\n return this;\n }\n ;\n ;\n this._hiding = true;\n if (((this.inform(\"starthide\") !== false))) {\n this.finishHide();\n }\n ;\n ;\n return this;\n },\n conditionShow: function(x) {\n return ((x ? this.show() : this.hide()));\n },\n finishHide: function() {\n if (this._shown) {\n if (!this._permanent) {\n u(v, this);\n }\n ;\n ;\n this._hiding = false;\n this._shown = false;\n l.hide(this.getRoot());\n this.inform(\"hide\");\n w.inform(\"hide\", this);\n }\n ;\n ;\n },\n isShown: function() {\n return this._shown;\n },\n updatePosition: function() {\n return true;\n },\n destroy: function() {\n if (this.containsReactComponent) {\n j.unmountAndReleaseReactRootNode(this._reactContainer);\n }\n ;\n ;\n this.finishHide();\n var x = this.getRoot();\n n.remove(x);\n this.destroyBehaviors();\n this.inform(\"destroy\");\n w.inform(\"destroy\", this);\n m.remove(x, \"layer\");\n this._root = this._causalElement = null;\n }\n });\n g.listen(JSBNG__document.documentElement, \"keydown\", function(JSBNG__event) {\n if (p.filterEventTargets(JSBNG__event, \"keydown\")) {\n for (var x = ((v.length - 1)); ((x >= 0)); x--) {\n if (((v[x].inform(\"key\", JSBNG__event) === false))) {\n return false;\n }\n ;\n ;\n };\n }\n ;\n ;\n }, g.Priority.URGENT);\n g.listen(JSBNG__document.documentElement, \"click\", function(JSBNG__event) {\n var x = v.length;\n if (!x) {\n return;\n }\n ;\n ;\n var y = JSBNG__event.getTarget();\n if (!n.contains(JSBNG__document.documentElement, y)) {\n return;\n }\n ;\n ;\n if (!y.offsetWidth) {\n return;\n }\n ;\n ;\n if (q.byClass(y, \"generic_dialog\")) {\n return;\n }\n ;\n ;\n while (x--) {\n var z = v[x], aa = z.getContentRoot();\n if (k.containsIncludingLayers(aa, y)) {\n return;\n }\n ;\n ;\n if (((((z.inform(\"JSBNG__blur\") === false)) || z.isShown()))) {\n return;\n }\n ;\n ;\n };\n ;\n });\n e.exports = w;\n});\n__d(\"PopupWindow\", [\"DOMDimensions\",\"DOMQuery\",\"Layer\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMDimensions\"), h = b(\"DOMQuery\"), i = b(\"Layer\"), j = b(\"copyProperties\"), k = {\n _opts: {\n allowShrink: true,\n strategy: \"vector\",\n timeout: 100,\n widthElement: null\n },\n init: function(l) {\n j(k._opts, l);\n JSBNG__setInterval(k._resizeCheck, k._opts.timeout);\n },\n _resizeCheck: function() {\n var l = g.getViewportDimensions(), m = k._getDocumentSize(), n = i.getTopmostLayer();\n if (n) {\n var o = n.getRoot().firstChild, p = g.getElementDimensions(o);\n p.height += g.measureElementBox(o, \"height\", true, true, true);\n p.width += g.measureElementBox(o, \"width\", true, true, true);\n m.height = Math.max(m.height, p.height);\n m.width = Math.max(m.width, p.width);\n }\n ;\n ;\n var q = ((m.height - l.height)), r = ((m.width - l.width));\n if (((((r < 0)) && !k._opts.widthElement))) {\n r = 0;\n }\n ;\n ;\n r = ((((r > 1)) ? r : 0));\n if (((!k._opts.allowShrink && ((q < 0))))) {\n q = 0;\n }\n ;\n ;\n if (((q || r))) {\n try {\n ((window.JSBNG__console && window.JSBNG__console.firebug));\n window.JSBNG__resizeBy(r, q);\n if (r) {\n window.JSBNG__moveBy(((r / -2)), 0);\n }\n ;\n ;\n } catch (s) {\n \n };\n }\n ;\n ;\n },\n _getDocumentSize: function() {\n var l = g.getDocumentDimensions();\n if (((k._opts.strategy === \"offsetHeight\"))) {\n l.height = JSBNG__document.body.offsetHeight;\n }\n ;\n ;\n if (k._opts.widthElement) {\n var m = h.scry(JSBNG__document.body, k._opts.widthElement)[0];\n if (m) {\n l.width = g.getElementDimensions(m).width;\n }\n ;\n ;\n }\n ;\n ;\n var n = a.Dialog;\n if (((((n && n.max_bottom)) && ((n.max_bottom > l.height))))) {\n l.height = n.max_bottom;\n }\n ;\n ;\n return l;\n },\n open: function(l, m, n) {\n var o = ((((typeof window.JSBNG__screenX != \"undefined\")) ? window.JSBNG__screenX : window.JSBNG__screenLeft)), p = ((((typeof window.JSBNG__screenY != \"undefined\")) ? window.JSBNG__screenY : window.JSBNG__screenTop)), q = ((((typeof window.JSBNG__outerWidth != \"undefined\")) ? window.JSBNG__outerWidth : JSBNG__document.body.clientWidth)), r = ((((typeof window.JSBNG__outerHeight != \"undefined\")) ? window.JSBNG__outerHeight : ((JSBNG__document.body.clientHeight - 22)))), s = parseInt(((o + ((((q - n)) / 2)))), 10), t = parseInt(((p + ((((r - m)) / 2.5)))), 10), u = ((((((((((((((\"width=\" + n)) + \",height=\")) + m)) + \",left=\")) + s)) + \",top=\")) + t));\n return window.open(l, \"_blank\", u);\n }\n };\n e.exports = k;\n});\n__d(\"Vector\", [\"JSBNG__Event\",\"DOMDimensions\",\"DOMPosition\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"DOMDimensions\"), i = b(\"DOMPosition\"), j = b(\"copyProperties\");\n function k(l, m, n) {\n j(this, {\n x: parseFloat(l),\n y: parseFloat(m),\n domain: ((n || \"pure\"))\n });\n };\n;\n j(k.prototype, {\n toString: function() {\n return ((((((((\"(\" + this.x)) + \", \")) + this.y)) + \")\"));\n },\n add: function(l, m) {\n if (((arguments.length == 1))) {\n if (((l.domain != \"pure\"))) {\n l = l.convertTo(this.domain);\n }\n ;\n ;\n return this.add(l.x, l.y);\n }\n ;\n ;\n var n = parseFloat(l), o = parseFloat(m);\n return new k(((this.x + n)), ((this.y + o)), this.domain);\n },\n mul: function(l, m) {\n if (((typeof m == \"undefined\"))) {\n m = l;\n }\n ;\n ;\n return new k(((this.x * l)), ((this.y * m)), this.domain);\n },\n div: function(l, m) {\n if (((typeof m == \"undefined\"))) {\n m = l;\n }\n ;\n ;\n return new k(((((this.x * 1)) / l)), ((((this.y * 1)) / m)), this.domain);\n },\n sub: function(l, m) {\n if (((arguments.length == 1))) {\n return this.add(l.mul(-1));\n }\n else return this.add(-l, -m)\n ;\n },\n distanceTo: function(l) {\n return this.sub(l).magnitude();\n },\n magnitude: function() {\n return Math.sqrt(((((this.x * this.x)) + ((this.y * this.y)))));\n },\n rotate: function(l) {\n return new k(((((this.x * Math.cos(l))) - ((this.y * Math.sin(l))))), ((((this.x * Math.sin(l))) + ((this.y * Math.cos(l))))));\n },\n convertTo: function(l) {\n if (((((((l != \"pure\")) && ((l != \"viewport\")))) && ((l != \"JSBNG__document\"))))) {\n return new k(0, 0);\n }\n ;\n ;\n if (((l == this.domain))) {\n return new k(this.x, this.y, this.domain);\n }\n ;\n ;\n if (((l == \"pure\"))) {\n return new k(this.x, this.y);\n }\n ;\n ;\n if (((this.domain == \"pure\"))) {\n return new k(0, 0);\n }\n ;\n ;\n var m = k.getScrollPosition(\"JSBNG__document\"), n = this.x, o = this.y;\n if (((this.domain == \"JSBNG__document\"))) {\n n -= m.x;\n o -= m.y;\n }\n else {\n n += m.x;\n o += m.y;\n }\n ;\n ;\n return new k(n, o, l);\n },\n setElementPosition: function(l) {\n var m = this.convertTo(\"JSBNG__document\");\n l.style.left = ((parseInt(m.x) + \"px\"));\n l.style.JSBNG__top = ((parseInt(m.y) + \"px\"));\n return this;\n },\n setElementDimensions: function(l) {\n return this.setElementWidth(l).setElementHeight(l);\n },\n setElementWidth: function(l) {\n l.style.width = ((parseInt(this.x, 10) + \"px\"));\n return this;\n },\n setElementHeight: function(l) {\n l.style.height = ((parseInt(this.y, 10) + \"px\"));\n return this;\n },\n scrollElementBy: function(l) {\n if (((l == JSBNG__document.body))) {\n window.JSBNG__scrollBy(this.x, this.y);\n }\n else {\n l.scrollLeft += this.x;\n l.scrollTop += this.y;\n }\n ;\n ;\n return this;\n }\n });\n j(k, {\n getEventPosition: function(l, m) {\n m = ((m || \"JSBNG__document\"));\n var n = g.getPosition(l), o = new k(n.x, n.y, \"JSBNG__document\");\n return o.convertTo(m);\n },\n getScrollPosition: function(l) {\n l = ((l || \"JSBNG__document\"));\n var m = i.getScrollPosition();\n return new k(m.x, m.y, \"JSBNG__document\").convertTo(l);\n },\n getElementPosition: function(l, m) {\n m = ((m || \"JSBNG__document\"));\n var n = i.getElementPosition(l);\n return new k(n.x, n.y, \"viewport\").convertTo(m);\n },\n getElementDimensions: function(l) {\n var m = h.getElementDimensions(l);\n return new k(m.width, m.height);\n },\n getViewportDimensions: function() {\n var l = h.getViewportDimensions();\n return new k(l.width, l.height, \"viewport\");\n },\n getDocumentDimensions: function(l) {\n var m = h.getDocumentDimensions(l);\n return new k(m.width, m.height, \"JSBNG__document\");\n },\n deserialize: function(l) {\n var m = l.split(\",\");\n return new k(m[0], m[1]);\n }\n });\n e.exports = k;\n});\n__d(\"enforceMaxLength\", [\"JSBNG__Event\",\"function-extensions\",\"DOM\",\"Input\",\"InputSelection\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\");\n b(\"function-extensions\");\n var h = b(\"DOM\"), i = b(\"Input\"), j = b(\"InputSelection\"), k = function(n, o) {\n var p = i.getValue(n), q = p.length, r = ((q - o));\n if (((r > 0))) {\n var s, t;\n try {\n s = j.get(n);\n t = s.end;\n } catch (u) {\n s = null;\n t = 0;\n };\n ;\n if (((t >= r))) {\n q = t;\n }\n ;\n ;\n var v = ((q - r));\n if (((v && ((((p.charCodeAt(((v - 1))) & 64512)) === 55296))))) {\n v--;\n }\n ;\n ;\n t = Math.min(t, v);\n i.setValue(n, ((p.slice(0, v) + p.slice(q))));\n if (s) {\n j.set(n, Math.min(s.start, t), t);\n }\n ;\n ;\n }\n ;\n ;\n }, l = function(JSBNG__event) {\n var n = JSBNG__event.getTarget(), o = ((n.getAttribute && parseInt(n.getAttribute(\"maxlength\"), 10)));\n if (((((o > 0)) && h.isNodeOfType(n, [\"input\",\"textarea\",])))) {\n k.bind(null, n, o).defer();\n }\n ;\n ;\n }, m = ((((\"maxLength\" in h.create(\"input\"))) && ((\"maxLength\" in h.create(\"textarea\")))));\n if (!m) {\n g.listen(JSBNG__document.documentElement, {\n keydown: l,\n paste: l\n });\n }\n;\n;\n e.exports = k;\n});\n__d(\"JSBNG__requestAnimationFrame\", [\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"emptyFunction\"), h = 0, i = ((((((((((a.JSBNG__requestAnimationFrame || a.JSBNG__webkitRequestAnimationFrame)) || a.JSBNG__mozRequestAnimationFrame)) || a.oRequestAnimationFrame)) || a.JSBNG__msRequestAnimationFrame)) || function(j) {\n var k = JSBNG__Date.now(), l = Math.max(0, ((16 - ((k - h)))));\n h = ((k + l));\n return a.JSBNG__setTimeout(j, l);\n }));\n i(g);\n e.exports = i;\n});\n__d(\"queryThenMutateDOM\", [\"function-extensions\",\"Run\",\"createArrayFrom\",\"emptyFunction\",\"JSBNG__requestAnimationFrame\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"Run\"), h = b(\"createArrayFrom\"), i = b(\"emptyFunction\"), j = b(\"JSBNG__requestAnimationFrame\"), k, l, m = {\n }, n = [], o = [];\n function p(s, t, u) {\n if (((!s && !t))) {\n return;\n }\n ;\n ;\n if (((u && m.hasOwnProperty(u)))) {\n return;\n }\n else if (u) {\n m[u] = 1;\n }\n \n ;\n ;\n n.push(((t || i)));\n o.push(((s || i)));\n r();\n if (!k) {\n k = true;\n g.onLeave(function() {\n k = false;\n l = false;\n m = {\n };\n n.length = 0;\n o.length = 0;\n });\n }\n ;\n ;\n };\n;\n p.prepare = function(s, t, u) {\n return function() {\n var v = h(arguments);\n v.unshift(this);\n var w = Function.prototype.bind.apply(s, v), x = t.bind(this);\n p(w, x, u);\n };\n };\n function q() {\n m = {\n };\n var s = o.length, t = n.length, u = [], v;\n while (s--) {\n v = o.shift();\n u.push(v());\n };\n ;\n while (t--) {\n v = n.shift();\n v(u.shift());\n };\n ;\n l = false;\n r();\n };\n;\n function r() {\n if (((!l && ((o.length || n.length))))) {\n l = true;\n j(q);\n }\n ;\n ;\n };\n;\n e.exports = p;\n});\n__d(\"UIForm\", [\"JSBNG__Event\",\"ArbiterMixin\",\"BehaviorsMixin\",\"DOM\",\"Form\",\"Run\",\"areObjectsEqual\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"ArbiterMixin\"), i = b(\"BehaviorsMixin\"), j = b(\"DOM\"), k = b(\"Form\"), l = b(\"Run\"), m = b(\"areObjectsEqual\"), n = b(\"copyProperties\");\n function o(p, q, r, s, t) {\n this._root = p;\n this.controller = p;\n this._message = q;\n if (s) {\n this._confirm_dialog = s;\n s.subscribe(\"JSBNG__confirm\", this._handleDialogConfirm.bind(this));\n j.prependContent(this._root, j.create(\"input\", {\n type: \"hidden\",\n JSBNG__name: \"confirmed\",\n value: \"true\"\n }));\n }\n ;\n ;\n l.onAfterLoad(function() {\n this._originalState = k.serialize(this._root);\n }.bind(this));\n this._forceDirty = r;\n this._confirmed = false;\n this._submitted = false;\n g.listen(this._root, \"submit\", this._handleSubmit.bind(this));\n if (((t && t.length))) {\n this.enableBehaviors(t);\n }\n ;\n ;\n var u = true;\n l.onBeforeUnload(this.checkUnsaved.bind(this), u);\n };\n;\n n(o.prototype, h, i, {\n getRoot: function() {\n return this._root;\n },\n _handleSubmit: function() {\n if (((this._confirm_dialog && !this._confirmed))) {\n this._confirm_dialog.show();\n return false;\n }\n ;\n ;\n if (((this.inform(\"submit\") === false))) {\n return false;\n }\n ;\n ;\n this._submitted = true;\n return true;\n },\n _handleDialogConfirm: function() {\n this._confirmed = true;\n this._confirm_dialog.hide();\n if (this._root.getAttribute(\"ajaxify\")) {\n g.fire(this._root, \"submit\");\n }\n else if (this._handleSubmit()) {\n this._root.submit();\n }\n \n ;\n ;\n },\n reset: function() {\n this.inform(\"reset\");\n this._submitted = false;\n this._confirmed = false;\n },\n isDirty: function() {\n if (((this._submitted || !j.contains(JSBNG__document.body, this._root)))) {\n return false;\n }\n ;\n ;\n if (this._forceDirty) {\n return true;\n }\n ;\n ;\n var p = k.serialize(this._root);\n return !m(p, this._originalState);\n },\n checkUnsaved: function() {\n if (this.isDirty()) {\n return this._message;\n }\n ;\n ;\n return null;\n }\n });\n e.exports = ((a.UIForm || o));\n});"); |
| // 5956 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o30,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y5/r/eV_B8SPw3se.js",o80); |
| // undefined |
| o30 = null; |
| // undefined |
| o80 = null; |
| // 6044 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"bigPipe.onPageletArrive({\n content: {\n pagelet_sidebar: {\n container_id: \"u_0_2e\"\n }\n },\n jsmods: {\n require: [[\"ChatSidebar\",\"init\",[\"m_0_3p\",\"m_0_3q\",\"m_0_3r\",],[{\n __m: \"m_0_3p\"\n },{\n __m: \"m_0_3q\"\n },{\n __m: \"m_0_3r\"\n },[],],],[\"ChatSidebarLog\",\"start\",[],[],],[\"m_0_3s\",],[\"m_0_3u\",],[\"m_0_3r\",],[\"Typeahead\",\"init\",[\"m_0_3v\",\"m_0_3r\",],[{\n __m: \"m_0_3v\"\n },{\n __m: \"m_0_3r\"\n },[\"chatTypeahead\",\"buildBestAvailableNames\",\"showLoadingIndicator\",],null,],],[\"ClearableTypeahead\",\"resetOnCloseButtonClick\",[\"m_0_3r\",\"m_0_3x\",],[{\n __m: \"m_0_3r\"\n },{\n __m: \"m_0_3x\"\n },],],[\"m_0_40\",],[\"m_0_41\",],[\"Layer\",\"init\",[\"m_0_41\",\"m_0_42\",],[{\n __m: \"m_0_41\"\n },{\n __m: \"m_0_42\"\n },],],[\"m_0_3q\",],[\"PresencePrivacy\",],],\n instances: [[\"m_0_48\",[\"XHPTemplate\",\"m_0_4c\",],[{\n __m: \"m_0_4c\"\n },],2,],[\"m_0_4a\",[\"XHPTemplate\",\"m_0_4f\",],[{\n __m: \"m_0_4f\"\n },],2,],[\"m_0_3y\",[\"ChatTypeaheadDataSource\",],[{\n alwaysPrefixMatch: true,\n showOfflineUsers: true\n },],2,],[\"m_0_4b\",[\"XHPTemplate\",\"m_0_4h\",],[{\n __m: \"m_0_4h\"\n },],2,],[\"m_0_49\",[\"XHPTemplate\",\"m_0_4d\",],[{\n __m: \"m_0_4d\"\n },],2,],[\"m_0_3u\",[\"ScrollableArea\",\"m_0_3t\",],[{\n __m: \"m_0_3t\"\n },{\n persistent: true\n },],1,],[\"m_0_3r\",[\"Typeahead\",\"m_0_3y\",\"ChatTypeaheadView\",\"m_0_3v\",\"ChatTypeaheadRenderer\",\"ChatTypeaheadCore\",\"m_0_3w\",],[{\n __m: \"m_0_3y\"\n },{\n node_id: \"u_0_21\",\n node: null,\n ctor: {\n __m: \"ChatTypeaheadView\"\n },\n options: {\n causalElement: {\n __m: \"m_0_3v\"\n },\n minWidth: 0,\n alignment: \"left\",\n renderer: {\n __m: \"ChatTypeaheadRenderer\"\n },\n showBadges: 1,\n autoSelect: true\n }\n },{\n ctor: {\n __m: \"ChatTypeaheadCore\"\n },\n options: {\n resetOnSelect: true,\n setValueOnSelect: false,\n keepFocused: false\n }\n },{\n __m: \"m_0_3w\"\n },],7,],[\"m_0_3s\",[\"LiveBarDark\",\"m_0_3q\",],[{\n __m: \"m_0_3q\"\n },[],[\"music\",\"canvas\",\"checkin\",\"travelling\",],],1,],[\"m_0_40\",[\"ChatSidebarDropdown\",\"m_0_3z\",],[{\n __m: \"m_0_3z\"\n },null,],1,],[\"m_0_41\",[\"LegacyContextualDialog\",\"AccessibleLayer\",],[{\n buildWrapper: false,\n causalElement: null,\n addedBehaviors: [{\n __m: \"AccessibleLayer\"\n },]\n },],5,],[\"m_0_3q\",[\"ChatOrderedList\",\"m_0_43\",\"m_0_44\",\"m_0_45\",\"m_0_41\",],[true,{\n __m: \"m_0_43\"\n },{\n __m: \"m_0_44\"\n },{\n __m: \"m_0_45\"\n },{\n __m: \"m_0_41\"\n },null,],5,],[\"m_0_45\",[\"XHPTemplate\",\"m_0_47\",],[{\n __m: \"m_0_47\"\n },],2,],[\"m_0_44\",[\"XHPTemplate\",\"m_0_46\",],[{\n __m: \"m_0_46\"\n },],2,],],\n define: [[\"ChatOptionsInitialData\",[],{\n sound: 1,\n browser_notif: 0,\n sidebar_mode: true\n },13,],[\"ChatSidebarCalloutData\",[],{\n isShown: false\n },14,],[\"ChannelImplementation\",[\"ChannelConnection\",],{\n instance: {\n __m: \"ChannelConnection\"\n }\n },150,],[\"ChannelInitialData\",[],{\n channelConfig: {\n IFRAME_LOAD_TIMEOUT: 30000,\n P_TIMEOUT: 30000,\n STREAMING_TIMEOUT: 70000,\n PROBE_HEARTBEATS_INTERVAL_LOW: 1000,\n PROBE_HEARTBEATS_INTERVAL_HIGH: 3000,\n user_channel: \"p_100006118350059\",\n seq: -1,\n retry_interval: 0,\n max_conn: 6,\n forceIframe: false,\n streamProbe: false,\n tryStreaming: true,\n bustIframe: false,\n webrtcSupport: false\n },\n reason: 6,\n state: \"reconnect!\"\n },143,],[\"MercuryConstants\",[\"MercuryAttachmentType\",\"MercuryPayloadSource\",\"MercuryParticipantTypes\",\"MercuryAttachmentContentType\",\"MercuryThreadlistConstants\",\"MessagingConfig\",\"MercuryTimePassed\",\"MercurySourceType\",\"MessagingEvent\",\"MercuryLogMessageType\",\"MercuryThreadMode\",\"MercuryMessageSourceTags\",\"MercuryActionStatus\",\"MercuryActionTypeConstants\",\"MercuryErrorType\",\"MercuryParticipantsConstants\",\"MessagingTag\",\"MercuryGlobalActionType\",\"MercuryGenericConstants\",\"MercuryAPIArgsSource\",],{\n MercuryAttachmentType: {\n __m: \"MercuryAttachmentType\"\n },\n VideoChatConstants: {\n START_SESSION: 1,\n GET_SKYPE_TOKEN: 2,\n AWAITING_CALL: 3,\n CANCELLED_CALL: 4,\n CONNECTED_CALL: 5,\n HANDLED_CALL: 6,\n GOT_START_SESSION: 7,\n INSTALLING: 8,\n INSTALLED: 9,\n INSTALL_CANCELED: 10,\n ASSOC_CONNECTED_CALL: 118224944915447,\n ASSOC_VIEWED_CALL_PROMO: 250568041676842,\n MAX_VC_PROMO_VIEWS: 2,\n MINIMUM_VC_PROMO_VIEW_INTERVAL: 5184000,\n MINIMUM_VC_LAST_CALLED_INTERVAL: 5184000\n },\n MercuryAttachmentAudioClip: \"fb_voice_message\",\n MercuryAppIDs: {\n DESKTOP_NOTIFIER: 220764691281998,\n DESKTOP_SOCIALFOX: 276729612446445\n },\n MercuryPayloadSource: {\n __m: \"MercuryPayloadSource\"\n },\n AttachmentMaxSize: 26214400,\n MercuryParticipantTypes: {\n __m: \"MercuryParticipantTypes\"\n },\n MercuryTypeaheadConstants: {\n COMPOSER_FRIENDS_MAX: 4,\n COMPOSER_NON_FRIENDS_MAX: 2,\n COMPOSER_SHOW_MORE_LIMIT: 4,\n COMPOSER_THREADS_INITIAL_LIMIT: 2,\n USER_TYPE: \"user\",\n PAGE_TYPE: \"page\",\n THREAD_TYPE: \"thread\",\n HEADER_TYPE: \"header\",\n FRIEND_TYPE: \"friend\",\n NON_FRIEND_TYPE: \"non_friend\",\n VALID_EMAIL: \"^([A-Z0-9._%+-]+@((?!facebook\\\\.com))[A-Z0-9.-]+\\\\.[A-Z]{2,4}|(([A-Z._%+-]+[A-Z0-9._%+-]*)|([A-Z0-9._%+-]+[A-Z._%+-]+[A-Z0-9._%+-]*))@(?:facebook\\\\.com))$\"\n },\n MercuryAttachmentContentType: {\n __m: \"MercuryAttachmentContentType\"\n },\n MercurySendMessageTimeout: 45000,\n ChatNotificationConstants: {\n NORMAL: 0,\n NO_USER_MESSAGE_NOTIFICATION: 1\n },\n MercuryThreadlistConstants: {\n __m: \"MercuryThreadlistConstants\"\n },\n MessagingConfig: {\n __m: \"MessagingConfig\"\n },\n MercuryTimePassed: {\n __m: \"MercuryTimePassed\"\n },\n MercurySourceType: {\n __m: \"MercurySourceType\"\n },\n MessagingEventTypes: {\n __m: \"MessagingEvent\"\n },\n MessagingFilteringType: {\n LEGACY: \"legacy\",\n MODERATE: \"moderate\",\n STRICT: \"strict\"\n },\n MercurySupportedShareType: {\n FB_PHOTO: 2,\n FB_ALBUM: 3,\n FB_VIDEO: 11,\n FB_SONG: 28,\n FB_MUSIC_ALBUM: 30,\n FB_PLAYLIST: 31,\n FB_MUSICIAN: 35,\n FB_RADIO_STATION: 33,\n EXTERNAL: 100,\n FB_TEMPLATE: 300,\n FB_SOCIAL_REPORT_PHOTO: 48,\n FB_COUPON: 32,\n FB_SHARE: 99,\n FB_HC_QUESTION: 55,\n FB_HC_ANSWER: 56\n },\n Sandbox: {\n ORIGIN: \"http://jsbngssl.fbstatic-a.akamaihd.net\",\n PAGE_URL: \"http://jsbngssl.fbstatic-a.akamaihd.net/fbsbx/fbsbx.php?1\"\n },\n MercuryLogMessageType: {\n __m: \"MercuryLogMessageType\"\n },\n MercuryThreadMode: {\n __m: \"MercuryThreadMode\"\n },\n MercuryMessageSourceTags: {\n __m: \"MercuryMessageSourceTags\"\n },\n MercuryActionStatus: {\n __m: \"MercuryActionStatus\"\n },\n MercuryActionType: {\n __m: \"MercuryActionTypeConstants\"\n },\n UIPushPhase: \"V3\",\n MercuryErrorType: {\n __m: \"MercuryErrorType\"\n },\n MercuryParticipantsConstants: {\n __m: \"MercuryParticipantsConstants\"\n },\n MessagingTag: {\n __m: \"MessagingTag\"\n },\n MercuryGlobalActionType: {\n __m: \"MercuryGlobalActionType\"\n },\n MercuryGenericConstants: {\n __m: \"MercuryGenericConstants\"\n },\n MercuryAPIArgsSource: {\n __m: \"MercuryAPIArgsSource\"\n }\n },36,],[\"PresenceInitialData\",[],{\n serverTime: \"1374851147000\",\n cookiePollInterval: 500,\n cookieVersion: 2,\n dictEncode: true\n },57,],[\"BlackbirdUpsellTemplates\",[\"m_0_48\",\"m_0_49\",\"m_0_4a\",\"m_0_4b\",],{\n \":fb:chat:blackbird:dialog-frame\": {\n __m: \"m_0_48\"\n },\n \":fb:chat:blackbird:offline-educate\": {\n __m: \"m_0_49\"\n },\n \":fb:chat:blackbird:most-friends-educate\": {\n __m: \"m_0_4a\"\n },\n \":fb:chat:blackbird:some-friends-educate\": {\n __m: \"m_0_4b\"\n }\n },10,],[\"InitialChatFriendsList\",[],{\n list: []\n },26,],[\"BlackbirdUpsellConfig\",[],{\n EducationTimeOfflineThresdhold: 5184000,\n UpsellImpressions: 0,\n UpsellGK: false,\n UpsellImpressionLimit: 3,\n TimeOffline: 0,\n UpsellMinFriendCount: 50,\n FriendCount: 0,\n EducationDismissed: 0,\n EducationGK: 1,\n UpsellDismissed: 0,\n EducationImpressionLimit: 2,\n EducationImpressions: 0\n },8,],[\"InitialMultichatList\",[],{\n },132,],[\"ChatConfigInitialData\",[],{\n warning_countdown_threshold_msec: 15000,\n \"24h_times\": false,\n livebar_fetch_defer: 1000,\n \"video.collision_connect\": 1,\n \"ordered_list.top_mobile\": 5,\n mute_warning_time_msec: 25000,\n \"blackbird.min_for_clear_button\": 10,\n chat_multi_typ_send: 1,\n web_messenger_suppress_tab_unread: 1,\n \"ordered_list.top_friends\": 0,\n chat_impression_logging_with_click: true,\n channel_manual_reconnect_defer_msec: 2000,\n \"sidebar.minimum_width\": 1225,\n \"sound.notif_ogg_url\": \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/yT/r/q-Drar4Ade6.ogg\",\n idle_limit: 1800000,\n \"sidebar.min_friends\": 7,\n \"sound.notif_mp3_url\": \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/yb/r/VBbzpp2k5li.mp3\",\n idle_poll_interval: 300000,\n activity_limit: 60000,\n \"sound.ringtone_mp3_url\": \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/yq/r/Mpd0-fRgh5n.mp3\",\n \"roger.seen_delay\": 15000,\n tab_max_load_age: 86400000,\n typing_notifications: true,\n show_sticker_nux: true,\n chat_web_ranking_with_presence: 1,\n chat_ranked_by_coefficient: 1,\n \"video.skype_client_log\": 1,\n \"periodical_impression_logging_config.interval\": 1800000,\n chat_tab_title_link_timeline: 1,\n max_sidebar_multichats: 3,\n tab_auto_close_timeout: 86400000,\n chat_impression_logging_periodical: true,\n divebar_has_new_groups_button: true,\n sound_enabled: true,\n \"sound.ringtone_ogg_url\": \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/y3/r/mbcn6dBHIeX.ogg\",\n sidebar_ticker: 1\n },12,],[\"AvailableListInitialData\",[],{\n chatNotif: 0,\n pollInterval: 100000,\n birthdayFriends: null,\n availableList: {\n },\n lazyPollInterval: 300000,\n favoriteList: [],\n mobileFriends: null,\n lazyThreshold: 300000,\n availableCount: 0,\n lastActiveTimes: null,\n updateTime: 1374851147000\n },166,],],\n elements: [[\"m_0_3z\",\"u_0_27\",2,],[\"m_0_3v\",\"u_0_26\",4,],[\"m_0_3x\",\"u_0_25\",2,],[\"m_0_43\",\"u_0_29\",2,],[\"m_0_3t\",\"u_0_23\",2,],[\"m_0_4g\",\"u_0_2c\",2,\"m_0_4f\",],[\"m_0_3p\",\"u_0_22\",2,],[\"m_0_4e\",\"u_0_2b\",2,\"m_0_4d\",],[\"m_0_3w\",\"u_0_24\",2,],[\"m_0_4i\",\"u_0_2d\",2,\"m_0_4h\",],],\n markup: [[\"m_0_4f\",{\n __html: \"\\u003Cform method=\\\"post\\\" action=\\\"/ajax/chat/blackbird/learn_more.php?source=blackbird\\\" onsubmit=\\\"return window.Event && Event.__inlineSubmit && Event.__inlineSubmit(this,event)\\\" id=\\\"u_0_2c\\\"\\u003E\\u003Cinput type=\\\"hidden\\\" name=\\\"fb_dtsg\\\" value=\\\"AQApxIm6\\\" autocomplete=\\\"off\\\" /\\u003E\\u003Cstrong\\u003ETip:\\u003C/strong\\u003E While you have chat turned off for some friends, their messages go to your inbox. \\u003Clabel class=\\\"uiLinkButton\\\"\\u003E\\u003Cinput type=\\\"submit\\\" value=\\\"Learn more\\\" /\\u003E\\u003C/label\\u003E.\\u003C/form\\u003E\"\n },3,],[\"m_0_4h\",{\n __html: \"\\u003Cform method=\\\"post\\\" action=\\\"/ajax/chat/blackbird/learn_more.php?source=blackbird\\\" onsubmit=\\\"return window.Event && Event.__inlineSubmit && Event.__inlineSubmit(this,event)\\\" id=\\\"u_0_2d\\\"\\u003E\\u003Cinput type=\\\"hidden\\\" name=\\\"fb_dtsg\\\" value=\\\"AQApxIm6\\\" autocomplete=\\\"off\\\" /\\u003E\\u003Cstrong\\u003ETip:\\u003C/strong\\u003E When chat is off, messages from friends go to your inbox for you to read later. \\u003Clabel class=\\\"uiLinkButton\\\"\\u003E\\u003Cinput type=\\\"submit\\\" value=\\\"Learn more\\\" /\\u003E\\u003C/label\\u003E.\\u003C/form\\u003E\"\n },3,],[\"m_0_42\",{\n __html: \"\\u003Cdiv class=\\\"uiContextualDialogPositioner\\\" id=\\\"u_0_28\\\" data-position=\\\"left\\\"\\u003E\\u003Cdiv class=\\\"uiOverlay uiContextualDialog\\\" data-width=\\\"300\\\" data-destroyonhide=\\\"false\\\" data-fadeonhide=\\\"false\\\"\\u003E\\u003Cdiv class=\\\"uiOverlayContent\\\"\\u003E\\u003Cdiv class=\\\"uiContextualDialogContent\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_4c\",{\n __html: \"\\u003Cdiv class=\\\"pam -cx-PRIVATE-blackbirdUpsell__dialogframe\\\"\\u003E\\u003Cdiv class=\\\"clearfix\\\"\\u003E\\u003Ci class=\\\"-cx-PRIVATE-uiImageBlock__image -cx-PRIVATE-uiImageBlock__smallimage lfloat img sp_3yt8ar sx_de779b\\\"\\u003E\\u003C/i\\u003E\\u003Cdiv class=\\\"clearfix -cx-PRIVATE-uiImageBlock__smallcontent -cx-PRIVATE-uiFlexibleBlock__flexiblecontent\\\"\\u003E\\u003Clabel class=\\\"rfloat uiCloseButton uiCloseButtonSmall\\\" for=\\\"u_0_2a\\\"\\u003E\\u003Cinput title=\\\"Remove\\\" type=\\\"button\\\" data-jsid=\\\"dialogCloseButton\\\" id=\\\"u_0_2a\\\" /\\u003E\\u003C/label\\u003E\\u003Cdiv class=\\\"prs\\\" data-jsid=\\\"dialogContent\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_47\",{\n __html: \"\\u003Cli\\u003E\\u003Cdiv class=\\\"phs fcg\\\"\\u003E\\u003Cspan data-jsid=\\\"message\\\"\\u003ELoading...\\u003C/span\\u003E\\u003C/div\\u003E\\u003C/li\\u003E\"\n },2,],[\"m_0_4d\",{\n __html: \"\\u003Cform method=\\\"post\\\" action=\\\"/ajax/chat/blackbird/learn_more.php?source=offline&promo_source=educate\\\" onsubmit=\\\"return window.Event && Event.__inlineSubmit && Event.__inlineSubmit(this,event)\\\" id=\\\"u_0_2b\\\"\\u003E\\u003Cinput type=\\\"hidden\\\" name=\\\"fb_dtsg\\\" value=\\\"AQApxIm6\\\" autocomplete=\\\"off\\\" /\\u003E\\u003Cstrong\\u003ETip:\\u003C/strong\\u003E You can turn on chat for just a few friends. \\u003Clabel class=\\\"uiLinkButton\\\"\\u003E\\u003Cinput type=\\\"submit\\\" value=\\\"Learn more\\\" /\\u003E\\u003C/label\\u003E.\\u003Cdiv class=\\\"-cx-PRIVATE-blackbirdUpsell__buttoncontainer\\\"\\u003E\\u003Ca class=\\\"mvm -cx-PRIVATE-blackbirdUpsell__chatsettingsbutton uiButton uiButtonConfirm\\\" href=\\\"#\\\" role=\\\"button\\\" ajaxify=\\\"/ajax/chat/privacy/settings_dialog.php\\\" rel=\\\"dialog\\\" data-jsid=\\\"chatSettingsButton\\\"\\u003E\\u003Cspan class=\\\"uiButtonText\\\"\\u003EEdit Chat Settings\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\\u003C/form\\u003E\"\n },3,],[\"m_0_46\",{\n __html: \"\\u003Cli class=\\\"-cx-PRIVATE-fbChatOrderedList__item\\\"\\u003E\\u003Ca class=\\\"clearfix -cx-PRIVATE-fbChatOrderedList__link\\\" data-jsid=\\\"anchor\\\" href=\\\"#\\\" role=\\\"\\\" rel=\\\"ignore\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbChat__favoritebutton -cx-PRIVATE-fbChatOrderedList__favoritebutton\\\" data-jsid=\\\"favorite_button\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"pic_container\\\"\\u003E\\u003Cimg class=\\\"pic img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y4/r/-PAXP-deijE.gif\\\" data-jsid=\\\"profile-photo\\\" alt=\\\"\\\" width=\\\"1\\\" height=\\\"1\\\" /\\u003E\\u003C/div\\u003E\\u003Cimg class=\\\"-cx-PRIVATE-fbChat__dragindicator -cx-PRIVATE-fbChatOrderedList__dragindicator img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yW/r/F7kk7-cjEKk.png\\\" alt=\\\"\\\" width=\\\"10\\\" height=\\\"8\\\" /\\u003E\\u003Cdiv class=\\\"clearfix\\\"\\u003E\\u003Cdiv class=\\\"rfloat\\\"\\u003E\\u003Cspan data-jsid=\\\"accessible-name\\\" class=\\\"accessible_elem\\\"\\u003E\\u003C/span\\u003E\\u003Cdiv class=\\\"icon_container\\\"\\u003E\\u003Cimg class=\\\"-cx-PRIVATE-fbLiveBar__status icon img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y4/r/-PAXP-deijE.gif\\\" alt=\\\"\\\" width=\\\"1\\\" height=\\\"1\\\" /\\u003E\\u003Cdiv class=\\\"active_time icon\\\"\\u003E\\u003C/div\\u003E\\u003Cimg class=\\\"status icon img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y4/r/-PAXP-deijE.gif\\\" alt=\\\"\\\" width=\\\"1\\\" height=\\\"1\\\" /\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv aria-hidden=\\\"true\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbChatOrderedList__name\\\" data-jsid=\\\"name\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbChatOrderedList__context\\\" data-jsid=\\\"context\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\"\n },2,],]\n },\n css: [\"za92D\",\"HgCpx\",\"UmFO+\",\"veUjj\",\"tAd6o\",\"c6lUE\",],\n bootloadable: {\n SortableGroup: {\n resources: [\"OH3xD\",\"6tAwh\",\"f7Tpb\",\"/MWWQ\",],\n \"module\": true\n },\n LitestandSidebarBookmarksDisplay: {\n resources: [\"OH3xD\",\"veUjj\",\"za92D\",\"3Mxco\",],\n \"module\": true\n },\n LitestandSidebar: {\n resources: [\"OH3xD\",\"f7Tpb\",\"kVM+7\",\"js0se\",\"AVmr9\",\"za92D\",\"UmFO+\",],\n \"module\": true\n }\n },\n resource_map: {\n \"6tAwh\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yM/r/Oe0OO6kzRjj.js\"\n },\n \"1YKDj\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yQ/r/mxp6_mu5GrT.js\"\n },\n \"3Mxco\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yR/r/lRDMT2kJPzt.js\"\n },\n \"kVM+7\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yO/r/mgoWhiluXyn.js\"\n }\n },\n ixData: {\n \"/images/chat/sidebar/newGroupChatLitestand.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_b8k8sa\",\n spriteCssClass: \"sx_faf97d\"\n },\n \"/images/gifts/icons/cake_icon.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_b8k8sa\",\n spriteCssClass: \"sx_06a61f\"\n },\n \"/images/litestand/sidebar/blended/new_group_chat.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_b8k8sa\",\n spriteCssClass: \"sx_6e4a51\"\n },\n \"/images/chat/status/online.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_047178\"\n },\n \"/images/litestand/bookmarks/sidebar/remove.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_5ed30e\"\n },\n \"/images/litestand/sidebar/blended/online.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_dd19b5\"\n },\n \"/images/litestand/sidebar/blended/pushable.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_ff5be1\"\n },\n \"/images/litestand/bookmarks/sidebar/add.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_bf972e\"\n },\n \"/images/litestand/sidebar/pushable.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_b0241d\"\n },\n \"/images/litestand/sidebar/online.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_8d09d2\"\n },\n \"/images/chat/add.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_26b2d5\"\n },\n \"/images/chat/status/mobile.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_479fb2\"\n },\n \"/images/chat/sidebar/newGroupChat.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_b8k8sa\",\n spriteCssClass: \"sx_0de2a7\"\n },\n \"/images/chat/delete.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_9a8650\"\n }\n },\n js: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"XH2Cu\",\"OSd/n\",\"TXKLp\",\"zBhY6\",\"WD1Wm\",\"/MWWQ\",\"bmJBG\",\"1YKDj\",\"js0se\",],\n onload: [\"FbdInstall.updateSidebarLinkVisibility()\",],\n id: \"pagelet_sidebar\",\n phase: 3\n});"); |
| // 6045 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s8f96b3320152a4e1d6ca28c80e5264cf27418715"); |
| // 6046 |
| geval("bigPipe.onPageletArrive({\n JSBNG__content: {\n pagelet_sidebar: {\n container_id: \"u_0_2e\"\n }\n },\n jsmods: {\n require: [[\"ChatSidebar\",\"init\",[\"m_0_3p\",\"m_0_3q\",\"m_0_3r\",],[{\n __m: \"m_0_3p\"\n },{\n __m: \"m_0_3q\"\n },{\n __m: \"m_0_3r\"\n },[],],],[\"ChatSidebarLog\",\"start\",[],[],],[\"m_0_3s\",],[\"m_0_3u\",],[\"m_0_3r\",],[\"Typeahead\",\"init\",[\"m_0_3v\",\"m_0_3r\",],[{\n __m: \"m_0_3v\"\n },{\n __m: \"m_0_3r\"\n },[\"chatTypeahead\",\"buildBestAvailableNames\",\"showLoadingIndicator\",],null,],],[\"ClearableTypeahead\",\"resetOnCloseButtonClick\",[\"m_0_3r\",\"m_0_3x\",],[{\n __m: \"m_0_3r\"\n },{\n __m: \"m_0_3x\"\n },],],[\"m_0_40\",],[\"m_0_41\",],[\"Layer\",\"init\",[\"m_0_41\",\"m_0_42\",],[{\n __m: \"m_0_41\"\n },{\n __m: \"m_0_42\"\n },],],[\"m_0_3q\",],[\"PresencePrivacy\",],],\n instances: [[\"m_0_48\",[\"XHPTemplate\",\"m_0_4c\",],[{\n __m: \"m_0_4c\"\n },],2,],[\"m_0_4a\",[\"XHPTemplate\",\"m_0_4f\",],[{\n __m: \"m_0_4f\"\n },],2,],[\"m_0_3y\",[\"ChatTypeaheadDataSource\",],[{\n alwaysPrefixMatch: true,\n showOfflineUsers: true\n },],2,],[\"m_0_4b\",[\"XHPTemplate\",\"m_0_4h\",],[{\n __m: \"m_0_4h\"\n },],2,],[\"m_0_49\",[\"XHPTemplate\",\"m_0_4d\",],[{\n __m: \"m_0_4d\"\n },],2,],[\"m_0_3u\",[\"ScrollableArea\",\"m_0_3t\",],[{\n __m: \"m_0_3t\"\n },{\n persistent: true\n },],1,],[\"m_0_3r\",[\"Typeahead\",\"m_0_3y\",\"ChatTypeaheadView\",\"m_0_3v\",\"ChatTypeaheadRenderer\",\"ChatTypeaheadCore\",\"m_0_3w\",],[{\n __m: \"m_0_3y\"\n },{\n node_id: \"u_0_21\",\n node: null,\n ctor: {\n __m: \"ChatTypeaheadView\"\n },\n options: {\n causalElement: {\n __m: \"m_0_3v\"\n },\n minWidth: 0,\n alignment: \"left\",\n renderer: {\n __m: \"ChatTypeaheadRenderer\"\n },\n showBadges: 1,\n autoSelect: true\n }\n },{\n ctor: {\n __m: \"ChatTypeaheadCore\"\n },\n options: {\n resetOnSelect: true,\n setValueOnSelect: false,\n keepFocused: false\n }\n },{\n __m: \"m_0_3w\"\n },],7,],[\"m_0_3s\",[\"LiveBarDark\",\"m_0_3q\",],[{\n __m: \"m_0_3q\"\n },[],[\"music\",\"canvas\",\"checkin\",\"travelling\",],],1,],[\"m_0_40\",[\"ChatSidebarDropdown\",\"m_0_3z\",],[{\n __m: \"m_0_3z\"\n },null,],1,],[\"m_0_41\",[\"LegacyContextualDialog\",\"AccessibleLayer\",],[{\n buildWrapper: false,\n causalElement: null,\n addedBehaviors: [{\n __m: \"AccessibleLayer\"\n },]\n },],5,],[\"m_0_3q\",[\"ChatOrderedList\",\"m_0_43\",\"m_0_44\",\"m_0_45\",\"m_0_41\",],[true,{\n __m: \"m_0_43\"\n },{\n __m: \"m_0_44\"\n },{\n __m: \"m_0_45\"\n },{\n __m: \"m_0_41\"\n },null,],5,],[\"m_0_45\",[\"XHPTemplate\",\"m_0_47\",],[{\n __m: \"m_0_47\"\n },],2,],[\"m_0_44\",[\"XHPTemplate\",\"m_0_46\",],[{\n __m: \"m_0_46\"\n },],2,],],\n define: [[\"ChatOptionsInitialData\",[],{\n sound: 1,\n browser_notif: 0,\n sidebar_mode: true\n },13,],[\"ChatSidebarCalloutData\",[],{\n isShown: false\n },14,],[\"ChannelImplementation\",[\"ChannelConnection\",],{\n instance: {\n __m: \"ChannelConnection\"\n }\n },150,],[\"ChannelInitialData\",[],{\n channelConfig: {\n IFRAME_LOAD_TIMEOUT: 30000,\n P_TIMEOUT: 30000,\n STREAMING_TIMEOUT: 70000,\n PROBE_HEARTBEATS_INTERVAL_LOW: 1000,\n PROBE_HEARTBEATS_INTERVAL_HIGH: 3000,\n user_channel: \"p_100006118350059\",\n seq: -1,\n retry_interval: 0,\n max_conn: 6,\n forceIframe: false,\n streamProbe: false,\n tryStreaming: true,\n bustIframe: false,\n webrtcSupport: false\n },\n reason: 6,\n state: \"reconnect!\"\n },143,],[\"MercuryConstants\",[\"MercuryAttachmentType\",\"MercuryPayloadSource\",\"MercuryParticipantTypes\",\"MercuryAttachmentContentType\",\"MercuryThreadlistConstants\",\"MessagingConfig\",\"MercuryTimePassed\",\"MercurySourceType\",\"MessagingEvent\",\"MercuryLogMessageType\",\"MercuryThreadMode\",\"MercuryMessageSourceTags\",\"MercuryActionStatus\",\"MercuryActionTypeConstants\",\"MercuryErrorType\",\"MercuryParticipantsConstants\",\"MessagingTag\",\"MercuryGlobalActionType\",\"MercuryGenericConstants\",\"MercuryAPIArgsSource\",],{\n MercuryAttachmentType: {\n __m: \"MercuryAttachmentType\"\n },\n VideoChatConstants: {\n START_SESSION: 1,\n GET_SKYPE_TOKEN: 2,\n AWAITING_CALL: 3,\n CANCELLED_CALL: 4,\n CONNECTED_CALL: 5,\n HANDLED_CALL: 6,\n GOT_START_SESSION: 7,\n INSTALLING: 8,\n INSTALLED: 9,\n INSTALL_CANCELED: 10,\n ASSOC_CONNECTED_CALL: 118224944915447,\n ASSOC_VIEWED_CALL_PROMO: 250568041676842,\n MAX_VC_PROMO_VIEWS: 2,\n MINIMUM_VC_PROMO_VIEW_INTERVAL: 5184000,\n MINIMUM_VC_LAST_CALLED_INTERVAL: 5184000\n },\n MercuryAttachmentAudioClip: \"fb_voice_message\",\n MercuryAppIDs: {\n DESKTOP_NOTIFIER: 220764691281998,\n DESKTOP_SOCIALFOX: 276729612446445\n },\n MercuryPayloadSource: {\n __m: \"MercuryPayloadSource\"\n },\n AttachmentMaxSize: 26214400,\n MercuryParticipantTypes: {\n __m: \"MercuryParticipantTypes\"\n },\n MercuryTypeaheadConstants: {\n COMPOSER_FRIENDS_MAX: 4,\n COMPOSER_NON_FRIENDS_MAX: 2,\n COMPOSER_SHOW_MORE_LIMIT: 4,\n COMPOSER_THREADS_INITIAL_LIMIT: 2,\n USER_TYPE: \"user\",\n PAGE_TYPE: \"page\",\n THREAD_TYPE: \"thread\",\n HEADER_TYPE: \"header\",\n FRIEND_TYPE: \"friend\",\n NON_FRIEND_TYPE: \"non_friend\",\n VALID_EMAIL: \"^([A-Z0-9._%+-]+@((?!facebook\\\\.com))[A-Z0-9.-]+\\\\.[A-Z]{2,4}|(([A-Z._%+-]+[A-Z0-9._%+-]*)|([A-Z0-9._%+-]+[A-Z._%+-]+[A-Z0-9._%+-]*))@(?:facebook\\\\.com))$\"\n },\n MercuryAttachmentContentType: {\n __m: \"MercuryAttachmentContentType\"\n },\n MercurySendMessageTimeout: 45000,\n ChatNotificationConstants: {\n NORMAL: 0,\n NO_USER_MESSAGE_NOTIFICATION: 1\n },\n MercuryThreadlistConstants: {\n __m: \"MercuryThreadlistConstants\"\n },\n MessagingConfig: {\n __m: \"MessagingConfig\"\n },\n MercuryTimePassed: {\n __m: \"MercuryTimePassed\"\n },\n MercurySourceType: {\n __m: \"MercurySourceType\"\n },\n MessagingEventTypes: {\n __m: \"MessagingEvent\"\n },\n MessagingFilteringType: {\n LEGACY: \"legacy\",\n MODERATE: \"moderate\",\n STRICT: \"strict\"\n },\n MercurySupportedShareType: {\n FB_PHOTO: 2,\n FB_ALBUM: 3,\n FB_VIDEO: 11,\n FB_SONG: 28,\n FB_MUSIC_ALBUM: 30,\n FB_PLAYLIST: 31,\n FB_MUSICIAN: 35,\n FB_RADIO_STATION: 33,\n EXTERNAL: 100,\n FB_TEMPLATE: 300,\n FB_SOCIAL_REPORT_PHOTO: 48,\n FB_COUPON: 32,\n FB_SHARE: 99,\n FB_HC_QUESTION: 55,\n FB_HC_ANSWER: 56\n },\n Sandbox: {\n ORIGIN: \"http://jsbngssl.fbstatic-a.akamaihd.net\",\n PAGE_URL: \"http://jsbngssl.fbstatic-a.akamaihd.net/fbsbx/fbsbx.php?1\"\n },\n MercuryLogMessageType: {\n __m: \"MercuryLogMessageType\"\n },\n MercuryThreadMode: {\n __m: \"MercuryThreadMode\"\n },\n MercuryMessageSourceTags: {\n __m: \"MercuryMessageSourceTags\"\n },\n MercuryActionStatus: {\n __m: \"MercuryActionStatus\"\n },\n MercuryActionType: {\n __m: \"MercuryActionTypeConstants\"\n },\n UIPushPhase: \"V3\",\n MercuryErrorType: {\n __m: \"MercuryErrorType\"\n },\n MercuryParticipantsConstants: {\n __m: \"MercuryParticipantsConstants\"\n },\n MessagingTag: {\n __m: \"MessagingTag\"\n },\n MercuryGlobalActionType: {\n __m: \"MercuryGlobalActionType\"\n },\n MercuryGenericConstants: {\n __m: \"MercuryGenericConstants\"\n },\n MercuryAPIArgsSource: {\n __m: \"MercuryAPIArgsSource\"\n }\n },36,],[\"PresenceInitialData\",[],{\n serverTime: \"1374851147000\",\n cookiePollInterval: 500,\n cookieVersion: 2,\n dictEncode: true\n },57,],[\"BlackbirdUpsellTemplates\",[\"m_0_48\",\"m_0_49\",\"m_0_4a\",\"m_0_4b\",],{\n \":fb:chat:blackbird:dialog-frame\": {\n __m: \"m_0_48\"\n },\n \":fb:chat:blackbird:offline-educate\": {\n __m: \"m_0_49\"\n },\n \":fb:chat:blackbird:most-friends-educate\": {\n __m: \"m_0_4a\"\n },\n \":fb:chat:blackbird:some-friends-educate\": {\n __m: \"m_0_4b\"\n }\n },10,],[\"InitialChatFriendsList\",[],{\n list: []\n },26,],[\"BlackbirdUpsellConfig\",[],{\n EducationTimeOfflineThresdhold: 5184000,\n UpsellImpressions: 0,\n UpsellGK: false,\n UpsellImpressionLimit: 3,\n TimeOffline: 0,\n UpsellMinFriendCount: 50,\n FriendCount: 0,\n EducationDismissed: 0,\n EducationGK: 1,\n UpsellDismissed: 0,\n EducationImpressionLimit: 2,\n EducationImpressions: 0\n },8,],[\"InitialMultichatList\",[],{\n },132,],[\"ChatConfigInitialData\",[],{\n warning_countdown_threshold_msec: 15000,\n \"24h_times\": false,\n livebar_fetch_defer: 1000,\n \"video.collision_connect\": 1,\n \"ordered_list.top_mobile\": 5,\n mute_warning_time_msec: 25000,\n \"blackbird.min_for_clear_button\": 10,\n chat_multi_typ_send: 1,\n web_messenger_suppress_tab_unread: 1,\n \"ordered_list.top_friends\": 0,\n chat_impression_logging_with_click: true,\n channel_manual_reconnect_defer_msec: 2000,\n \"sidebar.minimum_width\": 1225,\n \"sound.notif_ogg_url\": \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/yT/r/q-Drar4Ade6.ogg\",\n idle_limit: 1800000,\n \"sidebar.min_friends\": 7,\n \"sound.notif_mp3_url\": \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/yb/r/VBbzpp2k5li.mp3\",\n idle_poll_interval: 300000,\n activity_limit: 60000,\n \"sound.ringtone_mp3_url\": \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/yq/r/Mpd0-fRgh5n.mp3\",\n \"roger.seen_delay\": 15000,\n tab_max_load_age: 86400000,\n typing_notifications: true,\n show_sticker_nux: true,\n chat_web_ranking_with_presence: 1,\n chat_ranked_by_coefficient: 1,\n \"video.skype_client_log\": 1,\n \"periodical_impression_logging_config.interval\": 1800000,\n chat_tab_title_link_timeline: 1,\n max_sidebar_multichats: 3,\n tab_auto_close_timeout: 86400000,\n chat_impression_logging_periodical: true,\n divebar_has_new_groups_button: true,\n sound_enabled: true,\n \"sound.ringtone_ogg_url\": \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/y3/r/mbcn6dBHIeX.ogg\",\n sidebar_ticker: 1\n },12,],[\"AvailableListInitialData\",[],{\n chatNotif: 0,\n pollInterval: 100000,\n birthdayFriends: null,\n availableList: {\n },\n lazyPollInterval: 300000,\n favoriteList: [],\n mobileFriends: null,\n lazyThreshold: 300000,\n availableCount: 0,\n lastActiveTimes: null,\n updateTime: 1374851147000\n },166,],],\n elements: [[\"m_0_3z\",\"u_0_27\",2,],[\"m_0_3v\",\"u_0_26\",4,],[\"m_0_3x\",\"u_0_25\",2,],[\"m_0_43\",\"u_0_29\",2,],[\"m_0_3t\",\"u_0_23\",2,],[\"m_0_4g\",\"u_0_2c\",2,\"m_0_4f\",],[\"m_0_3p\",\"u_0_22\",2,],[\"m_0_4e\",\"u_0_2b\",2,\"m_0_4d\",],[\"m_0_3w\",\"u_0_24\",2,],[\"m_0_4i\",\"u_0_2d\",2,\"m_0_4h\",],],\n markup: [[\"m_0_4f\",{\n __html: \"\\u003Cform method=\\\"post\\\" action=\\\"/ajax/chat/blackbird/learn_more.php?source=blackbird\\\" onsubmit=\\\"return window.Event && Event.__inlineSubmit && Event.__inlineSubmit(this,event)\\\" id=\\\"u_0_2c\\\"\\u003E\\u003Cinput type=\\\"hidden\\\" name=\\\"fb_dtsg\\\" value=\\\"AQApxIm6\\\" autocomplete=\\\"off\\\" /\\u003E\\u003Cstrong\\u003ETip:\\u003C/strong\\u003E While you have chat turned off for some friends, their messages go to your inbox. \\u003Clabel class=\\\"uiLinkButton\\\"\\u003E\\u003Cinput type=\\\"submit\\\" value=\\\"Learn more\\\" /\\u003E\\u003C/label\\u003E.\\u003C/form\\u003E\"\n },3,],[\"m_0_4h\",{\n __html: \"\\u003Cform method=\\\"post\\\" action=\\\"/ajax/chat/blackbird/learn_more.php?source=blackbird\\\" onsubmit=\\\"return window.Event && Event.__inlineSubmit && Event.__inlineSubmit(this,event)\\\" id=\\\"u_0_2d\\\"\\u003E\\u003Cinput type=\\\"hidden\\\" name=\\\"fb_dtsg\\\" value=\\\"AQApxIm6\\\" autocomplete=\\\"off\\\" /\\u003E\\u003Cstrong\\u003ETip:\\u003C/strong\\u003E When chat is off, messages from friends go to your inbox for you to read later. \\u003Clabel class=\\\"uiLinkButton\\\"\\u003E\\u003Cinput type=\\\"submit\\\" value=\\\"Learn more\\\" /\\u003E\\u003C/label\\u003E.\\u003C/form\\u003E\"\n },3,],[\"m_0_42\",{\n __html: \"\\u003Cdiv class=\\\"uiContextualDialogPositioner\\\" id=\\\"u_0_28\\\" data-position=\\\"left\\\"\\u003E\\u003Cdiv class=\\\"uiOverlay uiContextualDialog\\\" data-width=\\\"300\\\" data-destroyonhide=\\\"false\\\" data-fadeonhide=\\\"false\\\"\\u003E\\u003Cdiv class=\\\"uiOverlayContent\\\"\\u003E\\u003Cdiv class=\\\"uiContextualDialogContent\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_4c\",{\n __html: \"\\u003Cdiv class=\\\"pam -cx-PRIVATE-blackbirdUpsell__dialogframe\\\"\\u003E\\u003Cdiv class=\\\"clearfix\\\"\\u003E\\u003Ci class=\\\"-cx-PRIVATE-uiImageBlock__image -cx-PRIVATE-uiImageBlock__smallimage lfloat img sp_3yt8ar sx_de779b\\\"\\u003E\\u003C/i\\u003E\\u003Cdiv class=\\\"clearfix -cx-PRIVATE-uiImageBlock__smallcontent -cx-PRIVATE-uiFlexibleBlock__flexiblecontent\\\"\\u003E\\u003Clabel class=\\\"rfloat uiCloseButton uiCloseButtonSmall\\\" for=\\\"u_0_2a\\\"\\u003E\\u003Cinput title=\\\"Remove\\\" type=\\\"button\\\" data-jsid=\\\"dialogCloseButton\\\" id=\\\"u_0_2a\\\" /\\u003E\\u003C/label\\u003E\\u003Cdiv class=\\\"prs\\\" data-jsid=\\\"dialogContent\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_47\",{\n __html: \"\\u003Cli\\u003E\\u003Cdiv class=\\\"phs fcg\\\"\\u003E\\u003Cspan data-jsid=\\\"message\\\"\\u003ELoading...\\u003C/span\\u003E\\u003C/div\\u003E\\u003C/li\\u003E\"\n },2,],[\"m_0_4d\",{\n __html: \"\\u003Cform method=\\\"post\\\" action=\\\"/ajax/chat/blackbird/learn_more.php?source=offline&promo_source=educate\\\" onsubmit=\\\"return window.Event && Event.__inlineSubmit && Event.__inlineSubmit(this,event)\\\" id=\\\"u_0_2b\\\"\\u003E\\u003Cinput type=\\\"hidden\\\" name=\\\"fb_dtsg\\\" value=\\\"AQApxIm6\\\" autocomplete=\\\"off\\\" /\\u003E\\u003Cstrong\\u003ETip:\\u003C/strong\\u003E You can turn on chat for just a few friends. \\u003Clabel class=\\\"uiLinkButton\\\"\\u003E\\u003Cinput type=\\\"submit\\\" value=\\\"Learn more\\\" /\\u003E\\u003C/label\\u003E.\\u003Cdiv class=\\\"-cx-PRIVATE-blackbirdUpsell__buttoncontainer\\\"\\u003E\\u003Ca class=\\\"mvm -cx-PRIVATE-blackbirdUpsell__chatsettingsbutton uiButton uiButtonConfirm\\\" href=\\\"#\\\" role=\\\"button\\\" ajaxify=\\\"/ajax/chat/privacy/settings_dialog.php\\\" rel=\\\"dialog\\\" data-jsid=\\\"chatSettingsButton\\\"\\u003E\\u003Cspan class=\\\"uiButtonText\\\"\\u003EEdit Chat Settings\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\\u003C/form\\u003E\"\n },3,],[\"m_0_46\",{\n __html: \"\\u003Cli class=\\\"-cx-PRIVATE-fbChatOrderedList__item\\\"\\u003E\\u003Ca class=\\\"clearfix -cx-PRIVATE-fbChatOrderedList__link\\\" data-jsid=\\\"anchor\\\" href=\\\"#\\\" role=\\\"\\\" rel=\\\"ignore\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbChat__favoritebutton -cx-PRIVATE-fbChatOrderedList__favoritebutton\\\" data-jsid=\\\"favorite_button\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"pic_container\\\"\\u003E\\u003Cimg class=\\\"pic img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y4/r/-PAXP-deijE.gif\\\" data-jsid=\\\"profile-photo\\\" alt=\\\"\\\" width=\\\"1\\\" height=\\\"1\\\" /\\u003E\\u003C/div\\u003E\\u003Cimg class=\\\"-cx-PRIVATE-fbChat__dragindicator -cx-PRIVATE-fbChatOrderedList__dragindicator img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yW/r/F7kk7-cjEKk.png\\\" alt=\\\"\\\" width=\\\"10\\\" height=\\\"8\\\" /\\u003E\\u003Cdiv class=\\\"clearfix\\\"\\u003E\\u003Cdiv class=\\\"rfloat\\\"\\u003E\\u003Cspan data-jsid=\\\"accessible-name\\\" class=\\\"accessible_elem\\\"\\u003E\\u003C/span\\u003E\\u003Cdiv class=\\\"icon_container\\\"\\u003E\\u003Cimg class=\\\"-cx-PRIVATE-fbLiveBar__status icon img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y4/r/-PAXP-deijE.gif\\\" alt=\\\"\\\" width=\\\"1\\\" height=\\\"1\\\" /\\u003E\\u003Cdiv class=\\\"active_time icon\\\"\\u003E\\u003C/div\\u003E\\u003Cimg class=\\\"status icon img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y4/r/-PAXP-deijE.gif\\\" alt=\\\"\\\" width=\\\"1\\\" height=\\\"1\\\" /\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv aria-hidden=\\\"true\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbChatOrderedList__name\\\" data-jsid=\\\"name\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbChatOrderedList__context\\\" data-jsid=\\\"context\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\"\n },2,],]\n },\n css: [\"za92D\",\"HgCpx\",\"UmFO+\",\"veUjj\",\"tAd6o\",\"c6lUE\",],\n bootloadable: {\n SortableGroup: {\n resources: [\"OH3xD\",\"6tAwh\",\"f7Tpb\",\"/MWWQ\",],\n \"module\": true\n },\n LitestandSidebarBookmarksDisplay: {\n resources: [\"OH3xD\",\"veUjj\",\"za92D\",\"3Mxco\",],\n \"module\": true\n },\n LitestandSidebar: {\n resources: [\"OH3xD\",\"f7Tpb\",\"kVM+7\",\"js0se\",\"AVmr9\",\"za92D\",\"UmFO+\",],\n \"module\": true\n }\n },\n resource_map: {\n \"6tAwh\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yM/r/Oe0OO6kzRjj.js\"\n },\n \"1YKDj\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yQ/r/mxp6_mu5GrT.js\"\n },\n \"3Mxco\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yR/r/lRDMT2kJPzt.js\"\n },\n \"kVM+7\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yO/r/mgoWhiluXyn.js\"\n }\n },\n ixData: {\n \"/images/chat/sidebar/newGroupChatLitestand.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_b8k8sa\",\n spriteCssClass: \"sx_faf97d\"\n },\n \"/images/gifts/icons/cake_icon.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_b8k8sa\",\n spriteCssClass: \"sx_06a61f\"\n },\n \"/images/litestand/sidebar/blended/new_group_chat.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_b8k8sa\",\n spriteCssClass: \"sx_6e4a51\"\n },\n \"/images/chat/status/online.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_047178\"\n },\n \"/images/litestand/bookmarks/sidebar/remove.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_5ed30e\"\n },\n \"/images/litestand/sidebar/blended/online.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_dd19b5\"\n },\n \"/images/litestand/sidebar/blended/pushable.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_ff5be1\"\n },\n \"/images/litestand/bookmarks/sidebar/add.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_bf972e\"\n },\n \"/images/litestand/sidebar/pushable.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_b0241d\"\n },\n \"/images/litestand/sidebar/online.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_8d09d2\"\n },\n \"/images/chat/add.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_26b2d5\"\n },\n \"/images/chat/status/mobile.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_479fb2\"\n },\n \"/images/chat/sidebar/newGroupChat.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_b8k8sa\",\n spriteCssClass: \"sx_0de2a7\"\n },\n \"/images/chat/delete.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_9a8650\"\n }\n },\n js: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"XH2Cu\",\"OSd/n\",\"TXKLp\",\"zBhY6\",\"WD1Wm\",\"/MWWQ\",\"bmJBG\",\"1YKDj\",\"js0se\",],\n JSBNG__onload: [\"FbdInstall.updateSidebarLinkVisibility()\",],\n id: \"pagelet_sidebar\",\n phase: 3\n});"); |
| // 6076 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"bigPipe.onPageletArrive({\n append: \"u_0_19_right\",\n is_last: true,\n is_second_to_last_phase: true,\n content: {\n pagelet_timeline_recent_segment_0_0_right: {\n container_id: \"u_0_2r\"\n }\n },\n jsmods: {\n require: [[\"TimelineContentLoader\",\"markSectionAsLoaded\",[],[\"u_0_1a\",\"recent\",\"0\",],],[\"TimelineCapsule\",\"loadTwoColumnUnits\",[],[\"u_0_19\",],],[\"TimelineStickyRightColumn\",\"adjust\",[],[],],]\n },\n css: [\"UmFO+\",\"veUjj\",\"j1x0z\",\"VPsP4\",\"6T3FY\",],\n bootloadable: {\n },\n resource_map: {\n VPsP4: {\n type: \"css\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/ym/r/s8lpf9hIvl4.css\"\n },\n \"6T3FY\": {\n type: \"css\",\n permanent: 1,\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yZ/r/6TQwVHfa0ql.css\"\n }\n },\n js: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"/MWWQ\",\"nxD7O\",\"xfhln\",\"XH2Cu\",\"gyG67\",\"e0RyX\",],\n id: \"pagelet_timeline_recent_segment_0_0_right\",\n phase: 3\n});"); |
| // 6077 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s24d05b9cd73e1a2cea749ba47329c4b59ea3806a"); |
| // 6078 |
| geval("bigPipe.onPageletArrive({\n append: \"u_0_19_right\",\n is_last: true,\n is_second_to_last_phase: true,\n JSBNG__content: {\n pagelet_timeline_recent_segment_0_0_right: {\n container_id: \"u_0_2r\"\n }\n },\n jsmods: {\n require: [[\"TimelineContentLoader\",\"markSectionAsLoaded\",[],[\"u_0_1a\",\"recent\",\"0\",],],[\"TimelineCapsule\",\"loadTwoColumnUnits\",[],[\"u_0_19\",],],[\"TimelineStickyRightColumn\",\"adjust\",[],[],],]\n },\n css: [\"UmFO+\",\"veUjj\",\"j1x0z\",\"VPsP4\",\"6T3FY\",],\n bootloadable: {\n },\n resource_map: {\n VPsP4: {\n type: \"css\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/ym/r/s8lpf9hIvl4.css\"\n },\n \"6T3FY\": {\n type: \"css\",\n permanent: 1,\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yZ/r/6TQwVHfa0ql.css\"\n }\n },\n js: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"/MWWQ\",\"nxD7O\",\"xfhln\",\"XH2Cu\",\"gyG67\",\"e0RyX\",],\n id: \"pagelet_timeline_recent_segment_0_0_right\",\n phase: 3\n});"); |
| // 6122 |
| fpc.call(JSBNG_Replay.s1da4c91f736d950de61ac9962e5a050e9ae4a4ed_565[0], o81,undefined); |
| // undefined |
| o81 = null; |
| // 6223 |
| fpc.call(JSBNG_Replay.s1da4c91f736d950de61ac9962e5a050e9ae4a4ed_565[0], o70,undefined); |
| // undefined |
| o70 = null; |
| // 6260 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_178[0](false); |
| // 6273 |
| fpc.call(JSBNG_Replay.s1da4c91f736d950de61ac9962e5a050e9ae4a4ed_104[0], o9,undefined); |
| // undefined |
| o9 = null; |
| // 6301 |
| fpc.call(JSBNG_Replay.s1da4c91f736d950de61ac9962e5a050e9ae4a4ed_565[0], o4,undefined); |
| // undefined |
| o4 = null; |
| // 6600 |
| fpc.call(JSBNG_Replay.s1da4c91f736d950de61ac9962e5a050e9ae4a4ed_565[0], o74,undefined); |
| // undefined |
| o74 = null; |
| // 6640 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"bigPipe.onPageletArrive({\n content: {\n pagelet_side_ads: {\n container_id: \"u_0_2t\"\n }\n },\n jsmods: {\n require: [[\"TimelineSideAds\",\"init\",[\"m_0_4j\",],[{\n __m: \"m_0_4j\"\n },1055580469,{\n refresh_delay: 5000,\n refresh_threshold: 30000,\n mouse_move: 1,\n max_ads: 5\n },],],],\n elements: [[\"m_0_4j\",\"u_0_2s\",2,],]\n },\n css: [\"veUjj\",\"UmFO+\",\"j1x0z\",],\n bootloadable: {\n },\n resource_map: {\n R940f: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y4/r/kUk1EmwlmF-.js\"\n }\n },\n js: [\"OH3xD\",\"/MWWQ\",\"f7Tpb\",\"R940f\",\"nxD7O\",\"AVmr9\",],\n id: \"pagelet_side_ads\",\n phase: 4\n});"); |
| // 6641 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"sf86513d80bdc51d2e8e303a0d02a6e4095d1b1d6"); |
| // 6642 |
| geval("bigPipe.onPageletArrive({\n JSBNG__content: {\n pagelet_side_ads: {\n container_id: \"u_0_2t\"\n }\n },\n jsmods: {\n require: [[\"TimelineSideAds\",\"init\",[\"m_0_4j\",],[{\n __m: \"m_0_4j\"\n },1055580469,{\n refresh_delay: 5000,\n refresh_threshold: 30000,\n mouse_move: 1,\n max_ads: 5\n },],],],\n elements: [[\"m_0_4j\",\"u_0_2s\",2,],]\n },\n css: [\"veUjj\",\"UmFO+\",\"j1x0z\",],\n bootloadable: {\n },\n resource_map: {\n R940f: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y4/r/kUk1EmwlmF-.js\"\n }\n },\n js: [\"OH3xD\",\"/MWWQ\",\"f7Tpb\",\"R940f\",\"nxD7O\",\"AVmr9\",],\n id: \"pagelet_side_ads\",\n phase: 4\n});"); |
| // 6649 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"bigPipe.onPageletArrive({\n content: {\n pagelet_dock: {\n container_id: \"u_0_3i\"\n }\n },\n jsmods: {\n require: [[\"MusicButtonManager\",\"init\",[],[[\"music.song\",],],],[\"initLiveMessageReceiver\",],[\"Dock\",\"init\",[\"m_0_4k\",],[{\n __m: \"m_0_4k\"\n },],],[\"React\",\"constructAndRenderComponent\",[\"NotificationBeeper.react\",\"m_0_4l\",],[{\n __m: \"NotificationBeeper.react\"\n },{\n unseenVsUnread: false,\n canPause: false,\n shouldLogImpressions: false,\n soundPath: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/yy/r/odIeERVR1c5.mp3\",\n soundEnabled: true,\n tracking: \"{\\\"ref\\\":\\\"beeper\\\",\\\"jewel\\\":\\\"notifications\\\",\\\"type\\\":\\\"click2canvas\\\"}\"\n },{\n __m: \"m_0_4l\"\n },],],[\"ChatApp\",\"init\",[\"m_0_4m\",\"m_0_4n\",],[{\n __m: \"m_0_4m\"\n },{\n __m: \"m_0_4n\"\n },{\n payload_source: \"server_initial_data\"\n },],],[\"ChatOptions\",],[\"ShortProfiles\",\"setMulti\",[],[{\n 100006118350059: {\n id: \"100006118350059\",\n name: \"Javasee Cript\",\n firstName: \"Javasee\",\n vanity: \"javasee.cript\",\n thumbSrc: \"http://jsbngssl.fbcdn-profile-a.akamaihd.net/hprofile-ak-prn2/s32x32/275646_100006118350059_324335073_q.jpg\",\n uri: \"http://jsbngssl.www.facebook.com/javasee.cript\",\n gender: 2,\n type: \"user\",\n is_friend: false,\n social_snippets: null,\n showVideoPromo: false,\n searchTokens: [\"Cript\",\"Javasee\",]\n }\n },],],[\"m_0_4p\",],[\"m_0_4r\",],[\"Typeahead\",\"init\",[\"m_0_4s\",\"m_0_4r\",],[{\n __m: \"m_0_4s\"\n },{\n __m: \"m_0_4r\"\n },[\"chatTypeahead\",\"buildBestAvailableNames\",\"showLoadingIndicator\",],null,],],[\"ClearableTypeahead\",\"resetOnCloseButtonClick\",[\"m_0_4r\",\"m_0_4u\",],[{\n __m: \"m_0_4r\"\n },{\n __m: \"m_0_4u\"\n },],],[\"m_0_4x\",],[\"m_0_4y\",],[\"Layer\",\"init\",[\"m_0_4y\",\"m_0_4z\",],[{\n __m: \"m_0_4y\"\n },{\n __m: \"m_0_4z\"\n },],],[\"m_0_4q\",],[\"m_0_75\",],[\"Typeahead\",\"init\",[\"m_0_73\",\"m_0_75\",],[{\n __m: \"m_0_73\"\n },{\n __m: \"m_0_75\"\n },[],null,],],],\n instances: [[\"m_0_4x\",[\"ChatSidebarDropdown\",\"m_0_4w\",],[{\n __m: \"m_0_4w\"\n },null,],1,],[\"m_0_5t\",[\"XHPTemplate\",\"m_0_6x\",],[{\n __m: \"m_0_6x\"\n },],2,],[\"m_0_5r\",[\"XHPTemplate\",\"m_0_6v\",],[{\n __m: \"m_0_6v\"\n },],2,],[\"m_0_5u\",[\"XHPTemplate\",\"m_0_6y\",],[{\n __m: \"m_0_6y\"\n },],2,],[\"m_0_52\",[\"XHPTemplate\",\"m_0_54\",],[{\n __m: \"m_0_54\"\n },],2,],[\"m_0_5o\",[\"XHPTemplate\",\"m_0_6s\",],[{\n __m: \"m_0_6s\"\n },],2,],[\"m_0_56\",[\"XHPTemplate\",\"m_0_6b\",],[{\n __m: \"m_0_6b\"\n },],2,],[\"m_0_64\",[\"XHPTemplate\",\"m_0_7e\",],[{\n __m: \"m_0_7e\"\n },],2,],[\"m_0_5h\",[\"XHPTemplate\",\"m_0_6l\",],[{\n __m: \"m_0_6l\"\n },],2,],[\"m_0_5v\",[\"XHPTemplate\",\"m_0_6z\",],[{\n __m: \"m_0_6z\"\n },],2,],[\"m_0_58\",[\"XHPTemplate\",\"m_0_6d\",],[{\n __m: \"m_0_6d\"\n },],2,],[\"m_0_5b\",[\"XHPTemplate\",\"m_0_6g\",],[{\n __m: \"m_0_6g\"\n },],2,],[\"m_0_5e\",[\"XHPTemplate\",\"m_0_6j\",],[{\n __m: \"m_0_6j\"\n },],2,],[\"m_0_69\",[\"XHPTemplate\",\"m_0_7l\",],[{\n __m: \"m_0_7l\"\n },],2,],[\"m_0_5p\",[\"XHPTemplate\",\"m_0_6t\",],[{\n __m: \"m_0_6t\"\n },],2,],[\"m_0_5l\",[\"XHPTemplate\",\"m_0_6p\",],[{\n __m: \"m_0_6p\"\n },],2,],[\"m_0_5n\",[\"XHPTemplate\",\"m_0_6r\",],[{\n __m: \"m_0_6r\"\n },],2,],[\"m_0_5i\",[\"XHPTemplate\",\"m_0_6m\",],[{\n __m: \"m_0_6m\"\n },],2,],[\"m_0_4v\",[\"ChatTypeaheadDataSource\",],[{\n alwaysPrefixMatch: true,\n showOfflineUsers: true\n },],2,],[\"m_0_5a\",[\"XHPTemplate\",\"m_0_6f\",],[{\n __m: \"m_0_6f\"\n },],2,],[\"m_0_5g\",[\"DataSource\",],[{\n maxResults: 5,\n queryData: [],\n bootstrapData: {\n viewer: 100006118350059,\n token: \"1374777501-7\",\n filter: [\"user\",],\n options: [\"friends_only\",],\n context: \"messages_bootstrap\"\n },\n bootstrapEndpoint: \"/ajax/typeahead/first_degree.php\"\n },],2,],[\"m_0_5j\",[\"XHPTemplate\",\"m_0_6n\",],[{\n __m: \"m_0_6n\"\n },],2,],[\"m_0_63\",[\"XHPTemplate\",\"m_0_7d\",],[{\n __m: \"m_0_7d\"\n },],2,],[\"m_0_5m\",[\"XHPTemplate\",\"m_0_6q\",],[{\n __m: \"m_0_6q\"\n },],2,],[\"m_0_5q\",[\"XHPTemplate\",\"m_0_6u\",],[{\n __m: \"m_0_6u\"\n },],2,],[\"m_0_4r\",[\"Typeahead\",\"m_0_4v\",\"ChatTypeaheadView\",\"m_0_4s\",\"ChatTypeaheadRenderer\",\"ChatTypeaheadCore\",\"m_0_4t\",],[{\n __m: \"m_0_4v\"\n },{\n node_id: \"u_0_2x\",\n node: null,\n ctor: {\n __m: \"ChatTypeaheadView\"\n },\n options: {\n causalElement: {\n __m: \"m_0_4s\"\n },\n minWidth: 0,\n alignment: \"left\",\n renderer: {\n __m: \"ChatTypeaheadRenderer\"\n },\n showBadges: 1,\n autoSelect: true\n }\n },{\n ctor: {\n __m: \"ChatTypeaheadCore\"\n },\n options: {\n resetOnSelect: true,\n setValueOnSelect: false,\n keepFocused: false\n }\n },{\n __m: \"m_0_4t\"\n },],7,],[\"m_0_4q\",[\"ChatOrderedList\",\"m_0_50\",\"m_0_51\",\"m_0_52\",\"m_0_4y\",],[false,{\n __m: \"m_0_50\"\n },{\n __m: \"m_0_51\"\n },{\n __m: \"m_0_52\"\n },{\n __m: \"m_0_4y\"\n },null,],3,],[\"m_0_62\",[\"XHPTemplate\",\"m_0_7c\",],[{\n __m: \"m_0_7c\"\n },],2,],[\"m_0_59\",[\"XHPTemplate\",\"m_0_6e\",],[{\n __m: \"m_0_6e\"\n },],2,],[\"m_0_5d\",[\"XHPTemplate\",\"m_0_6i\",],[{\n __m: \"m_0_6i\"\n },],2,],[\"m_0_66\",[\"XHPTemplate\",\"m_0_7i\",],[{\n __m: \"m_0_7i\"\n },],2,],[\"m_0_5z\",[\"XHPTemplate\",\"m_0_79\",],[{\n __m: \"m_0_79\"\n },],2,],[\"m_0_61\",[\"XHPTemplate\",\"m_0_7b\",],[{\n __m: \"m_0_7b\"\n },],2,],[\"m_0_4y\",[\"LegacyContextualDialog\",\"AccessibleLayer\",],[{\n buildWrapper: false,\n causalElement: null,\n addedBehaviors: [{\n __m: \"AccessibleLayer\"\n },]\n },],5,],[\"m_0_51\",[\"XHPTemplate\",\"m_0_53\",],[{\n __m: \"m_0_53\"\n },],2,],[\"m_0_75\",[\"Typeahead\",\"m_0_76\",\"ContextualTypeaheadView\",\"m_0_73\",\"TypeaheadCore\",\"m_0_74\",],[{\n __m: \"m_0_76\"\n },{\n node_id: \"\",\n node: null,\n ctor: {\n __m: \"ContextualTypeaheadView\"\n },\n options: {\n causalElement: {\n __m: \"m_0_73\"\n },\n minWidth: 0,\n alignment: \"left\",\n showBadges: 1\n }\n },{\n ctor: {\n __m: \"TypeaheadCore\"\n },\n options: {\n }\n },{\n __m: \"m_0_74\"\n },],3,],[\"m_0_57\",[\"XHPTemplate\",\"m_0_6c\",],[{\n __m: \"m_0_6c\"\n },],2,],[\"m_0_5c\",[\"XHPTemplate\",\"m_0_6h\",],[{\n __m: \"m_0_6h\"\n },],2,],[\"m_0_5w\",[\"XHPTemplate\",\"m_0_72\",],[{\n __m: \"m_0_72\"\n },],2,],[\"m_0_55\",[\"XHPTemplate\",\"m_0_6a\",],[{\n __m: \"m_0_6a\"\n },],2,],[\"m_0_5k\",[\"XHPTemplate\",\"m_0_6o\",],[{\n __m: \"m_0_6o\"\n },],2,],[\"m_0_5s\",[\"XHPTemplate\",\"m_0_6w\",],[{\n __m: \"m_0_6w\"\n },],2,],[\"m_0_5y\",[\"XHPTemplate\",\"m_0_78\",],[{\n __m: \"m_0_78\"\n },],2,],[\"m_0_65\",[\"XHPTemplate\",\"m_0_7h\",],[{\n __m: \"m_0_7h\"\n },],2,],[\"m_0_5x\",[\"XHPTemplate\",\"m_0_77\",],[{\n __m: \"m_0_77\"\n },],2,],[\"m_0_4p\",[\"BuddyListNub\",\"m_0_4o\",\"m_0_4q\",\"m_0_4r\",],[{\n __m: \"m_0_4o\"\n },{\n __m: \"m_0_4q\"\n },{\n __m: \"m_0_4r\"\n },],1,],[\"m_0_5f\",[\"XHPTemplate\",\"m_0_6k\",],[{\n __m: \"m_0_6k\"\n },],2,],[\"m_0_68\",[\"XHPTemplate\",\"m_0_7k\",],[{\n __m: \"m_0_7k\"\n },],2,],[\"m_0_76\",[\"DataSource\",],[[],],2,],[\"m_0_60\",[\"XHPTemplate\",\"m_0_7a\",],[{\n __m: \"m_0_7a\"\n },],2,],[\"m_0_67\",[\"XHPTemplate\",\"m_0_7j\",],[{\n __m: \"m_0_7j\"\n },],2,],],\n define: [[\"LinkshimHandlerConfig\",[],{\n supports_meta_referrer: true,\n render_verification_rate: 1000\n },27,],[\"ChatTabTemplates\",[\"m_0_5h\",\"m_0_5i\",\"m_0_5j\",\"m_0_5k\",\"m_0_5l\",\"m_0_5m\",\"m_0_5n\",\"m_0_5o\",\"m_0_5p\",\"m_0_5q\",\"m_0_5r\",\"m_0_5s\",\"m_0_5t\",\"m_0_5u\",\"m_0_5v\",\"m_0_5w\",\"m_0_5x\",\"m_0_5y\",\"m_0_5z\",\"m_0_60\",\"m_0_61\",\"m_0_62\",\"m_0_63\",\"m_0_64\",],{\n \":fb:chat:conversation:message:event\": {\n __m: \"m_0_5h\"\n },\n \":fb:chat:conversation:message-group\": {\n __m: \"m_0_5i\"\n },\n \":fb:chat:conversation:message:undertext\": {\n __m: \"m_0_5j\"\n },\n \":fb:chat:tab:selector:item\": {\n __m: \"m_0_5k\"\n },\n \":fb:mercury:chat:message:forward\": {\n __m: \"m_0_5l\"\n },\n \":fb:chat:tab:selector\": {\n __m: \"m_0_5m\"\n },\n \":fb:mercury:chat:multichat-tooltip-item\": {\n __m: \"m_0_5n\"\n },\n \":fb:chat:conversation:date-break\": {\n __m: \"m_0_5o\"\n },\n \":fb:mercury:call:tour\": {\n __m: \"m_0_5p\"\n },\n \":fb:mercury:chat:tab-sheet:message-icon-sheet\": {\n __m: \"m_0_5q\"\n },\n \":fb:mercury:chat:tab-sheet:clickable-message-icon-sheet\": {\n __m: \"m_0_5r\"\n },\n \":fb:mercury:chat:tab-sheet:user-blocked\": {\n __m: \"m_0_5s\"\n },\n \":fb:chat:conversation:message:subject\": {\n __m: \"m_0_5t\"\n },\n \":fb:mercury:chat:tab-sheet:add-friends-empty-tab\": {\n __m: \"m_0_5u\"\n },\n \":fb:mercury:chat:multichat-tab\": {\n __m: \"m_0_5v\"\n },\n \":fb:mercury:chat:tab-sheet:name-conversation\": {\n __m: \"m_0_5w\"\n },\n \":fb:chat:conversation:message\": {\n __m: \"m_0_5x\"\n },\n \":fb:mercury:call:promo\": {\n __m: \"m_0_5y\"\n },\n \":fb:mercury:chat:tab-sheet:add-friends\": {\n __m: \"m_0_5z\"\n },\n \":fb:chat:conversation:message:status\": {\n __m: \"m_0_60\"\n },\n \":fb:mercury:chat:tab-sheet:message-mute-sheet\": {\n __m: \"m_0_61\"\n },\n \":fb:mercury:typing-indicator:typing\": {\n __m: \"m_0_62\"\n },\n \":fb:mercury:timestamp\": {\n __m: \"m_0_63\"\n },\n \":fb:mercury:chat:user-tab\": {\n __m: \"m_0_64\"\n }\n },15,],[\"VideoCallTemplates\",[\"m_0_65\",],{\n \":fb:videocall:incoming-dialog\": {\n __m: \"m_0_65\"\n }\n },74,],[\"MercuryTypeaheadTemplates\",[\"m_0_66\",\"m_0_67\",\"m_0_68\",\"m_0_69\",],{\n \":fb:mercury:tokenizer\": {\n __m: \"m_0_66\"\n },\n \":fb:mercury:typeahead:header\": {\n __m: \"m_0_67\"\n },\n \":fb:mercury:typeahead\": {\n __m: \"m_0_68\"\n },\n \":fb:mercury:typeahead:result\": {\n __m: \"m_0_69\"\n }\n },43,],[\"MercurySheetTemplates\",[\"m_0_55\",],{\n \":fb:mercury:tab-sheet:loading\": {\n __m: \"m_0_55\"\n }\n },40,],[\"MercuryAttachmentTemplates\",[\"m_0_56\",\"m_0_57\",\"m_0_58\",\"m_0_59\",\"m_0_5a\",\"m_0_5b\",\"m_0_5c\",\"m_0_5d\",\"m_0_5e\",\"m_0_5f\",],{\n \":fb:mercury:attachment:error\": {\n __m: \"m_0_56\"\n },\n \":fb:mercury:attachment:video-thumb\": {\n __m: \"m_0_57\"\n },\n \":fb:mercury:attachment:file-name\": {\n __m: \"m_0_58\"\n },\n \":fb:mercury:attachment:external-link\": {\n __m: \"m_0_59\"\n },\n \":fb:mercury:attachment:music\": {\n __m: \"m_0_5a\"\n },\n \":fb:mercury:attachment:file-link\": {\n __m: \"m_0_5b\"\n },\n \":fb:mercury:attachment:preview\": {\n __m: \"m_0_5c\"\n },\n \":fb:mercury:attachment:share-link\": {\n __m: \"m_0_5d\"\n },\n \":fb:mercury:upload-file-row\": {\n __m: \"m_0_5e\"\n },\n \":fb:mercury:attachment:extended-file-link\": {\n __m: \"m_0_5f\"\n }\n },34,],[\"MercuryDataSourceWrapper\",[\"m_0_5g\",],{\n source: {\n __m: \"m_0_5g\"\n }\n },37,],[\"MercuryStickersInitialData\",[],{\n packs: [{\n id: 126361870881943,\n name: \"Meep\",\n icon: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yd/r/wn5XeO2Rkqj.png\",\n selectedIcon: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yN/r/sZ4spcbuYtY.png\"\n },{\n id: 350357561732812,\n name: \"Pusheen\",\n icon: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yy/r/kLIslj7Vlau.png\",\n selectedIcon: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yz/r/58FtCc-hDRb.png\"\n },{\n id: \"emoticons\",\n name: \"Emoticons\",\n icon: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y_/r/4Dc6kC7GMzT.png\",\n selectedIcon: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yV/r/d-mu_AVkpiU.png\"\n },]\n },144,],],\n elements: [[\"m_0_4n\",\"u_0_2w\",2,],[\"m_0_7f\",\"u_0_3h\",2,\"m_0_7e\",],[\"m_0_71\",\"u_0_39\",2,\"m_0_6z\",],[\"m_0_4t\",\"u_0_2y\",2,],[\"m_0_4o\",\"fbDockChatBuddylistNub\",2,],[\"m_0_70\",\"u_0_3a\",2,\"m_0_6z\",],[\"m_0_4u\",\"u_0_2z\",2,],[\"m_0_73\",\"u_0_3c\",4,\"m_0_72\",],[\"m_0_4w\",\"u_0_31\",2,],[\"m_0_4m\",\"u_0_2v\",2,],[\"m_0_4s\",\"u_0_30\",4,],[\"m_0_74\",\"u_0_3b\",2,\"m_0_72\",],[\"m_0_4l\",\"u_0_34\",2,],[\"m_0_4k\",\"u_0_2u\",2,],[\"m_0_7g\",\"u_0_3g\",2,\"m_0_7e\",],[\"m_0_50\",\"u_0_33\",2,],],\n markup: [[\"m_0_6f\",{\n __html: \"\\u003Cdiv class=\\\"musicAttachment\\\"\\u003E\\u003Cdiv class=\\\"-cx-PUBLIC-mercuryAttachments__attachment -cx-PUBLIC-mercuryAttachments__fileattachment\\\" data-jsid=\\\"icon_link\\\"\\u003E\\u003Ca class=\\\"uiIconText -cx-PRIVATE-mercuryAttachments__icontext\\\" href=\\\"#\\\" data-jsid=\\\"link\\\" role=\\\"button\\\"\\u003E\\u003Ci class=\\\"img sp_4ie5gn sx_0adf5e\\\"\\u003E\\u003C/i\\u003E\\u003Cspan data-jsid=\\\"filename\\\" class=\\\"-cx-PUBLIC-mercuryAttachments__filename\\\"\\u003E\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PUBLIC-mercuryImages__imagepreviewcontainer clearfix stat_elem\\\" data-jsid=\\\"preview\\\"\\u003E\\u003Ca class=\\\"-cx-PUBLIC-mercuryImages__imagepreview\\\" data-jsid=\\\"image-link\\\" href=\\\"#\\\" target=\\\"_blank\\\" role=\\\"button\\\"\\u003E\\u003Cimg data-jsid=\\\"preview-image\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yw/r/drP8vlvSl_8.gif\\\" /\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_77\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PRIVATE-fbChatMessage__root fsm\\\" data-jsid=\\\"message\\\"\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6h\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PUBLIC-mercuryImages__imagepreviewcontainer clearfix stat_elem\\\"\\u003E\\u003Ca class=\\\"-cx-PUBLIC-mercuryImages__imagepreview\\\" data-jsid=\\\"image-link\\\" href=\\\"#\\\" target=\\\"_blank\\\" role=\\\"button\\\"\\u003E\\u003Cimg data-jsid=\\\"preview-image\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yw/r/drP8vlvSl_8.gif\\\" /\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_78\",{\n __html: \"\\u003Cdiv\\u003E\\u003Cdiv class=\\\"clearfix mvm mrm mll videoCallPromo\\\"\\u003E\\u003Ci class=\\\"-cx-PRIVATE-uiImageBlock__image -cx-PRIVATE-uiImageBlock__mediumimage lfloat img sp_4ie5gn sx_4e6efe\\\"\\u003E\\u003C/i\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-uiFlexibleBlock__flexiblecontent\\\"\\u003E\\u003Cdiv class=\\\"pls\\\"\\u003E\\u003Cspan class=\\\"calloutTitle fwb\\\"\\u003ETry talking face to face\\u003C/span\\u003E\\u003Cdiv class=\\\"fsm fwn fcg\\\"\\u003EClick \\u003Cspan\\u003E ( \\u003Ci class=\\\"onlineStatusIcon img sp_4ie5gn sx_f7362e\\\"\\u003E\\u003C/i\\u003E )\\u003C/span\\u003E below to start a video call.\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"uiOverlayFooter uiContextualDialogFooter uiBoxGray topborder\\\"\\u003E\\u003Ctable class=\\\"uiGrid\\\" cellspacing=\\\"0\\\" cellpadding=\\\"0\\\"\\u003E\\u003Ctbody\\u003E\\u003Ctr\\u003E\\u003Ctd class=\\\"prs uiOverlayFooterMessage\\\"\\u003E\\u003Ca target=\\\"_blank\\\" href=\\\"/help/?page=177940565599960\\\"\\u003ELearn more\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"uiOverlayFooterButtons\\\"\\u003E\\u003Ca class=\\\"uiOverlayButton layerCancel uiButton uiButtonConfirm\\\" href=\\\"#\\\" role=\\\"button\\\" name=\\\"cancel\\\"\\u003E\\u003Cspan class=\\\"uiButtonText\\\"\\u003EClose\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003C/tr\\u003E\\u003C/tbody\\u003E\\u003C/table\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6n\",{\n __html: \"\\u003Cdiv\\u003E\\u003Cdiv data-jsid=\\\"message\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryStatus__undertext fwb fcg\\\" data-jsid=\\\"status\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6q\",{\n __html: \"\\u003Cdiv class=\\\"uiToggle -cx-PRIVATE-fbNub__root fbNub -cx-PRIVATE-fbChatTabSelector__root\\\"\\u003E\\u003Ca class=\\\"fbNubButton\\\" tabindex=\\\"0\\\" href=\\\"#\\\" rel=\\\"toggle\\\" role=\\\"button\\\"\\u003E\\u003Ci class=\\\"messagesIcon img sp_3yt8ar sx_de779b\\\"\\u003E\\u003C/i\\u003E\\u003Cspan data-jsid=\\\"numTabs\\\"\\u003E\\u003C/span\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-fbChatTabSelector__nummessages\\\" data-jsid=\\\"numMessages\\\"\\u003E\\u003C/span\\u003E\\u003C/a\\u003E\\u003Cdiv class=\\\"fbNubFlyout uiToggleFlyout noTitlebar\\\"\\u003E\\u003Cdiv class=\\\"fbNubFlyoutOuter\\\"\\u003E\\u003Cdiv class=\\\"fbNubFlyoutInner\\\"\\u003E\\u003Cdiv class=\\\"fbNubFlyoutBody scrollable\\\"\\u003E\\u003Cdiv class=\\\"fbNubFlyoutBodyContent\\\"\\u003E\\u003Cdiv role=\\\"menu\\\" class=\\\"uiMenu\\\" data-jsid=\\\"menu\\\"\\u003E\\u003Cul class=\\\"uiMenuInner\\\"\\u003E\\u003Cli class=\\\"uiMenuItem\\\" data-label=\\\"Dummy\\\"\\u003E\\u003Ca class=\\\"itemAnchor\\\" role=\\\"menuitem\\\" tabindex=\\\"0\\\" href=\\\"#\\\"\\u003E\\u003Cspan class=\\\"itemLabel fsm\\\"\\u003E Dummy \\u003C/span\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\\u003C/ul\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_7d\",{\n __html: \"\\u003Cabbr title=\\\"Wednesday, December 31, 1969 at 4:00pm\\\" data-utime=\\\"0\\\" class=\\\"hidden_elem timestamp\\\" data-jsid=\\\"timestamp\\\"\\u003Eover a year ago\\u003C/abbr\\u003E\"\n },2,],[\"m_0_7h\",{\n __html: \"\\u003Cdiv class=\\\"clearfix\\\"\\u003E\\u003Ci class=\\\"mrm -cx-PRIVATE-uiSquareImage__root -cx-PRIVATE-uiImageBlockDeprecated__image -cx-PRIVATE-uiImageBlockDeprecated__iconimage -cx-PRIVATE-uiSquareImage__large img sp_283j6i sx_8ef0b4\\\" data-jsid=\\\"profilePhoto\\\"\\u003E\\u003C/i\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-uiImageBlockDeprecated__iconcontent -cx-PRIVATE-uiImageBlockDeprecated__content\\\"\\u003E\\u003Cdiv class=\\\"mbs fsl fwb fcb\\\" data-jsid=\\\"mainText\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"aux-message fcg\\\" data-jsid=\\\"auxMessage\\\"\\u003EVideo will start as soon as you answer.\\u003C/div\\u003E\\u003Cdiv class=\\\"mts hidden_elem fcg\\\" data-jsid=\\\"slowMessage\\\"\\u003E\\u003Cspan class=\\\"fwb fcb\\\"\\u003EHaving trouble?\\u003C/span\\u003E Your connection may be \\u003Ca href=\\\"/help/214265948627885\\\" target=\\\"_blank\\\"\\u003Etoo slow\\u003C/a\\u003E.\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6o\",{\n __html: \"\\u003Cli class=\\\"uiMenuItem -cx-PRIVATE-fbChatTabSelector__item\\\"\\u003E\\u003Ca class=\\\"itemAnchor\\\" role=\\\"menuitem\\\" tabindex=\\\"-1\\\" href=\\\"#\\\"\\u003E\\u003Cspan class=\\\"itemLabel fsm\\\"\\u003E\\u003Cdiv class=\\\"clearfix\\\"\\u003E\\u003Clabel class=\\\"rfloat uiCloseButton uiCloseButtonSmall\\\" for=\\\"u_0_36\\\"\\u003E\\u003Cinput title=\\\"Remove\\\" type=\\\"button\\\" data-jsid=\\\"closeButton\\\" id=\\\"u_0_36\\\" /\\u003E\\u003C/label\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbChatTabSelector__itemcontent\\\"\\u003E\\u003Cspan class=\\\"unreadCount\\\" data-jsid=\\\"unreadCount\\\"\\u003E\\u003C/span\\u003E\\u003Cspan data-jsid=\\\"content\\\"\\u003E\\u003C/span\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\"\n },2,],[\"m_0_6x\",{\n __html: \"\\u003Cdiv class=\\\"fbChatMessageSubject fsm fwb\\\" data-jsid=\\\"messageSubject\\\"\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_72\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PRIVATE-chatNameConversation__root\\\"\\u003E\\u003Ctable class=\\\"uiGrid\\\" cellspacing=\\\"0\\\" cellpadding=\\\"0\\\"\\u003E\\u003Ctbody\\u003E\\u003Ctr\\u003E\\u003Ctd class=\\\"vTop -cx-PRIVATE-chatNameConversation__inputcontainer\\\"\\u003E\\u003Cdiv class=\\\"uiTypeahead\\\" id=\\\"u_0_3b\\\"\\u003E\\u003Cdiv class=\\\"wrap\\\"\\u003E\\u003Cinput type=\\\"hidden\\\" autocomplete=\\\"off\\\" class=\\\"hiddenInput\\\" /\\u003E\\u003Cdiv class=\\\"innerWrap\\\"\\u003E\\u003Cinput type=\\\"text\\\" class=\\\"inputtext textInput DOMControl_placeholder\\\" data-jsid=\\\"nameInput\\\" placeholder=\\\"Name this conversation\\\" autocomplete=\\\"off\\\" aria-autocomplete=\\\"list\\\" aria-expanded=\\\"false\\\" aria-owns=\\\"typeahead_list_u_0_3b\\\" role=\\\"combobox\\\" spellcheck=\\\"false\\\" value=\\\"Name this conversation\\\" aria-label=\\\"Name this conversation\\\" id=\\\"u_0_3c\\\" /\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"vTop\\\"\\u003E\\u003Cbutton value=\\\"1\\\" class=\\\"-cx-PRIVATE-abstractButton__root -cx-PRIVATE-uiButton__root selected -cx-PRIVATE-uiButton__confirm\\\" data-jsid=\\\"doneButton\\\" type=\\\"submit\\\"\\u003EDone\\u003C/button\\u003E\\u003C/td\\u003E\\u003C/tr\\u003E\\u003C/tbody\\u003E\\u003C/table\\u003E\\u003C/div\\u003E\"\n },4,],[\"m_0_7j\",{\n __html: \"\\u003Cli class=\\\"-cx-PRIVATE-mercuryTypeahead__header\\\"\\u003E\\u003Cdiv class=\\\"clearfix\\\"\\u003E\\u003Cdiv class=\\\"lfloat\\\"\\u003E\\u003Cspan data-jsid=\\\"text\\\"\\u003E\\u003C/span\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"rfloat\\\"\\u003E\\u003Cspan\\u003E\\u003Cimg class=\\\"-cx-PRIVATE-mercuryTypeahead__loadingspinner img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yb/r/GsNJNwuI-UM.gif\\\" alt=\\\"\\\" data-jsid=\\\"loadingSpinner\\\" width=\\\"16\\\" height=\\\"11\\\" /\\u003E\\u003Ca class=\\\"-cx-PRIVATE-mercuryTypeahead__link\\\" data-jsid=\\\"link\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/span\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/li\\u003E\"\n },2,],[\"m_0_6y\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PRIVATE-chatAddFriendsEmptyTab__root\\\"\\u003E\\u003Ctable class=\\\"uiGrid\\\" cellspacing=\\\"0\\\" cellpadding=\\\"0\\\"\\u003E\\u003Ctbody\\u003E\\u003Ctr\\u003E\\u003Ctd class=\\\"vTop -cx-PRIVATE-chatAddFriendsEmptyTab__to\\\"\\u003E\\u003Cspan class=\\\"fcg\\\"\\u003ETo:\\u003C/span\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"vTop -cx-PRIVATE-chatAddFriendsEmptyTab__typeahead\\\"\\u003E\\u003Cdiv data-jsid=\\\"participantsTypeahead\\\"\\u003E\\u003C/div\\u003E\\u003C/td\\u003E\\u003C/tr\\u003E\\u003C/tbody\\u003E\\u003C/table\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_7k\",{\n __html: \"\\u003Cdiv class=\\\"uiTypeahead\\\"\\u003E\\u003Cdiv class=\\\"wrap\\\"\\u003E\\u003Cinput type=\\\"hidden\\\" autocomplete=\\\"off\\\" class=\\\"hiddenInput\\\" /\\u003E\\u003Cdiv class=\\\"innerWrap\\\"\\u003E\\u003Cinput type=\\\"text\\\" class=\\\"inputtext textInput\\\" data-jsid=\\\"textfield\\\" /\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6z\",{\n __html: \"\\u003Cdiv class=\\\"fbNub -cx-PRIVATE-fbNub__root -cx-PRIVATE-fbMercuryChatTab__root -cx-PRIVATE-fbMercuryChatThreadTab__root\\\"\\u003E\\u003Ca class=\\\"fbNubButton\\\" tabindex=\\\"0\\\" href=\\\"#\\\" data-jsid=\\\"dockButton\\\" role=\\\"button\\\"\\u003E\\u003Cdiv class=\\\"clearfix fbChatTab\\\"\\u003E\\u003Cdiv class=\\\"funhouse rfloat\\\"\\u003E\\u003Cdiv class=\\\"close\\\" title=\\\"Close\\\" data-jsid=\\\"closeButton\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"wrapWrapper\\\"\\u003E\\u003Cdiv class=\\\"wrap\\\"\\u003E\\u003Cdiv class=\\\"name fwb\\\" data-jsid=\\\"name\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-fbMercuryChatTab__nummessages hidden_elem\\\" data-jsid=\\\"numMessages\\\"\\u003E0\\u003C/span\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/a\\u003E\\u003Cdiv class=\\\"fbNubFlyout fbDockChatTabFlyout\\\" data-jsid=\\\"chatWrapper\\\" role=\\\"complementary\\\" aria-labelledby=\\\"u_0_37\\\"\\u003E\\u003Cdiv class=\\\"fbNubFlyoutOuter\\\"\\u003E\\u003Cdiv class=\\\"fbNubFlyoutInner\\\"\\u003E\\u003Cdiv class=\\\"clearfix fbNubFlyoutTitlebar titlebar\\\" data-jsid=\\\"nubFlyoutTitlebar\\\"\\u003E\\u003Cdiv class=\\\"mls titlebarButtonWrapper rfloat\\\"\\u003E\\u003Ca data-hover=\\\"tooltip\\\" aria-label=\\\"Add more friends to chat\\\" data-tooltip-alignh=\\\"center\\\" class=\\\"addToThread button\\\" href=\\\"#\\\" data-jsid=\\\"addToThreadLink\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003Cdiv class=\\\"uiSelector inlineBlock -cx-PRIVATE-fbDockChatDropdown__root\\\" data-jsid=\\\"dropdown\\\"\\u003E\\u003Cdiv class=\\\"uiToggle wrap\\\"\\u003E\\u003Ca data-hover=\\\"tooltip\\\" aria-label=\\\"Options\\\" data-tooltip-alignh=\\\"center\\\" class=\\\"button uiSelectorButton\\\" href=\\\"#\\\" role=\\\"button\\\" aria-haspopup=\\\"1\\\" rel=\\\"toggle\\\"\\u003E\\u003C/a\\u003E\\u003Cdiv class=\\\"uiSelectorMenuWrapper uiToggleFlyout\\\"\\u003E\\u003Cdiv role=\\\"menu\\\" class=\\\"uiMenu uiSelectorMenu\\\"\\u003E\\u003Cul class=\\\"uiMenuInner\\\"\\u003E\\u003Cli class=\\\"uiMenuItem\\\" data-label=\\\"See Full Conversation\\\"\\u003E\\u003Ca class=\\\"itemAnchor\\\" role=\\\"menuitem\\\" tabindex=\\\"0\\\" href=\\\"#\\\" data-jsid=\\\"conversationLink\\\"\\u003E\\u003Cspan class=\\\"itemLabel fsm\\\"\\u003ESee Full Conversation\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuItem\\\"\\u003E\\u003Cform data-jsid=\\\"attachButtonForm\\\" action=\\\"http://jsbngssl.upload.facebook.com/ajax/mercury/upload.php\\\" method=\\\"post\\\" onsubmit=\\\"return window.Event && Event.__inlineSubmit && Event.__inlineSubmit(this,event)\\\" id=\\\"u_0_39\\\"\\u003E\\u003Cinput type=\\\"hidden\\\" name=\\\"fb_dtsg\\\" value=\\\"AQApxIm6\\\" autocomplete=\\\"off\\\" /\\u003E\\u003Cinput type=\\\"hidden\\\" autocomplete=\\\"off\\\" data-jsid=\\\"attachID\\\" name=\\\"attach_id\\\" /\\u003E\\u003Cinput type=\\\"hidden\\\" autocomplete=\\\"off\\\" name=\\\"store_as_message_image\\\" value=\\\"1\\\" /\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-uiInlineBlock__root -cx-PRIVATE-uiFileInput__container -cx-PRIVATE-mercuryFileUploader__root itemLabel\\\"\\u003E\\u003Cinput type=\\\"file\\\" class=\\\"-cx-PRIVATE-uiFileInput__input\\\" name=\\\"attachment[]\\\" multiple=\\\"1\\\" data-jsid=\\\"fileInput\\\" /\\u003E\\u003Ca class=\\\"-cx-PRIVATE-mercuryFileUploader__button itemAnchor\\\"\\u003EAdd Files...\\u003C/a\\u003E\\u003C/div\\u003E\\u003C/form\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuItem\\\" data-label=\\\"Add Friends to Chat...\\\"\\u003E\\u003Ca class=\\\"itemAnchor\\\" role=\\\"menuitem\\\" tabindex=\\\"-1\\\" href=\\\"#\\\" data-jsid=\\\"addFriendLink\\\"\\u003E\\u003Cspan class=\\\"itemLabel fsm\\\"\\u003EAdd Friends to Chat...\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuItem\\\" data-label=\\\"Edit Conversation Name\\\"\\u003E\\u003Ca class=\\\"itemAnchor\\\" role=\\\"menuitem\\\" tabindex=\\\"-1\\\" href=\\\"#\\\" data-jsid=\\\"nameConversationLink\\\"\\u003E\\u003Cspan class=\\\"itemLabel fsm\\\"\\u003EEdit Conversation Name\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuSeparator\\\"\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuItem hidden_elem\\\" data-label=\\\"Mute Conversation\\\"\\u003E\\u003Ca class=\\\"itemAnchor\\\" role=\\\"menuitem\\\" tabindex=\\\"-1\\\" href=\\\"#\\\" data-jsid=\\\"muteThreadLink\\\"\\u003E\\u003Cspan class=\\\"itemLabel fsm\\\"\\u003EMute Conversation\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuItem hidden_elem\\\" data-label=\\\"Unmute Conversation\\\"\\u003E\\u003Ca class=\\\"itemAnchor\\\" role=\\\"menuitem\\\" tabindex=\\\"-1\\\" href=\\\"#\\\" data-jsid=\\\"unmuteThreadLink\\\"\\u003E\\u003Cspan class=\\\"itemLabel fsm\\\"\\u003EUnmute Conversation\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuItem\\\" data-label=\\\"Leave Conversation...\\\"\\u003E\\u003Ca class=\\\"itemAnchor\\\" role=\\\"menuitem\\\" tabindex=\\\"-1\\\" href=\\\"#\\\" data-jsid=\\\"unsubscribeLink\\\"\\u003E\\u003Cspan class=\\\"itemLabel fsm\\\"\\u003ELeave Conversation...\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\\u003C/ul\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Ca class=\\\"close button\\\" href=\\\"#\\\" data-jsid=\\\"titlebarCloseButton\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"titlebarLabel clearfix\\\"\\u003E\\u003Ch4 class=\\\"titlebarTextWrapper\\\"\\u003E\\u003Cimg class=\\\"-cx-PRIVATE-fbMercuryChatUserTab__presenceindicator img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y4/r/-PAXP-deijE.gif\\\" data-jsid=\\\"presenceIndicator\\\" alt=\\\"\\\" width=\\\"1\\\" height=\\\"1\\\" /\\u003E\\u003Ca class=\\\"titlebarText noLink\\\" href=\\\"#\\\" rel=\\\"none\\\" data-jsid=\\\"titlebarText\\\" aria-level=\\\"3\\\" id=\\\"u_0_37\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/h4\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fbNubFlyoutHeader\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryTabSheet__sheetcontainer\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryTabSheet__sheet hidden_elem\\\" data-jsid=\\\"sheet\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fbNubFlyoutBody scrollable\\\" data-jsid=\\\"chatConv\\\"\\u003E\\u003Cdiv class=\\\"fbNubFlyoutBodyContent\\\"\\u003E\\u003Ctable class=\\\"uiGrid conversationContainer\\\" cellspacing=\\\"0\\\" cellpadding=\\\"0\\\" role=\\\"log\\\"\\u003E\\u003Ctbody\\u003E\\u003Ctr\\u003E\\u003Ctd class=\\\"vBot\\\"\\u003E\\u003Cdiv class=\\\"accessible_elem\\\"\\u003EChat Conversation Start\\u003C/div\\u003E\\u003Cimg class=\\\"pvm loading hidden_elem img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yb/r/GsNJNwuI-UM.gif\\\" alt=\\\"\\\" data-jsid=\\\"loadingIndicator\\\" width=\\\"16\\\" height=\\\"11\\\" /\\u003E\\u003Cdiv class=\\\"conversation\\\" aria-live=\\\"polite\\\" aria-atomic=\\\"false\\\" data-jsid=\\\"conversation\\\" id=\\\"u_0_38\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"accessible_elem\\\"\\u003EChat Conversation End\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PUBLIC-mercuryTypingIndicator__root\\\" data-jsid=\\\"typingIndicator\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-mercuryLastMessageIndicator__root\\\" data-jsid=\\\"lastMessageIndicator\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-mercuryLastMessageIndicator__icon\\\"\\u003E\\u003C/div\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-mercuryLastMessageIndicator__text\\\"\\u003E\\u003C/span\\u003E\\u003C/div\\u003E\\u003C/td\\u003E\\u003C/tr\\u003E\\u003C/tbody\\u003E\\u003C/table\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fbNubFlyoutFooter\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryChatTab__inputcontainer\\\" data-jsid=\\\"inputContainer\\\"\\u003E\\u003Ctextarea class=\\\"uiTextareaAutogrow -cx-PRIVATE-fbMercuryChatTab__input\\\" data-jsid=\\\"input\\\" aria-controls=\\\"u_0_38\\\" onkeydown=\\\"window.Bootloader && Bootloader.loadComponents(["control-textarea"], function() { TextAreaControl.getInstance(this) }.bind(this)); \\\"\\u003E\\u003C/textarea\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryChatTab__chaticonscontainer\\\" data-jsid=\\\"iconsContainer\\\"\\u003E\\u003Cform class=\\\"-cx-PRIVATE-fbMercuryChatTab__chatphotouploader\\\" data-jsid=\\\"photoAttachButtonForm\\\" action=\\\"http://jsbngssl.upload.facebook.com/ajax/mercury/upload.php\\\" method=\\\"post\\\" onsubmit=\\\"return window.Event && Event.__inlineSubmit && Event.__inlineSubmit(this,event)\\\" id=\\\"u_0_3a\\\"\\u003E\\u003Cinput type=\\\"hidden\\\" name=\\\"fb_dtsg\\\" value=\\\"AQApxIm6\\\" autocomplete=\\\"off\\\" /\\u003E\\u003Cinput type=\\\"hidden\\\" autocomplete=\\\"off\\\" data-jsid=\\\"photoAttachID\\\" name=\\\"attach_id\\\" /\\u003E\\u003Cinput type=\\\"hidden\\\" autocomplete=\\\"off\\\" name=\\\"store_as_message_image\\\" value=\\\"1\\\" /\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-uiInlineBlock__root -cx-PRIVATE-uiFileInput__container -cx-PRIVATE-mercuryFileUploader__root\\\"\\u003E\\u003Cinput type=\\\"file\\\" class=\\\"-cx-PRIVATE-uiFileInput__input\\\" name=\\\"attachment[]\\\" multiple=\\\"1\\\" data-jsid=\\\"photoFileInput\\\" accept=\\\"image/*\\\" /\\u003E\\u003Ca class=\\\"-cx-PRIVATE-mercuryFileUploader__button -cx-PRIVATE-fbMercuryChatPhotoUploader__cameralink\\\" data-jsid=\\\"photoAttachLink\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryChatPhotoUploader__cameraicon\\\"\\u003E\\u003C/div\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\\u003C/form\\u003E\\u003Cdiv class=\\\"uiToggle emoticonsPanel\\\" data-jsid=\\\"emoticons\\\"\\u003E\\u003Ca class=\\\"-cx-PUBLIC-fbMercuryStickersFlyout__togglerimg\\\" href=\\\"#\\\" rel=\\\"toggle\\\" role=\\\"button\\\"\\u003E\\u003Cimg class=\\\"emoteTogglerImg img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yt/r/tPCHWcomJXO.png\\\" alt=\\\"Choose an emoticon\\\" title=\\\"Choose an emoticon\\\" width=\\\"14\\\" height=\\\"14\\\" /\\u003E\\u003C/a\\u003E\\u003Cdiv class=\\\"panelFlyout -cx-PUBLIC-fbMercuryStickersFlyout__root uiToggleFlyout\\\"\\u003E\\u003Cdiv data-jsid=\\\"stickers\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryStickersFlyout__selector\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryStickersFlyout__packs\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryStickersFlyout__pack hidden_elem\\\" data-id=\\\"emoticons\\\"\\u003E\\u003Ctable class=\\\"emoticonsTable\\\"\\u003E\\u003Ctbody\\u003E\\u003Ctr\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_smile\\\" aria-label=\\\"smile\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_frown\\\" aria-label=\\\"frown\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_tongue\\\" aria-label=\\\"tongue\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_grin\\\" aria-label=\\\"grin\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_gasp\\\" aria-label=\\\"gasp\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_wink\\\" aria-label=\\\"wink\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_pacman\\\" aria-label=\\\"pacman\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003C/tr\\u003E\\u003Ctr\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_grumpy\\\" aria-label=\\\"grumpy\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_unsure\\\" aria-label=\\\"unsure\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_cry\\\" aria-label=\\\"cry\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_kiki\\\" aria-label=\\\"kiki\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_glasses\\\" aria-label=\\\"glasses\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_sunglasses\\\" aria-label=\\\"sunglasses\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_heart\\\" aria-label=\\\"heart\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003C/tr\\u003E\\u003Ctr\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_devil\\\" aria-label=\\\"devil\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_angel\\\" aria-label=\\\"angel\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_squint\\\" aria-label=\\\"squint\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_confused\\\" aria-label=\\\"confused\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_upset\\\" aria-label=\\\"upset\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_colonthree\\\" aria-label=\\\"colonthree\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_like\\\" aria-label=\\\"like\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003C/tr\\u003E\\u003C/tbody\\u003E\\u003C/table\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"panelFlyoutArrow\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fbNubFlyoutAttachments\\\"\\u003E\\u003Cdiv class=\\\"chatAttachmentShelf\\\" data-jsid=\\\"attachmentShelf\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },4,],[\"m_0_7l\",{\n __html: \"\\u003Cli class=\\\"-cx-PRIVATE-mercuryTypeahead__row\\\"\\u003E\\u003Cdiv class=\\\"clearfix pvs\\\"\\u003E\\u003Cdiv class=\\\"MercuryThreadImage mrm -cx-PRIVATE-mercuryTypeahead__image lfloat\\\" data-jsid=\\\"image\\\"\\u003E\\u003Cimg class=\\\"-cx-PRIVATE-uiSquareImage__root -cx-PRIVATE-uiSquareImage__large img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yw/r/drP8vlvSl_8.gif\\\" /\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-mercuryTypeahead__rightcontent\\\"\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-mercuryTypeahead__name\\\" data-jsid=\\\"name\\\"\\u003E\\u003C/span\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-mercuryTypeahead__snippet fsm fwn fcg\\\" data-jsid=\\\"snippet\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/li\\u003E\"\n },2,],[\"m_0_7i\",{\n __html: \"\\u003Cdiv class=\\\"clearfix uiTokenizer uiInlineTokenizer\\\"\\u003E\\u003Cdiv class=\\\"tokenarea hidden_elem\\\" data-jsid=\\\"tokenarea\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6w\",{\n __html: \"\\u003Cdiv class=\\\"pas\\\"\\u003E\\u003Ci class=\\\"-cx-PRIVATE-chatTabSheet__sheetimg img sp_4p6kmz sx_c2c2e3\\\" data-jsid=\\\"image\\\"\\u003E\\u003C/i\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-chatTabSheet__sheetcontent\\\"\\u003E\\u003Cspan class=\\\"fcg\\\" data-jsid=\\\"text\\\"\\u003E\\u003C/span\\u003E\\u003Cdiv\\u003E\\u003Ca href=\\\"#\\\" data-jsid=\\\"actionLink\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_79\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PRIVATE-chatAddFriends__root\\\"\\u003E\\u003Ctable class=\\\"uiGrid\\\" cellspacing=\\\"0\\\" cellpadding=\\\"0\\\"\\u003E\\u003Ctbody\\u003E\\u003Ctr\\u003E\\u003Ctd class=\\\"vTop -cx-PRIVATE-chatAddFriends__typeaheadcontainer\\\"\\u003E\\u003Cdiv data-jsid=\\\"participantsTypeahead\\\"\\u003E\\u003C/div\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"vTop\\\"\\u003E\\u003Clabel class=\\\"doneButton uiButton uiButtonConfirm\\\" for=\\\"u_0_3d\\\"\\u003E\\u003Cinput value=\\\"Done\\\" data-jsid=\\\"doneButton\\\" type=\\\"submit\\\" id=\\\"u_0_3d\\\" /\\u003E\\u003C/label\\u003E\\u003C/td\\u003E\\u003C/tr\\u003E\\u003C/tbody\\u003E\\u003C/table\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6p\",{\n __html: \"\\u003Cdiv\\u003E\\u003Ca class=\\\"uiIconText -cx-PRIVATE-fbChatMessage__forwardicon\\\" href=\\\"#\\\" style=\\\"padding-left: 12px;\\\" data-jsid=\\\"forwardLink\\\" role=\\\"button\\\"\\u003E\\u003Ci class=\\\"img sp_4ie5gn sx_90e3a1\\\" style=\\\"top: 3px;\\\"\\u003E\\u003C/i\\u003E\\u003Cspan data-jsid=\\\"forwardText\\\"\\u003E\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6t\",{\n __html: \"\\u003Cdiv\\u003E\\u003Cdiv class=\\\"clearfix mvm mrm mll videoCallPromo\\\"\\u003E\\u003Ci class=\\\"-cx-PRIVATE-uiImageBlock__image -cx-PRIVATE-uiImageBlock__mediumimage lfloat img sp_4ie5gn sx_4e6efe\\\"\\u003E\\u003C/i\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-uiFlexibleBlock__flexiblecontent\\\"\\u003E\\u003Cdiv class=\\\"pls\\\"\\u003E\\u003Cspan class=\\\"calloutTitle fwb\\\"\\u003ETalk face to face\\u003C/span\\u003E\\u003Cdiv class=\\\"fsm fwn fcg\\\"\\u003EClick \\u003Cspan\\u003E ( \\u003Ci class=\\\"onlineStatusIcon img sp_4ie5gn sx_f7362e\\\"\\u003E\\u003C/i\\u003E )\\u003C/span\\u003E below to start a video call.\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"uiOverlayFooter uiContextualDialogFooter uiBoxGray topborder\\\"\\u003E\\u003Ctable class=\\\"uiGrid\\\" cellspacing=\\\"0\\\" cellpadding=\\\"0\\\"\\u003E\\u003Ctbody\\u003E\\u003Ctr\\u003E\\u003Ctd class=\\\"prs uiOverlayFooterMessage\\\"\\u003E\\u003Ca target=\\\"_blank\\\" href=\\\"/help/?page=177940565599960\\\"\\u003ELearn more\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"uiOverlayFooterButtons\\\"\\u003E\\u003Ca class=\\\"uiOverlayButton layerCancel uiButton uiButtonConfirm\\\" href=\\\"#\\\" role=\\\"button\\\" name=\\\"cancel\\\"\\u003E\\u003Cspan class=\\\"uiButtonText\\\"\\u003EOkay\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003C/tr\\u003E\\u003C/tbody\\u003E\\u003C/table\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6c\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PUBLIC-mercuryAttachments__attachment\\\"\\u003E\\u003Ca class=\\\"uiVideoThumb videoPreview\\\" href=\\\"#\\\" data-jsid=\\\"thumb\\\" role=\\\"button\\\"\\u003E\\u003Cimg class=\\\"img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y4/r/-PAXP-deijE.gif\\\" alt=\\\"\\\" /\\u003E\\u003Ci\\u003E\\u003C/i\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6m\",{\n __html: \"\\u003Cdiv class=\\\"mhs mbs pts fbChatConvItem -cx-PRIVATE-fbChatMessageGroup__root clearfix small\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbChatMessageGroup__piccontainer\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbChatMessageGroup__profilename\\\" data-jsid=\\\"profileName\\\"\\u003E\\u003C/div\\u003E\\u003Ca class=\\\"profileLink\\\" href=\\\"#\\\" data-jsid=\\\"profileLink\\\" role=\\\"button\\\"\\u003E\\u003Cimg class=\\\"profilePhoto\\\" src=\\\"/images/spacer.gif\\\" data-jsid=\\\"profilePhoto\\\" /\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"messages\\\" data-jsid=\\\"messages\\\"\\u003E\\u003Cdiv class=\\\"metaInfoContainer fss fcg\\\"\\u003E\\u003Cspan data-jsid=\\\"reportLinkWithDot\\\" class=\\\"hidden_elem\\\"\\u003E\\u003Ca href=\\\"#\\\" rel=\\\"dialog\\\" data-jsid=\\\"reportLink\\\" role=\\\"button\\\"\\u003E\\u003Cspan class=\\\"fcg\\\"\\u003EReport\\u003C/span\\u003E\\u003C/a\\u003E \\u00b7 \\u003C/span\\u003E\\u003Cspan class=\\\"timestamp\\\" data-jsid=\\\"timestamp\\\"\\u003E\\u003C/span\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_7c\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PRIVATE-mercuryTypingIndicator__typingcontainer\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-mercuryTypingIndicator__typing\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6v\",{\n __html: \"\\u003Ca href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003Cdiv class=\\\"pas\\\"\\u003E\\u003Ci class=\\\"mrs -cx-PRIVATE-chatTabSheet__sheetimg img sp_3yt8ar sx_de779b\\\" data-jsid=\\\"image\\\"\\u003E\\u003C/i\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-chatTabSheet__sheetcontent fcg\\\" data-jsid=\\\"text\\\"\\u003E\\u003C/span\\u003E\\u003C/div\\u003E\\u003C/a\\u003E\"\n },2,],[\"m_0_6i\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PUBLIC-mercuryAttachments__attachment\\\"\\u003E\\u003Ca data-jsid=\\\"link\\\" target=\\\"_blank\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003Cspan data-jsid=\\\"name\\\"\\u003E\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_7e\",{\n __html: \"\\u003Cdiv class=\\\"fbNub -cx-PRIVATE-fbNub__root -cx-PRIVATE-fbMercuryChatTab__root -cx-PRIVATE-fbMercuryChatUserTab__root\\\"\\u003E\\u003Ca class=\\\"fbNubButton\\\" tabindex=\\\"0\\\" href=\\\"#\\\" data-jsid=\\\"dockButton\\\" role=\\\"button\\\"\\u003E\\u003Cdiv class=\\\"clearfix fbChatTab\\\"\\u003E\\u003Cdiv class=\\\"funhouse rfloat\\\"\\u003E\\u003Cdiv class=\\\"close\\\" title=\\\"Close\\\" data-jsid=\\\"closeButton\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"wrapWrapper\\\"\\u003E\\u003Cdiv class=\\\"wrap\\\"\\u003E\\u003Cdiv class=\\\"name fwb\\\" data-jsid=\\\"name\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-fbMercuryChatTab__nummessages hidden_elem\\\" data-jsid=\\\"numMessages\\\"\\u003E0\\u003C/span\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/a\\u003E\\u003Cdiv class=\\\"fbNubFlyout fbDockChatTabFlyout\\\" data-jsid=\\\"chatWrapper\\\" role=\\\"complementary\\\" aria-labelledby=\\\"u_0_3e\\\"\\u003E\\u003Cdiv class=\\\"fbNubFlyoutOuter\\\"\\u003E\\u003Cdiv class=\\\"fbNubFlyoutInner\\\"\\u003E\\u003Cdiv class=\\\"clearfix fbNubFlyoutTitlebar titlebar\\\" data-jsid=\\\"nubFlyoutTitlebar\\\"\\u003E\\u003Cdiv class=\\\"mls titlebarButtonWrapper rfloat\\\"\\u003E\\u003Ca data-hover=\\\"tooltip\\\" aria-label=\\\"Add more friends to chat\\\" class=\\\"addToThread button\\\" href=\\\"#\\\" data-jsid=\\\"addToThreadLink\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003Ca data-hover=\\\"tooltip\\\" aria-label=\\\"Start a video call\\\" class=\\\"videoicon button\\\" href=\\\"#\\\" data-jsid=\\\"videoCallLink\\\" data-gt=\\\"{"videochat":"call_clicked_chat_tab"}\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003Cdiv class=\\\"uiSelector inlineBlock -cx-PRIVATE-fbDockChatDropdown__root\\\" data-jsid=\\\"dropdown\\\"\\u003E\\u003Cdiv class=\\\"uiToggle wrap\\\"\\u003E\\u003Ca data-hover=\\\"tooltip\\\" aria-label=\\\"Options\\\" data-tooltip-alignh=\\\"center\\\" class=\\\"button uiSelectorButton\\\" href=\\\"#\\\" role=\\\"button\\\" aria-haspopup=\\\"1\\\" rel=\\\"toggle\\\"\\u003E\\u003C/a\\u003E\\u003Cdiv class=\\\"uiSelectorMenuWrapper uiToggleFlyout\\\"\\u003E\\u003Cdiv role=\\\"menu\\\" class=\\\"uiMenu uiSelectorMenu\\\"\\u003E\\u003Cul class=\\\"uiMenuInner\\\"\\u003E\\u003Cli class=\\\"uiMenuItem\\\" tabindex=\\\"0\\\"\\u003E\\u003Cform data-jsid=\\\"attachButtonForm\\\" action=\\\"http://jsbngssl.upload.facebook.com/ajax/mercury/upload.php\\\" method=\\\"post\\\" onsubmit=\\\"return window.Event && Event.__inlineSubmit && Event.__inlineSubmit(this,event)\\\" id=\\\"u_0_3g\\\"\\u003E\\u003Cinput type=\\\"hidden\\\" name=\\\"fb_dtsg\\\" value=\\\"AQApxIm6\\\" autocomplete=\\\"off\\\" /\\u003E\\u003Cinput type=\\\"hidden\\\" autocomplete=\\\"off\\\" data-jsid=\\\"attachID\\\" name=\\\"attach_id\\\" /\\u003E\\u003Cinput type=\\\"hidden\\\" autocomplete=\\\"off\\\" name=\\\"store_as_message_image\\\" value=\\\"1\\\" /\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-uiInlineBlock__root -cx-PRIVATE-uiFileInput__container -cx-PRIVATE-mercuryFileUploader__root itemLabel\\\"\\u003E\\u003Cinput type=\\\"file\\\" class=\\\"-cx-PRIVATE-uiFileInput__input\\\" name=\\\"attachment[]\\\" multiple=\\\"1\\\" data-jsid=\\\"fileInput\\\" /\\u003E\\u003Ca class=\\\"-cx-PRIVATE-mercuryFileUploader__button itemAnchor\\\"\\u003EAdd Files...\\u003C/a\\u003E\\u003C/div\\u003E\\u003C/form\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuItem\\\" data-label=\\\"Add Friends to Chat...\\\"\\u003E\\u003Ca class=\\\"itemAnchor\\\" role=\\\"menuitem\\\" tabindex=\\\"-1\\\" href=\\\"#\\\" data-jsid=\\\"addFriendLink\\\"\\u003E\\u003Cspan class=\\\"itemLabel fsm\\\"\\u003EAdd Friends to Chat...\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuItem\\\" data-label=\\\"\\\"\\u003E\\u003Ca class=\\\"itemAnchor\\\" role=\\\"menuitem\\\" tabindex=\\\"-1\\\" href=\\\"#\\\" data-jsid=\\\"privacyLink\\\"\\u003E\\u003Cspan class=\\\"itemLabel fsm\\\"\\u003E \\u003C/span\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuSeparator\\\"\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuItem\\\" data-label=\\\"See Full Conversation\\\"\\u003E\\u003Ca class=\\\"itemAnchor\\\" role=\\\"menuitem\\\" tabindex=\\\"-1\\\" href=\\\"#\\\" data-jsid=\\\"conversationLink\\\"\\u003E\\u003Cspan class=\\\"itemLabel fsm\\\"\\u003ESee Full Conversation\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuItem hidden_elem\\\" data-label=\\\"Mute Conversation\\\"\\u003E\\u003Ca class=\\\"itemAnchor\\\" role=\\\"menuitem\\\" tabindex=\\\"-1\\\" href=\\\"#\\\" data-jsid=\\\"muteThreadLink\\\"\\u003E\\u003Cspan class=\\\"itemLabel fsm\\\"\\u003EMute Conversation\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuItem hidden_elem\\\" data-label=\\\"Unmute Conversation\\\"\\u003E\\u003Ca class=\\\"itemAnchor\\\" role=\\\"menuitem\\\" tabindex=\\\"-1\\\" href=\\\"#\\\" data-jsid=\\\"unmuteThreadLink\\\"\\u003E\\u003Cspan class=\\\"itemLabel fsm\\\"\\u003EUnmute Conversation\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuItem\\\" data-label=\\\"Clear Window\\\"\\u003E\\u003Ca class=\\\"itemAnchor\\\" role=\\\"menuitem\\\" tabindex=\\\"-1\\\" href=\\\"#\\\" data-jsid=\\\"clearWindowLink\\\"\\u003E\\u003Cspan class=\\\"itemLabel fsm\\\"\\u003EClear Window\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuSeparator\\\"\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuItem\\\" data-label=\\\"Report as Spam or Abuse...\\\"\\u003E\\u003Ca class=\\\"itemAnchor\\\" role=\\\"menuitem\\\" tabindex=\\\"-1\\\" href=\\\"#\\\" data-jsid=\\\"reportSpamLink\\\"\\u003E\\u003Cspan class=\\\"itemLabel fsm\\\"\\u003EReport as Spam or Abuse...\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\\u003C/ul\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Ca class=\\\"close button\\\" href=\\\"#\\\" data-jsid=\\\"titlebarCloseButton\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"titlebarLabel clearfix\\\"\\u003E\\u003Ch4 class=\\\"titlebarTextWrapper\\\"\\u003E\\u003Cimg class=\\\"-cx-PRIVATE-fbMercuryChatUserTab__presenceindicator img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y4/r/-PAXP-deijE.gif\\\" data-jsid=\\\"presenceIndicator\\\" alt=\\\"\\\" width=\\\"1\\\" height=\\\"1\\\" /\\u003E\\u003Ca class=\\\"titlebarText noLink\\\" href=\\\"#\\\" rel=\\\"none\\\" data-jsid=\\\"titlebarText\\\" aria-level=\\\"3\\\" id=\\\"u_0_3e\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/h4\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fbNubFlyoutHeader\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryTabSheet__sheetcontainer\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryTabSheet__sheet hidden_elem\\\" data-jsid=\\\"sheet\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fbNubFlyoutBody scrollable\\\" data-jsid=\\\"chatConv\\\"\\u003E\\u003Cdiv class=\\\"fbNubFlyoutBodyContent\\\"\\u003E\\u003Ctable class=\\\"uiGrid conversationContainer\\\" cellspacing=\\\"0\\\" cellpadding=\\\"0\\\" role=\\\"log\\\"\\u003E\\u003Ctbody\\u003E\\u003Ctr\\u003E\\u003Ctd class=\\\"vBot\\\"\\u003E\\u003Cdiv class=\\\"accessible_elem\\\"\\u003EChat Conversation Start\\u003C/div\\u003E\\u003Cimg class=\\\"pvm loading hidden_elem img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yb/r/GsNJNwuI-UM.gif\\\" alt=\\\"\\\" data-jsid=\\\"loadingIndicator\\\" width=\\\"16\\\" height=\\\"11\\\" /\\u003E\\u003Cdiv class=\\\"conversation\\\" aria-live=\\\"polite\\\" aria-atomic=\\\"false\\\" data-jsid=\\\"conversation\\\" id=\\\"u_0_3f\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"accessible_elem\\\"\\u003EChat Conversation End\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PUBLIC-mercuryTypingIndicator__root\\\" data-jsid=\\\"typingIndicator\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-mercuryLastMessageIndicator__root\\\" data-jsid=\\\"lastMessageIndicator\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-mercuryLastMessageIndicator__icon\\\"\\u003E\\u003C/div\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-mercuryLastMessageIndicator__text\\\"\\u003E\\u003C/span\\u003E\\u003C/div\\u003E\\u003C/td\\u003E\\u003C/tr\\u003E\\u003C/tbody\\u003E\\u003C/table\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fbNubFlyoutFooter\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryChatTab__inputcontainer\\\" data-jsid=\\\"inputContainer\\\"\\u003E\\u003Ctextarea class=\\\"uiTextareaAutogrow -cx-PRIVATE-fbMercuryChatTab__input\\\" data-jsid=\\\"input\\\" aria-controls=\\\"u_0_3f\\\" onkeydown=\\\"window.Bootloader && Bootloader.loadComponents(["control-textarea"], function() { TextAreaControl.getInstance(this) }.bind(this)); \\\"\\u003E\\u003C/textarea\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryChatTab__chaticonscontainer\\\" data-jsid=\\\"iconsContainer\\\"\\u003E\\u003Cform class=\\\"-cx-PRIVATE-fbMercuryChatTab__chatphotouploader\\\" data-jsid=\\\"photoAttachButtonForm\\\" action=\\\"http://jsbngssl.upload.facebook.com/ajax/mercury/upload.php\\\" method=\\\"post\\\" onsubmit=\\\"return window.Event && Event.__inlineSubmit && Event.__inlineSubmit(this,event)\\\" id=\\\"u_0_3h\\\"\\u003E\\u003Cinput type=\\\"hidden\\\" name=\\\"fb_dtsg\\\" value=\\\"AQApxIm6\\\" autocomplete=\\\"off\\\" /\\u003E\\u003Cinput type=\\\"hidden\\\" autocomplete=\\\"off\\\" data-jsid=\\\"photoAttachID\\\" name=\\\"attach_id\\\" /\\u003E\\u003Cinput type=\\\"hidden\\\" autocomplete=\\\"off\\\" name=\\\"store_as_message_image\\\" value=\\\"1\\\" /\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-uiInlineBlock__root -cx-PRIVATE-uiFileInput__container -cx-PRIVATE-mercuryFileUploader__root\\\"\\u003E\\u003Cinput type=\\\"file\\\" class=\\\"-cx-PRIVATE-uiFileInput__input\\\" name=\\\"attachment[]\\\" multiple=\\\"1\\\" data-jsid=\\\"photoFileInput\\\" accept=\\\"image/*\\\" /\\u003E\\u003Ca class=\\\"-cx-PRIVATE-mercuryFileUploader__button -cx-PRIVATE-fbMercuryChatPhotoUploader__cameralink\\\" data-jsid=\\\"photoAttachLink\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryChatPhotoUploader__cameraicon\\\"\\u003E\\u003C/div\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\\u003C/form\\u003E\\u003Cdiv class=\\\"uiToggle emoticonsPanel\\\" data-jsid=\\\"emoticons\\\"\\u003E\\u003Ca class=\\\"-cx-PUBLIC-fbMercuryStickersFlyout__togglerimg\\\" href=\\\"#\\\" rel=\\\"toggle\\\" role=\\\"button\\\"\\u003E\\u003Cimg class=\\\"emoteTogglerImg img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yt/r/tPCHWcomJXO.png\\\" alt=\\\"Choose an emoticon\\\" title=\\\"Choose an emoticon\\\" width=\\\"14\\\" height=\\\"14\\\" /\\u003E\\u003C/a\\u003E\\u003Cdiv class=\\\"panelFlyout -cx-PUBLIC-fbMercuryStickersFlyout__root uiToggleFlyout\\\"\\u003E\\u003Cdiv data-jsid=\\\"stickers\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryStickersFlyout__selector\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryStickersFlyout__packs\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryStickersFlyout__pack hidden_elem\\\" data-id=\\\"emoticons\\\"\\u003E\\u003Ctable class=\\\"emoticonsTable\\\"\\u003E\\u003Ctbody\\u003E\\u003Ctr\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_smile\\\" aria-label=\\\"smile\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_frown\\\" aria-label=\\\"frown\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_tongue\\\" aria-label=\\\"tongue\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_grin\\\" aria-label=\\\"grin\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_gasp\\\" aria-label=\\\"gasp\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_wink\\\" aria-label=\\\"wink\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_pacman\\\" aria-label=\\\"pacman\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003C/tr\\u003E\\u003Ctr\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_grumpy\\\" aria-label=\\\"grumpy\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_unsure\\\" aria-label=\\\"unsure\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_cry\\\" aria-label=\\\"cry\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_kiki\\\" aria-label=\\\"kiki\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_glasses\\\" aria-label=\\\"glasses\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_sunglasses\\\" aria-label=\\\"sunglasses\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_heart\\\" aria-label=\\\"heart\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003C/tr\\u003E\\u003Ctr\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_devil\\\" aria-label=\\\"devil\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_angel\\\" aria-label=\\\"angel\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_squint\\\" aria-label=\\\"squint\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_confused\\\" aria-label=\\\"confused\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_upset\\\" aria-label=\\\"upset\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_colonthree\\\" aria-label=\\\"colonthree\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_like\\\" aria-label=\\\"like\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003C/tr\\u003E\\u003C/tbody\\u003E\\u003C/table\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"panelFlyoutArrow\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fbNubFlyoutAttachments\\\"\\u003E\\u003Cdiv class=\\\"chatAttachmentShelf\\\" data-jsid=\\\"attachmentShelf\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },4,],[\"m_0_53\",{\n __html: \"\\u003Cli class=\\\"-cx-PRIVATE-fbChatOrderedList__item\\\"\\u003E\\u003Ca class=\\\"clearfix -cx-PRIVATE-fbChatOrderedList__link\\\" data-jsid=\\\"anchor\\\" href=\\\"#\\\" role=\\\"\\\" rel=\\\"ignore\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbChat__favoritebutton -cx-PRIVATE-fbChatOrderedList__favoritebutton\\\" data-jsid=\\\"favorite_button\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"pic_container\\\"\\u003E\\u003Cimg class=\\\"pic img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y4/r/-PAXP-deijE.gif\\\" data-jsid=\\\"profile-photo\\\" alt=\\\"\\\" width=\\\"1\\\" height=\\\"1\\\" /\\u003E\\u003C/div\\u003E\\u003Cimg class=\\\"-cx-PRIVATE-fbChat__dragindicator -cx-PRIVATE-fbChatOrderedList__dragindicator img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yW/r/F7kk7-cjEKk.png\\\" alt=\\\"\\\" width=\\\"10\\\" height=\\\"8\\\" /\\u003E\\u003Cdiv class=\\\"clearfix\\\"\\u003E\\u003Cdiv class=\\\"rfloat\\\"\\u003E\\u003Cspan data-jsid=\\\"accessible-name\\\" class=\\\"accessible_elem\\\"\\u003E\\u003C/span\\u003E\\u003Cdiv class=\\\"icon_container\\\"\\u003E\\u003Cimg class=\\\"-cx-PRIVATE-fbLiveBar__status icon img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y4/r/-PAXP-deijE.gif\\\" alt=\\\"\\\" width=\\\"1\\\" height=\\\"1\\\" /\\u003E\\u003Cdiv class=\\\"active_time icon\\\"\\u003E\\u003C/div\\u003E\\u003Cimg class=\\\"status icon img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y4/r/-PAXP-deijE.gif\\\" alt=\\\"\\\" width=\\\"1\\\" height=\\\"1\\\" /\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv aria-hidden=\\\"true\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbChatOrderedList__name\\\" data-jsid=\\\"name\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbChatOrderedList__context\\\" data-jsid=\\\"context\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\"\n },2,],[\"m_0_6b\",{\n __html: \"\\u003Cdiv class=\\\"mtm pam -cx-PRIVATE-mercuryAttachments__errorbox attachment uiBoxGray\\\"\\u003E\\u003Cspan class=\\\"uiIconText MercuryThreadlistIconError\\\" data-jsid=\\\"error\\\"\\u003E\\u003Ci class=\\\"img sp_4p6kmz sx_25310e\\\"\\u003E\\u003C/i\\u003E\\u003C/span\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6g\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PUBLIC-mercuryAttachments__attachment -cx-PUBLIC-mercuryAttachments__fileattachment\\\"\\u003E\\u003Ca class=\\\"uiIconText -cx-PRIVATE-mercuryAttachments__icontext\\\" href=\\\"#\\\" data-jsid=\\\"link\\\" role=\\\"button\\\"\\u003E\\u003Ci class=\\\"img sp_4ie5gn sx_0adf5e\\\"\\u003E\\u003C/i\\u003E\\u003Cspan data-jsid=\\\"filename\\\" class=\\\"-cx-PUBLIC-mercuryAttachments__filename\\\"\\u003E\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6d\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PUBLIC-mercuryAttachments__attachment -cx-PUBLIC-mercuryAttachments__fileattachment\\\"\\u003E\\u003Cspan class=\\\"uiIconText -cx-PRIVATE-mercuryAttachments__icontext\\\"\\u003E\\u003Ci class=\\\"img sp_4ie5gn sx_0adf5e\\\"\\u003E\\u003C/i\\u003E\\u003Cspan data-jsid=\\\"filename\\\" class=\\\"filename\\\"\\u003E\\u003C/span\\u003E\\u003C/span\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6r\",{\n __html: \"\\u003Cdiv class=\\\"clearfix mvs\\\"\\u003E\\u003Ci class=\\\"rfloat img sp_3yt8ar sx_047178\\\" data-jsid=\\\"icon\\\"\\u003E\\u003C/i\\u003E\\u003Cdiv data-jsid=\\\"name\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6e\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PUBLIC-mercuryAttachments__attachment\\\"\\u003E\\u003Cdiv class=\\\"clearfix MercuryExternalLink\\\"\\u003E\\u003Cdiv class=\\\"-cx-PUBLIC-mercuryImages__imagepreviewcontainer clearfix stat_elem lfloat\\\" data-jsid=\\\"preview\\\"\\u003E\\u003Ca class=\\\"-cx-PUBLIC-mercuryImages__imagepreview\\\" data-jsid=\\\"image-link\\\" href=\\\"#\\\" target=\\\"_blank\\\" role=\\\"button\\\"\\u003E\\u003Cimg data-jsid=\\\"preview-image\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yw/r/drP8vlvSl_8.gif\\\" /\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"MercuryLinkRight rfloat\\\"\\u003E\\u003Cdiv class=\\\"MercuryLinkTitle\\\"\\u003E\\u003Ca class=\\\"linkTitle\\\" target=\\\"_blank\\\" href=\\\"#\\\" data-jsid=\\\"name\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fsm fwn fcg\\\" data-jsid=\\\"shortLink\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_54\",{\n __html: \"\\u003Cli\\u003E\\u003Cdiv class=\\\"phs fcg\\\"\\u003E\\u003Cspan data-jsid=\\\"message\\\"\\u003ELoading...\\u003C/span\\u003E\\u003C/div\\u003E\\u003C/li\\u003E\"\n },2,],[\"m_0_6j\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PRIVATE-mercuryComposer__composersupplemental -cx-PRIVATE-mercuryComposer__uploadfilerow uploadFileRow\\\"\\u003E\\u003Cimg class=\\\"-cx-PRIVATE-mercuryComposer__uploadingindicator img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yb/r/GsNJNwuI-UM.gif\\\" alt=\\\"\\\" width=\\\"16\\\" height=\\\"11\\\" /\\u003E\\u003Clabel class=\\\"-cx-PRIVATE-mercuryComposer__closefileupload uiCloseButton uiCloseButtonSmall uiCloseButtonSmallDark\\\" for=\\\"u_0_35\\\"\\u003E\\u003Cinput title=\\\"Remove\\\" type=\\\"button\\\" data-jsid=\\\"closeFileUpload\\\" id=\\\"u_0_35\\\" /\\u003E\\u003C/label\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-mercuryComposer__uploadfiletext\\\"\\u003E\\u003Cspan class=\\\"uiIconText -cx-PRIVATE-mercuryAttachments__icontext\\\" data-jsid=\\\"iconText\\\"\\u003E\\u003Ci class=\\\"img sp_4ie5gn sx_0adf5e\\\"\\u003E\\u003C/i\\u003E\\u003C/span\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_7b\",{\n __html: \"\\u003Cdiv class=\\\"pas\\\"\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-chatTabSheet__sheetcontent -cx-PRIVATE-chatTabSheet__link fcg\\\" data-jsid=\\\"text\\\"\\u003E\\u003C/span\\u003E\\u003Ca class=\\\"pas\\\" data-jsid=\\\"unmuteButton\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003EUnmute\\u003C/a\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6u\",{\n __html: \"\\u003Cdiv class=\\\"pas\\\"\\u003E\\u003Ci class=\\\"mrs -cx-PRIVATE-chatTabSheet__sheetimg img sp_3yt8ar sx_de779b\\\" data-jsid=\\\"image\\\"\\u003E\\u003C/i\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-chatTabSheet__sheetcontent fcg\\\" data-jsid=\\\"text\\\"\\u003E\\u003C/span\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6a\",{\n __html: \"\\u003Cimg class=\\\"hidden_elem -cx-PRIVATE-fbMercuryTabSheet__loading img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yk/r/LOOn0JtHNzb.gif\\\" alt=\\\"\\\" width=\\\"16\\\" height=\\\"16\\\" /\\u003E\"\n },2,],[\"m_0_6l\",{\n __html: \"\\u003Cdiv class=\\\"mhs mbs pts fbChatConvItem -cx-PUBLIC-fbChatEventMsg__root clearfix\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbChatEventMsg__iconwrapper\\\"\\u003E\\u003Cimg class=\\\"-cx-PRIVATE-fbChatEventMsg__eventicon img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y4/r/-PAXP-deijE.gif\\\" data-jsid=\\\"icon\\\" alt=\\\"\\\" width=\\\"1\\\" height=\\\"1\\\" /\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbChatEventMsg__messagewrapper\\\"\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-fbChatEventMsg__message fsm fcg\\\" data-jsid=\\\"message\\\"\\u003E\\u003C/span\\u003E\\u003Cspan class=\\\"mls -cx-PRIVATE-fbChatEventMsg__timestamp fss fcg\\\" data-jsid=\\\"timestamp\\\"\\u003E\\u003C/span\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PUBLIC-fbChatEventMsg__logmessageattachment\\\" data-jsid=\\\"attachment\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_7a\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PRIVATE-fbChatMessage__errorstatus clearfix\\\"\\u003E\\u003Cdiv data-jsid=\\\"message\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv data-jsid=\\\"status\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6s\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PUBLIC-fbChatConvDateBreak__root mhs mbs fbChatConvItem\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbChatConvDateBreak__date fss fwb fcg\\\" data-jsid=\\\"date\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_4z\",{\n __html: \"\\u003Cdiv class=\\\"uiContextualDialogPositioner\\\" id=\\\"u_0_32\\\" data-position=\\\"left\\\"\\u003E\\u003Cdiv class=\\\"uiOverlay uiContextualDialog\\\" data-width=\\\"300\\\" data-destroyonhide=\\\"false\\\" data-fadeonhide=\\\"false\\\"\\u003E\\u003Cdiv class=\\\"uiOverlayContent\\\"\\u003E\\u003Cdiv class=\\\"uiContextualDialogContent\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6k\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PUBLIC-mercuryAttachments__attachment -cx-PUBLIC-mercuryAttachments__fileattachment\\\"\\u003E\\u003Cdiv class=\\\"-cx-PUBLIC-mercuryAttachments__filelinks\\\"\\u003E\\u003Cdiv data-jsid=\\\"openLinkContainer\\\" class=\\\"-cx-PUBLIC-mercuryAttachments__openlinkcontainer hidden_elem\\\"\\u003E\\u003Ca class=\\\"-cx-PUBLIC-mercuryAttachments__openfilelink\\\" href=\\\"#\\\" data-jsid=\\\"openFile\\\" role=\\\"button\\\"\\u003Eopen\\u003C/a\\u003E \\u00b7 \\u003C/div\\u003E\\u003Ca class=\\\"-cx-PUBLIC-mercuryAttachments__downloadfilelink\\\" href=\\\"#\\\" data-jsid=\\\"downloadFile\\\" role=\\\"button\\\"\\u003Edownload\\u003C/a\\u003E\\u003C/div\\u003E\\u003Ca class=\\\"uiIconText -cx-PRIVATE-mercuryAttachments__icontext\\\" href=\\\"#\\\" data-jsid=\\\"link\\\" role=\\\"button\\\"\\u003E\\u003Ci class=\\\"img sp_4ie5gn sx_0adf5e\\\"\\u003E\\u003C/i\\u003E\\u003Cspan class=\\\"-cx-PUBLIC-mercuryAttachments__filename\\\" data-jsid=\\\"filename\\\"\\u003E\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\"\n },2,],]\n },\n css: [\"UmFO+\",\"veUjj\",\"c6lUE\",\"za92D\",\"oVWZ1\",\"tAd6o\",\"HgCpx\",\"jmZRT\",],\n bootloadable: {\n VideoCallController: {\n resources: [\"OH3xD\",\"AVmr9\",\"f7Tpb\",\"UmFO+\",\"zqZyK\",\"/MWWQ\",\"XH2Cu\",\"zBhY6\",\"WD1Wm\",\"OSd/n\",\"TXKLp\",\"gMfWI\",\"veUjj\",\"nxD7O\",\"KPLqg\",],\n \"module\": true\n },\n SpotifyJSONPRequest: {\n resources: [\"OH3xD\",\"xO/k5\",],\n \"module\": true\n },\n \"legacy:control-textarea\": {\n resources: [\"OH3xD\",\"4/uwC\",\"veUjj\",\"7z4pW\",]\n },\n ErrorDialog: {\n resources: [\"OH3xD\",\"f7Tpb\",\"UmFO+\",\"AVmr9\",\"nxD7O\",],\n \"module\": true\n },\n Music: {\n resources: [\"OH3xD\",\"XH2Cu\",\"f7Tpb\",\"UmFO+\",\"AVmr9\",\"js0se\",\"qu1rX\",\"2xA31\",\"GK3bz\",\"WD1Wm\",\"oVWZ1\",],\n \"module\": true\n },\n FBRTCCallController: {\n resources: [\"OH3xD\",\"AVmr9\",\"f7Tpb\",\"UmFO+\",\"zqZyK\",\"WD1Wm\",\"OSd/n\",\"XH2Cu\",\"TXKLp\",\"zBhY6\",\"gMfWI\",\"/MWWQ\",\"a3inZ\",\"KPLqg\",\"veUjj\",\"nxD7O\",\"LTaK/\",\"21lHn\",\"e0RyX\",\"9aS3c\",\"MfG6c\",\"LsRx/\",\"3h2ll\",\"Mzbs2\",\"wGXi/\",\"d6Evh\",\"6WF8S\",],\n \"module\": true\n }\n },\n resource_map: {\n \"9aS3c\": {\n type: \"css\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yE/r/p3UmoEMXDUD.css\"\n },\n Mzbs2: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y7/r/sM5jkmon6X9.js\"\n },\n jmZRT: {\n type: \"css\",\n permanent: 1,\n nonblocking: 1,\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yz/r/oxmIub316pX.css\"\n },\n \"3h2ll\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yz/r/8nGweTPJCKZ.js\"\n },\n \"6WF8S\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/ya/r/cHaSy_1vFQu.js\"\n },\n \"xO/k5\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yB/r/fQIoBRZLBHX.js\"\n },\n \"cmK7/\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yf/r/_oJ2eyBZFAi.js\"\n },\n zqZyK: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yg/r/DZVcIcmc3QT.js\"\n },\n \"LTaK/\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y_/r/3Z79JZzbt1o.js\"\n },\n KPLqg: {\n type: \"css\",\n permanent: 1,\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yq/r/UJCnyWz8q3r.css\"\n },\n \"wGXi/\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/ym/r/usnMgvD8abB.js\"\n },\n gMfWI: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yY/r/YnJRD6K1VJA.js\"\n },\n \"2xA31\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yQ/r/0h38ritUVHh.js\"\n },\n oVWZ1: {\n type: \"css\",\n permanent: 1,\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/ym/r/ZGslomlch7n.css\"\n },\n \"LsRx/\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yu/r/kS-r05X6OEA.js\"\n },\n qu1rX: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/ym/r/5vdmAFTChHH.js\"\n },\n \"7z4pW\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yG/r/NFZIio5Ki72.js\"\n },\n GK3bz: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y_/r/ATgjpnoErA_.js\"\n },\n a3inZ: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yO/r/9ELMM-KdnsD.js\"\n },\n d6Evh: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y2/r/jalUIRLBuTe.js\"\n },\n MfG6c: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yM/r/895-sItSveZ.js\"\n },\n \"21lHn\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yP/r/QylH5JvJ2tZ.js\"\n }\n },\n ixData: {\n \"/images/messaging/stickers/selector/leftarrow.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_b8k8sa\",\n spriteCssClass: \"sx_ddb76f\"\n },\n \"/images/chat/sidebar/newGroupChatLitestand.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_b8k8sa\",\n spriteCssClass: \"sx_faf97d\"\n },\n \"/images/gifts/icons/cake_icon.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_b8k8sa\",\n spriteCssClass: \"sx_06a61f\"\n },\n \"/images/litestand/sidebar/blended/new_group_chat.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_b8k8sa\",\n spriteCssClass: \"sx_6e4a51\"\n },\n \"/images/chat/status/online.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_047178\"\n },\n \"/images/litestand/bookmarks/sidebar/remove.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_5ed30e\"\n },\n \"/images/litestand/sidebar/blended/online.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_dd19b5\"\n },\n \"/images/litestand/sidebar/blended/pushable.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_ff5be1\"\n },\n \"/images/litestand/bookmarks/sidebar/add.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_bf972e\"\n },\n \"/images/litestand/sidebar/pushable.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_b0241d\"\n },\n \"/images/litestand/sidebar/online.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_8d09d2\"\n },\n \"/images/chat/add.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_26b2d5\"\n },\n \"/images/chat/status/mobile.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_479fb2\"\n },\n \"/images/messaging/stickers/selector/rightarrow.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_b8k8sa\",\n spriteCssClass: \"sx_445519\"\n },\n \"/images/chat/sidebar/newGroupChat.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_b8k8sa\",\n spriteCssClass: \"sx_0de2a7\"\n },\n \"/images/chat/delete.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_9a8650\"\n },\n \"/images/messaging/stickers/selector/store.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_b8k8sa\",\n spriteCssClass: \"sx_5b913c\"\n }\n },\n js: [\"OH3xD\",\"XH2Cu\",\"f7Tpb\",\"AVmr9\",\"js0se\",\"/MWWQ\",\"1YKDj\",\"4/uwC\",\"WD1Wm\",\"cmK7/\",\"OSd/n\",\"zBhY6\",\"TXKLp\",\"bmJBG\",],\n id: \"pagelet_dock\",\n phase: 4\n});"); |
| // 6650 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s627bb4e3baaa214b90c62b30c755beff78e17ab9"); |
| // 6651 |
| geval("bigPipe.onPageletArrive({\n JSBNG__content: {\n pagelet_dock: {\n container_id: \"u_0_3i\"\n }\n },\n jsmods: {\n require: [[\"MusicButtonManager\",\"init\",[],[[\"music.song\",],],],[\"initLiveMessageReceiver\",],[\"Dock\",\"init\",[\"m_0_4k\",],[{\n __m: \"m_0_4k\"\n },],],[\"React\",\"constructAndRenderComponent\",[\"NotificationBeeper.react\",\"m_0_4l\",],[{\n __m: \"NotificationBeeper.react\"\n },{\n unseenVsUnread: false,\n canPause: false,\n shouldLogImpressions: false,\n soundPath: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/yy/r/odIeERVR1c5.mp3\",\n soundEnabled: true,\n tracking: \"{\\\"ref\\\":\\\"beeper\\\",\\\"jewel\\\":\\\"notifications\\\",\\\"type\\\":\\\"click2canvas\\\"}\"\n },{\n __m: \"m_0_4l\"\n },],],[\"ChatApp\",\"init\",[\"m_0_4m\",\"m_0_4n\",],[{\n __m: \"m_0_4m\"\n },{\n __m: \"m_0_4n\"\n },{\n payload_source: \"server_initial_data\"\n },],],[\"ChatOptions\",],[\"ShortProfiles\",\"setMulti\",[],[{\n 100006118350059: {\n id: \"100006118350059\",\n JSBNG__name: \"Javasee Cript\",\n firstName: \"Javasee\",\n vanity: \"javasee.cript\",\n thumbSrc: \"http://jsbngssl.fbcdn-profile-a.akamaihd.net/hprofile-ak-prn2/s32x32/275646_100006118350059_324335073_q.jpg\",\n uri: \"http://jsbngssl.www.facebook.com/javasee.cript\",\n gender: 2,\n type: \"user\",\n is_friend: false,\n social_snippets: null,\n showVideoPromo: false,\n searchTokens: [\"Cript\",\"Javasee\",]\n }\n },],],[\"m_0_4p\",],[\"m_0_4r\",],[\"Typeahead\",\"init\",[\"m_0_4s\",\"m_0_4r\",],[{\n __m: \"m_0_4s\"\n },{\n __m: \"m_0_4r\"\n },[\"chatTypeahead\",\"buildBestAvailableNames\",\"showLoadingIndicator\",],null,],],[\"ClearableTypeahead\",\"resetOnCloseButtonClick\",[\"m_0_4r\",\"m_0_4u\",],[{\n __m: \"m_0_4r\"\n },{\n __m: \"m_0_4u\"\n },],],[\"m_0_4x\",],[\"m_0_4y\",],[\"Layer\",\"init\",[\"m_0_4y\",\"m_0_4z\",],[{\n __m: \"m_0_4y\"\n },{\n __m: \"m_0_4z\"\n },],],[\"m_0_4q\",],[\"m_0_75\",],[\"Typeahead\",\"init\",[\"m_0_73\",\"m_0_75\",],[{\n __m: \"m_0_73\"\n },{\n __m: \"m_0_75\"\n },[],null,],],],\n instances: [[\"m_0_4x\",[\"ChatSidebarDropdown\",\"m_0_4w\",],[{\n __m: \"m_0_4w\"\n },null,],1,],[\"m_0_5t\",[\"XHPTemplate\",\"m_0_6x\",],[{\n __m: \"m_0_6x\"\n },],2,],[\"m_0_5r\",[\"XHPTemplate\",\"m_0_6v\",],[{\n __m: \"m_0_6v\"\n },],2,],[\"m_0_5u\",[\"XHPTemplate\",\"m_0_6y\",],[{\n __m: \"m_0_6y\"\n },],2,],[\"m_0_52\",[\"XHPTemplate\",\"m_0_54\",],[{\n __m: \"m_0_54\"\n },],2,],[\"m_0_5o\",[\"XHPTemplate\",\"m_0_6s\",],[{\n __m: \"m_0_6s\"\n },],2,],[\"m_0_56\",[\"XHPTemplate\",\"m_0_6b\",],[{\n __m: \"m_0_6b\"\n },],2,],[\"m_0_64\",[\"XHPTemplate\",\"m_0_7e\",],[{\n __m: \"m_0_7e\"\n },],2,],[\"m_0_5h\",[\"XHPTemplate\",\"m_0_6l\",],[{\n __m: \"m_0_6l\"\n },],2,],[\"m_0_5v\",[\"XHPTemplate\",\"m_0_6z\",],[{\n __m: \"m_0_6z\"\n },],2,],[\"m_0_58\",[\"XHPTemplate\",\"m_0_6d\",],[{\n __m: \"m_0_6d\"\n },],2,],[\"m_0_5b\",[\"XHPTemplate\",\"m_0_6g\",],[{\n __m: \"m_0_6g\"\n },],2,],[\"m_0_5e\",[\"XHPTemplate\",\"m_0_6j\",],[{\n __m: \"m_0_6j\"\n },],2,],[\"m_0_69\",[\"XHPTemplate\",\"m_0_7l\",],[{\n __m: \"m_0_7l\"\n },],2,],[\"m_0_5p\",[\"XHPTemplate\",\"m_0_6t\",],[{\n __m: \"m_0_6t\"\n },],2,],[\"m_0_5l\",[\"XHPTemplate\",\"m_0_6p\",],[{\n __m: \"m_0_6p\"\n },],2,],[\"m_0_5n\",[\"XHPTemplate\",\"m_0_6r\",],[{\n __m: \"m_0_6r\"\n },],2,],[\"m_0_5i\",[\"XHPTemplate\",\"m_0_6m\",],[{\n __m: \"m_0_6m\"\n },],2,],[\"m_0_4v\",[\"ChatTypeaheadDataSource\",],[{\n alwaysPrefixMatch: true,\n showOfflineUsers: true\n },],2,],[\"m_0_5a\",[\"XHPTemplate\",\"m_0_6f\",],[{\n __m: \"m_0_6f\"\n },],2,],[\"m_0_5g\",[\"DataSource\",],[{\n maxResults: 5,\n queryData: [],\n bootstrapData: {\n viewer: 100006118350059,\n token: \"1374777501-7\",\n filter: [\"user\",],\n options: [\"friends_only\",],\n context: \"messages_bootstrap\"\n },\n bootstrapEndpoint: \"/ajax/typeahead/first_degree.php\"\n },],2,],[\"m_0_5j\",[\"XHPTemplate\",\"m_0_6n\",],[{\n __m: \"m_0_6n\"\n },],2,],[\"m_0_63\",[\"XHPTemplate\",\"m_0_7d\",],[{\n __m: \"m_0_7d\"\n },],2,],[\"m_0_5m\",[\"XHPTemplate\",\"m_0_6q\",],[{\n __m: \"m_0_6q\"\n },],2,],[\"m_0_5q\",[\"XHPTemplate\",\"m_0_6u\",],[{\n __m: \"m_0_6u\"\n },],2,],[\"m_0_4r\",[\"Typeahead\",\"m_0_4v\",\"ChatTypeaheadView\",\"m_0_4s\",\"ChatTypeaheadRenderer\",\"ChatTypeaheadCore\",\"m_0_4t\",],[{\n __m: \"m_0_4v\"\n },{\n node_id: \"u_0_2x\",\n node: null,\n ctor: {\n __m: \"ChatTypeaheadView\"\n },\n options: {\n causalElement: {\n __m: \"m_0_4s\"\n },\n minWidth: 0,\n alignment: \"left\",\n renderer: {\n __m: \"ChatTypeaheadRenderer\"\n },\n showBadges: 1,\n autoSelect: true\n }\n },{\n ctor: {\n __m: \"ChatTypeaheadCore\"\n },\n options: {\n resetOnSelect: true,\n setValueOnSelect: false,\n keepFocused: false\n }\n },{\n __m: \"m_0_4t\"\n },],7,],[\"m_0_4q\",[\"ChatOrderedList\",\"m_0_50\",\"m_0_51\",\"m_0_52\",\"m_0_4y\",],[false,{\n __m: \"m_0_50\"\n },{\n __m: \"m_0_51\"\n },{\n __m: \"m_0_52\"\n },{\n __m: \"m_0_4y\"\n },null,],3,],[\"m_0_62\",[\"XHPTemplate\",\"m_0_7c\",],[{\n __m: \"m_0_7c\"\n },],2,],[\"m_0_59\",[\"XHPTemplate\",\"m_0_6e\",],[{\n __m: \"m_0_6e\"\n },],2,],[\"m_0_5d\",[\"XHPTemplate\",\"m_0_6i\",],[{\n __m: \"m_0_6i\"\n },],2,],[\"m_0_66\",[\"XHPTemplate\",\"m_0_7i\",],[{\n __m: \"m_0_7i\"\n },],2,],[\"m_0_5z\",[\"XHPTemplate\",\"m_0_79\",],[{\n __m: \"m_0_79\"\n },],2,],[\"m_0_61\",[\"XHPTemplate\",\"m_0_7b\",],[{\n __m: \"m_0_7b\"\n },],2,],[\"m_0_4y\",[\"LegacyContextualDialog\",\"AccessibleLayer\",],[{\n buildWrapper: false,\n causalElement: null,\n addedBehaviors: [{\n __m: \"AccessibleLayer\"\n },]\n },],5,],[\"m_0_51\",[\"XHPTemplate\",\"m_0_53\",],[{\n __m: \"m_0_53\"\n },],2,],[\"m_0_75\",[\"Typeahead\",\"m_0_76\",\"ContextualTypeaheadView\",\"m_0_73\",\"TypeaheadCore\",\"m_0_74\",],[{\n __m: \"m_0_76\"\n },{\n node_id: \"\",\n node: null,\n ctor: {\n __m: \"ContextualTypeaheadView\"\n },\n options: {\n causalElement: {\n __m: \"m_0_73\"\n },\n minWidth: 0,\n alignment: \"left\",\n showBadges: 1\n }\n },{\n ctor: {\n __m: \"TypeaheadCore\"\n },\n options: {\n }\n },{\n __m: \"m_0_74\"\n },],3,],[\"m_0_57\",[\"XHPTemplate\",\"m_0_6c\",],[{\n __m: \"m_0_6c\"\n },],2,],[\"m_0_5c\",[\"XHPTemplate\",\"m_0_6h\",],[{\n __m: \"m_0_6h\"\n },],2,],[\"m_0_5w\",[\"XHPTemplate\",\"m_0_72\",],[{\n __m: \"m_0_72\"\n },],2,],[\"m_0_55\",[\"XHPTemplate\",\"m_0_6a\",],[{\n __m: \"m_0_6a\"\n },],2,],[\"m_0_5k\",[\"XHPTemplate\",\"m_0_6o\",],[{\n __m: \"m_0_6o\"\n },],2,],[\"m_0_5s\",[\"XHPTemplate\",\"m_0_6w\",],[{\n __m: \"m_0_6w\"\n },],2,],[\"m_0_5y\",[\"XHPTemplate\",\"m_0_78\",],[{\n __m: \"m_0_78\"\n },],2,],[\"m_0_65\",[\"XHPTemplate\",\"m_0_7h\",],[{\n __m: \"m_0_7h\"\n },],2,],[\"m_0_5x\",[\"XHPTemplate\",\"m_0_77\",],[{\n __m: \"m_0_77\"\n },],2,],[\"m_0_4p\",[\"BuddyListNub\",\"m_0_4o\",\"m_0_4q\",\"m_0_4r\",],[{\n __m: \"m_0_4o\"\n },{\n __m: \"m_0_4q\"\n },{\n __m: \"m_0_4r\"\n },],1,],[\"m_0_5f\",[\"XHPTemplate\",\"m_0_6k\",],[{\n __m: \"m_0_6k\"\n },],2,],[\"m_0_68\",[\"XHPTemplate\",\"m_0_7k\",],[{\n __m: \"m_0_7k\"\n },],2,],[\"m_0_76\",[\"DataSource\",],[[],],2,],[\"m_0_60\",[\"XHPTemplate\",\"m_0_7a\",],[{\n __m: \"m_0_7a\"\n },],2,],[\"m_0_67\",[\"XHPTemplate\",\"m_0_7j\",],[{\n __m: \"m_0_7j\"\n },],2,],],\n define: [[\"LinkshimHandlerConfig\",[],{\n supports_meta_referrer: true,\n render_verification_rate: 1000\n },27,],[\"ChatTabTemplates\",[\"m_0_5h\",\"m_0_5i\",\"m_0_5j\",\"m_0_5k\",\"m_0_5l\",\"m_0_5m\",\"m_0_5n\",\"m_0_5o\",\"m_0_5p\",\"m_0_5q\",\"m_0_5r\",\"m_0_5s\",\"m_0_5t\",\"m_0_5u\",\"m_0_5v\",\"m_0_5w\",\"m_0_5x\",\"m_0_5y\",\"m_0_5z\",\"m_0_60\",\"m_0_61\",\"m_0_62\",\"m_0_63\",\"m_0_64\",],{\n \":fb:chat:conversation:message:event\": {\n __m: \"m_0_5h\"\n },\n \":fb:chat:conversation:message-group\": {\n __m: \"m_0_5i\"\n },\n \":fb:chat:conversation:message:undertext\": {\n __m: \"m_0_5j\"\n },\n \":fb:chat:tab:selector:item\": {\n __m: \"m_0_5k\"\n },\n \":fb:mercury:chat:message:forward\": {\n __m: \"m_0_5l\"\n },\n \":fb:chat:tab:selector\": {\n __m: \"m_0_5m\"\n },\n \":fb:mercury:chat:multichat-tooltip-item\": {\n __m: \"m_0_5n\"\n },\n \":fb:chat:conversation:date-break\": {\n __m: \"m_0_5o\"\n },\n \":fb:mercury:call:tour\": {\n __m: \"m_0_5p\"\n },\n \":fb:mercury:chat:tab-sheet:message-icon-sheet\": {\n __m: \"m_0_5q\"\n },\n \":fb:mercury:chat:tab-sheet:clickable-message-icon-sheet\": {\n __m: \"m_0_5r\"\n },\n \":fb:mercury:chat:tab-sheet:user-blocked\": {\n __m: \"m_0_5s\"\n },\n \":fb:chat:conversation:message:subject\": {\n __m: \"m_0_5t\"\n },\n \":fb:mercury:chat:tab-sheet:add-friends-empty-tab\": {\n __m: \"m_0_5u\"\n },\n \":fb:mercury:chat:multichat-tab\": {\n __m: \"m_0_5v\"\n },\n \":fb:mercury:chat:tab-sheet:name-conversation\": {\n __m: \"m_0_5w\"\n },\n \":fb:chat:conversation:message\": {\n __m: \"m_0_5x\"\n },\n \":fb:mercury:call:promo\": {\n __m: \"m_0_5y\"\n },\n \":fb:mercury:chat:tab-sheet:add-friends\": {\n __m: \"m_0_5z\"\n },\n \":fb:chat:conversation:message:status\": {\n __m: \"m_0_60\"\n },\n \":fb:mercury:chat:tab-sheet:message-mute-sheet\": {\n __m: \"m_0_61\"\n },\n \":fb:mercury:typing-indicator:typing\": {\n __m: \"m_0_62\"\n },\n \":fb:mercury:timestamp\": {\n __m: \"m_0_63\"\n },\n \":fb:mercury:chat:user-tab\": {\n __m: \"m_0_64\"\n }\n },15,],[\"VideoCallTemplates\",[\"m_0_65\",],{\n \":fb:videocall:incoming-dialog\": {\n __m: \"m_0_65\"\n }\n },74,],[\"MercuryTypeaheadTemplates\",[\"m_0_66\",\"m_0_67\",\"m_0_68\",\"m_0_69\",],{\n \":fb:mercury:tokenizer\": {\n __m: \"m_0_66\"\n },\n \":fb:mercury:typeahead:header\": {\n __m: \"m_0_67\"\n },\n \":fb:mercury:typeahead\": {\n __m: \"m_0_68\"\n },\n \":fb:mercury:typeahead:result\": {\n __m: \"m_0_69\"\n }\n },43,],[\"MercurySheetTemplates\",[\"m_0_55\",],{\n \":fb:mercury:tab-sheet:loading\": {\n __m: \"m_0_55\"\n }\n },40,],[\"MercuryAttachmentTemplates\",[\"m_0_56\",\"m_0_57\",\"m_0_58\",\"m_0_59\",\"m_0_5a\",\"m_0_5b\",\"m_0_5c\",\"m_0_5d\",\"m_0_5e\",\"m_0_5f\",],{\n \":fb:mercury:attachment:error\": {\n __m: \"m_0_56\"\n },\n \":fb:mercury:attachment:video-thumb\": {\n __m: \"m_0_57\"\n },\n \":fb:mercury:attachment:file-name\": {\n __m: \"m_0_58\"\n },\n \":fb:mercury:attachment:external-link\": {\n __m: \"m_0_59\"\n },\n \":fb:mercury:attachment:music\": {\n __m: \"m_0_5a\"\n },\n \":fb:mercury:attachment:file-link\": {\n __m: \"m_0_5b\"\n },\n \":fb:mercury:attachment:preview\": {\n __m: \"m_0_5c\"\n },\n \":fb:mercury:attachment:share-link\": {\n __m: \"m_0_5d\"\n },\n \":fb:mercury:upload-file-row\": {\n __m: \"m_0_5e\"\n },\n \":fb:mercury:attachment:extended-file-link\": {\n __m: \"m_0_5f\"\n }\n },34,],[\"MercuryDataSourceWrapper\",[\"m_0_5g\",],{\n source: {\n __m: \"m_0_5g\"\n }\n },37,],[\"MercuryStickersInitialData\",[],{\n packs: [{\n id: 126361870881943,\n JSBNG__name: \"Meep\",\n icon: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yd/r/wn5XeO2Rkqj.png\",\n selectedIcon: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yN/r/sZ4spcbuYtY.png\"\n },{\n id: 350357561732812,\n JSBNG__name: \"Pusheen\",\n icon: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yy/r/kLIslj7Vlau.png\",\n selectedIcon: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yz/r/58FtCc-hDRb.png\"\n },{\n id: \"emoticons\",\n JSBNG__name: \"Emoticons\",\n icon: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y_/r/4Dc6kC7GMzT.png\",\n selectedIcon: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yV/r/d-mu_AVkpiU.png\"\n },]\n },144,],],\n elements: [[\"m_0_4n\",\"u_0_2w\",2,],[\"m_0_7f\",\"u_0_3h\",2,\"m_0_7e\",],[\"m_0_71\",\"u_0_39\",2,\"m_0_6z\",],[\"m_0_4t\",\"u_0_2y\",2,],[\"m_0_4o\",\"fbDockChatBuddylistNub\",2,],[\"m_0_70\",\"u_0_3a\",2,\"m_0_6z\",],[\"m_0_4u\",\"u_0_2z\",2,],[\"m_0_73\",\"u_0_3c\",4,\"m_0_72\",],[\"m_0_4w\",\"u_0_31\",2,],[\"m_0_4m\",\"u_0_2v\",2,],[\"m_0_4s\",\"u_0_30\",4,],[\"m_0_74\",\"u_0_3b\",2,\"m_0_72\",],[\"m_0_4l\",\"u_0_34\",2,],[\"m_0_4k\",\"u_0_2u\",2,],[\"m_0_7g\",\"u_0_3g\",2,\"m_0_7e\",],[\"m_0_50\",\"u_0_33\",2,],],\n markup: [[\"m_0_6f\",{\n __html: \"\\u003Cdiv class=\\\"musicAttachment\\\"\\u003E\\u003Cdiv class=\\\"-cx-PUBLIC-mercuryAttachments__attachment -cx-PUBLIC-mercuryAttachments__fileattachment\\\" data-jsid=\\\"icon_link\\\"\\u003E\\u003Ca class=\\\"uiIconText -cx-PRIVATE-mercuryAttachments__icontext\\\" href=\\\"#\\\" data-jsid=\\\"link\\\" role=\\\"button\\\"\\u003E\\u003Ci class=\\\"img sp_4ie5gn sx_0adf5e\\\"\\u003E\\u003C/i\\u003E\\u003Cspan data-jsid=\\\"filename\\\" class=\\\"-cx-PUBLIC-mercuryAttachments__filename\\\"\\u003E\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PUBLIC-mercuryImages__imagepreviewcontainer clearfix stat_elem\\\" data-jsid=\\\"preview\\\"\\u003E\\u003Ca class=\\\"-cx-PUBLIC-mercuryImages__imagepreview\\\" data-jsid=\\\"image-link\\\" href=\\\"#\\\" target=\\\"_blank\\\" role=\\\"button\\\"\\u003E\\u003Cimg data-jsid=\\\"preview-image\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yw/r/drP8vlvSl_8.gif\\\" /\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_77\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PRIVATE-fbChatMessage__root fsm\\\" data-jsid=\\\"message\\\"\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6h\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PUBLIC-mercuryImages__imagepreviewcontainer clearfix stat_elem\\\"\\u003E\\u003Ca class=\\\"-cx-PUBLIC-mercuryImages__imagepreview\\\" data-jsid=\\\"image-link\\\" href=\\\"#\\\" target=\\\"_blank\\\" role=\\\"button\\\"\\u003E\\u003Cimg data-jsid=\\\"preview-image\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yw/r/drP8vlvSl_8.gif\\\" /\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_78\",{\n __html: \"\\u003Cdiv\\u003E\\u003Cdiv class=\\\"clearfix mvm mrm mll videoCallPromo\\\"\\u003E\\u003Ci class=\\\"-cx-PRIVATE-uiImageBlock__image -cx-PRIVATE-uiImageBlock__mediumimage lfloat img sp_4ie5gn sx_4e6efe\\\"\\u003E\\u003C/i\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-uiFlexibleBlock__flexiblecontent\\\"\\u003E\\u003Cdiv class=\\\"pls\\\"\\u003E\\u003Cspan class=\\\"calloutTitle fwb\\\"\\u003ETry talking face to face\\u003C/span\\u003E\\u003Cdiv class=\\\"fsm fwn fcg\\\"\\u003EClick \\u003Cspan\\u003E ( \\u003Ci class=\\\"onlineStatusIcon img sp_4ie5gn sx_f7362e\\\"\\u003E\\u003C/i\\u003E )\\u003C/span\\u003E below to start a video call.\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"uiOverlayFooter uiContextualDialogFooter uiBoxGray topborder\\\"\\u003E\\u003Ctable class=\\\"uiGrid\\\" cellspacing=\\\"0\\\" cellpadding=\\\"0\\\"\\u003E\\u003Ctbody\\u003E\\u003Ctr\\u003E\\u003Ctd class=\\\"prs uiOverlayFooterMessage\\\"\\u003E\\u003Ca target=\\\"_blank\\\" href=\\\"/help/?page=177940565599960\\\"\\u003ELearn more\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"uiOverlayFooterButtons\\\"\\u003E\\u003Ca class=\\\"uiOverlayButton layerCancel uiButton uiButtonConfirm\\\" href=\\\"#\\\" role=\\\"button\\\" name=\\\"cancel\\\"\\u003E\\u003Cspan class=\\\"uiButtonText\\\"\\u003EClose\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003C/tr\\u003E\\u003C/tbody\\u003E\\u003C/table\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6n\",{\n __html: \"\\u003Cdiv\\u003E\\u003Cdiv data-jsid=\\\"message\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryStatus__undertext fwb fcg\\\" data-jsid=\\\"status\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6q\",{\n __html: \"\\u003Cdiv class=\\\"uiToggle -cx-PRIVATE-fbNub__root fbNub -cx-PRIVATE-fbChatTabSelector__root\\\"\\u003E\\u003Ca class=\\\"fbNubButton\\\" tabindex=\\\"0\\\" href=\\\"#\\\" rel=\\\"toggle\\\" role=\\\"button\\\"\\u003E\\u003Ci class=\\\"messagesIcon img sp_3yt8ar sx_de779b\\\"\\u003E\\u003C/i\\u003E\\u003Cspan data-jsid=\\\"numTabs\\\"\\u003E\\u003C/span\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-fbChatTabSelector__nummessages\\\" data-jsid=\\\"numMessages\\\"\\u003E\\u003C/span\\u003E\\u003C/a\\u003E\\u003Cdiv class=\\\"fbNubFlyout uiToggleFlyout noTitlebar\\\"\\u003E\\u003Cdiv class=\\\"fbNubFlyoutOuter\\\"\\u003E\\u003Cdiv class=\\\"fbNubFlyoutInner\\\"\\u003E\\u003Cdiv class=\\\"fbNubFlyoutBody scrollable\\\"\\u003E\\u003Cdiv class=\\\"fbNubFlyoutBodyContent\\\"\\u003E\\u003Cdiv role=\\\"menu\\\" class=\\\"uiMenu\\\" data-jsid=\\\"menu\\\"\\u003E\\u003Cul class=\\\"uiMenuInner\\\"\\u003E\\u003Cli class=\\\"uiMenuItem\\\" data-label=\\\"Dummy\\\"\\u003E\\u003Ca class=\\\"itemAnchor\\\" role=\\\"menuitem\\\" tabindex=\\\"0\\\" href=\\\"#\\\"\\u003E\\u003Cspan class=\\\"itemLabel fsm\\\"\\u003E Dummy \\u003C/span\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\\u003C/ul\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_7d\",{\n __html: \"\\u003Cabbr title=\\\"Wednesday, December 31, 1969 at 4:00pm\\\" data-utime=\\\"0\\\" class=\\\"hidden_elem timestamp\\\" data-jsid=\\\"timestamp\\\"\\u003Eover a year ago\\u003C/abbr\\u003E\"\n },2,],[\"m_0_7h\",{\n __html: \"\\u003Cdiv class=\\\"clearfix\\\"\\u003E\\u003Ci class=\\\"mrm -cx-PRIVATE-uiSquareImage__root -cx-PRIVATE-uiImageBlockDeprecated__image -cx-PRIVATE-uiImageBlockDeprecated__iconimage -cx-PRIVATE-uiSquareImage__large img sp_283j6i sx_8ef0b4\\\" data-jsid=\\\"profilePhoto\\\"\\u003E\\u003C/i\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-uiImageBlockDeprecated__iconcontent -cx-PRIVATE-uiImageBlockDeprecated__content\\\"\\u003E\\u003Cdiv class=\\\"mbs fsl fwb fcb\\\" data-jsid=\\\"mainText\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"aux-message fcg\\\" data-jsid=\\\"auxMessage\\\"\\u003EVideo will start as soon as you answer.\\u003C/div\\u003E\\u003Cdiv class=\\\"mts hidden_elem fcg\\\" data-jsid=\\\"slowMessage\\\"\\u003E\\u003Cspan class=\\\"fwb fcb\\\"\\u003EHaving trouble?\\u003C/span\\u003E Your connection may be \\u003Ca href=\\\"/help/214265948627885\\\" target=\\\"_blank\\\"\\u003Etoo slow\\u003C/a\\u003E.\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6o\",{\n __html: \"\\u003Cli class=\\\"uiMenuItem -cx-PRIVATE-fbChatTabSelector__item\\\"\\u003E\\u003Ca class=\\\"itemAnchor\\\" role=\\\"menuitem\\\" tabindex=\\\"-1\\\" href=\\\"#\\\"\\u003E\\u003Cspan class=\\\"itemLabel fsm\\\"\\u003E\\u003Cdiv class=\\\"clearfix\\\"\\u003E\\u003Clabel class=\\\"rfloat uiCloseButton uiCloseButtonSmall\\\" for=\\\"u_0_36\\\"\\u003E\\u003Cinput title=\\\"Remove\\\" type=\\\"button\\\" data-jsid=\\\"closeButton\\\" id=\\\"u_0_36\\\" /\\u003E\\u003C/label\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbChatTabSelector__itemcontent\\\"\\u003E\\u003Cspan class=\\\"unreadCount\\\" data-jsid=\\\"unreadCount\\\"\\u003E\\u003C/span\\u003E\\u003Cspan data-jsid=\\\"content\\\"\\u003E\\u003C/span\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\"\n },2,],[\"m_0_6x\",{\n __html: \"\\u003Cdiv class=\\\"fbChatMessageSubject fsm fwb\\\" data-jsid=\\\"messageSubject\\\"\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_72\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PRIVATE-chatNameConversation__root\\\"\\u003E\\u003Ctable class=\\\"uiGrid\\\" cellspacing=\\\"0\\\" cellpadding=\\\"0\\\"\\u003E\\u003Ctbody\\u003E\\u003Ctr\\u003E\\u003Ctd class=\\\"vTop -cx-PRIVATE-chatNameConversation__inputcontainer\\\"\\u003E\\u003Cdiv class=\\\"uiTypeahead\\\" id=\\\"u_0_3b\\\"\\u003E\\u003Cdiv class=\\\"wrap\\\"\\u003E\\u003Cinput type=\\\"hidden\\\" autocomplete=\\\"off\\\" class=\\\"hiddenInput\\\" /\\u003E\\u003Cdiv class=\\\"innerWrap\\\"\\u003E\\u003Cinput type=\\\"text\\\" class=\\\"inputtext textInput DOMControl_placeholder\\\" data-jsid=\\\"nameInput\\\" placeholder=\\\"Name this conversation\\\" autocomplete=\\\"off\\\" aria-autocomplete=\\\"list\\\" aria-expanded=\\\"false\\\" aria-owns=\\\"typeahead_list_u_0_3b\\\" role=\\\"combobox\\\" spellcheck=\\\"false\\\" value=\\\"Name this conversation\\\" aria-label=\\\"Name this conversation\\\" id=\\\"u_0_3c\\\" /\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"vTop\\\"\\u003E\\u003Cbutton value=\\\"1\\\" class=\\\"-cx-PRIVATE-abstractButton__root -cx-PRIVATE-uiButton__root selected -cx-PRIVATE-uiButton__confirm\\\" data-jsid=\\\"doneButton\\\" type=\\\"submit\\\"\\u003EDone\\u003C/button\\u003E\\u003C/td\\u003E\\u003C/tr\\u003E\\u003C/tbody\\u003E\\u003C/table\\u003E\\u003C/div\\u003E\"\n },4,],[\"m_0_7j\",{\n __html: \"\\u003Cli class=\\\"-cx-PRIVATE-mercuryTypeahead__header\\\"\\u003E\\u003Cdiv class=\\\"clearfix\\\"\\u003E\\u003Cdiv class=\\\"lfloat\\\"\\u003E\\u003Cspan data-jsid=\\\"text\\\"\\u003E\\u003C/span\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"rfloat\\\"\\u003E\\u003Cspan\\u003E\\u003Cimg class=\\\"-cx-PRIVATE-mercuryTypeahead__loadingspinner img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yb/r/GsNJNwuI-UM.gif\\\" alt=\\\"\\\" data-jsid=\\\"loadingSpinner\\\" width=\\\"16\\\" height=\\\"11\\\" /\\u003E\\u003Ca class=\\\"-cx-PRIVATE-mercuryTypeahead__link\\\" data-jsid=\\\"link\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/span\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/li\\u003E\"\n },2,],[\"m_0_6y\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PRIVATE-chatAddFriendsEmptyTab__root\\\"\\u003E\\u003Ctable class=\\\"uiGrid\\\" cellspacing=\\\"0\\\" cellpadding=\\\"0\\\"\\u003E\\u003Ctbody\\u003E\\u003Ctr\\u003E\\u003Ctd class=\\\"vTop -cx-PRIVATE-chatAddFriendsEmptyTab__to\\\"\\u003E\\u003Cspan class=\\\"fcg\\\"\\u003ETo:\\u003C/span\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"vTop -cx-PRIVATE-chatAddFriendsEmptyTab__typeahead\\\"\\u003E\\u003Cdiv data-jsid=\\\"participantsTypeahead\\\"\\u003E\\u003C/div\\u003E\\u003C/td\\u003E\\u003C/tr\\u003E\\u003C/tbody\\u003E\\u003C/table\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_7k\",{\n __html: \"\\u003Cdiv class=\\\"uiTypeahead\\\"\\u003E\\u003Cdiv class=\\\"wrap\\\"\\u003E\\u003Cinput type=\\\"hidden\\\" autocomplete=\\\"off\\\" class=\\\"hiddenInput\\\" /\\u003E\\u003Cdiv class=\\\"innerWrap\\\"\\u003E\\u003Cinput type=\\\"text\\\" class=\\\"inputtext textInput\\\" data-jsid=\\\"textfield\\\" /\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6z\",{\n __html: \"\\u003Cdiv class=\\\"fbNub -cx-PRIVATE-fbNub__root -cx-PRIVATE-fbMercuryChatTab__root -cx-PRIVATE-fbMercuryChatThreadTab__root\\\"\\u003E\\u003Ca class=\\\"fbNubButton\\\" tabindex=\\\"0\\\" href=\\\"#\\\" data-jsid=\\\"dockButton\\\" role=\\\"button\\\"\\u003E\\u003Cdiv class=\\\"clearfix fbChatTab\\\"\\u003E\\u003Cdiv class=\\\"funhouse rfloat\\\"\\u003E\\u003Cdiv class=\\\"close\\\" title=\\\"Close\\\" data-jsid=\\\"closeButton\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"wrapWrapper\\\"\\u003E\\u003Cdiv class=\\\"wrap\\\"\\u003E\\u003Cdiv class=\\\"name fwb\\\" data-jsid=\\\"name\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-fbMercuryChatTab__nummessages hidden_elem\\\" data-jsid=\\\"numMessages\\\"\\u003E0\\u003C/span\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/a\\u003E\\u003Cdiv class=\\\"fbNubFlyout fbDockChatTabFlyout\\\" data-jsid=\\\"chatWrapper\\\" role=\\\"complementary\\\" aria-labelledby=\\\"u_0_37\\\"\\u003E\\u003Cdiv class=\\\"fbNubFlyoutOuter\\\"\\u003E\\u003Cdiv class=\\\"fbNubFlyoutInner\\\"\\u003E\\u003Cdiv class=\\\"clearfix fbNubFlyoutTitlebar titlebar\\\" data-jsid=\\\"nubFlyoutTitlebar\\\"\\u003E\\u003Cdiv class=\\\"mls titlebarButtonWrapper rfloat\\\"\\u003E\\u003Ca data-hover=\\\"tooltip\\\" aria-label=\\\"Add more friends to chat\\\" data-tooltip-alignh=\\\"center\\\" class=\\\"addToThread button\\\" href=\\\"#\\\" data-jsid=\\\"addToThreadLink\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003Cdiv class=\\\"uiSelector inlineBlock -cx-PRIVATE-fbDockChatDropdown__root\\\" data-jsid=\\\"dropdown\\\"\\u003E\\u003Cdiv class=\\\"uiToggle wrap\\\"\\u003E\\u003Ca data-hover=\\\"tooltip\\\" aria-label=\\\"Options\\\" data-tooltip-alignh=\\\"center\\\" class=\\\"button uiSelectorButton\\\" href=\\\"#\\\" role=\\\"button\\\" aria-haspopup=\\\"1\\\" rel=\\\"toggle\\\"\\u003E\\u003C/a\\u003E\\u003Cdiv class=\\\"uiSelectorMenuWrapper uiToggleFlyout\\\"\\u003E\\u003Cdiv role=\\\"menu\\\" class=\\\"uiMenu uiSelectorMenu\\\"\\u003E\\u003Cul class=\\\"uiMenuInner\\\"\\u003E\\u003Cli class=\\\"uiMenuItem\\\" data-label=\\\"See Full Conversation\\\"\\u003E\\u003Ca class=\\\"itemAnchor\\\" role=\\\"menuitem\\\" tabindex=\\\"0\\\" href=\\\"#\\\" data-jsid=\\\"conversationLink\\\"\\u003E\\u003Cspan class=\\\"itemLabel fsm\\\"\\u003ESee Full Conversation\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuItem\\\"\\u003E\\u003Cform data-jsid=\\\"attachButtonForm\\\" action=\\\"http://jsbngssl.upload.facebook.com/ajax/mercury/upload.php\\\" method=\\\"post\\\" onsubmit=\\\"return window.Event && Event.__inlineSubmit && Event.__inlineSubmit(this,event)\\\" id=\\\"u_0_39\\\"\\u003E\\u003Cinput type=\\\"hidden\\\" name=\\\"fb_dtsg\\\" value=\\\"AQApxIm6\\\" autocomplete=\\\"off\\\" /\\u003E\\u003Cinput type=\\\"hidden\\\" autocomplete=\\\"off\\\" data-jsid=\\\"attachID\\\" name=\\\"attach_id\\\" /\\u003E\\u003Cinput type=\\\"hidden\\\" autocomplete=\\\"off\\\" name=\\\"store_as_message_image\\\" value=\\\"1\\\" /\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-uiInlineBlock__root -cx-PRIVATE-uiFileInput__container -cx-PRIVATE-mercuryFileUploader__root itemLabel\\\"\\u003E\\u003Cinput type=\\\"file\\\" class=\\\"-cx-PRIVATE-uiFileInput__input\\\" name=\\\"attachment[]\\\" multiple=\\\"1\\\" data-jsid=\\\"fileInput\\\" /\\u003E\\u003Ca class=\\\"-cx-PRIVATE-mercuryFileUploader__button itemAnchor\\\"\\u003EAdd Files...\\u003C/a\\u003E\\u003C/div\\u003E\\u003C/form\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuItem\\\" data-label=\\\"Add Friends to Chat...\\\"\\u003E\\u003Ca class=\\\"itemAnchor\\\" role=\\\"menuitem\\\" tabindex=\\\"-1\\\" href=\\\"#\\\" data-jsid=\\\"addFriendLink\\\"\\u003E\\u003Cspan class=\\\"itemLabel fsm\\\"\\u003EAdd Friends to Chat...\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuItem\\\" data-label=\\\"Edit Conversation Name\\\"\\u003E\\u003Ca class=\\\"itemAnchor\\\" role=\\\"menuitem\\\" tabindex=\\\"-1\\\" href=\\\"#\\\" data-jsid=\\\"nameConversationLink\\\"\\u003E\\u003Cspan class=\\\"itemLabel fsm\\\"\\u003EEdit Conversation Name\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuSeparator\\\"\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuItem hidden_elem\\\" data-label=\\\"Mute Conversation\\\"\\u003E\\u003Ca class=\\\"itemAnchor\\\" role=\\\"menuitem\\\" tabindex=\\\"-1\\\" href=\\\"#\\\" data-jsid=\\\"muteThreadLink\\\"\\u003E\\u003Cspan class=\\\"itemLabel fsm\\\"\\u003EMute Conversation\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuItem hidden_elem\\\" data-label=\\\"Unmute Conversation\\\"\\u003E\\u003Ca class=\\\"itemAnchor\\\" role=\\\"menuitem\\\" tabindex=\\\"-1\\\" href=\\\"#\\\" data-jsid=\\\"unmuteThreadLink\\\"\\u003E\\u003Cspan class=\\\"itemLabel fsm\\\"\\u003EUnmute Conversation\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuItem\\\" data-label=\\\"Leave Conversation...\\\"\\u003E\\u003Ca class=\\\"itemAnchor\\\" role=\\\"menuitem\\\" tabindex=\\\"-1\\\" href=\\\"#\\\" data-jsid=\\\"unsubscribeLink\\\"\\u003E\\u003Cspan class=\\\"itemLabel fsm\\\"\\u003ELeave Conversation...\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\\u003C/ul\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Ca class=\\\"close button\\\" href=\\\"#\\\" data-jsid=\\\"titlebarCloseButton\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"titlebarLabel clearfix\\\"\\u003E\\u003Ch4 class=\\\"titlebarTextWrapper\\\"\\u003E\\u003Cimg class=\\\"-cx-PRIVATE-fbMercuryChatUserTab__presenceindicator img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y4/r/-PAXP-deijE.gif\\\" data-jsid=\\\"presenceIndicator\\\" alt=\\\"\\\" width=\\\"1\\\" height=\\\"1\\\" /\\u003E\\u003Ca class=\\\"titlebarText noLink\\\" href=\\\"#\\\" rel=\\\"none\\\" data-jsid=\\\"titlebarText\\\" aria-level=\\\"3\\\" id=\\\"u_0_37\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/h4\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fbNubFlyoutHeader\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryTabSheet__sheetcontainer\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryTabSheet__sheet hidden_elem\\\" data-jsid=\\\"sheet\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fbNubFlyoutBody scrollable\\\" data-jsid=\\\"chatConv\\\"\\u003E\\u003Cdiv class=\\\"fbNubFlyoutBodyContent\\\"\\u003E\\u003Ctable class=\\\"uiGrid conversationContainer\\\" cellspacing=\\\"0\\\" cellpadding=\\\"0\\\" role=\\\"log\\\"\\u003E\\u003Ctbody\\u003E\\u003Ctr\\u003E\\u003Ctd class=\\\"vBot\\\"\\u003E\\u003Cdiv class=\\\"accessible_elem\\\"\\u003EChat Conversation Start\\u003C/div\\u003E\\u003Cimg class=\\\"pvm loading hidden_elem img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yb/r/GsNJNwuI-UM.gif\\\" alt=\\\"\\\" data-jsid=\\\"loadingIndicator\\\" width=\\\"16\\\" height=\\\"11\\\" /\\u003E\\u003Cdiv class=\\\"conversation\\\" aria-live=\\\"polite\\\" aria-atomic=\\\"false\\\" data-jsid=\\\"conversation\\\" id=\\\"u_0_38\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"accessible_elem\\\"\\u003EChat Conversation End\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PUBLIC-mercuryTypingIndicator__root\\\" data-jsid=\\\"typingIndicator\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-mercuryLastMessageIndicator__root\\\" data-jsid=\\\"lastMessageIndicator\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-mercuryLastMessageIndicator__icon\\\"\\u003E\\u003C/div\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-mercuryLastMessageIndicator__text\\\"\\u003E\\u003C/span\\u003E\\u003C/div\\u003E\\u003C/td\\u003E\\u003C/tr\\u003E\\u003C/tbody\\u003E\\u003C/table\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fbNubFlyoutFooter\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryChatTab__inputcontainer\\\" data-jsid=\\\"inputContainer\\\"\\u003E\\u003Ctextarea class=\\\"uiTextareaAutogrow -cx-PRIVATE-fbMercuryChatTab__input\\\" data-jsid=\\\"input\\\" aria-controls=\\\"u_0_38\\\" onkeydown=\\\"window.Bootloader && Bootloader.loadComponents(["control-textarea"], function() { TextAreaControl.getInstance(this) }.bind(this)); \\\"\\u003E\\u003C/textarea\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryChatTab__chaticonscontainer\\\" data-jsid=\\\"iconsContainer\\\"\\u003E\\u003Cform class=\\\"-cx-PRIVATE-fbMercuryChatTab__chatphotouploader\\\" data-jsid=\\\"photoAttachButtonForm\\\" action=\\\"http://jsbngssl.upload.facebook.com/ajax/mercury/upload.php\\\" method=\\\"post\\\" onsubmit=\\\"return window.Event && Event.__inlineSubmit && Event.__inlineSubmit(this,event)\\\" id=\\\"u_0_3a\\\"\\u003E\\u003Cinput type=\\\"hidden\\\" name=\\\"fb_dtsg\\\" value=\\\"AQApxIm6\\\" autocomplete=\\\"off\\\" /\\u003E\\u003Cinput type=\\\"hidden\\\" autocomplete=\\\"off\\\" data-jsid=\\\"photoAttachID\\\" name=\\\"attach_id\\\" /\\u003E\\u003Cinput type=\\\"hidden\\\" autocomplete=\\\"off\\\" name=\\\"store_as_message_image\\\" value=\\\"1\\\" /\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-uiInlineBlock__root -cx-PRIVATE-uiFileInput__container -cx-PRIVATE-mercuryFileUploader__root\\\"\\u003E\\u003Cinput type=\\\"file\\\" class=\\\"-cx-PRIVATE-uiFileInput__input\\\" name=\\\"attachment[]\\\" multiple=\\\"1\\\" data-jsid=\\\"photoFileInput\\\" accept=\\\"image/*\\\" /\\u003E\\u003Ca class=\\\"-cx-PRIVATE-mercuryFileUploader__button -cx-PRIVATE-fbMercuryChatPhotoUploader__cameralink\\\" data-jsid=\\\"photoAttachLink\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryChatPhotoUploader__cameraicon\\\"\\u003E\\u003C/div\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\\u003C/form\\u003E\\u003Cdiv class=\\\"uiToggle emoticonsPanel\\\" data-jsid=\\\"emoticons\\\"\\u003E\\u003Ca class=\\\"-cx-PUBLIC-fbMercuryStickersFlyout__togglerimg\\\" href=\\\"#\\\" rel=\\\"toggle\\\" role=\\\"button\\\"\\u003E\\u003Cimg class=\\\"emoteTogglerImg img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yt/r/tPCHWcomJXO.png\\\" alt=\\\"Choose an emoticon\\\" title=\\\"Choose an emoticon\\\" width=\\\"14\\\" height=\\\"14\\\" /\\u003E\\u003C/a\\u003E\\u003Cdiv class=\\\"panelFlyout -cx-PUBLIC-fbMercuryStickersFlyout__root uiToggleFlyout\\\"\\u003E\\u003Cdiv data-jsid=\\\"stickers\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryStickersFlyout__selector\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryStickersFlyout__packs\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryStickersFlyout__pack hidden_elem\\\" data-id=\\\"emoticons\\\"\\u003E\\u003Ctable class=\\\"emoticonsTable\\\"\\u003E\\u003Ctbody\\u003E\\u003Ctr\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_smile\\\" aria-label=\\\"smile\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_frown\\\" aria-label=\\\"frown\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_tongue\\\" aria-label=\\\"tongue\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_grin\\\" aria-label=\\\"grin\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_gasp\\\" aria-label=\\\"gasp\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_wink\\\" aria-label=\\\"wink\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_pacman\\\" aria-label=\\\"pacman\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003C/tr\\u003E\\u003Ctr\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_grumpy\\\" aria-label=\\\"grumpy\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_unsure\\\" aria-label=\\\"unsure\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_cry\\\" aria-label=\\\"cry\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_kiki\\\" aria-label=\\\"kiki\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_glasses\\\" aria-label=\\\"glasses\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_sunglasses\\\" aria-label=\\\"sunglasses\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_heart\\\" aria-label=\\\"heart\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003C/tr\\u003E\\u003Ctr\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_devil\\\" aria-label=\\\"devil\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_angel\\\" aria-label=\\\"angel\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_squint\\\" aria-label=\\\"squint\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_confused\\\" aria-label=\\\"confused\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_upset\\\" aria-label=\\\"upset\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_colonthree\\\" aria-label=\\\"colonthree\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_like\\\" aria-label=\\\"like\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003C/tr\\u003E\\u003C/tbody\\u003E\\u003C/table\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"panelFlyoutArrow\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fbNubFlyoutAttachments\\\"\\u003E\\u003Cdiv class=\\\"chatAttachmentShelf\\\" data-jsid=\\\"attachmentShelf\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },4,],[\"m_0_7l\",{\n __html: \"\\u003Cli class=\\\"-cx-PRIVATE-mercuryTypeahead__row\\\"\\u003E\\u003Cdiv class=\\\"clearfix pvs\\\"\\u003E\\u003Cdiv class=\\\"MercuryThreadImage mrm -cx-PRIVATE-mercuryTypeahead__image lfloat\\\" data-jsid=\\\"image\\\"\\u003E\\u003Cimg class=\\\"-cx-PRIVATE-uiSquareImage__root -cx-PRIVATE-uiSquareImage__large img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yw/r/drP8vlvSl_8.gif\\\" /\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-mercuryTypeahead__rightcontent\\\"\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-mercuryTypeahead__name\\\" data-jsid=\\\"name\\\"\\u003E\\u003C/span\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-mercuryTypeahead__snippet fsm fwn fcg\\\" data-jsid=\\\"snippet\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/li\\u003E\"\n },2,],[\"m_0_7i\",{\n __html: \"\\u003Cdiv class=\\\"clearfix uiTokenizer uiInlineTokenizer\\\"\\u003E\\u003Cdiv class=\\\"tokenarea hidden_elem\\\" data-jsid=\\\"tokenarea\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6w\",{\n __html: \"\\u003Cdiv class=\\\"pas\\\"\\u003E\\u003Ci class=\\\"-cx-PRIVATE-chatTabSheet__sheetimg img sp_4p6kmz sx_c2c2e3\\\" data-jsid=\\\"image\\\"\\u003E\\u003C/i\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-chatTabSheet__sheetcontent\\\"\\u003E\\u003Cspan class=\\\"fcg\\\" data-jsid=\\\"text\\\"\\u003E\\u003C/span\\u003E\\u003Cdiv\\u003E\\u003Ca href=\\\"#\\\" data-jsid=\\\"actionLink\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_79\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PRIVATE-chatAddFriends__root\\\"\\u003E\\u003Ctable class=\\\"uiGrid\\\" cellspacing=\\\"0\\\" cellpadding=\\\"0\\\"\\u003E\\u003Ctbody\\u003E\\u003Ctr\\u003E\\u003Ctd class=\\\"vTop -cx-PRIVATE-chatAddFriends__typeaheadcontainer\\\"\\u003E\\u003Cdiv data-jsid=\\\"participantsTypeahead\\\"\\u003E\\u003C/div\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"vTop\\\"\\u003E\\u003Clabel class=\\\"doneButton uiButton uiButtonConfirm\\\" for=\\\"u_0_3d\\\"\\u003E\\u003Cinput value=\\\"Done\\\" data-jsid=\\\"doneButton\\\" type=\\\"submit\\\" id=\\\"u_0_3d\\\" /\\u003E\\u003C/label\\u003E\\u003C/td\\u003E\\u003C/tr\\u003E\\u003C/tbody\\u003E\\u003C/table\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6p\",{\n __html: \"\\u003Cdiv\\u003E\\u003Ca class=\\\"uiIconText -cx-PRIVATE-fbChatMessage__forwardicon\\\" href=\\\"#\\\" style=\\\"padding-left: 12px;\\\" data-jsid=\\\"forwardLink\\\" role=\\\"button\\\"\\u003E\\u003Ci class=\\\"img sp_4ie5gn sx_90e3a1\\\" style=\\\"top: 3px;\\\"\\u003E\\u003C/i\\u003E\\u003Cspan data-jsid=\\\"forwardText\\\"\\u003E\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6t\",{\n __html: \"\\u003Cdiv\\u003E\\u003Cdiv class=\\\"clearfix mvm mrm mll videoCallPromo\\\"\\u003E\\u003Ci class=\\\"-cx-PRIVATE-uiImageBlock__image -cx-PRIVATE-uiImageBlock__mediumimage lfloat img sp_4ie5gn sx_4e6efe\\\"\\u003E\\u003C/i\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-uiFlexibleBlock__flexiblecontent\\\"\\u003E\\u003Cdiv class=\\\"pls\\\"\\u003E\\u003Cspan class=\\\"calloutTitle fwb\\\"\\u003ETalk face to face\\u003C/span\\u003E\\u003Cdiv class=\\\"fsm fwn fcg\\\"\\u003EClick \\u003Cspan\\u003E ( \\u003Ci class=\\\"onlineStatusIcon img sp_4ie5gn sx_f7362e\\\"\\u003E\\u003C/i\\u003E )\\u003C/span\\u003E below to start a video call.\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"uiOverlayFooter uiContextualDialogFooter uiBoxGray topborder\\\"\\u003E\\u003Ctable class=\\\"uiGrid\\\" cellspacing=\\\"0\\\" cellpadding=\\\"0\\\"\\u003E\\u003Ctbody\\u003E\\u003Ctr\\u003E\\u003Ctd class=\\\"prs uiOverlayFooterMessage\\\"\\u003E\\u003Ca target=\\\"_blank\\\" href=\\\"/help/?page=177940565599960\\\"\\u003ELearn more\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"uiOverlayFooterButtons\\\"\\u003E\\u003Ca class=\\\"uiOverlayButton layerCancel uiButton uiButtonConfirm\\\" href=\\\"#\\\" role=\\\"button\\\" name=\\\"cancel\\\"\\u003E\\u003Cspan class=\\\"uiButtonText\\\"\\u003EOkay\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003C/tr\\u003E\\u003C/tbody\\u003E\\u003C/table\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6c\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PUBLIC-mercuryAttachments__attachment\\\"\\u003E\\u003Ca class=\\\"uiVideoThumb videoPreview\\\" href=\\\"#\\\" data-jsid=\\\"thumb\\\" role=\\\"button\\\"\\u003E\\u003Cimg class=\\\"img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y4/r/-PAXP-deijE.gif\\\" alt=\\\"\\\" /\\u003E\\u003Ci\\u003E\\u003C/i\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6m\",{\n __html: \"\\u003Cdiv class=\\\"mhs mbs pts fbChatConvItem -cx-PRIVATE-fbChatMessageGroup__root clearfix small\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbChatMessageGroup__piccontainer\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbChatMessageGroup__profilename\\\" data-jsid=\\\"profileName\\\"\\u003E\\u003C/div\\u003E\\u003Ca class=\\\"profileLink\\\" href=\\\"#\\\" data-jsid=\\\"profileLink\\\" role=\\\"button\\\"\\u003E\\u003Cimg class=\\\"profilePhoto\\\" src=\\\"/images/spacer.gif\\\" data-jsid=\\\"profilePhoto\\\" /\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"messages\\\" data-jsid=\\\"messages\\\"\\u003E\\u003Cdiv class=\\\"metaInfoContainer fss fcg\\\"\\u003E\\u003Cspan data-jsid=\\\"reportLinkWithDot\\\" class=\\\"hidden_elem\\\"\\u003E\\u003Ca href=\\\"#\\\" rel=\\\"dialog\\\" data-jsid=\\\"reportLink\\\" role=\\\"button\\\"\\u003E\\u003Cspan class=\\\"fcg\\\"\\u003EReport\\u003C/span\\u003E\\u003C/a\\u003E \\u00b7 \\u003C/span\\u003E\\u003Cspan class=\\\"timestamp\\\" data-jsid=\\\"timestamp\\\"\\u003E\\u003C/span\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_7c\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PRIVATE-mercuryTypingIndicator__typingcontainer\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-mercuryTypingIndicator__typing\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6v\",{\n __html: \"\\u003Ca href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003Cdiv class=\\\"pas\\\"\\u003E\\u003Ci class=\\\"mrs -cx-PRIVATE-chatTabSheet__sheetimg img sp_3yt8ar sx_de779b\\\" data-jsid=\\\"image\\\"\\u003E\\u003C/i\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-chatTabSheet__sheetcontent fcg\\\" data-jsid=\\\"text\\\"\\u003E\\u003C/span\\u003E\\u003C/div\\u003E\\u003C/a\\u003E\"\n },2,],[\"m_0_6i\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PUBLIC-mercuryAttachments__attachment\\\"\\u003E\\u003Ca data-jsid=\\\"link\\\" target=\\\"_blank\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003Cspan data-jsid=\\\"name\\\"\\u003E\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_7e\",{\n __html: \"\\u003Cdiv class=\\\"fbNub -cx-PRIVATE-fbNub__root -cx-PRIVATE-fbMercuryChatTab__root -cx-PRIVATE-fbMercuryChatUserTab__root\\\"\\u003E\\u003Ca class=\\\"fbNubButton\\\" tabindex=\\\"0\\\" href=\\\"#\\\" data-jsid=\\\"dockButton\\\" role=\\\"button\\\"\\u003E\\u003Cdiv class=\\\"clearfix fbChatTab\\\"\\u003E\\u003Cdiv class=\\\"funhouse rfloat\\\"\\u003E\\u003Cdiv class=\\\"close\\\" title=\\\"Close\\\" data-jsid=\\\"closeButton\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"wrapWrapper\\\"\\u003E\\u003Cdiv class=\\\"wrap\\\"\\u003E\\u003Cdiv class=\\\"name fwb\\\" data-jsid=\\\"name\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-fbMercuryChatTab__nummessages hidden_elem\\\" data-jsid=\\\"numMessages\\\"\\u003E0\\u003C/span\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/a\\u003E\\u003Cdiv class=\\\"fbNubFlyout fbDockChatTabFlyout\\\" data-jsid=\\\"chatWrapper\\\" role=\\\"complementary\\\" aria-labelledby=\\\"u_0_3e\\\"\\u003E\\u003Cdiv class=\\\"fbNubFlyoutOuter\\\"\\u003E\\u003Cdiv class=\\\"fbNubFlyoutInner\\\"\\u003E\\u003Cdiv class=\\\"clearfix fbNubFlyoutTitlebar titlebar\\\" data-jsid=\\\"nubFlyoutTitlebar\\\"\\u003E\\u003Cdiv class=\\\"mls titlebarButtonWrapper rfloat\\\"\\u003E\\u003Ca data-hover=\\\"tooltip\\\" aria-label=\\\"Add more friends to chat\\\" class=\\\"addToThread button\\\" href=\\\"#\\\" data-jsid=\\\"addToThreadLink\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003Ca data-hover=\\\"tooltip\\\" aria-label=\\\"Start a video call\\\" class=\\\"videoicon button\\\" href=\\\"#\\\" data-jsid=\\\"videoCallLink\\\" data-gt=\\\"{"videochat":"call_clicked_chat_tab"}\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003Cdiv class=\\\"uiSelector inlineBlock -cx-PRIVATE-fbDockChatDropdown__root\\\" data-jsid=\\\"dropdown\\\"\\u003E\\u003Cdiv class=\\\"uiToggle wrap\\\"\\u003E\\u003Ca data-hover=\\\"tooltip\\\" aria-label=\\\"Options\\\" data-tooltip-alignh=\\\"center\\\" class=\\\"button uiSelectorButton\\\" href=\\\"#\\\" role=\\\"button\\\" aria-haspopup=\\\"1\\\" rel=\\\"toggle\\\"\\u003E\\u003C/a\\u003E\\u003Cdiv class=\\\"uiSelectorMenuWrapper uiToggleFlyout\\\"\\u003E\\u003Cdiv role=\\\"menu\\\" class=\\\"uiMenu uiSelectorMenu\\\"\\u003E\\u003Cul class=\\\"uiMenuInner\\\"\\u003E\\u003Cli class=\\\"uiMenuItem\\\" tabindex=\\\"0\\\"\\u003E\\u003Cform data-jsid=\\\"attachButtonForm\\\" action=\\\"http://jsbngssl.upload.facebook.com/ajax/mercury/upload.php\\\" method=\\\"post\\\" onsubmit=\\\"return window.Event && Event.__inlineSubmit && Event.__inlineSubmit(this,event)\\\" id=\\\"u_0_3g\\\"\\u003E\\u003Cinput type=\\\"hidden\\\" name=\\\"fb_dtsg\\\" value=\\\"AQApxIm6\\\" autocomplete=\\\"off\\\" /\\u003E\\u003Cinput type=\\\"hidden\\\" autocomplete=\\\"off\\\" data-jsid=\\\"attachID\\\" name=\\\"attach_id\\\" /\\u003E\\u003Cinput type=\\\"hidden\\\" autocomplete=\\\"off\\\" name=\\\"store_as_message_image\\\" value=\\\"1\\\" /\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-uiInlineBlock__root -cx-PRIVATE-uiFileInput__container -cx-PRIVATE-mercuryFileUploader__root itemLabel\\\"\\u003E\\u003Cinput type=\\\"file\\\" class=\\\"-cx-PRIVATE-uiFileInput__input\\\" name=\\\"attachment[]\\\" multiple=\\\"1\\\" data-jsid=\\\"fileInput\\\" /\\u003E\\u003Ca class=\\\"-cx-PRIVATE-mercuryFileUploader__button itemAnchor\\\"\\u003EAdd Files...\\u003C/a\\u003E\\u003C/div\\u003E\\u003C/form\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuItem\\\" data-label=\\\"Add Friends to Chat...\\\"\\u003E\\u003Ca class=\\\"itemAnchor\\\" role=\\\"menuitem\\\" tabindex=\\\"-1\\\" href=\\\"#\\\" data-jsid=\\\"addFriendLink\\\"\\u003E\\u003Cspan class=\\\"itemLabel fsm\\\"\\u003EAdd Friends to Chat...\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuItem\\\" data-label=\\\"\\\"\\u003E\\u003Ca class=\\\"itemAnchor\\\" role=\\\"menuitem\\\" tabindex=\\\"-1\\\" href=\\\"#\\\" data-jsid=\\\"privacyLink\\\"\\u003E\\u003Cspan class=\\\"itemLabel fsm\\\"\\u003E \\u003C/span\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuSeparator\\\"\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuItem\\\" data-label=\\\"See Full Conversation\\\"\\u003E\\u003Ca class=\\\"itemAnchor\\\" role=\\\"menuitem\\\" tabindex=\\\"-1\\\" href=\\\"#\\\" data-jsid=\\\"conversationLink\\\"\\u003E\\u003Cspan class=\\\"itemLabel fsm\\\"\\u003ESee Full Conversation\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuItem hidden_elem\\\" data-label=\\\"Mute Conversation\\\"\\u003E\\u003Ca class=\\\"itemAnchor\\\" role=\\\"menuitem\\\" tabindex=\\\"-1\\\" href=\\\"#\\\" data-jsid=\\\"muteThreadLink\\\"\\u003E\\u003Cspan class=\\\"itemLabel fsm\\\"\\u003EMute Conversation\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuItem hidden_elem\\\" data-label=\\\"Unmute Conversation\\\"\\u003E\\u003Ca class=\\\"itemAnchor\\\" role=\\\"menuitem\\\" tabindex=\\\"-1\\\" href=\\\"#\\\" data-jsid=\\\"unmuteThreadLink\\\"\\u003E\\u003Cspan class=\\\"itemLabel fsm\\\"\\u003EUnmute Conversation\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuItem\\\" data-label=\\\"Clear Window\\\"\\u003E\\u003Ca class=\\\"itemAnchor\\\" role=\\\"menuitem\\\" tabindex=\\\"-1\\\" href=\\\"#\\\" data-jsid=\\\"clearWindowLink\\\"\\u003E\\u003Cspan class=\\\"itemLabel fsm\\\"\\u003EClear Window\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuSeparator\\\"\\u003E\\u003C/li\\u003E\\u003Cli class=\\\"uiMenuItem\\\" data-label=\\\"Report as Spam or Abuse...\\\"\\u003E\\u003Ca class=\\\"itemAnchor\\\" role=\\\"menuitem\\\" tabindex=\\\"-1\\\" href=\\\"#\\\" data-jsid=\\\"reportSpamLink\\\"\\u003E\\u003Cspan class=\\\"itemLabel fsm\\\"\\u003EReport as Spam or Abuse...\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\\u003C/ul\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Ca class=\\\"close button\\\" href=\\\"#\\\" data-jsid=\\\"titlebarCloseButton\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"titlebarLabel clearfix\\\"\\u003E\\u003Ch4 class=\\\"titlebarTextWrapper\\\"\\u003E\\u003Cimg class=\\\"-cx-PRIVATE-fbMercuryChatUserTab__presenceindicator img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y4/r/-PAXP-deijE.gif\\\" data-jsid=\\\"presenceIndicator\\\" alt=\\\"\\\" width=\\\"1\\\" height=\\\"1\\\" /\\u003E\\u003Ca class=\\\"titlebarText noLink\\\" href=\\\"#\\\" rel=\\\"none\\\" data-jsid=\\\"titlebarText\\\" aria-level=\\\"3\\\" id=\\\"u_0_3e\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/h4\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fbNubFlyoutHeader\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryTabSheet__sheetcontainer\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryTabSheet__sheet hidden_elem\\\" data-jsid=\\\"sheet\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fbNubFlyoutBody scrollable\\\" data-jsid=\\\"chatConv\\\"\\u003E\\u003Cdiv class=\\\"fbNubFlyoutBodyContent\\\"\\u003E\\u003Ctable class=\\\"uiGrid conversationContainer\\\" cellspacing=\\\"0\\\" cellpadding=\\\"0\\\" role=\\\"log\\\"\\u003E\\u003Ctbody\\u003E\\u003Ctr\\u003E\\u003Ctd class=\\\"vBot\\\"\\u003E\\u003Cdiv class=\\\"accessible_elem\\\"\\u003EChat Conversation Start\\u003C/div\\u003E\\u003Cimg class=\\\"pvm loading hidden_elem img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yb/r/GsNJNwuI-UM.gif\\\" alt=\\\"\\\" data-jsid=\\\"loadingIndicator\\\" width=\\\"16\\\" height=\\\"11\\\" /\\u003E\\u003Cdiv class=\\\"conversation\\\" aria-live=\\\"polite\\\" aria-atomic=\\\"false\\\" data-jsid=\\\"conversation\\\" id=\\\"u_0_3f\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"accessible_elem\\\"\\u003EChat Conversation End\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PUBLIC-mercuryTypingIndicator__root\\\" data-jsid=\\\"typingIndicator\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-mercuryLastMessageIndicator__root\\\" data-jsid=\\\"lastMessageIndicator\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-mercuryLastMessageIndicator__icon\\\"\\u003E\\u003C/div\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-mercuryLastMessageIndicator__text\\\"\\u003E\\u003C/span\\u003E\\u003C/div\\u003E\\u003C/td\\u003E\\u003C/tr\\u003E\\u003C/tbody\\u003E\\u003C/table\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fbNubFlyoutFooter\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryChatTab__inputcontainer\\\" data-jsid=\\\"inputContainer\\\"\\u003E\\u003Ctextarea class=\\\"uiTextareaAutogrow -cx-PRIVATE-fbMercuryChatTab__input\\\" data-jsid=\\\"input\\\" aria-controls=\\\"u_0_3f\\\" onkeydown=\\\"window.Bootloader && Bootloader.loadComponents(["control-textarea"], function() { TextAreaControl.getInstance(this) }.bind(this)); \\\"\\u003E\\u003C/textarea\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryChatTab__chaticonscontainer\\\" data-jsid=\\\"iconsContainer\\\"\\u003E\\u003Cform class=\\\"-cx-PRIVATE-fbMercuryChatTab__chatphotouploader\\\" data-jsid=\\\"photoAttachButtonForm\\\" action=\\\"http://jsbngssl.upload.facebook.com/ajax/mercury/upload.php\\\" method=\\\"post\\\" onsubmit=\\\"return window.Event && Event.__inlineSubmit && Event.__inlineSubmit(this,event)\\\" id=\\\"u_0_3h\\\"\\u003E\\u003Cinput type=\\\"hidden\\\" name=\\\"fb_dtsg\\\" value=\\\"AQApxIm6\\\" autocomplete=\\\"off\\\" /\\u003E\\u003Cinput type=\\\"hidden\\\" autocomplete=\\\"off\\\" data-jsid=\\\"photoAttachID\\\" name=\\\"attach_id\\\" /\\u003E\\u003Cinput type=\\\"hidden\\\" autocomplete=\\\"off\\\" name=\\\"store_as_message_image\\\" value=\\\"1\\\" /\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-uiInlineBlock__root -cx-PRIVATE-uiFileInput__container -cx-PRIVATE-mercuryFileUploader__root\\\"\\u003E\\u003Cinput type=\\\"file\\\" class=\\\"-cx-PRIVATE-uiFileInput__input\\\" name=\\\"attachment[]\\\" multiple=\\\"1\\\" data-jsid=\\\"photoFileInput\\\" accept=\\\"image/*\\\" /\\u003E\\u003Ca class=\\\"-cx-PRIVATE-mercuryFileUploader__button -cx-PRIVATE-fbMercuryChatPhotoUploader__cameralink\\\" data-jsid=\\\"photoAttachLink\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryChatPhotoUploader__cameraicon\\\"\\u003E\\u003C/div\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\\u003C/form\\u003E\\u003Cdiv class=\\\"uiToggle emoticonsPanel\\\" data-jsid=\\\"emoticons\\\"\\u003E\\u003Ca class=\\\"-cx-PUBLIC-fbMercuryStickersFlyout__togglerimg\\\" href=\\\"#\\\" rel=\\\"toggle\\\" role=\\\"button\\\"\\u003E\\u003Cimg class=\\\"emoteTogglerImg img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yt/r/tPCHWcomJXO.png\\\" alt=\\\"Choose an emoticon\\\" title=\\\"Choose an emoticon\\\" width=\\\"14\\\" height=\\\"14\\\" /\\u003E\\u003C/a\\u003E\\u003Cdiv class=\\\"panelFlyout -cx-PUBLIC-fbMercuryStickersFlyout__root uiToggleFlyout\\\"\\u003E\\u003Cdiv data-jsid=\\\"stickers\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryStickersFlyout__selector\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryStickersFlyout__packs\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbMercuryStickersFlyout__pack hidden_elem\\\" data-id=\\\"emoticons\\\"\\u003E\\u003Ctable class=\\\"emoticonsTable\\\"\\u003E\\u003Ctbody\\u003E\\u003Ctr\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_smile\\\" aria-label=\\\"smile\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_frown\\\" aria-label=\\\"frown\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_tongue\\\" aria-label=\\\"tongue\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_grin\\\" aria-label=\\\"grin\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_gasp\\\" aria-label=\\\"gasp\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_wink\\\" aria-label=\\\"wink\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_pacman\\\" aria-label=\\\"pacman\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003C/tr\\u003E\\u003Ctr\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_grumpy\\\" aria-label=\\\"grumpy\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_unsure\\\" aria-label=\\\"unsure\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_cry\\\" aria-label=\\\"cry\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_kiki\\\" aria-label=\\\"kiki\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_glasses\\\" aria-label=\\\"glasses\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_sunglasses\\\" aria-label=\\\"sunglasses\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_heart\\\" aria-label=\\\"heart\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003C/tr\\u003E\\u003Ctr\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_devil\\\" aria-label=\\\"devil\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_angel\\\" aria-label=\\\"angel\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_squint\\\" aria-label=\\\"squint\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_confused\\\" aria-label=\\\"confused\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_upset\\\" aria-label=\\\"upset\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_colonthree\\\" aria-label=\\\"colonthree\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003Ctd class=\\\"panelCell\\\"\\u003E\\u003Ca class=\\\"emoticon emoticon_like\\\" aria-label=\\\"like\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/td\\u003E\\u003C/tr\\u003E\\u003C/tbody\\u003E\\u003C/table\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"panelFlyoutArrow\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fbNubFlyoutAttachments\\\"\\u003E\\u003Cdiv class=\\\"chatAttachmentShelf\\\" data-jsid=\\\"attachmentShelf\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },4,],[\"m_0_53\",{\n __html: \"\\u003Cli class=\\\"-cx-PRIVATE-fbChatOrderedList__item\\\"\\u003E\\u003Ca class=\\\"clearfix -cx-PRIVATE-fbChatOrderedList__link\\\" data-jsid=\\\"anchor\\\" href=\\\"#\\\" role=\\\"\\\" rel=\\\"ignore\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbChat__favoritebutton -cx-PRIVATE-fbChatOrderedList__favoritebutton\\\" data-jsid=\\\"favorite_button\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"pic_container\\\"\\u003E\\u003Cimg class=\\\"pic img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y4/r/-PAXP-deijE.gif\\\" data-jsid=\\\"profile-photo\\\" alt=\\\"\\\" width=\\\"1\\\" height=\\\"1\\\" /\\u003E\\u003C/div\\u003E\\u003Cimg class=\\\"-cx-PRIVATE-fbChat__dragindicator -cx-PRIVATE-fbChatOrderedList__dragindicator img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yW/r/F7kk7-cjEKk.png\\\" alt=\\\"\\\" width=\\\"10\\\" height=\\\"8\\\" /\\u003E\\u003Cdiv class=\\\"clearfix\\\"\\u003E\\u003Cdiv class=\\\"rfloat\\\"\\u003E\\u003Cspan data-jsid=\\\"accessible-name\\\" class=\\\"accessible_elem\\\"\\u003E\\u003C/span\\u003E\\u003Cdiv class=\\\"icon_container\\\"\\u003E\\u003Cimg class=\\\"-cx-PRIVATE-fbLiveBar__status icon img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y4/r/-PAXP-deijE.gif\\\" alt=\\\"\\\" width=\\\"1\\\" height=\\\"1\\\" /\\u003E\\u003Cdiv class=\\\"active_time icon\\\"\\u003E\\u003C/div\\u003E\\u003Cimg class=\\\"status icon img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y4/r/-PAXP-deijE.gif\\\" alt=\\\"\\\" width=\\\"1\\\" height=\\\"1\\\" /\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003Cdiv aria-hidden=\\\"true\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbChatOrderedList__name\\\" data-jsid=\\\"name\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbChatOrderedList__context\\\" data-jsid=\\\"context\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/a\\u003E\\u003C/li\\u003E\"\n },2,],[\"m_0_6b\",{\n __html: \"\\u003Cdiv class=\\\"mtm pam -cx-PRIVATE-mercuryAttachments__errorbox attachment uiBoxGray\\\"\\u003E\\u003Cspan class=\\\"uiIconText MercuryThreadlistIconError\\\" data-jsid=\\\"error\\\"\\u003E\\u003Ci class=\\\"img sp_4p6kmz sx_25310e\\\"\\u003E\\u003C/i\\u003E\\u003C/span\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6g\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PUBLIC-mercuryAttachments__attachment -cx-PUBLIC-mercuryAttachments__fileattachment\\\"\\u003E\\u003Ca class=\\\"uiIconText -cx-PRIVATE-mercuryAttachments__icontext\\\" href=\\\"#\\\" data-jsid=\\\"link\\\" role=\\\"button\\\"\\u003E\\u003Ci class=\\\"img sp_4ie5gn sx_0adf5e\\\"\\u003E\\u003C/i\\u003E\\u003Cspan data-jsid=\\\"filename\\\" class=\\\"-cx-PUBLIC-mercuryAttachments__filename\\\"\\u003E\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6d\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PUBLIC-mercuryAttachments__attachment -cx-PUBLIC-mercuryAttachments__fileattachment\\\"\\u003E\\u003Cspan class=\\\"uiIconText -cx-PRIVATE-mercuryAttachments__icontext\\\"\\u003E\\u003Ci class=\\\"img sp_4ie5gn sx_0adf5e\\\"\\u003E\\u003C/i\\u003E\\u003Cspan data-jsid=\\\"filename\\\" class=\\\"filename\\\"\\u003E\\u003C/span\\u003E\\u003C/span\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6r\",{\n __html: \"\\u003Cdiv class=\\\"clearfix mvs\\\"\\u003E\\u003Ci class=\\\"rfloat img sp_3yt8ar sx_047178\\\" data-jsid=\\\"icon\\\"\\u003E\\u003C/i\\u003E\\u003Cdiv data-jsid=\\\"name\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6e\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PUBLIC-mercuryAttachments__attachment\\\"\\u003E\\u003Cdiv class=\\\"clearfix MercuryExternalLink\\\"\\u003E\\u003Cdiv class=\\\"-cx-PUBLIC-mercuryImages__imagepreviewcontainer clearfix stat_elem lfloat\\\" data-jsid=\\\"preview\\\"\\u003E\\u003Ca class=\\\"-cx-PUBLIC-mercuryImages__imagepreview\\\" data-jsid=\\\"image-link\\\" href=\\\"#\\\" target=\\\"_blank\\\" role=\\\"button\\\"\\u003E\\u003Cimg data-jsid=\\\"preview-image\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yw/r/drP8vlvSl_8.gif\\\" /\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"MercuryLinkRight rfloat\\\"\\u003E\\u003Cdiv class=\\\"MercuryLinkTitle\\\"\\u003E\\u003Ca class=\\\"linkTitle\\\" target=\\\"_blank\\\" href=\\\"#\\\" data-jsid=\\\"name\\\" role=\\\"button\\\"\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"fsm fwn fcg\\\" data-jsid=\\\"shortLink\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_54\",{\n __html: \"\\u003Cli\\u003E\\u003Cdiv class=\\\"phs fcg\\\"\\u003E\\u003Cspan data-jsid=\\\"message\\\"\\u003ELoading...\\u003C/span\\u003E\\u003C/div\\u003E\\u003C/li\\u003E\"\n },2,],[\"m_0_6j\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PRIVATE-mercuryComposer__composersupplemental -cx-PRIVATE-mercuryComposer__uploadfilerow uploadFileRow\\\"\\u003E\\u003Cimg class=\\\"-cx-PRIVATE-mercuryComposer__uploadingindicator img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yb/r/GsNJNwuI-UM.gif\\\" alt=\\\"\\\" width=\\\"16\\\" height=\\\"11\\\" /\\u003E\\u003Clabel class=\\\"-cx-PRIVATE-mercuryComposer__closefileupload uiCloseButton uiCloseButtonSmall uiCloseButtonSmallDark\\\" for=\\\"u_0_35\\\"\\u003E\\u003Cinput title=\\\"Remove\\\" type=\\\"button\\\" data-jsid=\\\"closeFileUpload\\\" id=\\\"u_0_35\\\" /\\u003E\\u003C/label\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-mercuryComposer__uploadfiletext\\\"\\u003E\\u003Cspan class=\\\"uiIconText -cx-PRIVATE-mercuryAttachments__icontext\\\" data-jsid=\\\"iconText\\\"\\u003E\\u003Ci class=\\\"img sp_4ie5gn sx_0adf5e\\\"\\u003E\\u003C/i\\u003E\\u003C/span\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_7b\",{\n __html: \"\\u003Cdiv class=\\\"pas\\\"\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-chatTabSheet__sheetcontent -cx-PRIVATE-chatTabSheet__link fcg\\\" data-jsid=\\\"text\\\"\\u003E\\u003C/span\\u003E\\u003Ca class=\\\"pas\\\" data-jsid=\\\"unmuteButton\\\" href=\\\"#\\\" role=\\\"button\\\"\\u003EUnmute\\u003C/a\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6u\",{\n __html: \"\\u003Cdiv class=\\\"pas\\\"\\u003E\\u003Ci class=\\\"mrs -cx-PRIVATE-chatTabSheet__sheetimg img sp_3yt8ar sx_de779b\\\" data-jsid=\\\"image\\\"\\u003E\\u003C/i\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-chatTabSheet__sheetcontent fcg\\\" data-jsid=\\\"text\\\"\\u003E\\u003C/span\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6a\",{\n __html: \"\\u003Cimg class=\\\"hidden_elem -cx-PRIVATE-fbMercuryTabSheet__loading img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yk/r/LOOn0JtHNzb.gif\\\" alt=\\\"\\\" width=\\\"16\\\" height=\\\"16\\\" /\\u003E\"\n },2,],[\"m_0_6l\",{\n __html: \"\\u003Cdiv class=\\\"mhs mbs pts fbChatConvItem -cx-PUBLIC-fbChatEventMsg__root clearfix\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbChatEventMsg__iconwrapper\\\"\\u003E\\u003Cimg class=\\\"-cx-PRIVATE-fbChatEventMsg__eventicon img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y4/r/-PAXP-deijE.gif\\\" data-jsid=\\\"icon\\\" alt=\\\"\\\" width=\\\"1\\\" height=\\\"1\\\" /\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbChatEventMsg__messagewrapper\\\"\\u003E\\u003Cspan class=\\\"-cx-PRIVATE-fbChatEventMsg__message fsm fcg\\\" data-jsid=\\\"message\\\"\\u003E\\u003C/span\\u003E\\u003Cspan class=\\\"mls -cx-PRIVATE-fbChatEventMsg__timestamp fss fcg\\\" data-jsid=\\\"timestamp\\\"\\u003E\\u003C/span\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"-cx-PUBLIC-fbChatEventMsg__logmessageattachment\\\" data-jsid=\\\"attachment\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_7a\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PRIVATE-fbChatMessage__errorstatus clearfix\\\"\\u003E\\u003Cdiv data-jsid=\\\"message\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv data-jsid=\\\"status\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6s\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PUBLIC-fbChatConvDateBreak__root mhs mbs fbChatConvItem\\\"\\u003E\\u003Cdiv class=\\\"-cx-PRIVATE-fbChatConvDateBreak__date fss fwb fcg\\\" data-jsid=\\\"date\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_4z\",{\n __html: \"\\u003Cdiv class=\\\"uiContextualDialogPositioner\\\" id=\\\"u_0_32\\\" data-position=\\\"left\\\"\\u003E\\u003Cdiv class=\\\"uiOverlay uiContextualDialog\\\" data-width=\\\"300\\\" data-destroyonhide=\\\"false\\\" data-fadeonhide=\\\"false\\\"\\u003E\\u003Cdiv class=\\\"uiOverlayContent\\\"\\u003E\\u003Cdiv class=\\\"uiContextualDialogContent\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },2,],[\"m_0_6k\",{\n __html: \"\\u003Cdiv class=\\\"-cx-PUBLIC-mercuryAttachments__attachment -cx-PUBLIC-mercuryAttachments__fileattachment\\\"\\u003E\\u003Cdiv class=\\\"-cx-PUBLIC-mercuryAttachments__filelinks\\\"\\u003E\\u003Cdiv data-jsid=\\\"openLinkContainer\\\" class=\\\"-cx-PUBLIC-mercuryAttachments__openlinkcontainer hidden_elem\\\"\\u003E\\u003Ca class=\\\"-cx-PUBLIC-mercuryAttachments__openfilelink\\\" href=\\\"#\\\" data-jsid=\\\"openFile\\\" role=\\\"button\\\"\\u003Eopen\\u003C/a\\u003E \\u00b7 \\u003C/div\\u003E\\u003Ca class=\\\"-cx-PUBLIC-mercuryAttachments__downloadfilelink\\\" href=\\\"#\\\" data-jsid=\\\"downloadFile\\\" role=\\\"button\\\"\\u003Edownload\\u003C/a\\u003E\\u003C/div\\u003E\\u003Ca class=\\\"uiIconText -cx-PRIVATE-mercuryAttachments__icontext\\\" href=\\\"#\\\" data-jsid=\\\"link\\\" role=\\\"button\\\"\\u003E\\u003Ci class=\\\"img sp_4ie5gn sx_0adf5e\\\"\\u003E\\u003C/i\\u003E\\u003Cspan class=\\\"-cx-PUBLIC-mercuryAttachments__filename\\\" data-jsid=\\\"filename\\\"\\u003E\\u003C/span\\u003E\\u003C/a\\u003E\\u003C/div\\u003E\"\n },2,],]\n },\n css: [\"UmFO+\",\"veUjj\",\"c6lUE\",\"za92D\",\"oVWZ1\",\"tAd6o\",\"HgCpx\",\"jmZRT\",],\n bootloadable: {\n VideoCallController: {\n resources: [\"OH3xD\",\"AVmr9\",\"f7Tpb\",\"UmFO+\",\"zqZyK\",\"/MWWQ\",\"XH2Cu\",\"zBhY6\",\"WD1Wm\",\"OSd/n\",\"TXKLp\",\"gMfWI\",\"veUjj\",\"nxD7O\",\"KPLqg\",],\n \"module\": true\n },\n SpotifyJSONPRequest: {\n resources: [\"OH3xD\",\"xO/k5\",],\n \"module\": true\n },\n \"legacy:control-textarea\": {\n resources: [\"OH3xD\",\"4/uwC\",\"veUjj\",\"7z4pW\",]\n },\n ErrorDialog: {\n resources: [\"OH3xD\",\"f7Tpb\",\"UmFO+\",\"AVmr9\",\"nxD7O\",],\n \"module\": true\n },\n Music: {\n resources: [\"OH3xD\",\"XH2Cu\",\"f7Tpb\",\"UmFO+\",\"AVmr9\",\"js0se\",\"qu1rX\",\"2xA31\",\"GK3bz\",\"WD1Wm\",\"oVWZ1\",],\n \"module\": true\n },\n FBRTCCallController: {\n resources: [\"OH3xD\",\"AVmr9\",\"f7Tpb\",\"UmFO+\",\"zqZyK\",\"WD1Wm\",\"OSd/n\",\"XH2Cu\",\"TXKLp\",\"zBhY6\",\"gMfWI\",\"/MWWQ\",\"a3inZ\",\"KPLqg\",\"veUjj\",\"nxD7O\",\"LTaK/\",\"21lHn\",\"e0RyX\",\"9aS3c\",\"MfG6c\",\"LsRx/\",\"3h2ll\",\"Mzbs2\",\"wGXi/\",\"d6Evh\",\"6WF8S\",],\n \"module\": true\n }\n },\n resource_map: {\n \"9aS3c\": {\n type: \"css\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yE/r/p3UmoEMXDUD.css\"\n },\n Mzbs2: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y7/r/sM5jkmon6X9.js\"\n },\n jmZRT: {\n type: \"css\",\n permanent: 1,\n nonblocking: 1,\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yz/r/oxmIub316pX.css\"\n },\n \"3h2ll\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yz/r/8nGweTPJCKZ.js\"\n },\n \"6WF8S\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/ya/r/cHaSy_1vFQu.js\"\n },\n \"xO/k5\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yB/r/fQIoBRZLBHX.js\"\n },\n \"cmK7/\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yf/r/_oJ2eyBZFAi.js\"\n },\n zqZyK: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yg/r/DZVcIcmc3QT.js\"\n },\n \"LTaK/\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y_/r/3Z79JZzbt1o.js\"\n },\n KPLqg: {\n type: \"css\",\n permanent: 1,\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yq/r/UJCnyWz8q3r.css\"\n },\n \"wGXi/\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/ym/r/usnMgvD8abB.js\"\n },\n gMfWI: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yY/r/YnJRD6K1VJA.js\"\n },\n \"2xA31\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yQ/r/0h38ritUVHh.js\"\n },\n oVWZ1: {\n type: \"css\",\n permanent: 1,\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/ym/r/ZGslomlch7n.css\"\n },\n \"LsRx/\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yu/r/kS-r05X6OEA.js\"\n },\n qu1rX: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/ym/r/5vdmAFTChHH.js\"\n },\n \"7z4pW\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yG/r/NFZIio5Ki72.js\"\n },\n GK3bz: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y_/r/ATgjpnoErA_.js\"\n },\n a3inZ: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yO/r/9ELMM-KdnsD.js\"\n },\n d6Evh: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y2/r/jalUIRLBuTe.js\"\n },\n MfG6c: {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yM/r/895-sItSveZ.js\"\n },\n \"21lHn\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yP/r/QylH5JvJ2tZ.js\"\n }\n },\n ixData: {\n \"/images/messaging/stickers/selector/leftarrow.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_b8k8sa\",\n spriteCssClass: \"sx_ddb76f\"\n },\n \"/images/chat/sidebar/newGroupChatLitestand.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_b8k8sa\",\n spriteCssClass: \"sx_faf97d\"\n },\n \"/images/gifts/icons/cake_icon.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_b8k8sa\",\n spriteCssClass: \"sx_06a61f\"\n },\n \"/images/litestand/sidebar/blended/new_group_chat.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_b8k8sa\",\n spriteCssClass: \"sx_6e4a51\"\n },\n \"/images/chat/status/online.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_047178\"\n },\n \"/images/litestand/bookmarks/sidebar/remove.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_5ed30e\"\n },\n \"/images/litestand/sidebar/blended/online.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_dd19b5\"\n },\n \"/images/litestand/sidebar/blended/pushable.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_ff5be1\"\n },\n \"/images/litestand/bookmarks/sidebar/add.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_bf972e\"\n },\n \"/images/litestand/sidebar/pushable.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_b0241d\"\n },\n \"/images/litestand/sidebar/online.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_8d09d2\"\n },\n \"/images/chat/add.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_26b2d5\"\n },\n \"/images/chat/status/mobile.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_479fb2\"\n },\n \"/images/messaging/stickers/selector/rightarrow.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_b8k8sa\",\n spriteCssClass: \"sx_445519\"\n },\n \"/images/chat/sidebar/newGroupChat.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_b8k8sa\",\n spriteCssClass: \"sx_0de2a7\"\n },\n \"/images/chat/delete.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_3yt8ar\",\n spriteCssClass: \"sx_9a8650\"\n },\n \"/images/messaging/stickers/selector/store.png\": {\n sprited: true,\n spriteMapCssClass: \"sp_b8k8sa\",\n spriteCssClass: \"sx_5b913c\"\n }\n },\n js: [\"OH3xD\",\"XH2Cu\",\"f7Tpb\",\"AVmr9\",\"js0se\",\"/MWWQ\",\"1YKDj\",\"4/uwC\",\"WD1Wm\",\"cmK7/\",\"OSd/n\",\"zBhY6\",\"TXKLp\",\"bmJBG\",],\n id: \"pagelet_dock\",\n phase: 4\n});"); |
| // 6658 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"bigPipe.onPageletArrive({\n content: {\n fbRequestsList: {\n container_id: \"u_0_3j\"\n }\n },\n css: [\"UmFO+\",],\n bootloadable: {\n },\n resource_map: {\n },\n id: \"fbRequestsList\",\n phase: 4\n});"); |
| // 6659 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s95897435dc64341a2009d649aee8e079fef51bfd"); |
| // 6660 |
| geval("bigPipe.onPageletArrive({\n JSBNG__content: {\n fbRequestsList: {\n container_id: \"u_0_3j\"\n }\n },\n css: [\"UmFO+\",],\n bootloadable: {\n },\n resource_map: {\n },\n id: \"fbRequestsList\",\n phase: 4\n});"); |
| // 6667 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"bigPipe.onPageletArrive({\n content: {\n timeline_sticky_header: {\n container_id: \"u_0_3t\"\n }\n },\n jsmods: {\n require: [[\"TimelineStickyHeader\",\"init\",[\"m_0_7m\",],[{\n __m: \"m_0_7m\"\n },],],[\"SubscribeButton\",\"init\",[\"m_0_7p\",\"m_0_7o\",\"m_0_7q\",],[{\n __m: \"m_0_7p\"\n },{\n __m: \"m_0_7o\"\n },{\n __m: \"m_0_7q\"\n },\"1055580469\",0,false,],],[\"m_0_7p\",],[\"m_0_7q\",],[\"m_0_7v\",],[\"m_0_7u\",],[\"AddFriendButton\",\"init\",[\"m_0_7y\",],[{\n __m: \"m_0_7y\"\n },1055580469,null,\"profile_button\",\"none\",\"/ajax/add_friend/action.php\",\"\",true,null,false,null,0,],],[\"FriendStatus\",\"setSpecialLists\",[],[{\n close: 1374283956118870,\n acq: \"100006118350059_124542800973931\"\n },],],[\"TimelineStickyHeaderNav\",\"init\",[\"m_0_7z\",],[{\n __m: \"m_0_7z\"\n },{\n custom_subsection_menu: false\n },],],],\n instances: [[\"m_0_7v\",[\"ContextualDialog\",\"ContextualDialogArrow\",\"ContextualDialogDefaultTheme\",\"LayerRemoveOnHide\",\"LayerHideOnTransition\",\"LayerFadeOnShow\",\"LayerHideOnEscape\",\"ContextualLayerAutoFlip\",\"DialogHideOnSuccess\",\"m_0_7w\",],[{\n width: null,\n context: null,\n contextID: null,\n contextSelector: null,\n position: \"below\",\n alignment: \"left\",\n offsetX: 0,\n offsetY: 0,\n arrowBehavior: {\n __m: \"ContextualDialogArrow\"\n },\n theme: {\n __m: \"ContextualDialogDefaultTheme\"\n },\n addedBehaviors: [{\n __m: \"LayerRemoveOnHide\"\n },{\n __m: \"LayerHideOnTransition\"\n },{\n __m: \"LayerFadeOnShow\"\n },{\n __m: \"LayerHideOnEscape\"\n },{\n __m: \"ContextualLayerAutoFlip\"\n },{\n __m: \"DialogHideOnSuccess\"\n },]\n },{\n __m: \"m_0_7w\"\n },],3,],[\"m_0_7q\",[\"HoverButton\",\"m_0_7s\",\"m_0_7u\",\"m_0_7t\",],[{\n __m: \"m_0_7s\"\n },{\n __m: \"m_0_7u\"\n },{\n __m: \"m_0_7t\"\n },\"/ajax/lists/interests_menu.php?profile_id=1055580469&list_location=follow_1&follow_location=1\",],3,],[\"m_0_7u\",[\"HoverFlyout\",\"m_0_7v\",\"m_0_7x\",],[{\n __m: \"m_0_7v\"\n },{\n __m: \"m_0_7x\"\n },150,150,],3,],[\"m_0_7p\",[\"SwapButtonDEPRECATED\",\"m_0_7o\",\"m_0_7r\",],[{\n __m: \"m_0_7o\"\n },{\n __m: \"m_0_7r\"\n },false,],3,],],\n elements: [[\"m_0_7t\",\"u_0_3n\",2,\"m_0_7w\",],[\"m_0_7y\",\"u_0_3p\",2,],[\"m_0_7n\",\"u_0_3k\",2,],[\"m_0_7r\",\"u_0_3m\",2,],[\"m_0_7m\",\"u_0_3s\",2,],[\"m_0_7x\",\"u_0_3m\",2,],[\"m_0_7z\",\"u_0_3r\",4,],[\"m_0_7s\",\"u_0_3m\",2,],[\"m_0_7o\",\"u_0_3l\",4,],],\n markup: [[\"m_0_7w\",{\n __html: \"\\u003Cdiv\\u003E\\u003Cdiv\\u003E\\u003Cdiv\\u003E\\u003Cdiv id=\\\"u_0_3n\\\"\\u003E\\u003Cimg class=\\\"mal pal -cx-PRIVATE-uiHoverButton__loading center img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yk/r/LOOn0JtHNzb.gif\\\" alt=\\\"\\\" width=\\\"16\\\" height=\\\"16\\\" /\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },3,],]\n },\n css: [\"VPsP4\",\"UmFO+\",\"veUjj\",\"j1x0z\",],\n bootloadable: {\n StickyController: {\n resources: [\"OH3xD\",\"f7Tpb\",\"UmFO+\",\"R940f\",],\n \"module\": true\n }\n },\n resource_map: {\n },\n js: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"/MWWQ\",\"nxD7O\",\"R940f\",\"dShSX\",\"OYzUx\",\"cstCX\",],\n id: \"timeline_sticky_header\",\n phase: 4\n});"); |
| // 6668 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"sd3735cb42b77369cc848e96eeb073b0242f78cd5"); |
| // 6669 |
| geval("bigPipe.onPageletArrive({\n JSBNG__content: {\n timeline_sticky_header: {\n container_id: \"u_0_3t\"\n }\n },\n jsmods: {\n require: [[\"TimelineStickyHeader\",\"init\",[\"m_0_7m\",],[{\n __m: \"m_0_7m\"\n },],],[\"SubscribeButton\",\"init\",[\"m_0_7p\",\"m_0_7o\",\"m_0_7q\",],[{\n __m: \"m_0_7p\"\n },{\n __m: \"m_0_7o\"\n },{\n __m: \"m_0_7q\"\n },\"1055580469\",0,false,],],[\"m_0_7p\",],[\"m_0_7q\",],[\"m_0_7v\",],[\"m_0_7u\",],[\"AddFriendButton\",\"init\",[\"m_0_7y\",],[{\n __m: \"m_0_7y\"\n },1055580469,null,\"profile_button\",\"none\",\"/ajax/add_friend/action.php\",\"\",true,null,false,null,0,],],[\"FriendStatus\",\"setSpecialLists\",[],[{\n close: 1374283956118870,\n acq: \"100006118350059_124542800973931\"\n },],],[\"TimelineStickyHeaderNav\",\"init\",[\"m_0_7z\",],[{\n __m: \"m_0_7z\"\n },{\n custom_subsection_menu: false\n },],],],\n instances: [[\"m_0_7v\",[\"ContextualDialog\",\"ContextualDialogArrow\",\"ContextualDialogDefaultTheme\",\"LayerRemoveOnHide\",\"LayerHideOnTransition\",\"LayerFadeOnShow\",\"LayerHideOnEscape\",\"ContextualLayerAutoFlip\",\"DialogHideOnSuccess\",\"m_0_7w\",],[{\n width: null,\n context: null,\n contextID: null,\n contextSelector: null,\n position: \"below\",\n alignment: \"left\",\n offsetX: 0,\n offsetY: 0,\n arrowBehavior: {\n __m: \"ContextualDialogArrow\"\n },\n theme: {\n __m: \"ContextualDialogDefaultTheme\"\n },\n addedBehaviors: [{\n __m: \"LayerRemoveOnHide\"\n },{\n __m: \"LayerHideOnTransition\"\n },{\n __m: \"LayerFadeOnShow\"\n },{\n __m: \"LayerHideOnEscape\"\n },{\n __m: \"ContextualLayerAutoFlip\"\n },{\n __m: \"DialogHideOnSuccess\"\n },]\n },{\n __m: \"m_0_7w\"\n },],3,],[\"m_0_7q\",[\"HoverButton\",\"m_0_7s\",\"m_0_7u\",\"m_0_7t\",],[{\n __m: \"m_0_7s\"\n },{\n __m: \"m_0_7u\"\n },{\n __m: \"m_0_7t\"\n },\"/ajax/lists/interests_menu.php?profile_id=1055580469&list_location=follow_1&follow_location=1\",],3,],[\"m_0_7u\",[\"HoverFlyout\",\"m_0_7v\",\"m_0_7x\",],[{\n __m: \"m_0_7v\"\n },{\n __m: \"m_0_7x\"\n },150,150,],3,],[\"m_0_7p\",[\"SwapButtonDEPRECATED\",\"m_0_7o\",\"m_0_7r\",],[{\n __m: \"m_0_7o\"\n },{\n __m: \"m_0_7r\"\n },false,],3,],],\n elements: [[\"m_0_7t\",\"u_0_3n\",2,\"m_0_7w\",],[\"m_0_7y\",\"u_0_3p\",2,],[\"m_0_7n\",\"u_0_3k\",2,],[\"m_0_7r\",\"u_0_3m\",2,],[\"m_0_7m\",\"u_0_3s\",2,],[\"m_0_7x\",\"u_0_3m\",2,],[\"m_0_7z\",\"u_0_3r\",4,],[\"m_0_7s\",\"u_0_3m\",2,],[\"m_0_7o\",\"u_0_3l\",4,],],\n markup: [[\"m_0_7w\",{\n __html: \"\\u003Cdiv\\u003E\\u003Cdiv\\u003E\\u003Cdiv\\u003E\\u003Cdiv id=\\\"u_0_3n\\\"\\u003E\\u003Cimg class=\\\"mal pal -cx-PRIVATE-uiHoverButton__loading center img\\\" src=\\\"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yk/r/LOOn0JtHNzb.gif\\\" alt=\\\"\\\" width=\\\"16\\\" height=\\\"16\\\" /\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n },3,],]\n },\n css: [\"VPsP4\",\"UmFO+\",\"veUjj\",\"j1x0z\",],\n bootloadable: {\n StickyController: {\n resources: [\"OH3xD\",\"f7Tpb\",\"UmFO+\",\"R940f\",],\n \"module\": true\n }\n },\n resource_map: {\n },\n js: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"/MWWQ\",\"nxD7O\",\"R940f\",\"dShSX\",\"OYzUx\",\"cstCX\",],\n id: \"timeline_sticky_header\",\n phase: 4\n});"); |
| // 6676 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"bigPipe.onPageletArrive({\n append: \"timeline_tab_content_extra\",\n content: {\n timeline_section_placeholders: {\n container_id: \"u_0_41\"\n }\n },\n jsmods: {\n require: [[\"TimelineContentLoader\",\"loadSectionOnClick\",[\"m_0_80\",],[{\n __m: \"m_0_80\"\n },\"year_2013\",],],[\"TimelineContentLoader\",\"registerTimePeriod\",[\"m_0_81\",],[{\n __m: \"m_0_81\"\n },\"year_2013\",{\n profile_id: 1055580469,\n start: 1357027200,\n end: 1388563199,\n query_type: 8,\n filter_after_timestamp: 1359397173,\n section_pagelet_id: \"pagelet_timeline_year_current\",\n load_immediately: false\n },false,null,1,\"1.75\",],],[\"TimelineContentLoader\",\"setExpandLoadDataForSection\",[],[\"year_2013\",{\n profile_id: 1055580469,\n start: 1357027200,\n end: 1388563199,\n query_type: 9\n },],],[\"TimelineContentLoader\",\"loadSectionOnClick\",[\"m_0_82\",],[{\n __m: \"m_0_82\"\n },\"year_2012\",],],[\"TimelineContentLoader\",\"registerTimePeriod\",[\"m_0_83\",],[{\n __m: \"m_0_83\"\n },\"year_2012\",{\n profile_id: 1055580469,\n start: 1325404800,\n end: 1357027199,\n query_type: 8,\n section_pagelet_id: \"pagelet_timeline_year_last\",\n load_immediately: false\n },false,null,2,\"24.648440122605\",],],[\"TimelineContentLoader\",\"setExpandLoadDataForSection\",[],[\"year_2012\",{\n profile_id: 1055580469,\n start: 1325404800,\n end: 1357027199,\n query_type: 9\n },],],[\"TimelineContentLoader\",\"loadSectionOnClick\",[\"m_0_84\",],[{\n __m: \"m_0_84\"\n },\"year_2011\",],],[\"TimelineContentLoader\",\"registerTimePeriod\",[\"m_0_85\",],[{\n __m: \"m_0_85\"\n },\"year_2011\",{\n profile_id: 1055580469,\n start: 1293868800,\n end: 1325404799,\n query_type: 8,\n section_pagelet_id: \"pagelet_timeline_year_2011\",\n load_immediately: false\n },false,null,3,\"6.5829925537109\",],],[\"TimelineContentLoader\",\"setExpandLoadDataForSection\",[],[\"year_2011\",{\n profile_id: 1055580469,\n start: 1293868800,\n end: 1325404799,\n query_type: 9\n },],],[\"TimelineContentLoader\",\"loadSectionOnClick\",[\"m_0_86\",],[{\n __m: \"m_0_86\"\n },\"year_2008\",],],[\"TimelineContentLoader\",\"registerTimePeriod\",[\"m_0_87\",],[{\n __m: \"m_0_87\"\n },\"year_2008\",{\n profile_id: 1055580469,\n start: 1199174400,\n end: 1230796799,\n query_type: 8,\n section_pagelet_id: \"pagelet_timeline_year_2008\",\n load_immediately: false\n },false,null,6,\"13.875\",],],[\"TimelineContentLoader\",\"setExpandLoadDataForSection\",[],[\"year_2008\",{\n profile_id: 1055580469,\n start: 1199174400,\n end: 1230796799,\n query_type: 9\n },],],[\"TimelineContentLoader\",\"loadSectionOnClick\",[\"m_0_88\",],[{\n __m: \"m_0_88\"\n },\"way_back\",],],[\"TimelineContentLoader\",\"registerTimePeriod\",[\"m_0_89\",],[{\n __m: \"m_0_89\"\n },\"way_back\",{\n profile_id: 1055580469,\n start: 1167638400,\n end: 1199174399,\n query_type: 11,\n section_pagelet_id: \"pagelet_timeline_wayback\",\n load_immediately: false\n },false,null,7,-1,],],[\"TimelineContentLoader\",\"loadSectionOnClick\",[\"m_0_8a\",],[{\n __m: \"m_0_8a\"\n },\"year_2009\",],],[\"TimelineContentLoader\",\"registerTimePeriod\",[\"m_0_8b\",],[{\n __m: \"m_0_8b\"\n },\"year_2009\",{\n profile_id: 1055580469,\n start: 1230796800,\n end: 1262332799,\n query_type: 8,\n section_pagelet_id: \"pagelet_timeline_year_2009\",\n load_immediately: false\n },false,null,5,\"14.0224609375\",],],[\"TimelineContentLoader\",\"setExpandLoadDataForSection\",[],[\"year_2009\",{\n profile_id: 1055580469,\n start: 1230796800,\n end: 1262332799,\n query_type: 9\n },],],[\"TimelineContentLoader\",\"loadSectionOnClick\",[\"m_0_8c\",],[{\n __m: \"m_0_8c\"\n },\"year_2010\",],],[\"TimelineContentLoader\",\"registerTimePeriod\",[\"m_0_8d\",],[{\n __m: \"m_0_8d\"\n },\"year_2010\",{\n profile_id: 1055580469,\n start: 1262332800,\n end: 1293868799,\n query_type: 8,\n section_pagelet_id: \"pagelet_timeline_year_2010\",\n load_immediately: false\n },false,null,4,\"9.1259155273438\",],],[\"TimelineContentLoader\",\"setExpandLoadDataForSection\",[],[\"year_2010\",{\n profile_id: 1055580469,\n start: 1262332800,\n end: 1293868799,\n query_type: 9\n },],],],\n elements: [[\"m_0_83\",\"pagelet_timeline_year_last\",2,],[\"m_0_85\",\"pagelet_timeline_year_2011\",2,],[\"m_0_89\",\"pagelet_timeline_wayback\",2,],[\"m_0_80\",\"u_0_3u\",2,],[\"m_0_81\",\"pagelet_timeline_year_current\",2,],[\"m_0_82\",\"u_0_3v\",2,],[\"m_0_88\",\"u_0_3y\",2,],[\"m_0_8a\",\"u_0_3z\",2,],[\"m_0_86\",\"u_0_3x\",2,],[\"m_0_8c\",\"u_0_40\",2,],[\"m_0_8d\",\"pagelet_timeline_year_2010\",2,],[\"m_0_84\",\"u_0_3w\",2,],[\"m_0_87\",\"pagelet_timeline_year_2008\",2,],[\"m_0_8b\",\"pagelet_timeline_year_2009\",2,],]\n },\n css: [\"j1x0z\",\"UmFO+\",],\n bootloadable: {\n },\n resource_map: {\n },\n js: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"/MWWQ\",\"nxD7O\",\"xfhln\",],\n id: \"timeline_section_placeholders\",\n phase: 4\n});"); |
| // 6677 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s7a7d3c668af3542f1f7f088789c284d2c2c7d506"); |
| // 6678 |
| geval("bigPipe.onPageletArrive({\n append: \"timeline_tab_content_extra\",\n JSBNG__content: {\n timeline_section_placeholders: {\n container_id: \"u_0_41\"\n }\n },\n jsmods: {\n require: [[\"TimelineContentLoader\",\"loadSectionOnClick\",[\"m_0_80\",],[{\n __m: \"m_0_80\"\n },\"year_2013\",],],[\"TimelineContentLoader\",\"registerTimePeriod\",[\"m_0_81\",],[{\n __m: \"m_0_81\"\n },\"year_2013\",{\n profile_id: 1055580469,\n start: 1357027200,\n end: 1388563199,\n query_type: 8,\n filter_after_timestamp: 1359397173,\n section_pagelet_id: \"pagelet_timeline_year_current\",\n load_immediately: false\n },false,null,1,\"1.75\",],],[\"TimelineContentLoader\",\"setExpandLoadDataForSection\",[],[\"year_2013\",{\n profile_id: 1055580469,\n start: 1357027200,\n end: 1388563199,\n query_type: 9\n },],],[\"TimelineContentLoader\",\"loadSectionOnClick\",[\"m_0_82\",],[{\n __m: \"m_0_82\"\n },\"year_2012\",],],[\"TimelineContentLoader\",\"registerTimePeriod\",[\"m_0_83\",],[{\n __m: \"m_0_83\"\n },\"year_2012\",{\n profile_id: 1055580469,\n start: 1325404800,\n end: 1357027199,\n query_type: 8,\n section_pagelet_id: \"pagelet_timeline_year_last\",\n load_immediately: false\n },false,null,2,\"24.648440122605\",],],[\"TimelineContentLoader\",\"setExpandLoadDataForSection\",[],[\"year_2012\",{\n profile_id: 1055580469,\n start: 1325404800,\n end: 1357027199,\n query_type: 9\n },],],[\"TimelineContentLoader\",\"loadSectionOnClick\",[\"m_0_84\",],[{\n __m: \"m_0_84\"\n },\"year_2011\",],],[\"TimelineContentLoader\",\"registerTimePeriod\",[\"m_0_85\",],[{\n __m: \"m_0_85\"\n },\"year_2011\",{\n profile_id: 1055580469,\n start: 1293868800,\n end: 1325404799,\n query_type: 8,\n section_pagelet_id: \"pagelet_timeline_year_2011\",\n load_immediately: false\n },false,null,3,\"6.5829925537109\",],],[\"TimelineContentLoader\",\"setExpandLoadDataForSection\",[],[\"year_2011\",{\n profile_id: 1055580469,\n start: 1293868800,\n end: 1325404799,\n query_type: 9\n },],],[\"TimelineContentLoader\",\"loadSectionOnClick\",[\"m_0_86\",],[{\n __m: \"m_0_86\"\n },\"year_2008\",],],[\"TimelineContentLoader\",\"registerTimePeriod\",[\"m_0_87\",],[{\n __m: \"m_0_87\"\n },\"year_2008\",{\n profile_id: 1055580469,\n start: 1199174400,\n end: 1230796799,\n query_type: 8,\n section_pagelet_id: \"pagelet_timeline_year_2008\",\n load_immediately: false\n },false,null,6,\"13.875\",],],[\"TimelineContentLoader\",\"setExpandLoadDataForSection\",[],[\"year_2008\",{\n profile_id: 1055580469,\n start: 1199174400,\n end: 1230796799,\n query_type: 9\n },],],[\"TimelineContentLoader\",\"loadSectionOnClick\",[\"m_0_88\",],[{\n __m: \"m_0_88\"\n },\"way_back\",],],[\"TimelineContentLoader\",\"registerTimePeriod\",[\"m_0_89\",],[{\n __m: \"m_0_89\"\n },\"way_back\",{\n profile_id: 1055580469,\n start: 1167638400,\n end: 1199174399,\n query_type: 11,\n section_pagelet_id: \"pagelet_timeline_wayback\",\n load_immediately: false\n },false,null,7,-1,],],[\"TimelineContentLoader\",\"loadSectionOnClick\",[\"m_0_8a\",],[{\n __m: \"m_0_8a\"\n },\"year_2009\",],],[\"TimelineContentLoader\",\"registerTimePeriod\",[\"m_0_8b\",],[{\n __m: \"m_0_8b\"\n },\"year_2009\",{\n profile_id: 1055580469,\n start: 1230796800,\n end: 1262332799,\n query_type: 8,\n section_pagelet_id: \"pagelet_timeline_year_2009\",\n load_immediately: false\n },false,null,5,\"14.0224609375\",],],[\"TimelineContentLoader\",\"setExpandLoadDataForSection\",[],[\"year_2009\",{\n profile_id: 1055580469,\n start: 1230796800,\n end: 1262332799,\n query_type: 9\n },],],[\"TimelineContentLoader\",\"loadSectionOnClick\",[\"m_0_8c\",],[{\n __m: \"m_0_8c\"\n },\"year_2010\",],],[\"TimelineContentLoader\",\"registerTimePeriod\",[\"m_0_8d\",],[{\n __m: \"m_0_8d\"\n },\"year_2010\",{\n profile_id: 1055580469,\n start: 1262332800,\n end: 1293868799,\n query_type: 8,\n section_pagelet_id: \"pagelet_timeline_year_2010\",\n load_immediately: false\n },false,null,4,\"9.1259155273438\",],],[\"TimelineContentLoader\",\"setExpandLoadDataForSection\",[],[\"year_2010\",{\n profile_id: 1055580469,\n start: 1262332800,\n end: 1293868799,\n query_type: 9\n },],],],\n elements: [[\"m_0_83\",\"pagelet_timeline_year_last\",2,],[\"m_0_85\",\"pagelet_timeline_year_2011\",2,],[\"m_0_89\",\"pagelet_timeline_wayback\",2,],[\"m_0_80\",\"u_0_3u\",2,],[\"m_0_81\",\"pagelet_timeline_year_current\",2,],[\"m_0_82\",\"u_0_3v\",2,],[\"m_0_88\",\"u_0_3y\",2,],[\"m_0_8a\",\"u_0_3z\",2,],[\"m_0_86\",\"u_0_3x\",2,],[\"m_0_8c\",\"u_0_40\",2,],[\"m_0_8d\",\"pagelet_timeline_year_2010\",2,],[\"m_0_84\",\"u_0_3w\",2,],[\"m_0_87\",\"pagelet_timeline_year_2008\",2,],[\"m_0_8b\",\"pagelet_timeline_year_2009\",2,],]\n },\n css: [\"j1x0z\",\"UmFO+\",],\n bootloadable: {\n },\n resource_map: {\n },\n js: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"/MWWQ\",\"nxD7O\",\"xfhln\",],\n id: \"timeline_section_placeholders\",\n phase: 4\n});"); |
| // 6685 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"bigPipe.onPageletArrive({\n content: {\n pagelet_timeline_recent_more_pager: {\n container_id: \"u_0_43\"\n }\n },\n jsmods: {\n require: [[\"TimelineContentLoader\",\"updatePagerAfterLoad\",[\"m_0_8e\",],[{\n __m: \"m_0_8e\"\n },\"u_0_1a\",\"recent\",\"0\",true,],],],\n elements: [[\"m_0_8e\",\"pagelet_timeline_recent_pager_1\",2,],]\n },\n css: [\"j1x0z\",\"veUjj\",\"UmFO+\",],\n bootloadable: {\n },\n resource_map: {\n },\n js: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"/MWWQ\",\"nxD7O\",\"xfhln\",],\n jscc_map: \"({\\\"jp1njVsiFS9h1xdp9Yi0\\\":function(){return new ScrollingPager(\\\"u_0_42\\\", \\\"ProfileTimelineSectionPagelet\\\", {\\\"profile_id\\\":1055580469,\\\"start\\\":0,\\\"end\\\":1375340399,\\\"query_type\\\":39,\\\"page_index\\\":1,\\\"section_container_id\\\":\\\"u_0_1a\\\",\\\"section_pagelet_id\\\":\\\"pagelet_timeline_recent\\\",\\\"unit_container_id\\\":\\\"u_0_19\\\",\\\"current_scrubber_key\\\":\\\"recent\\\",\\\"time_cutoff\\\":null,\\\"buffer\\\":50,\\\"require_click\\\":false,\\\"showing_esc\\\":false,\\\"adjust_buffer\\\":true,\\\"tipld\\\":{\\\"sc\\\":4,\\\"rc\\\":12},\\\"num_visible_units\\\":8,\\\"remove_dupes\\\":true}, {\\\"usePipe\\\":true,\\\"jsNonblock\\\":true,\\\"buffer\\\":50,\\\"constHeight\\\":true,\\\"target_id\\\":\\\"u_0_19\\\"});}})\",\n onload: [\"JSCC.get(\\\"jp1njVsiFS9h1xdp9Yi0\\\").register();\",],\n id: \"pagelet_timeline_recent_more_pager\",\n phase: 4\n});"); |
| // 6686 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"sa0e5ed26581842d8138a5a60f1bb3d0304df569c"); |
| // 6687 |
| geval("bigPipe.onPageletArrive({\n JSBNG__content: {\n pagelet_timeline_recent_more_pager: {\n container_id: \"u_0_43\"\n }\n },\n jsmods: {\n require: [[\"TimelineContentLoader\",\"updatePagerAfterLoad\",[\"m_0_8e\",],[{\n __m: \"m_0_8e\"\n },\"u_0_1a\",\"recent\",\"0\",true,],],],\n elements: [[\"m_0_8e\",\"pagelet_timeline_recent_pager_1\",2,],]\n },\n css: [\"j1x0z\",\"veUjj\",\"UmFO+\",],\n bootloadable: {\n },\n resource_map: {\n },\n js: [\"OH3xD\",\"f7Tpb\",\"AVmr9\",\"/MWWQ\",\"nxD7O\",\"xfhln\",],\n jscc_map: \"({\\\"jp1njVsiFS9h1xdp9Yi0\\\":function(){return new ScrollingPager(\\\"u_0_42\\\", \\\"ProfileTimelineSectionPagelet\\\", {\\\"profile_id\\\":1055580469,\\\"start\\\":0,\\\"end\\\":1375340399,\\\"query_type\\\":39,\\\"page_index\\\":1,\\\"section_container_id\\\":\\\"u_0_1a\\\",\\\"section_pagelet_id\\\":\\\"pagelet_timeline_recent\\\",\\\"unit_container_id\\\":\\\"u_0_19\\\",\\\"current_scrubber_key\\\":\\\"recent\\\",\\\"time_cutoff\\\":null,\\\"buffer\\\":50,\\\"require_click\\\":false,\\\"showing_esc\\\":false,\\\"adjust_buffer\\\":true,\\\"tipld\\\":{\\\"sc\\\":4,\\\"rc\\\":12},\\\"num_visible_units\\\":8,\\\"remove_dupes\\\":true}, {\\\"usePipe\\\":true,\\\"jsNonblock\\\":true,\\\"buffer\\\":50,\\\"constHeight\\\":true,\\\"target_id\\\":\\\"u_0_19\\\"});}})\",\n JSBNG__onload: [\"JSCC.get(\\\"jp1njVsiFS9h1xdp9Yi0\\\").register();\",],\n id: \"pagelet_timeline_recent_more_pager\",\n phase: 4\n});"); |
| // 6694 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"bigPipe.onPageletArrive({\n append: \"rightColContent\",\n content: {\n pagelet_timeline_scrubber: {\n container_id: \"u_0_45\"\n }\n },\n css: [\"VPsP4\",\"UmFO+\",],\n bootloadable: {\n },\n resource_map: {\n },\n js: [\"OH3xD\",\"nxD7O\",\"f7Tpb\",\"AVmr9\",\"/MWWQ\",\"R940f\",],\n jscc_map: \"({\\\"jq1kBbeqgdD1pvozjpI0\\\":function(){return new TimelineMainScrubber($(\\\"u_0_44\\\"));}})\",\n onload: [\"JSCC.get(\\\"jq1kBbeqgdD1pvozjpI0\\\")\",],\n id: \"pagelet_timeline_scrubber\",\n phase: 4\n});"); |
| // 6695 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"sc7483e9518dc4576991807d5ccecc05757a39433"); |
| // 6696 |
| geval("bigPipe.onPageletArrive({\n append: \"rightColContent\",\n JSBNG__content: {\n pagelet_timeline_scrubber: {\n container_id: \"u_0_45\"\n }\n },\n css: [\"VPsP4\",\"UmFO+\",],\n bootloadable: {\n },\n resource_map: {\n },\n js: [\"OH3xD\",\"nxD7O\",\"f7Tpb\",\"AVmr9\",\"/MWWQ\",\"R940f\",],\n jscc_map: \"({\\\"jq1kBbeqgdD1pvozjpI0\\\":function(){return new TimelineMainScrubber($(\\\"u_0_44\\\"));}})\",\n JSBNG__onload: [\"JSCC.get(\\\"jq1kBbeqgdD1pvozjpI0\\\")\",],\n id: \"pagelet_timeline_scrubber\",\n phase: 4\n});"); |
| // 6703 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"bigPipe.onPageletArrive({\n display_dependency: [\"pagelet_side_ads\",],\n content: {\n u_0_2s: {\n container_id: \"u_0_47\"\n }\n },\n jsmods: {\n require: [[\"Arbiter\",\"inform\",[],[\"netego_loaded\",null,],],[\"NetEgo\",\"setup\",[],[6011858202131,],],[\"NetEgo\",\"setup\",[],[6007957621675,],],[\"NetEgo\",\"setup\",[],[6007651357550,],],[\"NetEgo\",\"setup\",[],[6010680301716,],],[\"NetEgo\",\"setup\",[],[6007882470930,],],[\"AdblockDetectorLogging\",\"assertUnblocked\",[\"m_0_8f\",],[{\n __m: \"m_0_8f\"\n },],],[\"TimelineController\",\"setAdsTracking\",[],[{\n 6011858202131: \"AQIXjFzVnyt1gEiMA7PSjcl3XmzMZUyVflJXFslG5Of2LEwTXJHqaA9JDrM-zCNYfqyTAu63OtlDGRuHlR3xlp2ypN4yjcGVbl3yDy0u0KPdMvJfxIoE_lcAGP0SpnC0i-IuPNJqTDfbUJ6xmXin26Ek0_2_S1UMwaRFkoMMahhEkeZJO96iHSsBKpPAlgdsWci2r6dRvGMHXI3PRjIZ97dC1AqbYC_P1ipH7Dw3RmQLuWt_vvctnoC3xuVopNkCbG3cp8BWnaFJeag4GCxKxdBDDsxjpNun0bH03qlKDh-81b23skzeT4u2bcA01Epwvl2XH3WedOSxZEd0YCWL1a9iT0mjmzYjc7Ft7zGBEmOYiEPzgAqJ1F4DWAJ42puZS6Nt4iIgXXUq4EE9pFGb4kSS5VLQeWAVfOCRIX-DXFLF4gHoACqiXXSPpHOAk46cLmlfMi_g9Z1dbZVac3y0J6gJGR1A_apUwOzsvUuwWsxn5BbPpjJb1IEy4v3yozT55pt6TYp5uyY4sG2Bn8yb_I2bCePXK_307CTQBKssaOXS7bzgjtc1We7vCI1FC1M5g3wxFfiuGLDoI9V9li55IFWBg-hVHDS8xc5KtiVEIcMt50vjxaljt4-hT2kwTZ-PRPzRXESthjjege4p8hu1y1VUfffWsYtFX6csLvpWL7T7LKySWm8I5wCtjSrTstyzH5hbqnvuixZeYbVKxWblBOPUOMK7PcF8rVk_wWUprzxgH9qeWu2L2EgOqY-avhhtzpOfXufsf0hDHkqPEUt3ZONuytotJuwvXegAdIJ2xyimANjpc82RFZtwjzLXzjPCFHKbfCU4y-EsUez_y-c_zKcGQpwFBmFSXvVt-MKhK0RPTw0rArt8fVcIS3onO1J1CEtsDCaRDKgidaTftd9vc3ajmOPKoN9T2F97ek4Eag_6PdRB24JMPplUFXhkY2fEYkpIi_SVvEYrv-xSnH1ZxdpP\",\n 6007957621675: \"AQLiT5UAYu2pJtLFxGMXsm1qit6S_bG_3r4VKPGonqOKfWV_i5bpwi6-G9k08_EjqZQqXu_GKCw4hM59IAVg-ADYNyME1vc_OM2jc_EfKBRdHAyfZGy2MncQrH9_Kr5acFvHEg8Vu23puqviAeJiZiM-Xq-FhRreO_YBQvFNhOFBGjNFXqgdThBrDMSzdwNDGsr2s7zOycrODxXHyGFwssdoXz_oESdwdq7DWd1aMR8niGA01M9dcc7K3jTVDpJb-H22ROtIk15-_s8OoIjTQ48LoVclQvlFQ6SL8_I5hJ1_aj-TytRnVWi-puF1kMlOrs-rrUgN6DFGZskvxJXBM7uFkaqoWpjiFZzraU2I8QeoghKy9P9jzMZ7fbDicA0RiqpAipuBFwWq1_AoPkinyChGWvQJgxoQ1wOq3O7xs1ECPCrPznwemW29s71GFiTXpneJf92CTj1OnEzgm_UirnJKRKYRVYS4oSxn1CL-VByecFHLVJZvfApbOpd0zFDbuIFADEwuInXPs_a96BDQITJR24h6mtpOy4ifxhm4YBvQPUeTyzUSPLZQkrC2f90kcj-IJ_-OVRNMLy8a8i6dFR8KmD8t4Jr-s1x-ULHDjzAR-YQ1BVEtyPudhpG6kuw8Kv8Ta0L5OC8fFrhFcK8o_WCnXNkGIca_b5ZKcuFT4Sx18NuQJwquQFH48-ifssNT9A6QiTbz28almxVU2lajyuRKxaLVT89dxN3550eVz76tqrY5-oyGQvo06HcE7fscMPKfSzGNTMRPJ8fjwKhHdL6ZpewOs3HboAI7XYHWF6S5spIdGBISwKnaBia7TpwBBNcZmciV_cda36zDiYfskRPRMydypGnN_d-crWWg-Woe2W3CMy2sXFtH1YGA8NXzp7FRi-1SFjJs4m9Lw2ZJVDjR3uOE8Gcj0R6k8tC7fVNUFLH0pUpxUwwgOkXhxX_T3yL7KTd5A_zkC0XDVAXPkcZF\",\n 6007651357550: \"AQJnhWF_HrXnQnvt-wuW04vsf33N17hxZ1VjLLUvG9Oe60mA-Jw5jSjNwBsFwojnTnPKLtCZL1bGEuM8nYwjqOtoGxVEK4GYwkcTLZ5bqi-3bGdgOTUmeKXm7XxPoVIzQ0UeooX4IRreCHIlQ0blVPH4k6HR_HGA6r7tykKBVrwwiwmlUkfV7wNOjGJE7s0qv8krqAf34VlMSHAaqRoMHy2p4O-dLI1qVdZ3ZIo7Cq9VqcyNX7SlOncOiOWE1olligTvWgFr8ccqixOEJgD-RygfXhKV90lMEBWKZ-IAQTu_x1aMufDt03CwTJazAcgPmNB8fkQ9Xm-VLUZCSH6Izny3dyiGYY5jJBj4h0mqZOfACJwfm72Qn6_BCPl3oyyFAXTCdTRIVzGALYoJR6TU4hn8XuU9VdEO8wsHjbW3_-_-S6kLqcE_Is3JlOjuZl05m9JxYQMS7rQdXZWIGi5GYzqoYHaMjPzBG2VAlWls-xJDizZBpFoYdiZSKOUHVbEJ1mlDfzEjyZQYXeFnlA2PQQHxsW4JHrXEPE_vkK1E4j9sWWArpBssI1_HAJIX5T0zfeQXxt7--Vqh2NeYEPC6xFRaeUyz5SJVzlbl04RwaQJBAmtwDzNG8JTIhpm-ueuFFXO1w2Zs3nvD5OvK7jgc5rp4BR0tlI5wuyupdoy9zlK6aU7X7tCmz9-abYeoMSd38u7wsJ8NJFU13iUFJ27gAwouJpdQxPbtA8IjaKPpC3NzXXow0p_MJSQxA5Wqd4oJjrmTiH26QWE3OqA_3v7zDFbD2LlcmX9Sp2BuVa4NX-3S-HkvYRZgvw4uLQECGpKMKAhE6-mM93VOVgL_SYVvkvI7yuIwKQazaERimjCHi1YgueYAQUkXkmYxq1pYayiPRk3ipNeJDa8arzDMyn0nZEE60os7gu5_xYfSiM6dYunwnoDCgc9qxdlB7UOiYn65wqYfVR5skqMUthmleZeb3n24TmCsb2wVa_X4eVICU557AQ\",\n 6010680301716: \"AQL2qB3F7L0VqeptVTsMnpcUoL3qjs0BSi_xgEx2n_XJccsA8l_IRj6UkmnoGmMTxyDdmJLsLw2SaZnDBSBq7V8llr9d8a-ZZkGKsrxmpYzfl5v-k_pmECbGIo16uJk6pKSmueCrzCJBk3-V1qcRE55tBpDxRo05MJemvAjo_hGXDfCgCKYpAi98v_aptZtkrtKtNPdSCz-zsC66BeaDotzzNi1udFeTjTEvcTsHTrk1hBojBiawZx8G12clKtTYGpfm0GDsx9JrvSJ5dzznm0gTUpmWOX-A3NBgvQZz7yMDKU39JqlLOqhXQl-lLK-8MvuqJOu9_cB9oiqS3wBQ5IZ2F7ZqlByWv-PkPxvc8EvMXMb0hrdJjvB8rSzKFbSwiBxe_L_h8zVril-ac0ehJhrGnvd3bmiFivFxiCGLsJojS6HN4BYrTJmlGK6Fi05OOPBqAZbFUNtRX-c7AIg2vdfC4Fqy-gH8B_iAw99e1sNY5-kJdVqreEWHopfgAWYvj2KEJOpIveNWUelU4E9tM0U6idEIUDW-MNyHgSSiqNcurCp0i4ZzoT9fyDtLkbR6NYiE0Mh1DjBVPhYfamTAQaOdtyrngfHjLqOC_WqcOo799w7o5B1eb4fGQY5ce9ZRE872Ht7S9mo9tc9GqgQf5d6Hkr4lCmEuZXstLDrauWmrqKjL7DeQxzyaI6PfkRyEf3Cg4WFIvlJOCoE2RMiKi2s71dWyFobqMH0zB1Z1ER8YCxzIWRynVv6mFqz2mGrC07itBxkNAgmIWyB1iGhN5o1Z7x2mF4kXgcbYbANphaTrCWAI212rSTJosv3uK3p20oAPdT6jr_ZXuPBe6lxaEyaD1OSdAZQEG830KxB09XDl6Towq7WJDqVw-gmsstCbLfR9UErlf0uwrC4wmHzCVjOE2U2ZVGwllIXM5XnIPfqgkTssnlp1J7Ua-MTV3JoJK04iYjGPs_t-7KeFYsjtvaxz\",\n 6007882470930: \"AQL_TwXjNLS-D5mFq2EjKUCtO_gL7WGZ5AvHPkQNEOIqFhvQuD3VhQVQrrZ3rk8sEaQhIZYQ8HVZGvYuERQbxFO5neVKD5BRXP8T1ERz_xymZnvj04ZoV0GSX-ofxRG-SC9Ey6mqJH0Ea2o3ocEO9SK6vPoO7zhH_Z267Y6b3wP7nMhL9qFoA-GJdx7jJOjnS1Cwm4uksA9QAE_h-ixgcjbRZddsngZH8K3kuO6HjOrjAc_o4yXV5WvCEMX1f5ky4Byzzrkx4858Mxh0KnrZY3bShVByJDEPvhA5WNWYM_QnYuIuBeXZ87VP8U7N7LcyfWNAEHA1Q6i3bZ0UGOGskBo9lwBoLnZlYyVcNb4Rr1hf9AaJEttH5lBICh6B89vsFVJNXopPYnk7UmPaVm4je5ZUrLmQ68dGgaReowi4Zoe5w83ndcsTAXmlS6goxhuUR1TiMqEybzvWSzY79r69xCZwmHP244TqwT1NZKRtCEbVSYlcoRbTUiuSopAw3CVfwvy4Fjjheqh4mYHbImJNMUL6BTN-yFXQ9LYsYHzj2EmxnfHnLwFxKbw6i2oe6BJ6n1YWIESRfMsJ5Rb3ag86itkEeJHcTmfoLlGJtAxOHaqXXQKfm8fY3YM0jHAo2kZKA1JDVk8BucobTd75BWeAI_qMXFxF_NU5viMGeafe8xDE4KWhSdA_k5WEfRCiNKNSMFCPdcw7IJpafnUO6vmTwUJlYa69q4USmZQXfnb85hCGcq-ldWa3wMD9aMSkJoe0X507qYvJTyriULhOrUOMVgDHpRh4zAi9a5FuYy6sa6rKTjPix_PuLvUK-sGwHEEz3iUErRTVd5Qc-cMTWBqNlWzw1BZCrsre6DcaxyOWSdOMQzgJr4Efj9XHJgdTfynWKGWusviF3Y_LkoCVmUqGdJOqKZz6ia22T2UAanD1AXZOol2-5mK6Zpgko364cag83gPMmEiqt8Ix4VO4EF3FBI8P\"\n },],],],\n elements: [[\"m_0_8f\",\"u_0_46\",2,],]\n },\n css: [\"veUjj\",\"HgCpx\",\"UmFO+\",],\n bootloadable: {\n },\n resource_map: {\n \"dm/WP\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/ys/r/hXdibVSGozY.js\"\n }\n },\n js: [\"OH3xD\",\"dm/WP\",\"f7Tpb\",\"AVmr9\",\"/MWWQ\",\"nxD7O\",],\n onload: [\"new EmuController(\\\"6011858202131-id_51f2904c3d16d9b66803454\\\", \\\"AQKeJQRxXzUhxhbYGaYgYDYhc3hQ30O_gQTSLytMewtlgvobJQH5MuaQJp4_fbqlG5W0Tung-9ZDLu-ztha3uNKKYrj85XEwPZJe-GO5gSUpcbVv7zETufLCcsIh674v1O83EtmtVxQup--XRKCr8pDY6xXlObOVvP0yoR1v_0IsC_JNt4xvJexprbqQTr6TjUMjQqtWJuu_sR7XhSWsgEH77as7rCQK0ip1DLeFa5567J46KjYuY2hQDqbzl6Mn7OvS3aEBGU4eBGAY58-SYeJ3W9bKPJYqCx9Bkwjmr9B41iWSaz5Ki6YhderlMBA9Dfg8s-1uj70k8nthPqKnwV1w5lP8Y0wOJzgBx5REj425joGQHMG-M_8PpRRjctnVo0LFsHvpUwBFLO7MVy5Og1KQZjJbE40w4N-x7jjVGgZq3mmVr1m7FmevdJl8nrJTDv_61sG9Uw4skERHbsU3NMtwgzADe1akrFYllUuYsbHMLFGwEqD3-TfoHOV94O58Hq_kOSziDKTYYmlFw6eNCJjlthWbCrTLAH9HcCNJdJxdyWr9uUWB8uubJXGdnSjD7HJ3aApft4dhnW_AcVsiT0FvlWqla1mQYmmFc0CWULTtH-H1ePnhErOS6wUI-7bUXTGD8Npu2iUdkxK8l13OeUzhoqIw0cZweNRNFpjsV-wt043C0sr5JcldR5ptLS3Ka5X8VOnkoeczYv17rPjOgAzVJvV-RTTZA72Ll0zSKYma-N3NUhZ9x5EZzTYtbw8f9maqVWx7S1WU1AD8h7NcQq0Cl7orO5GHXP_1n1jVkp-KV9rALdyuek_JD5B8TTULG_AZrDe4S1HIPG1FE8wnH8-Q9Iy6s5zKVH2X-xlJNRqaIxNyaGLj0WH9PYYFaQU8YnakM4_r-3nFy6ki7-cEoDZK3qcw7PJCp9w-iSgN9hVe2WFESd0t8pfpI0WTc6lf5ErS0yfqFsj4LPsnQJjr8Ugn3-pX4_51v7LvRfVqnrwBcEJv_da-58RdvJw-hKx6uClKEfzl6Zm4phRloZSqpxb-Zq4UeR34E6ATI9aQYs46sfH5-CilrxxE-gHzA4WxTNGFXv0Nabb01JJVZx0qbuEfSuE--_IiNWgOoF1vr9SiJfYXVQ9ofCEvj6viyzWx1jxp_a1PpUBVzpBMC9ZvXfPuxnrBqF7iQJeJGHETu7XrTrkW7RhAZSTWpJKN2ufGQjeAlCyZeKOaJkwtp7y4dC8M4KjVLz7L-1FenhrLC0_ERM1QoTmgAYBKV2sPS6tCjdkCK4PYQo76-U4OdzM_kG2s\\\")\",\"new EmuController(\\\"6007957621675-id_51f2904c3d2240385237667\\\", \\\"AQLVAEr0JNIXHSlB-t1lt9Eixl6c4gkbuzVzVjL2frflXuYtFtrkvniUnm1Ku41tGCz7o3_vAgaHc_cm0KSk80Qn5KeG7SBu4gMjRWo6WTgHRYBuM5oy8HMWqE2Pc679lHqnSR_shRQD-voE8av-VW6uhejuFIKsYxQla8mJLMIcQjP3YwlX6FBEpi3IVDI7GysDpA3w55At5HB5Z4onn49-VAvhzAroPkfTP4ed7wRi6oKUIM0AwqhWvC3FrpzbYJQIbYePYuwGg0CAbWsYVqmHHIDp2LDaZf1MyEHBSB4edMf2GSbcR0dckr9I7r5wjuhr0MNu6x1Sc-gKyyTNy7OlvCvkzo0KCx0W1IEMqrzTB5bUX8tpAHpI2ai-deBrz8z6wERn75PMsjuCU9Y0J1OON89nEwJfV7EEAXRKUUuTa_hVHUV7ivmvG6mIgiU0MnkXdt5V_Yq68vbPMu305u-1HqvHNJG0NAcM2fCCIDcFeYVMgDQEr2FmsPA4pEM_4wzNUrZ0zXILjZEsaEiCfsHAdLK4-vtwErPb4oMyBgM-mw7Q-7Vwz7HcDAQZPCdQwsJuwcxzsevzSdBGTLem4jFqySTOWOqAaNV-Zpe_H-GNPxgrMO6TBdKDo3LC2_XdWwWmZ0_qF8qpZMvxwLLn_iJkUdQiW8CFuM3V18oROQpnqij5FULDzEPAXXPDZgW76SG2ZKac8r_z-40vmvcVwJ5vYBw692SkNfAFr2xZy4r9Q4q0bm64Ynng_cGt3oJE8ACtqbIsrMDpasTUpbDt7YNTJBLwaYHUiyNTeRtZTuLbZuKfsS43LNJyRGrlCRdnG4Hg5wZyWBEbb8RAUQ9LTS75RCdUIv4-QvEGjZQOBQYnK-xUKXm9ee6pYyx5mvDsgVg4u9QuBEvz5rnUUV8Do8JGAkD3POmEw_1OeNp0oRY-N5zuvt8cg6p_ToCKlOlbHkDyzz0xRt1Zuv4t7_6SLlzBFt5ctsFLL_GuXd0l6VrKKb2E9XB3s_uWtGgzMMMth1RxVfm5RhCK-T35_udWEzRHQiE1ZZ7BAtx-Bck8Bvz_rqbXRRIP6OSKdpnu7DK5CnJKNu23VXkM6CwoeAh28lMZzPSyYdJovN7ZUVbWFbSEiHfJtT8pMwvpTsDQDM9DdYJz7eERqAu_C_XDIstBY9camapiI983pIS3A3UEoTMLjb3DmgF8M5WdkJvMv_ca0oMSZg0ZBE-xMNPypKnvrxkzFgiLKBCNk6Gy0ub2919oLCHe0yhL3C533CfOBq7fAQom3JAK21VmnzsndPjbsj24\\\")\",\"new EmuController(\\\"6007651357550-id_51f2904c3d26e5462905510\\\", \\\"AQL1hMzGDmRq_jGTMlTKJmQ1tWzYqTX1hYaAqONxRw3GgGVHJ_gEb1mb_22W5RpjgPEvYQ6iUHKM7Zuyyyv0Cx5BMJPL788LwavUCp3eJO8EIfVcxsQxPEH65GZjzV8kd4cWTTBMtGV-ANChcFXZuY8pHwWEiGUZ037op7NgKVbOrBiq05kvjf9hNdk3-hEsflaGS1qDa89TjbLLOnKvBAXLgKaND10JtJptCNAq_FX7KuYV-WaG8ad1w2eDAqNch7LzuY7MzJT97imgiE0sE-hCSyZ7L7NQaeYtI6MrSEbqfKUe6SRgrrM66reyGiG6ixLR8kY1MdYRUfVJhoTf5lC_vekk8XdUHnTZfwze7pntL0e4WiAIeYIJwwvDxNZHwdWA0M6gXt6fUoyTEIYwqBdeaI2HtSujVcAqzPUNF9hp-m6Yf0xSf-orKOPv1-cxlFkE8qy3BIEzYNyB99gNIfdtaS3YuDT6x4gQIBGW4dnW0gWm88TzKhSkRfIJ8sW8L2PDPQ31mjN9_drR6NUQ0-L7-HrJpT3pTzqjJvdw8HVUwpDalb_MQ76ZhQ4A16iLvdV82D_530cZVYMA_T4Dh8eG4qlJzhU-qV10H6Iho0o47_ZeTJ8QLN_qvlSH9RHC6nsBwS7AAcbOHcAsp8wytPlE6nOrnR33s0ux81AAMhHPs1BKPbiC92mL6F9OAD6GfKPQxmS9g8G0V_8XikoObEJ1QzBF4jXejZ3-QZlUC8erxDfVLI2bOciLhwSefJl62CSFoQSLqzbF9Y5UgWRui190UNVDmRhONFD7ivW6YEX5iuYcY52eWyvQr32D_vA0uQOFRlklRgzNzyRLDmHVThIZYNwK_5JJvpRNLLEk8ILjYNU3inUUT4-SknA3VOUsEm8XNbSvhDuHqaIZKcV0ISy2dNO73ZPV1W1RosDZ_pcjYimQlQNjD-jOkXr-oVAqdwLLzowm2L0naT4FOzFosY28eKIWEkVkg_G0Na62L44u5PngWfy8SAgrfY7ZLEGVvbU4-3Ssh8aquPUTO6M8dNxJzdN0DXyoWJTNwW8GUD8gpqailll2w70R20ZWeSka1HaYxnlv9p_n_dCO64QjzEdPwg0l_3MtQDtx3LGquGoVBlR_neZYW5dKUYXDqEzMd8dMdqM6YcOYkLpE9RR3wAhqJVt-MCp7ZkitmQJ5adNq5_gB6TuQrNQVtY2qaoxckZsbrXlUFN2uEOGw31F0BEKD8FKbuWEyh5vUo5AG0G1Oo6QO1_kc8GJxPEkPXuzF1EwykkwuNPJZTWNJX5f-K_7W\\\")\",\"new EmuController(\\\"6010680301716-id_51f2904c3d2af8e11302550\\\", \\\"AQJo2STH8Z0ZkcKUkpL2hG0UgOJaWQ_5aI4nWcbBbXwIiats8_aOWw7t38eQeUOzjUm131gL2k7B8ZEGOSUev1PnIQ29Cf-nBdHF3y70ivkN1B2vddCIDXIoN_FVZmH3Gyk4b7kEPu3CW39RpTOpADPjnm2LfNsR1NH8mKyrjjnlumXaJlyFbbOY-6vl4bm3XNmWDqWpbTYoYkJympNP4omv2CjnrDHRIXTrlZ91aQJl_oOVqIwapteoL_f0Wun0y8bxRvCZmYuhv87WdsOPxU3qUQzJcz5_hpkUTe0kXMYLqdHwL_1ekLvalEXygQARqQruPs_duth8n2zGqHnDomE6Cljswm4jMbqyyyKqPBeMJ10alWZlu3OyeC4fSZsvmi61BVxLs9JqBrcVbNV3O0MLEOkpDpFfeKMNwCjE-ExA7a_KedWBXgy5UgJWY5IN5KPthKxqV85hIJVQ4HEWTzGIdvtOmWaGGLNawRtfMWzWYoYa2CLGz5urEOfIwVa_s80O-ge0-hNlD0_sIrKmCLx7GtJ5cDjCgq0-KtyH9jVGXuXSyTpa3QwFtP8-iIgtKQ_vix6rOC82Zm1dn0cYHirhDdNRFLweDv-lYIWuUiXj614SxOZbZ_X1yZ6Y7-7DdvCSRTygqg5IArqVfv_g9n6GV-pdpOsOYjzzvnGrOaoBd-OFBY_YosMPZdBf0v34tBecySFUI5MmhFHwYpWWymiNwO-brhC1B0D8H7uUcZ1QR-dJ_z_R7PiMc15qESH87TGB41EP_HSefotdTxSow1t1XbKHcbofloRyKib_44cYTva0Unf0bXDh3nyhotODl9lRz_7X15XlMEuE7333f_8FE4rf7qr253yzjOecOC30o9GXo-Vcth091OhfqhXFLuRcv9tK-KQRqYOFSGPMyBdMC70TMzf2MxkLQVcfBNr2qheCwCENg_4AkXZFd6EGJIeofLNsVd-HkgGWelPJ2r_kq_n7phs27az3W4BEm36v5Rf43IJrZxpONnlWE9SrXCyi_pypjqsBNdzImyIRfRRBK6QN9ziiElkxUJNo9SZS4mnJ0wEKXuhT68l-graHuJf2OJHxRWFucPP5J6BgLrVvRSxFAzwHS04BuLdZwDW6M0ZGauto2kkgAhpD_-fWyseltQc_LKuVb9x9OX6SlDhGv4o-D65T9Yh62x_9GYMwsqXj8wpt02CtXStX8aBevpXR_aZ0zCJxC2Gllqne98B5AJFycvK4aPALPJxk5pwyyFyOoO0Sj-JGxb26r3dJIBE\\\")\",\"new EmuController(\\\"6007882470930-id_51f2904c3d2ef2f25249809\\\", \\\"AQKxDHTm3nyv_XoZgRGgtFyuIx1Dl-9n9KW0L1jI-n5_opSFWrvem0PGojZ7-0RQzO_Tu3Iopn9rwuueiyZ5RFrEsiTTZTDtW5iMmkly6EQLyYfHQodVCV7m8Wvq-wfpSOIQPIHd_g2dXRMVBRH6wAp9bF0Ocv3Vf9hewGLIcMIZMXjU9zH4vh8hPOQxLRh1KfX_eF0__zzpS_2FYUERtJoaHTL3yukbYbhqVMylaq79mmWtMKz2oevMrBL6C9XfDJL8ZQatILXq8rH0GE1wjp6stwakFdPMcymodiW_gBgSIkgqgDoOBg0gTuptQbZQL-vOtG_4tSaE6u0zZ55AkBeWEIxoYaL8gdQxT6QF2gHsXsPY7iMfNhX_kDUz0yiwwoNVsHVNt0d5iGn2pI-nqWFXwXReMNpxMT3Dih2hszZ46hykc4-4efJk0x2y53rLD0aB72b3VNlSvxc2XYux0MeKqhaVZmkZ7IUBo5M3W1OET70-5X_hID2-ZL5vkKVowUbD8PRMRx6794x6_n5bs9DnagwWJv8Z5B6w3YfZK1iRnablKyFNGaiAaVkOi4mdLoFBe-rhRt2ZGi6lRpgh3YphAHVeVeX18YPqSIDfZZpoDkAcmhyd98QHnz4jKpYd09hEsnITc3GhbUKeLLvbevEcgDfVUEp2XdJUpujBFAtEVYuzlJQ6h81g69e7P9Ar2oB2sMbNSLEdXf8BqyRwajlmyL1hmAGXH0ctzJ5ObeQP9cRU-PTUeIB1XyXGwWyzvg5UMHpY5hu0yuyUXmwepvCxgpQoswwF5GrDdhIDifHAH7qdtPm0Ww5OWAuzJrXUrGnS--HM3V5vU7XJu2pw4iXtN3EvWeyo8MOQFrP-xr2JNI5DyLeJteh1Lb0Ax29Ze8XO5OmARtSq3MYMZSfa8AytYsBXQHGrpq7XrdFOV4yw2GV9_PBCux9l-D4yCGDHHNhnS7vVVrv6s5C1Ea4sVx86PN8IbKLoXOeI3Xcob8L9FAlT6-blUkqPMVMxHGREiFQSSh-HzSpiWdME_lqa_DuMhzuuEiDqwaZhuL0dEoJ6dX3bxAnEq7EFiaUwtmPFDAEGBAfgmxjM8OrvQLJTDdGxr_jZWEM7RFz9ATw2CPwMB7Jfxp7RpejOpLo6S4JFKNn3VemDxNDPI2mR83ybvgkApOGautfNG-a1DdbNjTCP5i36NpXyomF5OFRsKmVjRtmIX1xXmidb2pMvlx-XMj8Js1ZWq0Z6HODjep7RHMvMe47C7eD3uzY5m4lVXN9rC34WgXa9387CnFxIBuEj9wHQ\\\")\",],\n id: \"u_0_2s\",\n phase: 4\n});"); |
| // 6704 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s5c91633d102c2c90d2309d9b6304fb8329aa8b87"); |
| // 6705 |
| geval("bigPipe.onPageletArrive({\n display_dependency: [\"pagelet_side_ads\",],\n JSBNG__content: {\n u_0_2s: {\n container_id: \"u_0_47\"\n }\n },\n jsmods: {\n require: [[\"Arbiter\",\"inform\",[],[\"netego_loaded\",null,],],[\"NetEgo\",\"setup\",[],[6011858202131,],],[\"NetEgo\",\"setup\",[],[6007957621675,],],[\"NetEgo\",\"setup\",[],[6007651357550,],],[\"NetEgo\",\"setup\",[],[6010680301716,],],[\"NetEgo\",\"setup\",[],[6007882470930,],],[\"AdblockDetectorLogging\",\"assertUnblocked\",[\"m_0_8f\",],[{\n __m: \"m_0_8f\"\n },],],[\"TimelineController\",\"setAdsTracking\",[],[{\n 6011858202131: \"AQIXjFzVnyt1gEiMA7PSjcl3XmzMZUyVflJXFslG5Of2LEwTXJHqaA9JDrM-zCNYfqyTAu63OtlDGRuHlR3xlp2ypN4yjcGVbl3yDy0u0KPdMvJfxIoE_lcAGP0SpnC0i-IuPNJqTDfbUJ6xmXin26Ek0_2_S1UMwaRFkoMMahhEkeZJO96iHSsBKpPAlgdsWci2r6dRvGMHXI3PRjIZ97dC1AqbYC_P1ipH7Dw3RmQLuWt_vvctnoC3xuVopNkCbG3cp8BWnaFJeag4GCxKxdBDDsxjpNun0bH03qlKDh-81b23skzeT4u2bcA01Epwvl2XH3WedOSxZEd0YCWL1a9iT0mjmzYjc7Ft7zGBEmOYiEPzgAqJ1F4DWAJ42puZS6Nt4iIgXXUq4EE9pFGb4kSS5VLQeWAVfOCRIX-DXFLF4gHoACqiXXSPpHOAk46cLmlfMi_g9Z1dbZVac3y0J6gJGR1A_apUwOzsvUuwWsxn5BbPpjJb1IEy4v3yozT55pt6TYp5uyY4sG2Bn8yb_I2bCePXK_307CTQBKssaOXS7bzgjtc1We7vCI1FC1M5g3wxFfiuGLDoI9V9li55IFWBg-hVHDS8xc5KtiVEIcMt50vjxaljt4-hT2kwTZ-PRPzRXESthjjege4p8hu1y1VUfffWsYtFX6csLvpWL7T7LKySWm8I5wCtjSrTstyzH5hbqnvuixZeYbVKxWblBOPUOMK7PcF8rVk_wWUprzxgH9qeWu2L2EgOqY-avhhtzpOfXufsf0hDHkqPEUt3ZONuytotJuwvXegAdIJ2xyimANjpc82RFZtwjzLXzjPCFHKbfCU4y-EsUez_y-c_zKcGQpwFBmFSXvVt-MKhK0RPTw0rArt8fVcIS3onO1J1CEtsDCaRDKgidaTftd9vc3ajmOPKoN9T2F97ek4Eag_6PdRB24JMPplUFXhkY2fEYkpIi_SVvEYrv-xSnH1ZxdpP\",\n 6007957621675: \"AQLiT5UAYu2pJtLFxGMXsm1qit6S_bG_3r4VKPGonqOKfWV_i5bpwi6-G9k08_EjqZQqXu_GKCw4hM59IAVg-ADYNyME1vc_OM2jc_EfKBRdHAyfZGy2MncQrH9_Kr5acFvHEg8Vu23puqviAeJiZiM-Xq-FhRreO_YBQvFNhOFBGjNFXqgdThBrDMSzdwNDGsr2s7zOycrODxXHyGFwssdoXz_oESdwdq7DWd1aMR8niGA01M9dcc7K3jTVDpJb-H22ROtIk15-_s8OoIjTQ48LoVclQvlFQ6SL8_I5hJ1_aj-TytRnVWi-puF1kMlOrs-rrUgN6DFGZskvxJXBM7uFkaqoWpjiFZzraU2I8QeoghKy9P9jzMZ7fbDicA0RiqpAipuBFwWq1_AoPkinyChGWvQJgxoQ1wOq3O7xs1ECPCrPznwemW29s71GFiTXpneJf92CTj1OnEzgm_UirnJKRKYRVYS4oSxn1CL-VByecFHLVJZvfApbOpd0zFDbuIFADEwuInXPs_a96BDQITJR24h6mtpOy4ifxhm4YBvQPUeTyzUSPLZQkrC2f90kcj-IJ_-OVRNMLy8a8i6dFR8KmD8t4Jr-s1x-ULHDjzAR-YQ1BVEtyPudhpG6kuw8Kv8Ta0L5OC8fFrhFcK8o_WCnXNkGIca_b5ZKcuFT4Sx18NuQJwquQFH48-ifssNT9A6QiTbz28almxVU2lajyuRKxaLVT89dxN3550eVz76tqrY5-oyGQvo06HcE7fscMPKfSzGNTMRPJ8fjwKhHdL6ZpewOs3HboAI7XYHWF6S5spIdGBISwKnaBia7TpwBBNcZmciV_cda36zDiYfskRPRMydypGnN_d-crWWg-Woe2W3CMy2sXFtH1YGA8NXzp7FRi-1SFjJs4m9Lw2ZJVDjR3uOE8Gcj0R6k8tC7fVNUFLH0pUpxUwwgOkXhxX_T3yL7KTd5A_zkC0XDVAXPkcZF\",\n 6007651357550: \"AQJnhWF_HrXnQnvt-wuW04vsf33N17hxZ1VjLLUvG9Oe60mA-Jw5jSjNwBsFwojnTnPKLtCZL1bGEuM8nYwjqOtoGxVEK4GYwkcTLZ5bqi-3bGdgOTUmeKXm7XxPoVIzQ0UeooX4IRreCHIlQ0blVPH4k6HR_HGA6r7tykKBVrwwiwmlUkfV7wNOjGJE7s0qv8krqAf34VlMSHAaqRoMHy2p4O-dLI1qVdZ3ZIo7Cq9VqcyNX7SlOncOiOWE1olligTvWgFr8ccqixOEJgD-RygfXhKV90lMEBWKZ-IAQTu_x1aMufDt03CwTJazAcgPmNB8fkQ9Xm-VLUZCSH6Izny3dyiGYY5jJBj4h0mqZOfACJwfm72Qn6_BCPl3oyyFAXTCdTRIVzGALYoJR6TU4hn8XuU9VdEO8wsHjbW3_-_-S6kLqcE_Is3JlOjuZl05m9JxYQMS7rQdXZWIGi5GYzqoYHaMjPzBG2VAlWls-xJDizZBpFoYdiZSKOUHVbEJ1mlDfzEjyZQYXeFnlA2PQQHxsW4JHrXEPE_vkK1E4j9sWWArpBssI1_HAJIX5T0zfeQXxt7--Vqh2NeYEPC6xFRaeUyz5SJVzlbl04RwaQJBAmtwDzNG8JTIhpm-ueuFFXO1w2Zs3nvD5OvK7jgc5rp4BR0tlI5wuyupdoy9zlK6aU7X7tCmz9-abYeoMSd38u7wsJ8NJFU13iUFJ27gAwouJpdQxPbtA8IjaKPpC3NzXXow0p_MJSQxA5Wqd4oJjrmTiH26QWE3OqA_3v7zDFbD2LlcmX9Sp2BuVa4NX-3S-HkvYRZgvw4uLQECGpKMKAhE6-mM93VOVgL_SYVvkvI7yuIwKQazaERimjCHi1YgueYAQUkXkmYxq1pYayiPRk3ipNeJDa8arzDMyn0nZEE60os7gu5_xYfSiM6dYunwnoDCgc9qxdlB7UOiYn65wqYfVR5skqMUthmleZeb3n24TmCsb2wVa_X4eVICU557AQ\",\n 6010680301716: \"AQL2qB3F7L0VqeptVTsMnpcUoL3qjs0BSi_xgEx2n_XJccsA8l_IRj6UkmnoGmMTxyDdmJLsLw2SaZnDBSBq7V8llr9d8a-ZZkGKsrxmpYzfl5v-k_pmECbGIo16uJk6pKSmueCrzCJBk3-V1qcRE55tBpDxRo05MJemvAjo_hGXDfCgCKYpAi98v_aptZtkrtKtNPdSCz-zsC66BeaDotzzNi1udFeTjTEvcTsHTrk1hBojBiawZx8G12clKtTYGpfm0GDsx9JrvSJ5dzznm0gTUpmWOX-A3NBgvQZz7yMDKU39JqlLOqhXQl-lLK-8MvuqJOu9_cB9oiqS3wBQ5IZ2F7ZqlByWv-PkPxvc8EvMXMb0hrdJjvB8rSzKFbSwiBxe_L_h8zVril-ac0ehJhrGnvd3bmiFivFxiCGLsJojS6HN4BYrTJmlGK6Fi05OOPBqAZbFUNtRX-c7AIg2vdfC4Fqy-gH8B_iAw99e1sNY5-kJdVqreEWHopfgAWYvj2KEJOpIveNWUelU4E9tM0U6idEIUDW-MNyHgSSiqNcurCp0i4ZzoT9fyDtLkbR6NYiE0Mh1DjBVPhYfamTAQaOdtyrngfHjLqOC_WqcOo799w7o5B1eb4fGQY5ce9ZRE872Ht7S9mo9tc9GqgQf5d6Hkr4lCmEuZXstLDrauWmrqKjL7DeQxzyaI6PfkRyEf3Cg4WFIvlJOCoE2RMiKi2s71dWyFobqMH0zB1Z1ER8YCxzIWRynVv6mFqz2mGrC07itBxkNAgmIWyB1iGhN5o1Z7x2mF4kXgcbYbANphaTrCWAI212rSTJosv3uK3p20oAPdT6jr_ZXuPBe6lxaEyaD1OSdAZQEG830KxB09XDl6Towq7WJDqVw-gmsstCbLfR9UErlf0uwrC4wmHzCVjOE2U2ZVGwllIXM5XnIPfqgkTssnlp1J7Ua-MTV3JoJK04iYjGPs_t-7KeFYsjtvaxz\",\n 6007882470930: \"AQL_TwXjNLS-D5mFq2EjKUCtO_gL7WGZ5AvHPkQNEOIqFhvQuD3VhQVQrrZ3rk8sEaQhIZYQ8HVZGvYuERQbxFO5neVKD5BRXP8T1ERz_xymZnvj04ZoV0GSX-ofxRG-SC9Ey6mqJH0Ea2o3ocEO9SK6vPoO7zhH_Z267Y6b3wP7nMhL9qFoA-GJdx7jJOjnS1Cwm4uksA9QAE_h-ixgcjbRZddsngZH8K3kuO6HjOrjAc_o4yXV5WvCEMX1f5ky4Byzzrkx4858Mxh0KnrZY3bShVByJDEPvhA5WNWYM_QnYuIuBeXZ87VP8U7N7LcyfWNAEHA1Q6i3bZ0UGOGskBo9lwBoLnZlYyVcNb4Rr1hf9AaJEttH5lBICh6B89vsFVJNXopPYnk7UmPaVm4je5ZUrLmQ68dGgaReowi4Zoe5w83ndcsTAXmlS6goxhuUR1TiMqEybzvWSzY79r69xCZwmHP244TqwT1NZKRtCEbVSYlcoRbTUiuSopAw3CVfwvy4Fjjheqh4mYHbImJNMUL6BTN-yFXQ9LYsYHzj2EmxnfHnLwFxKbw6i2oe6BJ6n1YWIESRfMsJ5Rb3ag86itkEeJHcTmfoLlGJtAxOHaqXXQKfm8fY3YM0jHAo2kZKA1JDVk8BucobTd75BWeAI_qMXFxF_NU5viMGeafe8xDE4KWhSdA_k5WEfRCiNKNSMFCPdcw7IJpafnUO6vmTwUJlYa69q4USmZQXfnb85hCGcq-ldWa3wMD9aMSkJoe0X507qYvJTyriULhOrUOMVgDHpRh4zAi9a5FuYy6sa6rKTjPix_PuLvUK-sGwHEEz3iUErRTVd5Qc-cMTWBqNlWzw1BZCrsre6DcaxyOWSdOMQzgJr4Efj9XHJgdTfynWKGWusviF3Y_LkoCVmUqGdJOqKZz6ia22T2UAanD1AXZOol2-5mK6Zpgko364cag83gPMmEiqt8Ix4VO4EF3FBI8P\"\n },],],],\n elements: [[\"m_0_8f\",\"u_0_46\",2,],]\n },\n css: [\"veUjj\",\"HgCpx\",\"UmFO+\",],\n bootloadable: {\n },\n resource_map: {\n \"dm/WP\": {\n type: \"js\",\n crossOrigin: 1,\n src: \"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/ys/r/hXdibVSGozY.js\"\n }\n },\n js: [\"OH3xD\",\"dm/WP\",\"f7Tpb\",\"AVmr9\",\"/MWWQ\",\"nxD7O\",],\n JSBNG__onload: [\"new EmuController(\\\"6011858202131-id_51f2904c3d16d9b66803454\\\", \\\"AQKeJQRxXzUhxhbYGaYgYDYhc3hQ30O_gQTSLytMewtlgvobJQH5MuaQJp4_fbqlG5W0Tung-9ZDLu-ztha3uNKKYrj85XEwPZJe-GO5gSUpcbVv7zETufLCcsIh674v1O83EtmtVxQup--XRKCr8pDY6xXlObOVvP0yoR1v_0IsC_JNt4xvJexprbqQTr6TjUMjQqtWJuu_sR7XhSWsgEH77as7rCQK0ip1DLeFa5567J46KjYuY2hQDqbzl6Mn7OvS3aEBGU4eBGAY58-SYeJ3W9bKPJYqCx9Bkwjmr9B41iWSaz5Ki6YhderlMBA9Dfg8s-1uj70k8nthPqKnwV1w5lP8Y0wOJzgBx5REj425joGQHMG-M_8PpRRjctnVo0LFsHvpUwBFLO7MVy5Og1KQZjJbE40w4N-x7jjVGgZq3mmVr1m7FmevdJl8nrJTDv_61sG9Uw4skERHbsU3NMtwgzADe1akrFYllUuYsbHMLFGwEqD3-TfoHOV94O58Hq_kOSziDKTYYmlFw6eNCJjlthWbCrTLAH9HcCNJdJxdyWr9uUWB8uubJXGdnSjD7HJ3aApft4dhnW_AcVsiT0FvlWqla1mQYmmFc0CWULTtH-H1ePnhErOS6wUI-7bUXTGD8Npu2iUdkxK8l13OeUzhoqIw0cZweNRNFpjsV-wt043C0sr5JcldR5ptLS3Ka5X8VOnkoeczYv17rPjOgAzVJvV-RTTZA72Ll0zSKYma-N3NUhZ9x5EZzTYtbw8f9maqVWx7S1WU1AD8h7NcQq0Cl7orO5GHXP_1n1jVkp-KV9rALdyuek_JD5B8TTULG_AZrDe4S1HIPG1FE8wnH8-Q9Iy6s5zKVH2X-xlJNRqaIxNyaGLj0WH9PYYFaQU8YnakM4_r-3nFy6ki7-cEoDZK3qcw7PJCp9w-iSgN9hVe2WFESd0t8pfpI0WTc6lf5ErS0yfqFsj4LPsnQJjr8Ugn3-pX4_51v7LvRfVqnrwBcEJv_da-58RdvJw-hKx6uClKEfzl6Zm4phRloZSqpxb-Zq4UeR34E6ATI9aQYs46sfH5-CilrxxE-gHzA4WxTNGFXv0Nabb01JJVZx0qbuEfSuE--_IiNWgOoF1vr9SiJfYXVQ9ofCEvj6viyzWx1jxp_a1PpUBVzpBMC9ZvXfPuxnrBqF7iQJeJGHETu7XrTrkW7RhAZSTWpJKN2ufGQjeAlCyZeKOaJkwtp7y4dC8M4KjVLz7L-1FenhrLC0_ERM1QoTmgAYBKV2sPS6tCjdkCK4PYQo76-U4OdzM_kG2s\\\")\",\"new EmuController(\\\"6007957621675-id_51f2904c3d2240385237667\\\", \\\"AQLVAEr0JNIXHSlB-t1lt9Eixl6c4gkbuzVzVjL2frflXuYtFtrkvniUnm1Ku41tGCz7o3_vAgaHc_cm0KSk80Qn5KeG7SBu4gMjRWo6WTgHRYBuM5oy8HMWqE2Pc679lHqnSR_shRQD-voE8av-VW6uhejuFIKsYxQla8mJLMIcQjP3YwlX6FBEpi3IVDI7GysDpA3w55At5HB5Z4onn49-VAvhzAroPkfTP4ed7wRi6oKUIM0AwqhWvC3FrpzbYJQIbYePYuwGg0CAbWsYVqmHHIDp2LDaZf1MyEHBSB4edMf2GSbcR0dckr9I7r5wjuhr0MNu6x1Sc-gKyyTNy7OlvCvkzo0KCx0W1IEMqrzTB5bUX8tpAHpI2ai-deBrz8z6wERn75PMsjuCU9Y0J1OON89nEwJfV7EEAXRKUUuTa_hVHUV7ivmvG6mIgiU0MnkXdt5V_Yq68vbPMu305u-1HqvHNJG0NAcM2fCCIDcFeYVMgDQEr2FmsPA4pEM_4wzNUrZ0zXILjZEsaEiCfsHAdLK4-vtwErPb4oMyBgM-mw7Q-7Vwz7HcDAQZPCdQwsJuwcxzsevzSdBGTLem4jFqySTOWOqAaNV-Zpe_H-GNPxgrMO6TBdKDo3LC2_XdWwWmZ0_qF8qpZMvxwLLn_iJkUdQiW8CFuM3V18oROQpnqij5FULDzEPAXXPDZgW76SG2ZKac8r_z-40vmvcVwJ5vYBw692SkNfAFr2xZy4r9Q4q0bm64Ynng_cGt3oJE8ACtqbIsrMDpasTUpbDt7YNTJBLwaYHUiyNTeRtZTuLbZuKfsS43LNJyRGrlCRdnG4Hg5wZyWBEbb8RAUQ9LTS75RCdUIv4-QvEGjZQOBQYnK-xUKXm9ee6pYyx5mvDsgVg4u9QuBEvz5rnUUV8Do8JGAkD3POmEw_1OeNp0oRY-N5zuvt8cg6p_ToCKlOlbHkDyzz0xRt1Zuv4t7_6SLlzBFt5ctsFLL_GuXd0l6VrKKb2E9XB3s_uWtGgzMMMth1RxVfm5RhCK-T35_udWEzRHQiE1ZZ7BAtx-Bck8Bvz_rqbXRRIP6OSKdpnu7DK5CnJKNu23VXkM6CwoeAh28lMZzPSyYdJovN7ZUVbWFbSEiHfJtT8pMwvpTsDQDM9DdYJz7eERqAu_C_XDIstBY9camapiI983pIS3A3UEoTMLjb3DmgF8M5WdkJvMv_ca0oMSZg0ZBE-xMNPypKnvrxkzFgiLKBCNk6Gy0ub2919oLCHe0yhL3C533CfOBq7fAQom3JAK21VmnzsndPjbsj24\\\")\",\"new EmuController(\\\"6007651357550-id_51f2904c3d26e5462905510\\\", \\\"AQL1hMzGDmRq_jGTMlTKJmQ1tWzYqTX1hYaAqONxRw3GgGVHJ_gEb1mb_22W5RpjgPEvYQ6iUHKM7Zuyyyv0Cx5BMJPL788LwavUCp3eJO8EIfVcxsQxPEH65GZjzV8kd4cWTTBMtGV-ANChcFXZuY8pHwWEiGUZ037op7NgKVbOrBiq05kvjf9hNdk3-hEsflaGS1qDa89TjbLLOnKvBAXLgKaND10JtJptCNAq_FX7KuYV-WaG8ad1w2eDAqNch7LzuY7MzJT97imgiE0sE-hCSyZ7L7NQaeYtI6MrSEbqfKUe6SRgrrM66reyGiG6ixLR8kY1MdYRUfVJhoTf5lC_vekk8XdUHnTZfwze7pntL0e4WiAIeYIJwwvDxNZHwdWA0M6gXt6fUoyTEIYwqBdeaI2HtSujVcAqzPUNF9hp-m6Yf0xSf-orKOPv1-cxlFkE8qy3BIEzYNyB99gNIfdtaS3YuDT6x4gQIBGW4dnW0gWm88TzKhSkRfIJ8sW8L2PDPQ31mjN9_drR6NUQ0-L7-HrJpT3pTzqjJvdw8HVUwpDalb_MQ76ZhQ4A16iLvdV82D_530cZVYMA_T4Dh8eG4qlJzhU-qV10H6Iho0o47_ZeTJ8QLN_qvlSH9RHC6nsBwS7AAcbOHcAsp8wytPlE6nOrnR33s0ux81AAMhHPs1BKPbiC92mL6F9OAD6GfKPQxmS9g8G0V_8XikoObEJ1QzBF4jXejZ3-QZlUC8erxDfVLI2bOciLhwSefJl62CSFoQSLqzbF9Y5UgWRui190UNVDmRhONFD7ivW6YEX5iuYcY52eWyvQr32D_vA0uQOFRlklRgzNzyRLDmHVThIZYNwK_5JJvpRNLLEk8ILjYNU3inUUT4-SknA3VOUsEm8XNbSvhDuHqaIZKcV0ISy2dNO73ZPV1W1RosDZ_pcjYimQlQNjD-jOkXr-oVAqdwLLzowm2L0naT4FOzFosY28eKIWEkVkg_G0Na62L44u5PngWfy8SAgrfY7ZLEGVvbU4-3Ssh8aquPUTO6M8dNxJzdN0DXyoWJTNwW8GUD8gpqailll2w70R20ZWeSka1HaYxnlv9p_n_dCO64QjzEdPwg0l_3MtQDtx3LGquGoVBlR_neZYW5dKUYXDqEzMd8dMdqM6YcOYkLpE9RR3wAhqJVt-MCp7ZkitmQJ5adNq5_gB6TuQrNQVtY2qaoxckZsbrXlUFN2uEOGw31F0BEKD8FKbuWEyh5vUo5AG0G1Oo6QO1_kc8GJxPEkPXuzF1EwykkwuNPJZTWNJX5f-K_7W\\\")\",\"new EmuController(\\\"6010680301716-id_51f2904c3d2af8e11302550\\\", \\\"AQJo2STH8Z0ZkcKUkpL2hG0UgOJaWQ_5aI4nWcbBbXwIiats8_aOWw7t38eQeUOzjUm131gL2k7B8ZEGOSUev1PnIQ29Cf-nBdHF3y70ivkN1B2vddCIDXIoN_FVZmH3Gyk4b7kEPu3CW39RpTOpADPjnm2LfNsR1NH8mKyrjjnlumXaJlyFbbOY-6vl4bm3XNmWDqWpbTYoYkJympNP4omv2CjnrDHRIXTrlZ91aQJl_oOVqIwapteoL_f0Wun0y8bxRvCZmYuhv87WdsOPxU3qUQzJcz5_hpkUTe0kXMYLqdHwL_1ekLvalEXygQARqQruPs_duth8n2zGqHnDomE6Cljswm4jMbqyyyKqPBeMJ10alWZlu3OyeC4fSZsvmi61BVxLs9JqBrcVbNV3O0MLEOkpDpFfeKMNwCjE-ExA7a_KedWBXgy5UgJWY5IN5KPthKxqV85hIJVQ4HEWTzGIdvtOmWaGGLNawRtfMWzWYoYa2CLGz5urEOfIwVa_s80O-ge0-hNlD0_sIrKmCLx7GtJ5cDjCgq0-KtyH9jVGXuXSyTpa3QwFtP8-iIgtKQ_vix6rOC82Zm1dn0cYHirhDdNRFLweDv-lYIWuUiXj614SxOZbZ_X1yZ6Y7-7DdvCSRTygqg5IArqVfv_g9n6GV-pdpOsOYjzzvnGrOaoBd-OFBY_YosMPZdBf0v34tBecySFUI5MmhFHwYpWWymiNwO-brhC1B0D8H7uUcZ1QR-dJ_z_R7PiMc15qESH87TGB41EP_HSefotdTxSow1t1XbKHcbofloRyKib_44cYTva0Unf0bXDh3nyhotODl9lRz_7X15XlMEuE7333f_8FE4rf7qr253yzjOecOC30o9GXo-Vcth091OhfqhXFLuRcv9tK-KQRqYOFSGPMyBdMC70TMzf2MxkLQVcfBNr2qheCwCENg_4AkXZFd6EGJIeofLNsVd-HkgGWelPJ2r_kq_n7phs27az3W4BEm36v5Rf43IJrZxpONnlWE9SrXCyi_pypjqsBNdzImyIRfRRBK6QN9ziiElkxUJNo9SZS4mnJ0wEKXuhT68l-graHuJf2OJHxRWFucPP5J6BgLrVvRSxFAzwHS04BuLdZwDW6M0ZGauto2kkgAhpD_-fWyseltQc_LKuVb9x9OX6SlDhGv4o-D65T9Yh62x_9GYMwsqXj8wpt02CtXStX8aBevpXR_aZ0zCJxC2Gllqne98B5AJFycvK4aPALPJxk5pwyyFyOoO0Sj-JGxb26r3dJIBE\\\")\",\"new EmuController(\\\"6007882470930-id_51f2904c3d2ef2f25249809\\\", \\\"AQKxDHTm3nyv_XoZgRGgtFyuIx1Dl-9n9KW0L1jI-n5_opSFWrvem0PGojZ7-0RQzO_Tu3Iopn9rwuueiyZ5RFrEsiTTZTDtW5iMmkly6EQLyYfHQodVCV7m8Wvq-wfpSOIQPIHd_g2dXRMVBRH6wAp9bF0Ocv3Vf9hewGLIcMIZMXjU9zH4vh8hPOQxLRh1KfX_eF0__zzpS_2FYUERtJoaHTL3yukbYbhqVMylaq79mmWtMKz2oevMrBL6C9XfDJL8ZQatILXq8rH0GE1wjp6stwakFdPMcymodiW_gBgSIkgqgDoOBg0gTuptQbZQL-vOtG_4tSaE6u0zZ55AkBeWEIxoYaL8gdQxT6QF2gHsXsPY7iMfNhX_kDUz0yiwwoNVsHVNt0d5iGn2pI-nqWFXwXReMNpxMT3Dih2hszZ46hykc4-4efJk0x2y53rLD0aB72b3VNlSvxc2XYux0MeKqhaVZmkZ7IUBo5M3W1OET70-5X_hID2-ZL5vkKVowUbD8PRMRx6794x6_n5bs9DnagwWJv8Z5B6w3YfZK1iRnablKyFNGaiAaVkOi4mdLoFBe-rhRt2ZGi6lRpgh3YphAHVeVeX18YPqSIDfZZpoDkAcmhyd98QHnz4jKpYd09hEsnITc3GhbUKeLLvbevEcgDfVUEp2XdJUpujBFAtEVYuzlJQ6h81g69e7P9Ar2oB2sMbNSLEdXf8BqyRwajlmyL1hmAGXH0ctzJ5ObeQP9cRU-PTUeIB1XyXGwWyzvg5UMHpY5hu0yuyUXmwepvCxgpQoswwF5GrDdhIDifHAH7qdtPm0Ww5OWAuzJrXUrGnS--HM3V5vU7XJu2pw4iXtN3EvWeyo8MOQFrP-xr2JNI5DyLeJteh1Lb0Ax29Ze8XO5OmARtSq3MYMZSfa8AytYsBXQHGrpq7XrdFOV4yw2GV9_PBCux9l-D4yCGDHHNhnS7vVVrv6s5C1Ea4sVx86PN8IbKLoXOeI3Xcob8L9FAlT6-blUkqPMVMxHGREiFQSSh-HzSpiWdME_lqa_DuMhzuuEiDqwaZhuL0dEoJ6dX3bxAnEq7EFiaUwtmPFDAEGBAfgmxjM8OrvQLJTDdGxr_jZWEM7RFz9ATw2CPwMB7Jfxp7RpejOpLo6S4JFKNn3VemDxNDPI2mR83ybvgkApOGautfNG-a1DdbNjTCP5i36NpXyomF5OFRsKmVjRtmIX1xXmidb2pMvlx-XMj8Js1ZWq0Z6HODjep7RHMvMe47C7eD3uzY5m4lVXN9rC34WgXa9387CnFxIBuEj9wHQ\\\")\",],\n id: \"u_0_2s\",\n phase: 4\n});"); |
| // 6711 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"bigPipe.onPageletArrive({\n id: \"\",\n phase: 4,\n jsmods: {\n require: [[\"TimelineContentLoader\",\"setParallelLoadConfig\",[],[{\n required_units: 5,\n max_parallelism: 3\n },],],]\n },\n is_last: true,\n css: [\"veUjj\",\"UmFO+\",\"c6lUE\",\"za92D\",\"j1x0z\",\"tKv6W\",\"ynBUm\",\"tAd6o\",],\n bootloadable: {\n },\n resource_map: {\n },\n js: [\"OH3xD\",\"XH2Cu\",\"ociRJ\",\"AVmr9\",\"I+n09\",\"4vv8/\",\"zBhY6\",\"f7Tpb\",\"OSd/n\",\"+P3v8\",\"js0se\",\"BjpNB\",\"/MWWQ\",\"G3fzU\",\"mBpeN\",\"C6rJk\",\"97Zhe\",\"nxD7O\",\"xfhln\",],\n displayJS: [\"OH3xD\",],\n the_end: true\n});"); |
| // 6712 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s5c2d8a11f85516eb62851a399b106220268b7047"); |
| // 6713 |
| geval("bigPipe.onPageletArrive({\n id: \"\",\n phase: 4,\n jsmods: {\n require: [[\"TimelineContentLoader\",\"setParallelLoadConfig\",[],[{\n required_units: 5,\n max_parallelism: 3\n },],],]\n },\n is_last: true,\n css: [\"veUjj\",\"UmFO+\",\"c6lUE\",\"za92D\",\"j1x0z\",\"tKv6W\",\"ynBUm\",\"tAd6o\",],\n bootloadable: {\n },\n resource_map: {\n },\n js: [\"OH3xD\",\"XH2Cu\",\"ociRJ\",\"AVmr9\",\"I+n09\",\"4vv8/\",\"zBhY6\",\"f7Tpb\",\"OSd/n\",\"+P3v8\",\"js0se\",\"BjpNB\",\"/MWWQ\",\"G3fzU\",\"mBpeN\",\"C6rJk\",\"97Zhe\",\"nxD7O\",\"xfhln\",],\n displayJS: [\"OH3xD\",],\n the_end: true\n});"); |
| // 6721 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_231[0], o0,o72); |
| // undefined |
| o0 = null; |
| // undefined |
| o72 = null; |
| // 7308 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_234[0](o94); |
| // undefined |
| o94 = null; |
| // 8159 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"I+n09\",]);\n}\n;\n__d(\"legacy:connect-xd\", [\"XD\",], function(a, b, c, d) {\n a.UnverifiedXD = b(\"XD\").UnverifiedXD;\n a.XD = b(\"XD\").XD;\n}, 3);\n__d(\"legacy:onload-action\", [\"OnloadHooks\",], function(a, b, c, d) {\n var e = b(\"OnloadHooks\");\n a._onloadHook = e._onloadHook;\n a._onafterloadHook = e._onafterloadHook;\n a.runHook = e.runHook;\n a.runHooks = e.runHooks;\n a.keep_window_set_as_loaded = e.keepWindowSetAsLoaded;\n}, 3);\n__d(\"Base64\", [], function(a, b, c, d, e, f) {\n var g = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";\n function h(l) {\n l = ((((l.charCodeAt(0) << 16)) | ((l.charCodeAt(1) << 8))) | l.charCodeAt(2));\n return String.fromCharCode(g.charCodeAt((l >>> 18)), g.charCodeAt((((l >>> 12)) & 63)), g.charCodeAt((((l >>> 6)) & 63)), g.charCodeAt((l & 63)));\n };\n var i = ((\"\\u003E___?456789:;\\u003C=_______\" + \"\\u0000\\u0001\\u0002\\u0003\\u0004\\u0005\\u0006\\u0007\\u0008\\u0009\\u000a\\u000b\\u000c\\u000d\\u000e\\u000f\\u0010\\u0011\\u0012\\u0013\\u0014\\u0015\\u0016\\u0017\\u0018\\u0019\") + \"______\\u001a\\u001b\\u001c\\u001d\\u001e\\u001f !\\\"#$%&'()*+,-./0123\");\n function j(l) {\n l = (((((i.charCodeAt((l.charCodeAt(0) - 43)) << 18)) | ((i.charCodeAt((l.charCodeAt(1) - 43)) << 12))) | ((i.charCodeAt((l.charCodeAt(2) - 43)) << 6))) | i.charCodeAt((l.charCodeAt(3) - 43)));\n return String.fromCharCode((l >>> 16), (((l >>> 8)) & 255), (l & 255));\n };\n var k = {\n encode: function(l) {\n l = unescape(encodeURI(l));\n var m = (((l.length + 2)) % 3);\n l = ((l + \"\\u0000\\u0000\".slice(m))).replace(/[\\s\\S]{3}/g, h);\n return (l.slice(0, ((l.length + m) - 2)) + \"==\".slice(m));\n },\n decode: function(l) {\n l = l.replace(/[^A-Za-z0-9+\\/]/g, \"\");\n var m = (((l.length + 3)) & 3);\n l = ((l + \"AAA\".slice(m))).replace(/..../g, j);\n l = l.slice(0, ((l.length + m) - 3));\n try {\n return decodeURIComponent(escape(l));\n } catch (n) {\n throw new Error(\"Not valid UTF-8\");\n };\n },\n encodeObject: function(l) {\n return k.encode(JSON.stringify(l));\n },\n decodeObject: function(l) {\n return JSON.parse(k.decode(l));\n },\n encodeNums: function(l) {\n return String.fromCharCode.apply(String, l.map(function(m) {\n return g.charCodeAt(((((m | -((m > 63)))) & -((m > 0))) & 63));\n }));\n }\n };\n e.exports = k;\n});\n__d(\"ClickRefUtils\", [], function(a, b, c, d, e, f) {\n var g = {\n get_intern_ref: function(h) {\n if (!!h) {\n var i = {\n profile_minifeed: 1,\n gb_content_and_toolbar: 1,\n gb_muffin_area: 1,\n ego: 1,\n bookmarks_menu: 1,\n jewelBoxNotif: 1,\n jewelNotif: 1,\n BeeperBox: 1,\n navSearch: 1\n };\n for (var j = h; (j && (j != document.body)); j = j.parentNode) {\n if ((!j.id || (typeof j.id !== \"string\"))) {\n continue;\n };\n if ((j.id.substr(0, 8) == \"pagelet_\")) {\n return j.id.substr(8)\n };\n if ((j.id.substr(0, 8) == \"box_app_\")) {\n return j.id\n };\n if (i[j.id]) {\n return j.id\n };\n };\n }\n ;\n return \"-\";\n },\n get_href: function(h) {\n var i = (((((h.getAttribute && ((h.getAttribute(\"ajaxify\") || h.getAttribute(\"data-endpoint\")))) || h.action) || h.href) || h.name));\n return ((typeof i === \"string\") ? i : null);\n },\n should_report: function(h, i) {\n if ((i == \"FORCE\")) {\n return true\n };\n if ((i == \"INDIRECT\")) {\n return false\n };\n return (h && ((g.get_href(h) || ((h.getAttribute && h.getAttribute(\"data-ft\"))))));\n }\n };\n e.exports = g;\n});\n__d(\"setUECookie\", [\"Env\",], function(a, b, c, d, e, f) {\n var g = b(\"Env\");\n function h(i) {\n if (!g.no_cookies) {\n document.cookie = (((\"act=\" + encodeURIComponent(i)) + \"; path=/; domain=\") + window.location.hostname.replace(/^.*(\\.facebook\\..*)$/i, \"$1\"));\n };\n };\n e.exports = h;\n});\n__d(\"ClickRefLogger\", [\"Arbiter\",\"EagleEye\",\"ClickRefUtils\",\"collectDataAttributes\",\"copyProperties\",\"ge\",\"setUECookie\",\"$\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"EagleEye\"), i = b(\"ClickRefUtils\"), j = b(\"collectDataAttributes\"), k = b(\"copyProperties\"), l = b(\"ge\"), m = b(\"setUECookie\"), n = b(\"$\");\n function o(q) {\n if (!l(\"content\")) {\n return [0,0,0,0,]\n };\n var r = n(\"content\"), s = (a.Vector2 ? a.Vector2.getEventPosition(q) : {\n x: 0,\n y: 0\n });\n return [s.x,s.y,r.offsetLeft,r.clientWidth,];\n };\n function p(q, r, event, s) {\n var t = ((!a.ArbiterMonitor) ? \"r\" : \"a\"), u = [0,0,0,0,], v, w, x;\n if (!!event) {\n v = event.type;\n if (((v == \"click\") && l(\"content\"))) {\n u = o(event);\n };\n var y = 0;\n (event.ctrlKey && (y += 1));\n (event.shiftKey && (y += 2));\n (event.altKey && (y += 4));\n (event.metaKey && (y += 8));\n if (y) {\n v += y;\n };\n }\n ;\n if (!!r) {\n w = i.get_href(r);\n };\n var z = [];\n if (a.ArbiterMonitor) {\n x = a.ArbiterMonitor.getInternRef(r);\n z = a.ArbiterMonitor.getActFields();\n }\n ;\n var aa = j((!!event ? ((event.target || event.srcElement)) : r), [\"ft\",\"gt\",]);\n k(aa.ft, (s.ft || {\n }));\n k(aa.gt, (s.gt || {\n }));\n if ((typeof (aa.ft.ei) === \"string\")) {\n delete aa.ft.ei;\n };\n var ba = [q._ue_ts,q._ue_count,(w || \"-\"),q._context,(v || \"-\"),(x || i.get_intern_ref(r)),t,(a.URI ? a.URI.getRequestURI(true, true).getUnqualifiedURI().toString() : ((location.pathname + location.search) + location.hash)),aa,].concat(u).concat(z);\n return ba;\n };\n g.subscribe(\"ClickRefAction/new\", function(q, r) {\n if (i.should_report(r.node, r.mode)) {\n var s = p(r.cfa, r.node, r.event, r.extra_data);\n m(r.cfa.ue);\n h.log(\"act\", s);\n if (window.chromePerfExtension) {\n window.postMessage({\n clickRef: JSON.stringify(s)\n }, window.location.origin);\n };\n }\n ;\n });\n});\n__d(\"QuicklingAugmenter\", [\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"URI\"), h = [], i = {\n addHandler: function(j) {\n h.push(j);\n },\n augmentURI: function(j) {\n var k = [], l = g(j);\n h.forEach(function(m) {\n var n = m(l);\n if (!n) {\n return l\n };\n k.push(m);\n l = l.addQueryData(n);\n });\n h = k;\n return l;\n }\n };\n e.exports = i;\n});\n__d(\"Quickling\", [\"AjaxPipeRequest\",\"Arbiter\",\"Class\",\"CSSClassTransition\",\"DocumentTitle\",\"DOM\",\"ErrorUtils\",\"HTML\",\"OnloadHooks\",\"PageTransitions\",\"QuicklingAugmenter\",\"Run\",\"URI\",\"UserAgent\",\"copyProperties\",\"goOrReplace\",\"isEmpty\",\"QuicklingConfig\",], function(a, b, c, d, e, f) {\n var g = b(\"AjaxPipeRequest\"), h = b(\"Arbiter\"), i = b(\"Class\"), j = b(\"CSSClassTransition\"), k = b(\"DocumentTitle\"), l = b(\"DOM\"), m = b(\"ErrorUtils\"), n = b(\"HTML\"), o = b(\"OnloadHooks\"), p = b(\"PageTransitions\"), q = b(\"QuicklingAugmenter\"), r = b(\"Run\"), s = b(\"URI\"), t = b(\"UserAgent\"), u = b(\"copyProperties\"), v = b(\"goOrReplace\"), w = b(\"isEmpty\"), x = b(\"QuicklingConfig\"), y = x.version, z = x.sessionLength, aa = new RegExp(x.inactivePageRegex), ba = 0, ca, da = \"\", ea = {\n isActive: function() {\n return true;\n },\n isPageActive: function(la) {\n if ((la == \"#\")) {\n return false\n };\n la = new s(la);\n if ((la.getDomain() && (la.getDomain() != s().getDomain()))) {\n return false\n };\n if ((la.getPath() == \"/l.php\")) {\n var ma = la.getQueryData().u;\n if (ma) {\n ma = s(unescape(ma)).getDomain();\n if ((ma && (ma != s().getDomain()))) {\n return false\n };\n }\n ;\n }\n ;\n var na = la.getPath(), oa = la.getQueryData();\n if (!w(oa)) {\n na += (\"?\" + s.implodeQuery(oa));\n };\n return !aa.test(na);\n },\n getLoadCount: function() {\n return ba;\n }\n };\n function fa(la) {\n la = (la || \"Facebook\");\n k.set(la);\n if (t.ie()) {\n da = la;\n if (!ca) {\n ca = window.setInterval(function() {\n var ma = da, na = k.get();\n if ((ma != na)) {\n k.set(ma);\n };\n }, 5000, false);\n };\n }\n ;\n };\n function ga(la) {\n var ma = document.getElementsByTagName(\"link\");\n for (var na = 0; (na < ma.length); ++na) {\n if ((ma[na].rel != \"alternate\")) {\n continue;\n };\n l.remove(ma[na]);\n };\n if (la.length) {\n var oa = l.find(document, \"head\");\n (oa && l.appendContent(oa, n(la[0])));\n }\n ;\n };\n function ha(la) {\n var ma = {\n version: y\n };\n this.parent.construct(this, la, {\n quickling: ma\n });\n };\n i.extend(ha, g);\n u(ha.prototype, {\n _preBootloadFirstResponse: function(la) {\n return true;\n },\n _fireDomContentCallback: function() {\n (this._request.cavalry && this._request.cavalry.setTimeStamp(\"t_domcontent\"));\n p.transitionComplete();\n (this._onPageDisplayed && this._onPageDisplayed(this.pipe));\n this.parent._fireDomContentCallback();\n },\n _fireOnloadCallback: function() {\n if (this._request.cavalry) {\n this._request.cavalry.setTimeStamp(\"t_hooks\");\n this._request.cavalry.setTimeStamp(\"t_layout\");\n this._request.cavalry.setTimeStamp(\"t_onload\");\n }\n ;\n this.parent._fireOnloadCallback();\n },\n isPageActive: function(la) {\n return ea.isPageActive(la);\n },\n _versionCheck: function(la) {\n if ((la.version == y)) {\n return true\n };\n var ma = [\"quickling\",\"ajaxpipe\",\"ajaxpipe_token\",];\n v(window.location, s(la.uri).removeQueryData(ma), true);\n return false;\n },\n _processFirstResponse: function(la) {\n var ma = la.getPayload();\n fa(ma.title);\n ga((ma.syndication || []));\n window.scrollTo(0, 0);\n j.go(document.body, (ma.body_class || \"\"), p.getMostRecentURI(), la.getRequest().getURI());\n h.inform(\"quickling/response\");\n },\n getSanitizedParameters: function() {\n return [\"quickling\",];\n }\n });\n function ia() {\n ba++;\n return (ba >= z);\n };\n function ja(la) {\n g.setCurrentRequest(null);\n if (ia()) {\n return false\n };\n la = q.augmentURI(la);\n if (!ea.isPageActive(la)) {\n return false\n };\n window.ExitTime = Date.now();\n r.__removeHook(\"onafterloadhooks\");\n r.__removeHook(\"onloadhooks\");\n o.runHooks(\"onleavehooks\");\n h.inform(\"onload/exit\", true);\n new ha(la).setCanvasId(\"content\").send();\n return true;\n };\n function ka(la) {\n var ma = window[la];\n function na(oa, pa, qa) {\n if ((typeof oa !== \"function\")) {\n oa = eval.bind(null, oa);\n };\n var ra = ma(m.guard(oa), pa);\n if ((pa > 0)) {\n if ((qa !== false)) {\n r.onLeave(function() {\n clearInterval(ra);\n });\n }\n };\n return ra;\n };\n window[la] = na;\n };\n r.onAfterLoad(function la() {\n ka(\"setInterval\");\n ka(\"setTimeout\");\n p.registerHandler(ja, 1);\n });\n e.exports = a.Quickling = ea;\n});\n__d(\"StringTransformations\", [], function(a, b, c, d, e, f) {\n e.exports = {\n unicodeEscape: function(g) {\n return g.replace(/[^A-Za-z0-9\\-\\.\\:\\_\\$\\/\\+\\=]/g, function(h) {\n var i = h.charCodeAt().toString(16);\n return (\"\\\\u\" + ((\"0000\" + i.toUpperCase())).slice(-4));\n });\n },\n unicodeUnescape: function(g) {\n return g.replace(/(\\\\u[0-9A-Fa-f]{4})/g, function(h) {\n return String.fromCharCode(parseInt(h.slice(2), 16));\n });\n }\n };\n});\n__d(\"UserActionHistory\", [\"Arbiter\",\"ClickRefUtils\",\"ScriptPath\",\"throttle\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ClickRefUtils\"), i = b(\"ScriptPath\"), j = b(\"throttle\"), k = {\n click: 1,\n submit: 1\n }, l = false, m = {\n log: [],\n len: 0\n }, n = j.acrossTransitions(function() {\n try {\n l._ua_log = JSON.stringify(m);\n } catch (q) {\n l = false;\n };\n }, 1000);\n function o() {\n try {\n if (a.sessionStorage) {\n l = a.sessionStorage;\n (l._ua_log && (m = JSON.parse(l._ua_log)));\n }\n ;\n } catch (q) {\n l = false;\n };\n m.log[(m.len % 10)] = {\n ts: Date.now(),\n path: \"-\",\n index: m.len,\n type: \"init\",\n iref: \"-\"\n };\n m.len++;\n g.subscribe(\"UserAction/new\", function(r, s) {\n var t = s.ua, u = s.node, event = s.event;\n if ((!event || !((event.type in k)))) {\n return\n };\n var v = {\n path: i.getScriptPath(),\n type: event.type,\n ts: t._ue_ts,\n iref: (h.get_intern_ref(u) || \"-\"),\n index: m.len\n };\n m.log[(m.len++ % 10)] = v;\n (l && n());\n });\n };\n function p() {\n return m.log.sort(function(q, r) {\n return (((r.ts != q.ts)) ? ((r.ts - q.ts)) : ((r.index - q.index)));\n });\n };\n o();\n e.exports = {\n getHistory: p\n };\n});\n__d(\"TinyViewport\", [\"Arbiter\",\"CSS\",\"DOM\",\"Event\",\"queryThenMutateDOM\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"CSS\"), i = b(\"DOM\"), j = b(\"Event\"), k = b(\"queryThenMutateDOM\"), l = document.documentElement, m, n, o = k.bind(null, function() {\n n = (n || i.getDocumentScrollElement());\n m = ((l.clientHeight < 400) || (l.clientWidth < n.scrollWidth));\n }, function() {\n h.conditionClass(l, \"tinyViewport\", m);\n h.conditionClass(l, \"canHaveFixedElements\", !m);\n }, \"TinyViewport\");\n o();\n g.subscribe(\"quickling/response\", o);\n j.listen(window, \"resize\", o);\n});\n__d(\"TimeSpentArray\", [\"Banzai\",\"pageID\",], function(a, b, c, d, e, f) {\n var g = b(\"Banzai\"), h = b(\"pageID\"), i = 2, j = (i * 32), k = 1500, l, m, n, o, p, q, r, s, t;\n function u() {\n if (l) {\n var ca = Date.now();\n if ((ca > p)) {\n r = Math.min(j, Math.ceil((((ca / 1000)) - o)));\n };\n var da = z();\n if (da) {\n l(da);\n };\n }\n ;\n y();\n };\n function v() {\n w();\n m = setTimeout(u, ((n * 1000) + k), false);\n };\n function w() {\n if (m) {\n clearTimeout(m);\n m = null;\n }\n ;\n };\n function x(ca) {\n o = ca;\n p = (o * 1000);\n q = [1,];\n for (var da = 1; (da < i); da++) {\n q.push(0);;\n };\n r = 1;\n s += 1;\n t += 1;\n v();\n };\n function y() {\n w();\n q = null;\n n = j;\n };\n function z() {\n if (!q) {\n return null\n };\n return {\n tos_id: h,\n start_time: o,\n tos_array: q.slice(0),\n tos_len: r,\n tos_seq: t,\n tos_cum: s\n };\n };\n function aa(ca) {\n if (((ca >= p) && (((ca - p)) < 1000))) {\n return\n };\n ba(Math.floor((ca / 1000)));\n };\n function ba(ca) {\n var da = (ca - o);\n if (((da < 0) || (da >= j))) {\n u();\n };\n if (!q) {\n x(ca);\n }\n else {\n q[(da >> 5)] |= ((1 << ((da & 31))));\n r = (da + 1);\n s += 1;\n p = (ca * 1000);\n }\n ;\n };\n e.exports = {\n init: function(ca, da) {\n s = 0;\n t = -1;\n l = ca;\n n = (da || j);\n x(Math.floor((Date.now() / 1000)));\n g.subscribe(g.SHUTDOWN, u);\n },\n update: function(ca) {\n aa(ca);\n },\n get: function() {\n return z();\n },\n ship: function() {\n u();\n },\n reset: function() {\n y();\n }\n };\n});\n__d(\"WebStorageMonster\", [\"Event\",\"AsyncRequest\",\"UserActivity\",\"StringTransformations\",\"arrayContains\",\"setTimeoutAcrossTransitions\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"AsyncRequest\"), i = b(\"UserActivity\"), j = b(\"StringTransformations\"), k = b(\"arrayContains\"), l = b(\"setTimeoutAcrossTransitions\"), m = 300000, n = false;\n function o(t) {\n var u = {\n };\n for (var v in t) {\n var w = t.getItem(v), x = j.unicodeEscape(v);\n if ((typeof w === \"string\")) {\n u[x] = w.length;\n };\n };\n return u;\n };\n function p(t) {\n if ((a.localStorage && t.keys)) {\n s._getLocalStorageKeys().forEach(function(u) {\n if (k(t.keys, u)) {\n a.localStorage.removeItem(u);\n };\n });\n };\n };\n function q(t) {\n if (a.localStorage) {\n s._getLocalStorageKeys().forEach(function(u) {\n if (!t.some(function(v) {\n return new RegExp(v).test(u);\n })) {\n a.localStorage.removeItem(u);\n };\n });\n };\n if (a.sessionStorage) {\n a.sessionStorage.clear();\n };\n };\n function r(t) {\n if (i.isActive(m)) {\n l(r.curry(t), m);\n }\n else s.cleanNow(t);\n ;\n };\n var s = {\n registerLogoutForm: function(t, u) {\n g.listen(t, \"submit\", function(v) {\n s.cleanOnLogout(u);\n });\n },\n schedule: function(t) {\n if (n) {\n return\n };\n n = true;\n r(t);\n },\n cleanNow: function(t) {\n var u = Date.now(), v = {\n }, w = false;\n [\"localStorage\",\"sessionStorage\",].forEach(function(y) {\n if (a[y]) {\n v[y] = o(a[y]);\n w = true;\n }\n ;\n });\n var x = Date.now();\n v.logtime = (x - u);\n if (w) {\n new h(\"/ajax/webstorage/process_keys.php\").setData(v).setHandler(function(y) {\n if (!t) {\n var z = y.getPayload();\n if (z.keys) {\n z.keys = z.keys.map(j.unicodeUnescape);\n };\n p(z);\n }\n ;\n }.bind(this)).send();\n };\n },\n cleanOnLogout: function(t) {\n if (t) {\n q(t);\n };\n if (a.sessionStorage) {\n a.sessionStorage.clear();\n };\n },\n _getLocalStorageKeys: Object.keys.curry(a.localStorage)\n };\n e.exports = s;\n});"); |
| // 8160 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"sb400e2fc5b4578cec05af7646f5430d8d67f9e1b"); |
| // 8161 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"I+n09\",]);\n}\n;\n;\n__d(\"legacy:connect-xd\", [\"XD\",], function(a, b, c, d) {\n a.UnverifiedXD = b(\"XD\").UnverifiedXD;\n a.XD = b(\"XD\").XD;\n}, 3);\n__d(\"legacy:onload-action\", [\"OnloadHooks\",], function(a, b, c, d) {\n var e = b(\"OnloadHooks\");\n a._onloadHook = e._onloadHook;\n a._onafterloadHook = e._onafterloadHook;\n a.runHook = e.runHook;\n a.runHooks = e.runHooks;\n a.keep_window_set_as_loaded = e.keepWindowSetAsLoaded;\n}, 3);\n__d(\"Base64\", [], function(a, b, c, d, e, f) {\n var g = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";\n function h(l) {\n l = ((((((l.charCodeAt(0) << 16)) | ((l.charCodeAt(1) << 8)))) | l.charCodeAt(2)));\n return String.fromCharCode(g.charCodeAt(((l >>> 18))), g.charCodeAt(((((l >>> 12)) & 63))), g.charCodeAt(((((l >>> 6)) & 63))), g.charCodeAt(((l & 63))));\n };\n;\n var i = ((((\"\\u003E___?456789:;\\u003C=_______\" + \"\\u0000\\u0001\\u0002\\u0003\\u0004\\u0005\\u0006\\u0007\\u0008\\u0009\\u000a\\u000b\\u000c\\u000d\\u000e\\u000f\\u0010\\u0011\\u0012\\u0013\\u0014\\u0015\\u0016\\u0017\\u0018\\u0019\")) + \"______\\u001a\\u001b\\u001c\\u001d\\u001e\\u001f !\\\"#$%&'()*+,-./0123\"));\n function j(l) {\n l = ((((((((i.charCodeAt(((l.charCodeAt(0) - 43))) << 18)) | ((i.charCodeAt(((l.charCodeAt(1) - 43))) << 12)))) | ((i.charCodeAt(((l.charCodeAt(2) - 43))) << 6)))) | i.charCodeAt(((l.charCodeAt(3) - 43)))));\n return String.fromCharCode(((l >>> 16)), ((((l >>> 8)) & 255)), ((l & 255)));\n };\n;\n var k = {\n encode: function(l) {\n l = unescape(encodeURI(l));\n var m = ((((l.length + 2)) % 3));\n l = ((l + \"\\u0000\\u0000\".slice(m))).replace(/[\\s\\S]{3}/g, h);\n return ((l.slice(0, ((((l.length + m)) - 2))) + \"==\".slice(m)));\n },\n decode: function(l) {\n l = l.replace(/[^A-Za-z0-9+\\/]/g, \"\");\n var m = ((((l.length + 3)) & 3));\n l = ((l + \"AAA\".slice(m))).replace(/..../g, j);\n l = l.slice(0, ((((l.length + m)) - 3)));\n try {\n return decodeURIComponent(escape(l));\n } catch (n) {\n throw new Error(\"Not valid UTF-8\");\n };\n ;\n },\n encodeObject: function(l) {\n return k.encode(JSON.stringify(l));\n },\n decodeObject: function(l) {\n return JSON.parse(k.decode(l));\n },\n encodeNums: function(l) {\n return String.fromCharCode.apply(String, l.map(function(m) {\n return g.charCodeAt(((((((m | -((m > 63)))) & -((m > 0)))) & 63)));\n }));\n }\n };\n e.exports = k;\n});\n__d(\"ClickRefUtils\", [], function(a, b, c, d, e, f) {\n var g = {\n get_intern_ref: function(h) {\n if (!!h) {\n var i = {\n profile_minifeed: 1,\n gb_content_and_toolbar: 1,\n gb_muffin_area: 1,\n ego: 1,\n bookmarks_menu: 1,\n jewelBoxNotif: 1,\n jewelNotif: 1,\n BeeperBox: 1,\n navSearch: 1\n };\n for (var j = h; ((j && ((j != JSBNG__document.body)))); j = j.parentNode) {\n if (((!j.id || ((typeof j.id !== \"string\"))))) {\n continue;\n }\n ;\n ;\n if (((j.id.substr(0, 8) == \"pagelet_\"))) {\n return j.id.substr(8);\n }\n ;\n ;\n if (((j.id.substr(0, 8) == \"box_app_\"))) {\n return j.id;\n }\n ;\n ;\n if (i[j.id]) {\n return j.id;\n }\n ;\n ;\n };\n ;\n }\n ;\n ;\n return \"-\";\n },\n get_href: function(h) {\n var i = ((((((((h.getAttribute && ((h.getAttribute(\"ajaxify\") || h.getAttribute(\"data-endpoint\"))))) || h.action)) || h.href)) || h.JSBNG__name));\n return ((((typeof i === \"string\")) ? i : null));\n },\n should_report: function(h, i) {\n if (((i == \"FORCE\"))) {\n return true;\n }\n ;\n ;\n if (((i == \"INDIRECT\"))) {\n return false;\n }\n ;\n ;\n return ((h && ((g.get_href(h) || ((h.getAttribute && h.getAttribute(\"data-ft\")))))));\n }\n };\n e.exports = g;\n});\n__d(\"setUECookie\", [\"Env\",], function(a, b, c, d, e, f) {\n var g = b(\"Env\");\n function h(i) {\n if (!g.no_cookies) {\n JSBNG__document.cookie = ((((((\"act=\" + encodeURIComponent(i))) + \"; path=/; domain=\")) + window.JSBNG__location.hostname.replace(/^.*(\\.facebook\\..*)$/i, \"$1\")));\n }\n ;\n ;\n };\n;\n e.exports = h;\n});\n__d(\"ClickRefLogger\", [\"Arbiter\",\"EagleEye\",\"ClickRefUtils\",\"collectDataAttributes\",\"copyProperties\",\"ge\",\"setUECookie\",\"$\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"EagleEye\"), i = b(\"ClickRefUtils\"), j = b(\"collectDataAttributes\"), k = b(\"copyProperties\"), l = b(\"ge\"), m = b(\"setUECookie\"), n = b(\"$\");\n function o(q) {\n if (!l(\"JSBNG__content\")) {\n return [0,0,0,0,];\n }\n ;\n ;\n var r = n(\"JSBNG__content\"), s = ((a.Vector2 ? a.Vector2.getEventPosition(q) : {\n x: 0,\n y: 0\n }));\n return [s.x,s.y,r.offsetLeft,r.clientWidth,];\n };\n;\n function p(q, r, JSBNG__event, s) {\n var t = (((!a.ArbiterMonitor) ? \"r\" : \"a\")), u = [0,0,0,0,], v, w, x;\n if (!!JSBNG__event) {\n v = JSBNG__event.type;\n if (((((v == \"click\")) && l(\"JSBNG__content\")))) {\n u = o(JSBNG__event);\n }\n ;\n ;\n var y = 0;\n ((JSBNG__event.ctrlKey && (y += 1)));\n ((JSBNG__event.shiftKey && (y += 2)));\n ((JSBNG__event.altKey && (y += 4)));\n ((JSBNG__event.metaKey && (y += 8)));\n if (y) {\n v += y;\n }\n ;\n ;\n }\n ;\n ;\n if (!!r) {\n w = i.get_href(r);\n }\n ;\n ;\n var z = [];\n if (a.ArbiterMonitor) {\n x = a.ArbiterMonitor.getInternRef(r);\n z = a.ArbiterMonitor.getActFields();\n }\n ;\n ;\n var aa = j(((!!JSBNG__event ? ((JSBNG__event.target || JSBNG__event.srcElement)) : r)), [\"ft\",\"gt\",]);\n k(aa.ft, ((s.ft || {\n })));\n k(aa.gt, ((s.gt || {\n })));\n if (((typeof (aa.ft.ei) === \"string\"))) {\n delete aa.ft.ei;\n }\n ;\n ;\n var ba = [q._ue_ts,q._ue_count,((w || \"-\")),q._context,((v || \"-\")),((x || i.get_intern_ref(r))),t,((a.URI ? a.URI.getRequestURI(true, true).getUnqualifiedURI().toString() : ((((JSBNG__location.pathname + JSBNG__location.search)) + JSBNG__location.hash)))),aa,].concat(u).concat(z);\n return ba;\n };\n;\n g.subscribe(\"ClickRefAction/new\", function(q, r) {\n if (i.should_report(r.node, r.mode)) {\n var s = p(r.cfa, r.node, r.JSBNG__event, r.extra_data);\n m(r.cfa.ue);\n h.log(\"act\", s);\n if (window.chromePerfExtension) {\n window.JSBNG__postMessage({\n clickRef: JSON.stringify(s)\n }, window.JSBNG__location.origin);\n }\n ;\n ;\n }\n ;\n ;\n });\n});\n__d(\"QuicklingAugmenter\", [\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"URI\"), h = [], i = {\n addHandler: function(j) {\n h.push(j);\n },\n augmentURI: function(j) {\n var k = [], l = g(j);\n h.forEach(function(m) {\n var n = m(l);\n if (!n) {\n return l;\n }\n ;\n ;\n k.push(m);\n l = l.addQueryData(n);\n });\n h = k;\n return l;\n }\n };\n e.exports = i;\n});\n__d(\"Quickling\", [\"AjaxPipeRequest\",\"Arbiter\",\"Class\",\"CSSClassTransition\",\"DocumentTitle\",\"DOM\",\"ErrorUtils\",\"HTML\",\"OnloadHooks\",\"PageTransitions\",\"QuicklingAugmenter\",\"Run\",\"URI\",\"UserAgent\",\"copyProperties\",\"goOrReplace\",\"isEmpty\",\"QuicklingConfig\",], function(a, b, c, d, e, f) {\n var g = b(\"AjaxPipeRequest\"), h = b(\"Arbiter\"), i = b(\"Class\"), j = b(\"CSSClassTransition\"), k = b(\"DocumentTitle\"), l = b(\"DOM\"), m = b(\"ErrorUtils\"), n = b(\"HTML\"), o = b(\"OnloadHooks\"), p = b(\"PageTransitions\"), q = b(\"QuicklingAugmenter\"), r = b(\"Run\"), s = b(\"URI\"), t = b(\"UserAgent\"), u = b(\"copyProperties\"), v = b(\"goOrReplace\"), w = b(\"isEmpty\"), x = b(\"QuicklingConfig\"), y = x.version, z = x.sessionLength, aa = new RegExp(x.inactivePageRegex), ba = 0, ca, da = \"\", ea = {\n isActive: function() {\n return true;\n },\n isPageActive: function(la) {\n if (((la == \"#\"))) {\n return false;\n }\n ;\n ;\n la = new s(la);\n if (((la.getDomain() && ((la.getDomain() != s().getDomain()))))) {\n return false;\n }\n ;\n ;\n if (((la.getPath() == \"/l.php\"))) {\n var ma = la.getQueryData().u;\n if (ma) {\n ma = s(unescape(ma)).getDomain();\n if (((ma && ((ma != s().getDomain()))))) {\n return false;\n }\n ;\n ;\n }\n ;\n ;\n }\n ;\n ;\n var na = la.getPath(), oa = la.getQueryData();\n if (!w(oa)) {\n na += ((\"?\" + s.implodeQuery(oa)));\n }\n ;\n ;\n return !aa.test(na);\n },\n getLoadCount: function() {\n return ba;\n }\n };\n function fa(la) {\n la = ((la || \"Facebook\"));\n k.set(la);\n if (t.ie()) {\n da = la;\n if (!ca) {\n ca = window.JSBNG__setInterval(function() {\n var ma = da, na = k.get();\n if (((ma != na))) {\n k.set(ma);\n }\n ;\n ;\n }, 5000, false);\n }\n ;\n ;\n }\n ;\n ;\n };\n;\n function ga(la) {\n var ma = JSBNG__document.getElementsByTagName(\"link\");\n for (var na = 0; ((na < ma.length)); ++na) {\n if (((ma[na].rel != \"alternate\"))) {\n continue;\n }\n ;\n ;\n l.remove(ma[na]);\n };\n ;\n if (la.length) {\n var oa = l.JSBNG__find(JSBNG__document, \"head\");\n ((oa && l.appendContent(oa, n(la[0]))));\n }\n ;\n ;\n };\n;\n function ha(la) {\n var ma = {\n version: y\n };\n this.parent.construct(this, la, {\n quickling: ma\n });\n };\n;\n i.extend(ha, g);\n u(ha.prototype, {\n _preBootloadFirstResponse: function(la) {\n return true;\n },\n _fireDomContentCallback: function() {\n ((this._request.cavalry && this._request.cavalry.setTimeStamp(\"t_domcontent\")));\n p.transitionComplete();\n ((this._onPageDisplayed && this._onPageDisplayed(this.pipe)));\n this.parent._fireDomContentCallback();\n },\n _fireOnloadCallback: function() {\n if (this._request.cavalry) {\n this._request.cavalry.setTimeStamp(\"t_hooks\");\n this._request.cavalry.setTimeStamp(\"t_layout\");\n this._request.cavalry.setTimeStamp(\"t_onload\");\n }\n ;\n ;\n this.parent._fireOnloadCallback();\n },\n isPageActive: function(la) {\n return ea.isPageActive(la);\n },\n _versionCheck: function(la) {\n if (((la.version == y))) {\n return true;\n }\n ;\n ;\n var ma = [\"quickling\",\"ajaxpipe\",\"ajaxpipe_token\",];\n v(window.JSBNG__location, s(la.uri).removeQueryData(ma), true);\n return false;\n },\n _processFirstResponse: function(la) {\n var ma = la.getPayload();\n fa(ma.title);\n ga(((ma.syndication || [])));\n window.JSBNG__scrollTo(0, 0);\n j.go(JSBNG__document.body, ((ma.body_class || \"\")), p.getMostRecentURI(), la.getRequest().getURI());\n h.inform(\"quickling/response\");\n },\n getSanitizedParameters: function() {\n return [\"quickling\",];\n }\n });\n function ia() {\n ba++;\n return ((ba >= z));\n };\n;\n function ja(la) {\n g.setCurrentRequest(null);\n if (ia()) {\n return false;\n }\n ;\n ;\n la = q.augmentURI(la);\n if (!ea.isPageActive(la)) {\n return false;\n }\n ;\n ;\n window.ExitTime = JSBNG__Date.now();\n r.__removeHook(\"onafterloadhooks\");\n r.__removeHook(\"onloadhooks\");\n o.runHooks(\"onleavehooks\");\n h.inform(\"onload/exit\", true);\n new ha(la).setCanvasId(\"JSBNG__content\").send();\n return true;\n };\n;\n function ka(la) {\n var ma = window[la];\n function na(oa, pa, qa) {\n if (((typeof oa !== \"function\"))) {\n oa = eval.bind(null, oa);\n }\n ;\n ;\n var ra = ma(m.guard(oa), pa);\n if (((pa > 0))) {\n if (((qa !== false))) {\n r.onLeave(function() {\n JSBNG__clearInterval(ra);\n });\n }\n ;\n }\n ;\n ;\n return ra;\n };\n ;\n window[la] = na;\n };\n;\n r.onAfterLoad(function la() {\n ka(\"JSBNG__setInterval\");\n ka(\"JSBNG__setTimeout\");\n p.registerHandler(ja, 1);\n });\n e.exports = a.Quickling = ea;\n});\n__d(\"StringTransformations\", [], function(a, b, c, d, e, f) {\n e.exports = {\n unicodeEscape: function(g) {\n return g.replace(/[^A-Za-z0-9\\-\\.\\:\\_\\$\\/\\+\\=]/g, function(h) {\n var i = h.charCodeAt().toString(16);\n return ((\"\\\\u\" + ((\"0000\" + i.toUpperCase())).slice(-4)));\n });\n },\n unicodeUnescape: function(g) {\n return g.replace(/(\\\\u[0-9A-Fa-f]{4})/g, function(h) {\n return String.fromCharCode(parseInt(h.slice(2), 16));\n });\n }\n };\n});\n__d(\"UserActionHistory\", [\"Arbiter\",\"ClickRefUtils\",\"ScriptPath\",\"throttle\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ClickRefUtils\"), i = b(\"ScriptPath\"), j = b(\"throttle\"), k = {\n click: 1,\n submit: 1\n }, l = false, m = {\n log: [],\n len: 0\n }, n = j.acrossTransitions(function() {\n try {\n l._ua_log = JSON.stringify(m);\n } catch (q) {\n l = false;\n };\n ;\n }, 1000);\n function o() {\n try {\n if (a.JSBNG__sessionStorage) {\n l = a.JSBNG__sessionStorage;\n ((l._ua_log && (m = JSON.parse(l._ua_log))));\n }\n ;\n ;\n } catch (q) {\n l = false;\n };\n ;\n m.log[((m.len % 10))] = {\n ts: JSBNG__Date.now(),\n path: \"-\",\n index: m.len,\n type: \"init\",\n iref: \"-\"\n };\n m.len++;\n g.subscribe(\"UserAction/new\", function(r, s) {\n var t = s.ua, u = s.node, JSBNG__event = s.JSBNG__event;\n if (((!JSBNG__event || !((JSBNG__event.type in k))))) {\n return;\n }\n ;\n ;\n var v = {\n path: i.getScriptPath(),\n type: JSBNG__event.type,\n ts: t._ue_ts,\n iref: ((h.get_intern_ref(u) || \"-\")),\n index: m.len\n };\n m.log[((m.len++ % 10))] = v;\n ((l && n()));\n });\n };\n;\n function p() {\n return m.log.sort(function(q, r) {\n return ((((r.ts != q.ts)) ? ((r.ts - q.ts)) : ((r.index - q.index))));\n });\n };\n;\n o();\n e.exports = {\n getHistory: p\n };\n});\n__d(\"TinyViewport\", [\"Arbiter\",\"JSBNG__CSS\",\"DOM\",\"JSBNG__Event\",\"queryThenMutateDOM\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"JSBNG__CSS\"), i = b(\"DOM\"), j = b(\"JSBNG__Event\"), k = b(\"queryThenMutateDOM\"), l = JSBNG__document.documentElement, m, n, o = k.bind(null, function() {\n n = ((n || i.getDocumentScrollElement()));\n m = ((((l.clientHeight < 400)) || ((l.clientWidth < n.scrollWidth))));\n }, function() {\n h.conditionClass(l, \"tinyViewport\", m);\n h.conditionClass(l, \"canHaveFixedElements\", !m);\n }, \"TinyViewport\");\n o();\n g.subscribe(\"quickling/response\", o);\n j.listen(window, \"resize\", o);\n});\n__d(\"TimeSpentArray\", [\"Banzai\",\"pageID\",], function(a, b, c, d, e, f) {\n var g = b(\"Banzai\"), h = b(\"pageID\"), i = 2, j = ((i * 32)), k = 1500, l, m, n, o, p, q, r, s, t;\n {\n function u() {\n if (l) {\n var ca = JSBNG__Date.now();\n if (((ca > p))) {\n r = Math.min(j, Math.ceil(((((ca / 1000)) - o))));\n }\n ;\n ;\n var da = z();\n if (da) {\n l(da);\n }\n ;\n ;\n }\n ;\n ;\n y();\n };\n ((window.top.JSBNG_Replay.sb400e2fc5b4578cec05af7646f5430d8d67f9e1b_61.push)((u)));\n };\n;\n function v() {\n w();\n m = JSBNG__setTimeout(u, ((((n * 1000)) + k)), false);\n };\n;\n function w() {\n if (m) {\n JSBNG__clearTimeout(m);\n m = null;\n }\n ;\n ;\n };\n;\n function x(ca) {\n o = ca;\n p = ((o * 1000));\n q = [1,];\n for (var da = 1; ((da < i)); da++) {\n q.push(0);\n ;\n };\n ;\n r = 1;\n s += 1;\n t += 1;\n v();\n };\n;\n function y() {\n w();\n q = null;\n n = j;\n };\n;\n function z() {\n if (!q) {\n return null;\n }\n ;\n ;\n return {\n tos_id: h,\n start_time: o,\n tos_array: q.slice(0),\n tos_len: r,\n tos_seq: t,\n tos_cum: s\n };\n };\n;\n function aa(ca) {\n if (((((ca >= p)) && ((((ca - p)) < 1000))))) {\n return;\n }\n ;\n ;\n ba(Math.floor(((ca / 1000))));\n };\n;\n function ba(ca) {\n var da = ((ca - o));\n if (((((da < 0)) || ((da >= j))))) {\n u();\n }\n ;\n ;\n if (!q) {\n x(ca);\n }\n else {\n q[((da >> 5))] |= ((1 << ((da & 31))));\n r = ((da + 1));\n s += 1;\n p = ((ca * 1000));\n }\n ;\n ;\n };\n;\n e.exports = {\n init: function(ca, da) {\n s = 0;\n t = -1;\n l = ca;\n n = ((da || j));\n x(Math.floor(((JSBNG__Date.now() / 1000))));\n g.subscribe(g.SHUTDOWN, u);\n },\n update: function(ca) {\n aa(ca);\n },\n get: function() {\n return z();\n },\n ship: function() {\n u();\n },\n reset: function() {\n y();\n }\n };\n});\n__d(\"WebStorageMonster\", [\"JSBNG__Event\",\"AsyncRequest\",\"UserActivity\",\"StringTransformations\",\"arrayContains\",\"setTimeoutAcrossTransitions\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"AsyncRequest\"), i = b(\"UserActivity\"), j = b(\"StringTransformations\"), k = b(\"arrayContains\"), l = b(\"setTimeoutAcrossTransitions\"), m = 300000, n = false;\n function o(t) {\n var u = {\n };\n {\n var fin120keys = ((window.top.JSBNG_Replay.forInKeys)((t))), fin120i = (0);\n var v;\n for (; (fin120i < fin120keys.length); (fin120i++)) {\n ((v) = (fin120keys[fin120i]));\n {\n var w = t.getItem(v), x = j.unicodeEscape(v);\n if (((typeof w === \"string\"))) {\n u[x] = w.length;\n }\n ;\n ;\n };\n };\n };\n ;\n return u;\n };\n;\n function p(t) {\n if (((a.JSBNG__localStorage && t.keys))) {\n s._getLocalStorageKeys().forEach(function(u) {\n if (k(t.keys, u)) {\n a.JSBNG__localStorage.removeItem(u);\n }\n ;\n ;\n });\n }\n ;\n ;\n };\n;\n function q(t) {\n if (a.JSBNG__localStorage) {\n s._getLocalStorageKeys().forEach(function(u) {\n if (!t.some(function(v) {\n return new RegExp(v).test(u);\n })) {\n a.JSBNG__localStorage.removeItem(u);\n }\n ;\n ;\n });\n }\n ;\n ;\n if (a.JSBNG__sessionStorage) {\n a.JSBNG__sessionStorage.clear();\n }\n ;\n ;\n };\n;\n function r(t) {\n if (i.isActive(m)) {\n l(r.curry(t), m);\n }\n else s.cleanNow(t);\n ;\n ;\n };\n;\n var s = {\n registerLogoutForm: function(t, u) {\n g.listen(t, \"submit\", function(v) {\n s.cleanOnLogout(u);\n });\n },\n schedule: function(t) {\n if (n) {\n return;\n }\n ;\n ;\n n = true;\n r(t);\n },\n cleanNow: function(t) {\n var u = JSBNG__Date.now(), v = {\n }, w = false;\n [\"JSBNG__localStorage\",\"JSBNG__sessionStorage\",].forEach(function(y) {\n if (a[y]) {\n v[y] = o(a[y]);\n w = true;\n }\n ;\n ;\n });\n var x = JSBNG__Date.now();\n v.logtime = ((x - u));\n if (w) {\n new h(\"/ajax/webstorage/process_keys.php\").setData(v).setHandler(function(y) {\n if (!t) {\n var z = y.getPayload();\n if (z.keys) {\n z.keys = z.keys.map(j.unicodeUnescape);\n }\n ;\n ;\n p(z);\n }\n ;\n ;\n }.bind(this)).send();\n }\n ;\n ;\n },\n cleanOnLogout: function(t) {\n if (t) {\n q(t);\n }\n ;\n ;\n if (a.JSBNG__sessionStorage) {\n a.JSBNG__sessionStorage.clear();\n }\n ;\n ;\n },\n _getLocalStorageKeys: Object.keys.curry(a.JSBNG__localStorage)\n };\n e.exports = s;\n});"); |
| // 8250 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o96,o97); |
| // undefined |
| o97 = null; |
| // 8255 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o98,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yT/r/yNh6K2TPYo5.js",o99); |
| // undefined |
| o98 = null; |
| // undefined |
| o99 = null; |
| // 8260 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"4vv8/\",]);\n}\n;\n__d(\"TimeSpentBitArrayLogger\", [\"UserActivity\",\"copyProperties\",\"Banzai\",\"BanzaiODS\",\"TimeSpentArray\",\"Arbiter\",\"TimeSpentConfig\",], function(a, b, c, d, e, f) {\n var g = b(\"UserActivity\"), h = b(\"copyProperties\"), i = b(\"Banzai\"), j = b(\"BanzaiODS\"), k = b(\"TimeSpentArray\"), l = b(\"Arbiter\"), m = b(\"TimeSpentConfig\"), n = {\n store: true,\n delay: m.initial_delay,\n retry: true\n };\n function o(p) {\n if (i.isEnabled(\"time_spent_bit_array\")) {\n l.inform(\"timespent/tosbitdataposted\", h({\n }, p));\n i.post(\"time_spent_bit_array\", h({\n }, p), n);\n n.delay = m.delay;\n }\n ;\n };\n e.exports = {\n init: function(p) {\n if ((window.top == window.self)) {\n g.subscribe(function(q, r) {\n k.update(r.last_inform);\n });\n k.init(o, m.initial_timeout);\n j.bumpEntityKey(\"ms.time_spent.qa.www\", \"time_spent.bits.js_initialized\");\n }\n ;\n }\n };\n});"); |
| // 8261 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s76aa385d8208e4e8eefbd18ade1f1e8c544e0113"); |
| // 8262 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"4vv8/\",]);\n}\n;\n;\n__d(\"TimeSpentBitArrayLogger\", [\"UserActivity\",\"copyProperties\",\"Banzai\",\"BanzaiODS\",\"TimeSpentArray\",\"Arbiter\",\"TimeSpentConfig\",], function(a, b, c, d, e, f) {\n var g = b(\"UserActivity\"), h = b(\"copyProperties\"), i = b(\"Banzai\"), j = b(\"BanzaiODS\"), k = b(\"TimeSpentArray\"), l = b(\"Arbiter\"), m = b(\"TimeSpentConfig\"), n = {\n store: true,\n delay: m.initial_delay,\n retry: true\n };\n function o(p) {\n if (i.isEnabled(\"time_spent_bit_array\")) {\n l.inform(\"timespent/tosbitdataposted\", h({\n }, p));\n i.post(\"time_spent_bit_array\", h({\n }, p), n);\n n.delay = m.delay;\n }\n ;\n ;\n };\n;\n e.exports = {\n init: function(p) {\n if (((window.JSBNG__top == window.JSBNG__self))) {\n g.subscribe(function(q, r) {\n k.update(r.last_inform);\n });\n k.init(o, m.initial_timeout);\n j.bumpEntityKey(\"ms.time_spent.qa.www\", \"time_spent.bits.js_initialized\");\n }\n ;\n ;\n }\n };\n});"); |
| // 8269 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o100,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y4/r/VctjjLR0rnO.js",o101); |
| // undefined |
| o100 = null; |
| // undefined |
| o101 = null; |
| // 8274 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_55[0](13212.999999988824); |
| // 8288 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"BjpNB\",]);\n}\n;\n__d(\"BlueBarMinWidth\", [\"Arbiter\",\"DOM\",\"DOMDimensions\",\"Event\",\"Locale\",\"Style\",\"Vector\",\"$\",\"csx\",\"queryThenMutateDOM\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"DOM\"), i = b(\"DOMDimensions\"), j = b(\"Event\"), k = b(\"Locale\"), l = b(\"Style\"), m = b(\"Vector\"), n = b(\"$\"), o = b(\"csx\"), p = b(\"queryThenMutateDOM\");\n f.init = function() {\n var q = n(\"pageHead\"), r = h.find(q, \".-cx-PRIVATE-bluebarDynamicWidth__widthwrapper\"), s, t = p.bind(null, function() {\n var u = i.getElementDimensions(q).width, v;\n if (k.isRTL()) {\n v = -m.getElementPosition(q).x;\n }\n else v = ((m.getElementPosition(q).x + u) - i.getViewportDimensions().width);\n ;\n if ((v > 0)) {\n var w = i.measureElementBox(q, \"width\", true);\n s = (((u - v) - w) + \"px\");\n }\n else s = \"\";\n ;\n }, function() {\n l.set(r, \"width\", s);\n }, \"BlueBarMinWidth\");\n j.listen(window, \"resize\", t);\n g.subscribe([\"LitestandSidebar/expand\",\"LitestandSidebar/collapse\",], t);\n t();\n };\n});\n__d(\"BrowseLogger\", [\"Banzai\",\"copyProperties\",\"Run\",], function(a, b, c, d, e, f) {\n var g = b(\"Banzai\"), h = b(\"copyProperties\"), i = b(\"Run\"), j = \"browse\", k = \"browse_aggr\", l = null, m = {\n }, n = {\n };\n function o() {\n l = null;\n m = {\n };\n n = {\n };\n };\n function p(v) {\n h(v, {\n clientSessionID: l\n });\n return v;\n };\n function q(v) {\n g.post(j, p(v));\n };\n function r() {\n if ((l === null)) {\n return\n };\n n.aggregated = m;\n g.post(k, p(n));\n o();\n };\n function s(v) {\n m[v] = (((m[v] || 0)) + 1);\n };\n function t(v) {\n h(n, v);\n };\n i.onUnload(r);\n var u = {\n newSession: function() {\n r();\n l = Math.random().toString();\n if (!n.start_time) {\n n.start_time = Math.round((Date.now() / 1000));\n };\n },\n logResultClick: function(v, w) {\n var x = {\n action: \"result_click\",\n click_type: (v.ct || \"result\"),\n id: (v.id || 0),\n path: (v.path || \"unknown\"),\n rank: (v.rank || 0),\n referrer: (v.referrer || \"unknown\"),\n result_type: (v.result_type || \"unknown\"),\n session_id: (v.session_id || 0),\n query_time: v.query_time,\n abtest_version: (v.abtest_version || \"NONE\"),\n abtest_params: v.abtest_params,\n typeahead_sid: (v.typeahead_sid || \"\"),\n click_action: w\n };\n s((\"result_click_\" + x.click_type));\n t({\n path: x.path,\n referrer: x.referrer,\n result_type: x.result_type,\n session_id: x.session_id,\n abtest_version: x.abtest_version,\n abtest_params: x.abtest_params,\n typeahead_sid: x.typeahead_sid\n });\n q(x);\n },\n logControlsClick: function(v, w) {\n var x = {\n action: \"controls_click\",\n click_type: w,\n path: (v.path || \"unknown\"),\n referrer: (v.referrer || \"unknown\"),\n session_id: (v.session_id || 0),\n query_time: v.query_time,\n filter_name: (v.name || \"unknown\"),\n typeahead_sid: (v.typeahead_sid || \"\"),\n result_type: (v.result_type || \"unknown\")\n };\n s((\"controls_click_\" + w));\n t({\n path: x.path,\n referrer: x.referrer,\n session_id: x.session_id,\n typeahead_sid: x.typeahead_sid\n });\n q(x);\n },\n logResultHover: function(v, w) {\n var x = {\n action: \"result_hover\",\n id: (v.id || 0),\n path: (v.path || \"unknown\"),\n rank: v.rank,\n session_id: (v.session_id || 0),\n query_time: v.query_time,\n time_elapsed: w,\n typeahead_sid: (v.typeahead_sid || 0)\n };\n s(\"result_hover\");\n t({\n path: x.path,\n session_id: x.session_id,\n typeahead_sid: x.typeahead_sid\n });\n q(x);\n },\n logNUXStep: function(v) {\n var w = {\n action: \"nux_step\",\n step: v\n };\n q(w);\n },\n logDisambiguationImpression: function(v, w, x, y, z) {\n var aa = {\n action: \"disambiguation_imp\",\n ids: y,\n name: v,\n path: x,\n type: w,\n typeahead_sid: z\n };\n q(aa);\n },\n logDisambiguationClick: function(v, w, x, y, z, aa) {\n var ba = {\n action: \"disambiguation_clk\",\n id: z,\n index: y,\n name: v,\n path: x,\n type: w,\n typeahead_sid: aa\n };\n q(ba);\n }\n };\n e.exports = u;\n});\n__d(\"BrowseResultsAreSlow\", [\"CSS\",], function(a, b, c, d, e, f) {\n var g = b(\"CSS\"), h = 1500, i = {\n register: function(j, k) {\n setTimeout(function() {\n if ((j.firstChild === k)) {\n g.show(k);\n };\n }, h);\n }\n };\n e.exports = i;\n});\n__d(\"LitestandNewsfeedCountUpdater\", [\"Arbiter\",\"AsyncRequest\",\"LitestandMessages\",\"LitestandSidebarBookmarkConfig\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncRequest\"), i = b(\"LitestandMessages\"), j = b(\"LitestandSidebarBookmarkConfig\"), k = b(\"emptyFunction\"), l, m;\n function n() {\n (m && clearTimeout(m));\n if (l) {\n return\n };\n m = setTimeout(o, j.nf_count_query_interval_ms, false);\n };\n function o() {\n if (l) {\n return\n };\n new h().setURI(\"/ajax/litestand/newsfeed_count\").setHandler(function(r) {\n if (l) {\n return\n };\n p(r.getPayload());\n n();\n }).setAllowCrossPageTransition(true).send();\n };\n function p(r) {\n g.inform(i.UPDATE_HOME_COUNT, {\n count: r,\n onHome: l\n }, g.BEHAVIOR_STATE);\n };\n var q = {\n init: function() {\n q.init = k;\n g.subscribe(i.NEWSFEED_LOAD, function() {\n l = true;\n p(0);\n });\n g.subscribe(i.LEAVE_HOME, function() {\n l = false;\n n();\n });\n n();\n }\n };\n e.exports = q;\n});\n__d(\"LitestandChromeHomeCount\", [\"Arbiter\",\"CSS\",\"DOM\",\"LitestandMessages\",\"LitestandNewsfeedCountUpdater\",\"$\",\"csx\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"CSS\"), i = b(\"DOM\"), j = b(\"LitestandMessages\"), k = b(\"LitestandNewsfeedCountUpdater\"), l = b(\"$\"), m = b(\"csx\"), n = b(\"cx\"), o = 20, p, q, r, s, t = {\n init: function(u) {\n s = u;\n q = i.find(l(\"pageHead\"), \".-cx-PRIVATE-litestandHomeBadge__badge\");\n p = q.parentNode;\n r = false;\n g.subscribe(j.UPDATE_HOME_COUNT, function(v, w) {\n t.updateBadge((w.onHome ? 0 : w.count));\n });\n k.init();\n t.updateBadge(s);\n },\n updateBadge: function(u) {\n s = u;\n var v = (u > 0);\n t.toggleBadge(v);\n if (v) {\n var w = ((u > o) ? (o + \"+\") : u);\n i.setContent(q, w);\n }\n ;\n },\n toggleBadge: function(u) {\n if ((r === u)) {\n return\n };\n r = u;\n h.conditionClass(p, \"-cx-PRIVATE-litestandHomeBadge__hidden\", !u);\n }\n };\n e.exports = t;\n});\n__d(\"clip\", [], function(a, b, c, d, e, f) {\n function g(h, i, j) {\n return Math.min(Math.max(h, i), j);\n };\n e.exports = g;\n});\n__d(\"FacebarTypeaheadInput\", [\"ArbiterMixin\",\"csx\",\"DOM\",\"FacebarStructuredText\",\"StructuredInput\",\"Vector\",\"copyProperties\",\"mixin\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"csx\"), i = b(\"DOM\"), j = b(\"FacebarStructuredText\"), k = b(\"StructuredInput\"), l = b(\"Vector\"), m = b(\"copyProperties\"), n = {\n text: {\n className: \"text\",\n group: \"all\",\n select: \"none\"\n },\n ent: {\n className: \"entity\",\n group: \"all\",\n select: \"group\"\n },\n \"ent:hashtag_exact\": {\n className: \"entity\",\n group: \"hashtag\",\n select: \"none\"\n }\n }, o = b(\"mixin\");\n function p(u) {\n return m(u.toStruct(), {\n display: (n[u.getType()] || n[u.getTypePart(0)])\n });\n };\n var q = o(g);\n for (var r in q) {\n if ((q.hasOwnProperty(r) && (r !== \"_metaprototype\"))) {\n t[r] = q[r];\n };\n };\n var s = ((q === null) ? null : q.prototype);\n t.prototype = Object.create(s);\n t.prototype.constructor = t;\n t.__superConstructor__ = q;\n function t(u) {\n this.root = u;\n this.input = k.getInstance(u);\n this.value = null;\n this.selection = {\n offset: 0,\n length: 0\n };\n this.resetOnChange = true;\n this.initEvents();\n };\n t.prototype.initEvents = function() {\n var u = function(v, w) {\n this.inform(v, w);\n }.bind(this);\n this.input.subscribe(\"blur\", u);\n this.input.subscribe(\"focus\", u);\n this.input.subscribe(\"change\", function(v, w) {\n if (this.resetOnChange) {\n this.value = null;\n };\n this.inform(\"change\", w);\n }.bind(this));\n };\n t.prototype.togglePlaceholder = function(u) {\n return this.input.togglePlaceholder(u);\n };\n t.prototype.focus = function() {\n this.input.focus();\n };\n t.prototype.blur = function() {\n this.input.blur();\n };\n t.prototype.getElement = function() {\n return this.root;\n };\n t.prototype.getRawPlaceholderElement = function() {\n return i.find(this.root, \".-cx-PUBLIC-uiStructuredInput__placeholder\");\n };\n t.prototype.getRawInputElement = function() {\n return i.scry(this.root, \".-cx-PUBLIC-uiStructuredInput__rich\")[0];\n };\n t.prototype.getValue = function() {\n if ((this.value === null)) {\n this.value = j.fromStruct(this.input.getStructure());\n };\n return this.value;\n };\n t.prototype.getLength = function() {\n return this.getValue().getLength();\n };\n t.prototype.resetPlaceholder = function() {\n this.input.resetPlaceholder();\n };\n t.prototype.setValue = function(u) {\n u = u.pad();\n this.value = u;\n this.resetOnChange = false;\n var v = u.toArray().map(p);\n this.input.setStructure(v);\n this.input.setSelection({\n offset: u.getLength(),\n length: 0\n });\n this.resetOnChange = true;\n };\n t.prototype.storeSelection = function() {\n this.selection = this.input.getSelection();\n };\n t.prototype.restoreSelection = function() {\n this.input.setSelection(this.selection);\n };\n t.prototype.setHint = function(u) {\n var v = (u ? u.toArray().map(p) : []);\n this.input.setHint(v);\n };\n t.prototype.isSelectionAtEnd = function() {\n return this.input.isSelectionAtEnd();\n };\n t.prototype.selectInput = function(u) {\n this.input.setSelection({\n offset: (u || 0),\n length: this.getLength()\n });\n };\n t.prototype.getEndOffset = function() {\n var u = l.getElementDimensions(this.root), v = this.input.getContentDimensions();\n return Math.min(u.x, v.width);\n };\n m(t.prototype, {\n events: [\"change\",\"focus\",\"blur\",]\n });\n e.exports = t;\n});\n__d(\"FacebarRender\", [\"DOM\",\"createArrayFrom\",\"hasArrayNature\",\"flattenArray\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"createArrayFrom\"), i = b(\"hasArrayNature\"), j = b(\"flattenArray\"), k = b(\"emptyFunction\");\n function l() {\n return j(h(arguments)).filter(k.thatReturnsArgument);\n };\n function m(n, o) {\n return g.create(\"span\", {\n className: n\n }, l(o));\n };\n e.exports = {\n span: m,\n children: l\n };\n});"); |
| // 8289 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"sa3fa2a6308ef166c3bef3454f7cbe38faaa17b02"); |
| // 8290 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"BjpNB\",]);\n}\n;\n;\n__d(\"BlueBarMinWidth\", [\"Arbiter\",\"DOM\",\"DOMDimensions\",\"JSBNG__Event\",\"Locale\",\"Style\",\"Vector\",\"$\",\"csx\",\"queryThenMutateDOM\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"DOM\"), i = b(\"DOMDimensions\"), j = b(\"JSBNG__Event\"), k = b(\"Locale\"), l = b(\"Style\"), m = b(\"Vector\"), n = b(\"$\"), o = b(\"csx\"), p = b(\"queryThenMutateDOM\");\n f.init = function() {\n var q = n(\"pageHead\"), r = h.JSBNG__find(q, \".-cx-PRIVATE-bluebarDynamicWidth__widthwrapper\"), s, t = p.bind(null, function() {\n var u = i.getElementDimensions(q).width, v;\n if (k.isRTL()) {\n v = -m.getElementPosition(q).x;\n }\n else v = ((((m.getElementPosition(q).x + u)) - i.getViewportDimensions().width));\n ;\n ;\n if (((v > 0))) {\n var w = i.measureElementBox(q, \"width\", true);\n s = ((((((u - v)) - w)) + \"px\"));\n }\n else s = \"\";\n ;\n ;\n }, function() {\n l.set(r, \"width\", s);\n }, \"BlueBarMinWidth\");\n j.listen(window, \"resize\", t);\n g.subscribe([\"LitestandSidebar/expand\",\"LitestandSidebar/collapse\",], t);\n t();\n };\n});\n__d(\"BrowseLogger\", [\"Banzai\",\"copyProperties\",\"Run\",], function(a, b, c, d, e, f) {\n var g = b(\"Banzai\"), h = b(\"copyProperties\"), i = b(\"Run\"), j = \"browse\", k = \"browse_aggr\", l = null, m = {\n }, n = {\n };\n function o() {\n l = null;\n m = {\n };\n n = {\n };\n };\n;\n function p(v) {\n h(v, {\n clientSessionID: l\n });\n return v;\n };\n;\n function q(v) {\n g.post(j, p(v));\n };\n;\n function r() {\n if (((l === null))) {\n return;\n }\n ;\n ;\n n.aggregated = m;\n g.post(k, p(n));\n o();\n };\n;\n function s(v) {\n m[v] = ((((m[v] || 0)) + 1));\n };\n;\n function t(v) {\n h(n, v);\n };\n;\n i.onUnload(r);\n var u = {\n newSession: function() {\n r();\n l = Math.JSBNG__random().toString();\n if (!n.start_time) {\n n.start_time = Math.round(((JSBNG__Date.now() / 1000)));\n }\n ;\n ;\n },\n logResultClick: function(v, w) {\n var x = {\n action: \"result_click\",\n click_type: ((v.ct || \"result\")),\n id: ((v.id || 0)),\n path: ((v.path || \"unknown\")),\n rank: ((v.rank || 0)),\n referrer: ((v.referrer || \"unknown\")),\n result_type: ((v.result_type || \"unknown\")),\n session_id: ((v.session_id || 0)),\n query_time: v.query_time,\n abtest_version: ((v.abtest_version || \"NONE\")),\n abtest_params: v.abtest_params,\n typeahead_sid: ((v.typeahead_sid || \"\")),\n click_action: w\n };\n s(((\"result_click_\" + x.click_type)));\n t({\n path: x.path,\n referrer: x.referrer,\n result_type: x.result_type,\n session_id: x.session_id,\n abtest_version: x.abtest_version,\n abtest_params: x.abtest_params,\n typeahead_sid: x.typeahead_sid\n });\n q(x);\n },\n logControlsClick: function(v, w) {\n var x = {\n action: \"controls_click\",\n click_type: w,\n path: ((v.path || \"unknown\")),\n referrer: ((v.referrer || \"unknown\")),\n session_id: ((v.session_id || 0)),\n query_time: v.query_time,\n filter_name: ((v.JSBNG__name || \"unknown\")),\n typeahead_sid: ((v.typeahead_sid || \"\")),\n result_type: ((v.result_type || \"unknown\"))\n };\n s(((\"controls_click_\" + w)));\n t({\n path: x.path,\n referrer: x.referrer,\n session_id: x.session_id,\n typeahead_sid: x.typeahead_sid\n });\n q(x);\n },\n logResultHover: function(v, w) {\n var x = {\n action: \"result_hover\",\n id: ((v.id || 0)),\n path: ((v.path || \"unknown\")),\n rank: v.rank,\n session_id: ((v.session_id || 0)),\n query_time: v.query_time,\n time_elapsed: w,\n typeahead_sid: ((v.typeahead_sid || 0))\n };\n s(\"result_hover\");\n t({\n path: x.path,\n session_id: x.session_id,\n typeahead_sid: x.typeahead_sid\n });\n q(x);\n },\n logNUXStep: function(v) {\n var w = {\n action: \"nux_step\",\n step: v\n };\n q(w);\n },\n logDisambiguationImpression: function(v, w, x, y, z) {\n var aa = {\n action: \"disambiguation_imp\",\n ids: y,\n JSBNG__name: v,\n path: x,\n type: w,\n typeahead_sid: z\n };\n q(aa);\n },\n logDisambiguationClick: function(v, w, x, y, z, aa) {\n var ba = {\n action: \"disambiguation_clk\",\n id: z,\n index: y,\n JSBNG__name: v,\n path: x,\n type: w,\n typeahead_sid: aa\n };\n q(ba);\n }\n };\n e.exports = u;\n});\n__d(\"BrowseResultsAreSlow\", [\"JSBNG__CSS\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = 1500, i = {\n register: function(j, k) {\n JSBNG__setTimeout(function() {\n if (((j.firstChild === k))) {\n g.show(k);\n }\n ;\n ;\n }, h);\n }\n };\n e.exports = i;\n});\n__d(\"LitestandNewsfeedCountUpdater\", [\"Arbiter\",\"AsyncRequest\",\"LitestandMessages\",\"LitestandSidebarBookmarkConfig\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncRequest\"), i = b(\"LitestandMessages\"), j = b(\"LitestandSidebarBookmarkConfig\"), k = b(\"emptyFunction\"), l, m;\n function n() {\n ((m && JSBNG__clearTimeout(m)));\n if (l) {\n return;\n }\n ;\n ;\n m = JSBNG__setTimeout(o, j.nf_count_query_interval_ms, false);\n };\n;\n function o() {\n if (l) {\n return;\n }\n ;\n ;\n new h().setURI(\"/ajax/litestand/newsfeed_count\").setHandler(function(r) {\n if (l) {\n return;\n }\n ;\n ;\n p(r.getPayload());\n n();\n }).setAllowCrossPageTransition(true).send();\n };\n;\n function p(r) {\n g.inform(i.UPDATE_HOME_COUNT, {\n count: r,\n onHome: l\n }, g.BEHAVIOR_STATE);\n };\n;\n var q = {\n init: function() {\n q.init = k;\n g.subscribe(i.NEWSFEED_LOAD, function() {\n l = true;\n p(0);\n });\n g.subscribe(i.LEAVE_HOME, function() {\n l = false;\n n();\n });\n n();\n }\n };\n e.exports = q;\n});\n__d(\"LitestandChromeHomeCount\", [\"Arbiter\",\"JSBNG__CSS\",\"DOM\",\"LitestandMessages\",\"LitestandNewsfeedCountUpdater\",\"$\",\"csx\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"JSBNG__CSS\"), i = b(\"DOM\"), j = b(\"LitestandMessages\"), k = b(\"LitestandNewsfeedCountUpdater\"), l = b(\"$\"), m = b(\"csx\"), n = b(\"cx\"), o = 20, p, q, r, s, t = {\n init: function(u) {\n s = u;\n q = i.JSBNG__find(l(\"pageHead\"), \".-cx-PRIVATE-litestandHomeBadge__badge\");\n p = q.parentNode;\n r = false;\n g.subscribe(j.UPDATE_HOME_COUNT, function(v, w) {\n t.updateBadge(((w.onHome ? 0 : w.count)));\n });\n k.init();\n t.updateBadge(s);\n },\n updateBadge: function(u) {\n s = u;\n var v = ((u > 0));\n t.toggleBadge(v);\n if (v) {\n var w = ((((u > o)) ? ((o + \"+\")) : u));\n i.setContent(q, w);\n }\n ;\n ;\n },\n toggleBadge: function(u) {\n if (((r === u))) {\n return;\n }\n ;\n ;\n r = u;\n h.conditionClass(p, \"-cx-PRIVATE-litestandHomeBadge__hidden\", !u);\n }\n };\n e.exports = t;\n});\n__d(\"clip\", [], function(a, b, c, d, e, f) {\n function g(h, i, j) {\n return Math.min(Math.max(h, i), j);\n };\n;\n e.exports = g;\n});\n__d(\"FacebarTypeaheadInput\", [\"ArbiterMixin\",\"csx\",\"DOM\",\"FacebarStructuredText\",\"StructuredInput\",\"Vector\",\"copyProperties\",\"mixin\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"csx\"), i = b(\"DOM\"), j = b(\"FacebarStructuredText\"), k = b(\"StructuredInput\"), l = b(\"Vector\"), m = b(\"copyProperties\"), n = {\n text: {\n className: \"text\",\n group: \"all\",\n select: \"none\"\n },\n ent: {\n className: \"entity\",\n group: \"all\",\n select: \"group\"\n },\n \"ent:hashtag_exact\": {\n className: \"entity\",\n group: \"hashtag\",\n select: \"none\"\n }\n }, o = b(\"mixin\");\n function p(u) {\n return m(u.toStruct(), {\n display: ((n[u.getType()] || n[u.getTypePart(0)]))\n });\n };\n;\n var q = o(g);\n {\n var fin121keys = ((window.top.JSBNG_Replay.forInKeys)((q))), fin121i = (0);\n var r;\n for (; (fin121i < fin121keys.length); (fin121i++)) {\n ((r) = (fin121keys[fin121i]));\n {\n if (((q.hasOwnProperty(r) && ((r !== \"_metaprototype\"))))) {\n t[r] = q[r];\n }\n ;\n ;\n };\n };\n };\n;\n var s = ((((q === null)) ? null : q.prototype));\n t.prototype = Object.create(s);\n t.prototype.constructor = t;\n t.__superConstructor__ = q;\n function t(u) {\n this.root = u;\n this.input = k.getInstance(u);\n this.value = null;\n this.selection = {\n offset: 0,\n length: 0\n };\n this.resetOnChange = true;\n this.initEvents();\n };\n;\n t.prototype.initEvents = function() {\n var u = function(v, w) {\n this.inform(v, w);\n }.bind(this);\n this.input.subscribe(\"JSBNG__blur\", u);\n this.input.subscribe(\"JSBNG__focus\", u);\n this.input.subscribe(\"change\", function(v, w) {\n if (this.resetOnChange) {\n this.value = null;\n }\n ;\n ;\n this.inform(\"change\", w);\n }.bind(this));\n };\n t.prototype.togglePlaceholder = function(u) {\n return this.input.togglePlaceholder(u);\n };\n t.prototype.JSBNG__focus = function() {\n this.input.JSBNG__focus();\n };\n t.prototype.JSBNG__blur = function() {\n this.input.JSBNG__blur();\n };\n t.prototype.getElement = function() {\n return this.root;\n };\n t.prototype.getRawPlaceholderElement = function() {\n return i.JSBNG__find(this.root, \".-cx-PUBLIC-uiStructuredInput__placeholder\");\n };\n t.prototype.getRawInputElement = function() {\n return i.scry(this.root, \".-cx-PUBLIC-uiStructuredInput__rich\")[0];\n };\n t.prototype.getValue = function() {\n if (((this.value === null))) {\n this.value = j.fromStruct(this.input.getStructure());\n }\n ;\n ;\n return this.value;\n };\n t.prototype.getLength = function() {\n return this.getValue().getLength();\n };\n t.prototype.resetPlaceholder = function() {\n this.input.resetPlaceholder();\n };\n t.prototype.setValue = function(u) {\n u = u.pad();\n this.value = u;\n this.resetOnChange = false;\n var v = u.toArray().map(p);\n this.input.setStructure(v);\n this.input.setSelection({\n offset: u.getLength(),\n length: 0\n });\n this.resetOnChange = true;\n };\n t.prototype.storeSelection = function() {\n this.selection = this.input.JSBNG__getSelection();\n };\n t.prototype.restoreSelection = function() {\n this.input.setSelection(this.selection);\n };\n t.prototype.setHint = function(u) {\n var v = ((u ? u.toArray().map(p) : []));\n this.input.setHint(v);\n };\n t.prototype.isSelectionAtEnd = function() {\n return this.input.isSelectionAtEnd();\n };\n t.prototype.selectInput = function(u) {\n this.input.setSelection({\n offset: ((u || 0)),\n length: this.getLength()\n });\n };\n t.prototype.getEndOffset = function() {\n var u = l.getElementDimensions(this.root), v = this.input.getContentDimensions();\n return Math.min(u.x, v.width);\n };\n m(t.prototype, {\n events: [\"change\",\"JSBNG__focus\",\"JSBNG__blur\",]\n });\n e.exports = t;\n});\n__d(\"FacebarRender\", [\"DOM\",\"createArrayFrom\",\"hasArrayNature\",\"flattenArray\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"createArrayFrom\"), i = b(\"hasArrayNature\"), j = b(\"flattenArray\"), k = b(\"emptyFunction\");\n function l() {\n return j(h(arguments)).filter(k.thatReturnsArgument);\n };\n;\n function m(n, o) {\n return g.create(\"span\", {\n className: n\n }, l(o));\n };\n;\n e.exports = {\n span: m,\n children: l\n };\n});"); |
| // 8293 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o103,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yw/r/npgrFgy_XMu.js",o104); |
| // undefined |
| o103 = null; |
| // undefined |
| o104 = null; |
| // 8298 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"js0se\",]);\n}\n;\n__d(\"NotificationURI\", [\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"URI\"), h = {\n localize: function(i) {\n i = g(i);\n if (!i.isFacebookURI()) {\n return i.toString()\n };\n var j = i.getSubdomain();\n return i.getUnqualifiedURI().getQualifiedURI().setSubdomain(j).toString();\n },\n snowliftable: function(i) {\n if (!i) {\n return false\n };\n i = g(i);\n return (i.isFacebookURI() && i.getQueryData().hasOwnProperty(\"fbid\"));\n },\n isVaultSetURI: function(i) {\n if (!i) {\n return false\n };\n i = g(i);\n return (i.isFacebookURI() && (i.getPath() == \"/ajax/vault/sharer_preview.php\"));\n }\n };\n e.exports = h;\n});\n__d(\"LitestandMessages\", [], function(a, b, c, d, e, f) {\n var g = {\n FILTER_SWITCH_BEGIN: \"LitestandMessages/FilterSwitchBegin\",\n NEWSFEED_LOAD: \"LitestandMessages/NewsFeedLoad\",\n LEAVE_HOME: \"LitestandMessages/LeaveHome\",\n UPDATE_HOME_COUNT: \"LitestandMessages/UpdateHomeCount\",\n STORIES_INSERTED: \"LitestandMessages/StoriesInserted\",\n STORIES_REMOVED: \"LitestandMessages/StoriesRemoved\",\n NEWER_STORIES_INSERTED: \"LitestandMessages/NewerStoriesInserted\",\n EXPAND_FILTER_SWITCHER: \"LitestandMessages/ExpandFilterSwitcher\",\n RESTORE_FILTER_SWITCHER: \"LitestandMessages/RestoreFilterSwitcher\",\n NEW_STORY_BAR_CLICK: \"LitestandMessages/NewStoryBarClick\",\n COLLAPSE_FILTER_SWITCHER: \"LitestandMessages/CollapseFilterSwitcher\",\n TOUR_BEGIN: \"LitestandMessages/TourBegin\",\n TOUR_END: \"LitestandMessages/TourEnd\",\n TOUR_SIDEBAR_HIGHLIGHT: \"LitestandMessages/TourSidebarHighlight\",\n TOUR_SIDEBAR_UNHIGHLIGHT: \"LitestandMessages/TourSidebarUnhighlight\",\n RHC_RELOADED: \"LitestandMessages/RHCReloaded\",\n UNLOCK_FILTER_SWITCHER: \"LitestandMessage/UnlockFilterSwitcher\"\n };\n e.exports = g;\n});\n__d(\"MegaphoneHelper\", [\"JSXDOM\",\"Animation\",\"Arbiter\",\"AsyncRequest\",\"DOM\",\"DOMDimensions\",\"Dialog\",\"LitestandMessages\",\"Parent\",\"Run\",\"Style\",\"csx\",\"cx\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"JSXDOM\"), h = b(\"Animation\"), i = b(\"Arbiter\"), j = b(\"AsyncRequest\"), k = b(\"DOM\"), l = b(\"DOMDimensions\"), m = b(\"Dialog\"), n = b(\"LitestandMessages\"), o = b(\"Parent\"), p = b(\"Run\"), q = b(\"Style\"), r = b(\"csx\"), s = b(\"cx\"), t = b(\"ge\");\n function u() {\n var w = k.scry(document.body, \".megaphone_story_wrapper\")[0];\n (w && k.remove(w));\n v.removeLitestandHomeWash();\n };\n var v = {\n hideStory: function(w, x, y, z, aa) {\n var ba = {\n mp_id: w,\n location: x,\n context: z\n };\n new j().setURI(\"/ajax/megaphone/megaphone_hide.php\").setMethod(\"POST\").setData(ba).setHandler(function(da) {\n (aa && aa(da));\n }).send();\n var ca = t(y);\n if (ca) {\n new h(ca).to(\"height\", 0).duration(500).hide().go();\n };\n },\n createModalStory: function(w, x, y, z) {\n var aa;\n if ((!w.buttons || !w.buttons.length)) {\n w.buttons = m.CLOSE;\n aa = v.hideStory(x, y, z, null);\n }\n ;\n var ba = new m(w);\n if (aa) {\n ba.setHandler(aa);\n };\n ba.show();\n },\n buttonOnClick: function(w, x, y, z, aa, ba) {\n var ca = function() {\n if (aa) {\n new j().setURI(z).send();\n }\n else document.location.href = z;\n ;\n };\n if (ba) {\n v.hideStory(w, x, \"\", y, ca);\n }\n else ca();\n ;\n },\n renderFullWidth: function(w, x, y) {\n var z = t(w);\n k.prependContent(z, x);\n if (y) {\n var aa = l.getElementDimensions(x), ba = g.div({\n className: \"-cx-PRIVATE-litestandMegaphone__whitewash\"\n });\n q.set(ba, \"height\", (aa.height + \"px\"));\n var ca = o.byClass(z, \"-cx-PUBLIC-litestandContent__root\");\n k.prependContent(ca, ba);\n p.onLeave(u);\n i.subscribeOnce(n.FILTER_SWITCH_BEGIN, u);\n }\n ;\n i.inform(\"Megaphone/show\", w, i.BEHAVIOR_PERSISTENT);\n },\n removeLitestandHomeWash: function() {\n var w = k.find(document.body, \".-cx-PRIVATE-litestandMegaphone__whitewash\");\n k.remove(w);\n }\n };\n e.exports = v;\n});\n__d(\"legacy:megaphone\", [\"MegaphoneHelper\",], function(a, b, c, d) {\n a.MegaphoneHelper = b(\"MegaphoneHelper\");\n}, 3);\n__d(\"ScubaSample\", [\"Banzai\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = \"scuba_sample\", h = b(\"Banzai\"), i = b(\"copyProperties\");\n function j(m, n, o) {\n this.fields = {\n };\n this.flush = function() {\n if (!m) {\n return\n };\n var p = {\n };\n i(p, this.fields);\n p._ds = m;\n if (n) {\n p._lid = n;\n };\n p._options = o;\n h.post(g, p);\n this.flush = function() {\n \n };\n this.flushed = true;\n };\n this.lid = n;\n return this;\n };\n function k(m, n, o) {\n if (!this.fields[m]) {\n this.fields[m] = {\n };\n };\n this.fields[m][n] = o;\n return this;\n };\n function l(m) {\n return function(n, o) {\n if (this.flushed) {\n return this\n };\n return k.call(this, m, n, o);\n };\n };\n i(j.prototype, {\n addNormal: l(\"normal\"),\n addInteger: l(\"int\"),\n addDenorm: l(\"denorm\")\n });\n e.exports = j;\n});\n__d(\"ScriptMonitorReporter\", [\"ScriptMonitor\",\"ScubaSample\",\"setTimeoutAcrossTransitions\",\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"ScriptMonitor\"), h = b(\"ScubaSample\"), i = b(\"setTimeoutAcrossTransitions\"), j = b(\"URI\");\n function k(o) {\n var p = [];\n for (var q = 0; (q < o.length); q++) {\n p.push(new RegExp(o[q], \"i\"));;\n };\n return p;\n };\n function l(o, p) {\n for (var q = 0; (q < p.length); q++) {\n if (p[q].src) {\n o.push(p[q].src);\n };\n };\n };\n function m(o, p) {\n for (var q = 0; (q < p.length); q++) {\n if (p[q].test(o)) {\n return true\n };\n };\n return false;\n };\n function n(o, p) {\n var q = g.stop(), r = {\n addGeoFields: 1,\n addBrowserFields: 1,\n addUser: 1\n }, s = {\n };\n l(q, document.getElementsByTagName(\"script\"));\n l(q, document.getElementsByTagName(\"iframe\"));\n for (var t = 0; (t < q.length); t++) {\n var u = q[t].replace(/\\?.*/, \"\"), v;\n if (s[u]) {\n continue;\n };\n s[u] = 1;\n if (!j.isValidURI(u)) {\n v = true;\n }\n else if (m(u, p)) {\n v = false;\n }\n else if (m(new j(u).getDomain(), o)) {\n v = false;\n }\n else v = true;\n \n \n ;\n if (v) {\n new h(\"unknown_scripts\", 0, r).addNormal(\"url\", u).flush();\n };\n };\n };\n e.exports = {\n runScan: function(o, p) {\n i(function() {\n n(k(o), k(p));\n }, 5000);\n }\n };\n});\n__d(\"MusicButtonStore\", [], function(a, b, c, d, e, f) {\n var g = {\n }, h = {\n addButton: function(i, j) {\n g[i] = j;\n return j;\n },\n getButton: function(i) {\n return g[i];\n },\n getButtons: function() {\n return g;\n },\n removeButton: function(i) {\n (g[i] && g[i].resetLoadingTimers());\n delete g[i];\n }\n };\n e.exports = h;\n});\n__d(\"MusicConstants\", [\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"URI\"), h = {\n DEBUG: false,\n LIVE_LISTEN_MIN_SPOTIFY_VERSION: \"spotify-0.6.6.0.g5a9eaca5\",\n enableDebug: function() {\n this.DEBUG = true;\n },\n sameURLs: function(i, j) {\n var k = /\\/$/;\n if ((i && j)) {\n i = g(i);\n j = g(j);\n return ((i.getDomain() == j.getDomain()) && (i.getPath() == j.getPath()));\n }\n ;\n return false;\n },\n greaterOrEqualToMinimumVersion: function(i, j) {\n var k = /(?:\\d+\\.)+/, l = i.match(k)[0].split(\".\").slice(0, -1), m = j.match(k)[0].split(\".\").slice(0, -1);\n if ((l.length !== m.length)) {\n return false\n };\n for (var n = 0; (n < m.length); n++) {\n if ((+l[n] < +m[n])) {\n return false;\n }\n else if ((+l[n] > +m[n])) {\n return true\n }\n ;\n };\n return true;\n },\n sanitizeForProviders: function(i) {\n var j = {\n };\n for (var k in i) {\n if (this.ALLOWED_EXTERNAL_CONTEXT_PARAMS[k]) {\n j[k] = i[k];\n };\n };\n return j;\n },\n OP: {\n RESUME: \"RESUME\",\n PAUSE: \"PAUSE\",\n PLAY: \"PLAY\",\n VERSION: \"VERSION\"\n },\n STATUS_CHANGE_OP: {\n STATUS: \"STATUS\",\n LOGIN: \"LOGIN\",\n REINFORM: \"REINFORM\"\n },\n STATUS_CHANGE_EVENT: {\n playing: \"PLAY_STATE_CHANGED\",\n track: \"TRACK_CHANGED\"\n },\n DIAGNOSTIC_EVENT: {\n ALL_PAUSED: \"ALL_PAUSED\",\n ALL_OFFLINE: \"ALL_OFFLINE\",\n OFFLINE: \"OFFLINE\",\n ONLINE: \"ONLINE\",\n SEARCHING: \"SEARCHING\",\n HIT: \"HIT\",\n MISS: \"MISS\",\n RESIGN: \"RESIGN\",\n IFRAME_POLLING: \"IFRAME_POLLING\",\n RELAUNCH: \"RELAUNCH\",\n STATE_CHANGE: \"STATE_CHANGE\",\n WRONG_VERSION: \"WRONG_VERSION\",\n SERVICE_ERROR: \"SERVICE_ERROR\",\n INCORRECT_ONLINE_STATE: \"INCORRECT_ONLINE_STATE\",\n LOG_SEND_OP: \"LOG_SEND_OP\",\n REQUEUE_OP: \"REQUEUE_OP\"\n },\n ALLOWED_STATUS_PARAMS: {\n playing: \"playing\",\n track: \"track\",\n context: \"context\",\n client_version: \"client_version\",\n start_time: \"start_time\",\n expires_in: \"expires_in\",\n open_graph_state: \"open_graph_state\"\n },\n ALLOWED_EXTERNAL_CONTEXT_PARAMS: {\n uri: true,\n song: true,\n radio_station: true,\n album: true,\n playlist: true,\n musician: true,\n song_list: true,\n offset: true,\n title: true,\n request_id: true,\n listen_with_friends: true,\n needs_tos: true\n },\n LIVE_LISTEN_OP: {\n NOW_LEADING: \"NOW_LEADING\",\n NOW_LISTENING: \"NOW_LISTENING\",\n END_SESSION: \"END_SESSION\",\n SONG_PLAYING: \"SONG_PLAYING\",\n LISTENER_UPDATE: \"LISTENER_UPDATE\",\n QUEUE_SESSION: \"QUEUE_SESSION\",\n PLAY_ERROR: \"PLAY_ERROR\",\n SESSION_UPDATED: \"SESSION_UPDATED\",\n QUEUING_SESSION: \"QUEUING_SESSION\"\n },\n MUSIC_BUTTON: {\n ACTIVATE: \"ACTIVATE\"\n },\n ERROR: {\n 1: \"SERVICE_UNAVAILABLE_WITHOUT_PREMIUM\",\n 2: \"SERVICE_UNAVAILABLE_WITHOUT_PREMIUM_OR_WAIT\",\n 3: \"SERVICE_UNAVAILABLE_BILLING_ISSUE\",\n 4: \"SERVICE_UNAVAILABLE_TECHNICAL_ISSUE\",\n 5: \"AUDIO_AD_PLAYING\",\n 99: \"SERVICE_TEMPORARILY_UNAVAILABLE\",\n 101: \"SONG_UNAVAILABLE_WITHOUT_PURCHASE\",\n 102: \"SONG_UNAVAILABLE_WITHOUT_PREMIUM\",\n 103: \"SONG_UNAVAILABLE_INDEFINITELY\"\n }\n };\n e.exports = (a.MusicConstants || h);\n});\n__d(\"MusicEvents\", [\"Arbiter\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\");\n e.exports = a.MusicEvents = new g();\n});\n__d(\"MusicButton\", [\"BanzaiODS\",\"Bootloader\",\"copyProperties\",\"CSS\",\"DOM\",\"MusicButtonStore\",\"MusicConstants\",\"MusicEvents\",\"Parent\",\"ScubaSample\",\"Tooltip\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"BanzaiODS\"), h = b(\"Bootloader\"), i = b(\"copyProperties\"), j = b(\"CSS\"), k = b(\"DOM\"), l = b(\"MusicButtonStore\"), m = b(\"MusicConstants\"), n = b(\"MusicEvents\"), o = b(\"Parent\"), p = b(\"ScubaSample\"), q = b(\"Tooltip\"), r = b(\"cx\"), s = function(t, u, v, w, x, y) {\n this.provider = t;\n this.buttonElem = u;\n this.url = v;\n this.context = (w || {\n });\n this.mediaType = x;\n this.setState(this.STATES.OFFLINE);\n this.tooltip = (y || \"\");\n n.subscribe(m.MUSIC_BUTTON.ACTIVATE, this.processClick.bind(this));\n };\n i(s, {\n tracksetableTypes: []\n });\n i(s.prototype, {\n SHOW_LOADING_TIMEOUT: 500,\n HIDE_LOADING_TIMEOUT: 4000,\n RECENTLY_ONLINE_TIMEOUT: 6000,\n STATES: {\n PLAYING: \"music_playing\",\n PAUSED: \"music_paused\",\n LOADING: \"music_loading\",\n DISABLED: \"music_disabled\",\n OFFLINE: \"music_offline\"\n },\n setState: function(t) {\n if ((t !== this.STATES.LOADING)) {\n this.resetLoadingTimers();\n this.previousState = (this.state || t);\n }\n ;\n if ((t === this.STATES.PLAYING)) {\n q.set(this.buttonElem, this.tooltip);\n }\n else q.set(this.buttonElem, \"\");\n ;\n var u = this.buttonElem.parentNode;\n (this.state && j.removeClass(u, this.state));\n this.state = t;\n j.addClass(u, this.state);\n },\n isTracksetable: function(t) {\n return (s.tracksetableTypes.indexOf(this.mediaType) !== -1);\n },\n handleIncomingEvent: function(t, u) {\n clearTimeout(this._showLoadingTimer);\n if (((u && u.provider) && (u.provider != this.provider))) {\n return\n };\n switch (t) {\n case m.DIAGNOSTIC_EVENT.ONLINE:\n \n case m.STATUS_CHANGE_EVENT.track:\n \n case m.STATUS_CHANGE_EVENT.playing:\n var v = ((u && u.track) && u.track.uri), w = ((u && u.context) && u.context.uri);\n if (((u && u.playing) && ((m.sameURLs(v, this.url) || m.sameURLs(w, this.url))))) {\n this.setState(this.STATES.PLAYING);\n }\n else if (((this.state === this.STATES.LOADING) && (((this.previousState === this.STATES.PAUSED) || (this.previousState === this.STATES.OFFLINE))))) {\n clearTimeout(this._attemptingPlayTimer);\n this._attemptingPlayTimer = this.setState.bind(this, this.STATES.PAUSED).defer(this.RECENTLY_ONLINE_TIMEOUT, false);\n }\n else if (!this._attemptingPlayTimer) {\n this.setState(this.STATES.PAUSED);\n }\n \n ;\n break;\n case m.DIAGNOSTIC_EVENT.OFFLINE:\n this.setState(this.STATES.OFFLINE);\n break;\n case m.DIAGNOSTIC_EVENT.ALL_OFFLINE:\n this.setState(this.STATES.OFFLINE);\n break;\n };\n },\n processClick: function(t, u) {\n if ((u != this.buttonElem)) {\n if ((this.state === this.STATES.LOADING)) {\n (this.previousState && this.setState(this.previousState));\n };\n return;\n }\n ;\n var v = new p(\"music_play_button_click\", null, {\n addBrowserFields: true,\n addGeoFields: true,\n addUser: true\n });\n v.addNormal(\"uses_bridge\", \"1\");\n v.addNormal(\"state\", this.state);\n v.addNormal(\"provider\", this.provider);\n v.addNormal(\"class\", \"MusicButton\");\n v.addDenorm(\"url\", this.url);\n v.flush();\n if ((this.state != this.STATES.PLAYING)) {\n g.bumpEntityKey(\"music_play_button\", \"music_play_button_click\");\n g.bumpEntityKey(\"music_play_button\", (\"music_play_button_click.\" + this.provider));\n var w = o.byClass(this.buttonElem, \"-cx-PRIVATE-musicAppIconAttribution__wrapper\");\n if (w) {\n j.addClass(w, \"-cx-PRIVATE-musicAppIconAttribution__iconshow\");\n j.removeClass.curry(w, \"-cx-PRIVATE-musicAppIconAttribution__iconshow\").defer(3000);\n }\n ;\n }\n ;\n var x = (this.isTracksetable() && o.byClass(this.buttonElem, \"music_trackset_container\")), y = [];\n if (x) {\n var z = x.getAttribute(\"data-trackset-title\"), aa = this.provider, ba = k.scry(x, \".music_button\");\n for (var ca = 0; (ca < ba.length); ca++) {\n var da = l.getButton([ba[ca].id,]);\n if (((da && (da.provider == aa)) && da.isTracksetable())) {\n y.push(da.url);\n };\n };\n }\n ;\n if (!a.Music) {\n this.showLoading(true);\n };\n h.loadModules([\"Music\",], function(ea) {\n var fa = (((x && (y.length > 1))) ? ea.playPauseSongList(this.provider, this.url, y, z, this.context) : ea.playPauseSong(this.provider, this.url, this.context));\n this.showLoading(!fa);\n }.bind(this));\n },\n showLoading: function(t) {\n this.resetLoadingTimers();\n this._hideLoadingTimer = this._timeout.bind(this, t).defer(this.HIDE_LOADING_TIMEOUT, false);\n this._showLoadingTimer = this.setState.bind(this, this.STATES.LOADING).defer(this.SHOW_LOADING_TIMEOUT, false);\n },\n resetLoadingTimers: function() {\n clearTimeout(this._hideLoadingTimer);\n clearTimeout(this._showLoadingTimer);\n clearTimeout(this._attemptingPlayTimer);\n this._attemptingPlayTimer = null;\n },\n destroy: function() {\n this.resetLoadingTimers();\n this.buttonElem = null;\n },\n _timeout: function(t) {\n (a.Music && a.Music.reInform([this.provider,]));\n if ((!t && (this.state === this.STATES.LOADING))) {\n this.setState(this.STATES.PAUSED);\n };\n }\n });\n e.exports = s;\n});\n__d(\"MusicButtonManager\", [\"Event\",\"DOM\",\"KeyedCallbackManager\",\"Layer\",\"MusicButton\",\"MusicButtonStore\",\"MusicConstants\",\"MusicEvents\",\"Parent\",\"$\",\"copyProperties\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"DOM\"), i = b(\"KeyedCallbackManager\"), j = b(\"Layer\"), k = b(\"MusicButton\"), l = b(\"MusicButtonStore\"), m = b(\"MusicConstants\"), n = b(\"MusicEvents\"), o = b(\"Parent\"), p = b(\"$\"), q = b(\"copyProperties\"), r = b(\"ge\"), s = new i(), t = null, u = {\n }, v = 0;\n function w(da) {\n var ea = da.getTarget(), fa = o.byClass(ea, \"music_button\");\n fa = (fa || ((!((da.getModifiers && da.getModifiers().any)) && x(ea))));\n if (!fa) {\n return\n };\n return y(fa, da);\n };\n function x(da) {\n var ea = (o.byClass(da, \"music_button_trigger\") && o.byClass(da, \"music_button_trigger_group\"));\n if (ea) {\n var fa = h.scry(ea, \".music_button\");\n if (fa.length) {\n return fa[0]\n };\n }\n ;\n return null;\n };\n function y(da, event) {\n (event && event.stop());\n n.inform(m.MUSIC_BUTTON.ACTIVATE, da);\n return false;\n };\n function z(da) {\n (a.Music && a.Music.reInform(da));\n };\n function aa(da, ea) {\n var fa = l.getButtons();\n for (var ga in fa) {\n if ((fa[ga].noGC || r(ga))) {\n fa[ga].handleIncomingEvent(da, ea);\n }\n else l.removeButton(ga);\n ;\n };\n };\n var ba = {\n init: function(da) {\n if (t) {\n return\n };\n t = true;\n k.tracksetableTypes = (da || []);\n g.listen(document.body, \"click\", w);\n n.subscribe([m.STATUS_CHANGE_EVENT.playing,m.STATUS_CHANGE_EVENT.track,m.DIAGNOSTIC_EVENT.OFFLINE,m.DIAGNOSTIC_EVENT.ALL_OFFLINE,m.DIAGNOSTIC_EVENT.ONLINE,], aa);\n },\n add: function(da, ea, fa, ga, ha, ia) {\n (t || ba.init());\n var ja = ea.id, ka = l.getButton(ja);\n if (ka) {\n return ka\n };\n ka = l.addButton(ja, new k(da, ea, fa, q({\n button_id: ja\n }, ga), ha, ia));\n var la = o.byClass(ea, \"uiOverlay\");\n if (la) {\n ka.noGC = true;\n var ma = j.subscribe(\"destroy\", function(na, oa) {\n if (h.contains(oa.getRoot(), ea)) {\n l.removeButton(ja);\n j.unsubscribe(ma);\n }\n ;\n });\n }\n ;\n if ((da && !u[da])) {\n u[da] = function() {\n var na = Object.keys(u);\n (na.length && z(na));\n u = {\n };\n }.defer();\n };\n return ka;\n },\n addButton: function(da, ea, fa, ga, ha, ia) {\n if (!r(ea)) {\n return\n };\n var ja = p(ea);\n return ba.add(da, ja, fa, ga, ha, ia);\n },\n asyncAddMusicButton: function(da, ea) {\n da.setAttribute(\"id\", (\"music_button_\" + v++));\n ca(da, ea);\n },\n tryAddButtonInDOM: function(da, ea) {\n var fa = r(da);\n (fa && ca(fa, ea));\n },\n addMusicData: function(da, ea, fa, ga, ha, ia) {\n s.setResource(da, {\n provider: ea,\n uri: fa,\n context: ga,\n media_type: ha,\n tooltip: ia\n });\n }\n };\n function ca(da, ea) {\n var fa = h.find(da, \"a.button_anchor\").getAttribute(\"href\");\n s.executeOrEnqueue(fa, function(ga) {\n return ba.add(ga.provider, da, ga.uri, ga.context, ga.media_type, (ea ? ga.tooltip : \"\"));\n });\n };\n e.exports = (a.MusicButtonManager || ba);\n});"); |
| // 8299 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s71b8b29965386bdab709a86545eeeb4fbf2046e1"); |
| // 8300 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"js0se\",]);\n}\n;\n;\n__d(\"NotificationURI\", [\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"URI\"), h = {\n localize: function(i) {\n i = g(i);\n if (!i.isFacebookURI()) {\n return i.toString();\n }\n ;\n ;\n var j = i.getSubdomain();\n return i.getUnqualifiedURI().getQualifiedURI().setSubdomain(j).toString();\n },\n snowliftable: function(i) {\n if (!i) {\n return false;\n }\n ;\n ;\n i = g(i);\n return ((i.isFacebookURI() && i.getQueryData().hasOwnProperty(\"fbid\")));\n },\n isVaultSetURI: function(i) {\n if (!i) {\n return false;\n }\n ;\n ;\n i = g(i);\n return ((i.isFacebookURI() && ((i.getPath() == \"/ajax/vault/sharer_preview.php\"))));\n }\n };\n e.exports = h;\n});\n__d(\"LitestandMessages\", [], function(a, b, c, d, e, f) {\n var g = {\n FILTER_SWITCH_BEGIN: \"LitestandMessages/FilterSwitchBegin\",\n NEWSFEED_LOAD: \"LitestandMessages/NewsFeedLoad\",\n LEAVE_HOME: \"LitestandMessages/LeaveHome\",\n UPDATE_HOME_COUNT: \"LitestandMessages/UpdateHomeCount\",\n STORIES_INSERTED: \"LitestandMessages/StoriesInserted\",\n STORIES_REMOVED: \"LitestandMessages/StoriesRemoved\",\n NEWER_STORIES_INSERTED: \"LitestandMessages/NewerStoriesInserted\",\n EXPAND_FILTER_SWITCHER: \"LitestandMessages/ExpandFilterSwitcher\",\n RESTORE_FILTER_SWITCHER: \"LitestandMessages/RestoreFilterSwitcher\",\n NEW_STORY_BAR_CLICK: \"LitestandMessages/NewStoryBarClick\",\n COLLAPSE_FILTER_SWITCHER: \"LitestandMessages/CollapseFilterSwitcher\",\n TOUR_BEGIN: \"LitestandMessages/TourBegin\",\n TOUR_END: \"LitestandMessages/TourEnd\",\n TOUR_SIDEBAR_HIGHLIGHT: \"LitestandMessages/TourSidebarHighlight\",\n TOUR_SIDEBAR_UNHIGHLIGHT: \"LitestandMessages/TourSidebarUnhighlight\",\n RHC_RELOADED: \"LitestandMessages/RHCReloaded\",\n UNLOCK_FILTER_SWITCHER: \"LitestandMessage/UnlockFilterSwitcher\"\n };\n e.exports = g;\n});\n__d(\"MegaphoneHelper\", [\"JSXDOM\",\"Animation\",\"Arbiter\",\"AsyncRequest\",\"DOM\",\"DOMDimensions\",\"Dialog\",\"LitestandMessages\",\"Parent\",\"Run\",\"Style\",\"csx\",\"cx\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"JSXDOM\"), h = b(\"Animation\"), i = b(\"Arbiter\"), j = b(\"AsyncRequest\"), k = b(\"DOM\"), l = b(\"DOMDimensions\"), m = b(\"Dialog\"), n = b(\"LitestandMessages\"), o = b(\"Parent\"), p = b(\"Run\"), q = b(\"Style\"), r = b(\"csx\"), s = b(\"cx\"), t = b(\"ge\");\n function u() {\n var w = k.scry(JSBNG__document.body, \".megaphone_story_wrapper\")[0];\n ((w && k.remove(w)));\n v.removeLitestandHomeWash();\n };\n;\n var v = {\n hideStory: function(w, x, y, z, aa) {\n var ba = {\n mp_id: w,\n JSBNG__location: x,\n context: z\n };\n new j().setURI(\"/ajax/megaphone/megaphone_hide.php\").setMethod(\"POST\").setData(ba).setHandler(function(da) {\n ((aa && aa(da)));\n }).send();\n var ca = t(y);\n if (ca) {\n new h(ca).to(\"height\", 0).duration(500).hide().go();\n }\n ;\n ;\n },\n createModalStory: function(w, x, y, z) {\n var aa;\n if (((!w.buttons || !w.buttons.length))) {\n w.buttons = m.CLOSE;\n aa = v.hideStory(x, y, z, null);\n }\n ;\n ;\n var ba = new m(w);\n if (aa) {\n ba.setHandler(aa);\n }\n ;\n ;\n ba.show();\n },\n buttonOnClick: function(w, x, y, z, aa, ba) {\n var ca = function() {\n if (aa) {\n new j().setURI(z).send();\n }\n else JSBNG__document.JSBNG__location.href = z;\n ;\n ;\n };\n if (ba) {\n v.hideStory(w, x, \"\", y, ca);\n }\n else ca();\n ;\n ;\n },\n renderFullWidth: function(w, x, y) {\n var z = t(w);\n k.prependContent(z, x);\n if (y) {\n var aa = l.getElementDimensions(x), ba = g.div({\n className: \"-cx-PRIVATE-litestandMegaphone__whitewash\"\n });\n q.set(ba, \"height\", ((aa.height + \"px\")));\n var ca = o.byClass(z, \"-cx-PUBLIC-litestandContent__root\");\n k.prependContent(ca, ba);\n p.onLeave(u);\n i.subscribeOnce(n.FILTER_SWITCH_BEGIN, u);\n }\n ;\n ;\n i.inform(\"Megaphone/show\", w, i.BEHAVIOR_PERSISTENT);\n },\n removeLitestandHomeWash: function() {\n var w = k.JSBNG__find(JSBNG__document.body, \".-cx-PRIVATE-litestandMegaphone__whitewash\");\n k.remove(w);\n }\n };\n e.exports = v;\n});\n__d(\"legacy:megaphone\", [\"MegaphoneHelper\",], function(a, b, c, d) {\n a.MegaphoneHelper = b(\"MegaphoneHelper\");\n}, 3);\n__d(\"ScubaSample\", [\"Banzai\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = \"scuba_sample\", h = b(\"Banzai\"), i = b(\"copyProperties\");\n function j(m, n, o) {\n this.fields = {\n };\n this.flush = function() {\n if (!m) {\n return;\n }\n ;\n ;\n var p = {\n };\n i(p, this.fields);\n p._ds = m;\n if (n) {\n p._lid = n;\n }\n ;\n ;\n p._options = o;\n h.post(g, p);\n this.flush = function() {\n \n };\n this.flushed = true;\n };\n this.lid = n;\n return this;\n };\n;\n function k(m, n, o) {\n if (!this.fields[m]) {\n this.fields[m] = {\n };\n }\n ;\n ;\n this.fields[m][n] = o;\n return this;\n };\n;\n function l(m) {\n return function(n, o) {\n if (this.flushed) {\n return this;\n }\n ;\n ;\n return k.call(this, m, n, o);\n };\n };\n;\n i(j.prototype, {\n addNormal: l(\"normal\"),\n addInteger: l(\"int\"),\n addDenorm: l(\"denorm\")\n });\n e.exports = j;\n});\n__d(\"ScriptMonitorReporter\", [\"ScriptMonitor\",\"ScubaSample\",\"setTimeoutAcrossTransitions\",\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"ScriptMonitor\"), h = b(\"ScubaSample\"), i = b(\"setTimeoutAcrossTransitions\"), j = b(\"URI\");\n function k(o) {\n var p = [];\n for (var q = 0; ((q < o.length)); q++) {\n p.push(new RegExp(o[q], \"i\"));\n ;\n };\n ;\n return p;\n };\n;\n function l(o, p) {\n for (var q = 0; ((q < p.length)); q++) {\n if (p[q].src) {\n o.push(p[q].src);\n }\n ;\n ;\n };\n ;\n };\n;\n function m(o, p) {\n for (var q = 0; ((q < p.length)); q++) {\n if (p[q].test(o)) {\n return true;\n }\n ;\n ;\n };\n ;\n return false;\n };\n;\n function n(o, p) {\n var q = g.JSBNG__stop(), r = {\n addGeoFields: 1,\n addBrowserFields: 1,\n addUser: 1\n }, s = {\n };\n l(q, JSBNG__document.getElementsByTagName(\"script\"));\n l(q, JSBNG__document.getElementsByTagName(\"div\"));\n for (var t = 0; ((t < q.length)); t++) {\n var u = q[t].replace(/\\?.*/, \"\"), v;\n if (s[u]) {\n continue;\n }\n ;\n ;\n s[u] = 1;\n if (!j.isValidURI(u)) {\n v = true;\n }\n else if (m(u, p)) {\n v = false;\n }\n else if (m(new j(u).getDomain(), o)) {\n v = false;\n }\n else v = true;\n \n \n ;\n ;\n if (v) {\n new h(\"unknown_scripts\", 0, r).addNormal(\"url\", u).flush();\n }\n ;\n ;\n };\n ;\n };\n;\n e.exports = {\n runScan: function(o, p) {\n i(function() {\n n(k(o), k(p));\n }, 5000);\n }\n };\n});\n__d(\"MusicButtonStore\", [], function(a, b, c, d, e, f) {\n var g = {\n }, h = {\n addButton: function(i, j) {\n g[i] = j;\n return j;\n },\n getButton: function(i) {\n return g[i];\n },\n getButtons: function() {\n return g;\n },\n removeButton: function(i) {\n ((g[i] && g[i].resetLoadingTimers()));\n delete g[i];\n }\n };\n e.exports = h;\n});\n__d(\"MusicConstants\", [\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"URI\"), h = {\n DEBUG: false,\n LIVE_LISTEN_MIN_SPOTIFY_VERSION: \"spotify-0.6.6.0.g5a9eaca5\",\n enableDebug: function() {\n this.DEBUG = true;\n },\n sameURLs: function(i, j) {\n var k = /\\/$/;\n if (((i && j))) {\n i = g(i);\n j = g(j);\n return ((((i.getDomain() == j.getDomain())) && ((i.getPath() == j.getPath()))));\n }\n ;\n ;\n return false;\n },\n greaterOrEqualToMinimumVersion: function(i, j) {\n var k = /(?:\\d+\\.)+/, l = i.match(k)[0].split(\".\").slice(0, -1), m = j.match(k)[0].split(\".\").slice(0, -1);\n if (((l.length !== m.length))) {\n return false;\n }\n ;\n ;\n for (var n = 0; ((n < m.length)); n++) {\n if (((+l[n] < +m[n]))) {\n return false;\n }\n else if (((+l[n] > +m[n]))) {\n return true;\n }\n \n ;\n ;\n };\n ;\n return true;\n },\n sanitizeForProviders: function(i) {\n var j = {\n };\n {\n var fin122keys = ((window.top.JSBNG_Replay.forInKeys)((i))), fin122i = (0);\n var k;\n for (; (fin122i < fin122keys.length); (fin122i++)) {\n ((k) = (fin122keys[fin122i]));\n {\n if (this.ALLOWED_EXTERNAL_CONTEXT_PARAMS[k]) {\n j[k] = i[k];\n }\n ;\n ;\n };\n };\n };\n ;\n return j;\n },\n OP: {\n RESUME: \"RESUME\",\n PAUSE: \"PAUSE\",\n PLAY: \"PLAY\",\n VERSION: \"VERSION\"\n },\n STATUS_CHANGE_OP: {\n STATUS: \"STATUS\",\n LOGIN: \"LOGIN\",\n REINFORM: \"REINFORM\"\n },\n STATUS_CHANGE_EVENT: {\n playing: \"PLAY_STATE_CHANGED\",\n track: \"TRACK_CHANGED\"\n },\n DIAGNOSTIC_EVENT: {\n ALL_PAUSED: \"ALL_PAUSED\",\n ALL_OFFLINE: \"ALL_OFFLINE\",\n OFFLINE: \"OFFLINE\",\n ONLINE: \"ONLINE\",\n SEARCHING: \"SEARCHING\",\n HIT: \"HIT\",\n MISS: \"MISS\",\n RESIGN: \"RESIGN\",\n IFRAME_POLLING: \"IFRAME_POLLING\",\n RELAUNCH: \"RELAUNCH\",\n STATE_CHANGE: \"STATE_CHANGE\",\n WRONG_VERSION: \"WRONG_VERSION\",\n SERVICE_ERROR: \"SERVICE_ERROR\",\n INCORRECT_ONLINE_STATE: \"INCORRECT_ONLINE_STATE\",\n LOG_SEND_OP: \"LOG_SEND_OP\",\n REQUEUE_OP: \"REQUEUE_OP\"\n },\n ALLOWED_STATUS_PARAMS: {\n playing: \"playing\",\n track: \"track\",\n context: \"context\",\n client_version: \"client_version\",\n start_time: \"start_time\",\n expires_in: \"expires_in\",\n open_graph_state: \"open_graph_state\"\n },\n ALLOWED_EXTERNAL_CONTEXT_PARAMS: {\n uri: true,\n song: true,\n radio_station: true,\n album: true,\n playlist: true,\n musician: true,\n song_list: true,\n offset: true,\n title: true,\n request_id: true,\n listen_with_friends: true,\n needs_tos: true\n },\n LIVE_LISTEN_OP: {\n NOW_LEADING: \"NOW_LEADING\",\n NOW_LISTENING: \"NOW_LISTENING\",\n END_SESSION: \"END_SESSION\",\n SONG_PLAYING: \"SONG_PLAYING\",\n LISTENER_UPDATE: \"LISTENER_UPDATE\",\n QUEUE_SESSION: \"QUEUE_SESSION\",\n PLAY_ERROR: \"PLAY_ERROR\",\n SESSION_UPDATED: \"SESSION_UPDATED\",\n QUEUING_SESSION: \"QUEUING_SESSION\"\n },\n MUSIC_BUTTON: {\n ACTIVATE: \"ACTIVATE\"\n },\n ERROR: {\n 1: \"SERVICE_UNAVAILABLE_WITHOUT_PREMIUM\",\n 2: \"SERVICE_UNAVAILABLE_WITHOUT_PREMIUM_OR_WAIT\",\n 3: \"SERVICE_UNAVAILABLE_BILLING_ISSUE\",\n 4: \"SERVICE_UNAVAILABLE_TECHNICAL_ISSUE\",\n 5: \"AUDIO_AD_PLAYING\",\n 99: \"SERVICE_TEMPORARILY_UNAVAILABLE\",\n 101: \"SONG_UNAVAILABLE_WITHOUT_PURCHASE\",\n 102: \"SONG_UNAVAILABLE_WITHOUT_PREMIUM\",\n 103: \"SONG_UNAVAILABLE_INDEFINITELY\"\n }\n };\n e.exports = ((a.MusicConstants || h));\n});\n__d(\"MusicEvents\", [\"Arbiter\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\");\n e.exports = a.MusicEvents = new g();\n});\n__d(\"MusicButton\", [\"BanzaiODS\",\"Bootloader\",\"copyProperties\",\"JSBNG__CSS\",\"DOM\",\"MusicButtonStore\",\"MusicConstants\",\"MusicEvents\",\"Parent\",\"ScubaSample\",\"Tooltip\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"BanzaiODS\"), h = b(\"Bootloader\"), i = b(\"copyProperties\"), j = b(\"JSBNG__CSS\"), k = b(\"DOM\"), l = b(\"MusicButtonStore\"), m = b(\"MusicConstants\"), n = b(\"MusicEvents\"), o = b(\"Parent\"), p = b(\"ScubaSample\"), q = b(\"Tooltip\"), r = b(\"cx\"), s = function(t, u, v, w, x, y) {\n this.provider = t;\n this.buttonElem = u;\n this.url = v;\n this.context = ((w || {\n }));\n this.mediaType = x;\n this.setState(this.STATES.OFFLINE);\n this.tooltip = ((y || \"\"));\n n.subscribe(m.MUSIC_BUTTON.ACTIVATE, this.processClick.bind(this));\n };\n i(s, {\n tracksetableTypes: []\n });\n i(s.prototype, {\n SHOW_LOADING_TIMEOUT: 500,\n HIDE_LOADING_TIMEOUT: 4000,\n RECENTLY_ONLINE_TIMEOUT: 6000,\n STATES: {\n PLAYING: \"music_playing\",\n PAUSED: \"music_paused\",\n LOADING: \"music_loading\",\n DISABLED: \"music_disabled\",\n OFFLINE: \"music_offline\"\n },\n setState: function(t) {\n if (((t !== this.STATES.LOADING))) {\n this.resetLoadingTimers();\n this.previousState = ((this.state || t));\n }\n ;\n ;\n if (((t === this.STATES.PLAYING))) {\n q.set(this.buttonElem, this.tooltip);\n }\n else q.set(this.buttonElem, \"\");\n ;\n ;\n var u = this.buttonElem.parentNode;\n ((this.state && j.removeClass(u, this.state)));\n this.state = t;\n j.addClass(u, this.state);\n },\n isTracksetable: function(t) {\n return ((s.tracksetableTypes.indexOf(this.mediaType) !== -1));\n },\n handleIncomingEvent: function(t, u) {\n JSBNG__clearTimeout(this._showLoadingTimer);\n if (((((u && u.provider)) && ((u.provider != this.provider))))) {\n return;\n }\n ;\n ;\n switch (t) {\n case m.DIAGNOSTIC_EVENT.ONLINE:\n \n case m.STATUS_CHANGE_EVENT.track:\n \n case m.STATUS_CHANGE_EVENT.playing:\n var v = ((((u && u.track)) && u.track.uri)), w = ((((u && u.context)) && u.context.uri));\n if (((((u && u.playing)) && ((m.sameURLs(v, this.url) || m.sameURLs(w, this.url)))))) {\n this.setState(this.STATES.PLAYING);\n }\n else if (((((this.state === this.STATES.LOADING)) && ((((this.previousState === this.STATES.PAUSED)) || ((this.previousState === this.STATES.OFFLINE))))))) {\n JSBNG__clearTimeout(this._attemptingPlayTimer);\n this._attemptingPlayTimer = this.setState.bind(this, this.STATES.PAUSED).defer(this.RECENTLY_ONLINE_TIMEOUT, false);\n }\n else if (!this._attemptingPlayTimer) {\n this.setState(this.STATES.PAUSED);\n }\n \n \n ;\n ;\n break;\n case m.DIAGNOSTIC_EVENT.OFFLINE:\n this.setState(this.STATES.OFFLINE);\n break;\n case m.DIAGNOSTIC_EVENT.ALL_OFFLINE:\n this.setState(this.STATES.OFFLINE);\n break;\n };\n ;\n },\n processClick: function(t, u) {\n if (((u != this.buttonElem))) {\n if (((this.state === this.STATES.LOADING))) {\n ((this.previousState && this.setState(this.previousState)));\n }\n ;\n ;\n return;\n }\n ;\n ;\n var v = new p(\"music_play_button_click\", null, {\n addBrowserFields: true,\n addGeoFields: true,\n addUser: true\n });\n v.addNormal(\"uses_bridge\", \"1\");\n v.addNormal(\"state\", this.state);\n v.addNormal(\"provider\", this.provider);\n v.addNormal(\"class\", \"MusicButton\");\n v.addDenorm(\"url\", this.url);\n v.flush();\n if (((this.state != this.STATES.PLAYING))) {\n g.bumpEntityKey(\"music_play_button\", \"music_play_button_click\");\n g.bumpEntityKey(\"music_play_button\", ((\"music_play_button_click.\" + this.provider)));\n var w = o.byClass(this.buttonElem, \"-cx-PRIVATE-musicAppIconAttribution__wrapper\");\n if (w) {\n j.addClass(w, \"-cx-PRIVATE-musicAppIconAttribution__iconshow\");\n j.removeClass.curry(w, \"-cx-PRIVATE-musicAppIconAttribution__iconshow\").defer(3000);\n }\n ;\n ;\n }\n ;\n ;\n var x = ((this.isTracksetable() && o.byClass(this.buttonElem, \"music_trackset_container\"))), y = [];\n if (x) {\n var z = x.getAttribute(\"data-trackset-title\"), aa = this.provider, ba = k.scry(x, \".music_button\");\n for (var ca = 0; ((ca < ba.length)); ca++) {\n var da = l.getButton([ba[ca].id,]);\n if (((((da && ((da.provider == aa)))) && da.isTracksetable()))) {\n y.push(da.url);\n }\n ;\n ;\n };\n ;\n }\n ;\n ;\n if (!a.Music) {\n this.showLoading(true);\n }\n ;\n ;\n h.loadModules([\"Music\",], function(ea) {\n var fa = ((((x && ((y.length > 1)))) ? ea.playPauseSongList(this.provider, this.url, y, z, this.context) : ea.playPauseSong(this.provider, this.url, this.context)));\n this.showLoading(!fa);\n }.bind(this));\n },\n showLoading: function(t) {\n this.resetLoadingTimers();\n this._hideLoadingTimer = this._timeout.bind(this, t).defer(this.HIDE_LOADING_TIMEOUT, false);\n this._showLoadingTimer = this.setState.bind(this, this.STATES.LOADING).defer(this.SHOW_LOADING_TIMEOUT, false);\n },\n resetLoadingTimers: function() {\n JSBNG__clearTimeout(this._hideLoadingTimer);\n JSBNG__clearTimeout(this._showLoadingTimer);\n JSBNG__clearTimeout(this._attemptingPlayTimer);\n this._attemptingPlayTimer = null;\n },\n destroy: function() {\n this.resetLoadingTimers();\n this.buttonElem = null;\n },\n _timeout: function(t) {\n ((a.Music && a.Music.reInform([this.provider,])));\n if (((!t && ((this.state === this.STATES.LOADING))))) {\n this.setState(this.STATES.PAUSED);\n }\n ;\n ;\n }\n });\n e.exports = s;\n});\n__d(\"MusicButtonManager\", [\"JSBNG__Event\",\"DOM\",\"KeyedCallbackManager\",\"Layer\",\"MusicButton\",\"MusicButtonStore\",\"MusicConstants\",\"MusicEvents\",\"Parent\",\"$\",\"copyProperties\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"DOM\"), i = b(\"KeyedCallbackManager\"), j = b(\"Layer\"), k = b(\"MusicButton\"), l = b(\"MusicButtonStore\"), m = b(\"MusicConstants\"), n = b(\"MusicEvents\"), o = b(\"Parent\"), p = b(\"$\"), q = b(\"copyProperties\"), r = b(\"ge\"), s = new i(), t = null, u = {\n }, v = 0;\n function w(da) {\n var ea = da.getTarget(), fa = o.byClass(ea, \"music_button\");\n fa = ((fa || ((!((da.getModifiers && da.getModifiers().any)) && x(ea)))));\n if (!fa) {\n return;\n }\n ;\n ;\n return y(fa, da);\n };\n;\n function x(da) {\n var ea = ((o.byClass(da, \"music_button_trigger\") && o.byClass(da, \"music_button_trigger_group\")));\n if (ea) {\n var fa = h.scry(ea, \".music_button\");\n if (fa.length) {\n return fa[0];\n }\n ;\n ;\n }\n ;\n ;\n return null;\n };\n;\n function y(da, JSBNG__event) {\n ((JSBNG__event && JSBNG__event.JSBNG__stop()));\n n.inform(m.MUSIC_BUTTON.ACTIVATE, da);\n return false;\n };\n;\n function z(da) {\n ((a.Music && a.Music.reInform(da)));\n };\n;\n function aa(da, ea) {\n var fa = l.getButtons();\n {\n var fin123keys = ((window.top.JSBNG_Replay.forInKeys)((fa))), fin123i = (0);\n var ga;\n for (; (fin123i < fin123keys.length); (fin123i++)) {\n ((ga) = (fin123keys[fin123i]));\n {\n if (((fa[ga].noGC || r(ga)))) {\n fa[ga].handleIncomingEvent(da, ea);\n }\n else l.removeButton(ga);\n ;\n ;\n };\n };\n };\n ;\n };\n;\n var ba = {\n init: function(da) {\n if (t) {\n return;\n }\n ;\n ;\n t = true;\n k.tracksetableTypes = ((da || []));\n g.listen(JSBNG__document.body, \"click\", w);\n n.subscribe([m.STATUS_CHANGE_EVENT.playing,m.STATUS_CHANGE_EVENT.track,m.DIAGNOSTIC_EVENT.OFFLINE,m.DIAGNOSTIC_EVENT.ALL_OFFLINE,m.DIAGNOSTIC_EVENT.ONLINE,], aa);\n },\n add: function(da, ea, fa, ga, ha, ia) {\n ((t || ba.init()));\n var ja = ea.id, ka = l.getButton(ja);\n if (ka) {\n return ka;\n }\n ;\n ;\n ka = l.addButton(ja, new k(da, ea, fa, q({\n button_id: ja\n }, ga), ha, ia));\n var la = o.byClass(ea, \"uiOverlay\");\n if (la) {\n ka.noGC = true;\n var ma = j.subscribe(\"destroy\", function(na, oa) {\n if (h.contains(oa.getRoot(), ea)) {\n l.removeButton(ja);\n j.unsubscribe(ma);\n }\n ;\n ;\n });\n }\n ;\n ;\n if (((da && !u[da]))) {\n u[da] = function() {\n var na = Object.keys(u);\n ((na.length && z(na)));\n u = {\n };\n }.defer();\n }\n ;\n ;\n return ka;\n },\n addButton: function(da, ea, fa, ga, ha, ia) {\n if (!r(ea)) {\n return;\n }\n ;\n ;\n var ja = p(ea);\n return ba.add(da, ja, fa, ga, ha, ia);\n },\n asyncAddMusicButton: function(da, ea) {\n da.setAttribute(\"id\", ((\"music_button_\" + v++)));\n ca(da, ea);\n },\n tryAddButtonInDOM: function(da, ea) {\n var fa = r(da);\n ((fa && ca(fa, ea)));\n },\n addMusicData: function(da, ea, fa, ga, ha, ia) {\n s.setResource(da, {\n provider: ea,\n uri: fa,\n context: ga,\n media_type: ha,\n tooltip: ia\n });\n }\n };\n function ca(da, ea) {\n var fa = h.JSBNG__find(da, \"a.button_anchor\").getAttribute(\"href\");\n s.executeOrEnqueue(fa, function(ga) {\n return ba.add(ga.provider, da, ga.uri, ga.context, ga.media_type, ((ea ? ga.tooltip : \"\")));\n });\n };\n;\n e.exports = ((a.MusicButtonManager || ba));\n});"); |
| // 8333 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o106,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y0/r/BIPIZ5kbghZ.js",o107); |
| // undefined |
| o106 = null; |
| // undefined |
| o107 = null; |
| // 8930 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"zBhY6\",]);\n}\n;\n__d(\"MercuryAPIArgsSource\", [], function(a, b, c, d, e, f) {\n e.exports = {\n JEWEL: \"jewel\",\n CHAT: \"chat\",\n MERCURY: \"mercury\",\n WEBMESSENGER: \"web_messenger\"\n };\n});\n__d(\"MercuryActionStatus\", [], function(a, b, c, d, e, f) {\n e.exports = {\n UNCONFIRMED: 3,\n UNSENT: 0,\n RESENDING: 7,\n RESENT: 6,\n UNABLE_TO_CONFIRM: 5,\n FAILED_UNKNOWN_REASON: 4,\n SUCCESS: 1,\n ERROR: 10\n };\n});\n__d(\"MercuryActionTypeConstants\", [], function(a, b, c, d, e, f) {\n e.exports = {\n LOG_MESSAGE: \"ma-type:log-message\",\n CLEAR_CHAT: \"ma-type:clear_chat\",\n UPDATE_ACTION_ID: \"ma-type:update-action-id\",\n DELETE_MESSAGES: \"ma-type:delete-messages\",\n CHANGE_FOLDER: \"ma-type:change-folder\",\n SEND_MESSAGE: \"ma-type:send-message\",\n CHANGE_ARCHIVED_STATUS: \"ma-type:change-archived-status\",\n DELETE_THREAD: \"ma-type:delete-thread\",\n USER_GENERATED_MESSAGE: \"ma-type:user-generated-message\",\n CHANGE_READ_STATUS: \"ma-type:change_read_status\",\n CHANGE_MUTE_SETTINGS: \"ma-type:change-mute-settings\"\n };\n});\n__d(\"MercuryAttachmentContentType\", [], function(a, b, c, d, e, f) {\n e.exports = {\n UNKNOWN: \"attach:unknown\",\n PHOTO: \"attach:image\",\n VIDEO: \"attach:video\",\n MSWORD: \"attach:ms:word\",\n VOICE: \"attach:voice\",\n MSPPT: \"attach:ms:ppt\",\n TEXT: \"attach:text\",\n MUSIC: \"attach:music\",\n MSXLS: \"attach:ms:xls\"\n };\n});\n__d(\"MercuryAttachmentType\", [], function(a, b, c, d, e, f) {\n e.exports = {\n STICKER: \"sticker\",\n PHOTO: \"photo\",\n FILE: \"file\",\n SHARE: \"share\",\n ERROR: \"error\"\n };\n});\n__d(\"MercuryErrorType\", [], function(a, b, c, d, e, f) {\n e.exports = {\n SERVER: 1,\n TRANSPORT: 2,\n TIMEOUT: 3\n };\n});\n__d(\"MercuryGenericConstants\", [], function(a, b, c, d, e, f) {\n e.exports = {\n PENDING_THREAD_ID: \"pending:pending\"\n };\n});\n__d(\"MercuryGlobalActionType\", [], function(a, b, c, d, e, f) {\n e.exports = {\n MARK_ALL_READ: \"mga-type:mark-all-read\"\n };\n});\n__d(\"MercuryLogMessageType\", [], function(a, b, c, d, e, f) {\n e.exports = {\n SERVER_ERROR: \"log:error-msg\",\n UNSUBSCRIBE: \"log:unsubscribe\",\n JOINABLE_JOINED: \"log:joinable-joined\",\n JOINABLE_CREATED: \"log:joinable-created\",\n LIVE_LISTEN: \"log:live-listen\",\n PHONE_CALL: \"log:phone-call\",\n THREAD_IMAGE: \"log:thread-image\",\n THREAD_NAME: \"log:thread-name\",\n VIDEO_CALL: \"log:video-call\",\n SUBSCRIBE: \"log:subscribe\"\n };\n});\n__d(\"MercuryParticipantTypes\", [], function(a, b, c, d, e, f) {\n e.exports = {\n FRIEND: \"friend\",\n USER: \"user\",\n THREAD: \"thread\",\n EVENT: \"event\",\n PAGE: \"page\"\n };\n});\n__d(\"MercuryPayloadSource\", [], function(a, b, c, d, e, f) {\n e.exports = {\n SERVER_INITIAL_DATA: \"server_initial_data\",\n CLIENT_DELETE_THREAD: \"client_delete_thread\",\n SERVER_SAVE_DRAFT: \"server_save_draft\",\n SERVER_CHANGE_ARCHIVED_STATUS: \"server_change_archived_status\",\n SERVER_SEARCH: \"server_search\",\n CLIENT_CHANGE_MUTE_SETTINGS: \"client_change_mute_settings\",\n SERVER_UNREAD_THREADS: \"server_unread_threads\",\n SERVER_MARK_SEEN: \"server_mark_seen\",\n SERVER_THREAD_SYNC: \"server_thread_sync\",\n CLIENT_DELETE_MESSAGES: \"client_delete_messages\",\n SERVER_FETCH_THREADLIST_INFO: \"server_fetch_threadlist_info\",\n CLIENT_CHANNEL_MESSAGE: \"client_channel_message\",\n CLIENT_CHANGE_FOLDER: \"client_change_folder\",\n CLIENT_CHANGE_READ_STATUS: \"client_change_read_status\",\n CLIENT_CLEAR_CHAT: \"client_clear_chat\",\n SERVER_FETCH_THREAD_INFO: \"server_fetch_thread_info\",\n SERVER_CHANGE_READ_STATUS: \"server_change_read_status\",\n SERVER_SEND_MESSAGE: \"server_send_message\",\n CLIENT_SAVE_DRAFT: \"client_save_draft\",\n UNKNOWN: \"unknown\",\n SERVER_MARK_FOLDER_READ: \"server_mark_folder_read\",\n SERVER_CONFIRM_MESSAGES: \"server_confirm_messages\",\n SERVER_TAB_PRESENCE: \"server_tab_presence\",\n CLIENT_CHANGE_ARCHIVED_STATUS: \"client_change-archived_status\",\n CLIENT_SEND_MESSAGE: \"client_send_message\",\n CLIENT_HANDLE_ERROR: \"client_handle_error\"\n };\n});\n__d(\"MercurySourceType\", [], function(a, b, c, d, e, f) {\n e.exports = {\n GIGABOXX_BLAST: \"source:gigaboxx:blast\",\n TITAN_FACEWEB_BUFFY: \"source:titan:faceweb_buffy\",\n TITAN_FACEWEB_UNKNOWN: \"source:titan:faceweb_unknown\",\n CHAT_WEB: \"source:chat:web\",\n WEBRTC_MOBILE: \"source:webrtc:mobile\",\n GIGABOXX_API: \"source:gigaboxx:api\",\n TITAN_M_JAPAN: \"source:titan:m_japan\",\n BUFFY_SMS: \"source:buffy:sms\",\n SEND_PLUGIN: \"source:sendplugin\",\n CHAT_MEEBO: \"source:chat:meebo\",\n TITAN_FACEWEB_IPAD: \"source:titan:faceweb_ipad\",\n TITAN_FACEWEB_IPHONE: \"source:titan:faceweb_iphone\",\n TEST: \"source:test\",\n WEB: \"source:web\",\n SOCIALFOX: \"source:socialfox\",\n EMAIL: \"source:email\",\n TITAN_API: \"source:titan:api\",\n GIGABOXX_WEB: \"source:gigaboxx:web\",\n DESKTOP: \"source:desktop\",\n TITAN_FACEWEB_ANDROID: \"source:titan:faceweb_android\",\n LEIA: \"source:leia\",\n CHAT_JABBER: \"source:chat:jabber\",\n CHAT_TEST: \"source:chat:test\",\n SHARE_DIALOG: \"source:share:dialog\",\n GIGABOXX_WAP: \"source:gigaboxx:wap\",\n CHAT: \"source:chat\",\n TITAN_M_APP: \"source:titan:m_app\",\n TITAN_M_TOUCH: \"source:titan:m_touch\",\n TITAN_ORCA: \"source:titan:orca\",\n TITAN_WAP: \"source:titan:wap\",\n TITAN_EMAIL_REPLY: \"source:titan:emailreply\",\n CHAT_IPHONE: \"source:chat:iphone\",\n SMS: \"source:sms\",\n TITAN_M_BASIC: \"source:titan:m_basic\",\n TITAN_M_MINI: \"source:titan:m_mini\",\n GIGABOXX_MOBILE: \"source:gigaboxx:mobile\",\n UNKNOWN: \"source:unknown\",\n TITAN_WEB: \"source:titan:web\",\n TITAN_M_ZERO: \"source:titan:m_zero\",\n MOBILE: \"source:mobile\",\n PAID_PROMOTION: \"source:paid_promotion\",\n TITAN_API_MOBILE: \"source:titan:api_mobile\",\n HELPCENTER: \"source:helpcenter\",\n GIGABOXX_EMAIL_REPLY: \"source:gigaboxx:emailreply\",\n CHAT_ORCA: \"source:chat:orca\",\n TITAN_M_TALK: \"source:titan:m_talk\",\n NEW_SHARE_DIALOG: \"source:share:dialog:new\"\n };\n});\n__d(\"MercuryThreadMode\", [], function(a, b, c, d, e, f) {\n e.exports = {\n EMAIL_ORIGINATED: 1,\n OBJECT_ORIGINATED: 3,\n TITAN_ORIGINATED: 2\n };\n});\n__d(\"MessagingTag\", [], function(a, b, c, d, e, f) {\n e.exports = {\n MTA_SYSTEM_MESSAGE: \"MTA:system_message\",\n SENT: \"sent\",\n INBOX: \"inbox\",\n SMS_TAG_ROOT: \"SMSShortcode:\",\n UPDATES: \"broadcasts_inbox\",\n OTHER: \"other\",\n GROUPS: \"groups\",\n FILTERED_CONTENT: \"filtered_content\",\n ACTION_ARCHIVED: \"action:archived\",\n UNREAD: \"unread\",\n BCC: \"header:bcc\",\n SMS_MUTE: \"sms_mute\",\n ARCHIVED: \"archived\",\n DOMAIN_AUTH_PASS: \"MTA:dmarc:pass\",\n EVENT: \"event\",\n VOICEMAIL: \"voicemail\",\n DOMAIN_AUTH_FAIL: \"MTA:dmarc:fail\",\n SPAM_SPOOFING: \"spam:spoofing\",\n SPOOF_WARNING: \"MTA:spoof_warning\",\n SPAM: \"spam\",\n EMAIL_MESSAGE: \"source:email\",\n EMAIL: \"email\",\n APP_ID_ROOT: \"app_id:\"\n };\n});\n__d(\"PresenceUtil\", [\"Cookie\",\"Env\",\"randomInt\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Cookie\"), h = b(\"Env\"), i = b(\"randomInt\"), j = b(\"tx\"), k = (i(0, 4294967295) + 1), l = {\n checkMaintenanceError: function(m) {\n if ((m.getError() == 1356007)) {\n return true\n };\n return false;\n },\n getErrorDescription: function(m) {\n var n = m.getError(), o = m.getErrorDescription();\n if (!o) {\n o = \"An error occurred.\";\n };\n if ((n == 1357001)) {\n o = \"Your session has timed out. Please log in.\";\n };\n return o;\n },\n getSessionID: function() {\n return k;\n },\n hasUserCookie: function() {\n return (h.user === g.get(\"c_user\"));\n }\n };\n e.exports = l;\n});\n__d(\"PresencePrivacy\", [\"hasArrayNature\",\"Arbiter\",\"AsyncRequest\",\"ChannelConstants\",\"copyProperties\",\"Env\",\"JSLogger\",\"PresenceUtil\",\"PresencePrivacyInitialData\",], function(a, b, c, d, e, f) {\n var g = b(\"hasArrayNature\"), h = b(\"Arbiter\"), i = b(\"AsyncRequest\"), j = b(\"ChannelConstants\"), k = b(\"copyProperties\"), l = b(\"Env\"), m = b(\"JSLogger\"), n = b(\"PresenceUtil\"), o = b(\"PresencePrivacyInitialData\"), p = \"/ajax/chat/privacy/settings.php\", q = \"/ajax/chat/privacy/online_policy.php\", r = \"/ajax/chat/privacy/visibility.php\", s = \"friend_visibility\", t = \"visibility\", u = \"online_policy\", v = k({\n }, o.privacyData), w = o.visibility, x = k({\n }, o.privacyData), y = w, z = o.onlinePolicy, aa = z, ba = [], ca = false;\n function da() {\n return m.create(\"blackbird\");\n };\n var ea = k(new h(), {\n WHITELISTED: 1,\n BLACKLISTED: -1,\n UNLISTED: 0,\n ONLINE: 1,\n OFFLINE: 0,\n ONLINE_TO_WHITELIST: 0,\n ONLINE_TO_BLACKLIST: 1\n });\n function fa(ra) {\n var sa;\n for (sa in ra) {\n var ta = ra[sa];\n if ((sa == l.user)) {\n da().error(\"set_viewer_visibility\");\n throw new Error(\"Invalid to set current user's visibility\");\n }\n ;\n switch (ta) {\n case ea.WHITELISTED:\n \n case ea.BLACKLISTED:\n \n case ea.UNLISTED:\n break;\n default:\n da().error(\"set_invalid_friend_visibility\", {\n id: sa,\n value: ta\n });\n throw new Error((\"Invalid state: \" + ta));\n };\n };\n for (sa in ra) {\n v[sa] = ra[sa];;\n };\n ea.inform(\"privacy-changed\");\n };\n function ga(ra, sa) {\n var ta = {\n };\n ta[ra] = sa;\n fa(ta);\n };\n function ha(ra) {\n switch (ra) {\n case ea.ONLINE:\n \n case ea.OFFLINE:\n break;\n default:\n da().error(\"set_invalid_visibility\", {\n value: ra\n });\n throw new Error((\"Invalid visibility: \" + ra));\n };\n w = ra;\n ea.inform(\"privacy-changed\");\n ea.inform(\"privacy-user-presence-changed\");\n h.inform(\"chat/visibility-changed\", {\n sender: this\n });\n };\n function ia(ra) {\n switch (ra) {\n case ea.ONLINE_TO_WHITELIST:\n \n case ea.ONLINE_TO_BLACKLIST:\n break;\n default:\n throw new Error((\"Invalid default online policy: \" + ra));\n };\n z = ra;\n ea.inform(\"privacy-user-presence-changed\");\n ea.inform(\"privacy-changed\");\n };\n function ja(ra, sa) {\n ca = true;\n ra.send();\n };\n function ka(ra, sa) {\n ba.push({\n request: ra,\n data: sa\n });\n if (!ca) {\n var ta = ba.shift();\n ja(ta.request, ta.data);\n }\n ;\n };\n function la(ra, sa) {\n var ta = ra.type;\n if ((ta === s)) {\n var ua = sa.payload.user_availabilities;\n if (!g(ua)) {\n ea.inform(\"privacy-availability-changed\", {\n user_availabilities: ua\n });\n for (var va in ra.settings) {\n x[va] = ra.settings[va];;\n };\n }\n ;\n }\n else {\n if ((ta === t)) {\n y = ra.visibility;\n }\n else if ((ta === u)) {\n aa = ra.online_policy;\n }\n ;\n ea.inform(\"privacy-user-presence-response\");\n }\n ;\n da().log(\"set_update_response\", {\n data: ra,\n response: sa\n });\n };\n function ma(ra, sa) {\n if ((w !== y)) {\n ha(y);\n };\n if ((z !== aa)) {\n ia(aa);\n };\n k(v, x);\n ea.inform(\"privacy-changed\");\n ba = [];\n da().log(\"set_error_response\", {\n data: ra,\n response: sa\n });\n };\n function na(ra) {\n ca = false;\n if ((ba.length > 0)) {\n var sa = ba.shift();\n ja(sa.request, sa.data);\n }\n ;\n };\n function oa(ra, sa) {\n if ((n != null)) {\n var ta = ra.getData();\n ta.window_id = n.getSessionID();\n ra.setData(ta);\n }\n ;\n ra.setHandler(la.bind(this, sa)).setErrorHandler(ma.bind(this, sa)).setTransportErrorHandler(ma.bind(this, sa)).setFinallyHandler(na.bind(this)).setAllowCrossPageTransition(true);\n return ra;\n };\n function pa(ra, sa, ta) {\n return oa(new i(ra).setData(sa), ta);\n };\n function qa(ra, sa) {\n var ta = sa.obj;\n if ((ta.viewer_id != l.user)) {\n da().error(\"invalid_viewer_for_channel_message\", {\n type: ra,\n data: sa\n });\n throw new Error(\"Viewer got from the channel is not the real viewer\");\n }\n ;\n if ((ta.window_id === n.getSessionID())) {\n return\n };\n var ua = ta.data;\n if ((ta.event == \"access_control_entry\")) {\n ua.target_ids.forEach(function(wa) {\n ga(wa, ua.setting);\n x[wa] = ua.setting;\n });\n }\n else {\n if ((ta.event == \"visibility_update\")) {\n var va = (!!ua.visibility ? ea.ONLINE : ea.OFFLINE);\n ha(va);\n y = va;\n }\n else if ((ta.event == \"online_policy_update\")) {\n ia(ua.online_policy);\n aa = ua.online_policy;\n }\n \n ;\n ea.inform(\"privacy-user-presence-response\");\n }\n ;\n da().log(\"channel_message_received\", {\n data: sa.obj\n });\n };\n k(ea, {\n WHITELISTED: 1,\n BLACKLISTED: -1,\n UNLISTED: 0,\n ONLINE: 1,\n OFFLINE: 0,\n ONLINE_TO_WHITELIST: 0,\n ONLINE_TO_BLACKLIST: 1,\n init: function(ra, sa, ta) {\n \n },\n setVisibility: function(ra) {\n y = w;\n ha(ra);\n var sa = {\n visibility: ra\n }, ta = {\n type: t,\n visibility: ra\n }, ua = pa(r, sa, ta);\n ka(ua, ta);\n da().log(\"set_visibility\", {\n data: sa\n });\n return ra;\n },\n getVisibility: function() {\n return w;\n },\n setOnlinePolicy: function(ra) {\n aa = z;\n ia(ra);\n var sa = {\n online_policy: ra\n }, ta = {\n type: u,\n online_policy: ra\n }, ua = pa(q, sa, ta);\n ka(ua, ta);\n da().log(\"set_online_policy\", {\n data: sa\n });\n return ra;\n },\n getOnlinePolicy: function() {\n return z;\n },\n getFriendVisibility: function(ra) {\n return (v[ra] || ea.UNLISTED);\n },\n allows: function(ra) {\n if ((this.getVisibility() === ea.OFFLINE)) {\n return false\n };\n var sa = this.getOnlinePolicy();\n return ((sa === ea.ONLINE_TO_WHITELIST) ? (v[ra] == ea.WHITELISTED) : (v[ra] != ea.BLACKLISTED));\n },\n setFriendsVisibility: function(ra, sa) {\n if ((ra.length > 0)) {\n var ta = {\n };\n for (var ua = 0; (ua < ra.length); ua++) {\n var va = ra[ua];\n x[va] = v[va];\n ta[va] = sa;\n };\n fa(ta);\n var wa = sa;\n if ((wa == ea.UNLISTED)) {\n wa = x[ra[0]];\n };\n var xa = {\n users: ra,\n setting: sa,\n setting_type: wa\n }, ya = {\n type: s,\n settings: ta\n }, za = pa(p, xa, ya);\n ka(za, ya);\n da().log(\"set_friend_visibility\", {\n data: xa\n });\n }\n ;\n return sa;\n },\n setFriendVisibilityMap: function(ra, sa) {\n for (var ta in ra) {\n x[ta] = v[ta];;\n };\n fa(ra);\n var ua = {\n type: s,\n settings: ra\n };\n ka(oa(sa, ua), ua);\n da().log(\"set_friend_visibility_from_map\", {\n data: ra\n });\n },\n allow: function(ra) {\n if (this.allows(ra)) {\n da().error(\"allow_already_allowed\");\n throw new Error((\"allow() should only be called for users that \" + \"are not already allowed\"));\n }\n ;\n if ((this.getVisibility() === ea.OFFLINE)) {\n da().error(\"allow_called_while_offline\");\n throw new Error(\"allow() should only be called when the user is already online\");\n }\n ;\n var sa = ((this.getOnlinePolicy() === ea.ONLINE_TO_WHITELIST) ? ea.WHITELISTED : ea.UNLISTED);\n return this.setFriendsVisibility([ra,], sa);\n },\n disallow: function(ra) {\n if (!this.allows(ra)) {\n da().error(\"disallow_already_disallowed\");\n throw new Error((\"disallow() should only be called for users that \" + \"are not already disallowed\"));\n }\n ;\n if ((this.getVisibility() === ea.OFFLINE)) {\n da().error(\"disallow_called_while_offline\");\n throw new Error(\"disallow() should only be called when the user is already online\");\n }\n ;\n var sa = ((this.getOnlinePolicy() === ea.ONLINE_TO_BLACKLIST) ? ea.BLACKLISTED : ea.UNLISTED);\n return this.setFriendsVisibility([ra,], sa);\n },\n getBlacklist: function() {\n var ra = [];\n for (var sa in v) {\n if ((v[sa] === ea.BLACKLISTED)) {\n ra.push(sa);\n };\n };\n return ra;\n },\n getWhitelist: function() {\n var ra = [];\n for (var sa in v) {\n if ((v[sa] === ea.WHITELISTED)) {\n ra.push(sa);\n };\n };\n return ra;\n },\n getMapForTest: function() {\n return v;\n },\n setMapForTest: function(ra) {\n v = ra;\n }\n });\n ea.inform(\"privacy-changed\");\n ea.inform(\"privacy-user-presence-changed\");\n da().log(\"initialized\", {\n visibility: w,\n policy: z\n });\n h.subscribe(j.getArbiterType(\"privacy_changed\"), qa.bind(this));\n h.subscribe(j.ON_CONFIG, function(ra, sa) {\n var ta = sa.getConfig(\"visibility\", null);\n if (((ta !== null) && (typeof (ta) !== \"undefined\"))) {\n var ua = (ta ? ea.ONLINE : ea.OFFLINE);\n ha(ua);\n da().log(\"config_visibility\", {\n vis: ua\n });\n }\n ;\n }.bind(this));\n a.PresencePrivacy = e.exports = ea;\n}, 3);\n__d(\"ChatVisibility\", [\"Arbiter\",\"JSLogger\",\"PresencePrivacy\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"JSLogger\"), i = b(\"PresencePrivacy\"), j = {\n isOnline: function() {\n return (i.getVisibility() === i.ONLINE);\n },\n hasBlackbirdEnabled: function() {\n return (this.isVisibleToMostFriends() || this.isVisibleToSomeFriends());\n },\n isVisibleToMostFriends: function() {\n return ((i.getOnlinePolicy() === i.ONLINE_TO_BLACKLIST) && (i.getBlacklist().length > 0));\n },\n isVisibleToSomeFriends: function() {\n return ((i.getOnlinePolicy() === i.ONLINE_TO_WHITELIST) && (i.getWhitelist().length > 0));\n },\n goOnline: function(k) {\n if ((i.getVisibility() === i.OFFLINE)) {\n h.create(\"blackbird\").log(\"chat_go_online\");\n i.setVisibility(i.ONLINE);\n g.inform(\"chat-visibility/go-online\");\n }\n ;\n (k && k());\n },\n goOffline: function(k) {\n if ((i.getVisibility() === i.ONLINE)) {\n h.create(\"blackbird\").log(\"chat_go_offline\");\n i.setVisibility(i.OFFLINE);\n g.inform(\"chat-visibility/go-offline\");\n }\n ;\n (k && k());\n },\n toggleVisibility: function() {\n if (j.isOnline()) {\n j.goOffline();\n }\n else j.goOnline();\n ;\n }\n };\n a.ChatVisibility = e.exports = j;\n}, 3);\n__d(\"MercurySingletonMixin\", [\"Env\",], function(a, b, c, d, e, f) {\n var g = b(\"Env\"), h = {\n _getInstances: function() {\n if (!this._instances) {\n this._instances = {\n };\n };\n return this._instances;\n },\n get: function() {\n return this.getForFBID(g.user);\n },\n getForFBID: function(i) {\n var j = this._getInstances();\n if (!j[i]) {\n j[i] = new this(i);\n };\n return j[i];\n }\n };\n e.exports = h;\n});\n__d(\"MercuryMessageClientState\", [], function(a, b, c, d, e, f) {\n var g = {\n DO_NOT_SEND_TO_SERVER: \"do_not_send_to_server\",\n SEND_TO_SERVER: \"send_to_server\"\n };\n e.exports = g;\n});\n__d(\"MercuryMessageIDs\", [\"KeyedCallbackManager\",], function(a, b, c, d, e, f) {\n var g = b(\"KeyedCallbackManager\"), h = new g(), i = {\n getServerIDs: function(j, k) {\n var l = j.filter(function(n) {\n return (n.indexOf(\"mail.projektitan.com\") !== -1);\n }), m = function(n) {\n var o = j.map(function(p) {\n return (n[p] ? n[p] : p);\n });\n k(o);\n };\n return h.executeOrEnqueue(l, m);\n },\n addServerID: function(j, k) {\n h.setResource(j, k);\n }\n };\n e.exports = i;\n});\n__d(\"ImageSourceType\", [], function(a, b, c, d, e, f) {\n var g = {\n PROFILE_PICTURE: \"profile_picture\",\n IMAGE: \"image\"\n };\n e.exports = g;\n});\n__d(\"PhotoResizeModeConst\", [], function(a, b, c, d, e, f) {\n var g = {\n COVER: \"s\",\n CONTAIN: \"p\"\n };\n e.exports = g;\n});\n__d(\"ImageSourceRequest\", [\"arrayContains\",\"extendArray\",\"copyProperties\",\"Env\",\"KeyedCallbackManager\",\"ImageSourceType\",\"PhotoResizeModeConst\",\"MercuryServerDispatcher\",], function(a, b, c, d, e, f) {\n var g = b(\"arrayContains\"), h = b(\"extendArray\"), i = b(\"copyProperties\"), j = b(\"Env\"), k = b(\"KeyedCallbackManager\"), l = b(\"ImageSourceType\"), m = b(\"PhotoResizeModeConst\"), n = b(\"MercuryServerDispatcher\");\n function o() {\n this._request = {\n fbid: null,\n type: null,\n width: null,\n height: null,\n resize_mode: null\n };\n this._callback = null;\n };\n i(o.prototype, {\n setFBID: function(s) {\n this._request.fbid = s;\n return this;\n },\n setType: function(s) {\n if (!g([l.PROFILE_PICTURE,l.IMAGE,], s)) {\n throw new TypeError((\"ImageSourceRequest.setType: invalid type \" + s))\n };\n this._request.type = s;\n return this;\n },\n setDimensions: function(s, t) {\n this._request.width = s;\n this._request.height = t;\n return this;\n },\n setResizeMode: function(s) {\n if (!g([m.COVER,m.CONTAIN,], s)) {\n throw new TypeError((\"ImageSourceRequest.setResizeMode: invalid resize mode \" + s))\n };\n this._request.resize_mode = s;\n return this;\n },\n setCallback: function(s) {\n this._callback = s;\n return this;\n },\n send: function() {\n if ((((((!this._request.fbid || !this._request.width) || !this._request.height) || !this._request.type) || !this._request.resize_mode) || !this._callback)) {\n throw new Error(\"ImageSourceRequest: You must set all the fields\")\n };\n var s = q(), t = r(this._request);\n s.executeOrEnqueue(t, this._callback);\n if ((s.getUnavailableResourcesFromRequest(t).length === 1)) {\n n.trySend(\"/ajax/image_source.php\", {\n requests: [this._request,]\n });\n return true;\n }\n ;\n return false;\n }\n });\n var p = null;\n function q() {\n if (p) {\n return p\n };\n var s = new k();\n p = s;\n n.registerEndpoints({\n \"/ajax/image_source.php\": {\n request_user_id: j.user,\n mode: n.BATCH_DEFERRED_MULTI,\n batch_function: function(t, u) {\n h(t.requests, u.requests);\n return t;\n },\n handler: function(t, u) {\n var v = u.getData().requests;\n for (var w = 0; (w < v.length); ++w) {\n s.setResource(r(v[w]), t[w]);;\n };\n }\n }\n });\n return s;\n };\n function r(s) {\n return [s.fbid,s.type,s.width,s.height,s.resize_mode,].join(\"|\");\n };\n e.exports = o;\n});\n__d(\"MercuryIDs\", [], function(a, b, c, d, e, f) {\n function g(i) {\n return ((typeof i === \"string\") && (i.indexOf(\":\") !== -1));\n };\n var h = {\n isValid: function(i) {\n if (!i) {\n return false\n };\n return g(i);\n },\n isValidThreadID: function(i) {\n if (!h.isValid(i)) {\n return false\n };\n var j = h.tokenize(i);\n switch (j.type) {\n case \"user\":\n \n case \"group\":\n \n case \"thread\":\n \n case \"root\":\n \n case \"pending\":\n return true;\n default:\n return false;\n };\n },\n tokenize: function(i) {\n if (!this.isValid(i)) {\n throw \"bad_id_format\"\n };\n var j = i.indexOf(\":\");\n return {\n type: i.substr(0, j),\n value: i.substr((j + 1))\n };\n },\n getUserIDFromParticipantID: function(i) {\n if (!h.isValid(i)) {\n return null\n };\n var j = h.tokenize(i);\n if ((j.type != \"fbid\")) {\n return null\n };\n return j.value;\n }\n };\n e.exports = h;\n});\n__d(\"MercuryAssert\", [\"MercuryIDs\",], function(a, b, c, d, e, f) {\n var g = b(\"MercuryIDs\");\n e.exports = {\n isParticipantID: function(h) {\n if (!g.isValid(h)) {\n throw \"bad_participant_id\"\n };\n },\n allParticipantIDs: function(h) {\n h.forEach(this.isParticipantID);\n },\n isUserParticipantID: function(h) {\n var i = g.tokenize(h);\n if ((i.type != \"fbid\")) {\n throw \"bad_user_id\"\n };\n },\n isEmailParticipantID: function(h) {\n var i = g.tokenize(h);\n if ((i.type != \"email\")) {\n throw \"bad_email_id\"\n };\n },\n allThreadID: function(h) {\n h.forEach(this.isThreadID);\n },\n isThreadID: function(h) {\n if (!g.isValid(h)) {\n throw \"bad_thread_id\"\n };\n }\n };\n});\n__d(\"TimestampConverter\", [\"JSLogger\",], function(a, b, c, d, e, f) {\n var g = b(\"JSLogger\"), h = g.create(\"timestamp_converter\");\n function i(k) {\n return (((typeof (k) == \"string\")) && (k.length > 6));\n };\n var j = {\n convertActionIDToTimestamp: function(k) {\n if (i(k)) {\n var l = k.slice(0, -6);\n return parseInt(l, 10);\n }\n ;\n },\n maxValidActionID: function(k, l) {\n if (!i(k)) {\n return l\n };\n if (!i(l)) {\n return k\n };\n return (this.isGreaterThan(k, l) ? k : l);\n },\n isGreaterThan: function(k, l) {\n if ((!i(k) || !i(l))) {\n return false\n };\n return (this.convertActionIDToTimestamp(k) > this.convertActionIDToTimestamp(l));\n }\n };\n e.exports = j;\n});\n__d(\"MessagingReliabilityLogger\", [\"function-extensions\",\"PresenceUtil\",\"MercuryServerDispatcher\",\"MessagingReliabilityLoggerInitialData\",\"isEmpty\",\"setTimeoutAcrossTransitions\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"PresenceUtil\"), h = b(\"MercuryServerDispatcher\"), i = b(\"MessagingReliabilityLoggerInitialData\"), j = b(\"isEmpty\"), k = b(\"setTimeoutAcrossTransitions\"), l = \"/ajax/mercury/client_reliability.php\", m = 60000;\n function n(t, u) {\n var v = {\n app: i.app,\n categories: JSON.stringify(t)\n };\n if (!j(u)) {\n v.extra = JSON.stringify(u);\n };\n return v;\n };\n function o(t, u, v, w) {\n if ((t[u] === undefined)) {\n t[u] = {\n };\n };\n if ((t[u][v] === undefined)) {\n t[u][v] = 0;\n };\n t[u][v] += w;\n };\n function p(t, u, v, w) {\n if ((t[u] === undefined)) {\n t[u] = {\n };\n };\n if ((t[u][v] === undefined)) {\n t[u][v] = [];\n };\n for (var x = 0; (x < w.length); ++x) {\n t[u][v].push(w[x]);;\n };\n };\n function q(t, u) {\n if ((((t && !t.categories)) || ((u && !u.categories)))) {\n return\n };\n var v = (t ? JSON.parse(t.categories) : {\n }), w = ((t && t.extra) ? JSON.parse(t.extra) : {\n }), x = JSON.parse(u.categories), y = (u.extra ? JSON.parse(u.extra) : {\n });\n for (var z in x) {\n var aa = x[z], ba = y[z];\n for (var ca in aa) {\n o(v, z, ca, aa[ca]);\n if ((ba !== undefined)) {\n var da = ba[ca];\n if ((da !== undefined)) {\n p(w, z, ca, da);\n };\n }\n ;\n };\n };\n return n(v, w);\n };\n var r = {\n };\n r[l] = {\n mode: h.BATCH_SUCCESSIVE_PIGGYBACK_ON_ERROR,\n batch_function: q\n };\n h.registerEndpoints(r);\n var s = {\n addEntry: function(t, u, v) {\n if (!i.enabled) {\n return\n };\n var w = {\n };\n o(w, t, u, 1);\n var x = {\n };\n if ((v !== undefined)) {\n p(x, t, u, [v,]);\n };\n h.trySend(l, n(w, x));\n }\n };\n (function t() {\n s.addEntry(\"page_event\", \"active\", g.getSessionID());\n k(t, m);\n })();\n e.exports = s;\n});\n__d(\"MercuryThreadInformer\", [\"ArbiterMixin\",\"copyProperties\",\"MercuryAssert\",\"MercurySingletonMixin\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"copyProperties\"), i = b(\"MercuryAssert\"), j = b(\"MercurySingletonMixin\");\n function k(m) {\n if (!m._locked) {\n var n = m._threadDeletions, o = m._threadChanges, p = m._threadReadChanges, q = m._threadlistChanged, r = m._unseenStateChanged, s = m._unreadStateChanged, t = m._receivedMessages, u = m._reorderedMessages, v = m._updatedMessages;\n m._threadDeletions = {\n };\n m._threadChanges = {\n };\n m._threadReadChanges = {\n };\n m._threadlistChanged = false;\n m._unseenStateChanged = false;\n m._unreadStateChanged = false;\n m._receivedMessages = {\n };\n m._reorderedMessages = {\n };\n m._updatedMessages = {\n };\n var w = Object.keys(o);\n if ((w.length || q)) {\n m.inform(\"threadlist-updated\", w);\n };\n if (w.length) {\n m.inform(\"threads-updated\", o);\n };\n for (var x in p) {\n m.inform(\"thread-read-changed\", p);\n break;\n };\n for (var x in n) {\n m.inform(\"threads-deleted\", n);\n break;\n };\n if (r) {\n m.inform(\"unseen-updated\", null);\n };\n if (s) {\n m.inform(\"unread-updated\", null);\n };\n for (x in t) {\n m.inform(\"messages-received\", t);\n break;\n };\n for (x in u) {\n m.inform(\"messages-reordered\", u);\n break;\n };\n for (x in v) {\n m.inform(\"messages-updated\", v);\n break;\n };\n }\n ;\n };\n function l(m) {\n this._fbid = m;\n this._threadDeletions = {\n };\n this._threadChanges = {\n };\n this._threadReadChanges = {\n };\n this._threadlistChanged = false;\n this._unseenStateChanged = false;\n this._unreadStateChanged = false;\n this._receivedMessages = {\n };\n this._reorderedMessages = {\n };\n this._updatedMessages = {\n };\n this._locked = 0;\n };\n h(l.prototype, g, {\n updatedThread: function(m) {\n this._threadChanges[m] = true;\n k(this);\n },\n deletedThread: function(m) {\n this._threadDeletions[m] = true;\n k(this);\n },\n updatedThreadlist: function() {\n this._threadlistChanged = true;\n k(this);\n },\n updatedUnseenState: function() {\n this._unseenStateChanged = true;\n k(this);\n },\n updatedUnreadState: function() {\n this._unreadStateChanged = true;\n k(this);\n },\n changedThreadReadState: function(m, n, o) {\n if ((!this._threadReadChanges[m] || (this._threadReadChanges[m].timestamp < o))) {\n this._threadReadChanges[m] = {\n mark_as_read: n,\n timestamp: o\n };\n };\n k(this);\n },\n receivedMessage: function(m) {\n i.isThreadID(m.thread_id);\n var n = m.thread_id;\n if (!this._receivedMessages[n]) {\n this._receivedMessages[n] = [];\n };\n this._receivedMessages[n].push(m);\n this.updatedThread(n);\n },\n reorderedMessages: function(m, n) {\n this._reorderedMessages[m] = {\n source: n\n };\n k(this);\n },\n updatedMessage: function(m, n, o) {\n if (!this._updatedMessages[m]) {\n this._updatedMessages[m] = {\n };\n };\n this._updatedMessages[m][n] = {\n source: o\n };\n this.updatedThread(m);\n },\n synchronizeInforms: function(m) {\n this._locked++;\n try {\n m();\n } catch (n) {\n throw n;\n } finally {\n this._locked--;\n k(this);\n };\n },\n listen: function(m, n) {\n return this.subscribe(\"threads-updated\", function(o, p) {\n if (p[m]) {\n n(m);\n };\n });\n }\n });\n h(l, j);\n e.exports = l;\n});\n__d(\"MercuryServerRequests\", [\"ArbiterMixin\",\"AsyncResponse\",\"TimestampConverter\",\"Env\",\"JSLogger\",\"KeyedCallbackManager\",\"MercuryActionTypeConstants\",\"MercuryActionStatus\",\"MercuryAPIArgsSource\",\"MercuryAssert\",\"MercuryErrorType\",\"MercuryGenericConstants\",\"MercuryGlobalActionType\",\"MercuryIDs\",\"MercuryLogMessageType\",\"MercuryMessageClientState\",\"MercuryPayloadSource\",\"MercuryServerRequestsConfig\",\"MercurySourceType\",\"MercuryThreadlistConstants\",\"MercuryMessageIDs\",\"MessagingConfig\",\"MessagingReliabilityLogger\",\"MessagingTag\",\"MercurySingletonMixin\",\"MercuryServerDispatcher\",\"MercuryThreadInformer\",\"copyProperties\",\"createObjectFrom\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"AsyncResponse\"), i = b(\"TimestampConverter\"), j = b(\"Env\"), k = b(\"JSLogger\"), l = b(\"KeyedCallbackManager\"), m = b(\"MercuryActionTypeConstants\"), n = b(\"MercuryActionStatus\"), o = b(\"MercuryAPIArgsSource\"), p = b(\"MercuryAssert\"), q = b(\"MercuryErrorType\"), r = b(\"MercuryGenericConstants\"), s = b(\"MercuryGlobalActionType\"), t = b(\"MercuryIDs\"), u = b(\"MercuryLogMessageType\"), v = b(\"MercuryMessageClientState\"), w = b(\"MercuryPayloadSource\"), x = b(\"MercuryServerRequestsConfig\"), y = b(\"MercurySourceType\"), z = b(\"MercuryThreadlistConstants\"), aa = b(\"MercuryMessageIDs\"), ba = b(\"MessagingConfig\"), ca = b(\"MessagingReliabilityLogger\"), da = b(\"MessagingTag\"), ea = b(\"MercurySingletonMixin\"), fa = b(\"MercuryServerDispatcher\"), ga = b(\"MercuryThreadInformer\"), ha = b(\"copyProperties\"), ia = b(\"createObjectFrom\"), ja = k.create(\"mercury_server\"), ka = o.MERCURY;\n function la(tb, ub) {\n if (ub) {\n tb._lastActionId = i.maxValidActionID(tb._lastActionId, ub);\n };\n };\n function ma(tb, ub) {\n var vb = ub.thread_id, wb = tb._serverToClientIDs.getResource(vb);\n if (!wb) {\n if (ub.canonical_fbid) {\n wb = (\"user:\" + ub.canonical_fbid);\n }\n else if (ub.root_message_threading_id) {\n wb = (\"root:\" + ub.root_message_threading_id);\n }\n ;\n wb = (wb || (\"thread:\" + vb));\n na(tb, vb, wb);\n }\n ;\n ub.thread_id = wb;\n };\n function na(tb, ub, vb) {\n tb._serverToClientIDs.setResource(ub, vb);\n tb._clientToServerIDs.setResource(vb, ub);\n tb._newlyAddedClientIDs[ub] = vb;\n };\n function oa(tb, ub, vb) {\n var wb = tb._clientToServerIDs.executeOrEnqueue(ub, vb), xb = tb._clientToServerIDs.getUnavailableResources(wb), yb = tb.tokenizeThreadID(ub);\n if ((xb.length && (yb.type != \"root\"))) {\n tb.fetchThreadData(xb);\n };\n };\n function pa(tb, ub) {\n return tb._clientToServerIDs.getResource(ub);\n };\n function qa(tb, ub) {\n return !!tb._serverToClientIDs.getResource(ub);\n };\n function ra(tb, ub) {\n var vb = tb._serverToClientIDs.getResource(ub);\n if ((typeof vb == \"undefined\")) {\n ja.warn(\"no_client_thread_id\", {\n server_id: ub\n });\n };\n return vb;\n };\n function sa(tb, ub, vb) {\n tb._serverToClientIDs.executeOrEnqueue(ub, vb);\n tb.ensureThreadIsFetched(ub);\n };\n function ta(tb, ub, vb) {\n if ((ub.action_type != m.SEND_MESSAGE)) {\n return\n };\n var wb = ub.client_thread_id;\n if (!wb) {\n wb = ra(tb, ub.thread_id);\n };\n var xb = null;\n if (wb) {\n xb = t.tokenize(wb).type;\n };\n ca.addEntry((\"send_\" + xb), vb, ((ub.thread_id + \",\") + ub.message_id));\n };\n function ua(tb) {\n return (tb.getError() ? (\"_\" + tb.getError()) : \"\");\n };\n function va(tb, ub) {\n var vb = null;\n switch (ub.status) {\n case n.SUCCESS:\n vb = \"success\";\n break;\n case n.FAILED_UNKNOWN_REASON:\n vb = \"confirmed_error\";\n break;\n case n.UNABLE_TO_CONFIRM:\n vb = \"confirm_error\";\n break;\n default:\n return;\n };\n ta(tb, ub, vb);\n };\n function wa(tb, ub) {\n ((ub.message_counts || [])).forEach(function(dc) {\n la(tb, dc.last_action_id);\n });\n ((ub.threads || [])).forEach(function(dc) {\n ma(tb, dc);\n delete tb._fetchingThreads[dc.thread_id];\n var ec = pa(tb, dc.thread_id);\n delete tb._fetchingThreads[ec];\n la(tb, dc.last_action_id);\n });\n ((ub.ordered_threadlists || [])).forEach(function(dc) {\n dc.thread_ids = dc.thread_ids.map(ra.curry(tb));\n });\n ub.actions = (ub.actions || []);\n ub.actions.forEach(function(dc) {\n va(tb, dc);\n if (((dc.status && (dc.status != n.SUCCESS)) && !dc.thread_id)) {\n dc.thread_id = dc.client_thread_id;\n return;\n }\n ;\n if ((((dc.action_type == m.SEND_MESSAGE) && dc.client_thread_id) && (dc.client_thread_id != r.PENDING_THREAD_ID))) {\n na(tb, dc.thread_id, dc.client_thread_id);\n };\n dc.server_thread_id = dc.thread_id;\n dc.thread_id = (qa(tb, dc.thread_id) ? ra(tb, dc.thread_id) : null);\n la(tb, dc.action_id);\n });\n if (ub.end_of_history) {\n var vb = [];\n for (var wb = 0; (wb < ub.end_of_history.length); wb++) {\n var xb = ub.end_of_history[wb];\n if ((xb.type == \"user\")) {\n vb.push((\"user:\" + xb.id));\n }\n else if (((xb.type == \"thread\") && qa(tb, xb.id))) {\n vb.push(ra(tb, xb.id));\n }\n ;\n };\n ub.end_of_history = vb;\n }\n ;\n if (ub.roger) {\n var yb = {\n };\n for (var zb in ub.roger) {\n var ac = tb._serverToClientIDs.getResource(zb);\n if (ac) {\n var bc = ub.roger[zb];\n yb[ac] = {\n };\n for (var cc in bc) {\n yb[ac][(\"fbid:\" + cc)] = bc[cc];;\n };\n }\n ;\n };\n ub.roger = yb;\n }\n ;\n };\n function xa(tb) {\n if ((tb._pendingUpdates && tb._pendingUpdates.length)) {\n var ub = tb._pendingUpdates[0];\n tb._pendingUpdates = tb._pendingUpdates.slice(1);\n tb.handleUpdate(ub);\n }\n ;\n };\n function ya(tb, ub) {\n var vb = ha({\n }, tb), wb;\n if (ub.threads) {\n if (!vb.threads) {\n vb.threads = {\n };\n };\n for (wb in ub.threads) {\n vb.threads[wb] = Object.keys(ia(((vb.threads[wb] || [])).concat(ub.threads[wb])));;\n };\n }\n ;\n if (ub.messages) {\n if (!vb.messages) {\n vb.messages = {\n };\n };\n for (wb in ub.messages) {\n if (!vb.messages[wb]) {\n vb.messages[wb] = {\n };\n };\n for (var xb in ub.messages[wb]) {\n if (vb.messages[wb][xb]) {\n vb.messages[wb][xb] = bb(vb.messages[wb][xb], ub.messages[wb][xb]);\n }\n else vb.messages[wb][xb] = ub.messages[wb][xb];\n ;\n };\n };\n }\n ;\n vb.client = (tb.client || ub.client);\n return vb;\n };\n function za(tb, ub) {\n var vb = ha(ia(tb.folders, true), ia(ub.folders, true)), wb = (tb.client || ub.client);\n return {\n folders: Object.keys(vb),\n client: wb\n };\n };\n function ab(tb, ub) {\n for (var vb in ub) {\n if ((tb[vb] && (typeof tb[vb] === \"object\"))) {\n tb[vb] = bb(tb[vb], ub[vb]);\n }\n else if ((ub[vb] && (typeof ub[vb] === \"object\"))) {\n var wb = {\n };\n ha(wb, ub[vb]);\n tb[vb] = wb;\n }\n \n ;\n };\n return tb;\n };\n function bb(tb, ub) {\n var vb = ((tb.offset < ub.offset) ? tb.offset : ub.offset), wb = (tb.offset + tb.limit), xb = (ub.offset + ub.limit), yb = (((wb > xb)) ? wb : xb), zb = (yb - vb);\n return {\n offset: vb,\n limit: zb\n };\n };\n function cb(tb, ub) {\n var vb = (tb.client || ub.client), wb = {\n ids: {\n },\n client: vb\n };\n ha(wb.ids, tb.ids);\n ha(wb.ids, ub.ids);\n return wb;\n };\n function db(tb, ub) {\n var vb = {\n }, wb, xb = (tb.client || ub.client);\n delete tb.client;\n delete ub.client;\n for (wb in tb) {\n ha(vb, ia(tb[wb], wb));;\n };\n for (wb in ub) {\n ha(vb, ia(ub[wb], wb));;\n };\n var yb = {\n client: xb\n };\n for (var zb in vb) {\n wb = vb[zb];\n if (!yb[wb]) {\n yb[wb] = [];\n };\n yb[wb].push(zb);\n };\n return yb;\n };\n function eb(tb, ub) {\n var vb = (tb.client || ub.client), wb = ia(tb.ids, true), xb = ia(ub.ids, true), yb = ha(wb, xb);\n return {\n ids: Object.keys(yb),\n client: vb\n };\n };\n function fb(tb) {\n this._fbid = tb;\n this._lastActionId = 0;\n this._serverToClientIDs = new l();\n this._clientToServerIDs = new l();\n this._pendingUpdates = [];\n this._fetchingThreads = {\n };\n this._newlyAddedClientIDs = {\n };\n rb(this);\n };\n ha(fb.prototype, g, {\n tokenizeThreadID: function(tb) {\n p.isThreadID(tb);\n return t.tokenize(tb);\n },\n getServerThreadID: function(tb, ub) {\n p.isThreadID(tb);\n oa(this, tb, ub);\n },\n getClientThreadID: function(tb, ub) {\n sa(this, tb, ub);\n },\n getClientThreadIDNow: function(tb) {\n return ra(this, tb);\n },\n getServerThreadIDNow: function(tb) {\n return pa(this, tb);\n },\n convertThreadIDIfAvailable: function(tb) {\n var ub = this._serverToClientIDs.getResource(tb);\n if ((ub === undefined)) {\n return tb;\n }\n else return ub\n ;\n },\n canLinkExternally: function(tb) {\n p.isThreadID(tb);\n var ub = this.tokenizeThreadID(tb);\n return (((ub.type == \"user\")) || !!pa(this, tb));\n },\n fetchThreadlistInfo: function(tb, ub, vb, wb, xb) {\n vb = (vb || da.INBOX);\n xb = (xb || ka);\n var yb = (wb ? fa.IMMEDIATE : null), zb = {\n client: xb\n };\n zb[vb] = {\n offset: tb,\n limit: ub,\n filter: wb\n };\n sb(this, \"/ajax/mercury/threadlist_info.php\", zb, yb);\n },\n fetchUnseenThreadIDs: function(tb, ub) {\n ub = (ub || ka);\n this.fetchThreadlistInfo(z.RECENT_THREAD_OFFSET, z.JEWEL_THREAD_COUNT, tb, null, ub);\n },\n fetchUnreadThreadIDs: function(tb, ub) {\n ub = (ub || ka);\n sb(this, \"/ajax/mercury/unread_threads.php\", {\n folders: [tb,],\n client: ub\n });\n },\n fetchMissedMessages: function(tb, ub) {\n ub = (ub || ka);\n sb(this, \"/ajax/mercury/thread_sync.php\", {\n last_action_id: this._lastActionId,\n folders: tb,\n client: ub\n });\n },\n fetchThreadData: function(tb, ub) {\n ub = (ub || ka);\n p.allThreadID(tb);\n var vb = {\n threads: {\n },\n client: ub\n }, wb = [], xb = [];\n tb.forEach(function(zb) {\n if (this._fetchingThreads[zb]) {\n return\n };\n this._fetchingThreads[zb] = true;\n var ac = pa(this, zb);\n if (ac) {\n xb.push(ac);\n vb.threads.thread_ids = xb;\n }\n else {\n var bc = this.tokenizeThreadID(zb);\n if ((bc.type == \"user\")) {\n wb.push(bc.value);\n vb.threads.user_ids = wb;\n }\n else if ((bc.type == \"thread\")) {\n xb.push(bc.value);\n vb.threads.thread_ids = xb;\n }\n else if (((bc.type != \"root\") && (bc.type != \"pending\"))) {\n throw new Error(\"Unknown thread type\", bc)\n }\n \n ;\n }\n ;\n }.bind(this));\n this.inform(\"fetch-thread-data\", vb);\n for (var yb in vb.threads) {\n sb(this, \"/ajax/mercury/thread_info.php\", vb);\n break;\n };\n },\n ensureThreadIsFetched: function(tb, ub) {\n ub = (ub || ka);\n if ((!this._serverToClientIDs.getResource(tb) && !this._fetchingThreads[tb])) {\n this._fetchingThreads[tb] = true;\n sb(this, \"/ajax/mercury/thread_info.php\", {\n threads: {\n thread_ids: [tb,]\n },\n client: ub\n });\n }\n ;\n },\n fetchThreadMessages: function(tb, ub, vb, wb, xb) {\n p.isThreadID(tb);\n xb = (xb || ka);\n var yb, zb, ac = this.tokenizeThreadID(tb), bc = pa(this, tb), cc = false;\n if ((bc && (ac.type != \"group\"))) {\n zb = \"thread_ids\";\n yb = bc;\n }\n else {\n yb = ac.value;\n switch (ac.type) {\n case \"user\":\n zb = \"user_ids\";\n cc = true;\n break;\n case \"group\":\n zb = \"group_ids\";\n break;\n case \"thread\":\n zb = \"thread_ids\";\n break;\n };\n }\n ;\n var dc = {\n messages: {\n },\n threads: {\n },\n client: xb\n };\n if (zb) {\n dc.messages[zb] = {\n };\n dc.messages[zb][yb] = {\n offset: ub,\n limit: vb\n };\n if (cc) {\n dc.threads[zb] = [yb,];\n };\n sb(this, \"/ajax/mercury/thread_info.php\", dc, wb);\n }\n else oa(this, tb, function(ec) {\n dc.messages.thread_ids = {\n };\n dc.messages.thread_ids[ec] = {\n offset: ub,\n limit: vb\n };\n sb(this, \"/ajax/mercury/thread_info.php\", dc, wb);\n }.bind(this));\n ;\n },\n handleThreadInfoError: function(tb) {\n var ub = tb.getRequest().getData(), vb = [];\n if (ub.messages) {\n for (var wb in ub.messages.thread_ids) {\n vb.push(gb(ra(this, wb)));;\n };\n for (var xb in ub.messages.user_ids) {\n vb.push(gb((\"user:\" + xb)));;\n };\n for (var yb in ub.messages.group_ids) {\n vb.push(gb((\"group:\" + yb)));;\n };\n }\n ;\n if (vb.length) {\n this.handleUpdate({\n actions: vb,\n from_client: true,\n payload_source: w.CLIENT_CHANNEL_MESSAGE\n });\n };\n if ((ub.threads && (((ub.threads.user_ids || ub.threads.group_ids) || ub.threads.thread_ids)))) {\n var zb = 5, ac = true;\n if (!ub.retry_count) {\n ub.retry_count = 0;\n if (ub.messages) {\n delete ub.messages;\n };\n }\n else if ((ub.retry_count >= zb)) {\n ac = false;\n ((ub.threads.thread_ids || [])).forEach(function(cc) {\n if ((cc in this._fetchingThreads)) {\n delete this._fetchingThreads[cc];\n };\n }.bind(this));\n }\n \n ;\n if (ac) {\n var bc = (ub.retry_count * 1000);\n (function() {\n ja.log(\"retry_thread\", ub);\n sb(this, \"/ajax/mercury/thread_info.php\", ub);\n }.bind(this)).defer(bc, false);\n ub.retry_count++;\n }\n ;\n }\n ;\n },\n markFolderAsRead: function(tb) {\n sb(this, \"/ajax/mercury/mark_folder_as_read.php\", {\n folder: tb\n });\n var ub = [{\n action_type: s.MARK_ALL_READ,\n action_id: null,\n folder: tb\n },];\n this.handleUpdate({\n global_actions: ub,\n from_client: true,\n payload_source: w.CLIENT_CHANGE_READ_STATUS\n });\n },\n changeThreadReadStatus: function(tb, ub, vb) {\n p.isThreadID(tb);\n oa(this, tb, function(xb) {\n var yb = {\n ids: {\n }\n };\n yb.ids[xb] = ub;\n sb(this, \"/ajax/mercury/change_read_status.php\", yb);\n }.bind(this));\n var wb = [{\n action_type: m.CHANGE_READ_STATUS,\n action_id: null,\n thread_id: tb,\n mark_as_read: ub,\n folder: vb\n },];\n this.handleUpdate({\n actions: wb,\n from_client: true,\n payload_source: w.CLIENT_CHANGE_READ_STATUS\n });\n },\n changeThreadArchivedStatus: function(tb, ub) {\n p.isThreadID(tb);\n oa(this, tb, function(xb) {\n var yb = {\n ids: {\n }\n };\n yb.ids[xb] = ub;\n sb(this, \"/ajax/mercury/change_archived_status.php\", yb);\n }.bind(this));\n var vb = {\n action_type: m.CHANGE_ARCHIVED_STATUS,\n action_id: null,\n thread_id: tb,\n archived: ub\n }, wb = {\n actions: [vb,],\n from_client: true,\n payload_source: w.CLIENT_CHANGE_ARCHIVED_STATUS\n };\n this.handleUpdate(wb);\n },\n changeThreadFolder: function(tb, ub) {\n p.isThreadID(tb);\n oa(this, tb, function(xb) {\n var yb = {\n };\n yb[ub] = [xb,];\n sb(this, \"/ajax/mercury/move_thread.php\", yb);\n }.bind(this));\n var vb = {\n action_type: m.CHANGE_FOLDER,\n action_id: null,\n thread_id: tb,\n new_folder: ub\n }, wb = {\n actions: [vb,],\n from_client: true,\n payload_source: w.CLIENT_CHANGE_FOLDER\n };\n this.handleUpdate(wb);\n },\n changeMutingOnThread: function(tb, ub) {\n p.isThreadID(tb);\n oa(this, tb, function(xb) {\n sb(this, \"/ajax/mercury/change_mute_thread.php\", {\n thread_id: xb,\n mute_settings: ub,\n payload_source: ka\n });\n }.bind(this));\n var vb = {\n action_type: m.CHANGE_MUTE_SETTINGS,\n action_id: null,\n thread_id: tb,\n mute_settings: ub\n }, wb = {\n actions: [vb,],\n from_client: true,\n payload_source: w.CLIENT_CHANGE_MUTE_SETTINGS\n };\n this.handleUpdate(wb);\n },\n markThreadSpam: function(tb) {\n p.isThreadID(tb);\n oa(this, tb, function(wb) {\n sb(this, \"/ajax/mercury/mark_spam.php\", {\n id: wb\n });\n }.bind(this));\n var ub = {\n action_type: m.CHANGE_FOLDER,\n action_id: null,\n thread_id: tb,\n new_folder: da.SPAM\n }, vb = {\n actions: [ub,],\n from_client: true,\n payload_source: w.CLIENT_CHANGE_FOLDER\n };\n this.handleUpdate(vb);\n },\n markMessagesSpam: function(tb, ub) {\n aa.getServerIDs((ub || []), function(wb) {\n sb(this, \"/ajax/mercury/mark_spam_messages.php\", {\n message_ids: wb\n });\n }.bind(this));\n var vb = {\n action_type: m.DELETE_MESSAGES,\n action_id: null,\n thread_id: tb,\n message_ids: ub\n };\n this.handleUpdate({\n actions: [vb,],\n from_client: true,\n payload_source: w.CLIENT_DELETE_MESSAGES\n });\n },\n unmarkThreadSpam: function(tb) {\n p.isThreadID(tb);\n oa(this, tb, function(wb) {\n sb(this, \"/ajax/mercury/unmark_spam.php\", {\n id: wb\n });\n }.bind(this));\n var ub = {\n action_type: m.CHANGE_FOLDER,\n action_id: null,\n thread_id: tb,\n new_folder: da.INBOX\n }, vb = {\n actions: [ub,],\n from_client: true,\n payload_source: w.CLIENT_CHANGE_FOLDER\n };\n this.handleUpdate(vb);\n },\n deleteThread: function(tb) {\n p.isThreadID(tb);\n oa(this, tb, function(wb) {\n var xb = {\n ids: [wb,]\n };\n sb(this, \"/ajax/mercury/delete_thread.php\", xb);\n }.bind(this));\n var ub = {\n action_type: m.DELETE_THREAD,\n action_id: null,\n thread_id: tb\n }, vb = {\n actions: [ub,],\n from_client: true,\n payload_source: w.CLIENT_DELETE_THREAD\n };\n this.handleUpdate(vb);\n },\n deleteMessages: function(tb, ub, vb) {\n aa.getServerIDs((ub || []), function(xb) {\n sb(this, \"/ajax/mercury/delete_messages.php\", {\n message_ids: xb\n });\n }.bind(this));\n var wb;\n if (vb) {\n wb = {\n action_type: m.DELETE_THREAD,\n action_id: null,\n thread_id: tb\n };\n }\n else wb = {\n action_type: m.DELETE_MESSAGES,\n action_id: null,\n thread_id: tb,\n message_ids: ub\n };\n ;\n this.handleUpdate({\n actions: [wb,],\n from_client: true,\n payload_source: w.CLIENT_DELETE_MESSAGES\n });\n },\n clearChat: function(tb, ub, vb) {\n p.isThreadID(tb);\n sb(this, \"/ajax/chat/settings.php\", {\n clear_history_id: ub\n });\n var wb = [{\n action_type: m.CLEAR_CHAT,\n action_id: null,\n thread_id: tb,\n clear_time: vb\n },];\n this.handleUpdate({\n actions: wb,\n from_client: true,\n payload_source: w.CLIENT_CLEAR_CHAT\n });\n },\n sendNewMessage: function(tb, ub) {\n ub = (ub || ka);\n if ((!tb.client_state || (tb.client_state == v.SEND_TO_SERVER))) {\n aa.getServerIDs((tb.forward_message_ids || []), function(wb) {\n var xb = tb.thread_id, yb = this.tokenizeThreadID(tb.thread_id), zb = yb.type, ac = ha({\n }, tb);\n ac.forward_message_ids = wb;\n if ((((((zb == \"root\") && (yb.value == ac.message_id))) || (((zb == \"user\") && !pa(this, xb)))) || ((tb.thread_id == r.PENDING_THREAD_ID)))) {\n ac.client_thread_id = ac.thread_id;\n ac.thread_id = null;\n this._sendNewMessageToServer(ac, ub);\n }\n else oa(this, ac.thread_id, function(bc) {\n ac.thread_id = bc;\n this._sendNewMessageToServer(ac);\n }.bind(this));\n ;\n }.bind(this));\n };\n if ((tb.thread_id != r.PENDING_THREAD_ID)) {\n var vb = {\n actions: [ha({\n }, tb),],\n from_client: true,\n payload_source: w.CLIENT_SEND_MESSAGE\n };\n this.handleUpdate(vb);\n }\n ;\n },\n _sendNewMessageToServer: function(tb, ub) {\n ub = (ub || ka);\n sb(this, \"/ajax/mercury/send_messages.php\", {\n message_batch: [tb,],\n client: ub\n });\n },\n requestMessageConfirmation: function(tb, ub) {\n ub = (ub || ka);\n var vb = {\n }, wb = {\n };\n for (var xb in tb) {\n var yb = pa(this, xb);\n if (yb) {\n vb[yb] = tb[xb];\n }\n else {\n var zb = tb[xb];\n for (var ac = 0; (ac < zb.length); ac++) {\n wb[zb[ac]] = xb;;\n };\n }\n ;\n };\n var bc = Object.keys(vb), cc = Object.keys(wb);\n if ((bc.length || cc.length)) {\n sb(this, \"/ajax/mercury/confirm_messages.php\", {\n thread_message_map: vb,\n local_messages: wb,\n client: ub\n });\n };\n },\n handleMessageConfirmError: function(tb) {\n var ub = tb.getRequest().getData().thread_message_map, vb = tb.getRequest().getData().local_messages;\n if ((!ub && !vb)) {\n return\n };\n var wb = [];\n for (var xb in ub) {\n var yb = ub[xb];\n yb.forEach(function(bc) {\n wb.push({\n action_type: m.SEND_MESSAGE,\n client_message_id: bc,\n message_id: bc,\n client_thread_id: null,\n thread_id: xb,\n status: n.UNABLE_TO_CONFIRM\n });\n });\n };\n for (var zb in vb) {\n var ac = vb[zb];\n wb.push({\n action_type: m.SEND_MESSAGE,\n client_message_id: zb,\n message_id: zb,\n client_thread_id: ac,\n thread_id: null,\n status: n.UNABLE_TO_CONFIRM\n });\n };\n if (wb.length) {\n this.handleUpdate({\n actions: wb,\n payload_source: w.CLIENT_HANDLE_ERROR\n });\n };\n },\n markSeen: function() {\n var tb = i.convertActionIDToTimestamp(this._lastActionId);\n sb(this, \"/ajax/mercury/mark_seen.php\", {\n seen_timestamp: tb\n });\n },\n handleRoger: function(tb) {\n var ub = (tb.tid ? this._serverToClientIDs.getResource(tb.tid) : ((\"user:\" + tb.reader)));\n if (ub) {\n var vb = {\n };\n vb[ub] = {\n };\n vb[ub][(\"fbid:\" + tb.reader)] = tb.time;\n this.inform(\"update-roger\", vb);\n }\n ;\n },\n handleUpdateWaitForThread: function(tb, ub, vb) {\n vb = (vb || ka);\n var wb = this._serverToClientIDs.getResource(ub);\n if (wb) {\n this.handleUpdate(tb);\n return;\n }\n ;\n this._serverToClientIDs.executeOrEnqueue(ub, function() {\n this._pendingUpdates.push(tb);\n }.bind(this));\n if (!this._fetchingThreads[ub]) {\n this._fetchingThreads[ub] = true;\n sb(this, \"/ajax/mercury/thread_info.php\", {\n threads: {\n thread_ids: [ub,]\n },\n client: vb\n });\n }\n ;\n },\n handleUpdate: function(tb) {\n var ub = [];\n if ((tb && tb.threads)) {\n for (var vb = 0; (vb < tb.threads.length); vb++) {\n if (!tb.threads[vb].snippet_attachments) {\n continue;\n };\n for (var wb = 0; (wb < tb.threads[vb].snippet_attachments.length); wb++) {\n if (tb.threads[vb].snippet_attachments[wb].share_xhp) {\n ub.push({\n i: vb,\n j: wb,\n xhp: tb.threads[vb].snippet_attachments[wb].share_xhp\n });\n tb.threads[vb].snippet_attachments[wb].share_xhp = ((\"HTMLDivElement not shown: object contains circular \" + \"reference, which was breaking JSON.stringify. \") + \"Look at MercuryServerRequests.handleUpdate\");\n }\n ;\n };\n }\n };\n ja.debug(\"handle_update\", {\n payload: tb,\n from_client: tb.from_client\n });\n for (var xb = 0; (xb < ub.length); xb++) {\n tb.threads[ub[xb].i].snippet_attachments[ub[xb].j].share_xhp = ub[xb].xhp;;\n };\n for (xb in tb) {\n ga.getForFBID(this._fbid).synchronizeInforms(function() {\n if (!tb.from_client) {\n wa(this, tb);\n this.inform(\"payload-preprocessed\", tb);\n }\n ;\n this.inform(\"update-thread-ids\", this._newlyAddedClientIDs);\n this._newlyAddedClientIDs = {\n };\n this.inform(\"update-participants\", tb);\n this.inform(\"update-threads\", tb);\n this.inform(\"update-unread\", tb);\n this.inform(\"update-threadlist\", tb);\n this.inform(\"update-messages\", tb);\n this.inform(\"update-unseen\", tb);\n this.inform(\"update-typing-state\", tb);\n this.inform(\"update-roger\", tb.roger);\n this.inform(\"model-update-completed\", null);\n xa(this);\n }.bind(this));\n break;\n };\n },\n _handleSendMessageErrorCommon: function(tb, ub, vb, wb) {\n ja.debug(\"handle_send_message_error_common\", {\n reliability_error_status: vb,\n request_error_status: ub\n });\n var xb = tb.getData(), yb = xb.message_batch, zb = yb.map(function(bc) {\n return {\n action_type: m.SEND_MESSAGE,\n client_message_id: bc.message_id,\n message_id: bc.message_id,\n client_thread_id: bc.client_thread_id,\n thread_id: bc.thread_id,\n status: ub,\n error_data: wb\n };\n });\n zb.forEach(function(bc) {\n ta(this, bc, vb);\n }.bind(this));\n var ac = {\n actions: zb,\n payload_source: w.CLIENT_HANDLE_ERROR\n };\n this.handleUpdate(ac);\n },\n handleSendMessageError: function(tb) {\n var ub = tb.getPayload(), vb = null, wb = null;\n if ((ub && ub.error_payload)) {\n vb = n.UNCONFIRMED;\n wb = \"send_error\";\n }\n else {\n vb = n.ERROR;\n wb = (\"request_error\" + ua(tb));\n }\n ;\n var xb = tb.error;\n if ((xb === 1404102)) {\n h.verboseErrorHandler(tb);\n };\n var yb = (/<.*>/.test(tb.getErrorDescription()) ? tb.getErrorSummary() : tb.getErrorDescription());\n this._handleSendMessageErrorCommon(tb.getRequest(), vb, wb, {\n type: q.SERVER,\n code: tb.getError(),\n description: yb,\n is_transient: tb.isTransient()\n });\n },\n handleSendMessageTransportError: function(tb) {\n this._handleSendMessageErrorCommon(tb.getRequest(), n.ERROR, (\"transport_error\" + ua(tb)), {\n type: q.TRANSPORT,\n code: tb.getError(),\n is_transient: true\n });\n },\n handleSendMessageTimeout: function(tb) {\n this._handleSendMessageErrorCommon(tb, n.ERROR, \"transport_timeout\", {\n type: q.TIMEOUT,\n is_transient: true\n });\n },\n getLastActionID: function() {\n return this._lastActionId;\n }\n });\n ha(fb, ea);\n function gb(tb) {\n return {\n action_type: m.LOG_MESSAGE,\n thread_id: tb,\n message_id: tb,\n timestamp: Date.now(),\n timestamp_absolute: \"\",\n timestamp_relative: \"\",\n is_unread: false,\n source: y.UNKNOWN,\n log_message_type: u.SERVER_ERROR,\n log_message_data: {\n }\n };\n };\n function hb(tb) {\n var ub = tb.getData(), vb = (ub.request_user_id ? ub.request_user_id : j.user);\n return fb.getForFBID(vb);\n };\n function ib(tb, ub) {\n hb(ub).handleUpdate(tb);\n };\n function jb(tb, ub) {\n var vb = (tb.client || ub.client);\n return {\n client: vb,\n message_batch: tb.message_batch.concat(ub.message_batch)\n };\n };\n function kb(tb, ub) {\n var vb = {\n };\n ha(vb, tb.ids);\n ha(vb, ub.ids);\n var wb = (tb.client || ub.client);\n return {\n ids: vb,\n client: wb\n };\n };\n function lb(tb, ub) {\n return ub;\n };\n function mb(tb) {\n var ub = hb(tb.getRequest());\n ub.handleThreadInfoError(tb);\n };\n function nb(tb) {\n var ub = hb(tb.getRequest());\n ub.handleSendMessageError(tb);\n };\n function ob(tb) {\n var ub = hb(tb.getRequest());\n ub.handleSendMessageTransportError(tb);\n };\n function pb(tb) {\n var ub = hb(tb);\n ub.handleSendMessageTimeout(tb);\n };\n function qb(tb) {\n var ub = hb(tb.getRequest());\n ub.handleMessageConfirmError(tb);\n };\n function rb(tb) {\n fa.registerEndpoints({\n \"/ajax/mercury/thread_sync.php\": {\n request_user_id: tb._fbid,\n mode: fa.IDEMPOTENT,\n handler: ib\n },\n \"/ajax/mercury/thread_info.php\": {\n request_user_id: tb._fbid,\n mode: fa.BATCH_DEFERRED_MULTI,\n batch_function: ya,\n handler: ib,\n error_handler: mb\n },\n \"/ajax/mercury/mark_folder_as_read.php\": {\n request_user_id: tb._fbid,\n mode: fa.IMMEDIATE,\n handler: ib\n },\n \"/ajax/mercury/change_read_status.php\": {\n request_user_id: tb._fbid,\n mode: fa.BATCH_SUCCESSIVE,\n batch_function: kb,\n handler: ib\n },\n \"/ajax/mercury/send_messages.php\": {\n request_user_id: tb._fbid,\n mode: fa.BATCH_SUCCESSIVE,\n batch_function: jb,\n batch_size_limit: ba.SEND_BATCH_LIMIT,\n handler: ib,\n error_handler: nb,\n transport_error_handler: ob,\n timeout: x.sendMessageTimeout,\n timeout_handler: pb,\n connection_retries: ba.SEND_CONNECTION_RETRIES\n },\n \"/ajax/mercury/mark_seen.php\": {\n request_user_id: tb._fbid,\n mode: fa.BATCH_SUCCESSIVE,\n batch_function: lb,\n handler: ib\n },\n \"/ajax/mercury/confirm_messages.php\": {\n request_user_id: tb._fbid,\n mode: fa.IMMEDIATE,\n handler: ib,\n error_handler: qb\n },\n \"/ajax/mercury/threadlist_info.php\": {\n request_user_id: tb._fbid,\n mode: fa.BATCH_SUCCESSIVE_UNIQUE,\n batch_function: ab,\n handler: ib\n },\n \"/ajax/mercury/mark_spam.php\": {\n request_user_id: tb._fbid,\n mode: fa.IMMEDIATE,\n handler: ib\n },\n \"/ajax/mercury/mark_spam_messages.php\": {\n request_user_id: tb._fbid,\n mode: fa.IMMEDIATE,\n handler: ib\n },\n \"/ajax/mercury/unmark_spam.php\": {\n request_user_id: tb._fbid,\n mode: fa.IMMEDIATE,\n handler: ib\n },\n \"/ajax/mercury/unread_threads.php\": {\n request_user_id: tb._fbid,\n mode: fa.BATCH_SUCCESSIVE_UNIQUE,\n batch_function: za,\n handler: ib\n },\n \"/ajax/chat/settings.php\": {\n request_user_id: tb._fbid,\n mode: fa.IMMEDIATE\n },\n \"/ajax/mercury/change_archived_status.php\": {\n request_user_id: tb._fbid,\n mode: fa.BATCH_SUCCESSIVE,\n batch_function: cb,\n handler: ib\n },\n \"/ajax/mercury/delete_thread.php\": {\n request_user_id: tb._fbid,\n mode: fa.BATCH_SUCCESSIVE,\n batch_function: eb,\n handler: ib\n },\n \"/ajax/mercury/delete_messages.php\": {\n request_user_id: tb._fbid,\n mode: fa.IMMEDIATE,\n handler: ib\n },\n \"/ajax/mercury/move_thread.php\": {\n request_user_id: tb._fbid,\n mode: fa.BATCH_SUCCESSIVE,\n batch_function: db,\n handler: ib\n },\n \"/ajax/mercury/change_mute_thread.php\": {\n request_user_id: tb._fbid,\n mode: fa.IMMEDIATE,\n handler: ib\n }\n });\n };\n function sb(tb, ub, vb, wb) {\n fa.trySend(ub, vb, wb, tb._fbid);\n };\n e.exports = fb;\n});\n__d(\"MercuryParticipants\", [\"Env\",\"ImageSourceRequest\",\"ImageSourceType\",\"MercuryAssert\",\"MercuryIDs\",\"MercuryParticipantTypes\",\"MercuryParticipantsConstants\",\"PhotoResizeModeConst\",\"MercuryServerRequests\",\"ShortProfiles\",\"copyProperties\",\"getObjectValues\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Env\"), h = b(\"ImageSourceRequest\"), i = b(\"ImageSourceType\"), j = b(\"MercuryAssert\"), k = b(\"MercuryIDs\"), l = b(\"MercuryParticipantTypes\"), m = b(\"MercuryParticipantsConstants\"), n = b(\"PhotoResizeModeConst\"), o = b(\"MercuryServerRequests\").get(), p = b(\"ShortProfiles\"), q = b(\"copyProperties\"), r = b(\"getObjectValues\"), s = b(\"tx\"), t = (\"fbid:\" + g.user), u = {\n }, v = {\n }, w = function(ba) {\n ba = z(ba);\n if (u[ba.id]) {\n q(u[ba.id], ba);\n }\n else u[ba.id] = q({\n }, ba);\n ;\n if (ba.vanity) {\n v[ba.vanity] = ba.id;\n };\n };\n function x(ba) {\n j.isEmailParticipantID(ba);\n var ca = k.tokenize(ba), da = ca.value;\n return {\n gender: m.UNKNOWN_GENDER,\n href: null,\n id: ba,\n image_src: m.EMAIL_IMAGE,\n big_image_src: m.EMAIL_IMAGE,\n name: da,\n short_name: da,\n employee: false,\n call_promo: false\n };\n };\n function y(ba, ca, da) {\n j.allParticipantIDs(ba);\n var ea = {\n }, fa = {\n };\n ba.forEach(function(ha) {\n if ((u[ha] && !da)) {\n ea[ha] = q({\n }, u[ha]);\n }\n else {\n var ia = k.tokenize(ha);\n if ((ia.type == \"fbid\")) {\n var ja = ia.value;\n fa[ha] = ja;\n }\n else if ((ia.type == \"email\")) {\n ea[ha] = x(ha);\n }\n ;\n }\n ;\n });\n var ga = r(fa);\n if (ga.length) {\n p.getMulti(ga, function(ha) {\n for (var ia in fa) {\n var ja = fa[ia], ka = ha[ja];\n ea[ia] = {\n gender: ka.gender,\n href: ka.uri,\n id: ia,\n image_src: ka.thumbSrc,\n name: ka.name,\n short_name: ka.firstName,\n employee: ka.employee,\n call_promo: ka.showVideoPromo,\n type: ka.type,\n vanity: ka.vanity,\n is_friend: ka.is_friend,\n social_snippets: ka.social_snippets\n };\n w(ea[ia]);\n };\n ca(ea);\n });\n }\n else ca(ea);\n ;\n };\n function z(ba) {\n var ca = ((ba.type === l.USER) || (ba.type === l.FRIEND));\n if (!ca) {\n return ba\n };\n if (((!ba.name && !ba.href) && !ba.vanity)) {\n var da = \"Facebook User\";\n ba.name = da;\n ba.short_name = da;\n }\n ;\n return ba;\n };\n var aa = {\n user: t,\n isAuthor: function(ba) {\n return (ba === t);\n },\n getIDFromVanityOrFBID: function(ba) {\n if (!ba) {\n return\n };\n if (v[ba]) {\n return v[ba]\n };\n if (ba.match(\"^\\\\d+$\")) {\n return aa.getIDForUser(ba)\n };\n },\n getNow: function(ba) {\n return u[ba];\n },\n get: function(ba, ca) {\n j.isParticipantID(ba);\n aa.getMulti([ba,], function(da) {\n ca(da[ba]);\n });\n },\n getMulti: function(ba, ca, da) {\n return y(ba, ca, false);\n },\n getBigImageMulti: function(ba, ca) {\n j.allParticipantIDs(ba);\n var da = m.BIG_IMAGE_SIZE;\n aa.getMulti(ba, function(ea) {\n var fa = {\n }, ga = 0, ha = function(la, ma) {\n ga++;\n fa[la] = ma;\n if ((ga === ba.length)) {\n ca(fa);\n };\n }, ia = function(la, ma) {\n u[la].big_image_src = ma.uri;\n ha(la, ma.uri);\n };\n for (var ja in ea) {\n var ka = ea[ja];\n if (!ka.big_image_src) {\n new h().setFBID(aa.getUserID(ja)).setType(i.PROFILE_PICTURE).setDimensions(da, da).setResizeMode(n.COVER).setCallback(ia.curry(ja)).send();\n }\n else ha(ka.id, ka.big_image_src);\n ;\n };\n });\n },\n getOrderedBigImageMulti: function(ba, ca) {\n aa.getBigImageMulti(ba, function(da) {\n var ea = ba.map(function(fa) {\n return da[fa];\n });\n ca(ea);\n });\n },\n getMultiForceDownload: function(ba, ca) {\n return y(ba, ca, true);\n },\n getUserID: function(ba) {\n return k.getUserIDFromParticipantID(ba);\n },\n getIDForUser: function(ba) {\n return (\"fbid:\" + ba);\n },\n addParticipants: function(ba) {\n ba.forEach(w);\n }\n };\n o.subscribe(\"update-participants\", function(ba, ca) {\n aa.addParticipants((ca.participants || []));\n });\n e.exports = aa;\n});\n__d(\"MercuryFolders\", [\"MessagingTag\",\"arrayContains\",], function(a, b, c, d, e, f) {\n var g = b(\"MessagingTag\"), h = b(\"arrayContains\"), i = [g.INBOX,g.OTHER,g.ACTION_ARCHIVED,g.SPAM,], j = {\n getSupportedFolders: function() {\n return i.concat();\n },\n isSupportedFolder: function(k) {\n return h(i, k);\n },\n getFromMeta: function(k) {\n var l = k.folder;\n if (k.is_archived) {\n l = g.ACTION_ARCHIVED;\n };\n return l;\n }\n };\n e.exports = j;\n});\n__d(\"MercuryAttachment\", [\"MercuryAttachmentContentType\",\"MercuryAttachmentType\",\"startsWith\",], function(a, b, c, d, e, f) {\n var g = b(\"MercuryAttachmentContentType\"), h = b(\"MercuryAttachmentType\"), i = b(\"startsWith\"), j = {\n getAttachIconClass: function(k) {\n switch (k) {\n case g.PHOTO:\n return \"MercuryPhotoIcon\";\n case g.VIDEO:\n return \"MercuryVideoIcon\";\n case g.MUSIC:\n return \"MercuryMusicIcon\";\n case g.VOICE:\n return \"MercuryVoiceIcon\";\n case g.TEXT:\n return \"MercuryTextIcon\";\n case g.MSWORD:\n return \"MercuryMSWordIcon\";\n case g.MSXLS:\n return \"MercuryMSXLSIcon\";\n case g.MSPPT:\n return \"MercuryMSPPTIcon\";\n };\n return \"MercuryDefaultIcon\";\n },\n getAttachIconClassByMime: function(k) {\n if (i(k, \"image\")) {\n return \"MercuryPhotoIcon\";\n }\n else if (i(k, \"video\")) {\n return \"MercuryVideoIcon\";\n }\n else if (i(k, \"audio\")) {\n return \"MercuryMusicIcon\";\n }\n else if (i(k, \"text/plain\")) {\n return \"MercuryTextIcon\";\n }\n else return \"MercuryDefaultIcon\"\n \n \n \n ;\n },\n getAttachTypeByMime: function(k) {\n if (i(k, \"image\")) {\n return g.PHOTO;\n }\n else if (i(k, \"video\")) {\n return g.VIDEO;\n }\n else if (i(k, \"audio\")) {\n return g.MUSIC;\n }\n else if (i(k, \"text/plain\")) {\n return g.TEXT;\n }\n else return g.UNKNOWN\n \n \n \n ;\n },\n convertRaw: function(k) {\n var l = [];\n for (var m = 0; (m < k.length); m++) {\n var n = k[m];\n if ((n.attach_type === h.PHOTO)) {\n l.push(n);\n }\n else if (n.filename) {\n var o = j.getAttachTypeByMime(n.filetype), p = {\n };\n p.attach_type = h.FILE;\n p.name = n.filename;\n p.icon_type = o;\n p.url = \"\";\n if ((o == g.PHOTO)) {\n p.preview_loading = true;\n };\n l.push(p);\n }\n \n ;\n };\n return l;\n }\n };\n e.exports = j;\n});\n__d(\"MercuryThreads\", [\"Arbiter\",\"TimestampConverter\",\"MercuryFolders\",\"JSLogger\",\"KeyedCallbackManager\",\"MercuryActionTypeConstants\",\"MercuryAssert\",\"MercuryAttachment\",\"MercuryGlobalActionType\",\"MercuryIDs\",\"MercuryLogMessageType\",\"MercurySingletonMixin\",\"MercuryThreadMode\",\"MessagingTag\",\"MercuryParticipants\",\"MercuryServerRequests\",\"MercuryThreadInformer\",\"copyProperties\",\"createObjectFrom\",\"removeFromArray\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"TimestampConverter\"), i = b(\"MercuryFolders\"), j = b(\"JSLogger\"), k = b(\"KeyedCallbackManager\"), l = b(\"MercuryActionTypeConstants\"), m = b(\"MercuryAssert\"), n = b(\"MercuryAttachment\"), o = b(\"MercuryGlobalActionType\"), p = b(\"MercuryIDs\"), q = b(\"MercuryLogMessageType\"), r = b(\"MercurySingletonMixin\"), s = b(\"MercuryThreadMode\"), t = b(\"MessagingTag\"), u = b(\"MercuryParticipants\"), v = b(\"MercuryServerRequests\"), w = b(\"MercuryThreadInformer\"), x = b(\"copyProperties\"), y = b(\"createObjectFrom\"), z = b(\"removeFromArray\"), aa = j.create(\"mercury_threads\");\n function ba(na, oa, pa) {\n var qa = y(oa.participants, true), ra = u.getIDForUser(na._fbid);\n pa.forEach(function(sa) {\n if ((qa[sa] !== true)) {\n oa.participants.push(sa);\n if ((sa === ra)) {\n oa.is_subscribed = true;\n };\n }\n ;\n });\n };\n function ca(na, oa, pa) {\n z(oa.participants, pa);\n if ((pa === u.getIDForUser(na._fbid))) {\n oa.is_subscribed = false;\n };\n };\n function da(na, oa) {\n if ((na.participants[0] != oa)) {\n z(na.participants, oa);\n na.participants.unshift(oa);\n }\n ;\n };\n function ea(na, oa) {\n var pa = oa.body, qa = oa.subject, ra = \"\";\n if (qa) {\n qa = qa.toLowerCase();\n if ((pa.slice(0, qa.length).toLowerCase() == qa)) {\n ra = pa;\n }\n else if (pa) {\n ra = ((qa + \" \\u00b7 \") + pa);\n }\n else ra = qa;\n \n ;\n }\n else ra = pa;\n ;\n na.snippet = ra;\n na.snippet_has_attachment = oa.has_attachment;\n if ((oa.raw_attachments && (oa.raw_attachments.length > 0))) {\n var sa = n.convertRaw(oa.raw_attachments);\n na.snippet_attachments = sa;\n }\n else na.snippet_attachments = oa.attachments;\n ;\n na.is_forwarded_snippet = !!oa.forward_count;\n na.snippet_sender = oa.author;\n };\n function fa(na, oa, pa) {\n if (!oa) {\n return false\n };\n if (!oa.timestamp) {\n return true\n };\n var qa = !oa.unread_count;\n if ((pa == qa)) {\n return false\n };\n oa.unread_count = (pa ? 0 : 1);\n na._threadInformer.updatedThread(oa.thread_id);\n return true;\n };\n function ga(na, oa) {\n var pa = na._threads.getAllResources();\n for (var qa in pa) {\n var ra = pa[qa];\n if ((ra.folder == oa)) {\n ra.unread_count = 0;\n na._threads.setResource(qa, ra);\n na._threadInformer.updatedThread(qa);\n }\n ;\n };\n };\n function ha(na, oa, pa) {\n if ((!oa || (oa.chat_clear_time === pa))) {\n return false\n };\n oa.chat_clear_time = pa;\n na._threadInformer.reorderedMessages(oa.thread_id);\n return true;\n };\n function ia(na, oa, pa, qa) {\n var ra = pa.action_type;\n if (((ra == l.USER_GENERATED_MESSAGE) || (ra == l.LOG_MESSAGE))) {\n (pa.is_unread && oa.unread_count++);\n oa.message_count++;\n oa.is_archived = false;\n }\n ;\n switch (ra) {\n case l.USER_GENERATED_MESSAGE:\n da(oa, pa.author);\n break;\n case l.SEND_MESSAGE:\n var sa = pa.log_message_type;\n if ((sa == q.THREAD_IMAGE)) {\n oa.image_src = (pa.log_message_data.image ? pa.log_message_data.image.preview_url : null);\n };\n oa.snippet_attachments = pa.attachments;\n break;\n case l.LOG_MESSAGE:\n var sa = pa.log_message_type;\n if ((sa == q.SUBSCRIBE)) {\n ba(na, oa, pa.log_message_data.added_participants);\n }\n else if ((sa == q.JOINABLE_JOINED)) {\n ba(na, oa, [pa.log_message_data.joined_participant,]);\n }\n else if ((sa == q.UNSUBSCRIBE)) {\n ca(na, oa, pa.author);\n }\n else if ((sa == q.THREAD_IMAGE)) {\n if (!qa) {\n oa.image_src = (pa.log_message_data.image ? pa.log_message_data.image.preview_url : null);\n };\n }\n else if ((sa == q.THREAD_NAME)) {\n oa.name = pa.log_message_data.name;\n }\n \n \n \n ;\n break;\n case l.CHANGE_READ_STATUS:\n if (pa.timestamp) {\n na._threadInformer.changedThreadReadState(oa.thread_id, pa.mark_as_read, pa.timestamp);\n };\n fa(na, oa, pa.mark_as_read);\n break;\n case l.CLEAR_CHAT:\n ha(na, oa, pa.clear_time);\n break;\n case l.CHANGE_ARCHIVED_STATUS:\n oa.is_archived = pa.archived;\n break;\n case l.CHANGE_FOLDER:\n oa.folder = pa.new_folder;\n break;\n case l.DELETE_MESSAGES:\n if (qa) {\n oa.snippet = \"...\";\n oa.snippet_has_attachment = false;\n oa.snippet_attachments = null;\n oa.snippet_sender = null;\n oa.is_forwarded_snippet = false;\n na._threadInformer.updatedThread(pa.thread_id);\n }\n else if (pa.message_ids) {\n oa.message_count = (oa.message_count - pa.message_ids.length);\n }\n ;\n break;\n case l.CHANGE_MUTE_SETTINGS:\n if ((pa.mute_settings !== undefined)) {\n var ta = (na._fbid + \"@facebook.com\");\n if (oa.mute_settings) {\n if (pa.mute_settings) {\n oa.mute_settings[ta] = pa.mute_settings;\n }\n else delete oa.mute_settings[ta];\n ;\n na._threadInformer.updatedThread(oa.thread_id);\n }\n ;\n }\n ;\n break;\n };\n if (pa.action_id) {\n oa.last_action_id = h.maxValidActionID(pa.action_id, oa.last_action_id);\n };\n };\n function ja(na, oa) {\n var pa = na._serverRequests.tokenizeThreadID(oa.thread_id);\n if ((pa.type == \"group\")) {\n aa.error(\"invalid_new_thread_message\", oa);\n return undefined;\n }\n ;\n var qa = la(na, oa.specific_to_list), ra = {\n thread_id: oa.thread_id,\n last_action_id: oa.action_id,\n participants: oa.specific_to_list,\n name: null,\n snippet: oa.body,\n snippet_has_attachment: false,\n snippet_attachments: [],\n snippet_sender: oa.author,\n unread_count: 0,\n message_count: 0,\n image_src: null,\n timestamp_absolute: oa.timestamp_absolute,\n timestamp_relative: oa.timestamp_relative,\n timestamp: oa.timestamp,\n canonical_fbid: ((pa.type === \"user\") ? pa.value : null),\n is_canonical_user: (pa.type === \"user\"),\n is_canonical: qa,\n is_subscribed: true,\n root_message_threading_id: oa.message_id,\n folder: t.INBOX,\n is_archived: false,\n mode: s.TITAN_ORIGINATED\n };\n return ra;\n };\n function ka(na) {\n this._fbid = na;\n this._serverRequests = v.getForFBID(this._fbid);\n this._threadInformer = w.getForFBID(this._fbid);\n this._threads = new k();\n ma(this);\n };\n x(ka.prototype, {\n getThreadMetaNow: function(na) {\n m.isThreadID(na);\n return this._threads.getResource(na);\n },\n getThreadMeta: function(na, oa, pa) {\n m.isThreadID(na);\n var qa = this._threads.executeOrEnqueue(na, oa), ra = this._threads.getUnavailableResources(qa);\n if (ra.length) {\n var sa = this._serverRequests.tokenizeThreadID(na);\n if ((sa.type == \"user\")) {\n this.getCanonicalThreadToUser(sa.value);\n }\n else this._serverRequests.fetchThreadData(ra, pa);\n ;\n }\n ;\n return qa;\n },\n unsubscribe: function(na) {\n this._threads.unsubscribe(na);\n },\n changeThreadReadStatus: function(na, oa) {\n m.isThreadID(na);\n var pa = this._threads.getResource(na);\n if (fa(this, pa, oa)) {\n this._serverRequests.changeThreadReadStatus(na, oa, i.getFromMeta(pa));\n };\n },\n changeThreadArchivedStatus: function(na, oa) {\n m.isThreadID(na);\n var pa = this._threads.getResource(na);\n if ((pa.is_archived != oa)) {\n pa.is_archived = oa;\n this._threadInformer.updatedThread(pa.thread_id);\n this._serverRequests.changeThreadArchivedStatus(na, oa);\n }\n ;\n },\n markThreadSpam: function(na) {\n this._serverRequests.markThreadSpam(na);\n },\n unmarkThreadSpam: function(na) {\n this._serverRequests.unmarkThreadSpam(na);\n },\n updateThreadMuteSetting: function(na, oa) {\n this._serverRequests.changeMutingOnThread(na, oa);\n },\n changeFolder: function(na, oa) {\n m.isThreadID(na);\n var pa = this._threads.getResource(na);\n if ((pa && (pa.folder != oa))) {\n pa.folder = oa;\n this._threadInformer.updatedThread(pa.thread_id);\n this._serverRequests.changeThreadFolder(na, oa);\n }\n ;\n },\n deleteThread: function(na) {\n m.isThreadID(na);\n this._serverRequests.deleteThread(na);\n },\n updateThreads: function(na) {\n if ((!na || !na.length)) {\n return\n };\n var oa = {\n };\n na.forEach(function(pa) {\n oa[pa.thread_id] = pa;\n });\n this._threads.addResourcesAndExecute(oa);\n },\n updateMetadataByActions: function(na, oa) {\n if ((!na || !na.length)) {\n return\n };\n var pa = {\n }, qa = {\n }, ra = {\n };\n for (var sa = 0; (sa < na.length); sa++) {\n var ta = na[sa];\n if (ta.is_forward) {\n continue;\n };\n var ua = ta.action_type, va = ta.thread_id;\n m.isThreadID(va);\n var wa = this.getThreadMetaNow(va);\n if (((ua == l.LOG_MESSAGE) && (ta.log_message_type == q.SERVER_ERROR))) {\n continue;\n };\n if (((!wa && !ta.action_id) && (ua == l.USER_GENERATED_MESSAGE))) {\n wa = ja(this, ta);\n this._threads.setResource(va, wa);\n }\n ;\n if (wa) {\n if ((ua == l.DELETE_THREAD)) {\n wa.message_count = 0;\n this._threadInformer.deletedThread(va);\n continue;\n }\n ;\n var xa = !!ta.action_id;\n if (((ua == l.LOG_MESSAGE) || (ua == l.USER_GENERATED_MESSAGE))) {\n xa = !oa;\n };\n if (((wa.server_timestamp && (ta.timestamp <= wa.server_timestamp)) && xa)) {\n continue;\n };\n if (!ra[va]) {\n ra[va] = x({\n }, wa);\n };\n ia(this, ra[va], ta, oa);\n if ((ua == l.USER_GENERATED_MESSAGE)) {\n pa[va] = ta;\n };\n if ((((ua == l.USER_GENERATED_MESSAGE) || (ua == l.LOG_MESSAGE)) || (ua == l.SEND_MESSAGE))) {\n if (((ta && ta.timestamp) && ((!qa[va] || (ta.timestamp > qa[va].timestamp))))) {\n qa[va] = ta;\n }\n };\n }\n ;\n };\n for (var ya in ra) {\n var za = ra[ya], ab = pa[ya];\n if (ab) {\n ea(za, ab);\n };\n var bb = qa[ya], cb = za.timestamp;\n if (bb) {\n if ((bb.timestamp > cb)) {\n za = x(za, {\n timestamp_absolute: bb.timestamp_absolute,\n timestamp_relative: bb.timestamp_relative,\n timestamp: bb.timestamp\n });\n };\n var db = za.server_timestamp;\n if ((!oa && (bb.timestamp > db))) {\n za.server_timestamp = bb.timestamp;\n };\n }\n ;\n this._threads.setResource(ya, za);\n };\n },\n getCanonicalThreadToUser: function(na, oa, pa) {\n return this.getCanonicalThreadToParticipant((\"fbid:\" + na), oa, pa);\n },\n getCanonicalThreadToParticipant: function(na, oa, pa) {\n var qa = this.getThreadIDForParticipant(na), ra = this._threads.getResource(qa);\n if ((typeof ra == \"undefined\")) {\n ra = this.createNewLocalThread(qa, [u.getIDForUser(this._fbid),na,], oa);\n this._serverRequests.fetchThreadData([qa,], pa);\n }\n ;\n return ra;\n },\n getThreadIdForUser: function(na) {\n return (\"user:\" + na);\n },\n getThreadIDForParticipant: function(na) {\n var oa = p.tokenize(na);\n return this.getThreadIdForUser(oa.value);\n },\n createNewLocalThread: function(na, oa, pa) {\n var qa = this._threads.getResource(na);\n if (!qa) {\n var ra = this._serverRequests.tokenizeThreadID(na);\n qa = {\n thread_id: na,\n last_action_id: null,\n participants: oa,\n name: null,\n snippet: \"\",\n snippet_has_attachment: false,\n snippet_sender: null,\n unread_count: (pa ? pa : 0),\n message_count: 0,\n image_src: null,\n timestamp_absolute: null,\n timestamp_relative: null,\n timestamp: null,\n canonical_fbid: ((ra.type === \"user\") ? ra.value : null),\n is_canonical_user: (ra.type == \"user\"),\n is_canonical: la(this, oa),\n is_subscribed: true,\n root_message_threading_id: null,\n folder: t.INBOX,\n is_archived: false,\n mode: s.TITAN_ORIGINATED\n };\n this._threads.setResource(na, qa);\n }\n ;\n return qa;\n },\n addParticipantsToThreadLocally: function(na, oa) {\n var pa = this._threads.getResource(na);\n if (pa) {\n ba(this, pa, oa);\n this._threadInformer.updatedThread(pa.thread_id);\n }\n ;\n },\n getCanonicalUserInThread: function(na) {\n var oa = this._serverRequests.tokenizeThreadID(na);\n return ((oa.type == \"user\") ? oa.value : null);\n },\n getCanonicalGroupInThread: function(na) {\n var oa = this._serverRequests.tokenizeThreadID(na);\n return ((oa.type == \"group\") ? oa.value : null);\n },\n isEmptyLocalThread: function(na) {\n var oa = this._threads.getResource(na);\n if (!oa) {\n return false\n };\n var pa = this._serverRequests.tokenizeThreadID(na);\n return ((pa.type == \"root\") && !oa.timestamp);\n },\n isNewEmptyLocalThread: function(na) {\n if (!this.isEmptyLocalThread(na)) {\n return false\n };\n var oa = this._threads.getResource(na);\n return (oa.participants && (oa.participants.length === 0));\n },\n canReply: function(na) {\n var oa = this._threads.getResource(na);\n return (((oa && oa.is_subscribed) && (oa.mode != s.OBJECT_ORIGINATED)) && ((oa.recipients_loadable || (oa.recipients_loadable === undefined))));\n }\n });\n x(ka, r);\n function la(na, oa) {\n var pa = oa.filter(function(qa) {\n return (qa != u.getIDForUser(na._fbid));\n });\n return (pa.length <= 1);\n };\n function ma(na) {\n na._serverRequests.subscribe(\"update-threads\", function(oa, pa) {\n var qa = ((pa.actions || [])).filter(function(ua) {\n return ua.thread_id;\n });\n na.updateThreads(pa.threads);\n na.updateMetadataByActions(qa, pa.from_client);\n ((pa.threads || [])).forEach(function(ua) {\n na._threadInformer.updatedThread(ua.thread_id);\n });\n var ra = (pa.global_actions || []);\n for (var sa = 0; (sa < ra.length); sa++) {\n var ta = ra[sa];\n if ((ta.action_type == o.MARK_ALL_READ)) {\n ga(na, ta.folder);\n };\n };\n });\n };\n g.subscribe(j.DUMP_EVENT, function(na, oa) {\n oa.messaging = (oa.messaging || {\n });\n oa.messaging.threads = {\n };\n var pa = ka._getInstances();\n for (var qa in pa) {\n oa.messaging.threads[qa] = pa[qa]._threads.dumpResources();;\n };\n });\n e.exports = ka;\n});\n__d(\"MercuryUnreadState\", [\"Arbiter\",\"MercuryFolders\",\"JSLogger\",\"KeyedCallbackManager\",\"MercuryActionTypeConstants\",\"MercuryGlobalActionType\",\"MercurySingletonMixin\",\"MercuryThreadlistConstants\",\"MessagingTag\",\"MercuryServerRequests\",\"MercuryThreadInformer\",\"MercuryThreads\",\"arrayContains\",\"copyProperties\",\"createObjectFrom\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"MercuryFolders\"), i = b(\"JSLogger\"), j = b(\"KeyedCallbackManager\"), k = b(\"MercuryActionTypeConstants\"), l = b(\"MercuryGlobalActionType\"), m = b(\"MercurySingletonMixin\"), n = b(\"MercuryThreadlistConstants\"), o = b(\"MessagingTag\"), p = b(\"MercuryServerRequests\"), q = b(\"MercuryThreadInformer\"), r = b(\"MercuryThreads\"), s = b(\"arrayContains\"), t = b(\"copyProperties\"), u = b(\"createObjectFrom\"), v = ((h.getSupportedFolders() || [])).filter(function(ma) {\n return (ma != o.ACTION_ARCHIVED);\n }), w = \"unread_thread_hash\", x = \"unseen_thread_list\", y = n.MAX_UNREAD_COUNT, z = i.create(\"mercury_unread_state\");\n function aa(ma) {\n this._fbid = ma;\n this._serverRequests = p.getForFBID(this._fbid);\n this._threadInformer = q.getForFBID(this._fbid);\n this._threads = r.getForFBID(this._fbid);\n this._allReadTimestamp = {\n };\n this._threadReadTimestamp = {\n };\n this._initialUnreadCount = {\n };\n this._maxCount = {\n };\n this._unreadResources = {\n };\n v.forEach(function(na) {\n this._initialUnreadCount[na] = 0;\n this._maxCount[na] = false;\n this._unreadResources[na] = new j();\n }.bind(this));\n this._serverRequests.subscribe(\"update-unread\", function(na, oa) {\n fa(this, oa);\n var pa = (oa.global_actions || []);\n for (var qa = 0; (qa < pa.length); qa++) {\n var ra = pa[qa];\n if ((ra.action_type == l.MARK_ALL_READ)) {\n ia(this, ra.folder, ra.timestamp);\n };\n };\n }.bind(this));\n this._serverRequests.subscribe(\"update-thread-ids\", function(na, oa) {\n ka(this, oa);\n }.bind(this));\n };\n t(aa.prototype, {\n getUnreadCount: function(ma) {\n if (this.exceedsMaxCount(ma)) {\n z.error(\"unguarded_unread_count_fetch\", {\n });\n return 0;\n }\n ;\n return ea(this, ma);\n },\n exceedsMaxCount: function(ma) {\n return (this._maxCount[ma] || ((ea(this, ma) > y)));\n },\n markFolderAsRead: function(ma) {\n if ((this._maxCount[ma] || (ea(this, ma) > 0))) {\n this._serverRequests.markFolderAsRead(ma);\n };\n }\n });\n t(aa, m);\n function ba(ma, na, oa) {\n ma._unreadResources[na].setResource(w, oa);\n ma._unreadResources[na].setResource(x, Object.keys(oa));\n };\n function ca(ma, na, oa) {\n var pa = ma._unreadResources[na].executeOrEnqueue(w, oa), qa = ma._unreadResources[na].getUnavailableResources(pa);\n if (qa.length) {\n ma._serverRequests.fetchUnreadThreadIDs(na);\n };\n };\n function da(ma, na) {\n return ma._unreadResources[na].getResource(w);\n };\n function ea(ma, na) {\n var oa = ma._unreadResources[na].getResource(x);\n if (oa) {\n return oa.length;\n }\n else return ma._initialUnreadCount[na]\n ;\n };\n function fa(ma, na) {\n var oa;\n ((na.unread_thread_ids || [])).forEach(function(pa) {\n oa = pa.folder;\n if (!la(oa)) {\n return\n };\n var qa = ja(ma, pa.thread_ids);\n ba(ma, oa, u(qa, true));\n if ((qa.length > y)) {\n ma._maxCount[oa] = true;\n };\n ma._threadInformer.updatedUnreadState();\n });\n ((na.message_counts || [])).forEach(function(pa) {\n if ((pa.unread_count === undefined)) {\n return\n };\n oa = pa.folder;\n if ((pa.unread_count > y)) {\n ma._maxCount[oa] = true;\n ba(ma, oa, {\n });\n ma._threadInformer.updatedUnreadState();\n }\n else {\n ma._initialUnreadCount[oa] = pa.unread_count;\n if ((ma._initialUnreadCount[oa] === 0)) {\n ba(ma, oa, {\n });\n };\n ma._threadInformer.updatedUnreadState();\n }\n ;\n });\n ((na.actions || [])).forEach(function(pa) {\n if (pa.is_forward) {\n return\n };\n var qa = k, ra = (pa.thread_id ? pa.thread_id : pa.server_thread_id);\n if ((pa.action_type == qa.DELETE_THREAD)) {\n v.forEach(function(ta) {\n ha(ma, ta, ra);\n });\n }\n else if (((pa.action_type == qa.CHANGE_ARCHIVED_STATUS) || (pa.action_type == qa.CHANGE_FOLDER))) {\n var sa = ma._threads.getThreadMetaNow(pa.thread_id);\n oa = h.getFromMeta(sa);\n if ((la(oa) && (sa.unread_count > 0))) {\n ga(ma, oa, ra);\n };\n v.forEach(function(ta) {\n if ((ta != oa)) {\n ha(ma, ta, ra);\n };\n });\n }\n else {\n oa = pa.folder;\n if (!la(oa)) {\n return\n };\n if ((pa.action_type == qa.CHANGE_READ_STATUS)) {\n if (pa.mark_as_read) {\n ha(ma, oa, ra, pa.timestamp);\n }\n else ga(ma, oa, ra, pa.timestamp);\n ;\n }\n else if (((pa.action_type == qa.USER_GENERATED_MESSAGE) || (pa.action_type == qa.LOG_MESSAGE))) {\n if (pa.is_unread) {\n ga(ma, oa, ra, pa.timestamp);\n }\n }\n ;\n }\n \n ;\n });\n };\n function ga(ma, na, oa, pa) {\n if (ma._maxCount[na]) {\n return\n };\n ca(ma, na, function(qa) {\n var ra = (ma._allReadTimestamp[na] || 0), sa = (ma._threadReadTimestamp[oa] || 0), ta = (pa || Number.POSITIVE_INFINITY);\n if ((((ta >= ra) && (ta >= sa)) && !qa[oa])) {\n qa[oa] = (pa || 0);\n ba(ma, na, qa);\n ma._threadInformer.updatedUnreadState();\n }\n ;\n });\n };\n function ha(ma, na, oa, pa) {\n if (ma._maxCount[na]) {\n return\n };\n ca(ma, na, function(qa) {\n if (pa) {\n var ra = ma._threadReadTimestamp[oa];\n if ((!ra || (ra < pa))) {\n ma._threadReadTimestamp[oa] = pa;\n };\n }\n ;\n var sa = qa[oa];\n if (((pa && (typeof sa == \"number\")) && (pa < sa))) {\n return\n };\n if ((oa in qa)) {\n delete qa[oa];\n ba(ma, na, qa);\n ma._threadInformer.updatedUnreadState();\n }\n ;\n });\n };\n function ia(ma, na, oa) {\n ma._maxCount[na] = false;\n ba(ma, na, {\n });\n ma._allReadTimestamp[na] = Math.max((ma._allReadTimestamp[na] || 0), (oa || 0));\n ma._threadInformer.updatedUnreadState();\n };\n function ja(ma, na) {\n return na.map(ma._serverRequests.convertThreadIDIfAvailable.bind(ma._serverRequests));\n };\n function ka(ma, na) {\n v.forEach(function(oa) {\n var pa = da(ma, oa);\n if (!pa) {\n return\n };\n for (var qa in na) {\n var ra = na[qa];\n if (pa[qa]) {\n pa[ra] = pa[qa];\n delete pa[qa];\n }\n ;\n };\n ba(ma, oa, pa);\n });\n };\n function la(ma) {\n return s(v, ma);\n };\n g.subscribe(i.DUMP_EVENT, function(ma, na) {\n na.messaging = (na.messaging || {\n });\n na.messaging.unread = {\n };\n na.messaging.unread_max_count = {\n };\n var oa = aa._getInstances();\n for (var pa in oa) {\n na.messaging.unread[pa] = {\n };\n na.messaging.unread_max_count[pa] = {\n };\n v.forEach(function(qa) {\n na.messaging.unread[pa][qa] = t({\n }, da(oa[pa], qa));\n na.messaging.unread_max_count[pa][qa] = oa[pa]._maxCount[qa];\n });\n };\n });\n e.exports = aa;\n});\n__d(\"MercuryChatUtils\", [\"Env\",], function(a, b, c, d, e, f) {\n var g = b(\"Env\"), h = {\n canOpenChatTab: function(i) {\n var j = (i.is_canonical && !i.is_canonical_user);\n return ((i.is_subscribed && !j) && (i.canonical_fbid != g.user));\n }\n };\n e.exports = h;\n});\n__d(\"RenderManager\", [\"function-extensions\",\"copyProperties\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"copyProperties\");\n function h(i) {\n this._isDirty = false;\n this._obj = i;\n };\n g(h.prototype, {\n dirty: function() {\n if (!this._isDirty) {\n this._isDirty = true;\n this._doPaint.bind(this).defer();\n }\n ;\n },\n _doPaint: function() {\n this._isDirty = false;\n this._obj.paint();\n }\n });\n e.exports = h;\n});\n__d(\"CounterDisplay\", [\"Arbiter\",\"CSS\",\"DOM\",\"RenderManager\",\"Run\",\"$\",\"copyProperties\",\"removeFromArray\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"CSS\"), i = b(\"DOM\"), j = b(\"RenderManager\"), k = b(\"Run\"), l = b(\"$\"), m = b(\"copyProperties\"), n = b(\"removeFromArray\");\n function o(p, q, r, s, t, u) {\n m(this, {\n _name: p,\n _valueNode: l(q),\n _wrapperNode: (l(r) || null),\n _statusClass: t,\n _rm: new j(this),\n _arbiterSubscription: null,\n _count: 0\n });\n var v = this._valueNode.firstChild;\n if (v) {\n var w = parseInt(v.nodeValue, 10);\n if (!isNaN(w)) {\n this._count = w;\n };\n }\n ;\n this._statusNode = (s ? l(s) : null);\n this._subscribeAll();\n o.instances.push(this);\n if (!u) {\n k.onLeave(this._destroy.bind(this), true);\n };\n };\n m(o, {\n EVENT_TYPE_ADJUST: \"CounterDisplay/adjust\",\n EVENT_TYPE_UPDATE: \"CounterDisplay/update\",\n instances: [],\n adjustCount: function(p, q) {\n g.inform(((o.EVENT_TYPE_ADJUST + \"/\") + p), q);\n },\n setCount: function(p, q) {\n g.inform(((o.EVENT_TYPE_UPDATE + \"/\") + p), q);\n }\n });\n m(o.prototype, {\n _destroy: function() {\n delete this._valueNode;\n delete this._wrapperNode;\n if (this._arbiterSubscription) {\n this._arbiterSubscription.unsubscribe();\n delete this._arbiterSubscription;\n }\n ;\n n(o.instances, this);\n },\n adjustCount: function(p) {\n this._count = Math.max(0, (this._count + p));\n this._rm.dirty();\n return this;\n },\n setCount: function(p) {\n this._count = Math.max(0, p);\n this._rm.dirty();\n return this;\n },\n paint: function() {\n i.setContent(this._valueNode, this._count);\n this._toggleNodes();\n },\n _toggleNodes: function() {\n if (this._wrapperNode) {\n h.conditionClass(this._wrapperNode, \"hidden_elem\", (this._count <= 0));\n };\n if ((this._statusClass && this._statusNode)) {\n h.conditionClass(this._statusNode, this._statusClass, (this._count > 0));\n };\n },\n _subscribeAll: function() {\n var p = [((o.EVENT_TYPE_ADJUST + \"/\") + this._name),((o.EVENT_TYPE_UPDATE + \"/\") + this._name),];\n this._arbiterSubscription = g.subscribe(p, this._onInform.bind(this), g.SUBSCRIBE_NEW);\n },\n _onInform: function(p, q) {\n q = parseInt(q);\n if (isNaN(q)) {\n return\n };\n if ((p.indexOf(o.EVENT_TYPE_ADJUST) != -1)) {\n this.adjustCount(q);\n }\n else if ((p.indexOf(o.EVENT_TYPE_UPDATE) != -1)) {\n this.setCount(q);\n }\n else return\n \n ;\n return;\n }\n });\n e.exports = o;\n});"); |
| // 8931 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s29aa87ae93fc8aca2114c63815cd6c841d633925"); |
| // 8932 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"zBhY6\",]);\n}\n;\n;\n__d(\"MercuryAPIArgsSource\", [], function(a, b, c, d, e, f) {\n e.exports = {\n JEWEL: \"jewel\",\n CHAT: \"chat\",\n MERCURY: \"mercury\",\n WEBMESSENGER: \"web_messenger\"\n };\n});\n__d(\"MercuryActionStatus\", [], function(a, b, c, d, e, f) {\n e.exports = {\n UNCONFIRMED: 3,\n UNSENT: 0,\n RESENDING: 7,\n RESENT: 6,\n UNABLE_TO_CONFIRM: 5,\n FAILED_UNKNOWN_REASON: 4,\n SUCCESS: 1,\n ERROR: 10\n };\n});\n__d(\"MercuryActionTypeConstants\", [], function(a, b, c, d, e, f) {\n e.exports = {\n LOG_MESSAGE: \"ma-type:log-message\",\n CLEAR_CHAT: \"ma-type:clear_chat\",\n UPDATE_ACTION_ID: \"ma-type:update-action-id\",\n DELETE_MESSAGES: \"ma-type:delete-messages\",\n CHANGE_FOLDER: \"ma-type:change-folder\",\n SEND_MESSAGE: \"ma-type:send-message\",\n CHANGE_ARCHIVED_STATUS: \"ma-type:change-archived-status\",\n DELETE_THREAD: \"ma-type:delete-thread\",\n USER_GENERATED_MESSAGE: \"ma-type:user-generated-message\",\n CHANGE_READ_STATUS: \"ma-type:change_read_status\",\n CHANGE_MUTE_SETTINGS: \"ma-type:change-mute-settings\"\n };\n});\n__d(\"MercuryAttachmentContentType\", [], function(a, b, c, d, e, f) {\n e.exports = {\n UNKNOWN: \"attach:unknown\",\n PHOTO: \"attach:image\",\n VIDEO: \"attach:video\",\n MSWORD: \"attach:ms:word\",\n VOICE: \"attach:voice\",\n MSPPT: \"attach:ms:ppt\",\n TEXT: \"attach:text\",\n MUSIC: \"attach:music\",\n MSXLS: \"attach:ms:xls\"\n };\n});\n__d(\"MercuryAttachmentType\", [], function(a, b, c, d, e, f) {\n e.exports = {\n STICKER: \"sticker\",\n PHOTO: \"photo\",\n FILE: \"file\",\n SHARE: \"share\",\n ERROR: \"error\"\n };\n});\n__d(\"MercuryErrorType\", [], function(a, b, c, d, e, f) {\n e.exports = {\n SERVER: 1,\n TRANSPORT: 2,\n TIMEOUT: 3\n };\n});\n__d(\"MercuryGenericConstants\", [], function(a, b, c, d, e, f) {\n e.exports = {\n PENDING_THREAD_ID: \"pending:pending\"\n };\n});\n__d(\"MercuryGlobalActionType\", [], function(a, b, c, d, e, f) {\n e.exports = {\n MARK_ALL_READ: \"mga-type:mark-all-read\"\n };\n});\n__d(\"MercuryLogMessageType\", [], function(a, b, c, d, e, f) {\n e.exports = {\n SERVER_ERROR: \"log:error-msg\",\n UNSUBSCRIBE: \"log:unsubscribe\",\n JOINABLE_JOINED: \"log:joinable-joined\",\n JOINABLE_CREATED: \"log:joinable-created\",\n LIVE_LISTEN: \"log:live-listen\",\n PHONE_CALL: \"log:phone-call\",\n THREAD_IMAGE: \"log:thread-image\",\n THREAD_NAME: \"log:thread-name\",\n VIDEO_CALL: \"log:video-call\",\n SUBSCRIBE: \"log:subscribe\"\n };\n});\n__d(\"MercuryParticipantTypes\", [], function(a, b, c, d, e, f) {\n e.exports = {\n FRIEND: \"friend\",\n USER: \"user\",\n THREAD: \"thread\",\n EVENT: \"JSBNG__event\",\n PAGE: \"page\"\n };\n});\n__d(\"MercuryPayloadSource\", [], function(a, b, c, d, e, f) {\n e.exports = {\n SERVER_INITIAL_DATA: \"server_initial_data\",\n CLIENT_DELETE_THREAD: \"client_delete_thread\",\n SERVER_SAVE_DRAFT: \"server_save_draft\",\n SERVER_CHANGE_ARCHIVED_STATUS: \"server_change_archived_status\",\n SERVER_SEARCH: \"server_search\",\n CLIENT_CHANGE_MUTE_SETTINGS: \"client_change_mute_settings\",\n SERVER_UNREAD_THREADS: \"server_unread_threads\",\n SERVER_MARK_SEEN: \"server_mark_seen\",\n SERVER_THREAD_SYNC: \"server_thread_sync\",\n CLIENT_DELETE_MESSAGES: \"client_delete_messages\",\n SERVER_FETCH_THREADLIST_INFO: \"server_fetch_threadlist_info\",\n CLIENT_CHANNEL_MESSAGE: \"client_channel_message\",\n CLIENT_CHANGE_FOLDER: \"client_change_folder\",\n CLIENT_CHANGE_READ_STATUS: \"client_change_read_status\",\n CLIENT_CLEAR_CHAT: \"client_clear_chat\",\n SERVER_FETCH_THREAD_INFO: \"server_fetch_thread_info\",\n SERVER_CHANGE_READ_STATUS: \"server_change_read_status\",\n SERVER_SEND_MESSAGE: \"server_send_message\",\n CLIENT_SAVE_DRAFT: \"client_save_draft\",\n UNKNOWN: \"unknown\",\n SERVER_MARK_FOLDER_READ: \"server_mark_folder_read\",\n SERVER_CONFIRM_MESSAGES: \"server_confirm_messages\",\n SERVER_TAB_PRESENCE: \"server_tab_presence\",\n CLIENT_CHANGE_ARCHIVED_STATUS: \"client_change-archived_status\",\n CLIENT_SEND_MESSAGE: \"client_send_message\",\n CLIENT_HANDLE_ERROR: \"client_handle_error\"\n };\n});\n__d(\"MercurySourceType\", [], function(a, b, c, d, e, f) {\n e.exports = {\n GIGABOXX_BLAST: \"source:gigaboxx:blast\",\n TITAN_FACEWEB_BUFFY: \"source:titan:faceweb_buffy\",\n TITAN_FACEWEB_UNKNOWN: \"source:titan:faceweb_unknown\",\n CHAT_WEB: \"source:chat:web\",\n WEBRTC_MOBILE: \"source:webrtc:mobile\",\n GIGABOXX_API: \"source:gigaboxx:api\",\n TITAN_M_JAPAN: \"source:titan:m_japan\",\n BUFFY_SMS: \"source:buffy:sms\",\n SEND_PLUGIN: \"source:sendplugin\",\n CHAT_MEEBO: \"source:chat:meebo\",\n TITAN_FACEWEB_IPAD: \"source:titan:faceweb_ipad\",\n TITAN_FACEWEB_IPHONE: \"source:titan:faceweb_iphone\",\n TEST: \"source:test\",\n WEB: \"source:web\",\n SOCIALFOX: \"source:socialfox\",\n EMAIL: \"source:email\",\n TITAN_API: \"source:titan:api\",\n GIGABOXX_WEB: \"source:gigaboxx:web\",\n DESKTOP: \"source:desktop\",\n TITAN_FACEWEB_ANDROID: \"source:titan:faceweb_android\",\n LEIA: \"source:leia\",\n CHAT_JABBER: \"source:chat:jabber\",\n CHAT_TEST: \"source:chat:test\",\n SHARE_DIALOG: \"source:share:dialog\",\n GIGABOXX_WAP: \"source:gigaboxx:wap\",\n CHAT: \"source:chat\",\n TITAN_M_APP: \"source:titan:m_app\",\n TITAN_M_TOUCH: \"source:titan:m_touch\",\n TITAN_ORCA: \"source:titan:orca\",\n TITAN_WAP: \"source:titan:wap\",\n TITAN_EMAIL_REPLY: \"source:titan:emailreply\",\n CHAT_IPHONE: \"source:chat:iphone\",\n SMS: \"source:sms\",\n TITAN_M_BASIC: \"source:titan:m_basic\",\n TITAN_M_MINI: \"source:titan:m_mini\",\n GIGABOXX_MOBILE: \"source:gigaboxx:mobile\",\n UNKNOWN: \"source:unknown\",\n TITAN_WEB: \"source:titan:web\",\n TITAN_M_ZERO: \"source:titan:m_zero\",\n MOBILE: \"source:mobile\",\n PAID_PROMOTION: \"source:paid_promotion\",\n TITAN_API_MOBILE: \"source:titan:api_mobile\",\n HELPCENTER: \"source:helpcenter\",\n GIGABOXX_EMAIL_REPLY: \"source:gigaboxx:emailreply\",\n CHAT_ORCA: \"source:chat:orca\",\n TITAN_M_TALK: \"source:titan:m_talk\",\n NEW_SHARE_DIALOG: \"source:share:dialog:new\"\n };\n});\n__d(\"MercuryThreadMode\", [], function(a, b, c, d, e, f) {\n e.exports = {\n EMAIL_ORIGINATED: 1,\n OBJECT_ORIGINATED: 3,\n TITAN_ORIGINATED: 2\n };\n});\n__d(\"MessagingTag\", [], function(a, b, c, d, e, f) {\n e.exports = {\n MTA_SYSTEM_MESSAGE: \"MTA:system_message\",\n SENT: \"sent\",\n INBOX: \"inbox\",\n SMS_TAG_ROOT: \"SMSShortcode:\",\n UPDATES: \"broadcasts_inbox\",\n OTHER: \"other\",\n GROUPS: \"groups\",\n FILTERED_CONTENT: \"filtered_content\",\n ACTION_ARCHIVED: \"action:archived\",\n UNREAD: \"unread\",\n BCC: \"header:bcc\",\n SMS_MUTE: \"sms_mute\",\n ARCHIVED: \"archived\",\n DOMAIN_AUTH_PASS: \"MTA:dmarc:pass\",\n EVENT: \"JSBNG__event\",\n VOICEMAIL: \"voicemail\",\n DOMAIN_AUTH_FAIL: \"MTA:dmarc:fail\",\n SPAM_SPOOFING: \"spam:spoofing\",\n SPOOF_WARNING: \"MTA:spoof_warning\",\n SPAM: \"spam\",\n EMAIL_MESSAGE: \"source:email\",\n EMAIL: \"email\",\n APP_ID_ROOT: \"app_id:\"\n };\n});\n__d(\"PresenceUtil\", [\"Cookie\",\"Env\",\"randomInt\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Cookie\"), h = b(\"Env\"), i = b(\"randomInt\"), j = b(\"tx\"), k = ((i(0, 4294967295) + 1)), l = {\n checkMaintenanceError: function(m) {\n if (((m.getError() == 1356007))) {\n return true;\n }\n ;\n ;\n return false;\n },\n getErrorDescription: function(m) {\n var n = m.getError(), o = m.getErrorDescription();\n if (!o) {\n o = \"An error occurred.\";\n }\n ;\n ;\n if (((n == 1357001))) {\n o = \"Your session has timed out. Please log in.\";\n }\n ;\n ;\n return o;\n },\n getSessionID: function() {\n return k;\n },\n hasUserCookie: function() {\n return ((h.user === g.get(\"c_user\")));\n }\n };\n e.exports = l;\n});\n__d(\"PresencePrivacy\", [\"hasArrayNature\",\"Arbiter\",\"AsyncRequest\",\"ChannelConstants\",\"copyProperties\",\"Env\",\"JSLogger\",\"PresenceUtil\",\"PresencePrivacyInitialData\",], function(a, b, c, d, e, f) {\n var g = b(\"hasArrayNature\"), h = b(\"Arbiter\"), i = b(\"AsyncRequest\"), j = b(\"ChannelConstants\"), k = b(\"copyProperties\"), l = b(\"Env\"), m = b(\"JSLogger\"), n = b(\"PresenceUtil\"), o = b(\"PresencePrivacyInitialData\"), p = \"/ajax/chat/privacy/settings.php\", q = \"/ajax/chat/privacy/online_policy.php\", r = \"/ajax/chat/privacy/visibility.php\", s = \"friend_visibility\", t = \"visibility\", u = \"online_policy\", v = k({\n }, o.privacyData), w = o.visibility, x = k({\n }, o.privacyData), y = w, z = o.onlinePolicy, aa = z, ba = [], ca = false;\n function da() {\n return m.create(\"blackbird\");\n };\n;\n var ea = k(new h(), {\n WHITELISTED: 1,\n BLACKLISTED: -1,\n UNLISTED: 0,\n ONLINE: 1,\n OFFLINE: 0,\n ONLINE_TO_WHITELIST: 0,\n ONLINE_TO_BLACKLIST: 1\n });\n function fa(ra) {\n var sa;\n {\n var fin124keys = ((window.top.JSBNG_Replay.forInKeys)((ra))), fin124i = (0);\n (0);\n for (; (fin124i < fin124keys.length); (fin124i++)) {\n ((sa) = (fin124keys[fin124i]));\n {\n var ta = ra[sa];\n if (((sa == l.user))) {\n da().error(\"set_viewer_visibility\");\n throw new Error(\"Invalid to set current user's visibility\");\n }\n ;\n ;\n switch (ta) {\n case ea.WHITELISTED:\n \n case ea.BLACKLISTED:\n \n case ea.UNLISTED:\n break;\n default:\n da().error(\"set_invalid_friend_visibility\", {\n id: sa,\n value: ta\n });\n throw new Error(((\"Invalid state: \" + ta)));\n };\n ;\n };\n };\n };\n ;\n {\n var fin125keys = ((window.top.JSBNG_Replay.forInKeys)((ra))), fin125i = (0);\n (0);\n for (; (fin125i < fin125keys.length); (fin125i++)) {\n ((sa) = (fin125keys[fin125i]));\n {\n v[sa] = ra[sa];\n ;\n };\n };\n };\n ;\n ea.inform(\"privacy-changed\");\n };\n;\n function ga(ra, sa) {\n var ta = {\n };\n ta[ra] = sa;\n fa(ta);\n };\n;\n function ha(ra) {\n switch (ra) {\n case ea.ONLINE:\n \n case ea.OFFLINE:\n break;\n default:\n da().error(\"set_invalid_visibility\", {\n value: ra\n });\n throw new Error(((\"Invalid visibility: \" + ra)));\n };\n ;\n w = ra;\n ea.inform(\"privacy-changed\");\n ea.inform(\"privacy-user-presence-changed\");\n h.inform(\"chat/visibility-changed\", {\n sender: this\n });\n };\n;\n function ia(ra) {\n switch (ra) {\n case ea.ONLINE_TO_WHITELIST:\n \n case ea.ONLINE_TO_BLACKLIST:\n break;\n default:\n throw new Error(((\"Invalid default online policy: \" + ra)));\n };\n ;\n z = ra;\n ea.inform(\"privacy-user-presence-changed\");\n ea.inform(\"privacy-changed\");\n };\n;\n function ja(ra, sa) {\n ca = true;\n ra.send();\n };\n;\n function ka(ra, sa) {\n ba.push({\n request: ra,\n data: sa\n });\n if (!ca) {\n var ta = ba.shift();\n ja(ta.request, ta.data);\n }\n ;\n ;\n };\n;\n function la(ra, sa) {\n var ta = ra.type;\n if (((ta === s))) {\n var ua = sa.payload.user_availabilities;\n if (!g(ua)) {\n ea.inform(\"privacy-availability-changed\", {\n user_availabilities: ua\n });\n {\n var fin126keys = ((window.top.JSBNG_Replay.forInKeys)((ra.settings))), fin126i = (0);\n var va;\n for (; (fin126i < fin126keys.length); (fin126i++)) {\n ((va) = (fin126keys[fin126i]));\n {\n x[va] = ra.settings[va];\n ;\n };\n };\n };\n ;\n }\n ;\n ;\n }\n else {\n if (((ta === t))) {\n y = ra.visibility;\n }\n else if (((ta === u))) {\n aa = ra.online_policy;\n }\n \n ;\n ;\n ea.inform(\"privacy-user-presence-response\");\n }\n ;\n ;\n da().log(\"set_update_response\", {\n data: ra,\n response: sa\n });\n };\n;\n function ma(ra, sa) {\n if (((w !== y))) {\n ha(y);\n }\n ;\n ;\n if (((z !== aa))) {\n ia(aa);\n }\n ;\n ;\n k(v, x);\n ea.inform(\"privacy-changed\");\n ba = [];\n da().log(\"set_error_response\", {\n data: ra,\n response: sa\n });\n };\n;\n function na(ra) {\n ca = false;\n if (((ba.length > 0))) {\n var sa = ba.shift();\n ja(sa.request, sa.data);\n }\n ;\n ;\n };\n;\n function oa(ra, sa) {\n if (((n != null))) {\n var ta = ra.getData();\n ta.window_id = n.getSessionID();\n ra.setData(ta);\n }\n ;\n ;\n ra.setHandler(la.bind(this, sa)).setErrorHandler(ma.bind(this, sa)).setTransportErrorHandler(ma.bind(this, sa)).setFinallyHandler(na.bind(this)).setAllowCrossPageTransition(true);\n return ra;\n };\n;\n function pa(ra, sa, ta) {\n return oa(new i(ra).setData(sa), ta);\n };\n;\n function qa(ra, sa) {\n var ta = sa.obj;\n if (((ta.viewer_id != l.user))) {\n da().error(\"invalid_viewer_for_channel_message\", {\n type: ra,\n data: sa\n });\n throw new Error(\"Viewer got from the channel is not the real viewer\");\n }\n ;\n ;\n if (((ta.window_id === n.getSessionID()))) {\n return;\n }\n ;\n ;\n var ua = ta.data;\n if (((ta.JSBNG__event == \"access_control_entry\"))) {\n ua.target_ids.forEach(function(wa) {\n ga(wa, ua.setting);\n x[wa] = ua.setting;\n });\n }\n else {\n if (((ta.JSBNG__event == \"visibility_update\"))) {\n var va = ((!!ua.visibility ? ea.ONLINE : ea.OFFLINE));\n ha(va);\n y = va;\n }\n else if (((ta.JSBNG__event == \"online_policy_update\"))) {\n ia(ua.online_policy);\n aa = ua.online_policy;\n }\n \n ;\n ;\n ea.inform(\"privacy-user-presence-response\");\n }\n ;\n ;\n da().log(\"channel_message_received\", {\n data: sa.obj\n });\n };\n;\n k(ea, {\n WHITELISTED: 1,\n BLACKLISTED: -1,\n UNLISTED: 0,\n ONLINE: 1,\n OFFLINE: 0,\n ONLINE_TO_WHITELIST: 0,\n ONLINE_TO_BLACKLIST: 1,\n init: function(ra, sa, ta) {\n \n },\n setVisibility: function(ra) {\n y = w;\n ha(ra);\n var sa = {\n visibility: ra\n }, ta = {\n type: t,\n visibility: ra\n }, ua = pa(r, sa, ta);\n ka(ua, ta);\n da().log(\"set_visibility\", {\n data: sa\n });\n return ra;\n },\n getVisibility: function() {\n return w;\n },\n setOnlinePolicy: function(ra) {\n aa = z;\n ia(ra);\n var sa = {\n online_policy: ra\n }, ta = {\n type: u,\n online_policy: ra\n }, ua = pa(q, sa, ta);\n ka(ua, ta);\n da().log(\"set_online_policy\", {\n data: sa\n });\n return ra;\n },\n getOnlinePolicy: function() {\n return z;\n },\n getFriendVisibility: function(ra) {\n return ((v[ra] || ea.UNLISTED));\n },\n allows: function(ra) {\n if (((this.getVisibility() === ea.OFFLINE))) {\n return false;\n }\n ;\n ;\n var sa = this.getOnlinePolicy();\n return ((((sa === ea.ONLINE_TO_WHITELIST)) ? ((v[ra] == ea.WHITELISTED)) : ((v[ra] != ea.BLACKLISTED))));\n },\n setFriendsVisibility: function(ra, sa) {\n if (((ra.length > 0))) {\n var ta = {\n };\n for (var ua = 0; ((ua < ra.length)); ua++) {\n var va = ra[ua];\n x[va] = v[va];\n ta[va] = sa;\n };\n ;\n fa(ta);\n var wa = sa;\n if (((wa == ea.UNLISTED))) {\n wa = x[ra[0]];\n }\n ;\n ;\n var xa = {\n users: ra,\n setting: sa,\n setting_type: wa\n }, ya = {\n type: s,\n settings: ta\n }, za = pa(p, xa, ya);\n ka(za, ya);\n da().log(\"set_friend_visibility\", {\n data: xa\n });\n }\n ;\n ;\n return sa;\n },\n setFriendVisibilityMap: function(ra, sa) {\n {\n var fin127keys = ((window.top.JSBNG_Replay.forInKeys)((ra))), fin127i = (0);\n var ta;\n for (; (fin127i < fin127keys.length); (fin127i++)) {\n ((ta) = (fin127keys[fin127i]));\n {\n x[ta] = v[ta];\n ;\n };\n };\n };\n ;\n fa(ra);\n var ua = {\n type: s,\n settings: ra\n };\n ka(oa(sa, ua), ua);\n da().log(\"set_friend_visibility_from_map\", {\n data: ra\n });\n },\n allow: function(ra) {\n if (this.allows(ra)) {\n da().error(\"allow_already_allowed\");\n throw new Error(((\"allow() should only be called for users that \" + \"are not already allowed\")));\n }\n ;\n ;\n if (((this.getVisibility() === ea.OFFLINE))) {\n da().error(\"allow_called_while_offline\");\n throw new Error(\"allow() should only be called when the user is already online\");\n }\n ;\n ;\n var sa = ((((this.getOnlinePolicy() === ea.ONLINE_TO_WHITELIST)) ? ea.WHITELISTED : ea.UNLISTED));\n return this.setFriendsVisibility([ra,], sa);\n },\n disallow: function(ra) {\n if (!this.allows(ra)) {\n da().error(\"disallow_already_disallowed\");\n throw new Error(((\"disallow() should only be called for users that \" + \"are not already disallowed\")));\n }\n ;\n ;\n if (((this.getVisibility() === ea.OFFLINE))) {\n da().error(\"disallow_called_while_offline\");\n throw new Error(\"disallow() should only be called when the user is already online\");\n }\n ;\n ;\n var sa = ((((this.getOnlinePolicy() === ea.ONLINE_TO_BLACKLIST)) ? ea.BLACKLISTED : ea.UNLISTED));\n return this.setFriendsVisibility([ra,], sa);\n },\n getBlacklist: function() {\n var ra = [];\n {\n var fin128keys = ((window.top.JSBNG_Replay.forInKeys)((v))), fin128i = (0);\n var sa;\n for (; (fin128i < fin128keys.length); (fin128i++)) {\n ((sa) = (fin128keys[fin128i]));\n {\n if (((v[sa] === ea.BLACKLISTED))) {\n ra.push(sa);\n }\n ;\n ;\n };\n };\n };\n ;\n return ra;\n },\n getWhitelist: function() {\n var ra = [];\n {\n var fin129keys = ((window.top.JSBNG_Replay.forInKeys)((v))), fin129i = (0);\n var sa;\n for (; (fin129i < fin129keys.length); (fin129i++)) {\n ((sa) = (fin129keys[fin129i]));\n {\n if (((v[sa] === ea.WHITELISTED))) {\n ra.push(sa);\n }\n ;\n ;\n };\n };\n };\n ;\n return ra;\n },\n getMapForTest: function() {\n return v;\n },\n setMapForTest: function(ra) {\n v = ra;\n }\n });\n ea.inform(\"privacy-changed\");\n ea.inform(\"privacy-user-presence-changed\");\n da().log(\"initialized\", {\n visibility: w,\n policy: z\n });\n h.subscribe(j.getArbiterType(\"privacy_changed\"), qa.bind(this));\n h.subscribe(j.ON_CONFIG, function(ra, sa) {\n var ta = sa.getConfig(\"visibility\", null);\n if (((((ta !== null)) && ((typeof (ta) !== \"undefined\"))))) {\n var ua = ((ta ? ea.ONLINE : ea.OFFLINE));\n ha(ua);\n da().log(\"config_visibility\", {\n vis: ua\n });\n }\n ;\n ;\n }.bind(this));\n a.PresencePrivacy = e.exports = ea;\n}, 3);\n__d(\"ChatVisibility\", [\"Arbiter\",\"JSLogger\",\"PresencePrivacy\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"JSLogger\"), i = b(\"PresencePrivacy\"), j = {\n isOnline: function() {\n return ((i.getVisibility() === i.ONLINE));\n },\n hasBlackbirdEnabled: function() {\n return ((this.isVisibleToMostFriends() || this.isVisibleToSomeFriends()));\n },\n isVisibleToMostFriends: function() {\n return ((((i.getOnlinePolicy() === i.ONLINE_TO_BLACKLIST)) && ((i.getBlacklist().length > 0))));\n },\n isVisibleToSomeFriends: function() {\n return ((((i.getOnlinePolicy() === i.ONLINE_TO_WHITELIST)) && ((i.getWhitelist().length > 0))));\n },\n goOnline: function(k) {\n if (((i.getVisibility() === i.OFFLINE))) {\n h.create(\"blackbird\").log(\"chat_go_online\");\n i.setVisibility(i.ONLINE);\n g.inform(\"chat-visibility/go-online\");\n }\n ;\n ;\n ((k && k()));\n },\n goOffline: function(k) {\n if (((i.getVisibility() === i.ONLINE))) {\n h.create(\"blackbird\").log(\"chat_go_offline\");\n i.setVisibility(i.OFFLINE);\n g.inform(\"chat-visibility/go-offline\");\n }\n ;\n ;\n ((k && k()));\n },\n toggleVisibility: function() {\n if (j.isOnline()) {\n j.goOffline();\n }\n else j.goOnline();\n ;\n ;\n }\n };\n a.ChatVisibility = e.exports = j;\n}, 3);\n__d(\"MercurySingletonMixin\", [\"Env\",], function(a, b, c, d, e, f) {\n var g = b(\"Env\"), h = {\n _getInstances: function() {\n if (!this._instances) {\n this._instances = {\n };\n }\n ;\n ;\n return this._instances;\n },\n get: function() {\n return this.getForFBID(g.user);\n },\n getForFBID: function(i) {\n var j = this._getInstances();\n if (!j[i]) {\n j[i] = new this(i);\n }\n ;\n ;\n return j[i];\n }\n };\n e.exports = h;\n});\n__d(\"MercuryMessageClientState\", [], function(a, b, c, d, e, f) {\n var g = {\n DO_NOT_SEND_TO_SERVER: \"do_not_send_to_server\",\n SEND_TO_SERVER: \"send_to_server\"\n };\n e.exports = g;\n});\n__d(\"MercuryMessageIDs\", [\"KeyedCallbackManager\",], function(a, b, c, d, e, f) {\n var g = b(\"KeyedCallbackManager\"), h = new g(), i = {\n getServerIDs: function(j, k) {\n var l = j.filter(function(n) {\n return ((n.indexOf(\"mail.projektitan.com\") !== -1));\n }), m = function(n) {\n var o = j.map(function(p) {\n return ((n[p] ? n[p] : p));\n });\n k(o);\n };\n return h.executeOrEnqueue(l, m);\n },\n addServerID: function(j, k) {\n h.setResource(j, k);\n }\n };\n e.exports = i;\n});\n__d(\"ImageSourceType\", [], function(a, b, c, d, e, f) {\n var g = {\n PROFILE_PICTURE: \"profile_picture\",\n IMAGE: \"image\"\n };\n e.exports = g;\n});\n__d(\"PhotoResizeModeConst\", [], function(a, b, c, d, e, f) {\n var g = {\n COVER: \"s\",\n CONTAIN: \"p\"\n };\n e.exports = g;\n});\n__d(\"ImageSourceRequest\", [\"arrayContains\",\"extendArray\",\"copyProperties\",\"Env\",\"KeyedCallbackManager\",\"ImageSourceType\",\"PhotoResizeModeConst\",\"MercuryServerDispatcher\",], function(a, b, c, d, e, f) {\n var g = b(\"arrayContains\"), h = b(\"extendArray\"), i = b(\"copyProperties\"), j = b(\"Env\"), k = b(\"KeyedCallbackManager\"), l = b(\"ImageSourceType\"), m = b(\"PhotoResizeModeConst\"), n = b(\"MercuryServerDispatcher\");\n function o() {\n this._request = {\n fbid: null,\n type: null,\n width: null,\n height: null,\n resize_mode: null\n };\n this._callback = null;\n };\n;\n i(o.prototype, {\n setFBID: function(s) {\n this._request.fbid = s;\n return this;\n },\n setType: function(s) {\n if (!g([l.PROFILE_PICTURE,l.IMAGE,], s)) {\n throw new TypeError(((\"ImageSourceRequest.setType: invalid type \" + s)));\n }\n ;\n ;\n this._request.type = s;\n return this;\n },\n setDimensions: function(s, t) {\n this._request.width = s;\n this._request.height = t;\n return this;\n },\n setResizeMode: function(s) {\n if (!g([m.COVER,m.CONTAIN,], s)) {\n throw new TypeError(((\"ImageSourceRequest.setResizeMode: invalid resize mode \" + s)));\n }\n ;\n ;\n this._request.resize_mode = s;\n return this;\n },\n setCallback: function(s) {\n this._callback = s;\n return this;\n },\n send: function() {\n if (((((((((((!this._request.fbid || !this._request.width)) || !this._request.height)) || !this._request.type)) || !this._request.resize_mode)) || !this._callback))) {\n throw new Error(\"ImageSourceRequest: You must set all the fields\");\n }\n ;\n ;\n var s = q(), t = r(this._request);\n s.executeOrEnqueue(t, this._callback);\n if (((s.getUnavailableResourcesFromRequest(t).length === 1))) {\n n.trySend(\"/ajax/image_source.php\", {\n requests: [this._request,]\n });\n return true;\n }\n ;\n ;\n return false;\n }\n });\n var p = null;\n function q() {\n if (p) {\n return p;\n }\n ;\n ;\n var s = new k();\n p = s;\n n.registerEndpoints({\n \"/ajax/image_source.php\": {\n request_user_id: j.user,\n mode: n.BATCH_DEFERRED_MULTI,\n batch_function: function(t, u) {\n h(t.requests, u.requests);\n return t;\n },\n handler: function(t, u) {\n var v = u.getData().requests;\n for (var w = 0; ((w < v.length)); ++w) {\n s.setResource(r(v[w]), t[w]);\n ;\n };\n ;\n }\n }\n });\n return s;\n };\n;\n function r(s) {\n return [s.fbid,s.type,s.width,s.height,s.resize_mode,].join(\"|\");\n };\n;\n e.exports = o;\n});\n__d(\"MercuryIDs\", [], function(a, b, c, d, e, f) {\n function g(i) {\n return ((((typeof i === \"string\")) && ((i.indexOf(\":\") !== -1))));\n };\n;\n var h = {\n isValid: function(i) {\n if (!i) {\n return false;\n }\n ;\n ;\n return g(i);\n },\n isValidThreadID: function(i) {\n if (!h.isValid(i)) {\n return false;\n }\n ;\n ;\n var j = h.tokenize(i);\n switch (j.type) {\n case \"user\":\n \n case \"group\":\n \n case \"thread\":\n \n case \"root\":\n \n case \"pending\":\n return true;\n default:\n return false;\n };\n ;\n },\n tokenize: function(i) {\n if (!this.isValid(i)) {\n throw \"bad_id_format\";\n }\n ;\n ;\n var j = i.indexOf(\":\");\n return {\n type: i.substr(0, j),\n value: i.substr(((j + 1)))\n };\n },\n getUserIDFromParticipantID: function(i) {\n if (!h.isValid(i)) {\n return null;\n }\n ;\n ;\n var j = h.tokenize(i);\n if (((j.type != \"fbid\"))) {\n return null;\n }\n ;\n ;\n return j.value;\n }\n };\n e.exports = h;\n});\n__d(\"MercuryAssert\", [\"MercuryIDs\",], function(a, b, c, d, e, f) {\n var g = b(\"MercuryIDs\");\n e.exports = {\n isParticipantID: function(h) {\n if (!g.isValid(h)) {\n throw \"bad_participant_id\";\n }\n ;\n ;\n },\n allParticipantIDs: function(h) {\n h.forEach(this.isParticipantID);\n },\n isUserParticipantID: function(h) {\n var i = g.tokenize(h);\n if (((i.type != \"fbid\"))) {\n throw \"bad_user_id\";\n }\n ;\n ;\n },\n isEmailParticipantID: function(h) {\n var i = g.tokenize(h);\n if (((i.type != \"email\"))) {\n throw \"bad_email_id\";\n }\n ;\n ;\n },\n allThreadID: function(h) {\n h.forEach(this.isThreadID);\n },\n isThreadID: function(h) {\n if (!g.isValid(h)) {\n throw \"bad_thread_id\";\n }\n ;\n ;\n }\n };\n});\n__d(\"TimestampConverter\", [\"JSLogger\",], function(a, b, c, d, e, f) {\n var g = b(\"JSLogger\"), h = g.create(\"timestamp_converter\");\n function i(k) {\n return ((((typeof (k) == \"string\")) && ((k.length > 6))));\n };\n;\n var j = {\n convertActionIDToTimestamp: function(k) {\n if (i(k)) {\n var l = k.slice(0, -6);\n return parseInt(l, 10);\n }\n ;\n ;\n },\n maxValidActionID: function(k, l) {\n if (!i(k)) {\n return l;\n }\n ;\n ;\n if (!i(l)) {\n return k;\n }\n ;\n ;\n return ((this.isGreaterThan(k, l) ? k : l));\n },\n isGreaterThan: function(k, l) {\n if (((!i(k) || !i(l)))) {\n return false;\n }\n ;\n ;\n return ((this.convertActionIDToTimestamp(k) > this.convertActionIDToTimestamp(l)));\n }\n };\n e.exports = j;\n});\n__d(\"MessagingReliabilityLogger\", [\"function-extensions\",\"PresenceUtil\",\"MercuryServerDispatcher\",\"MessagingReliabilityLoggerInitialData\",\"isEmpty\",\"setTimeoutAcrossTransitions\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"PresenceUtil\"), h = b(\"MercuryServerDispatcher\"), i = b(\"MessagingReliabilityLoggerInitialData\"), j = b(\"isEmpty\"), k = b(\"setTimeoutAcrossTransitions\"), l = \"/ajax/mercury/client_reliability.php\", m = 60000;\n function n(t, u) {\n var v = {\n app: i.app,\n categories: JSON.stringify(t)\n };\n if (!j(u)) {\n v.extra = JSON.stringify(u);\n }\n ;\n ;\n return v;\n };\n;\n function o(t, u, v, w) {\n if (((t[u] === undefined))) {\n t[u] = {\n };\n }\n ;\n ;\n if (((t[u][v] === undefined))) {\n t[u][v] = 0;\n }\n ;\n ;\n t[u][v] += w;\n };\n;\n function p(t, u, v, w) {\n if (((t[u] === undefined))) {\n t[u] = {\n };\n }\n ;\n ;\n if (((t[u][v] === undefined))) {\n t[u][v] = [];\n }\n ;\n ;\n for (var x = 0; ((x < w.length)); ++x) {\n t[u][v].push(w[x]);\n ;\n };\n ;\n };\n;\n function q(t, u) {\n if (((((t && !t.categories)) || ((u && !u.categories))))) {\n return;\n }\n ;\n ;\n var v = ((t ? JSON.parse(t.categories) : {\n })), w = ((((t && t.extra)) ? JSON.parse(t.extra) : {\n })), x = JSON.parse(u.categories), y = ((u.extra ? JSON.parse(u.extra) : {\n }));\n {\n var fin130keys = ((window.top.JSBNG_Replay.forInKeys)((x))), fin130i = (0);\n var z;\n for (; (fin130i < fin130keys.length); (fin130i++)) {\n ((z) = (fin130keys[fin130i]));\n {\n var aa = x[z], ba = y[z];\n {\n var fin131keys = ((window.top.JSBNG_Replay.forInKeys)((aa))), fin131i = (0);\n var ca;\n for (; (fin131i < fin131keys.length); (fin131i++)) {\n ((ca) = (fin131keys[fin131i]));\n {\n o(v, z, ca, aa[ca]);\n if (((ba !== undefined))) {\n var da = ba[ca];\n if (((da !== undefined))) {\n p(w, z, ca, da);\n }\n ;\n ;\n }\n ;\n ;\n };\n };\n };\n ;\n };\n };\n };\n ;\n return n(v, w);\n };\n;\n var r = {\n };\n r[l] = {\n mode: h.BATCH_SUCCESSIVE_PIGGYBACK_ON_ERROR,\n batch_function: q\n };\n h.registerEndpoints(r);\n var s = {\n addEntry: function(t, u, v) {\n if (!i.enabled) {\n return;\n }\n ;\n ;\n var w = {\n };\n o(w, t, u, 1);\n var x = {\n };\n if (((v !== undefined))) {\n p(x, t, u, [v,]);\n }\n ;\n ;\n h.trySend(l, n(w, x));\n }\n };\n (function t() {\n s.addEntry(\"page_event\", \"active\", g.getSessionID());\n k(t, m);\n })();\n e.exports = s;\n});\n__d(\"MercuryThreadInformer\", [\"ArbiterMixin\",\"copyProperties\",\"MercuryAssert\",\"MercurySingletonMixin\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"copyProperties\"), i = b(\"MercuryAssert\"), j = b(\"MercurySingletonMixin\");\n function k(m) {\n if (!m._locked) {\n var n = m._threadDeletions, o = m._threadChanges, p = m._threadReadChanges, q = m._threadlistChanged, r = m._unseenStateChanged, s = m._unreadStateChanged, t = m._receivedMessages, u = m._reorderedMessages, v = m._updatedMessages;\n m._threadDeletions = {\n };\n m._threadChanges = {\n };\n m._threadReadChanges = {\n };\n m._threadlistChanged = false;\n m._unseenStateChanged = false;\n m._unreadStateChanged = false;\n m._receivedMessages = {\n };\n m._reorderedMessages = {\n };\n m._updatedMessages = {\n };\n var w = Object.keys(o);\n if (((w.length || q))) {\n m.inform(\"threadlist-updated\", w);\n }\n ;\n ;\n if (w.length) {\n m.inform(\"threads-updated\", o);\n }\n ;\n ;\n {\n var fin132keys = ((window.top.JSBNG_Replay.forInKeys)((p))), fin132i = (0);\n var x;\n for (; (fin132i < fin132keys.length); (fin132i++)) {\n ((x) = (fin132keys[fin132i]));\n {\n m.inform(\"thread-read-changed\", p);\n break;\n };\n };\n };\n ;\n {\n var fin133keys = ((window.top.JSBNG_Replay.forInKeys)((n))), fin133i = (0);\n var x;\n for (; (fin133i < fin133keys.length); (fin133i++)) {\n ((x) = (fin133keys[fin133i]));\n {\n m.inform(\"threads-deleted\", n);\n break;\n };\n };\n };\n ;\n if (r) {\n m.inform(\"unseen-updated\", null);\n }\n ;\n ;\n if (s) {\n m.inform(\"unread-updated\", null);\n }\n ;\n ;\n {\n var fin134keys = ((window.top.JSBNG_Replay.forInKeys)((t))), fin134i = (0);\n (0);\n for (; (fin134i < fin134keys.length); (fin134i++)) {\n ((x) = (fin134keys[fin134i]));\n {\n m.inform(\"messages-received\", t);\n break;\n };\n };\n };\n ;\n {\n var fin135keys = ((window.top.JSBNG_Replay.forInKeys)((u))), fin135i = (0);\n (0);\n for (; (fin135i < fin135keys.length); (fin135i++)) {\n ((x) = (fin135keys[fin135i]));\n {\n m.inform(\"messages-reordered\", u);\n break;\n };\n };\n };\n ;\n {\n var fin136keys = ((window.top.JSBNG_Replay.forInKeys)((v))), fin136i = (0);\n (0);\n for (; (fin136i < fin136keys.length); (fin136i++)) {\n ((x) = (fin136keys[fin136i]));\n {\n m.inform(\"messages-updated\", v);\n break;\n };\n };\n };\n ;\n }\n ;\n ;\n };\n;\n function l(m) {\n this._fbid = m;\n this._threadDeletions = {\n };\n this._threadChanges = {\n };\n this._threadReadChanges = {\n };\n this._threadlistChanged = false;\n this._unseenStateChanged = false;\n this._unreadStateChanged = false;\n this._receivedMessages = {\n };\n this._reorderedMessages = {\n };\n this._updatedMessages = {\n };\n this._locked = 0;\n };\n;\n h(l.prototype, g, {\n updatedThread: function(m) {\n this._threadChanges[m] = true;\n k(this);\n },\n deletedThread: function(m) {\n this._threadDeletions[m] = true;\n k(this);\n },\n updatedThreadlist: function() {\n this._threadlistChanged = true;\n k(this);\n },\n updatedUnseenState: function() {\n this._unseenStateChanged = true;\n k(this);\n },\n updatedUnreadState: function() {\n this._unreadStateChanged = true;\n k(this);\n },\n changedThreadReadState: function(m, n, o) {\n if (((!this._threadReadChanges[m] || ((this._threadReadChanges[m].timestamp < o))))) {\n this._threadReadChanges[m] = {\n mark_as_read: n,\n timestamp: o\n };\n }\n ;\n ;\n k(this);\n },\n receivedMessage: function(m) {\n i.isThreadID(m.thread_id);\n var n = m.thread_id;\n if (!this._receivedMessages[n]) {\n this._receivedMessages[n] = [];\n }\n ;\n ;\n this._receivedMessages[n].push(m);\n this.updatedThread(n);\n },\n reorderedMessages: function(m, n) {\n this._reorderedMessages[m] = {\n source: n\n };\n k(this);\n },\n updatedMessage: function(m, n, o) {\n if (!this._updatedMessages[m]) {\n this._updatedMessages[m] = {\n };\n }\n ;\n ;\n this._updatedMessages[m][n] = {\n source: o\n };\n this.updatedThread(m);\n },\n synchronizeInforms: function(m) {\n this._locked++;\n try {\n m();\n } catch (n) {\n throw n;\n } finally {\n this._locked--;\n k(this);\n };\n ;\n },\n listen: function(m, n) {\n return this.subscribe(\"threads-updated\", function(o, p) {\n if (p[m]) {\n n(m);\n }\n ;\n ;\n });\n }\n });\n h(l, j);\n e.exports = l;\n});\n__d(\"MercuryServerRequests\", [\"ArbiterMixin\",\"AsyncResponse\",\"TimestampConverter\",\"Env\",\"JSLogger\",\"KeyedCallbackManager\",\"MercuryActionTypeConstants\",\"MercuryActionStatus\",\"MercuryAPIArgsSource\",\"MercuryAssert\",\"MercuryErrorType\",\"MercuryGenericConstants\",\"MercuryGlobalActionType\",\"MercuryIDs\",\"MercuryLogMessageType\",\"MercuryMessageClientState\",\"MercuryPayloadSource\",\"MercuryServerRequestsConfig\",\"MercurySourceType\",\"MercuryThreadlistConstants\",\"MercuryMessageIDs\",\"MessagingConfig\",\"MessagingReliabilityLogger\",\"MessagingTag\",\"MercurySingletonMixin\",\"MercuryServerDispatcher\",\"MercuryThreadInformer\",\"copyProperties\",\"createObjectFrom\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"AsyncResponse\"), i = b(\"TimestampConverter\"), j = b(\"Env\"), k = b(\"JSLogger\"), l = b(\"KeyedCallbackManager\"), m = b(\"MercuryActionTypeConstants\"), n = b(\"MercuryActionStatus\"), o = b(\"MercuryAPIArgsSource\"), p = b(\"MercuryAssert\"), q = b(\"MercuryErrorType\"), r = b(\"MercuryGenericConstants\"), s = b(\"MercuryGlobalActionType\"), t = b(\"MercuryIDs\"), u = b(\"MercuryLogMessageType\"), v = b(\"MercuryMessageClientState\"), w = b(\"MercuryPayloadSource\"), x = b(\"MercuryServerRequestsConfig\"), y = b(\"MercurySourceType\"), z = b(\"MercuryThreadlistConstants\"), aa = b(\"MercuryMessageIDs\"), ba = b(\"MessagingConfig\"), ca = b(\"MessagingReliabilityLogger\"), da = b(\"MessagingTag\"), ea = b(\"MercurySingletonMixin\"), fa = b(\"MercuryServerDispatcher\"), ga = b(\"MercuryThreadInformer\"), ha = b(\"copyProperties\"), ia = b(\"createObjectFrom\"), ja = k.create(\"mercury_server\"), ka = o.MERCURY;\n function la(tb, ub) {\n if (ub) {\n tb._lastActionId = i.maxValidActionID(tb._lastActionId, ub);\n }\n ;\n ;\n };\n;\n function ma(tb, ub) {\n var vb = ub.thread_id, wb = tb._serverToClientIDs.getResource(vb);\n if (!wb) {\n if (ub.canonical_fbid) {\n wb = ((\"user:\" + ub.canonical_fbid));\n }\n else if (ub.root_message_threading_id) {\n wb = ((\"root:\" + ub.root_message_threading_id));\n }\n \n ;\n ;\n wb = ((wb || ((\"thread:\" + vb))));\n na(tb, vb, wb);\n }\n ;\n ;\n ub.thread_id = wb;\n };\n;\n function na(tb, ub, vb) {\n tb._serverToClientIDs.setResource(ub, vb);\n tb._clientToServerIDs.setResource(vb, ub);\n tb._newlyAddedClientIDs[ub] = vb;\n };\n;\n function oa(tb, ub, vb) {\n var wb = tb._clientToServerIDs.executeOrEnqueue(ub, vb), xb = tb._clientToServerIDs.getUnavailableResources(wb), yb = tb.tokenizeThreadID(ub);\n if (((xb.length && ((yb.type != \"root\"))))) {\n tb.fetchThreadData(xb);\n }\n ;\n ;\n };\n;\n function pa(tb, ub) {\n return tb._clientToServerIDs.getResource(ub);\n };\n;\n function qa(tb, ub) {\n return !!tb._serverToClientIDs.getResource(ub);\n };\n;\n function ra(tb, ub) {\n var vb = tb._serverToClientIDs.getResource(ub);\n if (((typeof vb == \"undefined\"))) {\n ja.warn(\"no_client_thread_id\", {\n server_id: ub\n });\n }\n ;\n ;\n return vb;\n };\n;\n function sa(tb, ub, vb) {\n tb._serverToClientIDs.executeOrEnqueue(ub, vb);\n tb.ensureThreadIsFetched(ub);\n };\n;\n function ta(tb, ub, vb) {\n if (((ub.action_type != m.SEND_MESSAGE))) {\n return;\n }\n ;\n ;\n var wb = ub.client_thread_id;\n if (!wb) {\n wb = ra(tb, ub.thread_id);\n }\n ;\n ;\n var xb = null;\n if (wb) {\n xb = t.tokenize(wb).type;\n }\n ;\n ;\n ca.addEntry(((\"send_\" + xb)), vb, ((((ub.thread_id + \",\")) + ub.message_id)));\n };\n;\n function ua(tb) {\n return ((tb.getError() ? ((\"_\" + tb.getError())) : \"\"));\n };\n;\n function va(tb, ub) {\n var vb = null;\n switch (ub.JSBNG__status) {\n case n.SUCCESS:\n vb = \"success\";\n break;\n case n.FAILED_UNKNOWN_REASON:\n vb = \"confirmed_error\";\n break;\n case n.UNABLE_TO_CONFIRM:\n vb = \"confirm_error\";\n break;\n default:\n return;\n };\n ;\n ta(tb, ub, vb);\n };\n;\n function wa(tb, ub) {\n ((ub.message_counts || [])).forEach(function(dc) {\n la(tb, dc.last_action_id);\n });\n ((ub.threads || [])).forEach(function(dc) {\n ma(tb, dc);\n delete tb._fetchingThreads[dc.thread_id];\n var ec = pa(tb, dc.thread_id);\n delete tb._fetchingThreads[ec];\n la(tb, dc.last_action_id);\n });\n ((ub.ordered_threadlists || [])).forEach(function(dc) {\n dc.thread_ids = dc.thread_ids.map(ra.curry(tb));\n });\n ub.actions = ((ub.actions || []));\n ub.actions.forEach(function(dc) {\n va(tb, dc);\n if (((((dc.JSBNG__status && ((dc.JSBNG__status != n.SUCCESS)))) && !dc.thread_id))) {\n dc.thread_id = dc.client_thread_id;\n return;\n }\n ;\n ;\n if (((((((dc.action_type == m.SEND_MESSAGE)) && dc.client_thread_id)) && ((dc.client_thread_id != r.PENDING_THREAD_ID))))) {\n na(tb, dc.thread_id, dc.client_thread_id);\n }\n ;\n ;\n dc.server_thread_id = dc.thread_id;\n dc.thread_id = ((qa(tb, dc.thread_id) ? ra(tb, dc.thread_id) : null));\n la(tb, dc.action_id);\n });\n if (ub.end_of_history) {\n var vb = [];\n for (var wb = 0; ((wb < ub.end_of_history.length)); wb++) {\n var xb = ub.end_of_history[wb];\n if (((xb.type == \"user\"))) {\n vb.push(((\"user:\" + xb.id)));\n }\n else if (((((xb.type == \"thread\")) && qa(tb, xb.id)))) {\n vb.push(ra(tb, xb.id));\n }\n \n ;\n ;\n };\n ;\n ub.end_of_history = vb;\n }\n ;\n ;\n if (ub.roger) {\n var yb = {\n };\n {\n var fin137keys = ((window.top.JSBNG_Replay.forInKeys)((ub.roger))), fin137i = (0);\n var zb;\n for (; (fin137i < fin137keys.length); (fin137i++)) {\n ((zb) = (fin137keys[fin137i]));\n {\n var ac = tb._serverToClientIDs.getResource(zb);\n if (ac) {\n var bc = ub.roger[zb];\n yb[ac] = {\n };\n {\n var fin138keys = ((window.top.JSBNG_Replay.forInKeys)((bc))), fin138i = (0);\n var cc;\n for (; (fin138i < fin138keys.length); (fin138i++)) {\n ((cc) = (fin138keys[fin138i]));\n {\n yb[ac][((\"fbid:\" + cc))] = bc[cc];\n ;\n };\n };\n };\n ;\n }\n ;\n ;\n };\n };\n };\n ;\n ub.roger = yb;\n }\n ;\n ;\n };\n;\n function xa(tb) {\n if (((tb._pendingUpdates && tb._pendingUpdates.length))) {\n var ub = tb._pendingUpdates[0];\n tb._pendingUpdates = tb._pendingUpdates.slice(1);\n tb.handleUpdate(ub);\n }\n ;\n ;\n };\n;\n function ya(tb, ub) {\n var vb = ha({\n }, tb), wb;\n if (ub.threads) {\n if (!vb.threads) {\n vb.threads = {\n };\n }\n ;\n ;\n {\n var fin139keys = ((window.top.JSBNG_Replay.forInKeys)((ub.threads))), fin139i = (0);\n (0);\n for (; (fin139i < fin139keys.length); (fin139i++)) {\n ((wb) = (fin139keys[fin139i]));\n {\n vb.threads[wb] = Object.keys(ia(((vb.threads[wb] || [])).concat(ub.threads[wb])));\n ;\n };\n };\n };\n ;\n }\n ;\n ;\n if (ub.messages) {\n if (!vb.messages) {\n vb.messages = {\n };\n }\n ;\n ;\n {\n var fin140keys = ((window.top.JSBNG_Replay.forInKeys)((ub.messages))), fin140i = (0);\n (0);\n for (; (fin140i < fin140keys.length); (fin140i++)) {\n ((wb) = (fin140keys[fin140i]));\n {\n if (!vb.messages[wb]) {\n vb.messages[wb] = {\n };\n }\n ;\n ;\n {\n var fin141keys = ((window.top.JSBNG_Replay.forInKeys)((ub.messages[wb]))), fin141i = (0);\n var xb;\n for (; (fin141i < fin141keys.length); (fin141i++)) {\n ((xb) = (fin141keys[fin141i]));\n {\n if (vb.messages[wb][xb]) {\n vb.messages[wb][xb] = bb(vb.messages[wb][xb], ub.messages[wb][xb]);\n }\n else vb.messages[wb][xb] = ub.messages[wb][xb];\n ;\n ;\n };\n };\n };\n ;\n };\n };\n };\n ;\n }\n ;\n ;\n vb.client = ((tb.client || ub.client));\n return vb;\n };\n;\n function za(tb, ub) {\n var vb = ha(ia(tb.folders, true), ia(ub.folders, true)), wb = ((tb.client || ub.client));\n return {\n folders: Object.keys(vb),\n client: wb\n };\n };\n;\n function ab(tb, ub) {\n {\n var fin142keys = ((window.top.JSBNG_Replay.forInKeys)((ub))), fin142i = (0);\n var vb;\n for (; (fin142i < fin142keys.length); (fin142i++)) {\n ((vb) = (fin142keys[fin142i]));\n {\n if (((tb[vb] && ((typeof tb[vb] === \"object\"))))) {\n tb[vb] = bb(tb[vb], ub[vb]);\n }\n else if (((ub[vb] && ((typeof ub[vb] === \"object\"))))) {\n var wb = {\n };\n ha(wb, ub[vb]);\n tb[vb] = wb;\n }\n \n ;\n ;\n };\n };\n };\n ;\n return tb;\n };\n;\n function bb(tb, ub) {\n var vb = ((((tb.offset < ub.offset)) ? tb.offset : ub.offset)), wb = ((tb.offset + tb.limit)), xb = ((ub.offset + ub.limit)), yb = ((((wb > xb)) ? wb : xb)), zb = ((yb - vb));\n return {\n offset: vb,\n limit: zb\n };\n };\n;\n function cb(tb, ub) {\n var vb = ((tb.client || ub.client)), wb = {\n ids: {\n },\n client: vb\n };\n ha(wb.ids, tb.ids);\n ha(wb.ids, ub.ids);\n return wb;\n };\n;\n function db(tb, ub) {\n var vb = {\n }, wb, xb = ((tb.client || ub.client));\n delete tb.client;\n delete ub.client;\n {\n var fin143keys = ((window.top.JSBNG_Replay.forInKeys)((tb))), fin143i = (0);\n (0);\n for (; (fin143i < fin143keys.length); (fin143i++)) {\n ((wb) = (fin143keys[fin143i]));\n {\n ha(vb, ia(tb[wb], wb));\n ;\n };\n };\n };\n ;\n {\n var fin144keys = ((window.top.JSBNG_Replay.forInKeys)((ub))), fin144i = (0);\n (0);\n for (; (fin144i < fin144keys.length); (fin144i++)) {\n ((wb) = (fin144keys[fin144i]));\n {\n ha(vb, ia(ub[wb], wb));\n ;\n };\n };\n };\n ;\n var yb = {\n client: xb\n };\n {\n var fin145keys = ((window.top.JSBNG_Replay.forInKeys)((vb))), fin145i = (0);\n var zb;\n for (; (fin145i < fin145keys.length); (fin145i++)) {\n ((zb) = (fin145keys[fin145i]));\n {\n wb = vb[zb];\n if (!yb[wb]) {\n yb[wb] = [];\n }\n ;\n ;\n yb[wb].push(zb);\n };\n };\n };\n ;\n return yb;\n };\n;\n function eb(tb, ub) {\n var vb = ((tb.client || ub.client)), wb = ia(tb.ids, true), xb = ia(ub.ids, true), yb = ha(wb, xb);\n return {\n ids: Object.keys(yb),\n client: vb\n };\n };\n;\n function fb(tb) {\n this._fbid = tb;\n this._lastActionId = 0;\n this._serverToClientIDs = new l();\n this._clientToServerIDs = new l();\n this._pendingUpdates = [];\n this._fetchingThreads = {\n };\n this._newlyAddedClientIDs = {\n };\n rb(this);\n };\n;\n ha(fb.prototype, g, {\n tokenizeThreadID: function(tb) {\n p.isThreadID(tb);\n return t.tokenize(tb);\n },\n getServerThreadID: function(tb, ub) {\n p.isThreadID(tb);\n oa(this, tb, ub);\n },\n getClientThreadID: function(tb, ub) {\n sa(this, tb, ub);\n },\n getClientThreadIDNow: function(tb) {\n return ra(this, tb);\n },\n getServerThreadIDNow: function(tb) {\n return pa(this, tb);\n },\n convertThreadIDIfAvailable: function(tb) {\n var ub = this._serverToClientIDs.getResource(tb);\n if (((ub === undefined))) {\n return tb;\n }\n else return ub\n ;\n },\n canLinkExternally: function(tb) {\n p.isThreadID(tb);\n var ub = this.tokenizeThreadID(tb);\n return ((((ub.type == \"user\")) || !!pa(this, tb)));\n },\n fetchThreadlistInfo: function(tb, ub, vb, wb, xb) {\n vb = ((vb || da.INBOX));\n xb = ((xb || ka));\n var yb = ((wb ? fa.IMMEDIATE : null)), zb = {\n client: xb\n };\n zb[vb] = {\n offset: tb,\n limit: ub,\n filter: wb\n };\n sb(this, \"/ajax/mercury/threadlist_info.php\", zb, yb);\n },\n fetchUnseenThreadIDs: function(tb, ub) {\n ub = ((ub || ka));\n this.fetchThreadlistInfo(z.RECENT_THREAD_OFFSET, z.JEWEL_THREAD_COUNT, tb, null, ub);\n },\n fetchUnreadThreadIDs: function(tb, ub) {\n ub = ((ub || ka));\n sb(this, \"/ajax/mercury/unread_threads.php\", {\n folders: [tb,],\n client: ub\n });\n },\n fetchMissedMessages: function(tb, ub) {\n ub = ((ub || ka));\n sb(this, \"/ajax/mercury/thread_sync.php\", {\n last_action_id: this._lastActionId,\n folders: tb,\n client: ub\n });\n },\n fetchThreadData: function(tb, ub) {\n ub = ((ub || ka));\n p.allThreadID(tb);\n var vb = {\n threads: {\n },\n client: ub\n }, wb = [], xb = [];\n tb.forEach(function(zb) {\n if (this._fetchingThreads[zb]) {\n return;\n }\n ;\n ;\n this._fetchingThreads[zb] = true;\n var ac = pa(this, zb);\n if (ac) {\n xb.push(ac);\n vb.threads.thread_ids = xb;\n }\n else {\n var bc = this.tokenizeThreadID(zb);\n if (((bc.type == \"user\"))) {\n wb.push(bc.value);\n vb.threads.user_ids = wb;\n }\n else if (((bc.type == \"thread\"))) {\n xb.push(bc.value);\n vb.threads.thread_ids = xb;\n }\n else if (((((bc.type != \"root\")) && ((bc.type != \"pending\"))))) {\n throw new Error(\"Unknown thread type\", bc);\n }\n \n \n ;\n ;\n }\n ;\n ;\n }.bind(this));\n this.inform(\"fetch-thread-data\", vb);\n {\n var fin146keys = ((window.top.JSBNG_Replay.forInKeys)((vb.threads))), fin146i = (0);\n var yb;\n for (; (fin146i < fin146keys.length); (fin146i++)) {\n ((yb) = (fin146keys[fin146i]));\n {\n sb(this, \"/ajax/mercury/thread_info.php\", vb);\n break;\n };\n };\n };\n ;\n },\n ensureThreadIsFetched: function(tb, ub) {\n ub = ((ub || ka));\n if (((!this._serverToClientIDs.getResource(tb) && !this._fetchingThreads[tb]))) {\n this._fetchingThreads[tb] = true;\n sb(this, \"/ajax/mercury/thread_info.php\", {\n threads: {\n thread_ids: [tb,]\n },\n client: ub\n });\n }\n ;\n ;\n },\n fetchThreadMessages: function(tb, ub, vb, wb, xb) {\n p.isThreadID(tb);\n xb = ((xb || ka));\n var yb, zb, ac = this.tokenizeThreadID(tb), bc = pa(this, tb), cc = false;\n if (((bc && ((ac.type != \"group\"))))) {\n zb = \"thread_ids\";\n yb = bc;\n }\n else {\n yb = ac.value;\n switch (ac.type) {\n case \"user\":\n zb = \"user_ids\";\n cc = true;\n break;\n case \"group\":\n zb = \"group_ids\";\n break;\n case \"thread\":\n zb = \"thread_ids\";\n break;\n };\n ;\n }\n ;\n ;\n var dc = {\n messages: {\n },\n threads: {\n },\n client: xb\n };\n if (zb) {\n dc.messages[zb] = {\n };\n dc.messages[zb][yb] = {\n offset: ub,\n limit: vb\n };\n if (cc) {\n dc.threads[zb] = [yb,];\n }\n ;\n ;\n sb(this, \"/ajax/mercury/thread_info.php\", dc, wb);\n }\n else oa(this, tb, function(ec) {\n dc.messages.thread_ids = {\n };\n dc.messages.thread_ids[ec] = {\n offset: ub,\n limit: vb\n };\n sb(this, \"/ajax/mercury/thread_info.php\", dc, wb);\n }.bind(this));\n ;\n ;\n },\n handleThreadInfoError: function(tb) {\n var ub = tb.getRequest().getData(), vb = [];\n if (ub.messages) {\n {\n var fin147keys = ((window.top.JSBNG_Replay.forInKeys)((ub.messages.thread_ids))), fin147i = (0);\n var wb;\n for (; (fin147i < fin147keys.length); (fin147i++)) {\n ((wb) = (fin147keys[fin147i]));\n {\n vb.push(gb(ra(this, wb)));\n ;\n };\n };\n };\n ;\n {\n var fin148keys = ((window.top.JSBNG_Replay.forInKeys)((ub.messages.user_ids))), fin148i = (0);\n var xb;\n for (; (fin148i < fin148keys.length); (fin148i++)) {\n ((xb) = (fin148keys[fin148i]));\n {\n vb.push(gb(((\"user:\" + xb))));\n ;\n };\n };\n };\n ;\n {\n var fin149keys = ((window.top.JSBNG_Replay.forInKeys)((ub.messages.group_ids))), fin149i = (0);\n var yb;\n for (; (fin149i < fin149keys.length); (fin149i++)) {\n ((yb) = (fin149keys[fin149i]));\n {\n vb.push(gb(((\"group:\" + yb))));\n ;\n };\n };\n };\n ;\n }\n ;\n ;\n if (vb.length) {\n this.handleUpdate({\n actions: vb,\n from_client: true,\n payload_source: w.CLIENT_CHANNEL_MESSAGE\n });\n }\n ;\n ;\n if (((ub.threads && ((((ub.threads.user_ids || ub.threads.group_ids)) || ub.threads.thread_ids))))) {\n var zb = 5, ac = true;\n if (!ub.retry_count) {\n ub.retry_count = 0;\n if (ub.messages) {\n delete ub.messages;\n }\n ;\n ;\n }\n else if (((ub.retry_count >= zb))) {\n ac = false;\n ((ub.threads.thread_ids || [])).forEach(function(cc) {\n if (((cc in this._fetchingThreads))) {\n delete this._fetchingThreads[cc];\n }\n ;\n ;\n }.bind(this));\n }\n \n ;\n ;\n if (ac) {\n var bc = ((ub.retry_count * 1000));\n (function() {\n ja.log(\"retry_thread\", ub);\n sb(this, \"/ajax/mercury/thread_info.php\", ub);\n }.bind(this)).defer(bc, false);\n ub.retry_count++;\n }\n ;\n ;\n }\n ;\n ;\n },\n markFolderAsRead: function(tb) {\n sb(this, \"/ajax/mercury/mark_folder_as_read.php\", {\n folder: tb\n });\n var ub = [{\n action_type: s.MARK_ALL_READ,\n action_id: null,\n folder: tb\n },];\n this.handleUpdate({\n global_actions: ub,\n from_client: true,\n payload_source: w.CLIENT_CHANGE_READ_STATUS\n });\n },\n changeThreadReadStatus: function(tb, ub, vb) {\n p.isThreadID(tb);\n oa(this, tb, function(xb) {\n var yb = {\n ids: {\n }\n };\n yb.ids[xb] = ub;\n sb(this, \"/ajax/mercury/change_read_status.php\", yb);\n }.bind(this));\n var wb = [{\n action_type: m.CHANGE_READ_STATUS,\n action_id: null,\n thread_id: tb,\n mark_as_read: ub,\n folder: vb\n },];\n this.handleUpdate({\n actions: wb,\n from_client: true,\n payload_source: w.CLIENT_CHANGE_READ_STATUS\n });\n },\n changeThreadArchivedStatus: function(tb, ub) {\n p.isThreadID(tb);\n oa(this, tb, function(xb) {\n var yb = {\n ids: {\n }\n };\n yb.ids[xb] = ub;\n sb(this, \"/ajax/mercury/change_archived_status.php\", yb);\n }.bind(this));\n var vb = {\n action_type: m.CHANGE_ARCHIVED_STATUS,\n action_id: null,\n thread_id: tb,\n archived: ub\n }, wb = {\n actions: [vb,],\n from_client: true,\n payload_source: w.CLIENT_CHANGE_ARCHIVED_STATUS\n };\n this.handleUpdate(wb);\n },\n changeThreadFolder: function(tb, ub) {\n p.isThreadID(tb);\n oa(this, tb, function(xb) {\n var yb = {\n };\n yb[ub] = [xb,];\n sb(this, \"/ajax/mercury/move_thread.php\", yb);\n }.bind(this));\n var vb = {\n action_type: m.CHANGE_FOLDER,\n action_id: null,\n thread_id: tb,\n new_folder: ub\n }, wb = {\n actions: [vb,],\n from_client: true,\n payload_source: w.CLIENT_CHANGE_FOLDER\n };\n this.handleUpdate(wb);\n },\n changeMutingOnThread: function(tb, ub) {\n p.isThreadID(tb);\n oa(this, tb, function(xb) {\n sb(this, \"/ajax/mercury/change_mute_thread.php\", {\n thread_id: xb,\n mute_settings: ub,\n payload_source: ka\n });\n }.bind(this));\n var vb = {\n action_type: m.CHANGE_MUTE_SETTINGS,\n action_id: null,\n thread_id: tb,\n mute_settings: ub\n }, wb = {\n actions: [vb,],\n from_client: true,\n payload_source: w.CLIENT_CHANGE_MUTE_SETTINGS\n };\n this.handleUpdate(wb);\n },\n markThreadSpam: function(tb) {\n p.isThreadID(tb);\n oa(this, tb, function(wb) {\n sb(this, \"/ajax/mercury/mark_spam.php\", {\n id: wb\n });\n }.bind(this));\n var ub = {\n action_type: m.CHANGE_FOLDER,\n action_id: null,\n thread_id: tb,\n new_folder: da.SPAM\n }, vb = {\n actions: [ub,],\n from_client: true,\n payload_source: w.CLIENT_CHANGE_FOLDER\n };\n this.handleUpdate(vb);\n },\n markMessagesSpam: function(tb, ub) {\n aa.getServerIDs(((ub || [])), function(wb) {\n sb(this, \"/ajax/mercury/mark_spam_messages.php\", {\n message_ids: wb\n });\n }.bind(this));\n var vb = {\n action_type: m.DELETE_MESSAGES,\n action_id: null,\n thread_id: tb,\n message_ids: ub\n };\n this.handleUpdate({\n actions: [vb,],\n from_client: true,\n payload_source: w.CLIENT_DELETE_MESSAGES\n });\n },\n unmarkThreadSpam: function(tb) {\n p.isThreadID(tb);\n oa(this, tb, function(wb) {\n sb(this, \"/ajax/mercury/unmark_spam.php\", {\n id: wb\n });\n }.bind(this));\n var ub = {\n action_type: m.CHANGE_FOLDER,\n action_id: null,\n thread_id: tb,\n new_folder: da.INBOX\n }, vb = {\n actions: [ub,],\n from_client: true,\n payload_source: w.CLIENT_CHANGE_FOLDER\n };\n this.handleUpdate(vb);\n },\n deleteThread: function(tb) {\n p.isThreadID(tb);\n oa(this, tb, function(wb) {\n var xb = {\n ids: [wb,]\n };\n sb(this, \"/ajax/mercury/delete_thread.php\", xb);\n }.bind(this));\n var ub = {\n action_type: m.DELETE_THREAD,\n action_id: null,\n thread_id: tb\n }, vb = {\n actions: [ub,],\n from_client: true,\n payload_source: w.CLIENT_DELETE_THREAD\n };\n this.handleUpdate(vb);\n },\n deleteMessages: function(tb, ub, vb) {\n aa.getServerIDs(((ub || [])), function(xb) {\n sb(this, \"/ajax/mercury/delete_messages.php\", {\n message_ids: xb\n });\n }.bind(this));\n var wb;\n if (vb) {\n wb = {\n action_type: m.DELETE_THREAD,\n action_id: null,\n thread_id: tb\n };\n }\n else wb = {\n action_type: m.DELETE_MESSAGES,\n action_id: null,\n thread_id: tb,\n message_ids: ub\n };\n ;\n ;\n this.handleUpdate({\n actions: [wb,],\n from_client: true,\n payload_source: w.CLIENT_DELETE_MESSAGES\n });\n },\n clearChat: function(tb, ub, vb) {\n p.isThreadID(tb);\n sb(this, \"/ajax/chat/settings.php\", {\n clear_history_id: ub\n });\n var wb = [{\n action_type: m.CLEAR_CHAT,\n action_id: null,\n thread_id: tb,\n clear_time: vb\n },];\n this.handleUpdate({\n actions: wb,\n from_client: true,\n payload_source: w.CLIENT_CLEAR_CHAT\n });\n },\n sendNewMessage: function(tb, ub) {\n ub = ((ub || ka));\n if (((!tb.client_state || ((tb.client_state == v.SEND_TO_SERVER))))) {\n aa.getServerIDs(((tb.forward_message_ids || [])), function(wb) {\n var xb = tb.thread_id, yb = this.tokenizeThreadID(tb.thread_id), zb = yb.type, ac = ha({\n }, tb);\n ac.forward_message_ids = wb;\n if (((((((((zb == \"root\")) && ((yb.value == ac.message_id)))) || ((((zb == \"user\")) && !pa(this, xb))))) || ((tb.thread_id == r.PENDING_THREAD_ID))))) {\n ac.client_thread_id = ac.thread_id;\n ac.thread_id = null;\n this._sendNewMessageToServer(ac, ub);\n }\n else oa(this, ac.thread_id, function(bc) {\n ac.thread_id = bc;\n this._sendNewMessageToServer(ac);\n }.bind(this));\n ;\n ;\n }.bind(this));\n }\n ;\n ;\n if (((tb.thread_id != r.PENDING_THREAD_ID))) {\n var vb = {\n actions: [ha({\n }, tb),],\n from_client: true,\n payload_source: w.CLIENT_SEND_MESSAGE\n };\n this.handleUpdate(vb);\n }\n ;\n ;\n },\n _sendNewMessageToServer: function(tb, ub) {\n ub = ((ub || ka));\n sb(this, \"/ajax/mercury/send_messages.php\", {\n message_batch: [tb,],\n client: ub\n });\n },\n requestMessageConfirmation: function(tb, ub) {\n ub = ((ub || ka));\n var vb = {\n }, wb = {\n };\n {\n var fin150keys = ((window.top.JSBNG_Replay.forInKeys)((tb))), fin150i = (0);\n var xb;\n for (; (fin150i < fin150keys.length); (fin150i++)) {\n ((xb) = (fin150keys[fin150i]));\n {\n var yb = pa(this, xb);\n if (yb) {\n vb[yb] = tb[xb];\n }\n else {\n var zb = tb[xb];\n for (var ac = 0; ((ac < zb.length)); ac++) {\n wb[zb[ac]] = xb;\n ;\n };\n ;\n }\n ;\n ;\n };\n };\n };\n ;\n var bc = Object.keys(vb), cc = Object.keys(wb);\n if (((bc.length || cc.length))) {\n sb(this, \"/ajax/mercury/confirm_messages.php\", {\n thread_message_map: vb,\n local_messages: wb,\n client: ub\n });\n }\n ;\n ;\n },\n handleMessageConfirmError: function(tb) {\n var ub = tb.getRequest().getData().thread_message_map, vb = tb.getRequest().getData().local_messages;\n if (((!ub && !vb))) {\n return;\n }\n ;\n ;\n var wb = [];\n {\n var fin151keys = ((window.top.JSBNG_Replay.forInKeys)((ub))), fin151i = (0);\n var xb;\n for (; (fin151i < fin151keys.length); (fin151i++)) {\n ((xb) = (fin151keys[fin151i]));\n {\n var yb = ub[xb];\n yb.forEach(function(bc) {\n wb.push({\n action_type: m.SEND_MESSAGE,\n client_message_id: bc,\n message_id: bc,\n client_thread_id: null,\n thread_id: xb,\n JSBNG__status: n.UNABLE_TO_CONFIRM\n });\n });\n };\n };\n };\n ;\n {\n var fin152keys = ((window.top.JSBNG_Replay.forInKeys)((vb))), fin152i = (0);\n var zb;\n for (; (fin152i < fin152keys.length); (fin152i++)) {\n ((zb) = (fin152keys[fin152i]));\n {\n var ac = vb[zb];\n wb.push({\n action_type: m.SEND_MESSAGE,\n client_message_id: zb,\n message_id: zb,\n client_thread_id: ac,\n thread_id: null,\n JSBNG__status: n.UNABLE_TO_CONFIRM\n });\n };\n };\n };\n ;\n if (wb.length) {\n this.handleUpdate({\n actions: wb,\n payload_source: w.CLIENT_HANDLE_ERROR\n });\n }\n ;\n ;\n },\n markSeen: function() {\n var tb = i.convertActionIDToTimestamp(this._lastActionId);\n sb(this, \"/ajax/mercury/mark_seen.php\", {\n seen_timestamp: tb\n });\n },\n handleRoger: function(tb) {\n var ub = ((tb.tid ? this._serverToClientIDs.getResource(tb.tid) : ((\"user:\" + tb.reader))));\n if (ub) {\n var vb = {\n };\n vb[ub] = {\n };\n vb[ub][((\"fbid:\" + tb.reader))] = tb.time;\n this.inform(\"update-roger\", vb);\n }\n ;\n ;\n },\n handleUpdateWaitForThread: function(tb, ub, vb) {\n vb = ((vb || ka));\n var wb = this._serverToClientIDs.getResource(ub);\n if (wb) {\n this.handleUpdate(tb);\n return;\n }\n ;\n ;\n this._serverToClientIDs.executeOrEnqueue(ub, function() {\n this._pendingUpdates.push(tb);\n }.bind(this));\n if (!this._fetchingThreads[ub]) {\n this._fetchingThreads[ub] = true;\n sb(this, \"/ajax/mercury/thread_info.php\", {\n threads: {\n thread_ids: [ub,]\n },\n client: vb\n });\n }\n ;\n ;\n },\n handleUpdate: function(tb) {\n var ub = [];\n if (((tb && tb.threads))) {\n for (var vb = 0; ((vb < tb.threads.length)); vb++) {\n if (!tb.threads[vb].snippet_attachments) {\n continue;\n }\n ;\n ;\n for (var wb = 0; ((wb < tb.threads[vb].snippet_attachments.length)); wb++) {\n if (tb.threads[vb].snippet_attachments[wb].share_xhp) {\n ub.push({\n i: vb,\n j: wb,\n xhp: tb.threads[vb].snippet_attachments[wb].share_xhp\n });\n tb.threads[vb].snippet_attachments[wb].share_xhp = ((((\"HTMLDivElement not shown: object contains circular \" + \"reference, which was breaking JSON.stringify. \")) + \"Look at MercuryServerRequests.handleUpdate\"));\n }\n ;\n ;\n };\n ;\n };\n }\n ;\n ;\n ja.debug(\"handle_update\", {\n payload: tb,\n from_client: tb.from_client\n });\n for (var xb = 0; ((xb < ub.length)); xb++) {\n tb.threads[ub[xb].i].snippet_attachments[ub[xb].j].share_xhp = ub[xb].xhp;\n ;\n };\n ;\n {\n var fin153keys = ((window.top.JSBNG_Replay.forInKeys)((tb))), fin153i = (0);\n (0);\n for (; (fin153i < fin153keys.length); (fin153i++)) {\n ((xb) = (fin153keys[fin153i]));\n {\n ga.getForFBID(this._fbid).synchronizeInforms(function() {\n if (!tb.from_client) {\n wa(this, tb);\n this.inform(\"payload-preprocessed\", tb);\n }\n ;\n ;\n this.inform(\"update-thread-ids\", this._newlyAddedClientIDs);\n this._newlyAddedClientIDs = {\n };\n this.inform(\"update-participants\", tb);\n this.inform(\"update-threads\", tb);\n this.inform(\"update-unread\", tb);\n this.inform(\"update-threadlist\", tb);\n this.inform(\"update-messages\", tb);\n this.inform(\"update-unseen\", tb);\n this.inform(\"update-typing-state\", tb);\n this.inform(\"update-roger\", tb.roger);\n this.inform(\"model-update-completed\", null);\n xa(this);\n }.bind(this));\n break;\n };\n };\n };\n ;\n },\n _handleSendMessageErrorCommon: function(tb, ub, vb, wb) {\n ja.debug(\"handle_send_message_error_common\", {\n reliability_error_status: vb,\n request_error_status: ub\n });\n var xb = tb.getData(), yb = xb.message_batch, zb = yb.map(function(bc) {\n return {\n action_type: m.SEND_MESSAGE,\n client_message_id: bc.message_id,\n message_id: bc.message_id,\n client_thread_id: bc.client_thread_id,\n thread_id: bc.thread_id,\n JSBNG__status: ub,\n error_data: wb\n };\n });\n zb.forEach(function(bc) {\n ta(this, bc, vb);\n }.bind(this));\n var ac = {\n actions: zb,\n payload_source: w.CLIENT_HANDLE_ERROR\n };\n this.handleUpdate(ac);\n },\n handleSendMessageError: function(tb) {\n var ub = tb.getPayload(), vb = null, wb = null;\n if (((ub && ub.error_payload))) {\n vb = n.UNCONFIRMED;\n wb = \"send_error\";\n }\n else {\n vb = n.ERROR;\n wb = ((\"request_error\" + ua(tb)));\n }\n ;\n ;\n var xb = tb.error;\n if (((xb === 1404102))) {\n h.verboseErrorHandler(tb);\n }\n ;\n ;\n var yb = ((/<.*>/.test(tb.getErrorDescription()) ? tb.getErrorSummary() : tb.getErrorDescription()));\n this._handleSendMessageErrorCommon(tb.getRequest(), vb, wb, {\n type: q.SERVER,\n code: tb.getError(),\n description: yb,\n is_transient: tb.isTransient()\n });\n },\n handleSendMessageTransportError: function(tb) {\n this._handleSendMessageErrorCommon(tb.getRequest(), n.ERROR, ((\"transport_error\" + ua(tb))), {\n type: q.TRANSPORT,\n code: tb.getError(),\n is_transient: true\n });\n },\n handleSendMessageTimeout: function(tb) {\n this._handleSendMessageErrorCommon(tb, n.ERROR, \"transport_timeout\", {\n type: q.TIMEOUT,\n is_transient: true\n });\n },\n getLastActionID: function() {\n return this._lastActionId;\n }\n });\n ha(fb, ea);\n function gb(tb) {\n return {\n action_type: m.LOG_MESSAGE,\n thread_id: tb,\n message_id: tb,\n timestamp: JSBNG__Date.now(),\n timestamp_absolute: \"\",\n timestamp_relative: \"\",\n is_unread: false,\n source: y.UNKNOWN,\n log_message_type: u.SERVER_ERROR,\n log_message_data: {\n }\n };\n };\n;\n function hb(tb) {\n var ub = tb.getData(), vb = ((ub.request_user_id ? ub.request_user_id : j.user));\n return fb.getForFBID(vb);\n };\n;\n function ib(tb, ub) {\n hb(ub).handleUpdate(tb);\n };\n;\n function jb(tb, ub) {\n var vb = ((tb.client || ub.client));\n return {\n client: vb,\n message_batch: tb.message_batch.concat(ub.message_batch)\n };\n };\n;\n function kb(tb, ub) {\n var vb = {\n };\n ha(vb, tb.ids);\n ha(vb, ub.ids);\n var wb = ((tb.client || ub.client));\n return {\n ids: vb,\n client: wb\n };\n };\n;\n function lb(tb, ub) {\n return ub;\n };\n;\n function mb(tb) {\n var ub = hb(tb.getRequest());\n ub.handleThreadInfoError(tb);\n };\n;\n function nb(tb) {\n var ub = hb(tb.getRequest());\n ub.handleSendMessageError(tb);\n };\n;\n function ob(tb) {\n var ub = hb(tb.getRequest());\n ub.handleSendMessageTransportError(tb);\n };\n;\n function pb(tb) {\n var ub = hb(tb);\n ub.handleSendMessageTimeout(tb);\n };\n;\n function qb(tb) {\n var ub = hb(tb.getRequest());\n ub.handleMessageConfirmError(tb);\n };\n;\n function rb(tb) {\n fa.registerEndpoints({\n \"/ajax/mercury/thread_sync.php\": {\n request_user_id: tb._fbid,\n mode: fa.IDEMPOTENT,\n handler: ib\n },\n \"/ajax/mercury/thread_info.php\": {\n request_user_id: tb._fbid,\n mode: fa.BATCH_DEFERRED_MULTI,\n batch_function: ya,\n handler: ib,\n error_handler: mb\n },\n \"/ajax/mercury/mark_folder_as_read.php\": {\n request_user_id: tb._fbid,\n mode: fa.IMMEDIATE,\n handler: ib\n },\n \"/ajax/mercury/change_read_status.php\": {\n request_user_id: tb._fbid,\n mode: fa.BATCH_SUCCESSIVE,\n batch_function: kb,\n handler: ib\n },\n \"/ajax/mercury/send_messages.php\": {\n request_user_id: tb._fbid,\n mode: fa.BATCH_SUCCESSIVE,\n batch_function: jb,\n batch_size_limit: ba.SEND_BATCH_LIMIT,\n handler: ib,\n error_handler: nb,\n transport_error_handler: ob,\n timeout: x.sendMessageTimeout,\n timeout_handler: pb,\n connection_retries: ba.SEND_CONNECTION_RETRIES\n },\n \"/ajax/mercury/mark_seen.php\": {\n request_user_id: tb._fbid,\n mode: fa.BATCH_SUCCESSIVE,\n batch_function: lb,\n handler: ib\n },\n \"/ajax/mercury/confirm_messages.php\": {\n request_user_id: tb._fbid,\n mode: fa.IMMEDIATE,\n handler: ib,\n error_handler: qb\n },\n \"/ajax/mercury/threadlist_info.php\": {\n request_user_id: tb._fbid,\n mode: fa.BATCH_SUCCESSIVE_UNIQUE,\n batch_function: ab,\n handler: ib\n },\n \"/ajax/mercury/mark_spam.php\": {\n request_user_id: tb._fbid,\n mode: fa.IMMEDIATE,\n handler: ib\n },\n \"/ajax/mercury/mark_spam_messages.php\": {\n request_user_id: tb._fbid,\n mode: fa.IMMEDIATE,\n handler: ib\n },\n \"/ajax/mercury/unmark_spam.php\": {\n request_user_id: tb._fbid,\n mode: fa.IMMEDIATE,\n handler: ib\n },\n \"/ajax/mercury/unread_threads.php\": {\n request_user_id: tb._fbid,\n mode: fa.BATCH_SUCCESSIVE_UNIQUE,\n batch_function: za,\n handler: ib\n },\n \"/ajax/chat/settings.php\": {\n request_user_id: tb._fbid,\n mode: fa.IMMEDIATE\n },\n \"/ajax/mercury/change_archived_status.php\": {\n request_user_id: tb._fbid,\n mode: fa.BATCH_SUCCESSIVE,\n batch_function: cb,\n handler: ib\n },\n \"/ajax/mercury/delete_thread.php\": {\n request_user_id: tb._fbid,\n mode: fa.BATCH_SUCCESSIVE,\n batch_function: eb,\n handler: ib\n },\n \"/ajax/mercury/delete_messages.php\": {\n request_user_id: tb._fbid,\n mode: fa.IMMEDIATE,\n handler: ib\n },\n \"/ajax/mercury/move_thread.php\": {\n request_user_id: tb._fbid,\n mode: fa.BATCH_SUCCESSIVE,\n batch_function: db,\n handler: ib\n },\n \"/ajax/mercury/change_mute_thread.php\": {\n request_user_id: tb._fbid,\n mode: fa.IMMEDIATE,\n handler: ib\n }\n });\n };\n;\n function sb(tb, ub, vb, wb) {\n fa.trySend(ub, vb, wb, tb._fbid);\n };\n;\n e.exports = fb;\n});\n__d(\"MercuryParticipants\", [\"Env\",\"ImageSourceRequest\",\"ImageSourceType\",\"MercuryAssert\",\"MercuryIDs\",\"MercuryParticipantTypes\",\"MercuryParticipantsConstants\",\"PhotoResizeModeConst\",\"MercuryServerRequests\",\"ShortProfiles\",\"copyProperties\",\"getObjectValues\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Env\"), h = b(\"ImageSourceRequest\"), i = b(\"ImageSourceType\"), j = b(\"MercuryAssert\"), k = b(\"MercuryIDs\"), l = b(\"MercuryParticipantTypes\"), m = b(\"MercuryParticipantsConstants\"), n = b(\"PhotoResizeModeConst\"), o = b(\"MercuryServerRequests\").get(), p = b(\"ShortProfiles\"), q = b(\"copyProperties\"), r = b(\"getObjectValues\"), s = b(\"tx\"), t = ((\"fbid:\" + g.user)), u = {\n }, v = {\n }, w = function(ba) {\n ba = z(ba);\n if (u[ba.id]) {\n q(u[ba.id], ba);\n }\n else u[ba.id] = q({\n }, ba);\n ;\n ;\n if (ba.vanity) {\n v[ba.vanity] = ba.id;\n }\n ;\n ;\n };\n function x(ba) {\n j.isEmailParticipantID(ba);\n var ca = k.tokenize(ba), da = ca.value;\n return {\n gender: m.UNKNOWN_GENDER,\n href: null,\n id: ba,\n image_src: m.EMAIL_IMAGE,\n big_image_src: m.EMAIL_IMAGE,\n JSBNG__name: da,\n short_name: da,\n employee: false,\n call_promo: false\n };\n };\n;\n function y(ba, ca, da) {\n j.allParticipantIDs(ba);\n var ea = {\n }, fa = {\n };\n ba.forEach(function(ha) {\n if (((u[ha] && !da))) {\n ea[ha] = q({\n }, u[ha]);\n }\n else {\n var ia = k.tokenize(ha);\n if (((ia.type == \"fbid\"))) {\n var ja = ia.value;\n fa[ha] = ja;\n }\n else if (((ia.type == \"email\"))) {\n ea[ha] = x(ha);\n }\n \n ;\n ;\n }\n ;\n ;\n });\n var ga = r(fa);\n if (ga.length) {\n p.getMulti(ga, function(ha) {\n {\n var fin154keys = ((window.top.JSBNG_Replay.forInKeys)((fa))), fin154i = (0);\n var ia;\n for (; (fin154i < fin154keys.length); (fin154i++)) {\n ((ia) = (fin154keys[fin154i]));\n {\n var ja = fa[ia], ka = ha[ja];\n ea[ia] = {\n gender: ka.gender,\n href: ka.uri,\n id: ia,\n image_src: ka.thumbSrc,\n JSBNG__name: ka.JSBNG__name,\n short_name: ka.firstName,\n employee: ka.employee,\n call_promo: ka.showVideoPromo,\n type: ka.type,\n vanity: ka.vanity,\n is_friend: ka.is_friend,\n social_snippets: ka.social_snippets\n };\n w(ea[ia]);\n };\n };\n };\n ;\n ca(ea);\n });\n }\n else ca(ea);\n ;\n ;\n };\n;\n function z(ba) {\n var ca = ((((ba.type === l.USER)) || ((ba.type === l.FRIEND))));\n if (!ca) {\n return ba;\n }\n ;\n ;\n if (((((!ba.JSBNG__name && !ba.href)) && !ba.vanity))) {\n var da = \"Facebook User\";\n ba.JSBNG__name = da;\n ba.short_name = da;\n }\n ;\n ;\n return ba;\n };\n;\n var aa = {\n user: t,\n isAuthor: function(ba) {\n return ((ba === t));\n },\n getIDFromVanityOrFBID: function(ba) {\n if (!ba) {\n return;\n }\n ;\n ;\n if (v[ba]) {\n return v[ba];\n }\n ;\n ;\n if (ba.match(\"^\\\\d+$\")) {\n return aa.getIDForUser(ba);\n }\n ;\n ;\n },\n getNow: function(ba) {\n return u[ba];\n },\n get: function(ba, ca) {\n j.isParticipantID(ba);\n aa.getMulti([ba,], function(da) {\n ca(da[ba]);\n });\n },\n getMulti: function(ba, ca, da) {\n return y(ba, ca, false);\n },\n getBigImageMulti: function(ba, ca) {\n j.allParticipantIDs(ba);\n var da = m.BIG_IMAGE_SIZE;\n aa.getMulti(ba, function(ea) {\n var fa = {\n }, ga = 0, ha = function(la, ma) {\n ga++;\n fa[la] = ma;\n if (((ga === ba.length))) {\n ca(fa);\n }\n ;\n ;\n }, ia = function(la, ma) {\n u[la].big_image_src = ma.uri;\n ha(la, ma.uri);\n };\n {\n var fin155keys = ((window.top.JSBNG_Replay.forInKeys)((ea))), fin155i = (0);\n var ja;\n for (; (fin155i < fin155keys.length); (fin155i++)) {\n ((ja) = (fin155keys[fin155i]));\n {\n var ka = ea[ja];\n if (!ka.big_image_src) {\n new h().setFBID(aa.getUserID(ja)).setType(i.PROFILE_PICTURE).setDimensions(da, da).setResizeMode(n.COVER).setCallback(ia.curry(ja)).send();\n }\n else ha(ka.id, ka.big_image_src);\n ;\n ;\n };\n };\n };\n ;\n });\n },\n getOrderedBigImageMulti: function(ba, ca) {\n aa.getBigImageMulti(ba, function(da) {\n var ea = ba.map(function(fa) {\n return da[fa];\n });\n ca(ea);\n });\n },\n getMultiForceDownload: function(ba, ca) {\n return y(ba, ca, true);\n },\n getUserID: function(ba) {\n return k.getUserIDFromParticipantID(ba);\n },\n getIDForUser: function(ba) {\n return ((\"fbid:\" + ba));\n },\n addParticipants: function(ba) {\n ba.forEach(w);\n }\n };\n o.subscribe(\"update-participants\", function(ba, ca) {\n aa.addParticipants(((ca.participants || [])));\n });\n e.exports = aa;\n});\n__d(\"MercuryFolders\", [\"MessagingTag\",\"arrayContains\",], function(a, b, c, d, e, f) {\n var g = b(\"MessagingTag\"), h = b(\"arrayContains\"), i = [g.INBOX,g.OTHER,g.ACTION_ARCHIVED,g.SPAM,], j = {\n getSupportedFolders: function() {\n return i.concat();\n },\n isSupportedFolder: function(k) {\n return h(i, k);\n },\n getFromMeta: function(k) {\n var l = k.folder;\n if (k.is_archived) {\n l = g.ACTION_ARCHIVED;\n }\n ;\n ;\n return l;\n }\n };\n e.exports = j;\n});\n__d(\"MercuryAttachment\", [\"MercuryAttachmentContentType\",\"MercuryAttachmentType\",\"startsWith\",], function(a, b, c, d, e, f) {\n var g = b(\"MercuryAttachmentContentType\"), h = b(\"MercuryAttachmentType\"), i = b(\"startsWith\"), j = {\n getAttachIconClass: function(k) {\n switch (k) {\n case g.PHOTO:\n return \"MercuryPhotoIcon\";\n case g.VIDEO:\n return \"MercuryVideoIcon\";\n case g.MUSIC:\n return \"MercuryMusicIcon\";\n case g.VOICE:\n return \"MercuryVoiceIcon\";\n case g.TEXT:\n return \"MercuryTextIcon\";\n case g.MSWORD:\n return \"MercuryMSWordIcon\";\n case g.MSXLS:\n return \"MercuryMSXLSIcon\";\n case g.MSPPT:\n return \"MercuryMSPPTIcon\";\n };\n ;\n return \"MercuryDefaultIcon\";\n },\n getAttachIconClassByMime: function(k) {\n if (i(k, \"image\")) {\n return \"MercuryPhotoIcon\";\n }\n else if (i(k, \"video\")) {\n return \"MercuryVideoIcon\";\n }\n else if (i(k, \"audio\")) {\n return \"MercuryMusicIcon\";\n }\n else if (i(k, \"text/plain\")) {\n return \"MercuryTextIcon\";\n }\n else return \"MercuryDefaultIcon\"\n \n \n \n ;\n },\n getAttachTypeByMime: function(k) {\n if (i(k, \"image\")) {\n return g.PHOTO;\n }\n else if (i(k, \"video\")) {\n return g.VIDEO;\n }\n else if (i(k, \"audio\")) {\n return g.MUSIC;\n }\n else if (i(k, \"text/plain\")) {\n return g.TEXT;\n }\n else return g.UNKNOWN\n \n \n \n ;\n },\n convertRaw: function(k) {\n var l = [];\n for (var m = 0; ((m < k.length)); m++) {\n var n = k[m];\n if (((n.attach_type === h.PHOTO))) {\n l.push(n);\n }\n else if (n.filename) {\n var o = j.getAttachTypeByMime(n.filetype), p = {\n };\n p.attach_type = h.FILE;\n p.JSBNG__name = n.filename;\n p.icon_type = o;\n p.url = \"\";\n if (((o == g.PHOTO))) {\n p.preview_loading = true;\n }\n ;\n ;\n l.push(p);\n }\n \n ;\n ;\n };\n ;\n return l;\n }\n };\n e.exports = j;\n});\n__d(\"MercuryThreads\", [\"Arbiter\",\"TimestampConverter\",\"MercuryFolders\",\"JSLogger\",\"KeyedCallbackManager\",\"MercuryActionTypeConstants\",\"MercuryAssert\",\"MercuryAttachment\",\"MercuryGlobalActionType\",\"MercuryIDs\",\"MercuryLogMessageType\",\"MercurySingletonMixin\",\"MercuryThreadMode\",\"MessagingTag\",\"MercuryParticipants\",\"MercuryServerRequests\",\"MercuryThreadInformer\",\"copyProperties\",\"createObjectFrom\",\"removeFromArray\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"TimestampConverter\"), i = b(\"MercuryFolders\"), j = b(\"JSLogger\"), k = b(\"KeyedCallbackManager\"), l = b(\"MercuryActionTypeConstants\"), m = b(\"MercuryAssert\"), n = b(\"MercuryAttachment\"), o = b(\"MercuryGlobalActionType\"), p = b(\"MercuryIDs\"), q = b(\"MercuryLogMessageType\"), r = b(\"MercurySingletonMixin\"), s = b(\"MercuryThreadMode\"), t = b(\"MessagingTag\"), u = b(\"MercuryParticipants\"), v = b(\"MercuryServerRequests\"), w = b(\"MercuryThreadInformer\"), x = b(\"copyProperties\"), y = b(\"createObjectFrom\"), z = b(\"removeFromArray\"), aa = j.create(\"mercury_threads\");\n function ba(na, oa, pa) {\n var qa = y(oa.participants, true), ra = u.getIDForUser(na._fbid);\n pa.forEach(function(sa) {\n if (((qa[sa] !== true))) {\n oa.participants.push(sa);\n if (((sa === ra))) {\n oa.is_subscribed = true;\n }\n ;\n ;\n }\n ;\n ;\n });\n };\n;\n function ca(na, oa, pa) {\n z(oa.participants, pa);\n if (((pa === u.getIDForUser(na._fbid)))) {\n oa.is_subscribed = false;\n }\n ;\n ;\n };\n;\n function da(na, oa) {\n if (((na.participants[0] != oa))) {\n z(na.participants, oa);\n na.participants.unshift(oa);\n }\n ;\n ;\n };\n;\n function ea(na, oa) {\n var pa = oa.body, qa = oa.subject, ra = \"\";\n if (qa) {\n qa = qa.toLowerCase();\n if (((pa.slice(0, qa.length).toLowerCase() == qa))) {\n ra = pa;\n }\n else if (pa) {\n ra = ((((qa + \" \\u00b7 \")) + pa));\n }\n else ra = qa;\n \n ;\n ;\n }\n else ra = pa;\n ;\n ;\n na.snippet = ra;\n na.snippet_has_attachment = oa.has_attachment;\n if (((oa.raw_attachments && ((oa.raw_attachments.length > 0))))) {\n var sa = n.convertRaw(oa.raw_attachments);\n na.snippet_attachments = sa;\n }\n else na.snippet_attachments = oa.attachments;\n ;\n ;\n na.is_forwarded_snippet = !!oa.forward_count;\n na.snippet_sender = oa.author;\n };\n;\n function fa(na, oa, pa) {\n if (!oa) {\n return false;\n }\n ;\n ;\n if (!oa.timestamp) {\n return true;\n }\n ;\n ;\n var qa = !oa.unread_count;\n if (((pa == qa))) {\n return false;\n }\n ;\n ;\n oa.unread_count = ((pa ? 0 : 1));\n na._threadInformer.updatedThread(oa.thread_id);\n return true;\n };\n;\n function ga(na, oa) {\n var pa = na._threads.getAllResources();\n {\n var fin156keys = ((window.top.JSBNG_Replay.forInKeys)((pa))), fin156i = (0);\n var qa;\n for (; (fin156i < fin156keys.length); (fin156i++)) {\n ((qa) = (fin156keys[fin156i]));\n {\n var ra = pa[qa];\n if (((ra.folder == oa))) {\n ra.unread_count = 0;\n na._threads.setResource(qa, ra);\n na._threadInformer.updatedThread(qa);\n }\n ;\n ;\n };\n };\n };\n ;\n };\n;\n function ha(na, oa, pa) {\n if (((!oa || ((oa.chat_clear_time === pa))))) {\n return false;\n }\n ;\n ;\n oa.chat_clear_time = pa;\n na._threadInformer.reorderedMessages(oa.thread_id);\n return true;\n };\n;\n function ia(na, oa, pa, qa) {\n var ra = pa.action_type;\n if (((((ra == l.USER_GENERATED_MESSAGE)) || ((ra == l.LOG_MESSAGE))))) {\n ((pa.is_unread && oa.unread_count++));\n oa.message_count++;\n oa.is_archived = false;\n }\n ;\n ;\n switch (ra) {\n case l.USER_GENERATED_MESSAGE:\n da(oa, pa.author);\n break;\n case l.SEND_MESSAGE:\n var sa = pa.log_message_type;\n if (((sa == q.THREAD_IMAGE))) {\n oa.image_src = ((pa.log_message_data.image ? pa.log_message_data.image.preview_url : null));\n }\n ;\n ;\n oa.snippet_attachments = pa.attachments;\n break;\n case l.LOG_MESSAGE:\n var sa = pa.log_message_type;\n if (((sa == q.SUBSCRIBE))) {\n ba(na, oa, pa.log_message_data.added_participants);\n }\n else if (((sa == q.JOINABLE_JOINED))) {\n ba(na, oa, [pa.log_message_data.joined_participant,]);\n }\n else if (((sa == q.UNSUBSCRIBE))) {\n ca(na, oa, pa.author);\n }\n else if (((sa == q.THREAD_IMAGE))) {\n if (!qa) {\n oa.image_src = ((pa.log_message_data.image ? pa.log_message_data.image.preview_url : null));\n }\n ;\n ;\n }\n else if (((sa == q.THREAD_NAME))) {\n oa.JSBNG__name = pa.log_message_data.JSBNG__name;\n }\n \n \n \n \n ;\n ;\n break;\n case l.CHANGE_READ_STATUS:\n if (pa.timestamp) {\n na._threadInformer.changedThreadReadState(oa.thread_id, pa.mark_as_read, pa.timestamp);\n }\n ;\n ;\n fa(na, oa, pa.mark_as_read);\n break;\n case l.CLEAR_CHAT:\n ha(na, oa, pa.clear_time);\n break;\n case l.CHANGE_ARCHIVED_STATUS:\n oa.is_archived = pa.archived;\n break;\n case l.CHANGE_FOLDER:\n oa.folder = pa.new_folder;\n break;\n case l.DELETE_MESSAGES:\n if (qa) {\n oa.snippet = \"...\";\n oa.snippet_has_attachment = false;\n oa.snippet_attachments = null;\n oa.snippet_sender = null;\n oa.is_forwarded_snippet = false;\n na._threadInformer.updatedThread(pa.thread_id);\n }\n else if (pa.message_ids) {\n oa.message_count = ((oa.message_count - pa.message_ids.length));\n }\n \n ;\n ;\n break;\n case l.CHANGE_MUTE_SETTINGS:\n if (((pa.mute_settings !== undefined))) {\n var ta = ((na._fbid + \"@facebook.com\"));\n if (oa.mute_settings) {\n if (pa.mute_settings) {\n oa.mute_settings[ta] = pa.mute_settings;\n }\n else delete oa.mute_settings[ta];\n ;\n ;\n na._threadInformer.updatedThread(oa.thread_id);\n }\n ;\n ;\n }\n ;\n ;\n break;\n };\n ;\n if (pa.action_id) {\n oa.last_action_id = h.maxValidActionID(pa.action_id, oa.last_action_id);\n }\n ;\n ;\n };\n;\n function ja(na, oa) {\n var pa = na._serverRequests.tokenizeThreadID(oa.thread_id);\n if (((pa.type == \"group\"))) {\n aa.error(\"invalid_new_thread_message\", oa);\n return undefined;\n }\n ;\n ;\n var qa = la(na, oa.specific_to_list), ra = {\n thread_id: oa.thread_id,\n last_action_id: oa.action_id,\n participants: oa.specific_to_list,\n JSBNG__name: null,\n snippet: oa.body,\n snippet_has_attachment: false,\n snippet_attachments: [],\n snippet_sender: oa.author,\n unread_count: 0,\n message_count: 0,\n image_src: null,\n timestamp_absolute: oa.timestamp_absolute,\n timestamp_relative: oa.timestamp_relative,\n timestamp: oa.timestamp,\n canonical_fbid: ((((pa.type === \"user\")) ? pa.value : null)),\n is_canonical_user: ((pa.type === \"user\")),\n is_canonical: qa,\n is_subscribed: true,\n root_message_threading_id: oa.message_id,\n folder: t.INBOX,\n is_archived: false,\n mode: s.TITAN_ORIGINATED\n };\n return ra;\n };\n;\n function ka(na) {\n this._fbid = na;\n this._serverRequests = v.getForFBID(this._fbid);\n this._threadInformer = w.getForFBID(this._fbid);\n this._threads = new k();\n ma(this);\n };\n;\n x(ka.prototype, {\n getThreadMetaNow: function(na) {\n m.isThreadID(na);\n return this._threads.getResource(na);\n },\n getThreadMeta: function(na, oa, pa) {\n m.isThreadID(na);\n var qa = this._threads.executeOrEnqueue(na, oa), ra = this._threads.getUnavailableResources(qa);\n if (ra.length) {\n var sa = this._serverRequests.tokenizeThreadID(na);\n if (((sa.type == \"user\"))) {\n this.getCanonicalThreadToUser(sa.value);\n }\n else this._serverRequests.fetchThreadData(ra, pa);\n ;\n ;\n }\n ;\n ;\n return qa;\n },\n unsubscribe: function(na) {\n this._threads.unsubscribe(na);\n },\n changeThreadReadStatus: function(na, oa) {\n m.isThreadID(na);\n var pa = this._threads.getResource(na);\n if (fa(this, pa, oa)) {\n this._serverRequests.changeThreadReadStatus(na, oa, i.getFromMeta(pa));\n }\n ;\n ;\n },\n changeThreadArchivedStatus: function(na, oa) {\n m.isThreadID(na);\n var pa = this._threads.getResource(na);\n if (((pa.is_archived != oa))) {\n pa.is_archived = oa;\n this._threadInformer.updatedThread(pa.thread_id);\n this._serverRequests.changeThreadArchivedStatus(na, oa);\n }\n ;\n ;\n },\n markThreadSpam: function(na) {\n this._serverRequests.markThreadSpam(na);\n },\n unmarkThreadSpam: function(na) {\n this._serverRequests.unmarkThreadSpam(na);\n },\n updateThreadMuteSetting: function(na, oa) {\n this._serverRequests.changeMutingOnThread(na, oa);\n },\n changeFolder: function(na, oa) {\n m.isThreadID(na);\n var pa = this._threads.getResource(na);\n if (((pa && ((pa.folder != oa))))) {\n pa.folder = oa;\n this._threadInformer.updatedThread(pa.thread_id);\n this._serverRequests.changeThreadFolder(na, oa);\n }\n ;\n ;\n },\n deleteThread: function(na) {\n m.isThreadID(na);\n this._serverRequests.deleteThread(na);\n },\n updateThreads: function(na) {\n if (((!na || !na.length))) {\n return;\n }\n ;\n ;\n var oa = {\n };\n na.forEach(function(pa) {\n oa[pa.thread_id] = pa;\n });\n this._threads.addResourcesAndExecute(oa);\n },\n updateMetadataByActions: function(na, oa) {\n if (((!na || !na.length))) {\n return;\n }\n ;\n ;\n var pa = {\n }, qa = {\n }, ra = {\n };\n for (var sa = 0; ((sa < na.length)); sa++) {\n var ta = na[sa];\n if (ta.is_forward) {\n continue;\n }\n ;\n ;\n var ua = ta.action_type, va = ta.thread_id;\n m.isThreadID(va);\n var wa = this.getThreadMetaNow(va);\n if (((((ua == l.LOG_MESSAGE)) && ((ta.log_message_type == q.SERVER_ERROR))))) {\n continue;\n }\n ;\n ;\n if (((((!wa && !ta.action_id)) && ((ua == l.USER_GENERATED_MESSAGE))))) {\n wa = ja(this, ta);\n this._threads.setResource(va, wa);\n }\n ;\n ;\n if (wa) {\n if (((ua == l.DELETE_THREAD))) {\n wa.message_count = 0;\n this._threadInformer.deletedThread(va);\n continue;\n }\n ;\n ;\n var xa = !!ta.action_id;\n if (((((ua == l.LOG_MESSAGE)) || ((ua == l.USER_GENERATED_MESSAGE))))) {\n xa = !oa;\n }\n ;\n ;\n if (((((wa.server_timestamp && ((ta.timestamp <= wa.server_timestamp)))) && xa))) {\n continue;\n }\n ;\n ;\n if (!ra[va]) {\n ra[va] = x({\n }, wa);\n }\n ;\n ;\n ia(this, ra[va], ta, oa);\n if (((ua == l.USER_GENERATED_MESSAGE))) {\n pa[va] = ta;\n }\n ;\n ;\n if (((((((ua == l.USER_GENERATED_MESSAGE)) || ((ua == l.LOG_MESSAGE)))) || ((ua == l.SEND_MESSAGE))))) {\n if (((((ta && ta.timestamp)) && ((!qa[va] || ((ta.timestamp > qa[va].timestamp))))))) {\n qa[va] = ta;\n }\n ;\n }\n ;\n ;\n }\n ;\n ;\n };\n ;\n {\n var fin157keys = ((window.top.JSBNG_Replay.forInKeys)((ra))), fin157i = (0);\n var ya;\n for (; (fin157i < fin157keys.length); (fin157i++)) {\n ((ya) = (fin157keys[fin157i]));\n {\n var za = ra[ya], ab = pa[ya];\n if (ab) {\n ea(za, ab);\n }\n ;\n ;\n var bb = qa[ya], cb = za.timestamp;\n if (bb) {\n if (((bb.timestamp > cb))) {\n za = x(za, {\n timestamp_absolute: bb.timestamp_absolute,\n timestamp_relative: bb.timestamp_relative,\n timestamp: bb.timestamp\n });\n }\n ;\n ;\n var db = za.server_timestamp;\n if (((!oa && ((bb.timestamp > db))))) {\n za.server_timestamp = bb.timestamp;\n }\n ;\n ;\n }\n ;\n ;\n this._threads.setResource(ya, za);\n };\n };\n };\n ;\n },\n getCanonicalThreadToUser: function(na, oa, pa) {\n return this.getCanonicalThreadToParticipant(((\"fbid:\" + na)), oa, pa);\n },\n getCanonicalThreadToParticipant: function(na, oa, pa) {\n var qa = this.getThreadIDForParticipant(na), ra = this._threads.getResource(qa);\n if (((typeof ra == \"undefined\"))) {\n ra = this.createNewLocalThread(qa, [u.getIDForUser(this._fbid),na,], oa);\n this._serverRequests.fetchThreadData([qa,], pa);\n }\n ;\n ;\n return ra;\n },\n getThreadIdForUser: function(na) {\n return ((\"user:\" + na));\n },\n getThreadIDForParticipant: function(na) {\n var oa = p.tokenize(na);\n return this.getThreadIdForUser(oa.value);\n },\n createNewLocalThread: function(na, oa, pa) {\n var qa = this._threads.getResource(na);\n if (!qa) {\n var ra = this._serverRequests.tokenizeThreadID(na);\n qa = {\n thread_id: na,\n last_action_id: null,\n participants: oa,\n JSBNG__name: null,\n snippet: \"\",\n snippet_has_attachment: false,\n snippet_sender: null,\n unread_count: ((pa ? pa : 0)),\n message_count: 0,\n image_src: null,\n timestamp_absolute: null,\n timestamp_relative: null,\n timestamp: null,\n canonical_fbid: ((((ra.type === \"user\")) ? ra.value : null)),\n is_canonical_user: ((ra.type == \"user\")),\n is_canonical: la(this, oa),\n is_subscribed: true,\n root_message_threading_id: null,\n folder: t.INBOX,\n is_archived: false,\n mode: s.TITAN_ORIGINATED\n };\n this._threads.setResource(na, qa);\n }\n ;\n ;\n return qa;\n },\n addParticipantsToThreadLocally: function(na, oa) {\n var pa = this._threads.getResource(na);\n if (pa) {\n ba(this, pa, oa);\n this._threadInformer.updatedThread(pa.thread_id);\n }\n ;\n ;\n },\n getCanonicalUserInThread: function(na) {\n var oa = this._serverRequests.tokenizeThreadID(na);\n return ((((oa.type == \"user\")) ? oa.value : null));\n },\n getCanonicalGroupInThread: function(na) {\n var oa = this._serverRequests.tokenizeThreadID(na);\n return ((((oa.type == \"group\")) ? oa.value : null));\n },\n isEmptyLocalThread: function(na) {\n var oa = this._threads.getResource(na);\n if (!oa) {\n return false;\n }\n ;\n ;\n var pa = this._serverRequests.tokenizeThreadID(na);\n return ((((pa.type == \"root\")) && !oa.timestamp));\n },\n isNewEmptyLocalThread: function(na) {\n if (!this.isEmptyLocalThread(na)) {\n return false;\n }\n ;\n ;\n var oa = this._threads.getResource(na);\n return ((oa.participants && ((oa.participants.length === 0))));\n },\n canReply: function(na) {\n var oa = this._threads.getResource(na);\n return ((((((oa && oa.is_subscribed)) && ((oa.mode != s.OBJECT_ORIGINATED)))) && ((oa.recipients_loadable || ((oa.recipients_loadable === undefined))))));\n }\n });\n x(ka, r);\n function la(na, oa) {\n var pa = oa.filter(function(qa) {\n return ((qa != u.getIDForUser(na._fbid)));\n });\n return ((pa.length <= 1));\n };\n;\n function ma(na) {\n na._serverRequests.subscribe(\"update-threads\", function(oa, pa) {\n var qa = ((pa.actions || [])).filter(function(ua) {\n return ua.thread_id;\n });\n na.updateThreads(pa.threads);\n na.updateMetadataByActions(qa, pa.from_client);\n ((pa.threads || [])).forEach(function(ua) {\n na._threadInformer.updatedThread(ua.thread_id);\n });\n var ra = ((pa.global_actions || []));\n for (var sa = 0; ((sa < ra.length)); sa++) {\n var ta = ra[sa];\n if (((ta.action_type == o.MARK_ALL_READ))) {\n ga(na, ta.folder);\n }\n ;\n ;\n };\n ;\n });\n };\n;\n g.subscribe(j.DUMP_EVENT, function(na, oa) {\n oa.messaging = ((oa.messaging || {\n }));\n oa.messaging.threads = {\n };\n var pa = ka._getInstances();\n {\n var fin158keys = ((window.top.JSBNG_Replay.forInKeys)((pa))), fin158i = (0);\n var qa;\n for (; (fin158i < fin158keys.length); (fin158i++)) {\n ((qa) = (fin158keys[fin158i]));\n {\n oa.messaging.threads[qa] = pa[qa]._threads.dumpResources();\n ;\n };\n };\n };\n ;\n });\n e.exports = ka;\n});\n__d(\"MercuryUnreadState\", [\"Arbiter\",\"MercuryFolders\",\"JSLogger\",\"KeyedCallbackManager\",\"MercuryActionTypeConstants\",\"MercuryGlobalActionType\",\"MercurySingletonMixin\",\"MercuryThreadlistConstants\",\"MessagingTag\",\"MercuryServerRequests\",\"MercuryThreadInformer\",\"MercuryThreads\",\"arrayContains\",\"copyProperties\",\"createObjectFrom\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"MercuryFolders\"), i = b(\"JSLogger\"), j = b(\"KeyedCallbackManager\"), k = b(\"MercuryActionTypeConstants\"), l = b(\"MercuryGlobalActionType\"), m = b(\"MercurySingletonMixin\"), n = b(\"MercuryThreadlistConstants\"), o = b(\"MessagingTag\"), p = b(\"MercuryServerRequests\"), q = b(\"MercuryThreadInformer\"), r = b(\"MercuryThreads\"), s = b(\"arrayContains\"), t = b(\"copyProperties\"), u = b(\"createObjectFrom\"), v = ((h.getSupportedFolders() || [])).filter(function(ma) {\n return ((ma != o.ACTION_ARCHIVED));\n }), w = \"unread_thread_hash\", x = \"unseen_thread_list\", y = n.MAX_UNREAD_COUNT, z = i.create(\"mercury_unread_state\");\n function aa(ma) {\n this._fbid = ma;\n this._serverRequests = p.getForFBID(this._fbid);\n this._threadInformer = q.getForFBID(this._fbid);\n this._threads = r.getForFBID(this._fbid);\n this._allReadTimestamp = {\n };\n this._threadReadTimestamp = {\n };\n this._initialUnreadCount = {\n };\n this._maxCount = {\n };\n this._unreadResources = {\n };\n v.forEach(function(na) {\n this._initialUnreadCount[na] = 0;\n this._maxCount[na] = false;\n this._unreadResources[na] = new j();\n }.bind(this));\n this._serverRequests.subscribe(\"update-unread\", function(na, oa) {\n fa(this, oa);\n var pa = ((oa.global_actions || []));\n for (var qa = 0; ((qa < pa.length)); qa++) {\n var ra = pa[qa];\n if (((ra.action_type == l.MARK_ALL_READ))) {\n ia(this, ra.folder, ra.timestamp);\n }\n ;\n ;\n };\n ;\n }.bind(this));\n this._serverRequests.subscribe(\"update-thread-ids\", function(na, oa) {\n ka(this, oa);\n }.bind(this));\n };\n;\n t(aa.prototype, {\n getUnreadCount: function(ma) {\n if (this.exceedsMaxCount(ma)) {\n z.error(\"unguarded_unread_count_fetch\", {\n });\n return 0;\n }\n ;\n ;\n return ea(this, ma);\n },\n exceedsMaxCount: function(ma) {\n return ((this._maxCount[ma] || ((ea(this, ma) > y))));\n },\n markFolderAsRead: function(ma) {\n if (((this._maxCount[ma] || ((ea(this, ma) > 0))))) {\n this._serverRequests.markFolderAsRead(ma);\n }\n ;\n ;\n }\n });\n t(aa, m);\n function ba(ma, na, oa) {\n ma._unreadResources[na].setResource(w, oa);\n ma._unreadResources[na].setResource(x, Object.keys(oa));\n };\n;\n function ca(ma, na, oa) {\n var pa = ma._unreadResources[na].executeOrEnqueue(w, oa), qa = ma._unreadResources[na].getUnavailableResources(pa);\n if (qa.length) {\n ma._serverRequests.fetchUnreadThreadIDs(na);\n }\n ;\n ;\n };\n;\n function da(ma, na) {\n return ma._unreadResources[na].getResource(w);\n };\n;\n function ea(ma, na) {\n var oa = ma._unreadResources[na].getResource(x);\n if (oa) {\n return oa.length;\n }\n else return ma._initialUnreadCount[na]\n ;\n };\n;\n function fa(ma, na) {\n var oa;\n ((na.unread_thread_ids || [])).forEach(function(pa) {\n oa = pa.folder;\n if (!la(oa)) {\n return;\n }\n ;\n ;\n var qa = ja(ma, pa.thread_ids);\n ba(ma, oa, u(qa, true));\n if (((qa.length > y))) {\n ma._maxCount[oa] = true;\n }\n ;\n ;\n ma._threadInformer.updatedUnreadState();\n });\n ((na.message_counts || [])).forEach(function(pa) {\n if (((pa.unread_count === undefined))) {\n return;\n }\n ;\n ;\n oa = pa.folder;\n if (((pa.unread_count > y))) {\n ma._maxCount[oa] = true;\n ba(ma, oa, {\n });\n ma._threadInformer.updatedUnreadState();\n }\n else {\n ma._initialUnreadCount[oa] = pa.unread_count;\n if (((ma._initialUnreadCount[oa] === 0))) {\n ba(ma, oa, {\n });\n }\n ;\n ;\n ma._threadInformer.updatedUnreadState();\n }\n ;\n ;\n });\n ((na.actions || [])).forEach(function(pa) {\n if (pa.is_forward) {\n return;\n }\n ;\n ;\n var qa = k, ra = ((pa.thread_id ? pa.thread_id : pa.server_thread_id));\n if (((pa.action_type == qa.DELETE_THREAD))) {\n v.forEach(function(ta) {\n ha(ma, ta, ra);\n });\n }\n else if (((((pa.action_type == qa.CHANGE_ARCHIVED_STATUS)) || ((pa.action_type == qa.CHANGE_FOLDER))))) {\n var sa = ma._threads.getThreadMetaNow(pa.thread_id);\n oa = h.getFromMeta(sa);\n if (((la(oa) && ((sa.unread_count > 0))))) {\n ga(ma, oa, ra);\n }\n ;\n ;\n v.forEach(function(ta) {\n if (((ta != oa))) {\n ha(ma, ta, ra);\n }\n ;\n ;\n });\n }\n else {\n oa = pa.folder;\n if (!la(oa)) {\n return;\n }\n ;\n ;\n if (((pa.action_type == qa.CHANGE_READ_STATUS))) {\n if (pa.mark_as_read) {\n ha(ma, oa, ra, pa.timestamp);\n }\n else ga(ma, oa, ra, pa.timestamp);\n ;\n ;\n }\n else if (((((pa.action_type == qa.USER_GENERATED_MESSAGE)) || ((pa.action_type == qa.LOG_MESSAGE))))) {\n if (pa.is_unread) {\n ga(ma, oa, ra, pa.timestamp);\n }\n ;\n }\n \n ;\n ;\n }\n \n ;\n ;\n });\n };\n;\n function ga(ma, na, oa, pa) {\n if (ma._maxCount[na]) {\n return;\n }\n ;\n ;\n ca(ma, na, function(qa) {\n var ra = ((ma._allReadTimestamp[na] || 0)), sa = ((ma._threadReadTimestamp[oa] || 0)), ta = ((pa || Number.POSITIVE_INFINITY));\n if (((((((ta >= ra)) && ((ta >= sa)))) && !qa[oa]))) {\n qa[oa] = ((pa || 0));\n ba(ma, na, qa);\n ma._threadInformer.updatedUnreadState();\n }\n ;\n ;\n });\n };\n;\n function ha(ma, na, oa, pa) {\n if (ma._maxCount[na]) {\n return;\n }\n ;\n ;\n ca(ma, na, function(qa) {\n if (pa) {\n var ra = ma._threadReadTimestamp[oa];\n if (((!ra || ((ra < pa))))) {\n ma._threadReadTimestamp[oa] = pa;\n }\n ;\n ;\n }\n ;\n ;\n var sa = qa[oa];\n if (((((pa && ((typeof sa == \"number\")))) && ((pa < sa))))) {\n return;\n }\n ;\n ;\n if (((oa in qa))) {\n delete qa[oa];\n ba(ma, na, qa);\n ma._threadInformer.updatedUnreadState();\n }\n ;\n ;\n });\n };\n;\n function ia(ma, na, oa) {\n ma._maxCount[na] = false;\n ba(ma, na, {\n });\n ma._allReadTimestamp[na] = Math.max(((ma._allReadTimestamp[na] || 0)), ((oa || 0)));\n ma._threadInformer.updatedUnreadState();\n };\n;\n function ja(ma, na) {\n return na.map(ma._serverRequests.convertThreadIDIfAvailable.bind(ma._serverRequests));\n };\n;\n function ka(ma, na) {\n v.forEach(function(oa) {\n var pa = da(ma, oa);\n if (!pa) {\n return;\n }\n ;\n ;\n {\n var fin159keys = ((window.top.JSBNG_Replay.forInKeys)((na))), fin159i = (0);\n var qa;\n for (; (fin159i < fin159keys.length); (fin159i++)) {\n ((qa) = (fin159keys[fin159i]));\n {\n var ra = na[qa];\n if (pa[qa]) {\n pa[ra] = pa[qa];\n delete pa[qa];\n }\n ;\n ;\n };\n };\n };\n ;\n ba(ma, oa, pa);\n });\n };\n;\n function la(ma) {\n return s(v, ma);\n };\n;\n g.subscribe(i.DUMP_EVENT, function(ma, na) {\n na.messaging = ((na.messaging || {\n }));\n na.messaging.unread = {\n };\n na.messaging.unread_max_count = {\n };\n var oa = aa._getInstances();\n {\n var fin160keys = ((window.top.JSBNG_Replay.forInKeys)((oa))), fin160i = (0);\n var pa;\n for (; (fin160i < fin160keys.length); (fin160i++)) {\n ((pa) = (fin160keys[fin160i]));\n {\n na.messaging.unread[pa] = {\n };\n na.messaging.unread_max_count[pa] = {\n };\n v.forEach(function(qa) {\n na.messaging.unread[pa][qa] = t({\n }, da(oa[pa], qa));\n na.messaging.unread_max_count[pa][qa] = oa[pa]._maxCount[qa];\n });\n };\n };\n };\n ;\n });\n e.exports = aa;\n});\n__d(\"MercuryChatUtils\", [\"Env\",], function(a, b, c, d, e, f) {\n var g = b(\"Env\"), h = {\n canOpenChatTab: function(i) {\n var j = ((i.is_canonical && !i.is_canonical_user));\n return ((((i.is_subscribed && !j)) && ((i.canonical_fbid != g.user))));\n }\n };\n e.exports = h;\n});\n__d(\"RenderManager\", [\"function-extensions\",\"copyProperties\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"copyProperties\");\n function h(i) {\n this._isDirty = false;\n this._obj = i;\n };\n;\n g(h.prototype, {\n dirty: function() {\n if (!this._isDirty) {\n this._isDirty = true;\n this._doPaint.bind(this).defer();\n }\n ;\n ;\n },\n _doPaint: function() {\n this._isDirty = false;\n this._obj.paint();\n }\n });\n e.exports = h;\n});\n__d(\"CounterDisplay\", [\"Arbiter\",\"JSBNG__CSS\",\"DOM\",\"RenderManager\",\"Run\",\"$\",\"copyProperties\",\"removeFromArray\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"JSBNG__CSS\"), i = b(\"DOM\"), j = b(\"RenderManager\"), k = b(\"Run\"), l = b(\"$\"), m = b(\"copyProperties\"), n = b(\"removeFromArray\");\n function o(p, q, r, s, t, u) {\n m(this, {\n _name: p,\n _valueNode: l(q),\n _wrapperNode: ((l(r) || null)),\n _statusClass: t,\n _rm: new j(this),\n _arbiterSubscription: null,\n _count: 0\n });\n var v = this._valueNode.firstChild;\n if (v) {\n var w = parseInt(v.nodeValue, 10);\n if (!isNaN(w)) {\n this._count = w;\n }\n ;\n ;\n }\n ;\n ;\n this._statusNode = ((s ? l(s) : null));\n this._subscribeAll();\n o.instances.push(this);\n if (!u) {\n k.onLeave(this._destroy.bind(this), true);\n }\n ;\n ;\n };\n;\n m(o, {\n EVENT_TYPE_ADJUST: \"CounterDisplay/adjust\",\n EVENT_TYPE_UPDATE: \"CounterDisplay/update\",\n instances: [],\n adjustCount: function(p, q) {\n g.inform(((((o.EVENT_TYPE_ADJUST + \"/\")) + p)), q);\n },\n setCount: function(p, q) {\n g.inform(((((o.EVENT_TYPE_UPDATE + \"/\")) + p)), q);\n }\n });\n m(o.prototype, {\n _destroy: function() {\n delete this._valueNode;\n delete this._wrapperNode;\n if (this._arbiterSubscription) {\n this._arbiterSubscription.unsubscribe();\n delete this._arbiterSubscription;\n }\n ;\n ;\n n(o.instances, this);\n },\n adjustCount: function(p) {\n this._count = Math.max(0, ((this._count + p)));\n this._rm.dirty();\n return this;\n },\n setCount: function(p) {\n this._count = Math.max(0, p);\n this._rm.dirty();\n return this;\n },\n paint: function() {\n i.setContent(this._valueNode, this._count);\n this._toggleNodes();\n },\n _toggleNodes: function() {\n if (this._wrapperNode) {\n h.conditionClass(this._wrapperNode, \"hidden_elem\", ((this._count <= 0)));\n }\n ;\n ;\n if (((this._statusClass && this._statusNode))) {\n h.conditionClass(this._statusNode, this._statusClass, ((this._count > 0)));\n }\n ;\n ;\n },\n _subscribeAll: function() {\n var p = [((((o.EVENT_TYPE_ADJUST + \"/\")) + this._name)),((((o.EVENT_TYPE_UPDATE + \"/\")) + this._name)),];\n this._arbiterSubscription = g.subscribe(p, this._onInform.bind(this), g.SUBSCRIBE_NEW);\n },\n _onInform: function(p, q) {\n q = parseInt(q);\n if (isNaN(q)) {\n return;\n }\n ;\n ;\n if (((p.indexOf(o.EVENT_TYPE_ADJUST) != -1))) {\n this.adjustCount(q);\n }\n else if (((p.indexOf(o.EVENT_TYPE_UPDATE) != -1))) {\n this.setCount(q);\n }\n else return\n \n ;\n return;\n }\n });\n e.exports = o;\n});"); |
| // 8945 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o108,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yu/r/jXjHtkFmkD1.js",o114); |
| // undefined |
| o108 = null; |
| // undefined |
| o114 = null; |
| // 8953 |
| o84.readyState = 2; |
| // 8951 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o96,o115); |
| // undefined |
| o115 = null; |
| // 8957 |
| o84.readyState = 3; |
| // 8955 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o96,o116); |
| // undefined |
| o116 = null; |
| // 8961 |
| o84.readyState = 4; |
| // undefined |
| o84 = null; |
| // 9013 |
| o119.toString = f81632121_1344; |
| // undefined |
| o119 = null; |
| // 8959 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o96,o117); |
| // undefined |
| o96 = null; |
| // undefined |
| o117 = null; |
| // 9095 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"OSd/n\",]);\n}\n;\n__d(\"MercuryMessageSourceTags\", [], function(a, b, c, d, e, f) {\n e.exports = {\n CHAT: \"source:chat\",\n MOBILE: \"source:mobile\",\n MESSENGER: \"source:messenger\",\n EMAIL: \"source:email\"\n };\n});\n__d(\"MercuryTimePassed\", [], function(a, b, c, d, e, f) {\n e.exports = {\n TODAY: 0,\n WEEK_AGO: 1,\n CURRENT_YEAR: 3,\n OTHER_YEAR: 4,\n MONTH_AGO: 2\n };\n});\n__d(\"MessagingEvent\", [], function(a, b, c, d, e, f) {\n e.exports = {\n UNSUBSCRIBE: \"unsubscribe\",\n DELIVERY_RECEIPT: \"delivery_receipt\",\n REPORT_SPAM_MESSAGES: \"report_spam_messages\",\n DELIVER_FAST_PAST: \"deliver_fast_path\",\n DELETE_MESSAGES: \"delete_messages\",\n READ_RECEIPT: \"read_receipt\",\n SENT_PUSH: \"sent_push\",\n READ: \"read\",\n CHANGE_MUTE_SETTINGS: \"change_mute_settings\",\n ERROR: \"error\",\n UNMARK_SPAM: \"unmark_spam\",\n UNREAD: \"unread\",\n DELIVER_LOG: \"deliver_log\",\n DELIVER: \"deliver\",\n READ_ALL: \"read_all\",\n TAG: \"tag\",\n MORE_THREADS: \"more_threads\",\n DELETE: \"delete\",\n REPORT_SPAM: \"report_spam\",\n SUBSCRIBE: \"subscribe\"\n };\n});\n__d(\"AvailableListConstants\", [], function(a, b, c, d, e, f) {\n var g = {\n ON_AVAILABILITY_CHANGED: \"buddylist/availability-changed\",\n ON_UPDATE_ERROR: \"buddylist/update-error\",\n ON_UPDATED: \"buddylist/updated\",\n ON_CHAT_NOTIFICATION_CHANGED: \"chat-notification-changed\",\n OFFLINE: 0,\n IDLE: 1,\n ACTIVE: 2,\n MOBILE: 3,\n LEGACY_OVERLAY_OFFLINE: -1,\n LEGACY_OVERLAY_ONLINE: 0,\n LEGACY_OVERLAY_IDLE: 1,\n legacyStatusMap: {\n 0: 2,\n 1: 1,\n \"-1\": 0,\n 2: 3\n },\n reverseLegacyStatusMap: {\n 0: -1,\n 1: 1,\n 2: 0,\n 3: 2\n }\n };\n a.AvailableListConstants = e.exports = g;\n});\n__d(\"RangedCallbackManager\", [\"CallbackManagerController\",\"copyProperties\",\"createObjectFrom\",], function(a, b, c, d, e, f) {\n var g = b(\"CallbackManagerController\"), h = b(\"copyProperties\"), i = b(\"createObjectFrom\"), j = function(k, l, m) {\n this._resources = [];\n this._reachedEndOfArray = false;\n this._error = false;\n this._existingIDs = {\n };\n this._controller = new g(this._constructCallbackArg.bind(this));\n this._getValueHandler = k;\n this._compareValuesHandler = l;\n this._skipOnStrictHandler = m;\n };\n h(j.prototype, {\n executeOrEnqueue: function(k, l, m, n) {\n return this._controller.executeOrEnqueue({\n start: k,\n limit: l\n }, m, {\n strict: !!n\n });\n },\n unsubscribe: function(k) {\n this._controller.unsubscribe(k);\n },\n getUnavailableResources: function(k) {\n var l = this._controller.getRequest(k), m = [];\n if ((l && !this._reachedEndOfArray)) {\n var n = l.request, o = this._filterForStrictResults(l.options), p = (n.start + n.limit);\n for (var q = o.length; (q < p); q++) {\n m.push(q);;\n };\n }\n ;\n return m;\n },\n addResources: function(k) {\n k.forEach(function(l) {\n if (!this._existingIDs[l]) {\n this._existingIDs[l] = true;\n this._resources.push(l);\n this._error = null;\n }\n ;\n }.bind(this));\n this.resortResources();\n this._controller.runPossibleCallbacks();\n },\n addResourcesWithoutSorting: function(k, l) {\n var m = this._resources.slice(0, l);\n m = m.concat(k);\n m = m.concat(this._resources.slice(l));\n this._resources = m;\n h(this._existingIDs, i(k, true));\n this._error = null;\n this._controller.runPossibleCallbacks();\n },\n removeResources: function(k) {\n k.forEach(function(l) {\n if (this._existingIDs[l]) {\n this._existingIDs[l] = false;\n var m = this._resources.indexOf(l);\n if ((m != -1)) {\n this._resources.splice(m, 1);\n };\n }\n ;\n }.bind(this));\n },\n removeAllResources: function() {\n this._resources = [];\n this._existingIDs = {\n };\n },\n resortResources: function() {\n this._resources = this._resources.sort(function(k, l) {\n return this._compareValuesHandler(this._getValueHandler(k), this._getValueHandler(l));\n }.bind(this));\n },\n setReachedEndOfArray: function() {\n if (!this._reachedEndOfArray) {\n this._reachedEndOfArray = true;\n this._error = null;\n this._controller.runPossibleCallbacks();\n }\n ;\n },\n hasReachedEndOfArray: function() {\n return this._reachedEndOfArray;\n },\n setError: function(k) {\n if ((this._error !== k)) {\n this._error = k;\n this._controller.runPossibleCallbacks();\n }\n ;\n },\n getError: function(k, l, m) {\n var n = this._filterForStrictResults({\n strict: m\n });\n return (((k + l) > n.length) ? this._error : null);\n },\n hasResource: function(k) {\n return this._existingIDs[k];\n },\n getResourceAtIndex: function(k) {\n return this._resources[k];\n },\n getAllResources: function() {\n return this._resources.concat();\n },\n getCurrentArraySize: function() {\n return this._resources.length;\n },\n _filterForStrictResults: function(k) {\n var l = this._resources;\n if (((k && k.strict) && this._skipOnStrictHandler)) {\n l = l.filter(this._skipOnStrictHandler);\n };\n return l;\n },\n _constructCallbackArg: function(k, l) {\n var m = this._filterForStrictResults(l);\n if (((!this._reachedEndOfArray && !this._error) && ((k.start + k.limit) > m.length))) {\n return false;\n }\n else {\n var n = m.slice(k.start, (k.start + k.limit)), o = (((k.start + k.limit) > m.length) ? this._error : null);\n return [n,o,];\n }\n ;\n },\n getElementsUntil: function(k) {\n var l = [];\n for (var m = 0; (m < this._resources.length); m++) {\n var n = this._getValueHandler(this._resources[m]);\n if ((this._compareValuesHandler(n, k) > 0)) {\n break;\n };\n l.push(this._resources[m]);\n };\n return l;\n }\n });\n e.exports = j;\n});\n__d(\"formatDate\", [\"DateFormatConfig\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"DateFormatConfig\"), h = b(\"tx\"), i = [\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\",], j = [\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\",], k = [\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",], l = [\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\",];\n function m(o, p) {\n p = (p || 2);\n o = (\"\" + o);\n while ((o.length < p)) {\n o = (\"0\" + o);;\n };\n return o;\n };\n function n(o, p, q, r) {\n if (!p) {\n return \"\"\n };\n var s = [], t = null, u = null, v = (q ? \"getUTC\" : \"get\"), w = o[(v + \"Date\")](), x = o[(v + \"Day\")](), y = o[(v + \"Month\")](), z = o[(v + \"FullYear\")](), aa = o[(v + \"Hours\")](), ba = o[(v + \"Minutes\")](), ca = o[(v + \"Seconds\")](), da = o[(v + \"Milliseconds\")]();\n for (var ea = 0; (ea < p.length); ea++) {\n u = p.charAt(ea);\n if ((u == \"\\\\\")) {\n ea++;\n s.push(p.charAt(ea));\n continue;\n }\n ;\n switch (u) {\n case \"d\":\n t = m(w);\n break;\n case \"D\":\n t = i[x];\n break;\n case \"j\":\n t = w;\n break;\n case \"l\":\n t = j[x];\n break;\n case \"F\":\n \n case \"f\":\n t = l[y];\n break;\n case \"m\":\n t = m((y + 1));\n break;\n case \"M\":\n t = k[y];\n break;\n case \"n\":\n t = (y + 1);\n break;\n case \"Y\":\n t = z;\n break;\n case \"y\":\n t = ((\"\" + z)).slice(2);\n break;\n case \"a\":\n t = ((aa < 12) ? \"am\" : \"pm\");\n break;\n case \"A\":\n t = ((aa < 12) ? \"AM\" : \"PM\");\n break;\n case \"g\":\n t = ((((aa == 0) || (aa == 12))) ? 12 : (aa % 12));\n break;\n case \"G\":\n t = aa;\n break;\n case \"h\":\n t = ((((aa == 0) || (aa == 12))) ? 12 : m((aa % 12)));\n break;\n case \"H\":\n t = m(aa);\n break;\n case \"i\":\n t = m(ba);\n break;\n case \"s\":\n t = m(ca);\n break;\n case \"S\":\n if (r) {\n t = g.ordinalSuffixes[w];\n }\n else t = m(da, 3);\n ;\n break;\n default:\n t = u;\n };\n s.push(t);\n };\n return s.join(\"\");\n };\n e.exports = n;\n});\n__d(\"MercuryMessages\", [\"Arbiter\",\"AsyncRequest\",\"Env\",\"JSLogger\",\"KeyedCallbackManager\",\"MercuryActionTypeConstants\",\"MercuryActionStatus\",\"MercuryAssert\",\"MercuryAttachmentType\",\"MercuryConfig\",\"MercuryGenericConstants\",\"MercuryIDs\",\"MercuryLogMessageType\",\"MercuryMessageClientState\",\"MercuryMessageSourceTags\",\"MercuryPayloadSource\",\"MercurySingletonMixin\",\"MercurySourceType\",\"MercuryTimePassed\",\"MercuryMessageIDs\",\"MercuryParticipants\",\"PresenceUtil\",\"RangedCallbackManager\",\"MercuryServerRequests\",\"MercuryThreadInformer\",\"MercuryThreads\",\"copyProperties\",\"debounce\",\"formatDate\",\"randomInt\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncRequest\"), i = b(\"Env\"), j = b(\"JSLogger\"), k = b(\"KeyedCallbackManager\"), l = b(\"MercuryActionTypeConstants\"), m = b(\"MercuryActionStatus\"), n = b(\"MercuryAssert\"), o = b(\"MercuryAttachmentType\"), p = b(\"MercuryConfig\"), q = b(\"MercuryGenericConstants\"), r = b(\"MercuryIDs\"), s = b(\"MercuryLogMessageType\"), t = b(\"MercuryMessageClientState\"), u = b(\"MercuryMessageSourceTags\"), v = b(\"MercuryPayloadSource\"), w = b(\"MercurySingletonMixin\"), x = b(\"MercurySourceType\"), y = b(\"MercuryTimePassed\"), z = b(\"MercuryMessageIDs\"), aa = b(\"MercuryParticipants\"), ba = b(\"PresenceUtil\"), ca = b(\"RangedCallbackManager\"), da = b(\"MercuryServerRequests\"), ea = b(\"MercuryThreadInformer\"), fa = b(\"MercuryThreads\"), ga = b(\"copyProperties\"), ha = b(\"debounce\"), ia = b(\"formatDate\"), ja = b(\"randomInt\"), ka = b(\"tx\");\n function la(cb, db) {\n var eb = db;\n if (cb._localIdsMap[db]) {\n eb = cb._localIdsMap[db];\n };\n return cb._messages[eb];\n };\n var ma = new k();\n function na(cb, db) {\n if ((db.status === undefined)) {\n db.status = m.UNSENT;\n };\n db.timestamp_absolute = \"Today\";\n db.message_id = (db.message_id || cb.generateNewClientMessageID(db.timestamp));\n var eb = aa.getIDForUser(cb._fbid);\n db.specific_to_list = (db.specific_to_list || []);\n if ((db.specific_to_list.length && (db.specific_to_list.indexOf(eb) === -1))) {\n db.specific_to_list.push(eb);\n };\n if (!db.thread_id) {\n if ((db.specific_to_list.length == 1)) {\n db.thread_id = (\"user:\" + cb._fbid);\n }\n else if ((db.specific_to_list.length == 2)) {\n var fb = ((db.specific_to_list[0] == eb) ? db.specific_to_list[1] : db.specific_to_list[0]);\n if ((r.tokenize(fb).type == \"email\")) {\n db.thread_id = q.PENDING_THREAD_ID;\n }\n else db.thread_id = cb._threads.getThreadIDForParticipant(fb);\n ;\n }\n \n ;\n db.thread_id = (db.thread_id || (\"root:\" + db.message_id));\n }\n ;\n if (!db.specific_to_list.length) {\n var gb = cb._serverRequests.tokenizeThreadID(db.thread_id);\n if ((gb.type == \"user\")) {\n db.specific_to_list = [(\"fbid:\" + gb.value),eb,];\n };\n }\n ;\n };\n function oa(cb, db, eb, fb) {\n var gb = (ya(eb) ? [u.CHAT,] : []), hb = Date.now(), ib = ia(new Date(hb), (p[\"24h_times\"] ? \"H:i\" : \"g:ia\")), jb = {\n action_type: db,\n thread_id: fb,\n author: aa.getIDForUser(cb._fbid),\n author_email: null,\n coordinates: null,\n timestamp: hb,\n timestamp_absolute: (new Date(hb)).toLocaleDateString(),\n timestamp_relative: ib,\n timestamp_time_passed: y.TODAY,\n is_unread: false,\n is_cleared: false,\n is_forward: false,\n is_filtered_content: false,\n spoof_warning: false,\n source: eb,\n source_tags: gb\n };\n return jb;\n };\n function pa(cb) {\n switch (cb) {\n case v.UNKNOWN:\n \n case v.SERVER_INITIAL_DATA:\n \n case v.SERVER_FETCH_THREAD_INFO:\n \n case v.SERVER_THREAD_SYNC:\n return true;\n };\n return false;\n };\n function qa(cb) {\n return (cb && (cb.substr(0, 6) === \"server\"));\n };\n function ra(cb, db) {\n if (!cb._threadsToMessages[db]) {\n cb._threadsToMessages[db] = new ca(function(eb) {\n return la(cb, eb).timestamp;\n }, function(eb, fb) {\n return (fb - eb);\n });\n };\n return cb._threadsToMessages[db];\n };\n g.subscribe(j.DUMP_EVENT, function(cb, db) {\n var eb = {\n }, fb = {\n }, gb = ta._getInstances();\n for (var hb in gb) {\n eb[hb] = {\n };\n for (var ib in gb[hb]._messages) {\n var jb = gb[hb]._messages[ib];\n if ((Object.keys(jb).length === 0)) {\n continue;\n };\n var kb = jb.thread_id;\n eb[hb][kb] = (eb[hb][kb] || {\n });\n eb[hb][kb][jb.message_id] = {\n action_type: jb.action_type,\n author: jb.author,\n is_unread: jb.is_unread,\n timestamp: jb.timestamp\n };\n };\n fb[hb] = ga({\n }, gb[hb]._localIdsMap);\n };\n db.messaging = (db.messaging || {\n });\n db.messaging.local_message_ids = fb;\n db.messaging.messages = eb;\n });\n function sa(cb, db, eb) {\n db.forEach(function(fb) {\n var gb = ra(cb, fb);\n gb.setReachedEndOfArray();\n cb._threadInformer.reorderedMessages(fb, eb);\n });\n };\n function ta(cb) {\n this._fbid = cb;\n this._serverRequests = da.getForFBID(this._fbid);\n this._threadInformer = ea.getForFBID(this._fbid);\n this._threads = fa.getForFBID(this._fbid);\n this._failedHistoryFetchThreads = {\n };\n this._threadsToMessages = {\n };\n this._titanMessagesCount = {\n };\n this._localTitanMessagesCount = {\n };\n this._messages = {\n };\n this._attachmentData = {\n };\n this._messagesNeedingAttachmentData = {\n };\n this._localIdsMap = {\n };\n this._serverRequests.subscribe(\"update-messages\", function(db, eb) {\n var fb = ((eb.actions || [])).filter(function(hb) {\n var ib = hb.action_type;\n return (((hb.is_forward || hb.thread_id)) && (((((((ib == l.LOG_MESSAGE) || (ib == l.USER_GENERATED_MESSAGE)) || (ib == l.SEND_MESSAGE)) || (ib == l.CLEAR_CHAT)) || (ib == l.DELETE_THREAD)) || (ib == l.DELETE_MESSAGES))));\n }), gb = pa(eb.payload_source);\n if (qa(eb.payload_source)) {\n fb.forEach(function(hb) {\n if (!hb.is_forward) {\n var ib = this._threads.getThreadMetaNow(hb.thread_id);\n if (ib) {\n hb.is_cleared = (hb.timestamp < ib.chat_clear_time);\n };\n }\n ;\n }.bind(this));\n };\n this.handleUpdates(fb, gb, eb.payload_source, eb.from_client);\n if (eb.end_of_history) {\n sa(this, eb.end_of_history, eb.payload_source);\n };\n }.bind(this));\n };\n ga(ta.prototype, {\n getMessagesFromIDs: function(cb) {\n return ((cb || [])).map(la.curry(this)).filter(function(db) {\n return db;\n });\n },\n hasLoadedNMessages: function(cb, db) {\n var eb = ra(this, cb);\n return (eb.hasReachedEndOfArray() || (eb.getCurrentArraySize() >= db));\n },\n hasLoadedExactlyNMessages: function(cb, db) {\n var eb = ra(this, cb);\n return (eb.getCurrentArraySize() == db);\n },\n getThreadMessagesRange: function(cb, db, eb, fb, gb, hb) {\n var ib = ra(this, cb), jb = function(pb) {\n fb(ua(this, pb));\n }.bind(this), kb = ib.executeOrEnqueue(db, eb, jb), lb = ib.getUnavailableResources(kb), mb = this._failedHistoryFetchThreads[cb];\n if ((lb.length && !mb)) {\n var nb = (((this._titanMessagesCount[cb] || 0)) - ((this._localTitanMessagesCount[cb] || 0))), ob = (lb.length + ((this._localTitanMessagesCount[cb] || 0)));\n this._serverRequests.fetchThreadMessages(cb, nb, ob, gb, hb);\n }\n else this._failedHistoryFetchThreads[cb] = false;\n ;\n return kb;\n },\n getThreadMessagesSinceTimestamp: function(cb, db) {\n var eb = ra(this, cb), fb = eb.getElementsUntil(db);\n return ua(this, fb);\n },\n hasLoadedAllMessages: function(cb) {\n return ra(this, cb).hasReachedEndOfArray();\n },\n getCurrentlyLoadedMessages: function(cb) {\n var db = ra(this, cb).getAllResources();\n return ua(this, db);\n },\n unsubscribe: function(cb, db) {\n n.isThreadID(db);\n var eb = ra(this, db);\n eb.unsubscribe(cb);\n },\n addAttachmentData: function(cb, db, eb) {\n var fb = la(this, cb);\n if (fb) {\n var gb = fb.attachments.indexOf(db);\n if ((gb != -1)) {\n fb.attachments[gb] = eb;\n this._threadInformer.updatedMessage(fb.thread_id, fb.message_id, \"attach\");\n }\n ;\n }\n else {\n if (!this._attachmentData[cb]) {\n this._attachmentData[cb] = [];\n };\n this._attachmentData[cb].push({\n attach_key: db,\n data: eb\n });\n }\n ;\n },\n handleUpdates: function(cb, db, eb, fb) {\n var gb, hb = {\n }, ib = {\n };\n for (var jb = 0; (jb < cb.length); jb++) {\n var kb = cb[jb];\n if ((kb.is_forward || (eb == v.SERVER_SEARCH))) {\n if (!this._messages[kb.message_id]) {\n this._messages[kb.message_id] = kb;\n za(this, kb);\n }\n ;\n continue;\n }\n ;\n if ((kb.client_state === t.SEND_TO_SERVER)) {\n this._messages[kb.message_id] = kb;\n za(this, kb);\n continue;\n }\n ;\n var lb = kb.action_type;\n if ((lb == l.SEND_MESSAGE)) {\n var mb = kb.client_message_id;\n if (((mb && this._localIdsMap[mb]) && kb.status)) {\n if ((kb.status == m.UNCONFIRMED)) {\n if (!ib[kb.thread_id]) {\n ib[kb.thread_id] = [];\n };\n ib[kb.thread_id].push(kb.client_message_id);\n }\n else if (!hb[kb.thread_id]) {\n hb[kb.thread_id] = [];\n }\n ;\n var nb = la(this, kb.client_message_id), ob = nb.status;\n nb.status = kb.status;\n if (((kb.status === m.SUCCESS) || kb.error_data)) {\n nb.error_data = kb.error_data;\n };\n if ((kb.status == m.SUCCESS)) {\n this.updateLocalMessage(kb, eb);\n if ((kb.client_thread_id == q.PENDING_THREAD_ID)) {\n nb.thread_id = kb.thread_id;\n hb[kb.thread_id].push(nb.message_id);\n ma.setResource(nb.message_id, nb.thread_id);\n }\n ;\n }\n ;\n if ((((((typeof ob != \"undefined\") || (kb.status == m.FAILED_UNKNOWN_REASON)) || (kb.status == m.UNABLE_TO_CONFIRM)) || (kb.status == m.SUCCESS)) || (kb.status == m.ERROR))) {\n this._threadInformer.updatedMessage(kb.thread_id, la(this, kb.client_message_id).message_id, eb);\n };\n }\n ;\n continue;\n }\n else if ((lb == l.DELETE_THREAD)) {\n ra(this, kb.thread_id).removeAllResources();\n continue;\n }\n else if ((lb == l.DELETE_MESSAGES)) {\n var pb = kb.message_ids.map(function(wb) {\n return la(this, wb).message_id;\n }.bind(this));\n gb = ra(this, kb.thread_id);\n gb.removeResources(pb);\n this._threadInformer.reorderedMessages(kb.thread_id, eb);\n continue;\n }\n else if ((lb == l.LOG_MESSAGE)) {\n if ((kb.log_message_type == s.SERVER_ERROR)) {\n this._failedHistoryFetchThreads[kb.thread_id] = true;\n };\n }\n else if ((lb == l.CLEAR_CHAT)) {\n var qb = ra(this, kb.thread_id).getAllResources();\n qb.map(la.curry(this)).forEach(function(wb) {\n wb.is_cleared = true;\n });\n continue;\n }\n \n \n \n \n ;\n var rb = la(this, kb.message_id);\n if ((((kb.threading_id && this._localIdsMap[kb.threading_id])) || ((rb && !rb.is_forward)))) {\n continue;\n };\n if (!hb[kb.thread_id]) {\n hb[kb.thread_id] = [];\n };\n hb[kb.thread_id].push(kb.message_id);\n this._messages[kb.message_id] = kb;\n za(this, kb);\n if ((kb.threading_id && (kb.threading_id != kb.message_id))) {\n z.addServerID(kb.threading_id, kb.message_id);\n };\n if (!db) {\n this._threadInformer.receivedMessage(kb);\n };\n };\n for (var sb in hb) {\n gb = ra(this, sb);\n var tb = gb.getAllResources(), ub = tb.filter(function(wb) {\n var xb = this._messages[wb];\n return ((xb.action_type == l.LOG_MESSAGE) && (xb.log_message_type == s.SERVER_ERROR));\n }.bind(this));\n gb.removeResources(ub);\n va(this, sb, hb[sb]);\n if (fb) {\n wa(this, sb, hb[sb]);\n };\n if (db) {\n gb.addResources(hb[sb]);\n this._threadInformer.reorderedMessages(sb, eb);\n }\n else gb.addResourcesWithoutSorting(hb[sb].reverse(), 0);\n ;\n this._threadInformer.updatedThread(sb);\n };\n var vb = Object.keys(ib);\n if (vb.length) {\n this._serverRequests.requestMessageConfirmation(ib);\n };\n },\n sendMessage: function(cb, db, eb) {\n db = (db || Function.prototype);\n na(this, cb);\n this._localIdsMap[cb.message_id] = cb.message_id;\n if ((cb.thread_id == (\"root:\" + cb.message_id))) {\n ra(this, cb.thread_id).setReachedEndOfArray();\n };\n this._serverRequests.sendNewMessage(cb, eb);\n if ((cb.thread_id == q.PENDING_THREAD_ID)) {\n this._messages[cb.message_id] = cb;\n return ma.executeOrEnqueue(cb.message_id, db);\n }\n else db(cb.thread_id);\n ;\n },\n isFirstMessage: function(cb) {\n var db = ra(this, cb.thread_id);\n if ((db.getCurrentArraySize() === 0)) {\n return false\n };\n var eb = db.getResourceAtIndex((db.getCurrentArraySize() - 1)), fb = la(this, eb).message_id, gb = la(this, cb.message_id).message_id;\n return (db.hasReachedEndOfArray() && (fb == gb));\n },\n unsubscribeSend: function(cb) {\n ma.unsubscribe(cb);\n },\n resendMessage: function(cb, db) {\n var eb = ga({\n }, cb);\n eb.status = m.RESENDING;\n eb.timestamp = Date.now();\n eb.message_id = cb.message_id;\n this._messages[cb.message_id] = eb;\n var fb = ra(this, cb.thread_id);\n fb.resortResources([cb.message_id,]);\n this.sendMessage(eb, null, db);\n this._threadInformer.reorderedMessages(cb.thread_id, v.CLIENT_SEND_MESSAGE);\n },\n deleteMessages: function(cb, db) {\n if (db.length) {\n var eb = ra(this, cb), fb = ((eb.getCurrentArraySize() == db.length) && eb.hasReachedEndOfArray());\n this._serverRequests.deleteMessages(cb, db, fb);\n }\n ;\n },\n markMessagesSpam: function(cb, db) {\n if (db.length) {\n var eb = ra(this, cb), fb = ((eb.getCurrentArraySize() == db.length) && eb.hasReachedEndOfArray());\n if (fb) {\n this._serverRequests.markThreadSpam(cb);\n }\n else this._serverRequests.markMessagesSpam(cb, db);\n ;\n }\n ;\n },\n updateLocalMessage: function(cb, db) {\n var eb = cb.message_id, fb = cb.client_message_id;\n this._localIdsMap[fb] = eb;\n this._messages[eb] = this._messages[fb];\n z.addServerID(fb, eb);\n this._messages[fb] = {\n };\n var gb = la(this, fb);\n if (cb.timestamp) {\n gb.timestamp = cb.timestamp;\n };\n if ((cb.attachments && cb.attachments.length)) {\n gb.raw_attachments = null;\n gb.attachments = cb.attachments;\n za(this, gb, eb);\n }\n ;\n if (cb.log_message_data) {\n gb.log_message_data = cb.log_message_data;\n };\n if (xa(gb)) {\n this._localTitanMessagesCount[gb.thread_id]--;\n };\n },\n constructUserGeneratedMessageObject: function(cb, db, eb, fb) {\n var gb = oa(this, l.USER_GENERATED_MESSAGE, db, eb);\n gb.body = cb;\n gb.has_attachment = false;\n gb.html_body = false;\n gb.attachments = [];\n gb.specific_to_list = (fb || []);\n return gb;\n },\n constructLogMessageObject: function(cb, db, eb, fb) {\n var gb = oa(this, l.LOG_MESSAGE, cb, db);\n gb.log_message_type = eb;\n gb.log_message_data = fb;\n return gb;\n },\n generateNewClientMessageID: function(cb) {\n var db = ((((cb + \":\") + ((ja(0, 4294967295) + 1))) + \"-\") + ba.getSessionID());\n return ((\"\\u003C\" + db) + \"@mail.projektitan.com\\u003E\");\n },\n getNumberLocalMessages: function(cb) {\n return (this._localTitanMessagesCount[cb] || 0);\n }\n });\n ga(ta, w, {\n addAttachmentData: function(cb, db, eb, fb) {\n fb = (fb || i.user);\n ta.getForFBID(fb).addAttachmentData(cb, db, eb);\n }\n });\n function ua(cb, db) {\n var eb = db.map(la.curry(cb));\n return eb.reverse();\n };\n function va(cb, db, eb) {\n var fb = eb.filter(function(gb) {\n return xa(la(cb, gb));\n });\n if (!cb._titanMessagesCount[db]) {\n cb._titanMessagesCount[db] = 0;\n };\n cb._titanMessagesCount[db] += fb.length;\n };\n function wa(cb, db, eb) {\n var fb = eb.filter(function(gb) {\n return xa(la(cb, gb));\n });\n if (!cb._localTitanMessagesCount[db]) {\n cb._localTitanMessagesCount[db] = 0;\n };\n cb._localTitanMessagesCount[db] += fb.length;\n };\n function xa(cb) {\n var db = cb.action_type;\n if ((db == l.USER_GENERATED_MESSAGE)) {\n return true\n };\n switch (cb.log_message_type) {\n case s.SUBSCRIBE:\n \n case s.UNSUBSCRIBE:\n \n case s.SERVER_ERROR:\n \n case s.LIVE_LISTEN:\n return false;\n default:\n return true;\n };\n };\n function ya(cb) {\n switch (cb) {\n case x.CHAT_WEB:\n \n case x.CHAT_JABBER:\n \n case x.CHAT_IPHONE:\n \n case x.CHAT_MEEBO:\n \n case x.CHAT_ORCA:\n \n case x.CHAT_TEST:\n \n case x.CHAT:\n \n case x.DESKTOP:\n return true;\n default:\n return false;\n };\n };\n function za(cb, db, eb) {\n eb = (eb || db.message_id);\n var fb = cb._attachmentData[eb];\n if (fb) {\n fb.forEach(function(gb) {\n var hb = db.attachments.indexOf(gb.attach_key);\n if ((hb !== -1)) {\n db.attachments[hb] = gb.data;\n };\n });\n delete cb._attachmentData[eb];\n }\n else if ((!db.is_forward && ab(cb, db))) {\n cb._messagesNeedingAttachmentData[eb] = true;\n bb(cb);\n }\n \n ;\n };\n function ab(cb, db) {\n if ((!db || !db.attachments)) {\n return false\n };\n for (var eb = 0; (eb < db.attachments.length); eb++) {\n var fb = db.attachments[eb];\n if (((typeof fb === \"string\") && (fb.indexOf(o.SHARE) === 0))) {\n return true\n };\n };\n var gb = (db.forward_message_ids || []);\n for (eb = 0; (eb < gb.length); eb++) {\n var hb = la(cb, gb[eb]);\n if (ab(cb, hb)) {\n return true\n };\n };\n return false;\n };\n var bb = ha(function(cb) {\n var db = {\n };\n for (var eb in cb._messagesNeedingAttachmentData) {\n var fb = la(cb, eb);\n if (ab(cb, fb)) {\n db[eb] = true;\n };\n };\n var gb = Object.keys(db);\n if (gb.length) {\n new h(\"/ajax/mercury/attachments/fetch_shares.php\").setData({\n message_ids: gb\n }).setAllowCrossPageTransition(true).send();\n };\n cb._messagesNeedingAttachmentData = {\n };\n }, 0, this, true);\n e.exports = ta;\n});\n__d(\"ChatOpenTab\", [\"Arbiter\",\"Banzai\",\"Bootloader\",\"ChatVisibility\",\"Event\",\"MercuryIDs\",\"MercuryMessages\",\"MercuryServerRequests\",\"MercuryThreads\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Banzai\"), i = b(\"Bootloader\"), j = b(\"ChatVisibility\"), k = b(\"Event\"), l = b(\"MercuryIDs\"), m = b(\"MercuryMessages\").get(), n = b(\"MercuryServerRequests\").get(), o = b(\"MercuryThreads\").get(), p = \"messaging_tracking\";\n function q(u) {\n o.getThreadMeta(u, function() {\n g.inform(\"chat/open-tab\", {\n thread_id: u\n });\n });\n };\n function r(u, v, w, x) {\n k.listen(u, \"click\", function(y) {\n if (x(v, w)) {\n return\n };\n return y.kill();\n });\n };\n function s(u, v, w) {\n var x = {\n referrer: (u || \"\"),\n message_thread_id: v,\n message_view: \"chat\",\n timestamp_send: Date.now()\n };\n if ((w !== undefined)) {\n x.message_target_ids = [w,];\n };\n h.post(p, x, {\n delay: 0,\n retry: true\n });\n };\n var t = {\n openEmptyTab: function(u, v) {\n if ((!window.Chat || !j.isOnline())) {\n return true\n };\n i.loadModules([\"ChatTabModel\",], function(w) {\n var x = w.getEmptyTab();\n if (!x) {\n x = (\"root:\" + m.generateNewClientMessageID(Date.now()));\n o.createNewLocalThread(x, []);\n }\n ;\n q(x);\n s(v, x);\n });\n },\n listenOpenEmptyTab: function(u, v) {\n r(u, null, v, t.openEmptyTab);\n },\n openThread: function(u, v) {\n if (l.isValid(u)) {\n q(u);\n }\n else n.getClientThreadID(u, q);\n ;\n s(v, u);\n },\n listenOpenThread: function(u, v, w) {\n r(u, v, w, t.openThread);\n },\n openUserTab: function(u, v) {\n var w = o.getCanonicalThreadToUser(u);\n q(w.thread_id);\n s(v, w.thread_id, u);\n },\n listenOpenUserTab: function(u, v, w) {\n r(u, v, w, t.openUserTab);\n }\n };\n e.exports = t;\n});\n__d(\"SplitImage.react\", [\"React\",\"Image.react\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"Image.react\"), i = b(\"cx\"), j = g.createClass({\n displayName: \"SplitImage\",\n render: function() {\n var k = this.props.size;\n return this.transferPropsTo(g.DOM.div({\n className: \"-cx-PRIVATE-splitImage__root\",\n style: {\n width: k,\n height: k\n }\n }, this.renderImages()));\n },\n renderImages: function() {\n if (!this.props.srcs) {\n return null\n };\n if (!((this.props.srcs instanceof Array))) {\n return (h({\n src: this.props.srcs,\n height: this.props.size,\n width: this.props.size\n }))\n };\n switch (this.props.srcs.length) {\n case 1:\n return (h({\n src: this.props.srcs[0],\n height: this.props.size,\n width: this.props.size\n }));\n case 2:\n return this.renderTwo();\n default:\n return this.renderThree();\n };\n },\n renderTwo: function() {\n var k = Math.floor((this.props.size / 2)), l = -Math.floor((k / 2)), m = (((\"-cx-PRIVATE-splitImage__image\") + ((this.props.border ? (\" \" + \"-cx-PRIVATE-splitImage__borderleft\") : \"\"))));\n return (g.DOM.div(null, g.DOM.div({\n className: \"-cx-PRIVATE-splitImage__image\",\n style: {\n width: k\n }\n }, h({\n src: this.props.srcs[0],\n width: this.props.size,\n height: this.props.size,\n style: {\n marginLeft: l\n }\n })), g.DOM.div({\n className: m,\n style: {\n width: k\n }\n }, h({\n src: this.props.srcs[1],\n width: this.props.size,\n height: this.props.size,\n style: {\n marginLeft: l\n }\n }))));\n },\n renderThree: function() {\n var k = Math.floor(((this.props.size / 3) * 2)), l = -Math.floor((((this.props.size - k)) / 2)), m = Math.floor((this.props.size / 2)), n = (this.props.size - k), o = -Math.floor((((m - n)) / 2)), p = (((\"-cx-PRIVATE-splitImage__image\") + ((this.props.border ? (\" \" + \"-cx-PRIVATE-splitImage__borderright\") : \"\")))), q = (((\"-cx-PRIVATE-splitImage__image\") + ((this.props.border ? (\" \" + \"-cx-PRIVATE-splitImage__borderbottom\") : \"\"))));\n return (g.DOM.div(null, g.DOM.div({\n className: p,\n style: {\n width: k\n }\n }, h({\n src: this.props.srcs[0],\n width: this.props.size,\n height: this.props.size,\n style: {\n marginLeft: l\n }\n })), g.DOM.div({\n className: q,\n style: {\n width: n,\n height: m\n }\n }, h({\n src: this.props.srcs[1],\n width: m,\n height: m,\n style: {\n marginLeft: o\n }\n })), g.DOM.div({\n className: \"-cx-PRIVATE-splitImage__image\",\n style: {\n width: n,\n height: m\n }\n }, h({\n src: this.props.srcs[2],\n width: m,\n height: m,\n style: {\n marginLeft: o\n }\n }))));\n }\n });\n e.exports = j;\n});\n__d(\"loadImage\", [], function(a, b, c, d, e, f) {\n function g(h, i) {\n var j = new Image();\n j.onload = function() {\n i(j.width, j.height, j);\n };\n j.src = h;\n };\n e.exports = g;\n});\n__d(\"PixelzFocus\", [], function(a, b, c, d, e, f) {\n var g = {\n search: function(h, i) {\n var j = 0, k = (h.length - 1);\n while ((j <= k)) {\n var l = (j + Math.floor((((k - j)) / 2))), m = h[l];\n if ((m > i)) {\n k = (l - 1);\n }\n else if ((m < i)) {\n j = (l + 1);\n }\n else return l\n \n ;\n };\n return Math.min(j, k);\n },\n forceSpecificPoint: function(h, i, j) {\n var k = 1e-9, l = (g.search(h, ((i - j) - k)) + 1), m = g.search(h, (i + j));\n return h.slice(l, (m + 1));\n },\n findBiggestSets: function(h, i) {\n var j = [], k = -1;\n for (var l = 0; (l < h.length); ++l) {\n var m = h[l], n = l, o = g.search(h, (m + i)), p = (o - n);\n if ((p > k)) {\n j = [];\n };\n if ((p >= k)) {\n k = p;\n j.push({\n low: n,\n high: o\n });\n }\n ;\n };\n return j;\n },\n getBestSet: function(h, i, j) {\n var k = -1, l = null;\n for (var m = 0; (m < i.length); ++m) {\n var n = i[m], o = h[n.low], p = h[n.high], q = (o + (((p - o)) / 2)), r = Math.min((o - ((q - j))), (((q + j)) - p));\n if ((r > k)) {\n k = r;\n l = n;\n }\n ;\n };\n return l;\n },\n getFocusFromSet: function(h, i) {\n var j = h[i.low], k = h[i.high];\n return (j + (((k - j)) / 2));\n },\n clampFocus: function(h, i) {\n var j = (i / 2), k = (1 - ((i / 2)));\n if ((h < j)) {\n return j\n };\n if ((h > k)) {\n return k\n };\n return h;\n },\n convertFromCenterToCSS: function(h, i) {\n if ((Math.abs((1 - i)) < 0.00001)) {\n return 0\n };\n return (((h - (i / 2))) / ((1 - i)));\n },\n convertFromCSSToCenter: function(h, i) {\n return ((h * ((1 - i))) + (i / 2));\n },\n getVisible: function(h, i) {\n if ((h < i)) {\n return (h / i)\n };\n return (i / h);\n },\n getHidden: function(h, i) {\n return (1 - g.getVisible(h, i));\n },\n focusHorizontally: function(h, i) {\n return (h < i);\n },\n convertVectorFromCenterToCSS: function(h, i, j) {\n var k = g.focusHorizontally(i, j), l;\n if (k) {\n l = (h.x / 100);\n }\n else l = (h.x / 100);\n ;\n var m = g.convertFromCenterToCSS(l, g.getVisible(i, j));\n if (k) {\n return {\n x: m,\n y: 0\n };\n }\n else return {\n x: 0,\n y: m\n }\n ;\n },\n getCropRect: function(h, i, j) {\n var k = g.focusHorizontally(i, j), l = g.getVisible(i, j);\n if (k) {\n var m = (((1 - l)) * h.x);\n return {\n left: m,\n top: 0,\n width: l,\n height: 1\n };\n }\n else {\n var n = (((1 - l)) * h.y);\n return {\n left: 0,\n top: n,\n width: 1,\n height: l\n };\n }\n ;\n }\n };\n e.exports = g;\n});\n__d(\"Pixelz.react\", [\"arrayContains\",\"copyProperties\",\"cx\",\"invariant\",\"loadImage\",\"React\",\"ReactPropTypes\",\"PixelzFocus\",], function(a, b, c, d, e, f) {\n var g = b(\"arrayContains\"), h = b(\"copyProperties\"), i = b(\"cx\"), j = b(\"invariant\"), k = b(\"loadImage\"), l = b(\"React\"), m = b(\"ReactPropTypes\"), n = b(\"PixelzFocus\"), o = l.createClass({\n displayName: \"Pixelz\",\n propTypes: {\n width: m.number,\n height: m.number,\n resizeMode: m.oneOf([\"contain\",\"cover\",\"stretch\",]),\n alt: m.string,\n letterbox: m.bool,\n borderRadius: m.number,\n insetBorderColor: m.string,\n animated: m.bool,\n upscale: m.bool,\n cropRect: function(p, q, r) {\n var s = p[q], t = ((((((\"Invalid prop `\" + q) + \"` supplied to `\") + r) + \"`, expected a rectangle with values normalized \") + \"between 0 and 1\"));\n j((s.left >= 0));\n j((s.top >= 0));\n j((s.width >= 0));\n j((s.height >= 0));\n j(((s.left + s.width) <= 1));\n j(((s.top + s.height) <= 1));\n },\n focus: function(p, q, r) {\n var s = p[q], t = (((((((\"Invalid prop `\" + q) + \"` supplied to `\") + r) + \"`, expected either a {x, y, type} vector where type \") + \"is `css` or `center` or an array of {x, y} vectors. All the vectors \") + \"have with values normalized between 0 and 1\"));\n if (Array.isArray(s)) {\n for (var u = 0; (u < s.length); ++u) {\n j(((s[u].x >= 0) && (s[u].x <= 1)));\n j(((s[u].y >= 0) && (s[u].y <= 1)));\n };\n }\n else {\n if (!s.type) {\n s.type = \"css\";\n };\n j(((s.x >= 0) && (s.x <= 1)));\n j(((s.y >= 0) && (s.y <= 1)));\n j(g([\"center\",\"css\",], s.type));\n }\n ;\n }\n },\n getDefaultProps: function() {\n return {\n resizeMode: \"cover\",\n alt: \"\",\n letterbox: true,\n upscale: true,\n cropRect: {\n width: 1,\n height: 1,\n top: 0,\n left: 0\n },\n focus: {\n x: 25908,\n y: 25913,\n type: \"css\"\n }\n };\n },\n getInitialState: function() {\n return {\n srcDimensions: {\n }\n };\n },\n getSrcDimensions: function() {\n var p = this.props.src, q = this.state.srcDimensions[p];\n if (q) {\n return q\n };\n k(p, function(r, s) {\n var t = {\n };\n t[p] = {\n width: r,\n height: s\n };\n this.setState({\n srcDimensions: t\n });\n }.bind(this));\n return null;\n },\n getCropSrcDimensions: function() {\n var p = this.getSrcDimensions();\n return {\n width: (p.width * this.props.cropRect.width),\n height: (p.height * this.props.cropRect.height)\n };\n },\n getUpscaleCropDimensions: function() {\n var p = this.getCropSrcDimensions(), q = (p.width / p.height), r = (this.props.width / this.props.height);\n if (((this.props.width && this.props.height) && (this.props.resizeMode === \"stretch\"))) {\n return {\n width: this.props.width,\n height: this.props.height\n }\n };\n if ((((!this.props.width && this.props.height)) || ((((this.props.resizeMode === \"contain\")) !== ((q >= r)))))) {\n return {\n width: (this.props.height * q),\n height: this.props.height\n }\n };\n if (this.props.width) {\n return {\n width: this.props.width,\n height: (this.props.width / q)\n }\n };\n return p;\n },\n getCropDimensions: function() {\n var p = this.getUpscaleCropDimensions(), q = this.getCropSrcDimensions();\n if (!this.props.upscale) {\n return {\n width: Math.min(p.width, q.width),\n height: Math.min(p.height, q.height)\n }\n };\n return p;\n },\n getCropAspectRatio: function() {\n var p = this.getCropDimensions();\n return (p.width / p.height);\n },\n getContainerDimensions: function() {\n if (((this.props.letterbox && this.props.width) && this.props.height)) {\n return {\n width: this.props.width,\n height: this.props.height\n }\n };\n return this.getCropDimensions();\n },\n getContainerAspectRatio: function() {\n var p = this.getContainerDimensions();\n return (p.width / p.height);\n },\n getContainerPosition: function() {\n return {\n left: 0,\n top: 0\n };\n },\n getFocus: function() {\n var p = this.props.focus;\n if ((!Array.isArray(p) && (p.type === \"css\"))) {\n return {\n x: p.x,\n y: p.y\n }\n };\n var q = this.getContainerAspectRatio(), r = this.getCropAspectRatio(), s = n.getVisible(q, r), t = n.focusHorizontally(q, r), u;\n if (!Array.isArray(p)) {\n u = n.convertFromCenterToCSS((t ? p.x : p.y), s);\n }\n else {\n var v = p.map(function(y) {\n return (t ? y.x : y.y);\n });\n v.sort();\n var w = n.findBiggestSets(v, s), x = n.getBestSet(v, w, s);\n u = n.getFocusFromSet(v, x);\n }\n ;\n return {\n x: (t ? u : 27903),\n y: (t ? 27910 : u)\n };\n },\n getCropPosition: function() {\n var p = this.getCropDimensions(), q = this.getContainerDimensions(), r = this.getFocus();\n return {\n left: (r.x * ((q.width - p.width))),\n top: (r.y * ((q.height - p.height)))\n };\n },\n getScaleDimensions: function() {\n var p = this.getCropDimensions();\n return {\n width: (p.width / this.props.cropRect.width),\n height: (p.height / this.props.cropRect.height)\n };\n },\n getScalePosition: function() {\n var p = this.getScaleDimensions();\n return {\n left: (-p.width * this.props.cropRect.left),\n top: (-p.height * this.props.cropRect.top)\n };\n },\n getClipCropRectangle: function() {\n var p = this.getContainerDimensions(), q = this.getCropDimensions(), r = this.getContainerPosition(), s = this.getCropPosition(), t = Math.max(r.left, s.left), u = Math.max(r.top, s.top), v = Math.min((r.top + p.height), (s.top + q.height)), w = Math.min((r.left + p.width), (s.left + q.width));\n return {\n left: t,\n top: u,\n width: (w - t),\n height: (v - u)\n };\n },\n getClipCropPosition: function() {\n var p = this.getClipCropRectangle();\n return {\n left: p.left,\n top: p.top\n };\n },\n getClipCropDimensions: function() {\n var p = this.getClipCropRectangle();\n return {\n width: p.width,\n height: p.height\n };\n },\n getClipScalePosition: function() {\n var p = this.getScalePosition(), q = this.getClipCropPosition(), r = this.getCropPosition();\n return {\n left: (p.left + ((r.left - q.left))),\n top: (p.top + ((r.top - q.top)))\n };\n },\n getClipScaleDimensions: function() {\n return this.getScaleDimensions();\n },\n areDimensionsEqual: function(p, q) {\n return ((p.width === q.width) && (p.height === q.height));\n },\n shouldAddAllNodesAndStyles: function() {\n return this.props.animated;\n },\n hasCrop: function() {\n if (this.shouldAddAllNodesAndStyles()) {\n return true\n };\n var p = this.getContainerDimensions(), q = this.getClipCropDimensions(), r = this.getClipScaleDimensions();\n if ((this.areDimensionsEqual(p, q) || this.areDimensionsEqual(q, r))) {\n return false\n };\n return true;\n },\n hasContainer: function() {\n if ((this.shouldAddAllNodesAndStyles() || this.hasInsetBorder())) {\n return true\n };\n var p = this.getContainerDimensions(), q = this.getClipScaleDimensions();\n if (this.areDimensionsEqual(p, q)) {\n return false\n };\n return true;\n },\n hasInsetBorder: function() {\n return (this.shouldAddAllNodesAndStyles() || this.props.insetBorderColor);\n },\n applyPositionStyle: function(p, q) {\n if ((this.shouldAddAllNodesAndStyles() || q.left)) {\n p.left = Math.round(q.left);\n };\n if ((this.shouldAddAllNodesAndStyles() || q.top)) {\n p.top = Math.round(q.top);\n };\n },\n applyDimensionsStyle: function(p, q) {\n p.width = Math.round(q.width);\n p.height = Math.round(q.height);\n },\n applyBorderRadiusStyle: function(p) {\n if ((this.shouldAddAllNodesAndStyles() || this.props.borderRadius)) {\n p.borderRadius = (this.props.borderRadius || 0);\n };\n },\n getScaleStyle: function() {\n var p = {\n }, q = this.getClipCropDimensions(), r = this.getClipScaleDimensions();\n if ((this.shouldAddAllNodesAndStyles() || !this.areDimensionsEqual(q, r))) {\n this.applyPositionStyle(p, this.getClipScalePosition());\n }\n else this.applyPositionStyle(p, this.getClipCropPosition());\n ;\n this.applyDimensionsStyle(p, this.getClipScaleDimensions());\n this.applyBorderRadiusStyle(p);\n return p;\n },\n getCropStyle: function() {\n var p = {\n };\n this.applyPositionStyle(p, this.getClipCropPosition());\n this.applyDimensionsStyle(p, this.getClipCropDimensions());\n this.applyBorderRadiusStyle(p);\n return p;\n },\n getInsetBorderStyle: function() {\n var p = {\n borderColor: (this.props.insetBorderColor || \"transparent\")\n };\n this.applyPositionStyle(p, this.getClipCropPosition());\n this.applyDimensionsStyle(p, this.getClipCropDimensions());\n this.applyBorderRadiusStyle(p);\n return p;\n },\n getContainerStyle: function() {\n var p = {\n };\n this.applyDimensionsStyle(p, this.getContainerDimensions());\n this.applyBorderRadiusStyle(p);\n return p;\n },\n getScale: function() {\n var p = this.getScaleStyle(), q = p.width, r = p.height;\n p = h({\n }, p);\n delete p.width;\n delete p.height;\n return this.transferPropsTo(l.DOM.img({\n alt: this.props.alt,\n className: (((\"-cx-PRIVATE-pixelz__scaledimage\") + ((this.shouldAddAllNodesAndStyles() ? (\" \" + \"-cx-PRIVATE-pixelz__animated\") : \"\")))),\n src: this.props.src,\n style: p,\n width: q,\n height: r\n }));\n },\n getCrop: function() {\n var p = this.getScale();\n if (!this.hasCrop()) {\n return p\n };\n return (l.DOM.div({\n className: (((\"-cx-PRIVATE-pixelz__croppedimage\") + ((this.shouldAddAllNodesAndStyles() ? (\" \" + \"-cx-PRIVATE-pixelz__animated\") : \"\")))),\n style: this.getCropStyle()\n }, p));\n },\n getInsetBorder: function() {\n if (!this.hasInsetBorder()) {\n return null\n };\n return (l.DOM.div({\n className: (((\"-cx-PRIVATE-pixelz__insetborder\") + ((this.shouldAddAllNodesAndStyles() ? (\" \" + \"-cx-PRIVATE-pixelz__animated\") : \"\")))),\n style: this.getInsetBorderStyle()\n }));\n },\n getContainer: function() {\n var p = this.getCrop();\n if (!this.hasContainer()) {\n return p\n };\n var q = this.getInsetBorder();\n return (l.DOM.div({\n className: (((\"-cx-PRIVATE-pixelz__container\") + ((this.shouldAddAllNodesAndStyles() ? (\" \" + \"-cx-PRIVATE-pixelz__animated\") : \"\")))),\n style: this.getContainerStyle()\n }, p, q));\n },\n render: function() {\n var p = this.getSrcDimensions();\n if (!p) {\n return l.DOM.span(null)\n };\n return this.getContainer();\n }\n });\n e.exports = o;\n});\n__d(\"ModalMask\", [\"DOM\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = null, i = 0, j = {\n show: function() {\n i++;\n if (!h) {\n h = g.create(\"div\", {\n id: \"modalMaskOverlay\"\n });\n g.appendContent(document.body, h);\n }\n ;\n },\n hide: function() {\n if (i) {\n i--;\n if ((!i && h)) {\n g.remove(h);\n h = null;\n }\n ;\n }\n ;\n }\n };\n e.exports = j;\n});\n__d(\"WebMessengerPermalinkConstants\", [\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"URI\"), h = {\n ARCHIVED_PATH: \"/messages/archived\",\n BASE_PATH: \"/messages\",\n OTHER_PATH: \"/messages/other\",\n SPAM_PATH: \"/messages/spam\",\n COMPOSE_POSTFIX_PATH: \"/new\",\n SEARCH_POSTFIX_PATH: \"/search\",\n TID_POSTFIX_PARTIAL_PATH: \"/conversation-\",\n overriddenVanities: \"(archived|other|spam|new|search|conversation-.*)\",\n getURIPathForThreadID: function(i, j) {\n return ((((j || h.BASE_PATH)) + h.TID_POSTFIX_PARTIAL_PATH) + g.encodeComponent(g.encodeComponent(i)));\n },\n getThreadIDFromURI: function(i) {\n var j = i.getPath().match((((h.BASE_PATH + \"(/[^/]*)*\") + h.TID_POSTFIX_PARTIAL_PATH) + \"([^/]+)\"));\n if (j) {\n var k = g.decodeComponent(g.decodeComponent(j[2]));\n return k;\n }\n ;\n },\n getURIPathForIDOrVanity: function(i, j) {\n if (i.match(((\"^\" + h.overriddenVanities) + \"$\"))) {\n i = (\".\" + i);\n };\n return ((((j || h.BASE_PATH)) + \"/\") + i);\n },\n getUserIDOrVanity: function(i) {\n var j = i.match((h.BASE_PATH + \".*/([^/]+)/?$\")), k = (j && j[1]), l = h.overriddenVanities;\n if ((!k || k.match(((\"^\" + l) + \"$\")))) {\n return false;\n }\n else if (k.match(((\"^\\\\.\" + l) + \"$\"))) {\n return k.substr(1);\n }\n else return k\n \n ;\n }\n };\n e.exports = h;\n});\n__d(\"MercuryErrorInfo\", [\"MercuryErrorType\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"MercuryErrorType\"), h = b(\"tx\"), i = {\n getMessage: function(j) {\n var k = \"This message failed to send.\";\n if (i.isConnectionError(j)) {\n k = \"Unable to connect to Facebook. This message failed to send. \";\n }\n else if (j.description) {\n k = j.description;\n }\n ;\n return k;\n },\n isConnectionError: function(j) {\n if ((j && (j.type == g.TRANSPORT))) {\n return (((j.code === 1001) || (j.code === 1004)) || (j.code === 1006))\n };\n return false;\n }\n };\n e.exports = i;\n});\n__d(\"MercuryChannelHandler\", [\"Arbiter\",\"ChannelConstants\",\"MercuryActionTypeConstants\",\"MercuryGlobalActionType\",\"MercuryPayloadSource\",\"MessagingReliabilityLogger\",\"MessagingEvent\",\"MessagingTag\",\"MercuryParticipants\",\"PresenceUtil\",\"MercuryServerRequests\",\"MercuryThreadInformer\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ChannelConstants\"), i = b(\"MercuryActionTypeConstants\"), j = b(\"MercuryGlobalActionType\"), k = b(\"MercuryPayloadSource\"), l = b(\"MessagingReliabilityLogger\"), m = b(\"MessagingEvent\"), n = b(\"MessagingTag\"), o = b(\"MercuryParticipants\"), p = b(\"PresenceUtil\"), q = b(\"MercuryServerRequests\").get(), r = b(\"MercuryThreadInformer\").get(), s = b(\"copyProperties\");\n function t(ia, ja) {\n if ((((ia != h.getArbiterType(\"messaging\")) || !ja.obj) || !ja.obj.message)) {\n l.addEntry(\"channel_receive\", \"invalid_data\");\n return;\n }\n ;\n var ka = ja.obj.message, la = {\n author: ka.mercury_author_id,\n author_email: ka.mercury_author_email,\n body: ka.body,\n subject: ka.subject,\n has_attachment: ka.has_attachment,\n attachments: ka.attachments,\n html_body: ka.html_body,\n thread_id: ka.tid,\n message_id: ka.mid,\n coordinates: ka.mercury_coordinates,\n spoof_warning: ka.mercury_spoof_warning,\n source: ka.mercury_source,\n source_tags: ka.mercury_source_tags,\n threading_id: ka.threading_id,\n timestamp: ka.timestamp,\n timestamp_absolute: ka.timestamp_absolute,\n timestamp_relative: ka.timestamp_relative,\n timestamp_time_passed: ka.timestamp_time_passed,\n action_type: i.USER_GENERATED_MESSAGE,\n is_unread: ka.is_unread,\n action_id: ka.action_id,\n is_forward: false,\n forward_count: (ka.forward_count || ka.forward),\n forward_message_ids: ka.forward_msg_ids,\n location_text: ka.location_text,\n folder: ja.obj.folder\n }, ma = [s({\n }, la),];\n ma = ma.concat((ka.forward_actions || []));\n var na = k.CLIENT_CHANNEL_MESSAGE;\n q.handleUpdateWaitForThread({\n actions: ma,\n payload_source: na\n }, ka.tid);\n if ((!ka.is_unread && (ka.mercury_author_id === o.user))) {\n var oa = {\n };\n oa[ka.tid] = ja.obj.folder;\n u(h.getArbiterType(\"messaging\"), {\n obj: {\n event: m.READ,\n tids: [ka.tid,],\n folder_info: oa,\n timestamp: ka.timestamp\n }\n });\n }\n ;\n l.addEntry(\"channel_receive\", \"success\", [la.thread_id,la.message_id,p.getSessionID(),]);\n };\n function u(ia, ja) {\n if ((((ia != h.getArbiterType(\"messaging\")) || !ja.obj) || !ja.obj.tids)) {\n return\n };\n var ka = [], la = (ja.obj.event == m.READ);\n ja.obj.tids.forEach(function(ma) {\n ka.push({\n action_type: i.CHANGE_READ_STATUS,\n action_id: null,\n thread_id: ma,\n mark_as_read: la,\n timestamp: (ja.obj.timestamp || 0),\n folder: ja.obj.folder_info[ma]\n });\n });\n q.handleUpdate({\n actions: ka,\n payload_source: k.CLIENT_CHANNEL_MESSAGE\n });\n };\n function v(ia, ja) {\n if ((((ia != h.getArbiterType(\"messaging\")) || !ja.obj) || !ja.obj.tids)) {\n return\n };\n var ka = [];\n ja.obj.tids.forEach(function(la) {\n ka.push({\n action_type: i.DELETE_THREAD,\n action_id: null,\n thread_id: la\n });\n });\n q.handleUpdate({\n actions: ka,\n payload_source: k.CLIENT_CHANNEL_MESSAGE\n });\n };\n function w(ia, ja) {\n if (((((ia != h.getArbiterType(\"messaging\")) || !ja.obj) || !ja.obj.tids) || !ja.obj.mids)) {\n return\n };\n var ka = ja.obj.tids[0], la = {\n action_type: i.DELETE_MESSAGES,\n action_id: null,\n thread_id: ka,\n message_ids: ja.obj.mids\n };\n q.handleUpdate({\n actions: [la,],\n threads: [ja.obj.updated_thread,],\n payload_source: k.CLIENT_CHANNEL_MESSAGE\n });\n };\n function x(ia, ja) {\n if ((((ia != h.getArbiterType(\"messaging\")) || !ja.obj) || !ja.obj.folder)) {\n return\n };\n var ka = {\n action_type: j.MARK_ALL_READ,\n action_id: ja.obj.action_id,\n folder: ja.obj.folder\n };\n q.handleUpdate({\n global_actions: [ka,]\n });\n };\n function y(ia, ja) {\n if (((ia != h.getArbiterType(\"messaging\")) || !ja.obj.tids)) {\n return\n };\n var ka = k.CLIENT_CHANNEL_MESSAGE;\n ja.obj.tids.forEach(function(la) {\n var ma = {\n action_type: i.CHANGE_ARCHIVED_STATUS,\n action_id: null,\n thread_id: la,\n archived: ja.obj.state\n };\n q.handleUpdateWaitForThread({\n actions: [s({\n }, ma),],\n payload_source: ka\n }, la);\n });\n };\n function z(ia, ja) {\n if (((ia != h.getArbiterType(\"messaging\")) || !ja.obj.tids)) {\n return\n };\n var ka = k.CLIENT_CHANNEL_MESSAGE, la;\n ja.obj.tids.forEach(function(ma) {\n if ((ja.obj.event == m.TAG)) {\n la = ja.obj.tag;\n }\n else la = (ja.obj.marked_as_spam ? n.SPAM : n.INBOX);\n ;\n var na = {\n action_type: i.CHANGE_FOLDER,\n action_id: null,\n thread_id: ma,\n new_folder: la\n };\n q.handleUpdateWaitForThread({\n actions: [s({\n }, na),],\n payload_source: ka\n }, ma);\n });\n };\n function aa(ia, ja) {\n if (((ia != h.getArbiterType(\"messaging\")) || !ja.obj.tag)) {\n return\n };\n switch (ja.obj.tag) {\n case n.ACTION_ARCHIVED:\n y(ia, ja);\n break;\n case n.INBOX:\n \n case n.OTHER:\n z(ia, ja);\n break;\n };\n };\n function ba(ia, ja) {\n if ((((ia != h.getArbiterType(\"inbox\")) || !ja.obj) || !ja.obj.seen_timestamp)) {\n return\n };\n q.handleUpdate({\n message_counts: [{\n seen_timestamp: ja.obj.seen_timestamp,\n folder: n.INBOX\n },],\n unseen_thread_ids: [{\n thread_ids: [],\n folder: n.INBOX\n },],\n payload_source: k.CLIENT_CHANNEL_MESSAGE\n });\n };\n function ca(ia, ja) {\n if (((ia != h.getArbiterType(\"mercury\")) || !ja.obj)) {\n return\n };\n r.synchronizeInforms(function() {\n var ka = ja.obj, la = [];\n ((ka.actions || [])).forEach(function(ma) {\n var na = i.USER_GENERATED_MESSAGE;\n if ((ma.action_type == i.LOG_MESSAGE)) {\n var oa = k.CLIENT_CHANNEL_MESSAGE;\n q.handleUpdateWaitForThread({\n actions: [s({\n }, ma),],\n payload_source: oa\n }, ma.thread_id);\n }\n else if ((ma.action_type != na)) {\n la.push(ma);\n }\n ;\n });\n ka.actions = la;\n ka.payload_source = k.CLIENT_CHANNEL_MESSAGE;\n q.handleUpdate(ka);\n });\n };\n function da(ia, ja) {\n q.handleRoger(ja.obj);\n };\n function ea(ia, ja) {\n if (((((ia != h.getArbiterType(\"messaging\")) || !ja.obj) || (ja.obj.mute_settings === undefined)) || !ja.obj.thread_id)) {\n return\n };\n var ka = i.CHANGE_MUTE_SETTINGS, la = [{\n action_type: ka,\n action_id: null,\n thread_id: ja.obj.thread_id,\n mute_settings: ja.obj.mute_settings\n },];\n q.handleUpdate({\n actions: la,\n payload_source: k.CLIENT_CHANNEL_MESSAGE\n });\n };\n function fa(ia, ja) {\n switch (ja.obj.event) {\n case m.DELIVER:\n t(ia, ja);\n break;\n case m.READ:\n \n case m.UNREAD:\n u(ia, ja);\n break;\n case m.READ_ALL:\n x(ia, ja);\n break;\n case m.DELETE:\n v(ia, ja);\n break;\n case m.DELETE_MESSAGES:\n w(ia, ja);\n break;\n case m.TAG:\n aa(ia, ja);\n break;\n case m.REPORT_SPAM:\n z(ia, ja);\n break;\n case m.READ_RECEIPT:\n da(ia, ja);\n break;\n case m.CHANGE_MUTE_SETTINGS:\n ea(ia, ja);\n break;\n };\n };\n var ga = [], ha = {\n turnOn: function() {\n if (!ga.length) {\n var ia = {\n mercury: ca,\n messaging: fa,\n inbox: ba\n };\n for (var ja in ia) {\n ga.push(g.subscribe(h.getArbiterType(ja), ia[ja]));;\n };\n }\n ;\n },\n turnOff: function() {\n if (ga.length) {\n ga.forEach(g.unsubscribe);\n ga = [];\n }\n ;\n }\n };\n ha.turnOn();\n e.exports = ha;\n});\n__d(\"MercuryRoger\", [\"ArbiterMixin\",\"MercuryActionStatus\",\"MercuryServerRequests\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"MercuryActionStatus\"), i = b(\"MercuryServerRequests\").get(), j = b(\"copyProperties\"), k = {\n }, l = {\n getSeenBy: function(m, n) {\n if (!m) {\n return []\n };\n var o = [], p = k[m.thread_id], q = h.SUCCESS;\n for (var r in p) {\n if ((((p[r] > m.timestamp) && (((m.status === undefined) || (m.status === q)))) && ((!n || (r != m.author))))) {\n o.push(r);\n };\n };\n return o;\n },\n getSeenTimestamp: function(m, n) {\n var o = k[m];\n return (o ? o[n] : null);\n }\n };\n j(l, g);\n i.subscribe(\"update-roger\", function(m, n) {\n for (var o in n) {\n if (!k[o]) {\n k[o] = {\n };\n };\n for (var p in n[o]) {\n var q = k[o][p], r = n[o][p];\n if ((!q || (r > q))) {\n k[o][p] = r;\n };\n };\n };\n if (n) {\n l.inform(\"state-changed\", n);\n };\n });\n e.exports = l;\n});\n__d(\"MercuryDelayedRoger\", [\"ArbiterMixin\",\"LiveTimer\",\"MercuryActionStatus\",\"MercuryConfig\",\"MercuryMessages\",\"MercuryRoger\",\"MercuryThreadInformer\",\"MercuryThreads\",\"copyProperties\",\"setTimeoutAcrossTransitions\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"LiveTimer\"), i = b(\"MercuryActionStatus\"), j = b(\"MercuryConfig\"), k = b(\"MercuryMessages\").get(), l = b(\"MercuryRoger\"), m = b(\"MercuryThreadInformer\").get(), n = b(\"MercuryThreads\").get(), o = b(\"copyProperties\"), p = b(\"setTimeoutAcrossTransitions\"), q = {\n }, r = {\n }, s = j[\"roger.seen_delay\"], t = o({\n getSeenBy: function(x, y) {\n if (r[x]) {\n return []\n };\n if (!q[x]) {\n var z = n.getThreadMetaNow(x);\n if (z) {\n q[x] = {\n thread_id: x,\n author: z.participants[0],\n timestamp: z.timestamp\n };\n };\n }\n ;\n return l.getSeenBy(q[x], y);\n }\n }, g);\n function u(x) {\n var y = false;\n k.getThreadMessagesRange(x, 0, 1, function(z) {\n var aa = z[0];\n if (!aa) {\n return\n };\n var ba = aa.timestamp;\n if ((aa.action_id || (aa.status == i.SUCCESS))) {\n ba -= h.getServerTimeOffset();\n };\n var ca = t.getSeenBy(x);\n if (r[x]) {\n clearTimeout(r[x]);\n delete r[x];\n }\n ;\n var da = (ba + s), ea = (da - Date.now());\n if ((ea > 0)) {\n r[x] = p(function() {\n delete r[x];\n v(x);\n }, ea);\n };\n q[x] = aa;\n var fa = t.getSeenBy(x);\n if ((ca.length || fa.length)) {\n y = true;\n };\n });\n return y;\n };\n function v(x) {\n var y = {\n };\n y[x] = true;\n t.inform(\"state-changed\", y);\n };\n function w(event, x) {\n var y = {\n };\n for (var z in x) {\n if (u(z)) {\n y[z] = true;\n };\n };\n for (var aa in y) {\n t.inform(\"state-changed\", y);\n break;\n };\n };\n l.subscribe(\"state-changed\", function(x, y) {\n for (var z in y) {\n (!r[z] && v(z));;\n };\n });\n m.subscribe(\"messages-received\", w);\n m.subscribe(\"messages-reordered\", w);\n m.subscribe(\"messages-updated\", w);\n e.exports = t;\n});\n__d(\"MercuryFilters\", [\"MessagingTag\",\"arrayContains\",], function(a, b, c, d, e, f) {\n var g = b(\"MessagingTag\"), h = b(\"arrayContains\"), i = [g.UNREAD,], j = {\n ALL: \"all\",\n getSupportedFilters: function() {\n return i.concat();\n },\n isSupportedFilter: function(k) {\n return h(i, k);\n }\n };\n e.exports = j;\n});\n__d(\"MercuryOrderedThreadlist\", [\"JSLogger\",\"MercuryActionTypeConstants\",\"MercuryFilters\",\"MercuryFolders\",\"MercuryPayloadSource\",\"MercurySingletonMixin\",\"MessagingTag\",\"RangedCallbackManager\",\"MercuryServerRequests\",\"MercuryThreadInformer\",\"MercuryThreads\",\"arrayContains\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"JSLogger\"), h = b(\"MercuryActionTypeConstants\"), i = b(\"MercuryFilters\"), j = b(\"MercuryFolders\"), k = b(\"MercuryPayloadSource\"), l = b(\"MercurySingletonMixin\"), m = b(\"MessagingTag\"), n = b(\"RangedCallbackManager\"), o = b(\"MercuryServerRequests\"), p = b(\"MercuryThreadInformer\"), q = b(\"MercuryThreads\"), r = b(\"arrayContains\"), s = b(\"copyProperties\"), t = g.create(\"ordered_threadlist_model\"), u = i.getSupportedFilters().concat([i.ALL,m.GROUPS,]), v = j.getSupportedFolders();\n function w(ga, ha, ia, ja) {\n var ka = [], la = false, ma = false, na = ((ha || [])).filter(function(ua) {\n var va = (ua.filter || i.ALL);\n return ((((ua.folder == ia) || ((!ua.folder && (ia == m.INBOX))))) && (va == ja));\n }), oa = ga._threadlistOrderMap[ia][ja].getAllResources(), pa;\n na.forEach(function(ua) {\n ka = ka.concat(ua.thread_ids);\n if (ua.error) {\n if ((ua.end > oa.length)) {\n ma = ua.error;\n };\n }\n else {\n var va = (ua.end - ua.start);\n if ((ua.thread_ids.length < va)) {\n la = true;\n };\n }\n ;\n if ((!pa || (ua.end > pa))) {\n pa = ua.end;\n };\n });\n aa(ga, ka, ia, ja);\n if (la) {\n ga._threadlistOrderMap[ia][ja].setReachedEndOfArray();\n }\n else if (ma) {\n ga._threadlistOrderMap[ia][ja].setError(ma);\n }\n else {\n var qa = ga._threadlistOrderMap[ia][ja].getCurrentArraySize();\n if ((pa && (qa < pa))) {\n var ra = {\n }, sa = oa.concat(ka), ta = sa.filter(function(ua) {\n var va = ra[ua];\n ra[ua] = true;\n return va;\n });\n if (ta.length) {\n t.warn(\"duplicate_threads\", {\n folder: ia,\n expected_final_size: pa,\n actual_final_size: qa,\n duplicate_thread_ids: ta\n });\n ga._serverRequests.fetchThreadlistInfo(pa, ta.length, ia, ((ja == i.ALL) ? null : ja));\n }\n ;\n }\n ;\n }\n \n ;\n };\n function x(ga, ha) {\n v.forEach(function(ia) {\n u.forEach(function(ja) {\n w(ga, ha, ia, ja);\n });\n });\n };\n function y(ga, ha) {\n var ia = {\n };\n v.forEach(function(ja) {\n ia[ja] = {\n };\n u.forEach(function(ka) {\n ia[ja][ka] = {\n to_add: [],\n to_remove: [],\n to_remove_if_last_after_add: {\n }\n };\n });\n });\n ha.forEach(function(ja) {\n if (ja.is_forward) {\n return\n };\n var ka = ja.thread_id, la = ba(ga, ka), ma = ca(ga, ka);\n function na() {\n ma.forEach(function(pa) {\n ia[la][pa].to_add.push(ka);\n if ((!ga._threadlistOrderMap[la][pa].hasReachedEndOfArray() && !ga._threadlistOrderMap[la][pa].hasResource(ka))) {\n ia[la][pa].to_remove_if_last_after_add[ka] = true;\n };\n });\n };\n function oa(pa) {\n if (r(u, pa)) {\n if (r(ma, pa)) {\n ia[la][pa].to_add.push(ka);\n }\n else ia[la][pa].to_remove.push(ka);\n \n };\n };\n if (!la) {\n if (((ja.action_type === h.CHANGE_FOLDER) || (ja.action_type === h.CHANGE_ARCHIVED_STATUS))) {\n v.forEach(function(pa) {\n if ((pa !== la)) {\n u.forEach(function(qa) {\n ga._threadlistOrderMap[pa][qa].removeResources([ka,]);\n });\n };\n });\n };\n return;\n }\n ;\n switch (ja.action_type) {\n case h.DELETE_THREAD:\n ma.forEach(function(pa) {\n ia[la][pa].to_remove.push(ka);\n });\n break;\n case h.CHANGE_ARCHIVED_STATUS:\n \n case h.CHANGE_FOLDER:\n na();\n break;\n case h.CHANGE_READ_STATUS:\n oa(m.UNREAD);\n break;\n case h.USER_GENERATED_MESSAGE:\n \n case h.LOG_MESSAGE:\n ma.forEach(function(pa) {\n if (da(ga, ka, la, pa)) {\n ia[la][pa].to_add.push(ka);\n };\n });\n break;\n };\n });\n v.forEach(function(ja) {\n u.forEach(function(ka) {\n var la = ga._threadlistOrderMap[ja][ka];\n aa(ga, ia[ja][ka].to_add, ja, ka);\n for (var ma = (la.getCurrentArraySize() - 1); (ma >= 0); ma--) {\n var na = la.getResourceAtIndex(ma);\n if (!ia[ja][ka].to_remove_if_last_after_add[na]) {\n break;\n };\n ia[ja][ka].to_remove.push(na);\n };\n la.removeResources(ia[ja][ka].to_remove);\n });\n });\n };\n function z(ga, ha) {\n var ia = {\n };\n v.forEach(function(ja) {\n ia[ja] = {\n };\n u.forEach(function(ka) {\n ia[ja][ka] = [];\n });\n });\n ha.forEach(function(ja) {\n var ka = ba(ga, ja.thread_id), la = ca(ga, ja.thread_id);\n if (ka) {\n la.forEach(function(ma) {\n if (da(ga, ja.thread_id, ka, ma)) {\n ia[ka][ma].push(ja.thread_id);\n };\n });\n };\n });\n v.forEach(function(ja) {\n u.forEach(function(ka) {\n if ((ia[ja][ka].length > 0)) {\n aa(ga, ia[ja][ka], ja, ka);\n };\n });\n });\n };\n function aa(ga, ha, ia, ja) {\n ja = (ja || i.ALL);\n ga._threadlistOrderMap[ia][ja].addResources(ha);\n v.forEach(function(ka) {\n if ((ka != ia)) {\n ga._threadlistOrderMap[ka][ja].removeResources(ha);\n };\n });\n };\n function ba(ga, ha) {\n var ia = ga._threads.getThreadMetaNow(ha), ja = null;\n if (!ia) {\n ja = \"No thread metadata\";\n }\n else if (!ia.folder) {\n ja = \"No thread folder\";\n }\n ;\n if (ja) {\n var ka = {\n error: ja,\n tid: ha\n };\n t.warn(\"no_thread_folder\", ka);\n return null;\n }\n ;\n var la = ia.folder;\n if (ia.is_archived) {\n la = m.ACTION_ARCHIVED;\n };\n if (ga._threadlistOrderMap[la]) {\n return la;\n }\n else return null\n ;\n };\n function ca(ga, ha) {\n var ia = ga._threads.getThreadMetaNow(ha), ja = [i.ALL,];\n if (!ia) {\n var ka = {\n error: \"no_thread_metadata\",\n tid: ha\n };\n t.warn(\"no_thread_metadata\", ka);\n return [];\n }\n ;\n if (ia.unread_count) {\n ja.push(m.UNREAD);\n };\n if (!ia.is_canonical) {\n ja.push(m.GROUPS);\n };\n return ja;\n };\n function da(ga, ha, ia, ja) {\n var ka = ga._threads.getThreadMetaNow(ha);\n return (((ka && ka.timestamp) && (ba(ga, ha) == ia)) && r(ca(ga, ha), ja));\n };\n function ea(ga) {\n this._fbid = ga;\n this._serverRequests = o.getForFBID(this._fbid);\n this._threadInformer = p.getForFBID(this._fbid);\n this._threads = q.getForFBID(this._fbid);\n this._threadlistOrderMap = {\n };\n v.forEach(function(ha) {\n this._threadlistOrderMap[ha] = {\n };\n u.forEach(function(ia) {\n this._threadlistOrderMap[ha][ia] = new n(function(ja) {\n return this._threads.getThreadMetaNow(ja).timestamp;\n }.bind(this), function(ja, ka) {\n return (ka - ja);\n }, this._serverRequests.canLinkExternally.bind(this._serverRequests));\n }.bind(this));\n }.bind(this));\n this._serverRequests.subscribe(\"update-threadlist\", function(ha, ia) {\n if (!fa(ia)) {\n return\n };\n var ja = ia.ordered_threadlists;\n if ((ja && ja.length)) {\n x(this, ja);\n }\n else {\n var ka = ((ia.actions || [])).filter(function(la) {\n return la.thread_id;\n });\n z(this, (ia.threads || []));\n y(this, ka);\n }\n ;\n this._threadInformer.updatedThreadlist();\n }.bind(this));\n };\n s(ea.prototype, {\n getThreadlist: function(ga, ha, ia, ja, ka, la) {\n return this.getFilteredThreadlist(ga, ha, ia, i.ALL, ja, ka, la);\n },\n getFilteredThreadlist: function(ga, ha, ia, ja, ka, la, ma) {\n var na = this._threadlistOrderMap[ia][ja], oa = na.executeOrEnqueue(ga, ha, ka, la), pa = na.getUnavailableResources(oa), qa = na.getError(ga, ha, la);\n if ((pa.length || qa)) {\n if ((na.getCurrentArraySize() < ga)) {\n var ra = {\n start: ga,\n limit: ha,\n filter: ja,\n resources_size: na.getCurrentArraySize()\n };\n t.warn(\"range_with_gap\", ra);\n }\n ;\n na.setError(false);\n this._serverRequests.fetchThreadlistInfo(na.getCurrentArraySize(), pa.length, ia, ((ja == i.ALL) ? null : ja), ma);\n }\n ;\n return oa;\n },\n getThreadlistUntilTimestamp: function(ga, ha, ia) {\n ia = (ia || i.ALL);\n return this._threadlistOrderMap[ha][ia].getElementsUntil(ga);\n },\n unsubscribe: function(ga, ha, ia) {\n ia = (ia || i.ALL);\n this._threadlistOrderMap[ha][ia].unsubscribe(ga);\n }\n });\n s(ea, l);\n function fa(ga) {\n switch (ga.payload_source) {\n case k.CLIENT_CHANGE_ARCHIVED_STATUS:\n \n case k.CLIENT_CHANGE_READ_STATUS:\n \n case k.CLIENT_CHANGE_FOLDER:\n \n case k.CLIENT_CHANNEL_MESSAGE:\n \n case k.CLIENT_DELETE_MESSAGES:\n \n case k.CLIENT_DELETE_THREAD:\n \n case k.CLIENT_SEND_MESSAGE:\n \n case k.SERVER_SEND_MESSAGE:\n \n case k.SERVER_CONFIRM_MESSAGES:\n \n case k.SERVER_FETCH_THREADLIST_INFO:\n \n case k.SERVER_THREAD_SYNC:\n return true;\n case k.SERVER_INITIAL_DATA:\n return ga.ordered_threadlists;\n default:\n return false;\n };\n };\n e.exports = ea;\n});\n__d(\"MercuryUnseenState\", [\"Arbiter\",\"TimestampConverter\",\"JSLogger\",\"KeyedCallbackManager\",\"MercuryActionTypeConstants\",\"MercurySingletonMixin\",\"MercuryThreadlistConstants\",\"MessagingTag\",\"MercuryServerRequests\",\"MercuryThreadInformer\",\"copyProperties\",\"createObjectFrom\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"TimestampConverter\"), i = b(\"JSLogger\"), j = b(\"KeyedCallbackManager\"), k = b(\"MercuryActionTypeConstants\"), l = b(\"MercurySingletonMixin\"), m = b(\"MercuryThreadlistConstants\"), n = b(\"MessagingTag\"), o = b(\"MercuryServerRequests\"), p = b(\"MercuryThreadInformer\"), q = b(\"copyProperties\"), r = b(\"createObjectFrom\"), s = m.MAX_UNSEEN_COUNT, t = \"unseen_thread_hash\", u = \"unseen_thread_list\", v = i.create(\"mercury_unseen_state\");\n function w(ja) {\n this._fbid = ja;\n this._serverRequests = o.getForFBID(this._fbid);\n this._threadInformer = p.getForFBID(this._fbid);\n this._initialUnseenCount = 0;\n this._lastSeenTimestamp = 0;\n this._maxCount = false;\n this._unseenResources = new j();\n this._serverRequests.subscribe(\"update-unseen\", function(ka, la) {\n ba(this, la);\n }.bind(this));\n this._serverRequests.subscribe(\"update-thread-ids\", function(ka, la) {\n ha(this, la);\n }.bind(this));\n };\n q(w.prototype, {\n getUnseenCount: function() {\n if (this.exceedsMaxCount()) {\n v.error(\"unguarded_unseen_count_fetch\", {\n });\n return 0;\n }\n ;\n return aa(this);\n },\n exceedsMaxCount: function() {\n return (this._maxCount || ((aa(this) > s)));\n },\n markAsSeen: function() {\n if (((aa(this) > 0) || this._maxCount)) {\n this._serverRequests.markSeen();\n ca(this, h.convertActionIDToTimestamp(this._serverRequests.getLastActionID()), []);\n }\n ;\n },\n markThreadSeen: function(ja, ka) {\n var la = {\n };\n la[ja] = null;\n ea(this, la, ka);\n }\n });\n q(w, l);\n function x(ja, ka) {\n ja._unseenResources.setResource(t, ka);\n ja._unseenResources.setResource(u, Object.keys(ka));\n };\n function y(ja, ka) {\n var la = ja._unseenResources.executeOrEnqueue(t, ka), ma = ja._unseenResources.getUnavailableResources(la);\n if (ma.length) {\n ja._serverRequests.fetchUnseenThreadIDs();\n };\n };\n function z(ja) {\n return ja._unseenResources.getResource(t);\n };\n function aa(ja) {\n var ka = ja._unseenResources.getResource(u);\n if (ka) {\n return ka.length;\n }\n else return ja._initialUnseenCount\n ;\n };\n function ba(ja, ka) {\n var la = ia(ka);\n if (ka.unseen_thread_ids) {\n ka.unseen_thread_ids.forEach(function(wa) {\n if ((wa.folder != n.INBOX)) {\n return\n };\n var xa = ga(ja, wa.thread_ids), ya = ja._lastSeenTimestamp;\n if ((la && la.seen_timestamp)) {\n ya = la.seen_timestamp;\n };\n ca(ja, ya, xa);\n if ((la && (la.unseen_count > s))) {\n ja._maxCount = true;\n };\n });\n }\n else if ((la && la.seen_timestamp)) {\n ja._lastSeenTimestamp = la.seen_timestamp;\n if ((la.unseen_count > s)) {\n ja._maxCount = true;\n x(ja, {\n });\n }\n else {\n ja._initialUnseenCount = la.unseen_count;\n if ((ja._initialUnseenCount === 0)) {\n x(ja, {\n });\n };\n }\n ;\n }\n else {\n if (ja._maxCount) {\n return\n };\n var ma = ka.actions;\n if ((!ma || !(ma.length))) {\n return\n };\n var na = {\n }, oa = {\n };\n for (var pa = 0; (pa < ma.length); pa++) {\n var qa = ma[pa];\n if (qa.is_forward) {\n continue;\n };\n var ra = qa.action_type, sa = qa.action_id, ta = (qa.thread_id ? qa.thread_id : qa.server_thread_id), ua = ((qa.folder === undefined) || (qa.folder == n.INBOX));\n if (!ua) {\n continue;\n };\n if (((ra == k.USER_GENERATED_MESSAGE) || (ra == k.LOG_MESSAGE))) {\n var va = h.isGreaterThan(sa, na[ta]);\n if ((qa.is_unread && ((!na[ta] || va)))) {\n na[ta] = sa;\n };\n }\n else if (((ra == k.CHANGE_READ_STATUS) && qa.mark_as_read)) {\n oa[ta] = sa;\n }\n ;\n };\n da(ja, na);\n ea(ja, oa);\n }\n \n ;\n };\n function ca(ja, ka, la) {\n var ma = z(ja);\n if ((((ma === undefined) || (ka > ja._lastSeenTimestamp)) || ja._maxCount)) {\n ja._lastSeenTimestamp = ka;\n la = (la || []);\n if ((la.length <= s)) {\n ja._maxCount = false;\n };\n var na = {\n }, oa = (z(ja) || {\n });\n for (var pa in oa) {\n if ((oa[pa] !== true)) {\n var qa = oa[pa];\n if (fa(ja, qa)) {\n na[pa] = qa;\n };\n }\n ;\n };\n var ra = q(r(la, true), na);\n x(ja, ra);\n ja._threadInformer.updatedUnseenState();\n }\n ;\n };\n function da(ja, ka) {\n if (ja._maxCount) {\n return\n };\n var la = {\n }, ma = false;\n for (var na in ka) {\n var oa = ka[na];\n if (fa(ja, oa)) {\n la[na] = oa;\n ma = true;\n }\n ;\n };\n if (!ma) {\n return\n };\n y(ja, function(pa) {\n for (var qa in la) {\n var ra = la[qa];\n if ((!pa[qa] && fa(ja, ra))) {\n pa[qa] = la[qa];\n };\n };\n x(ja, pa);\n ja._threadInformer.updatedUnseenState();\n });\n };\n function ea(ja, ka, la) {\n var ma = false;\n for (var na in ka) {\n ma = true;\n break;\n };\n if (ma) {\n y(ja, function(oa) {\n var pa = false;\n for (var qa in ka) {\n var ra = ka[qa], sa = h.isGreaterThan(ra, oa[qa]);\n if ((oa[qa] && ((!ra || sa)))) {\n delete oa[qa];\n pa = true;\n }\n ;\n };\n if (pa) {\n x(ja, oa);\n ja._threadInformer.updatedUnseenState();\n if ((la && (aa(ja) === 0))) {\n ja._serverRequests.markSeen();\n };\n }\n ;\n });\n };\n };\n function fa(ja, ka) {\n var la = h.convertActionIDToTimestamp(ka);\n return (la > ja._lastSeenTimestamp);\n };\n function ga(ja, ka) {\n return ka.map(ja._serverRequests.convertThreadIDIfAvailable.bind(ja._serverRequests));\n };\n function ha(ja, ka) {\n var la = z(ja);\n if (!la) {\n return\n };\n for (var ma in ka) {\n var na = ka[ma];\n if (la[ma]) {\n la[na] = la[ma];\n delete la[ma];\n }\n ;\n };\n x(ja, la);\n };\n function ia(ja) {\n var ka = ((ja.message_counts || []));\n for (var la = 0; (la < ka.length); la++) {\n if ((ka[la].folder == n.INBOX)) {\n return ka[la]\n };\n };\n return null;\n };\n g.subscribe(i.DUMP_EVENT, function(ja, ka) {\n ka.messaging = (ka.messaging || {\n });\n ka.messaging.unseen = {\n };\n ka.messaging.unseen_max_count = {\n };\n ka.messaging.unseen_time = {\n };\n var la = w._getInstances();\n for (var ma in la) {\n ka.messaging.unseen[ma] = q({\n }, z(la[ma]));\n ka.messaging.unseen_max_count[ma] = la[ma]._maxCount;\n ka.messaging.unseen_time[ma] = la[ma]._lastSeenTimestamp;\n };\n });\n e.exports = w;\n});\n__d(\"MercuryThreadMetadataRawRenderer\", [\"Event\",\"CSS\",\"DOM\",\"MercuryActionStatus\",\"MercuryErrorInfo\",\"MessagingTag\",\"MercuryStatusTemplates\",\"Tooltip\",\"URI\",\"WebMessengerPermalinkConstants\",\"cx\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"CSS\"), i = b(\"DOM\"), j = b(\"MercuryActionStatus\"), k = b(\"MercuryErrorInfo\"), l = b(\"MessagingTag\"), m = b(\"MercuryStatusTemplates\"), n = b(\"Tooltip\"), o = b(\"URI\"), p = b(\"WebMessengerPermalinkConstants\"), q = b(\"cx\"), r = b(\"tx\"), s = {\n renderParticipantListWithNoThreadName: function(u, v, w, x, y, z) {\n var aa = {\n callback: true,\n check_length: true,\n show_unread_count: true\n };\n z = (z || {\n });\n var ba = {\n };\n for (var ca in z) {\n if (aa[ca]) {\n ba[ca] = z[ca];\n delete z[ca];\n }\n ;\n };\n var da = w.map(function(ia) {\n return x[ia];\n }), ea = this.renderRawParticipantList(u, da, w.length, z);\n ea = this.renderRawTitleWithUnreadCount(ea, (ba.show_unread_count ? v.unread_count : 0));\n var fa = z.abbr_mode, ga = {\n };\n for (var ha in z) {\n ga[ha] = z[ha];;\n };\n ga.abbr_mode = true;\n y.forEach(function(ia) {\n var ja = ((y.length > 1) ? this._cloneIfDOMElement(ea) : ea);\n i.setContent(ia, ja);\n if (((ba.check_length && !fa) && (ia.scrollWidth > ia.clientWidth))) {\n var ka = this.renderRawParticipantList(u, da, w.length, ga), la = this.renderRawTitleWithUnreadCount(ka, (ba.show_unread_count ? v.unread_count : 0));\n i.setContent(ia, la);\n }\n ;\n }.bind(this));\n (ba.callback && ba.callback(ea));\n },\n renderRawParticipantList: function(u, v, w, x) {\n var y = {\n abbr_mode: true,\n last_separator_uses_and: true,\n names_renderer: true\n };\n x = (x || {\n });\n var z = null;\n if (x.names_renderer) {\n z = x.names_renderer(v);\n }\n else z = v.map(function(ca) {\n return ca.name;\n });\n ;\n var aa = null;\n if ((z.length === 0)) {\n if (!u) {\n aa = \"New Message\";\n }\n else aa = \"No Participants\";\n ;\n }\n else if ((z.length == 1)) {\n aa = z[0];\n }\n else if ((z.length == 2)) {\n var ba = {\n participant1: z[0],\n participant2: z[1]\n };\n if (x.last_separator_uses_and) {\n aa = r._(\"{participant1} and {participant2}\", ba);\n }\n else aa = r._(\"{participant1}, {participant2}\", ba);\n ;\n }\n else if (x.last_separator_uses_and) {\n if (x.abbr_mode) {\n aa = r._(\"{participant1} and {others_link}\", {\n participant1: z[0],\n others_link: this.renderRawParticipantCount(u, {\n render_subset: true,\n count: (w - 1)\n })\n });\n }\n else if ((z.length == 3)) {\n aa = r._(\"{participant1}, {participant2} and {participant3}\", {\n participant1: z[0],\n participant2: z[1],\n participant3: z[2]\n });\n }\n else aa = r._(\"{participant1}, {participant2} and {others_link}\", {\n participant1: z[0],\n participant2: z[1],\n others_link: this.renderRawParticipantCount(u, {\n render_subset: true,\n count: (w - 2)\n })\n });\n \n ;\n }\n else if ((z.length == 3)) {\n aa = r._(\"{participant1}, {participant2}, {participant3}\", {\n participant1: z[0],\n participant2: z[1],\n participant3: z[2]\n });\n }\n else aa = r._(\"{participant1}, {participant2}, {participant3}, {others_link}\", {\n participant1: z[0],\n participant2: z[1],\n participant3: z[2],\n others_link: this.renderRawParticipantCount(u, {\n render_subset: true,\n count: (w - 3)\n })\n });\n \n \n \n \n ;\n if (Array.isArray(aa)) {\n aa = i.create(\"span\", {\n }, aa);\n };\n return aa;\n },\n renderRawTitleWithUnreadCount: function(u, v) {\n var w = u;\n if ((v && (v > 1))) {\n w = i.create(\"span\", {\n }, r._(\"{conversation_title} ({unread_count})\", {\n conversation_title: u,\n unread_count: v\n }));\n };\n return w;\n },\n renderRawParticipantCount: function(u, v) {\n var w = v.render_subset, x;\n if (!w) {\n x = ((v.count > 1) ? r._(\"{num} people\", {\n num: v.count\n }) : \"1 person\");\n }\n else x = ((v.count > 1) ? r._(\"{others_count} others\", {\n others_count: v.count\n }) : \"1 other\");\n ;\n return x;\n },\n renderShortNames: function(u) {\n if ((u.length == 1)) {\n return [u[0].name,]\n };\n return u.map(function(v) {\n return v.short_name;\n });\n },\n getUserCanonicalTitanURL: function(u, v, w) {\n var x = new o().setSubdomain(\"www\"), y = u.substr((u.indexOf(\":\") + 1));\n x.setPath(((t(w) + \"/\") + y));\n (v && v(x.toString()));\n return x.toString();\n },\n getTitanURLWithServerID: function(u, v, w) {\n var x = new o().setSubdomain(\"www\");\n x.setPath(p.getURIPathForThreadID(u, t(w)));\n (v && v(x.toString()));\n return x.toString();\n },\n renderUserCanonicalTitanLink: function(u, v, w, x) {\n var y = this.getUserCanonicalTitanURL(u, null, x);\n v.setAttribute(\"href\", y);\n (w && w());\n },\n renderTitanLinkWithServerID: function(u, v, w, x) {\n var y = this.getTitanURLWithServerID(u, null, x);\n v.setAttribute(\"href\", y);\n (w && w());\n },\n renderStatusIndicator: function(u, v, w) {\n var x;\n if ((u == j.RESENDING)) {\n x = this.renderResendIndicator();\n }\n else if (((((u !== undefined) && (u != j.UNSENT)) && (u != j.UNCONFIRMED)) && (u != j.SUCCESS))) {\n x = this.renderErrorIndicator(v, w);\n }\n ;\n return x;\n },\n renderResendIndicator: function() {\n return m[\":fb:mercury:resend-indicator\"].render();\n },\n renderErrorIndicator: function(u, v) {\n if (!u) {\n return null\n };\n var w = m[\":fb:mercury:error-indicator\"].render(), x = u.is_transient, y = k.getMessage(u);\n if (x) {\n if (k.isConnectionError(u)) {\n y = r._(\"{message} Check your network connection or click to try again.\", {\n message: y\n });\n }\n else y = r._(\"{message} Click to send again.\", {\n message: y\n });\n \n };\n n.set(w, y, \"above\", \"center\");\n if ((v && x)) {\n g.listen(w, \"click\", v);\n w.setAttribute(\"tabindex\", \"0\");\n h.addClass(w, \"-cx-PRIVATE-fbMercuryStatus__clickableerror\");\n }\n ;\n return w;\n },\n _cloneIfDOMElement: function(u) {\n if (u.cloneNode) {\n return u.cloneNode();\n }\n else return u\n ;\n }\n };\n function t(u) {\n var v = p.BASE_PATH;\n if ((u && (u != l.INBOX))) {\n v += (\"/\" + u);\n };\n return v;\n };\n e.exports = s;\n});\n__d(\"MercurySeenByAll\", [\"CSS\",\"DataStore\",\"DOM\",\"MercuryParticipants\",\"MercuryDelayedRoger\",\"MercuryThreads\",], function(a, b, c, d, e, f) {\n var g = b(\"CSS\"), h = b(\"DataStore\"), i = b(\"DOM\"), j = b(\"MercuryParticipants\"), k = b(\"MercuryDelayedRoger\"), l = b(\"MercuryThreads\").get(), m = {\n }, n = {\n updateOnSeenChange: function(p, q) {\n m[p.tagName] = true;\n h.set(p, \"thread-id\", q.thread_id);\n g.addClass(p, \"seenByListener\");\n o(p, q);\n }\n };\n function o(p, q) {\n var r = q.participants.filter(function(t) {\n return (t !== j.user);\n }), s = ((q.participants.length > 0) && (q.participants[0] === j.user));\n g.conditionClass(p, \"repliedLast\", s);\n g.conditionClass(p, \"seenByAll\", (s && (k.getSeenBy(q.thread_id).length === r.length)));\n };\n k.subscribe(\"state-changed\", function(p, q) {\n for (var r in m) {\n var s = i.scry(document.body, (r + \".seenByListener\"));\n for (var t = 0; (t < s.length); t++) {\n var u = s[t], v = h.get(u, \"thread-id\");\n if (q[v]) {\n l.getThreadMeta(v, function(w) {\n o(u, w);\n });\n };\n };\n };\n });\n e.exports = n;\n});\n__d(\"MercuryThreadMetadataRenderer\", [\"MercuryConfig\",\"CSS\",\"DOM\",\"Emoji\",\"HTML\",\"JSLogger\",\"MercuryAttachment\",\"MercuryAttachmentType\",\"MercuryMessageSourceTags\",\"MercurySingletonMixin\",\"MercuryThreadMetadataRawRenderer\",\"MercuryParticipants\",\"MercuryParticipantsConstants\",\"Pixelz.react\",\"React\",\"MercurySeenByAll\",\"MercuryServerRequests\",\"SplitImage.react\",\"Style\",\"MercuryThreadlistIconTemplates\",\"MercuryThreads\",\"Tooltip\",\"URI\",\"arrayContains\",\"createArrayFrom\",\"copyProperties\",\"cx\",\"formatDate\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"MercuryConfig\"), h = b(\"CSS\"), i = b(\"DOM\"), j = b(\"Emoji\"), k = b(\"HTML\"), l = b(\"JSLogger\"), m = b(\"MercuryAttachment\"), n = b(\"MercuryAttachmentType\"), o = b(\"MercuryMessageSourceTags\"), p = b(\"MercurySingletonMixin\"), q = b(\"MercuryThreadMetadataRawRenderer\"), r = b(\"MercuryParticipants\"), s = b(\"MercuryParticipantsConstants\"), t = b(\"Pixelz.react\"), u = b(\"React\"), v = b(\"MercurySeenByAll\"), w = b(\"MercuryServerRequests\"), x = b(\"SplitImage.react\"), y = b(\"Style\"), z = b(\"MercuryThreadlistIconTemplates\"), aa = b(\"MercuryThreads\"), ba = b(\"Tooltip\"), ca = b(\"URI\"), da = b(\"arrayContains\"), ea = b(\"createArrayFrom\"), fa = b(\"copyProperties\"), ga = b(\"cx\"), ha = b(\"formatDate\"), ia = b(\"tx\"), ja = l.create(\"wm_timestamp\");\n function ka(qa) {\n this._fbid = qa;\n this._serverRequests = w.getForFBID(qa);\n this._threads = aa.getForFBID(qa);\n };\n fa(ka, p);\n fa(ka.prototype, {\n renderTimestamp: function(qa, ra, sa, ta) {\n if (ta) {\n if (!ra) {\n ja.warn(\"no_title\");\n ra = (new Date(ta)).toLocaleDateString();\n }\n ;\n qa.setAttribute(\"title\", ra);\n qa.setAttribute(\"data-utime\", (ta / 1000));\n if (!sa) {\n ja.warn(\"no_display\");\n sa = ha(new Date(ta), (g[\"24h_times\"] ? \"H:i\" : \"g:ia\"));\n }\n ;\n i.setContent(qa, sa);\n h.show(qa);\n }\n ;\n },\n renderMessageSourceTags: function(qa, ra, sa, ta) {\n var ua = \"\", va = \"\", wa = \"\";\n if (da(sa, o.MESSENGER)) {\n ua = \"Sent from Messenger\";\n va = new ca(\"/mobile/messenger\");\n wa = \"-cx-PRIVATE-webMessengerMessageGroup__sourcemessenger\";\n }\n else if (da(sa, o.MOBILE)) {\n ua = \"Sent from Mobile\";\n va = new ca(\"/mobile/\");\n wa = \"-cx-PRIVATE-webMessengerMessageGroup__sourcemobile\";\n }\n else if (da(sa, o.CHAT)) {\n ua = \"Sent from chat\";\n wa = \"-cx-PRIVATE-webMessengerMessageGroup__sourcechat\";\n }\n else if (da(sa, o.EMAIL)) {\n if (ta) {\n ua = ia._(\"Sent from {email}\", {\n email: ta\n });\n }\n else ua = \"Sent from email\";\n ;\n wa = \"-cx-PRIVATE-webMessengerMessageGroup__sourceemail\";\n }\n \n \n \n ;\n if (wa) {\n ba.set(qa, ua);\n h.addClass(ra, wa);\n if (va) {\n qa.setAttribute(\"href\", va);\n }\n else qa.removeAttribute(\"href\");\n ;\n }\n else h.hide(qa);\n ;\n },\n renderMessageLocation: function(qa, ra, sa) {\n var ta = ca(\"/ajax/messaging/hovercard/map.php\").setQueryData(sa);\n qa.setAttribute(\"data-hovercard\", ta);\n h.removeClass(qa, \"-cx-PRIVATE-webMessengerMessageGroup__nolocation\");\n h.show(ra);\n },\n renderSpoofWarning: function(qa, ra, sa) {\n if (ra) {\n h.addClass(qa, \"-cx-PRIVATE-webMessengerMessageGroup__spoofwarning\");\n ba.set(qa, ia._(\"Unable to confirm {name_or_email} as the sender.\", {\n name_or_email: sa.name\n }));\n }\n ;\n },\n renderChatSpoofWarning: function(qa, ra, sa) {\n if (ra) {\n i.appendContent(qa, ia._(\"Unable to confirm {name_or_email} as the sender.\", {\n name_or_email: sa.name\n }));\n };\n },\n renderCoreThreadlist: function(qa, ra, sa, ta, ua) {\n ta = (ta || {\n });\n this.renderThreadImage(qa, ra.getNode(\"image\"));\n var va = ra.getNode(\"accessibleName\"), wa = [ra.getNode(\"name\"),];\n if (va) {\n wa.push(va);\n };\n pa(this, qa, wa, ta);\n if ((qa.folder && ua)) {\n oa(ra.getNode(\"folderBadge\"), qa.folder);\n };\n var xa = ra.getNode(\"timestamp\");\n this.renderTimestamp(xa, qa.timestamp_absolute, qa.timestamp_relative, qa.timestamp);\n this.renderSnippet(qa, ra.getNode(\"snippet\"));\n ma(ra, qa);\n sa(ra, qa);\n },\n renderAndSeparatedParticipantList: function(qa, ra, sa) {\n sa = (sa || {\n });\n sa.last_separator_uses_and = true;\n this._threads.getThreadMeta(qa, function(ta) {\n pa(this, ta, ra, sa);\n }.bind(this));\n },\n renderSnippet: function(qa, ra) {\n var sa = false, ta = i.create(\"span\");\n h.addClass(ta, \"MercuryRepliedIndicator\");\n i.appendContent(ra, ta);\n v.updateOnSeenChange(ta, qa);\n var ua = qa.snippet;\n if (ua) {\n if (qa.snippet_has_attachment) {\n i.appendContent(ra, i.create(\"span\", {\n className: \"MercuryAttachmentIndicator\"\n }));\n };\n if (qa.is_forwarded_snippet) {\n i.appendContent(ra, i.create(\"strong\", {\n className: \"-cx-PRIVATE-fbMercuryStatus__forwarded\"\n }, \"Forwarded Message:\"));\n };\n if ((ua.substr(0, 4) == \"?OTR\")) {\n ua = \"[encrypted message]\";\n }\n else ua = ua.replace(/\\r\\n|[\\r\\n]/g, \" \");\n ;\n ua = k(j.htmlEmojiAndEmote(ua));\n }\n else {\n if (qa.is_forwarded_snippet) {\n i.appendContent(ra, i.create(\"strong\", {\n className: \"-cx-PRIVATE-fbMercuryStatus__forwarded\"\n }, \"Forwarded Message\"));\n };\n if (((qa.snippet_has_attachment && qa.snippet_attachments) && qa.snippet_attachments.length)) {\n sa = true;\n ua = i.create(\"span\");\n na(this, qa, ua);\n }\n ;\n }\n ;\n var va = qa.participants.length;\n if (qa.is_subscribed) {\n va--;\n };\n if ((((!sa && qa.snippet_sender) && (r.getIDForUser(this._fbid) != qa.snippet_sender)) && (va > 1))) {\n r.get(qa.snippet_sender, function(wa) {\n if (wa.short_name) {\n i.appendContent(ra, ia._(\"{name}: {conversation_snippet}\", {\n name: wa.short_name,\n conversation_snippet: ua\n }));\n }\n else i.appendContent(ra, ua);\n ;\n });\n }\n else i.appendContent(ra, ua);\n ;\n },\n getTitanURL: function(qa, ra, sa) {\n if ((qa.substr(0, qa.indexOf(\":\")) == \"user\")) {\n q.getUserCanonicalTitanURL(qa, ra, sa);\n }\n else this._serverRequests.getServerThreadID(qa, function(ta) {\n q.getTitanURLWithServerID(ta, ra, sa);\n });\n ;\n },\n renderTitanLink: function(qa, ra, sa, ta) {\n if ((qa.substr(0, qa.indexOf(\":\")) == \"user\")) {\n q.renderUserCanonicalTitanLink(qa, ra, sa, ta);\n }\n else this._serverRequests.getServerThreadID(qa, function(ua) {\n q.renderTitanLinkWithServerID(ua, ra, sa, ta);\n });\n ;\n },\n renderThreadImage: function(qa, ra) {\n if (qa.image_src) {\n var sa = t({\n height: s.BIG_IMAGE_SIZE,\n resizeMode: \"cover\",\n src: qa.image_src,\n width: s.BIG_IMAGE_SIZE\n });\n u.renderComponent(sa, ra);\n return;\n }\n ;\n var ta = r.getIDForUser(this._fbid), ua = [], va = qa.participants.filter(function(wa) {\n return (wa != ta);\n });\n if (!va.length) {\n ua = [ta,];\n }\n else if ((va.length == 1)) {\n ua = [va[0],];\n }\n else ua = va.slice(0, 3);\n \n ;\n this.renderParticipantImages(ua, ra);\n },\n renderParticipantImages: function(qa, ra) {\n r.getOrderedBigImageMulti(qa, function(sa) {\n var ta = x({\n srcs: sa,\n border: true,\n size: s.BIG_IMAGE_SIZE\n });\n u.renderComponent(ta, ra);\n });\n },\n renderParticipantList: function(qa, ra, sa, ta) {\n return q.renderRawParticipantList(this._serverRequests.getServerThreadIDNow(qa), ra, sa, ta);\n },\n renderThreadNameAndParticipantList: function(qa, ra, sa, ta) {\n var ua = q.renderRawParticipantList(this._serverRequests.getServerThreadIDNow(qa), ra, sa, ta), va = this._threads.getThreadMetaNow(qa);\n if (!va.name) {\n return ua\n };\n return ia._(\"{conversation_name} [with {participant_list}]\", {\n conversation_name: va.name,\n participant_list: ua\n });\n },\n renderParticipantCount: function(qa, ra) {\n return q.renderRawParticipantCount(this._serverRequests.getServerThreadIDNow(qa), ra);\n }\n });\n function la(qa) {\n if (!qa.snippet_attachments) {\n return []\n };\n return qa.snippet_attachments.filter(function(ra) {\n return (ra.attach_type === n.PHOTO);\n });\n };\n function ma(qa, ra) {\n var sa = la(ra);\n if ((sa.length === 0)) {\n return\n };\n var ta = sa[0].thumbnail_url;\n if (!ta) {\n return\n };\n var ua = (((sa.length == 1)) ? \"snippet-thumbnail-single\" : \"snippet-thumbnail-multiple\"), va = qa.getNode(ua);\n if (!va) {\n return\n };\n var wa = i.find(va, \"i\");\n y.set(wa, \"background-image\", ((\"url(\" + ta) + \")\"));\n h.show(va);\n };\n function na(qa, ra, sa) {\n var ta = (ra.snippet_sender && (r.getIDForUser(qa._fbid) == ra.snippet_sender)), ua = function(za) {\n if ((!ra.snippet_sender || ta)) {\n za(null);\n return;\n }\n ;\n r.get(ra.snippet_sender, function(ab) {\n za(ab.short_name);\n });\n }, va = la(ra), wa = (va.length == ra.snippet_attachments.length), xa = (((ra.snippet_attachments.length === 1) && ra.snippet_attachments[0].metadata) && (ra.snippet_attachments[0].metadata.type == \"fb_voice_message\")), ya = ((ra.snippet_attachments.length === 1) && (ra.snippet_attachments[0].attach_type === n.STICKER));\n ua(function(za) {\n var ab = null;\n if (wa) {\n var bb = z[\":fb:mercury:attachment-icon-text\"].build().getRoot();\n if ((va.length === 1)) {\n ab = (ta ? \"You sent a photo.\" : ia._(\"{name} sent a photo.\", {\n name: za\n }));\n }\n else ab = (ta ? ia._(\"You sent {num_photos} photos.\", {\n num_photos: va.length\n }) : ia._(\"{name} sent {num_photos} photos.\", {\n name: za,\n num_photos: va.length\n }));\n ;\n h.addClass(bb, m.getAttachIconClass(va[0].icon_type));\n i.appendContent(bb, ab);\n i.appendContent(sa, bb);\n }\n else if (xa) {\n var cb = z[\":fb:mercury:attachment-icon-text\"].build().getRoot();\n ab = (ta ? \"You sent a voice message.\" : ia._(\"{name} sent a voice message.\", {\n name: za\n }));\n h.addClass(cb, m.getAttachIconClass(ra.snippet_attachments[0].icon_type));\n i.appendContent(cb, ab);\n i.appendContent(sa, cb);\n }\n else if (ya) {\n ab = (ta ? \"You sent a sticker.\" : ia._(\"{name} sent a sticker.\", {\n name: za\n }));\n i.appendContent(sa, ab);\n }\n else ra.snippet_attachments.filter(function(db) {\n return ((db.attach_type == n.FILE) || (db.attach_type == n.PHOTO));\n }).forEach(function(db) {\n var eb = z[\":fb:mercury:attachment-icon-text\"].build().getRoot();\n i.appendContent(eb, db.name);\n h.addClass(eb, m.getAttachIconClass(db.icon_type));\n i.appendContent(sa, eb);\n });\n \n \n ;\n });\n };\n function oa(qa, ra) {\n ea(qa).forEach(function(sa) {\n i.setContent(sa, ra);\n });\n };\n function pa(qa, ra, sa, ta) {\n sa = ea(sa);\n if (ra.name) {\n var ua = q.renderRawTitleWithUnreadCount(ra.name, (ta.show_unread_count ? ra.unread_count : 0));\n sa.forEach(function(wa) {\n i.setContent(wa, ua);\n });\n (ta.callback && ta.callback(ua));\n return;\n }\n ;\n var va = ra.participants;\n if ((ra.participants.length > 1)) {\n va = ra.participants.filter(function(wa) {\n return (wa != r.getIDForUser(qa._fbid));\n });\n };\n r.getMulti(va, function(wa) {\n q.renderParticipantListWithNoThreadName(qa._serverRequests.getServerThreadIDNow(ra.thread_id), ra, va, wa, sa, ta);\n });\n };\n e.exports = ka;\n});\n__d(\"escapeRegex\", [], function(a, b, c, d, e, f) {\n function g(h) {\n return h.replace(/([.?*+\\^$\\[\\]\\\\(){}|\\-])/g, \"\\\\$1\");\n };\n e.exports = g;\n});\n__d(\"MercuryThreadSearchUtils\", [\"escapeRegex\",\"TokenizeUtil\",], function(a, b, c, d, e, f) {\n var g = b(\"escapeRegex\"), h = b(\"TokenizeUtil\"), i = {\n wordsInString: function(j) {\n return ((j || \"\")).split(/\\s+/).filter(function(k) {\n return (k.trim().length > 0);\n });\n },\n anyMatchPredicate: function(j, k) {\n for (var l = 0; (l < j.length); l++) {\n if (k(j[l])) {\n return true\n };\n };\n return false;\n },\n allMatchPredicate: function(j, k) {\n for (var l = 0; (l < j.length); l++) {\n if (!k(j[l])) {\n return false\n };\n };\n return true;\n },\n queryWordMatchesAnyNameWord: function(j, k) {\n var l = new RegExp((\"\\\\b\" + g(j)), \"i\");\n return this.anyMatchPredicate(k, function(m) {\n var n = h.parse(m).flatValue;\n return l.test(n);\n });\n },\n queryMatchesName: function(j, k) {\n var l = this.wordsInString(j), m = this.wordsInString(k);\n return this.allMatchPredicate(l, function(n) {\n return this.queryWordMatchesAnyNameWord(n, m);\n }.bind(this));\n }\n };\n e.exports = i;\n});\n__d(\"Dcode\", [], function(a, b, c, d, e, f) {\n var g, h = {\n }, i = {\n _: \"%\",\n A: \"%2\",\n B: \"000\",\n C: \"%7d\",\n D: \"%7b%22\",\n E: \"%2c%22\",\n F: \"%22%3a\",\n G: \"%2c%22ut%22%3a1\",\n H: \"%2c%22bls%22%3a\",\n I: \"%2c%22n%22%3a%22%\",\n J: \"%22%3a%7b%22i%22%3a0%7d\",\n K: \"%2c%22pt%22%3a0%2c%22vis%22%3a\",\n L: \"%2c%22ch%22%3a%7b%22h%22%3a%22\",\n M: \"%7b%22v%22%3a2%2c%22time%22%3a1\",\n N: \".channel%22%2c%22sub%22%3a%5b\",\n O: \"%2c%22sb%22%3a1%2c%22t%22%3a%5b\",\n P: \"%2c%22ud%22%3a100%2c%22lc%22%3a0\",\n Q: \"%5d%2c%22f%22%3anull%2c%22uct%22%3a\",\n R: \".channel%22%2c%22sub%22%3a%5b1%5d\",\n S: \"%22%2c%22m%22%3a0%7d%2c%7b%22i%22%3a\",\n T: \"%2c%22blc%22%3a1%2c%22snd%22%3a1%2c%22ct%22%3a\",\n U: \"%2c%22blc%22%3a0%2c%22snd%22%3a1%2c%22ct%22%3a\",\n V: \"%2c%22blc%22%3a0%2c%22snd%22%3a0%2c%22ct%22%3a\",\n W: \"%2c%22s%22%3a0%2c%22blo%22%3a0%7d%2c%22bl%22%3a%7b%22ac%22%3a\",\n X: \"%2c%22ri%22%3a0%7d%2c%22state%22%3a%7b%22p%22%3a0%2c%22ut%22%3a1\",\n Y: \"%2c%22pt%22%3a0%2c%22vis%22%3a1%2c%22bls%22%3a0%2c%22blc%22%3a0%2c%22snd%22%3a1%2c%22ct%22%3a\",\n Z: \"%2c%22sb%22%3a1%2c%22t%22%3a%5b%5d%2c%22f%22%3anull%2c%22uct%22%3a0%2c%22s%22%3a0%2c%22blo%22%3a0%7d%2c%22bl%22%3a%7b%22ac%22%3a\"\n };\n (function() {\n var k = [];\n for (var l in i) {\n h[i[l]] = l;\n k.push(i[l]);\n };\n k.reverse();\n g = new RegExp(k.join(\"|\"), \"g\");\n })();\n var j = {\n encode: function(k) {\n return encodeURIComponent(k).replace(/([_A-Z])|%../g, function(l, m) {\n return (m ? (\"%\" + m.charCodeAt(0).toString(16)) : l);\n }).toLowerCase().replace(g, function(l) {\n return h[l];\n });\n },\n decode: function(k) {\n return decodeURIComponent(k.replace(/[_A-Z]/g, function(l) {\n return i[l];\n }));\n }\n };\n e.exports = j;\n});\n__d(\"Poller\", [\"ArbiterMixin\",\"AsyncRequest\",\"Cookie\",\"Env\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"AsyncRequest\"), i = b(\"Cookie\"), j = b(\"Env\"), k = b(\"copyProperties\"), l = b(\"emptyFunction\");\n function m(p) {\n this._config = k({\n clearOnQuicklingEvents: true,\n setupRequest: l,\n interval: null,\n maxRequests: Infinity,\n dontStart: false\n }, p);\n if (!this._config.dontStart) {\n this.start();\n };\n };\n m.MIN_INTERVAL = 2000;\n k(m.prototype, g, {\n start: function() {\n if (this._polling) {\n return this\n };\n this._requests = 0;\n this.request();\n return this;\n },\n stop: function() {\n this._cancelRequest();\n return this;\n },\n mute: function() {\n this._muted = true;\n return this;\n },\n resume: function() {\n if (this._muted) {\n this._muted = false;\n if ((!this._handle && this._polling)) {\n return this.request()\n };\n }\n ;\n return this;\n },\n skip: function() {\n this._skip = true;\n return this;\n },\n reset: function() {\n return this.stop().start();\n },\n request: function() {\n this._cancelRequest();\n this._polling = true;\n if (!o()) {\n return this._done()\n };\n if (this._muted) {\n return this\n };\n if ((++this._requests > this._config.maxRequests)) {\n return this._done()\n };\n var p = new h(), q = false;\n p.setInitialHandler(function() {\n return !q;\n });\n this._cancelRequest = function() {\n q = true;\n this._cleanup();\n }.bind(this);\n p.setFinallyHandler(n.bind(this));\n p.setInitialHandler = l;\n p.setFinallyHandler = l;\n this._config.setupRequest(p, this);\n if (this._skip) {\n this._skip = false;\n n.bind(this).defer();\n }\n else p.send();\n ;\n return this;\n },\n isPolling: function() {\n return this._polling;\n },\n isMuted: function() {\n return this._muted;\n },\n setInterval: function(p) {\n if (p) {\n this._config.interval = p;\n this.start();\n }\n ;\n },\n getInterval: function() {\n return this._config.interval;\n },\n _cleanup: function() {\n if (this._handle) {\n clearTimeout(this._handle);\n };\n this._handle = null;\n this._cancelRequest = l;\n this._polling = false;\n },\n _done: function() {\n this._cleanup();\n this.inform(\"done\", {\n sender: this\n });\n return this;\n },\n _config: null,\n _requests: 0,\n _muted: false,\n _polling: false,\n _skip: false,\n _cancelRequest: l\n });\n function n() {\n if (!this._polling) {\n return\n };\n if ((this._requests < this._config.maxRequests)) {\n var p = this._config.interval;\n p = ((typeof p === \"function\") ? p(this._requests) : p);\n this._handle = this.request.bind(this).defer((((p > m.MIN_INTERVAL)) ? p : m.MIN_INTERVAL), this._config.clearOnQuicklingEvents);\n }\n else this._done();\n ;\n };\n function o() {\n return (j.user == i.get(\"c_user\"));\n };\n e.exports = m;\n});\n__d(\"SystemEvents\", [\"Arbiter\",\"Env\",\"ErrorUtils\",\"UserAgent\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Env\"), i = b(\"ErrorUtils\"), j = b(\"UserAgent\"), k = b(\"copyProperties\"), l = new g(), m = [], n = 1000;\n setInterval(function() {\n for (var w = 0; (w < m.length); w++) {\n m[w]();;\n };\n }, n, false);\n function o() {\n return (((/c_user=(\\d+)/.test(document.cookie) && RegExp.$1)) || 0);\n };\n var p = h.user, q = navigator.onLine;\n function r() {\n if (!q) {\n q = true;\n l.inform(l.ONLINE, q);\n }\n ;\n };\n function s() {\n if (q) {\n q = false;\n l.inform(l.ONLINE, q);\n }\n ;\n };\n if (j.ie()) {\n if ((j.ie() >= 8)) {\n window.attachEvent(\"onload\", function() {\n document.body.ononline = r;\n document.body.onoffline = s;\n });\n }\n else m.push(function() {\n ((navigator.onLine ? r : s))();\n });\n ;\n }\n else if (window.addEventListener) {\n if (!j.chrome()) {\n window.addEventListener(\"online\", r, false);\n window.addEventListener(\"offline\", s, false);\n }\n \n }\n;\n var t = p;\n m.push(function() {\n var w = o();\n if ((t != w)) {\n l.inform(l.USER, w);\n t = w;\n }\n ;\n });\n var u = Date.now();\n function v() {\n var w = Date.now(), x = (w - u), y = ((x < 0) || (x > 10000));\n u = w;\n if (y) {\n l.inform(l.TIME_TRAVEL, x);\n };\n return y;\n };\n m.push(v);\n m.push(function() {\n if ((window.onerror != i.onerror)) {\n window.onerror = i.onerror;\n };\n });\n k(l, {\n USER: \"SystemEvents/USER\",\n ONLINE: \"SystemEvents/ONLINE\",\n TIME_TRAVEL: \"SystemEvents/TIME_TRAVEL\",\n isPageOwner: function(w) {\n return (((w || o())) == p);\n },\n isOnline: function() {\n return (j.chrome() || q);\n },\n checkTimeTravel: v\n });\n e.exports = l;\n});\n__d(\"setIntervalAcrossTransitions\", [], function(a, b, c, d, e, f) {\n function g(h, i) {\n return setInterval(h, i, false);\n };\n e.exports = g;\n});\n__d(\"PresenceCookieManager\", [\"Cookie\",\"Dcode\",\"ErrorUtils\",\"Env\",\"JSLogger\",\"PresenceUtil\",\"URI\",\"PresenceInitialData\",], function(a, b, c, d, e, f) {\n var g = b(\"Cookie\"), h = b(\"Dcode\"), i = b(\"ErrorUtils\"), j = b(\"Env\"), k = b(\"JSLogger\"), l = b(\"PresenceUtil\"), m = b(\"URI\"), n = b(\"PresenceInitialData\"), o = n.cookieVersion, p = n.dictEncode, q = \"presence\", r = {\n }, s = null, t = null, u = k.create(\"presence_cookie\");\n function v() {\n try {\n var z = g.get(q);\n if ((s !== z)) {\n s = z;\n t = null;\n if ((z && (z.charAt(0) == \"E\"))) {\n z = h.decode(z.substring(1));\n };\n if (z) {\n t = JSON.parse(z);\n };\n }\n ;\n if ((t && ((!t.user || (t.user === j.user))))) {\n return t\n };\n } catch (y) {\n u.warn(\"getcookie_error\");\n };\n return null;\n };\n function w() {\n return parseInt((Date.now() / 1000), 10);\n };\n var x = {\n register: function(y, z) {\n r[y] = z;\n },\n store: function() {\n var y = v();\n if (((y && y.v) && (o < y.v))) {\n return\n };\n var z = {\n v: o,\n time: w(),\n user: j.user\n };\n for (var aa in r) {\n z[aa] = i.applyWithGuard(r[aa], r, [(y && y[aa]),], function(ea) {\n ea.presence_subcookie = aa;\n });;\n };\n var ba = JSON.stringify(z);\n if (p) {\n ba = (\"E\" + h.encode(ba));\n };\n if (l.hasUserCookie()) {\n var ca = ba.length;\n if ((ca > 1024)) {\n u.warn(\"big_cookie\", ca);\n };\n var da = (m.getRequestURI(false).isSecure() && !!g.get(\"csm\"));\n g.set(q, ba, null, null, da);\n }\n ;\n },\n clear: function() {\n g.clear(q);\n },\n getSubCookie: function(y) {\n var z = v();\n if (!z) {\n return null\n };\n return z[y];\n }\n };\n e.exports = x;\n});\n__d(\"PresenceState\", [\"Arbiter\",\"ErrorUtils\",\"JSLogger\",\"PresenceCookieManager\",\"copyProperties\",\"debounceAcrossTransitions\",\"setIntervalAcrossTransitions\",\"PresenceInitialData\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ErrorUtils\"), i = b(\"JSLogger\"), j = b(\"PresenceCookieManager\"), k = b(\"copyProperties\"), l = b(\"debounceAcrossTransitions\"), m = b(\"setIntervalAcrossTransitions\"), n = b(\"PresenceInitialData\"), o = (n.cookiePollInterval || 2000), p = [], q = [], r = null, s = null, t = 0, u = null, v = 0, w = [\"sb2\",\"t2\",\"lm2\",\"uct2\",\"tr\",\"tw\",\"at\",\"wml\",], x = i.create(\"presence_state\");\n function y() {\n return j.getSubCookie(\"state\");\n };\n function z() {\n t = Date.now();\n j.store();\n da(s);\n };\n var aa = l(z, 0);\n function ba(ia) {\n if (((((typeof ia == \"undefined\") || isNaN(ia)) || (ia == Number.POSITIVE_INFINITY)) || (ia == Number.NEGATIVE_INFINITY))) {\n ia = 0;\n };\n return ia;\n };\n function ca(ia) {\n var ja = {\n };\n if (ia) {\n w.forEach(function(ma) {\n ja[ma] = ia[ma];\n });\n if ((t < ia.ut)) {\n x.error(\"new_cookie\", {\n cookie_time: ia.ut,\n local_time: t\n });\n };\n }\n ;\n ja.ut = t;\n for (var ka = 0, la = p.length; (ka < la); ka++) {\n h.applyWithGuard(p[ka], null, [ja,]);;\n };\n s = ja;\n return s;\n };\n function da(ia) {\n v++;\n t = ba(ia.ut);\n if (!r) {\n r = m(ga, o);\n };\n s = ia;\n if ((u === null)) {\n u = ia;\n };\n for (var ja = 0, ka = q.length; (ja < ka); ja++) {\n h.applyWithGuard(q[ja], null, [ia,]);;\n };\n v--;\n };\n function ea(ia) {\n if ((ia && ia.ut)) {\n if ((t < ia.ut)) {\n return true;\n }\n else if ((ia.ut < t)) {\n x.error(\"old_cookie\", {\n cookie_time: ia.ut,\n local_time: t\n });\n }\n \n };\n return false;\n };\n function fa() {\n var ia = y();\n if (ea(ia)) {\n s = ia;\n };\n return s;\n };\n function ga() {\n var ia = y();\n if (ea(ia)) {\n da(ia);\n };\n };\n j.register(\"state\", ca);\n g.subscribe(i.DUMP_EVENT, function(ia, ja) {\n ja.presence_state = {\n initial: k({\n }, u),\n state: k({\n }, s),\n update_time: t,\n sync_paused: v,\n poll_time: o\n };\n });\n (function() {\n var ia = fa();\n if (ia) {\n da(ia);\n }\n else {\n x.debug(\"no_cookie_initial\");\n da(ca());\n return;\n }\n ;\n })();\n var ha = {\n doSync: function(ia) {\n if (v) {\n return\n };\n if (ia) {\n z();\n }\n else aa();\n ;\n },\n registerStateStorer: function(ia) {\n p.push(ia);\n },\n registerStateLoader: function(ia) {\n q.push(ia);\n },\n get: function() {\n return fa();\n },\n getInitial: function() {\n return u;\n },\n verifyNumber: ba\n };\n e.exports = ha;\n});\n__d(\"TypingDetector\", [\"Event\",\"function-extensions\",\"ArbiterMixin\",\"Input\",\"Run\",\"copyProperties\",\"createObjectFrom\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\");\n b(\"function-extensions\");\n var h = b(\"ArbiterMixin\"), i = b(\"Input\"), j = b(\"Run\"), k = b(\"copyProperties\"), l = b(\"createObjectFrom\"), m = b(\"emptyFunction\");\n function n(o) {\n this._input = o;\n this._ignoreKeys = {\n };\n };\n n.INACTIVE = 0;\n n.TYPING = 1;\n n.QUITTING = 2;\n k(n.prototype, h, {\n _timeout: 7000,\n _currentState: n.INACTIVE,\n init: function() {\n this.init = m;\n this.reset();\n g.listen(this._input, \"keyup\", this._update.bind(this));\n j.onUnload(this._onunload.bind(this));\n },\n reset: function() {\n clearTimeout(this._checkTimer);\n this._checkTimer = null;\n this._lastKeystrokeAt = null;\n this._currentState = n.INACTIVE;\n },\n setIgnoreKeys: function(o) {\n this._ignoreKeys = l(o);\n },\n _onunload: function() {\n if ((this._currentState == n.TYPING)) {\n this._transition(n.QUITTING);\n };\n },\n _update: function(event) {\n var o = g.getKeyCode(event), p = this._currentState;\n if (!this._ignoreKeys[o]) {\n if ((i.getValue(this._input).trim().length === 0)) {\n if ((p == n.TYPING)) {\n this._transition(n.INACTIVE);\n };\n }\n else if ((p == n.TYPING)) {\n this._recordKeystroke();\n }\n else if ((p == n.INACTIVE)) {\n this._transition(n.TYPING);\n this._recordKeystroke();\n }\n \n \n \n };\n },\n _transition: function(o) {\n this.reset();\n this._currentState = o;\n this.inform(\"change\", o);\n },\n _recordKeystroke: function() {\n this._lastKeystrokeTime = Date.now();\n if (!this._checkTimer) {\n this._checkTimer = this._checkTyping.bind(this).defer(this._timeout);\n };\n },\n _checkTyping: function() {\n var o = (this._lastKeystrokeTime + this._timeout), p = Date.now();\n if ((p > o)) {\n this._transition(n.INACTIVE);\n }\n else {\n clearTimeout(this._checkTimer);\n this._checkTimer = this._checkTyping.bind(this).defer(((o - p) + 10));\n }\n ;\n }\n });\n e.exports = n;\n});\n__d(\"URLMatcher\", [], function(a, b, c, d, e, f) {\n var g = \"!\\\"#%&'()*,-./:;\\u003C\\u003E?@[\\\\]^_`{|}\", h = \"\\u2000-\\u206f\\u00ab\\u00bb\\uff08\\uff09\", i = \"(?:25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])\", j = \"(?:(?:ht|f)tps?)://\", k = ((((\"(?:(?:\" + i) + \"[.]){3}\") + i) + \")\"), l = \"\\\\[(?:(?:[A-Fa-f0-9]{1,4}::?){1,7}[A-Fa-f0-9]{1,4})\\\\]\", m = \"(?:\\\\b)www\\\\d{0,3}[.]\", n = (((\"[^\\\\s\" + g) + h) + \"]\"), o = ((((((\"(?:(?:(?:[.:\\\\-_%@]|\" + n) + \")*\") + n) + \")|\") + l) + \")\"), p = \"(?:[.][a-z]{2,4})\", q = \"(?::\\\\d+){0,1}\", r = \"(?=[/?#])\", s = ((((((((((((((((((((((((((\"(?:\" + \"(?:\") + j) + o) + q) + \")|\") + \"(?:\") + k) + q) + \")|\") + \"(?:\") + l) + q) + \")|\") + \"(?:\") + m) + o) + p) + q) + \")|\") + \"(?:\") + o) + p) + q) + r) + \")\") + \")\"), t = \"[/#?]\", u = \"\\\\([^\\\\s()\\u003C\\u003E]+\\\\)\", v = \"[^\\\\s()\\u003C\\u003E?#]+\", w = new RegExp(s, \"im\"), x = \"^\\\\[[0-9]{1,4}:[0-9]{1,4}:[A-Fa-f0-9]{1,4}\\\\]\", y = new RegExp(x, \"im\"), z = (((((((((((\"(?:\" + \"(?:\") + t) + \")\") + \"(?:\") + \"(?:\") + u) + \"|\") + v) + \")*\") + \")*\") + \")*\"), aa = new RegExp((((((((\"(\" + \"(?:\") + s) + \")\") + \"(?:\") + z) + \")\") + \")\"), \"im\"), ba = new RegExp(((((((((((((\"(\" + \"(?:\") + j) + o) + q) + \")|\") + \"(?:\") + m) + o) + p) + q) + \")\") + \")\")), ca = /[\\s'\";]/, da = new RegExp(t, \"im\"), ea = new RegExp(\"[\\\\s!\\\"#%&'()*,-./:;\\u003C\\u003E?@[\\\\]^_`{|}\\u00ab\\u00bb\\u2000-\\u206f\\uff08\\uff09]\", \"im\"), fa = new RegExp(\"[\\\\s()\\u003C\\u003E?#]\", \"im\"), ga = new RegExp(\"\\\\s()\\u003C\\u003E\"), ha = function(oa) {\n if ((oa && (oa.indexOf(\"@\") != -1))) {\n return ((ba.exec(oa)) ? oa : null);\n }\n else return oa\n ;\n }, ia = function(oa) {\n return ja(oa, aa);\n }, ja = function(oa, pa) {\n var qa = (((pa.exec(oa) || []))[1] || null);\n return ha(qa);\n }, ka = function(oa) {\n return w.exec(oa);\n }, la = function(oa) {\n return !ca.test(oa.charAt((oa.length - 1)));\n }, ma = function(oa) {\n do {\n var pa = w.exec(oa);\n if (!pa) {\n return null\n };\n var qa = false;\n if ((((pa[0][0] === \"[\") && (pa.index > 0)) && (oa[(pa.index - 1)] === \"@\"))) {\n var ra = y.exec(pa[0]);\n if (ra) {\n qa = true;\n oa = oa.substr((pa.index + ra[0].length));\n }\n ;\n }\n ;\n } while (qa);\n var sa = oa.substr((pa.index + pa[0].length));\n if (((sa.length === 0) || !(da.test(sa[0])))) {\n return ha(pa[0])\n };\n var ta = 0, ua = 0, va = 1, wa = 0, xa = ua;\n for (var ya = 1; (ya < sa.length); ya++) {\n var za = sa[ya];\n if ((xa === ua)) {\n if ((za === \"(\")) {\n wa = (wa + 1);\n xa = va;\n }\n else if ((da.test(za) || !(ea.test(za)))) {\n ta = ya;\n }\n else if (fa.test(za)) {\n break;\n }\n \n ;\n }\n else if ((za === \"(\")) {\n wa = (wa + 1);\n }\n else if ((za === \")\")) {\n wa = (wa - 1);\n if ((wa === 0)) {\n xa = ua;\n ta = ya;\n }\n ;\n }\n else if (ga.test(za)) {\n break;\n }\n \n \n ;\n };\n return ha((pa[0] + sa.substring(0, (ta + 1))));\n }, na = {\n };\n na.permissiveMatch = ia;\n na.matchToPattern = ja;\n na.matchHost = ka;\n na.trigger = la;\n na.match = ma;\n e.exports = na;\n});"); |
| // 9096 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s1406cdb8f82a4497c9e210b291001f76845e62bf"); |
| // 9097 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"OSd/n\",]);\n}\n;\n;\n__d(\"MercuryMessageSourceTags\", [], function(a, b, c, d, e, f) {\n e.exports = {\n CHAT: \"source:chat\",\n MOBILE: \"source:mobile\",\n MESSENGER: \"source:messenger\",\n EMAIL: \"source:email\"\n };\n});\n__d(\"MercuryTimePassed\", [], function(a, b, c, d, e, f) {\n e.exports = {\n TODAY: 0,\n WEEK_AGO: 1,\n CURRENT_YEAR: 3,\n OTHER_YEAR: 4,\n MONTH_AGO: 2\n };\n});\n__d(\"MessagingEvent\", [], function(a, b, c, d, e, f) {\n e.exports = {\n UNSUBSCRIBE: \"unsubscribe\",\n DELIVERY_RECEIPT: \"delivery_receipt\",\n REPORT_SPAM_MESSAGES: \"report_spam_messages\",\n DELIVER_FAST_PAST: \"deliver_fast_path\",\n DELETE_MESSAGES: \"delete_messages\",\n READ_RECEIPT: \"read_receipt\",\n SENT_PUSH: \"sent_push\",\n READ: \"read\",\n CHANGE_MUTE_SETTINGS: \"change_mute_settings\",\n ERROR: \"error\",\n UNMARK_SPAM: \"unmark_spam\",\n UNREAD: \"unread\",\n DELIVER_LOG: \"deliver_log\",\n DELIVER: \"deliver\",\n READ_ALL: \"read_all\",\n TAG: \"tag\",\n MORE_THREADS: \"more_threads\",\n DELETE: \"delete\",\n REPORT_SPAM: \"report_spam\",\n SUBSCRIBE: \"subscribe\"\n };\n});\n__d(\"AvailableListConstants\", [], function(a, b, c, d, e, f) {\n var g = {\n ON_AVAILABILITY_CHANGED: \"buddylist/availability-changed\",\n ON_UPDATE_ERROR: \"buddylist/update-error\",\n ON_UPDATED: \"buddylist/updated\",\n ON_CHAT_NOTIFICATION_CHANGED: \"chat-notification-changed\",\n OFFLINE: 0,\n IDLE: 1,\n ACTIVE: 2,\n MOBILE: 3,\n LEGACY_OVERLAY_OFFLINE: -1,\n LEGACY_OVERLAY_ONLINE: 0,\n LEGACY_OVERLAY_IDLE: 1,\n legacyStatusMap: {\n 0: 2,\n 1: 1,\n \"-1\": 0,\n 2: 3\n },\n reverseLegacyStatusMap: {\n 0: -1,\n 1: 1,\n 2: 0,\n 3: 2\n }\n };\n a.AvailableListConstants = e.exports = g;\n});\n__d(\"RangedCallbackManager\", [\"CallbackManagerController\",\"copyProperties\",\"createObjectFrom\",], function(a, b, c, d, e, f) {\n var g = b(\"CallbackManagerController\"), h = b(\"copyProperties\"), i = b(\"createObjectFrom\"), j = function(k, l, m) {\n this._resources = [];\n this._reachedEndOfArray = false;\n this._error = false;\n this._existingIDs = {\n };\n this._controller = new g(this._constructCallbackArg.bind(this));\n this._getValueHandler = k;\n this._compareValuesHandler = l;\n this._skipOnStrictHandler = m;\n };\n h(j.prototype, {\n executeOrEnqueue: function(k, l, m, n) {\n return this._controller.executeOrEnqueue({\n start: k,\n limit: l\n }, m, {\n strict: !!n\n });\n },\n unsubscribe: function(k) {\n this._controller.unsubscribe(k);\n },\n getUnavailableResources: function(k) {\n var l = this._controller.getRequest(k), m = [];\n if (((l && !this._reachedEndOfArray))) {\n var n = l.request, o = this._filterForStrictResults(l.options), p = ((n.start + n.limit));\n for (var q = o.length; ((q < p)); q++) {\n m.push(q);\n ;\n };\n ;\n }\n ;\n ;\n return m;\n },\n addResources: function(k) {\n k.forEach(function(l) {\n if (!this._existingIDs[l]) {\n this._existingIDs[l] = true;\n this._resources.push(l);\n this._error = null;\n }\n ;\n ;\n }.bind(this));\n this.resortResources();\n this._controller.runPossibleCallbacks();\n },\n addResourcesWithoutSorting: function(k, l) {\n var m = this._resources.slice(0, l);\n m = m.concat(k);\n m = m.concat(this._resources.slice(l));\n this._resources = m;\n h(this._existingIDs, i(k, true));\n this._error = null;\n this._controller.runPossibleCallbacks();\n },\n removeResources: function(k) {\n k.forEach(function(l) {\n if (this._existingIDs[l]) {\n this._existingIDs[l] = false;\n var m = this._resources.indexOf(l);\n if (((m != -1))) {\n this._resources.splice(m, 1);\n }\n ;\n ;\n }\n ;\n ;\n }.bind(this));\n },\n removeAllResources: function() {\n this._resources = [];\n this._existingIDs = {\n };\n },\n resortResources: function() {\n this._resources = this._resources.sort(function(k, l) {\n return this._compareValuesHandler(this._getValueHandler(k), this._getValueHandler(l));\n }.bind(this));\n },\n setReachedEndOfArray: function() {\n if (!this._reachedEndOfArray) {\n this._reachedEndOfArray = true;\n this._error = null;\n this._controller.runPossibleCallbacks();\n }\n ;\n ;\n },\n hasReachedEndOfArray: function() {\n return this._reachedEndOfArray;\n },\n setError: function(k) {\n if (((this._error !== k))) {\n this._error = k;\n this._controller.runPossibleCallbacks();\n }\n ;\n ;\n },\n getError: function(k, l, m) {\n var n = this._filterForStrictResults({\n strict: m\n });\n return ((((((k + l)) > n.length)) ? this._error : null));\n },\n hasResource: function(k) {\n return this._existingIDs[k];\n },\n getResourceAtIndex: function(k) {\n return this._resources[k];\n },\n getAllResources: function() {\n return this._resources.concat();\n },\n getCurrentArraySize: function() {\n return this._resources.length;\n },\n _filterForStrictResults: function(k) {\n var l = this._resources;\n if (((((k && k.strict)) && this._skipOnStrictHandler))) {\n l = l.filter(this._skipOnStrictHandler);\n }\n ;\n ;\n return l;\n },\n _constructCallbackArg: function(k, l) {\n var m = this._filterForStrictResults(l);\n if (((((!this._reachedEndOfArray && !this._error)) && ((((k.start + k.limit)) > m.length))))) {\n return false;\n }\n else {\n var n = m.slice(k.start, ((k.start + k.limit))), o = ((((((k.start + k.limit)) > m.length)) ? this._error : null));\n return [n,o,];\n }\n ;\n ;\n },\n getElementsUntil: function(k) {\n var l = [];\n for (var m = 0; ((m < this._resources.length)); m++) {\n var n = this._getValueHandler(this._resources[m]);\n if (((this._compareValuesHandler(n, k) > 0))) {\n break;\n }\n ;\n ;\n l.push(this._resources[m]);\n };\n ;\n return l;\n }\n });\n e.exports = j;\n});\n__d(\"formatDate\", [\"DateFormatConfig\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"DateFormatConfig\"), h = b(\"tx\"), i = [\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\",], j = [\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\",], k = [\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",], l = [\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\",];\n function m(o, p) {\n p = ((p || 2));\n o = ((\"\" + o));\n while (((o.length < p))) {\n o = ((\"0\" + o));\n ;\n };\n ;\n return o;\n };\n;\n function n(o, p, q, r) {\n if (!p) {\n return \"\";\n }\n ;\n ;\n var s = [], t = null, u = null, v = ((q ? \"getUTC\" : \"get\")), w = o[((v + \"JSBNG__Date\"))](), x = o[((v + \"Day\"))](), y = o[((v + \"Month\"))](), z = o[((v + \"FullYear\"))](), aa = o[((v + \"Hours\"))](), ba = o[((v + \"Minutes\"))](), ca = o[((v + \"Seconds\"))](), da = o[((v + \"Milliseconds\"))]();\n for (var ea = 0; ((ea < p.length)); ea++) {\n u = p.charAt(ea);\n if (((u == \"\\\\\"))) {\n ea++;\n s.push(p.charAt(ea));\n continue;\n }\n ;\n ;\n switch (u) {\n case \"d\":\n t = m(w);\n break;\n case \"D\":\n t = i[x];\n break;\n case \"j\":\n t = w;\n break;\n case \"l\":\n t = j[x];\n break;\n case \"F\":\n \n case \"f\":\n t = l[y];\n break;\n case \"m\":\n t = m(((y + 1)));\n break;\n case \"M\":\n t = k[y];\n break;\n case \"n\":\n t = ((y + 1));\n break;\n case \"Y\":\n t = z;\n break;\n case \"y\":\n t = ((\"\" + z)).slice(2);\n break;\n case \"a\":\n t = ((((aa < 12)) ? \"am\" : \"pm\"));\n break;\n case \"A\":\n t = ((((aa < 12)) ? \"AM\" : \"PM\"));\n break;\n case \"g\":\n t = ((((((aa == 0)) || ((aa == 12)))) ? 12 : ((aa % 12))));\n break;\n case \"G\":\n t = aa;\n break;\n case \"h\":\n t = ((((((aa == 0)) || ((aa == 12)))) ? 12 : m(((aa % 12)))));\n break;\n case \"H\":\n t = m(aa);\n break;\n case \"i\":\n t = m(ba);\n break;\n case \"s\":\n t = m(ca);\n break;\n case \"S\":\n if (r) {\n t = g.ordinalSuffixes[w];\n }\n else t = m(da, 3);\n ;\n ;\n break;\n default:\n t = u;\n };\n ;\n s.push(t);\n };\n ;\n return s.join(\"\");\n };\n;\n e.exports = n;\n});\n__d(\"MercuryMessages\", [\"Arbiter\",\"AsyncRequest\",\"Env\",\"JSLogger\",\"KeyedCallbackManager\",\"MercuryActionTypeConstants\",\"MercuryActionStatus\",\"MercuryAssert\",\"MercuryAttachmentType\",\"MercuryConfig\",\"MercuryGenericConstants\",\"MercuryIDs\",\"MercuryLogMessageType\",\"MercuryMessageClientState\",\"MercuryMessageSourceTags\",\"MercuryPayloadSource\",\"MercurySingletonMixin\",\"MercurySourceType\",\"MercuryTimePassed\",\"MercuryMessageIDs\",\"MercuryParticipants\",\"PresenceUtil\",\"RangedCallbackManager\",\"MercuryServerRequests\",\"MercuryThreadInformer\",\"MercuryThreads\",\"copyProperties\",\"debounce\",\"formatDate\",\"randomInt\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncRequest\"), i = b(\"Env\"), j = b(\"JSLogger\"), k = b(\"KeyedCallbackManager\"), l = b(\"MercuryActionTypeConstants\"), m = b(\"MercuryActionStatus\"), n = b(\"MercuryAssert\"), o = b(\"MercuryAttachmentType\"), p = b(\"MercuryConfig\"), q = b(\"MercuryGenericConstants\"), r = b(\"MercuryIDs\"), s = b(\"MercuryLogMessageType\"), t = b(\"MercuryMessageClientState\"), u = b(\"MercuryMessageSourceTags\"), v = b(\"MercuryPayloadSource\"), w = b(\"MercurySingletonMixin\"), x = b(\"MercurySourceType\"), y = b(\"MercuryTimePassed\"), z = b(\"MercuryMessageIDs\"), aa = b(\"MercuryParticipants\"), ba = b(\"PresenceUtil\"), ca = b(\"RangedCallbackManager\"), da = b(\"MercuryServerRequests\"), ea = b(\"MercuryThreadInformer\"), fa = b(\"MercuryThreads\"), ga = b(\"copyProperties\"), ha = b(\"debounce\"), ia = b(\"formatDate\"), ja = b(\"randomInt\"), ka = b(\"tx\");\n function la(cb, db) {\n var eb = db;\n if (cb._localIdsMap[db]) {\n eb = cb._localIdsMap[db];\n }\n ;\n ;\n return cb._messages[eb];\n };\n;\n var ma = new k();\n function na(cb, db) {\n if (((db.JSBNG__status === undefined))) {\n db.JSBNG__status = m.UNSENT;\n }\n ;\n ;\n db.timestamp_absolute = \"Today\";\n db.message_id = ((db.message_id || cb.generateNewClientMessageID(db.timestamp)));\n var eb = aa.getIDForUser(cb._fbid);\n db.specific_to_list = ((db.specific_to_list || []));\n if (((db.specific_to_list.length && ((db.specific_to_list.indexOf(eb) === -1))))) {\n db.specific_to_list.push(eb);\n }\n ;\n ;\n if (!db.thread_id) {\n if (((db.specific_to_list.length == 1))) {\n db.thread_id = ((\"user:\" + cb._fbid));\n }\n else if (((db.specific_to_list.length == 2))) {\n var fb = ((((db.specific_to_list[0] == eb)) ? db.specific_to_list[1] : db.specific_to_list[0]));\n if (((r.tokenize(fb).type == \"email\"))) {\n db.thread_id = q.PENDING_THREAD_ID;\n }\n else db.thread_id = cb._threads.getThreadIDForParticipant(fb);\n ;\n ;\n }\n \n ;\n ;\n db.thread_id = ((db.thread_id || ((\"root:\" + db.message_id))));\n }\n ;\n ;\n if (!db.specific_to_list.length) {\n var gb = cb._serverRequests.tokenizeThreadID(db.thread_id);\n if (((gb.type == \"user\"))) {\n db.specific_to_list = [((\"fbid:\" + gb.value)),eb,];\n }\n ;\n ;\n }\n ;\n ;\n };\n;\n function oa(cb, db, eb, fb) {\n var gb = ((ya(eb) ? [u.CHAT,] : [])), hb = JSBNG__Date.now(), ib = ia(new JSBNG__Date(hb), ((p[\"24h_times\"] ? \"H:i\" : \"g:ia\"))), jb = {\n action_type: db,\n thread_id: fb,\n author: aa.getIDForUser(cb._fbid),\n author_email: null,\n coordinates: null,\n timestamp: hb,\n timestamp_absolute: (new JSBNG__Date(hb)).toLocaleDateString(),\n timestamp_relative: ib,\n timestamp_time_passed: y.TODAY,\n is_unread: false,\n is_cleared: false,\n is_forward: false,\n is_filtered_content: false,\n spoof_warning: false,\n source: eb,\n source_tags: gb\n };\n return jb;\n };\n;\n function pa(cb) {\n switch (cb) {\n case v.UNKNOWN:\n \n case v.SERVER_INITIAL_DATA:\n \n case v.SERVER_FETCH_THREAD_INFO:\n \n case v.SERVER_THREAD_SYNC:\n return true;\n };\n ;\n return false;\n };\n;\n function qa(cb) {\n return ((cb && ((cb.substr(0, 6) === \"server\"))));\n };\n;\n function ra(cb, db) {\n if (!cb._threadsToMessages[db]) {\n cb._threadsToMessages[db] = new ca(function(eb) {\n return la(cb, eb).timestamp;\n }, function(eb, fb) {\n return ((fb - eb));\n });\n }\n ;\n ;\n return cb._threadsToMessages[db];\n };\n;\n g.subscribe(j.DUMP_EVENT, function(cb, db) {\n var eb = {\n }, fb = {\n }, gb = ta._getInstances();\n {\n var fin161keys = ((window.top.JSBNG_Replay.forInKeys)((gb))), fin161i = (0);\n var hb;\n for (; (fin161i < fin161keys.length); (fin161i++)) {\n ((hb) = (fin161keys[fin161i]));\n {\n eb[hb] = {\n };\n {\n var fin162keys = ((window.top.JSBNG_Replay.forInKeys)((gb[hb]._messages))), fin162i = (0);\n var ib;\n for (; (fin162i < fin162keys.length); (fin162i++)) {\n ((ib) = (fin162keys[fin162i]));\n {\n var jb = gb[hb]._messages[ib];\n if (((Object.keys(jb).length === 0))) {\n continue;\n }\n ;\n ;\n var kb = jb.thread_id;\n eb[hb][kb] = ((eb[hb][kb] || {\n }));\n eb[hb][kb][jb.message_id] = {\n action_type: jb.action_type,\n author: jb.author,\n is_unread: jb.is_unread,\n timestamp: jb.timestamp\n };\n };\n };\n };\n ;\n fb[hb] = ga({\n }, gb[hb]._localIdsMap);\n };\n };\n };\n ;\n db.messaging = ((db.messaging || {\n }));\n db.messaging.local_message_ids = fb;\n db.messaging.messages = eb;\n });\n function sa(cb, db, eb) {\n db.forEach(function(fb) {\n var gb = ra(cb, fb);\n gb.setReachedEndOfArray();\n cb._threadInformer.reorderedMessages(fb, eb);\n });\n };\n;\n function ta(cb) {\n this._fbid = cb;\n this._serverRequests = da.getForFBID(this._fbid);\n this._threadInformer = ea.getForFBID(this._fbid);\n this._threads = fa.getForFBID(this._fbid);\n this._failedHistoryFetchThreads = {\n };\n this._threadsToMessages = {\n };\n this._titanMessagesCount = {\n };\n this._localTitanMessagesCount = {\n };\n this._messages = {\n };\n this._attachmentData = {\n };\n this._messagesNeedingAttachmentData = {\n };\n this._localIdsMap = {\n };\n this._serverRequests.subscribe(\"update-messages\", function(db, eb) {\n var fb = ((eb.actions || [])).filter(function(hb) {\n var ib = hb.action_type;\n return ((((hb.is_forward || hb.thread_id)) && ((((((((((((ib == l.LOG_MESSAGE)) || ((ib == l.USER_GENERATED_MESSAGE)))) || ((ib == l.SEND_MESSAGE)))) || ((ib == l.CLEAR_CHAT)))) || ((ib == l.DELETE_THREAD)))) || ((ib == l.DELETE_MESSAGES))))));\n }), gb = pa(eb.payload_source);\n if (qa(eb.payload_source)) {\n fb.forEach(function(hb) {\n if (!hb.is_forward) {\n var ib = this._threads.getThreadMetaNow(hb.thread_id);\n if (ib) {\n hb.is_cleared = ((hb.timestamp < ib.chat_clear_time));\n }\n ;\n ;\n }\n ;\n ;\n }.bind(this));\n }\n ;\n ;\n this.handleUpdates(fb, gb, eb.payload_source, eb.from_client);\n if (eb.end_of_history) {\n sa(this, eb.end_of_history, eb.payload_source);\n }\n ;\n ;\n }.bind(this));\n };\n;\n ga(ta.prototype, {\n getMessagesFromIDs: function(cb) {\n return ((cb || [])).map(la.curry(this)).filter(function(db) {\n return db;\n });\n },\n hasLoadedNMessages: function(cb, db) {\n var eb = ra(this, cb);\n return ((eb.hasReachedEndOfArray() || ((eb.getCurrentArraySize() >= db))));\n },\n hasLoadedExactlyNMessages: function(cb, db) {\n var eb = ra(this, cb);\n return ((eb.getCurrentArraySize() == db));\n },\n getThreadMessagesRange: function(cb, db, eb, fb, gb, hb) {\n var ib = ra(this, cb), jb = function(pb) {\n fb(ua(this, pb));\n }.bind(this), kb = ib.executeOrEnqueue(db, eb, jb), lb = ib.getUnavailableResources(kb), mb = this._failedHistoryFetchThreads[cb];\n if (((lb.length && !mb))) {\n var nb = ((((this._titanMessagesCount[cb] || 0)) - ((this._localTitanMessagesCount[cb] || 0)))), ob = ((lb.length + ((this._localTitanMessagesCount[cb] || 0))));\n this._serverRequests.fetchThreadMessages(cb, nb, ob, gb, hb);\n }\n else this._failedHistoryFetchThreads[cb] = false;\n ;\n ;\n return kb;\n },\n getThreadMessagesSinceTimestamp: function(cb, db) {\n var eb = ra(this, cb), fb = eb.getElementsUntil(db);\n return ua(this, fb);\n },\n hasLoadedAllMessages: function(cb) {\n return ra(this, cb).hasReachedEndOfArray();\n },\n getCurrentlyLoadedMessages: function(cb) {\n var db = ra(this, cb).getAllResources();\n return ua(this, db);\n },\n unsubscribe: function(cb, db) {\n n.isThreadID(db);\n var eb = ra(this, db);\n eb.unsubscribe(cb);\n },\n addAttachmentData: function(cb, db, eb) {\n var fb = la(this, cb);\n if (fb) {\n var gb = fb.attachments.indexOf(db);\n if (((gb != -1))) {\n fb.attachments[gb] = eb;\n this._threadInformer.updatedMessage(fb.thread_id, fb.message_id, \"attach\");\n }\n ;\n ;\n }\n else {\n if (!this._attachmentData[cb]) {\n this._attachmentData[cb] = [];\n }\n ;\n ;\n this._attachmentData[cb].push({\n attach_key: db,\n data: eb\n });\n }\n ;\n ;\n },\n handleUpdates: function(cb, db, eb, fb) {\n var gb, hb = {\n }, ib = {\n };\n for (var jb = 0; ((jb < cb.length)); jb++) {\n var kb = cb[jb];\n if (((kb.is_forward || ((eb == v.SERVER_SEARCH))))) {\n if (!this._messages[kb.message_id]) {\n this._messages[kb.message_id] = kb;\n za(this, kb);\n }\n ;\n ;\n continue;\n }\n ;\n ;\n if (((kb.client_state === t.SEND_TO_SERVER))) {\n this._messages[kb.message_id] = kb;\n za(this, kb);\n continue;\n }\n ;\n ;\n var lb = kb.action_type;\n if (((lb == l.SEND_MESSAGE))) {\n var mb = kb.client_message_id;\n if (((((mb && this._localIdsMap[mb])) && kb.JSBNG__status))) {\n if (((kb.JSBNG__status == m.UNCONFIRMED))) {\n if (!ib[kb.thread_id]) {\n ib[kb.thread_id] = [];\n }\n ;\n ;\n ib[kb.thread_id].push(kb.client_message_id);\n }\n else if (!hb[kb.thread_id]) {\n hb[kb.thread_id] = [];\n }\n \n ;\n ;\n var nb = la(this, kb.client_message_id), ob = nb.JSBNG__status;\n nb.JSBNG__status = kb.JSBNG__status;\n if (((((kb.JSBNG__status === m.SUCCESS)) || kb.error_data))) {\n nb.error_data = kb.error_data;\n }\n ;\n ;\n if (((kb.JSBNG__status == m.SUCCESS))) {\n this.updateLocalMessage(kb, eb);\n if (((kb.client_thread_id == q.PENDING_THREAD_ID))) {\n nb.thread_id = kb.thread_id;\n hb[kb.thread_id].push(nb.message_id);\n ma.setResource(nb.message_id, nb.thread_id);\n }\n ;\n ;\n }\n ;\n ;\n if (((((((((((typeof ob != \"undefined\")) || ((kb.JSBNG__status == m.FAILED_UNKNOWN_REASON)))) || ((kb.JSBNG__status == m.UNABLE_TO_CONFIRM)))) || ((kb.JSBNG__status == m.SUCCESS)))) || ((kb.JSBNG__status == m.ERROR))))) {\n this._threadInformer.updatedMessage(kb.thread_id, la(this, kb.client_message_id).message_id, eb);\n }\n ;\n ;\n }\n ;\n ;\n continue;\n }\n else if (((lb == l.DELETE_THREAD))) {\n ra(this, kb.thread_id).removeAllResources();\n continue;\n }\n else if (((lb == l.DELETE_MESSAGES))) {\n var pb = kb.message_ids.map(function(wb) {\n return la(this, wb).message_id;\n }.bind(this));\n gb = ra(this, kb.thread_id);\n gb.removeResources(pb);\n this._threadInformer.reorderedMessages(kb.thread_id, eb);\n continue;\n }\n else if (((lb == l.LOG_MESSAGE))) {\n if (((kb.log_message_type == s.SERVER_ERROR))) {\n this._failedHistoryFetchThreads[kb.thread_id] = true;\n }\n ;\n ;\n }\n else if (((lb == l.CLEAR_CHAT))) {\n var qb = ra(this, kb.thread_id).getAllResources();\n qb.map(la.curry(this)).forEach(function(wb) {\n wb.is_cleared = true;\n });\n continue;\n }\n \n \n \n \n ;\n ;\n var rb = la(this, kb.message_id);\n if (((((kb.threading_id && this._localIdsMap[kb.threading_id])) || ((rb && !rb.is_forward))))) {\n continue;\n }\n ;\n ;\n if (!hb[kb.thread_id]) {\n hb[kb.thread_id] = [];\n }\n ;\n ;\n hb[kb.thread_id].push(kb.message_id);\n this._messages[kb.message_id] = kb;\n za(this, kb);\n if (((kb.threading_id && ((kb.threading_id != kb.message_id))))) {\n z.addServerID(kb.threading_id, kb.message_id);\n }\n ;\n ;\n if (!db) {\n this._threadInformer.receivedMessage(kb);\n }\n ;\n ;\n };\n ;\n {\n var fin163keys = ((window.top.JSBNG_Replay.forInKeys)((hb))), fin163i = (0);\n var sb;\n for (; (fin163i < fin163keys.length); (fin163i++)) {\n ((sb) = (fin163keys[fin163i]));\n {\n gb = ra(this, sb);\n var tb = gb.getAllResources(), ub = tb.filter(function(wb) {\n var xb = this._messages[wb];\n return ((((xb.action_type == l.LOG_MESSAGE)) && ((xb.log_message_type == s.SERVER_ERROR))));\n }.bind(this));\n gb.removeResources(ub);\n va(this, sb, hb[sb]);\n if (fb) {\n wa(this, sb, hb[sb]);\n }\n ;\n ;\n if (db) {\n gb.addResources(hb[sb]);\n this._threadInformer.reorderedMessages(sb, eb);\n }\n else gb.addResourcesWithoutSorting(hb[sb].reverse(), 0);\n ;\n ;\n this._threadInformer.updatedThread(sb);\n };\n };\n };\n ;\n var vb = Object.keys(ib);\n if (vb.length) {\n this._serverRequests.requestMessageConfirmation(ib);\n }\n ;\n ;\n },\n sendMessage: function(cb, db, eb) {\n db = ((db || Function.prototype));\n na(this, cb);\n this._localIdsMap[cb.message_id] = cb.message_id;\n if (((cb.thread_id == ((\"root:\" + cb.message_id))))) {\n ra(this, cb.thread_id).setReachedEndOfArray();\n }\n ;\n ;\n this._serverRequests.sendNewMessage(cb, eb);\n if (((cb.thread_id == q.PENDING_THREAD_ID))) {\n this._messages[cb.message_id] = cb;\n return ma.executeOrEnqueue(cb.message_id, db);\n }\n else db(cb.thread_id);\n ;\n ;\n },\n isFirstMessage: function(cb) {\n var db = ra(this, cb.thread_id);\n if (((db.getCurrentArraySize() === 0))) {\n return false;\n }\n ;\n ;\n var eb = db.getResourceAtIndex(((db.getCurrentArraySize() - 1))), fb = la(this, eb).message_id, gb = la(this, cb.message_id).message_id;\n return ((db.hasReachedEndOfArray() && ((fb == gb))));\n },\n unsubscribeSend: function(cb) {\n ma.unsubscribe(cb);\n },\n resendMessage: function(cb, db) {\n var eb = ga({\n }, cb);\n eb.JSBNG__status = m.RESENDING;\n eb.timestamp = JSBNG__Date.now();\n eb.message_id = cb.message_id;\n this._messages[cb.message_id] = eb;\n var fb = ra(this, cb.thread_id);\n fb.resortResources([cb.message_id,]);\n this.sendMessage(eb, null, db);\n this._threadInformer.reorderedMessages(cb.thread_id, v.CLIENT_SEND_MESSAGE);\n },\n deleteMessages: function(cb, db) {\n if (db.length) {\n var eb = ra(this, cb), fb = ((((eb.getCurrentArraySize() == db.length)) && eb.hasReachedEndOfArray()));\n this._serverRequests.deleteMessages(cb, db, fb);\n }\n ;\n ;\n },\n markMessagesSpam: function(cb, db) {\n if (db.length) {\n var eb = ra(this, cb), fb = ((((eb.getCurrentArraySize() == db.length)) && eb.hasReachedEndOfArray()));\n if (fb) {\n this._serverRequests.markThreadSpam(cb);\n }\n else this._serverRequests.markMessagesSpam(cb, db);\n ;\n ;\n }\n ;\n ;\n },\n updateLocalMessage: function(cb, db) {\n var eb = cb.message_id, fb = cb.client_message_id;\n this._localIdsMap[fb] = eb;\n this._messages[eb] = this._messages[fb];\n z.addServerID(fb, eb);\n this._messages[fb] = {\n };\n var gb = la(this, fb);\n if (cb.timestamp) {\n gb.timestamp = cb.timestamp;\n }\n ;\n ;\n if (((cb.attachments && cb.attachments.length))) {\n gb.raw_attachments = null;\n gb.attachments = cb.attachments;\n za(this, gb, eb);\n }\n ;\n ;\n if (cb.log_message_data) {\n gb.log_message_data = cb.log_message_data;\n }\n ;\n ;\n if (xa(gb)) {\n this._localTitanMessagesCount[gb.thread_id]--;\n }\n ;\n ;\n },\n constructUserGeneratedMessageObject: function(cb, db, eb, fb) {\n var gb = oa(this, l.USER_GENERATED_MESSAGE, db, eb);\n gb.body = cb;\n gb.has_attachment = false;\n gb.html_body = false;\n gb.attachments = [];\n gb.specific_to_list = ((fb || []));\n return gb;\n },\n constructLogMessageObject: function(cb, db, eb, fb) {\n var gb = oa(this, l.LOG_MESSAGE, cb, db);\n gb.log_message_type = eb;\n gb.log_message_data = fb;\n return gb;\n },\n generateNewClientMessageID: function(cb) {\n var db = ((((((((cb + \":\")) + ((ja(0, 4294967295) + 1)))) + \"-\")) + ba.getSessionID()));\n return ((((\"\\u003C\" + db)) + \"@mail.projektitan.com\\u003E\"));\n },\n getNumberLocalMessages: function(cb) {\n return ((this._localTitanMessagesCount[cb] || 0));\n }\n });\n ga(ta, w, {\n addAttachmentData: function(cb, db, eb, fb) {\n fb = ((fb || i.user));\n ta.getForFBID(fb).addAttachmentData(cb, db, eb);\n }\n });\n function ua(cb, db) {\n var eb = db.map(la.curry(cb));\n return eb.reverse();\n };\n;\n function va(cb, db, eb) {\n var fb = eb.filter(function(gb) {\n return xa(la(cb, gb));\n });\n if (!cb._titanMessagesCount[db]) {\n cb._titanMessagesCount[db] = 0;\n }\n ;\n ;\n cb._titanMessagesCount[db] += fb.length;\n };\n;\n function wa(cb, db, eb) {\n var fb = eb.filter(function(gb) {\n return xa(la(cb, gb));\n });\n if (!cb._localTitanMessagesCount[db]) {\n cb._localTitanMessagesCount[db] = 0;\n }\n ;\n ;\n cb._localTitanMessagesCount[db] += fb.length;\n };\n;\n function xa(cb) {\n var db = cb.action_type;\n if (((db == l.USER_GENERATED_MESSAGE))) {\n return true;\n }\n ;\n ;\n switch (cb.log_message_type) {\n case s.SUBSCRIBE:\n \n case s.UNSUBSCRIBE:\n \n case s.SERVER_ERROR:\n \n case s.LIVE_LISTEN:\n return false;\n default:\n return true;\n };\n ;\n };\n;\n function ya(cb) {\n switch (cb) {\n case x.CHAT_WEB:\n \n case x.CHAT_JABBER:\n \n case x.CHAT_IPHONE:\n \n case x.CHAT_MEEBO:\n \n case x.CHAT_ORCA:\n \n case x.CHAT_TEST:\n \n case x.CHAT:\n \n case x.DESKTOP:\n return true;\n default:\n return false;\n };\n ;\n };\n;\n function za(cb, db, eb) {\n eb = ((eb || db.message_id));\n var fb = cb._attachmentData[eb];\n if (fb) {\n fb.forEach(function(gb) {\n var hb = db.attachments.indexOf(gb.attach_key);\n if (((hb !== -1))) {\n db.attachments[hb] = gb.data;\n }\n ;\n ;\n });\n delete cb._attachmentData[eb];\n }\n else if (((!db.is_forward && ab(cb, db)))) {\n cb._messagesNeedingAttachmentData[eb] = true;\n bb(cb);\n }\n \n ;\n ;\n };\n;\n function ab(cb, db) {\n if (((!db || !db.attachments))) {\n return false;\n }\n ;\n ;\n for (var eb = 0; ((eb < db.attachments.length)); eb++) {\n var fb = db.attachments[eb];\n if (((((typeof fb === \"string\")) && ((fb.indexOf(o.SHARE) === 0))))) {\n return true;\n }\n ;\n ;\n };\n ;\n var gb = ((db.forward_message_ids || []));\n for (eb = 0; ((eb < gb.length)); eb++) {\n var hb = la(cb, gb[eb]);\n if (ab(cb, hb)) {\n return true;\n }\n ;\n ;\n };\n ;\n return false;\n };\n;\n var bb = ha(function(cb) {\n var db = {\n };\n {\n var fin164keys = ((window.top.JSBNG_Replay.forInKeys)((cb._messagesNeedingAttachmentData))), fin164i = (0);\n var eb;\n for (; (fin164i < fin164keys.length); (fin164i++)) {\n ((eb) = (fin164keys[fin164i]));\n {\n var fb = la(cb, eb);\n if (ab(cb, fb)) {\n db[eb] = true;\n }\n ;\n ;\n };\n };\n };\n ;\n var gb = Object.keys(db);\n if (gb.length) {\n new h(\"/ajax/mercury/attachments/fetch_shares.php\").setData({\n message_ids: gb\n }).setAllowCrossPageTransition(true).send();\n }\n ;\n ;\n cb._messagesNeedingAttachmentData = {\n };\n }, 0, this, true);\n e.exports = ta;\n});\n__d(\"ChatOpenTab\", [\"Arbiter\",\"Banzai\",\"Bootloader\",\"ChatVisibility\",\"JSBNG__Event\",\"MercuryIDs\",\"MercuryMessages\",\"MercuryServerRequests\",\"MercuryThreads\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Banzai\"), i = b(\"Bootloader\"), j = b(\"ChatVisibility\"), k = b(\"JSBNG__Event\"), l = b(\"MercuryIDs\"), m = b(\"MercuryMessages\").get(), n = b(\"MercuryServerRequests\").get(), o = b(\"MercuryThreads\").get(), p = \"messaging_tracking\";\n function q(u) {\n o.getThreadMeta(u, function() {\n g.inform(\"chat/open-tab\", {\n thread_id: u\n });\n });\n };\n;\n function r(u, v, w, x) {\n k.listen(u, \"click\", function(y) {\n if (x(v, w)) {\n return;\n }\n ;\n ;\n return y.kill();\n });\n };\n;\n function s(u, v, w) {\n var x = {\n referrer: ((u || \"\")),\n message_thread_id: v,\n message_view: \"chat\",\n timestamp_send: JSBNG__Date.now()\n };\n if (((w !== undefined))) {\n x.message_target_ids = [w,];\n }\n ;\n ;\n h.post(p, x, {\n delay: 0,\n retry: true\n });\n };\n;\n var t = {\n openEmptyTab: function(u, v) {\n if (((!window.Chat || !j.isOnline()))) {\n return true;\n }\n ;\n ;\n i.loadModules([\"ChatTabModel\",], function(w) {\n var x = w.getEmptyTab();\n if (!x) {\n x = ((\"root:\" + m.generateNewClientMessageID(JSBNG__Date.now())));\n o.createNewLocalThread(x, []);\n }\n ;\n ;\n q(x);\n s(v, x);\n });\n },\n listenOpenEmptyTab: function(u, v) {\n r(u, null, v, t.openEmptyTab);\n },\n openThread: function(u, v) {\n if (l.isValid(u)) {\n q(u);\n }\n else n.getClientThreadID(u, q);\n ;\n ;\n s(v, u);\n },\n listenOpenThread: function(u, v, w) {\n r(u, v, w, t.openThread);\n },\n openUserTab: function(u, v) {\n var w = o.getCanonicalThreadToUser(u);\n q(w.thread_id);\n s(v, w.thread_id, u);\n },\n listenOpenUserTab: function(u, v, w) {\n r(u, v, w, t.openUserTab);\n }\n };\n e.exports = t;\n});\n__d(\"SplitImage.react\", [\"React\",\"JSBNG__Image.react\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"JSBNG__Image.react\"), i = b(\"cx\"), j = g.createClass({\n displayName: \"SplitImage\",\n render: function() {\n var k = this.props.size;\n return this.transferPropsTo(g.DOM.div({\n className: \"-cx-PRIVATE-splitImage__root\",\n style: {\n width: k,\n height: k\n }\n }, this.renderImages()));\n },\n renderImages: function() {\n if (!this.props.srcs) {\n return null;\n }\n ;\n ;\n if (!((this.props.srcs instanceof Array))) {\n return (h({\n src: this.props.srcs,\n height: this.props.size,\n width: this.props.size\n }));\n }\n ;\n ;\n switch (this.props.srcs.length) {\n case 1:\n return (h({\n src: this.props.srcs[0],\n height: this.props.size,\n width: this.props.size\n }));\n case 2:\n return this.renderTwo();\n default:\n return this.renderThree();\n };\n ;\n },\n renderTwo: function() {\n var k = Math.floor(((this.props.size / 2))), l = -Math.floor(((k / 2))), m = (((\"-cx-PRIVATE-splitImage__image\") + ((this.props.border ? ((\" \" + \"-cx-PRIVATE-splitImage__borderleft\")) : \"\"))));\n return (g.DOM.div(null, g.DOM.div({\n className: \"-cx-PRIVATE-splitImage__image\",\n style: {\n width: k\n }\n }, h({\n src: this.props.srcs[0],\n width: this.props.size,\n height: this.props.size,\n style: {\n marginLeft: l\n }\n })), g.DOM.div({\n className: m,\n style: {\n width: k\n }\n }, h({\n src: this.props.srcs[1],\n width: this.props.size,\n height: this.props.size,\n style: {\n marginLeft: l\n }\n }))));\n },\n renderThree: function() {\n var k = Math.floor(((((this.props.size / 3)) * 2))), l = -Math.floor(((((this.props.size - k)) / 2))), m = Math.floor(((this.props.size / 2))), n = ((this.props.size - k)), o = -Math.floor(((((m - n)) / 2))), p = (((\"-cx-PRIVATE-splitImage__image\") + ((this.props.border ? ((\" \" + \"-cx-PRIVATE-splitImage__borderright\")) : \"\")))), q = (((\"-cx-PRIVATE-splitImage__image\") + ((this.props.border ? ((\" \" + \"-cx-PRIVATE-splitImage__borderbottom\")) : \"\"))));\n return (g.DOM.div(null, g.DOM.div({\n className: p,\n style: {\n width: k\n }\n }, h({\n src: this.props.srcs[0],\n width: this.props.size,\n height: this.props.size,\n style: {\n marginLeft: l\n }\n })), g.DOM.div({\n className: q,\n style: {\n width: n,\n height: m\n }\n }, h({\n src: this.props.srcs[1],\n width: m,\n height: m,\n style: {\n marginLeft: o\n }\n })), g.DOM.div({\n className: \"-cx-PRIVATE-splitImage__image\",\n style: {\n width: n,\n height: m\n }\n }, h({\n src: this.props.srcs[2],\n width: m,\n height: m,\n style: {\n marginLeft: o\n }\n }))));\n }\n });\n e.exports = j;\n});\n__d(\"loadImage\", [], function(a, b, c, d, e, f) {\n function g(h, i) {\n var j = new JSBNG__Image();\n j.JSBNG__onload = function() {\n i(j.width, j.height, j);\n };\n j.src = h;\n };\n;\n e.exports = g;\n});\n__d(\"PixelzFocus\", [], function(a, b, c, d, e, f) {\n var g = {\n search: function(h, i) {\n var j = 0, k = ((h.length - 1));\n while (((j <= k))) {\n var l = ((j + Math.floor(((((k - j)) / 2))))), m = h[l];\n if (((m > i))) {\n k = ((l - 1));\n }\n else if (((m < i))) {\n j = ((l + 1));\n }\n else return l\n \n ;\n };\n ;\n return Math.min(j, k);\n },\n forceSpecificPoint: function(h, i, j) {\n var k = 1e-9, l = ((g.search(h, ((((i - j)) - k))) + 1)), m = g.search(h, ((i + j)));\n return h.slice(l, ((m + 1)));\n },\n findBiggestSets: function(h, i) {\n var j = [], k = -1;\n for (var l = 0; ((l < h.length)); ++l) {\n var m = h[l], n = l, o = g.search(h, ((m + i))), p = ((o - n));\n if (((p > k))) {\n j = [];\n }\n ;\n ;\n if (((p >= k))) {\n k = p;\n j.push({\n low: n,\n high: o\n });\n }\n ;\n ;\n };\n ;\n return j;\n },\n getBestSet: function(h, i, j) {\n var k = -1, l = null;\n for (var m = 0; ((m < i.length)); ++m) {\n var n = i[m], o = h[n.low], p = h[n.high], q = ((o + ((((p - o)) / 2)))), r = Math.min(((o - ((q - j)))), ((((q + j)) - p)));\n if (((r > k))) {\n k = r;\n l = n;\n }\n ;\n ;\n };\n ;\n return l;\n },\n getFocusFromSet: function(h, i) {\n var j = h[i.low], k = h[i.high];\n return ((j + ((((k - j)) / 2))));\n },\n clampFocus: function(h, i) {\n var j = ((i / 2)), k = ((1 - ((i / 2))));\n if (((h < j))) {\n return j;\n }\n ;\n ;\n if (((h > k))) {\n return k;\n }\n ;\n ;\n return h;\n },\n convertFromCenterToCSS: function(h, i) {\n if (((Math.abs(((1 - i))) < 41913))) {\n return 0;\n }\n ;\n ;\n return ((((h - ((i / 2)))) / ((1 - i))));\n },\n convertFromCSSToCenter: function(h, i) {\n return ((((h * ((1 - i)))) + ((i / 2))));\n },\n getVisible: function(h, i) {\n if (((h < i))) {\n return ((h / i));\n }\n ;\n ;\n return ((i / h));\n },\n getHidden: function(h, i) {\n return ((1 - g.getVisible(h, i)));\n },\n focusHorizontally: function(h, i) {\n return ((h < i));\n },\n convertVectorFromCenterToCSS: function(h, i, j) {\n var k = g.focusHorizontally(i, j), l;\n if (k) {\n l = ((h.x / 100));\n }\n else l = ((h.x / 100));\n ;\n ;\n var m = g.convertFromCenterToCSS(l, g.getVisible(i, j));\n if (k) {\n return {\n x: m,\n y: 0\n };\n }\n else return {\n x: 0,\n y: m\n }\n ;\n },\n getCropRect: function(h, i, j) {\n var k = g.focusHorizontally(i, j), l = g.getVisible(i, j);\n if (k) {\n var m = ((((1 - l)) * h.x));\n return {\n left: m,\n JSBNG__top: 0,\n width: l,\n height: 1\n };\n }\n else {\n var n = ((((1 - l)) * h.y));\n return {\n left: 0,\n JSBNG__top: n,\n width: 1,\n height: l\n };\n }\n ;\n ;\n }\n };\n e.exports = g;\n});\n__d(\"Pixelz.react\", [\"arrayContains\",\"copyProperties\",\"cx\",\"invariant\",\"loadImage\",\"React\",\"ReactPropTypes\",\"PixelzFocus\",], function(a, b, c, d, e, f) {\n var g = b(\"arrayContains\"), h = b(\"copyProperties\"), i = b(\"cx\"), j = b(\"invariant\"), k = b(\"loadImage\"), l = b(\"React\"), m = b(\"ReactPropTypes\"), n = b(\"PixelzFocus\"), o = l.createClass({\n displayName: \"Pixelz\",\n propTypes: {\n width: m.number,\n height: m.number,\n resizeMode: m.oneOf([\"contain\",\"cover\",\"stretch\",]),\n alt: m.string,\n letterbox: m.bool,\n borderRadius: m.number,\n insetBorderColor: m.string,\n animated: m.bool,\n upscale: m.bool,\n cropRect: function(p, q, r) {\n var s = p[q], t = ((((((((((\"Invalid prop `\" + q)) + \"` supplied to `\")) + r)) + \"`, expected a rectangle with values normalized \")) + \"between 0 and 1\"));\n j(((s.left >= 0)));\n j(((s.JSBNG__top >= 0)));\n j(((s.width >= 0)));\n j(((s.height >= 0)));\n j(((((s.left + s.width)) <= 1)));\n j(((((s.JSBNG__top + s.height)) <= 1)));\n },\n JSBNG__focus: function(p, q, r) {\n var s = p[q], t = ((((((((((((\"Invalid prop `\" + q)) + \"` supplied to `\")) + r)) + \"`, expected either a {x, y, type} vector where type \")) + \"is `css` or `center` or an array of {x, y} vectors. All the vectors \")) + \"have with values normalized between 0 and 1\"));\n if (Array.isArray(s)) {\n for (var u = 0; ((u < s.length)); ++u) {\n j(((((s[u].x >= 0)) && ((s[u].x <= 1)))));\n j(((((s[u].y >= 0)) && ((s[u].y <= 1)))));\n };\n ;\n }\n else {\n if (!s.type) {\n s.type = \"css\";\n }\n ;\n ;\n j(((((s.x >= 0)) && ((s.x <= 1)))));\n j(((((s.y >= 0)) && ((s.y <= 1)))));\n j(g([\"center\",\"css\",], s.type));\n }\n ;\n ;\n }\n },\n getDefaultProps: function() {\n return {\n resizeMode: \"cover\",\n alt: \"\",\n letterbox: true,\n upscale: true,\n cropRect: {\n width: 1,\n height: 1,\n JSBNG__top: 0,\n left: 0\n },\n JSBNG__focus: {\n x: 25908,\n y: 25913,\n type: \"css\"\n }\n };\n },\n getInitialState: function() {\n return {\n srcDimensions: {\n }\n };\n },\n getSrcDimensions: function() {\n var p = this.props.src, q = this.state.srcDimensions[p];\n if (q) {\n return q;\n }\n ;\n ;\n k(p, function(r, s) {\n var t = {\n };\n t[p] = {\n width: r,\n height: s\n };\n this.setState({\n srcDimensions: t\n });\n }.bind(this));\n return null;\n },\n getCropSrcDimensions: function() {\n var p = this.getSrcDimensions();\n return {\n width: ((p.width * this.props.cropRect.width)),\n height: ((p.height * this.props.cropRect.height))\n };\n },\n getUpscaleCropDimensions: function() {\n var p = this.getCropSrcDimensions(), q = ((p.width / p.height)), r = ((this.props.width / this.props.height));\n if (((((this.props.width && this.props.height)) && ((this.props.resizeMode === \"stretch\"))))) {\n return {\n width: this.props.width,\n height: this.props.height\n };\n }\n ;\n ;\n if (((((!this.props.width && this.props.height)) || ((((this.props.resizeMode === \"contain\")) !== ((q >= r))))))) {\n return {\n width: ((this.props.height * q)),\n height: this.props.height\n };\n }\n ;\n ;\n if (this.props.width) {\n return {\n width: this.props.width,\n height: ((this.props.width / q))\n };\n }\n ;\n ;\n return p;\n },\n getCropDimensions: function() {\n var p = this.getUpscaleCropDimensions(), q = this.getCropSrcDimensions();\n if (!this.props.upscale) {\n return {\n width: Math.min(p.width, q.width),\n height: Math.min(p.height, q.height)\n };\n }\n ;\n ;\n return p;\n },\n getCropAspectRatio: function() {\n var p = this.getCropDimensions();\n return ((p.width / p.height));\n },\n getContainerDimensions: function() {\n if (((((this.props.letterbox && this.props.width)) && this.props.height))) {\n return {\n width: this.props.width,\n height: this.props.height\n };\n }\n ;\n ;\n return this.getCropDimensions();\n },\n getContainerAspectRatio: function() {\n var p = this.getContainerDimensions();\n return ((p.width / p.height));\n },\n getContainerPosition: function() {\n return {\n left: 0,\n JSBNG__top: 0\n };\n },\n getFocus: function() {\n var p = this.props.JSBNG__focus;\n if (((!Array.isArray(p) && ((p.type === \"css\"))))) {\n return {\n x: p.x,\n y: p.y\n };\n }\n ;\n ;\n var q = this.getContainerAspectRatio(), r = this.getCropAspectRatio(), s = n.getVisible(q, r), t = n.focusHorizontally(q, r), u;\n if (!Array.isArray(p)) {\n u = n.convertFromCenterToCSS(((t ? p.x : p.y)), s);\n }\n else {\n var v = p.map(function(y) {\n return ((t ? y.x : y.y));\n });\n v.sort();\n var w = n.findBiggestSets(v, s), x = n.getBestSet(v, w, s);\n u = n.getFocusFromSet(v, x);\n }\n ;\n ;\n return {\n x: ((t ? u : 27903)),\n y: ((t ? 27910 : u))\n };\n },\n getCropPosition: function() {\n var p = this.getCropDimensions(), q = this.getContainerDimensions(), r = this.getFocus();\n return {\n left: ((r.x * ((q.width - p.width)))),\n JSBNG__top: ((r.y * ((q.height - p.height))))\n };\n },\n getScaleDimensions: function() {\n var p = this.getCropDimensions();\n return {\n width: ((p.width / this.props.cropRect.width)),\n height: ((p.height / this.props.cropRect.height))\n };\n },\n getScalePosition: function() {\n var p = this.getScaleDimensions();\n return {\n left: ((-p.width * this.props.cropRect.left)),\n JSBNG__top: ((-p.height * this.props.cropRect.JSBNG__top))\n };\n },\n getClipCropRectangle: function() {\n var p = this.getContainerDimensions(), q = this.getCropDimensions(), r = this.getContainerPosition(), s = this.getCropPosition(), t = Math.max(r.left, s.left), u = Math.max(r.JSBNG__top, s.JSBNG__top), v = Math.min(((r.JSBNG__top + p.height)), ((s.JSBNG__top + q.height))), w = Math.min(((r.left + p.width)), ((s.left + q.width)));\n return {\n left: t,\n JSBNG__top: u,\n width: ((w - t)),\n height: ((v - u))\n };\n },\n getClipCropPosition: function() {\n var p = this.getClipCropRectangle();\n return {\n left: p.left,\n JSBNG__top: p.JSBNG__top\n };\n },\n getClipCropDimensions: function() {\n var p = this.getClipCropRectangle();\n return {\n width: p.width,\n height: p.height\n };\n },\n getClipScalePosition: function() {\n var p = this.getScalePosition(), q = this.getClipCropPosition(), r = this.getCropPosition();\n return {\n left: ((p.left + ((r.left - q.left)))),\n JSBNG__top: ((p.JSBNG__top + ((r.JSBNG__top - q.JSBNG__top))))\n };\n },\n getClipScaleDimensions: function() {\n return this.getScaleDimensions();\n },\n areDimensionsEqual: function(p, q) {\n return ((((p.width === q.width)) && ((p.height === q.height))));\n },\n shouldAddAllNodesAndStyles: function() {\n return this.props.animated;\n },\n hasCrop: function() {\n if (this.shouldAddAllNodesAndStyles()) {\n return true;\n }\n ;\n ;\n var p = this.getContainerDimensions(), q = this.getClipCropDimensions(), r = this.getClipScaleDimensions();\n if (((this.areDimensionsEqual(p, q) || this.areDimensionsEqual(q, r)))) {\n return false;\n }\n ;\n ;\n return true;\n },\n hasContainer: function() {\n if (((this.shouldAddAllNodesAndStyles() || this.hasInsetBorder()))) {\n return true;\n }\n ;\n ;\n var p = this.getContainerDimensions(), q = this.getClipScaleDimensions();\n if (this.areDimensionsEqual(p, q)) {\n return false;\n }\n ;\n ;\n return true;\n },\n hasInsetBorder: function() {\n return ((this.shouldAddAllNodesAndStyles() || this.props.insetBorderColor));\n },\n applyPositionStyle: function(p, q) {\n if (((this.shouldAddAllNodesAndStyles() || q.left))) {\n p.left = Math.round(q.left);\n }\n ;\n ;\n if (((this.shouldAddAllNodesAndStyles() || q.JSBNG__top))) {\n p.JSBNG__top = Math.round(q.JSBNG__top);\n }\n ;\n ;\n },\n applyDimensionsStyle: function(p, q) {\n p.width = Math.round(q.width);\n p.height = Math.round(q.height);\n },\n applyBorderRadiusStyle: function(p) {\n if (((this.shouldAddAllNodesAndStyles() || this.props.borderRadius))) {\n p.borderRadius = ((this.props.borderRadius || 0));\n }\n ;\n ;\n },\n getScaleStyle: function() {\n var p = {\n }, q = this.getClipCropDimensions(), r = this.getClipScaleDimensions();\n if (((this.shouldAddAllNodesAndStyles() || !this.areDimensionsEqual(q, r)))) {\n this.applyPositionStyle(p, this.getClipScalePosition());\n }\n else this.applyPositionStyle(p, this.getClipCropPosition());\n ;\n ;\n this.applyDimensionsStyle(p, this.getClipScaleDimensions());\n this.applyBorderRadiusStyle(p);\n return p;\n },\n getCropStyle: function() {\n var p = {\n };\n this.applyPositionStyle(p, this.getClipCropPosition());\n this.applyDimensionsStyle(p, this.getClipCropDimensions());\n this.applyBorderRadiusStyle(p);\n return p;\n },\n getInsetBorderStyle: function() {\n var p = {\n borderColor: ((this.props.insetBorderColor || \"transparent\"))\n };\n this.applyPositionStyle(p, this.getClipCropPosition());\n this.applyDimensionsStyle(p, this.getClipCropDimensions());\n this.applyBorderRadiusStyle(p);\n return p;\n },\n getContainerStyle: function() {\n var p = {\n };\n this.applyDimensionsStyle(p, this.getContainerDimensions());\n this.applyBorderRadiusStyle(p);\n return p;\n },\n getScale: function() {\n var p = this.getScaleStyle(), q = p.width, r = p.height;\n p = h({\n }, p);\n delete p.width;\n delete p.height;\n return this.transferPropsTo(l.DOM.img({\n alt: this.props.alt,\n className: (((\"-cx-PRIVATE-pixelz__scaledimage\") + ((this.shouldAddAllNodesAndStyles() ? ((\" \" + \"-cx-PRIVATE-pixelz__animated\")) : \"\")))),\n src: this.props.src,\n style: p,\n width: q,\n height: r\n }));\n },\n getCrop: function() {\n var p = this.getScale();\n if (!this.hasCrop()) {\n return p;\n }\n ;\n ;\n return (l.DOM.div({\n className: (((\"-cx-PRIVATE-pixelz__croppedimage\") + ((this.shouldAddAllNodesAndStyles() ? ((\" \" + \"-cx-PRIVATE-pixelz__animated\")) : \"\")))),\n style: this.getCropStyle()\n }, p));\n },\n getInsetBorder: function() {\n if (!this.hasInsetBorder()) {\n return null;\n }\n ;\n ;\n return (l.DOM.div({\n className: (((\"-cx-PRIVATE-pixelz__insetborder\") + ((this.shouldAddAllNodesAndStyles() ? ((\" \" + \"-cx-PRIVATE-pixelz__animated\")) : \"\")))),\n style: this.getInsetBorderStyle()\n }));\n },\n getContainer: function() {\n var p = this.getCrop();\n if (!this.hasContainer()) {\n return p;\n }\n ;\n ;\n var q = this.getInsetBorder();\n return (l.DOM.div({\n className: (((\"-cx-PRIVATE-pixelz__container\") + ((this.shouldAddAllNodesAndStyles() ? ((\" \" + \"-cx-PRIVATE-pixelz__animated\")) : \"\")))),\n style: this.getContainerStyle()\n }, p, q));\n },\n render: function() {\n var p = this.getSrcDimensions();\n if (!p) {\n return l.DOM.span(null);\n }\n ;\n ;\n return this.getContainer();\n }\n });\n e.exports = o;\n});\n__d(\"ModalMask\", [\"DOM\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = null, i = 0, j = {\n show: function() {\n i++;\n if (!h) {\n h = g.create(\"div\", {\n id: \"modalMaskOverlay\"\n });\n g.appendContent(JSBNG__document.body, h);\n }\n ;\n ;\n },\n hide: function() {\n if (i) {\n i--;\n if (((!i && h))) {\n g.remove(h);\n h = null;\n }\n ;\n ;\n }\n ;\n ;\n }\n };\n e.exports = j;\n});\n__d(\"WebMessengerPermalinkConstants\", [\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"URI\"), h = {\n ARCHIVED_PATH: \"/messages/archived\",\n BASE_PATH: \"/messages\",\n OTHER_PATH: \"/messages/other\",\n SPAM_PATH: \"/messages/spam\",\n COMPOSE_POSTFIX_PATH: \"/new\",\n SEARCH_POSTFIX_PATH: \"/search\",\n TID_POSTFIX_PARTIAL_PATH: \"/conversation-\",\n overriddenVanities: \"(archived|other|spam|new|search|conversation-.*)\",\n getURIPathForThreadID: function(i, j) {\n return ((((((j || h.BASE_PATH)) + h.TID_POSTFIX_PARTIAL_PATH)) + g.encodeComponent(g.encodeComponent(i))));\n },\n getThreadIDFromURI: function(i) {\n var j = i.getPath().match(((((((h.BASE_PATH + \"(/[^/]*)*\")) + h.TID_POSTFIX_PARTIAL_PATH)) + \"([^/]+)\")));\n if (j) {\n var k = g.decodeComponent(g.decodeComponent(j[2]));\n return k;\n }\n ;\n ;\n },\n getURIPathForIDOrVanity: function(i, j) {\n if (i.match(((((\"^\" + h.overriddenVanities)) + \"$\")))) {\n i = ((\".\" + i));\n }\n ;\n ;\n return ((((((j || h.BASE_PATH)) + \"/\")) + i));\n },\n getUserIDOrVanity: function(i) {\n var j = i.match(((h.BASE_PATH + \".*/([^/]+)/?$\"))), k = ((j && j[1])), l = h.overriddenVanities;\n if (((!k || k.match(((((\"^\" + l)) + \"$\")))))) {\n return false;\n }\n else if (k.match(((((\"^\\\\.\" + l)) + \"$\")))) {\n return k.substr(1);\n }\n else return k\n \n ;\n }\n };\n e.exports = h;\n});\n__d(\"MercuryErrorInfo\", [\"MercuryErrorType\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"MercuryErrorType\"), h = b(\"tx\"), i = {\n getMessage: function(j) {\n var k = \"This message failed to send.\";\n if (i.isConnectionError(j)) {\n k = \"Unable to connect to Facebook. This message failed to send. \";\n }\n else if (j.description) {\n k = j.description;\n }\n \n ;\n ;\n return k;\n },\n isConnectionError: function(j) {\n if (((j && ((j.type == g.TRANSPORT))))) {\n return ((((((j.code === 1001)) || ((j.code === 1004)))) || ((j.code === 1006))));\n }\n ;\n ;\n return false;\n }\n };\n e.exports = i;\n});\n__d(\"MercuryChannelHandler\", [\"Arbiter\",\"ChannelConstants\",\"MercuryActionTypeConstants\",\"MercuryGlobalActionType\",\"MercuryPayloadSource\",\"MessagingReliabilityLogger\",\"MessagingEvent\",\"MessagingTag\",\"MercuryParticipants\",\"PresenceUtil\",\"MercuryServerRequests\",\"MercuryThreadInformer\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ChannelConstants\"), i = b(\"MercuryActionTypeConstants\"), j = b(\"MercuryGlobalActionType\"), k = b(\"MercuryPayloadSource\"), l = b(\"MessagingReliabilityLogger\"), m = b(\"MessagingEvent\"), n = b(\"MessagingTag\"), o = b(\"MercuryParticipants\"), p = b(\"PresenceUtil\"), q = b(\"MercuryServerRequests\").get(), r = b(\"MercuryThreadInformer\").get(), s = b(\"copyProperties\");\n function t(ia, ja) {\n if (((((((ia != h.getArbiterType(\"messaging\"))) || !ja.obj)) || !ja.obj.message))) {\n l.addEntry(\"channel_receive\", \"invalid_data\");\n return;\n }\n ;\n ;\n var ka = ja.obj.message, la = {\n author: ka.mercury_author_id,\n author_email: ka.mercury_author_email,\n body: ka.body,\n subject: ka.subject,\n has_attachment: ka.has_attachment,\n attachments: ka.attachments,\n html_body: ka.html_body,\n thread_id: ka.tid,\n message_id: ka.mid,\n coordinates: ka.mercury_coordinates,\n spoof_warning: ka.mercury_spoof_warning,\n source: ka.mercury_source,\n source_tags: ka.mercury_source_tags,\n threading_id: ka.threading_id,\n timestamp: ka.timestamp,\n timestamp_absolute: ka.timestamp_absolute,\n timestamp_relative: ka.timestamp_relative,\n timestamp_time_passed: ka.timestamp_time_passed,\n action_type: i.USER_GENERATED_MESSAGE,\n is_unread: ka.is_unread,\n action_id: ka.action_id,\n is_forward: false,\n forward_count: ((ka.forward_count || ka.JSBNG__forward)),\n forward_message_ids: ka.forward_msg_ids,\n location_text: ka.location_text,\n folder: ja.obj.folder\n }, ma = [s({\n }, la),];\n ma = ma.concat(((ka.forward_actions || [])));\n var na = k.CLIENT_CHANNEL_MESSAGE;\n q.handleUpdateWaitForThread({\n actions: ma,\n payload_source: na\n }, ka.tid);\n if (((!ka.is_unread && ((ka.mercury_author_id === o.user))))) {\n var oa = {\n };\n oa[ka.tid] = ja.obj.folder;\n u(h.getArbiterType(\"messaging\"), {\n obj: {\n JSBNG__event: m.READ,\n tids: [ka.tid,],\n folder_info: oa,\n timestamp: ka.timestamp\n }\n });\n }\n ;\n ;\n l.addEntry(\"channel_receive\", \"success\", [la.thread_id,la.message_id,p.getSessionID(),]);\n };\n;\n function u(ia, ja) {\n if (((((((ia != h.getArbiterType(\"messaging\"))) || !ja.obj)) || !ja.obj.tids))) {\n return;\n }\n ;\n ;\n var ka = [], la = ((ja.obj.JSBNG__event == m.READ));\n ja.obj.tids.forEach(function(ma) {\n ka.push({\n action_type: i.CHANGE_READ_STATUS,\n action_id: null,\n thread_id: ma,\n mark_as_read: la,\n timestamp: ((ja.obj.timestamp || 0)),\n folder: ja.obj.folder_info[ma]\n });\n });\n q.handleUpdate({\n actions: ka,\n payload_source: k.CLIENT_CHANNEL_MESSAGE\n });\n };\n;\n function v(ia, ja) {\n if (((((((ia != h.getArbiterType(\"messaging\"))) || !ja.obj)) || !ja.obj.tids))) {\n return;\n }\n ;\n ;\n var ka = [];\n ja.obj.tids.forEach(function(la) {\n ka.push({\n action_type: i.DELETE_THREAD,\n action_id: null,\n thread_id: la\n });\n });\n q.handleUpdate({\n actions: ka,\n payload_source: k.CLIENT_CHANNEL_MESSAGE\n });\n };\n;\n function w(ia, ja) {\n if (((((((((ia != h.getArbiterType(\"messaging\"))) || !ja.obj)) || !ja.obj.tids)) || !ja.obj.mids))) {\n return;\n }\n ;\n ;\n var ka = ja.obj.tids[0], la = {\n action_type: i.DELETE_MESSAGES,\n action_id: null,\n thread_id: ka,\n message_ids: ja.obj.mids\n };\n q.handleUpdate({\n actions: [la,],\n threads: [ja.obj.updated_thread,],\n payload_source: k.CLIENT_CHANNEL_MESSAGE\n });\n };\n;\n function x(ia, ja) {\n if (((((((ia != h.getArbiterType(\"messaging\"))) || !ja.obj)) || !ja.obj.folder))) {\n return;\n }\n ;\n ;\n var ka = {\n action_type: j.MARK_ALL_READ,\n action_id: ja.obj.action_id,\n folder: ja.obj.folder\n };\n q.handleUpdate({\n global_actions: [ka,]\n });\n };\n;\n function y(ia, ja) {\n if (((((ia != h.getArbiterType(\"messaging\"))) || !ja.obj.tids))) {\n return;\n }\n ;\n ;\n var ka = k.CLIENT_CHANNEL_MESSAGE;\n ja.obj.tids.forEach(function(la) {\n var ma = {\n action_type: i.CHANGE_ARCHIVED_STATUS,\n action_id: null,\n thread_id: la,\n archived: ja.obj.state\n };\n q.handleUpdateWaitForThread({\n actions: [s({\n }, ma),],\n payload_source: ka\n }, la);\n });\n };\n;\n function z(ia, ja) {\n if (((((ia != h.getArbiterType(\"messaging\"))) || !ja.obj.tids))) {\n return;\n }\n ;\n ;\n var ka = k.CLIENT_CHANNEL_MESSAGE, la;\n ja.obj.tids.forEach(function(ma) {\n if (((ja.obj.JSBNG__event == m.TAG))) {\n la = ja.obj.tag;\n }\n else la = ((ja.obj.marked_as_spam ? n.SPAM : n.INBOX));\n ;\n ;\n var na = {\n action_type: i.CHANGE_FOLDER,\n action_id: null,\n thread_id: ma,\n new_folder: la\n };\n q.handleUpdateWaitForThread({\n actions: [s({\n }, na),],\n payload_source: ka\n }, ma);\n });\n };\n;\n function aa(ia, ja) {\n if (((((ia != h.getArbiterType(\"messaging\"))) || !ja.obj.tag))) {\n return;\n }\n ;\n ;\n switch (ja.obj.tag) {\n case n.ACTION_ARCHIVED:\n y(ia, ja);\n break;\n case n.INBOX:\n \n case n.OTHER:\n z(ia, ja);\n break;\n };\n ;\n };\n;\n function ba(ia, ja) {\n if (((((((ia != h.getArbiterType(\"inbox\"))) || !ja.obj)) || !ja.obj.seen_timestamp))) {\n return;\n }\n ;\n ;\n q.handleUpdate({\n message_counts: [{\n seen_timestamp: ja.obj.seen_timestamp,\n folder: n.INBOX\n },],\n unseen_thread_ids: [{\n thread_ids: [],\n folder: n.INBOX\n },],\n payload_source: k.CLIENT_CHANNEL_MESSAGE\n });\n };\n;\n function ca(ia, ja) {\n if (((((ia != h.getArbiterType(\"mercury\"))) || !ja.obj))) {\n return;\n }\n ;\n ;\n r.synchronizeInforms(function() {\n var ka = ja.obj, la = [];\n ((ka.actions || [])).forEach(function(ma) {\n var na = i.USER_GENERATED_MESSAGE;\n if (((ma.action_type == i.LOG_MESSAGE))) {\n var oa = k.CLIENT_CHANNEL_MESSAGE;\n q.handleUpdateWaitForThread({\n actions: [s({\n }, ma),],\n payload_source: oa\n }, ma.thread_id);\n }\n else if (((ma.action_type != na))) {\n la.push(ma);\n }\n \n ;\n ;\n });\n ka.actions = la;\n ka.payload_source = k.CLIENT_CHANNEL_MESSAGE;\n q.handleUpdate(ka);\n });\n };\n;\n function da(ia, ja) {\n q.handleRoger(ja.obj);\n };\n;\n function ea(ia, ja) {\n if (((((((((ia != h.getArbiterType(\"messaging\"))) || !ja.obj)) || ((ja.obj.mute_settings === undefined)))) || !ja.obj.thread_id))) {\n return;\n }\n ;\n ;\n var ka = i.CHANGE_MUTE_SETTINGS, la = [{\n action_type: ka,\n action_id: null,\n thread_id: ja.obj.thread_id,\n mute_settings: ja.obj.mute_settings\n },];\n q.handleUpdate({\n actions: la,\n payload_source: k.CLIENT_CHANNEL_MESSAGE\n });\n };\n;\n function fa(ia, ja) {\n switch (ja.obj.JSBNG__event) {\n case m.DELIVER:\n t(ia, ja);\n break;\n case m.READ:\n \n case m.UNREAD:\n u(ia, ja);\n break;\n case m.READ_ALL:\n x(ia, ja);\n break;\n case m.DELETE:\n v(ia, ja);\n break;\n case m.DELETE_MESSAGES:\n w(ia, ja);\n break;\n case m.TAG:\n aa(ia, ja);\n break;\n case m.REPORT_SPAM:\n z(ia, ja);\n break;\n case m.READ_RECEIPT:\n da(ia, ja);\n break;\n case m.CHANGE_MUTE_SETTINGS:\n ea(ia, ja);\n break;\n };\n ;\n };\n;\n var ga = [], ha = {\n turnOn: function() {\n if (!ga.length) {\n var ia = {\n mercury: ca,\n messaging: fa,\n inbox: ba\n };\n {\n var fin165keys = ((window.top.JSBNG_Replay.forInKeys)((ia))), fin165i = (0);\n var ja;\n for (; (fin165i < fin165keys.length); (fin165i++)) {\n ((ja) = (fin165keys[fin165i]));\n {\n ga.push(g.subscribe(h.getArbiterType(ja), ia[ja]));\n ;\n };\n };\n };\n ;\n }\n ;\n ;\n },\n turnOff: function() {\n if (ga.length) {\n ga.forEach(g.unsubscribe);\n ga = [];\n }\n ;\n ;\n }\n };\n ha.turnOn();\n e.exports = ha;\n});\n__d(\"MercuryRoger\", [\"ArbiterMixin\",\"MercuryActionStatus\",\"MercuryServerRequests\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"MercuryActionStatus\"), i = b(\"MercuryServerRequests\").get(), j = b(\"copyProperties\"), k = {\n }, l = {\n getSeenBy: function(m, n) {\n if (!m) {\n return [];\n }\n ;\n ;\n var o = [], p = k[m.thread_id], q = h.SUCCESS;\n {\n var fin166keys = ((window.top.JSBNG_Replay.forInKeys)((p))), fin166i = (0);\n var r;\n for (; (fin166i < fin166keys.length); (fin166i++)) {\n ((r) = (fin166keys[fin166i]));\n {\n if (((((((p[r] > m.timestamp)) && ((((m.JSBNG__status === undefined)) || ((m.JSBNG__status === q)))))) && ((!n || ((r != m.author))))))) {\n o.push(r);\n }\n ;\n ;\n };\n };\n };\n ;\n return o;\n },\n getSeenTimestamp: function(m, n) {\n var o = k[m];\n return ((o ? o[n] : null));\n }\n };\n j(l, g);\n i.subscribe(\"update-roger\", function(m, n) {\n {\n var fin167keys = ((window.top.JSBNG_Replay.forInKeys)((n))), fin167i = (0);\n var o;\n for (; (fin167i < fin167keys.length); (fin167i++)) {\n ((o) = (fin167keys[fin167i]));\n {\n if (!k[o]) {\n k[o] = {\n };\n }\n ;\n ;\n {\n var fin168keys = ((window.top.JSBNG_Replay.forInKeys)((n[o]))), fin168i = (0);\n var p;\n for (; (fin168i < fin168keys.length); (fin168i++)) {\n ((p) = (fin168keys[fin168i]));\n {\n var q = k[o][p], r = n[o][p];\n if (((!q || ((r > q))))) {\n k[o][p] = r;\n }\n ;\n ;\n };\n };\n };\n ;\n };\n };\n };\n ;\n if (n) {\n l.inform(\"state-changed\", n);\n }\n ;\n ;\n });\n e.exports = l;\n});\n__d(\"MercuryDelayedRoger\", [\"ArbiterMixin\",\"LiveTimer\",\"MercuryActionStatus\",\"MercuryConfig\",\"MercuryMessages\",\"MercuryRoger\",\"MercuryThreadInformer\",\"MercuryThreads\",\"copyProperties\",\"setTimeoutAcrossTransitions\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"LiveTimer\"), i = b(\"MercuryActionStatus\"), j = b(\"MercuryConfig\"), k = b(\"MercuryMessages\").get(), l = b(\"MercuryRoger\"), m = b(\"MercuryThreadInformer\").get(), n = b(\"MercuryThreads\").get(), o = b(\"copyProperties\"), p = b(\"setTimeoutAcrossTransitions\"), q = {\n }, r = {\n }, s = j[\"roger.seen_delay\"], t = o({\n getSeenBy: function(x, y) {\n if (r[x]) {\n return [];\n }\n ;\n ;\n if (!q[x]) {\n var z = n.getThreadMetaNow(x);\n if (z) {\n q[x] = {\n thread_id: x,\n author: z.participants[0],\n timestamp: z.timestamp\n };\n }\n ;\n ;\n }\n ;\n ;\n return l.getSeenBy(q[x], y);\n }\n }, g);\n function u(x) {\n var y = false;\n k.getThreadMessagesRange(x, 0, 1, function(z) {\n var aa = z[0];\n if (!aa) {\n return;\n }\n ;\n ;\n var ba = aa.timestamp;\n if (((aa.action_id || ((aa.JSBNG__status == i.SUCCESS))))) {\n ba -= h.getServerTimeOffset();\n }\n ;\n ;\n var ca = t.getSeenBy(x);\n if (r[x]) {\n JSBNG__clearTimeout(r[x]);\n delete r[x];\n }\n ;\n ;\n var da = ((ba + s)), ea = ((da - JSBNG__Date.now()));\n if (((ea > 0))) {\n r[x] = p(function() {\n delete r[x];\n v(x);\n }, ea);\n }\n ;\n ;\n q[x] = aa;\n var fa = t.getSeenBy(x);\n if (((ca.length || fa.length))) {\n y = true;\n }\n ;\n ;\n });\n return y;\n };\n;\n function v(x) {\n var y = {\n };\n y[x] = true;\n t.inform(\"state-changed\", y);\n };\n;\n function w(JSBNG__event, x) {\n var y = {\n };\n {\n var fin169keys = ((window.top.JSBNG_Replay.forInKeys)((x))), fin169i = (0);\n var z;\n for (; (fin169i < fin169keys.length); (fin169i++)) {\n ((z) = (fin169keys[fin169i]));\n {\n if (u(z)) {\n y[z] = true;\n }\n ;\n ;\n };\n };\n };\n ;\n {\n var fin170keys = ((window.top.JSBNG_Replay.forInKeys)((y))), fin170i = (0);\n var aa;\n for (; (fin170i < fin170keys.length); (fin170i++)) {\n ((aa) = (fin170keys[fin170i]));\n {\n t.inform(\"state-changed\", y);\n break;\n };\n };\n };\n ;\n };\n;\n l.subscribe(\"state-changed\", function(x, y) {\n {\n var fin171keys = ((window.top.JSBNG_Replay.forInKeys)((y))), fin171i = (0);\n var z;\n for (; (fin171i < fin171keys.length); (fin171i++)) {\n ((z) = (fin171keys[fin171i]));\n {\n ((!r[z] && v(z)));\n ;\n };\n };\n };\n ;\n });\n m.subscribe(\"messages-received\", w);\n m.subscribe(\"messages-reordered\", w);\n m.subscribe(\"messages-updated\", w);\n e.exports = t;\n});\n__d(\"MercuryFilters\", [\"MessagingTag\",\"arrayContains\",], function(a, b, c, d, e, f) {\n var g = b(\"MessagingTag\"), h = b(\"arrayContains\"), i = [g.UNREAD,], j = {\n ALL: \"all\",\n getSupportedFilters: function() {\n return i.concat();\n },\n isSupportedFilter: function(k) {\n return h(i, k);\n }\n };\n e.exports = j;\n});\n__d(\"MercuryOrderedThreadlist\", [\"JSLogger\",\"MercuryActionTypeConstants\",\"MercuryFilters\",\"MercuryFolders\",\"MercuryPayloadSource\",\"MercurySingletonMixin\",\"MessagingTag\",\"RangedCallbackManager\",\"MercuryServerRequests\",\"MercuryThreadInformer\",\"MercuryThreads\",\"arrayContains\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"JSLogger\"), h = b(\"MercuryActionTypeConstants\"), i = b(\"MercuryFilters\"), j = b(\"MercuryFolders\"), k = b(\"MercuryPayloadSource\"), l = b(\"MercurySingletonMixin\"), m = b(\"MessagingTag\"), n = b(\"RangedCallbackManager\"), o = b(\"MercuryServerRequests\"), p = b(\"MercuryThreadInformer\"), q = b(\"MercuryThreads\"), r = b(\"arrayContains\"), s = b(\"copyProperties\"), t = g.create(\"ordered_threadlist_model\"), u = i.getSupportedFilters().concat([i.ALL,m.GROUPS,]), v = j.getSupportedFolders();\n function w(ga, ha, ia, ja) {\n var ka = [], la = false, ma = false, na = ((ha || [])).filter(function(ua) {\n var va = ((ua.filter || i.ALL));\n return ((((((ua.folder == ia)) || ((!ua.folder && ((ia == m.INBOX)))))) && ((va == ja))));\n }), oa = ga._threadlistOrderMap[ia][ja].getAllResources(), pa;\n na.forEach(function(ua) {\n ka = ka.concat(ua.thread_ids);\n if (ua.error) {\n if (((ua.end > oa.length))) {\n ma = ua.error;\n }\n ;\n ;\n }\n else {\n var va = ((ua.end - ua.start));\n if (((ua.thread_ids.length < va))) {\n la = true;\n }\n ;\n ;\n }\n ;\n ;\n if (((!pa || ((ua.end > pa))))) {\n pa = ua.end;\n }\n ;\n ;\n });\n aa(ga, ka, ia, ja);\n if (la) {\n ga._threadlistOrderMap[ia][ja].setReachedEndOfArray();\n }\n else if (ma) {\n ga._threadlistOrderMap[ia][ja].setError(ma);\n }\n else {\n var qa = ga._threadlistOrderMap[ia][ja].getCurrentArraySize();\n if (((pa && ((qa < pa))))) {\n var ra = {\n }, sa = oa.concat(ka), ta = sa.filter(function(ua) {\n var va = ra[ua];\n ra[ua] = true;\n return va;\n });\n if (ta.length) {\n t.warn(\"duplicate_threads\", {\n folder: ia,\n expected_final_size: pa,\n actual_final_size: qa,\n duplicate_thread_ids: ta\n });\n ga._serverRequests.fetchThreadlistInfo(pa, ta.length, ia, ((((ja == i.ALL)) ? null : ja)));\n }\n ;\n ;\n }\n ;\n ;\n }\n \n ;\n ;\n };\n;\n function x(ga, ha) {\n v.forEach(function(ia) {\n u.forEach(function(ja) {\n w(ga, ha, ia, ja);\n });\n });\n };\n;\n function y(ga, ha) {\n var ia = {\n };\n v.forEach(function(ja) {\n ia[ja] = {\n };\n u.forEach(function(ka) {\n ia[ja][ka] = {\n to_add: [],\n to_remove: [],\n to_remove_if_last_after_add: {\n }\n };\n });\n });\n ha.forEach(function(ja) {\n if (ja.is_forward) {\n return;\n }\n ;\n ;\n var ka = ja.thread_id, la = ba(ga, ka), ma = ca(ga, ka);\n function na() {\n ma.forEach(function(pa) {\n ia[la][pa].to_add.push(ka);\n if (((!ga._threadlistOrderMap[la][pa].hasReachedEndOfArray() && !ga._threadlistOrderMap[la][pa].hasResource(ka)))) {\n ia[la][pa].to_remove_if_last_after_add[ka] = true;\n }\n ;\n ;\n });\n };\n ;\n function oa(pa) {\n if (r(u, pa)) {\n if (r(ma, pa)) {\n ia[la][pa].to_add.push(ka);\n }\n else ia[la][pa].to_remove.push(ka);\n ;\n }\n ;\n ;\n };\n ;\n if (!la) {\n if (((((ja.action_type === h.CHANGE_FOLDER)) || ((ja.action_type === h.CHANGE_ARCHIVED_STATUS))))) {\n v.forEach(function(pa) {\n if (((pa !== la))) {\n u.forEach(function(qa) {\n ga._threadlistOrderMap[pa][qa].removeResources([ka,]);\n });\n }\n ;\n ;\n });\n }\n ;\n ;\n return;\n }\n ;\n ;\n switch (ja.action_type) {\n case h.DELETE_THREAD:\n ma.forEach(function(pa) {\n ia[la][pa].to_remove.push(ka);\n });\n break;\n case h.CHANGE_ARCHIVED_STATUS:\n \n case h.CHANGE_FOLDER:\n na();\n break;\n case h.CHANGE_READ_STATUS:\n oa(m.UNREAD);\n break;\n case h.USER_GENERATED_MESSAGE:\n \n case h.LOG_MESSAGE:\n ma.forEach(function(pa) {\n if (da(ga, ka, la, pa)) {\n ia[la][pa].to_add.push(ka);\n }\n ;\n ;\n });\n break;\n };\n ;\n });\n v.forEach(function(ja) {\n u.forEach(function(ka) {\n var la = ga._threadlistOrderMap[ja][ka];\n aa(ga, ia[ja][ka].to_add, ja, ka);\n for (var ma = ((la.getCurrentArraySize() - 1)); ((ma >= 0)); ma--) {\n var na = la.getResourceAtIndex(ma);\n if (!ia[ja][ka].to_remove_if_last_after_add[na]) {\n break;\n }\n ;\n ;\n ia[ja][ka].to_remove.push(na);\n };\n ;\n la.removeResources(ia[ja][ka].to_remove);\n });\n });\n };\n;\n function z(ga, ha) {\n var ia = {\n };\n v.forEach(function(ja) {\n ia[ja] = {\n };\n u.forEach(function(ka) {\n ia[ja][ka] = [];\n });\n });\n ha.forEach(function(ja) {\n var ka = ba(ga, ja.thread_id), la = ca(ga, ja.thread_id);\n if (ka) {\n la.forEach(function(ma) {\n if (da(ga, ja.thread_id, ka, ma)) {\n ia[ka][ma].push(ja.thread_id);\n }\n ;\n ;\n });\n }\n ;\n ;\n });\n v.forEach(function(ja) {\n u.forEach(function(ka) {\n if (((ia[ja][ka].length > 0))) {\n aa(ga, ia[ja][ka], ja, ka);\n }\n ;\n ;\n });\n });\n };\n;\n function aa(ga, ha, ia, ja) {\n ja = ((ja || i.ALL));\n ga._threadlistOrderMap[ia][ja].addResources(ha);\n v.forEach(function(ka) {\n if (((ka != ia))) {\n ga._threadlistOrderMap[ka][ja].removeResources(ha);\n }\n ;\n ;\n });\n };\n;\n function ba(ga, ha) {\n var ia = ga._threads.getThreadMetaNow(ha), ja = null;\n if (!ia) {\n ja = \"No thread metadata\";\n }\n else if (!ia.folder) {\n ja = \"No thread folder\";\n }\n \n ;\n ;\n if (ja) {\n var ka = {\n error: ja,\n tid: ha\n };\n t.warn(\"no_thread_folder\", ka);\n return null;\n }\n ;\n ;\n var la = ia.folder;\n if (ia.is_archived) {\n la = m.ACTION_ARCHIVED;\n }\n ;\n ;\n if (ga._threadlistOrderMap[la]) {\n return la;\n }\n else return null\n ;\n };\n;\n function ca(ga, ha) {\n var ia = ga._threads.getThreadMetaNow(ha), ja = [i.ALL,];\n if (!ia) {\n var ka = {\n error: \"no_thread_metadata\",\n tid: ha\n };\n t.warn(\"no_thread_metadata\", ka);\n return [];\n }\n ;\n ;\n if (ia.unread_count) {\n ja.push(m.UNREAD);\n }\n ;\n ;\n if (!ia.is_canonical) {\n ja.push(m.GROUPS);\n }\n ;\n ;\n return ja;\n };\n;\n function da(ga, ha, ia, ja) {\n var ka = ga._threads.getThreadMetaNow(ha);\n return ((((((ka && ka.timestamp)) && ((ba(ga, ha) == ia)))) && r(ca(ga, ha), ja)));\n };\n;\n function ea(ga) {\n this._fbid = ga;\n this._serverRequests = o.getForFBID(this._fbid);\n this._threadInformer = p.getForFBID(this._fbid);\n this._threads = q.getForFBID(this._fbid);\n this._threadlistOrderMap = {\n };\n v.forEach(function(ha) {\n this._threadlistOrderMap[ha] = {\n };\n u.forEach(function(ia) {\n this._threadlistOrderMap[ha][ia] = new n(function(ja) {\n return this._threads.getThreadMetaNow(ja).timestamp;\n }.bind(this), function(ja, ka) {\n return ((ka - ja));\n }, this._serverRequests.canLinkExternally.bind(this._serverRequests));\n }.bind(this));\n }.bind(this));\n this._serverRequests.subscribe(\"update-threadlist\", function(ha, ia) {\n if (!fa(ia)) {\n return;\n }\n ;\n ;\n var ja = ia.ordered_threadlists;\n if (((ja && ja.length))) {\n x(this, ja);\n }\n else {\n var ka = ((ia.actions || [])).filter(function(la) {\n return la.thread_id;\n });\n z(this, ((ia.threads || [])));\n y(this, ka);\n }\n ;\n ;\n this._threadInformer.updatedThreadlist();\n }.bind(this));\n };\n;\n s(ea.prototype, {\n getThreadlist: function(ga, ha, ia, ja, ka, la) {\n return this.getFilteredThreadlist(ga, ha, ia, i.ALL, ja, ka, la);\n },\n getFilteredThreadlist: function(ga, ha, ia, ja, ka, la, ma) {\n var na = this._threadlistOrderMap[ia][ja], oa = na.executeOrEnqueue(ga, ha, ka, la), pa = na.getUnavailableResources(oa), qa = na.getError(ga, ha, la);\n if (((pa.length || qa))) {\n if (((na.getCurrentArraySize() < ga))) {\n var ra = {\n start: ga,\n limit: ha,\n filter: ja,\n resources_size: na.getCurrentArraySize()\n };\n t.warn(\"range_with_gap\", ra);\n }\n ;\n ;\n na.setError(false);\n this._serverRequests.fetchThreadlistInfo(na.getCurrentArraySize(), pa.length, ia, ((((ja == i.ALL)) ? null : ja)), ma);\n }\n ;\n ;\n return oa;\n },\n getThreadlistUntilTimestamp: function(ga, ha, ia) {\n ia = ((ia || i.ALL));\n return this._threadlistOrderMap[ha][ia].getElementsUntil(ga);\n },\n unsubscribe: function(ga, ha, ia) {\n ia = ((ia || i.ALL));\n this._threadlistOrderMap[ha][ia].unsubscribe(ga);\n }\n });\n s(ea, l);\n function fa(ga) {\n switch (ga.payload_source) {\n case k.CLIENT_CHANGE_ARCHIVED_STATUS:\n \n case k.CLIENT_CHANGE_READ_STATUS:\n \n case k.CLIENT_CHANGE_FOLDER:\n \n case k.CLIENT_CHANNEL_MESSAGE:\n \n case k.CLIENT_DELETE_MESSAGES:\n \n case k.CLIENT_DELETE_THREAD:\n \n case k.CLIENT_SEND_MESSAGE:\n \n case k.SERVER_SEND_MESSAGE:\n \n case k.SERVER_CONFIRM_MESSAGES:\n \n case k.SERVER_FETCH_THREADLIST_INFO:\n \n case k.SERVER_THREAD_SYNC:\n return true;\n case k.SERVER_INITIAL_DATA:\n return ga.ordered_threadlists;\n default:\n return false;\n };\n ;\n };\n;\n e.exports = ea;\n});\n__d(\"MercuryUnseenState\", [\"Arbiter\",\"TimestampConverter\",\"JSLogger\",\"KeyedCallbackManager\",\"MercuryActionTypeConstants\",\"MercurySingletonMixin\",\"MercuryThreadlistConstants\",\"MessagingTag\",\"MercuryServerRequests\",\"MercuryThreadInformer\",\"copyProperties\",\"createObjectFrom\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"TimestampConverter\"), i = b(\"JSLogger\"), j = b(\"KeyedCallbackManager\"), k = b(\"MercuryActionTypeConstants\"), l = b(\"MercurySingletonMixin\"), m = b(\"MercuryThreadlistConstants\"), n = b(\"MessagingTag\"), o = b(\"MercuryServerRequests\"), p = b(\"MercuryThreadInformer\"), q = b(\"copyProperties\"), r = b(\"createObjectFrom\"), s = m.MAX_UNSEEN_COUNT, t = \"unseen_thread_hash\", u = \"unseen_thread_list\", v = i.create(\"mercury_unseen_state\");\n function w(ja) {\n this._fbid = ja;\n this._serverRequests = o.getForFBID(this._fbid);\n this._threadInformer = p.getForFBID(this._fbid);\n this._initialUnseenCount = 0;\n this._lastSeenTimestamp = 0;\n this._maxCount = false;\n this._unseenResources = new j();\n this._serverRequests.subscribe(\"update-unseen\", function(ka, la) {\n ba(this, la);\n }.bind(this));\n this._serverRequests.subscribe(\"update-thread-ids\", function(ka, la) {\n ha(this, la);\n }.bind(this));\n };\n;\n q(w.prototype, {\n getUnseenCount: function() {\n if (this.exceedsMaxCount()) {\n v.error(\"unguarded_unseen_count_fetch\", {\n });\n return 0;\n }\n ;\n ;\n return aa(this);\n },\n exceedsMaxCount: function() {\n return ((this._maxCount || ((aa(this) > s))));\n },\n markAsSeen: function() {\n if (((((aa(this) > 0)) || this._maxCount))) {\n this._serverRequests.markSeen();\n ca(this, h.convertActionIDToTimestamp(this._serverRequests.getLastActionID()), []);\n }\n ;\n ;\n },\n markThreadSeen: function(ja, ka) {\n var la = {\n };\n la[ja] = null;\n ea(this, la, ka);\n }\n });\n q(w, l);\n function x(ja, ka) {\n ja._unseenResources.setResource(t, ka);\n ja._unseenResources.setResource(u, Object.keys(ka));\n };\n;\n function y(ja, ka) {\n var la = ja._unseenResources.executeOrEnqueue(t, ka), ma = ja._unseenResources.getUnavailableResources(la);\n if (ma.length) {\n ja._serverRequests.fetchUnseenThreadIDs();\n }\n ;\n ;\n };\n;\n function z(ja) {\n return ja._unseenResources.getResource(t);\n };\n;\n function aa(ja) {\n var ka = ja._unseenResources.getResource(u);\n if (ka) {\n return ka.length;\n }\n else return ja._initialUnseenCount\n ;\n };\n;\n function ba(ja, ka) {\n var la = ia(ka);\n if (ka.unseen_thread_ids) {\n ka.unseen_thread_ids.forEach(function(wa) {\n if (((wa.folder != n.INBOX))) {\n return;\n }\n ;\n ;\n var xa = ga(ja, wa.thread_ids), ya = ja._lastSeenTimestamp;\n if (((la && la.seen_timestamp))) {\n ya = la.seen_timestamp;\n }\n ;\n ;\n ca(ja, ya, xa);\n if (((la && ((la.unseen_count > s))))) {\n ja._maxCount = true;\n }\n ;\n ;\n });\n }\n else if (((la && la.seen_timestamp))) {\n ja._lastSeenTimestamp = la.seen_timestamp;\n if (((la.unseen_count > s))) {\n ja._maxCount = true;\n x(ja, {\n });\n }\n else {\n ja._initialUnseenCount = la.unseen_count;\n if (((ja._initialUnseenCount === 0))) {\n x(ja, {\n });\n }\n ;\n ;\n }\n ;\n ;\n }\n else {\n if (ja._maxCount) {\n return;\n }\n ;\n ;\n var ma = ka.actions;\n if (((!ma || !(ma.length)))) {\n return;\n }\n ;\n ;\n var na = {\n }, oa = {\n };\n for (var pa = 0; ((pa < ma.length)); pa++) {\n var qa = ma[pa];\n if (qa.is_forward) {\n continue;\n }\n ;\n ;\n var ra = qa.action_type, sa = qa.action_id, ta = ((qa.thread_id ? qa.thread_id : qa.server_thread_id)), ua = ((((qa.folder === undefined)) || ((qa.folder == n.INBOX))));\n if (!ua) {\n continue;\n }\n ;\n ;\n if (((((ra == k.USER_GENERATED_MESSAGE)) || ((ra == k.LOG_MESSAGE))))) {\n var va = h.isGreaterThan(sa, na[ta]);\n if (((qa.is_unread && ((!na[ta] || va))))) {\n na[ta] = sa;\n }\n ;\n ;\n }\n else if (((((ra == k.CHANGE_READ_STATUS)) && qa.mark_as_read))) {\n oa[ta] = sa;\n }\n \n ;\n ;\n };\n ;\n da(ja, na);\n ea(ja, oa);\n }\n \n ;\n ;\n };\n;\n function ca(ja, ka, la) {\n var ma = z(ja);\n if (((((((ma === undefined)) || ((ka > ja._lastSeenTimestamp)))) || ja._maxCount))) {\n ja._lastSeenTimestamp = ka;\n la = ((la || []));\n if (((la.length <= s))) {\n ja._maxCount = false;\n }\n ;\n ;\n var na = {\n }, oa = ((z(ja) || {\n }));\n {\n var fin172keys = ((window.top.JSBNG_Replay.forInKeys)((oa))), fin172i = (0);\n var pa;\n for (; (fin172i < fin172keys.length); (fin172i++)) {\n ((pa) = (fin172keys[fin172i]));\n {\n if (((oa[pa] !== true))) {\n var qa = oa[pa];\n if (fa(ja, qa)) {\n na[pa] = qa;\n }\n ;\n ;\n }\n ;\n ;\n };\n };\n };\n ;\n var ra = q(r(la, true), na);\n x(ja, ra);\n ja._threadInformer.updatedUnseenState();\n }\n ;\n ;\n };\n;\n function da(ja, ka) {\n if (ja._maxCount) {\n return;\n }\n ;\n ;\n var la = {\n }, ma = false;\n {\n var fin173keys = ((window.top.JSBNG_Replay.forInKeys)((ka))), fin173i = (0);\n var na;\n for (; (fin173i < fin173keys.length); (fin173i++)) {\n ((na) = (fin173keys[fin173i]));\n {\n var oa = ka[na];\n if (fa(ja, oa)) {\n la[na] = oa;\n ma = true;\n }\n ;\n ;\n };\n };\n };\n ;\n if (!ma) {\n return;\n }\n ;\n ;\n y(ja, function(pa) {\n {\n var fin174keys = ((window.top.JSBNG_Replay.forInKeys)((la))), fin174i = (0);\n var qa;\n for (; (fin174i < fin174keys.length); (fin174i++)) {\n ((qa) = (fin174keys[fin174i]));\n {\n var ra = la[qa];\n if (((!pa[qa] && fa(ja, ra)))) {\n pa[qa] = la[qa];\n }\n ;\n ;\n };\n };\n };\n ;\n x(ja, pa);\n ja._threadInformer.updatedUnseenState();\n });\n };\n;\n function ea(ja, ka, la) {\n var ma = false;\n {\n var fin175keys = ((window.top.JSBNG_Replay.forInKeys)((ka))), fin175i = (0);\n var na;\n for (; (fin175i < fin175keys.length); (fin175i++)) {\n ((na) = (fin175keys[fin175i]));\n {\n ma = true;\n break;\n };\n };\n };\n ;\n if (ma) {\n y(ja, function(oa) {\n var pa = false;\n {\n var fin176keys = ((window.top.JSBNG_Replay.forInKeys)((ka))), fin176i = (0);\n var qa;\n for (; (fin176i < fin176keys.length); (fin176i++)) {\n ((qa) = (fin176keys[fin176i]));\n {\n var ra = ka[qa], sa = h.isGreaterThan(ra, oa[qa]);\n if (((oa[qa] && ((!ra || sa))))) {\n delete oa[qa];\n pa = true;\n }\n ;\n ;\n };\n };\n };\n ;\n if (pa) {\n x(ja, oa);\n ja._threadInformer.updatedUnseenState();\n if (((la && ((aa(ja) === 0))))) {\n ja._serverRequests.markSeen();\n }\n ;\n ;\n }\n ;\n ;\n });\n }\n ;\n ;\n };\n;\n function fa(ja, ka) {\n var la = h.convertActionIDToTimestamp(ka);\n return ((la > ja._lastSeenTimestamp));\n };\n;\n function ga(ja, ka) {\n return ka.map(ja._serverRequests.convertThreadIDIfAvailable.bind(ja._serverRequests));\n };\n;\n function ha(ja, ka) {\n var la = z(ja);\n if (!la) {\n return;\n }\n ;\n ;\n {\n var fin177keys = ((window.top.JSBNG_Replay.forInKeys)((ka))), fin177i = (0);\n var ma;\n for (; (fin177i < fin177keys.length); (fin177i++)) {\n ((ma) = (fin177keys[fin177i]));\n {\n var na = ka[ma];\n if (la[ma]) {\n la[na] = la[ma];\n delete la[ma];\n }\n ;\n ;\n };\n };\n };\n ;\n x(ja, la);\n };\n;\n function ia(ja) {\n var ka = ((ja.message_counts || []));\n for (var la = 0; ((la < ka.length)); la++) {\n if (((ka[la].folder == n.INBOX))) {\n return ka[la];\n }\n ;\n ;\n };\n ;\n return null;\n };\n;\n g.subscribe(i.DUMP_EVENT, function(ja, ka) {\n ka.messaging = ((ka.messaging || {\n }));\n ka.messaging.unseen = {\n };\n ka.messaging.unseen_max_count = {\n };\n ka.messaging.unseen_time = {\n };\n var la = w._getInstances();\n {\n var fin178keys = ((window.top.JSBNG_Replay.forInKeys)((la))), fin178i = (0);\n var ma;\n for (; (fin178i < fin178keys.length); (fin178i++)) {\n ((ma) = (fin178keys[fin178i]));\n {\n ka.messaging.unseen[ma] = q({\n }, z(la[ma]));\n ka.messaging.unseen_max_count[ma] = la[ma]._maxCount;\n ka.messaging.unseen_time[ma] = la[ma]._lastSeenTimestamp;\n };\n };\n };\n ;\n });\n e.exports = w;\n});\n__d(\"MercuryThreadMetadataRawRenderer\", [\"JSBNG__Event\",\"JSBNG__CSS\",\"DOM\",\"MercuryActionStatus\",\"MercuryErrorInfo\",\"MessagingTag\",\"MercuryStatusTemplates\",\"Tooltip\",\"URI\",\"WebMessengerPermalinkConstants\",\"cx\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"JSBNG__CSS\"), i = b(\"DOM\"), j = b(\"MercuryActionStatus\"), k = b(\"MercuryErrorInfo\"), l = b(\"MessagingTag\"), m = b(\"MercuryStatusTemplates\"), n = b(\"Tooltip\"), o = b(\"URI\"), p = b(\"WebMessengerPermalinkConstants\"), q = b(\"cx\"), r = b(\"tx\"), s = {\n renderParticipantListWithNoThreadName: function(u, v, w, x, y, z) {\n var aa = {\n callback: true,\n check_length: true,\n show_unread_count: true\n };\n z = ((z || {\n }));\n var ba = {\n };\n {\n var fin179keys = ((window.top.JSBNG_Replay.forInKeys)((z))), fin179i = (0);\n var ca;\n for (; (fin179i < fin179keys.length); (fin179i++)) {\n ((ca) = (fin179keys[fin179i]));\n {\n if (aa[ca]) {\n ba[ca] = z[ca];\n delete z[ca];\n }\n ;\n ;\n };\n };\n };\n ;\n var da = w.map(function(ia) {\n return x[ia];\n }), ea = this.renderRawParticipantList(u, da, w.length, z);\n ea = this.renderRawTitleWithUnreadCount(ea, ((ba.show_unread_count ? v.unread_count : 0)));\n var fa = z.abbr_mode, ga = {\n };\n {\n var fin180keys = ((window.top.JSBNG_Replay.forInKeys)((z))), fin180i = (0);\n var ha;\n for (; (fin180i < fin180keys.length); (fin180i++)) {\n ((ha) = (fin180keys[fin180i]));\n {\n ga[ha] = z[ha];\n ;\n };\n };\n };\n ;\n ga.abbr_mode = true;\n y.forEach(function(ia) {\n var ja = ((((y.length > 1)) ? this._cloneIfDOMElement(ea) : ea));\n i.setContent(ia, ja);\n if (((((ba.check_length && !fa)) && ((ia.scrollWidth > ia.clientWidth))))) {\n var ka = this.renderRawParticipantList(u, da, w.length, ga), la = this.renderRawTitleWithUnreadCount(ka, ((ba.show_unread_count ? v.unread_count : 0)));\n i.setContent(ia, la);\n }\n ;\n ;\n }.bind(this));\n ((ba.callback && ba.callback(ea)));\n },\n renderRawParticipantList: function(u, v, w, x) {\n var y = {\n abbr_mode: true,\n last_separator_uses_and: true,\n names_renderer: true\n };\n x = ((x || {\n }));\n var z = null;\n if (x.names_renderer) {\n z = x.names_renderer(v);\n }\n else z = v.map(function(ca) {\n return ca.JSBNG__name;\n });\n ;\n ;\n var aa = null;\n if (((z.length === 0))) {\n if (!u) {\n aa = \"New Message\";\n }\n else aa = \"No Participants\";\n ;\n ;\n }\n else if (((z.length == 1))) {\n aa = z[0];\n }\n else if (((z.length == 2))) {\n var ba = {\n participant1: z[0],\n participant2: z[1]\n };\n if (x.last_separator_uses_and) {\n aa = r._(\"{participant1} and {participant2}\", ba);\n }\n else aa = r._(\"{participant1}, {participant2}\", ba);\n ;\n ;\n }\n else if (x.last_separator_uses_and) {\n if (x.abbr_mode) {\n aa = r._(\"{participant1} and {others_link}\", {\n participant1: z[0],\n others_link: this.renderRawParticipantCount(u, {\n render_subset: true,\n count: ((w - 1))\n })\n });\n }\n else if (((z.length == 3))) {\n aa = r._(\"{participant1}, {participant2} and {participant3}\", {\n participant1: z[0],\n participant2: z[1],\n participant3: z[2]\n });\n }\n else aa = r._(\"{participant1}, {participant2} and {others_link}\", {\n participant1: z[0],\n participant2: z[1],\n others_link: this.renderRawParticipantCount(u, {\n render_subset: true,\n count: ((w - 2))\n })\n });\n \n ;\n ;\n }\n else if (((z.length == 3))) {\n aa = r._(\"{participant1}, {participant2}, {participant3}\", {\n participant1: z[0],\n participant2: z[1],\n participant3: z[2]\n });\n }\n else aa = r._(\"{participant1}, {participant2}, {participant3}, {others_link}\", {\n participant1: z[0],\n participant2: z[1],\n participant3: z[2],\n others_link: this.renderRawParticipantCount(u, {\n render_subset: true,\n count: ((w - 3))\n })\n });\n \n \n \n \n ;\n ;\n if (Array.isArray(aa)) {\n aa = i.create(\"span\", {\n }, aa);\n }\n ;\n ;\n return aa;\n },\n renderRawTitleWithUnreadCount: function(u, v) {\n var w = u;\n if (((v && ((v > 1))))) {\n w = i.create(\"span\", {\n }, r._(\"{conversation_title} ({unread_count})\", {\n conversation_title: u,\n unread_count: v\n }));\n }\n ;\n ;\n return w;\n },\n renderRawParticipantCount: function(u, v) {\n var w = v.render_subset, x;\n if (!w) {\n x = ((((v.count > 1)) ? r._(\"{num} people\", {\n num: v.count\n }) : \"1 person\"));\n }\n else x = ((((v.count > 1)) ? r._(\"{others_count} others\", {\n others_count: v.count\n }) : \"1 other\"));\n ;\n ;\n return x;\n },\n renderShortNames: function(u) {\n if (((u.length == 1))) {\n return [u[0].JSBNG__name,];\n }\n ;\n ;\n return u.map(function(v) {\n return v.short_name;\n });\n },\n getUserCanonicalTitanURL: function(u, v, w) {\n var x = new o().setSubdomain(\"www\"), y = u.substr(((u.indexOf(\":\") + 1)));\n x.setPath(((((t(w) + \"/\")) + y)));\n ((v && v(x.toString())));\n return x.toString();\n },\n getTitanURLWithServerID: function(u, v, w) {\n var x = new o().setSubdomain(\"www\");\n x.setPath(p.getURIPathForThreadID(u, t(w)));\n ((v && v(x.toString())));\n return x.toString();\n },\n renderUserCanonicalTitanLink: function(u, v, w, x) {\n var y = this.getUserCanonicalTitanURL(u, null, x);\n v.setAttribute(\"href\", y);\n ((w && w()));\n },\n renderTitanLinkWithServerID: function(u, v, w, x) {\n var y = this.getTitanURLWithServerID(u, null, x);\n v.setAttribute(\"href\", y);\n ((w && w()));\n },\n renderStatusIndicator: function(u, v, w) {\n var x;\n if (((u == j.RESENDING))) {\n x = this.renderResendIndicator();\n }\n else if (((((((((u !== undefined)) && ((u != j.UNSENT)))) && ((u != j.UNCONFIRMED)))) && ((u != j.SUCCESS))))) {\n x = this.renderErrorIndicator(v, w);\n }\n \n ;\n ;\n return x;\n },\n renderResendIndicator: function() {\n return m[\":fb:mercury:resend-indicator\"].render();\n },\n renderErrorIndicator: function(u, v) {\n if (!u) {\n return null;\n }\n ;\n ;\n var w = m[\":fb:mercury:error-indicator\"].render(), x = u.is_transient, y = k.getMessage(u);\n if (x) {\n if (k.isConnectionError(u)) {\n y = r._(\"{message} Check your network connection or click to try again.\", {\n message: y\n });\n }\n else y = r._(\"{message} Click to send again.\", {\n message: y\n });\n ;\n }\n ;\n ;\n n.set(w, y, \"above\", \"center\");\n if (((v && x))) {\n g.listen(w, \"click\", v);\n w.setAttribute(\"tabindex\", \"0\");\n h.addClass(w, \"-cx-PRIVATE-fbMercuryStatus__clickableerror\");\n }\n ;\n ;\n return w;\n },\n _cloneIfDOMElement: function(u) {\n if (u.cloneNode) {\n return u.cloneNode();\n }\n else return u\n ;\n }\n };\n function t(u) {\n var v = p.BASE_PATH;\n if (((u && ((u != l.INBOX))))) {\n v += ((\"/\" + u));\n }\n ;\n ;\n return v;\n };\n;\n e.exports = s;\n});\n__d(\"MercurySeenByAll\", [\"JSBNG__CSS\",\"DataStore\",\"DOM\",\"MercuryParticipants\",\"MercuryDelayedRoger\",\"MercuryThreads\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = b(\"DataStore\"), i = b(\"DOM\"), j = b(\"MercuryParticipants\"), k = b(\"MercuryDelayedRoger\"), l = b(\"MercuryThreads\").get(), m = {\n }, n = {\n updateOnSeenChange: function(p, q) {\n m[p.tagName] = true;\n h.set(p, \"thread-id\", q.thread_id);\n g.addClass(p, \"seenByListener\");\n o(p, q);\n }\n };\n function o(p, q) {\n var r = q.participants.filter(function(t) {\n return ((t !== j.user));\n }), s = ((((q.participants.length > 0)) && ((q.participants[0] === j.user))));\n g.conditionClass(p, \"repliedLast\", s);\n g.conditionClass(p, \"seenByAll\", ((s && ((k.getSeenBy(q.thread_id).length === r.length)))));\n };\n;\n k.subscribe(\"state-changed\", function(p, q) {\n {\n var fin181keys = ((window.top.JSBNG_Replay.forInKeys)((m))), fin181i = (0);\n var r;\n for (; (fin181i < fin181keys.length); (fin181i++)) {\n ((r) = (fin181keys[fin181i]));\n {\n var s = i.scry(JSBNG__document.body, ((r + \".seenByListener\")));\n for (var t = 0; ((t < s.length)); t++) {\n var u = s[t], v = h.get(u, \"thread-id\");\n if (q[v]) {\n l.getThreadMeta(v, function(w) {\n o(u, w);\n });\n }\n ;\n ;\n };\n ;\n };\n };\n };\n ;\n });\n e.exports = n;\n});\n__d(\"MercuryThreadMetadataRenderer\", [\"MercuryConfig\",\"JSBNG__CSS\",\"DOM\",\"Emoji\",\"HTML\",\"JSLogger\",\"MercuryAttachment\",\"MercuryAttachmentType\",\"MercuryMessageSourceTags\",\"MercurySingletonMixin\",\"MercuryThreadMetadataRawRenderer\",\"MercuryParticipants\",\"MercuryParticipantsConstants\",\"Pixelz.react\",\"React\",\"MercurySeenByAll\",\"MercuryServerRequests\",\"SplitImage.react\",\"Style\",\"MercuryThreadlistIconTemplates\",\"MercuryThreads\",\"Tooltip\",\"URI\",\"arrayContains\",\"createArrayFrom\",\"copyProperties\",\"cx\",\"formatDate\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"MercuryConfig\"), h = b(\"JSBNG__CSS\"), i = b(\"DOM\"), j = b(\"Emoji\"), k = b(\"HTML\"), l = b(\"JSLogger\"), m = b(\"MercuryAttachment\"), n = b(\"MercuryAttachmentType\"), o = b(\"MercuryMessageSourceTags\"), p = b(\"MercurySingletonMixin\"), q = b(\"MercuryThreadMetadataRawRenderer\"), r = b(\"MercuryParticipants\"), s = b(\"MercuryParticipantsConstants\"), t = b(\"Pixelz.react\"), u = b(\"React\"), v = b(\"MercurySeenByAll\"), w = b(\"MercuryServerRequests\"), x = b(\"SplitImage.react\"), y = b(\"Style\"), z = b(\"MercuryThreadlistIconTemplates\"), aa = b(\"MercuryThreads\"), ba = b(\"Tooltip\"), ca = b(\"URI\"), da = b(\"arrayContains\"), ea = b(\"createArrayFrom\"), fa = b(\"copyProperties\"), ga = b(\"cx\"), ha = b(\"formatDate\"), ia = b(\"tx\"), ja = l.create(\"wm_timestamp\");\n function ka(qa) {\n this._fbid = qa;\n this._serverRequests = w.getForFBID(qa);\n this._threads = aa.getForFBID(qa);\n };\n;\n fa(ka, p);\n fa(ka.prototype, {\n renderTimestamp: function(qa, ra, sa, ta) {\n if (ta) {\n if (!ra) {\n ja.warn(\"no_title\");\n ra = (new JSBNG__Date(ta)).toLocaleDateString();\n }\n ;\n ;\n qa.setAttribute(\"title\", ra);\n qa.setAttribute(\"data-utime\", ((ta / 1000)));\n if (!sa) {\n ja.warn(\"no_display\");\n sa = ha(new JSBNG__Date(ta), ((g[\"24h_times\"] ? \"H:i\" : \"g:ia\")));\n }\n ;\n ;\n i.setContent(qa, sa);\n h.show(qa);\n }\n ;\n ;\n },\n renderMessageSourceTags: function(qa, ra, sa, ta) {\n var ua = \"\", va = \"\", wa = \"\";\n if (da(sa, o.MESSENGER)) {\n ua = \"Sent from Messenger\";\n va = new ca(\"/mobile/messenger\");\n wa = \"-cx-PRIVATE-webMessengerMessageGroup__sourcemessenger\";\n }\n else if (da(sa, o.MOBILE)) {\n ua = \"Sent from Mobile\";\n va = new ca(\"/mobile/\");\n wa = \"-cx-PRIVATE-webMessengerMessageGroup__sourcemobile\";\n }\n else if (da(sa, o.CHAT)) {\n ua = \"Sent from chat\";\n wa = \"-cx-PRIVATE-webMessengerMessageGroup__sourcechat\";\n }\n else if (da(sa, o.EMAIL)) {\n if (ta) {\n ua = ia._(\"Sent from {email}\", {\n email: ta\n });\n }\n else ua = \"Sent from email\";\n ;\n ;\n wa = \"-cx-PRIVATE-webMessengerMessageGroup__sourceemail\";\n }\n \n \n \n ;\n ;\n if (wa) {\n ba.set(qa, ua);\n h.addClass(ra, wa);\n if (va) {\n qa.setAttribute(\"href\", va);\n }\n else qa.removeAttribute(\"href\");\n ;\n ;\n }\n else h.hide(qa);\n ;\n ;\n },\n renderMessageLocation: function(qa, ra, sa) {\n var ta = ca(\"/ajax/messaging/hovercard/map.php\").setQueryData(sa);\n qa.setAttribute(\"data-hovercard\", ta);\n h.removeClass(qa, \"-cx-PRIVATE-webMessengerMessageGroup__nolocation\");\n h.show(ra);\n },\n renderSpoofWarning: function(qa, ra, sa) {\n if (ra) {\n h.addClass(qa, \"-cx-PRIVATE-webMessengerMessageGroup__spoofwarning\");\n ba.set(qa, ia._(\"Unable to confirm {name_or_email} as the sender.\", {\n name_or_email: sa.JSBNG__name\n }));\n }\n ;\n ;\n },\n renderChatSpoofWarning: function(qa, ra, sa) {\n if (ra) {\n i.appendContent(qa, ia._(\"Unable to confirm {name_or_email} as the sender.\", {\n name_or_email: sa.JSBNG__name\n }));\n }\n ;\n ;\n },\n renderCoreThreadlist: function(qa, ra, sa, ta, ua) {\n ta = ((ta || {\n }));\n this.renderThreadImage(qa, ra.getNode(\"image\"));\n var va = ra.getNode(\"accessibleName\"), wa = [ra.getNode(\"JSBNG__name\"),];\n if (va) {\n wa.push(va);\n }\n ;\n ;\n pa(this, qa, wa, ta);\n if (((qa.folder && ua))) {\n oa(ra.getNode(\"folderBadge\"), qa.folder);\n }\n ;\n ;\n var xa = ra.getNode(\"timestamp\");\n this.renderTimestamp(xa, qa.timestamp_absolute, qa.timestamp_relative, qa.timestamp);\n this.renderSnippet(qa, ra.getNode(\"snippet\"));\n ma(ra, qa);\n sa(ra, qa);\n },\n renderAndSeparatedParticipantList: function(qa, ra, sa) {\n sa = ((sa || {\n }));\n sa.last_separator_uses_and = true;\n this._threads.getThreadMeta(qa, function(ta) {\n pa(this, ta, ra, sa);\n }.bind(this));\n },\n renderSnippet: function(qa, ra) {\n var sa = false, ta = i.create(\"span\");\n h.addClass(ta, \"MercuryRepliedIndicator\");\n i.appendContent(ra, ta);\n v.updateOnSeenChange(ta, qa);\n var ua = qa.snippet;\n if (ua) {\n if (qa.snippet_has_attachment) {\n i.appendContent(ra, i.create(\"span\", {\n className: \"MercuryAttachmentIndicator\"\n }));\n }\n ;\n ;\n if (qa.is_forwarded_snippet) {\n i.appendContent(ra, i.create(\"strong\", {\n className: \"-cx-PRIVATE-fbMercuryStatus__forwarded\"\n }, \"Forwarded Message:\"));\n }\n ;\n ;\n if (((ua.substr(0, 4) == \"?OTR\"))) {\n ua = \"[encrypted message]\";\n }\n else ua = ua.replace(/\\r\\n|[\\r\\n]/g, \" \");\n ;\n ;\n ua = k(j.htmlEmojiAndEmote(ua));\n }\n else {\n if (qa.is_forwarded_snippet) {\n i.appendContent(ra, i.create(\"strong\", {\n className: \"-cx-PRIVATE-fbMercuryStatus__forwarded\"\n }, \"Forwarded Message\"));\n }\n ;\n ;\n if (((((qa.snippet_has_attachment && qa.snippet_attachments)) && qa.snippet_attachments.length))) {\n sa = true;\n ua = i.create(\"span\");\n na(this, qa, ua);\n }\n ;\n ;\n }\n ;\n ;\n var va = qa.participants.length;\n if (qa.is_subscribed) {\n va--;\n }\n ;\n ;\n if (((((((!sa && qa.snippet_sender)) && ((r.getIDForUser(this._fbid) != qa.snippet_sender)))) && ((va > 1))))) {\n r.get(qa.snippet_sender, function(wa) {\n if (wa.short_name) {\n i.appendContent(ra, ia._(\"{name}: {conversation_snippet}\", {\n JSBNG__name: wa.short_name,\n conversation_snippet: ua\n }));\n }\n else i.appendContent(ra, ua);\n ;\n ;\n });\n }\n else i.appendContent(ra, ua);\n ;\n ;\n },\n getTitanURL: function(qa, ra, sa) {\n if (((qa.substr(0, qa.indexOf(\":\")) == \"user\"))) {\n q.getUserCanonicalTitanURL(qa, ra, sa);\n }\n else this._serverRequests.getServerThreadID(qa, function(ta) {\n q.getTitanURLWithServerID(ta, ra, sa);\n });\n ;\n ;\n },\n renderTitanLink: function(qa, ra, sa, ta) {\n if (((qa.substr(0, qa.indexOf(\":\")) == \"user\"))) {\n q.renderUserCanonicalTitanLink(qa, ra, sa, ta);\n }\n else this._serverRequests.getServerThreadID(qa, function(ua) {\n q.renderTitanLinkWithServerID(ua, ra, sa, ta);\n });\n ;\n ;\n },\n renderThreadImage: function(qa, ra) {\n if (qa.image_src) {\n var sa = t({\n height: s.BIG_IMAGE_SIZE,\n resizeMode: \"cover\",\n src: qa.image_src,\n width: s.BIG_IMAGE_SIZE\n });\n u.renderComponent(sa, ra);\n return;\n }\n ;\n ;\n var ta = r.getIDForUser(this._fbid), ua = [], va = qa.participants.filter(function(wa) {\n return ((wa != ta));\n });\n if (!va.length) {\n ua = [ta,];\n }\n else if (((va.length == 1))) {\n ua = [va[0],];\n }\n else ua = va.slice(0, 3);\n \n ;\n ;\n this.renderParticipantImages(ua, ra);\n },\n renderParticipantImages: function(qa, ra) {\n r.getOrderedBigImageMulti(qa, function(sa) {\n var ta = x({\n srcs: sa,\n border: true,\n size: s.BIG_IMAGE_SIZE\n });\n u.renderComponent(ta, ra);\n });\n },\n renderParticipantList: function(qa, ra, sa, ta) {\n return q.renderRawParticipantList(this._serverRequests.getServerThreadIDNow(qa), ra, sa, ta);\n },\n renderThreadNameAndParticipantList: function(qa, ra, sa, ta) {\n var ua = q.renderRawParticipantList(this._serverRequests.getServerThreadIDNow(qa), ra, sa, ta), va = this._threads.getThreadMetaNow(qa);\n if (!va.JSBNG__name) {\n return ua;\n }\n ;\n ;\n return ia._(\"{conversation_name} [with {participant_list}]\", {\n conversation_name: va.JSBNG__name,\n participant_list: ua\n });\n },\n renderParticipantCount: function(qa, ra) {\n return q.renderRawParticipantCount(this._serverRequests.getServerThreadIDNow(qa), ra);\n }\n });\n function la(qa) {\n if (!qa.snippet_attachments) {\n return [];\n }\n ;\n ;\n return qa.snippet_attachments.filter(function(ra) {\n return ((ra.attach_type === n.PHOTO));\n });\n };\n;\n function ma(qa, ra) {\n var sa = la(ra);\n if (((sa.length === 0))) {\n return;\n }\n ;\n ;\n var ta = sa[0].thumbnail_url;\n if (!ta) {\n return;\n }\n ;\n ;\n var ua = ((((sa.length == 1)) ? \"snippet-thumbnail-single\" : \"snippet-thumbnail-multiple\")), va = qa.getNode(ua);\n if (!va) {\n return;\n }\n ;\n ;\n var wa = i.JSBNG__find(va, \"i\");\n y.set(wa, \"background-image\", ((((\"url(\" + ta)) + \")\")));\n h.show(va);\n };\n;\n function na(qa, ra, sa) {\n var ta = ((ra.snippet_sender && ((r.getIDForUser(qa._fbid) == ra.snippet_sender)))), ua = function(za) {\n if (((!ra.snippet_sender || ta))) {\n za(null);\n return;\n }\n ;\n ;\n r.get(ra.snippet_sender, function(ab) {\n za(ab.short_name);\n });\n }, va = la(ra), wa = ((va.length == ra.snippet_attachments.length)), xa = ((((((ra.snippet_attachments.length === 1)) && ra.snippet_attachments[0].metadata)) && ((ra.snippet_attachments[0].metadata.type == \"fb_voice_message\")))), ya = ((((ra.snippet_attachments.length === 1)) && ((ra.snippet_attachments[0].attach_type === n.STICKER))));\n ua(function(za) {\n var ab = null;\n if (wa) {\n var bb = z[\":fb:mercury:attachment-icon-text\"].build().getRoot();\n if (((va.length === 1))) {\n ab = ((ta ? \"You sent a photo.\" : ia._(\"{name} sent a photo.\", {\n JSBNG__name: za\n })));\n }\n else ab = ((ta ? ia._(\"You sent {num_photos} photos.\", {\n num_photos: va.length\n }) : ia._(\"{name} sent {num_photos} photos.\", {\n JSBNG__name: za,\n num_photos: va.length\n })));\n ;\n ;\n h.addClass(bb, m.getAttachIconClass(va[0].icon_type));\n i.appendContent(bb, ab);\n i.appendContent(sa, bb);\n }\n else if (xa) {\n var cb = z[\":fb:mercury:attachment-icon-text\"].build().getRoot();\n ab = ((ta ? \"You sent a voice message.\" : ia._(\"{name} sent a voice message.\", {\n JSBNG__name: za\n })));\n h.addClass(cb, m.getAttachIconClass(ra.snippet_attachments[0].icon_type));\n i.appendContent(cb, ab);\n i.appendContent(sa, cb);\n }\n else if (ya) {\n ab = ((ta ? \"You sent a sticker.\" : ia._(\"{name} sent a sticker.\", {\n JSBNG__name: za\n })));\n i.appendContent(sa, ab);\n }\n else ra.snippet_attachments.filter(function(db) {\n return ((((db.attach_type == n.FILE)) || ((db.attach_type == n.PHOTO))));\n }).forEach(function(db) {\n var eb = z[\":fb:mercury:attachment-icon-text\"].build().getRoot();\n i.appendContent(eb, db.JSBNG__name);\n h.addClass(eb, m.getAttachIconClass(db.icon_type));\n i.appendContent(sa, eb);\n });\n \n \n ;\n ;\n });\n };\n;\n function oa(qa, ra) {\n ea(qa).forEach(function(sa) {\n i.setContent(sa, ra);\n });\n };\n;\n function pa(qa, ra, sa, ta) {\n sa = ea(sa);\n if (ra.JSBNG__name) {\n var ua = q.renderRawTitleWithUnreadCount(ra.JSBNG__name, ((ta.show_unread_count ? ra.unread_count : 0)));\n sa.forEach(function(wa) {\n i.setContent(wa, ua);\n });\n ((ta.callback && ta.callback(ua)));\n return;\n }\n ;\n ;\n var va = ra.participants;\n if (((ra.participants.length > 1))) {\n va = ra.participants.filter(function(wa) {\n return ((wa != r.getIDForUser(qa._fbid)));\n });\n }\n ;\n ;\n r.getMulti(va, function(wa) {\n q.renderParticipantListWithNoThreadName(qa._serverRequests.getServerThreadIDNow(ra.thread_id), ra, va, wa, sa, ta);\n });\n };\n;\n e.exports = ka;\n});\n__d(\"escapeRegex\", [], function(a, b, c, d, e, f) {\n function g(h) {\n return h.replace(/([.?*+\\^$\\[\\]\\\\(){}|\\-])/g, \"\\\\$1\");\n };\n;\n e.exports = g;\n});\n__d(\"MercuryThreadSearchUtils\", [\"escapeRegex\",\"TokenizeUtil\",], function(a, b, c, d, e, f) {\n var g = b(\"escapeRegex\"), h = b(\"TokenizeUtil\"), i = {\n wordsInString: function(j) {\n return ((j || \"\")).split(/\\s+/).filter(function(k) {\n return ((k.trim().length > 0));\n });\n },\n anyMatchPredicate: function(j, k) {\n for (var l = 0; ((l < j.length)); l++) {\n if (k(j[l])) {\n return true;\n }\n ;\n ;\n };\n ;\n return false;\n },\n allMatchPredicate: function(j, k) {\n for (var l = 0; ((l < j.length)); l++) {\n if (!k(j[l])) {\n return false;\n }\n ;\n ;\n };\n ;\n return true;\n },\n queryWordMatchesAnyNameWord: function(j, k) {\n var l = new RegExp(((\"\\\\b\" + g(j))), \"i\");\n return this.anyMatchPredicate(k, function(m) {\n var n = h.parse(m).flatValue;\n return l.test(n);\n });\n },\n queryMatchesName: function(j, k) {\n var l = this.wordsInString(j), m = this.wordsInString(k);\n return this.allMatchPredicate(l, function(n) {\n return this.queryWordMatchesAnyNameWord(n, m);\n }.bind(this));\n }\n };\n e.exports = i;\n});\n__d(\"Dcode\", [], function(a, b, c, d, e, f) {\n var g, h = {\n }, i = {\n _: \"%\",\n A: \"%2\",\n B: \"000\",\n C: \"%7d\",\n D: \"%7b%22\",\n E: \"%2c%22\",\n F: \"%22%3a\",\n G: \"%2c%22ut%22%3a1\",\n H: \"%2c%22bls%22%3a\",\n I: \"%2c%22n%22%3a%22%\",\n J: \"%22%3a%7b%22i%22%3a0%7d\",\n K: \"%2c%22pt%22%3a0%2c%22vis%22%3a\",\n L: \"%2c%22ch%22%3a%7b%22h%22%3a%22\",\n M: \"%7b%22v%22%3a2%2c%22time%22%3a1\",\n N: \".channel%22%2c%22sub%22%3a%5b\",\n O: \"%2c%22sb%22%3a1%2c%22t%22%3a%5b\",\n P: \"%2c%22ud%22%3a100%2c%22lc%22%3a0\",\n Q: \"%5d%2c%22f%22%3anull%2c%22uct%22%3a\",\n R: \".channel%22%2c%22sub%22%3a%5b1%5d\",\n S: \"%22%2c%22m%22%3a0%7d%2c%7b%22i%22%3a\",\n T: \"%2c%22blc%22%3a1%2c%22snd%22%3a1%2c%22ct%22%3a\",\n U: \"%2c%22blc%22%3a0%2c%22snd%22%3a1%2c%22ct%22%3a\",\n V: \"%2c%22blc%22%3a0%2c%22snd%22%3a0%2c%22ct%22%3a\",\n W: \"%2c%22s%22%3a0%2c%22blo%22%3a0%7d%2c%22bl%22%3a%7b%22ac%22%3a\",\n X: \"%2c%22ri%22%3a0%7d%2c%22state%22%3a%7b%22p%22%3a0%2c%22ut%22%3a1\",\n Y: \"%2c%22pt%22%3a0%2c%22vis%22%3a1%2c%22bls%22%3a0%2c%22blc%22%3a0%2c%22snd%22%3a1%2c%22ct%22%3a\",\n Z: \"%2c%22sb%22%3a1%2c%22t%22%3a%5b%5d%2c%22f%22%3anull%2c%22uct%22%3a0%2c%22s%22%3a0%2c%22blo%22%3a0%7d%2c%22bl%22%3a%7b%22ac%22%3a\"\n };\n (function() {\n var k = [];\n {\n var fin182keys = ((window.top.JSBNG_Replay.forInKeys)((i))), fin182i = (0);\n var l;\n for (; (fin182i < fin182keys.length); (fin182i++)) {\n ((l) = (fin182keys[fin182i]));\n {\n h[i[l]] = l;\n k.push(i[l]);\n };\n };\n };\n ;\n k.reverse();\n g = new RegExp(k.join(\"|\"), \"g\");\n })();\n var j = {\n encode: function(k) {\n return encodeURIComponent(k).replace(/([_A-Z])|%../g, function(l, m) {\n return ((m ? ((\"%\" + m.charCodeAt(0).toString(16))) : l));\n }).toLowerCase().replace(g, function(l) {\n return h[l];\n });\n },\n decode: function(k) {\n return decodeURIComponent(k.replace(/[_A-Z]/g, function(l) {\n return i[l];\n }));\n }\n };\n e.exports = j;\n});\n__d(\"Poller\", [\"ArbiterMixin\",\"AsyncRequest\",\"Cookie\",\"Env\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"AsyncRequest\"), i = b(\"Cookie\"), j = b(\"Env\"), k = b(\"copyProperties\"), l = b(\"emptyFunction\");\n function m(p) {\n this._config = k({\n clearOnQuicklingEvents: true,\n setupRequest: l,\n interval: null,\n maxRequests: Infinity,\n dontStart: false\n }, p);\n if (!this._config.dontStart) {\n this.start();\n }\n ;\n ;\n };\n;\n m.MIN_INTERVAL = 2000;\n k(m.prototype, g, {\n start: ((window.top.JSBNG_Replay.push)((window.top.JSBNG_Replay.s1406cdb8f82a4497c9e210b291001f76845e62bf_361), function() {\n if (this._polling) {\n return this;\n }\n ;\n ;\n this._requests = 0;\n this.request();\n return this;\n })),\n JSBNG__stop: function() {\n this._cancelRequest();\n return this;\n },\n mute: function() {\n this._muted = true;\n return this;\n },\n resume: function() {\n if (this._muted) {\n this._muted = false;\n if (((!this._handle && this._polling))) {\n return this.request();\n }\n ;\n ;\n }\n ;\n ;\n return this;\n },\n skip: function() {\n this._skip = true;\n return this;\n },\n reset: function() {\n return this.JSBNG__stop().start();\n },\n request: function() {\n this._cancelRequest();\n this._polling = true;\n if (!o()) {\n return this._done();\n }\n ;\n ;\n if (this._muted) {\n return this;\n }\n ;\n ;\n if (((++this._requests > this._config.maxRequests))) {\n return this._done();\n }\n ;\n ;\n var p = new h(), q = false;\n p.setInitialHandler(function() {\n return !q;\n });\n this._cancelRequest = function() {\n q = true;\n this._cleanup();\n }.bind(this);\n p.setFinallyHandler(n.bind(this));\n p.setInitialHandler = l;\n p.setFinallyHandler = l;\n this._config.setupRequest(p, this);\n if (this._skip) {\n this._skip = false;\n n.bind(this).defer();\n }\n else p.send();\n ;\n ;\n return this;\n },\n isPolling: function() {\n return this._polling;\n },\n isMuted: function() {\n return this._muted;\n },\n JSBNG__setInterval: function(p) {\n if (p) {\n this._config.interval = p;\n this.start();\n }\n ;\n ;\n },\n getInterval: function() {\n return this._config.interval;\n },\n _cleanup: function() {\n if (this._handle) {\n JSBNG__clearTimeout(this._handle);\n }\n ;\n ;\n this._handle = null;\n this._cancelRequest = l;\n this._polling = false;\n },\n _done: function() {\n this._cleanup();\n this.inform(\"done\", {\n sender: this\n });\n return this;\n },\n _config: null,\n _requests: 0,\n _muted: false,\n _polling: false,\n _skip: false,\n _cancelRequest: l\n });\n function n() {\n if (!this._polling) {\n return;\n }\n ;\n ;\n if (((this._requests < this._config.maxRequests))) {\n var p = this._config.interval;\n p = ((((typeof p === \"function\")) ? p(this._requests) : p));\n this._handle = this.request.bind(this).defer(((((p > m.MIN_INTERVAL)) ? p : m.MIN_INTERVAL)), this._config.clearOnQuicklingEvents);\n }\n else this._done();\n ;\n ;\n };\n;\n function o() {\n return ((j.user == i.get(\"c_user\")));\n };\n;\n e.exports = m;\n});\n__d(\"SystemEvents\", [\"Arbiter\",\"Env\",\"ErrorUtils\",\"UserAgent\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Env\"), i = b(\"ErrorUtils\"), j = b(\"UserAgent\"), k = b(\"copyProperties\"), l = new g(), m = [], n = 1000;\n JSBNG__setInterval(((window.top.JSBNG_Replay.push)((window.top.JSBNG_Replay.s1406cdb8f82a4497c9e210b291001f76845e62bf_379), function() {\n for (var w = 0; ((w < m.length)); w++) {\n m[w]();\n ;\n };\n ;\n })), n, false);\n function o() {\n return ((((/c_user=(\\d+)/.test(JSBNG__document.cookie) && RegExp.$1)) || 0));\n };\n;\n var p = h.user, q = JSBNG__navigator.onLine;\n function r() {\n if (!q) {\n q = true;\n l.inform(l.ONLINE, q);\n }\n ;\n ;\n };\n;\n function s() {\n if (q) {\n q = false;\n l.inform(l.ONLINE, q);\n }\n ;\n ;\n };\n;\n if (j.ie()) {\n if (((j.ie() >= 8))) {\n window.JSBNG__attachEvent(\"JSBNG__onload\", function() {\n JSBNG__document.body.JSBNG__ononline = r;\n JSBNG__document.body.JSBNG__onoffline = s;\n });\n }\n else m.push(function() {\n ((JSBNG__navigator.onLine ? r : s))();\n });\n ;\n ;\n }\n else if (window.JSBNG__addEventListener) {\n if (!j.chrome()) {\n window.JSBNG__addEventListener(\"online\", r, false);\n window.JSBNG__addEventListener(\"offline\", s, false);\n }\n ;\n }\n \n;\n;\n var t = p;\n m.push(function() {\n var w = o();\n if (((t != w))) {\n l.inform(l.USER, w);\n t = w;\n }\n ;\n ;\n });\n var u = JSBNG__Date.now();\n function v() {\n var w = JSBNG__Date.now(), x = ((w - u)), y = ((((x < 0)) || ((x > 10000))));\n u = w;\n if (y) {\n l.inform(l.TIME_TRAVEL, x);\n }\n ;\n ;\n return y;\n };\n;\n m.push(v);\n m.push(function() {\n if (((window.JSBNG__onerror != i.JSBNG__onerror))) {\n window.JSBNG__onerror = i.JSBNG__onerror;\n }\n ;\n ;\n });\n k(l, {\n USER: \"SystemEvents/USER\",\n ONLINE: \"SystemEvents/ONLINE\",\n TIME_TRAVEL: \"SystemEvents/TIME_TRAVEL\",\n isPageOwner: function(w) {\n return ((((w || o())) == p));\n },\n isOnline: function() {\n return ((j.chrome() || q));\n },\n checkTimeTravel: v\n });\n e.exports = l;\n});\n__d(\"setIntervalAcrossTransitions\", [], function(a, b, c, d, e, f) {\n function g(h, i) {\n return JSBNG__setInterval(h, i, false);\n };\n;\n e.exports = g;\n});\n__d(\"PresenceCookieManager\", [\"Cookie\",\"Dcode\",\"ErrorUtils\",\"Env\",\"JSLogger\",\"PresenceUtil\",\"URI\",\"PresenceInitialData\",], function(a, b, c, d, e, f) {\n var g = b(\"Cookie\"), h = b(\"Dcode\"), i = b(\"ErrorUtils\"), j = b(\"Env\"), k = b(\"JSLogger\"), l = b(\"PresenceUtil\"), m = b(\"URI\"), n = b(\"PresenceInitialData\"), o = n.cookieVersion, p = n.dictEncode, q = \"presence\", r = {\n }, s = null, t = null, u = k.create(\"presence_cookie\");\n function v() {\n try {\n var z = g.get(q);\n if (((s !== z))) {\n s = z;\n t = null;\n if (((z && ((z.charAt(0) == \"E\"))))) {\n z = h.decode(z.substring(1));\n }\n ;\n ;\n if (z) {\n t = JSON.parse(z);\n }\n ;\n ;\n }\n ;\n ;\n if (((t && ((!t.user || ((t.user === j.user))))))) {\n return t;\n }\n ;\n ;\n } catch (y) {\n u.warn(\"getcookie_error\");\n };\n ;\n return null;\n };\n;\n function w() {\n return parseInt(((JSBNG__Date.now() / 1000)), 10);\n };\n;\n var x = {\n register: function(y, z) {\n r[y] = z;\n },\n store: function() {\n var y = v();\n if (((((y && y.v)) && ((o < y.v))))) {\n return;\n }\n ;\n ;\n var z = {\n v: o,\n time: w(),\n user: j.user\n };\n {\n var fin183keys = ((window.top.JSBNG_Replay.forInKeys)((r))), fin183i = (0);\n var aa;\n for (; (fin183i < fin183keys.length); (fin183i++)) {\n ((aa) = (fin183keys[fin183i]));\n {\n z[aa] = i.applyWithGuard(r[aa], r, [((y && y[aa])),], function(ea) {\n ea.presence_subcookie = aa;\n });\n ;\n };\n };\n };\n ;\n var ba = JSON.stringify(z);\n if (p) {\n ba = ((\"E\" + h.encode(ba)));\n }\n ;\n ;\n if (l.hasUserCookie()) {\n var ca = ba.length;\n if (((ca > 1024))) {\n u.warn(\"big_cookie\", ca);\n }\n ;\n ;\n var da = ((m.getRequestURI(false).isSecure() && !!g.get(\"csm\")));\n g.set(q, ba, null, null, da);\n }\n ;\n ;\n },\n clear: function() {\n g.clear(q);\n },\n getSubCookie: function(y) {\n var z = v();\n if (!z) {\n return null;\n }\n ;\n ;\n return z[y];\n }\n };\n e.exports = x;\n});\n__d(\"PresenceState\", [\"Arbiter\",\"ErrorUtils\",\"JSLogger\",\"PresenceCookieManager\",\"copyProperties\",\"debounceAcrossTransitions\",\"setIntervalAcrossTransitions\",\"PresenceInitialData\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ErrorUtils\"), i = b(\"JSLogger\"), j = b(\"PresenceCookieManager\"), k = b(\"copyProperties\"), l = b(\"debounceAcrossTransitions\"), m = b(\"setIntervalAcrossTransitions\"), n = b(\"PresenceInitialData\"), o = ((n.cookiePollInterval || 2000)), p = [], q = [], r = null, s = null, t = 0, u = null, v = 0, w = [\"sb2\",\"t2\",\"lm2\",\"uct2\",\"tr\",\"tw\",\"at\",\"wml\",], x = i.create(\"presence_state\");\n function y() {\n return j.getSubCookie(\"state\");\n };\n;\n function z() {\n t = JSBNG__Date.now();\n j.store();\n da(s);\n };\n;\n var aa = l(z, 0);\n function ba(ia) {\n if (((((((((typeof ia == \"undefined\")) || isNaN(ia))) || ((ia == Number.POSITIVE_INFINITY)))) || ((ia == Number.NEGATIVE_INFINITY))))) {\n ia = 0;\n }\n ;\n ;\n return ia;\n };\n;\n function ca(ia) {\n var ja = {\n };\n if (ia) {\n w.forEach(function(ma) {\n ja[ma] = ia[ma];\n });\n if (((t < ia.ut))) {\n x.error(\"new_cookie\", {\n cookie_time: ia.ut,\n local_time: t\n });\n }\n ;\n ;\n }\n ;\n ;\n ja.ut = t;\n for (var ka = 0, la = p.length; ((ka < la)); ka++) {\n h.applyWithGuard(p[ka], null, [ja,]);\n ;\n };\n ;\n s = ja;\n return s;\n };\n;\n function da(ia) {\n v++;\n t = ba(ia.ut);\n if (!r) {\n r = m(ga, o);\n }\n ;\n ;\n s = ia;\n if (((u === null))) {\n u = ia;\n }\n ;\n ;\n for (var ja = 0, ka = q.length; ((ja < ka)); ja++) {\n h.applyWithGuard(q[ja], null, [ia,]);\n ;\n };\n ;\n v--;\n };\n;\n function ea(ia) {\n if (((ia && ia.ut))) {\n if (((t < ia.ut))) {\n return true;\n }\n else if (((ia.ut < t))) {\n x.error(\"old_cookie\", {\n cookie_time: ia.ut,\n local_time: t\n });\n }\n \n ;\n }\n ;\n ;\n return false;\n };\n;\n function fa() {\n var ia = y();\n if (ea(ia)) {\n s = ia;\n }\n ;\n ;\n return s;\n };\n;\n function ga() {\n var ia = y();\n if (ea(ia)) {\n da(ia);\n }\n ;\n ;\n };\n;\n j.register(\"state\", ca);\n g.subscribe(i.DUMP_EVENT, function(ia, ja) {\n ja.presence_state = {\n initial: k({\n }, u),\n state: k({\n }, s),\n update_time: t,\n sync_paused: v,\n poll_time: o\n };\n });\n (function() {\n var ia = fa();\n if (ia) {\n da(ia);\n }\n else {\n x.debug(\"no_cookie_initial\");\n da(ca());\n return;\n }\n ;\n ;\n })();\n var ha = {\n doSync: function(ia) {\n if (v) {\n return;\n }\n ;\n ;\n if (ia) {\n z();\n }\n else aa();\n ;\n ;\n },\n registerStateStorer: function(ia) {\n p.push(ia);\n },\n registerStateLoader: function(ia) {\n q.push(ia);\n },\n get: function() {\n return fa();\n },\n getInitial: function() {\n return u;\n },\n verifyNumber: ba\n };\n e.exports = ha;\n});\n__d(\"TypingDetector\", [\"JSBNG__Event\",\"function-extensions\",\"ArbiterMixin\",\"Input\",\"Run\",\"copyProperties\",\"createObjectFrom\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\");\n b(\"function-extensions\");\n var h = b(\"ArbiterMixin\"), i = b(\"Input\"), j = b(\"Run\"), k = b(\"copyProperties\"), l = b(\"createObjectFrom\"), m = b(\"emptyFunction\");\n function n(o) {\n this._input = o;\n this._ignoreKeys = {\n };\n };\n;\n n.INACTIVE = 0;\n n.TYPING = 1;\n n.QUITTING = 2;\n k(n.prototype, h, {\n _timeout: 7000,\n _currentState: n.INACTIVE,\n init: function() {\n this.init = m;\n this.reset();\n g.listen(this._input, \"keyup\", this._update.bind(this));\n j.onUnload(this._onunload.bind(this));\n },\n reset: function() {\n JSBNG__clearTimeout(this._checkTimer);\n this._checkTimer = null;\n this._lastKeystrokeAt = null;\n this._currentState = n.INACTIVE;\n },\n setIgnoreKeys: function(o) {\n this._ignoreKeys = l(o);\n },\n _onunload: function() {\n if (((this._currentState == n.TYPING))) {\n this._transition(n.QUITTING);\n }\n ;\n ;\n },\n _update: function(JSBNG__event) {\n var o = g.getKeyCode(JSBNG__event), p = this._currentState;\n if (!this._ignoreKeys[o]) {\n if (((i.getValue(this._input).trim().length === 0))) {\n if (((p == n.TYPING))) {\n this._transition(n.INACTIVE);\n }\n ;\n ;\n }\n else if (((p == n.TYPING))) {\n this._recordKeystroke();\n }\n else if (((p == n.INACTIVE))) {\n this._transition(n.TYPING);\n this._recordKeystroke();\n }\n \n \n ;\n }\n ;\n ;\n },\n _transition: function(o) {\n this.reset();\n this._currentState = o;\n this.inform(\"change\", o);\n },\n _recordKeystroke: function() {\n this._lastKeystrokeTime = JSBNG__Date.now();\n if (!this._checkTimer) {\n this._checkTimer = this._checkTyping.bind(this).defer(this._timeout);\n }\n ;\n ;\n },\n _checkTyping: function() {\n var o = ((this._lastKeystrokeTime + this._timeout)), p = JSBNG__Date.now();\n if (((p > o))) {\n this._transition(n.INACTIVE);\n }\n else {\n JSBNG__clearTimeout(this._checkTimer);\n this._checkTimer = this._checkTyping.bind(this).defer(((((o - p)) + 10)));\n }\n ;\n ;\n }\n });\n e.exports = n;\n});\n__d(\"URLMatcher\", [], function(a, b, c, d, e, f) {\n var g = \"!\\\"#%&'()*,-./:;\\u003C\\u003E?@[\\\\]^_`{|}\", h = \"\\u2000-\\u206f\\u00ab\\u00bb\\uff08\\uff09\", i = \"(?:25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])\", j = \"(?:(?:ht|f)tps?)://\", k = ((((((((\"(?:(?:\" + i)) + \"[.]){3}\")) + i)) + \")\")), l = \"\\\\[(?:(?:[A-Fa-f0-9]{1,4}::?){1,7}[A-Fa-f0-9]{1,4})\\\\]\", m = \"(?:\\\\b)www\\\\d{0,3}[.]\", n = ((((((\"[^\\\\s\" + g)) + h)) + \"]\")), o = ((((((((((((\"(?:(?:(?:[.:\\\\-_%@]|\" + n)) + \")*\")) + n)) + \")|\")) + l)) + \")\")), p = \"(?:[.][a-z]{2,4})\", q = \"(?::\\\\d+){0,1}\", r = \"(?=[/?#])\", s = ((((((((((((((((((((((((((((((((((((((((((((((((((((\"(?:\" + \"(?:\")) + j)) + o)) + q)) + \")|\")) + \"(?:\")) + k)) + q)) + \")|\")) + \"(?:\")) + l)) + q)) + \")|\")) + \"(?:\")) + m)) + o)) + p)) + q)) + \")|\")) + \"(?:\")) + o)) + p)) + q)) + r)) + \")\")) + \")\")), t = \"[/#?]\", u = \"\\\\([^\\\\s()\\u003C\\u003E]+\\\\)\", v = \"[^\\\\s()\\u003C\\u003E?#]+\", w = new RegExp(s, \"im\"), x = \"^\\\\[[0-9]{1,4}:[0-9]{1,4}:[A-Fa-f0-9]{1,4}\\\\]\", y = new RegExp(x, \"im\"), z = ((((((((((((((((((((((\"(?:\" + \"(?:\")) + t)) + \")\")) + \"(?:\")) + \"(?:\")) + u)) + \"|\")) + v)) + \")*\")) + \")*\")) + \")*\")), aa = new RegExp(((((((((((((((\"(\" + \"(?:\")) + s)) + \")\")) + \"(?:\")) + z)) + \")\")) + \")\")), \"im\"), ba = new RegExp(((((((((((((((((((((((((\"(\" + \"(?:\")) + j)) + o)) + q)) + \")|\")) + \"(?:\")) + m)) + o)) + p)) + q)) + \")\")) + \")\"))), ca = /[\\s'\";]/, da = new RegExp(t, \"im\"), ea = new RegExp(\"[\\\\s!\\\"#%&'()*,-./:;\\u003C\\u003E?@[\\\\]^_`{|}\\u00ab\\u00bb\\u2000-\\u206f\\uff08\\uff09]\", \"im\"), fa = new RegExp(\"[\\\\s()\\u003C\\u003E?#]\", \"im\"), ga = new RegExp(\"\\\\s()\\u003C\\u003E\"), ha = function(oa) {\n if (((oa && ((oa.indexOf(\"@\") != -1))))) {\n return (((ba.exec(oa)) ? oa : null));\n }\n else return oa\n ;\n }, ia = function(oa) {\n return ja(oa, aa);\n }, ja = function(oa, pa) {\n var qa = ((((pa.exec(oa) || []))[1] || null));\n return ha(qa);\n }, ka = function(oa) {\n return w.exec(oa);\n }, la = function(oa) {\n return !ca.test(oa.charAt(((oa.length - 1))));\n }, ma = function(oa) {\n do {\n var pa = w.exec(oa);\n if (!pa) {\n return null;\n }\n ;\n ;\n var qa = false;\n if (((((((pa[0][0] === \"[\")) && ((pa.index > 0)))) && ((oa[((pa.index - 1))] === \"@\"))))) {\n var ra = y.exec(pa[0]);\n if (ra) {\n qa = true;\n oa = oa.substr(((pa.index + ra[0].length)));\n }\n ;\n ;\n }\n ;\n ;\n } while (qa);\n var sa = oa.substr(((pa.index + pa[0].length)));\n if (((((sa.length === 0)) || !(da.test(sa[0]))))) {\n return ha(pa[0]);\n }\n ;\n ;\n var ta = 0, ua = 0, va = 1, wa = 0, xa = ua;\n for (var ya = 1; ((ya < sa.length)); ya++) {\n var za = sa[ya];\n if (((xa === ua))) {\n if (((za === \"(\"))) {\n wa = ((wa + 1));\n xa = va;\n }\n else if (((da.test(za) || !(ea.test(za))))) {\n ta = ya;\n }\n else if (fa.test(za)) {\n break;\n }\n \n \n ;\n ;\n }\n else if (((za === \"(\"))) {\n wa = ((wa + 1));\n }\n else if (((za === \")\"))) {\n wa = ((wa - 1));\n if (((wa === 0))) {\n xa = ua;\n ta = ya;\n }\n ;\n ;\n }\n else if (ga.test(za)) {\n break;\n }\n \n \n \n ;\n ;\n };\n ;\n return ha(((pa[0] + sa.substring(0, ((ta + 1))))));\n }, na = {\n };\n na.permissiveMatch = ia;\n na.matchToPattern = ja;\n na.matchHost = ka;\n na.trigger = la;\n na.match = ma;\n e.exports = na;\n});"); |
| // 9122 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o120,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yi/r/gZ1fwdeYASl.js",o121); |
| // undefined |
| o120 = null; |
| // undefined |
| o121 = null; |
| // 9127 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"+P3v8\",]);\n}\n;\n__d(\"FriendBrowserCheckboxController\", [\"AsyncRequest\",\"CSS\",\"DOM\",\"Event\",\"Form\",\"OnVisible\",\"$\",\"bind\",\"copyProperties\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"CSS\"), i = b(\"DOM\"), j = b(\"Event\"), k = b(\"Form\"), l = b(\"OnVisible\"), m = b(\"$\"), n = b(\"bind\"), o = b(\"copyProperties\"), p = b(\"ge\");\n function q() {\n \n };\n o(q, {\n instances: {\n },\n getInstance: function(r) {\n return this.instances[r];\n }\n });\n o(q.prototype, {\n init: function(r, s, t, u) {\n q.instances[r] = this;\n this._id = r;\n this._simplified = t;\n this._infiniteScroll = u;\n this._form = s;\n this._contentGrid = i.find(s, \".friendBrowserCheckboxContentGrid\");\n this._loadingIndicator = i.find(s, \".friendBrowsingCheckboxContentLoadingIndicator\");\n this._checkboxResults = i.find(s, \".friendBrowserCheckboxResults\");\n this._contentPager = i.find(s, \".friendBrowserCheckboxContentPager\");\n this.numGetNewRequests = 0;\n this.queuedRequests = {\n };\n j.listen(this._form, \"submit\", this.onFormSubmit.bind(this));\n },\n addTypeahead: function(r, s) {\n r.subscribe(\"select\", this.onHubSelect.bind(this, r, s));\n if (this._simplified) {\n r.subscribe(\"unselect\", this.onHubSelect.bind(this, r, s));\n };\n },\n onFormSubmit: function() {\n this.getNew(true);\n return false;\n },\n addSelector: function(r) {\n r.subscribe(\"change\", this.getNew.bind(this, false));\n },\n onHubSelect: function(r, s, event, t) {\n if (this._simplified) {\n this.getNew(true);\n return;\n }\n ;\n if (!((((event == \"select\")) && t.selected))) {\n return\n };\n var u = this.buildNewCheckbox(s, t.selected.text, t.selected.uid), v = i.find(this._form, (\".checkboxes_\" + s));\n i.appendContent(v.firstChild, u);\n var w = i.scry(r.getElement(), \"input[type=\\\"button\\\"]\");\n if ((w && w[0])) {\n w[0].click();\n };\n this.getNew(true);\n },\n buildNewCheckbox: function(r, s, t) {\n var u = ((r + \"_ids_\") + t), v = (r + \"_ids[]\"), w = i.create(\"input\", {\n id: u,\n type: \"checkbox\",\n value: t,\n name: v,\n checked: true\n });\n j.listen(w, \"click\", n(this, \"getNew\", false));\n var x = i.create(\"td\", null, w);\n h.addClass(x, \"vTop\");\n h.addClass(x, \"hLeft\");\n var y = i.create(\"label\", null, s), z = i.create(\"td\", null, y);\n h.addClass(z, \"vMid\");\n h.addClass(z, \"hLeft\");\n var aa = i.create(\"tr\");\n aa.appendChild(x);\n aa.appendChild(z);\n return aa;\n },\n showMore: function() {\n var r = i.scry(this._contentPager, \".friendBrowserMorePager\")[0];\n if (!r) {\n return false\n };\n if (h.hasClass(r, \"async_saving\")) {\n return false\n };\n var s = this.numGetNewRequests, t = k.serialize(this._form);\n t.show_more = true;\n var u = new g().setURI(\"/ajax/growth/friend_browser/checkbox.php\").setData(t).setHandler(n(this, function(v) {\n this.showMoreHandler(v, s);\n })).setStatusElement(r).send();\n },\n showMoreHandler: function(r, s) {\n if ((s == this.numGetNewRequests)) {\n var t = r.payload;\n i.appendContent(this._contentGrid, t.results);\n this.updatePagerAndExtraData(t.pager, t.extra_data);\n }\n ;\n },\n getNew: function(r) {\n this.numGetNewRequests++;\n var s = this.numGetNewRequests;\n h.addClass(this._checkboxResults, \"friendBrowserCheckboxContentOnload\");\n if (p(\"friendBrowserCI\")) {\n h.addClass(m(\"friendBrowserCI\"), \"friendBrowserCheckboxContentOnload\");\n };\n h.show(this._loadingIndicator);\n var t = k.serialize(this._form);\n t.used_typeahead = r;\n new g().setURI(\"/ajax/growth/friend_browser/checkbox.php\").setData(t).setHandler(n(this, function(u) {\n this.getNewHandler(u, s);\n })).send();\n },\n getNewHandler: function(r, s) {\n if ((s == this.numGetNewRequests)) {\n var t = r.payload;\n i.setContent(this._contentGrid, t.results);\n h.removeClass(this._checkboxResults, \"friendBrowserCheckboxContentOnload\");\n if (p(\"friendBrowserCI\")) {\n h.hide(m(\"friendBrowserCI\"));\n };\n h.hide(this._loadingIndicator);\n this.updatePagerAndExtraData(t.pager, t.extra_data);\n }\n ;\n },\n updatePagerAndExtraData: function(r, s) {\n i.setContent(this._contentPager, r);\n if (this._infiniteScroll) {\n this.setupOnVisible();\n };\n i.replace(this._form.elements.extra_data, s);\n },\n setupOnVisible: function() {\n var r = i.scry(this._contentPager, \".friendBrowserMorePager\")[0];\n if ((r && (this._id != \"jewel\"))) {\n (this._onVisible && this._onVisible.remove());\n this._onVisible = new l(r, n(this, \"showMore\"), false, 1000);\n }\n ;\n }\n });\n e.exports = q;\n});\n__d(\"FacebarResultStoreUtils\", [], function(a, b, c, d, e, f) {\n var g = {\n processEntityResult: function(h, i, j, k) {\n var l = {\n semantic: i.toString(),\n structure: [{\n type: (\"ent:\" + h),\n text: j,\n uid: i\n },],\n type: ((\"{\" + h) + \"}\"),\n cost: k,\n cache_id_length: 0,\n bolding: []\n };\n l.tuid = JSON.stringify({\n semantic: l.semantic,\n structure: l.structure\n });\n return l;\n },\n getRawTextFromStructured: function(h) {\n var i = \"\";\n h.forEach(function(j, k) {\n i += j.getText();\n });\n return i;\n }\n };\n e.exports = g;\n});\n__d(\"HashtagParser\", [\"URLMatcher\",], function(a, b, c, d, e, f) {\n var g = b(\"URLMatcher\"), h = 100, i = 30, j = /@\\[([0-9]+):([0-9]+):((?:[^\\\\\\]]*(?:\\\\.)*)*)\\]/g;\n function k() {\n var da = ((((((((((((((((\"\\u00c0-\\u00d6\" + \"\\u00d8-\\u00f6\") + \"\\u00f8-\\u00ff\") + \"\\u0100-\\u024f\") + \"\\u0253-\\u0254\") + \"\\u0256-\\u0257\") + \"\\u0259\") + \"\\u025b\") + \"\\u0263\") + \"\\u0268\") + \"\\u026f\") + \"\\u0272\") + \"\\u0289\") + \"\\u028b\") + \"\\u02bb\") + \"\\u0300-\\u036f\") + \"\\u1e00-\\u1eff\"), ea = ((((((((((((((((((((((((((((((((((((((((((((\"\\u0400-\\u04ff\" + \"\\u0500-\\u0527\") + \"\\u2de0-\\u2dff\") + \"\\ua640-\\ua69f\") + \"\\u0591-\\u05bf\") + \"\\u05c1-\\u05c2\") + \"\\u05c4-\\u05c5\") + \"\\u05c7\") + \"\\u05d0-\\u05ea\") + \"\\u05f0-\\u05f4\") + \"\\ufb12-\\ufb28\") + \"\\ufb2a-\\ufb36\") + \"\\ufb38-\\ufb3c\") + \"\\ufb3e\") + \"\\ufb40-\\ufb41\") + \"\\ufb43-\\ufb44\") + \"\\ufb46-\\ufb4f\") + \"\\u0610-\\u061a\") + \"\\u0620-\\u065f\") + \"\\u066e-\\u06d3\") + \"\\u06d5-\\u06dc\") + \"\\u06de-\\u06e8\") + \"\\u06ea-\\u06ef\") + \"\\u06fa-\\u06fc\") + \"\\u06ff\") + \"\\u0750-\\u077f\") + \"\\u08a0\") + \"\\u08a2-\\u08ac\") + \"\\u08e4-\\u08fe\") + \"\\ufb50-\\ufbb1\") + \"\\ufbd3-\\ufd3d\") + \"\\ufd50-\\ufd8f\") + \"\\ufd92-\\ufdc7\") + \"\\ufdf0-\\ufdfb\") + \"\\ufe70-\\ufe74\") + \"\\ufe76-\\ufefc\") + \"\\u200c-\\u200c\") + \"\\u0e01-\\u0e3a\") + \"\\u0e40-\\u0e4e\") + \"\\u1100-\\u11ff\") + \"\\u3130-\\u3185\") + \"\\ua960-\\ua97f\") + \"\\uac00-\\ud7af\") + \"\\ud7b0-\\ud7ff\") + \"\\uffa1-\\uffdc\"), fa = String.fromCharCode, ga = ((((((((((((((((\"\\u30a1-\\u30fa\\u30fc-\\u30fe\" + \"\\uff66-\\uff9f\") + \"\\uff10-\\uff19\\uff21-\\uff3a\") + \"\\uff41-\\uff5a\") + \"\\u3041-\\u3096\\u3099-\\u309e\") + \"\\u3400-\\u4dbf\") + \"\\u4e00-\\u9fff\") + fa(173824)) + \"-\") + fa(177983)) + fa(177984)) + \"-\") + fa(178207)) + fa(194560)) + \"-\") + fa(195103)) + \"\\u3003\\u3005\\u303b\"), ha = ((da + ea) + ga), ia = ((((((((((((((((((((((((((((((((((((((((((((((((((\"A-Za-z\\u00aa\\u00b5\\u00ba\\u00c0-\\u00d6\\u00d8-\\u00f6\" + \"\\u00f8-\\u0241\\u0250-\\u02c1\\u02c6-\\u02d1\\u02e0-\\u02e4\\u02ee\\u037a\\u0386\") + \"\\u0388-\\u038a\\u038c\\u038e-\\u03a1\\u03a3-\\u03ce\\u03d0-\\u03f5\\u03f7-\\u0481\") + \"\\u048a-\\u04ce\\u04d0-\\u04f9\\u0500-\\u050f\\u0531-\\u0556\\u0559\\u0561-\\u0587\") + \"\\u05d0-\\u05ea\\u05f0-\\u05f2\\u0621-\\u063a\\u0640-\\u064a\\u066e-\\u066f\") + \"\\u0671-\\u06d3\\u06d5\\u06e5-\\u06e6\\u06ee-\\u06ef\\u06fa-\\u06fc\\u06ff\\u0710\") + \"\\u0712-\\u072f\\u074d-\\u076d\\u0780-\\u07a5\\u07b1\\u0904-\\u0939\\u093d\\u0950\") + \"\\u0958-\\u0961\\u097d\\u0985-\\u098c\\u098f-\\u0990\\u0993-\\u09a8\\u09aa-\\u09b0\") + \"\\u09b2\\u09b6-\\u09b9\\u09bd\\u09ce\\u09dc-\\u09dd\\u09df-\\u09e1\\u09f0-\\u09f1\") + \"\\u0a05-\\u0a0a\\u0a0f-\\u0a10\\u0a13-\\u0a28\\u0a2a-\\u0a30\\u0a32-\\u0a33\") + \"\\u0a35-\\u0a36\\u0a38-\\u0a39\\u0a59-\\u0a5c\\u0a5e\\u0a72-\\u0a74\\u0a85-\\u0a8d\") + \"\\u0a8f-\\u0a91\\u0a93-\\u0aa8\\u0aaa-\\u0ab0\\u0ab2-\\u0ab3\\u0ab5-\\u0ab9\\u0abd\") + \"\\u0ad0\\u0ae0-\\u0ae1\\u0b05-\\u0b0c\\u0b0f-\\u0b10\\u0b13-\\u0b28\\u0b2a-\\u0b30\") + \"\\u0b32-\\u0b33\\u0b35-\\u0b39\\u0b3d\\u0b5c-\\u0b5d\\u0b5f-\\u0b61\\u0b71\\u0b83\") + \"\\u0b85-\\u0b8a\\u0b8e-\\u0b90\\u0b92-\\u0b95\\u0b99-\\u0b9a\\u0b9c\\u0b9e-\\u0b9f\") + \"\\u0ba3-\\u0ba4\\u0ba8-\\u0baa\\u0bae-\\u0bb9\\u0c05-\\u0c0c\\u0c0e-\\u0c10\") + \"\\u0c12-\\u0c28\\u0c2a-\\u0c33\\u0c35-\\u0c39\\u0c60-\\u0c61\\u0c85-\\u0c8c\") + \"\\u0c8e-\\u0c90\\u0c92-\\u0ca8\\u0caa-\\u0cb3\\u0cb5-\\u0cb9\\u0cbd\\u0cde\") + \"\\u0ce0-\\u0ce1\\u0d05-\\u0d0c\\u0d0e-\\u0d10\\u0d12-\\u0d28\\u0d2a-\\u0d39\") + \"\\u0d60-\\u0d61\\u0d85-\\u0d96\\u0d9a-\\u0db1\\u0db3-\\u0dbb\\u0dbd\\u0dc0-\\u0dc6\") + \"\\u0e01-\\u0e30\\u0e32-\\u0e33\\u0e40-\\u0e46\\u0e81-\\u0e82\\u0e84\\u0e87-\\u0e88\") + \"\\u0e8a\\u0e8d\\u0e94-\\u0e97\\u0e99-\\u0e9f\\u0ea1-\\u0ea3\\u0ea5\\u0ea7\") + \"\\u0eaa-\\u0eab\\u0ead-\\u0eb0\\u0eb2-\\u0eb3\\u0ebd\\u0ec0-\\u0ec4\\u0ec6\") + \"\\u0edc-\\u0edd\\u0f00\\u0f40-\\u0f47\\u0f49-\\u0f6a\\u0f88-\\u0f8b\\u1000-\\u1021\") + \"\\u1023-\\u1027\\u1029-\\u102a\\u1050-\\u1055\\u10a0-\\u10c5\\u10d0-\\u10fa\\u10fc\") + \"\\u1100-\\u1159\\u115f-\\u11a2\\u11a8-\\u11f9\\u1200-\\u1248\\u124a-\\u124d\") + \"\\u1250-\\u1256\\u1258\\u125a-\\u125d\\u1260-\\u1288\\u128a-\\u128d\\u1290-\\u12b0\") + \"\\u12b2-\\u12b5\\u12b8-\\u12be\\u12c0\\u12c2-\\u12c5\\u12c8-\\u12d6\\u12d8-\\u1310\") + \"\\u1312-\\u1315\\u1318-\\u135a\\u1380-\\u138f\\u13a0-\\u13f4\\u1401-\\u166c\") + \"\\u166f-\\u1676\\u1681-\\u169a\\u16a0-\\u16ea\\u1700-\\u170c\\u170e-\\u1711\") + \"\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176c\\u176e-\\u1770\\u1780-\\u17b3\\u17d7\") + \"\\u17dc\\u1820-\\u1877\\u1880-\\u18a8\\u1900-\\u191c\\u1950-\\u196d\\u1970-\\u1974\") + \"\\u1980-\\u19a9\\u19c1-\\u19c7\\u1a00-\\u1a16\\u1d00-\\u1dbf\\u1e00-\\u1e9b\") + \"\\u1ea0-\\u1ef9\\u1f00-\\u1f15\\u1f18-\\u1f1d\\u1f20-\\u1f45\\u1f48-\\u1f4d\") + \"\\u1f50-\\u1f57\\u1f59\\u1f5b\\u1f5d\\u1f5f-\\u1f7d\\u1f80-\\u1fb4\\u1fb6-\\u1fbc\") + \"\\u1fbe\\u1fc2-\\u1fc4\\u1fc6-\\u1fcc\\u1fd0-\\u1fd3\\u1fd6-\\u1fdb\\u1fe0-\\u1fec\") + \"\\u1ff2-\\u1ff4\\u1ff6-\\u1ffc\\u2071\\u207f\\u2090-\\u2094\\u2102\\u2107\") + \"\\u210a-\\u2113\\u2115\\u2119-\\u211d\\u2124\\u2126\\u2128\\u212a-\\u212d\") + \"\\u212f-\\u2131\\u2133-\\u2139\\u213c-\\u213f\\u2145-\\u2149\\u2c00-\\u2c2e\") + \"\\u2c30-\\u2c5e\\u2c80-\\u2ce4\\u2d00-\\u2d25\\u2d30-\\u2d65\\u2d6f\\u2d80-\\u2d96\") + \"\\u2da0-\\u2da6\\u2da8-\\u2dae\\u2db0-\\u2db6\\u2db8-\\u2dbe\\u2dc0-\\u2dc6\") + \"\\u2dc8-\\u2dce\\u2dd0-\\u2dd6\\u2dd8-\\u2dde\\u3005-\\u3006\\u3031-\\u3035\") + \"\\u303b-\\u303c\\u3041-\\u3096\\u309d-\\u309f\\u30a1-\\u30fa\\u30fc-\\u30ff\") + \"\\u3105-\\u312c\\u3131-\\u318e\\u31a0-\\u31b7\\u31f0-\\u31ff\\u3400-\\u4db5\") + \"\\u4e00-\\u9fbb\\ua000-\\ua48c\\ua800-\\ua801\\ua803-\\ua805\\ua807-\\ua80a\") + \"\\ua80c-\\ua822\\uac00-\\ud7a3\\uf900-\\ufa2d\\ufa30-\\ufa6a\\ufa70-\\ufad9\") + \"\\ufb00-\\ufb06\\ufb13-\\ufb17\\ufb1d\\ufb1f-\\ufb28\\ufb2a-\\ufb36\\ufb38-\\ufb3c\") + \"\\ufb3e\\ufb40-\\ufb41\\ufb43-\\ufb44\\ufb46-\\ufbb1\\ufbd3-\\ufd3d\\ufd50-\\ufd8f\") + \"\\ufd92-\\ufdc7\\ufdf0-\\ufdfb\\ufe70-\\ufe74\\ufe76-\\ufefc\\uff21-\\uff3a\") + \"\\uff41-\\uff5a\\uff66-\\uffbe\\uffc2-\\uffc7\\uffca-\\uffcf\\uffd2-\\uffd7\") + \"\\uffda-\\uffdc\"), ja = ((((((((((((((((((((\"\\u0300-\\u036f\\u0483-\\u0486\\u0591-\\u05b9\\u05bb-\\u05bd\\u05bf\" + \"\\u05c1-\\u05c2\\u05c4-\\u05c5\\u05c7\\u0610-\\u0615\\u064b-\\u065e\\u0670\") + \"\\u06d6-\\u06dc\\u06df-\\u06e4\\u06e7-\\u06e8\\u06ea-\\u06ed\\u0711\\u0730-\\u074a\") + \"\\u07a6-\\u07b0\\u0901-\\u0903\\u093c\\u093e-\\u094d\\u0951-\\u0954\\u0962-\\u0963\") + \"\\u0981-\\u0983\\u09bc\\u09be-\\u09c4\\u09c7-\\u09c8\\u09cb-\\u09cd\\u09d7\") + \"\\u09e2-\\u09e3\\u0a01-\\u0a03\\u0a3c\\u0a3e-\\u0a42\\u0a47-\\u0a48\\u0a4b-\\u0a4d\") + \"\\u0a70-\\u0a71\\u0a81-\\u0a83\\u0abc\\u0abe-\\u0ac5\\u0ac7-\\u0ac9\\u0acb-\\u0acd\") + \"\\u0ae2-\\u0ae3\\u0b01-\\u0b03\\u0b3c\\u0b3e-\\u0b43\\u0b47-\\u0b48\\u0b4b-\\u0b4d\") + \"\\u0b56-\\u0b57\\u0b82\\u0bbe-\\u0bc2\\u0bc6-\\u0bc8\\u0bca-\\u0bcd\\u0bd7\") + \"\\u0c01-\\u0c03\\u0c3e-\\u0c44\\u0c46-\\u0c48\\u0c4a-\\u0c4d\\u0c55-\\u0c56\") + \"\\u0c82-\\u0c83\\u0cbc\\u0cbe-\\u0cc4\\u0cc6-\\u0cc8\\u0cca-\\u0ccd\\u0cd5-\\u0cd6\") + \"\\u0d02-\\u0d03\\u0d3e-\\u0d43\\u0d46-\\u0d48\\u0d4a-\\u0d4d\\u0d57\\u0d82-\\u0d83\") + \"\\u0dca\\u0dcf-\\u0dd4\\u0dd6\\u0dd8-\\u0ddf\\u0df2-\\u0df3\\u0e31\\u0e34-\\u0e3a\") + \"\\u0e47-\\u0e4e\\u0eb1\\u0eb4-\\u0eb9\\u0ebb-\\u0ebc\\u0ec8-\\u0ecd\\u0f18-\\u0f19\") + \"\\u0f35\\u0f37\\u0f39\\u0f3e-\\u0f3f\\u0f71-\\u0f84\\u0f86-\\u0f87\\u0f90-\\u0f97\") + \"\\u0f99-\\u0fbc\\u0fc6\\u102c-\\u1032\\u1036-\\u1039\\u1056-\\u1059\\u135f\") + \"\\u1712-\\u1714\\u1732-\\u1734\\u1752-\\u1753\\u1772-\\u1773\\u17b6-\\u17d3\\u17dd\") + \"\\u180b-\\u180d\\u18a9\\u1920-\\u192b\\u1930-\\u193b\\u19b0-\\u19c0\\u19c8-\\u19c9\") + \"\\u1a17-\\u1a1b\\u1dc0-\\u1dc3\\u20d0-\\u20dc\\u20e1\\u20e5-\\u20eb\\u302a-\\u302f\") + \"\\u3099-\\u309a\\ua802\\ua806\\ua80b\\ua823-\\ua827\\ufb1e\\ufe00-\\ufe0f\") + \"\\ufe20-\\ufe23\"), ka = ((((\"0-9\\u0660-\\u0669\\u06f0-\\u06f9\\u0966-\\u096f\\u09e6-\\u09ef\" + \"\\u0a66-\\u0a6f\\u0ae6-\\u0aef\\u0b66-\\u0b6f\\u0be6-\\u0bef\\u0c66-\\u0c6f\") + \"\\u0ce6-\\u0cef\\u0d66-\\u0d6f\\u0e50-\\u0e59\\u0ed0-\\u0ed9\\u0f20-\\u0f29\") + \"\\u1040-\\u1049\\u17e0-\\u17e9\\u1810-\\u1819\\u1946-\\u194f\\u19d0-\\u19d9\") + \"\\uff10-\\uff19\"), la = ((ia + ja) + ha), ma = (ka + \"_\"), na = (la + ma), oa = ((\"[\" + la) + \"]\"), pa = ((\"[\" + na) + \"]\"), qa = ((\"^|$|[^&\" + na) + \"]\"), ra = \"[#\\\\uFF03]\", sa = (((((((((\"(\" + qa) + \")(\") + ra) + \")(\") + pa) + \"*\") + oa) + pa) + \"*)\");\n return new RegExp(sa, \"ig\");\n };\n function l(da) {\n var ea = y(da), fa = 0, ga = 0;\n return n(da).map(function(ha) {\n while ((fa < ea.length)) {\n var ia = ea[fa], ja = (ia.offset - ga);\n if ((ja < ha.offset)) {\n ga += (ia.token.length - ia.name.length);\n fa++;\n }\n else break;\n ;\n };\n return {\n marker: ha.marker,\n tag: ha.hashtag,\n rawOffset: (ha.offset + ga),\n offset: ha.offset\n };\n });\n };\n function m(da) {\n return o(da, t(da));\n };\n function n(da) {\n var ea = aa(da);\n return o(ea, p(da, ea));\n };\n function o(da, ea) {\n return r(da).slice(0, i).filter(function(fa) {\n var ga = v(fa.offset, fa.hashtag.length, ea);\n return (!ga && (fa.hashtag.length <= h));\n });\n };\n function p(da, ea) {\n return u(s(da), t(ea));\n };\n var q = k();\n function r(da) {\n var ea = [];\n da.replace(q, function(fa, ga, ha, ia, ja) {\n ea.push({\n marker: ha,\n hashtag: ia,\n offset: (ja + ga.length)\n });\n });\n return ea;\n };\n function s(da) {\n return ba(da).map(function(ea) {\n return [ea.offset,ea.name.length,];\n });\n };\n function t(da) {\n var ea = [], fa, ga = 0;\n while ((fa = g.permissiveMatch(da))) {\n var ha = da.indexOf(fa);\n ea.push([(ga + ha),fa.length,]);\n da = da.substring((ha + fa.length));\n ga += (ha + fa.length);\n };\n return ea;\n };\n function u(da, ea) {\n var fa = [], ga = 0, ha = 0, ia = 0;\n while (((ga < da.length) && (ha < ea.length))) {\n if ((da[ga][0] > ea[ha][0])) {\n fa[ia++] = ea[ha++];\n }\n else fa[ia++] = da[ga++];\n ;\n };\n return fa.concat(da.slice(ga), ea.slice(ha));\n };\n function v(da, ea, fa) {\n if (!fa) {\n return false\n };\n var ga = x(fa, da);\n return (w(da, ea, fa, ga) || w(da, ea, fa, (ga + 1)));\n };\n function w(da, ea, fa, ga) {\n if (!fa[ga]) {\n return false\n };\n var ha = fa[ga][0], ia = fa[ga][1];\n return !((((((da + ea) - 1) < ha)) || ((da > ((ha + ia) - 1)))));\n };\n function x(da, ea) {\n var fa = 0, ga = (da.length - 1);\n while ((fa <= ga)) {\n var ha = Math.floor((((fa + ga)) / 2)), ia = da[ha][0];\n if ((ia == ea)) {\n return ha;\n }\n else if ((ia < ea)) {\n fa = (ha + 1);\n }\n else ga = (ha - 1);\n \n ;\n };\n return ga;\n };\n function y(da) {\n var ea = [];\n da.replace(j, function(fa, ga, ha, ia, ja) {\n ea.push({\n token: fa,\n id: ga,\n type: ha,\n name: ia,\n offset: ja\n });\n });\n return ea;\n };\n function z(da) {\n return (da ? da.replace(/\\\\([^\\\\])/g, \"$1\").replace(/\\\\\\\\/g, \"\\\\\") : null);\n };\n function aa(da) {\n return da.replace(j, function(ea, fa, ga, ha, ia) {\n return z(ha);\n });\n };\n function ba(da) {\n var ea = 0, fa = 0;\n return y(da).map(function(ga) {\n var ha = da.indexOf(ga.token, fa);\n fa = (ha + 1);\n ha -= ea;\n var ia = z(ga.name);\n ea += (ga.token.length - ia.length);\n if ((ha >= 0)) {\n return {\n id: ga.id,\n name: ia,\n type: ga.type,\n offset: ha\n }\n };\n });\n };\n var ca = {\n };\n ca.parse = l;\n ca.parseWithoutMentions = m;\n e.exports = ca;\n});\n__d(\"HashtagSearchResultUtils\", [\"FacebarResultStoreUtils\",\"HashtagParser\",\"HashtagSearchResultConfig\",\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"FacebarResultStoreUtils\"), h = b(\"HashtagParser\"), i = b(\"HashtagSearchResultConfig\"), j = b(\"URI\"), k = {\n getHashtagFromQuery: function(l) {\n var m = h.parse(l);\n if (((m && (m.length === 1)) && (m[0].offset === 0))) {\n return m[0].tag\n };\n return false;\n },\n makeTypeaheadResult: function(l) {\n return {\n category: \"Hashtag\",\n path: j((\"/hashtag/\" + l)).toString(),\n photo: i.image_url,\n rankType: null,\n replace_results: (i.boost_result ? true : false),\n scaled_score: 1,\n score: 0,\n text: (\"#\" + l),\n type: \"hashtag_exact\",\n uid: (\"hashtag:\" + l)\n };\n },\n makeFacebarEntry: function(l) {\n return {\n category: \"Hashtag\",\n path: j((\"/hashtag/\" + l)).toString(),\n photo: i.image_url,\n replace_results: (i.boost_result ? true : false),\n text: (\"#\" + l),\n type: \"hashtag_exact\",\n uid: (\"hashtag:\" + l)\n };\n },\n makeFacebarResult: function(l) {\n var m = g.processEntityResult(\"hashtag_exact\", (\"hashtag:\" + l), (\"#\" + l), i.hashtag_cost);\n m.parse = {\n display: [{\n type: \"ent:hashtag_exact\",\n uid: (\"hashtag:\" + l)\n },],\n remTokens: [],\n suffix: \"\",\n unmatch: []\n };\n return m;\n }\n };\n e.exports = k;\n});\n__d(\"ContextualHelpSearchController\", [\"Event\",\"AsyncRequest\",\"DOM\",\"CSS\",\"Focus\",\"Input\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"AsyncRequest\"), i = b(\"DOM\"), j = b(\"CSS\"), k = b(\"Focus\"), l = b(\"Input\"), m = b(\"copyProperties\"), n = 400;\n function o() {\n this._token = null;\n this._timerID = 0;\n this._lastQuery = null;\n this.typing_listener = null;\n this.clear_listener = null;\n this.async_request = null;\n };\n m(o.prototype, {\n init: function(p, q, r, s, t) {\n this.loader = p;\n this.search_box = q;\n this.topics_area = r;\n this.results_area = s;\n this.clear_button = t;\n this.typing_listener = g.listen(this.search_box, \"keyup\", this.setTimer.bind(this));\n this.clear_listener = g.listen(this.clear_button, \"click\", this.clearResults.bind(this));\n k.set(this.search_box);\n },\n source: \"contextual_help\",\n clearResults: function() {\n this.show(this.topics_area);\n this._lastQuery = \"\";\n l.reset(this.search_box);\n k.set(this.search_box);\n if ((this.async_request !== null)) {\n this.async_request.abort();\n this.async_request = null;\n }\n ;\n j.addClass(this.clear_button, \"hidden_elem\");\n },\n update: function() {\n var p = l.getValue(this.search_box);\n if ((p === this._lastQuery)) {\n return\n };\n this._lastQuery = p;\n if ((p === \"\")) {\n this.clearResults();\n return;\n }\n ;\n this.show(this.loader);\n var q = {\n query: p,\n width: (this._width || n),\n source: this.source\n };\n this.async_request = new h(\"/help/ajax/search/\").setData(q).setHandler(function(r) {\n this._update(r);\n }.bind(this));\n this.async_request.send();\n },\n _update: function(p) {\n this.async_request = null;\n var q = p.getPayload().results;\n i.setContent(this.results_area, q);\n this.show(this.results_area);\n if ((l.getValue(this.search_box) === \"\")) {\n this.clearResults();\n }\n else j.removeClass(this.clear_button, \"hidden_elem\");\n ;\n },\n setTimer: function() {\n if ((this._timerID !== 0)) {\n clearTimeout(this._timerID);\n };\n this._timerID = setTimeout(this.update.bind(this), 300);\n if ((this.async_request != null)) {\n this.async_request.abort();\n this.async_request = null;\n }\n ;\n },\n show: function(p) {\n var q = [this.loader,this.topics_area,this.results_area,];\n for (var r = 0; (r < q.length); r++) {\n j.addClass(q[r], \"hidden_elem\");;\n };\n j.removeClass(p, \"hidden_elem\");\n }\n });\n e.exports = o;\n});\n__d(\"RequestsJewel\", [\"Arbiter\",\"AsyncRequest\",\"AsyncSignal\",\"ChannelConstants\",\"CSS\",\"DOM\",\"Event\",\"FriendBrowserCheckboxController\",\"LinkController\",\"Parent\",\"ScrollableArea\",\"Vector\",\"copyProperties\",\"ge\",\"shield\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncRequest\"), i = b(\"AsyncSignal\"), j = b(\"ChannelConstants\"), k = b(\"CSS\"), l = b(\"DOM\"), m = b(\"Event\"), n = b(\"FriendBrowserCheckboxController\"), o = b(\"LinkController\"), p = b(\"Parent\"), q = b(\"ScrollableArea\"), r = b(\"Vector\"), s = b(\"copyProperties\"), t = b(\"ge\"), u = b(\"shield\"), v = b(\"tx\");\n function w() {\n \n };\n s(w, {\n instance: null,\n getInstance: function() {\n return this.instance;\n }\n });\n s(w.prototype, {\n init: function(x, y, z) {\n w.instance = this;\n this.countNew = 0;\n this.jewel = x;\n this.jewelFlyoutCase = x.getRoot();\n this.jewelFlyout = t(\"fbRequestsFlyout\");\n this.newCountSpan = t(\"newRequestCount\");\n this.folder = y;\n this.doNewMarkRead = z;\n this.openTimestamp = 0;\n this._requestList = {\n };\n this._egoData = {\n };\n this._requestCount = 0;\n this.egoPredictedCount = 0;\n this.pendingCount = 0;\n this.shouldLogEgoClick = false;\n this.shouldClearPredictionAssocOnClick = false;\n var aa = t(\"requestsMarkReadButton\");\n if (aa) {\n m.listen(aa, \"click\", u(this._markRead, this));\n };\n this.jewel.subscribe(\"marked-seen\", u(this._markSeenCallback, this));\n this.jewel.subscribe(\"closed\", u(this._clearNewItems, this));\n this.jewel.subscribe(\"updated\", this._updateCount.bind(this));\n this.jewel.subscribe(\"opened\", this._openHandler.bind(this));\n o.registerHandler(this._handleLink.bind(this));\n g.subscribe(j.getArbiterType(\"jewel_requests_add\"), this._addRequest.bind(this));\n g.subscribe(j.getArbiterType(\"jewel_requests_remove_old\"), this._removeOldRequest.bind(this));\n g.subscribe(j.getArbiterType(\"friend_requests_seen\"), this._markSeenFromMessage.bind(this));\n g.subscribe(\"jewel/ego_predicted_count\", function(ba, ca) {\n this.egoPredictedCount = ca.ego_predicted_count;\n this.pendingCount = ca.pending_count;\n this.egoUnseenTimestamp = ca.unseen_timestamp;\n this.shouldLogEgoClick = ca.should_log_ego_click;\n this.actionContext = ca.action_context;\n }.bind(this));\n m.listen(this.jewelFlyout, \"submit\", function(ba) {\n var ca = p.byClass(ba.getTarget(), \"objectListItem\");\n if (ca) {\n k.removeClass(ca, \"jewelItemNew\");\n k.addClass(ca, \"jewelItemResponded\");\n this.pageInCollapsedRequests();\n }\n ;\n }.bind(this));\n this.setupScroll();\n return this;\n },\n setupScroll: function() {\n var x = l.scry(this.jewelFlyout, \".uiScrollableAreaWrap\")[0];\n if (x) {\n this._scrollableWrap = x;\n this._lastLinkPosition = 0;\n this._scrollListener = m.listen(x, \"scroll\", this._handleScroll.bind(this), m.Priority._BUBBLE);\n }\n ;\n },\n fromDom: function() {\n l.scry(this.jewelFlyout, \".jewelItemList li.objectListItem\").forEach(function(x) {\n var y = x.getAttribute(\"id\");\n if (y) {\n var z = t((y + \"_status\")), aa = this._parseIDToInts(y), ba = z.getAttribute(\"data-ego\");\n if (aa.requester) {\n this._requestList[aa.requester] = y;\n if (ba) {\n this._egoData[ba] = ba;\n };\n }\n ;\n ++this._requestCount;\n }\n ;\n }.bind(this));\n this._conditionShowEmptyMessage();\n },\n _parseID: function(x) {\n var y = x.match(/^(\\d+)_(\\d+)/);\n return ((y) ? {\n requester: y[1],\n type: y[2]\n } : undefined);\n },\n _parseIDToInts: function(x) {\n var y = (x ? this._parseID(x) : undefined), z;\n if ((y && y.requester)) {\n z = parseInt(y.requester, 10);\n if (isNaN(z)) {\n z = undefined;\n };\n }\n ;\n var aa;\n if ((y && y.type)) {\n aa = parseInt(y.type, 10);\n if (isNaN(aa)) {\n aa = undefined;\n };\n }\n ;\n return {\n requester: z,\n type: aa\n };\n },\n _handleLink: function(x, event) {\n var y = p.byClass(x, \"jewelItemNew\");\n if (((y && p.byClass(y, \"fbRequestList\")) && p.byClass(y, \"beeperEnabled\"))) {\n var z = this._parseID(y.id);\n (z && this._markSeenCallback(z.requester, z.type));\n g.inform(\"jewel/count-updated\", {\n jewel: \"requests\",\n count: --this.countNew\n });\n k.removeClass(y, \"jewelItemNew\");\n }\n ;\n return true;\n },\n _handleScroll: function() {\n var x = l.scry(this._scrollableWrap, \".uiMorePager\");\n if ((!x || ((t(\"fbRequestsJewelManualPager\") && (x.length < 2))))) {\n return\n };\n var y = x.pop();\n if (y) {\n var z = r.getElementPosition(y, \"viewport\").y;\n if ((z > 0)) {\n k.addClass(p.byClass(this._scrollableWrap, \"uiScrollableArea\"), \"contentAfter\");\n };\n var aa = l.find(y, \"a\");\n if (!aa) {\n return\n };\n var ba = r.getElementPosition(aa, \"viewport\").y;\n if ((ba == this._lastLinkPosition)) {\n return\n };\n var ca = (r.getElementPosition(this._scrollableWrap, \"viewport\").y + r.getElementDimensions(this._scrollableWrap).y);\n if ((((ba - 300) < ca) && (ba > 0))) {\n this._lastLinkPosition = ba;\n var da = aa.getAttribute(\"ajaxify\");\n if (da) {\n new h(da).setRelativeTo(aa).setStatusElement(p.byClass(aa, \"stat_elem\")).send();\n }\n else n.getInstance(\"jewel\").showMore();\n ;\n }\n ;\n }\n ;\n },\n _addRequest: function(x, y) {\n if (!y) {\n return\n };\n var z = y.obj.from, aa = y.obj.suggester, ba = this._parseIDToInts(this._requestList[z]).type, ca = ((ba === 19) && !aa);\n if ((!ca && ((ba || this.jewel.isOpen())))) {\n return\n };\n if (t(\"fbRequestsJewelLoading\")) {\n new h().setURI(\"/ajax/requests/loader/\").send();\n }\n else {\n var da = this._onMarkupCallback.bind(this, z, !!aa), ea = {\n from: z\n };\n if (aa) {\n ea.suggester = aa;\n };\n new h().setURI(\"/ajax/friends/jewel/request_markup\").setData(ea).setHandler(da).send();\n }\n ;\n },\n _onMarkupCallback: function(x, y, z) {\n var aa = z.getPayload();\n if (!aa) {\n return\n };\n var ba = this._requestList[x], ca = this._parseIDToInts(ba).type;\n if (((ca === 19) && !y)) {\n var da = (ba && t(ba));\n (da && l.replace(da, aa.markup));\n }\n else {\n var ea = l.scry(this.jewelFlyout, \".fbRequestList .uiList\")[0];\n if (!ea) {\n return\n };\n l.prependContent(ea, aa.markup);\n var fa = {\n jewel: \"requests\",\n count: ++this.countNew\n };\n g.inform(\"jewel/count-updated\", fa);\n ++this._requestCount;\n this._conditionShowEmptyMessage();\n }\n ;\n this._requestList[x] = aa.item_id;\n },\n _removeOldRequest: function(x, y) {\n if (((!y || this.jewel.isOpen()) || (t(\"fbRequestsJewelLoading\") !== null))) {\n return\n };\n var z = this._requestList[y.obj.from], aa = (z && t(z));\n if (aa) {\n (k.hasClass(aa, \"jewelItemNew\") && g.inform(\"jewel/count-updated\", {\n jewel: \"requests\",\n count: --this.countNew\n }));\n if (!k.hasClass(aa, \"jewelItemResponded\")) {\n l.remove(aa);\n delete this._requestList[y.obj.from];\n --this._requestCount;\n this._conditionShowEmptyMessage();\n }\n ;\n }\n ;\n },\n pageInCollapsedRequests: function() {\n var x = t(\"fbRequestsJewelManualPager\");\n if (x) {\n var y = l.scry(x, \".uiMorePagerPrimary\")[0];\n if ((y.style && (y.style.display != \"none\"))) {\n setTimeout(function() {\n y.click();\n }, 100);\n };\n }\n ;\n },\n _markRead: function() {\n this.jewel.markSeen();\n this._clearNewItems();\n },\n _markSeenCallback: function(x, y) {\n var z = l.scry(this.jewelFlyout, \"li\");\n new i(\"/ajax/gigaboxx/endpoint/UpdateLastSeenTime.php\", {\n folder: this.folder,\n first_item: z[0].id\n }).send();\n new h().setURI(\"/ajax/friends/jewel/predicted_count_logging\").setData({\n ego_predicted_count: this.egoPredictedCount,\n pending_count: this.pendingCount,\n unseen_timestamp: this.egoUnseenTimestamp,\n action_context: this.actionContext,\n should_log_ego_click: this.shouldLogEgoClick\n }).send();\n var aa = (((typeof x != \"undefined\") && (typeof y != \"undefined\")) ? {\n requester: x,\n type: y\n } : {\n });\n (this.doNewMarkRead && new i(\"/ajax/requests/mark_read/\", aa).send());\n },\n _markSeenFromMessage: function(x, y) {\n g.inform(\"jewel/count-updated\", {\n jewel: \"requests\",\n count: 0\n });\n },\n _removeRequest: function(x, y) {\n var z = y.obj.item_id;\n if (z) {\n var aa = t(z), ba = (aa && k.hasClass(aa, \"jewelItemNew\"));\n (aa ? l.remove(aa) : (ba && g.inform(\"jewel/count-updated\", {\n jewel: \"requests\",\n count: --this.countNew\n })));\n }\n ;\n },\n _clearNewItems: function(x, y) {\n l.scry(this.jewel.root, \"li.jewelItemNew\").forEach(function(z) {\n k.removeClass(z, \"jewelItemNew\");\n });\n },\n _updateCount: function(x, y) {\n this.countNew = y.count;\n k.conditionClass(this.jewelFlyout, \"beeperUnread\", (this.countNew > 0));\n k.conditionClass(this.jewelFlyoutCase, \"showRequests\", (this.countNew > 0));\n if (this.newCountSpan) {\n var z = ((this.countNew == 1) ? v._(\"{num} NEW REQUEST\", {\n num: this.countNew\n }) : v._(\"{num} NEW REQUESTS\", {\n num: this.countNew\n }));\n l.setContent(this.newCountSpan, z);\n }\n ;\n },\n _conditionShowEmptyMessage: function() {\n l.scry(this.jewelFlyout, \"li.empty\").forEach(function(x) {\n k.conditionShow(x, (this._requestCount <= 0));\n }.bind(this));\n },\n _openHandler: function() {\n var x = l.scry(this.jewelFlyout, \".uiScrollableArea\")[0];\n if (t(\"fbRequestsJewelLoading\")) {\n var y = Date.now();\n if (((this.openTimestamp + 5000) < y)) {\n this.openTimestamp = y;\n new h().setURI(\"/ajax/requests/loader/\").setData({\n log_impressions: true\n }).send();\n }\n ;\n }\n else {\n var z = Object.keys(this._requestList);\n if ((z.length > 0)) {\n new h().setURI(\"/friends/requests/log_impressions\").setData({\n ids: z.join(\",\"),\n ref: \"jewel\"\n }).send();\n var aa = Object.keys(this._egoData);\n if ((aa.length > 0)) {\n new h().setURI(\"/growth/jewel/impression_logging.php\").setData({\n egodata: aa\n }).send();\n };\n }\n ;\n }\n ;\n (x && q.poke(x));\n }\n });\n e.exports = w;\n});\n__d(\"legacy:RequestsJewel\", [\"RequestsJewel\",], function(a, b, c, d) {\n a.RequestsJewel = b(\"RequestsJewel\");\n}, 3);\n__d(\"JewelX\", [\"Event\",\"Arbiter\",\"ArbiterMixin\",\"CSS\",\"DOM\",\"HTML\",\"Keys\",\"TabIsolation\",\"Toggler\",\"copyProperties\",\"emptyFunction\",\"reportData\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Arbiter\"), i = b(\"ArbiterMixin\"), j = b(\"CSS\"), k = b(\"DOM\"), l = b(\"HTML\"), m = b(\"Keys\"), n = b(\"TabIsolation\"), o = b(\"Toggler\"), p = b(\"copyProperties\"), q = b(\"emptyFunction\"), r = b(\"reportData\"), s = function(t, u) {\n ((t && u) && this.init(t, u));\n };\n p(s, {\n _instancesByName: {\n },\n _resizeListener: null\n });\n p(s.prototype, i, {\n init: function(t, u) {\n this.name = u.name;\n this.root = t;\n this.countNew = 0;\n this.initialCount = 0;\n this.escHandler = null;\n s._instancesByName[this.name] = this;\n var v = k.find(t, \".jewelFlyout\"), w = new n(v);\n o.createInstance(v).setSticky(false);\n o.listen(\"show\", this.root, function(x) {\n this._logFirstClick();\n (this.hasNew() && this.markSeen());\n this.reset();\n this.inform(\"opened\");\n h.inform(\"layer_shown\", {\n type: \"Jewel\"\n });\n w.enable();\n this.setupEvents();\n }.bind(this));\n o.listen(\"hide\", this.root, function(x, y) {\n (this.hasNew() && this.markSeen());\n this.reset();\n this.inform(\"closed\");\n h.inform(\"layer_hidden\", {\n type: \"Jewel\"\n });\n w.disable();\n this.removeEvents();\n }.bind(this));\n h.subscribe(\"jewel/count-updated\", function(x, y) {\n ((y.jewel == this.name) && this.update(y));\n }.bind(this));\n h.subscribe(\"jewel/count-initial\", function(x, y) {\n ((y.jewel == this.name) && this.setInitial(y));\n }.bind(this));\n h.subscribe(\"jewel/reset\", function(x, y) {\n ((y.jewel == this.name) && this.reset());\n }.bind(this));\n s._resizeListener = (s._resizeListener || (function() {\n var x = null;\n return g.listen(window, \"resize\", function() {\n clearTimeout(x);\n x = h.inform.bind(h, \"jewel/resize\").defer(100, false);\n });\n })());\n },\n getRoot: function() {\n return this.root;\n },\n hasNew: function() {\n return j.hasClass(this.root, \"hasNew\");\n },\n isOpen: function() {\n return j.hasClass(this.root, \"openToggler\");\n },\n reset: function() {\n j.removeClass(this.root, \"hasNew\");\n },\n setContent: function(t) {\n var u = k.find(this.root, \"ul.jewelItemList\");\n k.setContent(u, l(t));\n },\n update: function(t) {\n this.countNew = t.count;\n var u = k.find(this.root, \"span.jewelCount span\");\n k.setContent(u, this.countNew);\n var v = (isNaN(this.countNew) || (this.countNew > 0));\n j.conditionClass(this.root, \"hasNew\", v);\n if (v) {\n var w = ((\"\" + this.countNew)).length;\n j.conditionClass(this.root, \"hasCountSmall\", (w === 1));\n j.conditionClass(this.root, \"hasCountMedium\", (w === 2));\n j.conditionClass(this.root, \"hasCountLarge\", (w > 2));\n }\n ;\n this.inform(\"updated\", t);\n },\n setInitial: function(t) {\n this.initialCount = t;\n },\n setupEvents: function() {\n this.escHandler = g.listen(document.documentElement, \"keydown\", function(t) {\n if (((t.keyCode === m.ESC) && this.isOpen())) {\n o.hide(this.root);\n };\n }.bind(this));\n },\n removeEvents: function() {\n if (this.escHandler) {\n this.escHandler.remove();\n };\n },\n markSeen: function() {\n h.inform(\"jewel/count-updated\", {\n jewel: this.name,\n count: 0\n }, h.BEHAVIOR_STATE);\n this.inform(\"marked-seen\");\n },\n _logFirstClick: function() {\n this._logFirstClick = q;\n r(\"jewel_click\", {\n gt: {\n count: this.countNew,\n initial: this.initialCount,\n jewel: this.name\n }\n });\n }\n });\n e.exports = s;\n});\n__d(\"MercuryJewelCountControl\", [\"Arbiter\",\"DOM\",\"MercuryThreadlistConstants\",\"copyProperties\",\"shield\",\"tx\",\"MercuryServerRequests\",\"MercuryThreadInformer\",\"MercuryUnseenState\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"DOM\"), i = b(\"MercuryThreadlistConstants\"), j = b(\"copyProperties\"), k = b(\"shield\"), l = b(\"tx\"), m = b(\"MercuryServerRequests\").get(), n = b(\"MercuryThreadInformer\").get(), o = b(\"MercuryUnseenState\").get(), p, q, r, s = function(u) {\n if ((u || r.isOpen())) {\n o.markAsSeen();\n };\n }, t = function(u, v) {\n p = u;\n q = h.find(p, \"#mercurymessagesCountValue\");\n r = v;\n this.render();\n m.subscribe(\"model-update-completed\", function(w, x) {\n s(false);\n });\n n.subscribe(\"unseen-updated\", this.render.bind(this));\n r.subscribe(\"marked-seen\", k(s, this, true));\n };\n j(t.prototype, {\n render: function() {\n var u = \"\";\n if (o.exceedsMaxCount()) {\n u = l._(\"{count}+\", {\n count: i.MAX_UNSEEN_COUNT\n });\n }\n else u = o.getUnseenCount().toString();\n ;\n g.inform(\"jewel/count-updated\", {\n jewel: \"mercurymessages\",\n count: u\n }, g.BEHAVIOR_STATE);\n }\n });\n e.exports = t;\n});\n__d(\"MercuryJewelThreadlistControl\", [\"Arbiter\",\"ArbiterMixin\",\"MercuryChatUtils\",\"MercuryConfig\",\"CSS\",\"DOM\",\"Event\",\"JSLogger\",\"JSXDOM\",\"MercuryAPIArgsSource\",\"MercuryThreadlistConstants\",\"MessagingTag\",\"MercuryOrderedThreadlist\",\"Parent\",\"MercuryJewelTemplates\",\"MercuryThreadInformer\",\"MercuryThreadMetadataRenderer\",\"MercuryThreads\",\"Tooltip\",\"MercuryUnreadState\",\"copyProperties\",\"csx\",\"cx\",\"throttle\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ArbiterMixin\"), i = b(\"MercuryChatUtils\"), j = b(\"MercuryConfig\"), k = b(\"CSS\"), l = b(\"DOM\"), m = b(\"Event\"), n = b(\"JSLogger\"), o = b(\"JSXDOM\"), p = b(\"MercuryAPIArgsSource\"), q = b(\"MercuryThreadlistConstants\"), r = b(\"MessagingTag\"), s = b(\"MercuryOrderedThreadlist\").get(), t = b(\"Parent\"), u = b(\"MercuryJewelTemplates\"), v = b(\"MercuryThreadInformer\").get(), w = b(\"MercuryThreadMetadataRenderer\").get(), x = b(\"MercuryThreads\").get(), y = b(\"Tooltip\"), z = b(\"MercuryUnreadState\").get(), aa = b(\"copyProperties\"), ba = b(\"csx\"), ca = b(\"cx\"), da = b(\"throttle\"), ea = b(\"tx\"), fa = n.create(\"mercury_jewel\");\n function ga(na, oa) {\n this._contentArea = (l.scry(na, \".scrollable\")[0] || na);\n this._contentElement = l.find(this._contentArea, \".jewelContent\");\n this._loadingElement = l.find(this._contentArea, \".jewelLoading\");\n this._loadMoreButton = l.find(this._contentArea, \".-cx-PRIVATE-fbMercuryJewel__morebutton\");\n this._loadMoreLink = l.find(this._contentArea, \"a.-cx-PRIVATE-fbMercuryJewel__morelink\");\n this._currentFolder = r.INBOX;\n this._jewelFolderLinks = [];\n this._jewelFolderLinks[r.INBOX] = l.find(oa, \".-cx-PRIVATE-fbMercuryJewel__inboxfolder\");\n this._jewelFolderLinks[r.OTHER] = l.find(oa, \".-cx-PRIVATE-fbMercuryJewel__otherfolder\");\n this._jewelFolderCounts = [];\n this._jewelFolderCounts[r.INBOX] = l.find(oa, \".-cx-PRIVATE-fbMercuryJewel__inboxunread\");\n this._jewelFolderCounts[r.OTHER] = l.find(oa, \".-cx-PRIVATE-fbMercuryJewel__otherunread\");\n la.bind(this)();\n m.listen(this._jewelFolderLinks[r.INBOX], \"click\", ka.bind(this, r.INBOX));\n m.listen(this._jewelFolderLinks[r.OTHER], \"click\", ka.bind(this, r.OTHER));\n this._curCount = [];\n this._curCount[r.INBOX] = (q.JEWEL_THREAD_COUNT + 1);\n this._curCount[r.OTHER] = (q.JEWEL_THREAD_COUNT + 1);\n this._isFolderLoaded = [];\n this._isFolderLoaded[r.INBOX] = false;\n this._isFolderLoaded[r.OTHER] = false;\n this._folderIsLoading = [];\n this._folderIsLoading[r.INBOX] = false;\n this._folderIsLoading[r.OTHER] = false;\n v.subscribe(\"threadlist-updated\", this.render.bind(this));\n v.subscribe(\"unread-updated\", la.bind(this));\n this.render();\n fa.bump((\"opened_threadlist_\" + this._currentFolder));\n m.listen(this._contentArea, \"scroll\", da(ha, 50, this));\n m.listen(this._loadMoreLink, \"click\", this.renderMoreThreads.bind(this));\n };\n aa(ga, {\n EVENT_THREADS_LOADED: \"threads-loaded\",\n EVENT_THREADS_RENDERED: \"threads-rendered\"\n });\n aa(ga.prototype, h);\n aa(ga.prototype, {\n render: function() {\n l.empty(this._contentElement);\n k.show(this._loadingElement);\n k.hide(this._loadMoreButton);\n var na = l.create(\"div\");\n l.appendContent(this._contentElement, na);\n s.getThreadlist(q.RECENT_THREAD_OFFSET, this._curCount[this._currentFolder], this._currentFolder, this.renderThreads.bind(this, na), true);\n },\n renderThreads: function(na, oa) {\n this.inform(ga.EVENT_THREADS_LOADED);\n if (oa.length) {\n oa.forEach(function(pa) {\n var qa = u[\":fb:mercury:jewel:threadlist-row\"].build();\n x.getThreadMeta(pa, function(ra) {\n w.renderCoreThreadlist(ra, qa, this.renderSingleThread.bind(this), {\n show_unread_count: true\n });\n }.bind(this));\n l.appendContent(na, qa.getRoot());\n }.bind(this));\n }\n else l.setContent(this._contentElement, this.renderEmptyThreadlist());\n ;\n k.hide(this._loadingElement);\n k.conditionShow(this._loadMoreButton, !this._isFolderLoaded[this._currentFolder]);\n this.inform(ga.EVENT_THREADS_RENDERED);\n },\n renderSingleThread: function(na, oa) {\n var pa = (oa.unread_count > 0);\n if (pa) {\n k.addClass(na.getRoot(), \"jewelItemNew\");\n };\n if (j.MessagesJewelToggleReadGK) {\n var qa = o.div({\n className: \"x_div\"\n }), ra = o.div({\n className: \"-cx-PRIVATE-fbReadToggle__active\"\n }), sa = \"Mark as Unread\";\n if (pa) {\n sa = \"Mark as Read\";\n };\n y.set(ra, sa, \"above\", \"right\");\n m.listen(ra, \"click\", function(event) {\n x.changeThreadReadStatus(oa.thread_id, (oa.unread_count > 0));\n return false;\n });\n qa.appendChild(ra);\n na.getNode(\"link\").appendChild(qa);\n }\n ;\n if ((j.MessagesJewelOpenInChat && i.canOpenChatTab(oa))) {\n m.listen(na.getRoot(), \"click\", function(event) {\n g.inform(\"chat/open-tab\", {\n thread_id: oa.thread_id\n });\n });\n }\n else w.renderTitanLink(oa.thread_id, na.getNode(\"link\"), null, this._currentFolder);\n ;\n m.listen(na.getRoot(), \"mouseover\", function(event) {\n var ta = na.getRoot();\n if (!t.byClass(ta, \"notifNegativeBase\")) {\n k.addClass(ta, \"selected\");\n };\n });\n m.listen(na.getRoot(), \"mouseout\", function(event) {\n k.removeClass(na.getRoot(), \"selected\");\n });\n },\n renderMoreThreads: function() {\n k.addClass(this._loadMoreButton, \"async_saving\");\n this._folderIsLoading[this._currentFolder] = true;\n var na = (this._curCount[this._currentFolder] + q.JEWEL_MORE_COUNT);\n s.getThreadlist(q.RECENT_THREAD_OFFSET, (na + 1), this._currentFolder, ja.bind(this, na, this._currentFolder), true, p.JEWEL);\n },\n renderEmptyThreadlist: function() {\n return l.create(\"li\", {\n className: \"empty\"\n }, \"No messages\");\n }\n });\n function ha() {\n if (((!this._isFolderLoaded[this._currentFolder] && !this._folderIsLoading[this._currentFolder]) && ia.bind(this)())) {\n this.renderMoreThreads();\n };\n };\n function ia() {\n return ((this._contentArea.scrollTop + this._contentArea.clientHeight) >= (this._contentArea.scrollHeight - 1));\n };\n function ja(na, oa, pa) {\n this._curCount[oa] = na;\n if ((!this._isFolderLoaded[oa] && (pa.length < (this._curCount[oa] + 1)))) {\n this._isFolderLoaded[oa] = true;\n };\n this._folderIsLoading[oa] = false;\n k.removeClass(this._loadMoreButton, \"async_saving\");\n this.render();\n };\n function ka(na) {\n if ((this._currentFolder != na)) {\n fa.bump((\"opened_threadlist_\" + na));\n k.addClass(this._jewelFolderLinks[na], \"-cx-PRIVATE-fbMercuryJewel__selectedfolder\");\n k.removeClass(this._jewelFolderLinks[this._currentFolder], \"-cx-PRIVATE-fbMercuryJewel__selectedfolder\");\n this._currentFolder = na;\n this.render();\n }\n ;\n };\n function la() {\n ma.bind(this)(r.INBOX);\n ma.bind(this)(r.OTHER);\n };\n function ma(na) {\n var oa;\n if (z.exceedsMaxCount(na)) {\n oa = q.MAX_UNREAD_COUNT;\n }\n else oa = z.getUnreadCount(na);\n ;\n var pa = this._jewelFolderCounts[na];\n if ((oa > 0)) {\n if ((oa == q.MAX_UNREAD_COUNT)) {\n oa += \"+\";\n };\n l.setContent(pa, ea._(\"({unread_count})\", {\n unread_count: oa\n }));\n }\n else l.setContent(pa, \"\");\n ;\n };\n e.exports = ga;\n});\n__d(\"MercuryJewel\", [\"MercuryChannelHandler\",\"MercuryJewelCountControl\",\"DOM\",\"MercuryJewelThreadlistControl\",\"MercuryServerRequests\",\"userAction\",], function(a, b, c, d, e, f) {\n b(\"MercuryChannelHandler\");\n var g = b(\"MercuryJewelCountControl\"), h = b(\"DOM\"), i = b(\"MercuryJewelThreadlistControl\"), j = b(\"MercuryServerRequests\").get(), k = b(\"userAction\"), l = false;\n function m(q, r, s, t) {\n j.handleUpdate(t);\n var u = new g(r, s), v = h.find(q, \"#MercuryJewelThreadList\");\n if ((s.getRoot() && s.isOpen())) {\n n.call(this, v, q);\n }\n else s.subscribe(\"opened\", n.bind(this, v, q));\n ;\n };\n e.exports = m;\n function n(q, r) {\n this._ua = k(\"messages\").uai(\"click\", \"jewel\");\n this._listenForLoad = this._listenForRender = true;\n if (!l) {\n var s = new i(q, r);\n s.subscribe(i.EVENT_THREADS_LOADED, o.bind(this));\n s.subscribe(i.EVENT_THREADS_RENDERED, p.bind(this));\n l = true;\n }\n ;\n };\n function o() {\n if (this._listenForLoad) {\n this._ua.add_event(\"loaded\");\n this._listenForLoad = false;\n }\n ;\n };\n function p() {\n if (this._listenForRender) {\n this._ua.add_event(\"rendered\");\n this._listenForRender = false;\n }\n ;\n };\n});\n__d(\"MessagingEvents\", [\"Arbiter\",\"ChannelConstants\",\"arrayContains\",\"copyProperties\",\"isEmpty\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ChannelConstants\"), i = b(\"arrayContains\"), j = b(\"copyProperties\"), k = b(\"isEmpty\"), l = {\n }, m = new g();\n function n(o) {\n if (!k(l)) {\n return\n };\n for (var p in o) {\n m.inform((\"count/\" + p), o[p]);;\n };\n };\n m.subscribe(\"mark-as-read\", function(o, p) {\n (((p.tids || p.chat_ids) || [])).forEach(function(q) {\n q = (\"\" + q);\n if (!((q in l))) {\n l[q] = true;\n var r = function() {\n m.unsubscribe(s);\n clearTimeout(t);\n delete l[q];\n }, s = m.subscribe(\"read\", function(u, v) {\n if ((i(((v.tids || [])), q) || i(((v.chat_ids || [])), q))) {\n r();\n };\n }), t = r.defer(60000);\n }\n ;\n });\n });\n g.subscribe(h.getArbiterType(\"messaging\"), function(o, p) {\n var q = j({\n }, p.obj), event = (q.event || \"\");\n delete q.type;\n delete q.event;\n m.inform(event, q);\n if ((\"unread_counts\" in q)) {\n var r = q.unread_counts;\n n({\n unread: r.inbox,\n other_unseen: r.other\n });\n }\n ;\n });\n g.subscribe(h.getArbiterType(\"inbox\"), function(o, p) {\n var q = j(p.obj);\n delete q.type;\n n(q);\n });\n a.MessagingEvents = e.exports = m;\n}, 3);\n__d(\"TitanLeftNav\", [\"CounterDisplay\",\"MessagingEvents\",], function(a, b, c, d, e, f) {\n var g = b(\"CounterDisplay\"), h = b(\"MessagingEvents\"), i = {\n initialize: function() {\n h.subscribe(\"count/other_unseen\", function(j, k) {\n g.setCount(\"other_unseen\", k);\n });\n }\n };\n e.exports = i;\n});\n__d(\"AccessibleMenu\", [\"Event\",\"CSS\",\"DOM\",\"Keys\",\"TabbableElements\",\"Toggler\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"CSS\"), i = b(\"DOM\"), j = b(\"Keys\"), k = b(\"TabbableElements\"), l = b(\"Toggler\"), m, n, o;\n function p() {\n var x = i.scry(m, \"a[rel=\\\"toggle\\\"]\")[0];\n (x && x.focus());\n l.getInstance(m).hide();\n };\n function q(x) {\n if (!x) {\n return false\n };\n h.removeClass(x, \"selected\");\n x.setAttribute(\"aria-selected\", \"false\");\n };\n function r(x) {\n if (!x) {\n return false\n };\n h.addClass(x, \"selected\");\n x.setAttribute(\"aria-selected\", \"true\");\n var y = k.find(x);\n if (y[0]) {\n y[0].focus();\n };\n };\n function s(x) {\n var y = i.scry(m, \".selected\")[0], z = (n.indexOf(y) + x), aa = n[z];\n if (!aa) {\n return false\n };\n q(y);\n r(aa);\n };\n function t(x) {\n if ((!l.isShown() || (l.getActive() !== m))) {\n return true\n };\n var y = g.getKeyCode(x);\n switch (y) {\n case j.TAB:\n s((x.shiftKey ? -1 : 1));\n g.prevent(x);\n break;\n case j.ESC:\n p();\n g.prevent(x);\n break;\n case j.UP:\n \n case j.DOWN:\n s(((y === j.UP) ? -1 : 1));\n g.prevent(x);\n break;\n };\n };\n function u(x, y) {\n m = y.getActive();\n n = i.scry(m, \"[role=\\\"menuitem\\\"]\");\n if (!o) {\n o = g.listen(document.documentElement, \"keydown\", t);\n };\n };\n function v() {\n if ((l.getActive() == m)) {\n q(i.scry(m, \".selected\")[0]);\n };\n };\n var w = {\n init: function(x) {\n l.listen(\"show\", x, u);\n l.listen(\"hide\", x, v);\n }\n };\n e.exports = w;\n});\n__d(\"UserNoOp\", [\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"emptyFunction\"), i = function() {\n \n };\n g(i.prototype, {\n add_event: h.thatReturnsThis,\n add_data: h.thatReturnsThis,\n uai: h.thatReturnsThis,\n uai_fallback: h.thatReturnsThis\n });\n e.exports = i;\n});\n__d(\"NegativeNotif\", [\"Animation\",\"AsyncRequest\",\"CSS\",\"DataStore\",\"DOM\",\"Event\",\"Parent\",\"Tooltip\",\"NotifXList\",\"$\",\"clickRefAction\",\"copyProperties\",\"userAction\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"AsyncRequest\"), i = b(\"CSS\"), j = b(\"DataStore\"), k = b(\"DOM\"), l = b(\"Event\"), m = b(\"Parent\"), n = b(\"Tooltip\"), o = b(\"NotifXList\"), p = b(\"$\"), q = b(\"clickRefAction\"), r = b(\"copyProperties\"), s = b(\"userAction\");\n function t(u, v) {\n r(this, v);\n this.owner = u;\n this.xLink = k.find(this.obj, \".notif_x\");\n this.confirmingMsg = k.find(this.obj, \".confirmingMsg\");\n this.mainLink = k.find(this.obj, \".notifMainLink\");\n this.userXClicked = false;\n this.userUnsubscribed = false;\n l.listen(this.xLink, \"click\", this.xClick.bind(this));\n if ((i.hasClass(this.obj, \"first_receipt\") && i.hasClass(p(\"jewelContainer\"), \"notifGentleAppReceipt\"))) {\n this.gentleFirstReceiptHoverEventHandler = l.listen(this.obj, \"mouseover\", this.gentleFirstReceiptNotifHover.bind(this));\n };\n };\n r(t.prototype, {\n FADE_AWAY_DURATION: 2500,\n X_OUT_DURATION: 100,\n X_OUT_DURATION_SHORT: 2,\n GENTLE_FRUI_MIN_HOVER_DURATION: 500,\n GENTLE_FRUI_FADE_DURATION_FAST: 200,\n GENTLE_FRUI_FADE_DURATION_SLOW: 2500,\n GENTLE_FRUI_DELAY_FADE_TIME: 60000,\n xClick: function(event) {\n this._activateX();\n var u = this.xLink.getAttribute(\"data-gt\"), v = (u ? {\n gt: JSON.parse(u)\n } : {\n });\n s(\"xbutton\", this.xLink, event).uai(\"click\");\n q(\"click\", this.xLink, event, null, v);\n return false;\n },\n gentleFirstReceiptNotifHover: function(event) {\n event.stop();\n var u = k.find(this.obj, \".first_receipt_no_button\"), v = j.get(u, \"notif_fr_prompt\");\n n.set(u, v, \"above\", \"center\");\n n.show(u);\n this._gentleFirstReceiptTooltipFadeIn();\n if (!this.gentleFirstReceiptUnhoverEventHandler) {\n this.hoverTime = new Date();\n this.gentleFirstReceiptUnhoverEventHandler = l.listen(document.documentElement, \"mouseover\", this.gentleFirstReceiptNotifUnhover.bind(this));\n }\n ;\n if (!this.gentleFirstReceiptNoClickEventHandler) {\n this.gentleFirstReceiptNoClickEventHandler = l.listen(u, \"click\", this.gentleFirstReceiptNoClick.bind(this));\n };\n },\n gentleFirstReceiptNotifUnhover: function(event) {\n if ((m.byClass(event.getTarget(), \"uiContextualLayer\") || m.byClass(event.getTarget(), \"uiScrollableAreaTrack\"))) {\n return false\n };\n var u = new Date();\n if ((this.hoverTime && ((u - this.hoverTime) < this.GENTLE_FRUI_MIN_HOVER_DURATION))) {\n this.gentleFirstReceiptUnhoverEventHandler.remove();\n this.gentleFirstReceiptUnhoverEventHandler = null;\n this._gentleFirstReceiptTooltipAlreadyFadedIn = false;\n return;\n }\n ;\n this._removeGentleFirstReceiptListeners();\n this._gentleFirstReceiptTooltipFadeAway();\n this._gentleFirstReceiptXButtonFadeAway();\n var v = this;\n setTimeout(function() {\n v._gentleFirstReceiptUIFadeAway();\n }, this.GENTLE_FRUI_DELAY_FADE_TIME);\n this._sendFirstReceiptYesToServer();\n },\n gentleFirstReceiptNoClick: function(event) {\n this._removeGentleFirstReceiptListeners();\n },\n restore: function() {\n if (o.newNotifExist(this.id)) {\n o.resumeInsert(this.id);\n }\n else o.removeNotif(this.id);\n ;\n this._confirmingMsgFadeAway(this.confirmingMsg);\n this._notifMainLinkShowUp(this.mainLink);\n this._buttonShowUp(this.xLink);\n this._adjustContainer(this.obj);\n },\n reset: function() {\n if ((this.userXClicked && !this.userUnsubscribed)) {\n this.userXClicked = false;\n this.restore();\n }\n ;\n },\n onTurnedOff: function() {\n this.userUnsubscribed = true;\n i.hide(this.confirmingMsg);\n this._notifMainLinkShowUp(k.find(this.obj, \".confirmedMsg\"));\n this._adjustContainer(this.obj);\n },\n onUndid: function() {\n this.userXClicked = false;\n this.userUnsubscribed = false;\n this.restore();\n i.show(this.confirmingMsg);\n this._notifMainLinkFadeAway(k.find(this.obj, \".confirmedMsg\"));\n k.remove(k.find(this.obj, \".confirmedMsg\"));\n },\n onMarkedSpam: function() {\n k.remove(k.find(this.obj, \".confirmedMsg\"));\n this._fadeAway(k.find(this.obj, \".spamMsg\"));\n },\n onFirstReceiptYes: function() {\n this._hideFirstReceiptDiv();\n this._fadeAway(k.find(this.obj, \".firstConfirmedMsg\"));\n },\n onFirstReceiptNo: function() {\n this._hideFirstReceiptDiv();\n i.hide(this.confirmingMsg);\n this._activateX();\n new h().setURI(\"/ajax/notifications/negative_req.php\").setData({\n request_type: \"turn_off\",\n notification_id: this.id\n }).send();\n },\n _sendFirstReceiptYesToServer: function() {\n new h().setURI(\"/ajax/notifications/negative_req.php\").setData({\n request_type: \"first_receipt_yes\",\n notification_id: this.id\n }).send();\n },\n _gentleFirstReceiptTooltipFadeIn: function() {\n if (this._gentleFirstReceiptTooltipAlreadyFadedIn) {\n return\n };\n var u = k.find(document.documentElement, \".uiLayer .uiContextualLayer .uiTooltipX\");\n new g(u).from(\"opacity\", \"0\").to(\"opacity\", \"1\").duration(this.GENTLE_FRUI_FADE_DURATION_FAST).go();\n this._gentleFirstReceiptTooltipAlreadyFadedIn = true;\n },\n _gentleFirstReceiptTooltipFadeAway: function() {\n if (!this._gentleFirstReceiptTooltipAlreadyFadedIn) {\n return\n };\n var u = k.find(document.documentElement, \".uiLayer .uiContextualLayer .uiTooltipX\"), v = m.byClass(u, \"uiLayer\"), w = v.cloneNode(true);\n k.insertAfter(v, w);\n new g(w).from(\"opacity\", \"1\").to(\"opacity\", \"0\").duration(this.GENTLE_FRUI_FADE_DURATION_FAST).ondone(function() {\n k.remove(w);\n }).go();\n this._gentleFirstReceiptTooltipAlreadyFadedIn = false;\n },\n _gentleFirstReceiptXButtonFadeAway: function() {\n var u = k.find(this.obj, \".first_receipt_no_button\");\n new g(u).from(\"opacity\", \"1\").to(\"opacity\", \"0\").duration(this.GENTLE_FRUI_FADE_DURATION_FAST).hide().go();\n i.addClass(this.obj, \"show_original_x\");\n },\n _gentleFirstReceiptUIFadeAway: function() {\n var u = this.obj;\n this.new_label = k.find(this.obj, \".notif_new_label\");\n new g(this.new_label).to(\"opacity\", \"0\").duration(this.GENTLE_FRUI_FADE_DURATION_SLOW).ondone(function() {\n i.removeClass(u, \"first_receipt\");\n }).go();\n if (!i.hasClass(this.obj, \"jewelItemNew\")) {\n new g(this.obj).from(\"backgroundColor\", \"#ECEFF5\").to(\"backgroundColor\", \"#FFFFFF\").duration(this.GENTLE_FRUI_FADE_DURATION_SLOW).go();\n };\n },\n _removeGentleFirstReceiptListeners: function() {\n if (this.gentleFirstReceiptHoverEventHandler) {\n this.gentleFirstReceiptHoverEventHandler.remove();\n };\n if (this.gentleFirstReceiptUnhoverEventHandler) {\n this.gentleFirstReceiptUnhoverEventHandler.remove();\n };\n if (this.gentleFirstReceiptNoClickEventHandler) {\n this.gentleFirstReceiptNoClickEventHandler.remove();\n };\n },\n _activateX: function() {\n i.addClass(this.obj, \"forPushSafety\");\n this.userXClicked = true;\n o.userXClick(this.id);\n this._notifMainLinkFadeAway(this.mainLink);\n this._buttonFadeAway(this.xLink);\n if (i.shown(this.confirmingMsg)) {\n this._confirmingMsgShowUp(this.confirmingMsg);\n };\n this._adjustContainer(this.obj);\n },\n _hideFirstReceiptDiv: function() {\n i.removeClass(this.obj, \"first_receipt\");\n i.hide(k.find(this.obj, \".first_receipt_div\"));\n },\n _fadeAway: function(u) {\n new g(u).from(\"backgroundColor\", \"#FFF9D7\").to(\"backgroundColor\", \"#FFFFFF\").duration(this.FADE_AWAY_DURATION).checkpoint().to(\"opacity\", \"0\").blind().duration(this.X_OUT_DURATION).checkpoint().to(\"height\", \"0px\").to(\"paddingTop\", \"0px\").to(\"paddingBottom\", \"0px\").blind().hide().duration(this.X_OUT_DURATION).go();\n },\n _adjustContainer: function(u) {\n new g(u).by(\"height\", \"0px\").duration(this.X_OUT_DURATION).checkpoint().by(\"height\", \"0px\").duration(this.X_OUT_DURATION_SHORT).checkpoint().to(\"height\", \"auto\").duration(this.X_OUT_DURATION).go();\n },\n _notifMainLinkShowUp: function(u) {\n new g(u).duration(this.X_OUT_DURATION).checkpoint().to(\"height\", \"auto\").to(\"paddingTop\", \"4px\").to(\"paddingBottom\", \"4px\").blind().show().duration(this.X_OUT_DURATION_SHORT).checkpoint().to(\"opacity\", \"1\").blind().duration(this.X_OUT_DURATION).go();\n },\n _confirmingMsgShowUp: function(u) {\n new g(u).duration(this.X_OUT_DURATION).checkpoint().to(\"height\", \"auto\").to(\"paddingTop\", \"10px\").to(\"paddingBottom\", \"10px\").blind().show().duration(this.X_OUT_DURATION_SHORT).checkpoint().to(\"opacity\", \"1\").blind().duration(this.X_OUT_DURATION).go();\n },\n _notifMainLinkFadeAway: function(u) {\n new g(u).to(\"opacity\", \"0\").blind().duration(this.X_OUT_DURATION).checkpoint().to(\"height\", \"0px\").to(\"paddingTop\", \"0px\").to(\"paddingBottom\", \"0px\").blind().hide().duration(this.X_OUT_DURATION_SHORT).go();\n },\n _confirmingMsgFadeAway: function(u) {\n new g(u).to(\"opacity\", \"0\").blind().duration(this.X_OUT_DURATION).checkpoint().to(\"height\", \"0px\").to(\"paddingTop\", \"0px\").to(\"paddingBottom\", \"0px\").blind().duration(this.X_OUT_DURATION_SHORT).go();\n },\n _buttonShowUp: function(u) {\n new g(u).duration(this.X_OUT_DURATION).checkpoint().show().duration(this.X_OUT_DURATION_SHORT).checkpoint().to(\"opacity\", \"1\").blind().duration(this.X_OUT_DURATION).go();\n },\n _buttonFadeAway: function(u) {\n new g(u).to(\"opacity\", \"0\").blind().duration(this.X_OUT_DURATION).checkpoint().hide().duration(this.X_OUT_DURATION_SHORT).go();\n }\n });\n e.exports = t;\n});\n__d(\"NotificationCounter\", [\"Arbiter\",\"DocumentTitle\",\"JSLogger\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"DocumentTitle\"), i = b(\"JSLogger\"), j = {\n messages: 0,\n notifications: 0,\n requests: 0\n }, k = {\n init: function(l) {\n g.subscribe(\"update_title\", this._handleUpdate.bind(this));\n g.subscribe(\"jewel/count-updated\", this._handleCountUpdate.bind(this));\n },\n getCount: function() {\n var l = 0;\n for (var m in j) {\n var n = Number(j[m]);\n if (((typeof j[m] == \"string\") && isNaN(n))) {\n return j[m]\n };\n if ((isNaN(n) || (n < 0))) {\n i.create(\"jewels\").error(\"bad_count\", {\n jewel: m,\n count: j[m]\n });\n continue;\n }\n ;\n l += n;\n };\n return l;\n },\n updateTitle: function() {\n var l = this.getCount(), m = h.get();\n m = (l ? (((\"(\" + l) + \") \") + m) : m);\n h.set(m, true);\n },\n _handleCountUpdate: function(l, m) {\n j[m.jewel] = m.count;\n this.updateTitle();\n },\n _handleUpdate: function(l, m) {\n this.updateTitle();\n }\n };\n e.exports = k;\n});\n__d(\"NotificationList\", [\"Animation\",\"ArbiterMixin\",\"CSS\",\"DOM\",\"DoublyLinkedListMap\",\"HTML\",\"NotificationURI\",\"Tooltip\",\"Event\",\"$\",\"copyProperties\",\"cx\",\"csx\",\"ge\",\"isEmpty\",\"tx\",\"hasArrayNature\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"ArbiterMixin\"), i = b(\"CSS\"), j = b(\"DOM\"), k = b(\"DoublyLinkedListMap\"), l = b(\"HTML\"), m = b(\"NotificationURI\"), n = b(\"Tooltip\"), o = b(\"Event\"), p = b(\"$\"), q = b(\"copyProperties\"), r = b(\"cx\"), s = b(\"csx\"), t = b(\"ge\"), u = b(\"isEmpty\"), v = b(\"tx\"), w = b(\"hasArrayNature\"), x = \"0\", y = \"1\", z = \"2\";\n function aa(da) {\n return ((da == y) || (da == z));\n };\n function ba(da) {\n return (da == y);\n };\n function ca(da, ea) {\n this._list = new k();\n this._filter_func = null;\n this.unseenCount = 0;\n this.contentRoot = da;\n this.noItemsElement = null;\n this.ITEM_TAG = \"li\";\n this.ITEM_CLASS = \"notification\";\n this.NO_ITEMS_ID = \"jewelNoNotifications\";\n this.NO_ITEMS_CLASS = \"empty\";\n this.compare = (ea.compare || this.compare);\n this.shouldBlockAnimation = (ea.shouldBlockAnimation || null);\n this.unseenVsUnread = (ea.unseenVsUnread || false);\n this.markReadSignalServer = ea.markReadSignalServer;\n this.animations = {\n };\n };\n q(ca, {\n ITEM_UNREAD_CLASS: \"jewelItemNew\",\n MARK_READ_TYPE: \"mark_read\",\n UNREAD_COUNT_CHANGE_TYPE: \"unread_count_change\",\n INSERTION_TYPE: \"insert\",\n REMOVAL_TYPE: \"remove\",\n getIdFromDom: function(da) {\n return da.getAttribute(\"id\").replace(\"notification_\", \"\");\n },\n localizeUrls: function(da) {\n j.scry(da, \"a\").forEach(function(ea) {\n ea.href = m.localize(ea.href);\n });\n }\n });\n q(ca.prototype, h, {\n FADE_DURATION: 250,\n RESIZE_DURATION: 200,\n _getField: function(da, ea) {\n var fa = this._list.get(da);\n return (fa && fa[ea]);\n },\n getDomObj: function(da) {\n return this._getField(da, \"obj\");\n },\n fromDom: function() {\n var da = ((this.ITEM_TAG + \".\") + this.ITEM_CLASS), ea = j.scry(this.contentRoot, da);\n for (var fa = 0; (fa < ea.length); ++fa) {\n var ga = ea[fa], ha = ca.getIdFromDom(ga);\n this.insert(ha, ga.getAttribute(\"data-notiftime\"), null);\n };\n },\n compare: function(da, ea) {\n return ((da.time < ea.time) || (((da.time === ea.time) && (da.id < ea.id))));\n },\n insert: function(da, ea, fa, ga, ha, ia) {\n var ja = y, ka = 0, la = this._list.exists(da), ma = (ia && this._list.exists(ia)), na = null, oa;\n if ((la || ma)) {\n if (!((ga && fa))) {\n return false;\n }\n else {\n if (this._filter_func) {\n oa = {\n notif_id: da,\n notif_time: ea,\n notif_markup: fa,\n replace: ga,\n ignoreUnread: ha,\n notif_alt_id: ia\n };\n if (this._filter_func(oa)) {\n return false\n };\n }\n ;\n ja = this._getField(da, \"readness\");\n ka = this._getField(da, \"time\");\n if ((ka > ea)) {\n return false\n };\n na = (la ? da : ia);\n this._remove(na);\n }\n \n };\n var pa = (((fa && l(fa).getRootNode())) || p((\"notification_\" + da))), qa = Math.max(ea, ka), ra = pa.getAttribute(\"data-readness\");\n if ((!this.unseenVsUnread && (z == ra))) {\n ra = x;\n };\n oa = {\n id: da,\n obj: pa,\n time: qa,\n readness: ra,\n app_id: pa.getAttribute(\"data-appid\")\n };\n this._insert(oa);\n this._setUpReadStateToggle(da, pa);\n ca.localizeUrls(pa);\n (this.noItemsElement && i.hide(this.noItemsElement));\n if (ba(ra)) {\n ((ha && !aa(ja)) && this.markRead([da,]));\n this.unseenCount = this.getUnseenIds().length;\n this.inform(ca.UNREAD_COUNT_CHANGE_TYPE);\n }\n ;\n var sa = ((!na || (ka < qa)) || (((ra && !ja) && !ha)));\n this.inform(ca.INSERTION_TYPE, {\n id: da,\n is_new: sa,\n obj: pa,\n replaced_id: na,\n time: qa\n });\n return true;\n },\n _setReadStateToggleReadness: function(da, ea) {\n var fa;\n if (ea) {\n fa = (this.unseenVsUnread ? \"Mark as Read\" : \"Unread\");\n }\n else fa = \"Read\";\n ;\n if (!((ea && this.unseenVsUnread))) {\n i.removeClass(da, \"-cx-PRIVATE-fbReadToggle__active\");\n i.addClass(da, \"-cx-PRIVATE-fbReadToggle__inactive\");\n }\n ;\n n.set(da, fa, \"above\", \"center\");\n },\n _setUpReadStateToggle: function(da, ea) {\n var fa = this.isUnreadId(da), ga = j.scry(ea, \".-cx-PRIVATE-fbReadToggle__active\")[0];\n if (!ga) {\n return\n };\n this._setReadStateToggleReadness(ga, fa);\n var ha = function(event) {\n if ((this.unseenVsUnread && this.isUnreadId(da))) {\n this.markReadSignalServer([da,]);\n };\n o.kill(event);\n return false;\n };\n o.listen(ga, \"click\", ha.bind(this));\n },\n showNoNotifications: function() {\n if ((null == this.noItemsElement)) {\n this.noItemsElement = t(this.NO_ITEMS_ID);\n };\n if ((null == this.noItemsElement)) {\n this.noItemsElement = j.create(this.ITEM_TAG, {\n id: this.NO_ITEMS_ID,\n className: this.NO_ITEMS_CLASS\n }, \"No new notifications\");\n j.appendContent(this.contentRoot, this.noItemsElement);\n }\n ;\n i.show(this.noItemsElement);\n },\n _insert: function(da) {\n this._list.remove(da.id);\n var ea = null;\n this._list.find(function(ga) {\n var ha = this.compare(ga, da);\n (!ha && (ea = ga.id));\n return ha;\n }.bind(this));\n var fa = this.getDomObj(ea);\n if (fa) {\n this._list.insertAfter(da.id, da, ea);\n j.insertAfter(fa, da.obj);\n }\n else {\n this._list.prepend(da.id, da);\n j.prependContent(this.contentRoot, da.obj);\n }\n ;\n },\n _remove: function(da) {\n var ea = this._getField(da, \"obj\");\n if (!ea) {\n return false\n };\n this.inform(ca.REMOVAL_TYPE, {\n id: da\n });\n this._list.remove(da);\n j.remove(ea);\n (this.isEmpty() && this.showNoNotifications());\n return true;\n },\n getUnreadIds: function() {\n return this._list.reduce(function(da, ea) {\n (aa(da.readness) && ea.push(da.id));\n return ea;\n }, []);\n },\n getUnseenIds: function() {\n return this._list.reduce(function(da, ea) {\n (ba(da.readness) && ea.push(da.id));\n return ea;\n }, []);\n },\n getIds: function() {\n return this._list.reduce(function(da, ea) {\n ea.push(da.id);\n return ea;\n }, []);\n },\n isUnreadId: function(da) {\n var ea = this.getDomObj(da);\n return (aa(this._getField(da, \"readness\")) || ((ea && i.hasClass(ea, ca.ITEM_UNREAD_CLASS))));\n },\n isUnseenId: function(da) {\n return ba(this._getField(da, \"readness\"));\n },\n markRead: function(da, ea) {\n da = (da ? da.filter(this.isUnreadId.bind(this)) : this.getUnreadIds());\n var fa = false;\n for (var ga = 0; (ga < da.length); ga++) {\n var ha = this._list.get(da[ga]);\n if (ha) {\n if (this._setReadness(da[ga], x)) {\n fa = true;\n };\n if (ea) {\n this._markReadInDom(da[ga], ha.obj);\n }\n else this.animateMarkRead(ha.obj);\n ;\n }\n ;\n };\n if (fa) {\n this.unseenCount = this.getUnseenIds().length;\n this.inform(ca.UNREAD_COUNT_CHANGE_TYPE);\n }\n ;\n },\n markSeen: function(da) {\n if (!w(da)) {\n return\n };\n if (!this.unseenVsUnread) {\n this.markRead(da);\n return;\n }\n ;\n da = da.filter(this.isUnseenId.bind(this));\n var ea = false;\n for (var fa = 0; (fa < da.length); fa++) {\n if (this._setReadness(da[fa], z)) {\n ea = true;\n };\n };\n if (ea) {\n this.unseenCount = this.getUnseenIds().length;\n this.inform(ca.UNREAD_COUNT_CHANGE_TYPE);\n }\n ;\n },\n _setReadness: function(da, ea) {\n var fa = this._list.get(da);\n if ((!fa || (fa.readness == ea))) {\n return false\n };\n if (((fa.readness == x) && (ea == z))) {\n return false\n };\n fa.readness = ea;\n fa.obj.setAttribute(\"data-readness\", ea);\n return true;\n },\n _markReadInDom: function(da, ea) {\n if (!this.isUnreadId(da)) {\n return\n };\n var fa = p(ea);\n if (fa) {\n this.stopAnimation(da);\n i.removeClass(fa, ca.ITEM_UNREAD_CLASS);\n var ga = j.scry(fa, \".read_toggle\")[0];\n (ga && this._setReadStateToggleReadness(ga, false));\n }\n ;\n },\n animateMarkRead: function(da) {\n if (!i.hasClass(da, ca.ITEM_UNREAD_CLASS)) {\n return\n };\n var ea = ca.getIdFromDom(da), fa = this._markReadInDom.bind(this, ea, da);\n if (i.hasClass(da, \"fbJewelBeep\")) {\n fa();\n return;\n }\n ;\n if ((this.shouldBlockAnimation && this.shouldBlockAnimation(da))) {\n return\n };\n fa.defer(10000);\n },\n stopAnimation: function(da) {\n ((da in this.animations) && this.animations[da].stop());\n delete this.animations[da];\n return true;\n },\n insertMany: function(da, ea) {\n if (((\"object\" == typeof da) && !u(da))) {\n for (var fa in da) {\n var ga = da[fa];\n this.insert(fa, ga.time, ga.markup, true, ea, (ga.alt_id || null));\n };\n (this.noItemsElement && i.hide(this.noItemsElement));\n }\n else (this.isEmpty() && this.showNoNotifications());\n ;\n },\n isEmpty: function() {\n return this._list.isEmpty();\n },\n getEarliestNotifTime: function() {\n return (this._list.isEmpty() ? 0 : Math.min.apply(null, this.getIds().map(function(da) {\n return this._getField(da, \"time\");\n }.bind(this))));\n },\n setFilterFn: function(da) {\n this._filter_func = da;\n },\n toggleNotifsSimilarTo: function(da, ea, fa) {\n var ga = this._getField(da, \"app_id\");\n if (ga) {\n var ha = this.getIds();\n for (var ia = 0; (ia < ha.length); ++ia) {\n if ((ga == this._getField(ha[ia], \"app_id\"))) {\n var ja = this.getDomObj(ha[ia]);\n if ((da != ha[ia])) {\n (ea ? this._hideWithAnimation(ja) : this._showWithAnimation(ja));\n };\n var ka = j.scry(ja, \".first_receipt_div\");\n if ((ka.length == 1)) {\n if (fa) {\n i.hide(ka[0]);\n i.removeClass(ja, \"first_receipt\");\n }\n else {\n i.show(ka[0]);\n i.addClass(ja, \"first_receipt\");\n }\n \n };\n }\n ;\n };\n }\n ;\n },\n _hideWithAnimation: function(da) {\n new g(da).to(\"opacity\", \"0\").blind().duration(this.FADE_DURATION).checkpoint().to(\"height\", \"0px\").to(\"paddingTop\", \"0px\").to(\"paddingBottom\", \"0px\").blind().hide().duration(this.RESIZE_DURATION).go();\n },\n _showWithAnimation: function(da) {\n new g(da).to(\"height\", \"auto\").to(\"paddingTop\", \"auto\").to(\"paddingBottom\", \"auto\").blind().show().duration(this.RESIZE_DURATION).checkpoint().to(\"opacity\", \"1\").blind().duration(this.FADE_DURATION).go();\n }\n });\n e.exports = ca;\n});\n__d(\"Notifications\", [\"Animation\",\"Arbiter\",\"AsyncRequest\",\"AsyncSignal\",\"Bootloader\",\"ChannelConstants\",\"CSS\",\"DOM\",\"Env\",\"Event\",\"JSLogger\",\"NegativeNotif\",\"NotificationCounter\",\"NotificationList\",\"NotifXList\",\"Parent\",\"Poller\",\"ScrollableArea\",\"Style\",\"SystemEvents\",\"Toggler\",\"URI\",\"UserActivity\",\"UserNoOp\",\"Vector\",\"$\",\"copyProperties\",\"emptyFunction\",\"ge\",\"hasArrayNature\",\"isEmpty\",\"shield\",\"throttle\",\"userAction\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"Arbiter\"), i = b(\"AsyncRequest\"), j = b(\"AsyncSignal\"), k = b(\"Bootloader\"), l = b(\"ChannelConstants\"), m = b(\"CSS\"), n = b(\"DOM\"), o = b(\"Env\"), p = b(\"Event\"), q = b(\"JSLogger\"), r = b(\"NegativeNotif\"), s = b(\"NotificationCounter\"), t = b(\"NotificationList\"), u = b(\"NotifXList\"), v = b(\"Parent\"), w = b(\"Poller\"), x = b(\"ScrollableArea\"), y = b(\"Style\"), z = b(\"SystemEvents\"), aa = b(\"Toggler\"), ba = b(\"URI\"), ca = b(\"UserActivity\"), da = b(\"UserNoOp\"), ea = b(\"Vector\"), fa = b(\"$\"), ga = b(\"copyProperties\"), ha = b(\"emptyFunction\"), ia = b(\"ge\"), ja = b(\"hasArrayNature\"), ka = b(\"isEmpty\"), la = b(\"shield\"), ma = b(\"throttle\"), na = b(\"userAction\");\n function oa(pa) {\n this.updateTime = (pa.updateTime || Date.now());\n this.update_period = (pa.updatePeriod || 60000);\n this.latest_notif_time = (pa.latestNotif || 0);\n this.latest_read_notif_time = (pa.latestReadNotif || 0);\n this.cache_version = (pa.cacheVersion || 0);\n this.notifReceivedType = (pa.notifReceivedType || \"notification\");\n this.wrapperID = (pa.wrapperID || \"notificationsWrapper\");\n this.contentID = (pa.contentID || \"jewelNotifs\");\n this.shouldLogImpressions = (pa.shouldLogImpressions || false);\n this.allowDesktopNotifications = (pa.allowDesktopNotifications || false);\n this.logAutoShutOffImpression = true;\n this.useInfiniteScroll = (pa.useInfiniteScroll || false);\n this.unseenVsUnread = (pa.unseenVsUnread || false);\n this.scrollableAreaNode = null;\n this.firstReceiptMap = {\n };\n this.user = o.user;\n this.queuedNotifications = [];\n this.timeElement = \"small.time\";\n this.ua = new da();\n this._init();\n };\n ga(oa.prototype, {\n TIME_TRAVEL: \"time_travel\",\n ONLINE: \"online\",\n SCROLL_OFF_TINY: \"scroll_off_tiny\",\n INACTIVE_REFRESH: \"inactive_refresh\",\n _init: function() {\n this.cookieName = (\"notifications_\" + this.user);\n this.updateCheckCount = 0;\n this.fetchListeners = [];\n this.currentFetchRequest = null;\n this.wrapper = ia(this.wrapperID);\n this.content = ia(this.contentID);\n this.jewelFlyout = ia(\"fbNotificationsFlyout\");\n this.footer = n.find(this.jewelFlyout, \".jewelFooter\");\n this.loadingIndicator = ia((this.contentID + \"_loading_indicator\"));\n this.NOTIF_JEWEL_REF = \"notif_jewel\";\n this.notifLogger = q.create(\"notifications\");\n s.init();\n this.alertList = new t(this.content, this._getListParams());\n this._updateCount();\n ((a.MinNotifications && a.MinNotifications.fetchSent()) && (this.fetch = ha));\n h.subscribe(l.getArbiterType(this.notifReceivedType), this._handleNotificationMsg.bind(this));\n h.subscribe(l.getArbiterType(\"notifications_read\"), this._handleNotificationsReadMsg.bind(this));\n h.subscribe(l.getArbiterType(\"notifications_seen\"), this._handleNotificationsSeenMsg.bind(this));\n h.subscribe(\"jewel/resize\", la(this._hideOverflow, this));\n this.alertList.subscribe(t.UNREAD_COUNT_CHANGE_TYPE, this._updateCount.bind(this));\n this._poller = new w({\n interval: this.update_period,\n setupRequest: this._update.bind(this),\n clearOnQuicklingEvents: false,\n dontStart: true\n });\n this._poller.start.bind(this._poller).defer(this.update_period, false);\n if (this.wrapper) {\n this.countSpan = n.find(this.wrapper, \"span.jewelCount span\");\n };\n this.initializeEvents();\n this.fromDom();\n if (this.useInfiniteScroll) {\n this._autoLoadNotifIndex = 1;\n this._truncate = false;\n this.alertList.subscribe(t.INSERTION_TYPE, this._handleInsert.bind(this));\n }\n ;\n },\n _getListParams: function() {\n return {\n shouldBlockAnimation: function(pa) {\n return this.isNotifJewelOpen();\n }.bind(this),\n unseenVsUnread: this.unseenVsUnread,\n markReadSignalServer: this.markRead.bind(this).curry(true)\n };\n },\n fromDom: function() {\n this.alertList.fromDom();\n (((a.MinNotifications && a.MinNotifications.fetched()) && this.alertList.isEmpty()) && this.alertList.showNoNotifications());\n },\n initializeEvents: function() {\n var pa = this.alertList.ITEM_TAG, qa = null;\n p.listen(this.content, {\n mouseover: function(event) {\n var ta = event.getTarget();\n qa = v.byTag(ta, pa);\n if ((qa && (ta != qa))) {\n if (v.byClass(qa, \"notifNegativeBase\")) {\n m.addClass(qa, \"notifHover\");\n }\n else m.addClass(qa, \"selected\");\n \n };\n },\n mouseout: function(event) {\n (qa && m.removeClass(qa, \"selected\"));\n (qa && m.removeClass(qa, \"notifHover\"));\n qa = null;\n },\n mousedown: this.onContentMouseDown.bind(this)\n });\n p.listen(this.wrapper, \"mouseover\", this.onMouseOver.bind(this));\n aa.listen(\"show\", this.wrapper, this.onClick.bind(this));\n aa.listen(\"hide\", this.wrapper, this.onHide.bind(this));\n (this.shouldLogImpressions && aa.listen(\"show\", this.wrapper, this._logImpression.bind(this)));\n var ra = function(ta) {\n this._poller.request();\n this.notifLogger.bump(ta);\n }.bind(this);\n z.subscribe(z.TIME_TRAVEL, ra.curry(this.TIME_TRAVEL));\n z.subscribe(z.ONLINE, function(ta, ua) {\n (ua && ra(this.ONLINE));\n });\n var sa = ((1000 * 60) * 60);\n ca.subscribe(function(ta, ua) {\n (((ua.idleness > sa)) && ra(this.INACTIVE_REFRESH));\n }.bind(this));\n this.negativeNotifs = {\n };\n this._initNotifNegativeFeedback();\n if (this.useInfiniteScroll) {\n this._setupScroll();\n this._initializeScrollEvents();\n this._updateScrollDataStructures.bind(this).defer();\n this._hideOverflow();\n }\n ;\n },\n _setupScroll: function() {\n this._scrollArea = n.scry(this.jewelFlyout, \"div.uiScrollableAreaWrap\")[0];\n this._morePagerLink = n.find(this.jewelFlyout, \".notifMorePager a\");\n this._morePager = (v.byClass(this._morePagerLink, \"notifMorePager\") || this._morePagerLink);\n this._infiniteScrollNotif = null;\n this.afterFirstFetch = false;\n this.animate = false;\n if ((a.MinNotifications && a.MinNotifications.fetched())) {\n this.afterFirstFetch = true;\n m.show(this._morePager);\n }\n ;\n },\n _initializeScrollEvents: function() {\n p.listen(this._scrollArea, \"scroll\", ma(this._handleScroll.bind(this)));\n p.listen(this._morePagerLink, \"success\", function(pa) {\n this.fetchHandler(pa.getData().response);\n }.bind(this));\n },\n _updateScrollDataStructures: function() {\n var pa = this.alertList.getIds(), qa = Math.max(0, (pa.length - this._autoLoadNotifIndex));\n this._infiniteScrollNotif = this.alertList.getDomObj(pa[qa]);\n this._annotateMorePagerURI();\n },\n _annotateMorePagerURI: function() {\n this._morePagerLink.setAttribute(\"ajaxify\", new ba(this._morePagerLink.getAttribute(\"ajaxify\")).addQueryData({\n earliest_time: this.alertList.getEarliestNotifTime()\n }));\n },\n onContentMouseDown: function(event) {\n var pa = v.byTag(event.getTarget(), this.alertList.ITEM_TAG), qa = (pa && t.getIdFromDom(pa));\n if ((qa && this.alertList.isUnreadId(qa))) {\n this.markRead(true, [qa,]);\n };\n },\n onMouseOver: function(event) {\n if (m.hasClass(event.getTarget(), \"jewelButton\")) {\n this.ua = na(\"notifs\", event.target, event, {\n mode: \"DEDUP\"\n }).uai(\"mouseover\", \"jewel\").add_event(\"hover\");\n };\n this.fetch();\n },\n onClick: function() {\n ((a.ArbiterMonitor && (this.fetch != ha)) && h.registerCallback(ha, [\"notifs/fetched\",]));\n this.ua.add_event(\"show\");\n this.fetch();\n this.markRead(true);\n this._hideOverflow();\n if (this.scrollableAreaNode) {\n var pa = x.getInstance(this.scrollableAreaNode);\n (pa && pa.poke());\n }\n ;\n },\n onHide: function() {\n this.animate = false;\n (this.animation && this.animation.stop());\n this.ua.add_event(\"hide\");\n this.markRead(true);\n this._dequeueNotifications();\n },\n _dequeueNotifications: function() {\n this.queuedNotifications.forEach(function(pa) {\n this._displayNotification(pa.type, pa.data);\n }, this);\n this.queuedNotifications.length = 0;\n },\n _handleScroll: function() {\n if (this._checkInfiniteScroll()) {\n this._autoLoadNotifIndex = 5;\n this._sendFetchRequest(this._morePager);\n }\n ;\n },\n _handleInsert: function(pa, qa) {\n if (qa.is_new) {\n this._newDataFromInsert = true;\n };\n this._updateScrollDataStructures();\n },\n _checkInfiniteScroll: function() {\n if ((this._infiniteScrollNotif && this._scrollArea)) {\n var pa = ea.getElementPosition(this._infiniteScrollNotif).y, qa = (ea.getElementPosition(this._scrollArea).y + ea.getElementDimensions(this._scrollArea).y);\n return (pa < qa);\n }\n ;\n return false;\n },\n _initNotifNegativeFeedback: function() {\n u.init(this);\n this.alertList.setFilterFn(u.filterStoreClicked);\n aa.listen(\"hide\", fa(this.wrapperID), function() {\n for (var pa in this.negativeNotifs) {\n if (pa) {\n ((this.negativeNotifs[pa] instanceof r) && this.negativeNotifs[pa].reset());\n };\n };\n }.bind(this));\n h.subscribe(\"notif/negativeCancel\", function(pa, qa) {\n (this.negativeNotifs[qa.id] && this.negativeNotifs[qa.id].restore());\n }.bind(this));\n h.subscribe(\"notif/negativeConfirmed\", function(pa, qa) {\n (this.negativeNotifs[qa.id] && this.negativeNotifs[qa.id].onTurnedOff());\n this.alertList.toggleNotifsSimilarTo(qa.id, true, true);\n this._hideOverflow();\n this._handleScroll();\n }.bind(this));\n h.subscribe(\"notif/negativeUndid\", function(pa, qa) {\n (this.negativeNotifs[qa.id] && this.negativeNotifs[qa.id].onUndid());\n this.alertList.toggleNotifsSimilarTo(qa.id, false, true);\n this._hideOverflow();\n }.bind(this));\n h.subscribe(\"notif/negativeMarkedSpam\", function(pa, qa) {\n (this.negativeNotifs[qa.id] && this.negativeNotifs[qa.id].onMarkedSpam());\n }.bind(this));\n h.subscribe(\"notif/negativeFirstReceiptYes\", function(pa, qa) {\n (this.negativeNotifs[qa.id] && this.negativeNotifs[qa.id].onFirstReceiptYes());\n this.alertList.toggleNotifsSimilarTo(qa.id, false, true);\n }.bind(this));\n h.subscribe(\"notif/negativeFirstReceiptNo\", function(pa, qa) {\n (this.negativeNotifs[qa.id] && this.negativeNotifs[qa.id].onFirstReceiptNo());\n this.alertList.toggleNotifsSimilarTo(qa.id, false, true);\n }.bind(this));\n this.alertList.subscribe(t.INSERTION_TYPE, function(pa, qa) {\n this._updateFirstReceipt(qa);\n var ra = n.scry(qa.obj, \".notif_x\");\n if ((ra.length == 1)) {\n this.negativeNotifs[qa.id] = new r(this, qa);\n };\n }.bind(this));\n },\n _sendIDs: function(pa, qa, ra) {\n var sa = (ra || {\n });\n for (var ta = 0; (ta < pa.length); ++ta) {\n sa[((\"alert_ids[\" + ta) + \"]\")] = pa[ta];;\n };\n new j(ba(qa).getQualifiedURI().toString(), sa).send();\n },\n _waitForFetch: function(pa) {\n return (this.currentFetchRequest && this.fetchListeners.push(pa.bind(this)));\n },\n _logImpression: function() {\n var pa = this.alertList.getIds();\n if (((pa.length === 0) && this._waitForFetch(this._logImpression))) {\n return\n };\n this.logImpressionIds(pa, this.NOTIF_JEWEL_REF);\n },\n logImpressionIds: function(pa, qa) {\n (this.shouldLogImpressions && this._sendIDs(pa, \"/ajax/notifications/impression.php\", {\n ref: qa\n }));\n },\n markRead: function(pa, qa) {\n var ra = !ja(qa);\n qa = (ra ? this.alertList.getUnseenIds() : qa.filter(this.alertList.isUnreadId.bind(this.alertList)));\n if (qa.length) {\n (pa && this._sendIDs(qa, \"/ajax/notifications/mark_read.php\", {\n seen: (ra ? 1 : 0)\n }));\n if ((ia(\"jewelNoticeMessage\") && this.logAutoShutOffImpression)) {\n new j(\"/ajax/notifications/auto_shutoff_seen.php\").send();\n this.logAutoShutOffImpression = false;\n }\n ;\n var sa = pa;\n (ra ? this.alertList.markSeen(qa) : this.alertList.markRead(qa, sa));\n }\n ;\n (ra && this._waitForFetch(this.markRead.bind(this, pa)));\n },\n markAllRead: function() {\n var pa = this.alertList.getUnreadIds();\n this.markRead(true, pa);\n },\n _updateErrorHandler: function(pa) {\n \n },\n _updateURI: \"/ajax/presence/update.php\",\n _update: function(pa) {\n pa.setHandler(this._handleUpdate.bind(this)).setOption(\"suppressErrorAlerts\", true).setErrorHandler(this._updateErrorHandler.bind(this)).setData({\n notif_latest: this.latest_notif_time,\n notif_latest_read: this.latest_read_notif_time\n }).setURI(this._updateURI).setAllowCrossPageTransition(true);\n },\n _handleUpdate: function(pa) {\n var qa = pa.payload.notifications;\n if (!qa.no_change) {\n this.updateTime = pa.payload.time;\n this.latest_notif_time = qa.latest_notif;\n this.latest_read_notif_time = qa.latest_read_notif;\n this._updateDisplay();\n this.alertList.insertMany(qa.notifications);\n }\n ;\n },\n _updateDisplay: function() {\n if (!this.content) {\n return\n };\n this._updateCount();\n },\n _updateCount: function() {\n h.inform(\"jewel/count-updated\", {\n jewel: \"notifications\",\n count: this.alertList.unseenCount\n }, h.BEHAVIOR_STATE);\n this._hideOverflow();\n },\n fetch: function(pa) {\n this._sendFetchRequest(pa);\n },\n _getFetchQueryData: function() {\n var pa = {\n time: this.latest_notif_time,\n user: this.user,\n version: this.cache_version,\n locale: o.locale\n };\n if (this.useInfiniteScroll) {\n pa.earliest_time = this.alertList.getEarliestNotifTime();\n };\n return pa;\n },\n _sendFetchRequest: function(pa) {\n if (this.useInfiniteScroll) {\n this._infiniteScrollNotif = null;\n this._newDataFromInsert = false;\n this._truncate = true;\n }\n ;\n var qa = ba(\"/ajax/notifications/get.php\"), ra = (pa || this.loadingIndicator);\n if (this.currentFetchRequest) {\n return true\n };\n this.ua.add_event(\"fetch\");\n qa.setQueryData(this._getFetchQueryData());\n this.currentFetchRequest = new i().setURI(qa).setStatusElement(ra).setMethod(\"GET\").setReadOnly(true).setTimeoutHandler(30000, this.fetchErrorHandler.bind(this)).setHandler(this.fetchHandler.bind(this)).setErrorHandler(this.fetchErrorHandler.bind(this)).setAllowCrossPageTransition(true);\n (!this.currentFetchRequest.send() && this.fetchErrorHandler());\n return true;\n },\n fetchErrorHandler: function(pa) {\n this.currentFetchRequest = null;\n this.ua.add_event(\"fetch_error\");\n (this.loadingIndicator && m.hide(this.loadingIndicator));\n (this.useInfiniteScroll && this._updateScrollDataStructures());\n },\n fetchHandler: function(pa) {\n this.ua.add_event(\"fetch_success\");\n var qa = pa.getPayload();\n this.alertList.insertMany(qa.notifications, true);\n (this.loadingIndicator && m.hide(this.loadingIndicator));\n this.loadingIndicator = null;\n this.currentFetchRequest = null;\n this.fetch = ha;\n if (this.fetchListeners) {\n for (var ra = 0; (ra < this.fetchListeners.length); ra++) {\n this.fetchListeners[ra]();;\n };\n this.fetchListeners = [];\n }\n ;\n (a.ArbiterMonitor && h.inform(\"notifs/fetched\", \"\", h.BEHAVIOR_STATE));\n var sa = qa.generated, ta = Math.round((Date.now() / 1000));\n if (((ta - sa) > 15)) {\n sa = ta;\n };\n k.loadModules([\"LiveTimer\",], function(ua) {\n ua.restart(sa);\n ua.startLoop(0);\n });\n if (this.useInfiniteScroll) {\n if ((ka(qa.notifications) || !this._newDataFromInsert)) {\n this._noMoreNotifications();\n }\n else m.show(this._morePager);\n ;\n this._updateScrollDataStructures();\n if ((this.isNotifJewelOpen() && this.afterFirstFetch)) {\n this.animate = true;\n };\n this.afterFirstFetch = true;\n }\n ;\n this._hideOverflow();\n },\n _noMoreNotifications: function() {\n m.hide(this._morePager);\n this.useInfiniteScroll = false;\n },\n _mergeNotification: function(pa, qa, ra, sa) {\n var ta = !this.alertList.isUnreadId(pa);\n this.alertList.insert(pa, qa, ra, true, null, (sa || null));\n this.latest_notif_time = 0;\n if (ta) {\n this._updateCount();\n };\n var ua = this.alertList.getDomObj(pa);\n if (ua) {\n k.loadModules([\"LiveTimer\",], function(va) {\n va.addTimeStamps(ua);\n });\n };\n },\n _handleNotificationMsg: function(pa, qa) {\n if (this.isNotifJewelOpen()) {\n var ra = {\n type: pa,\n data: qa\n };\n this.queuedNotifications.push(ra);\n }\n else this._displayNotification(pa, qa);\n ;\n },\n _displayNotification: function(pa, qa) {\n var ra = qa.obj;\n if ((typeof this.useDesktopNotifications == \"undefined\")) {\n this.useDesktopNotifications = ((this.allowDesktopNotifications && window.webkitNotifications) && (window.webkitNotifications.checkPermission() === 0));\n };\n if (this.useDesktopNotifications) {\n k.loadModules([\"DesktopNotifications\",], function(sa) {\n sa.addNotification(ra.alert_id);\n });\n };\n if (ra.markup) {\n this._mergeNotification(ra.alert_id, ra.time, ra.markup, (ra.alt_id || null));\n }\n else this._poller.request();\n ;\n },\n _handleNotificationsReadMsg: function(pa, qa) {\n var ra = qa.obj;\n this.markRead(false, ra.alert_ids);\n },\n _handleNotificationsSeenMsg: function(pa, qa) {\n if (!this.unseenVsUnread) {\n this._handleNotificationsReadMsg(pa, qa);\n return;\n }\n ;\n var ra = qa.obj;\n this.alertList.markSeen(ra.alert_ids);\n },\n _hideOverflow: function() {\n if (!this.isNotifJewelOpen()) {\n return\n };\n var pa = n.scry(fa(\"fbNotificationsList\"), \".notification\");\n this.scrollableAreaNode = (this.scrollableAreaNode || n.scry(this.jewelFlyout, \".uiScrollableArea\")[0]);\n var qa = 20, ra = (m.hasClass(document.documentElement, \"tinyViewport\") && !m.hasClass(document.body, \"fixedBody\"));\n if ((!pa.length || ra)) {\n y.set(this.scrollableAreaNode, \"height\", \"100%\");\n this.notifLogger.rate(this.SCROLL_OFF_TINY, ra);\n return;\n }\n ;\n var sa = (this.scrollableAreaNode || pa[0]), ta = (((ea.getViewportDimensions().y - ea.getElementPosition(sa, \"viewport\").y) - ea.getElementDimensions(this.footer).y) - 5), ua = ta, va = 0;\n for (; ((va < pa.length) && (ua > 0)); ++va) {\n if (m.shown(pa[va])) {\n ua -= ea.getElementDimensions(pa[va]).y;\n };\n };\n var wa = 530, xa = Math.min(wa, (ta - Math.max(ua, 0)));\n if (((ua >= 0) && (xa < wa))) {\n if (!this.useInfiniteScroll) {\n xa = \"100%\";\n }\n else {\n if ((this._truncate && (pa.length >= 5))) {\n xa -= qa;\n };\n xa += \"px\";\n }\n ;\n }\n else xa += \"px\";\n ;\n if (((this.useInfiniteScroll && this.animate) && (xa != \"100%\"))) {\n (this.animation && this.animation.stop());\n this.animation = new g(this.scrollableAreaNode).to(\"height\", xa).duration(200).go();\n }\n else {\n var ya = x.getInstance(this.scrollableAreaNode);\n (ya && ya.showScrollbar.bind(ya).defer());\n y.set(this.scrollableAreaNode, \"height\", xa);\n }\n ;\n },\n _updateFirstReceipt: function(pa) {\n var qa = pa.obj.getAttribute(\"data-appid\"), ra = n.scry(pa.obj, \".first_receipt_div\");\n if ((qa && (ra.length == 1))) {\n if (this.firstReceiptMap[qa]) {\n if (((pa.id != this.firstReceiptMap[qa].id) && (this.firstReceiptMap[qa].time > pa.time))) {\n return\n };\n m.removeClass(this.firstReceiptMap[qa].obj, \"first_receipt\");\n }\n ;\n this.firstReceiptMap[qa] = pa;\n m.addClass(pa.obj, \"first_receipt\");\n }\n ;\n },\n isNotifJewelOpen: function() {\n var pa = aa.getInstance(this.wrapper).getActive();\n return (((pa === this.wrapper) && m.hasClass(pa, \"openToggler\")));\n }\n });\n e.exports = oa;\n});\n__d(\"legacy:original-notifications-jewel\", [\"Notifications\",], function(a, b, c, d) {\n a.Notifications = b(\"Notifications\");\n}, 3);\n__d(\"PagesVoiceBar\", [\"$\",\"Arbiter\",\"AsyncRequest\",\"CSS\",\"ChannelConstants\",\"DOM\",\"PageTransitions\",], function(a, b, c, d, e, f) {\n var g = b(\"$\"), h = b(\"Arbiter\"), i = b(\"AsyncRequest\"), j = b(\"CSS\"), k = b(\"ChannelConstants\"), l = b(\"DOM\"), m = b(\"PageTransitions\"), n = \"PagesVoiceBar/toggle\", o = \"PagesVoiceBar/initialized\", p = \"PagesVoiceBar/switchVoice\", q = \"page_transition\", r = \"pages_voice_bar_sync\", s = null, t = null, u = false, v = false;\n function w() {\n v = !v;\n j.conditionClass(document.body, \"hasVoiceBar\", v);\n };\n function x(da, ea) {\n new i(\"/ajax/pages/switch_voice.php\").setData(ea).setHandler(function(fa) {\n ba();\n }).send();\n };\n function y() {\n s = null;\n };\n function z(da, ea) {\n if ((ea.obj.profile_id && (ea.obj.profile_id == s))) {\n ba();\n };\n };\n function aa(da) {\n h.subscribe(o, da);\n };\n function ba() {\n m.getNextURI().go();\n };\n var ca = {\n initVoiceBar: function() {\n if (u) {\n return\n };\n t = g(\"pagesVoiceBarContent\");\n v = j.hasClass(document.body, \"hasVoiceBar\");\n h.subscribe(n, w);\n h.subscribe(p, x);\n h.subscribe(q, y);\n h.subscribe(k.getArbiterType(r), z);\n u = true;\n h.inform(o, null, h.BEHAVIOR_STATE);\n },\n update: function(da, ea) {\n aa(function() {\n s = ea;\n l.setContent(t, da);\n });\n }\n };\n e.exports = ca;\n});\n__d(\"PrivacyLiteFlyout\", [\"Event\",\"function-extensions\",\"$\",\"Animation\",\"Arbiter\",\"ArbiterMixin\",\"AsyncRequest\",\"CSS\",\"DOM\",\"Ease\",\"Parent\",\"SelectorDeprecated\",\"Style\",\"Toggler\",\"copyProperties\",\"cx\",\"csx\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\");\n b(\"function-extensions\");\n var h = b(\"$\"), i = b(\"Animation\"), j = b(\"Arbiter\"), k = b(\"ArbiterMixin\"), l = b(\"AsyncRequest\"), m = b(\"CSS\"), n = b(\"DOM\"), o = b(\"Ease\"), p = b(\"Parent\"), q = b(\"SelectorDeprecated\"), r = b(\"Style\"), s = b(\"Toggler\"), t = b(\"copyProperties\"), u = b(\"cx\"), v = b(\"csx\"), w = b(\"ge\"), x = \"PrivacyLiteFlyout/expandingSection\", y = {\n }, z = {\n };\n function aa() {\n switch (window.location.pathname) {\n case \"/\":\n \n case \"/home.php\":\n \n case \"/index.php\":\n return true;\n default:\n return false;\n };\n };\n function ba(ka) {\n var la = \".-cx-PUBLIC-PrivacyLiteFlyoutNav__label\";\n return (!p.byClass(ka, \"hasSmurfbar\") && n.scry(h(\"blueBar\"), la).length);\n };\n function ca(ka, la, ma) {\n var na = (la ? 0 : ka.offsetHeight);\n r.set(ka, \"height\", (na + \"px\"));\n r.set(ka, \"overflow\", \"hidden\");\n m.show(ka);\n var oa = (la ? ka.scrollHeight : 0), pa = n.getID(ka);\n (y[pa] && y[pa].stop());\n y[pa] = new i(ka).to(\"height\", oa).ondone(function() {\n y[pa] = null;\n r.set(ka, \"height\", \"\");\n r.set(ka, \"overflow\", \"\");\n (oa || m.hide(ka));\n ma();\n }).duration((Math.abs((oa - na)) * 1.5)).ease(o.sineOut).go();\n };\n function da(ka) {\n return new l().setURI(ka).send();\n };\n function ea() {\n return da(\"/ajax/privacy/privacy_lite/increment_masher_tip_count\");\n };\n function fa() {\n return da(\"/ajax/privacy/privacy_lite/dismiss_masher_tip\");\n };\n var ga = null, ha = false, ia = false, ja = t({\n loadBody: function(ka) {\n if ((!ha && w(\"fbPrivacyLiteFlyoutLoading\"))) {\n ha = true;\n if (!ka) {\n ka = false;\n };\n new l(\"/ajax/privacy/privacy_lite/loader\").setData({\n from_megaphone: ka\n }).send();\n }\n ;\n },\n renderBody: function(ka) {\n var la = w(\"fbPrivacyLiteFlyoutLoading\");\n if (la) {\n n.replace(la, ka);\n ja.inform(\"load\", null, j.BEHAVIOR_STATE);\n }\n ;\n },\n hideCleanup: function(ka) {\n j.inform(x);\n var la = n.scry(ka, \".-cx-PRIVATE-PrivacyLiteFlyoutNav__changedcomposer\").forEach(function(ma) {\n m.removeClass(ma, \"-cx-PRIVATE-PrivacyLiteFlyoutNav__changedcomposer\");\n });\n },\n registerFlyoutToggler: function(ka, la) {\n ga = la;\n var ma = s.createInstance(ka);\n ma.setSticky(false);\n s.listen([\"show\",\"hide\",], la, function(na) {\n ja.inform(na);\n ia = (na === \"show\");\n if (!ia) {\n ja.hideCleanup(ka);\n ma.hide();\n j.inform(\"layer_hidden\", {\n type: \"PrivacyShortcutsFlyout\"\n });\n }\n else j.inform(\"layer_shown\", {\n type: \"PrivacyShortcutsFlyout\"\n });\n ;\n });\n },\n registerFinalReminderFlyout: function(ka) {\n if ((ia || !aa())) {\n return\n };\n var la = n.find(ka.getRoot(), \".-cx-PRIVATE-PrivacyLiteFinalReminder__okay\"), ma = ka.getContext();\n if (ba(ma)) {\n ka.setOffsetY(-5);\n };\n ja.subscribe(\"show\", function() {\n ka.hide();\n });\n var na = g.listen(la, \"click\", function() {\n ka.hide();\n da(\"/ajax/privacy/privacy_lite/dismiss_rollout_reminder\");\n na.remove();\n });\n da(\"/ajax/privacy/privacy_lite/increment_rollout_reminder\");\n ka.show();\n },\n isFlyoutVisible: function() {\n return (ga && (s.getActive() === ga));\n },\n exists: function() {\n return !!n.scry(document.body, \".-cx-PUBLIC-PrivacyLiteFlyoutNav__button\")[0];\n },\n setFlyoutVisible: function(ka) {\n (ka ? s.show(ga) : s.hide(ga));\n },\n showSection: function(ka) {\n var la = z[ka], ma = la.chevron, na = la.sublist_container;\n j.inform(x, ma);\n if ((ja.inform(\"expand\", ka) !== false)) {\n m.removeClass(ma, \"-cx-PRIVATE-PrivacyLiteFlyoutNav__chevronexpand\");\n m.addClass(ma, \"-cx-PRIVATE-PrivacyLiteFlyoutNav__chevroncollapse\");\n ca(na, true, function() {\n ja.inform(\"expanded\", ka);\n });\n }\n ;\n },\n hideSection: function(ka, la, ma) {\n var na = z[ka], oa = na.chevron, pa = na.sublist_container;\n if ((ma === oa)) {\n return\n };\n if ((ja.inform(\"collapse\", ka) !== false)) {\n m.addClass(oa, \"-cx-PRIVATE-PrivacyLiteFlyoutNav__chevronexpand\");\n m.removeClass(oa, \"-cx-PRIVATE-PrivacyLiteFlyoutNav__chevroncollapse\");\n ca(pa, false, function() {\n ja.inform(\"collapsed\", ka);\n });\n }\n ;\n },\n toggleSection: function(ka) {\n var la = z[ka].chevron;\n s.getInstance(la).hide();\n if (m.hasClass(la, \"-cx-PRIVATE-PrivacyLiteFlyoutNav__chevronexpand\")) {\n ja.showSection(ka);\n new l(\"/ajax/privacy/privacy_lite/log_section_expand\").setData({\n section: ka\n }).send();\n }\n else ja.hideSection(ka);\n ;\n },\n registerSection: function(ka, la) {\n z[ka] = la;\n j.subscribe(x, ja.hideSection.curry(ka));\n g.listen(la.section_block, \"click\", ja.toggleSection.curry(ka));\n },\n registerInlineHelpOnAudienceChange: function(ka, la, ma) {\n q.subscribe(\"select\", function(na, oa) {\n if ((oa.selector != ka)) {\n return\n };\n m.addClass(la, \"-cx-PRIVATE-PrivacyLiteFlyoutNav__changedcomposer\");\n if (ma) {\n new l(\"/ajax/privacy/privacy_lite/kill_intro\").send();\n };\n });\n },\n registerInlineHelpXOutOnClick: function(ka, la) {\n g.listen(ka, \"click\", m.addClass.curry(la, \"-cx-PRIVATE-PrivacyLiteFlyoutNav__reallygone\"));\n },\n registerBlockUnhideOnFocus: function(ka, la) {\n g.listen(ka, \"focus\", m.show.curry(la));\n },\n registerMessageFilterSettingOnClick: function(ka, la) {\n var ma = n.find(ka, \".-cx-PRIVATE-PrivacyLiteFlyoutNav__filterradio\");\n g.listen(ka, \"click\", function() {\n if (ma.checked) {\n new l(\"/ajax/mercury/change_filtering_type.php\").setData({\n filtering_type: la,\n source: \"privacy_lite\"\n }).send();\n };\n });\n },\n registerGraphSearchPrivacyReminder: function(ka, la) {\n g.listen(la, \"click\", function() {\n n.remove(ka);\n da(\"/ajax/privacy/privacy_lite/dismiss_gs_privacy_reminder\");\n });\n },\n registerMasher: function(ka, la) {\n var ma = false;\n j.subscribe(x, function(na, oa) {\n var pa = n.scry(p.byTag(oa, \"li\"), \".-cx-PRIVATE-PrivacyLiteFlyoutNav__notice\").length;\n if ((ma || !pa)) {\n return\n };\n ma = Boolean(ea());\n });\n g.listen(la, \"click\", function() {\n n.remove(ka);\n fa();\n });\n }\n }, k);\n e.exports = ja;\n});\n__d(\"PrivacyLiteFlyoutHelp\", [\"Event\",\"Arbiter\",\"AsyncRequest\",\"ContextualHelpSearchController\",\"CSS\",\"DOM\",\"Parent\",\"copyProperties\",\"csx\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Arbiter\"), i = b(\"AsyncRequest\"), j = b(\"ContextualHelpSearchController\"), k = b(\"CSS\"), l = b(\"DOM\"), m = b(\"Parent\"), n = b(\"copyProperties\"), o = b(\"csx\"), p = b(\"cx\"), q, r;\n function s(t, u, v, w, x) {\n this._width = 315;\n r = l.find(u, \"input\");\n var y = l.create(\"div\");\n this.init(t, r, y, v, w);\n q = m.byClass(u, \"-cx-PRIVATE-PrivacyLiteFlyoutNav__root\");\n g.listen(x, \"click\", this._hideSearch.bind(this));\n h.subscribe(\"PrivacyLiteFlyout/expandingSection\", this._hideSearch.bind(this));\n var z = l.scry(q, \".-cx-PRIVATE-PrivacyLiteFlyoutNav__searchlink\")[0];\n (z && g.listen(z, \"click\", function() {\n k.addClass(q, \"-cx-PRIVATE-PrivacyLiteFlyoutNav__searchenabled\");\n r.focus();\n if (!this.suggestedResults) {\n new i(\"/ajax/privacy/privacy_lite/help_suggestions\").setHandler(function(aa) {\n var ba = aa.getPayload().searchSuggestions, ca = l.find(q, \".-cx-PRIVATE-PrivacyLiteFlyoutNav__searchsuggestions\");\n l.setContent(ca, ba);\n k.addClass(q, \"-cx-PRIVATE-PrivacyLiteFlyoutNav__hassearchsuggestions\");\n }.bind(this)).send();\n };\n }.bind(this)));\n };\n n(s.prototype, new j(), {\n source: \"privacy_shortcuts\",\n _hideSearch: function() {\n this.clearResults();\n k.removeClass(q, \"-cx-PRIVATE-PrivacyLiteFlyoutNav__searchenabled\");\n },\n show: function(t) {\n if ((t === this.topics_area)) {\n k.removeClass(q, \"-cx-PRIVATE-PrivacyLiteFlyoutNav__helpenabled\");\n return;\n }\n else if ((t === this.loader)) {\n k.addClass(q, \"-cx-PRIVATE-PrivacyLiteFlyoutNav__helpenabled\");\n k.hide(this.results_area);\n }\n else k.hide(this.loader);\n \n ;\n k.show(t);\n }\n });\n e.exports = s;\n});\n__d(\"ViewasChromeBar\", [\"Event\",\"Arbiter\",\"AsyncRequest\",\"CSS\",\"DOM\",\"Focus\",\"ModalMask\",\"PageTransitions\",\"Parent\",\"cx\",\"csx\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Arbiter\"), i = b(\"AsyncRequest\"), j = b(\"CSS\"), k = b(\"DOM\"), l = b(\"Focus\"), m = b(\"ModalMask\"), n = b(\"PageTransitions\"), o = b(\"Parent\"), p = b(\"cx\"), q = b(\"csx\"), r = \"ViewasChromeBar/initialized\", s = null, t = false;\n function u(x) {\n h.subscribe(r, x);\n };\n function v(x) {\n j.addClass(x, \"-cx-PRIVATE-ViewasChromeBar__specificselectormode\");\n var y = k.find(x, \".-cx-PRIVATE-ViewasChromeBar__userselector\");\n l.set(k.find(y, \".textInput\"));\n };\n var w = {\n initChromeBar: function(x) {\n if (t) {\n return\n };\n s = x;\n t = true;\n h.inform(r, null, h.BEHAVIOR_STATE);\n },\n update: function(x, y) {\n u(function() {\n k.setContent(s, x);\n if (y) {\n new i(\"/ajax/privacy/glasgow/viewas_bar_flyout_open\").send();\n };\n });\n },\n registerSpecificModeOnClick: function(x) {\n g.listen(x, \"click\", v.curry(o.byClass(x, \"-cx-PRIVATE-ViewasChromeBar__text\")));\n },\n registerFlyoutModalMask: function() {\n m.show();\n n.registerHandler(m.hide, 10);\n }\n };\n e.exports = w;\n});\n__d(\"BingScalingCommon\", [], function(a, b, c, d, e, f) {\n var g = {\n integrateWebsuggestions: function(h, i, j, k, l) {\n var m = [], n = (i ? m : []), o = [], p = 0, q = 0, r = j;\n k = Math.floor((j * k));\n for (var s = 0; (s < h.length); s++) {\n var t = h[s];\n if (((t.type === \"websuggestion\") && !t.isSeeMore)) {\n if (((((r > 0) && (p < k))) || (((p > 0) && (p < l))))) {\n n.push(t);\n p++;\n r--;\n }\n else if ((r > 0)) {\n o.push(t);\n }\n ;\n }\n else {\n if (((r <= 0) && !i)) {\n continue;\n };\n m.push(t);\n q++;\n r--;\n }\n ;\n };\n if (((r > 0) && (o.length > 0))) {\n n = n.concat(o.slice(0, r));\n };\n if (!i) {\n return m.concat(n)\n };\n return n;\n }\n };\n e.exports = g;\n});\n__d(\"TypeaheadSearchSponsoredUtils\", [], function(a, b, c, d, e, f) {\n function g(o) {\n return (o.selected_target_id != o.s_target);\n };\n function h(o, p) {\n return Math.min(p.maxNumberAds, ((p.maxNumberRemovedResults + p.maxNumberResultsAndAds) - o));\n };\n function i(o, p) {\n var q = {\n };\n for (var r = (o.length - 1); (r >= 0); --r) {\n var s = o[r];\n q[s] = s;\n if (p.hasOwnProperty(s)) {\n p[s].forEach(function(t) {\n q[t] = s;\n });\n };\n };\n return q;\n };\n function j(o, p, q) {\n for (var r = p; (r < o.length); r++) {\n (o[r].setDebugString && o[r].setDebugString(q));;\n };\n };\n function k(o, p) {\n return (p.indexOf(String(o)) != -1);\n };\n function l(o, p, q, r) {\n if (n.isSelfPromoted(o)) {\n return false\n };\n if (((q + p.length) < r.maxNumberResultsAndAds)) {\n return false\n };\n return true;\n };\n function m(o, p, q, r) {\n var s = o[(o.length - 1)];\n if (p.hasOwnProperty(s)) {\n return false\n };\n if ((s == q)) {\n return false\n };\n if ((s == r)) {\n return false\n };\n return true;\n };\n var n = {\n isSelfPromoted: function(o) {\n return (o.uid == o.s_target);\n },\n prepareAndSortAds: function(o, p, q) {\n if (!p) {\n return []\n };\n var r = [], s = o.length, t = {\n };\n for (var u = 0; (u < s); u++) {\n var v = o[u];\n t[v.uid] = true;\n if (v.s_categories) {\n v.s_categories.forEach(function(z) {\n t[z] = true;\n });\n };\n };\n for (var w in t) {\n if (p[w]) {\n for (var x in p[w]) {\n var y = p[w][x];\n if ((q && q.hasOwnProperty(y.uid))) {\n continue;\n };\n r.push(y);\n }\n };\n };\n r.sort(function(z, aa) {\n return (aa.s_value - z.s_value);\n });\n return r;\n },\n selectAds: function(o, p, q, r, s) {\n var t = [], u = {\n }, v = {\n }, w = {\n }, x = 0, y = h(o.length, r), z = i(o, p);\n for (var aa = 0; (aa < q.length); aa++) {\n if ((t.length >= y)) {\n j(q, aa, ((\"filtered: \" + y) + \" ads already selected\"));\n break;\n }\n ;\n var ba = q[aa], ca = (z[ba.s_target] || ba.s_target);\n ba.selected_target_id = ca;\n if (!k(ca, o)) {\n (ba.setDebugString && ba.setDebugString(((((\"filtered: targeted organic \" + ca) + \" does not exist. \") + \"promoted id \") + ba.uid)));\n continue;\n }\n ;\n if ((l(ba, o, x, r) && !m(o, v, ca, s))) {\n (ba.setDebugString && ba.setDebugString(\"filtered: last organic need but cannot be removed\"));\n continue;\n }\n ;\n if ((!n.isSelfPromoted(ba) && (o.indexOf(String(ba.uid)) != -1))) {\n (ba.setDebugString && ba.setDebugString((((\"filtered: organic \" + ba.uid) + \" targets another organic \") + ca)));\n continue;\n }\n ;\n if (u.hasOwnProperty(ba.s_account)) {\n (ba.setDebugString && ba.setDebugString(((\"filtered: ad account \" + ba.s_account) + \" already selected\")));\n continue;\n }\n ;\n if (w.hasOwnProperty(ba.uid)) {\n (ba.setDebugString && ba.setDebugString(((\"filtered: ad promoted id \" + ba.uid) + \" already selected\")));\n continue;\n }\n ;\n (ba.setDebugString && ba.setDebugString(\"selected\"));\n t.push(ba);\n u[ba.s_account] = true;\n v[ca] = true;\n w[ba.uid] = true;\n if (!n.isSelfPromoted(ba)) {\n ++x;\n if (((x + o.length) > r.maxNumberResultsAndAds)) {\n o.pop();\n };\n }\n ;\n };\n return t;\n },\n hasTopResult: function(o, p, q) {\n if ((o == null)) {\n return false\n };\n if ((o.type == \"user\")) {\n return false\n };\n if ((o.type == \"grammar\")) {\n return false\n };\n if ((o.score > q.v0)) {\n return true\n };\n if ((o.s_value > q.v3)) {\n return true\n };\n if ((o.s_value > p.s_value)) {\n return true\n };\n var r = (g(p) ? q.v4 : ((o.bootstrapped ? q.v1 : q.v2)));\n if ((r < p.s_value)) {\n return false\n };\n return true;\n },\n setOrganicECPM: function(o, p) {\n if ((o == null)) {\n return\n };\n for (var q = 0; (q < p.length); q++) {\n if (o.hasOwnProperty(p[q].uid)) {\n p[q].s_value = o[p[q].uid];\n };\n };\n return;\n },\n buildResultIndices: function(o) {\n var p = {\n }, q = o.length;\n for (var r = 0; (r < q); r++) {\n p[o[r].uid] = r;;\n };\n return p;\n },\n getTopAdPosition: function(o, p, q) {\n if ((o.length < 1)) {\n return null\n };\n if ((p.length < 1)) {\n return null\n };\n if ((((o[0].type == \"user\")) || ((o[0].type == \"grammar\")))) {\n for (var r = 1; (r < o.length); ++r) {\n if ((o[r].type != o[0].type)) {\n return r\n };\n };\n return o.length;\n }\n ;\n if (n.hasTopResult(o[0], p[0], q)) {\n return 1\n };\n return 0;\n }\n };\n e.exports = n;\n});\n__d(\"TypeaheadSearchSponsored\", [\"Event\",\"Arbiter\",\"CSS\",\"DOM\",\"URI\",\"copyProperties\",\"TypeaheadSearchSponsoredUtils\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Arbiter\"), i = b(\"CSS\"), j = b(\"DOM\"), k = b(\"URI\"), l = b(\"copyProperties\"), m = b(\"TypeaheadSearchSponsoredUtils\"), n = b(\"tx\");\n function o(p) {\n this._typeahead = p;\n };\n o.prototype.enable = function() {\n this._data = this._typeahead.getData();\n this._dataSubscriptions = [this._data.subscribe(\"beginFetchHandler\", function(p, q) {\n var r = q.response.getPayload();\n if (r.s_entries) {\n this._sponsoredEntries = (this._sponsoredEntries || {\n });\n var s = r.s_entries.length;\n for (var t = 0; (t < s); t++) {\n var u = new o.Ad();\n l(u, r.s_entries[t]);\n var v = u.s_target;\n if (!this._sponsoredEntries[v]) {\n this._sponsoredEntries[v] = {\n };\n };\n this._sponsoredEntries[v][u.uid] = u;\n };\n if (r.s_bootstrap_id) {\n this._sBootstrapID = r.s_bootstrap_id;\n };\n if (r.organic_s_value) {\n this._organicECPM = l(this._organicECPM, r.organic_s_value);\n };\n }\n ;\n }.bind(this)),];\n if (o.auctionOptions.bootstrap) {\n this._dataSubscriptions.push(this._data.subscribe(\"onload\", function(p, q) {\n var r = l(this.bootstrapData, {\n no_cache: 1,\n options: [\"sponsored\",]\n });\n this.fetch(this.bootstrapEndpoint, r, {\n type: \"sponsored\"\n });\n }.bind(this._data)));\n };\n this._view = this._typeahead.getView();\n this._viewSubscriptions = [this._view.subscribe(\"finalResultsReordering\", function(p, q) {\n o.query = q.value;\n m.setOrganicECPM(this._organicECPM, q.results);\n var r = o.getOriginalOrganics(q.results);\n o.setAuctionOptions({\n maxNumberResultsAndAds: Math.max(q.results.length, (((this._data && this._data._maxResults)) || o.auctionOptions.maxNumberResultsAndAds))\n });\n var s = this.runAuction(q.results, this._sponsoredEntries, this._hiddenSponsoredEntities, o.auctionOptions), t = m.prepareAndSortAds(q.results, this._sponsoredEntries, this._hiddenSponsoredEntities), u = t.map(function(y) {\n return y.s_token;\n }), v = [];\n for (var w = 0; (w < s.length); w++) {\n var x = s[w];\n if (x.s_token) {\n v.push({\n position: w,\n is_self: x.is_self\n });\n };\n };\n this._view.inform(\"recordAfterReorder\", {\n organic: r,\n tokens: u,\n position_data: v,\n s_bootstrap_id: this._sBootstrapID,\n options: o.auctionOptions,\n variant: o.auctionOptions.rerankingStrategy\n });\n q.results = s;\n this._data.inform(\"recordAuctionState\", {\n organic: r,\n auctionOptions: o.auctionOptions,\n event_data: q\n });\n }.bind(this)),this._view.subscribe(\"highlight\", function(p, q) {\n if (this._view.content) {\n j.scry(this._view.content, \"a.report\").forEach(i.hide);\n };\n if (((!q.element || !q.selected) || !q.selected.s_token)) {\n return\n };\n var r = j.scry(q.element, \"a.report\");\n if (r.length) {\n i.show(r[0]);\n }\n else j.appendContent(q.element, this._createHideAdLink(q.selected));\n ;\n }.bind(this)),];\n this._globalSubscriptions = [h.subscribe(\"TypeaheadSearchSponsored/hideAdResult\", function(p, q) {\n this._hiddenSponsoredEntities = (this._hiddenSponsoredEntities || {\n });\n this._hiddenSponsoredEntities[q.uid] = true;\n this._hideReasonDialog = q.reason_dialog;\n this._forceRefreshResults();\n }.bind(this)),h.subscribe(\"TypeaheadSearchSponsored/undoHideAdResult\", function(p, q) {\n if (this._hiddenSponsoredEntities) {\n delete this._hiddenSponsoredEntities[q.uid];\n };\n if (this._hideReasonDialog) {\n this._hideReasonDialog.hide();\n this._hideReasonDialog = null;\n }\n ;\n this._forceRefreshResults();\n }.bind(this)),];\n };\n o.prototype.disable = function() {\n this._dataSubscriptions.forEach(this._data.unsubscribe.bind(this._data));\n this._dataSubscriptions = null;\n this._viewSubscriptions.forEach(this._view.unsubscribe.bind(this._view));\n this._viewSubscriptions = null;\n this._globalSubscriptions.forEach(h.unsubscribe.bind(h));\n this._globalSubscriptions = null;\n this._data = null;\n this._view = null;\n this._sponsoredEntries = null;\n };\n o.prototype.runAuction = function(p, q, r, s) {\n if ((p.length === 0)) {\n return p\n };\n p = o.initResults(p);\n if (!q) {\n return p\n };\n var t = m.prepareAndSortAds(p, q, r);\n if (this._typeahead) {\n var u = this._typeahead.getData();\n u.inform(\"recordAuctionState\", {\n sorted_ads: t\n });\n }\n ;\n var v = {\n }, w = p.map(function(ba) {\n if (ba.s_categories) {\n v[ba.uid] = ba.s_categories;\n };\n return String(ba.uid);\n }), x = m.selectAds(w, v, t, s);\n if ((x.length === 0)) {\n return p\n };\n if (m.hasTopResult(p[0], x[0], s)) {\n o.setTopResult(p);\n };\n var y = 0;\n for (var z = 0; (z < x.length); ++z) {\n if (!m.isSelfPromoted(x[z])) {\n y++;\n };\n };\n p.length = Math.min(p.length, (s.maxNumberResultsAndAds - y));\n var aa = o.rerankAds(p, x, s);\n return aa;\n };\n o.prototype._forceRefreshResults = function() {\n if ((this._data && this._data.value)) {\n this._data.respond(this._data.value, this._data.buildUids(this._data.value));\n };\n };\n o.prototype._createHideAdLink = function(p) {\n var q = new k(\"/ajax/emu/end.php\").addQueryData({\n eid: p.s_token,\n f: 0,\n ui: (\"typeahead_\" + p.s_token.replace(\".\", \"_\")),\n en: \"fad_hide\",\n ed: \"true\",\n a: 1\n }).toString(), r = {\n className: \"report\",\n rel: \"dialog-post\",\n href: \"#\",\n ajaxify: q,\n title: \"Hide the ad\"\n }, s = j.create(\"a\", r);\n g.listen(s, \"mouseover\", function(event) {\n this._view.index = -1;\n this._view.highlight(-1, false);\n event.kill();\n }.bind(this));\n return s;\n };\n o.auctionOptions = {\n };\n o.query = null;\n o.getOriginalOrganics = function(p) {\n return p.map(function(q) {\n return {\n uid: q.uid,\n text: q.text,\n type: o.getRealType(q),\n source: (q.bootstrapped ? 1 : 0),\n index: q.index,\n s_value: (q.s_value || 0),\n s_categories: (q.s_categories || []),\n score: q.score\n };\n });\n };\n o.setTopResult = function(p) {\n p[0].renderTypeOverride = true;\n p[0].orig_render_type = p[0].render_type;\n p[0].render_type = \"tophit\";\n };\n o.finalizeAd = function(p, q, r) {\n var s = \"Sponsored\";\n p.rankType = ((p.rankType || p.render_type) || p.type);\n if (m.isSelfPromoted(p)) {\n q.s_token = p.s_token;\n q.message = p.s_message;\n if ((r.rerankingStrategy === 0)) {\n q.subtextOverride = (q.subtext ? ((q.subtext + \" \\u00b7 \") + s) : s);\n };\n if (p.path) {\n q.pathOverride = true;\n q.orig_path = q.path;\n q.path = p.path;\n }\n ;\n q.is_self = true;\n }\n else {\n p.message = p.s_message;\n p.subtextOverride = null;\n if ((r.rerankingStrategy === 0)) {\n p.subtextOverride = (p.subtext ? ((p.subtext + \" \\u00b7 \") + s) : s);\n };\n if (r.debug) {\n if ((!p.subtextOverride && p.subtext)) {\n p.subtextOverride = p.subtext;\n };\n if (p.subtextOverride) {\n p.subtextOverride += ((\" \\u00b7 (Debug: \" + q.text) + \")\");\n }\n else p.subtextOverride = ((\"(Debug: \" + q.text) + \")\");\n ;\n }\n ;\n p.type = q.type;\n p.render_type = q.render_type;\n p.is_self = false;\n }\n ;\n };\n o.promoteSelfPromotedResultToTop = function(p, q, r, s) {\n var t = p[q];\n if ((q < r)) {\n var u = \"Sponsored\";\n t.subtextOverride = (t.subtext ? ((t.subtext + \" \\u00b7 \") + u) : u);\n return;\n }\n ;\n if ((q > r)) {\n p.splice(r, 0, p.splice(q, 1)[0]);\n };\n t = p[r];\n t.renderTypeOverride = true;\n t.orig_render_type = t.render_type;\n t.render_type = \"ownsection\";\n };\n o.insertAdToTop = function(p, q, r, s) {\n p.splice(r, 0, q);\n q.render_type = \"ownsection\";\n };\n o.rerankMethod5 = function(p, q, r) {\n if ((r.rerankingStrategy != 5)) {\n return\n };\n var s = m.getTopAdPosition(p, q, r), t = m.buildResultIndices(p);\n for (var u = (q.length - 1); (u >= 0); u--) {\n var v = q[u], w = t[v.selected_target_id], x = p[w];\n o.finalizeAd(v, x, r);\n if (m.isSelfPromoted(v)) {\n o.promoteSelfPromotedResultToTop(p, w, s, r);\n }\n else o.insertAdToTop(p, v, s, r);\n ;\n t = m.buildResultIndices(p);\n };\n };\n o.rerankAds = function(p, q, r) {\n switch (r.rerankingStrategy) {\n case 5:\n o.rerankMethod5(p, q, r);\n break;\n default:\n break;\n };\n p.length = Math.min(p.length, r.maxNumberResultsAndAds);\n return p;\n };\n o.initResults = function(p) {\n var q = p.length;\n for (var r = 0; (r < q); r++) {\n var s = p[r];\n s.is_self = null;\n s.s_token = null;\n s.message = null;\n s.subtextOverride = null;\n if (s.pathOverride) {\n s.path = s.orig_path;\n s.pathOverride = false;\n }\n ;\n if (s.renderTypeOverride) {\n s.render_type = s.orig_render_type;\n s.renderTypeOverride = false;\n }\n ;\n s.rankType = ((s.rankType || s.render_type) || s.type);\n };\n return p;\n };\n o.setAuctionOptions = function(p) {\n l(o.auctionOptions, p);\n };\n o.getRealType = function(p) {\n if (p.renderTypeOverride) {\n return (p.orig_render_type || p.type)\n };\n return (p.render_type || p.type);\n };\n o.hideAdResult = function(p, q) {\n h.inform(\"TypeaheadSearchSponsored/hideAdResult\", {\n uid: p,\n reason_dialog: q\n });\n };\n o.undoHideAdResult = function(p) {\n h.inform(\"TypeaheadSearchSponsored/undoHideAdResult\", {\n uid: p\n });\n };\n o.Ad = function() {\n \n };\n l(o.prototype, {\n _dataSubscriptions: null,\n _viewSubscriptions: null,\n _globalSubscriptions: null,\n _data: null,\n _view: null,\n _sponsoredEntries: null,\n _hiddenSponsoredEntities: null,\n _hideReasonDialog: null,\n _sBootstrapID: null,\n _organicECPM: null\n });\n e.exports = o;\n});\n__d(\"SearchDataSource\", [\"Event\",\"Arbiter\",\"AsyncResponse\",\"DataSource\",\"HashtagSearchResultUtils\",\"copyProperties\",\"createArrayFrom\",\"BingScalingCommon\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Arbiter\"), i = b(\"AsyncResponse\"), j = b(\"DataSource\"), k = b(\"HashtagSearchResultUtils\"), l = b(\"copyProperties\"), m = b(\"createArrayFrom\"), n = b(\"BingScalingCommon\");\n for (var o in j) {\n if ((j.hasOwnProperty(o) && (o !== \"_metaprototype\"))) {\n q[o] = j[o];\n };\n };\n var p = ((j === null) ? null : j.prototype);\n q.prototype = Object.create(p);\n q.prototype.constructor = q;\n q.__superConstructor__ = j;\n function q(r) {\n this._token = (r.token || \"\");\n this._lazyonload = ((r.lazyonload === false) ? false : true);\n this._extraTypes = r.extraTypes;\n this._buckets = r.buckets;\n this._noMultiFetch = (r.noMultiFetch || false);\n this._maxWebSuggToCountFetchMore = (r.maxWebSuggToCountFetchMore || 0);\n var s = (r.maxResults || 8);\n j.call(this, r);\n this._numResults = {\n min: 3,\n max: s\n };\n this.recordingRoute = (r.recordingRoute || \"non_banzai\");\n this._enabledHashtag = (r.enabledHashtag || false);\n this.logBackendQueriesWindow = (r.logBackendQueriesWindow || 25);\n this._minWebSugg = (r.minWebSugg || 2);\n this._queryToWebSuggState = {\n };\n this._genTime = r.genTime;\n };\n q.prototype.init = function() {\n p.init.call(this);\n this._leanPayload = null;\n this._bootstrapRequestsPending = 0;\n this._criticalOnly = true;\n this._updateMaxResults();\n g.listen(window, \"resize\", this._updateMaxResults.bind(this));\n this.complexChars = new RegExp(\"[\\uff66-\\uffdd\\u4e00-\\u9fcc\\u3400-\\u4dbf]\");\n };\n q.prototype.dirty = function() {\n p.dirty.call(this);\n this._fetchOnUseRequests = [];\n };\n q.prototype.asyncErrorHandler = function(r) {\n if (((window.Dialog && (window.Dialog.getCurrent() == null)) && (r.getError() == 1400003))) {\n i.verboseErrorHandler(r);\n };\n };\n q.prototype.fetch = function(r, s, t) {\n t = (t || {\n });\n t.fetch_start = Date.now();\n p.fetch.call(this, r, s, t);\n };\n q.prototype.fetchHandler = function(r, s) {\n var t = r.getPayload(), u = l({\n fetch_end: Date.now()\n }, s), v = (u.value ? h.BEHAVIOR_EVENT : h.BEHAVIOR_PERSISTENT);\n this.inform(\"beginFetchHandler\", {\n response: r\n });\n if ((s.type == \"lean\")) {\n this._leanPayload = t;\n this._processLean();\n }\n else {\n if (t.coeff2_ts) {\n u.coeff2_ts = t.coeff2_ts;\n };\n var w = {\n limit: ((typeof t.webSuggLimit !== \"undefined\") ? t.webSuggLimit : 6),\n showOnTop: ((typeof t.webSuggOnTop !== \"undefined\") ? t.webSuggOnTop : false)\n };\n this._queryToWebSuggState[s.value] = w;\n p.fetchHandler.call(this, r, s);\n if ((s.bootstrap && !r.getRequest().getData().no_cache)) {\n u.browserCacheHit = ((t.timestamp < this._genTime));\n };\n if (((s.bootstrap && !t.no_data) && (this._bootstrapRequestsPending > 0))) {\n s.bootstrap = false;\n --this._bootstrapRequestsPending;\n (!this._bootstrapRequestsPending && this._bootstrapPostProcess());\n }\n ;\n if (((t.no_data || t.stale) || (t.token !== this._token))) {\n var x = l({\n }, r.getRequest().getData());\n if (x.lazy) {\n delete x.lazy;\n x.token = this._token;\n this._fetchOnUse(x, s);\n }\n ;\n }\n ;\n }\n ;\n this.inform(\"endpointStats\", u, v);\n };\n q.prototype.respond = function(r, s, t) {\n this.inform(\"respondValidUids\", s);\n this.inform(\"reorderResults\", s);\n var u = this.buildData(s, r);\n u.forEach(function(v, w) {\n v.origIndex = w;\n });\n this.inform(\"respond\", {\n value: r,\n results: u,\n isAsync: !!t\n });\n return u;\n };\n q.prototype.buildData = function(r, s) {\n if ((!r || (r.length === 0))) {\n return []\n };\n var t = this.getWebSuggState(s), u = t.showOnTop, v = n.integrateWebsuggestions(r.map(this.getEntry.bind(this)), Boolean(u), this._maxResults, t.limit);\n v.length = Math.min(v.length, this._maxResults);\n return v;\n };\n q.prototype.getWebSuggState = function(r) {\n while (r) {\n var s = this._queryToWebSuggState[r];\n if ((typeof s !== \"undefined\")) {\n return s\n };\n r = r.slice(0, (r.length - 1));\n };\n return {\n limit: 0,\n showOnTop: false\n };\n };\n q.prototype._isQueryTooShort = function(r) {\n return ((r.length < this._minQueryLength) && !((this.complexChars && this.complexChars.test(r))));\n };\n q.prototype.shouldFetchMoreResults = function(r) {\n var s = 0, t = 0;\n r.forEach(function(u) {\n if (((u.type !== \"websuggestion\") || (t++ < this._maxWebSuggToCountFetchMore))) {\n s++;\n };\n }.bind(this));\n return (s < this._maxResults);\n };\n q.prototype._bootstrapPostProcess = function() {\n var r = {\n time: Date.now()\n };\n this.inform(\"bootstrapped\", r, h.BEHAVIOR_PERSISTENT);\n this._processLean();\n };\n q.prototype._processLean = function() {\n if (this._leanPayload) {\n var r, s = this._leanPayload.entries;\n for (var t in s) {\n r = this.getEntry(t);\n (r && (r.index = s[t]));\n };\n this.setExclusions(this._leanPayload.blocked);\n this._leanPayload = null;\n }\n ;\n };\n q.prototype._updateMaxResults = function() {\n var r = (window.innerHeight || document.documentElement.clientHeight);\n this.setMaxResults(Math.max(this._numResults.min, Math.min(this._numResults.max, Math.ceil((2 + ((((r - 370)) / 56)))))));\n };\n q.prototype._bootstrapFetch = function(r, s) {\n var t = l(s, this.bootstrapData);\n if ((this._criticalOnly && this._lazyonload)) {\n t.lazy = 1;\n };\n this.fetch(this.bootstrapEndpoint, t, {\n bootstrap: true,\n type: r\n });\n ++this._bootstrapRequestsPending;\n };\n q.prototype._fetchOnUse = function(r, s) {\n for (var t in this.bootstrapData) {\n (!r.hasOwnProperty(t) && (r[t] = this.bootstrapData[t]));;\n };\n if (this._criticalOnly) {\n this._fetchOnUseRequests.push({\n args: r,\n ctx: s\n });\n }\n else this.fetch(this.bootstrapEndpoint, r, s);\n ;\n };\n q.prototype._fetchLean = function() {\n var r = {\n no_cache: 1\n };\n r.options = m(r.options);\n r.options.push(\"lean\");\n this._fetchOnUse(r, {\n type: \"lean\"\n });\n };\n q.prototype.bootstrap = function(r) {\n if (!r) {\n this._criticalOnly = false;\n this._flushFetchOnUseRequests();\n }\n ;\n if (this._bootstrapped) {\n return\n };\n var s = {\n filter: [\"event\",],\n no_cache: 1\n };\n this._fetchOnUse(s, {\n type: \"event\"\n });\n var t = [\"app\",\"page\",\"group\",\"friendlist\",];\n t = t.concat((this._extraTypes || []));\n if (this._noMultiFetch) {\n t.push(\"user\");\n this._bootstrapFetch(\"user\", {\n filter: t\n });\n }\n else {\n this._bootstrapFetch(\"other\", {\n filter: t\n });\n if (this._buckets) {\n for (var u = 0; (u < this._buckets.length); ++u) {\n var v = {\n filter: [\"user\",],\n buckets: this._buckets[u]\n };\n this._bootstrapFetch(\"user\", v);\n };\n }\n else this._bootstrapFetch(\"user\", {\n filter: [\"user\",]\n });\n ;\n }\n ;\n this._fetchLean();\n this._bootstrapped = true;\n };\n q.prototype._flushFetchOnUseRequests = function() {\n var r = this._fetchOnUseRequests.length;\n for (var s = 0; (s < r); ++s) {\n var t = this._fetchOnUseRequests[s];\n this.fetch(this.bootstrapEndpoint, t.args, t.ctx);\n };\n if ((r > 0)) {\n this.inform(\"extra_bootstrap\", {\n time: Date.now()\n }, h.BEHAVIOR_PERSISTENT);\n };\n this._fetchOnUseRequests = [];\n };\n q.prototype.onLoad = function(r, s) {\n this.inform(\"onload\", {\n time: Date.now()\n }, h.BEHAVIOR_PERSISTENT);\n if (r) {\n this.bootstrap.bind(this, s).defer();\n };\n };\n q.prototype.mergeUids = function(r, s, t, u) {\n var v = this.getDynamicHashtagResult(u);\n if (((u && v) && (s.indexOf(v) <= 0))) {\n s.unshift(v);\n };\n var w = (t[0] ? this.getEntry(t[0]) : null), x = (s[0] ? this.getEntry(s[0]) : null), y = (((w && w.replace_results)) ? w : null);\n y = ((((!y && x) && x.replace_results)) ? x : y);\n var z = p.mergeUids.call(this, r, s, t, u);\n if (y) {\n this.inform(\"backend_topreplace\", {\n });\n return this.deduplicateByKey([y.uid,].concat(z));\n }\n ;\n return z;\n };\n q.prototype.getTextToIndexFromFields = function(r, s) {\n var t = [], u = (r.tokenVersion === \"v2\");\n for (var v = 0; (v < s.length); ++v) {\n if ((u && (((s[v] === \"text\") || (s[v] === \"alias\"))))) {\n continue;\n };\n var w = r[s[v]];\n if (w) {\n t.push((w.join ? w.join(\" \") : w));\n };\n };\n return t.join(\" \");\n };\n q.prototype.getDynamicHashtagResult = function(r) {\n if ((!r || !this._enabledHashtag)) {\n return\n };\n var s = k.getHashtagFromQuery(r);\n if (!s) {\n return\n };\n var t = (\"hashtag:\" + s), u = this.getEntry(t);\n if (!u) {\n this.processEntries([k.makeTypeaheadResult(s),], r);\n };\n return t;\n };\n e.exports = q;\n});\n__d(\"SearchTypeaheadRecorder\", [\"Event\",\"AsyncRequest\",\"Banzai\",\"Keys\",\"TokenizeUtil\",\"Vector\",\"ge\",\"clickRefAction\",\"copyProperties\",\"userAction\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"AsyncRequest\"), i = b(\"Banzai\"), j = b(\"Keys\"), k = b(\"TokenizeUtil\"), l = b(\"Vector\"), m = b(\"ge\"), n = b(\"clickRefAction\"), o = b(\"copyProperties\"), p = b(\"userAction\");\n function q(s) {\n this.init(s);\n this.initEvents();\n };\n q.prototype.init = function(s) {\n this.core = s.getCore();\n this.data = s.getData();\n this.view = s.getView();\n this.element = this.core.getElement();\n this.initTime = Date.now();\n this._onloadTime = 0;\n this._extraRecorder = [];\n var t = m(\"search_first_focus\");\n this.initStartTime = (t && t.value);\n this.bootstrapStats = {\n bootstrapped: 0\n };\n this._reset();\n };\n q.prototype._reset = function() {\n this.stats = {\n };\n this.avgStats = {\n };\n this.appendStats = {\n };\n this._backspacing = false;\n this.backendQueries = [];\n this._topreplace = false;\n this._inflightRequests = {\n };\n this._reorderInfo = null;\n var s = Math.random().toString();\n this.data.setQueryData({\n sid: s\n });\n this.view.setSid(s);\n this.recordStat(\"sid\", s);\n this.recordStat(\"keypressed\", 0);\n };\n q.prototype.initEvents = function() {\n this.core.subscribe(\"focus\", function(event) {\n if (!this.stats.session_start_time) {\n this.recordStat(\"session_start_time\", Date.now());\n };\n }.bind(this));\n this.core.subscribe(\"blur\", function(event) {\n var s = Date.now();\n for (var t in this._inflightRequests) {\n var u = this._inflightRequests[t], v = (s - u);\n this.recordAvgStat(\"search_endpoint_ms_from_js\", v);\n };\n this.recordStat(\"session_end_time\", s);\n this.submit();\n }.bind(this));\n this.view.subscribe(\"select\", function(s, t) {\n this.recordSelectInfo(t);\n }.bind(this));\n this.view.subscribe(\"render\", function(s, t) {\n this.recordRender(t);\n }.bind(this));\n this.view.subscribe(\"recordAfterReorder\", function(s, t) {\n this._reorderInfo = o(this._reorderInfo, t);\n }.bind(this));\n this.data.subscribe(\"activity\", function(s, t) {\n this.recordStat(\"pending_request\", t.activity);\n }.bind(this));\n this.data.subscribe(\"respondValidUids\", function(s, t) {\n this.validUids = t.slice(0);\n }.bind(this));\n this.data.subscribe(\"beforeQuery\", function(s, t) {\n if (!t.value) {\n this.query = \"\";\n this.results = [];\n return;\n }\n ;\n if (!this.stats.first_query_time) {\n this.recordStat(\"first_query_time\", Date.now());\n };\n this.query = t.value;\n this.recordCountStat(\"num_queries\");\n }.bind(this));\n this.data.subscribe(\"queryEndpoint\", function(s, t) {\n this.recordCountStat(\"num_search_ajax_requests\");\n this.recordAvgStat(\"endpoint_query_length\", t.value.length);\n this._inflightRequests[t.value] = Date.now();\n }.bind(this));\n this.data.subscribe(\"onload\", function(s, t) {\n this._onloadTime = t.time;\n }.bind(this));\n this.data.subscribe(\"bootstrapped\", function(s, t) {\n this.bootstrapStats.endTime = t.time;\n this.bootstrapStats.bootstrapped = 1;\n }.bind(this));\n this.core.subscribe(\"recordFunction\", function(s, t) {\n this._extraRecorder.push(t);\n }.bind(this));\n this.data.subscribe(\"endpointStats\", function(s, t) {\n var u = (t.fetch_end - t.fetch_start);\n if (t.value) {\n this.recordAvgStat(\"search_endpoint_ms_from_js\", u);\n }\n else this.bootstrapStats[t.type] = u;\n ;\n if (t.coeff2_ts) {\n this.bootstrapStats.coeff2_ts = t.coeff2_ts;\n };\n if ((typeof t.browserCacheHit != \"undefined\")) {\n this.recordCountStat((t.browserCacheHit ? \"bootstrap_cachehits\" : \"bootstrap_cachemisses\"));\n };\n if (this._inflightRequests[t.value]) {\n delete this._inflightRequests[t.value];\n };\n }.bind(this));\n this.data.subscribe(\"query\", function(s, t) {\n this.recordAvgStat(\"num_results_from_cache\", t.results.length);\n }.bind(this));\n this.data.subscribe(\"backend_topreplace\", function(s, t) {\n if ((false === this._topreplace)) {\n this.recordStat(\"backend_topreplace\", 1);\n this._topreplace = true;\n }\n ;\n }.bind(this));\n g.listen(this.element, \"keydown\", function(event) {\n this.recordStat(\"keypressed\", 1);\n if ((g.getKeyCode(event) == j.BACKSPACE)) {\n if ((!this._backspacing && this.query)) {\n this._backspacing = true;\n this.recordAppendStat(\"before_backspace_queries\", this.query);\n }\n ;\n }\n else this._backspacing = false;\n ;\n }.bind(this));\n this.data.subscribe(\"beforeFetch\", function(s, t) {\n var u = t.request.data.value;\n if (!u) {\n return\n };\n this.backendQueries.push(u);\n }.bind(this));\n };\n q.prototype.recordStat = function(s, t) {\n this.stats[s] = t;\n };\n q.prototype.recordCountStat = function(s) {\n var t = this.stats[s];\n this.stats[s] = (t ? (t + 1) : 1);\n };\n q.prototype.recordAvgStat = function(s, t) {\n if (this.avgStats[s]) {\n this.avgStats[s][0] += t;\n ++this.avgStats[s][1];\n }\n else this.avgStats[s] = [t,1,];\n ;\n };\n q.prototype.recordAppendStat = function(s, t) {\n if (!this.appendStats.hasOwnProperty(s)) {\n this.appendStats[s] = [];\n };\n this.appendStats[s].push(t);\n };\n q.prototype.recordRender = function(s) {\n this.results = s.filter(function(u) {\n return ((((u.uid != \"search\") && (u.type != \"disabled_result\")) && (u.type != \"header\")));\n }).map(function(u) {\n return o(null, u);\n });\n var t = l.getViewportDimensions();\n this.recordStat(\"window_size_width\", t.x);\n this.recordStat(\"window_size_height\", t.y);\n if (((this.results.length > 0) && !this.stats.first_result_time)) {\n this.recordStat(\"first_result_time\", Date.now());\n };\n };\n q.prototype.recordSelectInfo = function(s) {\n var t = s.selected, u = s.index;\n if ((t.groupIndex !== undefined)) {\n u = ((s.index - t.groupIndex) - 1);\n };\n var v = {\n href: t.path\n }, w = (t.dataGT ? {\n gt: JSON.parse(t.dataGT)\n } : {\n });\n n(\"click\", v, null, null, w);\n p(\"search\").uai(\"click\");\n if ((t.uid == \"search\")) {\n this.recordStat(\"selected_search\", 1);\n }\n else if ((t.uid == \"invite\")) {\n this.recordStat(\"selected_invite\", 1);\n }\n else {\n var x = ((t.rankType || t.render_type) || t.type), y = (((x == \"friend\") ? \"user\" : x));\n this.recordStat((\"selected_\" + y), 1);\n this.recordStat(\"selected_position\", u);\n this.recordStat(\"selected_type\", x);\n this.recordStat(\"selected_name_length\", t.text.length);\n this.recordStat(\"selected_id\", t.uid);\n this.recordStat(\"selected_degree\", (t.bootstrapped ? 1 : 2));\n var z = k.parse(this.data.getTextToIndex(t)).tokens, aa = r(z, this.query);\n if (aa) {\n this.recordStat(\"matched_terms\", aa);\n };\n }\n \n ;\n var ba = {\n };\n this._extraRecorder.forEach(function(ca) {\n ca(s, this.results, ba);\n }.bind(this));\n this.recordStat(\"extra_select_info\", JSON.stringify(ba));\n if ((t.type === \"websuggestion\")) {\n this.recordStat(\"selected_memcached_websuggestion\", t.fromMemcache);\n this.recordStat(\"selected_websuggestion_source\", t.websuggestion_source);\n }\n ;\n this.recordStat(\"selected_with_mouse\", (s.clicked ? 1 : 0));\n };\n q.prototype._dataToSubmit = function() {\n this.recordStat(\"candidate_results\", this.buildResults());\n this.recordStat(\"query\", this.query);\n this.recordStat(\"init_time\", this.initTime);\n if (this.initStartTime) {\n this.recordStat(\"init_start_time\", this.initStartTime);\n this.recordStat(\"onload_time\", this._onloadTime);\n this.initStartTime = 0;\n }\n ;\n this.recordStat(\"bootstrapped\", this.bootstrapStats.bootstrapped);\n if (this.bootstrapStats.endTime) {\n this.recordStat(\"bootstrapped_time\", this.bootstrapStats.endTime);\n this.recordStat(\"user_bootstrap_ms\", this.bootstrapStats.user);\n this.recordStat(\"other_bootstrap_ms\", this.bootstrapStats.other);\n this.bootstrapStats.endTime = 0;\n }\n ;\n this.recordStat(\"coeff2_ts\", this.bootstrapStats.coeff2_ts);\n this.recordStat(\"max_results\", this.data._maxResults);\n if ((this.backendQueries.length > 0)) {\n if ((this.backendQueries.length > this.data.logBackendQueriesWindow)) {\n this.backendQueries = this.backendQueries.slice((this.backendQueries.length - this.data.logBackendQueriesWindow));\n };\n this.recordStat(\"backend_queries\", this.backendQueries);\n }\n ;\n if (this._reorderInfo) {\n var s = this._reorderInfo;\n s.organic.forEach(function(x) {\n delete x.text;\n });\n this.recordStat(\"s_count\", s.position_data.length);\n this.recordStat(\"s_bootstrap_id\", s.s_bootstrap_id);\n this.recordStat(\"s_organic_results\", JSON.stringify(s.organic));\n this.recordStat(\"s_candidate_tokens\", JSON.stringify(s.tokens));\n this.recordStat(\"s_positions\", JSON.stringify(s.position_data));\n this.recordStat(\"s_options\", JSON.stringify(s.options));\n this.recordStat(\"s_variant\", JSON.stringify(s.variant));\n }\n ;\n var t = this.stats;\n for (var u in this.avgStats) {\n var v = this.avgStats[u];\n t[u] = (v[0] / v[1]);\n };\n for (var w in this.appendStats) {\n t[w] = JSON.stringify(this.appendStats[w]);;\n };\n return t;\n };\n q.prototype.buildResults = function() {\n var s = ((this.results || [])).map(function(t, u) {\n var v = k.parse(this.data.getTextToIndex(t)).tokens, w = ((t.rankType || t.render_type) || t.type), x = (t.bootstrapped ? 1 : 0), y = (t.s_token || \"\"), z = (r(v, this.query) || this.query), aa = t.index_rank, ba = t.match_type, ca = t.l_type, da = t.vertical_type, ea = t.prefix_match, fa = t.prefix_length;\n if ((typeof t.groupIndex == \"number\")) {\n return [t.groupIndex,t.indexInGroup,t.uid,w,x,y,z,aa,ba,ea,fa,t.origIndex,ca,da,]\n };\n return [0,u,t.uid,w,x,y,z,aa,ba,ea,fa,t.origIndex,ca,da,];\n }.bind(this));\n return JSON.stringify(s);\n };\n q.prototype.submit = function() {\n var s = this._dataToSubmit();\n switch (this.data.recordingRoute) {\n case \"double_recording\":\n if ((Math.random() > 105176)) {\n s.recorded_first = \"legacy\";\n setTimeout(this.submitThroughAsyncRequest.bind(this, s), 0);\n i.post(this._banzaiRoute, s, {\n delay: 0,\n retry: true\n });\n }\n else {\n s.recorded_first = \"banzai\";\n i.post(this._banzaiRoute, s, {\n delay: 0,\n retry: true\n });\n setTimeout(this.submitThroughAsyncRequest.bind(this, s), 0);\n }\n ;\n break;\n case \"random_recording\":\n if ((Math.random() > 105500)) {\n this.submitThroughAsyncRequest(s);\n }\n else i.post(this._banzaiRoute, s, {\n delay: 0,\n retry: true\n });\n ;\n break;\n case \"banzai_basic\":\n i.post(this._banzaiRoute, s);\n break;\n case \"banzai_vital\":\n i.post(this._banzaiRoute, s, {\n delay: 0,\n retry: true\n });\n break;\n default:\n this.submitThroughAsyncRequest(s);\n };\n this._reset();\n };\n q.prototype.submitThroughAsyncRequest = function(s) {\n if ((Object.keys(s).length > 0)) {\n new h().setURI(this._endPoint).setMethod(\"POST\").setData({\n stats: s\n }).setOption(\"handleErrorAfterUnload\", true).setErrorHandler(function(t) {\n s.retry = true;\n new h().setURI(this._endPoint).setMethod(\"POST\").setData({\n stats: s\n }).setOption(\"asynchronous\", false).send();\n }.bind(this)).send();\n };\n };\n var r = function(s, t) {\n var u = k.parse(t);\n if ((u.flatValue[(u.flatValue.length - 1)] === \" \")) {\n return u.flatValue\n };\n var v = u.tokens[(u.tokens.length - 1)], w = {\n };\n s.forEach(function(ba) {\n w[ba] = (((w[ba] || 0)) + 1);\n });\n var x = {\n }, y = u.tokens.slice(0, (u.tokens.length - 1));\n y.forEach(function(ba) {\n x[ba] = (((x[ba] || 0)) + 1);\n });\n for (var z = 0; (z < s.length); ++z) {\n var aa = s[z];\n if (((aa.indexOf(v) === 0) && (((w[aa] - ((x[aa] || 0))) > 0)))) {\n y.push(aa);\n return y.join(\" \");\n }\n ;\n };\n return undefined;\n };\n o(q.prototype, {\n _endPoint: \"/ajax/typeahead/record_metrics.php\",\n _banzaiRoute: \"search\"\n });\n e.exports = q;\n});\n__d(\"LayerSlowlyFadeOnShow\", [\"Class\",\"LayerFadeOnShow\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"LayerFadeOnShow\"), i = b(\"emptyFunction\");\n function j(k) {\n this.parent.construct(this, k);\n };\n g.extend(j, h);\n j.prototype._getDuration = i.thatReturns(500);\n e.exports = j;\n});"); |
| // 9128 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s5f7fb1571d9ddaabf0918a66ba121ad96869441c"); |
| // 9129 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"+P3v8\",]);\n}\n;\n;\n__d(\"FriendBrowserCheckboxController\", [\"AsyncRequest\",\"JSBNG__CSS\",\"DOM\",\"JSBNG__Event\",\"Form\",\"OnVisible\",\"$\",\"bind\",\"copyProperties\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"JSBNG__CSS\"), i = b(\"DOM\"), j = b(\"JSBNG__Event\"), k = b(\"Form\"), l = b(\"OnVisible\"), m = b(\"$\"), n = b(\"bind\"), o = b(\"copyProperties\"), p = b(\"ge\");\n function q() {\n \n };\n;\n o(q, {\n instances: {\n },\n getInstance: function(r) {\n return this.instances[r];\n }\n });\n o(q.prototype, {\n init: function(r, s, t, u) {\n q.instances[r] = this;\n this._id = r;\n this._simplified = t;\n this._infiniteScroll = u;\n this._form = s;\n this._contentGrid = i.JSBNG__find(s, \".friendBrowserCheckboxContentGrid\");\n this._loadingIndicator = i.JSBNG__find(s, \".friendBrowsingCheckboxContentLoadingIndicator\");\n this._checkboxResults = i.JSBNG__find(s, \".friendBrowserCheckboxResults\");\n this._contentPager = i.JSBNG__find(s, \".friendBrowserCheckboxContentPager\");\n this.numGetNewRequests = 0;\n this.queuedRequests = {\n };\n j.listen(this._form, \"submit\", this.onFormSubmit.bind(this));\n },\n addTypeahead: function(r, s) {\n r.subscribe(\"select\", this.onHubSelect.bind(this, r, s));\n if (this._simplified) {\n r.subscribe(\"unselect\", this.onHubSelect.bind(this, r, s));\n }\n ;\n ;\n },\n onFormSubmit: function() {\n this.getNew(true);\n return false;\n },\n addSelector: function(r) {\n r.subscribe(\"change\", this.getNew.bind(this, false));\n },\n onHubSelect: function(r, s, JSBNG__event, t) {\n if (this._simplified) {\n this.getNew(true);\n return;\n }\n ;\n ;\n if (!((((JSBNG__event == \"select\")) && t.selected))) {\n return;\n }\n ;\n ;\n var u = this.buildNewCheckbox(s, t.selected.text, t.selected.uid), v = i.JSBNG__find(this._form, ((\".checkboxes_\" + s)));\n i.appendContent(v.firstChild, u);\n var w = i.scry(r.getElement(), \"input[type=\\\"button\\\"]\");\n if (((w && w[0]))) {\n w[0].click();\n }\n ;\n ;\n this.getNew(true);\n },\n buildNewCheckbox: function(r, s, t) {\n var u = ((((r + \"_ids_\")) + t)), v = ((r + \"_ids[]\")), w = i.create(\"input\", {\n id: u,\n type: \"checkbox\",\n value: t,\n JSBNG__name: v,\n checked: true\n });\n j.listen(w, \"click\", n(this, \"getNew\", false));\n var x = i.create(\"td\", null, w);\n h.addClass(x, \"vTop\");\n h.addClass(x, \"hLeft\");\n var y = i.create(\"label\", null, s), z = i.create(\"td\", null, y);\n h.addClass(z, \"vMid\");\n h.addClass(z, \"hLeft\");\n var aa = i.create(\"tr\");\n aa.appendChild(x);\n aa.appendChild(z);\n return aa;\n },\n showMore: function() {\n var r = i.scry(this._contentPager, \".friendBrowserMorePager\")[0];\n if (!r) {\n return false;\n }\n ;\n ;\n if (h.hasClass(r, \"async_saving\")) {\n return false;\n }\n ;\n ;\n var s = this.numGetNewRequests, t = k.serialize(this._form);\n t.show_more = true;\n var u = new g().setURI(\"/ajax/growth/friend_browser/checkbox.php\").setData(t).setHandler(n(this, function(v) {\n this.showMoreHandler(v, s);\n })).setStatusElement(r).send();\n },\n showMoreHandler: function(r, s) {\n if (((s == this.numGetNewRequests))) {\n var t = r.payload;\n i.appendContent(this._contentGrid, t.results);\n this.updatePagerAndExtraData(t.pager, t.extra_data);\n }\n ;\n ;\n },\n getNew: function(r) {\n this.numGetNewRequests++;\n var s = this.numGetNewRequests;\n h.addClass(this._checkboxResults, \"friendBrowserCheckboxContentOnload\");\n if (p(\"friendBrowserCI\")) {\n h.addClass(m(\"friendBrowserCI\"), \"friendBrowserCheckboxContentOnload\");\n }\n ;\n ;\n h.show(this._loadingIndicator);\n var t = k.serialize(this._form);\n t.used_typeahead = r;\n new g().setURI(\"/ajax/growth/friend_browser/checkbox.php\").setData(t).setHandler(n(this, function(u) {\n this.getNewHandler(u, s);\n })).send();\n },\n getNewHandler: function(r, s) {\n if (((s == this.numGetNewRequests))) {\n var t = r.payload;\n i.setContent(this._contentGrid, t.results);\n h.removeClass(this._checkboxResults, \"friendBrowserCheckboxContentOnload\");\n if (p(\"friendBrowserCI\")) {\n h.hide(m(\"friendBrowserCI\"));\n }\n ;\n ;\n h.hide(this._loadingIndicator);\n this.updatePagerAndExtraData(t.pager, t.extra_data);\n }\n ;\n ;\n },\n updatePagerAndExtraData: function(r, s) {\n i.setContent(this._contentPager, r);\n if (this._infiniteScroll) {\n this.setupOnVisible();\n }\n ;\n ;\n i.replace(this._form.elements.extra_data, s);\n },\n setupOnVisible: function() {\n var r = i.scry(this._contentPager, \".friendBrowserMorePager\")[0];\n if (((r && ((this._id != \"jewel\"))))) {\n ((this._onVisible && this._onVisible.remove()));\n this._onVisible = new l(r, n(this, \"showMore\"), false, 1000);\n }\n ;\n ;\n }\n });\n e.exports = q;\n});\n__d(\"FacebarResultStoreUtils\", [], function(a, b, c, d, e, f) {\n var g = {\n processEntityResult: function(h, i, j, k) {\n var l = {\n semantic: i.toString(),\n structure: [{\n type: ((\"ent:\" + h)),\n text: j,\n uid: i\n },],\n type: ((((\"{\" + h)) + \"}\")),\n cost: k,\n cache_id_length: 0,\n bolding: []\n };\n l.tuid = JSON.stringify({\n semantic: l.semantic,\n structure: l.structure\n });\n return l;\n },\n getRawTextFromStructured: function(h) {\n var i = \"\";\n h.forEach(function(j, k) {\n i += j.getText();\n });\n return i;\n }\n };\n e.exports = g;\n});\n__d(\"HashtagParser\", [\"URLMatcher\",], function(a, b, c, d, e, f) {\n var g = b(\"URLMatcher\"), h = 100, i = 30, j = /@\\[([0-9]+):([0-9]+):((?:[^\\\\\\]]*(?:\\\\.)*)*)\\]/g;\n function k() {\n var da = ((((((((((((((((((((((((((((((((\"\\u00c0-\\u00d6\" + \"\\u00d8-\\u00f6\")) + \"\\u00f8-\\u00ff\")) + \"\\u0100-\\u024f\")) + \"\\u0253-\\u0254\")) + \"\\u0256-\\u0257\")) + \"\\u0259\")) + \"\\u025b\")) + \"\\u0263\")) + \"\\u0268\")) + \"\\u026f\")) + \"\\u0272\")) + \"\\u0289\")) + \"\\u028b\")) + \"\\u02bb\")) + \"\\u0300-\\u036f\")) + \"\\u1e00-\\u1eff\")), ea = ((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((\"\\u0400-\\u04ff\" + \"\\u0500-\\u0527\")) + \"\\u2de0-\\u2dff\")) + \"\\ua640-\\ua69f\")) + \"\\u0591-\\u05bf\")) + \"\\u05c1-\\u05c2\")) + \"\\u05c4-\\u05c5\")) + \"\\u05c7\")) + \"\\u05d0-\\u05ea\")) + \"\\u05f0-\\u05f4\")) + \"\\ufb12-\\ufb28\")) + \"\\ufb2a-\\ufb36\")) + \"\\ufb38-\\ufb3c\")) + \"\\ufb3e\")) + \"\\ufb40-\\ufb41\")) + \"\\ufb43-\\ufb44\")) + \"\\ufb46-\\ufb4f\")) + \"\\u0610-\\u061a\")) + \"\\u0620-\\u065f\")) + \"\\u066e-\\u06d3\")) + \"\\u06d5-\\u06dc\")) + \"\\u06de-\\u06e8\")) + \"\\u06ea-\\u06ef\")) + \"\\u06fa-\\u06fc\")) + \"\\u06ff\")) + \"\\u0750-\\u077f\")) + \"\\u08a0\")) + \"\\u08a2-\\u08ac\")) + \"\\u08e4-\\u08fe\")) + \"\\ufb50-\\ufbb1\")) + \"\\ufbd3-\\ufd3d\")) + \"\\ufd50-\\ufd8f\")) + \"\\ufd92-\\ufdc7\")) + \"\\ufdf0-\\ufdfb\")) + \"\\ufe70-\\ufe74\")) + \"\\ufe76-\\ufefc\")) + \"\\u200c-\\u200c\")) + \"\\u0e01-\\u0e3a\")) + \"\\u0e40-\\u0e4e\")) + \"\\u1100-\\u11ff\")) + \"\\u3130-\\u3185\")) + \"\\ua960-\\ua97f\")) + \"\\uac00-\\ud7af\")) + \"\\ud7b0-\\ud7ff\")) + \"\\uffa1-\\uffdc\")), fa = String.fromCharCode, ga = ((((((((((((((((((((((((((((((((\"\\u30a1-\\u30fa\\u30fc-\\u30fe\" + \"\\uff66-\\uff9f\")) + \"\\uff10-\\uff19\\uff21-\\uff3a\")) + \"\\uff41-\\uff5a\")) + \"\\u3041-\\u3096\\u3099-\\u309e\")) + \"\\u3400-\\u4dbf\")) + \"\\u4e00-\\u9fff\")) + fa(173824))) + \"-\")) + fa(177983))) + fa(177984))) + \"-\")) + fa(178207))) + fa(194560))) + \"-\")) + fa(195103))) + \"\\u3003\\u3005\\u303b\")), ha = ((((da + ea)) + ga)), ia = ((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((\"A-Za-z\\u00aa\\u00b5\\u00ba\\u00c0-\\u00d6\\u00d8-\\u00f6\" + \"\\u00f8-\\u0241\\u0250-\\u02c1\\u02c6-\\u02d1\\u02e0-\\u02e4\\u02ee\\u037a\\u0386\")) + \"\\u0388-\\u038a\\u038c\\u038e-\\u03a1\\u03a3-\\u03ce\\u03d0-\\u03f5\\u03f7-\\u0481\")) + \"\\u048a-\\u04ce\\u04d0-\\u04f9\\u0500-\\u050f\\u0531-\\u0556\\u0559\\u0561-\\u0587\")) + \"\\u05d0-\\u05ea\\u05f0-\\u05f2\\u0621-\\u063a\\u0640-\\u064a\\u066e-\\u066f\")) + \"\\u0671-\\u06d3\\u06d5\\u06e5-\\u06e6\\u06ee-\\u06ef\\u06fa-\\u06fc\\u06ff\\u0710\")) + \"\\u0712-\\u072f\\u074d-\\u076d\\u0780-\\u07a5\\u07b1\\u0904-\\u0939\\u093d\\u0950\")) + \"\\u0958-\\u0961\\u097d\\u0985-\\u098c\\u098f-\\u0990\\u0993-\\u09a8\\u09aa-\\u09b0\")) + \"\\u09b2\\u09b6-\\u09b9\\u09bd\\u09ce\\u09dc-\\u09dd\\u09df-\\u09e1\\u09f0-\\u09f1\")) + \"\\u0a05-\\u0a0a\\u0a0f-\\u0a10\\u0a13-\\u0a28\\u0a2a-\\u0a30\\u0a32-\\u0a33\")) + \"\\u0a35-\\u0a36\\u0a38-\\u0a39\\u0a59-\\u0a5c\\u0a5e\\u0a72-\\u0a74\\u0a85-\\u0a8d\")) + \"\\u0a8f-\\u0a91\\u0a93-\\u0aa8\\u0aaa-\\u0ab0\\u0ab2-\\u0ab3\\u0ab5-\\u0ab9\\u0abd\")) + \"\\u0ad0\\u0ae0-\\u0ae1\\u0b05-\\u0b0c\\u0b0f-\\u0b10\\u0b13-\\u0b28\\u0b2a-\\u0b30\")) + \"\\u0b32-\\u0b33\\u0b35-\\u0b39\\u0b3d\\u0b5c-\\u0b5d\\u0b5f-\\u0b61\\u0b71\\u0b83\")) + \"\\u0b85-\\u0b8a\\u0b8e-\\u0b90\\u0b92-\\u0b95\\u0b99-\\u0b9a\\u0b9c\\u0b9e-\\u0b9f\")) + \"\\u0ba3-\\u0ba4\\u0ba8-\\u0baa\\u0bae-\\u0bb9\\u0c05-\\u0c0c\\u0c0e-\\u0c10\")) + \"\\u0c12-\\u0c28\\u0c2a-\\u0c33\\u0c35-\\u0c39\\u0c60-\\u0c61\\u0c85-\\u0c8c\")) + \"\\u0c8e-\\u0c90\\u0c92-\\u0ca8\\u0caa-\\u0cb3\\u0cb5-\\u0cb9\\u0cbd\\u0cde\")) + \"\\u0ce0-\\u0ce1\\u0d05-\\u0d0c\\u0d0e-\\u0d10\\u0d12-\\u0d28\\u0d2a-\\u0d39\")) + \"\\u0d60-\\u0d61\\u0d85-\\u0d96\\u0d9a-\\u0db1\\u0db3-\\u0dbb\\u0dbd\\u0dc0-\\u0dc6\")) + \"\\u0e01-\\u0e30\\u0e32-\\u0e33\\u0e40-\\u0e46\\u0e81-\\u0e82\\u0e84\\u0e87-\\u0e88\")) + \"\\u0e8a\\u0e8d\\u0e94-\\u0e97\\u0e99-\\u0e9f\\u0ea1-\\u0ea3\\u0ea5\\u0ea7\")) + \"\\u0eaa-\\u0eab\\u0ead-\\u0eb0\\u0eb2-\\u0eb3\\u0ebd\\u0ec0-\\u0ec4\\u0ec6\")) + \"\\u0edc-\\u0edd\\u0f00\\u0f40-\\u0f47\\u0f49-\\u0f6a\\u0f88-\\u0f8b\\u1000-\\u1021\")) + \"\\u1023-\\u1027\\u1029-\\u102a\\u1050-\\u1055\\u10a0-\\u10c5\\u10d0-\\u10fa\\u10fc\")) + \"\\u1100-\\u1159\\u115f-\\u11a2\\u11a8-\\u11f9\\u1200-\\u1248\\u124a-\\u124d\")) + \"\\u1250-\\u1256\\u1258\\u125a-\\u125d\\u1260-\\u1288\\u128a-\\u128d\\u1290-\\u12b0\")) + \"\\u12b2-\\u12b5\\u12b8-\\u12be\\u12c0\\u12c2-\\u12c5\\u12c8-\\u12d6\\u12d8-\\u1310\")) + \"\\u1312-\\u1315\\u1318-\\u135a\\u1380-\\u138f\\u13a0-\\u13f4\\u1401-\\u166c\")) + \"\\u166f-\\u1676\\u1681-\\u169a\\u16a0-\\u16ea\\u1700-\\u170c\\u170e-\\u1711\")) + \"\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176c\\u176e-\\u1770\\u1780-\\u17b3\\u17d7\")) + \"\\u17dc\\u1820-\\u1877\\u1880-\\u18a8\\u1900-\\u191c\\u1950-\\u196d\\u1970-\\u1974\")) + \"\\u1980-\\u19a9\\u19c1-\\u19c7\\u1a00-\\u1a16\\u1d00-\\u1dbf\\u1e00-\\u1e9b\")) + \"\\u1ea0-\\u1ef9\\u1f00-\\u1f15\\u1f18-\\u1f1d\\u1f20-\\u1f45\\u1f48-\\u1f4d\")) + \"\\u1f50-\\u1f57\\u1f59\\u1f5b\\u1f5d\\u1f5f-\\u1f7d\\u1f80-\\u1fb4\\u1fb6-\\u1fbc\")) + \"\\u1fbe\\u1fc2-\\u1fc4\\u1fc6-\\u1fcc\\u1fd0-\\u1fd3\\u1fd6-\\u1fdb\\u1fe0-\\u1fec\")) + \"\\u1ff2-\\u1ff4\\u1ff6-\\u1ffc\\u2071\\u207f\\u2090-\\u2094\\u2102\\u2107\")) + \"\\u210a-\\u2113\\u2115\\u2119-\\u211d\\u2124\\u2126\\u2128\\u212a-\\u212d\")) + \"\\u212f-\\u2131\\u2133-\\u2139\\u213c-\\u213f\\u2145-\\u2149\\u2c00-\\u2c2e\")) + \"\\u2c30-\\u2c5e\\u2c80-\\u2ce4\\u2d00-\\u2d25\\u2d30-\\u2d65\\u2d6f\\u2d80-\\u2d96\")) + \"\\u2da0-\\u2da6\\u2da8-\\u2dae\\u2db0-\\u2db6\\u2db8-\\u2dbe\\u2dc0-\\u2dc6\")) + \"\\u2dc8-\\u2dce\\u2dd0-\\u2dd6\\u2dd8-\\u2dde\\u3005-\\u3006\\u3031-\\u3035\")) + \"\\u303b-\\u303c\\u3041-\\u3096\\u309d-\\u309f\\u30a1-\\u30fa\\u30fc-\\u30ff\")) + \"\\u3105-\\u312c\\u3131-\\u318e\\u31a0-\\u31b7\\u31f0-\\u31ff\\u3400-\\u4db5\")) + \"\\u4e00-\\u9fbb\\ua000-\\ua48c\\ua800-\\ua801\\ua803-\\ua805\\ua807-\\ua80a\")) + \"\\ua80c-\\ua822\\uac00-\\ud7a3\\uf900-\\ufa2d\\ufa30-\\ufa6a\\ufa70-\\ufad9\")) + \"\\ufb00-\\ufb06\\ufb13-\\ufb17\\ufb1d\\ufb1f-\\ufb28\\ufb2a-\\ufb36\\ufb38-\\ufb3c\")) + \"\\ufb3e\\ufb40-\\ufb41\\ufb43-\\ufb44\\ufb46-\\ufbb1\\ufbd3-\\ufd3d\\ufd50-\\ufd8f\")) + \"\\ufd92-\\ufdc7\\ufdf0-\\ufdfb\\ufe70-\\ufe74\\ufe76-\\ufefc\\uff21-\\uff3a\")) + \"\\uff41-\\uff5a\\uff66-\\uffbe\\uffc2-\\uffc7\\uffca-\\uffcf\\uffd2-\\uffd7\")) + \"\\uffda-\\uffdc\")), ja = ((((((((((((((((((((((((((((((((((((((((\"\\u0300-\\u036f\\u0483-\\u0486\\u0591-\\u05b9\\u05bb-\\u05bd\\u05bf\" + \"\\u05c1-\\u05c2\\u05c4-\\u05c5\\u05c7\\u0610-\\u0615\\u064b-\\u065e\\u0670\")) + \"\\u06d6-\\u06dc\\u06df-\\u06e4\\u06e7-\\u06e8\\u06ea-\\u06ed\\u0711\\u0730-\\u074a\")) + \"\\u07a6-\\u07b0\\u0901-\\u0903\\u093c\\u093e-\\u094d\\u0951-\\u0954\\u0962-\\u0963\")) + \"\\u0981-\\u0983\\u09bc\\u09be-\\u09c4\\u09c7-\\u09c8\\u09cb-\\u09cd\\u09d7\")) + \"\\u09e2-\\u09e3\\u0a01-\\u0a03\\u0a3c\\u0a3e-\\u0a42\\u0a47-\\u0a48\\u0a4b-\\u0a4d\")) + \"\\u0a70-\\u0a71\\u0a81-\\u0a83\\u0abc\\u0abe-\\u0ac5\\u0ac7-\\u0ac9\\u0acb-\\u0acd\")) + \"\\u0ae2-\\u0ae3\\u0b01-\\u0b03\\u0b3c\\u0b3e-\\u0b43\\u0b47-\\u0b48\\u0b4b-\\u0b4d\")) + \"\\u0b56-\\u0b57\\u0b82\\u0bbe-\\u0bc2\\u0bc6-\\u0bc8\\u0bca-\\u0bcd\\u0bd7\")) + \"\\u0c01-\\u0c03\\u0c3e-\\u0c44\\u0c46-\\u0c48\\u0c4a-\\u0c4d\\u0c55-\\u0c56\")) + \"\\u0c82-\\u0c83\\u0cbc\\u0cbe-\\u0cc4\\u0cc6-\\u0cc8\\u0cca-\\u0ccd\\u0cd5-\\u0cd6\")) + \"\\u0d02-\\u0d03\\u0d3e-\\u0d43\\u0d46-\\u0d48\\u0d4a-\\u0d4d\\u0d57\\u0d82-\\u0d83\")) + \"\\u0dca\\u0dcf-\\u0dd4\\u0dd6\\u0dd8-\\u0ddf\\u0df2-\\u0df3\\u0e31\\u0e34-\\u0e3a\")) + \"\\u0e47-\\u0e4e\\u0eb1\\u0eb4-\\u0eb9\\u0ebb-\\u0ebc\\u0ec8-\\u0ecd\\u0f18-\\u0f19\")) + \"\\u0f35\\u0f37\\u0f39\\u0f3e-\\u0f3f\\u0f71-\\u0f84\\u0f86-\\u0f87\\u0f90-\\u0f97\")) + \"\\u0f99-\\u0fbc\\u0fc6\\u102c-\\u1032\\u1036-\\u1039\\u1056-\\u1059\\u135f\")) + \"\\u1712-\\u1714\\u1732-\\u1734\\u1752-\\u1753\\u1772-\\u1773\\u17b6-\\u17d3\\u17dd\")) + \"\\u180b-\\u180d\\u18a9\\u1920-\\u192b\\u1930-\\u193b\\u19b0-\\u19c0\\u19c8-\\u19c9\")) + \"\\u1a17-\\u1a1b\\u1dc0-\\u1dc3\\u20d0-\\u20dc\\u20e1\\u20e5-\\u20eb\\u302a-\\u302f\")) + \"\\u3099-\\u309a\\ua802\\ua806\\ua80b\\ua823-\\ua827\\ufb1e\\ufe00-\\ufe0f\")) + \"\\ufe20-\\ufe23\")), ka = ((((((((\"0-9\\u0660-\\u0669\\u06f0-\\u06f9\\u0966-\\u096f\\u09e6-\\u09ef\" + \"\\u0a66-\\u0a6f\\u0ae6-\\u0aef\\u0b66-\\u0b6f\\u0be6-\\u0bef\\u0c66-\\u0c6f\")) + \"\\u0ce6-\\u0cef\\u0d66-\\u0d6f\\u0e50-\\u0e59\\u0ed0-\\u0ed9\\u0f20-\\u0f29\")) + \"\\u1040-\\u1049\\u17e0-\\u17e9\\u1810-\\u1819\\u1946-\\u194f\\u19d0-\\u19d9\")) + \"\\uff10-\\uff19\")), la = ((((ia + ja)) + ha)), ma = ((ka + \"_\")), na = ((la + ma)), oa = ((((\"[\" + la)) + \"]\")), pa = ((((\"[\" + na)) + \"]\")), qa = ((((\"^|$|[^&\" + na)) + \"]\")), ra = \"[#\\\\uFF03]\", sa = ((((((((((((((((((\"(\" + qa)) + \")(\")) + ra)) + \")(\")) + pa)) + \"*\")) + oa)) + pa)) + \"*)\"));\n return new RegExp(sa, \"ig\");\n };\n;\n function l(da) {\n var ea = y(da), fa = 0, ga = 0;\n return n(da).map(function(ha) {\n while (((fa < ea.length))) {\n var ia = ea[fa], ja = ((ia.offset - ga));\n if (((ja < ha.offset))) {\n ga += ((ia.token.length - ia.JSBNG__name.length));\n fa++;\n }\n else break;\n ;\n ;\n };\n ;\n return {\n marker: ha.marker,\n tag: ha.hashtag,\n rawOffset: ((ha.offset + ga)),\n offset: ha.offset\n };\n });\n };\n;\n function m(da) {\n return o(da, t(da));\n };\n;\n function n(da) {\n var ea = aa(da);\n return o(ea, p(da, ea));\n };\n;\n function o(da, ea) {\n return r(da).slice(0, i).filter(function(fa) {\n var ga = v(fa.offset, fa.hashtag.length, ea);\n return ((!ga && ((fa.hashtag.length <= h))));\n });\n };\n;\n function p(da, ea) {\n return u(s(da), t(ea));\n };\n;\n var q = k();\n function r(da) {\n var ea = [];\n da.replace(q, function(fa, ga, ha, ia, ja) {\n ea.push({\n marker: ha,\n hashtag: ia,\n offset: ((ja + ga.length))\n });\n });\n return ea;\n };\n;\n function s(da) {\n return ba(da).map(function(ea) {\n return [ea.offset,ea.JSBNG__name.length,];\n });\n };\n;\n function t(da) {\n var ea = [], fa, ga = 0;\n while ((fa = g.permissiveMatch(da))) {\n var ha = da.indexOf(fa);\n ea.push([((ga + ha)),fa.length,]);\n da = da.substring(((ha + fa.length)));\n ga += ((ha + fa.length));\n };\n ;\n return ea;\n };\n;\n function u(da, ea) {\n var fa = [], ga = 0, ha = 0, ia = 0;\n while (((((ga < da.length)) && ((ha < ea.length))))) {\n if (((da[ga][0] > ea[ha][0]))) {\n fa[ia++] = ea[ha++];\n }\n else fa[ia++] = da[ga++];\n ;\n ;\n };\n ;\n return fa.concat(da.slice(ga), ea.slice(ha));\n };\n;\n function v(da, ea, fa) {\n if (!fa) {\n return false;\n }\n ;\n ;\n var ga = x(fa, da);\n return ((w(da, ea, fa, ga) || w(da, ea, fa, ((ga + 1)))));\n };\n;\n function w(da, ea, fa, ga) {\n if (!fa[ga]) {\n return false;\n }\n ;\n ;\n var ha = fa[ga][0], ia = fa[ga][1];\n return !((((((((da + ea)) - 1)) < ha)) || ((da > ((((ha + ia)) - 1))))));\n };\n;\n function x(da, ea) {\n var fa = 0, ga = ((da.length - 1));\n while (((fa <= ga))) {\n var ha = Math.floor(((((fa + ga)) / 2))), ia = da[ha][0];\n if (((ia == ea))) {\n return ha;\n }\n else if (((ia < ea))) {\n fa = ((ha + 1));\n }\n else ga = ((ha - 1));\n \n ;\n ;\n };\n ;\n return ga;\n };\n;\n function y(da) {\n var ea = [];\n da.replace(j, function(fa, ga, ha, ia, ja) {\n ea.push({\n token: fa,\n id: ga,\n type: ha,\n JSBNG__name: ia,\n offset: ja\n });\n });\n return ea;\n };\n;\n function z(da) {\n return ((da ? da.replace(/\\\\([^\\\\])/g, \"$1\").replace(/\\\\\\\\/g, \"\\\\\") : null));\n };\n;\n function aa(da) {\n return da.replace(j, function(ea, fa, ga, ha, ia) {\n return z(ha);\n });\n };\n;\n function ba(da) {\n var ea = 0, fa = 0;\n return y(da).map(function(ga) {\n var ha = da.indexOf(ga.token, fa);\n fa = ((ha + 1));\n ha -= ea;\n var ia = z(ga.JSBNG__name);\n ea += ((ga.token.length - ia.length));\n if (((ha >= 0))) {\n return {\n id: ga.id,\n JSBNG__name: ia,\n type: ga.type,\n offset: ha\n };\n }\n ;\n ;\n });\n };\n;\n var ca = {\n };\n ca.parse = l;\n ca.parseWithoutMentions = m;\n e.exports = ca;\n});\n__d(\"HashtagSearchResultUtils\", [\"FacebarResultStoreUtils\",\"HashtagParser\",\"HashtagSearchResultConfig\",\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"FacebarResultStoreUtils\"), h = b(\"HashtagParser\"), i = b(\"HashtagSearchResultConfig\"), j = b(\"URI\"), k = {\n getHashtagFromQuery: function(l) {\n var m = h.parse(l);\n if (((((m && ((m.length === 1)))) && ((m[0].offset === 0))))) {\n return m[0].tag;\n }\n ;\n ;\n return false;\n },\n makeTypeaheadResult: function(l) {\n return {\n category: \"Hashtag\",\n path: j(((\"/hashtag/\" + l))).toString(),\n photo: i.image_url,\n rankType: null,\n replace_results: ((i.boost_result ? true : false)),\n scaled_score: 1,\n score: 0,\n text: ((\"#\" + l)),\n type: \"hashtag_exact\",\n uid: ((\"hashtag:\" + l))\n };\n },\n makeFacebarEntry: function(l) {\n return {\n category: \"Hashtag\",\n path: j(((\"/hashtag/\" + l))).toString(),\n photo: i.image_url,\n replace_results: ((i.boost_result ? true : false)),\n text: ((\"#\" + l)),\n type: \"hashtag_exact\",\n uid: ((\"hashtag:\" + l))\n };\n },\n makeFacebarResult: function(l) {\n var m = g.processEntityResult(\"hashtag_exact\", ((\"hashtag:\" + l)), ((\"#\" + l)), i.hashtag_cost);\n m.parse = {\n display: [{\n type: \"ent:hashtag_exact\",\n uid: ((\"hashtag:\" + l))\n },],\n remTokens: [],\n suffix: \"\",\n unmatch: []\n };\n return m;\n }\n };\n e.exports = k;\n});\n__d(\"ContextualHelpSearchController\", [\"JSBNG__Event\",\"AsyncRequest\",\"DOM\",\"JSBNG__CSS\",\"Focus\",\"Input\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"AsyncRequest\"), i = b(\"DOM\"), j = b(\"JSBNG__CSS\"), k = b(\"Focus\"), l = b(\"Input\"), m = b(\"copyProperties\"), n = 400;\n function o() {\n this._token = null;\n this._timerID = 0;\n this._lastQuery = null;\n this.typing_listener = null;\n this.clear_listener = null;\n this.async_request = null;\n };\n;\n m(o.prototype, {\n init: function(p, q, r, s, t) {\n this.loader = p;\n this.search_box = q;\n this.topics_area = r;\n this.results_area = s;\n this.clear_button = t;\n this.typing_listener = g.listen(this.search_box, \"keyup\", this.setTimer.bind(this));\n this.clear_listener = g.listen(this.clear_button, \"click\", this.clearResults.bind(this));\n k.set(this.search_box);\n },\n source: \"contextual_help\",\n clearResults: function() {\n this.show(this.topics_area);\n this._lastQuery = \"\";\n l.reset(this.search_box);\n k.set(this.search_box);\n if (((this.async_request !== null))) {\n this.async_request.abort();\n this.async_request = null;\n }\n ;\n ;\n j.addClass(this.clear_button, \"hidden_elem\");\n },\n update: function() {\n var p = l.getValue(this.search_box);\n if (((p === this._lastQuery))) {\n return;\n }\n ;\n ;\n this._lastQuery = p;\n if (((p === \"\"))) {\n this.clearResults();\n return;\n }\n ;\n ;\n this.show(this.loader);\n var q = {\n query: p,\n width: ((this._width || n)),\n source: this.source\n };\n this.async_request = new h(\"/help/ajax/search/\").setData(q).setHandler(function(r) {\n this._update(r);\n }.bind(this));\n this.async_request.send();\n },\n _update: function(p) {\n this.async_request = null;\n var q = p.getPayload().results;\n i.setContent(this.results_area, q);\n this.show(this.results_area);\n if (((l.getValue(this.search_box) === \"\"))) {\n this.clearResults();\n }\n else j.removeClass(this.clear_button, \"hidden_elem\");\n ;\n ;\n },\n setTimer: function() {\n if (((this._timerID !== 0))) {\n JSBNG__clearTimeout(this._timerID);\n }\n ;\n ;\n this._timerID = JSBNG__setTimeout(this.update.bind(this), 300);\n if (((this.async_request != null))) {\n this.async_request.abort();\n this.async_request = null;\n }\n ;\n ;\n },\n show: function(p) {\n var q = [this.loader,this.topics_area,this.results_area,];\n for (var r = 0; ((r < q.length)); r++) {\n j.addClass(q[r], \"hidden_elem\");\n ;\n };\n ;\n j.removeClass(p, \"hidden_elem\");\n }\n });\n e.exports = o;\n});\n__d(\"RequestsJewel\", [\"Arbiter\",\"AsyncRequest\",\"AsyncSignal\",\"ChannelConstants\",\"JSBNG__CSS\",\"DOM\",\"JSBNG__Event\",\"FriendBrowserCheckboxController\",\"LinkController\",\"Parent\",\"ScrollableArea\",\"Vector\",\"copyProperties\",\"ge\",\"shield\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncRequest\"), i = b(\"AsyncSignal\"), j = b(\"ChannelConstants\"), k = b(\"JSBNG__CSS\"), l = b(\"DOM\"), m = b(\"JSBNG__Event\"), n = b(\"FriendBrowserCheckboxController\"), o = b(\"LinkController\"), p = b(\"Parent\"), q = b(\"ScrollableArea\"), r = b(\"Vector\"), s = b(\"copyProperties\"), t = b(\"ge\"), u = b(\"shield\"), v = b(\"tx\");\n function w() {\n \n };\n;\n s(w, {\n instance: null,\n getInstance: function() {\n return this.instance;\n }\n });\n s(w.prototype, {\n init: function(x, y, z) {\n w.instance = this;\n this.countNew = 0;\n this.jewel = x;\n this.jewelFlyoutCase = x.getRoot();\n this.jewelFlyout = t(\"fbRequestsFlyout\");\n this.newCountSpan = t(\"newRequestCount\");\n this.folder = y;\n this.doNewMarkRead = z;\n this.openTimestamp = 0;\n this._requestList = {\n };\n this._egoData = {\n };\n this._requestCount = 0;\n this.egoPredictedCount = 0;\n this.pendingCount = 0;\n this.shouldLogEgoClick = false;\n this.shouldClearPredictionAssocOnClick = false;\n var aa = t(\"requestsMarkReadButton\");\n if (aa) {\n m.listen(aa, \"click\", u(this._markRead, this));\n }\n ;\n ;\n this.jewel.subscribe(\"marked-seen\", u(this._markSeenCallback, this));\n this.jewel.subscribe(\"JSBNG__closed\", u(this._clearNewItems, this));\n this.jewel.subscribe(\"updated\", this._updateCount.bind(this));\n this.jewel.subscribe(\"opened\", this._openHandler.bind(this));\n o.registerHandler(this._handleLink.bind(this));\n g.subscribe(j.getArbiterType(\"jewel_requests_add\"), this._addRequest.bind(this));\n g.subscribe(j.getArbiterType(\"jewel_requests_remove_old\"), this._removeOldRequest.bind(this));\n g.subscribe(j.getArbiterType(\"friend_requests_seen\"), this._markSeenFromMessage.bind(this));\n g.subscribe(\"jewel/ego_predicted_count\", function(ba, ca) {\n this.egoPredictedCount = ca.ego_predicted_count;\n this.pendingCount = ca.pending_count;\n this.egoUnseenTimestamp = ca.unseen_timestamp;\n this.shouldLogEgoClick = ca.should_log_ego_click;\n this.actionContext = ca.action_context;\n }.bind(this));\n m.listen(this.jewelFlyout, \"submit\", function(ba) {\n var ca = p.byClass(ba.getTarget(), \"objectListItem\");\n if (ca) {\n k.removeClass(ca, \"jewelItemNew\");\n k.addClass(ca, \"jewelItemResponded\");\n this.pageInCollapsedRequests();\n }\n ;\n ;\n }.bind(this));\n this.setupScroll();\n return this;\n },\n setupScroll: function() {\n var x = l.scry(this.jewelFlyout, \".uiScrollableAreaWrap\")[0];\n if (x) {\n this._scrollableWrap = x;\n this._lastLinkPosition = 0;\n this._scrollListener = m.listen(x, \"JSBNG__scroll\", this._handleScroll.bind(this), m.Priority._BUBBLE);\n }\n ;\n ;\n },\n fromDom: function() {\n l.scry(this.jewelFlyout, \".jewelItemList li.objectListItem\").forEach(function(x) {\n var y = x.getAttribute(\"id\");\n if (y) {\n var z = t(((y + \"_status\"))), aa = this._parseIDToInts(y), ba = z.getAttribute(\"data-ego\");\n if (aa.requester) {\n this._requestList[aa.requester] = y;\n if (ba) {\n this._egoData[ba] = ba;\n }\n ;\n ;\n }\n ;\n ;\n ++this._requestCount;\n }\n ;\n ;\n }.bind(this));\n this._conditionShowEmptyMessage();\n },\n _parseID: function(x) {\n var y = x.match(/^(\\d+)_(\\d+)/);\n return (((y) ? {\n requester: y[1],\n type: y[2]\n } : undefined));\n },\n _parseIDToInts: function(x) {\n var y = ((x ? this._parseID(x) : undefined)), z;\n if (((y && y.requester))) {\n z = parseInt(y.requester, 10);\n if (isNaN(z)) {\n z = undefined;\n }\n ;\n ;\n }\n ;\n ;\n var aa;\n if (((y && y.type))) {\n aa = parseInt(y.type, 10);\n if (isNaN(aa)) {\n aa = undefined;\n }\n ;\n ;\n }\n ;\n ;\n return {\n requester: z,\n type: aa\n };\n },\n _handleLink: function(x, JSBNG__event) {\n var y = p.byClass(x, \"jewelItemNew\");\n if (((((y && p.byClass(y, \"fbRequestList\"))) && p.byClass(y, \"beeperEnabled\")))) {\n var z = this._parseID(y.id);\n ((z && this._markSeenCallback(z.requester, z.type)));\n g.inform(\"jewel/count-updated\", {\n jewel: \"requests\",\n count: --this.countNew\n });\n k.removeClass(y, \"jewelItemNew\");\n }\n ;\n ;\n return true;\n },\n _handleScroll: function() {\n var x = l.scry(this._scrollableWrap, \".uiMorePager\");\n if (((!x || ((t(\"fbRequestsJewelManualPager\") && ((x.length < 2))))))) {\n return;\n }\n ;\n ;\n var y = x.pop();\n if (y) {\n var z = r.getElementPosition(y, \"viewport\").y;\n if (((z > 0))) {\n k.addClass(p.byClass(this._scrollableWrap, \"uiScrollableArea\"), \"contentAfter\");\n }\n ;\n ;\n var aa = l.JSBNG__find(y, \"a\");\n if (!aa) {\n return;\n }\n ;\n ;\n var ba = r.getElementPosition(aa, \"viewport\").y;\n if (((ba == this._lastLinkPosition))) {\n return;\n }\n ;\n ;\n var ca = ((r.getElementPosition(this._scrollableWrap, \"viewport\").y + r.getElementDimensions(this._scrollableWrap).y));\n if (((((((ba - 300)) < ca)) && ((ba > 0))))) {\n this._lastLinkPosition = ba;\n var da = aa.getAttribute(\"ajaxify\");\n if (da) {\n new h(da).setRelativeTo(aa).setStatusElement(p.byClass(aa, \"stat_elem\")).send();\n }\n else n.getInstance(\"jewel\").showMore();\n ;\n ;\n }\n ;\n ;\n }\n ;\n ;\n },\n _addRequest: function(x, y) {\n if (!y) {\n return;\n }\n ;\n ;\n var z = y.obj.from, aa = y.obj.suggester, ba = this._parseIDToInts(this._requestList[z]).type, ca = ((((ba === 19)) && !aa));\n if (((!ca && ((ba || this.jewel.isOpen()))))) {\n return;\n }\n ;\n ;\n if (t(\"fbRequestsJewelLoading\")) {\n new h().setURI(\"/ajax/requests/loader/\").send();\n }\n else {\n var da = this._onMarkupCallback.bind(this, z, !!aa), ea = {\n from: z\n };\n if (aa) {\n ea.suggester = aa;\n }\n ;\n ;\n new h().setURI(\"/ajax/friends/jewel/request_markup\").setData(ea).setHandler(da).send();\n }\n ;\n ;\n },\n _onMarkupCallback: function(x, y, z) {\n var aa = z.getPayload();\n if (!aa) {\n return;\n }\n ;\n ;\n var ba = this._requestList[x], ca = this._parseIDToInts(ba).type;\n if (((((ca === 19)) && !y))) {\n var da = ((ba && t(ba)));\n ((da && l.replace(da, aa.markup)));\n }\n else {\n var ea = l.scry(this.jewelFlyout, \".fbRequestList .uiList\")[0];\n if (!ea) {\n return;\n }\n ;\n ;\n l.prependContent(ea, aa.markup);\n var fa = {\n jewel: \"requests\",\n count: ++this.countNew\n };\n g.inform(\"jewel/count-updated\", fa);\n ++this._requestCount;\n this._conditionShowEmptyMessage();\n }\n ;\n ;\n this._requestList[x] = aa.item_id;\n },\n _removeOldRequest: function(x, y) {\n if (((((!y || this.jewel.isOpen())) || ((t(\"fbRequestsJewelLoading\") !== null))))) {\n return;\n }\n ;\n ;\n var z = this._requestList[y.obj.from], aa = ((z && t(z)));\n if (aa) {\n ((k.hasClass(aa, \"jewelItemNew\") && g.inform(\"jewel/count-updated\", {\n jewel: \"requests\",\n count: --this.countNew\n })));\n if (!k.hasClass(aa, \"jewelItemResponded\")) {\n l.remove(aa);\n delete this._requestList[y.obj.from];\n --this._requestCount;\n this._conditionShowEmptyMessage();\n }\n ;\n ;\n }\n ;\n ;\n },\n pageInCollapsedRequests: function() {\n var x = t(\"fbRequestsJewelManualPager\");\n if (x) {\n var y = l.scry(x, \".uiMorePagerPrimary\")[0];\n if (((y.style && ((y.style.display != \"none\"))))) {\n JSBNG__setTimeout(function() {\n y.click();\n }, 100);\n }\n ;\n ;\n }\n ;\n ;\n },\n _markRead: function() {\n this.jewel.markSeen();\n this._clearNewItems();\n },\n _markSeenCallback: function(x, y) {\n var z = l.scry(this.jewelFlyout, \"li\");\n new i(\"/ajax/gigaboxx/endpoint/UpdateLastSeenTime.php\", {\n folder: this.folder,\n first_item: z[0].id\n }).send();\n new h().setURI(\"/ajax/friends/jewel/predicted_count_logging\").setData({\n ego_predicted_count: this.egoPredictedCount,\n pending_count: this.pendingCount,\n unseen_timestamp: this.egoUnseenTimestamp,\n action_context: this.actionContext,\n should_log_ego_click: this.shouldLogEgoClick\n }).send();\n var aa = ((((((typeof x != \"undefined\")) && ((typeof y != \"undefined\")))) ? {\n requester: x,\n type: y\n } : {\n }));\n ((this.doNewMarkRead && new i(\"/ajax/requests/mark_read/\", aa).send()));\n },\n _markSeenFromMessage: function(x, y) {\n g.inform(\"jewel/count-updated\", {\n jewel: \"requests\",\n count: 0\n });\n },\n _removeRequest: function(x, y) {\n var z = y.obj.item_id;\n if (z) {\n var aa = t(z), ba = ((aa && k.hasClass(aa, \"jewelItemNew\")));\n ((aa ? l.remove(aa) : ((ba && g.inform(\"jewel/count-updated\", {\n jewel: \"requests\",\n count: --this.countNew\n })))));\n }\n ;\n ;\n },\n _clearNewItems: function(x, y) {\n l.scry(this.jewel.root, \"li.jewelItemNew\").forEach(function(z) {\n k.removeClass(z, \"jewelItemNew\");\n });\n },\n _updateCount: function(x, y) {\n this.countNew = y.count;\n k.conditionClass(this.jewelFlyout, \"beeperUnread\", ((this.countNew > 0)));\n k.conditionClass(this.jewelFlyoutCase, \"showRequests\", ((this.countNew > 0)));\n if (this.newCountSpan) {\n var z = ((((this.countNew == 1)) ? v._(\"{num} NEW REQUEST\", {\n num: this.countNew\n }) : v._(\"{num} NEW REQUESTS\", {\n num: this.countNew\n })));\n l.setContent(this.newCountSpan, z);\n }\n ;\n ;\n },\n _conditionShowEmptyMessage: function() {\n l.scry(this.jewelFlyout, \"li.empty\").forEach(function(x) {\n k.conditionShow(x, ((this._requestCount <= 0)));\n }.bind(this));\n },\n _openHandler: function() {\n var x = l.scry(this.jewelFlyout, \".uiScrollableArea\")[0];\n if (t(\"fbRequestsJewelLoading\")) {\n var y = JSBNG__Date.now();\n if (((((this.openTimestamp + 5000)) < y))) {\n this.openTimestamp = y;\n new h().setURI(\"/ajax/requests/loader/\").setData({\n log_impressions: true\n }).send();\n }\n ;\n ;\n }\n else {\n var z = Object.keys(this._requestList);\n if (((z.length > 0))) {\n new h().setURI(\"/friends/requests/log_impressions\").setData({\n ids: z.join(\",\"),\n ref: \"jewel\"\n }).send();\n var aa = Object.keys(this._egoData);\n if (((aa.length > 0))) {\n new h().setURI(\"/growth/jewel/impression_logging.php\").setData({\n egodata: aa\n }).send();\n }\n ;\n ;\n }\n ;\n ;\n }\n ;\n ;\n ((x && q.poke(x)));\n }\n });\n e.exports = w;\n});\n__d(\"legacy:RequestsJewel\", [\"RequestsJewel\",], function(a, b, c, d) {\n a.RequestsJewel = b(\"RequestsJewel\");\n}, 3);\n__d(\"JewelX\", [\"JSBNG__Event\",\"Arbiter\",\"ArbiterMixin\",\"JSBNG__CSS\",\"DOM\",\"HTML\",\"Keys\",\"TabIsolation\",\"Toggler\",\"copyProperties\",\"emptyFunction\",\"reportData\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Arbiter\"), i = b(\"ArbiterMixin\"), j = b(\"JSBNG__CSS\"), k = b(\"DOM\"), l = b(\"HTML\"), m = b(\"Keys\"), n = b(\"TabIsolation\"), o = b(\"Toggler\"), p = b(\"copyProperties\"), q = b(\"emptyFunction\"), r = b(\"reportData\"), s = function(t, u) {\n ((((t && u)) && this.init(t, u)));\n };\n p(s, {\n _instancesByName: {\n },\n _resizeListener: null\n });\n p(s.prototype, i, {\n init: function(t, u) {\n this.JSBNG__name = u.JSBNG__name;\n this.root = t;\n this.countNew = 0;\n this.initialCount = 0;\n this.escHandler = null;\n s._instancesByName[this.JSBNG__name] = this;\n var v = k.JSBNG__find(t, \".jewelFlyout\"), w = new n(v);\n o.createInstance(v).setSticky(false);\n o.listen(\"show\", this.root, function(x) {\n this._logFirstClick();\n ((this.hasNew() && this.markSeen()));\n this.reset();\n this.inform(\"opened\");\n h.inform(\"layer_shown\", {\n type: \"Jewel\"\n });\n w.enable();\n this.setupEvents();\n }.bind(this));\n o.listen(\"hide\", this.root, function(x, y) {\n ((this.hasNew() && this.markSeen()));\n this.reset();\n this.inform(\"JSBNG__closed\");\n h.inform(\"layer_hidden\", {\n type: \"Jewel\"\n });\n w.disable();\n this.removeEvents();\n }.bind(this));\n h.subscribe(\"jewel/count-updated\", function(x, y) {\n ((((y.jewel == this.JSBNG__name)) && this.update(y)));\n }.bind(this));\n h.subscribe(\"jewel/count-initial\", function(x, y) {\n ((((y.jewel == this.JSBNG__name)) && this.setInitial(y)));\n }.bind(this));\n h.subscribe(\"jewel/reset\", function(x, y) {\n ((((y.jewel == this.JSBNG__name)) && this.reset()));\n }.bind(this));\n s._resizeListener = ((s._resizeListener || (function() {\n var x = null;\n return g.listen(window, \"resize\", function() {\n JSBNG__clearTimeout(x);\n x = h.inform.bind(h, \"jewel/resize\").defer(100, false);\n });\n })()));\n },\n getRoot: function() {\n return this.root;\n },\n hasNew: function() {\n return j.hasClass(this.root, \"hasNew\");\n },\n isOpen: function() {\n return j.hasClass(this.root, \"openToggler\");\n },\n reset: function() {\n j.removeClass(this.root, \"hasNew\");\n },\n setContent: function(t) {\n var u = k.JSBNG__find(this.root, \"ul.jewelItemList\");\n k.setContent(u, l(t));\n },\n update: function(t) {\n this.countNew = t.count;\n var u = k.JSBNG__find(this.root, \"span.jewelCount span\");\n k.setContent(u, this.countNew);\n var v = ((isNaN(this.countNew) || ((this.countNew > 0))));\n j.conditionClass(this.root, \"hasNew\", v);\n if (v) {\n var w = ((\"\" + this.countNew)).length;\n j.conditionClass(this.root, \"hasCountSmall\", ((w === 1)));\n j.conditionClass(this.root, \"hasCountMedium\", ((w === 2)));\n j.conditionClass(this.root, \"hasCountLarge\", ((w > 2)));\n }\n ;\n ;\n this.inform(\"updated\", t);\n },\n setInitial: function(t) {\n this.initialCount = t;\n },\n setupEvents: function() {\n this.escHandler = g.listen(JSBNG__document.documentElement, \"keydown\", function(t) {\n if (((((t.keyCode === m.ESC)) && this.isOpen()))) {\n o.hide(this.root);\n }\n ;\n ;\n }.bind(this));\n },\n removeEvents: function() {\n if (this.escHandler) {\n this.escHandler.remove();\n }\n ;\n ;\n },\n markSeen: function() {\n h.inform(\"jewel/count-updated\", {\n jewel: this.JSBNG__name,\n count: 0\n }, h.BEHAVIOR_STATE);\n this.inform(\"marked-seen\");\n },\n _logFirstClick: function() {\n this._logFirstClick = q;\n r(\"jewel_click\", {\n gt: {\n count: this.countNew,\n initial: this.initialCount,\n jewel: this.JSBNG__name\n }\n });\n }\n });\n e.exports = s;\n});\n__d(\"MercuryJewelCountControl\", [\"Arbiter\",\"DOM\",\"MercuryThreadlistConstants\",\"copyProperties\",\"shield\",\"tx\",\"MercuryServerRequests\",\"MercuryThreadInformer\",\"MercuryUnseenState\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"DOM\"), i = b(\"MercuryThreadlistConstants\"), j = b(\"copyProperties\"), k = b(\"shield\"), l = b(\"tx\"), m = b(\"MercuryServerRequests\").get(), n = b(\"MercuryThreadInformer\").get(), o = b(\"MercuryUnseenState\").get(), p, q, r, s = function(u) {\n if (((u || r.isOpen()))) {\n o.markAsSeen();\n }\n ;\n ;\n }, t = function(u, v) {\n p = u;\n q = h.JSBNG__find(p, \"#mercurymessagesCountValue\");\n r = v;\n this.render();\n m.subscribe(\"model-update-completed\", function(w, x) {\n s(false);\n });\n n.subscribe(\"unseen-updated\", this.render.bind(this));\n r.subscribe(\"marked-seen\", k(s, this, true));\n };\n j(t.prototype, {\n render: function() {\n var u = \"\";\n if (o.exceedsMaxCount()) {\n u = l._(\"{count}+\", {\n count: i.MAX_UNSEEN_COUNT\n });\n }\n else u = o.getUnseenCount().toString();\n ;\n ;\n g.inform(\"jewel/count-updated\", {\n jewel: \"mercurymessages\",\n count: u\n }, g.BEHAVIOR_STATE);\n }\n });\n e.exports = t;\n});\n__d(\"MercuryJewelThreadlistControl\", [\"Arbiter\",\"ArbiterMixin\",\"MercuryChatUtils\",\"MercuryConfig\",\"JSBNG__CSS\",\"DOM\",\"JSBNG__Event\",\"JSLogger\",\"JSXDOM\",\"MercuryAPIArgsSource\",\"MercuryThreadlistConstants\",\"MessagingTag\",\"MercuryOrderedThreadlist\",\"Parent\",\"MercuryJewelTemplates\",\"MercuryThreadInformer\",\"MercuryThreadMetadataRenderer\",\"MercuryThreads\",\"Tooltip\",\"MercuryUnreadState\",\"copyProperties\",\"csx\",\"cx\",\"throttle\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ArbiterMixin\"), i = b(\"MercuryChatUtils\"), j = b(\"MercuryConfig\"), k = b(\"JSBNG__CSS\"), l = b(\"DOM\"), m = b(\"JSBNG__Event\"), n = b(\"JSLogger\"), o = b(\"JSXDOM\"), p = b(\"MercuryAPIArgsSource\"), q = b(\"MercuryThreadlistConstants\"), r = b(\"MessagingTag\"), s = b(\"MercuryOrderedThreadlist\").get(), t = b(\"Parent\"), u = b(\"MercuryJewelTemplates\"), v = b(\"MercuryThreadInformer\").get(), w = b(\"MercuryThreadMetadataRenderer\").get(), x = b(\"MercuryThreads\").get(), y = b(\"Tooltip\"), z = b(\"MercuryUnreadState\").get(), aa = b(\"copyProperties\"), ba = b(\"csx\"), ca = b(\"cx\"), da = b(\"throttle\"), ea = b(\"tx\"), fa = n.create(\"mercury_jewel\");\n function ga(na, oa) {\n this._contentArea = ((l.scry(na, \".scrollable\")[0] || na));\n this._contentElement = l.JSBNG__find(this._contentArea, \".jewelContent\");\n this._loadingElement = l.JSBNG__find(this._contentArea, \".jewelLoading\");\n this._loadMoreButton = l.JSBNG__find(this._contentArea, \".-cx-PRIVATE-fbMercuryJewel__morebutton\");\n this._loadMoreLink = l.JSBNG__find(this._contentArea, \"a.-cx-PRIVATE-fbMercuryJewel__morelink\");\n this._currentFolder = r.INBOX;\n this._jewelFolderLinks = [];\n this._jewelFolderLinks[r.INBOX] = l.JSBNG__find(oa, \".-cx-PRIVATE-fbMercuryJewel__inboxfolder\");\n this._jewelFolderLinks[r.OTHER] = l.JSBNG__find(oa, \".-cx-PRIVATE-fbMercuryJewel__otherfolder\");\n this._jewelFolderCounts = [];\n this._jewelFolderCounts[r.INBOX] = l.JSBNG__find(oa, \".-cx-PRIVATE-fbMercuryJewel__inboxunread\");\n this._jewelFolderCounts[r.OTHER] = l.JSBNG__find(oa, \".-cx-PRIVATE-fbMercuryJewel__otherunread\");\n la.bind(this)();\n m.listen(this._jewelFolderLinks[r.INBOX], \"click\", ka.bind(this, r.INBOX));\n m.listen(this._jewelFolderLinks[r.OTHER], \"click\", ka.bind(this, r.OTHER));\n this._curCount = [];\n this._curCount[r.INBOX] = ((q.JEWEL_THREAD_COUNT + 1));\n this._curCount[r.OTHER] = ((q.JEWEL_THREAD_COUNT + 1));\n this._isFolderLoaded = [];\n this._isFolderLoaded[r.INBOX] = false;\n this._isFolderLoaded[r.OTHER] = false;\n this._folderIsLoading = [];\n this._folderIsLoading[r.INBOX] = false;\n this._folderIsLoading[r.OTHER] = false;\n v.subscribe(\"threadlist-updated\", this.render.bind(this));\n v.subscribe(\"unread-updated\", la.bind(this));\n this.render();\n fa.bump(((\"opened_threadlist_\" + this._currentFolder)));\n m.listen(this._contentArea, \"JSBNG__scroll\", da(ha, 50, this));\n m.listen(this._loadMoreLink, \"click\", this.renderMoreThreads.bind(this));\n };\n;\n aa(ga, {\n EVENT_THREADS_LOADED: \"threads-loaded\",\n EVENT_THREADS_RENDERED: \"threads-rendered\"\n });\n aa(ga.prototype, h);\n aa(ga.prototype, {\n render: function() {\n l.empty(this._contentElement);\n k.show(this._loadingElement);\n k.hide(this._loadMoreButton);\n var na = l.create(\"div\");\n l.appendContent(this._contentElement, na);\n s.getThreadlist(q.RECENT_THREAD_OFFSET, this._curCount[this._currentFolder], this._currentFolder, this.renderThreads.bind(this, na), true);\n },\n renderThreads: function(na, oa) {\n this.inform(ga.EVENT_THREADS_LOADED);\n if (oa.length) {\n oa.forEach(function(pa) {\n var qa = u[\":fb:mercury:jewel:threadlist-row\"].build();\n x.getThreadMeta(pa, function(ra) {\n w.renderCoreThreadlist(ra, qa, this.renderSingleThread.bind(this), {\n show_unread_count: true\n });\n }.bind(this));\n l.appendContent(na, qa.getRoot());\n }.bind(this));\n }\n else l.setContent(this._contentElement, this.renderEmptyThreadlist());\n ;\n ;\n k.hide(this._loadingElement);\n k.conditionShow(this._loadMoreButton, !this._isFolderLoaded[this._currentFolder]);\n this.inform(ga.EVENT_THREADS_RENDERED);\n },\n renderSingleThread: function(na, oa) {\n var pa = ((oa.unread_count > 0));\n if (pa) {\n k.addClass(na.getRoot(), \"jewelItemNew\");\n }\n ;\n ;\n if (j.MessagesJewelToggleReadGK) {\n var qa = o.div({\n className: \"x_div\"\n }), ra = o.div({\n className: \"-cx-PRIVATE-fbReadToggle__active\"\n }), sa = \"Mark as Unread\";\n if (pa) {\n sa = \"Mark as Read\";\n }\n ;\n ;\n y.set(ra, sa, \"above\", \"right\");\n m.listen(ra, \"click\", function(JSBNG__event) {\n x.changeThreadReadStatus(oa.thread_id, ((oa.unread_count > 0)));\n return false;\n });\n qa.appendChild(ra);\n na.getNode(\"link\").appendChild(qa);\n }\n ;\n ;\n if (((j.MessagesJewelOpenInChat && i.canOpenChatTab(oa)))) {\n m.listen(na.getRoot(), \"click\", function(JSBNG__event) {\n g.inform(\"chat/open-tab\", {\n thread_id: oa.thread_id\n });\n });\n }\n else w.renderTitanLink(oa.thread_id, na.getNode(\"link\"), null, this._currentFolder);\n ;\n ;\n m.listen(na.getRoot(), \"mouseover\", function(JSBNG__event) {\n var ta = na.getRoot();\n if (!t.byClass(ta, \"notifNegativeBase\")) {\n k.addClass(ta, \"selected\");\n }\n ;\n ;\n });\n m.listen(na.getRoot(), \"mouseout\", function(JSBNG__event) {\n k.removeClass(na.getRoot(), \"selected\");\n });\n },\n renderMoreThreads: function() {\n k.addClass(this._loadMoreButton, \"async_saving\");\n this._folderIsLoading[this._currentFolder] = true;\n var na = ((this._curCount[this._currentFolder] + q.JEWEL_MORE_COUNT));\n s.getThreadlist(q.RECENT_THREAD_OFFSET, ((na + 1)), this._currentFolder, ja.bind(this, na, this._currentFolder), true, p.JEWEL);\n },\n renderEmptyThreadlist: function() {\n return l.create(\"li\", {\n className: \"empty\"\n }, \"No messages\");\n }\n });\n function ha() {\n if (((((!this._isFolderLoaded[this._currentFolder] && !this._folderIsLoading[this._currentFolder])) && ia.bind(this)()))) {\n this.renderMoreThreads();\n }\n ;\n ;\n };\n;\n function ia() {\n return ((((this._contentArea.scrollTop + this._contentArea.clientHeight)) >= ((this._contentArea.scrollHeight - 1))));\n };\n;\n function ja(na, oa, pa) {\n this._curCount[oa] = na;\n if (((!this._isFolderLoaded[oa] && ((pa.length < ((this._curCount[oa] + 1))))))) {\n this._isFolderLoaded[oa] = true;\n }\n ;\n ;\n this._folderIsLoading[oa] = false;\n k.removeClass(this._loadMoreButton, \"async_saving\");\n this.render();\n };\n;\n function ka(na) {\n if (((this._currentFolder != na))) {\n fa.bump(((\"opened_threadlist_\" + na)));\n k.addClass(this._jewelFolderLinks[na], \"-cx-PRIVATE-fbMercuryJewel__selectedfolder\");\n k.removeClass(this._jewelFolderLinks[this._currentFolder], \"-cx-PRIVATE-fbMercuryJewel__selectedfolder\");\n this._currentFolder = na;\n this.render();\n }\n ;\n ;\n };\n;\n function la() {\n ma.bind(this)(r.INBOX);\n ma.bind(this)(r.OTHER);\n };\n;\n function ma(na) {\n var oa;\n if (z.exceedsMaxCount(na)) {\n oa = q.MAX_UNREAD_COUNT;\n }\n else oa = z.getUnreadCount(na);\n ;\n ;\n var pa = this._jewelFolderCounts[na];\n if (((oa > 0))) {\n if (((oa == q.MAX_UNREAD_COUNT))) {\n oa += \"+\";\n }\n ;\n ;\n l.setContent(pa, ea._(\"({unread_count})\", {\n unread_count: oa\n }));\n }\n else l.setContent(pa, \"\");\n ;\n ;\n };\n;\n e.exports = ga;\n});\n__d(\"MercuryJewel\", [\"MercuryChannelHandler\",\"MercuryJewelCountControl\",\"DOM\",\"MercuryJewelThreadlistControl\",\"MercuryServerRequests\",\"userAction\",], function(a, b, c, d, e, f) {\n b(\"MercuryChannelHandler\");\n var g = b(\"MercuryJewelCountControl\"), h = b(\"DOM\"), i = b(\"MercuryJewelThreadlistControl\"), j = b(\"MercuryServerRequests\").get(), k = b(\"userAction\"), l = false;\n function m(q, r, s, t) {\n j.handleUpdate(t);\n var u = new g(r, s), v = h.JSBNG__find(q, \"#MercuryJewelThreadList\");\n if (((s.getRoot() && s.isOpen()))) {\n n.call(this, v, q);\n }\n else s.subscribe(\"opened\", n.bind(this, v, q));\n ;\n ;\n };\n;\n e.exports = m;\n function n(q, r) {\n this._ua = k(\"messages\").uai(\"click\", \"jewel\");\n this._listenForLoad = this._listenForRender = true;\n if (!l) {\n var s = new i(q, r);\n s.subscribe(i.EVENT_THREADS_LOADED, o.bind(this));\n s.subscribe(i.EVENT_THREADS_RENDERED, p.bind(this));\n l = true;\n }\n ;\n ;\n };\n;\n function o() {\n if (this._listenForLoad) {\n this._ua.add_event(\"loaded\");\n this._listenForLoad = false;\n }\n ;\n ;\n };\n;\n function p() {\n if (this._listenForRender) {\n this._ua.add_event(\"rendered\");\n this._listenForRender = false;\n }\n ;\n ;\n };\n;\n});\n__d(\"MessagingEvents\", [\"Arbiter\",\"ChannelConstants\",\"arrayContains\",\"copyProperties\",\"isEmpty\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ChannelConstants\"), i = b(\"arrayContains\"), j = b(\"copyProperties\"), k = b(\"isEmpty\"), l = {\n }, m = new g();\n function n(o) {\n if (!k(l)) {\n return;\n }\n ;\n ;\n {\n var fin184keys = ((window.top.JSBNG_Replay.forInKeys)((o))), fin184i = (0);\n var p;\n for (; (fin184i < fin184keys.length); (fin184i++)) {\n ((p) = (fin184keys[fin184i]));\n {\n m.inform(((\"count/\" + p)), o[p]);\n ;\n };\n };\n };\n ;\n };\n;\n m.subscribe(\"mark-as-read\", function(o, p) {\n ((((p.tids || p.chat_ids)) || [])).forEach(function(q) {\n q = ((\"\" + q));\n if (!((q in l))) {\n l[q] = true;\n var r = function() {\n m.unsubscribe(s);\n JSBNG__clearTimeout(t);\n delete l[q];\n }, s = m.subscribe(\"read\", function(u, v) {\n if (((i(((v.tids || [])), q) || i(((v.chat_ids || [])), q)))) {\n r();\n }\n ;\n ;\n }), t = r.defer(60000);\n }\n ;\n ;\n });\n });\n g.subscribe(h.getArbiterType(\"messaging\"), function(o, p) {\n var q = j({\n }, p.obj), JSBNG__event = ((q.JSBNG__event || \"\"));\n delete q.type;\n delete q.JSBNG__event;\n m.inform(JSBNG__event, q);\n if (((\"unread_counts\" in q))) {\n var r = q.unread_counts;\n n({\n unread: r.inbox,\n other_unseen: r.other\n });\n }\n ;\n ;\n });\n g.subscribe(h.getArbiterType(\"inbox\"), function(o, p) {\n var q = j(p.obj);\n delete q.type;\n n(q);\n });\n a.MessagingEvents = e.exports = m;\n}, 3);\n__d(\"TitanLeftNav\", [\"CounterDisplay\",\"MessagingEvents\",], function(a, b, c, d, e, f) {\n var g = b(\"CounterDisplay\"), h = b(\"MessagingEvents\"), i = {\n initialize: function() {\n h.subscribe(\"count/other_unseen\", function(j, k) {\n g.setCount(\"other_unseen\", k);\n });\n }\n };\n e.exports = i;\n});\n__d(\"AccessibleMenu\", [\"JSBNG__Event\",\"JSBNG__CSS\",\"DOM\",\"Keys\",\"TabbableElements\",\"Toggler\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"JSBNG__CSS\"), i = b(\"DOM\"), j = b(\"Keys\"), k = b(\"TabbableElements\"), l = b(\"Toggler\"), m, n, o;\n function p() {\n var x = i.scry(m, \"a[rel=\\\"toggle\\\"]\")[0];\n ((x && x.JSBNG__focus()));\n l.getInstance(m).hide();\n };\n;\n function q(x) {\n if (!x) {\n return false;\n }\n ;\n ;\n h.removeClass(x, \"selected\");\n x.setAttribute(\"aria-selected\", \"false\");\n };\n;\n function r(x) {\n if (!x) {\n return false;\n }\n ;\n ;\n h.addClass(x, \"selected\");\n x.setAttribute(\"aria-selected\", \"true\");\n var y = k.JSBNG__find(x);\n if (y[0]) {\n y[0].JSBNG__focus();\n }\n ;\n ;\n };\n;\n function s(x) {\n var y = i.scry(m, \".selected\")[0], z = ((n.indexOf(y) + x)), aa = n[z];\n if (!aa) {\n return false;\n }\n ;\n ;\n q(y);\n r(aa);\n };\n;\n function t(x) {\n if (((!l.isShown() || ((l.getActive() !== m))))) {\n return true;\n }\n ;\n ;\n var y = g.getKeyCode(x);\n switch (y) {\n case j.TAB:\n s(((x.shiftKey ? -1 : 1)));\n g.prevent(x);\n break;\n case j.ESC:\n p();\n g.prevent(x);\n break;\n case j.UP:\n \n case j.DOWN:\n s(((((y === j.UP)) ? -1 : 1)));\n g.prevent(x);\n break;\n };\n ;\n };\n;\n function u(x, y) {\n m = y.getActive();\n n = i.scry(m, \"[role=\\\"menuitem\\\"]\");\n if (!o) {\n o = g.listen(JSBNG__document.documentElement, \"keydown\", t);\n }\n ;\n ;\n };\n;\n function v() {\n if (((l.getActive() == m))) {\n q(i.scry(m, \".selected\")[0]);\n }\n ;\n ;\n };\n;\n var w = {\n init: function(x) {\n l.listen(\"show\", x, u);\n l.listen(\"hide\", x, v);\n }\n };\n e.exports = w;\n});\n__d(\"UserNoOp\", [\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"emptyFunction\"), i = function() {\n \n };\n g(i.prototype, {\n add_event: h.thatReturnsThis,\n add_data: h.thatReturnsThis,\n uai: h.thatReturnsThis,\n uai_fallback: h.thatReturnsThis\n });\n e.exports = i;\n});\n__d(\"NegativeNotif\", [\"Animation\",\"AsyncRequest\",\"JSBNG__CSS\",\"DataStore\",\"DOM\",\"JSBNG__Event\",\"Parent\",\"Tooltip\",\"NotifXList\",\"$\",\"clickRefAction\",\"copyProperties\",\"userAction\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"AsyncRequest\"), i = b(\"JSBNG__CSS\"), j = b(\"DataStore\"), k = b(\"DOM\"), l = b(\"JSBNG__Event\"), m = b(\"Parent\"), n = b(\"Tooltip\"), o = b(\"NotifXList\"), p = b(\"$\"), q = b(\"clickRefAction\"), r = b(\"copyProperties\"), s = b(\"userAction\");\n function t(u, v) {\n r(this, v);\n this.owner = u;\n this.xLink = k.JSBNG__find(this.obj, \".notif_x\");\n this.confirmingMsg = k.JSBNG__find(this.obj, \".confirmingMsg\");\n this.mainLink = k.JSBNG__find(this.obj, \".notifMainLink\");\n this.userXClicked = false;\n this.userUnsubscribed = false;\n l.listen(this.xLink, \"click\", this.xClick.bind(this));\n if (((i.hasClass(this.obj, \"first_receipt\") && i.hasClass(p(\"jewelContainer\"), \"notifGentleAppReceipt\")))) {\n this.gentleFirstReceiptHoverEventHandler = l.listen(this.obj, \"mouseover\", this.gentleFirstReceiptNotifHover.bind(this));\n }\n ;\n ;\n };\n;\n r(t.prototype, {\n FADE_AWAY_DURATION: 2500,\n X_OUT_DURATION: 100,\n X_OUT_DURATION_SHORT: 2,\n GENTLE_FRUI_MIN_HOVER_DURATION: 500,\n GENTLE_FRUI_FADE_DURATION_FAST: 200,\n GENTLE_FRUI_FADE_DURATION_SLOW: 2500,\n GENTLE_FRUI_DELAY_FADE_TIME: 60000,\n xClick: function(JSBNG__event) {\n this._activateX();\n var u = this.xLink.getAttribute(\"data-gt\"), v = ((u ? {\n gt: JSON.parse(u)\n } : {\n }));\n s(\"xbutton\", this.xLink, JSBNG__event).uai(\"click\");\n q(\"click\", this.xLink, JSBNG__event, null, v);\n return false;\n },\n gentleFirstReceiptNotifHover: function(JSBNG__event) {\n JSBNG__event.JSBNG__stop();\n var u = k.JSBNG__find(this.obj, \".first_receipt_no_button\"), v = j.get(u, \"notif_fr_prompt\");\n n.set(u, v, \"above\", \"center\");\n n.show(u);\n this._gentleFirstReceiptTooltipFadeIn();\n if (!this.gentleFirstReceiptUnhoverEventHandler) {\n this.hoverTime = new JSBNG__Date();\n this.gentleFirstReceiptUnhoverEventHandler = l.listen(JSBNG__document.documentElement, \"mouseover\", this.gentleFirstReceiptNotifUnhover.bind(this));\n }\n ;\n ;\n if (!this.gentleFirstReceiptNoClickEventHandler) {\n this.gentleFirstReceiptNoClickEventHandler = l.listen(u, \"click\", this.gentleFirstReceiptNoClick.bind(this));\n }\n ;\n ;\n },\n gentleFirstReceiptNotifUnhover: function(JSBNG__event) {\n if (((m.byClass(JSBNG__event.getTarget(), \"uiContextualLayer\") || m.byClass(JSBNG__event.getTarget(), \"uiScrollableAreaTrack\")))) {\n return false;\n }\n ;\n ;\n var u = new JSBNG__Date();\n if (((this.hoverTime && ((((u - this.hoverTime)) < this.GENTLE_FRUI_MIN_HOVER_DURATION))))) {\n this.gentleFirstReceiptUnhoverEventHandler.remove();\n this.gentleFirstReceiptUnhoverEventHandler = null;\n this._gentleFirstReceiptTooltipAlreadyFadedIn = false;\n return;\n }\n ;\n ;\n this._removeGentleFirstReceiptListeners();\n this._gentleFirstReceiptTooltipFadeAway();\n this._gentleFirstReceiptXButtonFadeAway();\n var v = this;\n JSBNG__setTimeout(function() {\n v._gentleFirstReceiptUIFadeAway();\n }, this.GENTLE_FRUI_DELAY_FADE_TIME);\n this._sendFirstReceiptYesToServer();\n },\n gentleFirstReceiptNoClick: function(JSBNG__event) {\n this._removeGentleFirstReceiptListeners();\n },\n restore: function() {\n if (o.newNotifExist(this.id)) {\n o.resumeInsert(this.id);\n }\n else o.removeNotif(this.id);\n ;\n ;\n this._confirmingMsgFadeAway(this.confirmingMsg);\n this._notifMainLinkShowUp(this.mainLink);\n this._buttonShowUp(this.xLink);\n this._adjustContainer(this.obj);\n },\n reset: function() {\n if (((this.userXClicked && !this.userUnsubscribed))) {\n this.userXClicked = false;\n this.restore();\n }\n ;\n ;\n },\n onTurnedOff: function() {\n this.userUnsubscribed = true;\n i.hide(this.confirmingMsg);\n this._notifMainLinkShowUp(k.JSBNG__find(this.obj, \".confirmedMsg\"));\n this._adjustContainer(this.obj);\n },\n onUndid: function() {\n this.userXClicked = false;\n this.userUnsubscribed = false;\n this.restore();\n i.show(this.confirmingMsg);\n this._notifMainLinkFadeAway(k.JSBNG__find(this.obj, \".confirmedMsg\"));\n k.remove(k.JSBNG__find(this.obj, \".confirmedMsg\"));\n },\n onMarkedSpam: function() {\n k.remove(k.JSBNG__find(this.obj, \".confirmedMsg\"));\n this._fadeAway(k.JSBNG__find(this.obj, \".spamMsg\"));\n },\n onFirstReceiptYes: function() {\n this._hideFirstReceiptDiv();\n this._fadeAway(k.JSBNG__find(this.obj, \".firstConfirmedMsg\"));\n },\n onFirstReceiptNo: function() {\n this._hideFirstReceiptDiv();\n i.hide(this.confirmingMsg);\n this._activateX();\n new h().setURI(\"/ajax/notifications/negative_req.php\").setData({\n request_type: \"turn_off\",\n notification_id: this.id\n }).send();\n },\n _sendFirstReceiptYesToServer: function() {\n new h().setURI(\"/ajax/notifications/negative_req.php\").setData({\n request_type: \"first_receipt_yes\",\n notification_id: this.id\n }).send();\n },\n _gentleFirstReceiptTooltipFadeIn: function() {\n if (this._gentleFirstReceiptTooltipAlreadyFadedIn) {\n return;\n }\n ;\n ;\n var u = k.JSBNG__find(JSBNG__document.documentElement, \".uiLayer .uiContextualLayer .uiTooltipX\");\n new g(u).from(\"opacity\", \"0\").to(\"opacity\", \"1\").duration(this.GENTLE_FRUI_FADE_DURATION_FAST).go();\n this._gentleFirstReceiptTooltipAlreadyFadedIn = true;\n },\n _gentleFirstReceiptTooltipFadeAway: function() {\n if (!this._gentleFirstReceiptTooltipAlreadyFadedIn) {\n return;\n }\n ;\n ;\n var u = k.JSBNG__find(JSBNG__document.documentElement, \".uiLayer .uiContextualLayer .uiTooltipX\"), v = m.byClass(u, \"uiLayer\"), w = v.cloneNode(true);\n k.insertAfter(v, w);\n new g(w).from(\"opacity\", \"1\").to(\"opacity\", \"0\").duration(this.GENTLE_FRUI_FADE_DURATION_FAST).ondone(function() {\n k.remove(w);\n }).go();\n this._gentleFirstReceiptTooltipAlreadyFadedIn = false;\n },\n _gentleFirstReceiptXButtonFadeAway: function() {\n var u = k.JSBNG__find(this.obj, \".first_receipt_no_button\");\n new g(u).from(\"opacity\", \"1\").to(\"opacity\", \"0\").duration(this.GENTLE_FRUI_FADE_DURATION_FAST).hide().go();\n i.addClass(this.obj, \"show_original_x\");\n },\n _gentleFirstReceiptUIFadeAway: function() {\n var u = this.obj;\n this.new_label = k.JSBNG__find(this.obj, \".notif_new_label\");\n new g(this.new_label).to(\"opacity\", \"0\").duration(this.GENTLE_FRUI_FADE_DURATION_SLOW).ondone(function() {\n i.removeClass(u, \"first_receipt\");\n }).go();\n if (!i.hasClass(this.obj, \"jewelItemNew\")) {\n new g(this.obj).from(\"backgroundColor\", \"#ECEFF5\").to(\"backgroundColor\", \"#FFFFFF\").duration(this.GENTLE_FRUI_FADE_DURATION_SLOW).go();\n }\n ;\n ;\n },\n _removeGentleFirstReceiptListeners: function() {\n if (this.gentleFirstReceiptHoverEventHandler) {\n this.gentleFirstReceiptHoverEventHandler.remove();\n }\n ;\n ;\n if (this.gentleFirstReceiptUnhoverEventHandler) {\n this.gentleFirstReceiptUnhoverEventHandler.remove();\n }\n ;\n ;\n if (this.gentleFirstReceiptNoClickEventHandler) {\n this.gentleFirstReceiptNoClickEventHandler.remove();\n }\n ;\n ;\n },\n _activateX: function() {\n i.addClass(this.obj, \"forPushSafety\");\n this.userXClicked = true;\n o.userXClick(this.id);\n this._notifMainLinkFadeAway(this.mainLink);\n this._buttonFadeAway(this.xLink);\n if (i.shown(this.confirmingMsg)) {\n this._confirmingMsgShowUp(this.confirmingMsg);\n }\n ;\n ;\n this._adjustContainer(this.obj);\n },\n _hideFirstReceiptDiv: function() {\n i.removeClass(this.obj, \"first_receipt\");\n i.hide(k.JSBNG__find(this.obj, \".first_receipt_div\"));\n },\n _fadeAway: function(u) {\n new g(u).from(\"backgroundColor\", \"#FFF9D7\").to(\"backgroundColor\", \"#FFFFFF\").duration(this.FADE_AWAY_DURATION).checkpoint().to(\"opacity\", \"0\").blind().duration(this.X_OUT_DURATION).checkpoint().to(\"height\", \"0px\").to(\"paddingTop\", \"0px\").to(\"paddingBottom\", \"0px\").blind().hide().duration(this.X_OUT_DURATION).go();\n },\n _adjustContainer: function(u) {\n new g(u).by(\"height\", \"0px\").duration(this.X_OUT_DURATION).checkpoint().by(\"height\", \"0px\").duration(this.X_OUT_DURATION_SHORT).checkpoint().to(\"height\", \"auto\").duration(this.X_OUT_DURATION).go();\n },\n _notifMainLinkShowUp: function(u) {\n new g(u).duration(this.X_OUT_DURATION).checkpoint().to(\"height\", \"auto\").to(\"paddingTop\", \"4px\").to(\"paddingBottom\", \"4px\").blind().show().duration(this.X_OUT_DURATION_SHORT).checkpoint().to(\"opacity\", \"1\").blind().duration(this.X_OUT_DURATION).go();\n },\n _confirmingMsgShowUp: function(u) {\n new g(u).duration(this.X_OUT_DURATION).checkpoint().to(\"height\", \"auto\").to(\"paddingTop\", \"10px\").to(\"paddingBottom\", \"10px\").blind().show().duration(this.X_OUT_DURATION_SHORT).checkpoint().to(\"opacity\", \"1\").blind().duration(this.X_OUT_DURATION).go();\n },\n _notifMainLinkFadeAway: function(u) {\n new g(u).to(\"opacity\", \"0\").blind().duration(this.X_OUT_DURATION).checkpoint().to(\"height\", \"0px\").to(\"paddingTop\", \"0px\").to(\"paddingBottom\", \"0px\").blind().hide().duration(this.X_OUT_DURATION_SHORT).go();\n },\n _confirmingMsgFadeAway: function(u) {\n new g(u).to(\"opacity\", \"0\").blind().duration(this.X_OUT_DURATION).checkpoint().to(\"height\", \"0px\").to(\"paddingTop\", \"0px\").to(\"paddingBottom\", \"0px\").blind().duration(this.X_OUT_DURATION_SHORT).go();\n },\n _buttonShowUp: function(u) {\n new g(u).duration(this.X_OUT_DURATION).checkpoint().show().duration(this.X_OUT_DURATION_SHORT).checkpoint().to(\"opacity\", \"1\").blind().duration(this.X_OUT_DURATION).go();\n },\n _buttonFadeAway: function(u) {\n new g(u).to(\"opacity\", \"0\").blind().duration(this.X_OUT_DURATION).checkpoint().hide().duration(this.X_OUT_DURATION_SHORT).go();\n }\n });\n e.exports = t;\n});\n__d(\"NotificationCounter\", [\"Arbiter\",\"DocumentTitle\",\"JSLogger\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"DocumentTitle\"), i = b(\"JSLogger\"), j = {\n messages: 0,\n notifications: 0,\n requests: 0\n }, k = {\n init: function(l) {\n g.subscribe(\"update_title\", this._handleUpdate.bind(this));\n g.subscribe(\"jewel/count-updated\", this._handleCountUpdate.bind(this));\n },\n getCount: function() {\n var l = 0;\n {\n var fin185keys = ((window.top.JSBNG_Replay.forInKeys)((j))), fin185i = (0);\n var m;\n for (; (fin185i < fin185keys.length); (fin185i++)) {\n ((m) = (fin185keys[fin185i]));\n {\n var n = Number(j[m]);\n if (((((typeof j[m] == \"string\")) && isNaN(n)))) {\n return j[m];\n }\n ;\n ;\n if (((isNaN(n) || ((n < 0))))) {\n i.create(\"jewels\").error(\"bad_count\", {\n jewel: m,\n count: j[m]\n });\n continue;\n }\n ;\n ;\n l += n;\n };\n };\n };\n ;\n return l;\n },\n updateTitle: function() {\n var l = this.getCount(), m = h.get();\n m = ((l ? ((((((\"(\" + l)) + \") \")) + m)) : m));\n h.set(m, true);\n },\n _handleCountUpdate: function(l, m) {\n j[m.jewel] = m.count;\n this.updateTitle();\n },\n _handleUpdate: function(l, m) {\n this.updateTitle();\n }\n };\n e.exports = k;\n});\n__d(\"NotificationList\", [\"Animation\",\"ArbiterMixin\",\"JSBNG__CSS\",\"DOM\",\"DoublyLinkedListMap\",\"HTML\",\"NotificationURI\",\"Tooltip\",\"JSBNG__Event\",\"$\",\"copyProperties\",\"cx\",\"csx\",\"ge\",\"isEmpty\",\"tx\",\"hasArrayNature\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"ArbiterMixin\"), i = b(\"JSBNG__CSS\"), j = b(\"DOM\"), k = b(\"DoublyLinkedListMap\"), l = b(\"HTML\"), m = b(\"NotificationURI\"), n = b(\"Tooltip\"), o = b(\"JSBNG__Event\"), p = b(\"$\"), q = b(\"copyProperties\"), r = b(\"cx\"), s = b(\"csx\"), t = b(\"ge\"), u = b(\"isEmpty\"), v = b(\"tx\"), w = b(\"hasArrayNature\"), x = \"0\", y = \"1\", z = \"2\";\n function aa(da) {\n return ((((da == y)) || ((da == z))));\n };\n;\n function ba(da) {\n return ((da == y));\n };\n;\n function ca(da, ea) {\n this._list = new k();\n this._filter_func = null;\n this.unseenCount = 0;\n this.contentRoot = da;\n this.noItemsElement = null;\n this.ITEM_TAG = \"li\";\n this.ITEM_CLASS = \"notification\";\n this.NO_ITEMS_ID = \"jewelNoNotifications\";\n this.NO_ITEMS_CLASS = \"empty\";\n this.compare = ((ea.compare || this.compare));\n this.shouldBlockAnimation = ((ea.shouldBlockAnimation || null));\n this.unseenVsUnread = ((ea.unseenVsUnread || false));\n this.markReadSignalServer = ea.markReadSignalServer;\n this.animations = {\n };\n };\n;\n q(ca, {\n ITEM_UNREAD_CLASS: \"jewelItemNew\",\n MARK_READ_TYPE: \"mark_read\",\n UNREAD_COUNT_CHANGE_TYPE: \"unread_count_change\",\n INSERTION_TYPE: \"insert\",\n REMOVAL_TYPE: \"remove\",\n getIdFromDom: function(da) {\n return da.getAttribute(\"id\").replace(\"notification_\", \"\");\n },\n localizeUrls: function(da) {\n j.scry(da, \"a\").forEach(function(ea) {\n ea.href = m.localize(ea.href);\n });\n }\n });\n q(ca.prototype, h, {\n FADE_DURATION: 250,\n RESIZE_DURATION: 200,\n _getField: function(da, ea) {\n var fa = this._list.get(da);\n return ((fa && fa[ea]));\n },\n getDomObj: function(da) {\n return this._getField(da, \"obj\");\n },\n fromDom: function() {\n var da = ((((this.ITEM_TAG + \".\")) + this.ITEM_CLASS)), ea = j.scry(this.contentRoot, da);\n for (var fa = 0; ((fa < ea.length)); ++fa) {\n var ga = ea[fa], ha = ca.getIdFromDom(ga);\n this.insert(ha, ga.getAttribute(\"data-notiftime\"), null);\n };\n ;\n },\n compare: function(da, ea) {\n return ((((da.time < ea.time)) || ((((da.time === ea.time)) && ((da.id < ea.id))))));\n },\n insert: function(da, ea, fa, ga, ha, ia) {\n var ja = y, ka = 0, la = this._list.exists(da), ma = ((ia && this._list.exists(ia))), na = null, oa;\n if (((la || ma))) {\n if (!((ga && fa))) {\n return false;\n }\n else {\n if (this._filter_func) {\n oa = {\n notif_id: da,\n notif_time: ea,\n notif_markup: fa,\n replace: ga,\n ignoreUnread: ha,\n notif_alt_id: ia\n };\n if (this._filter_func(oa)) {\n return false;\n }\n ;\n ;\n }\n ;\n ;\n ja = this._getField(da, \"readness\");\n ka = this._getField(da, \"time\");\n if (((ka > ea))) {\n return false;\n }\n ;\n ;\n na = ((la ? da : ia));\n this._remove(na);\n }\n ;\n }\n ;\n ;\n var pa = ((((fa && l(fa).getRootNode())) || p(((\"notification_\" + da))))), qa = Math.max(ea, ka), ra = pa.getAttribute(\"data-readness\");\n if (((!this.unseenVsUnread && ((z == ra))))) {\n ra = x;\n }\n ;\n ;\n oa = {\n id: da,\n obj: pa,\n time: qa,\n readness: ra,\n app_id: pa.getAttribute(\"data-appid\")\n };\n this._insert(oa);\n this._setUpReadStateToggle(da, pa);\n ca.localizeUrls(pa);\n ((this.noItemsElement && i.hide(this.noItemsElement)));\n if (ba(ra)) {\n ((((ha && !aa(ja))) && this.markRead([da,])));\n this.unseenCount = this.getUnseenIds().length;\n this.inform(ca.UNREAD_COUNT_CHANGE_TYPE);\n }\n ;\n ;\n var sa = ((((!na || ((ka < qa)))) || ((((ra && !ja)) && !ha))));\n this.inform(ca.INSERTION_TYPE, {\n id: da,\n is_new: sa,\n obj: pa,\n replaced_id: na,\n time: qa\n });\n return true;\n },\n _setReadStateToggleReadness: function(da, ea) {\n var fa;\n if (ea) {\n fa = ((this.unseenVsUnread ? \"Mark as Read\" : \"Unread\"));\n }\n else fa = \"Read\";\n ;\n ;\n if (!((ea && this.unseenVsUnread))) {\n i.removeClass(da, \"-cx-PRIVATE-fbReadToggle__active\");\n i.addClass(da, \"-cx-PRIVATE-fbReadToggle__inactive\");\n }\n ;\n ;\n n.set(da, fa, \"above\", \"center\");\n },\n _setUpReadStateToggle: function(da, ea) {\n var fa = this.isUnreadId(da), ga = j.scry(ea, \".-cx-PRIVATE-fbReadToggle__active\")[0];\n if (!ga) {\n return;\n }\n ;\n ;\n this._setReadStateToggleReadness(ga, fa);\n var ha = function(JSBNG__event) {\n if (((this.unseenVsUnread && this.isUnreadId(da)))) {\n this.markReadSignalServer([da,]);\n }\n ;\n ;\n o.kill(JSBNG__event);\n return false;\n };\n o.listen(ga, \"click\", ha.bind(this));\n },\n showNoNotifications: function() {\n if (((null == this.noItemsElement))) {\n this.noItemsElement = t(this.NO_ITEMS_ID);\n }\n ;\n ;\n if (((null == this.noItemsElement))) {\n this.noItemsElement = j.create(this.ITEM_TAG, {\n id: this.NO_ITEMS_ID,\n className: this.NO_ITEMS_CLASS\n }, \"No new notifications\");\n j.appendContent(this.contentRoot, this.noItemsElement);\n }\n ;\n ;\n i.show(this.noItemsElement);\n },\n _insert: function(da) {\n this._list.remove(da.id);\n var ea = null;\n this._list.JSBNG__find(function(ga) {\n var ha = this.compare(ga, da);\n ((!ha && (ea = ga.id)));\n return ha;\n }.bind(this));\n var fa = this.getDomObj(ea);\n if (fa) {\n this._list.insertAfter(da.id, da, ea);\n j.insertAfter(fa, da.obj);\n }\n else {\n this._list.prepend(da.id, da);\n j.prependContent(this.contentRoot, da.obj);\n }\n ;\n ;\n },\n _remove: function(da) {\n var ea = this._getField(da, \"obj\");\n if (!ea) {\n return false;\n }\n ;\n ;\n this.inform(ca.REMOVAL_TYPE, {\n id: da\n });\n this._list.remove(da);\n j.remove(ea);\n ((this.isEmpty() && this.showNoNotifications()));\n return true;\n },\n getUnreadIds: function() {\n return this._list.reduce(function(da, ea) {\n ((aa(da.readness) && ea.push(da.id)));\n return ea;\n }, []);\n },\n getUnseenIds: function() {\n return this._list.reduce(function(da, ea) {\n ((ba(da.readness) && ea.push(da.id)));\n return ea;\n }, []);\n },\n getIds: function() {\n return this._list.reduce(function(da, ea) {\n ea.push(da.id);\n return ea;\n }, []);\n },\n isUnreadId: function(da) {\n var ea = this.getDomObj(da);\n return ((aa(this._getField(da, \"readness\")) || ((ea && i.hasClass(ea, ca.ITEM_UNREAD_CLASS)))));\n },\n isUnseenId: function(da) {\n return ba(this._getField(da, \"readness\"));\n },\n markRead: function(da, ea) {\n da = ((da ? da.filter(this.isUnreadId.bind(this)) : this.getUnreadIds()));\n var fa = false;\n for (var ga = 0; ((ga < da.length)); ga++) {\n var ha = this._list.get(da[ga]);\n if (ha) {\n if (this._setReadness(da[ga], x)) {\n fa = true;\n }\n ;\n ;\n if (ea) {\n this._markReadInDom(da[ga], ha.obj);\n }\n else this.animateMarkRead(ha.obj);\n ;\n ;\n }\n ;\n ;\n };\n ;\n if (fa) {\n this.unseenCount = this.getUnseenIds().length;\n this.inform(ca.UNREAD_COUNT_CHANGE_TYPE);\n }\n ;\n ;\n },\n markSeen: function(da) {\n if (!w(da)) {\n return;\n }\n ;\n ;\n if (!this.unseenVsUnread) {\n this.markRead(da);\n return;\n }\n ;\n ;\n da = da.filter(this.isUnseenId.bind(this));\n var ea = false;\n for (var fa = 0; ((fa < da.length)); fa++) {\n if (this._setReadness(da[fa], z)) {\n ea = true;\n }\n ;\n ;\n };\n ;\n if (ea) {\n this.unseenCount = this.getUnseenIds().length;\n this.inform(ca.UNREAD_COUNT_CHANGE_TYPE);\n }\n ;\n ;\n },\n _setReadness: function(da, ea) {\n var fa = this._list.get(da);\n if (((!fa || ((fa.readness == ea))))) {\n return false;\n }\n ;\n ;\n if (((((fa.readness == x)) && ((ea == z))))) {\n return false;\n }\n ;\n ;\n fa.readness = ea;\n fa.obj.setAttribute(\"data-readness\", ea);\n return true;\n },\n _markReadInDom: function(da, ea) {\n if (!this.isUnreadId(da)) {\n return;\n }\n ;\n ;\n var fa = p(ea);\n if (fa) {\n this.stopAnimation(da);\n i.removeClass(fa, ca.ITEM_UNREAD_CLASS);\n var ga = j.scry(fa, \".read_toggle\")[0];\n ((ga && this._setReadStateToggleReadness(ga, false)));\n }\n ;\n ;\n },\n animateMarkRead: function(da) {\n if (!i.hasClass(da, ca.ITEM_UNREAD_CLASS)) {\n return;\n }\n ;\n ;\n var ea = ca.getIdFromDom(da), fa = this._markReadInDom.bind(this, ea, da);\n if (i.hasClass(da, \"fbJewelBeep\")) {\n fa();\n return;\n }\n ;\n ;\n if (((this.shouldBlockAnimation && this.shouldBlockAnimation(da)))) {\n return;\n }\n ;\n ;\n fa.defer(10000);\n },\n stopAnimation: function(da) {\n ((((da in this.animations)) && this.animations[da].JSBNG__stop()));\n delete this.animations[da];\n return true;\n },\n insertMany: function(da, ea) {\n if (((((\"object\" == typeof da)) && !u(da)))) {\n {\n var fin186keys = ((window.top.JSBNG_Replay.forInKeys)((da))), fin186i = (0);\n var fa;\n for (; (fin186i < fin186keys.length); (fin186i++)) {\n ((fa) = (fin186keys[fin186i]));\n {\n var ga = da[fa];\n this.insert(fa, ga.time, ga.markup, true, ea, ((ga.alt_id || null)));\n };\n };\n };\n ;\n ((this.noItemsElement && i.hide(this.noItemsElement)));\n }\n else ((this.isEmpty() && this.showNoNotifications()));\n ;\n ;\n },\n isEmpty: function() {\n return this._list.isEmpty();\n },\n getEarliestNotifTime: function() {\n return ((this._list.isEmpty() ? 0 : Math.min.apply(null, this.getIds().map(function(da) {\n return this._getField(da, \"time\");\n }.bind(this)))));\n },\n setFilterFn: function(da) {\n this._filter_func = da;\n },\n toggleNotifsSimilarTo: function(da, ea, fa) {\n var ga = this._getField(da, \"app_id\");\n if (ga) {\n var ha = this.getIds();\n for (var ia = 0; ((ia < ha.length)); ++ia) {\n if (((ga == this._getField(ha[ia], \"app_id\")))) {\n var ja = this.getDomObj(ha[ia]);\n if (((da != ha[ia]))) {\n ((ea ? this._hideWithAnimation(ja) : this._showWithAnimation(ja)));\n }\n ;\n ;\n var ka = j.scry(ja, \".first_receipt_div\");\n if (((ka.length == 1))) {\n if (fa) {\n i.hide(ka[0]);\n i.removeClass(ja, \"first_receipt\");\n }\n else {\n i.show(ka[0]);\n i.addClass(ja, \"first_receipt\");\n }\n ;\n }\n ;\n ;\n }\n ;\n ;\n };\n ;\n }\n ;\n ;\n },\n _hideWithAnimation: function(da) {\n new g(da).to(\"opacity\", \"0\").blind().duration(this.FADE_DURATION).checkpoint().to(\"height\", \"0px\").to(\"paddingTop\", \"0px\").to(\"paddingBottom\", \"0px\").blind().hide().duration(this.RESIZE_DURATION).go();\n },\n _showWithAnimation: function(da) {\n new g(da).to(\"height\", \"auto\").to(\"paddingTop\", \"auto\").to(\"paddingBottom\", \"auto\").blind().show().duration(this.RESIZE_DURATION).checkpoint().to(\"opacity\", \"1\").blind().duration(this.FADE_DURATION).go();\n }\n });\n e.exports = ca;\n});\n__d(\"Notifications\", [\"Animation\",\"Arbiter\",\"AsyncRequest\",\"AsyncSignal\",\"Bootloader\",\"ChannelConstants\",\"JSBNG__CSS\",\"DOM\",\"Env\",\"JSBNG__Event\",\"JSLogger\",\"NegativeNotif\",\"NotificationCounter\",\"NotificationList\",\"NotifXList\",\"Parent\",\"Poller\",\"ScrollableArea\",\"Style\",\"SystemEvents\",\"Toggler\",\"URI\",\"UserActivity\",\"UserNoOp\",\"Vector\",\"$\",\"copyProperties\",\"emptyFunction\",\"ge\",\"hasArrayNature\",\"isEmpty\",\"shield\",\"throttle\",\"userAction\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"Arbiter\"), i = b(\"AsyncRequest\"), j = b(\"AsyncSignal\"), k = b(\"Bootloader\"), l = b(\"ChannelConstants\"), m = b(\"JSBNG__CSS\"), n = b(\"DOM\"), o = b(\"Env\"), p = b(\"JSBNG__Event\"), q = b(\"JSLogger\"), r = b(\"NegativeNotif\"), s = b(\"NotificationCounter\"), t = b(\"NotificationList\"), u = b(\"NotifXList\"), v = b(\"Parent\"), w = b(\"Poller\"), x = b(\"ScrollableArea\"), y = b(\"Style\"), z = b(\"SystemEvents\"), aa = b(\"Toggler\"), ba = b(\"URI\"), ca = b(\"UserActivity\"), da = b(\"UserNoOp\"), ea = b(\"Vector\"), fa = b(\"$\"), ga = b(\"copyProperties\"), ha = b(\"emptyFunction\"), ia = b(\"ge\"), ja = b(\"hasArrayNature\"), ka = b(\"isEmpty\"), la = b(\"shield\"), ma = b(\"throttle\"), na = b(\"userAction\");\n function oa(pa) {\n this.updateTime = ((pa.updateTime || JSBNG__Date.now()));\n this.update_period = ((pa.updatePeriod || 60000));\n this.latest_notif_time = ((pa.latestNotif || 0));\n this.latest_read_notif_time = ((pa.latestReadNotif || 0));\n this.cache_version = ((pa.cacheVersion || 0));\n this.notifReceivedType = ((pa.notifReceivedType || \"notification\"));\n this.wrapperID = ((pa.wrapperID || \"notificationsWrapper\"));\n this.contentID = ((pa.contentID || \"jewelNotifs\"));\n this.shouldLogImpressions = ((pa.shouldLogImpressions || false));\n this.allowDesktopNotifications = ((pa.allowDesktopNotifications || false));\n this.logAutoShutOffImpression = true;\n this.useInfiniteScroll = ((pa.useInfiniteScroll || false));\n this.unseenVsUnread = ((pa.unseenVsUnread || false));\n this.scrollableAreaNode = null;\n this.firstReceiptMap = {\n };\n this.user = o.user;\n this.queuedNotifications = [];\n this.timeElement = \"small.time\";\n this.ua = new da();\n this._init();\n };\n;\n ga(oa.prototype, {\n TIME_TRAVEL: \"time_travel\",\n ONLINE: \"online\",\n SCROLL_OFF_TINY: \"scroll_off_tiny\",\n INACTIVE_REFRESH: \"inactive_refresh\",\n _init: function() {\n this.cookieName = ((\"notifications_\" + this.user));\n this.updateCheckCount = 0;\n this.fetchListeners = [];\n this.currentFetchRequest = null;\n this.wrapper = ia(this.wrapperID);\n this.JSBNG__content = ia(this.contentID);\n this.jewelFlyout = ia(\"fbNotificationsFlyout\");\n this.footer = n.JSBNG__find(this.jewelFlyout, \".jewelFooter\");\n this.loadingIndicator = ia(((this.contentID + \"_loading_indicator\")));\n this.NOTIF_JEWEL_REF = \"notif_jewel\";\n this.notifLogger = q.create(\"notifications\");\n s.init();\n this.alertList = new t(this.JSBNG__content, this._getListParams());\n this._updateCount();\n ((((a.MinNotifications && a.MinNotifications.fetchSent())) && (this.fetch = ha)));\n h.subscribe(l.getArbiterType(this.notifReceivedType), this._handleNotificationMsg.bind(this));\n h.subscribe(l.getArbiterType(\"notifications_read\"), this._handleNotificationsReadMsg.bind(this));\n h.subscribe(l.getArbiterType(\"notifications_seen\"), this._handleNotificationsSeenMsg.bind(this));\n h.subscribe(\"jewel/resize\", la(this._hideOverflow, this));\n this.alertList.subscribe(t.UNREAD_COUNT_CHANGE_TYPE, this._updateCount.bind(this));\n this._poller = new w({\n interval: this.update_period,\n setupRequest: this._update.bind(this),\n clearOnQuicklingEvents: false,\n dontStart: true\n });\n this._poller.start.bind(this._poller).defer(this.update_period, false);\n if (this.wrapper) {\n this.countSpan = n.JSBNG__find(this.wrapper, \"span.jewelCount span\");\n }\n ;\n ;\n this.initializeEvents();\n this.fromDom();\n if (this.useInfiniteScroll) {\n this._autoLoadNotifIndex = 1;\n this._truncate = false;\n this.alertList.subscribe(t.INSERTION_TYPE, this._handleInsert.bind(this));\n }\n ;\n ;\n },\n _getListParams: function() {\n return {\n shouldBlockAnimation: function(pa) {\n return this.isNotifJewelOpen();\n }.bind(this),\n unseenVsUnread: this.unseenVsUnread,\n markReadSignalServer: this.markRead.bind(this).curry(true)\n };\n },\n fromDom: function() {\n this.alertList.fromDom();\n ((((((a.MinNotifications && a.MinNotifications.fetched())) && this.alertList.isEmpty())) && this.alertList.showNoNotifications()));\n },\n initializeEvents: function() {\n var pa = this.alertList.ITEM_TAG, qa = null;\n p.listen(this.JSBNG__content, {\n mouseover: function(JSBNG__event) {\n var ta = JSBNG__event.getTarget();\n qa = v.byTag(ta, pa);\n if (((qa && ((ta != qa))))) {\n if (v.byClass(qa, \"notifNegativeBase\")) {\n m.addClass(qa, \"notifHover\");\n }\n else m.addClass(qa, \"selected\");\n ;\n }\n ;\n ;\n },\n mouseout: function(JSBNG__event) {\n ((qa && m.removeClass(qa, \"selected\")));\n ((qa && m.removeClass(qa, \"notifHover\")));\n qa = null;\n },\n mousedown: this.onContentMouseDown.bind(this)\n });\n p.listen(this.wrapper, \"mouseover\", this.onMouseOver.bind(this));\n aa.listen(\"show\", this.wrapper, this.onClick.bind(this));\n aa.listen(\"hide\", this.wrapper, this.onHide.bind(this));\n ((this.shouldLogImpressions && aa.listen(\"show\", this.wrapper, this._logImpression.bind(this))));\n var ra = function(ta) {\n this._poller.request();\n this.notifLogger.bump(ta);\n }.bind(this);\n z.subscribe(z.TIME_TRAVEL, ra.curry(this.TIME_TRAVEL));\n z.subscribe(z.ONLINE, function(ta, ua) {\n ((ua && ra(this.ONLINE)));\n });\n var sa = ((((1000 * 60)) * 60));\n ca.subscribe(function(ta, ua) {\n ((((ua.idleness > sa)) && ra(this.INACTIVE_REFRESH)));\n }.bind(this));\n this.negativeNotifs = {\n };\n this._initNotifNegativeFeedback();\n if (this.useInfiniteScroll) {\n this._setupScroll();\n this._initializeScrollEvents();\n this._updateScrollDataStructures.bind(this).defer();\n this._hideOverflow();\n }\n ;\n ;\n },\n _setupScroll: function() {\n this._scrollArea = n.scry(this.jewelFlyout, \"div.uiScrollableAreaWrap\")[0];\n this._morePagerLink = n.JSBNG__find(this.jewelFlyout, \".notifMorePager a\");\n this._morePager = ((v.byClass(this._morePagerLink, \"notifMorePager\") || this._morePagerLink));\n this._infiniteScrollNotif = null;\n this.afterFirstFetch = false;\n this.animate = false;\n if (((a.MinNotifications && a.MinNotifications.fetched()))) {\n this.afterFirstFetch = true;\n m.show(this._morePager);\n }\n ;\n ;\n },\n _initializeScrollEvents: function() {\n p.listen(this._scrollArea, \"JSBNG__scroll\", ma(this._handleScroll.bind(this)));\n p.listen(this._morePagerLink, \"success\", function(pa) {\n this.fetchHandler(pa.getData().response);\n }.bind(this));\n },\n _updateScrollDataStructures: ((window.top.JSBNG_Replay.push)((window.top.JSBNG_Replay.s5f7fb1571d9ddaabf0918a66ba121ad96869441c_256), function() {\n var pa = this.alertList.getIds(), qa = Math.max(0, ((pa.length - this._autoLoadNotifIndex)));\n this._infiniteScrollNotif = this.alertList.getDomObj(pa[qa]);\n this._annotateMorePagerURI();\n })),\n _annotateMorePagerURI: function() {\n this._morePagerLink.setAttribute(\"ajaxify\", new ba(this._morePagerLink.getAttribute(\"ajaxify\")).addQueryData({\n earliest_time: this.alertList.getEarliestNotifTime()\n }));\n },\n onContentMouseDown: function(JSBNG__event) {\n var pa = v.byTag(JSBNG__event.getTarget(), this.alertList.ITEM_TAG), qa = ((pa && t.getIdFromDom(pa)));\n if (((qa && this.alertList.isUnreadId(qa)))) {\n this.markRead(true, [qa,]);\n }\n ;\n ;\n },\n onMouseOver: function(JSBNG__event) {\n if (m.hasClass(JSBNG__event.getTarget(), \"jewelButton\")) {\n this.ua = na(\"notifs\", JSBNG__event.target, JSBNG__event, {\n mode: \"DEDUP\"\n }).uai(\"mouseover\", \"jewel\").add_event(\"hover\");\n }\n ;\n ;\n this.fetch();\n },\n onClick: function() {\n ((((a.ArbiterMonitor && ((this.fetch != ha)))) && h.registerCallback(ha, [\"notifs/fetched\",])));\n this.ua.add_event(\"show\");\n this.fetch();\n this.markRead(true);\n this._hideOverflow();\n if (this.scrollableAreaNode) {\n var pa = x.getInstance(this.scrollableAreaNode);\n ((pa && pa.poke()));\n }\n ;\n ;\n },\n onHide: function() {\n this.animate = false;\n ((this.animation && this.animation.JSBNG__stop()));\n this.ua.add_event(\"hide\");\n this.markRead(true);\n this._dequeueNotifications();\n },\n _dequeueNotifications: function() {\n this.queuedNotifications.forEach(function(pa) {\n this._displayNotification(pa.type, pa.data);\n }, this);\n this.queuedNotifications.length = 0;\n },\n _handleScroll: function() {\n if (this._checkInfiniteScroll()) {\n this._autoLoadNotifIndex = 5;\n this._sendFetchRequest(this._morePager);\n }\n ;\n ;\n },\n _handleInsert: function(pa, qa) {\n if (qa.is_new) {\n this._newDataFromInsert = true;\n }\n ;\n ;\n this._updateScrollDataStructures();\n },\n _checkInfiniteScroll: function() {\n if (((this._infiniteScrollNotif && this._scrollArea))) {\n var pa = ea.getElementPosition(this._infiniteScrollNotif).y, qa = ((ea.getElementPosition(this._scrollArea).y + ea.getElementDimensions(this._scrollArea).y));\n return ((pa < qa));\n }\n ;\n ;\n return false;\n },\n _initNotifNegativeFeedback: function() {\n u.init(this);\n this.alertList.setFilterFn(u.filterStoreClicked);\n aa.listen(\"hide\", fa(this.wrapperID), function() {\n {\n var fin187keys = ((window.top.JSBNG_Replay.forInKeys)((this.negativeNotifs))), fin187i = (0);\n var pa;\n for (; (fin187i < fin187keys.length); (fin187i++)) {\n ((pa) = (fin187keys[fin187i]));\n {\n if (pa) {\n ((((this.negativeNotifs[pa] instanceof r)) && this.negativeNotifs[pa].reset()));\n }\n ;\n ;\n };\n };\n };\n ;\n }.bind(this));\n h.subscribe(\"notif/negativeCancel\", function(pa, qa) {\n ((this.negativeNotifs[qa.id] && this.negativeNotifs[qa.id].restore()));\n }.bind(this));\n h.subscribe(\"notif/negativeConfirmed\", function(pa, qa) {\n ((this.negativeNotifs[qa.id] && this.negativeNotifs[qa.id].onTurnedOff()));\n this.alertList.toggleNotifsSimilarTo(qa.id, true, true);\n this._hideOverflow();\n this._handleScroll();\n }.bind(this));\n h.subscribe(\"notif/negativeUndid\", function(pa, qa) {\n ((this.negativeNotifs[qa.id] && this.negativeNotifs[qa.id].onUndid()));\n this.alertList.toggleNotifsSimilarTo(qa.id, false, true);\n this._hideOverflow();\n }.bind(this));\n h.subscribe(\"notif/negativeMarkedSpam\", function(pa, qa) {\n ((this.negativeNotifs[qa.id] && this.negativeNotifs[qa.id].onMarkedSpam()));\n }.bind(this));\n h.subscribe(\"notif/negativeFirstReceiptYes\", function(pa, qa) {\n ((this.negativeNotifs[qa.id] && this.negativeNotifs[qa.id].onFirstReceiptYes()));\n this.alertList.toggleNotifsSimilarTo(qa.id, false, true);\n }.bind(this));\n h.subscribe(\"notif/negativeFirstReceiptNo\", function(pa, qa) {\n ((this.negativeNotifs[qa.id] && this.negativeNotifs[qa.id].onFirstReceiptNo()));\n this.alertList.toggleNotifsSimilarTo(qa.id, false, true);\n }.bind(this));\n this.alertList.subscribe(t.INSERTION_TYPE, function(pa, qa) {\n this._updateFirstReceipt(qa);\n var ra = n.scry(qa.obj, \".notif_x\");\n if (((ra.length == 1))) {\n this.negativeNotifs[qa.id] = new r(this, qa);\n }\n ;\n ;\n }.bind(this));\n },\n _sendIDs: function(pa, qa, ra) {\n var sa = ((ra || {\n }));\n for (var ta = 0; ((ta < pa.length)); ++ta) {\n sa[((((\"alert_ids[\" + ta)) + \"]\"))] = pa[ta];\n ;\n };\n ;\n new j(ba(qa).getQualifiedURI().toString(), sa).send();\n },\n _waitForFetch: function(pa) {\n return ((this.currentFetchRequest && this.fetchListeners.push(pa.bind(this))));\n },\n _logImpression: function() {\n var pa = this.alertList.getIds();\n if (((((pa.length === 0)) && this._waitForFetch(this._logImpression)))) {\n return;\n }\n ;\n ;\n this.logImpressionIds(pa, this.NOTIF_JEWEL_REF);\n },\n logImpressionIds: function(pa, qa) {\n ((this.shouldLogImpressions && this._sendIDs(pa, \"/ajax/notifications/impression.php\", {\n ref: qa\n })));\n },\n markRead: function(pa, qa) {\n var ra = !ja(qa);\n qa = ((ra ? this.alertList.getUnseenIds() : qa.filter(this.alertList.isUnreadId.bind(this.alertList))));\n if (qa.length) {\n ((pa && this._sendIDs(qa, \"/ajax/notifications/mark_read.php\", {\n seen: ((ra ? 1 : 0))\n })));\n if (((ia(\"jewelNoticeMessage\") && this.logAutoShutOffImpression))) {\n new j(\"/ajax/notifications/auto_shutoff_seen.php\").send();\n this.logAutoShutOffImpression = false;\n }\n ;\n ;\n var sa = pa;\n ((ra ? this.alertList.markSeen(qa) : this.alertList.markRead(qa, sa)));\n }\n ;\n ;\n ((ra && this._waitForFetch(this.markRead.bind(this, pa))));\n },\n markAllRead: function() {\n var pa = this.alertList.getUnreadIds();\n this.markRead(true, pa);\n },\n _updateErrorHandler: function(pa) {\n \n },\n _updateURI: \"/ajax/presence/update.php\",\n _update: function(pa) {\n pa.setHandler(this._handleUpdate.bind(this)).setOption(\"suppressErrorAlerts\", true).setErrorHandler(this._updateErrorHandler.bind(this)).setData({\n notif_latest: this.latest_notif_time,\n notif_latest_read: this.latest_read_notif_time\n }).setURI(this._updateURI).setAllowCrossPageTransition(true);\n },\n _handleUpdate: function(pa) {\n var qa = pa.payload.notifications;\n if (!qa.no_change) {\n this.updateTime = pa.payload.time;\n this.latest_notif_time = qa.latest_notif;\n this.latest_read_notif_time = qa.latest_read_notif;\n this._updateDisplay();\n this.alertList.insertMany(qa.notifications);\n }\n ;\n ;\n },\n _updateDisplay: function() {\n if (!this.JSBNG__content) {\n return;\n }\n ;\n ;\n this._updateCount();\n },\n _updateCount: function() {\n h.inform(\"jewel/count-updated\", {\n jewel: \"notifications\",\n count: this.alertList.unseenCount\n }, h.BEHAVIOR_STATE);\n this._hideOverflow();\n },\n fetch: function(pa) {\n this._sendFetchRequest(pa);\n },\n _getFetchQueryData: function() {\n var pa = {\n time: this.latest_notif_time,\n user: this.user,\n version: this.cache_version,\n locale: o.locale\n };\n if (this.useInfiniteScroll) {\n pa.earliest_time = this.alertList.getEarliestNotifTime();\n }\n ;\n ;\n return pa;\n },\n _sendFetchRequest: function(pa) {\n if (this.useInfiniteScroll) {\n this._infiniteScrollNotif = null;\n this._newDataFromInsert = false;\n this._truncate = true;\n }\n ;\n ;\n var qa = ba(\"/ajax/notifications/get.php\"), ra = ((pa || this.loadingIndicator));\n if (this.currentFetchRequest) {\n return true;\n }\n ;\n ;\n this.ua.add_event(\"fetch\");\n qa.setQueryData(this._getFetchQueryData());\n this.currentFetchRequest = new i().setURI(qa).setStatusElement(ra).setMethod(\"GET\").setReadOnly(true).setTimeoutHandler(30000, this.fetchErrorHandler.bind(this)).setHandler(this.fetchHandler.bind(this)).setErrorHandler(this.fetchErrorHandler.bind(this)).setAllowCrossPageTransition(true);\n ((!this.currentFetchRequest.send() && this.fetchErrorHandler()));\n return true;\n },\n fetchErrorHandler: function(pa) {\n this.currentFetchRequest = null;\n this.ua.add_event(\"fetch_error\");\n ((this.loadingIndicator && m.hide(this.loadingIndicator)));\n ((this.useInfiniteScroll && this._updateScrollDataStructures()));\n },\n fetchHandler: function(pa) {\n this.ua.add_event(\"fetch_success\");\n var qa = pa.getPayload();\n this.alertList.insertMany(qa.notifications, true);\n ((this.loadingIndicator && m.hide(this.loadingIndicator)));\n this.loadingIndicator = null;\n this.currentFetchRequest = null;\n this.fetch = ha;\n if (this.fetchListeners) {\n for (var ra = 0; ((ra < this.fetchListeners.length)); ra++) {\n this.fetchListeners[ra]();\n ;\n };\n ;\n this.fetchListeners = [];\n }\n ;\n ;\n ((a.ArbiterMonitor && h.inform(\"notifs/fetched\", \"\", h.BEHAVIOR_STATE)));\n var sa = qa.generated, ta = Math.round(((JSBNG__Date.now() / 1000)));\n if (((((ta - sa)) > 15))) {\n sa = ta;\n }\n ;\n ;\n k.loadModules([\"LiveTimer\",], function(ua) {\n ua.restart(sa);\n ua.startLoop(0);\n });\n if (this.useInfiniteScroll) {\n if (((ka(qa.notifications) || !this._newDataFromInsert))) {\n this._noMoreNotifications();\n }\n else m.show(this._morePager);\n ;\n ;\n this._updateScrollDataStructures();\n if (((this.isNotifJewelOpen() && this.afterFirstFetch))) {\n this.animate = true;\n }\n ;\n ;\n this.afterFirstFetch = true;\n }\n ;\n ;\n this._hideOverflow();\n },\n _noMoreNotifications: function() {\n m.hide(this._morePager);\n this.useInfiniteScroll = false;\n },\n _mergeNotification: function(pa, qa, ra, sa) {\n var ta = !this.alertList.isUnreadId(pa);\n this.alertList.insert(pa, qa, ra, true, null, ((sa || null)));\n this.latest_notif_time = 0;\n if (ta) {\n this._updateCount();\n }\n ;\n ;\n var ua = this.alertList.getDomObj(pa);\n if (ua) {\n k.loadModules([\"LiveTimer\",], function(va) {\n va.addTimeStamps(ua);\n });\n }\n ;\n ;\n },\n _handleNotificationMsg: function(pa, qa) {\n if (this.isNotifJewelOpen()) {\n var ra = {\n type: pa,\n data: qa\n };\n this.queuedNotifications.push(ra);\n }\n else this._displayNotification(pa, qa);\n ;\n ;\n },\n _displayNotification: function(pa, qa) {\n var ra = qa.obj;\n if (((typeof this.useDesktopNotifications == \"undefined\"))) {\n this.useDesktopNotifications = ((((this.allowDesktopNotifications && window.JSBNG__webkitNotifications)) && ((window.JSBNG__webkitNotifications.checkPermission() === 0))));\n }\n ;\n ;\n if (this.useDesktopNotifications) {\n k.loadModules([\"DesktopNotifications\",], function(sa) {\n sa.addNotification(ra.alert_id);\n });\n }\n ;\n ;\n if (ra.markup) {\n this._mergeNotification(ra.alert_id, ra.time, ra.markup, ((ra.alt_id || null)));\n }\n else this._poller.request();\n ;\n ;\n },\n _handleNotificationsReadMsg: function(pa, qa) {\n var ra = qa.obj;\n this.markRead(false, ra.alert_ids);\n },\n _handleNotificationsSeenMsg: function(pa, qa) {\n if (!this.unseenVsUnread) {\n this._handleNotificationsReadMsg(pa, qa);\n return;\n }\n ;\n ;\n var ra = qa.obj;\n this.alertList.markSeen(ra.alert_ids);\n },\n _hideOverflow: function() {\n if (!this.isNotifJewelOpen()) {\n return;\n }\n ;\n ;\n var pa = n.scry(fa(\"fbNotificationsList\"), \".notification\");\n this.scrollableAreaNode = ((this.scrollableAreaNode || n.scry(this.jewelFlyout, \".uiScrollableArea\")[0]));\n var qa = 20, ra = ((m.hasClass(JSBNG__document.documentElement, \"tinyViewport\") && !m.hasClass(JSBNG__document.body, \"fixedBody\")));\n if (((!pa.length || ra))) {\n y.set(this.scrollableAreaNode, \"height\", \"100%\");\n this.notifLogger.rate(this.SCROLL_OFF_TINY, ra);\n return;\n }\n ;\n ;\n var sa = ((this.scrollableAreaNode || pa[0])), ta = ((((((ea.getViewportDimensions().y - ea.getElementPosition(sa, \"viewport\").y)) - ea.getElementDimensions(this.footer).y)) - 5)), ua = ta, va = 0;\n for (; ((((va < pa.length)) && ((ua > 0)))); ++va) {\n if (m.shown(pa[va])) {\n ua -= ea.getElementDimensions(pa[va]).y;\n }\n ;\n ;\n };\n ;\n var wa = 530, xa = Math.min(wa, ((ta - Math.max(ua, 0))));\n if (((((ua >= 0)) && ((xa < wa))))) {\n if (!this.useInfiniteScroll) {\n xa = \"100%\";\n }\n else {\n if (((this._truncate && ((pa.length >= 5))))) {\n xa -= qa;\n }\n ;\n ;\n xa += \"px\";\n }\n ;\n ;\n }\n else xa += \"px\";\n ;\n ;\n if (((((this.useInfiniteScroll && this.animate)) && ((xa != \"100%\"))))) {\n ((this.animation && this.animation.JSBNG__stop()));\n this.animation = new g(this.scrollableAreaNode).to(\"height\", xa).duration(200).go();\n }\n else {\n var ya = x.getInstance(this.scrollableAreaNode);\n ((ya && ya.showScrollbar.bind(ya).defer()));\n y.set(this.scrollableAreaNode, \"height\", xa);\n }\n ;\n ;\n },\n _updateFirstReceipt: function(pa) {\n var qa = pa.obj.getAttribute(\"data-appid\"), ra = n.scry(pa.obj, \".first_receipt_div\");\n if (((qa && ((ra.length == 1))))) {\n if (this.firstReceiptMap[qa]) {\n if (((((pa.id != this.firstReceiptMap[qa].id)) && ((this.firstReceiptMap[qa].time > pa.time))))) {\n return;\n }\n ;\n ;\n m.removeClass(this.firstReceiptMap[qa].obj, \"first_receipt\");\n }\n ;\n ;\n this.firstReceiptMap[qa] = pa;\n m.addClass(pa.obj, \"first_receipt\");\n }\n ;\n ;\n },\n isNotifJewelOpen: function() {\n var pa = aa.getInstance(this.wrapper).getActive();\n return ((((pa === this.wrapper)) && m.hasClass(pa, \"openToggler\")));\n }\n });\n e.exports = oa;\n});\n__d(\"legacy:original-notifications-jewel\", [\"Notifications\",], function(a, b, c, d) {\n a.Notifications = b(\"Notifications\");\n}, 3);\n__d(\"PagesVoiceBar\", [\"$\",\"Arbiter\",\"AsyncRequest\",\"JSBNG__CSS\",\"ChannelConstants\",\"DOM\",\"PageTransitions\",], function(a, b, c, d, e, f) {\n var g = b(\"$\"), h = b(\"Arbiter\"), i = b(\"AsyncRequest\"), j = b(\"JSBNG__CSS\"), k = b(\"ChannelConstants\"), l = b(\"DOM\"), m = b(\"PageTransitions\"), n = \"PagesVoiceBar/toggle\", o = \"PagesVoiceBar/initialized\", p = \"PagesVoiceBar/switchVoice\", q = \"page_transition\", r = \"pages_voice_bar_sync\", s = null, t = null, u = false, v = false;\n function w() {\n v = !v;\n j.conditionClass(JSBNG__document.body, \"hasVoiceBar\", v);\n };\n;\n function x(da, ea) {\n new i(\"/ajax/pages/switch_voice.php\").setData(ea).setHandler(function(fa) {\n ba();\n }).send();\n };\n;\n function y() {\n s = null;\n };\n;\n function z(da, ea) {\n if (((ea.obj.profile_id && ((ea.obj.profile_id == s))))) {\n ba();\n }\n ;\n ;\n };\n;\n function aa(da) {\n h.subscribe(o, da);\n };\n;\n function ba() {\n m.getNextURI().go();\n };\n;\n var ca = {\n initVoiceBar: function() {\n if (u) {\n return;\n }\n ;\n ;\n t = g(\"pagesVoiceBarContent\");\n v = j.hasClass(JSBNG__document.body, \"hasVoiceBar\");\n h.subscribe(n, w);\n h.subscribe(p, x);\n h.subscribe(q, y);\n h.subscribe(k.getArbiterType(r), z);\n u = true;\n h.inform(o, null, h.BEHAVIOR_STATE);\n },\n update: function(da, ea) {\n aa(function() {\n s = ea;\n l.setContent(t, da);\n });\n }\n };\n e.exports = ca;\n});\n__d(\"PrivacyLiteFlyout\", [\"JSBNG__Event\",\"function-extensions\",\"$\",\"Animation\",\"Arbiter\",\"ArbiterMixin\",\"AsyncRequest\",\"JSBNG__CSS\",\"DOM\",\"Ease\",\"Parent\",\"SelectorDeprecated\",\"Style\",\"Toggler\",\"copyProperties\",\"cx\",\"csx\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\");\n b(\"function-extensions\");\n var h = b(\"$\"), i = b(\"Animation\"), j = b(\"Arbiter\"), k = b(\"ArbiterMixin\"), l = b(\"AsyncRequest\"), m = b(\"JSBNG__CSS\"), n = b(\"DOM\"), o = b(\"Ease\"), p = b(\"Parent\"), q = b(\"SelectorDeprecated\"), r = b(\"Style\"), s = b(\"Toggler\"), t = b(\"copyProperties\"), u = b(\"cx\"), v = b(\"csx\"), w = b(\"ge\"), x = \"PrivacyLiteFlyout/expandingSection\", y = {\n }, z = {\n };\n function aa() {\n switch (window.JSBNG__location.pathname) {\n case \"/\":\n \n case \"/home.php\":\n \n case \"/index.php\":\n return true;\n default:\n return false;\n };\n ;\n };\n;\n function ba(ka) {\n var la = \".-cx-PUBLIC-PrivacyLiteFlyoutNav__label\";\n return ((!p.byClass(ka, \"hasSmurfbar\") && n.scry(h(\"blueBar\"), la).length));\n };\n;\n function ca(ka, la, ma) {\n var na = ((la ? 0 : ka.offsetHeight));\n r.set(ka, \"height\", ((na + \"px\")));\n r.set(ka, \"overflow\", \"hidden\");\n m.show(ka);\n var oa = ((la ? ka.scrollHeight : 0)), pa = n.getID(ka);\n ((y[pa] && y[pa].JSBNG__stop()));\n y[pa] = new i(ka).to(\"height\", oa).ondone(function() {\n y[pa] = null;\n r.set(ka, \"height\", \"\");\n r.set(ka, \"overflow\", \"\");\n ((oa || m.hide(ka)));\n ma();\n }).duration(((Math.abs(((oa - na))) * 1.5))).ease(o.sineOut).go();\n };\n;\n function da(ka) {\n return new l().setURI(ka).send();\n };\n;\n function ea() {\n return da(\"/ajax/privacy/privacy_lite/increment_masher_tip_count\");\n };\n;\n function fa() {\n return da(\"/ajax/privacy/privacy_lite/dismiss_masher_tip\");\n };\n;\n var ga = null, ha = false, ia = false, ja = t({\n loadBody: function(ka) {\n if (((!ha && w(\"fbPrivacyLiteFlyoutLoading\")))) {\n ha = true;\n if (!ka) {\n ka = false;\n }\n ;\n ;\n new l(\"/ajax/privacy/privacy_lite/loader\").setData({\n from_megaphone: ka\n }).send();\n }\n ;\n ;\n },\n renderBody: function(ka) {\n var la = w(\"fbPrivacyLiteFlyoutLoading\");\n if (la) {\n n.replace(la, ka);\n ja.inform(\"load\", null, j.BEHAVIOR_STATE);\n }\n ;\n ;\n },\n hideCleanup: function(ka) {\n j.inform(x);\n var la = n.scry(ka, \".-cx-PRIVATE-PrivacyLiteFlyoutNav__changedcomposer\").forEach(function(ma) {\n m.removeClass(ma, \"-cx-PRIVATE-PrivacyLiteFlyoutNav__changedcomposer\");\n });\n },\n registerFlyoutToggler: function(ka, la) {\n ga = la;\n var ma = s.createInstance(ka);\n ma.setSticky(false);\n s.listen([\"show\",\"hide\",], la, function(na) {\n ja.inform(na);\n ia = ((na === \"show\"));\n if (!ia) {\n ja.hideCleanup(ka);\n ma.hide();\n j.inform(\"layer_hidden\", {\n type: \"PrivacyShortcutsFlyout\"\n });\n }\n else j.inform(\"layer_shown\", {\n type: \"PrivacyShortcutsFlyout\"\n });\n ;\n ;\n });\n },\n registerFinalReminderFlyout: function(ka) {\n if (((ia || !aa()))) {\n return;\n }\n ;\n ;\n var la = n.JSBNG__find(ka.getRoot(), \".-cx-PRIVATE-PrivacyLiteFinalReminder__okay\"), ma = ka.getContext();\n if (ba(ma)) {\n ka.setOffsetY(-5);\n }\n ;\n ;\n ja.subscribe(\"show\", function() {\n ka.hide();\n });\n var na = g.listen(la, \"click\", function() {\n ka.hide();\n da(\"/ajax/privacy/privacy_lite/dismiss_rollout_reminder\");\n na.remove();\n });\n da(\"/ajax/privacy/privacy_lite/increment_rollout_reminder\");\n ka.show();\n },\n isFlyoutVisible: function() {\n return ((ga && ((s.getActive() === ga))));\n },\n exists: function() {\n return !!n.scry(JSBNG__document.body, \".-cx-PUBLIC-PrivacyLiteFlyoutNav__button\")[0];\n },\n setFlyoutVisible: function(ka) {\n ((ka ? s.show(ga) : s.hide(ga)));\n },\n showSection: function(ka) {\n var la = z[ka], ma = la.chevron, na = la.sublist_container;\n j.inform(x, ma);\n if (((ja.inform(\"expand\", ka) !== false))) {\n m.removeClass(ma, \"-cx-PRIVATE-PrivacyLiteFlyoutNav__chevronexpand\");\n m.addClass(ma, \"-cx-PRIVATE-PrivacyLiteFlyoutNav__chevroncollapse\");\n ca(na, true, function() {\n ja.inform(\"expanded\", ka);\n });\n }\n ;\n ;\n },\n hideSection: function(ka, la, ma) {\n var na = z[ka], oa = na.chevron, pa = na.sublist_container;\n if (((ma === oa))) {\n return;\n }\n ;\n ;\n if (((ja.inform(\"collapse\", ka) !== false))) {\n m.addClass(oa, \"-cx-PRIVATE-PrivacyLiteFlyoutNav__chevronexpand\");\n m.removeClass(oa, \"-cx-PRIVATE-PrivacyLiteFlyoutNav__chevroncollapse\");\n ca(pa, false, function() {\n ja.inform(\"collapsed\", ka);\n });\n }\n ;\n ;\n },\n toggleSection: function(ka) {\n var la = z[ka].chevron;\n s.getInstance(la).hide();\n if (m.hasClass(la, \"-cx-PRIVATE-PrivacyLiteFlyoutNav__chevronexpand\")) {\n ja.showSection(ka);\n new l(\"/ajax/privacy/privacy_lite/log_section_expand\").setData({\n section: ka\n }).send();\n }\n else ja.hideSection(ka);\n ;\n ;\n },\n registerSection: function(ka, la) {\n z[ka] = la;\n j.subscribe(x, ja.hideSection.curry(ka));\n g.listen(la.section_block, \"click\", ja.toggleSection.curry(ka));\n },\n registerInlineHelpOnAudienceChange: function(ka, la, ma) {\n q.subscribe(\"select\", function(na, oa) {\n if (((oa.selector != ka))) {\n return;\n }\n ;\n ;\n m.addClass(la, \"-cx-PRIVATE-PrivacyLiteFlyoutNav__changedcomposer\");\n if (ma) {\n new l(\"/ajax/privacy/privacy_lite/kill_intro\").send();\n }\n ;\n ;\n });\n },\n registerInlineHelpXOutOnClick: function(ka, la) {\n g.listen(ka, \"click\", m.addClass.curry(la, \"-cx-PRIVATE-PrivacyLiteFlyoutNav__reallygone\"));\n },\n registerBlockUnhideOnFocus: function(ka, la) {\n g.listen(ka, \"JSBNG__focus\", m.show.curry(la));\n },\n registerMessageFilterSettingOnClick: function(ka, la) {\n var ma = n.JSBNG__find(ka, \".-cx-PRIVATE-PrivacyLiteFlyoutNav__filterradio\");\n g.listen(ka, \"click\", function() {\n if (ma.checked) {\n new l(\"/ajax/mercury/change_filtering_type.php\").setData({\n filtering_type: la,\n source: \"privacy_lite\"\n }).send();\n }\n ;\n ;\n });\n },\n registerGraphSearchPrivacyReminder: function(ka, la) {\n g.listen(la, \"click\", function() {\n n.remove(ka);\n da(\"/ajax/privacy/privacy_lite/dismiss_gs_privacy_reminder\");\n });\n },\n registerMasher: function(ka, la) {\n var ma = false;\n j.subscribe(x, function(na, oa) {\n var pa = n.scry(p.byTag(oa, \"li\"), \".-cx-PRIVATE-PrivacyLiteFlyoutNav__notice\").length;\n if (((ma || !pa))) {\n return;\n }\n ;\n ;\n ma = Boolean(ea());\n });\n g.listen(la, \"click\", function() {\n n.remove(ka);\n fa();\n });\n }\n }, k);\n e.exports = ja;\n});\n__d(\"PrivacyLiteFlyoutHelp\", [\"JSBNG__Event\",\"Arbiter\",\"AsyncRequest\",\"ContextualHelpSearchController\",\"JSBNG__CSS\",\"DOM\",\"Parent\",\"copyProperties\",\"csx\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Arbiter\"), i = b(\"AsyncRequest\"), j = b(\"ContextualHelpSearchController\"), k = b(\"JSBNG__CSS\"), l = b(\"DOM\"), m = b(\"Parent\"), n = b(\"copyProperties\"), o = b(\"csx\"), p = b(\"cx\"), q, r;\n function s(t, u, v, w, x) {\n this._width = 315;\n r = l.JSBNG__find(u, \"input\");\n var y = l.create(\"div\");\n this.init(t, r, y, v, w);\n q = m.byClass(u, \"-cx-PRIVATE-PrivacyLiteFlyoutNav__root\");\n g.listen(x, \"click\", this._hideSearch.bind(this));\n h.subscribe(\"PrivacyLiteFlyout/expandingSection\", this._hideSearch.bind(this));\n var z = l.scry(q, \".-cx-PRIVATE-PrivacyLiteFlyoutNav__searchlink\")[0];\n ((z && g.listen(z, \"click\", function() {\n k.addClass(q, \"-cx-PRIVATE-PrivacyLiteFlyoutNav__searchenabled\");\n r.JSBNG__focus();\n if (!this.suggestedResults) {\n new i(\"/ajax/privacy/privacy_lite/help_suggestions\").setHandler(function(aa) {\n var ba = aa.getPayload().searchSuggestions, ca = l.JSBNG__find(q, \".-cx-PRIVATE-PrivacyLiteFlyoutNav__searchsuggestions\");\n l.setContent(ca, ba);\n k.addClass(q, \"-cx-PRIVATE-PrivacyLiteFlyoutNav__hassearchsuggestions\");\n }.bind(this)).send();\n }\n ;\n ;\n }.bind(this))));\n };\n;\n n(s.prototype, new j(), {\n source: \"privacy_shortcuts\",\n _hideSearch: function() {\n this.clearResults();\n k.removeClass(q, \"-cx-PRIVATE-PrivacyLiteFlyoutNav__searchenabled\");\n },\n show: function(t) {\n if (((t === this.topics_area))) {\n k.removeClass(q, \"-cx-PRIVATE-PrivacyLiteFlyoutNav__helpenabled\");\n return;\n }\n else if (((t === this.loader))) {\n k.addClass(q, \"-cx-PRIVATE-PrivacyLiteFlyoutNav__helpenabled\");\n k.hide(this.results_area);\n }\n else k.hide(this.loader);\n \n ;\n ;\n k.show(t);\n }\n });\n e.exports = s;\n});\n__d(\"ViewasChromeBar\", [\"JSBNG__Event\",\"Arbiter\",\"AsyncRequest\",\"JSBNG__CSS\",\"DOM\",\"Focus\",\"ModalMask\",\"PageTransitions\",\"Parent\",\"cx\",\"csx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Arbiter\"), i = b(\"AsyncRequest\"), j = b(\"JSBNG__CSS\"), k = b(\"DOM\"), l = b(\"Focus\"), m = b(\"ModalMask\"), n = b(\"PageTransitions\"), o = b(\"Parent\"), p = b(\"cx\"), q = b(\"csx\"), r = \"ViewasChromeBar/initialized\", s = null, t = false;\n function u(x) {\n h.subscribe(r, x);\n };\n;\n function v(x) {\n j.addClass(x, \"-cx-PRIVATE-ViewasChromeBar__specificselectormode\");\n var y = k.JSBNG__find(x, \".-cx-PRIVATE-ViewasChromeBar__userselector\");\n l.set(k.JSBNG__find(y, \".textInput\"));\n };\n;\n var w = {\n initChromeBar: function(x) {\n if (t) {\n return;\n }\n ;\n ;\n s = x;\n t = true;\n h.inform(r, null, h.BEHAVIOR_STATE);\n },\n update: function(x, y) {\n u(function() {\n k.setContent(s, x);\n if (y) {\n new i(\"/ajax/privacy/glasgow/viewas_bar_flyout_open\").send();\n }\n ;\n ;\n });\n },\n registerSpecificModeOnClick: function(x) {\n g.listen(x, \"click\", v.curry(o.byClass(x, \"-cx-PRIVATE-ViewasChromeBar__text\")));\n },\n registerFlyoutModalMask: function() {\n m.show();\n n.registerHandler(m.hide, 10);\n }\n };\n e.exports = w;\n});\n__d(\"BingScalingCommon\", [], function(a, b, c, d, e, f) {\n var g = {\n integrateWebsuggestions: function(h, i, j, k, l) {\n var m = [], n = ((i ? m : [])), o = [], p = 0, q = 0, r = j;\n k = Math.floor(((j * k)));\n for (var s = 0; ((s < h.length)); s++) {\n var t = h[s];\n if (((((t.type === \"websuggestion\")) && !t.isSeeMore))) {\n if (((((((r > 0)) && ((p < k)))) || ((((p > 0)) && ((p < l))))))) {\n n.push(t);\n p++;\n r--;\n }\n else if (((r > 0))) {\n o.push(t);\n }\n \n ;\n ;\n }\n else {\n if (((((r <= 0)) && !i))) {\n continue;\n }\n ;\n ;\n m.push(t);\n q++;\n r--;\n }\n ;\n ;\n };\n ;\n if (((((r > 0)) && ((o.length > 0))))) {\n n = n.concat(o.slice(0, r));\n }\n ;\n ;\n if (!i) {\n return m.concat(n);\n }\n ;\n ;\n return n;\n }\n };\n e.exports = g;\n});\n__d(\"TypeaheadSearchSponsoredUtils\", [], function(a, b, c, d, e, f) {\n function g(o) {\n return ((o.selected_target_id != o.s_target));\n };\n;\n function h(o, p) {\n return Math.min(p.maxNumberAds, ((((p.maxNumberRemovedResults + p.maxNumberResultsAndAds)) - o)));\n };\n;\n function i(o, p) {\n var q = {\n };\n for (var r = ((o.length - 1)); ((r >= 0)); --r) {\n var s = o[r];\n q[s] = s;\n if (p.hasOwnProperty(s)) {\n p[s].forEach(function(t) {\n q[t] = s;\n });\n }\n ;\n ;\n };\n ;\n return q;\n };\n;\n function j(o, p, q) {\n for (var r = p; ((r < o.length)); r++) {\n ((o[r].setDebugString && o[r].setDebugString(q)));\n ;\n };\n ;\n };\n;\n function k(o, p) {\n return ((p.indexOf(String(o)) != -1));\n };\n;\n function l(o, p, q, r) {\n if (n.isSelfPromoted(o)) {\n return false;\n }\n ;\n ;\n if (((((q + p.length)) < r.maxNumberResultsAndAds))) {\n return false;\n }\n ;\n ;\n return true;\n };\n;\n function m(o, p, q, r) {\n var s = o[((o.length - 1))];\n if (p.hasOwnProperty(s)) {\n return false;\n }\n ;\n ;\n if (((s == q))) {\n return false;\n }\n ;\n ;\n if (((s == r))) {\n return false;\n }\n ;\n ;\n return true;\n };\n;\n var n = {\n isSelfPromoted: function(o) {\n return ((o.uid == o.s_target));\n },\n prepareAndSortAds: function(o, p, q) {\n if (!p) {\n return [];\n }\n ;\n ;\n var r = [], s = o.length, t = {\n };\n for (var u = 0; ((u < s)); u++) {\n var v = o[u];\n t[v.uid] = true;\n if (v.s_categories) {\n v.s_categories.forEach(function(z) {\n t[z] = true;\n });\n }\n ;\n ;\n };\n ;\n {\n var fin188keys = ((window.top.JSBNG_Replay.forInKeys)((t))), fin188i = (0);\n var w;\n for (; (fin188i < fin188keys.length); (fin188i++)) {\n ((w) = (fin188keys[fin188i]));\n {\n if (p[w]) {\n {\n var fin189keys = ((window.top.JSBNG_Replay.forInKeys)((p[w]))), fin189i = (0);\n var x;\n for (; (fin189i < fin189keys.length); (fin189i++)) {\n ((x) = (fin189keys[fin189i]));\n {\n var y = p[w][x];\n if (((q && q.hasOwnProperty(y.uid)))) {\n continue;\n }\n ;\n ;\n r.push(y);\n };\n };\n };\n }\n ;\n ;\n };\n };\n };\n ;\n r.sort(function(z, aa) {\n return ((aa.s_value - z.s_value));\n });\n return r;\n },\n selectAds: function(o, p, q, r, s) {\n var t = [], u = {\n }, v = {\n }, w = {\n }, x = 0, y = h(o.length, r), z = i(o, p);\n for (var aa = 0; ((aa < q.length)); aa++) {\n if (((t.length >= y))) {\n j(q, aa, ((((\"filtered: \" + y)) + \" ads already selected\")));\n break;\n }\n ;\n ;\n var ba = q[aa], ca = ((z[ba.s_target] || ba.s_target));\n ba.selected_target_id = ca;\n if (!k(ca, o)) {\n ((ba.setDebugString && ba.setDebugString(((((((((\"filtered: targeted organic \" + ca)) + \" does not exist. \")) + \"promoted id \")) + ba.uid)))));\n continue;\n }\n ;\n ;\n if (((l(ba, o, x, r) && !m(o, v, ca, s)))) {\n ((ba.setDebugString && ba.setDebugString(\"filtered: last organic need but cannot be removed\")));\n continue;\n }\n ;\n ;\n if (((!n.isSelfPromoted(ba) && ((o.indexOf(String(ba.uid)) != -1))))) {\n ((ba.setDebugString && ba.setDebugString(((((((\"filtered: organic \" + ba.uid)) + \" targets another organic \")) + ca)))));\n continue;\n }\n ;\n ;\n if (u.hasOwnProperty(ba.s_account)) {\n ((ba.setDebugString && ba.setDebugString(((((\"filtered: ad account \" + ba.s_account)) + \" already selected\")))));\n continue;\n }\n ;\n ;\n if (w.hasOwnProperty(ba.uid)) {\n ((ba.setDebugString && ba.setDebugString(((((\"filtered: ad promoted id \" + ba.uid)) + \" already selected\")))));\n continue;\n }\n ;\n ;\n ((ba.setDebugString && ba.setDebugString(\"selected\")));\n t.push(ba);\n u[ba.s_account] = true;\n v[ca] = true;\n w[ba.uid] = true;\n if (!n.isSelfPromoted(ba)) {\n ++x;\n if (((((x + o.length)) > r.maxNumberResultsAndAds))) {\n o.pop();\n }\n ;\n ;\n }\n ;\n ;\n };\n ;\n return t;\n },\n hasTopResult: function(o, p, q) {\n if (((o == null))) {\n return false;\n }\n ;\n ;\n if (((o.type == \"user\"))) {\n return false;\n }\n ;\n ;\n if (((o.type == \"grammar\"))) {\n return false;\n }\n ;\n ;\n if (((o.score > q.v0))) {\n return true;\n }\n ;\n ;\n if (((o.s_value > q.v3))) {\n return true;\n }\n ;\n ;\n if (((o.s_value > p.s_value))) {\n return true;\n }\n ;\n ;\n var r = ((g(p) ? q.v4 : ((o.bootstrapped ? q.v1 : q.v2))));\n if (((r < p.s_value))) {\n return false;\n }\n ;\n ;\n return true;\n },\n setOrganicECPM: function(o, p) {\n if (((o == null))) {\n return;\n }\n ;\n ;\n for (var q = 0; ((q < p.length)); q++) {\n if (o.hasOwnProperty(p[q].uid)) {\n p[q].s_value = o[p[q].uid];\n }\n ;\n ;\n };\n ;\n return;\n },\n buildResultIndices: function(o) {\n var p = {\n }, q = o.length;\n for (var r = 0; ((r < q)); r++) {\n p[o[r].uid] = r;\n ;\n };\n ;\n return p;\n },\n getTopAdPosition: function(o, p, q) {\n if (((o.length < 1))) {\n return null;\n }\n ;\n ;\n if (((p.length < 1))) {\n return null;\n }\n ;\n ;\n if (((((o[0].type == \"user\")) || ((o[0].type == \"grammar\"))))) {\n for (var r = 1; ((r < o.length)); ++r) {\n if (((o[r].type != o[0].type))) {\n return r;\n }\n ;\n ;\n };\n ;\n return o.length;\n }\n ;\n ;\n if (n.hasTopResult(o[0], p[0], q)) {\n return 1;\n }\n ;\n ;\n return 0;\n }\n };\n e.exports = n;\n});\n__d(\"TypeaheadSearchSponsored\", [\"JSBNG__Event\",\"Arbiter\",\"JSBNG__CSS\",\"DOM\",\"URI\",\"copyProperties\",\"TypeaheadSearchSponsoredUtils\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Arbiter\"), i = b(\"JSBNG__CSS\"), j = b(\"DOM\"), k = b(\"URI\"), l = b(\"copyProperties\"), m = b(\"TypeaheadSearchSponsoredUtils\"), n = b(\"tx\");\n function o(p) {\n this._typeahead = p;\n };\n;\n o.prototype.enable = function() {\n this._data = this._typeahead.getData();\n this._dataSubscriptions = [this._data.subscribe(\"beginFetchHandler\", function(p, q) {\n var r = q.response.getPayload();\n if (r.s_entries) {\n this._sponsoredEntries = ((this._sponsoredEntries || {\n }));\n var s = r.s_entries.length;\n for (var t = 0; ((t < s)); t++) {\n var u = new o.Ad();\n l(u, r.s_entries[t]);\n var v = u.s_target;\n if (!this._sponsoredEntries[v]) {\n this._sponsoredEntries[v] = {\n };\n }\n ;\n ;\n this._sponsoredEntries[v][u.uid] = u;\n };\n ;\n if (r.s_bootstrap_id) {\n this._sBootstrapID = r.s_bootstrap_id;\n }\n ;\n ;\n if (r.organic_s_value) {\n this._organicECPM = l(this._organicECPM, r.organic_s_value);\n }\n ;\n ;\n }\n ;\n ;\n }.bind(this)),];\n if (o.auctionOptions.bootstrap) {\n this._dataSubscriptions.push(this._data.subscribe(\"JSBNG__onload\", function(p, q) {\n var r = l(this.bootstrapData, {\n no_cache: 1,\n options: [\"sponsored\",]\n });\n this.fetch(this.bootstrapEndpoint, r, {\n type: \"sponsored\"\n });\n }.bind(this._data)));\n }\n ;\n ;\n this._view = this._typeahead.getView();\n this._viewSubscriptions = [this._view.subscribe(\"finalResultsReordering\", function(p, q) {\n o.query = q.value;\n m.setOrganicECPM(this._organicECPM, q.results);\n var r = o.getOriginalOrganics(q.results);\n o.setAuctionOptions({\n maxNumberResultsAndAds: Math.max(q.results.length, ((((this._data && this._data._maxResults)) || o.auctionOptions.maxNumberResultsAndAds)))\n });\n var s = this.runAuction(q.results, this._sponsoredEntries, this._hiddenSponsoredEntities, o.auctionOptions), t = m.prepareAndSortAds(q.results, this._sponsoredEntries, this._hiddenSponsoredEntities), u = t.map(function(y) {\n return y.s_token;\n }), v = [];\n for (var w = 0; ((w < s.length)); w++) {\n var x = s[w];\n if (x.s_token) {\n v.push({\n position: w,\n is_self: x.is_self\n });\n }\n ;\n ;\n };\n ;\n this._view.inform(\"recordAfterReorder\", {\n organic: r,\n tokens: u,\n position_data: v,\n s_bootstrap_id: this._sBootstrapID,\n options: o.auctionOptions,\n variant: o.auctionOptions.rerankingStrategy\n });\n q.results = s;\n this._data.inform(\"recordAuctionState\", {\n organic: r,\n auctionOptions: o.auctionOptions,\n event_data: q\n });\n }.bind(this)),this._view.subscribe(\"highlight\", function(p, q) {\n if (this._view.JSBNG__content) {\n j.scry(this._view.JSBNG__content, \"a.report\").forEach(i.hide);\n }\n ;\n ;\n if (((((!q.element || !q.selected)) || !q.selected.s_token))) {\n return;\n }\n ;\n ;\n var r = j.scry(q.element, \"a.report\");\n if (r.length) {\n i.show(r[0]);\n }\n else j.appendContent(q.element, this._createHideAdLink(q.selected));\n ;\n ;\n }.bind(this)),];\n this._globalSubscriptions = [h.subscribe(\"TypeaheadSearchSponsored/hideAdResult\", function(p, q) {\n this._hiddenSponsoredEntities = ((this._hiddenSponsoredEntities || {\n }));\n this._hiddenSponsoredEntities[q.uid] = true;\n this._hideReasonDialog = q.reason_dialog;\n this._forceRefreshResults();\n }.bind(this)),h.subscribe(\"TypeaheadSearchSponsored/undoHideAdResult\", function(p, q) {\n if (this._hiddenSponsoredEntities) {\n delete this._hiddenSponsoredEntities[q.uid];\n }\n ;\n ;\n if (this._hideReasonDialog) {\n this._hideReasonDialog.hide();\n this._hideReasonDialog = null;\n }\n ;\n ;\n this._forceRefreshResults();\n }.bind(this)),];\n };\n o.prototype.disable = function() {\n this._dataSubscriptions.forEach(this._data.unsubscribe.bind(this._data));\n this._dataSubscriptions = null;\n this._viewSubscriptions.forEach(this._view.unsubscribe.bind(this._view));\n this._viewSubscriptions = null;\n this._globalSubscriptions.forEach(h.unsubscribe.bind(h));\n this._globalSubscriptions = null;\n this._data = null;\n this._view = null;\n this._sponsoredEntries = null;\n };\n o.prototype.runAuction = function(p, q, r, s) {\n if (((p.length === 0))) {\n return p;\n }\n ;\n ;\n p = o.initResults(p);\n if (!q) {\n return p;\n }\n ;\n ;\n var t = m.prepareAndSortAds(p, q, r);\n if (this._typeahead) {\n var u = this._typeahead.getData();\n u.inform(\"recordAuctionState\", {\n sorted_ads: t\n });\n }\n ;\n ;\n var v = {\n }, w = p.map(function(ba) {\n if (ba.s_categories) {\n v[ba.uid] = ba.s_categories;\n }\n ;\n ;\n return String(ba.uid);\n }), x = m.selectAds(w, v, t, s);\n if (((x.length === 0))) {\n return p;\n }\n ;\n ;\n if (m.hasTopResult(p[0], x[0], s)) {\n o.setTopResult(p);\n }\n ;\n ;\n var y = 0;\n for (var z = 0; ((z < x.length)); ++z) {\n if (!m.isSelfPromoted(x[z])) {\n y++;\n }\n ;\n ;\n };\n ;\n p.length = Math.min(p.length, ((s.maxNumberResultsAndAds - y)));\n var aa = o.rerankAds(p, x, s);\n return aa;\n };\n o.prototype._forceRefreshResults = function() {\n if (((this._data && this._data.value))) {\n this._data.respond(this._data.value, this._data.buildUids(this._data.value));\n }\n ;\n ;\n };\n o.prototype._createHideAdLink = function(p) {\n var q = new k(\"/ajax/emu/end.php\").addQueryData({\n eid: p.s_token,\n f: 0,\n ui: ((\"typeahead_\" + p.s_token.replace(\".\", \"_\"))),\n en: \"fad_hide\",\n ed: \"true\",\n a: 1\n }).toString(), r = {\n className: \"report\",\n rel: \"dialog-post\",\n href: \"#\",\n ajaxify: q,\n title: \"Hide the ad\"\n }, s = j.create(\"a\", r);\n g.listen(s, \"mouseover\", function(JSBNG__event) {\n this._view.index = -1;\n this._view.highlight(-1, false);\n JSBNG__event.kill();\n }.bind(this));\n return s;\n };\n o.auctionOptions = {\n };\n o.query = null;\n o.getOriginalOrganics = function(p) {\n return p.map(function(q) {\n return {\n uid: q.uid,\n text: q.text,\n type: o.getRealType(q),\n source: ((q.bootstrapped ? 1 : 0)),\n index: q.index,\n s_value: ((q.s_value || 0)),\n s_categories: ((q.s_categories || [])),\n score: q.score\n };\n });\n };\n o.setTopResult = function(p) {\n p[0].renderTypeOverride = true;\n p[0].orig_render_type = p[0].render_type;\n p[0].render_type = \"tophit\";\n };\n o.finalizeAd = function(p, q, r) {\n var s = \"Sponsored\";\n p.rankType = ((((p.rankType || p.render_type)) || p.type));\n if (m.isSelfPromoted(p)) {\n q.s_token = p.s_token;\n q.message = p.s_message;\n if (((r.rerankingStrategy === 0))) {\n q.subtextOverride = ((q.subtext ? ((((q.subtext + \" \\u00b7 \")) + s)) : s));\n }\n ;\n ;\n if (p.path) {\n q.pathOverride = true;\n q.orig_path = q.path;\n q.path = p.path;\n }\n ;\n ;\n q.is_self = true;\n }\n else {\n p.message = p.s_message;\n p.subtextOverride = null;\n if (((r.rerankingStrategy === 0))) {\n p.subtextOverride = ((p.subtext ? ((((p.subtext + \" \\u00b7 \")) + s)) : s));\n }\n ;\n ;\n if (r.debug) {\n if (((!p.subtextOverride && p.subtext))) {\n p.subtextOverride = p.subtext;\n }\n ;\n ;\n if (p.subtextOverride) {\n p.subtextOverride += ((((\" \\u00b7 (Debug: \" + q.text)) + \")\"));\n }\n else p.subtextOverride = ((((\"(Debug: \" + q.text)) + \")\"));\n ;\n ;\n }\n ;\n ;\n p.type = q.type;\n p.render_type = q.render_type;\n p.is_self = false;\n }\n ;\n ;\n };\n o.promoteSelfPromotedResultToTop = function(p, q, r, s) {\n var t = p[q];\n if (((q < r))) {\n var u = \"Sponsored\";\n t.subtextOverride = ((t.subtext ? ((((t.subtext + \" \\u00b7 \")) + u)) : u));\n return;\n }\n ;\n ;\n if (((q > r))) {\n p.splice(r, 0, p.splice(q, 1)[0]);\n }\n ;\n ;\n t = p[r];\n t.renderTypeOverride = true;\n t.orig_render_type = t.render_type;\n t.render_type = \"ownsection\";\n };\n o.insertAdToTop = function(p, q, r, s) {\n p.splice(r, 0, q);\n q.render_type = \"ownsection\";\n };\n o.rerankMethod5 = function(p, q, r) {\n if (((r.rerankingStrategy != 5))) {\n return;\n }\n ;\n ;\n var s = m.getTopAdPosition(p, q, r), t = m.buildResultIndices(p);\n for (var u = ((q.length - 1)); ((u >= 0)); u--) {\n var v = q[u], w = t[v.selected_target_id], x = p[w];\n o.finalizeAd(v, x, r);\n if (m.isSelfPromoted(v)) {\n o.promoteSelfPromotedResultToTop(p, w, s, r);\n }\n else o.insertAdToTop(p, v, s, r);\n ;\n ;\n t = m.buildResultIndices(p);\n };\n ;\n };\n o.rerankAds = function(p, q, r) {\n switch (r.rerankingStrategy) {\n case 5:\n o.rerankMethod5(p, q, r);\n break;\n default:\n break;\n };\n ;\n p.length = Math.min(p.length, r.maxNumberResultsAndAds);\n return p;\n };\n o.initResults = function(p) {\n var q = p.length;\n for (var r = 0; ((r < q)); r++) {\n var s = p[r];\n s.is_self = null;\n s.s_token = null;\n s.message = null;\n s.subtextOverride = null;\n if (s.pathOverride) {\n s.path = s.orig_path;\n s.pathOverride = false;\n }\n ;\n ;\n if (s.renderTypeOverride) {\n s.render_type = s.orig_render_type;\n s.renderTypeOverride = false;\n }\n ;\n ;\n s.rankType = ((((s.rankType || s.render_type)) || s.type));\n };\n ;\n return p;\n };\n o.setAuctionOptions = function(p) {\n l(o.auctionOptions, p);\n };\n o.getRealType = function(p) {\n if (p.renderTypeOverride) {\n return ((p.orig_render_type || p.type));\n }\n ;\n ;\n return ((p.render_type || p.type));\n };\n o.hideAdResult = function(p, q) {\n h.inform(\"TypeaheadSearchSponsored/hideAdResult\", {\n uid: p,\n reason_dialog: q\n });\n };\n o.undoHideAdResult = function(p) {\n h.inform(\"TypeaheadSearchSponsored/undoHideAdResult\", {\n uid: p\n });\n };\n o.Ad = function() {\n \n };\n l(o.prototype, {\n _dataSubscriptions: null,\n _viewSubscriptions: null,\n _globalSubscriptions: null,\n _data: null,\n _view: null,\n _sponsoredEntries: null,\n _hiddenSponsoredEntities: null,\n _hideReasonDialog: null,\n _sBootstrapID: null,\n _organicECPM: null\n });\n e.exports = o;\n});\n__d(\"SearchDataSource\", [\"JSBNG__Event\",\"Arbiter\",\"AsyncResponse\",\"DataSource\",\"HashtagSearchResultUtils\",\"copyProperties\",\"createArrayFrom\",\"BingScalingCommon\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Arbiter\"), i = b(\"AsyncResponse\"), j = b(\"DataSource\"), k = b(\"HashtagSearchResultUtils\"), l = b(\"copyProperties\"), m = b(\"createArrayFrom\"), n = b(\"BingScalingCommon\");\n {\n var fin190keys = ((window.top.JSBNG_Replay.forInKeys)((j))), fin190i = (0);\n var o;\n for (; (fin190i < fin190keys.length); (fin190i++)) {\n ((o) = (fin190keys[fin190i]));\n {\n if (((j.hasOwnProperty(o) && ((o !== \"_metaprototype\"))))) {\n q[o] = j[o];\n }\n ;\n ;\n };\n };\n };\n;\n var p = ((((j === null)) ? null : j.prototype));\n q.prototype = Object.create(p);\n q.prototype.constructor = q;\n q.__superConstructor__ = j;\n function q(r) {\n this._token = ((r.token || \"\"));\n this._lazyonload = ((((r.lazyonload === false)) ? false : true));\n this._extraTypes = r.extraTypes;\n this._buckets = r.buckets;\n this._noMultiFetch = ((r.noMultiFetch || false));\n this._maxWebSuggToCountFetchMore = ((r.maxWebSuggToCountFetchMore || 0));\n var s = ((r.maxResults || 8));\n j.call(this, r);\n this._numResults = {\n min: 3,\n max: s\n };\n this.recordingRoute = ((r.recordingRoute || \"non_banzai\"));\n this._enabledHashtag = ((r.enabledHashtag || false));\n this.logBackendQueriesWindow = ((r.logBackendQueriesWindow || 25));\n this._minWebSugg = ((r.minWebSugg || 2));\n this._queryToWebSuggState = {\n };\n this._genTime = r.genTime;\n };\n;\n q.prototype.init = function() {\n p.init.call(this);\n this._leanPayload = null;\n this._bootstrapRequestsPending = 0;\n this._criticalOnly = true;\n this._updateMaxResults();\n g.listen(window, \"resize\", this._updateMaxResults.bind(this));\n this.complexChars = new RegExp(\"[\\uff66-\\uffdd\\u4e00-\\u9fcc\\u3400-\\u4dbf]\");\n };\n q.prototype.dirty = function() {\n p.dirty.call(this);\n this._fetchOnUseRequests = [];\n };\n q.prototype.asyncErrorHandler = function(r) {\n if (((((window.Dialog && ((window.Dialog.getCurrent() == null)))) && ((r.getError() == 1400003))))) {\n i.verboseErrorHandler(r);\n }\n ;\n ;\n };\n q.prototype.fetch = function(r, s, t) {\n t = ((t || {\n }));\n t.fetch_start = JSBNG__Date.now();\n p.fetch.call(this, r, s, t);\n };\n q.prototype.fetchHandler = function(r, s) {\n var t = r.getPayload(), u = l({\n fetch_end: JSBNG__Date.now()\n }, s), v = ((u.value ? h.BEHAVIOR_EVENT : h.BEHAVIOR_PERSISTENT));\n this.inform(\"beginFetchHandler\", {\n response: r\n });\n if (((s.type == \"lean\"))) {\n this._leanPayload = t;\n this._processLean();\n }\n else {\n if (t.coeff2_ts) {\n u.coeff2_ts = t.coeff2_ts;\n }\n ;\n ;\n var w = {\n limit: ((((typeof t.webSuggLimit !== \"undefined\")) ? t.webSuggLimit : 6)),\n showOnTop: ((((typeof t.webSuggOnTop !== \"undefined\")) ? t.webSuggOnTop : false))\n };\n this._queryToWebSuggState[s.value] = w;\n p.fetchHandler.call(this, r, s);\n if (((s.bootstrap && !r.getRequest().getData().no_cache))) {\n u.browserCacheHit = ((t.timestamp < this._genTime));\n }\n ;\n ;\n if (((((s.bootstrap && !t.no_data)) && ((this._bootstrapRequestsPending > 0))))) {\n s.bootstrap = false;\n --this._bootstrapRequestsPending;\n ((!this._bootstrapRequestsPending && this._bootstrapPostProcess()));\n }\n ;\n ;\n if (((((t.no_data || t.stale)) || ((t.token !== this._token))))) {\n var x = l({\n }, r.getRequest().getData());\n if (x.lazy) {\n delete x.lazy;\n x.token = this._token;\n this._fetchOnUse(x, s);\n }\n ;\n ;\n }\n ;\n ;\n }\n ;\n ;\n this.inform(\"endpointStats\", u, v);\n };\n q.prototype.respond = function(r, s, t) {\n this.inform(\"respondValidUids\", s);\n this.inform(\"reorderResults\", s);\n var u = this.buildData(s, r);\n u.forEach(function(v, w) {\n v.origIndex = w;\n });\n this.inform(\"respond\", {\n value: r,\n results: u,\n isAsync: !!t\n });\n return u;\n };\n q.prototype.buildData = function(r, s) {\n if (((!r || ((r.length === 0))))) {\n return [];\n }\n ;\n ;\n var t = this.getWebSuggState(s), u = t.showOnTop, v = n.integrateWebsuggestions(r.map(this.getEntry.bind(this)), Boolean(u), this._maxResults, t.limit);\n v.length = Math.min(v.length, this._maxResults);\n return v;\n };\n q.prototype.getWebSuggState = function(r) {\n while (r) {\n var s = this._queryToWebSuggState[r];\n if (((typeof s !== \"undefined\"))) {\n return s;\n }\n ;\n ;\n r = r.slice(0, ((r.length - 1)));\n };\n ;\n return {\n limit: 0,\n showOnTop: false\n };\n };\n q.prototype._isQueryTooShort = function(r) {\n return ((((r.length < this._minQueryLength)) && !((this.complexChars && this.complexChars.test(r)))));\n };\n q.prototype.shouldFetchMoreResults = function(r) {\n var s = 0, t = 0;\n r.forEach(function(u) {\n if (((((u.type !== \"websuggestion\")) || ((t++ < this._maxWebSuggToCountFetchMore))))) {\n s++;\n }\n ;\n ;\n }.bind(this));\n return ((s < this._maxResults));\n };\n q.prototype._bootstrapPostProcess = function() {\n var r = {\n time: JSBNG__Date.now()\n };\n this.inform(\"bootstrapped\", r, h.BEHAVIOR_PERSISTENT);\n this._processLean();\n };\n q.prototype._processLean = function() {\n if (this._leanPayload) {\n var r, s = this._leanPayload.entries;\n {\n var fin191keys = ((window.top.JSBNG_Replay.forInKeys)((s))), fin191i = (0);\n var t;\n for (; (fin191i < fin191keys.length); (fin191i++)) {\n ((t) = (fin191keys[fin191i]));\n {\n r = this.getEntry(t);\n ((r && (r.index = s[t])));\n };\n };\n };\n ;\n this.setExclusions(this._leanPayload.blocked);\n this._leanPayload = null;\n }\n ;\n ;\n };\n q.prototype._updateMaxResults = function() {\n var r = ((window.JSBNG__innerHeight || JSBNG__document.documentElement.clientHeight));\n this.setMaxResults(Math.max(this._numResults.min, Math.min(this._numResults.max, Math.ceil(((2 + ((((r - 370)) / 56))))))));\n };\n q.prototype._bootstrapFetch = function(r, s) {\n var t = l(s, this.bootstrapData);\n if (((this._criticalOnly && this._lazyonload))) {\n t.lazy = 1;\n }\n ;\n ;\n this.fetch(this.bootstrapEndpoint, t, {\n bootstrap: true,\n type: r\n });\n ++this._bootstrapRequestsPending;\n };\n q.prototype._fetchOnUse = function(r, s) {\n {\n var fin192keys = ((window.top.JSBNG_Replay.forInKeys)((this.bootstrapData))), fin192i = (0);\n var t;\n for (; (fin192i < fin192keys.length); (fin192i++)) {\n ((t) = (fin192keys[fin192i]));\n {\n ((!r.hasOwnProperty(t) && (r[t] = this.bootstrapData[t])));\n ;\n };\n };\n };\n ;\n if (this._criticalOnly) {\n this._fetchOnUseRequests.push({\n args: r,\n ctx: s\n });\n }\n else this.fetch(this.bootstrapEndpoint, r, s);\n ;\n ;\n };\n q.prototype._fetchLean = function() {\n var r = {\n no_cache: 1\n };\n r.options = m(r.options);\n r.options.push(\"lean\");\n this._fetchOnUse(r, {\n type: \"lean\"\n });\n };\n q.prototype.bootstrap = function(r) {\n if (!r) {\n this._criticalOnly = false;\n this._flushFetchOnUseRequests();\n }\n ;\n ;\n if (this._bootstrapped) {\n return;\n }\n ;\n ;\n var s = {\n filter: [\"JSBNG__event\",],\n no_cache: 1\n };\n this._fetchOnUse(s, {\n type: \"JSBNG__event\"\n });\n var t = [\"app\",\"page\",\"group\",\"friendlist\",];\n t = t.concat(((this._extraTypes || [])));\n if (this._noMultiFetch) {\n t.push(\"user\");\n this._bootstrapFetch(\"user\", {\n filter: t\n });\n }\n else {\n this._bootstrapFetch(\"other\", {\n filter: t\n });\n if (this._buckets) {\n for (var u = 0; ((u < this._buckets.length)); ++u) {\n var v = {\n filter: [\"user\",],\n buckets: this._buckets[u]\n };\n this._bootstrapFetch(\"user\", v);\n };\n ;\n }\n else this._bootstrapFetch(\"user\", {\n filter: [\"user\",]\n });\n ;\n ;\n }\n ;\n ;\n this._fetchLean();\n this._bootstrapped = true;\n };\n q.prototype._flushFetchOnUseRequests = function() {\n var r = this._fetchOnUseRequests.length;\n for (var s = 0; ((s < r)); ++s) {\n var t = this._fetchOnUseRequests[s];\n this.fetch(this.bootstrapEndpoint, t.args, t.ctx);\n };\n ;\n if (((r > 0))) {\n this.inform(\"extra_bootstrap\", {\n time: JSBNG__Date.now()\n }, h.BEHAVIOR_PERSISTENT);\n }\n ;\n ;\n this._fetchOnUseRequests = [];\n };\n q.prototype.onLoad = function(r, s) {\n this.inform(\"JSBNG__onload\", {\n time: JSBNG__Date.now()\n }, h.BEHAVIOR_PERSISTENT);\n if (r) {\n this.bootstrap.bind(this, s).defer();\n }\n ;\n ;\n };\n q.prototype.mergeUids = function(r, s, t, u) {\n var v = this.getDynamicHashtagResult(u);\n if (((((u && v)) && ((s.indexOf(v) <= 0))))) {\n s.unshift(v);\n }\n ;\n ;\n var w = ((t[0] ? this.getEntry(t[0]) : null)), x = ((s[0] ? this.getEntry(s[0]) : null)), y = ((((w && w.replace_results)) ? w : null));\n y = ((((((!y && x)) && x.replace_results)) ? x : y));\n var z = p.mergeUids.call(this, r, s, t, u);\n if (y) {\n this.inform(\"backend_topreplace\", {\n });\n return this.deduplicateByKey([y.uid,].concat(z));\n }\n ;\n ;\n return z;\n };\n q.prototype.getTextToIndexFromFields = function(r, s) {\n var t = [], u = ((r.tokenVersion === \"v2\"));\n for (var v = 0; ((v < s.length)); ++v) {\n if (((u && ((((s[v] === \"text\")) || ((s[v] === \"alias\"))))))) {\n continue;\n }\n ;\n ;\n var w = r[s[v]];\n if (w) {\n t.push(((w.join ? w.join(\" \") : w)));\n }\n ;\n ;\n };\n ;\n return t.join(\" \");\n };\n q.prototype.getDynamicHashtagResult = function(r) {\n if (((!r || !this._enabledHashtag))) {\n return;\n }\n ;\n ;\n var s = k.getHashtagFromQuery(r);\n if (!s) {\n return;\n }\n ;\n ;\n var t = ((\"hashtag:\" + s)), u = this.getEntry(t);\n if (!u) {\n this.processEntries([k.makeTypeaheadResult(s),], r);\n }\n ;\n ;\n return t;\n };\n e.exports = q;\n});\n__d(\"SearchTypeaheadRecorder\", [\"JSBNG__Event\",\"AsyncRequest\",\"Banzai\",\"Keys\",\"TokenizeUtil\",\"Vector\",\"ge\",\"clickRefAction\",\"copyProperties\",\"userAction\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"AsyncRequest\"), i = b(\"Banzai\"), j = b(\"Keys\"), k = b(\"TokenizeUtil\"), l = b(\"Vector\"), m = b(\"ge\"), n = b(\"clickRefAction\"), o = b(\"copyProperties\"), p = b(\"userAction\");\n function q(s) {\n this.init(s);\n this.initEvents();\n };\n;\n q.prototype.init = function(s) {\n this.core = s.getCore();\n this.data = s.getData();\n this.view = s.getView();\n this.element = this.core.getElement();\n this.initTime = JSBNG__Date.now();\n this._onloadTime = 0;\n this._extraRecorder = [];\n var t = m(\"search_first_focus\");\n this.initStartTime = ((t && t.value));\n this.bootstrapStats = {\n bootstrapped: 0\n };\n this._reset();\n };\n q.prototype._reset = function() {\n this.stats = {\n };\n this.avgStats = {\n };\n this.appendStats = {\n };\n this._backspacing = false;\n this.backendQueries = [];\n this._topreplace = false;\n this._inflightRequests = {\n };\n this._reorderInfo = null;\n var s = Math.JSBNG__random().toString();\n this.data.setQueryData({\n sid: s\n });\n this.view.setSid(s);\n this.recordStat(\"sid\", s);\n this.recordStat(\"keypressed\", 0);\n };\n q.prototype.initEvents = function() {\n this.core.subscribe(\"JSBNG__focus\", function(JSBNG__event) {\n if (!this.stats.session_start_time) {\n this.recordStat(\"session_start_time\", JSBNG__Date.now());\n }\n ;\n ;\n }.bind(this));\n this.core.subscribe(\"JSBNG__blur\", function(JSBNG__event) {\n var s = JSBNG__Date.now();\n {\n var fin193keys = ((window.top.JSBNG_Replay.forInKeys)((this._inflightRequests))), fin193i = (0);\n var t;\n for (; (fin193i < fin193keys.length); (fin193i++)) {\n ((t) = (fin193keys[fin193i]));\n {\n var u = this._inflightRequests[t], v = ((s - u));\n this.recordAvgStat(\"search_endpoint_ms_from_js\", v);\n };\n };\n };\n ;\n this.recordStat(\"session_end_time\", s);\n this.submit();\n }.bind(this));\n this.view.subscribe(\"select\", function(s, t) {\n this.recordSelectInfo(t);\n }.bind(this));\n this.view.subscribe(\"render\", function(s, t) {\n this.recordRender(t);\n }.bind(this));\n this.view.subscribe(\"recordAfterReorder\", function(s, t) {\n this._reorderInfo = o(this._reorderInfo, t);\n }.bind(this));\n this.data.subscribe(\"activity\", function(s, t) {\n this.recordStat(\"pending_request\", t.activity);\n }.bind(this));\n this.data.subscribe(\"respondValidUids\", function(s, t) {\n this.validUids = t.slice(0);\n }.bind(this));\n this.data.subscribe(\"beforeQuery\", function(s, t) {\n if (!t.value) {\n this.query = \"\";\n this.results = [];\n return;\n }\n ;\n ;\n if (!this.stats.first_query_time) {\n this.recordStat(\"first_query_time\", JSBNG__Date.now());\n }\n ;\n ;\n this.query = t.value;\n this.recordCountStat(\"num_queries\");\n }.bind(this));\n this.data.subscribe(\"queryEndpoint\", function(s, t) {\n this.recordCountStat(\"num_search_ajax_requests\");\n this.recordAvgStat(\"endpoint_query_length\", t.value.length);\n this._inflightRequests[t.value] = JSBNG__Date.now();\n }.bind(this));\n this.data.subscribe(\"JSBNG__onload\", function(s, t) {\n this._onloadTime = t.time;\n }.bind(this));\n this.data.subscribe(\"bootstrapped\", function(s, t) {\n this.bootstrapStats.endTime = t.time;\n this.bootstrapStats.bootstrapped = 1;\n }.bind(this));\n this.core.subscribe(\"recordFunction\", function(s, t) {\n this._extraRecorder.push(t);\n }.bind(this));\n this.data.subscribe(\"endpointStats\", function(s, t) {\n var u = ((t.fetch_end - t.fetch_start));\n if (t.value) {\n this.recordAvgStat(\"search_endpoint_ms_from_js\", u);\n }\n else this.bootstrapStats[t.type] = u;\n ;\n ;\n if (t.coeff2_ts) {\n this.bootstrapStats.coeff2_ts = t.coeff2_ts;\n }\n ;\n ;\n if (((typeof t.browserCacheHit != \"undefined\"))) {\n this.recordCountStat(((t.browserCacheHit ? \"bootstrap_cachehits\" : \"bootstrap_cachemisses\")));\n }\n ;\n ;\n if (this._inflightRequests[t.value]) {\n delete this._inflightRequests[t.value];\n }\n ;\n ;\n }.bind(this));\n this.data.subscribe(\"query\", function(s, t) {\n this.recordAvgStat(\"num_results_from_cache\", t.results.length);\n }.bind(this));\n this.data.subscribe(\"backend_topreplace\", function(s, t) {\n if (((false === this._topreplace))) {\n this.recordStat(\"backend_topreplace\", 1);\n this._topreplace = true;\n }\n ;\n ;\n }.bind(this));\n g.listen(this.element, \"keydown\", function(JSBNG__event) {\n this.recordStat(\"keypressed\", 1);\n if (((g.getKeyCode(JSBNG__event) == j.BACKSPACE))) {\n if (((!this._backspacing && this.query))) {\n this._backspacing = true;\n this.recordAppendStat(\"before_backspace_queries\", this.query);\n }\n ;\n ;\n }\n else this._backspacing = false;\n ;\n ;\n }.bind(this));\n this.data.subscribe(\"beforeFetch\", function(s, t) {\n var u = t.request.data.value;\n if (!u) {\n return;\n }\n ;\n ;\n this.backendQueries.push(u);\n }.bind(this));\n };\n q.prototype.recordStat = function(s, t) {\n this.stats[s] = t;\n };\n q.prototype.recordCountStat = function(s) {\n var t = this.stats[s];\n this.stats[s] = ((t ? ((t + 1)) : 1));\n };\n q.prototype.recordAvgStat = function(s, t) {\n if (this.avgStats[s]) {\n this.avgStats[s][0] += t;\n ++this.avgStats[s][1];\n }\n else this.avgStats[s] = [t,1,];\n ;\n ;\n };\n q.prototype.recordAppendStat = function(s, t) {\n if (!this.appendStats.hasOwnProperty(s)) {\n this.appendStats[s] = [];\n }\n ;\n ;\n this.appendStats[s].push(t);\n };\n q.prototype.recordRender = function(s) {\n this.results = s.filter(function(u) {\n return ((((((u.uid != \"search\")) && ((u.type != \"disabled_result\")))) && ((u.type != \"header\"))));\n }).map(function(u) {\n return o(null, u);\n });\n var t = l.getViewportDimensions();\n this.recordStat(\"window_size_width\", t.x);\n this.recordStat(\"window_size_height\", t.y);\n if (((((this.results.length > 0)) && !this.stats.first_result_time))) {\n this.recordStat(\"first_result_time\", JSBNG__Date.now());\n }\n ;\n ;\n };\n q.prototype.recordSelectInfo = function(s) {\n var t = s.selected, u = s.index;\n if (((t.groupIndex !== undefined))) {\n u = ((((s.index - t.groupIndex)) - 1));\n }\n ;\n ;\n var v = {\n href: t.path\n }, w = ((t.dataGT ? {\n gt: JSON.parse(t.dataGT)\n } : {\n }));\n n(\"click\", v, null, null, w);\n p(\"search\").uai(\"click\");\n if (((t.uid == \"search\"))) {\n this.recordStat(\"selected_search\", 1);\n }\n else if (((t.uid == \"invite\"))) {\n this.recordStat(\"selected_invite\", 1);\n }\n else {\n var x = ((((t.rankType || t.render_type)) || t.type)), y = ((((x == \"friend\")) ? \"user\" : x));\n this.recordStat(((\"selected_\" + y)), 1);\n this.recordStat(\"selected_position\", u);\n this.recordStat(\"selected_type\", x);\n this.recordStat(\"selected_name_length\", t.text.length);\n this.recordStat(\"selected_id\", t.uid);\n this.recordStat(\"selected_degree\", ((t.bootstrapped ? 1 : 2)));\n var z = k.parse(this.data.getTextToIndex(t)).tokens, aa = r(z, this.query);\n if (aa) {\n this.recordStat(\"matched_terms\", aa);\n }\n ;\n ;\n }\n \n ;\n ;\n var ba = {\n };\n this._extraRecorder.forEach(function(ca) {\n ca(s, this.results, ba);\n }.bind(this));\n this.recordStat(\"extra_select_info\", JSON.stringify(ba));\n if (((t.type === \"websuggestion\"))) {\n this.recordStat(\"selected_memcached_websuggestion\", t.fromMemcache);\n this.recordStat(\"selected_websuggestion_source\", t.websuggestion_source);\n }\n ;\n ;\n this.recordStat(\"selected_with_mouse\", ((s.clicked ? 1 : 0)));\n };\n q.prototype._dataToSubmit = function() {\n this.recordStat(\"candidate_results\", this.buildResults());\n this.recordStat(\"query\", this.query);\n this.recordStat(\"init_time\", this.initTime);\n if (this.initStartTime) {\n this.recordStat(\"init_start_time\", this.initStartTime);\n this.recordStat(\"onload_time\", this._onloadTime);\n this.initStartTime = 0;\n }\n ;\n ;\n this.recordStat(\"bootstrapped\", this.bootstrapStats.bootstrapped);\n if (this.bootstrapStats.endTime) {\n this.recordStat(\"bootstrapped_time\", this.bootstrapStats.endTime);\n this.recordStat(\"user_bootstrap_ms\", this.bootstrapStats.user);\n this.recordStat(\"other_bootstrap_ms\", this.bootstrapStats.other);\n this.bootstrapStats.endTime = 0;\n }\n ;\n ;\n this.recordStat(\"coeff2_ts\", this.bootstrapStats.coeff2_ts);\n this.recordStat(\"max_results\", this.data._maxResults);\n if (((this.backendQueries.length > 0))) {\n if (((this.backendQueries.length > this.data.logBackendQueriesWindow))) {\n this.backendQueries = this.backendQueries.slice(((this.backendQueries.length - this.data.logBackendQueriesWindow)));\n }\n ;\n ;\n this.recordStat(\"backend_queries\", this.backendQueries);\n }\n ;\n ;\n if (this._reorderInfo) {\n var s = this._reorderInfo;\n s.organic.forEach(function(x) {\n delete x.text;\n });\n this.recordStat(\"s_count\", s.position_data.length);\n this.recordStat(\"s_bootstrap_id\", s.s_bootstrap_id);\n this.recordStat(\"s_organic_results\", JSON.stringify(s.organic));\n this.recordStat(\"s_candidate_tokens\", JSON.stringify(s.tokens));\n this.recordStat(\"s_positions\", JSON.stringify(s.position_data));\n this.recordStat(\"s_options\", JSON.stringify(s.options));\n this.recordStat(\"s_variant\", JSON.stringify(s.variant));\n }\n ;\n ;\n var t = this.stats;\n {\n var fin194keys = ((window.top.JSBNG_Replay.forInKeys)((this.avgStats))), fin194i = (0);\n var u;\n for (; (fin194i < fin194keys.length); (fin194i++)) {\n ((u) = (fin194keys[fin194i]));\n {\n var v = this.avgStats[u];\n t[u] = ((v[0] / v[1]));\n };\n };\n };\n ;\n {\n var fin195keys = ((window.top.JSBNG_Replay.forInKeys)((this.appendStats))), fin195i = (0);\n var w;\n for (; (fin195i < fin195keys.length); (fin195i++)) {\n ((w) = (fin195keys[fin195i]));\n {\n t[w] = JSON.stringify(this.appendStats[w]);\n ;\n };\n };\n };\n ;\n return t;\n };\n q.prototype.buildResults = function() {\n var s = ((this.results || [])).map(function(t, u) {\n var v = k.parse(this.data.getTextToIndex(t)).tokens, w = ((((t.rankType || t.render_type)) || t.type)), x = ((t.bootstrapped ? 1 : 0)), y = ((t.s_token || \"\")), z = ((r(v, this.query) || this.query)), aa = t.index_rank, ba = t.match_type, ca = t.l_type, da = t.vertical_type, ea = t.prefix_match, fa = t.prefix_length;\n if (((typeof t.groupIndex == \"number\"))) {\n return [t.groupIndex,t.indexInGroup,t.uid,w,x,y,z,aa,ba,ea,fa,t.origIndex,ca,da,];\n }\n ;\n ;\n return [0,u,t.uid,w,x,y,z,aa,ba,ea,fa,t.origIndex,ca,da,];\n }.bind(this));\n return JSON.stringify(s);\n };\n q.prototype.submit = function() {\n var s = this._dataToSubmit();\n switch (this.data.recordingRoute) {\n case \"double_recording\":\n if (((Math.JSBNG__random() > 105176))) {\n s.recorded_first = \"legacy\";\n JSBNG__setTimeout(this.submitThroughAsyncRequest.bind(this, s), 0);\n i.post(this._banzaiRoute, s, {\n delay: 0,\n retry: true\n });\n }\n else {\n s.recorded_first = \"banzai\";\n i.post(this._banzaiRoute, s, {\n delay: 0,\n retry: true\n });\n JSBNG__setTimeout(this.submitThroughAsyncRequest.bind(this, s), 0);\n }\n ;\n ;\n break;\n case \"random_recording\":\n if (((Math.JSBNG__random() > 105500))) {\n this.submitThroughAsyncRequest(s);\n }\n else i.post(this._banzaiRoute, s, {\n delay: 0,\n retry: true\n });\n ;\n ;\n break;\n case \"banzai_basic\":\n i.post(this._banzaiRoute, s);\n break;\n case \"banzai_vital\":\n i.post(this._banzaiRoute, s, {\n delay: 0,\n retry: true\n });\n break;\n default:\n this.submitThroughAsyncRequest(s);\n };\n ;\n this._reset();\n };\n q.prototype.submitThroughAsyncRequest = function(s) {\n if (((Object.keys(s).length > 0))) {\n new h().setURI(this._endPoint).setMethod(\"POST\").setData({\n stats: s\n }).setOption(\"handleErrorAfterUnload\", true).setErrorHandler(function(t) {\n s.retry = true;\n new h().setURI(this._endPoint).setMethod(\"POST\").setData({\n stats: s\n }).setOption(\"asynchronous\", false).send();\n }.bind(this)).send();\n }\n ;\n ;\n };\n var r = function(s, t) {\n var u = k.parse(t);\n if (((u.flatValue[((u.flatValue.length - 1))] === \" \"))) {\n return u.flatValue;\n }\n ;\n ;\n var v = u.tokens[((u.tokens.length - 1))], w = {\n };\n s.forEach(function(ba) {\n w[ba] = ((((w[ba] || 0)) + 1));\n });\n var x = {\n }, y = u.tokens.slice(0, ((u.tokens.length - 1)));\n y.forEach(function(ba) {\n x[ba] = ((((x[ba] || 0)) + 1));\n });\n for (var z = 0; ((z < s.length)); ++z) {\n var aa = s[z];\n if (((((aa.indexOf(v) === 0)) && ((((w[aa] - ((x[aa] || 0)))) > 0))))) {\n y.push(aa);\n return y.join(\" \");\n }\n ;\n ;\n };\n ;\n return undefined;\n };\n o(q.prototype, {\n _endPoint: \"/ajax/typeahead/record_metrics.php\",\n _banzaiRoute: \"search\"\n });\n e.exports = q;\n});\n__d(\"LayerSlowlyFadeOnShow\", [\"Class\",\"LayerFadeOnShow\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"LayerFadeOnShow\"), i = b(\"emptyFunction\");\n function j(k) {\n this.parent.construct(this, k);\n };\n;\n g.extend(j, h);\n j.prototype._getDuration = i.thatReturns(500);\n e.exports = j;\n});"); |
| // 9404 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o126,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yI/r/KWNdF_J3cUf.js",o128); |
| // undefined |
| o126 = null; |
| // undefined |
| o128 = null; |
| // 9409 |
| JSBNG_Replay.sb400e2fc5b4578cec05af7646f5430d8d67f9e1b_61[0](false); |
| // 9419 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"mBpeN\",]);\n}\n;\n__d(\"Button.react\", [\"AbstractButton.react\",\"ReactPropTypes\",\"React\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"AbstractButton.react\"), h = b(\"ReactPropTypes\"), i = b(\"React\"), j = b(\"cx\"), k = i.createClass({\n displayName: \"Button\",\n propTypes: {\n use: h.oneOf([\"special\",\"confirm\",\"default\",]),\n size: h.oneOf([\"medium\",\"large\",]),\n suppressed: h.bool\n },\n render: function() {\n var l = (this.props.use || \"default\"), m = (this.props.size || \"medium\"), n = (((((((\"-cx-PRIVATE-uiButton__root\") + (((l === \"special\") ? (\" \" + \"-cx-PRIVATE-uiButton__special\") : \"\"))) + (((l === \"confirm\") ? (\" \" + \"-cx-PRIVATE-uiButton__confirm\") : \"\"))) + (((m === \"large\") ? (\" \" + \"-cx-PRIVATE-uiButton__large\") : \"\"))) + ((this.props.suppressed ? (\" \" + \"-cx-PRIVATE-uiButton__suppressed\") : \"\"))) + (((l !== \"default\") ? (\" \" + \"selected\") : \"\"))));\n return this.transferPropsTo(g({\n className: n\n }));\n }\n });\n e.exports = k;\n});\n__d(\"Grid.react\", [\"ReactPropTypes\",\"React\",\"cx\",\"flattenChildren\",\"getObjectValues\",\"joinClasses\",], function(a, b, c, d, e, f) {\n var g = b(\"ReactPropTypes\"), h = b(\"React\"), i = b(\"cx\"), j = b(\"flattenChildren\"), k = b(\"getObjectValues\"), l = b(\"joinClasses\"), m = h.createClass({\n displayName: \"Grid\",\n propTypes: {\n cols: g.number.isRequired,\n fixed: g.bool,\n alignv: g.oneOf([\"top\",\"middle\",\"bottom\",]),\n alignh: g.oneOf([\"left\",\"center\",\"right\",]),\n spacing: g.string\n },\n render: function() {\n var p = k(j(this.props.children)), q = p.length, r = [], s = [], t = 0;\n p.forEach(function(u, v) {\n u.props.alignv = this.props.alignv;\n u.props.alignh = this.props.alignh;\n o(u, ((this.props.fixed ? \"uiGridFixed\" : \"\")));\n if (this.props.spacing) {\n o(u, this.props.spacing);\n };\n s.push(u);\n t += Math.max((u.props.colSpan || 0), 1);\n if ((((t % this.props.cols) === 0) || ((v + 1) === q))) {\n if ((this.props.fixed && (t < this.props.cols))) {\n for (var w = t; (w < this.props.cols); w++) {\n s.push(n(null));;\n };\n t = this.props.cols;\n }\n ;\n if ((t === this.props.cols)) {\n o(s[(s.length - 1)], \"-cx-PRIVATE-uiGrid__rightcol\");\n };\n r.push(h.DOM.tr({\n className: \"-cx-PRIVATE-uiGrid__row\",\n key: v\n }, s));\n s = [];\n t = 0;\n }\n ;\n }.bind(this));\n return (h.DOM.table({\n className: \"uiGrid -cx-PRIVATE-uiGrid__root\",\n cellSpacing: \"0\",\n cellPadding: \"0\"\n }, h.DOM.tbody(null, r)));\n }\n }), n = h.createClass({\n displayName: \"GridItem\",\n propTypes: {\n alignv: g.oneOf([\"top\",\"middle\",\"bottom\",]),\n alignh: g.oneOf([\"left\",\"center\",\"right\",])\n },\n render: function() {\n var p = ((((((((\"-cx-PRIVATE-uiGrid__cell\") + (((this.props.alignv === \"top\") ? (\" \" + \"vTop\") : \"\"))) + (((this.props.alignv === \"middle\") ? (\" \" + \"vMid\") : \"\"))) + (((this.props.alignv === \"bottom\") ? (\" \" + \"vBot\") : \"\"))) + (((this.props.alignh === \"left\") ? (\" \" + \"hLeft\") : \"\"))) + (((this.props.alignh === \"center\") ? (\" \" + \"hCent\") : \"\"))) + (((this.props.alignh === \"right\") ? (\" \" + \"hRght\") : \"\"))));\n return this.transferPropsTo(h.DOM.td({\n className: p\n }, this.props.children));\n }\n }), o = function(p, q) {\n p.props.className = l(p.props.className, q);\n };\n m.GridItem = n;\n e.exports = m;\n});\n__d(\"mixin\", [], function(a, b, c, d, e, f) {\n function g(h, i, j, k, l, m, n, o, p, q, r) {\n var s = function() {\n \n }, t = [h,i,j,k,l,m,n,o,p,q,], u = 0, v;\n while (t[u]) {\n v = t[u];\n for (var w in v) {\n if (v.hasOwnProperty(w)) {\n s.prototype[w] = v[w];\n };\n };\n u += 1;\n };\n return s;\n };\n e.exports = g;\n});\n__d(\"WebMessengerDetailViewSheetControl\", [\"DOM\",\"WebMessengerStateManager\",\"MercurySheetView\",\"WebMessengerTemplates\",\"MercuryThreadInformer\",\"MercuryThreadMuter\",\"MercuryThreads\",\"WebMessengerJoinStatusTabSheet\",\"WebMessengerThreadIsMutedTabSheet\",\"WebMessengerSubscriptionsHandler\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"WebMessengerStateManager\"), i = b(\"MercurySheetView\"), j = b(\"WebMessengerTemplates\"), k = b(\"MercuryThreadInformer\").get(), l = b(\"MercuryThreadMuter\"), m = b(\"MercuryThreads\").get(), n = b(\"WebMessengerJoinStatusTabSheet\"), o = b(\"WebMessengerThreadIsMutedTabSheet\"), p = b(\"WebMessengerSubscriptionsHandler\");\n function q(r) {\n this._template = j[\":fb:web-messenger:tab-sheet-container\"].build();\n this._rootElement = this._template.getNode(\"sheet\");\n this._threadID = h.getCurrentStateData().thread_id;\n this._sheetView = new i(this._threadID, this._rootElement, r);\n this._threadIsMutedTabSheet = new o(this._rootElement, this._sheetView);\n this._userJoinStatusSheet = new n(this._rootElement, this._sheetView);\n this._muteSetting = undefined;\n g.setContent(r, this._template.getRoot());\n this._threadIsMutedClickSub = this._threadIsMutedTabSheet.subscribe(\"clicked\", function() {\n l.showMuteChangeDialog(0, this._threadID);\n }.bind(this));\n p.addSubscriptions(k.subscribe(\"threads-updated\", function(s, t) {\n if ((this._threadID && t[this._threadID])) {\n this.updateTabSheet(false);\n };\n }.bind(this)));\n this.updateTabSheet(true);\n };\n q.prototype.updateView = function() {\n var r = h.getCurrentStateData().thread_id;\n if ((this._threadID != r)) {\n this._threadID = r;\n this.updateTabSheet(true);\n }\n ;\n };\n q.prototype.updateTabSheet = function(r) {\n if (!this._threadID) {\n return\n };\n m.getThreadMeta(this._threadID, function(s) {\n var t = l.getThreadMuteSettingForUser(s);\n if (((t != this._muteSetting) || r)) {\n if (t) {\n this._threadIsMutedTabSheet.open();\n }\n else this._threadIsMutedTabSheet.close();\n ;\n this._muteSetting = t;\n }\n ;\n }.bind(this));\n };\n q.prototype.openUserJoinStatusSheet = function(r) {\n this._userJoinStatusSheet.addToQueue(r);\n };\n q.prototype.destroy = function() {\n (this._threadIsMutedClickSub && this._threadIsMutedClickSub.unsubscribe());\n };\n e.exports = q;\n});\n__d(\"WebMessengerActionsMenuItem\", [\"Event\",\"CSS\",\"WebMessengerStateManager\",\"WebMessengerTemplates\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"CSS\"), i = b(\"WebMessengerStateManager\"), j = b(\"WebMessengerTemplates\");\n function k(l, m, n) {\n var o = j[\":fb:web-messenger:actions-menu-item\"].build();\n o.setNodeContent(\"title\", l);\n this.node = o.getRoot();\n this.showFn = n;\n g.listen(this.node, \"click\", function() {\n var p = i.getCurrentStateData().thread_id;\n (p && m(p));\n });\n };\n k.prototype.getNode = function() {\n return this.node;\n };\n k.prototype.updateShown = function(l) {\n var m = (this.showFn ? this.showFn(l) : true);\n h.conditionShow(this.node, m);\n return m;\n };\n e.exports = k;\n});\n__d(\"WebMessengerTabbedFolderControl\", [\"Event\",\"CSS\",\"WebMessengerTemplates\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"CSS\"), i = b(\"WebMessengerTemplates\");\n function j(k, l, m) {\n this._template = i[\":fb:web-messenger:master-view:tab-bar:folder\"].build();\n this._template.setNodeContent(\"folderLabel\", k);\n this._listener = g.listen(this._template.getNode(\"link\"), \"click\", m);\n l.push(this._template.getRoot());\n };\n j.prototype.getCountBadge = function() {\n return this._template.getNode(\"count\");\n };\n j.prototype.setSelected = function(k) {\n h.conditionClass(this._template.getRoot(), \"selectedFolder\", k);\n };\n j.prototype.getElement = function() {\n this._template.getRoot();\n };\n j.prototype.destroy = function() {\n this._listener.remove();\n };\n e.exports = j;\n});\n__d(\"WebMessengerUnseenMessageNoticeRenderer\", [\"JSXDOM\",\"ContextualLayer\",\"LayerFadeOnHide\",\"cx\",\"tx\",\"Event\",], function(a, b, c, d, e, f) {\n var g = b(\"JSXDOM\"), h = b(\"ContextualLayer\"), i = b(\"LayerFadeOnHide\"), j = b(\"cx\"), k = b(\"tx\"), l = b(\"Event\"), m = {\n renderNoticeTooltip: function(o, p) {\n var q = g.div({\n className: \"-cx-PRIVATE-webMessengerNoticeTooltip__uitooltipx\"\n }, n(o), g.i({\n className: \"-cx-PRIVATE-webMessengerNoticeTooltip__arrow\"\n })), r = new h((p || {\n }), q).enableBehavior(i);\n return r;\n }\n };\n function n(o) {\n var p = g.div({\n className: \"-cx-PRIVATE-webMessengerNoticeTooltip__tooltipcontent\"\n }, \"You have new messages\");\n l.listen(p, \"click\", o);\n return p;\n };\n e.exports = m;\n});\n__d(\"MessagingConst\", [\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = {\n APP_ID: 313785040330,\n XD_MESSAGE: {\n SANDBOX_READY: \"sandbox_ready\",\n SET_CONTENT: \"set_content\",\n HTML_SIZE: \"html_size\",\n REFRESH_SIZE: \"refresh_size\"\n },\n SHINGLE_SCROLL_TRIGGER: 5,\n EVENTS: {\n MESSAGE_SENT: \"messaging/message_sent\"\n },\n initConstants: function(i) {\n g(h, i);\n }\n };\n e.exports = h;\n});\n__d(\"MessagingXD\", [\"Event\",\"DOM\",\"MercuryConstants\",\"MessagingConst\",\"URI\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"DOM\"), i = b(\"MercuryConstants\"), j = b(\"MessagingConst\"), k = b(\"URI\"), l = b(\"copyProperties\");\n function m(n) {\n this._listeners = [g.listen(window, \"message\", this._onPostMessage.bind(this)),];\n this._iframes = {\n };\n this._contentWindows = {\n };\n this._messageHandler = n;\n };\n l(m.prototype, {\n unload: function() {\n this._listeners.forEach(function(n) {\n n.remove();\n });\n },\n createIframe: function(n, o, p) {\n var q = new k(p);\n this._iframes[o] = h.create(\"iframe\", {\n name: o,\n frameBorder: 0,\n src: q.toString()\n });\n h.appendContent(n, this._iframes[o]);\n this._contentWindows[o] = this._iframes[o].contentWindow;\n return this._iframes[o];\n },\n sendMessage: function(n, o) {\n var p = Array.prototype.slice.apply(arguments);\n p[0] = j.APP_ID;\n var q = (this._iframes[n].contentWindow || this._contentWindows[n]);\n q.postMessage(p.join(\",\"), i.Sandbox.ORIGIN);\n },\n _onPostMessage: function(event) {\n if (((event.origin !== i.Sandbox.ORIGIN) || !event.data.split)) {\n return\n };\n var n = event.data.split(\",\"), o = unescape(n[1]);\n this._contentWindows[o] = event.source;\n this._messageHandler(o, n);\n }\n });\n e.exports = m;\n});\n__d(\"HTMLEmailRenderer\", [\"CSS\",\"MessagingConst\",\"MessagingXD\",\"copyProperties\",\"emptyFunction\",\"tx\",\"MercuryConstants\",], function(a, b, c, d, e, f) {\n var g = b(\"CSS\"), h = b(\"MessagingConst\"), i = b(\"MessagingXD\"), j = b(\"copyProperties\"), k = b(\"emptyFunction\"), l = b(\"tx\"), m = b(\"MercuryConstants\");\n function n(o, p) {\n this._resizeContent = (o.resizeContent || k);\n this._richMap = {\n };\n this._useFBStyle = p;\n this._xdc = new i(this.onXDMessage.bind(this));\n this._maxWidth = 0;\n };\n j(n.prototype, {\n onXDMessage: function(o, p) {\n if ((p[0] != h.APP_ID.toString())) {\n return\n };\n if ((this._richMap && this._richMap[o])) {\n if ((p[2] == h.XD_MESSAGE.SANDBOX_READY)) {\n return this.setIframeContent(o);\n }\n else if ((p[2] == h.XD_MESSAGE.HTML_SIZE)) {\n return this._resizeContent(o, parseInt(p[3], 10), parseInt(p[4], 10), (p[5] == \"true\"), (p[6] == \"true\"))\n }\n \n };\n },\n setIframeContent: function(o, p) {\n this._xdc.sendMessage(o, h.XD_MESSAGE.SET_CONTENT, escape(this._richMap[o]), (this._useFBStyle ? \"useFBStyle\" : \"\"), (p ? \"forceDialogOnWide\" : \"\"), escape(\"Show Hidden Text\"), escape(\"Hide\"), this._maxWidth);\n },\n makeRich: function(o, p, q, r) {\n var s = this._xdc.createIframe(p, o, m.Sandbox.PAGE_URL);\n g.addClass(s, \"xdIframe\");\n this._richMap[o] = q;\n this._maxWidth = (r || 0);\n },\n updateRichMap: function(o, p) {\n this._richMap[o] = p;\n },\n unload: function() {\n this._xdc.unload();\n }\n });\n e.exports = n;\n});\n__d(\"PhotosUploadID\", [], function(a, b, c, d, e, f) {\n var g = 1024, h = {\n getNewID: function() {\n return g++;\n }\n };\n e.exports = h;\n});\n__d(\"ProgressBar\", [\"CSS\",\"DOM\",\"Style\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"CSS\"), h = b(\"DOM\"), i = b(\"Style\"), j = b(\"copyProperties\"), k = b(\"emptyFunction\");\n function l(o, p, q) {\n this._root = o;\n this._min = (p || 0);\n this._max = (q || 100);\n this._meter = h.find(o, \"div.fill\");\n this._initialPosition = 0;\n this._position = 0;\n this._initialVelocity = 0;\n this._velocity = 0;\n this._acceleration = 0;\n this.useAcceleration = true;\n this._loopInterval = 30;\n this._targetPosition = 0;\n this._targetTime = 0;\n this._startTime = null;\n this._timeout = null;\n this._onComplete = k;\n };\n j(l.prototype, {\n getRoot: function() {\n return this._root;\n },\n setPosition: function(o) {\n o = this._normalizePosition(o);\n this._initialPosition = o;\n this._position = o;\n this._updateMeter();\n this.stop();\n return this;\n },\n changeLabel: function(o) {\n var p = h.scry(this._root, \"span.label\");\n p.forEach(function(q) {\n h.setContent(q, o);\n });\n return this;\n },\n setCompleteHandler: function(o) {\n this._onComplete = (o || k);\n return this;\n },\n setTarget: function(o, p) {\n clearTimeout(this._timeout);\n this._targetPosition = o;\n var q = this._normalizePosition(o);\n this._targetTime = p;\n this._initialVelocity = this._velocity;\n this._initialPosition = this._position;\n if (this.useAcceleration) {\n this._acceleration = ((2 * (((q - this._initialPosition) - (this._initialVelocity * p)))) / ((p * p)));\n }\n else {\n this._acceleration = 0;\n this._velocity = this._initialVelocity = (((q - this._initialPosition)) / p);\n }\n ;\n if ((this._position >= q)) {\n this._onComplete();\n }\n else this._start();\n ;\n return this;\n },\n setNoAcceleration: function(o) {\n this.useAcceleration = !o;\n return this;\n },\n stop: function() {\n this._velocity = 0;\n this._initialVelocity = 0;\n this._acceleration = 0;\n clearTimeout(this._timeout);\n return this;\n },\n _start: function() {\n this._startTime = Date.now();\n this._timeout = setTimeout(this._loop.bind(this), this._loopInterval);\n return this;\n },\n _loop: function() {\n var o = (Date.now() - this._startTime);\n this._position = ((((((11366 * this._acceleration) * o) * o)) + ((this._initialVelocity * o))) + this._initialPosition);\n var p = this._velocity;\n this._velocity = ((this._acceleration * o) + this._initialVelocity);\n var q = ((p < 0) !== (this._velocity < 0));\n this._updateMeter();\n if (((this._position > this._normalizePosition(this._targetPosition)) || q)) {\n this._velocity = this._initialVelocity = 0;\n this._acceleration = 0;\n this.setPosition(this._targetPosition);\n this._onComplete();\n }\n else this._timeout = setTimeout(this._loop.bind(this), this._loopInterval);\n ;\n },\n _updateMeter: function() {\n var o = Math.min(Math.max(this._position, 0), 1);\n g.conditionClass(this._meter, \"empty\", (o <= 0));\n g.conditionClass(this._meter, \"full\", (o >= 1));\n i.set(this._meter, \"width\", ((o * 100) + \"%\"));\n },\n _normalizePosition: function(o) {\n return Math.min(Math.max((((o - this._min)) / ((this._max - this._min))), 0), 1);\n }\n });\n function m(o, p) {\n o.setPosition(p);\n };\n function n(o, p, q) {\n o.setTarget(p, q);\n };\n e.exports = l;\n e.exports.setTarget = n;\n e.exports.setPosition = m;\n});\n__d(\"FreeformTokenizerBehavior\", [\"Input\",\"Keys\",\"Event\",\"function-extensions\",], function(a, b, c, d, e, f) {\n var g = b(\"Input\"), h = b(\"Keys\"), i = b(\"Event\");\n b(\"function-extensions\");\n function j(k, l) {\n var m = (l.tokenize_on_blur !== false), n = (l.tokenize_on_paste !== false), o = (l.matcher && new RegExp(l.matcher, \"i\")), p = (l.paste_split && new RegExp(l.paste_split)), q = (l.select_on_comma !== false), r = (l.never_submit === true);\n function s(event) {\n var t = g.getValue(k.getInput()).trim();\n if (((p && event) && (event.type == \"paste\"))) {\n t = t.split(p);\n }\n else t = [t,];\n ;\n var u = false;\n for (var v = 0; (v < t.length); v++) {\n var w = t[v].trim();\n if ((w && ((!o || o.test(w))))) {\n var x = {\n uid: w,\n text: w,\n freeform: true\n };\n k.addToken(k.createToken(x));\n u = true;\n }\n ;\n };\n if ((event && u)) {\n k.getTypeahead().getCore().afterSelect();\n event.kill();\n }\n ;\n };\n k.subscribe(\"keydown\", function(t, u) {\n var event = u.event, v = i.getKeyCode(event);\n if ((((q && (v == h.COMMA))) || (v == h.RETURN))) {\n var w = k.getTypeahead().getView();\n if (w.getSelection()) {\n w.select();\n event.kill();\n }\n else s(event);\n ;\n }\n ;\n if (((v == h.RETURN) && r)) {\n event.kill();\n };\n });\n k.subscribe(\"paste\", function(t, u) {\n if (n) {\n s.bind(null, u.event).defer(20);\n };\n });\n k.subscribe(\"blur\", function(t, u) {\n if (m) {\n s();\n };\n k.getTypeahead().getCore().reset();\n });\n };\n e.exports = j;\n});\n__d(\"VaultEditableGrid\", [\"Event\",\"Arbiter\",\"AsyncRequest\",\"CSS\",\"DOM\",\"$\",\"copyProperties\",\"csx\",\"ge\",\"removeFromArray\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Arbiter\"), i = b(\"AsyncRequest\"), j = b(\"CSS\"), k = b(\"DOM\"), l = b(\"$\"), m = b(\"copyProperties\"), n = b(\"csx\"), o = b(\"ge\"), p = b(\"removeFromArray\"), q = {\n };\n function r(s, t) {\n q[s.id] = this;\n this._grid = s;\n this._gridID = s.id;\n this._dialogEndpoint = t;\n this._selectedVaultImageIDs = [];\n h.subscribe((\"multi-upload/image-removed/\" + this._gridID), function(u, v) {\n p(this._selectedVaultImageIDs, v);\n }.bind(this));\n h.subscribe((\"multi-upload/composer-reset/\" + this._gridID), this.removeImages.bind(this));\n h.inform((\"fbVaultEditableGrid/created/\" + s.id), this, h.BEHAVIOR_PERSISTENT);\n h.subscribe((\"multi-upload/images-upload-start/\" + this._gridID), this._scrollToRight.bind(this));\n };\n m(r, {\n VAULT_IMAGE: \"vault_image\",\n getInstance: function(s) {\n return q[s];\n },\n registerDialogWithGrid: function(s, t, u) {\n h.subscribe([(\"multi-upload/images-upload-start/\" + s),(\"multi-upload/video-added/\" + s),], u.hide.bind(u));\n h.subscribe((\"fbVaultEditableGrid/created/\" + s), function(v, w) {\n w._registerDialogWithGrid(t, u);\n });\n },\n onImagesSelected: function(s, t, u) {\n q[s]._onImagesSelected(t, u);\n }\n });\n m(r.prototype, {\n getRoot: function() {\n var s = o(this._gridID);\n if (s) {\n return s;\n }\n else return this._grid\n ;\n },\n _registerDialogWithGrid: function(s, t) {\n this._dialog = t;\n var u = this.getMoreLink();\n (u && g.listen(u, \"click\", function() {\n t.show();\n return false;\n }));\n t.subscribe(\"aftershow\", function() {\n var v = [];\n k.scry(l(this._gridID), \"input[type=\\\"hidden\\\"]\").forEach(function(x) {\n if ((x.name.match(\"composer_vault_images\") || x.name.match(\"composer_unpublished_photo\"))) {\n v.push(x.value);\n };\n });\n var w = s.getGrid();\n w.bulkChange(function() {\n var x = w.getSelectionSet();\n x.clear();\n x.addAll(v);\n });\n }.bind(this));\n },\n getID: function() {\n return this._gridID;\n },\n _onImagesSelected: function(s, t) {\n var u = k.find(this.getRoot(), \".-cx-PRIVATE-fbMultiUploadInput__prependtarget\");\n this.removeImages();\n this._selectedVaultImageIDs = t;\n s.forEach(function(v) {\n k.insertBefore(u, v);\n });\n h.inform((\"multi-upload/images-added/\" + this._gridID), {\n fbids: t\n });\n this._scrollToRight();\n },\n removeImages: function() {\n k.scry(this.getRoot(), \".fbVaultGridItem\").forEach(function(s) {\n if (!j.hasClass(s, \"fbVaultEditableGridMoreLink\")) {\n k.remove(s);\n };\n });\n this._selectedVaultImageIDs = [];\n h.inform((\"multi-upload/all-images-removed/\" + this._gridID));\n },\n _scrollToRight: function() {\n var s = this.getRoot(), t = k.find(s, \".fbScrollableAreaWrap\");\n t.scrollLeft = Math.max(0, (k.find(s, \".fbScrollableAreaBody\").offsetWidth - t.offsetWidth));\n },\n showDialog: function(s, t) {\n if (this._dialog) {\n this._dialog.show();\n }\n else i.bootstrap(this._dialogEndpoint, s);\n ;\n },\n getMoreLink: function() {\n return k.scry(this.getRoot(), \".fbVaultEditableGridMoreLink\")[0];\n }\n });\n e.exports = r;\n});\n__d(\"VaultBoxURI\", [\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"URI\"), h = {\n PHOTOS_SYNCED: \"photos_synced\",\n isVaultBoxURI: function(i) {\n var j = new RegExp(((\"/\" + h.PHOTOS_SYNCED) + \"/?$\"));\n return (i.getPath().match(j) && i.getQueryData().hasOwnProperty(\"view_image\"));\n },\n isVaultArchiveURI: function(i) {\n var j = new RegExp(((\"/\" + h.PHOTOS_SYNCED) + \"/?$\"));\n return i.getPath().match(j);\n },\n getSyncedTabURI: function() {\n return new g((\"/me/\" + h.PHOTOS_SYNCED)).getQualifiedURI();\n }\n };\n e.exports = h;\n});"); |
| // 9420 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"sdea9fc4f8fec3bb09f65a70a645ea68309728bc2"); |
| // 9421 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"mBpeN\",]);\n}\n;\n;\n__d(\"Button.react\", [\"AbstractButton.react\",\"ReactPropTypes\",\"React\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"AbstractButton.react\"), h = b(\"ReactPropTypes\"), i = b(\"React\"), j = b(\"cx\"), k = i.createClass({\n displayName: \"Button\",\n propTypes: {\n use: h.oneOf([\"special\",\"JSBNG__confirm\",\"default\",]),\n size: h.oneOf([\"medium\",\"large\",]),\n suppressed: h.bool\n },\n render: function() {\n var l = ((this.props.use || \"default\")), m = ((this.props.size || \"medium\")), n = (((((((((((\"-cx-PRIVATE-uiButton__root\") + ((((l === \"special\")) ? ((\" \" + \"-cx-PRIVATE-uiButton__special\")) : \"\")))) + ((((l === \"JSBNG__confirm\")) ? ((\" \" + \"-cx-PRIVATE-uiButton__confirm\")) : \"\")))) + ((((m === \"large\")) ? ((\" \" + \"-cx-PRIVATE-uiButton__large\")) : \"\")))) + ((this.props.suppressed ? ((\" \" + \"-cx-PRIVATE-uiButton__suppressed\")) : \"\")))) + ((((l !== \"default\")) ? ((\" \" + \"selected\")) : \"\"))));\n return this.transferPropsTo(g({\n className: n\n }));\n }\n });\n e.exports = k;\n});\n__d(\"Grid.react\", [\"ReactPropTypes\",\"React\",\"cx\",\"flattenChildren\",\"getObjectValues\",\"joinClasses\",], function(a, b, c, d, e, f) {\n var g = b(\"ReactPropTypes\"), h = b(\"React\"), i = b(\"cx\"), j = b(\"flattenChildren\"), k = b(\"getObjectValues\"), l = b(\"joinClasses\"), m = h.createClass({\n displayName: \"Grid\",\n propTypes: {\n cols: g.number.isRequired,\n fixed: g.bool,\n alignv: g.oneOf([\"JSBNG__top\",\"middle\",\"bottom\",]),\n alignh: g.oneOf([\"left\",\"center\",\"right\",]),\n spacing: g.string\n },\n render: function() {\n var p = k(j(this.props.children)), q = p.length, r = [], s = [], t = 0;\n p.forEach(function(u, v) {\n u.props.alignv = this.props.alignv;\n u.props.alignh = this.props.alignh;\n o(u, ((this.props.fixed ? \"uiGridFixed\" : \"\")));\n if (this.props.spacing) {\n o(u, this.props.spacing);\n }\n ;\n ;\n s.push(u);\n t += Math.max(((u.props.colSpan || 0)), 1);\n if (((((((t % this.props.cols)) === 0)) || ((((v + 1)) === q))))) {\n if (((this.props.fixed && ((t < this.props.cols))))) {\n for (var w = t; ((w < this.props.cols)); w++) {\n s.push(n(null));\n ;\n };\n ;\n t = this.props.cols;\n }\n ;\n ;\n if (((t === this.props.cols))) {\n o(s[((s.length - 1))], \"-cx-PRIVATE-uiGrid__rightcol\");\n }\n ;\n ;\n r.push(h.DOM.tr({\n className: \"-cx-PRIVATE-uiGrid__row\",\n key: v\n }, s));\n s = [];\n t = 0;\n }\n ;\n ;\n }.bind(this));\n return (h.DOM.table({\n className: \"uiGrid -cx-PRIVATE-uiGrid__root\",\n cellSpacing: \"0\",\n cellPadding: \"0\"\n }, h.DOM.tbody(null, r)));\n }\n }), n = h.createClass({\n displayName: \"GridItem\",\n propTypes: {\n alignv: g.oneOf([\"JSBNG__top\",\"middle\",\"bottom\",]),\n alignh: g.oneOf([\"left\",\"center\",\"right\",])\n },\n render: function() {\n var p = (((((((((((((\"-cx-PRIVATE-uiGrid__cell\") + ((((this.props.alignv === \"JSBNG__top\")) ? ((\" \" + \"vTop\")) : \"\")))) + ((((this.props.alignv === \"middle\")) ? ((\" \" + \"vMid\")) : \"\")))) + ((((this.props.alignv === \"bottom\")) ? ((\" \" + \"vBot\")) : \"\")))) + ((((this.props.alignh === \"left\")) ? ((\" \" + \"hLeft\")) : \"\")))) + ((((this.props.alignh === \"center\")) ? ((\" \" + \"hCent\")) : \"\")))) + ((((this.props.alignh === \"right\")) ? ((\" \" + \"hRght\")) : \"\"))));\n return this.transferPropsTo(h.DOM.td({\n className: p\n }, this.props.children));\n }\n }), o = function(p, q) {\n p.props.className = l(p.props.className, q);\n };\n m.GridItem = n;\n e.exports = m;\n});\n__d(\"mixin\", [], function(a, b, c, d, e, f) {\n function g(h, i, j, k, l, m, n, o, p, q, r) {\n var s = function() {\n \n }, t = [h,i,j,k,l,m,n,o,p,q,], u = 0, v;\n while (t[u]) {\n v = t[u];\n {\n var fin196keys = ((window.top.JSBNG_Replay.forInKeys)((v))), fin196i = (0);\n var w;\n for (; (fin196i < fin196keys.length); (fin196i++)) {\n ((w) = (fin196keys[fin196i]));\n {\n if (v.hasOwnProperty(w)) {\n s.prototype[w] = v[w];\n }\n ;\n ;\n };\n };\n };\n ;\n u += 1;\n };\n ;\n return s;\n };\n;\n e.exports = g;\n});\n__d(\"WebMessengerDetailViewSheetControl\", [\"DOM\",\"WebMessengerStateManager\",\"MercurySheetView\",\"WebMessengerTemplates\",\"MercuryThreadInformer\",\"MercuryThreadMuter\",\"MercuryThreads\",\"WebMessengerJoinStatusTabSheet\",\"WebMessengerThreadIsMutedTabSheet\",\"WebMessengerSubscriptionsHandler\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"WebMessengerStateManager\"), i = b(\"MercurySheetView\"), j = b(\"WebMessengerTemplates\"), k = b(\"MercuryThreadInformer\").get(), l = b(\"MercuryThreadMuter\"), m = b(\"MercuryThreads\").get(), n = b(\"WebMessengerJoinStatusTabSheet\"), o = b(\"WebMessengerThreadIsMutedTabSheet\"), p = b(\"WebMessengerSubscriptionsHandler\");\n function q(r) {\n this._template = j[\":fb:web-messenger:tab-sheet-container\"].build();\n this._rootElement = this._template.getNode(\"sheet\");\n this._threadID = h.getCurrentStateData().thread_id;\n this._sheetView = new i(this._threadID, this._rootElement, r);\n this._threadIsMutedTabSheet = new o(this._rootElement, this._sheetView);\n this._userJoinStatusSheet = new n(this._rootElement, this._sheetView);\n this._muteSetting = undefined;\n g.setContent(r, this._template.getRoot());\n this._threadIsMutedClickSub = this._threadIsMutedTabSheet.subscribe(\"clicked\", function() {\n l.showMuteChangeDialog(0, this._threadID);\n }.bind(this));\n p.addSubscriptions(k.subscribe(\"threads-updated\", function(s, t) {\n if (((this._threadID && t[this._threadID]))) {\n this.updateTabSheet(false);\n }\n ;\n ;\n }.bind(this)));\n this.updateTabSheet(true);\n };\n;\n q.prototype.updateView = function() {\n var r = h.getCurrentStateData().thread_id;\n if (((this._threadID != r))) {\n this._threadID = r;\n this.updateTabSheet(true);\n }\n ;\n ;\n };\n q.prototype.updateTabSheet = function(r) {\n if (!this._threadID) {\n return;\n }\n ;\n ;\n m.getThreadMeta(this._threadID, function(s) {\n var t = l.getThreadMuteSettingForUser(s);\n if (((((t != this._muteSetting)) || r))) {\n if (t) {\n this._threadIsMutedTabSheet.open();\n }\n else this._threadIsMutedTabSheet.close();\n ;\n ;\n this._muteSetting = t;\n }\n ;\n ;\n }.bind(this));\n };\n q.prototype.openUserJoinStatusSheet = function(r) {\n this._userJoinStatusSheet.addToQueue(r);\n };\n q.prototype.destroy = function() {\n ((this._threadIsMutedClickSub && this._threadIsMutedClickSub.unsubscribe()));\n };\n e.exports = q;\n});\n__d(\"WebMessengerActionsMenuItem\", [\"JSBNG__Event\",\"JSBNG__CSS\",\"WebMessengerStateManager\",\"WebMessengerTemplates\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"JSBNG__CSS\"), i = b(\"WebMessengerStateManager\"), j = b(\"WebMessengerTemplates\");\n function k(l, m, n) {\n var o = j[\":fb:web-messenger:actions-menu-item\"].build();\n o.setNodeContent(\"title\", l);\n this.node = o.getRoot();\n this.showFn = n;\n g.listen(this.node, \"click\", function() {\n var p = i.getCurrentStateData().thread_id;\n ((p && m(p)));\n });\n };\n;\n k.prototype.getNode = function() {\n return this.node;\n };\n k.prototype.updateShown = function(l) {\n var m = ((this.showFn ? this.showFn(l) : true));\n h.conditionShow(this.node, m);\n return m;\n };\n e.exports = k;\n});\n__d(\"WebMessengerTabbedFolderControl\", [\"JSBNG__Event\",\"JSBNG__CSS\",\"WebMessengerTemplates\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"JSBNG__CSS\"), i = b(\"WebMessengerTemplates\");\n function j(k, l, m) {\n this._template = i[\":fb:web-messenger:master-view:tab-bar:folder\"].build();\n this._template.setNodeContent(\"folderLabel\", k);\n this._listener = g.listen(this._template.getNode(\"link\"), \"click\", m);\n l.push(this._template.getRoot());\n };\n;\n j.prototype.getCountBadge = function() {\n return this._template.getNode(\"count\");\n };\n j.prototype.setSelected = function(k) {\n h.conditionClass(this._template.getRoot(), \"selectedFolder\", k);\n };\n j.prototype.getElement = function() {\n this._template.getRoot();\n };\n j.prototype.destroy = function() {\n this._listener.remove();\n };\n e.exports = j;\n});\n__d(\"WebMessengerUnseenMessageNoticeRenderer\", [\"JSXDOM\",\"ContextualLayer\",\"LayerFadeOnHide\",\"cx\",\"tx\",\"JSBNG__Event\",], function(a, b, c, d, e, f) {\n var g = b(\"JSXDOM\"), h = b(\"ContextualLayer\"), i = b(\"LayerFadeOnHide\"), j = b(\"cx\"), k = b(\"tx\"), l = b(\"JSBNG__Event\"), m = {\n renderNoticeTooltip: function(o, p) {\n var q = g.div({\n className: \"-cx-PRIVATE-webMessengerNoticeTooltip__uitooltipx\"\n }, n(o), g.i({\n className: \"-cx-PRIVATE-webMessengerNoticeTooltip__arrow\"\n })), r = new h(((p || {\n })), q).enableBehavior(i);\n return r;\n }\n };\n function n(o) {\n var p = g.div({\n className: \"-cx-PRIVATE-webMessengerNoticeTooltip__tooltipcontent\"\n }, \"You have new messages\");\n l.listen(p, \"click\", o);\n return p;\n };\n;\n e.exports = m;\n});\n__d(\"MessagingConst\", [\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = {\n APP_ID: 313785040330,\n XD_MESSAGE: {\n SANDBOX_READY: \"sandbox_ready\",\n SET_CONTENT: \"set_content\",\n HTML_SIZE: \"html_size\",\n REFRESH_SIZE: \"refresh_size\"\n },\n SHINGLE_SCROLL_TRIGGER: 5,\n EVENTS: {\n MESSAGE_SENT: \"messaging/message_sent\"\n },\n initConstants: function(i) {\n g(h, i);\n }\n };\n e.exports = h;\n});\n__d(\"MessagingXD\", [\"JSBNG__Event\",\"DOM\",\"MercuryConstants\",\"MessagingConst\",\"URI\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"DOM\"), i = b(\"MercuryConstants\"), j = b(\"MessagingConst\"), k = b(\"URI\"), l = b(\"copyProperties\");\n function m(n) {\n this._listeners = [g.listen(window, \"message\", this._onPostMessage.bind(this)),];\n this._iframes = {\n };\n this._contentWindows = {\n };\n this._messageHandler = n;\n };\n;\n l(m.prototype, {\n unload: function() {\n this._listeners.forEach(function(n) {\n n.remove();\n });\n },\n createIframe: function(n, o, p) {\n var q = new k(p);\n this._iframes[o] = h.create(\"div\", {\n JSBNG__name: o,\n frameBorder: 0,\n src: q.toString()\n });\n h.appendContent(n, this._iframes[o]);\n this._contentWindows[o] = this._iframes[o].contentWindow;\n return this._iframes[o];\n },\n sendMessage: function(n, o) {\n var p = Array.prototype.slice.apply(arguments);\n p[0] = j.APP_ID;\n var q = ((this._iframes[n].contentWindow || this._contentWindows[n]));\n q.JSBNG__postMessage(p.join(\",\"), i.Sandbox.ORIGIN);\n },\n _onPostMessage: function(JSBNG__event) {\n if (((((JSBNG__event.origin !== i.Sandbox.ORIGIN)) || !JSBNG__event.data.split))) {\n return;\n }\n ;\n ;\n var n = JSBNG__event.data.split(\",\"), o = unescape(n[1]);\n this._contentWindows[o] = JSBNG__event.source;\n this._messageHandler(o, n);\n }\n });\n e.exports = m;\n});\n__d(\"HTMLEmailRenderer\", [\"JSBNG__CSS\",\"MessagingConst\",\"MessagingXD\",\"copyProperties\",\"emptyFunction\",\"tx\",\"MercuryConstants\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = b(\"MessagingConst\"), i = b(\"MessagingXD\"), j = b(\"copyProperties\"), k = b(\"emptyFunction\"), l = b(\"tx\"), m = b(\"MercuryConstants\");\n function n(o, p) {\n this._resizeContent = ((o.resizeContent || k));\n this._richMap = {\n };\n this._useFBStyle = p;\n this._xdc = new i(this.onXDMessage.bind(this));\n this._maxWidth = 0;\n };\n;\n j(n.prototype, {\n onXDMessage: function(o, p) {\n if (((p[0] != h.APP_ID.toString()))) {\n return;\n }\n ;\n ;\n if (((this._richMap && this._richMap[o]))) {\n if (((p[2] == h.XD_MESSAGE.SANDBOX_READY))) {\n return this.setIframeContent(o);\n }\n else if (((p[2] == h.XD_MESSAGE.HTML_SIZE))) {\n return this._resizeContent(o, parseInt(p[3], 10), parseInt(p[4], 10), ((p[5] == \"true\")), ((p[6] == \"true\")));\n }\n \n ;\n }\n ;\n ;\n },\n setIframeContent: function(o, p) {\n this._xdc.sendMessage(o, h.XD_MESSAGE.SET_CONTENT, escape(this._richMap[o]), ((this._useFBStyle ? \"useFBStyle\" : \"\")), ((p ? \"forceDialogOnWide\" : \"\")), escape(\"Show Hidden Text\"), escape(\"Hide\"), this._maxWidth);\n },\n makeRich: function(o, p, q, r) {\n var s = this._xdc.createIframe(p, o, m.Sandbox.PAGE_URL);\n g.addClass(s, \"xdIframe\");\n this._richMap[o] = q;\n this._maxWidth = ((r || 0));\n },\n updateRichMap: function(o, p) {\n this._richMap[o] = p;\n },\n unload: function() {\n this._xdc.unload();\n }\n });\n e.exports = n;\n});\n__d(\"PhotosUploadID\", [], function(a, b, c, d, e, f) {\n var g = 1024, h = {\n getNewID: function() {\n return g++;\n }\n };\n e.exports = h;\n});\n__d(\"ProgressBar\", [\"JSBNG__CSS\",\"DOM\",\"Style\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = b(\"DOM\"), i = b(\"Style\"), j = b(\"copyProperties\"), k = b(\"emptyFunction\");\n function l(o, p, q) {\n this._root = o;\n this._min = ((p || 0));\n this._max = ((q || 100));\n this._meter = h.JSBNG__find(o, \"div.fill\");\n this._initialPosition = 0;\n this._position = 0;\n this._initialVelocity = 0;\n this._velocity = 0;\n this._acceleration = 0;\n this.useAcceleration = true;\n this._loopInterval = 30;\n this._targetPosition = 0;\n this._targetTime = 0;\n this._startTime = null;\n this._timeout = null;\n this._onComplete = k;\n };\n;\n j(l.prototype, {\n getRoot: function() {\n return this._root;\n },\n setPosition: function(o) {\n o = this._normalizePosition(o);\n this._initialPosition = o;\n this._position = o;\n this._updateMeter();\n this.JSBNG__stop();\n return this;\n },\n changeLabel: function(o) {\n var p = h.scry(this._root, \"span.label\");\n p.forEach(function(q) {\n h.setContent(q, o);\n });\n return this;\n },\n setCompleteHandler: function(o) {\n this._onComplete = ((o || k));\n return this;\n },\n setTarget: function(o, p) {\n JSBNG__clearTimeout(this._timeout);\n this._targetPosition = o;\n var q = this._normalizePosition(o);\n this._targetTime = p;\n this._initialVelocity = this._velocity;\n this._initialPosition = this._position;\n if (this.useAcceleration) {\n this._acceleration = ((((2 * ((((q - this._initialPosition)) - ((this._initialVelocity * p)))))) / ((p * p))));\n }\n else {\n this._acceleration = 0;\n this._velocity = this._initialVelocity = ((((q - this._initialPosition)) / p));\n }\n ;\n ;\n if (((this._position >= q))) {\n this._onComplete();\n }\n else this._start();\n ;\n ;\n return this;\n },\n setNoAcceleration: function(o) {\n this.useAcceleration = !o;\n return this;\n },\n JSBNG__stop: function() {\n this._velocity = 0;\n this._initialVelocity = 0;\n this._acceleration = 0;\n JSBNG__clearTimeout(this._timeout);\n return this;\n },\n _start: function() {\n this._startTime = JSBNG__Date.now();\n this._timeout = JSBNG__setTimeout(this._loop.bind(this), this._loopInterval);\n return this;\n },\n _loop: function() {\n var o = ((JSBNG__Date.now() - this._startTime));\n this._position = ((((((((((11366 * this._acceleration)) * o)) * o)) + ((this._initialVelocity * o)))) + this._initialPosition));\n var p = this._velocity;\n this._velocity = ((((this._acceleration * o)) + this._initialVelocity));\n var q = ((((p < 0)) !== ((this._velocity < 0))));\n this._updateMeter();\n if (((((this._position > this._normalizePosition(this._targetPosition))) || q))) {\n this._velocity = this._initialVelocity = 0;\n this._acceleration = 0;\n this.setPosition(this._targetPosition);\n this._onComplete();\n }\n else this._timeout = JSBNG__setTimeout(this._loop.bind(this), this._loopInterval);\n ;\n ;\n },\n _updateMeter: function() {\n var o = Math.min(Math.max(this._position, 0), 1);\n g.conditionClass(this._meter, \"empty\", ((o <= 0)));\n g.conditionClass(this._meter, \"full\", ((o >= 1)));\n i.set(this._meter, \"width\", ((((o * 100)) + \"%\")));\n },\n _normalizePosition: function(o) {\n return Math.min(Math.max(((((o - this._min)) / ((this._max - this._min)))), 0), 1);\n }\n });\n function m(o, p) {\n o.setPosition(p);\n };\n;\n function n(o, p, q) {\n o.setTarget(p, q);\n };\n;\n e.exports = l;\n e.exports.setTarget = n;\n e.exports.setPosition = m;\n});\n__d(\"FreeformTokenizerBehavior\", [\"Input\",\"Keys\",\"JSBNG__Event\",\"function-extensions\",], function(a, b, c, d, e, f) {\n var g = b(\"Input\"), h = b(\"Keys\"), i = b(\"JSBNG__Event\");\n b(\"function-extensions\");\n function j(k, l) {\n var m = ((l.tokenize_on_blur !== false)), n = ((l.tokenize_on_paste !== false)), o = ((l.matcher && new RegExp(l.matcher, \"i\"))), p = ((l.paste_split && new RegExp(l.paste_split))), q = ((l.select_on_comma !== false)), r = ((l.never_submit === true));\n function s(JSBNG__event) {\n var t = g.getValue(k.getInput()).trim();\n if (((((p && JSBNG__event)) && ((JSBNG__event.type == \"paste\"))))) {\n t = t.split(p);\n }\n else t = [t,];\n ;\n ;\n var u = false;\n for (var v = 0; ((v < t.length)); v++) {\n var w = t[v].trim();\n if (((w && ((!o || o.test(w)))))) {\n var x = {\n uid: w,\n text: w,\n freeform: true\n };\n k.addToken(k.createToken(x));\n u = true;\n }\n ;\n ;\n };\n ;\n if (((JSBNG__event && u))) {\n k.getTypeahead().getCore().afterSelect();\n JSBNG__event.kill();\n }\n ;\n ;\n };\n ;\n k.subscribe(\"keydown\", function(t, u) {\n var JSBNG__event = u.JSBNG__event, v = i.getKeyCode(JSBNG__event);\n if (((((q && ((v == h.COMMA)))) || ((v == h.RETURN))))) {\n var w = k.getTypeahead().getView();\n if (w.JSBNG__getSelection()) {\n w.select();\n JSBNG__event.kill();\n }\n else s(JSBNG__event);\n ;\n ;\n }\n ;\n ;\n if (((((v == h.RETURN)) && r))) {\n JSBNG__event.kill();\n }\n ;\n ;\n });\n k.subscribe(\"paste\", function(t, u) {\n if (n) {\n s.bind(null, u.JSBNG__event).defer(20);\n }\n ;\n ;\n });\n k.subscribe(\"JSBNG__blur\", function(t, u) {\n if (m) {\n s();\n }\n ;\n ;\n k.getTypeahead().getCore().reset();\n });\n };\n;\n e.exports = j;\n});\n__d(\"VaultEditableGrid\", [\"JSBNG__Event\",\"Arbiter\",\"AsyncRequest\",\"JSBNG__CSS\",\"DOM\",\"$\",\"copyProperties\",\"csx\",\"ge\",\"removeFromArray\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Arbiter\"), i = b(\"AsyncRequest\"), j = b(\"JSBNG__CSS\"), k = b(\"DOM\"), l = b(\"$\"), m = b(\"copyProperties\"), n = b(\"csx\"), o = b(\"ge\"), p = b(\"removeFromArray\"), q = {\n };\n function r(s, t) {\n q[s.id] = this;\n this._grid = s;\n this._gridID = s.id;\n this._dialogEndpoint = t;\n this._selectedVaultImageIDs = [];\n h.subscribe(((\"multi-upload/image-removed/\" + this._gridID)), function(u, v) {\n p(this._selectedVaultImageIDs, v);\n }.bind(this));\n h.subscribe(((\"multi-upload/composer-reset/\" + this._gridID)), this.removeImages.bind(this));\n h.inform(((\"fbVaultEditableGrid/created/\" + s.id)), this, h.BEHAVIOR_PERSISTENT);\n h.subscribe(((\"multi-upload/images-upload-start/\" + this._gridID)), this._scrollToRight.bind(this));\n };\n;\n m(r, {\n VAULT_IMAGE: \"vault_image\",\n getInstance: function(s) {\n return q[s];\n },\n registerDialogWithGrid: function(s, t, u) {\n h.subscribe([((\"multi-upload/images-upload-start/\" + s)),((\"multi-upload/video-added/\" + s)),], u.hide.bind(u));\n h.subscribe(((\"fbVaultEditableGrid/created/\" + s)), function(v, w) {\n w._registerDialogWithGrid(t, u);\n });\n },\n onImagesSelected: function(s, t, u) {\n q[s]._onImagesSelected(t, u);\n }\n });\n m(r.prototype, {\n getRoot: function() {\n var s = o(this._gridID);\n if (s) {\n return s;\n }\n else return this._grid\n ;\n },\n _registerDialogWithGrid: function(s, t) {\n this._dialog = t;\n var u = this.getMoreLink();\n ((u && g.listen(u, \"click\", function() {\n t.show();\n return false;\n })));\n t.subscribe(\"aftershow\", function() {\n var v = [];\n k.scry(l(this._gridID), \"input[type=\\\"hidden\\\"]\").forEach(function(x) {\n if (((x.JSBNG__name.match(\"composer_vault_images\") || x.JSBNG__name.match(\"composer_unpublished_photo\")))) {\n v.push(x.value);\n }\n ;\n ;\n });\n var w = s.getGrid();\n w.bulkChange(function() {\n var x = w.getSelectionSet();\n x.clear();\n x.addAll(v);\n });\n }.bind(this));\n },\n getID: function() {\n return this._gridID;\n },\n _onImagesSelected: function(s, t) {\n var u = k.JSBNG__find(this.getRoot(), \".-cx-PRIVATE-fbMultiUploadInput__prependtarget\");\n this.removeImages();\n this._selectedVaultImageIDs = t;\n s.forEach(function(v) {\n k.insertBefore(u, v);\n });\n h.inform(((\"multi-upload/images-added/\" + this._gridID)), {\n fbids: t\n });\n this._scrollToRight();\n },\n removeImages: function() {\n k.scry(this.getRoot(), \".fbVaultGridItem\").forEach(function(s) {\n if (!j.hasClass(s, \"fbVaultEditableGridMoreLink\")) {\n k.remove(s);\n }\n ;\n ;\n });\n this._selectedVaultImageIDs = [];\n h.inform(((\"multi-upload/all-images-removed/\" + this._gridID)));\n },\n _scrollToRight: function() {\n var s = this.getRoot(), t = k.JSBNG__find(s, \".fbScrollableAreaWrap\");\n t.scrollLeft = Math.max(0, ((k.JSBNG__find(s, \".fbScrollableAreaBody\").offsetWidth - t.offsetWidth)));\n },\n showDialog: function(s, t) {\n if (this._dialog) {\n this._dialog.show();\n }\n else i.bootstrap(this._dialogEndpoint, s);\n ;\n ;\n },\n getMoreLink: function() {\n return k.scry(this.getRoot(), \".fbVaultEditableGridMoreLink\")[0];\n }\n });\n e.exports = r;\n});\n__d(\"VaultBoxURI\", [\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"URI\"), h = {\n PHOTOS_SYNCED: \"photos_synced\",\n isVaultBoxURI: function(i) {\n var j = new RegExp(((((\"/\" + h.PHOTOS_SYNCED)) + \"/?$\")));\n return ((i.getPath().match(j) && i.getQueryData().hasOwnProperty(\"view_image\")));\n },\n isVaultArchiveURI: function(i) {\n var j = new RegExp(((((\"/\" + h.PHOTOS_SYNCED)) + \"/?$\")));\n return i.getPath().match(j);\n },\n getSyncedTabURI: function() {\n return new g(((\"/me/\" + h.PHOTOS_SYNCED))).getQualifiedURI();\n }\n };\n e.exports = h;\n});"); |
| // 9424 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o129,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yx/r/TabxUMg74t0.js",o130); |
| // undefined |
| o129 = null; |
| // undefined |
| o130 = null; |
| // 9429 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"C6rJk\",]);\n}\n;\n__d(\"NotifXList\", [], function(a, b, c, d, e, f) {\n var g = {\n }, h = null;\n function i(p) {\n if (!p) {\n throw new Error(\"You have to init NotifXList with a non-null owner\")\n };\n h = p;\n };\n function j(p) {\n g[p] = null;\n };\n function k(p, q) {\n if (!q) {\n throw new Error(\"You have to add a non-null data to xList\")\n };\n g[p] = q;\n };\n function l(p) {\n var q = ((undefined !== g[p.notif_id])), r = ((p.notif_alt_id && (undefined !== g[p.notif_alt_id])));\n if ((q || r)) {\n k((q ? p.notif_id : p.notif_alt_id), p);\n return true;\n }\n ;\n return false;\n };\n function m(p) {\n return (null != g[p]);\n };\n function n(p) {\n if (m(p)) {\n var q = g[p];\n o(p);\n h.alertList.insert(q.notif_id, q.notif_time, q.notif_markup, q.replace, q.ignoreUnread, q.notif_alt_id);\n }\n ;\n };\n function o(p) {\n delete g[p];\n };\n e.exports = {\n init: i,\n userXClick: j,\n filterStoreClicked: l,\n newNotifExist: m,\n resumeInsert: n,\n removeNotif: o\n };\n});"); |
| // 9430 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"sd0e0e320aa683436cafcda743d8b77745ad99691"); |
| // 9431 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"C6rJk\",]);\n}\n;\n;\n__d(\"NotifXList\", [], function(a, b, c, d, e, f) {\n var g = {\n }, h = null;\n function i(p) {\n if (!p) {\n throw new Error(\"You have to init NotifXList with a non-null owner\");\n }\n ;\n ;\n h = p;\n };\n;\n function j(p) {\n g[p] = null;\n };\n;\n function k(p, q) {\n if (!q) {\n throw new Error(\"You have to add a non-null data to xList\");\n }\n ;\n ;\n g[p] = q;\n };\n;\n function l(p) {\n var q = ((undefined !== g[p.notif_id])), r = ((p.notif_alt_id && ((undefined !== g[p.notif_alt_id]))));\n if (((q || r))) {\n k(((q ? p.notif_id : p.notif_alt_id)), p);\n return true;\n }\n ;\n ;\n return false;\n };\n;\n function m(p) {\n return ((null != g[p]));\n };\n;\n function n(p) {\n if (m(p)) {\n var q = g[p];\n o(p);\n h.alertList.insert(q.notif_id, q.notif_time, q.notif_markup, q.replace, q.ignoreUnread, q.notif_alt_id);\n }\n ;\n ;\n };\n;\n function o(p) {\n delete g[p];\n };\n;\n e.exports = {\n init: i,\n userXClick: j,\n filterStoreClicked: l,\n newNotifExist: m,\n resumeInsert: n,\n removeNotif: o\n };\n});"); |
| // 9444 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o131,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yk/r/mvmvxDKTeL4.js",o132); |
| // undefined |
| o131 = null; |
| // undefined |
| o132 = null; |
| // 9551 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"97Zhe\",]);\n}\n;\n__d(\"legacy:nux-wizard-page\", [\"NUXWizard\",], function(a, b, c, d) {\n a.NUXWizard = b(\"NUXWizard\");\n}, 3);\n__d(\"PrivacyLiteNUXController\", [\"AsyncRequest\",\"CSS\",\"Event\",\"LayerSlowlyFadeOnShow\",\"Locale\",\"ModalMask\",\"PageTransitions\",\"Parent\",\"PrivacyLiteFlyout\",\"Toggler\",\"$\",\"copyProperties\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"CSS\"), i = b(\"Event\"), j = b(\"LayerSlowlyFadeOnShow\"), k = b(\"Locale\"), l = b(\"ModalMask\"), m = b(\"PageTransitions\"), n = b(\"Parent\"), o = b(\"PrivacyLiteFlyout\"), p = b(\"Toggler\"), q = b(\"$\"), r = b(\"copyProperties\"), s = b(\"cx\"), t = \"-cx-PUBLIC-fbPrivacyLiteMegaphone__openedfrommegaphone\", u = \"-cx-PRIVATE-fbPrivacyLiteMegaphone__sigilhide\", v = [], w = {\n bootload: function() {\n \n },\n init: function(y) {\n if (!w.initialized) {\n r(this, {\n dialog: y.dialog,\n sectionID: y.sectionID,\n subsectionID: y.subsectionID,\n initialized: true,\n tourStarted: false\n });\n };\n if (y.showOnExpand) {\n w._attachFlyoutListener();\n }\n else w._detachFlyoutListener();\n ;\n },\n startTourFromAnywhere: function() {\n w._startTour(false);\n },\n startTourFromMegaphone: function() {\n w._startTour(true);\n },\n _startTour: function(y) {\n if (w.tourStarted) {\n return\n };\n w.tourStarted = true;\n w._detachFlyoutListener();\n new g(\"/ajax/privacy/privacy_lite/log_nux_imp\").setData({\n from_megaphone: y\n }).send();\n l.show();\n h.conditionClass(w.dialog.getRoot(), t, y);\n if (!y) {\n w._maskListener = i.listen(q(\"modalMaskOverlay\"), \"click\", w._cleanup);\n };\n p.setSticky(true);\n setTimeout(w._showFlyout);\n m.registerHandler(function() {\n w._cleanup();\n o.setFlyoutVisible(false);\n }, 10);\n },\n _showFlyout: function() {\n o.loadBody(true);\n o.setFlyoutVisible(true);\n w._initDialog();\n x(\"load\", w._showTour);\n },\n _showTour: function() {\n o.showSection(w.sectionID);\n x(\"expanded\", function(y, z) {\n if ((z === w.sectionID)) {\n w.dialog.setContext(q(w.subsectionID)).setOffsetY(20).show();\n };\n });\n x([\"collapse\",\"hide\",], w._cleanup);\n },\n _initDialog: function() {\n var y = w.dialog.getRoot(), z = w.dialog.getContent();\n h.addClass(y, \"-cx-PRIVATE-fbPrivacyLiteMegaphone__dialogroot\");\n h.conditionClass(y, \"-cx-PRIVATE-fbPrivacyLiteMegaphone__rtl\", k.isRTL());\n h.addClass(z, \"-cx-PRIVATE-fbPrivacyLiteMegaphone__dialogcontent\");\n w.dialog.enableBehavior(j);\n i.listen(y, \"click\", function(event) {\n if (n.byClass(event.getTarget(), u)) {\n w._cleanup();\n };\n });\n },\n _attachFlyoutListener: function() {\n if (!w.flyoutSubscription) {\n if (o.isFlyoutVisible()) {\n w.startTourFromAnywhere();\n }\n else w.flyoutSubscription = o.subscribe(\"show\", w.startTourFromAnywhere);\n \n };\n },\n _detachFlyoutListener: function() {\n if (w.flyoutSubscription) {\n w.flyoutSubscription.unsubscribe();\n w.flyoutSubscription = null;\n }\n ;\n },\n _cleanup: function() {\n if (!w.tourStarted) {\n return\n };\n w.tourStarted = false;\n p.setSticky(false);\n l.hide();\n w.dialog.hide();\n while (v.length) {\n v.pop().unsubscribe();;\n };\n if (w._maskListener) {\n w._maskListener.remove();\n w._maskListener = null;\n }\n ;\n }\n };\n function x(y, z) {\n v.push(o.subscribe(y, z));\n };\n e.exports = w;\n});"); |
| // 9552 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s171ec31bc1d340c3d58a1c58fca7c8978eaa0d26"); |
| // 9553 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"97Zhe\",]);\n}\n;\n;\n__d(\"legacy:nux-wizard-page\", [\"NUXWizard\",], function(a, b, c, d) {\n a.NUXWizard = b(\"NUXWizard\");\n}, 3);\n__d(\"PrivacyLiteNUXController\", [\"AsyncRequest\",\"JSBNG__CSS\",\"JSBNG__Event\",\"LayerSlowlyFadeOnShow\",\"Locale\",\"ModalMask\",\"PageTransitions\",\"Parent\",\"PrivacyLiteFlyout\",\"Toggler\",\"$\",\"copyProperties\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"JSBNG__CSS\"), i = b(\"JSBNG__Event\"), j = b(\"LayerSlowlyFadeOnShow\"), k = b(\"Locale\"), l = b(\"ModalMask\"), m = b(\"PageTransitions\"), n = b(\"Parent\"), o = b(\"PrivacyLiteFlyout\"), p = b(\"Toggler\"), q = b(\"$\"), r = b(\"copyProperties\"), s = b(\"cx\"), t = \"-cx-PUBLIC-fbPrivacyLiteMegaphone__openedfrommegaphone\", u = \"-cx-PRIVATE-fbPrivacyLiteMegaphone__sigilhide\", v = [], w = {\n bootload: function() {\n \n },\n init: function(y) {\n if (!w.initialized) {\n r(this, {\n dialog: y.dialog,\n sectionID: y.sectionID,\n subsectionID: y.subsectionID,\n initialized: true,\n tourStarted: false\n });\n }\n ;\n ;\n if (y.showOnExpand) {\n w._attachFlyoutListener();\n }\n else w._detachFlyoutListener();\n ;\n ;\n },\n startTourFromAnywhere: function() {\n w._startTour(false);\n },\n startTourFromMegaphone: function() {\n w._startTour(true);\n },\n _startTour: function(y) {\n if (w.tourStarted) {\n return;\n }\n ;\n ;\n w.tourStarted = true;\n w._detachFlyoutListener();\n new g(\"/ajax/privacy/privacy_lite/log_nux_imp\").setData({\n from_megaphone: y\n }).send();\n l.show();\n h.conditionClass(w.dialog.getRoot(), t, y);\n if (!y) {\n w._maskListener = i.listen(q(\"modalMaskOverlay\"), \"click\", w._cleanup);\n }\n ;\n ;\n p.setSticky(true);\n JSBNG__setTimeout(w._showFlyout);\n m.registerHandler(function() {\n w._cleanup();\n o.setFlyoutVisible(false);\n }, 10);\n },\n _showFlyout: function() {\n o.loadBody(true);\n o.setFlyoutVisible(true);\n w._initDialog();\n x(\"load\", w._showTour);\n },\n _showTour: function() {\n o.showSection(w.sectionID);\n x(\"expanded\", function(y, z) {\n if (((z === w.sectionID))) {\n w.dialog.setContext(q(w.subsectionID)).setOffsetY(20).show();\n }\n ;\n ;\n });\n x([\"collapse\",\"hide\",], w._cleanup);\n },\n _initDialog: function() {\n var y = w.dialog.getRoot(), z = w.dialog.getContent();\n h.addClass(y, \"-cx-PRIVATE-fbPrivacyLiteMegaphone__dialogroot\");\n h.conditionClass(y, \"-cx-PRIVATE-fbPrivacyLiteMegaphone__rtl\", k.isRTL());\n h.addClass(z, \"-cx-PRIVATE-fbPrivacyLiteMegaphone__dialogcontent\");\n w.dialog.enableBehavior(j);\n i.listen(y, \"click\", function(JSBNG__event) {\n if (n.byClass(JSBNG__event.getTarget(), u)) {\n w._cleanup();\n }\n ;\n ;\n });\n },\n _attachFlyoutListener: function() {\n if (!w.flyoutSubscription) {\n if (o.isFlyoutVisible()) {\n w.startTourFromAnywhere();\n }\n else w.flyoutSubscription = o.subscribe(\"show\", w.startTourFromAnywhere);\n ;\n }\n ;\n ;\n },\n _detachFlyoutListener: function() {\n if (w.flyoutSubscription) {\n w.flyoutSubscription.unsubscribe();\n w.flyoutSubscription = null;\n }\n ;\n ;\n },\n _cleanup: function() {\n if (!w.tourStarted) {\n return;\n }\n ;\n ;\n w.tourStarted = false;\n p.setSticky(false);\n l.hide();\n w.dialog.hide();\n while (v.length) {\n v.pop().unsubscribe();\n ;\n };\n ;\n if (w._maskListener) {\n w._maskListener.remove();\n w._maskListener = null;\n }\n ;\n ;\n }\n };\n function x(y, z) {\n v.push(o.subscribe(y, z));\n };\n;\n e.exports = w;\n});"); |
| // 9560 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o133,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yJ/r/wz04JJfiB2n.js",o134); |
| // undefined |
| o133 = null; |
| // undefined |
| o134 = null; |
| // 9565 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"G3fzU\",]);\n}\n;\n__d(\"concatMap\", [], function(a, b, c, d, e, f) {\n function g(h, i) {\n var j = -1, k = i.length, l = [], m;\n while ((++j < k)) {\n m = h(i[j], j, i);\n (Array.isArray(m) ? Array.prototype.push.apply(l, m) : Array.prototype.push.call(l, m));\n };\n return l;\n };\n e.exports = g;\n});\n__d(\"NodeHighlighter\", [\"concatMap\",\"createArrayFrom\",\"escapeRegex\",\"TokenizeUtil\",\"DOM\",], function(a, b, c, d, e, f) {\n var g = b(\"concatMap\"), h = b(\"createArrayFrom\"), i = b(\"escapeRegex\"), j = b(\"TokenizeUtil\"), k = b(\"DOM\");\n function l(o, p) {\n var q = k.getText(o).split(p), r = q.map(function(s) {\n if (p.test(s)) {\n return m(s)\n };\n return (s || \"\");\n });\n return ((q.length > 1) ? r : null);\n };\n function m(o) {\n return k.create(\"span\", {\n class: \"highlightNode\"\n }, o);\n };\n var n = {\n getTextNodes: function(o) {\n if ((this.isLeafNode(o) || this.isStopNode(o))) {\n return o;\n }\n else if (this.isDiscardNode(o)) {\n return []\n }\n ;\n return g(this.getTextNodes.bind(this), h(o.childNodes));\n },\n getHighlightCandidates: function() {\n return [];\n },\n isLeafNode: function(o) {\n return k.isTextNode(o);\n },\n isStopNode: function(o) {\n return false;\n },\n isDiscardNode: function(o) {\n return false;\n },\n createSegmentedRegex: function(o) {\n var p = j.getPunctuation();\n return ((((((\"(^|\\\\s|\" + p) + \")(\") + o.map(String).map(i).join(\"|\")) + \")(?=(?:$|\\\\s|\") + p) + \"))\");\n },\n createNonSegmentedRegex: function(o) {\n return ((\"(\" + o.map(String).join(\"|\")) + \")\");\n },\n createRegex: function(o) {\n var p = /[\\u0E00-\\u109F\\u2000-\\uFFFF]/, q = [], r = [];\n o.forEach(function(t) {\n if (p.test(t)) {\n r.push(t);\n }\n else q.push(t);\n ;\n });\n var s = \"\";\n if (q.length) {\n s += this.createSegmentedRegex(q);\n s += ((r.length) ? \"|\" : \"\");\n }\n ;\n if (r.length) {\n s += this.createNonSegmentedRegex(r);\n };\n return new RegExp(s, \"i\");\n },\n highlight: function(o, p) {\n if (((!p || (p.length === 0)) || !o)) {\n return\n };\n var q = g(function(s) {\n return g(this.getTextNodes.bind(this), k.scry(o, s));\n }.bind(this), this.getHighlightCandidates()), r = this.createRegex(p);\n q.forEach(function(s) {\n var t = l(s, r);\n if (t) {\n if (this.isStopNode(s)) {\n k.setContent(s, t);\n }\n else k.replace(s, t);\n \n };\n }.bind(this));\n }\n };\n e.exports = n;\n});\n__d(\"BrowseFacebarHighlighter\", [\"copyProperties\",\"CSS\",\"csx\",\"escapeRegex\",\"NodeHighlighter\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"CSS\"), i = b(\"csx\"), j = b(\"escapeRegex\"), k = b(\"NodeHighlighter\"), l = {\n };\n g(l, k, {\n getHighlightCandidates: function() {\n return [\".-cx-PUBLIC-fbFacebarTypeaheadItem__labeltitle\",];\n },\n isDiscardNode: function(m) {\n return h.hasClass(m, \"DefaultText\");\n },\n createSegmentedRegex: function(m) {\n return ((\"(^|\\\\s|\\\\b)(\" + m.map(String).map(j).join(\"|\")) + \")\");\n }\n });\n e.exports = l;\n});\n__d(\"BrowseNUXBootstrap\", [\"Arbiter\",\"AsyncRequest\",\"invariant\",\"Run\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncRequest\"), i = b(\"invariant\"), j = b(\"Run\"), k = null, l = null, m = null, n = {\n registerFacebar: function(o) {\n i(!k);\n k = o;\n j.onLoad(function() {\n new h(\"/ajax/browse/nux.php\").setAllowCrossPageTransition(true).send();\n });\n },\n registerStory: function(o) {\n l = o;\n g.inform(\"BrowseNUX/story\", {\n }, g.BEHAVIOR_STATE);\n },\n registerTypeaheadUnit: function(o) {\n m = o;\n g.inform(\"BrowseNUX/typeaheadUnit\", {\n }, g.BEHAVIOR_STATE);\n },\n getFacebarData: function() {\n return k;\n },\n getStoryData: function() {\n return l;\n },\n getTypeaheadUnitData: function() {\n return m;\n }\n };\n e.exports = n;\n});\n__d(\"BrowseNUXCheckpoint\", [\"AsyncRequest\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"emptyFunction\");\n function i(l, m) {\n new g(\"/ajax/browse/nux_checkpoint.php\").setData(l).setFinallyHandler((m || h)).send();\n };\n var j = null, k = {\n SHOW_MEGAPHONE: 0,\n RESULTS_VIEW: 1,\n COMPLETED: 2,\n init: function(l) {\n j = l;\n },\n getStep: function() {\n return j;\n },\n setStep: function(l, m) {\n j = l;\n i({\n nextStep: l\n }, m);\n },\n setFinished: function(l) {\n j = k.COMPLETED;\n i({\n finished: true\n }, l);\n }\n };\n e.exports = k;\n});\n__d(\"BrowseNUXMegaphone\", [\"Event\",\"function-extensions\",\"Animation\",\"ArbiterMixin\",\"BrowseNUXBootstrap\",\"CSS\",\"cx\",\"DOM\",\"Ease\",\"MegaphoneHelper\",\"Style\",\"Vector\",\"$\",\"copyProperties\",\"csx\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\");\n b(\"function-extensions\");\n var h = b(\"Animation\"), i = b(\"ArbiterMixin\"), j = b(\"BrowseNUXBootstrap\"), k = b(\"CSS\"), l = b(\"cx\"), m = b(\"DOM\"), n = b(\"Ease\"), o = b(\"MegaphoneHelper\"), p = b(\"Style\"), q = b(\"Vector\"), r = b(\"$\"), s = b(\"copyProperties\"), t = b(\"csx\");\n function u(v) {\n this.megaphone = v;\n this.contentArea = null;\n this.className = null;\n this.startButton = m.find(this.megaphone, \"a.-cx-PRIVATE-fbBrowseNUXMegaphone__button\");\n this.hideLink = m.find(this.megaphone, \"a.-cx-PRIVATE-fbBrowseNUXMegaphone__hidelink\");\n g.listen(this.startButton, \"click\", this._handleStart.bind(this));\n g.listen(this.hideLink, \"click\", this._handleHide.bind(this));\n };\n s(u.prototype, i, {\n _attachListener: function() {\n var v = 1, w = function() {\n var x = this._getScrollOpacity();\n if ((x !== v)) {\n p.set(this.megaphone, \"opacity\", ((x === 1) ? \"\" : x));\n k.conditionShow(this.megaphone, (x > 0));\n v = x;\n }\n ;\n }.bind(this);\n this.listener = g.listen(window, \"scroll\", w);\n w();\n },\n _removeListener: function() {\n if (this.listener) {\n this.listener.remove();\n this.listener = null;\n }\n ;\n },\n _getScrollOpacity: function() {\n var v = q.getElementPosition(r(\"globalContainer\"), \"viewport\"), w = Math.max(0, Math.min(1, (((v.y + 70)) / 40)));\n return n.circOut(w);\n },\n _handleStart: function() {\n this.inform(\"start\");\n },\n _handleHide: function() {\n var v = j.getStoryData();\n o.hideStory(v.id, v.location);\n this.inform(\"hide\");\n this.hide();\n },\n setClass: function(v) {\n (this.className && k.removeClass(this.megaphone, this.className));\n k.addClass(this.megaphone, v);\n this.className = v;\n },\n show: function(v) {\n if (this.shown) {\n return\n };\n this.shown = true;\n this.contentArea = v;\n var w = 5, x = (r(\"blueBarHolder\").offsetHeight - w);\n p.set(this.megaphone, \"top\", (x + \"px\"));\n p.set(this.megaphone, \"opacity\", 0);\n m.appendContent(r(\"pageHead\"), this.megaphone);\n k.show(this.megaphone);\n var y = (((this.megaphone.offsetHeight || 90)) - w);\n if (k.hasClass(document.body, \"-cx-PUBLIC-fbBrowseLayout__fullwidth\")) {\n y = 0;\n };\n new h(v).to(\"marginTop\", y).duration(500).ease(n.sineOut).go();\n var z = this._getScrollOpacity();\n if (z) {\n new h(this.megaphone).duration(250).checkpoint().to(\"opacity\", z).duration(250).ease(n.makePowerIn(2)).ondone(function() {\n if ((z === 1)) {\n p.set(this.megaphone, \"opacity\", \"\");\n };\n this._attachListener();\n }.bind(this)).go();\n }\n else {\n this._attachListener();\n k.hide(this.megaphone);\n }\n ;\n },\n hide: function() {\n if (!this.shown) {\n return\n };\n this.shown = false;\n this._removeListener();\n new h(this.megaphone).to(\"opacity\", 0).duration(250).ease(n.makePowerOut(2)).go();\n new h(this.contentArea).to(\"marginTop\", 0).duration(500).ease(n.sineIn).ondone(m.remove.curry(this.megaphone)).go();\n }\n });\n e.exports = u;\n});\n__d(\"TextSelection\", [], function(a, b, c, d, e, f) {\n var g = window.getSelection, h = document.selection, i = {\n getSelection: function() {\n if (g) {\n return (g() + \"\");\n }\n else if (h) {\n return h.createRange().text\n }\n ;\n return null;\n },\n clearSelection: function() {\n if (g) {\n g().removeAllRanges();\n }\n else if (h) {\n h.empty();\n }\n ;\n },\n selectAllInNode: function(j) {\n var k = document.body.createTextRange;\n if (k) {\n var l = k();\n l.moveToElementText(j);\n l.select();\n }\n else if (g) {\n var m = g(), n = document.createRange();\n n.selectNodeContents(j);\n m.removeAllRanges();\n m.addRange(n);\n }\n \n ;\n }\n };\n e.exports = i;\n});\n__d(\"BrowseNUXTourDialog\", [\"Event\",\"Animation\",\"CSS\",\"DOMQuery\",\"LayerSlowlyFadeOnShow\",\"TextSelection\",\"UserAgent\",\"copyProperties\",\"csx\",\"cx\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Animation\"), i = b(\"CSS\"), j = b(\"DOMQuery\"), k = b(\"LayerSlowlyFadeOnShow\"), l = b(\"TextSelection\"), m = b(\"UserAgent\"), n = b(\"copyProperties\"), o = b(\"csx\"), p = b(\"cx\"), q = b(\"emptyFunction\");\n function r(s, t) {\n this.dialog = s;\n this.typeahead = t;\n this.dialog.enableBehavior(k);\n this._closeButtonHandler = null;\n i.addClass(this.dialog.getRoot(), \"-cx-PRIVATE-fbBrowseNUXTourDialog__root\");\n i.addClass(this.dialog.getContent(), \"-cx-PRIVATE-fbBrowseNUXTourDialog__content\");\n this.subscription = this.dialog.subscribe(\"beforehide\", q.thatReturnsFalse);\n };\n n(r.prototype, {\n showWithContext: function(s, t) {\n this.resultIndex = t;\n this.dialog.setContext(s).show();\n l.clearSelection();\n },\n getButton: function() {\n return j.find(this.dialog.getRoot(), \"a.-cx-PRIVATE-fbBrowseNUX__nextbutton\");\n },\n getCloseButton: function() {\n return j.find(this.dialog.getRoot(), \"a.-cx-PRIVATE-fbBrowseNUX__closebutton\");\n },\n activateCloseButton: function(s) {\n var t = this.getCloseButton();\n this._closeButtonHandler = g.listen(t, \"click\", function(event) {\n this.reset();\n s(event);\n }.bind(this));\n i.show(t);\n },\n showButton: function() {\n var s = this.getButton();\n i.removeClass(s, \"invisible_elem\");\n new h(s).to(\"opacity\", 1).go();\n },\n setNextHandler: function(s) {\n var t = g.listen(this.getButton(), \"click\", function(event) {\n t.remove();\n this.reset();\n s(event);\n }.bind(this));\n },\n reset: function() {\n this.subscription.unsubscribe();\n (this._closeButtonHandler && this._closeButtonHandler.remove());\n this.dialog.hide();\n }\n });\n e.exports = r;\n});\n__d(\"AutoTypewriter\", [], function(a, b, c, d, e, f) {\n var g = [null,null,], h = {\n request: function(i, j, k) {\n k = (k || 200);\n var l = false, m = 1, n = g.length;\n (function o() {\n if (l) {\n return\n };\n var p = j.substr(0, m);\n if ((p === j)) {\n i(p, true);\n g[n] = null;\n }\n else {\n i(p, false);\n m++;\n setTimeout(o, k);\n }\n ;\n })();\n g[n] = function() {\n l = true;\n };\n return n;\n },\n cancel: function(i) {\n if (!g[i]) {\n return false\n };\n g[i]();\n g[i] = null;\n return true;\n }\n };\n e.exports = h;\n});\n__d(\"BrowseNUXTypewriter\", [\"Arbiter\",\"AutoTypewriter\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AutoTypewriter\"), i = b(\"copyProperties\");\n function j(k) {\n this.structuredInput = k;\n };\n i(j.prototype, {\n setValue: function(k, l) {\n this._type(k, function(m, n) {\n g.inform(\"BrowseNUX/typing\");\n this.structuredInput.setText(m);\n this.structuredInput.togglePlaceholder();\n this.structuredInput.moveSelectionToEnd();\n }.bind(this), l);\n },\n prependFragment: function(k, l) {\n var m = this.structuredInput, n = m.getStructure();\n this._type(k.text, function(o) {\n g.inform(\"BrowseNUX/typing\");\n k.text = o;\n m.setStructure([k,].concat(n));\n m.setSelection({\n offset: o.length,\n length: 0\n });\n }, l);\n },\n abort: function() {\n if (this._token) {\n h.cancel(this._token);\n this._cleanup();\n }\n ;\n },\n _type: function(k, l, m) {\n this.abort();\n var n = this.structuredInput;\n this._wasEnabled = n.getEnabled();\n n.setEnabled(true);\n n.focus();\n this._token = h.request(function(o, p) {\n l(o);\n if (p) {\n this._cleanup();\n (m && m());\n }\n ;\n }.bind(this), k, 100);\n },\n _cleanup: function() {\n this.structuredInput.setEnabled(this._wasEnabled);\n delete this._token;\n delete this._wasEnabled;\n }\n });\n e.exports = j;\n});\n__d(\"FacebarSemanticQuery\", [\"URI\",\"copyProperties\",\"Env\",], function(a, b, c, d, e, f) {\n var g = b(\"URI\"), h = b(\"copyProperties\"), i = b(\"Env\"), j = \"str\";\n function k(t) {\n var u = {\n me: i.user\n };\n return h(u, t.semantic_map);\n };\n function l(t, u) {\n var v = k(t);\n if ((typeof v[u] !== \"undefined\")) {\n return String(v[u])\n };\n return u;\n };\n function m(t) {\n return new g(\"/profile.php\").addQueryData({\n id: t\n });\n };\n function n(t, u) {\n var v, w = q(u), x = {\n };\n for (var y = 0; (y < w.length); ++y) {\n if ((w[y].indexOf(\"path(\") === 0)) {\n v = g(q(w[y])[0]);\n }\n else {\n var z = w[y].substring(6, w[y].indexOf(\"(\")).split(\"_\"), aa = q(w[y]);\n for (var ba = 0; (ba < z.length); ++ba) {\n x[z[ba]] = l(t, aa[ba]);;\n };\n }\n ;\n };\n v.addQueryData(x);\n return v;\n };\n function o(t, u) {\n var v = [u,], w = [], x = t.browse_functions, y = t.search_path;\n while ((v.length > 0)) {\n var z = v.pop();\n if (!p(z)) {\n w.push(z);\n continue;\n }\n ;\n var aa = z.substring(0, z.indexOf(\"(\")), ba = aa, ca = q(z);\n if (!x[aa]) {\n w = [];\n break;\n }\n ;\n var da = x[aa].minNumParams, ea = x[aa].maxNumParams;\n if ((v.length > 0)) {\n if (x[aa].numParamsUnbounded) {\n if ((w.length > 0)) {\n aa += (\"-\" + ca.length);\n };\n }\n else if (((((ca.length != 1) && (ca.length > da))) || (((ca.length === 0) && (da != ea))))) {\n aa += (\"-\" + ca.length);\n }\n \n };\n v.push(aa);\n for (var fa = 0; (fa < ca.length); fa++) {\n if ((ca[fa].length === 0)) {\n continue;\n };\n if (x[ba].allowsFreeText) {\n v.push(((j + \"/\") + encodeURIComponent(ca[fa])));\n }\n else v.push(ca[fa]);\n ;\n };\n };\n return g((y + w.join(\"/\")));\n };\n function p(t) {\n return (/^[a-z\\-]+\\(.*\\)$/).test(t);\n };\n function q(t) {\n if ((!p(t) && (t.indexOf(\"param_\") !== 0))) {\n return [t,]\n };\n var u = t.substring((t.indexOf(\"(\") + 1), (t.length - 1));\n if ((u.length === 0)) {\n return []\n };\n return r(u);\n };\n function r(t) {\n var u = [], v = 0, w = 0;\n for (var x = 0; (x < t.length); ++x) {\n if (((t[x] == \",\") && (w === 0))) {\n u.push(t.substring(v, x));\n v = (x + 1);\n }\n else if ((t[x] == \"(\")) {\n w++;\n }\n else if ((t[x] == \")\")) {\n w--;\n }\n \n ;\n };\n u.push(t.substring(v, t.length));\n return u;\n };\n function s(t, u) {\n this.facebarConfig = t;\n this.unmapped = ((u || \"\")).trim();\n this.mapped = l(t, this.unmapped);\n this.position = null;\n };\n s.prototype.isEntity = function() {\n return (/^\\d+$/).test(this.mapped);\n };\n s.prototype.isURI = function() {\n return (this.mapped.indexOf(\"uri(\") === 0);\n };\n s.prototype.isImplemented = function() {\n return (this.mapped && (this.mapped.indexOf(\"*\") == -1));\n };\n s.prototype.getUnimplemented = function() {\n return ((this.mapped.match(/\\*[\\w\\-]+\\(/g) || [])).map(function(t) {\n return t.substr(1, (t.length - 2));\n });\n };\n s.prototype.getURI = function() {\n if (this.isEntity()) {\n return m(this.mapped);\n }\n else if (this.isURI()) {\n return n(this.facebarConfig, this.mapped);\n }\n else return o(this.facebarConfig, this.unmapped)\n \n ;\n };\n e.exports = s;\n});\n__d(\"FacebarURI\", [\"URI\",\"Env\",\"FacebarSemanticQuery\",], function(a, b, c, d, e, f) {\n var g = b(\"URI\"), h = b(\"Env\"), i = b(\"FacebarSemanticQuery\"), j = {\n getSearchRawPrefix: function() {\n return \"search\";\n },\n getSearchPath: function() {\n return ((\"/\" + this.getSearchRawPrefix()) + \"/\");\n },\n getURI: function(k, l) {\n var m = null, n = (!l.song && l.path);\n if (n) {\n m = new g(n);\n if ((l.type == \"user\")) {\n m.addQueryData({\n fref: \"ts\"\n });\n };\n }\n else {\n var o = new i(k, l.semantic);\n if ((o && o.isImplemented())) {\n m = o.getURI();\n };\n }\n ;\n return (m && j.getQualifiedURI(m));\n },\n getQualifiedURI: function(k) {\n var l = new g(k);\n if (!l.getDomain()) {\n var m = g(h.www_base);\n l.setProtocol(m.getProtocol()).setDomain(m.getDomain()).setPort(m.getPort());\n }\n ;\n return l;\n }\n };\n e.exports = j;\n});\n__d(\"BrowseNUXController\", [\"Event\",\"function-extensions\",\"Arbiter\",\"BrowseLogger\",\"BrowseNUXBootstrap\",\"BrowseNUXCheckpoint\",\"BrowseNUXMegaphone\",\"BrowseNUXTourDialog\",\"BrowseNUXTypewriter\",\"CSS\",\"DOM\",\"DOMScroll\",\"FacebarStructuredText\",\"FacebarURI\",\"KeyEventController\",\"LayerSlowlyFadeOnShow\",\"ModalMask\",\"PageTransitions\",\"Parent\",\"Run\",\"SubscriptionsHandler\",\"URI\",\"Vector\",\"copyProperties\",\"csx\",\"cx\",\"emptyFunction\",\"ge\",\"startsWith\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\");\n b(\"function-extensions\");\n var h = b(\"Arbiter\"), i = b(\"BrowseLogger\"), j = b(\"BrowseNUXBootstrap\"), k = b(\"BrowseNUXCheckpoint\"), l = b(\"BrowseNUXMegaphone\"), m = b(\"BrowseNUXTourDialog\"), n = b(\"BrowseNUXTypewriter\"), o = b(\"CSS\"), p = b(\"DOM\"), q = b(\"DOMScroll\"), r = b(\"FacebarStructuredText\"), s = b(\"FacebarURI\"), t = b(\"KeyEventController\"), u = b(\"LayerSlowlyFadeOnShow\"), v = b(\"ModalMask\"), w = b(\"PageTransitions\"), x = b(\"Parent\"), y = b(\"Run\"), z = b(\"SubscriptionsHandler\"), aa = b(\"URI\"), ba = b(\"Vector\"), ca = b(\"copyProperties\"), da = b(\"csx\"), ea = b(\"cx\"), fa = b(\"emptyFunction\"), ga = b(\"ge\"), ha = b(\"startsWith\"), ia = {\n init: function(ma) {\n ca(ia, {\n bootstrap: j.getFacebarData(),\n megaphone: new l(ma.megaphone),\n fragments: ma.fragments,\n resultURI: ma.resultURI,\n buttons: ma.buttons,\n dialogs: ma.dialogs,\n endDialog: ma.endDialog\n });\n k.init(ma.nextStep);\n h.inform(\"BrowseNUX/initialized\");\n ia.initMegaphoneHandler();\n },\n initMegaphoneHandler: function() {\n var ma = function() {\n return (k.getStep() == k.SHOW_MEGAPHONE);\n };\n h.subscribe(\"BrowseNUX/story\", function() {\n if (ma()) {\n ia.showStoryMegaphone();\n h.inform(\"BrowseNUX/starting\");\n }\n ;\n });\n h.subscribe(\"BrowseNUX/typeaheadUnit\", function() {\n if (ma()) {\n ia.showViewMegaphone();\n h.inform(\"BrowseNUX/starting\");\n }\n ;\n });\n },\n startAtNextStep: function() {\n var ma = w.getNextURI().getPath();\n switch (k.getStep()) {\n case k.SHOW_MEGAPHONE:\n break;\n case k.RESULTS_VIEW:\n if (ha(ma, s.getSearchPath())) {\n setTimeout(function() {\n ia.showEndDialog();\n h.inform(\"BrowseNUX/starting\");\n }, 2000);\n }\n else i.logNUXStep(\"abandon\");\n ;\n break;\n default:\n return;\n };\n y.onAfterLoad(function() {\n w.setCompletionCallback(ia.startAtNextStep);\n });\n },\n toggleSponsoredResults: function(ma) {\n var na = ia.bootstrap, oa = na.typeahead, pa = na.FacebarTypeaheadSponsoredResults;\n if (pa) {\n if (ma) {\n oa.enableBehavior(pa);\n }\n else oa.disableBehavior(pa);\n \n };\n },\n showMegaphone: function(ma) {\n var na = false, oa = ma.subscribe(\"start\", function() {\n na = true;\n ma.hide();\n ia.showSearchBarTour();\n }), pa = ma.subscribe(\"hide\", function() {\n na = true;\n i.logNUXStep(\"hide\");\n });\n i.logNUXStep(\"show_megaphone\");\n ia.prefetchResults();\n ka(function() {\n (na || i.logNUXStep(\"ignore\"));\n oa.unsubscribe();\n pa.unsubscribe();\n });\n },\n showViewMegaphone: function() {\n var ma = j.getTypeaheadUnitData();\n ia.showMegaphone(ma);\n },\n showStoryMegaphone: function() {\n var ma = (ga(\"contentArea\") || ga(\"content\"));\n if (ma) {\n var na = ia.megaphone, oa = j.getStoryData();\n na.setClass(oa.className);\n na.show(ma);\n ia.showMegaphone(na);\n }\n ;\n },\n prefetchResults: function() {\n var ma = ia.bootstrap.typeahead.getData(), na = ia.fragments;\n ma.query(r.fromStruct([na.page,]));\n ma.query(r.fromStruct([na.edge,na.page,]));\n },\n showSearchBarTour: function(ma) {\n var na = ia.dialogs;\n i.logNUXStep(\"start\");\n var oa = ia.bootstrap.input, pa = ia.bootstrap.typeahead, qa = la(pa);\n ia.toggleSponsoredResults(false);\n t.registerKey(\"BACKSPACE\", fa.thatReturnsFalse);\n oa.setEnabled(false);\n v.show();\n var ra = new m(na.search, pa), sa = new n(oa), ta = ia.fragments.page, ua = ta.text.toLowerCase(), va = function() {\n ra.showWithContext(oa.getRoot(), 0);\n }, wa = function() {\n oa.focus();\n sa.setValue(ua, function() {\n setTimeout(function() {\n oa.setStructure([ta,]);\n oa.moveSelectionToEnd();\n ja(pa, function() {\n ra.showButton();\n });\n }, 1000);\n });\n };\n setTimeout(va, 0);\n setTimeout(wa, 2000);\n var xa = new m(na.phrase, pa), ya = ia.fragments.edge;\n na.phrase.setOffsetY(-10);\n ra.setNextHandler(function() {\n i.logNUXStep(\"phrase\");\n sa.prependFragment(ya, function() {\n ja(pa, function() {\n var ab = pa.getView().getItems()[0];\n if (ab) {\n var bb = p.find(ab, \"span.-cx-PUBLIC-fbFacebarTypeaheadItem__label\");\n xa.showWithContext(bb, 1);\n }\n else xa.showWithContext(oa.getRoot(), 0);\n ;\n setTimeout(xa.showButton.bind(xa), 2000);\n });\n });\n });\n xa.setNextHandler(function() {\n i.logNUXStep(\"personalized\");\n k.setStep(k.RESULTS_VIEW, function() {\n qa.release();\n w.go(aa(ia.resultURI).addQueryData({\n view: \"list\"\n }));\n });\n });\n o.addClass(document.body, \"-cx-PUBLIC-fbBrowseNUX__shown\");\n function za() {\n ia.toggleSponsoredResults(true);\n sa.abort();\n qa.release();\n ra.reset();\n xa.reset();\n v.hide();\n oa.setEnabled(true);\n o.removeClass(document.body, \"-cx-PUBLIC-fbBrowseNUX__shown\");\n };\n if (ma) {\n ra.activateCloseButton(za);\n xa.activateCloseButton(za);\n }\n ;\n ka(za);\n },\n showEndDialog: function() {\n var ma = ia.bootstrap.input, na = ia.bootstrap.typeahead, oa = ia.endDialog;\n oa.enableBehavior(u);\n oa.show();\n i.logNUXStep(\"end_dialog\");\n k.setFinished();\n h.inform(\"BrowseNUX/finished\");\n var pa = function(sa) {\n ma.setStructure([]);\n ma.togglePlaceholder();\n ma.focus();\n if (o.hasClass(document.documentElement, \"tinyViewport\")) {\n var ta = new ba(0, 0, \"document\");\n q.scrollTo(ta, true, false, false, sa);\n }\n else if (sa) {\n sa();\n }\n ;\n }, qa = oa.subscribe(\"button\", function(sa, ta) {\n oa.hide();\n switch (ta.getAttribute(\"data-action\")) {\n case \"replay\":\n ia.showSearchBarTour(true);\n i.logNUXStep(\"replay\");\n break;\n case \"search\":\n pa();\n i.logNUXStep(\"search\");\n break;\n case \"cancel\":\n i.logNUXStep(\"cancel\");\n break;\n };\n }), ra = g.listen(oa.getRoot(), \"click\", function(event) {\n var sa = event.getTarget();\n if (sa) {\n var ta;\n if (sa.getAttribute(\"data-action\")) {\n ta = sa.getAttribute(\"data-action\");\n }\n else ta = sa.parentNode.getAttribute(\"data-action\");\n ;\n if (ta) {\n i.logNUXStep(ta);\n };\n }\n ;\n var ua = x.byClass(sa, \"-cx-PRIVATE-fbBrowseNUX__dialogsample\");\n if ((!ua || event.isDefaultRequested())) {\n return\n };\n oa.hide();\n pa(function() {\n var va = (ua.getAttribute(\"data-query\") + \" \"), wa = new n(ma), xa = la(na);\n setTimeout(function() {\n wa.setValue(va, function() {\n ja(na, function() {\n xa.release();\n w.go(ua.getAttribute(\"href\"));\n });\n });\n }, 1000);\n });\n return false;\n });\n ka(function() {\n ra.remove();\n qa.unsubscribe();\n });\n }\n };\n function ja(ma, na) {\n var oa = new h();\n oa.registerCallback(na, [\"timeout\",\"render\",]);\n setTimeout(oa.inform.bind(oa, \"timeout\"), 2000);\n var pa = setTimeout(ra, 6000), qa = ma.subscribe(\"render\", ra);\n function ra() {\n qa.unsubscribe();\n clearTimeout(pa);\n oa.inform(\"render\");\n };\n ka(qa.unsubscribe.bind(qa));\n };\n function ka(ma) {\n w.registerHandler(ma, 10);\n };\n function la(ma) {\n var na = new z(\"FacebarTypeaheadLock\");\n na.addSubscriptions(g.listen(ia.bootstrap.input.getRichInput(), \"keydown\", fa.thatReturnsFalse), ma.getCore().subscribe(\"close\", fa.thatReturnsFalse), ma.getView().subscribe([\"beforeHighlight\",\"beforeSelect\",], fa.thatReturnsFalse));\n return na;\n };\n e.exports = ia;\n});\n__d(\"FacebarResultStore\", [\"copyProperties\",\"concatMap\",\"FacebarResultStoreUtils\",\"TokenizeUtil\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"concatMap\"), i = b(\"FacebarResultStoreUtils\"), j = b(\"TokenizeUtil\"), k = \"unimplemented\";\n function l(m, n, o, p) {\n this.facebarConfig = m;\n this.facebarConfig.grammar_stop_words_penalty = (this.facebarConfig.grammar_stop_words_penalty || 2);\n this.facebarConfig.grammar_stop_words = (this.facebarConfig.grammar_stop_words || {\n });\n this.facebarConfig.options = p;\n this.tokenize = n;\n this.getEntry = o;\n this.typeaheadTypeMap = this.facebarConfig.mapped_types;\n this.facebarConfig.typeahead_types.forEach(function(q) {\n this.typeaheadTypeMap[q] = q;\n }.bind(this));\n this.resetCaches();\n this.cacheEnabled(true);\n };\n l.prototype.transformStructured = function(m) {\n var n = [], o = [], p = \"\", q = \"\";\n m.forEach(function(t, u) {\n if (t.isType(\"text\")) {\n p += t.getText();\n q = (((q == null)) ? null : (q + t.getText()));\n }\n else {\n var v = p.match(/\\\"/g);\n if ((v && (v.length % 2))) {\n p = (p.replace(/\\s+$/, \"\") + \"\\\"\");\n };\n if (p.length) {\n Array.prototype.push.apply(n, this.tokenize(p));\n o.push(p);\n p = \"\";\n }\n ;\n n.push(t.toStruct());\n o.push({\n uid: String(t.getUID()),\n type: this._getFBObjectType(t.getTypePart(1)),\n text: t.getText()\n });\n q = null;\n }\n ;\n }.bind(this));\n if (p.length) {\n if ((p[(p.length - 1)] == \"'\")) {\n p = p.substr(0, (p.length - 1));\n };\n Array.prototype.push.apply(n, this.tokenize(p));\n o.push(p);\n if ((p[(p.length - 1)] == \" \")) {\n n.push(\"\");\n };\n }\n ;\n var r = JSON.stringify(o), s = r.replace(/\\]$/, \"\").replace(/\\\"$/, \"\");\n s = s.replace(/\\s{2,}/g, \" \");\n return {\n tokens: n,\n text_form: r,\n is_empty: !!r.match(/^\\[(\\\"\\s*\\\")?\\]$/),\n raw_text: q,\n cache_id: s\n };\n };\n l.prototype.resetCaches = function() {\n this.bootstrapCache = {\n };\n this.queryCache = {\n \"\": {\n tokens: [],\n results: []\n }\n };\n };\n l.prototype.setNullState = function(m) {\n this.facebarConfig.null_state = m.map(this._extractStructure.bind(this));\n };\n l.prototype.addEntryToNullState = function(m) {\n if (this.facebarConfig.null_state) {\n var n = (this.facebarConfig.entity_cost + m.grammar_costs[((\"{\" + m.type) + \"}\")]), o = i.processEntityResult(m.type, m.uid, m.text, n);\n this.facebarConfig.null_state.unshift(o);\n }\n ;\n };\n l.prototype.setSortFunction = function(m) {\n this._sortFunction = m;\n };\n l.prototype.addBootstrap = function(m) {\n var n = this.bootstrapCache;\n m.forEach(function(o) {\n var p = this.getEntry(o);\n p.bootstrapped = true;\n var q = this.tokenize(p.textToIndex, true);\n if (p.tokens) {\n Array.prototype.push.apply(q, p.tokens.split(\" \"));\n };\n q.forEach(function(r) {\n if (!n.hasOwnProperty(r)) {\n n[r] = {\n };\n };\n n[r][o] = true;\n });\n }, this);\n };\n l.prototype.addNullStateToQueryCache = function(m) {\n this.saveResults(this.facebarConfig.null_state, m, true);\n };\n l.prototype.getResults = function(m) {\n if (((m.tokens.length === 0) || (((m.tokens.length == 1) && (m.tokens[0] === \"\"))))) {\n return {\n results: (this.facebarConfig.null_state || []),\n null_state: true\n }\n };\n var n = this._getBestQueryCache(m.cache_id), o = n.results, p = {\n }, q = this._getBootstrapMatchByType(m.tokens, p), r = this._addMatchingBootstrapResults(m.tokens, (q[0] || {\n }));\n Array.prototype.push.apply(r, h(this._getResultsFromCache.bind(this, q, m.tokens), o));\n var s = {\n }, t = [], u = false, v = 0;\n r.sort(this._sortFunction).forEach(function(w) {\n w.semantic = w.semantic.toLowerCase();\n if (!w.termMatches) {\n w.termMatches = p[parseInt(w.semantic, 10)];\n };\n var x = l.getUniqueSemantic(w.semantic);\n if (!x) {\n return\n };\n if (s[x]) {\n if (w.isJSBootstrapMatch) {\n s[x].isJSBootstrapMatch = true;\n s[x].bootstrapCost = w.bootstrapCost;\n }\n else if (((s[x].isJSBootstrapMatch && (w.backendCost !== undefined)) && (s[x].backendCost === undefined))) {\n s[x].backendCost = w.backendCost;\n }\n ;\n if (!!w.tags) {\n s[x].tags = w.tags;\n };\n return;\n }\n ;\n if ((u && w.blankFilled)) {\n return\n };\n if ((w.type.indexOf(\"browse_type\") >= 0)) {\n v += 1;\n if (((this.facebarConfig.maxGrammarResults !== undefined) && (v > this.facebarConfig.maxGrammarResults))) {\n return\n };\n }\n ;\n u = (u || !!w.blankFilled);\n s[x] = w;\n t.push(w);\n }.bind(this));\n return {\n results: t,\n webSuggOnTop: n.webSuggOnTop,\n webSuggLimit: n.webSuggLimit,\n webSuggLimitSeeMore: n.webSuggLimitSeeMore\n };\n };\n l.prototype.cacheEnabled = function(m) {\n this._enableCache = m;\n };\n l.prototype.saveResults = function(m, n, o, p) {\n m = m.map(this._processBackendResult.bind(this));\n var q = [];\n if (this._enableCache) {\n var r = {\n }, s = {\n };\n m.forEach(function(u) {\n s[u.semantic] = true;\n ((u.parse && u.parse.disambiguation) && u.parse.disambiguation.forEach(function(v) {\n r[v] = true;\n }));\n });\n var t = this._getBestQueryCache(n.cache_id);\n t.results.forEach(function(u) {\n if ((u.type === \"websuggestion\")) {\n return\n };\n if ((u.semanticForest in r)) {\n return\n };\n var v = this._getDifferenceArrayTokens(u.tokens, n.tokens), w = this._getNumTokensMatching(v, u);\n w = this._tryMatchingFinalInsertedEntity(v, w, u);\n if (((w > 0) && (w == v.length))) {\n u.cacheOnlyResult = !s[u.semantic];\n q.push(u);\n }\n ;\n }.bind(this));\n }\n ;\n m.forEach(function(u) {\n u.tokens = n.tokens;\n u.cache_id_length = n.cache_id.length;\n q.push(u);\n });\n if ((this.queryCache[n.cache_id] === undefined)) {\n this.queryCache[n.cache_id] = {\n };\n };\n g(this.queryCache[n.cache_id], {\n tokens: n.tokens,\n results: q,\n incomplete: o\n });\n g(this.queryCache[n.cache_id], p);\n };\n l.prototype.alreadyKnown = function(m) {\n return (!!this.queryCache[m] && !this.queryCache[m].incomplete);\n };\n l.prototype.stripBrackets = function(m) {\n return m.replace(/^[\\[\\{]/, \"\").replace(/[\\]\\}]$/, \"\");\n };\n l.prototype._extractStructure = function(m) {\n function n(q, r, s) {\n return {\n type: q,\n text: r,\n uid: (s || null)\n };\n };\n function o(q, r) {\n q.split(\" \").forEach(function(s) {\n if ((s !== \"\")) {\n if (r) {\n m.chunks.push(m.structure.length);\n };\n m.structure.push(n(\"text\", s));\n }\n ;\n m.structure.push(n(\"text\", \" \"));\n });\n m.structure.pop();\n };\n function p(q) {\n var r = ((((m.structure.length === 0) && (m.type != \"websuggestion\"))) ? (q.charAt(0).toUpperCase() + q.substr(1)) : q);\n return r;\n };\n m.structure = [];\n m.chunks = [];\n m.parse.display.forEach(function(q) {\n if ((typeof q === \"string\")) {\n o(p(q), true);\n }\n else if (q.uid) {\n var r = this.getEntry(q.uid, q.fetchType);\n m.chunks.push(m.structure.length);\n if (r.grammar_like) {\n o(p(r.text), false);\n }\n else {\n var s = q.type;\n if (q.fetchType) {\n s += (\":\" + q.fetchType);\n };\n m.structure.push(n(s, r.text, q.uid));\n }\n ;\n }\n else {\n m.chunks.push(m.structure.length);\n m.blankType = q.type.replace(/^blank:/, \"\");\n m.structure.push(n(q.type, \"\"));\n }\n \n ;\n }.bind(this));\n return m;\n };\n l.prototype._getDifferenceArrayTokens = function(m, n) {\n if (!m.length) {\n return [\"\",].concat(n)\n };\n var o = (m.length - 1), p = m[o];\n if ((p === \"\")) {\n p = m[--o];\n };\n return [((typeof (p) == \"string\") ? n[o].substr(p.length) : \"\"),].concat(n.slice((o + 1)));\n };\n l.prototype._processBackendResult = function(m) {\n m.semantic = m.semantic.toString();\n m.backendCost = m.cost;\n this._extractStructure(m);\n if (m.type.match(/^\\{.*\\}$/)) {\n m.useExtendedIndex = true;\n };\n if (m.semantic.match(/\\[.*\\]/)) {\n var n = m.parse, o = n.pos;\n if ((o === undefined)) {\n m.semantic = m.semantic.replace(/\\[(.*)\\]/g, \"$1\");\n }\n else {\n var p = n.remTokens[(n.remTokens.length - 1)];\n if ((n.remTokens.length && m.structure[m.chunks[p]].uid)) {\n o = n.remTokens[(n.remTokens.length - 1)];\n m.completed = true;\n }\n ;\n var q = m.structure[m.chunks[o]].uid;\n if ((q === null)) {\n m.semantic = m.semantic.replace(/\\[(\\d*)\\]/g, \"$1\");\n }\n else {\n var r = new RegExp(((\"\\\\[\" + q) + \"\\\\]\"), \"g\");\n m.unsubstituted_semantic = m.semantic;\n m.semantic = m.semantic.replace(r, q);\n if (((n && n.disambiguation) && (n.disambiguation.length > 0))) {\n n.disambiguation = n.disambiguation.filter(function(s) {\n return (s.indexOf(((\"[\" + q) + \"]\")) !== -1);\n });\n n.unsubstituted_disambiguation = n.disambiguation.splice(0);\n n.disambiguation = n.disambiguation.map(function(s) {\n return s.replace(r, q);\n });\n }\n ;\n }\n ;\n }\n ;\n }\n ;\n m.semantic = m.semantic.replace(/\\[(.*)\\]/g, \"$1\");\n m.tuid = JSON.stringify({\n semantic: m.semantic,\n structure: m.structure\n });\n return m;\n };\n l.prototype._sortFunction = function(m, n) {\n return (((m.cost || 0)) - ((n.cost || 0)));\n };\n l.prototype._getResultsFromCache = function(m, n, o) {\n var p = this._getDifferenceArrayTokens(o.tokens, n), q = [], r = this._getNumTokensMatching(p, o), s = this._tryMatchingFinalInsertedEntity(p, r, o);\n if (((s > 0) && (s == p.length))) {\n q.push(o);\n };\n o.bolding = this._computeBolding(o, p, 0);\n Array.prototype.push.apply(q, this._trySubstitutingBootstrapResult(m[(n.length - p.length)], o, p));\n if ((r <= 0)) {\n return q\n };\n var t = p.slice(r);\n r += (n.length - p.length);\n var u = {\n };\n if ((r == n.length)) {\n --r;\n if ((r < 0)) {\n return q\n };\n if ((n[r] !== \"\")) {\n u = this._computeBolding(o, p, 1);\n };\n }\n ;\n if (((r == (n.length - 1)) && (n[r] === \"\"))) {\n --r;\n if ((r < 0)) {\n return q\n };\n u = this._computeBolding(o, p, 1);\n }\n ;\n var v = function(w, x) {\n x.bolding = w;\n return x;\n }.bind(null, u);\n Array.prototype.push.apply(q, this._tryMatchingFinalBootstrapResult(m[r], t, o).map(v));\n return q;\n };\n l.prototype._addMatchingBootstrapResults = function(m, n) {\n return h(function(o) {\n var p = n[o];\n if ((p === undefined)) {\n return []\n };\n var q = [];\n p.forEach(function(r) {\n var s = this.getEntry(r, o);\n if (!this._isTitleTermMatch(m, s)) {\n return\n };\n var t = (this._isExactNameMatch(m, s) ? 0 : this.facebarConfig.non_title_term_match_penalty), u = this._isNonGrammarTermMatch(m, s), v = (((s.grammar_costs[((\"{\" + o) + \"}\")] + t) + this.facebarConfig.entity_cost) + (this.facebarConfig.grammar_stop_words_penalty * !u)), w = i.processEntityResult(o, r, s.text, v);\n w.bootstrapCost = v;\n w.isJSBootstrapMatch = true;\n q.push(w);\n }.bind(this));\n return q;\n }.bind(this), this.facebarConfig.bootstrap_types);\n };\n l.prototype._isTitleTermMatch = function(m, n) {\n var o = (m[0] || {\n });\n if ((typeof (o) == \"object\")) {\n return false\n };\n var p = n.titleToIndex;\n return ((m.length === 1) ? j.isPrefixMatch(o, p) : j.isExactMatch(o, p));\n };\n l.prototype._isExactNameMatch = function(m, n) {\n var o = (m[0] || {\n });\n if ((typeof (o) == \"object\")) {\n return 0\n };\n var p = n.text;\n if (((m.length === 1) ? j.isPrefixMatch(o, p) : j.isExactMatch(o, p))) {\n return true\n };\n return (((m.length == 1) && (n.alias !== undefined)) && j.isExactMatch(o, n.alias));\n };\n l.prototype._isNonGrammarTermMatch = function(m, n) {\n var o = j.parse(n.titleToIndex.toLowerCase()), p = o.tokens.filter(function(s) {\n return ((s !== \"\") && !this.facebarConfig.grammar_stop_words[s]);\n }.bind(this));\n p = p.join(\" \");\n for (var q = 0; (q < m.length); ++q) {\n if ((typeof (m[q]) == \"object\")) {\n return true\n };\n var r = ((q === (m.length - 1)) ? j.isPrefixMatch(m[q], p) : j.isQueryMatch(m[q], p));\n if (r) {\n return true\n };\n };\n return false;\n };\n l.prototype._getBootstrapMatchByType = function(m, n) {\n if ((m.length === 0)) {\n return []\n };\n var o = m.map(function() {\n return {\n };\n }), p = ((m[(m.length - 1)] === \"\")), q = {\n }, r, s = ((p ? (m.length - 1) : m.length));\n if ((s && m[(s - 1)].uid)) {\n this._pushBootstrapEntryAtPosition(o, (s - 1), m[(s - 1)].uid);\n return o;\n }\n ;\n for (var t in this.bootstrapCache) {\n if (((s && (t.indexOf(m[(s - 1)]) === 0)) && ((!p || (t === m[(s - 1)]))))) {\n for (r in this.bootstrapCache[t]) {\n if (!q[r]) {\n q[r] = 1;\n this._addMatchedTerm(r, t, n);\n this._pushBootstrapEntryAtPosition(o, (s - 1), r);\n }\n ;\n }\n };\n };\n for (var u = (s - 2); (u >= 0); u--) {\n if ((typeof (m[u]) == \"object\")) {\n break;\n };\n if ((m[u].length && (m[u][0] == \"\\\"\"))) {\n break;\n };\n for (r in this.bootstrapCache[m[u]]) {\n if (!q[r]) {\n q[r] = 0;\n };\n if (((q[r] + u) == (s - 1))) {\n ++q[r];\n this._addMatchedTerm(r, m[u], n);\n this._pushBootstrapEntryAtPosition(o, u, r);\n }\n ;\n };\n };\n return o;\n };\n l.prototype._addMatchedTerm = function(m, n, o) {\n (o[m] = (o[m] || [])).push(n);\n return o;\n };\n l.prototype._pushBootstrapEntryAtPosition = function(m, n, o) {\n var p = this.getEntry(o);\n if (!p) {\n return\n };\n for (var q in p.grammar_costs) {\n var r = this.stripBrackets(q);\n if ((m[n][r] === undefined)) {\n m[n][r] = [];\n };\n m[n][r].push(o);\n };\n };\n l.prototype._getNumTokensMatching = function(m, n) {\n var o = 0, p = n.parse, q = m.length, r = null, s = null;\n if ((p.pos !== undefined)) {\n var t = n.structure[n.chunks[p.pos]];\n r = t.uid;\n s = t.type.split(\":\")[2];\n }\n ;\n n.outputTokensUsed = [];\n n.termMatches = [];\n if (r) {\n o = this._prefixMatchEntity(m, p, r, n.outputTokensUsed, s, !!n.useExtendedIndex, n.termMatches);\n if (((o === 0) || (o === q))) {\n return o\n };\n }\n else if (((p.suffix && (q == 1)) && (p.suffix.indexOf(m[0]) === 0))) {\n return q;\n }\n else if ((p.suffix == m[0])) {\n ++o;\n }\n else return 0\n \n \n ;\n var u = [];\n for (var v = 0; (v < p.remTokens.length); v++) {\n if ((((typeof (m[o]) != \"string\") || (n.chunks.length < p.remTokens[v])) || n.structure[n.chunks[p.remTokens[v]]].uid)) {\n break;\n };\n var w = n.structure[n.chunks[p.remTokens[v]]].text;\n u.push(w.toLowerCase());\n };\n o = this._greedyMatchText(u, m, o, p.remTokens, n.outputTokensUsed);\n if (((o == (q - 1)) && (m[o] === \"\"))) {\n return q\n };\n return o;\n };\n l.prototype._prefixMatchEntity = function(m, n, o, p, q, r, s) {\n if ((n.entTokens.length === 0)) {\n if ((m[0] !== \"\")) {\n return 0\n };\n if (((n.possessive && (m.length > 1)) && (m[1] == \"'s\"))) {\n p.push([(n.pos + 1),]);\n return 2;\n }\n else return 1\n ;\n }\n ;\n var t = false, u = this.getEntry(o, q);\n if (((typeof (q) !== \"undefined\") && (q !== u.fetchType))) {\n return 0\n };\n var v = this.tokenize((r ? u.textToIndex : u.text), true), w = [];\n for (var x = 0; (x < ((m.length + n.entTokens.length) - 1)); x++) {\n if ((x < (n.entTokens.length - 1))) {\n w.push(n.entTokens[x]);\n }\n else if ((x == (n.entTokens.length - 1))) {\n w.push((n.entTokens[x] + m[0]));\n }\n else w.push(m[((x - n.entTokens.length) + 1)]);\n \n ;\n };\n var y = (-n.entTokens.length + 1);\n for (var z = 0; (z < w.length); ++z) {\n var aa = w[z];\n if ((typeof (aa) != \"string\")) {\n break;\n };\n if ((aa === \"\")) {\n y++;\n continue;\n }\n ;\n var ba = false;\n for (var ca = 0; (ca < v.length); ca++) {\n if (((v[ca] == aa) || (((z === (w.length - 1)) && (v[ca].indexOf(aa) === 0))))) {\n if (s) {\n s.push(v[ca]);\n };\n v[ca] = \"\";\n ba = true;\n ++y;\n break;\n }\n ;\n };\n if (ba) {\n continue;\n };\n if (((!n.possessive || (aa.length <= 2)) || (aa.substr((aa.length - 2)) != \"'s\"))) {\n break;\n };\n var da = aa.substr(0, (aa.length - 2));\n for (ca = 0; (ca < v.length); ca++) {\n if ((v[ca] == da)) {\n ++y;\n if (p) {\n t = true;\n };\n break;\n }\n ;\n };\n break;\n };\n if ((y > 0)) {\n if (t) {\n p.push([(n.pos + 1),]);\n };\n return y;\n }\n ;\n if ((p === undefined)) {\n return 0\n };\n var ea = m[0], fa = ea;\n if (((n.possessive && (ea.length >= 2)) && (ea.substr((ea.length - 2)) == \"'s\"))) {\n fa = ea.substr(0, (ea.length - 2));\n };\n if ((((((m.length == 1) && (n.suffix.indexOf(ea) === 0))) || (n.suffix == fa)) || (n.suffix == ea))) {\n if (((fa != ea) && (n.suffix == fa))) {\n p.push([(n.pos + 1),]);\n };\n return 1;\n }\n ;\n return 0;\n };\n l.prototype._tryMatchingFinalInsertedEntity = function(m, n, o) {\n if ((!o.completed || (n < 0))) {\n return n\n };\n var p = o.parse, q = p.remTokens[(p.remTokens.length - 1)], r = o.structure[o.chunks[q]], s = this.getEntry(r.uid, r.type), t = this.tokenize(s.text, true);\n n = this._greedyMatchText(t, m, n);\n if (((n == (m.length - 1)) && (m[n] === \"\"))) {\n return m.length\n };\n return n;\n };\n l.prototype._greedyMatchText = function(m, n, o, p, q) {\n for (var r = 0; (r < m.length); r++) {\n var s = m[r];\n if ((s == n[o])) {\n if ((q !== undefined)) {\n q.push(p[r]);\n };\n ++o;\n continue;\n }\n ;\n if (((o === (n.length - 1)) && (s.indexOf(n[o]) === 0))) {\n if ((q !== undefined)) {\n if ((s == n[o])) {\n q.push([p[r],]);\n }\n else q.push([p[r],n[o].length,]);\n \n };\n return n.length;\n }\n ;\n };\n return o;\n };\n l.prototype._createMapOverFinalBootstrapUids = function(m, n, o, p, q, r) {\n return function(s) {\n var t = this.getEntry(s, q);\n if (((t === undefined) || (r(s, t) === false))) {\n return\n };\n var u = {\n };\n g(u, m);\n if (!u.iconClass) {\n u.photo = t.photo;\n };\n u.cost = (((m.cost + l.EPSILON) + t.grammar_costs[((\"{\" + q) + \"}\")]) - o.grammar_costs[((\"{\" + q) + \"}\")]);\n u.cache_id_length = Infinity;\n u.structure = m.structure.slice(0);\n u.structure[m.chunks[p]] = {\n type: n.type,\n text: t.text,\n uid: s\n };\n u.blankFilled = true;\n var v = new RegExp(((\"\\\\[\" + n.uid) + \"\\\\]\"), \"g\");\n u.semantic = m.unsubstituted_semantic.replace(v, s);\n if (((u.parse && u.parse.disambiguation) && (u.parse.disambiguation.length > 0))) {\n u.parse.disambiguation = u.parse.unsubstituted_disambiguation.map(function(w) {\n return w.replace(v, s);\n });\n };\n u.tuid = JSON.stringify({\n semantic: u.semantic,\n structure: u.structure\n });\n return u;\n }.bind(this);\n };\n l.prototype._tryMatchingFinalBootstrapResult = function(m, n, o) {\n if (!o.completed) {\n return []\n };\n var p = o.parse, q = p.remTokens[(p.remTokens.length - 1)], r = o.structure[o.chunks[q]], s = r.type.substr(4).replace(\":blank\", \"\"), t = this.getEntry(r.uid, s), u = m[s];\n if ((((u === undefined) || (t === undefined)) || (t.grammar_costs === undefined))) {\n return []\n };\n return u.map(this._createMapOverFinalBootstrapUids(o, r, t, q, s, function(v, w) {\n return (n.length == this._greedyMatchText(this.tokenize(w.text), n, 0));\n }.bind(this))).filter(function(v) {\n return !!v;\n });\n };\n l.prototype._trySubstitutingBootstrapResult = function(m, n, o) {\n if ((((n.unsubstituted_semantic === undefined) || n.completed) || (n.type === k))) {\n return []\n };\n var p = n.parse.pos, q = n.structure[n.chunks[n.parse.pos]], r = q.type.substr(4), s = m[r];\n if ((s === undefined)) {\n return []\n };\n var t = this.getEntry(q.uid);\n if ((!t || (t.grammar_costs === undefined))) {\n return []\n };\n return s.map(this._createMapOverFinalBootstrapUids(n, q, t, p, r, function(u) {\n return (this._prefixMatchEntity(o, n.parse, u) === o.length);\n }.bind(this))).filter(function(u) {\n return !!u;\n });\n };\n l.prototype._computeBolding = function(m, n, o) {\n var p = {\n };\n if ((m.parse.pos !== undefined)) {\n var q = m.structure[m.chunks[m.parse.pos]];\n if (!q.uid) {\n p[m.chunks[m.parse.pos]] = ((q.text.length - m.parse.suffix.length) + n[0].length);\n };\n }\n ;\n m.parse.unmatch.forEach(function(t) {\n if ((typeof (t) == \"object\")) {\n p[m.chunks[t[0]]] = (m.structure[m.chunks[t[0]]].text.length - t[1].length);\n }\n else p[m.chunks[t]] = 0;\n ;\n });\n m.parse.remTokens.forEach(function(t) {\n p[m.chunks[t]] = 0;\n });\n for (var r = 0; (r < (m.outputTokensUsed.length - o)); r++) {\n var s = m.outputTokensUsed[r];\n if ((s.length == 1)) {\n delete p[m.chunks[s[0]]];\n }\n else p[m.chunks[s[0]]] = s[1];\n ;\n };\n return p;\n };\n l.prototype._getBestQueryCache = function(m) {\n for (var n = m.length; (n >= 0); n--) {\n var o = this.queryCache[m.slice(0, n)];\n if (o) {\n return o\n };\n };\n };\n l.prototype._getFBObjectType = function(m) {\n if (this.typeaheadTypeMap[m]) {\n return this.typeaheadTypeMap[m];\n }\n else return \"page\"\n ;\n };\n l.EPSILON = 0.00001;\n l.getUniqueSemantic = function(m) {\n var n = [], o = [], p = [];\n m = ((\"(\" + m) + \")\");\n var q = m, r = false;\n m.replace(/[\\(\\),]/g, function(s, t) {\n var u;\n switch (s) {\n case \",\":\n var v = (p.length - 1);\n u = q.substr(p[v], (t - p[v]));\n n[v].push(u);\n p[v] = (t + 1);\n break;\n case \"(\":\n p.push((t + 1));\n n.push([]);\n o.push((t + 1));\n break;\n case \")\":\n if ((p.length === 0)) {\n throw (m + \" is not a valid semantic string\")\n };\n var w = p.pop();\n u = q.substr(w, (t - w));\n var x = n.pop();\n x.push(u);\n var y = x.sort();\n for (var z = 1; (z < y.length); z++) {\n if ((y[z] == y[(z - 1)])) {\n r = true;\n };\n };\n var aa = y.join(\",\");\n q = ((q.substr(0, o.pop()) + aa) + q.substr(t));\n break;\n };\n return s;\n });\n if (r) {\n return \"\"\n };\n return q.replace(/\\((.*)\\)/, \"$1\");\n };\n e.exports = l;\n});\n__d(\"FacebarTokenizer\", [\"TokenizeUtil\",], function(a, b, c, d, e, f) {\n var g = b(\"TokenizeUtil\"), h = \"[^\\\"]\", i = [\"\\\\s's\",\"'s\",((\"\\\"\" + h) + \"*\\\"?\"),], j = [[/\\s+$/,\"\",],[/\\\"\\s+/,\"\\\"\",],[/\\s+\\\"/,\"\\\"\",],[/\\\"\\\"/,\"\",],[/^\\\"$/,\"\",],[/\\s+/,\" \",],], k = {\n tokenize: function(l, m) {\n var n = [], o = 0;\n l = l.replace(/\\s/g, \" \").toLowerCase();\n l.replace(new RegExp(i.join(\"|\"), \"g\"), function(q, r) {\n if ((r > o)) {\n var s = l.substr(o, (r - o));\n Array.prototype.push.apply(n, g.parse(s).tokens.slice(0));\n }\n ;\n var t = q;\n for (var u = 0; (u < j.length); u++) {\n var v = j[u];\n t = t.replace(v[0], v[1]);\n };\n if ((n.length && (t == \"'s\"))) {\n n[(n.length - 1)] += t;\n }\n else if ((t !== \"\")) {\n n.push(t);\n }\n ;\n if (m) {\n Array.prototype.push.apply(n, g.parse(q).tokens);\n };\n o = (r + q.length);\n });\n if ((o < l.length)) {\n var p = l.substr(o, (l.length - o));\n Array.prototype.push.apply(n, g.parse(p).tokens.slice(0));\n }\n ;\n return n;\n }\n };\n e.exports = k;\n});\n__d(\"ResultsBucketizer\", [], function(a, b, c, d, e, f) {\n function g(h, i) {\n this.$ResultsBucketizer0 = h;\n this.$ResultsBucketizer1 = i;\n };\n g.trimResults = function(h, i, j) {\n var k = [];\n h.forEach(function(l, m) {\n if ((l.indexBeforeBuckets > i)) {\n k.push({\n index: m,\n originalIndex: l.indexBeforeBuckets\n });\n };\n });\n k.sort(function(l, m) {\n return (l.originalIndex - m.originalIndex);\n }).slice(j).sort(function(l, m) {\n return (m.index - l.index);\n }).forEach(function(l) {\n h.splice(l.index, 1);\n });\n };\n g.mergeBuckets = function(h, i) {\n var j = [];\n for (var k in i) {\n if (!i[k].rule.hidden) {\n j.push(i[k]);\n };\n };\n j.sort(function(l, m) {\n var n = (((l.rule.position || 0)) - ((m.rule.position || 0)));\n if ((n !== 0)) {\n return n\n };\n return (l.results[0].indexBeforeBuckets - m.results[0].indexBeforeBuckets);\n });\n h.length = 0;\n j.forEach(function(l, m) {\n if (((l.rule.maxPromotions !== undefined) && (m < (j.length - 1)))) {\n g.trimResults(l.results, j[(m + 1)].results[0].indexBeforeBuckets, l.rule.maxPromotions);\n };\n Array.prototype.push.apply(h, l.results);\n }.bind(this));\n };\n g.prototype.$ResultsBucketizer2 = function(h, i) {\n if ((i.propertyName === undefined)) {\n return (i.bucketName || \"default\")\n };\n var j = this.$ResultsBucketizer1(h, i.propertyName);\n if (((j === undefined) || (((i.propertyValue !== undefined) && (j.toString() !== i.propertyValue))))) {\n return false\n };\n return (i.bucketName || (((i.propertyName + \".\") + j.toString())));\n };\n g.prototype.$ResultsBucketizer3 = function(h, i) {\n var j = {\n }, k = this.$ResultsBucketizer2.bind(this);\n h.forEach(function(l, m) {\n i.some(function(n) {\n var o = k(l, n);\n if ((o === false)) {\n return false\n };\n if ((j[o] === undefined)) {\n j[o] = {\n results: [],\n rule: n\n };\n };\n if ((!!n.maxResults && (j[o].results.length >= n.maxResults))) {\n return false\n };\n l.bucketLineage.push({\n bucketName: o,\n bucketIndex: j[o].results.length\n });\n j[o].results.push(l);\n return true;\n });\n });\n return j;\n };\n g.prototype.$ResultsBucketizer4 = function(h, i) {\n var j = this.$ResultsBucketizer0[i];\n if (!j) {\n return {\n }\n };\n var k = this.$ResultsBucketizer3(h, j);\n for (var l in k) {\n var m = k[l].rule.subBucketRules;\n if (!!m) {\n this.$ResultsBucketizer4(k[l].results, m);\n };\n };\n g.mergeBuckets(h, k);\n return k;\n };\n g.prototype.bucketize = function(h) {\n h.forEach(function(i, j) {\n i.bucketLineage = [];\n i.indexBeforeBuckets = j;\n });\n return this.$ResultsBucketizer4(h, \"main\");\n };\n e.exports = g;\n});\n__d(\"FacebarTypeaheadTypeNamedX\", [], function(a, b, c, d, e, f) {\n var g = {\n browse_type_user: \"user\",\n browse_type_page: \"page\",\n browse_type_place: \"place\",\n browse_type_group: \"group\",\n browse_type_application: \"app\"\n }, h = 1, i = 3;\n function j() {\n \n };\n j.addTypeNamedX = function(k, l, m, n) {\n var o = new j(), p = o.buildTypeNamedXBuckets((((l.entities || {\n })).results || []), (((l[\"isSeeMore.true\"] || {\n })).results || []), n), q = p[0], r = p[1];\n q.forEach(function(t, u) {\n t.bucketLineage.push({\n bucketName: \"promotedFromSeeMore\",\n bucketIndex: u\n });\n });\n var s = o.replaceResults(k, q);\n s.forEach(function(t, u) {\n t.bucketLineage.push({\n bucketName: \"demotedToSeeMore\",\n bucketIndex: u\n });\n });\n s.push.apply(s, r);\n r = s;\n if (m) {\n k.push.apply(k, r);\n };\n };\n j.prototype.buildTypeNamedXBuckets = function(k, l, m) {\n var n = {\n };\n k.forEach(function(v, w) {\n var x = (v.render_type || v.type);\n if ((n[x] === undefined)) {\n n[x] = {\n index: w,\n matchCount: 0\n };\n };\n if ((v.text.toLowerCase().indexOf(m.toLowerCase()) >= 0)) {\n n[x].matchCount++;\n };\n });\n var o = [], p = [], q, r;\n l.forEach(function(v) {\n if ((v.results_set_type == \"browse_type_story\")) {\n if ((v.isPostsAboutEnt === true)) {\n r = v;\n }\n else q = v;\n ;\n }\n else {\n var w = g[v.results_set_type];\n if (((n[w] !== undefined) && (n[w].matchCount >= h))) {\n o.push([v,n[w].index,]);\n }\n else p.push(v);\n ;\n }\n ;\n });\n o.sort(function(v, w) {\n return (v[1] - w[1]);\n });\n var s = o.map(function(v) {\n return v[0];\n });\n if ((r !== undefined)) {\n s.unshift(r);\n };\n if ((q !== undefined)) {\n s.unshift(q);\n };\n var t = s.slice(0, i), u = s.slice(i);\n return [t,u.concat(u, p),];\n };\n j.prototype.replaceResults = function(k, l) {\n var m = [];\n for (var n = 0; (n < l.length); n++) {\n var o = 0, p = -1;\n k.forEach(function(s, t) {\n if (((k[t].cost !== undefined) && (k[t].cost > o))) {\n p = t;\n o = k[t].cost;\n }\n ;\n });\n if ((p >= 0)) {\n m.push(k[p]);\n k.splice(p, 1);\n }\n ;\n };\n var q = k.length;\n while (((q > 0) && ((k[(q - 1)].type == \"websuggestion\")))) {\n q--;;\n };\n for (var r = 0; (r < l.length); r++) {\n k.splice(q, 0, l[r]);\n q++;\n };\n return m;\n };\n e.exports = j;\n});\n__d(\"FacebarDataSource\", [\"Arbiter\",\"AsyncRequest\",\"FacebarResultStore\",\"FacebarStructuredText\",\"FacebarTokenizer\",\"FacebarURI\",\"SearchDataSource\",\"Vector\",\"ViewportBounds\",\"copyProperties\",\"throttle\",\"FacebarTypeNamedXTokenOptions\",\"ResultsBucketizer\",\"ResultsBucketizerConfig\",\"FacebarTypeaheadTypeNamedX\",\"BingScalingCommon\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncRequest\"), i = b(\"FacebarResultStore\"), j = b(\"FacebarStructuredText\"), k = b(\"FacebarTokenizer\"), l = b(\"FacebarURI\"), m = b(\"SearchDataSource\"), n = b(\"Vector\"), o = b(\"ViewportBounds\"), p = b(\"copyProperties\"), q = b(\"throttle\"), r = b(\"FacebarTypeNamedXTokenOptions\"), s = b(\"ResultsBucketizer\"), t = b(\"ResultsBucketizerConfig\"), u = b(\"FacebarTypeaheadTypeNamedX\"), v = b(\"BingScalingCommon\"), w = 100, x = 250;\n for (var y in m) {\n if ((m.hasOwnProperty(y) && (y !== \"_metaprototype\"))) {\n aa[y] = m[y];\n };\n };\n var z = ((m === null) ? null : m.prototype);\n aa.prototype = Object.create(z);\n aa.prototype.constructor = aa;\n aa.__superConstructor__ = m;\n function aa(ba) {\n m.call(this, ba);\n this.filterOutWebSuggestion = true;\n this.bootstrap_saved = [];\n this.null_state = null;\n this._initialQueryData = null;\n this._curQueryId = -1;\n this._seeMore = false;\n this._waitingQueries = 0;\n this.mixGrammarAndEntity = ((ba.mixGrammarAndEntity !== undefined) ? ba.mixGrammarAndEntity : true);\n this.grammarVersion = (ba.grammarVersion || \"\");\n if (!ba.grammarOptions) {\n ba.grammarOptions = {\n };\n };\n this.recordingRoute = (ba.grammarOptions.recordingRoute || \"banzai_vital\");\n this._maxGrammarResults = ba.grammarOptions.maxGrammarResults;\n this._allowGrammar = (ba.allowGrammar !== false);\n this._webSearchLockedInMode = (ba.webSearchLockedInMode !== false);\n this.nullStateEndpoint = (ba.nullStateEndpoint || \"/ajax/browse/null_state.php\");\n this.setNullStateData((ba.nullStateData || {\n }), true);\n this._minWebSugg = (ba.minWebSugg || 1);\n this._minQueryLength = (ba.minQueryLength || -1);\n this.allowWebSuggOnTop = (ba.allowWebSuggOnTop || false);\n this._maxWebSuggToCountFetchMore = (ba.maxWebSuggToCountFetchMore || 0);\n this._fixProcessLean = (ba.grammarOptions.fixProcessLean || false);\n if ((ba.throttled === \"0\")) {\n this.executeQueryThrottled = this.executeQuery;\n this.sendRemoteQueryThrottled = this.sendRemoteQuery;\n }\n else {\n this.executeQueryThrottled = q(this.executeQuery, w, this);\n this.sendRemoteQueryThrottled = q(this.sendRemoteQuery, x, this);\n }\n ;\n this.resultStoreOptions = (ba.grammarOptions || {\n });\n this.resultStoreOptions.useNewExactNameMatch = ((ba.grammarOptions.useNewExactNameMatch === \"true\"));\n this._bypassBucketizer = false;\n this._resultsBucketizer = new s(t.rules, function(da, ea) {\n switch (ea) {\n case \"isSeeMore\":\n return da.isSeeMore;\n case \"objectType\":\n return da.type;\n case \"resultSetType\":\n return da.results_set_type;\n case \"renderType\":\n return (da.render_type || da.type);\n case \"cacheOnlyResult\":\n return da.cacheOnlyResult;\n case \"bootstrapped\":\n return da.bootstrapped;\n default:\n return (!!da.tags ? da.tags[ea] : undefined);\n };\n });\n var ca = new h().setURI(\"/ajax/typeahead/search/facebar/config.php\").setData({\n version: this.grammarVersion\n }).setMethod(\"GET\").setReadOnly(true).setAllowCrossPageTransition(true).setHandler(function(da) {\n this.facebarConfig = da.payload;\n this.createResultStore();\n if (this.null_state) {\n this.setNullState(this.null_state);\n this.null_state = null;\n }\n ;\n this.inform(\"ready\", true);\n }.bind(this)).setFinallyHandler(this.activityEnd.bind(this));\n this.activityStart();\n ca.send();\n this.fetchNullState();\n };\n aa.prototype.createResultStore = function() {\n this.facebarConfig.maxGrammarResults = this._maxGrammarResults;\n this.resultStore = new i(this.facebarConfig, k.tokenize, this.getEntry.bind(this), this.resultStoreOptions);\n this.addEntries(this.bootstrap_saved);\n if (this._fixProcessLean) {\n this._processLean();\n };\n this.bootstrap_saved = [];\n this.subscribe(\"enableCache\", function(ba, ca) {\n this.resultStore.cacheEnabled(ca);\n }.bind(this));\n this.subscribe(\"setSortFunction\", function(ba, ca) {\n this.resultStore.setSortFunction(ca);\n }.bind(this));\n };\n aa.prototype.dirty = function() {\n this.bootstrap_saved = [];\n this._nullStateFetched = false;\n if (this.resultStore) {\n this.resultStore.resetCaches();\n };\n z.dirty.call(this);\n };\n aa.prototype.addEntries = function(ba) {\n if (this.resultStore) {\n this.resultStore.addBootstrap(this.processEntries(ba));\n }\n else Array.prototype.push.apply(this.bootstrap_saved, ba);\n ;\n };\n aa.prototype._processLean = function() {\n if (this._fixProcessLean) {\n if ((this._leanPayload && this.resultStore)) {\n var ba, ca = this._leanPayload.entries;\n for (var da in ca) {\n ba = this.getEntry(da);\n if (!ba) {\n continue;\n };\n for (var ea in ca[da]) {\n if (!ba.grammar_costs) {\n ba.grammar_costs = {\n };\n };\n ba.grammar_costs[((\"{\" + ea) + \"}\")] = ca[da][ea];\n };\n };\n this.setExclusions(this._leanPayload.blocked);\n this._leanPayload = null;\n }\n ;\n }\n else z._processLean.call(this);\n ;\n };\n aa.prototype.setNullStateData = function(ba, ca) {\n if (ca) {\n this.nullStateData = {\n grammar_version: this.grammarVersion\n };\n };\n p(this.nullStateData, ba);\n return this;\n };\n aa.prototype.setNullState = function(ba) {\n if (this.resultStore) {\n this.processEntries(ba.entities);\n this.resultStore.setNullState(ba.queries);\n this.resultStore.addNullStateToQueryCache(this.getRawStructure(j.fromString(\"\")));\n this.inform(\"ready\", true);\n }\n ;\n };\n aa.prototype.allowGrammar = function() {\n return this._allowGrammar;\n };\n aa.prototype.isWebSearchLockedInModeEnabled = function() {\n return this._webSearchLockedInMode;\n };\n aa.prototype.fetchNullState = function() {\n if ((this._nullStateFetched || !this._allowGrammar)) {\n return\n };\n var ba = new h().setURI(this.nullStateEndpoint).setData(this.nullStateData).setMethod(\"GET\").setReadOnly(true).setAllowCrossPageTransition(true).setHandler(function(ca) {\n if (this.resultStore) {\n this.setNullState(ca.payload);\n }\n else this.null_state = ca.payload;\n ;\n this._nullStateFetched = true;\n }.bind(this)).setFinallyHandler(this.activityEnd.bind(this));\n this.activityStart();\n ba.send();\n };\n aa.prototype.toTypeaheadEntryUid = function(ba) {\n var ca, da = j.fromStruct(ba.structure), ea = da.getFragment(0);\n if (((da.getCount() == 1) && ea.isType(\"ent\"))) {\n var fa = ea.getType().split(\":\")[2];\n ca = this.getEntry(ea.getUID(), fa);\n ca.type = this.resultStore.stripBrackets(ba.type);\n }\n else {\n ca = this.getEntry(ba.tuid);\n if (!ca) {\n var fa, ga, ha;\n if ((ba.type === \"websuggestion\")) {\n fa = ba.type;\n ha = ba.iconClass;\n }\n else {\n fa = \"grammar\";\n ga = ba.type;\n ha = ba.iconClass;\n }\n ;\n ca = {\n dynamic_cost: ba.dynamic_cost,\n extra_uri_params: ba.extra_uri_params,\n icon_class: ha,\n memcache: ba.fromMemcache,\n photo: ba.photo,\n results_set_type: ga,\n tuid: ba.tuid,\n type: fa,\n uid: ba.tuid,\n tags: ba.tags,\n websuggestion_source: ba.websuggestion_source\n };\n this.processEntries([ca,]);\n ca = this.getEntry(ba.tuid);\n }\n ;\n }\n ;\n if (((ca.type === \"websuggestion\") || ba.isRedirect)) {\n ca.path = ba.path;\n };\n ca.error_info = ba.errorInfo;\n ca.logInfo = ba.logInfo;\n ca.structure = da;\n ca.text = ca.structure.toString();\n ca.queryTypeText = ba.queryTypeText;\n ca.semantic = ba.semantic;\n ca.tree = ba.tree;\n ca.cost = ba.cost;\n ca.isSeeMore = !!ba.isSeeMore;\n ca.isNullState = !!ba.isNullState;\n ca.entityInfo = ba.entityInfo;\n ca.cacheOnlyResult = (ba.cacheOnlyResult || false);\n ca.uri = (ca.uri || l.getURI(this.facebarConfig, ca));\n ca.semanticForest = ba.semanticForest;\n ca.entityTypes = ba.entityTypes;\n ca.parse = ba.parse;\n ca.tags = ba.tags;\n ca.isPostsAboutEnt = (ba.isPostsAboutEnt || false);\n ca.removable = true;\n if (ba.isJSBootstrapMatch) {\n ca.isJSBootstrapMatch = ba.isJSBootstrapMatch;\n ca.backendCost = ba.backendCost;\n ca.bootstrapCost = ba.bootstrapCost;\n }\n ;\n this._replaceCategoryWithTermMatches(ca, ba);\n if (((ba.parse && ba.parse.disambiguation) && (ba.parse.disambiguation.length > 0))) {\n ca.disambiguation_paths = [];\n for (var ia = 0; (ia < ba.parse.disambiguation.length); ia++) {\n var ja = {\n };\n ja.semantic = ba.parse.disambiguation[ia];\n var ka = l.getURI(this.facebarConfig, ja);\n if (ka) {\n ka.path = ka.path.replace(((\"/^/\" + l.getSearchRawPrefix()) + \"//\"), \"\");\n ca.disambiguation_paths.push(ka.path);\n }\n ;\n };\n }\n ;\n return ca.tuid;\n };\n aa.prototype._replaceCategoryWithTermMatches = function(ba, ca) {\n if ((((ba.type !== \"user\") || !ba.term_to_subtitle) || !ca.termMatches)) {\n return\n };\n var da = [];\n ca.termMatches.forEach(function(fa) {\n if (ba.term_to_subtitle[fa]) {\n da.push(ba.term_to_subtitle[fa]);\n };\n }.bind(this));\n if ((ba.category === undefined)) {\n ba.category = \"\";\n };\n var ea = ba.category.split(\" \\u00b7 \");\n ea.unshift.apply(ea, da);\n ea = ea.filter(function(fa, ga, ha) {\n return (ga == ha.indexOf(fa));\n });\n ba.category = ea.splice(0, 2).join(\" \\u00b7 \");\n };\n aa.prototype.getRawStructure = function(ba) {\n if ((typeof ba == \"string\")) {\n ba = j.fromString(ba);\n };\n if (this.resultStore) {\n return this.resultStore.transformStructured(ba.toArray())\n };\n };\n aa.prototype.isSeeMore = function() {\n return this._seeMore;\n };\n aa.prototype.saveResult = function(ba) {\n this._initialQueryData = ba.uid;\n };\n aa.prototype.buildUids = function(ba, ca, da) {\n if ((!ba || !this.resultStore)) {\n return []\n };\n if ((typeof ba == \"string\")) {\n ba = j.fromString(ba);\n };\n var ea = this.getRawStructure(ba), fa = this.resultStore.getResults(ea), ga = fa.results;\n if ((typeof ga === \"undefined\")) {\n return []\n };\n var ha = fa.webSuggOnTop;\n if ((typeof ha === \"undefined\")) {\n ha = false;\n };\n var ia = (fa.webSuggLimit || 0), ja = (fa.null_state === true), ka = (this.filterOutWebSuggestion && !ja), la = 0;\n ga = ga.filter(function(qa, ra) {\n if ((!this._allowGrammar && (qa.type == \"grammar\"))) {\n return false\n };\n if ((qa.type != \"websuggestion\")) {\n return ((qa.semantic != \"\\u003Cblank\\u003E\") && (((qa.type != \"unimplemented\") || (la++ === 0))));\n }\n else return !ka\n ;\n }.bind(this));\n var ma = ga.slice(), na = [], oa = [], pa = [];\n ga.forEach(function(qa) {\n if ((qa.forcedPosition > 0)) {\n pa.push(qa);\n }\n else if (qa.isSeeMore) {\n na.push(qa);\n }\n else oa.push(qa);\n \n ;\n });\n if (ja) {\n ga = this.orderNullState(ga, this.getMaxResults());\n }\n else {\n ga = v.integrateWebsuggestions(oa, Boolean(ha), this.getMaxResults(), ia, this._minWebSugg);\n ga.length = Math.min(ga.length, this.getMaxResults());\n }\n ;\n this.inform(\"decorateSeeMoreSuggestions\", {\n structured: ba,\n allResults: ma,\n selectedResults: ga,\n seeMoreResults: na\n });\n if ((pa.length > 0)) {\n pa.sort(function(qa, ra) {\n return (qa.forcedPosition - ra.forcedPosition);\n });\n pa.forEach(function(qa) {\n ga.splice(qa.forcedPosition, 0, qa);\n });\n }\n ;\n if ((na.length > 0)) {\n ga.push.apply(ga, na);\n };\n return ga.map(this.toTypeaheadEntryUid.bind(this));\n };\n aa.prototype.orderNullState = function(ba, ca) {\n var da = {\n top: [],\n bottom: [],\n middle: []\n }, ea = function(ha) {\n var ia = ha.null_state_position;\n return (da.hasOwnProperty(ia) ? ia : \"middle\");\n }, fa = function(ha, ia) {\n return (ha.original_cost - ia.original_cost);\n };\n (ba && ba.forEach(function(ha) {\n da[ea(ha)].push(ha);\n }.bind(this)));\n for (var ga in da) {\n da[ga] = da[ga].sort(fa).slice(0, ca);\n ca -= da[ga].length;\n };\n return [].concat(da.top, da.middle, da.bottom);\n };\n aa.prototype.handleResponse = function(ba, ca) {\n if (!(ba.payload.errors)) {\n this.processEntries(ba.payload.entities);\n this.filterOutWebSuggestion = true;\n for (var da = 0; (da < ba.payload.results.length); da++) {\n if ((ba.payload.results[da].type == \"websuggestion\")) {\n this.filterOutWebSuggestion = false;\n break;\n }\n ;\n };\n var ea = {\n };\n [\"webSuggOnTop\",\"webSuggLimit\",\"webSuggLimitSeeMore\",].forEach(function(fa) {\n if (ba.payload.hasOwnProperty(fa)) {\n ea[fa] = ba.payload[fa];\n };\n });\n this.resultStore.saveResults(ba.payload.results, ca, ba.payload.incomplete, ea);\n }\n ;\n };\n aa.prototype.processEntries = function(ba) {\n return ba.map(function(ca, da) {\n var ea = (ca.uid = (ca.uid + \"\"));\n ca.textToIndex = this.getTextToIndex(ca);\n ca.titleToIndex = this.getTitleTerms(ca);\n ea = this.getUID(ea, ca.fetchType);\n var fa = this.getEntry(ea);\n if (!fa) {\n this.setEntry(ea, {\n });\n fa = this.getEntry(ea);\n }\n ;\n p(fa, ca);\n fa.tokenVersion = ca.tokenVersion;\n fa.tuid = ea;\n ((fa.index === undefined) && (fa.index = da));\n return ea;\n }.bind(this));\n };\n aa.prototype.getUID = function(ba, ca) {\n ba = (ba + \"\");\n if ((ca !== undefined)) {\n ca = /([^:]+:)?([^:]+)(:.*)?/.exec(ca)[2];\n return JSON.stringify([ba,ca,]);\n }\n ;\n return ba;\n };\n aa.prototype.getEntry = function(ba, ca) {\n if ((ca !== undefined)) {\n var da = z.getEntry.call(this, this.getUID(ba, ca));\n if (da) {\n return da\n };\n }\n ;\n return z.getEntry.call(this, ba);\n };\n aa.prototype.getEntryForFragment = function(ba) {\n return this.getEntry(ba.getUID(), ba.getTypePart(2));\n };\n aa.prototype.getMaxResults = function() {\n return this._numResults.max;\n };\n aa.prototype.query = function(ba, ca, da, ea) {\n this.executeQueryThrottled(ba, ea, this._initialQueryData);\n this._initialQueryData = null;\n };\n aa.prototype.executeQuery = function(ba, ca, da) {\n this._seeMore = (ca === true);\n this._curQueryId++;\n this.setQueryData({\n qid: this._curQueryId,\n see_more: this._seeMore,\n max_results: ((this.getMaxResults() + r.additionalResultsToFetch))\n });\n this.inform(\"beforeQuery\", {\n value: ba,\n queryId: this.curQueryId\n });\n var ea = this.buildUids(ba, []);\n if (da) {\n ea = ea.filter(function(ga) {\n return (ga !== da);\n });\n ea.unshift(da);\n }\n ;\n this.value = ba;\n this.inform(\"query\", {\n value: ba,\n results: ea,\n see_more: this._seeMore,\n queryId: this._curQueryId\n });\n if (this.resultStore) {\n var fa = this.getRawStructure(ba);\n if (this.shouldFetchMore(fa, ea)) {\n this.sendRemoteQueryThrottled(fa, ba);\n };\n this.respond(ba, ea, false);\n }\n ;\n };\n aa.prototype.shouldFetchMore = function(ba, ca) {\n if (ba.is_empty) {\n return false\n };\n if (this._seeMore) {\n return true\n };\n if (this.resultStore.alreadyKnown(ba.cache_id)) {\n return false\n };\n if ((ba.raw_text && this._isQueryTooShort(ba.raw_text))) {\n return false\n };\n if ((ca.length < this.getMaxResults())) {\n return true\n };\n return (this.countValidResults(ca) < this.getMaxResults());\n };\n aa.prototype.countValidResults = function(ba) {\n var ca = 0, da = 0;\n ba.forEach(function(ea) {\n var fa = this.getEntry(ea);\n if ((fa && !fa.isNullState)) {\n if ((fa.type === \"websuggestion\")) {\n ca++;\n }\n else da++;\n \n };\n }.bind(this));\n return (da + Math.min(this._maxWebSuggToCountFetchMore, ca));\n };\n aa.prototype.sendRemoteQuery = function(ba, ca) {\n var da = new h().setURI(this.queryEndpoint).setData(this.getQueryData(ba.text_form)).setMethod(\"GET\").setReadOnly(true).setAllowCrossPageTransition(true).setHandler(function(ea, fa) {\n fa.queryId = ea;\n this.inform(\"response_received\", fa);\n this.handleResponse(fa, ba);\n this.respond(ca, this.buildUids(ca), true, (fa.payload && ((!fa.payload.results || (fa.payload.results.length === 0)))));\n this.inform(\"backend_response\", fa);\n }.bind(this, this._curQueryId)).setFinallyHandler(this.activityEnd.bind(this));\n this.inform(\"sending_request\", da);\n this.activityStart();\n da.send();\n };\n aa.prototype.activityStart = function() {\n if (!this._waitingQueries) {\n this.inform(\"activity\", {\n activity: true,\n seeMore: this._seeMore\n }, g.BEHAVIOR_STATE);\n };\n this._waitingQueries++;\n };\n aa.prototype.activityEnd = function() {\n this._waitingQueries--;\n if (!this._waitingQueries) {\n this.inform(\"activity\", {\n activity: false,\n seeMore: this._seeMore\n }, g.BEHAVIOR_STATE);\n };\n };\n aa.prototype._bucketizeResults = function(ba, ca) {\n var da = this._resultsBucketizer.bucketize(ca);\n u.addTypeNamedX(ca, da, this.isSeeMore(), ba.toString());\n };\n aa.prototype.setBypassBucketizer = function(ba) {\n this._bypassBucketizer = ba;\n };\n aa.prototype.respond = function(ba, ca, da, ea) {\n this.inform(\"reorderResults\", ca);\n this.inform(\"respondValidUids\", ca);\n var fa = ca.map(this.getEntry.bind(this));\n if (((!!ba && (((ba instanceof j) && !ba.isEmptyOrWhitespace()))) && !this._bypassBucketizer)) {\n this._bucketizeResults(ba, fa);\n };\n this.inform(\"respond\", {\n value: ba,\n results: fa,\n isAsync: !!da,\n isEmptyResults: ea,\n isScrollable: this.isSeeMore()\n });\n return fa;\n };\n aa.prototype._updateMaxResults = function() {\n var ba = n.getViewportDimensions().y, ca = (o.getTop() || 42), da = 56, ea = 48;\n this.setMaxResults(Math.max(this._numResults.min, Math.min(this._numResults.max, (Math.floor((((((ba - ca) - ea) - 25)) / da)) - 1))));\n };\n aa.prototype.getCurQueryId = function() {\n return this._curQueryId;\n };\n p(aa.prototype, {\n events: [\"query\",\"respond\",\"bootstrapped\",\"activity\",\"ready\",]\n });\n e.exports = aa;\n});\n__d(\"FacebarFragmentRenderer\", [\"Badge\",\"DOM\",], function(a, b, c, d, e, f) {\n var g = b(\"Badge\"), h = b(\"DOM\");\n function i(m, n, o) {\n var p = m.structure.getFragment(n), q = null, r = (m.bolding && m.bolding[n]);\n if ((typeof r == \"number\")) {\n q = [r,(p.getLength() - r),];\n }\n else if (r) {\n q = r;\n }\n ;\n var s = [p.getText(),];\n if (m.verified) {\n s.push(g(\"medium\", \"verified\"));\n };\n if ((q && q.length)) {\n return h.create(\"span\", {\n }, j(p.getText(), q, o));\n }\n else return h.create(\"span\", {\n className: ((m.bolding && o.unchanged) || \"\")\n }, s)\n ;\n };\n function j(m, n, o) {\n var p = [], q = false, r = 0;\n n.forEach(function(s) {\n var t = m.substr(r, s), u = (q ? o.changed : o.unchanged);\n if ((s && u)) {\n p.push(h.create(\"span\", {\n className: u\n }, t));\n }\n else p.push(t);\n ;\n r += s;\n q = !q;\n });\n return p;\n };\n function k(m, n) {\n var o = {\n };\n m.forEach(function(p, q) {\n if ((p.type.lastIndexOf(\"ent:\", 0) === 0)) {\n o[q] = l(n, p);\n };\n });\n return o;\n };\n function l(m, n) {\n var o = false, p = [];\n m.tokens.forEach(function(t) {\n if ((typeof t == \"object\")) {\n if ((t.uid == n.getUID())) {\n o = true;\n };\n }\n else {\n p.push(t);\n if (((t.length > 2) && (t.substr((t.length - 2)) == \"'s\"))) {\n p.push(t.substr(0, (t.length - 2)));\n };\n }\n ;\n });\n if (o) {\n return\n };\n var q = n.getText().split(\" \"), r = \"\", s = [];\n q.forEach(function(t, u) {\n var v = 0;\n p.forEach(function(w) {\n if (((w.length > v) && (t.toLowerCase().indexOf(w) === 0))) {\n v = w.length;\n };\n });\n r += t.substr(0, v);\n if ((v != t.length)) {\n s.push(r.length);\n s.push((t.length - v));\n r = \"\";\n }\n ;\n if ((u < (q.length - 1))) {\n r += \" \";\n };\n });\n s.push(r.length);\n return s;\n };\n e.exports = {\n renderFragment: i,\n computeEntBolding: k\n };\n});\n__d(\"FacebarTypeaheadItem\", [\"BrowseFacebarHighlighter\",\"CSS\",\"cx\",\"DOM\",\"FacebarFragmentRenderer\",\"FacebarRender\",\"fbt\",], function(a, b, c, d, e, f) {\n var g = b(\"BrowseFacebarHighlighter\"), h = b(\"CSS\"), i = b(\"cx\"), j = b(\"DOM\"), k = b(\"FacebarFragmentRenderer\"), l = b(\"FacebarRender\"), m = b(\"fbt\"), n = \"-cx-PUBLIC-fbFacebarTypeaheadItem__label\", o = \"-cx-PUBLIC-fbFacebarTypeaheadItem__labeltitle\", p = k.renderFragment;\n function q(s) {\n var t = s.getTypePart(0);\n return (t ? ((\"fragment\" + t.charAt(0).toUpperCase()) + t.substr(1)) : \"fragment\");\n };\n function r(s) {\n this._result = s;\n this._aux = null;\n this._debug = null;\n this._renderEducation = true;\n this._classes = ((s.classNames || \"\")).split(\" \");\n this.addClass(\"-cx-PRIVATE-fbFacebarTypeaheadItem__root\");\n this.addClass(\"-cx-PRIVATE-fbHighlightNodeDecorator__highlight\");\n this._shouldVAlign = true;\n this._messageButton = null;\n };\n r.prototype.setVAlign = function(s) {\n this._shouldVAlign = s;\n return this;\n };\n r.prototype.shouldVAlign = function() {\n return this._shouldVAlign;\n };\n r.prototype.addClass = function(s) {\n this._classes.push(s);\n };\n r.prototype.setAux = function(s) {\n this._aux = s;\n return this;\n };\n r.prototype.setShouldRenderEducation = function(s) {\n this._renderEducation = s;\n return this;\n };\n r.prototype.setDebug = function(s) {\n this._debug = s;\n return this;\n };\n r.prototype.setMessageButton = function(s) {\n this._messageButton = s;\n return this;\n };\n r.prototype.cacheable = function() {\n return (this._debug === null);\n };\n r.prototype.renderText = function() {\n return this._result.structure.toArray().map(function(s, t) {\n var u = p(this._result, t, {\n });\n return h.addClass(u, q(s));\n }.bind(this));\n };\n r.prototype.renderAux = function() {\n return (this._aux ? [this._aux,] : []);\n };\n r.prototype.renderSubtext = function() {\n return [];\n };\n r.prototype.renderIcon = function() {\n return [];\n };\n r.prototype.renderEduContent = function() {\n if (!this._renderEducation) {\n return []\n };\n var s = j.create(\"span\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadItem__usereducationkeytext\"\n }, \"Tab\"), t = m._(\"Use {tab} key to select\", [m.param(\"tab\", s),]);\n return j.create(\"span\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadItem__usereducationtext\"\n }, l.children(t));\n };\n r.prototype.highlight = function(s) {\n if ((!this._result.original_query || !h.hasClass(s, \"-cx-PRIVATE-fbFacebarTypeaheadItem__entityitem\"))) {\n return\n };\n var t = this._result.original_query.toString().trim(), u = t.split(\" \"), v = ((u.length > 1) ? [t,].concat(u) : [t,]);\n v = v.filter(function(w) {\n return ((w !== \"\"));\n });\n if (h.hasClass(s, \"-cx-PRIVATE-fbFacebarTypeaheadItem__entityitem\")) {\n g.highlight(s, v);\n };\n };\n r.prototype.render = function() {\n var s = this.renderAux(), t = this.renderIcon(), u = this.renderText(), v = this.renderEduContent(), w = this.renderSubtext(), x = this._debug, y = this._messageButton, z = l.span(o, l.children(u, w));\n h.conditionClass(z, \"-cx-PUBLIC-fbFacebarTypeaheadItem__valign\", (this.shouldVAlign() && w));\n var aa = l.span(n, [z,v,y,]);\n h.conditionClass(aa, \"-cx-PRIVATE-fbFacebarTypeaheadItem__hasmessagebutton\", y);\n var ba = j.create(\"a\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadItem__link\",\n href: this._result.uri,\n rel: \"ignore\"\n }, j.create(\"span\", {\n className: \"-cx-PUBLIC-fbFacebarTypeaheadItem__maincontent\"\n }, l.children(t, aa, x))), ca = j.create(\"span\", {\n className: \"-cx-PUBLIC-fbFacebarTypeaheadItem__auxcontent\"\n }, l.children(s, this._aux));\n if (t) {\n this._classes.push(\"-cx-PRIVATE-fbFacebarTypeaheadItem__hasicon\");\n };\n var da = j.create(\"li\", {\n className: this._classes.join(\" \")\n }, [ba,ca,]);\n da.setAttribute(\"aria-label\", this._result.structure.toString());\n return da;\n };\n e.exports = r;\n});\n__d(\"FacebarTypeaheadToken\", [\"cx\",\"FacebarRender\",], function(a, b, c, d, e, f) {\n var g = b(\"cx\"), h = b(\"FacebarRender\"), i = ((\" \" + \"\\u00b7\") + \" \"), j = \"-cx-PUBLIC-fbFacebarTypeaheadToken__root\", k = \"-cx-PUBLIC-fbFacebarTypeaheadToken__inner\", l = \"-cx-PUBLIC-fbFacebarTypeaheadToken__subtext\";\n function m(n, o) {\n this._text = n;\n this._limit = null;\n this._innerClass = (o ? o : k);\n this._showLeadingMiddot = false;\n this._separateMainText = true;\n };\n m.prototype.setLimit = function(n) {\n this._limit = n;\n return this;\n };\n m.prototype.setLeadingMiddot = function(n) {\n this._showLeadingMiddot = n;\n return this;\n };\n m.prototype.separateMainText = function(n) {\n this._separateMainText = n;\n return this;\n };\n m.prototype.getText = function() {\n return this._text;\n };\n m.prototype.render = function() {\n var n = this.getText();\n if (n.length) {\n (this._limit && n.splice(this._limit));\n n.forEach(function(r, s) {\n if (((s !== 0) || this._showLeadingMiddot)) {\n n[s] = [i,r,];\n };\n }.bind(this));\n var o = (this._separateMainText ? n.shift() : null), p = (n.length ? h.span(l, n) : null), q = h.span(j, h.span(this._innerClass, [o,p,]));\n return q;\n }\n ;\n };\n e.exports = m;\n});\n__d(\"FacebarTypeaheadEntityToken\", [\"FacebarTypeaheadToken\",\"DOM\",\"HTML\",], function(a, b, c, d, e, f) {\n var g = b(\"FacebarTypeaheadToken\"), h = b(\"DOM\"), i = b(\"HTML\"), j = \"\\u00b7\";\n for (var k in g) {\n if ((g.hasOwnProperty(k) && (k !== \"_metaprototype\"))) {\n m[k] = g[k];\n };\n };\n var l = ((g === null) ? null : g.prototype);\n m.prototype = Object.create(l);\n m.prototype.constructor = m;\n m.__superConstructor__ = g;\n function m(n) {\n g.call(this);\n this._entity = n;\n this._default = {\n };\n };\n m.prototype.setDefaultText = function(n, o) {\n this._default[n] = o;\n return this;\n };\n m.prototype.getText = function() {\n var n = [], o = {\n }, p = function(r) {\n r = r.trim();\n if (!o[r]) {\n n.push(r);\n o[r] = 1;\n }\n ;\n }, q = function(r) {\n if ((typeof r == \"object\")) {\n r = h.getText(i(r).getRootNode());\n };\n (r && r.split(j).map(p));\n };\n (this._entity.category ? q(this._entity.category) : n.push(this._default[this._entity.type]));\n q(this._entity.subtext);\n return n;\n };\n e.exports = m;\n});\n__d(\"FacebarTypeaheadEntityItem\", [\"CSS\",\"cx\",\"DOM\",\"FacebarTypeaheadItem\",\"FacebarTypeaheadEntityToken\",\"fbt\",\"TypeaheadFacepile\",\"FacebarRender\",], function(a, b, c, d, e, f) {\n var g = b(\"CSS\"), h = b(\"cx\"), i = b(\"DOM\"), j = b(\"FacebarTypeaheadItem\"), k = b(\"FacebarTypeaheadEntityToken\"), l = b(\"fbt\"), m = b(\"TypeaheadFacepile\"), n = b(\"FacebarRender\");\n for (var o in j) {\n if ((j.hasOwnProperty(o) && (o !== \"_metaprototype\"))) {\n q[o] = j[o];\n };\n };\n var p = ((j === null) ? null : j.prototype);\n q.prototype = Object.create(p);\n q.prototype.constructor = q;\n q.__superConstructor__ = j;\n function q(r) {\n j.call(this, r);\n this.addClass(\"-cx-PRIVATE-fbFacebarTypeaheadItem__entityitem\");\n };\n q.prototype.renderSubtext = function() {\n var r = n.span(\"DefaultText\", \"Timeline\");\n return new k(this._result).setDefaultText(\"user\", r).render();\n };\n q.prototype.renderIcon = function() {\n var r = (this._result.photos || this._result.photo);\n if (!r) {\n return null\n };\n if ((r instanceof Array)) {\n r = m.render(r);\n g.addClass(r, \"-cx-PRIVATE-fbFacebarTypeaheadItem__entitysplitpics\");\n return r;\n }\n else return i.create(\"img\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadItem__entityicon\",\n alt: \"\",\n src: r\n })\n ;\n };\n e.exports = q;\n});\n__d(\"FacebarDisambiguationDialog\", [\"Event\",\"BrowseLogger\",\"CSS\",\"cx\",\"Dialog\",\"DOM\",\"FacebarStructuredText\",\"FacebarTypeaheadEntityItem\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"BrowseLogger\"), i = b(\"CSS\"), j = b(\"cx\"), k = b(\"Dialog\"), l = b(\"DOM\"), m = b(\"FacebarStructuredText\"), n = b(\"FacebarTypeaheadEntityItem\"), o = b(\"tx\"), p = 650;\n function q(r, s, t, u, v) {\n this._sets = r;\n this._path = s;\n this._ondone = t;\n this._oncancel = u;\n this._selection = [];\n this._typeaheadSID = v;\n };\n q.prototype.show = function() {\n new k().setTitle(\"Which of these did you mean?\").setBody(this._createBody()).setContentWidth(p).setModal(true).setButtons([k.CONFIRM,k.CANCEL,]).setHandler(this._handleDone.bind(this)).setCancelHandler(this._handleCancel.bind(this)).show();\n this._sets.forEach(function(r) {\n var s = [];\n r.forEach(function(u) {\n s.push(u.uid);\n });\n var t = r[0];\n h.logDisambiguationImpression(t.text, t.type, this._path, s.join(\",\"), this._typeaheadSID);\n }.bind(this));\n };\n q.prototype._createBody = function() {\n var r = [];\n this._sets.forEach(function(s, t) {\n (r.length && r.push(l.create(\"li\", {\n className: \"-cx-PRIVATE-fbFacebarDisambiguationDialog__divider\"\n })));\n s.forEach(function(u) {\n var v = this._createItem(u, t);\n (this._selection[t] || this._selectItem(v));\n r.push(v.root);\n }.bind(this));\n }.bind(this));\n return l.create(\"ul\", {\n className: \"viewList disambiguationList\"\n }, r);\n };\n q.prototype._createItem = function(r, s) {\n var t = {\n uri: null,\n subtext: r.subtext,\n category: r.category,\n photo: r.photo,\n type: r.type,\n structure: m.fromStruct([{\n text: r.text,\n type: (\"ent:\" + r.type),\n uid: r.uid\n },])\n }, u = l.create(\"div\", {\n className: \"-cx-PRIVATE-fbFacebarDisambiguationDialog__check\"\n }), v = new n(t).setAux(i.hide(u)).setShouldRenderEducation(false).render(), w = {\n setId: s,\n result: r,\n root: v,\n check: u\n };\n i.addClass(v, \"-cx-PRIVATE-fbFacebarDisambiguationDialog__item\");\n g.listen(v, \"mouseover\", this._toggleHover.bind(this, w, true));\n g.listen(v, \"mouseout\", this._toggleHover.bind(this, w, false));\n g.listen(v, \"click\", function(event) {\n this._selectItem(w);\n return event.kill();\n }.bind(this));\n return w;\n };\n q.prototype._toggleHover = function(r, s) {\n i.conditionClass(r.root, \"selected\", s);\n };\n q.prototype._toggleCheck = function(r, s) {\n i.conditionShow(r.check, s);\n };\n q.prototype._selectItem = function(r) {\n var s = this._selection[r.setId];\n this._selection[r.setId] = r;\n (s && this._toggleCheck(s, false));\n this._toggleCheck(r, true);\n };\n q.prototype._handleDone = function(r) {\n this._ondone(((r == k.CONFIRM) ? this._selection.map(function(s) {\n var t = s.result;\n h.logDisambiguationClick(t.text, t.type, this._path, t.index, t.uid, this._typeaheadSID);\n return t;\n }.bind(this)) : null));\n };\n q.prototype._handleCancel = function() {\n this._oncancel();\n };\n e.exports = q;\n});\n__d(\"FacebarTypeahead\", [\"Arbiter\",\"Typeahead\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Typeahead\"), i = b(\"copyProperties\"), j = b(\"emptyFunction\");\n for (var k in h) {\n if ((h.hasOwnProperty(k) && (k !== \"_metaprototype\"))) {\n m[k] = h[k];\n };\n };\n var l = ((h === null) ? null : h.prototype);\n m.prototype = Object.create(l);\n m.prototype.constructor = m;\n m.__superConstructor__ = h;\n function m(n, o, p, q, r, s) {\n h.call(this, n, o, p, q);\n this.getCore();\n this.proxyEvents();\n this.initBehaviors((r || []));\n var t = this.core.subscribe(\"focus\", function() {\n if (s) {\n s.init(this);\n };\n this.core.unsubscribe(t);\n this.data.bootstrap(false);\n this.core.input.focus();\n }.bind(this));\n this.data.bootstrap(true);\n this.inform(\"init\", this, g.BEHAVIOR_PERSISTENT);\n g.inform(\"Facebar/init\", this, g.BEHAVIOR_PERSISTENT);\n };\n m.prototype.proxyEvents = function() {\n var n, o = [], p = null, q = (function() {\n while (n = o.shift()) {\n this.inform(n[0], n[1]);;\n };\n p = null;\n }).bind(this);\n [this.data,this.view,this.core,].forEach(function(r) {\n r.subscribe(r.events, function(s, t) {\n o.push([s,t,]);\n p = (p || q.defer());\n }.bind(this));\n }, this);\n };\n i(m.prototype, {\n init: j\n });\n e.exports = m;\n});\n__d(\"StructuredInputDOM\", [\"createArrayFrom\",\"CSS\",\"cx\",\"DOM\",], function(a, b, c, d, e, f) {\n var g = b(\"createArrayFrom\"), h = b(\"CSS\"), i = b(\"cx\"), j = b(\"DOM\"), k = {\n ENTITY_CLASS: \"-cx-PUBLIC-uiStructuredInput__entity\",\n encodeText: function(l) {\n return l.replace(/ /g, \"\\u00a0\");\n },\n decodeText: function(l) {\n return l.replace(/\\u00a0/g, \" \");\n },\n createIconNode: function(l) {\n if ((l && (typeof l == \"object\"))) {\n var m = j.create(\"i\", {\n className: l.className,\n style: (l.uri && {\n backgroundImage: ((\"url(\\\"\" + l.uri) + \"\\\")\")\n })\n });\n m.setAttribute(\"data-select\", \"ignore\");\n return m;\n }\n ;\n },\n createTextNode: function(l) {\n return j.create(\"span\", {\n \"data-si\": true\n }, k.encodeText((l || \"\")));\n },\n createEntityNode: function(l, m) {\n var n = k.encodeText(l.text), o = k.createIconNode(m.icon), p = j.create(\"span\", {\n }, (o ? [o,n,] : n)), q = ((m.className || \"\")).split(/\\s+/);\n q.push(k.ENTITY_CLASS);\n q.forEach(h.addClass.bind(h, p));\n var r = {\n si: true,\n uid: l.uid,\n type: l.type,\n text: n,\n fulltext: n,\n group: m.group,\n select: m.select,\n icon: JSON.stringify((m.icon || null))\n };\n for (var s in r) {\n if ((r[s] != null)) {\n p.setAttribute((\"data-\" + s), r[s]);\n };\n };\n return p;\n },\n convertToTextNode: function(l) {\n l.className = \"\";\n l.setAttribute(\"data-type\", \"text\");\n l.removeAttribute(\"data-group\");\n l.removeAttribute(\"data-select\");\n l.removeAttribute(\"data-icon\");\n l.removeAttribute(\"data-uid\");\n for (var m = l.firstChild; m; m = m.nextSibling) {\n if (!j.isTextNode(m)) {\n j.remove(m);\n };\n };\n },\n isEntityNode: function(l) {\n return (j.isElementNode(l) && h.hasClass(l, k.ENTITY_CLASS));\n },\n containsOnlyText: function(l, m) {\n m = g(m);\n for (var n = l.firstChild; n; n = n.nextSibling) {\n if (!((j.isTextNode(n) || (l.nodeName in m)))) {\n return false\n };\n };\n return true;\n },\n getText: function(l) {\n return j.getText(l).replace(/ /g, \"\\u00a0\");\n },\n getDecodedText: function(l) {\n return k.decodeText(j.getText(l));\n },\n getLength: function(l) {\n return j.getText(l).length;\n },\n getMarker: function(l, m, n) {\n var o = l.firstChild;\n while (o) {\n var p = k.getLength(o);\n if (((p > m) || !o.nextSibling)) {\n if ((j.isTextNode(o) || !n)) {\n return {\n node: o,\n offset: Math.min(m, p)\n };\n }\n else return k.getMarker(o, m)\n ;\n }\n else m -= p;\n ;\n o = o.nextSibling;\n };\n }\n };\n e.exports = k;\n});\n__d(\"StructuredInputUtil\", [\"StructuredInputDOM\",], function(a, b, c, d, e, f) {\n var g = b(\"StructuredInputDOM\");\n function h(n, o, p) {\n var q = n.substr(0, o).lastIndexOf(p);\n return ((q !== -1) ? (q + 1) : 0);\n };\n function i(n, o, p) {\n var q = n.indexOf(p, o);\n return ((q !== -1) ? q : n.length);\n };\n function j(n, o, p) {\n return ((((o === 0) || (o === n.length)) || (n.substr(o, p.length) == p)));\n };\n function k(n, o, p, q) {\n switch (o) {\n case \"none\":\n return p;\n case \"all\":\n return (q ? n.length : 0);\n case \"word\":\n if (j(n, p, \"\\u00a0\")) {\n return p;\n }\n else if (q) {\n return i(n, p, \"\\u00a0\");\n }\n else return h(n, p, \"\\u00a0\")\n \n ;\n };\n };\n function l(n, o) {\n return ((o && g.isEntityNode(n)) && !g.isEntityNode(o));\n };\n var m = {\n getMarkerAtOffset: function(n, o) {\n var p = n.firstChild, q = 0, r = 0;\n while (p) {\n q += r;\n r = g.getLength(p);\n if (((q + r) > o)) {\n break;\n }\n else p = p.nextSibling;\n ;\n };\n return {\n node: (p || n.lastChild),\n offset: (o - q)\n };\n },\n validateEntityText: function(n) {\n var o = g.getText(n), p = n.getAttribute(\"data-fulltext\"), q = n.getAttribute(\"data-group\");\n if ((q == \"hashtag\")) {\n var r = o.match(/#[^\\s]+/);\n p = (r && r[0]);\n }\n ;\n var s = o.indexOf(p), t = {\n prefix: null,\n entity: null,\n suffix: null\n };\n switch (q) {\n case \"none\":\n t.entity = o;\n break;\n case \"hashtag\":\n \n case \"all\":\n if ((s != -1)) {\n t.prefix = o.substr(0, s);\n t.entity = o.substr(s, p.length);\n t.suffix = o.substr((s + p.length));\n }\n else t.suffix = o;\n ;\n break;\n case \"word\":\n if ((s != -1)) {\n t.prefix = o.substr(0, s);\n o = o.substr(s);\n }\n ;\n var u = 0, v = 0;\n while ((u < p.length)) {\n v = i(p, (u + 1), \"\\u00a0\");\n if ((o.substr(0, v) != p.substr(0, v))) {\n break;\n }\n else u = v;\n ;\n };\n t.entity = (o.substr(0, u) || null);\n t.suffix = (o.substr(u) || null);\n };\n return t;\n },\n getGrouping: function(n, o) {\n var p = n.getAttribute(\"data-group\"), q = n.getAttribute(\"data-select\");\n if ((o == \"select\")) {\n return ((q == \"group\") ? p : \"none\");\n }\n else return p\n ;\n },\n snapMarkerToText: function(n, o) {\n var p = n.node;\n if (g.isEntityNode(p)) {\n var q = n.offset, r = m.getGrouping(p, o);\n if ((r != \"none\")) {\n if ((q === 0)) {\n var s = p.previousSibling;\n if (l(p, s)) {\n return {\n node: s,\n offset: g.getLength(s)\n }\n };\n }\n else if ((q == g.getLength(p))) {\n var t = p.nextSibling;\n if (l(p, t)) {\n return {\n node: t,\n offset: 0\n }\n };\n }\n \n \n };\n }\n ;\n return n;\n },\n nextMarkerBoundary: function(n, o, p) {\n var q = n.node;\n if ((g.isEntityNode(q) && ((!o || (n.offset !== 0))))) {\n var r = m.getGrouping(q, p);\n if ((r != \"none\")) {\n return {\n node: n.node,\n offset: k(g.getText(q), r, n.offset, o)\n }\n };\n }\n ;\n return n;\n }\n };\n e.exports = m;\n});\n__d(\"StructuredInputCleaner\", [\"DOM\",\"createArrayFrom\",\"copyProperties\",\"StructuredInputUtil\",\"StructuredInputDOM\",\"UserAgent\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"createArrayFrom\"), i = b(\"copyProperties\"), j = b(\"StructuredInputUtil\"), k = b(\"StructuredInputDOM\"), l = b(\"UserAgent\");\n function m(n, o) {\n this._node = n;\n this._wrapText = o;\n };\n m.prototype._cleanEntityNode = function(n) {\n var o = n.getAttribute(\"data-text\"), p = k.getText(n);\n n.style.cssText = \"\";\n if (((o == p) && k.containsOnlyText(n, {\n I: true\n }))) {\n return null\n };\n var q = [], r = j.validateEntityText(n), s = k.createIconNode(JSON.parse(n.getAttribute(\"data-icon\")));\n if ((!r.entity && ((((r.suffix && !r.prefix)) || ((r.prefix && !r.suffix)))))) {\n k.convertToTextNode(n);\n n.setAttribute(\"data-text\", p);\n return null;\n }\n ;\n if (r.prefix) {\n q.push(this._createTextNode(r.prefix));\n };\n if (r.entity) {\n g.setContent(n, (s ? [s,r.entity,] : r.entity));\n n.setAttribute(\"data-text\", r.entity);\n q.push(n);\n }\n ;\n if (r.suffix) {\n q.push(this._createTextNode(r.suffix));\n };\n return q;\n };\n m.prototype._removeSpecialNodes = function() {\n var n = h(this._node.getElementsByTagName(\"script\")), o = h(this._node.getElementsByTagName(\"style\"));\n n.forEach(g.remove);\n o.forEach(g.remove);\n };\n m.prototype._collapseNodes = function() {\n for (var n, o = this._node.firstChild; o; o = n) {\n n = o.nextSibling;\n if (((!g.isTextNode(o) && !k.isEntityNode(o)) && !k.containsOnlyText(o))) {\n for (var p = o.lastChild; p; p = o.lastChild) {\n this._node.insertBefore(p, n);\n n = p;\n }\n };\n };\n };\n m.prototype._createTextNode = function(n) {\n if (this._wrapText) {\n return k.createTextNode(n);\n }\n else return document.createTextNode(n)\n ;\n };\n m.prototype.replaceNodes = function(n, o) {\n if ((o == null)) {\n return\n };\n var p = (n.length ? n[(n.length - 1)].nextSibling : null);\n n.forEach(g.remove);\n o.forEach(function(q) {\n this._node.insertBefore(q, p);\n }.bind(this));\n };\n m.prototype.clean = function() {\n this._removeSpecialNodes();\n this._collapseNodes();\n var n = [], o = function() {\n if (n.length) {\n this.replaceNodes(n, this._cleanTextNodes(n));\n n.length = 0;\n }\n ;\n }.bind(this);\n h(this._node.childNodes).forEach(function(p) {\n if (k.isEntityNode(p)) {\n this.replaceNodes([p,], this._cleanEntityNode(p));\n o(n);\n }\n else n.push(p);\n ;\n }.bind(this));\n o();\n if ((!this._node.firstChild && l.firefox())) {\n this._node.appendChild(this._createTextNode());\n };\n };\n m.prototype.endOnText = function() {\n var n = function(o, p) {\n if (k.isEntityNode(o)) {\n this._node.insertBefore(this._createTextNode(), (p ? o : null));\n };\n }.bind(this);\n n(this._node.firstChild, true);\n n(this._node.lastChild, false);\n };\n i(m.prototype, {\n _cleanTextNodes: (function() {\n var n = function(p) {\n return (((p.nodeName === \"BR\") || ((p.nodeName === \"SPAN\") && o(p))));\n }, o = function(p) {\n return ((p.getAttribute(\"data-si\") && k.containsOnlyText(p)) && (k.getLength(p) > 0));\n };\n return function(p) {\n if (((p.length != 1) || !n(p[0]))) {\n var q = p.map(k.getText).join(\"\").replace(/\\s+/g, \" \");\n return (q ? [this._createTextNode(q),] : []);\n }\n else {\n p[0].style.cssText = \"\";\n return;\n }\n ;\n };\n })()\n });\n e.exports = m;\n});\n__d(\"DOMSelection\", [], function(a, b, c, d, e, f) {\n (function() {\n var g = this, h = {\n isPreceding: function(n, o) {\n return (o.compareDocumentPosition(n) & 2);\n },\n contains: function(n, o) {\n if ((n.compareDocumentPosition != null)) {\n return (n.compareDocumentPosition(o) & 16);\n }\n else return n.contains(o)\n ;\n },\n isCursorPreceding: function(n, o, p, q) {\n if ((n === p)) {\n return (o <= q)\n };\n if ((h.isText(n) && h.isText(p))) {\n return h.isPreceding(n, p)\n };\n if ((h.isText(n) && !h.isText(p))) {\n return !h.isCursorPreceding(p, q, n, o)\n };\n if (!h.contains(n, p)) {\n return h.isPreceding(n, p)\n };\n if ((n.childNodes.length <= o)) {\n return false\n };\n if ((n.childNodes[o] === p)) {\n return (0 <= q)\n };\n return h.isPreceding(n.childNodes[o], p);\n },\n isText: function(n) {\n return (((n != null) ? (n.nodeType == 3) : false));\n },\n getChildIndex: function(n) {\n var o = 0;\n while (n = n.previousSibling) {\n o++;;\n };\n return o;\n }\n }, i = g.Selection = (function() {\n function n(o) {\n this.win = o;\n };\n n.prototype.hasSelection = function() {\n return n.hasSelection(this.win);\n };\n n.prototype.isBidirectional = function() {\n return n.isBidirectional(this.win);\n };\n n.prototype.getOrigin = function() {\n return n.getOrigin(this.win);\n };\n n.prototype.getFocus = function() {\n return n.getFocus(this.win);\n };\n n.prototype.getStart = function() {\n return n.getStart(this.win);\n };\n n.prototype.getEnd = function() {\n return n.getEnd(this.win);\n };\n n.prototype.trySelection = function(o, p, q, r) {\n return n.trySelection(this.win, o, p, q, r);\n };\n n.prototype.setSelection = function(o, p, q, r) {\n return n.setSelection(this.win, o, p, q, r);\n };\n n.prototype.clearSelection = function() {\n return n.clearSelection(this.win);\n };\n return n;\n })();\n function j() {\n if ((g.document.selection && /MSIE 9\\./.test(navigator.userAgent))) {\n return false;\n }\n else return !!g.getSelection\n ;\n };\n if (j()) {\n i.supported = true;\n i.hasSelection = function(n) {\n var o;\n return (((o = n.getSelection()) && ((o.focusNode != null))) && ((o.anchorNode != null)));\n };\n i.isBidirectional = function(n) {\n return true;\n };\n i.getOrigin = function(n) {\n var o;\n if (!(((o = n.getSelection()) && ((o.anchorNode != null))))) {\n return null\n };\n return [o.anchorNode,o.anchorOffset,];\n };\n i.getFocus = function(n) {\n var o;\n if (!(((o = n.getSelection()) && ((o.focusNode != null))))) {\n return null\n };\n return [o.focusNode,o.focusOffset,];\n };\n i.getStart = function(n) {\n var o, p, q, r, s, t;\n if (!i.hasSelection(n)) {\n return null\n };\n s = i.getOrigin(n), o = s[0], q = s[1];\n t = i.getFocus(n), p = t[0], r = t[1];\n if (h.isCursorPreceding(o, q, p, r)) {\n return [o,q,]\n };\n return [p,r,];\n };\n i.getEnd = function(n) {\n var o, p, q, r, s, t;\n if (!i.hasSelection(n)) {\n return null\n };\n s = i.getOrigin(n), o = s[0], q = s[1];\n t = i.getFocus(n), p = t[0], r = t[1];\n if (h.isCursorPreceding(o, q, p, r)) {\n return [p,r,]\n };\n return [o,q,];\n };\n var k = function(n, o, p, q, s, t) {\n var u = o.getSelection();\n if (!u) {\n return\n };\n if ((s == null)) {\n s = p;\n };\n if ((t == null)) {\n t = q;\n };\n if ((u.collapse && u.extend)) {\n u.collapse(p, q);\n u.extend(s, t);\n }\n else {\n r = o.document.createRange();\n r.setStart(p, q);\n r.setEnd(s, t);\n if (((n || !i.hasSelection(o)) || (((((r.endContainer === s) && (r.endOffset === t)) && (r.startContainer === p)) && (r.startOffset === q))))) {\n try {\n u.removeAllRanges();\n } catch (v) {\n \n };\n u.addRange(r);\n }\n ;\n }\n ;\n };\n i.setSelection = k.bind(i, true);\n i.trySelection = k.bind(i, false);\n i.clearSelection = function(n) {\n try {\n var p = n.getSelection();\n if (!p) {\n return\n };\n p.removeAllRanges();\n } catch (o) {\n \n };\n };\n i.getText = function(n) {\n var o = n.getSelection();\n if (!o) {\n return\n };\n return o.toString();\n };\n }\n else if (g.document.selection) {\n var l = function(n, o, p) {\n var q, r, s, t, u;\n r = n.createElement(\"a\");\n q = o.duplicate();\n q.collapse(p);\n u = q.parentElement();\n while (true) {\n u.insertBefore(r, r.previousSibling);\n q.moveToElementText(r);\n if (!(((q.compareEndPoints(((p ? \"StartToStart\" : \"StartToEnd\")), o) > 0) && ((r.previousSibling != null))))) {\n break;\n };\n };\n if (((q.compareEndPoints(((p ? \"StartToStart\" : \"StartToEnd\")), o) === -1) && r.nextSibling)) {\n q.setEndPoint(((p ? \"EndToStart\" : \"EndToEnd\")), o);\n s = r.nextSibling;\n t = q.text.length;\n }\n else {\n s = r.parentNode;\n t = h.getChildIndex(r);\n }\n ;\n r.parentNode.removeChild(r);\n return [s,t,];\n }, m = function(n, o, p, q, r) {\n var s, t, u, v, w;\n w = 0;\n s = (h.isText(q) ? q : q.childNodes[r]);\n t = (h.isText(q) ? q.parentNode : q);\n if (h.isText(q)) {\n w = r;\n };\n v = n.createElement(\"a\");\n t.insertBefore(v, (s || null));\n u = n.body.createTextRange();\n u.moveToElementText(v);\n v.parentNode.removeChild(v);\n o.setEndPoint(((p ? \"StartToStart\" : \"EndToEnd\")), u);\n return o[(p ? \"moveStart\" : \"moveEnd\")](\"character\", w);\n };\n i.supported = true;\n i.hasSelection = function(n) {\n var o;\n if (!n.document.selection) {\n return false\n };\n o = n.document.selection.createRange();\n return (o && (o.parentElement().document === n.document));\n };\n i.getStart = function(n) {\n var o;\n if (!i.hasSelection(n)) {\n return null\n };\n o = n.document.selection.createRange();\n return l(n.document, o, true);\n };\n i.getEnd = function(n) {\n var o;\n if (!i.hasSelection(n)) {\n return null\n };\n o = n.document.selection.createRange();\n return l(n.document, o, false);\n };\n i.isBidirectional = function(n) {\n return false;\n };\n i.getOrigin = function(n) {\n return i.getStart(n);\n };\n i.getFocus = function(n) {\n return i.getEnd(n);\n };\n var k = function(n, o, p, q, r, s) {\n if ((r == null)) {\n r = p;\n };\n if ((s == null)) {\n s = q;\n };\n var t = o.document.body.createTextRange();\n m(o.document, t, false, r, s);\n m(o.document, t, true, p, q);\n return t.select();\n };\n i.setSelection = k.bind(i, true);\n i.trySelection = k.bind(i, false);\n i.clearSelection = function(n) {\n return n.document.selection.empty();\n };\n i.getText = function(n) {\n if (!i.hasSelection(n)) {\n return null\n };\n var o = n.document.selection.createRange();\n return (o && o.text);\n };\n }\n else i.supported = false;\n \n ;\n }).call(this);\n e.exports = Selection;\n});\n__d(\"StructuredInputSelection\", [\"DOMSelection\",\"Vector\",\"StructuredInputUtil\",\"StructuredInputDOM\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMSelection\"), h = b(\"Vector\"), i = b(\"StructuredInputUtil\"), j = b(\"StructuredInputDOM\");\n function k(m) {\n var n = m.ownerDocument;\n this.window = (n.defaultView || n.parentWindow);\n this.root = m;\n this.selection = false;\n this.start = new l(this, []);\n this.end = new l(this, []);\n this.update();\n };\n k.prototype.isSupported = function() {\n return !!((g && g.hasSelection));\n };\n k.prototype.update = function() {\n this.selection = false;\n if ((this.isSupported() && (this.root == document.activeElement))) {\n if (g.hasSelection(this.window)) {\n var m = g.getStart(this.window), n = g.getEnd(this.window), o = g.getFocus(this.window);\n this.start = this.makeMarker(m);\n this.end = this.makeMarker(n);\n this.backward = ((m[0] == o[0]) && (m[1] == o[1]));\n this.selection = (this.start.node && this.end.node);\n }\n \n };\n };\n k.prototype.makeMarker = function(m) {\n if ((m[0] === this.root)) {\n return new l(this, [this.root.childNodes[m[1]],0,]);\n }\n else return new l(this, m)\n ;\n };\n k.prototype.getFocus = function() {\n return (this.backward ? this.start : this.end);\n };\n k.prototype.getOrigin = function() {\n return (this.backward ? this.end : this.start);\n };\n k.prototype.move = function(m) {\n if (this.selection) {\n this.start.move(m);\n this.start.snap();\n this.end.setPosition(this.start);\n return this.apply();\n }\n ;\n };\n k.prototype.expand = function(m) {\n if (this.selection) {\n if (g.isBidirectional()) {\n this.start.move(!m);\n this.start.snap();\n this.end.move(m);\n this.end.snap();\n }\n ;\n return this.apply();\n }\n ;\n };\n k.prototype.getText = function() {\n if ((this.selection && this.isSupported())) {\n var m = g.getText(this.window);\n return m;\n }\n ;\n };\n k.prototype.getOffset = function() {\n if (this.selection) {\n return this.start.rootOffset\n };\n };\n k.prototype.getLength = function() {\n return ((this.getText() || \"\")).length;\n };\n k.prototype.setPosition = function(m, n) {\n this.backward = false;\n this.selection = true;\n this.start.setPosition(i.getMarkerAtOffset(this.root, m));\n this.start.snap();\n if ((n > 0)) {\n this.end.setPosition(i.getMarkerAtOffset(this.root, (m + n)));\n this.end.snap();\n }\n else this.end.setPosition(this.start);\n ;\n return this.apply();\n };\n k.prototype.hasRange = function() {\n return (this.selection && (((this.start.node != this.end.node) || (this.start.offset != this.end.offset))));\n };\n k.prototype.scrollToFocus = function() {\n var m = 5, n = this.getFocus();\n if (n.node) {\n var o = h.getElementDimensions(this.root).x, p = this.root.scrollLeft, q = (n.node.offsetLeft + n.node.offsetWidth);\n if (((q - p) < m)) {\n this.root.scrollLeft = (q - m);\n }\n else if (((q - p) > (o - m))) {\n this.root.scrollLeft = ((q - o) + m);\n }\n ;\n }\n ;\n };\n k.prototype.apply = function() {\n if ((this.start.hasChanged() || this.end.hasChanged())) {\n var m = this.getOrigin().getMarker(true), n = this.getFocus().getMarker(true);\n this.selection = ((((this.selection && m) && m.node) && n) && n.node);\n if ((this.selection && this.isSupported())) {\n this.start.changed = false;\n this.end.changed = false;\n g.trySelection(this.window, m.node, m.offset, n.node, n.offset);\n return true;\n }\n ;\n }\n ;\n };\n function l(m, n) {\n this.selection = m;\n this.node = n[0];\n this.offset = n[1];\n this.rootOffset = this.getRootOffset(n[0], n[1]);\n this.sibling = (this.node && this.node.previousSibling);\n this.changed = false;\n };\n l.prototype.hasChanged = function() {\n return (this.changed || !this.isNodeValid());\n };\n l.prototype.isNodeValid = function() {\n if ((j.getLength(this.node) > this.offset)) {\n var m = this.node;\n while (m = m.parentNode) {\n if ((m == this.selection.root)) {\n return true\n };\n };\n }\n ;\n };\n l.prototype.getMarker = function(m) {\n if ((this.isNodeValid() && ((((m && !this.node.firstChild)) || ((!m && (this.node.parentNode == this.selection.root))))))) {\n return this;\n }\n else return j.getMarker(this.selection.root, this.rootOffset, m)\n ;\n };\n l.prototype.move = function(m) {\n (this.node && this.setPosition(i.nextMarkerBoundary(this.getMarker(false), m, \"select\")));\n };\n l.prototype.snap = function() {\n (this.node && this.setPosition(i.snapMarkerToText(this.getMarker(false), \"select\")));\n };\n l.prototype.setPosition = function(m) {\n if (((m.offset != this.offset) || (m.node != this.node))) {\n this.changed = true;\n this.node = m.node;\n this.offset = m.offset;\n this.rootOffset = this.getRootOffset(this.node, this.offset);\n }\n ;\n };\n l.prototype.getRootOffset = function(m, n) {\n var o = 0, p = 5;\n while ((m && (o++ < p))) {\n if ((m === this.selection.root)) {\n return n;\n }\n else {\n var q = m;\n while (q = q.previousSibling) {\n n += j.getLength(q);;\n };\n m = m.parentNode;\n }\n ;\n };\n };\n e.exports = k;\n});\n__d(\"StructuredInput\", [\"Event\",\"Arbiter\",\"ArbiterMixin\",\"CSS\",\"cx\",\"csx\",\"DataStore\",\"DOM\",\"Input\",\"InputSelection\",\"Keys\",\"Parent\",\"requestAnimationFrame\",\"StructuredInputCleaner\",\"StructuredInputDOM\",\"StructuredInputSelection\",\"StructuredInputUtil\",\"Style\",\"UserAgent\",\"copyProperties\",\"createArrayFrom\",\"createObjectFrom\",\"emptyFunction\",\"mixin\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Arbiter\"), i = b(\"ArbiterMixin\"), j = b(\"CSS\"), k = b(\"cx\"), l = b(\"csx\"), m = b(\"DataStore\"), n = b(\"DOM\"), o = b(\"Input\"), p = b(\"InputSelection\"), q = b(\"Keys\"), r = b(\"Parent\"), s = b(\"requestAnimationFrame\"), t = b(\"StructuredInputCleaner\"), u = b(\"StructuredInputDOM\"), v = b(\"StructuredInputSelection\"), w = b(\"StructuredInputUtil\"), x = b(\"Style\"), y = b(\"UserAgent\"), z = b(\"copyProperties\"), aa = b(\"createArrayFrom\"), ba = b(\"createObjectFrom\"), ca = b(\"emptyFunction\"), da = 229, ea = ba([q.UP,q.DOWN,q.LEFT,q.RIGHT,]), fa = ba([q.BACKSPACE,q.DELETE,]), ga = ba([q.SPACE,q.RETURN,]), ha = ba(\"IUB\".split(\"\").map(function(qa) {\n return qa.charCodeAt(0);\n })), ia = y.firefox(), ja = y.ie(), ka = y.webkit(), la = b(\"mixin\"), ma = la(i);\n for (var na in ma) {\n if ((ma.hasOwnProperty(na) && (na !== \"_metaprototype\"))) {\n pa[na] = ma[na];\n };\n };\n var oa = ((ma === null) ? null : ma.prototype);\n pa.prototype = Object.create(oa);\n pa.prototype.constructor = pa;\n pa.__superConstructor__ = ma;\n function pa(qa) {\n m.set(qa, \"StructuredInput\", this);\n this._root = qa;\n this._richInput = n.find(qa, \".-cx-PUBLIC-uiStructuredInput__rich\");\n this._textInput = n.find(qa, \".-cx-PUBLIC-uiStructuredInput__text\");\n this._placeholderText = n.scry(qa, \".-cx-PUBLIC-uiStructuredInput__placeholder\")[0];\n this._hintText = n.find(qa, \".-cx-PUBLIC-uiStructuredInput__hint\");\n this._contentWidth = null;\n this._richWidth = null;\n this._hintNodes = [];\n this.init();\n };\n pa.prototype.init = function() {\n this.init = ca;\n this._initSelection();\n this._initCleaner();\n this._initInputs();\n this._initEvents();\n this._scheduledCleanInput = false;\n this._richChanged = false;\n this._textChanged = false;\n this._selectionChanged = false;\n this._selectionIgnore = false;\n this._imeMode = false;\n this.cleanInput();\n this.inform(\"init\", null, h.BEHAVIOR_PERSISTENT);\n };\n pa.prototype._initInputs = function() {\n this._richInput.contentEditable = true;\n this._richInput.spellcheck = false;\n this._richInput.tabIndex = 0;\n this._textInput.tabIndex = -1;\n this._multiline = (this._textInput.nodeName == \"TEXTAREA\");\n if (!j.shown(this._richInput)) {\n var qa = p.get(this._textInput);\n n.setContent(this._richInput, u.encodeText(o.getValue(this._textInput)));\n j.hide(this._textInput);\n j.show(this._richInput);\n this.cleanInput();\n this.setSelection({\n offset: qa.start,\n length: (qa.end - qa.start)\n });\n }\n ;\n this.togglePlaceholder();\n this._toggleHint();\n };\n pa.prototype._initEvents = function() {\n var qa = null;\n g.listen(this._richInput, \"keydown\", function(ra) {\n qa = ra.keyCode;\n if ((ra.ctrlKey && (ra.keyCode in ha))) {\n return ra.kill();\n }\n else if ((ra.keyCode in ea)) {\n this._selectionChanged = true;\n this.scheduleCleanInput(false);\n }\n else if ((ra.keyCode in fa)) {\n this._richChanged = true;\n this.scheduleCleanInput(true);\n if ((ra.keyCode === q.BACKSPACE)) {\n if (this._deleteTrailingChunk()) {\n return ra.kill()\n }\n };\n }\n else if ((ra.keyCode == da)) {\n this._imeMode = true;\n j.hide(this._placeholderText);\n }\n \n \n \n ;\n }.bind(this));\n g.listen(this._richInput, \"keyup\", function(ra) {\n if ((((this._imeMode || (ra.keyCode != qa))) && (ra.keyCode in ga))) {\n this._imeMode = false;\n this._richChanged = true;\n this.scheduleCleanInput();\n return ra.kill();\n }\n else if (this._imeMode) {\n this._textChanged = true;\n this.cleanInput();\n }\n \n ;\n }.bind(this));\n g.listen(this._richInput, \"keypress\", function(ra) {\n if ((ra.keyCode == q.RETURN)) {\n (this._multiline && this._insertText(\"\\u000a\"));\n return ra.kill();\n }\n else if ((!this._selectionChanged && this._selectionIsText())) {\n this._textChanged = true;\n this.scheduleCleanInput(false);\n }\n else {\n this._richChanged = true;\n this.scheduleCleanInput(true);\n }\n \n ;\n }.bind(this));\n g.listen(document, \"selectionchange\", function() {\n if (this._selectionIgnore) {\n this._selectionIgnore = false;\n }\n else this._selectionChanged = true;\n ;\n }.bind(this));\n g.listen(this._richInput, \"mousedown\", function() {\n this._selectionChanged = true;\n this._selectionLength = 0;\n this._selectionOffset = 0;\n }.bind(this));\n g.listen(this._richInput, \"mouseup\", function() {\n this._selectionChanged = true;\n s(this.cleanInput.bind(this));\n }.bind(this));\n g.listen(this._richInput, \"cut\", function() {\n this._richChanged = true;\n this.scheduleCleanInput(false);\n }.bind(this));\n g.listen(this._richInput, \"paste\", function(ra) {\n if (this._insertClipboard(((ra && ra.clipboardData) || window.clipboardData))) {\n return ra.kill();\n }\n else {\n this._richChanged = true;\n this.scheduleCleanInput(true);\n }\n ;\n }.bind(this));\n g.listen(this._richInput, \"drop\", function(ra) {\n this.focus();\n this.selectAll();\n this._insertClipboard((ra && ra.dataTransfer));\n return ra.kill();\n }.bind(this));\n g.listen(this._richInput, \"dragover\", function(ra) {\n ra.dataTransfer.dropEffect = \"move\";\n ra.dataTransfer.effectAllowed = \"move\";\n return ra.kill();\n });\n g.listen(this._richInput, \"focus\", function(ra) {\n this._toggleHint();\n this.inform(\"focus\");\n }.bind(this));\n g.listen(this._richInput, \"blur\", function(ra) {\n j.hide(this._hintText);\n this._imeMode = false;\n this._richChanged = true;\n this.scheduleCleanInput(false);\n this.inform(\"blur\");\n }.bind(this));\n };\n pa.prototype._initCleaner = function() {\n this._cleaner = new t(this._richInput, true);\n };\n pa.prototype._initSelection = function() {\n this._selection = new v(this._richInput);\n this._selectionLength = 0;\n this._selectionOffset = 0;\n };\n pa.prototype._insertClipboard = function(qa) {\n if ((qa && qa.getData)) {\n var ra = (qa.types && aa(qa.types));\n if (!ra) {\n this._insertText(qa.getData(\"Text\"));\n }\n else if ((ra.indexOf(\"text/html\") != -1)) {\n this._insertHTML(qa.getData(\"text/html\"));\n }\n else if ((ra.indexOf(\"text/plain\") != -1)) {\n this._insertText(qa.getData(\"text/plain\"));\n }\n \n ;\n return true;\n }\n else return false\n ;\n };\n pa.prototype._deleteTrailingChunk = function(qa) {\n var ra = this.getSelection();\n if (((ra.length > 0) || (ra.offset === 0))) {\n return false\n };\n var sa = (this.getSelection().offset - 1), ta = w.getMarkerAtOffset(this._richInput, sa);\n if (((ta && u.isEntityNode(ta.node)) && (w.getGrouping(ta.node, \"select\") !== \"none\"))) {\n n.remove(ta.node);\n return true;\n }\n ;\n return false;\n };\n pa.prototype._selectionIsText = function() {\n var qa = this._selection.start.node, ra = this._selection.end.node;\n return (((qa && (qa === ra)) && !u.isEntityNode(qa)) && !u.isEntityNode(qa.parentNode));\n };\n pa.prototype._insertText = function(qa) {\n if (qa) {\n var ra = n.create(\"div\", {\n }, qa);\n return this._insertNodes(ra);\n }\n ;\n };\n pa.prototype._insertNodes = function(qa) {\n if (document.selection) {\n document.selection.createRange().pasteHTML(qa.innerHTML);\n }\n else document.execCommand(\"insertHTML\", false, qa.innerHTML);\n ;\n this._richChanged = true;\n this.cleanInput();\n };\n pa.prototype.togglePlaceholder = function(qa) {\n if (!this._placeholderText) {\n return\n };\n var ra = (u.getLength(this._richInput) === 0);\n if ((qa && ra)) {\n j.show(this._placeholderText);\n }\n else j.conditionShow(this._placeholderText, (ra && !this._imeMode));\n ;\n };\n pa.prototype._toggleHint = function() {\n var qa = aa(this._hintNodes), ra = null, sa = \"\", ta = u.getText(this._richInput).toLowerCase();\n if (!this.hasFocus()) {\n return\n };\n if (this._contentOverflows()) {\n j.hide(this._hintText);\n return;\n }\n ;\n while ((qa.length && (sa.length < ta.length))) {\n ra = qa.shift();\n sa += u.getText(ra);\n };\n if ((ta.length && (sa.substr(0, ta.length).toLowerCase() == ta.toLowerCase()))) {\n n.setContent(this._hintText, aa(this._richInput.cloneNode(true).childNodes));\n var ua = u.createTextNode(sa.substr(ta.length));\n qa.unshift(ua);\n n.appendContent(this._hintText, n.create(\"span\", {\n className: \"-cx-PUBLIC-uiStructuredInput__hintsuffix\"\n }, qa));\n j.show(this._hintText);\n j.hide(this._placeholderText);\n }\n else j.hide(this._hintText);\n ;\n };\n pa.prototype._contentOverflows = function() {\n if ((this._richWidth === null)) {\n this._richWidth = this._richInput.clientWidth;\n };\n if ((this._contentWidth === null)) {\n var qa = this._richInput.lastChild;\n this._contentWidth = (n.isElementNode(qa) ? (qa.offsetLeft + qa.offsetWidth) : 0);\n }\n ;\n return (this._contentWidth > this._richWidth);\n };\n pa.prototype._forceTop = function() {\n if (!this._multiline) {\n this._richInput.scrollTop = 0;\n };\n this._root.scrollTop = 0;\n };\n pa.prototype._createStructureNodes = function(qa) {\n return qa.map(function(ra) {\n return ((ra.uid || ((ra.type && (ra.type != \"text\")))) ? u.createEntityNode(ra, (ra.display || {\n })) : u.createTextNode(ra.text));\n }.bind(this));\n };\n pa.prototype._suppressInput = function() {\n if ((ia || ja)) {\n if (this._richClean) {\n return\n };\n this._richClean = this._richInput.cloneNode(true);\n this._richClean.contentEditable = false;\n this._root.insertBefore(this._richClean, this._richInput.nextSibling);\n this._richClean.scrollLeft = this._richInput.scrollLeft;\n x.set(this._richInput, \"padding\", 0);\n x.set(this._richInput, \"height\", 0);\n }\n ;\n };\n pa.prototype._revealInput = function() {\n if (!this._richClean) {\n return\n };\n x.set(this._richInput, \"height\", \"\");\n x.set(this._richInput, \"padding\", \"\");\n this._root.removeChild(this._richClean);\n this.focus();\n this._richClean = null;\n };\n pa.prototype._cleanInput = function() {\n var qa;\n if ((this._textChanged && !this._richChanged)) {\n this._selection.update();\n qa = \"change\";\n }\n else if ((this._richChanged || this._selectionChanged)) {\n this._selection.update();\n if (this._richChanged) {\n this._contentWidth = null;\n this._cleaner.clean();\n this._cleaner.endOnText();\n this._selection.apply();\n qa = \"change\";\n }\n ;\n if (this._selectionChanged) {\n this._cleanSelection();\n if ((this._selectionLength || !this._richChanged)) {\n qa = \"select\";\n };\n }\n ;\n }\n \n ;\n this._revealInput();\n this._forceTop();\n if ((this._richChanged || this._textChanged)) {\n this.togglePlaceholder();\n this._toggleHint();\n }\n ;\n this._selectionIgnore = true;\n this._selectionChanged = false;\n this._richChanged = false;\n this._textChanged = false;\n (qa && this.inform(qa));\n };\n pa.prototype._cleanSelection = function() {\n var qa = this._selection.getLength(), ra = this._selection.getOffset();\n if (qa) {\n this._selection.expand((qa >= this._selectionLength));\n qa = this._selection.getLength();\n ra = this._selection.getOffset();\n }\n ;\n this._selectionLength = qa;\n this._selectionOffset = ra;\n };\n pa.prototype.cleanInput = function() {\n (this._scheduledCleanInput || this._cleanInput());\n };\n pa.prototype.scheduleCleanInput = function(qa) {\n (qa && this._suppressInput());\n if (!this._scheduledCleanInput) {\n this._scheduledCleanInput = true;\n s(function() {\n this._cleanInput();\n this._scheduledCleanInput = false;\n }.bind(this));\n }\n ;\n };\n pa.prototype.setEnabled = function(qa) {\n this._textInput.disabled = !qa;\n this._richInput.contentEditable = qa;\n };\n pa.prototype.getRoot = function() {\n return this._root;\n };\n pa.prototype.getRichInput = function() {\n return this._richInput;\n };\n pa.prototype.getEnabled = function() {\n return !this._textInput.disabled;\n };\n pa.prototype.getText = function() {\n return u.getDecodedText(this._richInput);\n };\n pa.prototype.setText = function(qa) {\n n.setContent(this._richInput, u.createTextNode(qa));\n this._richChanged = false;\n this._selectionChanged = false;\n this.inform(\"change\");\n };\n pa.prototype.setHint = function(qa) {\n this._hintNodes = this._createStructureNodes(qa);\n this._toggleHint();\n };\n pa.prototype.getStructure = function() {\n var qa = [];\n aa(this._richInput.childNodes).forEach(function(ra) {\n var sa = !n.isTextNode(ra), ta = u.getDecodedText(ra);\n (ta.length && qa.push({\n text: ta,\n uid: (sa ? ra.getAttribute(\"data-uid\") : null),\n type: (((sa && ra.getAttribute(\"data-type\"))) || \"text\")\n }));\n }.bind(this));\n return qa;\n };\n pa.prototype.setStructure = function(qa) {\n n.setContent(this._richInput, this._createStructureNodes(qa));\n this._cleaner.endOnText();\n this._cleaner.clean();\n this.togglePlaceholder();\n this._toggleHint();\n this._richChanged = false;\n this._selectionChanged = false;\n this.inform(\"change\");\n };\n pa.prototype.getContentDimensions = function() {\n var qa = this._richInput.lastChild;\n return {\n width: (qa ? (qa.offsetLeft + qa.offsetWidth) : 0),\n height: (qa ? (qa.offsetTop + qa.offsetHeight) : 0)\n };\n };\n pa.prototype.getSelection = function() {\n return {\n offset: this._selection.getOffset(),\n length: this._selection.getLength()\n };\n };\n pa.prototype.setSelection = function(qa) {\n if (this.hasFocus()) {\n this._selection.update();\n this._selection.setPosition(qa.offset, qa.length);\n this._selection.scrollToFocus();\n this._selectionChanged = false;\n this.inform(\"select\");\n }\n ;\n };\n pa.prototype.moveSelectionToEnd = function() {\n this.setSelection({\n length: 0,\n offset: u.getLength(this._richInput)\n });\n };\n pa.prototype.isSelectionAtEnd = function() {\n var qa = this.getSelection().offset, ra = u.getLength(this._richInput);\n return (qa >= ra);\n };\n pa.prototype.selectAll = function() {\n this.setSelection({\n offset: 0,\n length: u.getLength(this._richInput)\n });\n };\n pa.prototype.hasFocus = function() {\n return n.contains(this._root, document.activeElement);\n };\n pa.prototype.focus = function() {\n this._richInput.focus();\n };\n pa.prototype.blur = function() {\n var qa = n.create(\"input\", {\n type: \"text\",\n tabIndex: -1,\n style: {\n position: \"absolute\",\n top: 0,\n left: \"-100px\",\n width: \"1px\",\n height: \"1px\"\n }\n });\n n.appendContent(this._root, qa);\n var ra = function() {\n if ((this.hasFocus() || ((ka && (document.activeElement === document.body))))) {\n qa.focus();\n qa.blur();\n }\n ;\n };\n this.blur = ra;\n this.blur();\n };\n pa.getInstance = function(qa) {\n var ra = r.byClass(qa, \"-cx-PRIVATE-uiStructuredInput__root\");\n return (ra ? m.get(ra, \"StructuredInput\") : null);\n };\n z(pa.prototype, {\n _insertHTML: (function() {\n var qa = n.create(\"div\"), ra = new t(qa, false);\n return function(sa) {\n if (sa) {\n qa.innerHTML = sa;\n ra.clean();\n return this._insertNodes(qa);\n }\n ;\n };\n })()\n });\n e.exports = pa;\n});\n__d(\"FacebarTypeaheadWebSearch\", [\"startsWith\",\"FacebarStructuredFragment\",\"FacebarStructuredText\",], function(a, b, c, d, e, f) {\n var g = b(\"startsWith\"), h = b(\"FacebarStructuredFragment\"), i = b(\"FacebarStructuredText\"), j = new h({\n type: \"ent:websuggestion\",\n text: \"Web Search: \",\n uid: null\n }), k = j.getText().toLowerCase().trim();\n function l(o, p) {\n if ((!o || (o.type !== \"websuggestion\"))) {\n return\n };\n var q = p.getValue().toArray();\n q.forEach(function(r) {\n if (((r.isType(\"ent\") && !r.isType(\"ent\", \"user\")) && r.getUID())) {\n if (o.extra_uri_params) {\n o.extra_uri_params.qh = r.getUID();\n return;\n }\n \n };\n });\n };\n function m(o) {\n return (o.getType() === j.getType());\n };\n function n(o) {\n this._core = o.getCore();\n this._view = o.getView();\n this._input = this._core.input;\n this._isEnabled = false;\n };\n n.prototype.enable = function() {\n this._isEnabled = true;\n this.changeListener = this._input.subscribe(\"change\", this._changeWebSearch.bind(this));\n this.lockListener = this._input.subscribe(\"shortcut\", this._lockWebSearch.bind(this));\n this.beforeSelectListener = this._view.subscribe(\"beforeSelect\", this._beforeSelect.bind(this));\n this.beforeRenderListener = this._view.subscribe(\"beforeRender\", this._beforeRender.bind(this));\n };\n n.prototype._changeWebSearch = function() {\n var o = this._input.getValue(), p = o.toArray(), q = p[0];\n if ((q && (q.getType() === \"text\"))) {\n if (g(q.getText().toLowerCase(), k)) {\n p.splice(0, 1, j, new h({\n text: q.getText().substr(k.length).replace(/^ /, \"\")\n }));\n this._replaceFragments(p);\n }\n else if (((p.length > 1) && p.some(m))) {\n this._replaceFragments([new h({\n text: o.toString()\n }),]);\n }\n \n };\n };\n n.prototype._replaceFragments = function(o) {\n this._input.storeSelection();\n this._input.setValue(new i(o));\n this._input.restoreSelection();\n };\n n.prototype._beforeSelect = function(o, p) {\n l(p.selected, this._input);\n return true;\n };\n n.prototype._beforeRender = function(o, p) {\n var q = this._input.getValue().toArray()[0], r = (q && m(q));\n p.results.forEach(function(s) {\n if ((s.type === \"websuggestion\")) {\n s.isLockedWebSearchMode = r;\n };\n });\n return true;\n };\n n.prototype._lockWebSearch = function(o, p) {\n if (p.shift) {\n var q = this._input.getValue().toArray()[0];\n if ((!q || !m(q))) {\n this._input.setValue(new i([j,]));\n };\n }\n ;\n };\n n.prototype.disable = function() {\n this.beforeSelectListener.unsubscribe();\n this.changeListener.unsubscribe();\n this.lockListener.unsubscribe();\n this.beforeRenderListener.unsubscribe();\n this._isEnabled = false;\n };\n n.addPrefix = function(o) {\n if (!m(o.getFragment(0))) {\n var p = [j,].concat(o.toArray());\n return new i(p);\n }\n else return o\n ;\n };\n e.exports = n;\n});\n__d(\"FacebarTypeaheadCore\", [\"Event\",\"Arbiter\",\"ArbiterMixin\",\"Animation\",\"arrayContains\",\"Base64\",\"copyProperties\",\"csx\",\"CSS\",\"DOM\",\"FacebarStructuredText\",\"FacebarTypeaheadInput\",\"FacebarTypeaheadWebSearch\",\"invariant\",\"Keys\",\"startsWith\",\"Style\",\"URI\",\"mixin\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Arbiter\"), i = b(\"ArbiterMixin\"), j = b(\"Animation\"), k = b(\"arrayContains\"), l = b(\"Base64\"), m = b(\"copyProperties\"), n = b(\"csx\"), o = b(\"CSS\"), p = b(\"DOM\"), q = b(\"FacebarStructuredText\"), r = b(\"FacebarTypeaheadInput\"), s = b(\"FacebarTypeaheadWebSearch\"), t = b(\"invariant\"), u = b(\"Keys\"), v = b(\"startsWith\"), w = b(\"Style\"), x = b(\"URI\"), y = b(\"mixin\"), z = y(i);\n for (var aa in z) {\n if ((z.hasOwnProperty(aa) && (aa !== \"_metaprototype\"))) {\n ca[aa] = z[aa];\n };\n };\n var ba = ((z === null) ? null : z.prototype);\n ca.prototype = Object.create(ba);\n ca.prototype.constructor = ca;\n ca.__superConstructor__ = z;\n function ca(da) {\n m(this, da);\n };\n ca.prototype.init = function(da, ea, fa) {\n this.init = function() {\n \n };\n this.data = da;\n this.view = ea;\n this.root = fa;\n this.windowFocused = true;\n this.isFocused = false;\n this.keepOpen = false;\n this.hoverAnimation = null;\n this.stickyQuery = null;\n this.settedQuery = null;\n this.selectedQuery = null;\n this.currentQuery = null;\n this._prefillTextInInputField = this.data.allowGrammar();\n this._webSearchLockedInMode = this.data.isWebSearchLockedInModeEnabled();\n this.initSubcomponents();\n this.initEvents();\n this.checkValue();\n };\n ca.prototype.initSubcomponents = function() {\n var da = p.find(this.root, \".-cx-PUBLIC-fbFacebar__input\");\n this.input = new r(da);\n this.view.setInputElement(this.input.getRawInputElement());\n };\n ca.prototype.initEvents = function() {\n g.listen(this.root, \"keydown\", this.keydown.bind(this));\n g.listen(this.root.parentNode, \"mousedown\", this.mousedown.bind(this));\n g.listen(this.view.getElement(), \"mousedown\", this.mousedown.bind(this));\n g.listen(document.body, \"mouseup\", this.mouseup.bind(this));\n g.listen(window, \"focus\", this.focusWindow.bind(this));\n g.listen(window, \"blur\", this.blurWindow.bind(this));\n this.view.subscribe(\"select\", this.selectView.bind(this));\n this.view.subscribe(\"highlight\", this.highlightView.bind(this));\n this.view.subscribe(\"render\", this.highlightView.bind(this));\n this.view.subscribe(\"hideHelp\", this.performQuery.bind(this));\n this.input.subscribe(\"focus\", this.focusInput.bind(this));\n this.input.subscribe(\"blur\", this.blurInput.bind(this));\n this.input.subscribe(\"change\", this.changeInput.bind(this));\n this.data.subscribe(\"activity\", this.typeaheadActivity.bind(this));\n this.data.subscribe(\"respond\", this.completeData.bind(this));\n this.data.subscribe(\"ready\", this.typeaheadReady.bind(this));\n this.initFocus.bind(this).defer();\n };\n ca.prototype.initFocus = function() {\n if (p.contains(this.input.root, document.activeElement)) {\n this.isFocused = true;\n this._newSession();\n this.open();\n }\n ;\n };\n ca.prototype.cleanQuery = function(da) {\n da = (m({\n }, da) || {\n });\n if (!da.structure) {\n da.structure = new q();\n };\n if (!this._prefillTextInInputField) {\n da.structure = q.fromString(da.structure.toString());\n };\n t((da.structure instanceof q));\n if ((((da.type == \"websuggestion\") && this._prefillTextInInputField) && this._webSearchLockedInMode)) {\n da.structure = s.addPrefix(da.structure);\n };\n return da;\n };\n ca.prototype.setPageQuery = function(da) {\n da = this.cleanQuery(da);\n var ea = this.input.getValue(), fa = da.structure, ga = (!fa.isEmptyOrWhitespace() && ((ea.isEmptyOrWhitespace() || (ea.toString().trim() == fa.toString().trim()))));\n return this.selectQuery(da, ga);\n };\n ca.prototype.selectQuery = function(da, ea) {\n ea = (ea !== false);\n da = this.cleanQuery(da);\n if ((ea || !this.selectedQuery)) {\n if ((ea || this.getValue().isEmptyOrWhitespace())) {\n this.setQuery(da);\n };\n this.selectedQuery = da;\n }\n ;\n return da;\n };\n ca.prototype.completeSelection = function() {\n var da = this.view.getSelection();\n if ((da && !da.search)) {\n this.data.saveResult(da);\n this.setQuery(da);\n return true;\n }\n ;\n };\n ca.prototype.setQuery = function(da, ea) {\n da = this.cleanQuery(da);\n this.input.setValue(da.structure);\n this.settedQuery = da;\n this.stickyQuery = ((ea === false) ? this.stickyQuery : da);\n this.checkValue();\n };\n ca.prototype.checkValue = function() {\n if (((!this.view.visible || !this.dataSourceReady) || ((this.value && (this.value.getHash() == this.input.getValue().getHash()))))) {\n return\n };\n this.value = this.nextQuery = this.getValue();\n this.performQuery();\n };\n ca.prototype.performQuery = function() {\n this.data.query(this.nextQuery);\n this.currentQuery = this.nextQuery;\n };\n ca.prototype.expandView = function() {\n this.data.query(this.currentQuery, false, [], true);\n this.input.restoreSelection();\n };\n ca.prototype.collapseView = function() {\n this.requery();\n };\n ca.prototype.requery = function() {\n if (this.currentQuery) {\n this.data.query(this.currentQuery);\n };\n };\n ca.prototype.executeQuery = function(da) {\n da = this.cleanQuery(da);\n var ea = this.inform(\"execute\", da), fa = this.getSessionID();\n this.close();\n if (this._prefillTextInInputField) {\n this.selectQuery(da);\n }\n else this.selectQuery();\n ;\n if (!ea) {\n this._navigateToQuery(da, fa);\n };\n };\n ca.prototype.getSearchType = function() {\n return \"facebar\";\n };\n ca.prototype._newSession = function() {\n this._sessionID = Math.random().toString();\n this.inform(\"session\", this._sessionID, h.BEHAVIOR_STATE);\n };\n ca.prototype._closeSession = function() {\n this.inform(\"session\", null, h.BEHAVIOR_STATE);\n };\n ca.prototype.getSessionID = function() {\n return this._sessionID;\n };\n ca.prototype._navigateToQuery = function(da, ea) {\n var fa = this.data.facebarConfig;\n if (da.uri) {\n da.uri.addQueryData(da.extra_uri_params);\n da.uri.addQueryData({\n ref: \"br_tf\"\n });\n if ((da.structure && (((da.type == \"websuggestion\") || (((da.type == \"grammar\") && ((!fa || v(da.uri.getPath(), fa.search_path))))))))) {\n var ga = this.data.getRawStructure(da.structure).text_form, ha = l.encode(ga).replace(/\\=+$/, \"\"), ia = {\n sid: ea,\n qs: ha,\n gv: this.data.getQueryData().grammar_version\n }, ja = l.encode(JSON.stringify(ia)).replace(/\\=+$/, \"\");\n da.uri.addQueryData({\n ref: ja\n });\n }\n ;\n da.uri.go();\n return;\n }\n ;\n };\n ca.prototype.reset = function() {\n this.selectQuery();\n this.inform(\"reset\");\n };\n ca.prototype.animateInputValue = function(da, ea, fa) {\n (this.hoverAnimation && this.hoverAnimation.stop());\n var ga = new j(ea).from(\"opacity\", 1).to(\"opacity\", 0).duration(150).ondone(function() {\n this.input.setValue(fa);\n this.hoverAnimation = ha.go();\n }.bind(this)), ha = new j(da).from(\"opacity\", 0).to(\"opacity\", 1).duration(150).ondone(function() {\n this.hoverAnimation = null;\n w.set(ea, \"opacity\", \"\");\n w.set(da, \"opacity\", \"\");\n }.bind(this));\n w.set(da, \"opacity\", 0);\n this.hoverAnimation = ga.go();\n };\n ca.prototype.open = function() {\n o.addClass(document.body, \"facebarOpened\");\n this.inform(\"open\");\n this.view.show();\n this.input.focus();\n this.checkValue();\n if (!this.isFocused) {\n this.isFocused = true;\n this._newSession();\n this.inform(\"focus\");\n }\n ;\n };\n ca.prototype.close = function() {\n this._closeSession();\n if ((this.inform(\"close\") === false)) {\n return\n };\n if ((((!this.value || this.value.isEmptyOrWhitespace())) && this.selectedQuery)) {\n this.input.setValue(this.selectedQuery.structure);\n }\n else if (this.stickyQuery) {\n this.input.setValue(this.stickyQuery.structure);\n }\n ;\n this.input.blur();\n this.view.hide();\n this.view.setAutoSelect(false);\n this.inform(\"session\", null, h.BEHAVIOR_STATE);\n if (this.isFocused) {\n o.addClass(document.body, \"facebarClosing\");\n o.removeClass(document.body, \"facebarOpened\");\n o.removeClass.curry(document.body, \"facebarClosing\").defer(355);\n this.isFocused = false;\n this.inform.bind(this, \"blur\").defer();\n }\n ;\n };\n ca.prototype.getElement = function() {\n return this.root;\n };\n ca.prototype.getValue = function() {\n return this.input.getValue();\n };\n ca.prototype.getText = function() {\n return this.getValue().toString();\n };\n ca.prototype.keydown = function(event) {\n var da = true, ea = g.getKeyCode(event);\n switch (ea) {\n case u.ESC:\n this.close();\n break;\n case u.RIGHT:\n da = (this.input.isSelectionAtEnd() && this.completeSelection());\n break;\n case u.TAB:\n if ((event.getModifiers().shift || ((!this.completeSelection() && !this.loading)))) {\n this.view.setAutoSelect(false);\n this.view.hide();\n da = false;\n }\n ;\n break;\n case u.UP:\n this.view.prev();\n break;\n case u.DOWN:\n this.view.next();\n break;\n case u.RETURN:\n this.view.select();\n break;\n case u.PAGE_UP:\n this.view.first();\n break;\n default:\n if (((ea >= \"0\".charCodeAt(0)) && (ea <= \"z\".charCodeAt(0)))) {\n this.view.setAutoSelect(true);\n };\n this.stickyQuery = null;\n da = false;\n break;\n };\n this.input.storeSelection();\n if (da) {\n return event.kill()\n };\n };\n ca.prototype.mousedown = function() {\n this.view.setAutoSelect(true);\n this.input.storeSelection();\n this.keepOpen = true;\n };\n ca.prototype.mouseup = function(da) {\n if (this.keepOpen) {\n this.open();\n };\n this.keepOpen = false;\n };\n ca.prototype.focusWindow = function() {\n this.windowFocused = true;\n };\n ca.prototype.blurWindow = function() {\n this.windowFocused = false;\n };\n ca.prototype.selectView = function(da, ea) {\n if ((!ea || !ea.selected)) {\n return\n };\n ea.selected.see_more = this.data.isSeeMore();\n this.inform(\"select\", ea);\n var fa = this.cleanQuery(ea.selected);\n this.executeQuery(fa);\n };\n ca.prototype.highlightView = function() {\n var da = this.view.getSelection();\n (da && this.input.setHint(da.structure));\n };\n ca.prototype.blurInput = function() {\n setTimeout((function() {\n if ((this.windowFocused || (x.getRequestURI().getSubdomain() == \"apps\"))) {\n this.input.togglePlaceholder();\n if (!this.keepOpen) {\n this.close();\n };\n }\n ;\n }).bind(this), 0);\n };\n ca.prototype.changeInput = function() {\n this.inform(\"change\");\n this.checkValue();\n this.inform(\"change_end\");\n };\n ca.prototype.focusInput = function() {\n this.open();\n this.input.togglePlaceholder(false);\n };\n ca.prototype.typeaheadReady = function() {\n this.dataSourceReady = true;\n this.checkValue();\n };\n ca.prototype.updateData = function() {\n this.view.setLoading(this.loading);\n };\n ca.prototype.completeData = function(da, ea) {\n if ((ea.forceDisplay || ((this.value && this.value.matches(ea.value))))) {\n this.view.render(ea.value, ea.results, ea.isAsync, (((ea.results.length === 0)) && ea.isEmptyResults), ea.isScrollable);\n };\n };\n ca.prototype.typeaheadActivity = function(da, ea) {\n this.fetching = ea.activity;\n if ((this.loading != this.fetching)) {\n this.loading = this.fetching;\n this.updateData();\n }\n ;\n };\n ca.prototype.getNameTextFromSelected = function() {\n var da = (this.settedQuery && this.settedQuery.semantic), ea = (this.data.facebarConfig && this.data.facebarConfig.name_functions), fa = ((da && ea) && da.match(/[a-z-]+\\([^()]+\\)/g));\n if (fa) {\n for (var ga = 0; (ga < fa.length); ga++) {\n var ha = fa[ga].match(/([a-z-]+)\\(([^()]+)\\)/);\n if ((ha && k(ea, ha[1]))) {\n return ha[2]\n };\n }\n };\n return this.value.toString();\n };\n m(ca.prototype, {\n events: [\"session\",\"focus\",\"select\",\"change\",\"execute\",\"blur\",],\n dataSourceReady: false\n });\n e.exports = ca;\n});\n__d(\"FacebarTypeaheadHighlighter\", [], function(a, b, c, d, e, f) {\n function g(h) {\n this.$FacebarTypeaheadHighlighter0 = h.getCore();\n this.$FacebarTypeaheadHighlighter1 = this.$FacebarTypeaheadHighlighter0.view;\n };\n g.prototype.enable = function() {\n this.$FacebarTypeaheadHighlighter2 = this.$FacebarTypeaheadHighlighter1.subscribe(\"filter\", this.$FacebarTypeaheadHighlighter3.bind(this));\n };\n g.prototype.disable = function() {\n this.$FacebarTypeaheadHighlighter2.unsubscribe();\n };\n g.prototype.$FacebarTypeaheadHighlighter3 = function(h, event) {\n var i = event.results, j = event.value;\n i.forEach(function(k) {\n k.original_query = j;\n });\n };\n e.exports = g;\n});\n__d(\"FacebarTypeaheadRecorder\", [\"clickRefAction\",\"copyProperties\",\"Env\",\"Event\",\"Keys\",\"ScubaSample\",\"SearchTypeaheadRecorder\",\"URI\",\"userAction\",\"Arbiter\",], function(a, b, c, d, e, f) {\n var g = b(\"clickRefAction\"), h = b(\"copyProperties\"), i = b(\"Env\"), j = b(\"Event\"), k = b(\"Keys\"), l = b(\"ScubaSample\"), m = b(\"SearchTypeaheadRecorder\"), n = b(\"URI\"), o = b(\"userAction\"), p = b(\"Arbiter\");\n for (var q in m) {\n if ((m.hasOwnProperty(q) && (q !== \"_metaprototype\"))) {\n s[q] = m[q];\n };\n };\n var r = ((m === null) ? null : m.prototype);\n s.prototype = Object.create(r);\n s.prototype.constructor = s;\n s.__superConstructor__ = m;\n function s(t) {\n this.typeahead = t;\n m.call(this, t);\n this.userText = \"\";\n this.queryTimes = [];\n this._sessionDisabled = false;\n };\n s.prototype.initEvents = function() {\n this.typeahead.getCore().subscribe(\"session\", function(t, u) {\n if ((u === null)) {\n this.sessionEnd();\n }\n else this.sessionStart(u);\n ;\n }.bind(this));\n this.typeahead.getCore().subscribe(\"select\", function(t, u) {\n this.recordSelectInfo(u);\n }.bind(this));\n this.typeahead.getCore().input.subscribe(\"shortcut\", function(t, u) {\n this.recordShortcut(u);\n }.bind(this));\n this.typeahead.getCore().subscribe(\"quickSelectRedirect\", function(t, u) {\n this.recordQuickSelectInfo(u);\n }.bind(this));\n this.typeahead.getView().subscribe(\"render\", function(t, u) {\n this.recordRender(u);\n }.bind(this));\n this.typeahead.data.subscribe(\"query\", function(t, u) {\n if (!u.value.isEmpty()) {\n this.recordCountStat(\"num_queries\");\n };\n if (u.see_more) {\n this.recordStat(\"clicked_see_more\", 1);\n };\n this.recordAvgStat(\"num_results_from_cache\", u.results.length);\n this.queryTimes[(u.queryId - this.startQueryId)] = {\n send: Date.now()\n };\n }.bind(this));\n this.typeahead.data.subscribe(\"sending_request\", function(t, u) {\n var v = u.data.value;\n if (!v) {\n return\n };\n this.backendQueries.push(v);\n }.bind(this));\n this.typeahead.subscribe(\"navigation\", function(t, u) {\n if ((u && u.structure)) {\n this.recordStat(\"navigation_input\", JSON.stringify(u.structure.toStruct()));\n this.recordStat(\"navigation_text\", u.structure.toString());\n }\n ;\n }.bind(this));\n this.typeahead.data.subscribe(\"response_received\", function(t, u, v) {\n if ((u.queryId >= this.startQueryId)) {\n var w = this.queryTimes[(u.queryId - this.startQueryId)];\n w.recv = (Date.now() - w.send);\n }\n ;\n }.bind(this));\n this.typeahead.data.subscribe(\"backend_response\", function(t, u) {\n if ((u.queryId >= this.startQueryId)) {\n var v = this.queryTimes[(u.queryId - this.startQueryId)];\n v.render = (Date.now() - v.send);\n if (u.payload.incomplete) {\n v.incomplete = true;\n };\n v.backendInfo = u.payload.info;\n if (this.core.scubaInfo) {\n this.logToScuba(u, v, this.core.scubaInfo);\n };\n }\n ;\n }.bind(this));\n p.subscribe(\"BrowseNUX/typing\", this.disableThisSession.bind(this));\n p.subscribe(\"TestConsole/typing\", this.disableThisSession.bind(this));\n this.typeahead.getCore().subscribe(\"change\", function(t, u) {\n this.userInput(this.core.getText());\n }.bind(this));\n this.typeahead.subscribe(\"clear\", function() {\n this.recordAppendStat(\"before_clear_queries\", this.userText);\n }.bind(this));\n j.listen(this.element, \"keydown\", function(event) {\n this.recordStat(\"keypressed\", 1);\n if ((j.getKeyCode(event) == k.BACKSPACE)) {\n if (!this._backspacing) {\n this._backspacing = true;\n this.recordAppendStat(\"before_backspace_queries\", this.core.getText());\n }\n ;\n }\n else this._backspacing = false;\n ;\n }.bind(this));\n this.typeahead.subscribe(\"record_after_reorder\", function(t, u) {\n this._reorderInfo = u;\n this._reorderInfo.s_organic_results = this._reorderInfo.s_organic_results.map(this.buildTypeaheadRecord.bind(this));\n }.bind(this));\n this.typeahead.subscribe(\"filter\", function(t, u) {\n this._unsupportedGrammarInfo = this.buildUnsupportedGrammarInfo(u);\n }.bind(this));\n this.typeahead.getCore().subscribe(\"recordFunction\", function(t, u) {\n this._extraRecorder.push(u);\n }.bind(this));\n };\n s.prototype._reset = function(t) {\n this.stats = {\n };\n this.avgStats = {\n };\n this.appendStats = {\n };\n this._backspacing = false;\n this.backendQueries = [];\n this._topreplace = false;\n this._inflightRequests = {\n };\n };\n s.prototype.sessionStart = function(t) {\n this._sessionEnded = false;\n this.data.setQueryData({\n sid: t\n });\n this.recordStat(\"sid\", t);\n if (!this.stats.session_start_time) {\n this.recordStat(\"session_start_time\", Date.now());\n };\n this.startQueryId = (this.data.getCurQueryId() + 1);\n this.recordStat(\"keypressed\", 0);\n this.queryTimes = [];\n };\n s.prototype.sessionEnd = function() {\n if ((this._sessionEnded || this._sessionDisabled)) {\n if (this._sessionDisabled) {\n this.reset();\n this._sessionDisabled = false;\n this._sessionEnded = true;\n }\n ;\n return;\n }\n ;\n this._sessionEnded = true;\n this.recordStat(\"session_end_time\", Date.now());\n this.recordStat(\"grammar_version\", this.data.getQueryData().grammar_version);\n this.submit();\n };\n s.prototype.disableThisSession = function() {\n this._sessionDisabled = true;\n };\n s.prototype.userInput = function(t) {\n this.userText = t;\n };\n s.prototype.buildUnsupportedGrammarInfo = function(t) {\n var u = (t.results ? t.results[0] : null);\n if ((!u || (u.results_set_type !== \"unimplemented\"))) {\n return null\n };\n return {\n unsupported_grammar: {\n category: (u.error_info.category || \"unknown\"),\n edge: u.error_info.blamed_edge\n }\n };\n };\n s.prototype.buildTypeaheadRecord = function(t, u) {\n var v = ((t.rankType || t.render_type) || t.type), w = 0, x = u;\n if ((typeof t.groupIndex == \"number\")) {\n w = t.groupIndex;\n x = t.indexInGroup;\n }\n ;\n var y = {\n group_index: w,\n index_in_group: x,\n cost: t.cost,\n s_value: (t.s_value || 0),\n semantic: t.semantic,\n text: t.structure.toString(),\n cache_only: ((t.cacheOnlyResult ? 1 : 0)),\n parse: t.parse,\n semantic_forest: t.semanticForest,\n normalized_input: t.entityTypes,\n category: t.category,\n type: v,\n source: t.bootstrapped,\n grammar_results_type: ((t.results_set_type || \"\")).replace(/[\\[\\{](.*)[\\]\\}]/, \"$1\"),\n result_from_memcache: t.memcache,\n websuggestion_source: t.websuggestion_source,\n dynamic_cost: t.dynamic_cost,\n is_js_bootstrap_match: t.isJSBootstrapMatch,\n backend_cost: t.backendCost,\n bootstrap_cost: t.bootstrapCost,\n match_type: t.match_type,\n l_type: t.l_type,\n vertical_type: t.vertical_type,\n prefix_match: t.prefix_match,\n prefix_length: t.prefix_length,\n index_before_buckets: t.indexBeforeBuckets,\n bucket_lineage: t.bucketLineage\n };\n if (t.logInfo) {\n y.backend_log_info = t.logInfo;\n };\n if (t.s_token) {\n y.s_token = t.s_token;\n };\n if (t.s_categories) {\n y.s_categories = t.s_categories;\n };\n return y;\n };\n s.prototype.buildListTypeaheadRecords = function() {\n var t = [];\n (this.results && this.results.forEach(function(u, v) {\n if ((u.uid !== \"search\")) {\n t.push(this.buildTypeaheadRecord(u, v));\n };\n }.bind(this)));\n return t;\n };\n s.prototype.recordShortcut = function(t) {\n this.recordStat(\"shortcut\", 1);\n this.recordStat(\"shortcut_with_shift\", t.shift);\n };\n s.prototype.recordStats = function(t, u) {\n for (var v in u) {\n this.recordStat(((t + \"_\") + v), u[v]);;\n };\n };\n s.prototype.getTypeaheadIndex = function(t, u) {\n var v = ((typeof t.groupIndex == \"number\") ? (t.groupIndex + 1) : 0);\n return (u - v);\n };\n s.prototype.recordQuickSelectInfo = function(t) {\n var u = {\n input_query: t.input_query,\n semantic: t.semantic,\n type: t.type,\n position: t.position,\n with_mouse: t.with_mouse,\n text: t.text,\n quick_select: 1\n };\n this.recordStats(\"selected\", u);\n this.recordStat(\"quick_select\", 1);\n };\n s.prototype.recordSelectInfo = function(t) {\n var u = t.selected, v = this.getTypeaheadIndex(u, t.index), w = {\n };\n if ((u.uid == \"search\")) {\n w.selected_search = 1;\n }\n else {\n w = this.buildTypeaheadRecord(u);\n var x = (((w.type == \"friend\") ? \"user\" : w.type));\n w.position = v;\n w[x] = 1;\n }\n ;\n w.with_mouse = (t.clicked ? 1 : 0);\n w.quick_select = 0;\n w.see_more = (u.see_more ? 1 : 0);\n w.input_query = this.userText;\n w.input_fragments = JSON.stringify(this.core.currentQuery.toStruct());\n var y = (u.dataGT ? {\n gt: JSON.parse(u.dataGT)\n } : {\n }), z = {\n href: u.path\n };\n g(\"click\", z, null, null, y);\n o(\"search\").uai(\"click\");\n this.recordStats(\"selected\", w);\n this.recordAppendStat(\"selection_history\", {\n selected: w,\n candidate_results: this.buildListTypeaheadRecords(),\n timestamp: Date.now()\n });\n var aa = {\n };\n this._extraRecorder.forEach(function(ba) {\n ba(t, this.results, aa);\n }.bind(this));\n this.recordStat(\"extra_select_info\", JSON.stringify(aa));\n this.recordStat(\"selected_with_mouse\", (t.clicked ? 1 : 0));\n };\n s.prototype._dataToSubmit = function() {\n this.recordStat(\"max_results\", this.data._maxResults);\n if ((this.stats && this.stats.selected_input_query)) {\n this.recordStat(\"input_query\", this.stats.selected_input_query);\n }\n else this.recordStat(\"input_query\", this.userText);\n ;\n this.recordStat(\"uri\", n().toString());\n if (!this.stats.shortcut) {\n this.recordStat(\"shortcut\", 0);\n this.recordStat(\"shortcut_with_shift\", false);\n }\n ;\n var t = this.stats;\n for (var u in this.avgStats) {\n var v = this.avgStats[u];\n t[u] = (v[0] / v[1]);\n };\n var w = {\n candidate_results: this.buildListTypeaheadRecords(),\n timestamp: Date.now(),\n input_query: this.userText\n };\n if (this._reorderInfo) {\n h(w, this._reorderInfo);\n };\n if (this._unsupportedGrammarInfo) {\n h(w, this._unsupportedGrammarInfo);\n };\n this.recordAppendStat(\"suggestions_at_end_of_session\", w);\n this.recordAppendStat(\"query_times\", this.queryTimes);\n if ((this.backendQueries.length > 0)) {\n if ((this.backendQueries.length > this.data.logBackendQueriesWindow)) {\n this.backendQueries = this.backendQueries.slice((this.backendQueries.length - this.data.logBackendQueriesWindow));\n };\n this.recordStat(\"backend_queries\", this.backendQueries);\n }\n ;\n for (var x in this.appendStats) {\n t[x] = JSON.stringify(this.appendStats[x]);;\n };\n return t;\n };\n s.prototype.getDataToSubmit = function() {\n return this._dataToSubmit();\n };\n s.prototype.reset = function() {\n return this._reset();\n };\n s.prototype.submit = function() {\n if (!this._sessionDisabled) {\n r.submit.call(this);\n };\n this.view.inform(\"feedback\");\n this._reset();\n };\n s.prototype.logToScuba = function(t, u, v) {\n if (this._sessionDisabled) {\n return\n };\n var w = new l(\"search_facebar_js\", null, {\n addBrowserFields: true\n });\n w.addInteger(\"sample_rate\", v.sample_rate);\n w.addNormal(\"site\", v.site);\n w.addDenorm(\"query\", t.request.uri.query_s);\n var x = t.payload;\n (x.entities && w.addInteger(\"num_entities\", x.entities.length));\n (x.results && w.addInteger(\"num_results\", x.results.length));\n if (x.times) {\n w.addInteger(\"time_bootstrap\", x.times.bootstrap);\n w.addInteger(\"time_php_end_to_end\", x.times.end_to_end);\n w.addInteger(\"time_fetchers\", x.times.fetchers);\n w.addInteger(\"time_grammar\", x.times.grammar);\n }\n ;\n w.addInteger(\"incomplete\", (u.incomplete ? 1 : 0));\n w.addInteger(\"time_render\", (u.render - u.recv));\n w.addInteger(\"time_js_async\", u.recv);\n w.addInteger(\"query_id\", u.queryId);\n w.addInteger(\"user_id\", i.user);\n w.addInteger(\"session_id\", this.typeahead.getCore().getSessionID());\n w.flush();\n };\n h(s.prototype, {\n _endPoint: \"/ajax/typeahead/search/record_metrics.php\",\n _sessionEnded: true,\n _extraRecorder: [],\n _banzaiRoute: \"facebar\"\n });\n e.exports = s;\n});\n__d(\"FacebarTypeaheadView\", [\"Animation\",\"Arbiter\",\"ContextualLayer\",\"copyProperties\",\"CSS\",\"csx\",\"cx\",\"DOM\",\"Ease\",\"Event\",\"FacebarStructuredText\",\"fbt\",\"Parent\",\"ScrollableArea\",\"Style\",\"throttle\",\"TypeaheadView\",\"Vector\",\"ViewportBounds\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"Arbiter\"), i = b(\"ContextualLayer\"), j = b(\"copyProperties\"), k = b(\"CSS\"), l = b(\"csx\"), m = b(\"cx\"), n = b(\"DOM\"), o = b(\"Ease\"), p = b(\"Event\"), q = b(\"FacebarStructuredText\"), r = b(\"fbt\"), s = b(\"Parent\"), t = b(\"ScrollableArea\"), u = b(\"Style\"), v = b(\"throttle\"), w = b(\"TypeaheadView\"), x = b(\"Vector\"), y = b(\"ViewportBounds\"), z = 981, aa = 500, ba = \"unimplemented\";\n for (var ca in w) {\n if ((w.hasOwnProperty(ca) && (ca !== \"_metaprototype\"))) {\n ea[ca] = w[ca];\n };\n };\n var da = ((w === null) ? null : w.prototype);\n ea.prototype = Object.create(da);\n ea.prototype.constructor = ea;\n ea.__superConstructor__ = w;\n function ea(fa, ga) {\n w.call(this, fa, ga);\n this.sid = \"\";\n this.index = -1;\n this.animation = null;\n this.warningShown = false;\n this.autoSelect = false;\n this.minResults = (ga.minResults || 3);\n this.maxResults = ga.maxResults;\n this.animateHeightThrottled = v(this.animateHeight, 50, this);\n this.animateCount = -1;\n this.animateWidth = -1;\n this.loading = false;\n };\n ea.prototype.init = function() {\n this.initializeElements();\n da.init.call(this);\n };\n ea.prototype.initializeElements = function() {\n var fa = this.element;\n this.content = n.find(fa, \".-cx-PRIVATE-fbFacebarTypeaheadView__content\");\n this.throbber = n.find(fa, \".-cx-PRIVATE-fbFacebarTypeaheadView__throbber\");\n this.warningNode = n.find(fa, \".-cx-PRIVATE-fbFacebarTypeaheadView__warning\");\n this.scroller = n.find(fa, \".-cx-PRIVATE-fbFacebarTypeaheadView__scroller\");\n this.scrollableArea = t.getInstance(this.scroller);\n this.footer = this.createFooter();\n };\n ea.prototype.initializeLayer = function() {\n var fa = n.scry(document.body, \"#blueBar\")[0], ga, ha, ia;\n if ((fa && n.contains(fa, this.element))) {\n ga = fa;\n ia = \"-cx-PUBLIC-fbFacebarTypeaheadView__layer\";\n ha = \"100%\";\n }\n else {\n ga = this.element.parentNode;\n ia = \"\";\n ha = (z + \"px\");\n }\n ;\n this.wrapper = n.create(\"div\");\n n.appendContent(this.wrapper, this.element);\n this.layer = new i({\n context: ga,\n position: \"below\",\n alignment: this.alignment,\n causalElement: this.causalElement\n }, this.wrapper);\n this.layer.show();\n this.layer.hide();\n k.addClass(this.layer.getRoot(), ia);\n u.set(this.layer.getContentRoot(), \"width\", ha);\n };\n ea.prototype.initializeEvents = function() {\n p.listen(this.content, {\n click: this.click.bind(this),\n mouseover: this.mouseover.bind(this)\n });\n };\n ea.prototype.setInputElement = function(fa) {\n this.setAccessibilityControlElement(fa);\n this.causalElement = fa;\n this.initializeLayer();\n };\n ea.prototype.setAutoSelect = function(fa) {\n this.autoSelect = fa;\n if (((this.index === -1) && fa)) {\n this.first();\n };\n };\n ea.prototype.click = function(event) {\n if ((!event.isMiddleClick() && !event.getModifiers().any)) {\n var fa = s.byTag(event.getTarget(), \"a\");\n if ((!fa || k.hasClass(fa, \"-cx-PRIVATE-fbFacebarTypeaheadItem__link\"))) {\n this.select(true);\n return event.kill();\n }\n ;\n }\n ;\n };\n ea.prototype.show = function() {\n if (!this.visible) {\n this.inform(\"beforeShow\", this.layer);\n var fa = da.show.call(this);\n this.first();\n this.layer.show();\n this.layer.updatePosition();\n this.recalculateScrollableArea();\n this.animateCount = -1;\n this.animateHeight();\n this.inform(\"show\");\n h.inform(\"layer_shown\", {\n type: \"FacebarTypeahead\"\n });\n return fa;\n }\n ;\n };\n ea.prototype.hide = function() {\n if (this.visible) {\n this.layer.hide();\n da.hide.call(this);\n u.set(this.scroller, \"height\", \"0px\");\n this.inform(\"hide\");\n h.inform(\"layer_hidden\", {\n type: \"FacebarTypeahead\"\n });\n }\n ;\n return this;\n };\n ea.prototype.select = function(fa) {\n var ga = this.results[this.index];\n if (!ga) {\n this.inform(\"quickSelect\");\n return;\n }\n ;\n var ha = this.inform(\"beforeSelect\", {\n index: this.index,\n selected: ga\n });\n if (((ha !== false) && this.isIndexFooter(this.index))) {\n ha = false;\n };\n if ((ha !== false)) {\n da.select.call(this, fa);\n };\n };\n ea.prototype.buildResults = function(fa) {\n this.list = k.addClass(da.buildResults.call(this, fa), \"-cx-PRIVATE-fbFacebarTypeaheadView__list\");\n return this.list;\n };\n ea.prototype.animateHeight = function() {\n if ((this.items.length == this.animateCount)) {\n var fa = x.getViewportDimensions().x;\n if ((this.animateWidth != fa)) {\n this.animateWidth = fa;\n this.recalculateScrollableArea();\n }\n ;\n return;\n }\n ;\n if ((this.list && k.shown(this.list))) {\n this.animateCount = this.items.length;\n var ga = Math.min(x.getElementDimensions(this.list).y, this.calculateMaxAllowableHeight());\n (this.animation && this.animation.stop());\n this.animation = new g(this.scroller).to(\"height\", ga).duration(aa).ease(o.makePowerOut(5)).ondone(this.recalculateScrollableArea.bind(this)).go();\n }\n ;\n };\n ea.prototype.calculateMaxAllowableHeight = function() {\n var fa = x.getViewportDimensions().y, ga = (y.getTop() || 48), ha = 56, ia = (Math.max(this.minResults, (Math.floor(((((fa - ga) - 25)) / ha)) - 1)) + 1);\n return ((ia * ha) + ((ha / 4)));\n };\n ea.prototype.render = function(fa, ga, ha, ia, ja) {\n this.inform(\"filter\", {\n results: ga,\n value: fa,\n isScrollable: ja\n });\n if (this.loading) {\n ga.push({\n uid: \"search\",\n node: this.footer,\n structure: new q(),\n search: true\n });\n };\n var ka = ga[0];\n if (ia) {\n this.showWarning(r._(\"There are no results for '{query}'\", [r.param(\"query\", fa.toString()),]));\n }\n else if ((ka && (ka.results_set_type === ba))) {\n if (!ka.error_info.suppress) {\n this.showWarning((ka.error_info.errorMessage || \"This search isn't currently supported.\"));\n };\n }\n else this.hideWarning();\n \n ;\n if ((this.inform(\"removeUnimplementedGrammar\") !== false)) {\n ga = ga.filter(function(la) {\n return (la.results_set_type !== ba);\n }.bind(this));\n };\n da.render.call(this, fa, ga, ha);\n this.renderFooter();\n this.animateHeightThrottled();\n };\n ea.prototype.showWarning = function(fa) {\n k.show(this.warningNode);\n n.setContent(this.warningNode, fa);\n this.warningShown = true;\n this.highlight(-1, false);\n };\n ea.prototype.hideWarning = function() {\n k.hide(this.warningNode);\n this.warningShown = false;\n this.highlight(this.index, false);\n };\n ea.prototype.recalculateScrollableArea = function() {\n u.set(this.scroller, \"width\", (x.getElementDimensions(this.element).x + \"px\"));\n this.scrollableArea.resize();\n this.scrollableArea.poke();\n };\n ea.prototype.setLoading = function(fa) {\n this.loading = fa;\n this.renderFooter();\n };\n ea.prototype.scrollTo = function(fa) {\n (fa && this.scrollableArea.scrollIntoView(fa, true));\n };\n ea.prototype.renderFooter = function() {\n k.conditionShow(this.throbber, this.loading);\n k.conditionShow(this.footer, this.loading);\n if (this.loading) {\n this.inform(\"showingFooter\");\n }\n else this.inform(\"hidingFooter\");\n ;\n };\n ea.prototype.isIndexFooter = function(fa) {\n var ga = this.results[fa];\n return (ga && (ga.node == this.footer));\n };\n ea.prototype.first = function() {\n this.index = (this.autoSelect ? 0 : -1);\n this.highlight(this.index);\n };\n ea.prototype.prev = function() {\n if ((this.index <= 0)) {\n this.index = this.items.length;\n };\n if (this.isIndexFooter((this.index - 1))) {\n this.index -= 1;\n };\n da.prev.call(this);\n };\n ea.prototype.next = function() {\n if (((this.index + 1) >= this.items.length)) {\n this.index = -1;\n };\n if (this.isIndexFooter((this.index + 1))) {\n this.index = -1;\n };\n da.next.call(this);\n };\n ea.prototype.highlight = function(fa, ga) {\n ga = ((ga !== false) && ((this.index != fa)));\n if ((!ga || (this.inform(\"beforeHighlight\") !== false))) {\n var ha = ((this.warningShown || !this.autoSelect) ? -1 : 0);\n da.highlight.call(this, Math.max(ha, fa), ga);\n }\n ;\n };\n ea.prototype.createFooter = function() {\n return n.create(\"li\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadView__footer hidden_elem\"\n }, this.throbber);\n };\n j(ea.prototype, {\n events: [\"highlight\",\"render\",\"filter\",]\n });\n e.exports = ea;\n});\n__d(\"FacebarTypeaheadViewMegaphone\", [\"Arbiter\",\"ArbiterMixin\",\"AsyncRequest\",\"CSS\",\"Event\",\"mixin\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ArbiterMixin\"), i = b(\"AsyncRequest\"), j = b(\"CSS\"), k = b(\"Event\"), l = b(\"mixin\"), m = l(h);\n for (var n in m) {\n if ((m.hasOwnProperty(n) && (n !== \"_metaprototype\"))) {\n p[n] = m[n];\n };\n };\n var o = ((m === null) ? null : m.prototype);\n p.prototype = Object.create(o);\n p.prototype.constructor = p;\n p.__superConstructor__ = m;\n function p(q, r, s) {\n this.root = q;\n this.tourButton = r;\n this.closeButton = s;\n this.nuxReady = false;\n this.core = null;\n k.listen(this.tourButton, \"click\", this.$FacebarTypeaheadViewMegaphone0.bind(this));\n k.listen(this.closeButton, \"click\", this.$FacebarTypeaheadViewMegaphone1.bind(this));\n g.subscribe(\"Facebar/init\", this.$FacebarTypeaheadViewMegaphone2.bind(this));\n };\n p.prototype.$FacebarTypeaheadViewMegaphone2 = function(q, r) {\n r.view.subscribe(\"render\", this.$FacebarTypeaheadViewMegaphone4.bind(this));\n r.view.subscribe(\"show\", this.$FacebarTypeaheadViewMegaphone4.bind(this));\n g.subscribe(\"BrowseNUX/initialized\", this.$FacebarTypeaheadViewMegaphone5.bind(this));\n this.core = r.core;\n };\n p.prototype.$FacebarTypeaheadViewMegaphone5 = function() {\n this.nuxReady = true;\n this.$FacebarTypeaheadViewMegaphone4();\n };\n p.prototype.$FacebarTypeaheadViewMegaphone4 = function() {\n if (this.nuxReady) {\n j.conditionShow(this.root, this.core.getValue().isEmpty());\n };\n };\n p.prototype.$FacebarTypeaheadViewMegaphone0 = function() {\n this.inform(\"start\");\n };\n p.prototype.$FacebarTypeaheadViewMegaphone1 = function() {\n new i().setURI(\"/ajax/browse/nux_hide.php\").setMethod(\"POST\").send();\n this.hide();\n this.inform(\"hide\");\n };\n p.prototype.hide = function() {\n j.hide(this.root);\n };\n e.exports = p;\n});\n__d(\"FacebarTypeaheadDecorateEntities\", [\"arrayContains\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"arrayContains\"), h = b(\"copyProperties\"), i = b(\"emptyFunction\");\n function j(n) {\n var o = [];\n n.forEach(function(p) {\n if (p.isType(\"ent\")) {\n o.push(p.getUID());\n };\n });\n return o;\n };\n function k(n, o) {\n var p = null;\n n.structure.forEach(function(q) {\n if ((q.isType(\"ent\") && !g(o, q.getUID()))) {\n p = q;\n };\n });\n return p;\n };\n function l(n, o, p) {\n n.forEach(function(q) {\n var r = k(q, o);\n q.decoration = {\n entity: (r && p.getEntryForFragment(r))\n };\n });\n };\n function m(n) {\n this._typeahead = n;\n };\n m.prototype.enable = function() {\n this._typeahead.view.subscribe(\"filter\", function(n, o) {\n l(o.results, j(this._typeahead.core.getValue()), this._typeahead.data);\n }.bind(this));\n };\n h(m.prototype, {\n disable: i\n });\n e.exports = m;\n});\n__d(\"FacebarTypeaheadDecorateMessageButton\", [\"cx\",\"ChatOpenTab\",\"DOM\",\"React\",\"XUIButton.react\",], function(a, b, c, d, e, f) {\n var g = b(\"cx\"), h = b(\"ChatOpenTab\"), i = b(\"DOM\"), j = b(\"React\"), k = b(\"XUIButton.react\");\n function l(m) {\n this.$FacebarTypeaheadDecorateMessageButton0 = m;\n this.$FacebarTypeaheadDecorateMessageButton1 = null;\n };\n l.prototype.enable = function() {\n this.$FacebarTypeaheadDecorateMessageButton1 = this.$FacebarTypeaheadDecorateMessageButton0.view.subscribe(\"renderingItem\", this.$FacebarTypeaheadDecorateMessageButton2.bind(this));\n };\n l.prototype.$FacebarTypeaheadDecorateMessageButton2 = function(m, event) {\n event.item.setShouldRenderEducation(false);\n var n = event.result;\n if (((n.type !== \"user\") && (n.type !== \"{user}\"))) {\n return\n };\n var o = i.create(\"span\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadItem__typeaheadmessagebutton\"\n }), p = function() {\n h.openUserTab(n.uid, \"search\");\n };\n j.renderComponent(k({\n label: \"Message\",\n onMouseDown: p\n }), o);\n event.item.setMessageButton(o);\n };\n l.prototype.disable = function() {\n (this.$FacebarTypeaheadDecorateMessageButton1 && this.$FacebarTypeaheadDecorateMessageButton1.unsubscribe());\n };\n e.exports = l;\n});\n__d(\"FacebarTypeaheadDisambiguateResults\", [\"FacebarDisambiguationDialog\",\"FacebarStructuredFragment\",\"FacebarStructuredText\",\"URI\",\"copyProperties\",\"emptyFunction\",\"getObjectValues\",], function(a, b, c, d, e, f) {\n var g = b(\"FacebarDisambiguationDialog\"), h = b(\"FacebarStructuredFragment\"), i = b(\"FacebarStructuredText\"), j = b(\"URI\"), k = b(\"copyProperties\"), l = b(\"emptyFunction\"), m = b(\"getObjectValues\");\n function n(w, x) {\n var y = {\n };\n w.forEach(function(ba) {\n if ((ba.type == \"grammar\")) {\n var ca = x(ba.structure).toLowerCase();\n y[ca] = (y[ca] || []);\n y[ca].push(ba);\n }\n ;\n });\n var z = [];\n for (var aa in y) {\n if ((y[aa].length > 1)) {\n z.push(y[aa]);\n };\n };\n return z;\n };\n function o(w) {\n var x = [];\n w.toArray().forEach(function(y, z) {\n if (y.isType(\"ent\")) {\n x.push(z);\n };\n });\n return x;\n };\n function p(w, x, y) {\n var z = {\n }, aa = {\n }, ba = {\n };\n x.forEach(function(da) {\n var ea = w[0].structure.getFragment(da), fa = ea.getHash();\n aa[fa] = (aa[fa] || []);\n ba[da] = aa[fa];\n w.forEach(function(ga) {\n var ha = ga.structure.getFragment(da), ia = (ha && ha.getUID());\n if ((ia && !z.hasOwnProperty(ia))) {\n aa[fa].push(y.getEntryForFragment(ha));\n z[ia] = true;\n }\n ;\n });\n });\n for (var ca in ba) {\n if ((ba[ca].length <= 1)) {\n delete ba[ca];\n };\n };\n return ba;\n };\n function q(w, x) {\n var y = {\n }, z = [];\n w.forEach(function(aa) {\n var ba = aa.structure.getFragment(x).getUID();\n if (!y.hasOwnProperty(ba)) {\n y[ba] = z.length;\n z.push([]);\n }\n ;\n z[y[ba]].push(aa);\n });\n return z;\n };\n function r(w, x, y) {\n var z = w.shift();\n z.ambiguity.entities = x;\n y.push.apply(y, w);\n return z;\n };\n function s(w, x) {\n var y = [], z = [], aa = false;\n w.forEach(function(ca) {\n ca.ambiguity = {\n fragment: null,\n entities: null,\n text: null\n };\n });\n n(w, function(ca) {\n return ca.getHash();\n }).forEach(function(ca) {\n var da = ca[0].structure, ea = o(da), fa = p(ca, ea, x);\n if (aa) {\n r(ca, fa, y);\n return;\n }\n ;\n var ga = ea.pop();\n if ((typeof ga == \"number\")) {\n var ha = q(ca, ga);\n aa = (ha.length > 1);\n if (aa) {\n delete fa[ga];\n };\n ha.forEach(function(ia) {\n var ja = r(ia, fa, y);\n if (aa) {\n var ka = ja.structure.getFragment(ga).getUID();\n ja.ambiguity.entity = x.getEntry(ka);\n z.push(ja);\n }\n ;\n });\n }\n ;\n });\n y.forEach(function(ca) {\n var da = w.indexOf(ca);\n ((da != -1) && w.splice(da, 1));\n });\n n(w, function(ca) {\n return ca.toString();\n }).forEach(function(ca) {\n ca.forEach(function(da) {\n if (!da.ambiguity.entities) {\n da.ambiguity.text = da.queryTypeText;\n };\n });\n });\n var ba = w.indexOf(z[0]);\n z.slice(1).forEach(function(ca) {\n var da = w.indexOf(ca);\n if (((da != -1) && (da != ++ba))) {\n w.splice(da, 1);\n w.splice(ba, 0, ca);\n }\n ;\n });\n };\n function t(w, x) {\n var y = ((w && w.ambiguity) && w.ambiguity.entities), z = (y && Object.keys(y).map(Number)), aa = x.core.input;\n if ((!z || (z.length === 0))) {\n return false\n };\n var ba = function(ea) {\n x.core.executeQuery(u(w, z, ea));\n }, ca = function() {\n aa.focus();\n aa.input.moveSelectionToEnd();\n }, da = new g(m(y), w.uri.getPath(), ba, ca, x.getCore().getSessionID());\n aa.blur();\n da.show();\n return true;\n };\n function u(w, x, y) {\n var z = w.structure.toArray(), aa = j(w.uri), ba = aa.getPath().split(\"/\");\n x.forEach(function(ca) {\n var da = z[ca], ea = y.shift(), fa = ba.indexOf(String(da.getUID()));\n if ((fa != -1)) {\n ba[fa] = ea.uid;\n };\n z[ca] = new h({\n uid: ea.uid,\n text: ea.text,\n type: (\"ent:\" + ea.type)\n });\n });\n return {\n uri: aa.setPath(ba.join(\"/\")),\n structure: new i(z)\n };\n };\n function v(w) {\n this._typeahead = w;\n };\n v.prototype.enable = function() {\n this._typeahead.view.subscribe(\"filter\", function(w, x) {\n s(x.results, this._typeahead.data);\n }.bind(this));\n this._typeahead.view.subscribe(\"beforeSelect\", function(w, x) {\n return !t(x.selected, this._typeahead);\n }.bind(this));\n };\n k(v.prototype, {\n disable: l\n });\n e.exports = v;\n});\n__d(\"FacebarTypeaheadHashtagResult\", [\"HashtagSearchResultUtils\",], function(a, b, c, d, e, f) {\n var g = b(\"HashtagSearchResultUtils\");\n function h(i) {\n this.$FacebarTypeaheadHashtagResult0 = i.getData();\n };\n h.prototype.enable = function() {\n this.$FacebarTypeaheadHashtagResult1 = this.$FacebarTypeaheadHashtagResult0.subscribe(\"beforeQuery\", this.$FacebarTypeaheadHashtagResult2.bind(this));\n };\n h.prototype.$FacebarTypeaheadHashtagResult2 = function(i, j) {\n if ((!j || !j.value)) {\n return\n };\n var k = this.$FacebarTypeaheadHashtagResult0.getRawStructure(j.value);\n if (((!k || k.is_empty) || !k.raw_text)) {\n return\n };\n var l = g.getHashtagFromQuery(k.raw_text);\n if (!l) {\n return\n };\n var m = (\"hashtag:\" + l), n = this.$FacebarTypeaheadHashtagResult0.getEntry(m);\n if (!n) {\n this.$FacebarTypeaheadHashtagResult0.processEntries([g.makeFacebarEntry(l),]);\n this.$FacebarTypeaheadHashtagResult0.resultStore.saveResults([g.makeFacebarResult(l),], k, true);\n }\n ;\n return;\n };\n h.prototype.disable = function() {\n (this.$FacebarTypeaheadHashtagResult1 && this.$FacebarTypeaheadHashtagResult0.unsubscribe(this.$FacebarTypeaheadHashtagResult1));\n };\n e.exports = h;\n});\n__d(\"FacebarTypeaheadMagGo\", [\"csx\",\"DOM\",\"Event\",\"$\",\"SubscriptionsHandler\",], function(a, b, c, d, e, f) {\n var g = b(\"csx\"), h = b(\"DOM\"), i = b(\"Event\"), j = b(\"$\"), k = b(\"SubscriptionsHandler\");\n function l(m) {\n this._core = m.getCore();\n this._view = this._core.view;\n this._handler = new k();\n this._selected = null;\n };\n l.prototype.enable = function() {\n var m = h.find(j(\"blueBar\"), \".-cx-PUBLIC-fbFacebar__icon\");\n this._handler.addSubscriptions(i.listen(m, \"click\", this._runQuery.bind(this)), this._view.subscribe(\"highlight\", this._highlight.bind(this)), this._view.subscribe(\"render\", this._render.bind(this)), this._core.subscribe(\"close\", this._close.bind(this)));\n };\n l.prototype.disable = function() {\n this._handler.release();\n };\n l.prototype._highlight = function(m, n) {\n this._selected = n.selected;\n };\n l.prototype._render = function(m, n) {\n this._selected = this._view.results[this._view.index];\n };\n l.prototype._runQuery = function() {\n if (this._selected) {\n return this._core.selectView(null, {\n selected: this._selected\n })\n };\n };\n l.prototype._close = function() {\n this._selected = null;\n };\n e.exports = l;\n});\n__d(\"FacebarTypeaheadMagPPS\", [\"csx\",\"DOM\",\"Event\",\"FacebarStructuredText\",\"FacebarURI\",\"FacebarResultStoreUtils\",\"$\",\"SubscriptionsHandler\",\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"csx\"), h = b(\"DOM\"), i = b(\"Event\"), j = b(\"FacebarStructuredText\"), k = b(\"FacebarURI\"), l = b(\"FacebarResultStoreUtils\"), m = b(\"$\"), n = b(\"SubscriptionsHandler\"), o = b(\"URI\");\n function p(q) {\n this._core = q.getCore();\n this._data = q.getData();\n this._view = this._core.view;\n this._input = this._core.input;\n this._handler = new n();\n };\n p.prototype.enable = function() {\n var q = h.find(m(\"blueBar\"), \".-cx-PUBLIC-fbFacebar__icon\");\n this._handler.addSubscriptions(i.listen(q, \"click\", this._runQuery.bind(this)));\n };\n p.prototype.disable = function() {\n this._handler.release();\n };\n p.prototype._runQuery = function() {\n var q = this._input.getValue(), r = this._data.getRawStructure(q);\n if ((!r || r.is_empty)) {\n return\n };\n var s;\n if (!r.raw_text) {\n s = l.getRawTextFromStructured(q.toArray());\n }\n else s = r.raw_text;\n ;\n var t = o(this._view.seeMoreSerpEndpoint).addQueryData(\"q\", s).addQueryData(\"sid\", this._core.getSessionID());\n t = k.getQualifiedURI(t);\n var u = ((((((((\"uri(\" + \"path(\") + this._view.seeMoreSerpEndpoint) + \")\") + \",param_q(\") + s) + \")\") + \",param_source(mag_glass)\") + \")\");\n return this._core.selectView(null, {\n selected: {\n uid: \"see_more_serp\",\n node: this._moreBar,\n structure: new j(),\n search: true,\n uri: t,\n type: \"see_more_serp\",\n text: s,\n selected: true,\n semantic: u\n }\n });\n };\n e.exports = p;\n});\n__d(\"FacebarTypeaheadNarrowDrawer\", [\"CSS\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"CSS\"), h = b(\"cx\");\n function i(j) {\n this.$FacebarTypeaheadNarrowDrawer0 = j;\n this.$FacebarTypeaheadNarrowDrawer1 = null;\n };\n i.prototype.enable = function() {\n this.$FacebarTypeaheadNarrowDrawer1 = this.$FacebarTypeaheadNarrowDrawer0.view.subscribe(\"beforeShow\", this.$FacebarTypeaheadNarrowDrawer2.bind(this));\n };\n i.prototype.$FacebarTypeaheadNarrowDrawer2 = function(j, k) {\n g.removeClass(k.getRoot(), \"-cx-PUBLIC-fbFacebarTypeaheadView__layer\");\n g.addClass(k.getContentRoot(), \"-cx-PUBLIC-fbFacebarTypeaheadView__narrowlayer\");\n k.setContext(this.$FacebarTypeaheadNarrowDrawer0.element.offsetParent);\n };\n i.prototype.disable = function() {\n (this.$FacebarTypeaheadNarrowDrawer1 && this.$FacebarTypeaheadNarrowDrawer1.unsubscribe());\n };\n e.exports = i;\n});\n__d(\"FacebarTypeaheadNavigation\", [\"Arbiter\",\"FacebarNavigation\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"FacebarNavigation\"), i = b(\"copyProperties\"), j = b(\"emptyFunction\");\n function k(l) {\n this._core = l.core;\n this._preserveQuery = false;\n this._typeahead = l;\n };\n k.prototype.enable = function() {\n h.registerBehavior(this);\n this._core.subscribe(\"execute\", this.executedUserQuery.bind(this));\n this._core.subscribe(\"change\", this.changeUserQuery.bind(this));\n };\n k.prototype.executedUserQuery = function(l, m) {\n this._preserveQuery = true;\n };\n k.prototype.changeUserQuery = function() {\n this._navigatedQuery = false;\n };\n k.prototype.pageTransition = function() {\n if (!this._preserveQuery) {\n this._core.close();\n this._core.reset();\n }\n else this._preserveQuery = false;\n ;\n };\n k.prototype.setPageQuery = function(l) {\n l = this._core.setPageQuery(l);\n this._typeahead.inform(\"navigation\", l, g.BEHAVIOR_PERSISTENT);\n };\n i(k.prototype, {\n disable: j\n });\n e.exports = k;\n});\n__d(\"FacebarTypeaheadQuickSelect\", [\"FacebarStructuredText\",\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"FacebarStructuredText\"), h = b(\"URI\"), i = \"/search/web/direct_search.php\";\n function j(k) {\n this._core = k.getCore();\n this._view = k.getView();\n this._input = this._core.input;\n this._beforeSelectListener = null;\n this._quickSelectListener = null;\n };\n j.prototype.enable = function() {\n this._beforeSelectListener = this._view.subscribe(\"beforeSelect\", this._quickSelect.bind(this));\n this._quickSelectListener = this._view.subscribe(\"quickSelect\", this._quickSelect.bind(this));\n };\n j.prototype._quickSelect = function(k, l) {\n if (((l && l.selected) && (l.selected.uid !== \"search\"))) {\n return true\n };\n var m = this._input.getValue().toArray(), n = new g(m), o = n.toString();\n if (!o) {\n return true\n };\n var p = h(i).addQueryData(\"q\", o), q = {\n input_query: o,\n type: \"quickselect\",\n text: o,\n position: 0,\n with_mouse: 0,\n semantic: ((\"uri(path(\" + p.toString()) + \"))\"),\n extra_uri_params: {\n source: \"quickselect\",\n sid: this._core.getSessionID()\n },\n uri: p\n };\n this._core.inform(\"quickSelectRedirect\", q);\n this._core.executeQuery(q);\n return false;\n };\n j.prototype.disable = function() {\n (this._beforeSelectListener && this._view.unsubscribe(this._beforeSelectListener));\n (this._quickSelectListener && this._view.unsubscribe(this._quickSelectListener));\n };\n e.exports = j;\n});\n__d(\"FacebarTypeaheadRecorderBasic\", [\"Arbiter\",\"FacebarTypeaheadRecorder\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"FacebarTypeaheadRecorder\"), i = b(\"copyProperties\");\n function j(k) {\n this._typeahead = k;\n };\n j.prototype.enable = function() {\n var k = this._typeahead;\n this._subscription = k.subscribe(\"init\", function(l, m) {\n var n = new h(k);\n k.inform(\"recorder\", n, g.BEHAVIOR_PERSISTENT);\n });\n };\n j.prototype.disable = function() {\n this._typeahead.unsubscribe(this._subscription);\n this._subscription = null;\n };\n i(j.prototype, {\n _subscription: null\n });\n e.exports = j;\n});\n__d(\"FacebarTypeaheadSeeMore\", [\"CSS\",\"cx\",\"DOM\",\"FacebarStructuredText\",\"fbt\",], function(a, b, c, d, e, f) {\n var g = b(\"CSS\"), h = b(\"cx\"), i = b(\"DOM\"), j = b(\"FacebarStructuredText\"), k = b(\"fbt\");\n function l(m) {\n this._core = m.getCore();\n this._view = this._core.view;\n this._moreBar = null;\n this._isOpen = false;\n };\n l.prototype.enable = function() {\n this._subscriptions = [this._core.subscribe(\"close\", this._close.bind(this)),this._view.subscribe(\"filter\", this._buildSeeMore.bind(this)),this._view.subscribe(\"beforeSelect\", this._beforeSelect.bind(this)),this._view.subscribe(\"next\", this._scrollView.bind(this)),this._view.subscribe(\"prev\", this._scrollView.bind(this)),this._view.subscribe(\"showingFooter\", this._footerShow.bind(this)),this._view.subscribe(\"hidingFooter\", this._footerHide.bind(this)),];\n };\n l.prototype.disable = function() {\n while (this._subscriptions.length) {\n this._subscriptions.pop().unsubscribe();;\n };\n };\n l.prototype._beforeSelect = function(m, event) {\n if ((!event.selected || (event.selected.node !== this._moreBar))) {\n return true\n };\n this._view.first();\n this._core.expandView();\n return false;\n };\n l.prototype._buildSeeMore = function(m, event) {\n var n = event.results;\n if ((((n.length === 0) || event.isScrollable) || (event.value.toString().trim() == \"\"))) {\n return\n };\n if ((n.length < this._view.maxResults)) {\n var o = n.some(function(q) {\n return (q.type !== \"websuggestion\");\n });\n if (!o) {\n return\n };\n }\n else if ((n.length > (this._view.maxResults + 1))) {\n this._isOpen = true;\n return;\n }\n \n ;\n var p = \"See More\";\n this._isOpen = false;\n this._moreBar = i.create(\"li\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadView__seemore calltoaction\"\n }, p);\n this._moreBar.setAttribute(\"aria-label\", p);\n n.push({\n uid: \"search\",\n node: this._moreBar,\n structure: new j(),\n search: true\n });\n };\n l.prototype._close = function() {\n if (this._isOpen) {\n this._core.collapseView();\n this._isOpen = false;\n }\n ;\n return true;\n };\n l.prototype._footerHide = function() {\n if (this._moreBar) {\n g.show(this._moreBar);\n this._view.animateCount = -1;\n this._view.animateHeightThrottled();\n }\n ;\n return true;\n };\n l.prototype._footerShow = function() {\n (this._moreBar && g.hide(this._moreBar));\n return true;\n };\n l.prototype._scrollView = function(m, n) {\n if (this._isOpen) {\n this._view.scrollTo(n);\n };\n return true;\n };\n e.exports = l;\n});\n__d(\"FacebarTypeaheadSeeMoreSerp\", [\"CSS\",\"cx\",\"DOM\",\"FacebarStructuredText\",\"FacebarURI\",\"fbt\",\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"CSS\"), h = b(\"cx\"), i = b(\"DOM\"), j = b(\"FacebarStructuredText\"), k = b(\"FacebarURI\"), l = b(\"fbt\"), m = b(\"URI\");\n function n(o) {\n this._core = o.getCore();\n this._view = this._core.view;\n this._moreBar = null;\n };\n n.prototype.enable = function() {\n this._subscriptions = [this._view.subscribe(\"filter\", this._buildSeeMore.bind(this)),this._view.subscribe(\"showingFooter\", this._footerShow.bind(this)),this._view.subscribe(\"hidingFooter\", this._footerHide.bind(this)),];\n };\n n.prototype.disable = function() {\n while (this._subscriptions.length) {\n this._subscriptions.pop().unsubscribe();;\n };\n };\n n.prototype._buildSeeMore = function(o, event) {\n var p = event.results, q = event.value.toString().trim();\n if ((((p.length === 0) || event.isScrollable) || (q === \"\"))) {\n return\n };\n var r = l._(\"See more results for \\\"{query}\\\"\", [l.param(\"query\", q),]);\n this._moreBar = i.create(\"li\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadView__seemoreserp calltoaction\"\n }, [i.create(\"span\", {\n className: \"text\"\n }, [i.create(\"span\", {\n className: \"seeMore\"\n }, [r,]),]),]);\n var s = m(this._view.seeMoreSerpEndpoint).addQueryData(\"q\", q).addQueryData(\"sid\", this._core.getSessionID());\n s = k.getQualifiedURI(s);\n var t = ((((((((\"uri(\" + \"path(\") + this._view.seeMoreSerpEndpoint) + \")\") + \",param_q(\") + q) + \")\") + \",param_source(typeahead_footer)\") + \")\");\n this._moreBar.setAttribute(\"aria-label\", r);\n p.push({\n uid: \"see_more_serp\",\n node: this._moreBar,\n structure: new j(),\n search: true,\n uri: s,\n type: \"see_more_serp\",\n text: q,\n semantic: t\n });\n };\n n.prototype._footerHide = function() {\n if (this._moreBar) {\n g.show(this._moreBar);\n this._view.animateCount = -1;\n this._view.animateHeightThrottled();\n }\n ;\n return true;\n };\n n.prototype._footerShow = function() {\n (this._moreBar && g.hide(this._moreBar));\n return true;\n };\n e.exports = n;\n});\n__d(\"FacebarTypeaheadSelectAll\", [\"requestAnimationFrame\",], function(a, b, c, d, e, f) {\n var g = b(\"requestAnimationFrame\");\n function h(i) {\n this._core = i.getCore();\n this._listener = null;\n };\n h.prototype.enable = function() {\n var i = this._core.input;\n this._listener = this._core.subscribe(\"focus\", function() {\n g(function() {\n i.selectInput();\n }.bind(this));\n }.bind(this));\n };\n h.prototype.disable = function() {\n (this._listener && this._core.unsubscribe(this._listener));\n };\n e.exports = h;\n});\n__d(\"FacebarTypeaheadShortcut\", [\"KeyEventController\",\"Run\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"KeyEventController\"), h = b(\"Run\"), i = b(\"copyProperties\"), j = b(\"emptyFunction\");\n function k(l) {\n this._input = l.core.input;\n this._view = l.view;\n this._listener = null;\n };\n k.prototype.enable = function() {\n this._registerListener();\n };\n k.prototype._registerListener = function() {\n g.registerKey(\"SLASH\", this._handleKeydown.bind(this));\n h.onLeave(function() {\n this._registerListener.bind(this).defer();\n }.bind(this));\n };\n k.prototype._handleKeydown = function(l) {\n this._view.setAutoSelect(true);\n this._input.focus();\n this._input.inform(\"shortcut\", {\n shift: l.getModifiers().shift\n });\n return false;\n };\n i(k.prototype, {\n disable: j\n });\n e.exports = k;\n});\n__d(\"FacebarTypeaheadSizeAdjuster\", [\"copyProperties\",\"createArrayFrom\",\"clip\",\"emptyFunction\",\"foldl\",\"Style\",\"Vector\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"createArrayFrom\"), i = b(\"clip\"), j = b(\"emptyFunction\"), k = b(\"foldl\"), l = b(\"Style\"), m = b(\"Vector\"), n = 12, o = 20, p = 50, q = 200, r = 5;\n function s(u) {\n return m.getElementDimensions(u).x;\n };\n function t(u) {\n this._core = u.getCore();\n this._view = this._core.view;\n this._input = this._core.input;\n this._cachedSizes = {\n };\n this._appliedSize = null;\n this._defaultSize = this.getDefaultFontSize();\n this._calculatedSize = this._defaultSize;\n this._containerWidth = this.getContainerWidth();\n };\n t.prototype.enable = function() {\n this._input.subscribe(\"change\", this.adjustFontSize.bind(this));\n this.adjustFontSize();\n };\n t.prototype.getContainerWidth = function() {\n return m.getElementDimensions(this._input.getElement()).x;\n };\n t.prototype.getDefaultFontSize = function() {\n var u = l.get(this._input.getElement(), \"font-size\"), v = /^([\\d\\.]+)px$/.exec(u), w = (v && Number(v[1]));\n return Math.max(n, Math.min(o, w));\n };\n t.prototype.calculateFontSize = function() {\n var u = this.getTextWidth(), v = this._calculatedSize;\n if ((u > (this._containerWidth - p))) {\n v--;\n }\n else if ((u < (this._containerWidth - q))) {\n v++;\n }\n ;\n this._calculatedSize = i(v, n, this._defaultSize);\n return this._calculatedSize;\n };\n t.prototype.getTextWidth = function() {\n var u = (this._calculatedSize + this.getValueKey());\n if (!this._cachedSizes.hasOwnProperty(u)) {\n this._cachedSizes[u] = this.measureTextWidth();\n };\n return this._cachedSizes[u];\n };\n t.prototype.getValueKey = function() {\n var u = this._core.getValue().getHash(), v = (r * Math.floor((u.length / r)));\n return u.substr(0, v);\n };\n t.prototype.measureTextWidth = function() {\n var u = this._input.getRawInputElement().childNodes;\n return k(function(v, w) {\n return (v + s(w));\n }, h(u), 0);\n };\n t.prototype.adjustFontSize = function() {\n for (var u = 0; (u < 10); u++) {\n var v = this.calculateFontSize();\n if ((v != this._appliedSize)) {\n this._appliedSize = v;\n l.set(this._input.getElement(), \"font-size\", (v + \"px\"));\n l.set(this._view.content, \"font-size\", (v + \"px\"));\n }\n else break;\n ;\n };\n };\n g(t.prototype, {\n disable: j\n });\n e.exports = t;\n});\n__d(\"FacebarTypeaheadTourItem\", [\"cx\",\"DOM\",\"FacebarTypeaheadItem\",], function(a, b, c, d, e, f) {\n var g = b(\"cx\"), h = b(\"DOM\"), i = b(\"FacebarTypeaheadItem\");\n for (var j in i) {\n if ((i.hasOwnProperty(j) && (j !== \"_metaprototype\"))) {\n l[j] = i[j];\n };\n };\n var k = ((i === null) ? null : i.prototype);\n l.prototype = Object.create(k);\n l.prototype.constructor = l;\n l.__superConstructor__ = i;\n function l(m) {\n i.call(this, m);\n };\n l.prototype.renderIcon = function() {\n return h.create(\"span\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadItem__iconwrapper\"\n }, h.create(\"span\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadItem__touricon\"\n }));\n };\n l.prototype.renderSubtext = function() {\n this.setVAlign(false);\n return k.renderSubtext.call(this);\n };\n e.exports = l;\n});\n__d(\"FacebarTypeaheadTour\", [\"Arbiter\",\"AsyncRequest\",\"BrowseNUXController\",\"FacebarStructuredText\",\"FacebarTypeaheadTourItem\",\"copyProperties\",\"fbt\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncRequest\"), i = b(\"BrowseNUXController\"), j = b(\"FacebarStructuredText\"), k = b(\"FacebarTypeaheadTourItem\"), l = b(\"copyProperties\"), m = b(\"fbt\");\n function n(o) {\n this._core = o.getCore();\n this._view = this._core.view;\n this._moreBar = null;\n this._events = [];\n this._subscriptions = [];\n this._item = {\n uid: \"tour\",\n uri: \"#\",\n structure: j.fromString(\"Take the tour\")\n };\n };\n n.prototype.enable = function() {\n this._subscriptions = [g.subscribe(\"BrowseNUX/initialized\", this._initEvents.bind(this)),g.subscribe(\"BrowseNUX/starting\", this._removeEvents.bind(this)),g.subscribe(\"BrowseNUX/finished\", this._initEvents.bind(this)),];\n };\n n.prototype.disable = function() {\n while (this._subscriptions.length) {\n this._subscriptions.pop().unsubscribe();;\n };\n };\n n.prototype._initEvents = function() {\n this._events = [this._view.subscribe(\"filter\", this._addTour.bind(this)),this._view.subscribe(\"beforeSelect\", this._beforeSelect.bind(this)),];\n this._core.requery();\n };\n n.prototype._removeEvents = function() {\n while (this._events.length) {\n this._events.pop().unsubscribe();;\n };\n this._core.requery();\n };\n n.prototype._isNullState = function() {\n return this._core.input.getValue().isEmpty();\n };\n n.prototype._addTour = function(o, event) {\n var p = event.results;\n if (((p.length === 0) || !this._isNullState())) {\n return\n };\n var q = new k(this._item);\n q.setShouldRenderEducation(false);\n this._moreBar = q.render();\n var r = p.length;\n while ((--r >= 0)) {\n if ((p[r].removable === true)) {\n break;\n };\n };\n p.splice((r + 1), 0, l(this._item, {\n node: this._moreBar\n }));\n };\n n.prototype._beforeSelect = function(o, event) {\n if ((event.selected.node === this._moreBar)) {\n i.showSearchBarTour();\n return false;\n }\n ;\n new h(\"/ajax/browse/nux_addquery.php\").send();\n return true;\n };\n e.exports = n;\n});\n__d(\"FacebarTypeaheadTrigger\", [\"copyProperties\",\"Arbiter\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"Arbiter\");\n function i(j) {\n this._typeahead = j;\n this._core = j.getCore();\n this._subscription = null;\n };\n i.prototype.enable = function() {\n this._subscription = h.subscribe(\"FacebarTrigger/select\", this._activateTrigger.bind(this));\n };\n i.prototype.disable = function() {\n h.unsubscribe(this._subscription);\n };\n i.prototype._activateTrigger = function(j, k) {\n var l = g({\n type: \"grammar\",\n uri: null,\n structure: null\n }, k);\n if (!l.uri) {\n this._core.open();\n this._core.setQuery(l, false);\n }\n else this._core.executeQuery(l);\n ;\n };\n e.exports = i;\n});\n__d(\"FacebarTypeaheadGrammarItem\", [\"cx\",\"DOM\",\"FacebarTypeaheadItem\",\"FacebarTypeaheadToken\",\"FacebarTypeaheadEntityToken\",\"fbt\",], function(a, b, c, d, e, f) {\n var g = b(\"cx\"), h = b(\"DOM\"), i = b(\"FacebarTypeaheadItem\"), j = b(\"FacebarTypeaheadToken\"), k = b(\"FacebarTypeaheadEntityToken\"), l = b(\"fbt\");\n for (var m in i) {\n if ((i.hasOwnProperty(m) && (m !== \"_metaprototype\"))) {\n o[m] = i[m];\n };\n };\n var n = ((i === null) ? null : i.prototype);\n o.prototype = Object.create(n);\n o.prototype.constructor = o;\n o.__superConstructor__ = i;\n function o(p) {\n i.call(this, p);\n this.addClass(\"-cx-PRIVATE-fbFacebarTypeaheadItem__queryitem\");\n };\n o.prototype.renderIcon = function() {\n if (this._result.photo) {\n return h.create(\"img\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadItem__entityicon\",\n alt: \"\",\n src: this._result.photo\n })\n };\n return h.create(\"span\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadItem__iconwrapper\"\n }, h.create(\"span\", {\n className: this._result.icon_class\n }));\n };\n o.prototype.renderSubtext = function() {\n var p = this._result.decoration, q = this._result.ambiguity, r = (q && q.text), s = (((p && p.entity)) || ((q && q.entity)));\n if (r) {\n return new j([r,]).render();\n }\n else if (s) {\n this.setVAlign(false);\n return new k(s).setDefaultText(\"user\", \"Person\").setLeadingMiddot(true).setLimit(2).render();\n }\n \n ;\n };\n e.exports = o;\n});\n__d(\"FacebarTypeaheadKeywordItem\", [\"cx\",\"FacebarTypeaheadGrammarItem\",\"FacebarTypeaheadToken\",], function(a, b, c, d, e, f) {\n var g = b(\"cx\"), h = b(\"FacebarTypeaheadGrammarItem\"), i = b(\"FacebarTypeaheadToken\"), j = \"-cx-PUBLIC-fbFacebarTypeaheadToken__subtext\";\n for (var k in h) {\n if ((h.hasOwnProperty(k) && (k !== \"_metaprototype\"))) {\n m[k] = h[k];\n };\n };\n var l = ((h === null) ? null : h.prototype);\n m.prototype = Object.create(l);\n m.prototype.constructor = m;\n m.__superConstructor__ = h;\n function m(n) {\n h.call(this, n);\n };\n m.prototype.renderSubtext = function() {\n var n = new i([\"Search\",], j);\n return n.render();\n };\n e.exports = m;\n});\n__d(\"FacebarTypeaheadSponsoredEntityItem\", [\"AsyncRequest\",\"Bootloader\",\"CSS\",\"cx\",\"DOM\",\"emptyFunction\",\"Event\",\"HTML\",\"FacebarTypeaheadEntityItem\",\"FacebarTypeaheadToken\",\"tx\",\"TypeaheadSearchSponsored\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"Bootloader\"), i = b(\"CSS\"), j = b(\"cx\"), k = b(\"DOM\"), l = b(\"emptyFunction\"), m = b(\"Event\"), n = b(\"HTML\"), o = b(\"FacebarTypeaheadEntityItem\"), p = b(\"FacebarTypeaheadToken\"), q = b(\"tx\"), r = b(\"TypeaheadSearchSponsored\"), s = \"\\u00b7\";\n for (var t in o) {\n if ((o.hasOwnProperty(t) && (t !== \"_metaprototype\"))) {\n v[t] = o[t];\n };\n };\n var u = ((o === null) ? null : o.prototype);\n v.prototype = Object.create(u);\n v.prototype.constructor = v;\n v.__superConstructor__ = o;\n function v(w) {\n o.call(this, w);\n this.addClass(\"-cx-PRIVATE-fbFacebarTypeaheadItem__entityitem\");\n };\n v.prototype.renderSubtext = function() {\n var w = this._result, x = w.category;\n if (w.category.__html) {\n x = k.getText(n(x).getRootNode());\n };\n var y = [];\n y.push(q._(\"Sponsored {category}\", {\n category: x\n }));\n y.push(this.getHideLink());\n return new p(y).render();\n };\n v.prototype.render = function() {\n var w = u.render.call(this);\n i.addClass(w, \"-cx-PRIVATE-fbFacebarTypeaheadToken__sponsored\");\n return w;\n };\n v.prototype.getHideLink = function() {\n var w = k.create(\"a\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadItem__report\",\n href: \"#\",\n title: \"Hide the ad\"\n }, \"\\u2715\");\n m.listen(w, \"click\", this.hideSponsoredResult.bind(this));\n return w;\n };\n v.prototype.renderText = function() {\n var w = u.renderText.call(this);\n w.push(this.getSponsoredMessage());\n return w;\n };\n v.prototype.getSponsoredMessage = function() {\n if (this._result.s_message) {\n return k.create(\"span\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadItem__sponsoredmessage\"\n }, [((\" \" + s) + \" \"),this._result.s_message,])\n };\n return [];\n };\n v.prototype.hideSponsoredResult = function(event) {\n r.hideAdResult(this._result.uid);\n h.loadModules([\"AdsHidePoll\",\"Dialog\",], function(w, x) {\n var y = new x().setModal(true).setTitle(\"Ad was hidden\").setButtons(x.CLOSE);\n new w(y.getBody(), this._result.s_token).setShowTitle(false).setUndoHandler(function() {\n r.undoHideAdResult(this._result.uid);\n y.hide();\n }.bind(this)).renderAsync(function() {\n y.show();\n });\n }.bind(this));\n new g(\"/ajax/ads/hide\").setData({\n action: \"hide\",\n impression: this._result.s_token\n }).setMethod(\"post\").setHandler(l).send();\n };\n e.exports = v;\n});\n__d(\"FacebarTypeaheadWebSuggestionItem\", [\"cx\",\"DOM\",\"FacebarTypeaheadItem\",\"FacebarTypeaheadToken\",], function(a, b, c, d, e, f) {\n var g = b(\"cx\"), h = b(\"DOM\"), i = b(\"FacebarTypeaheadItem\"), j = b(\"FacebarTypeaheadToken\"), k = {\n EXACT_MATCH: 1,\n BING: 2,\n BING_POPULAR: 3,\n WEBSUGGESTIONS_AS_KEYWORDS: 4\n }, l = \"-cx-PUBLIC-fbFacebarTypeaheadToken__websuggestioninner\";\n for (var m in i) {\n if ((i.hasOwnProperty(m) && (m !== \"_metaprototype\"))) {\n o[m] = i[m];\n };\n };\n var n = ((i === null) ? null : i.prototype);\n o.prototype = Object.create(n);\n o.prototype.constructor = o;\n o.__superConstructor__ = i;\n function o(p) {\n i.call(this, p);\n this.addClass(\"-cx-PRIVATE-fbFacebarTypeaheadItem__queryitem\");\n };\n o.prototype.renderIcon = function() {\n return h.create(\"span\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadItem__iconwrapper\"\n }, h.create(\"span\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadItem__webicon\"\n }));\n };\n o.prototype.renderSubtext = function() {\n if (this._result.isLockedWebSearchMode) {\n return\n };\n var p, q;\n p = this._result.websuggestion_source;\n var r = ((p === k.WEBSUGGESTIONS_AS_KEYWORDS) ? \"Search\" : ((p === k.BING_POPULAR) ? \"Popular Web Search\" : \"Web Search\"));\n q = new j([r,], l);\n return q.render();\n };\n e.exports = o;\n});\n__d(\"FacebarTypeaheadRenderer\", [\"FacebarTypeaheadEntityItem\",\"FacebarTypeaheadGrammarItem\",\"FacebarTypeaheadKeywordItem\",\"FacebarTypeaheadWebSuggestionItem\",\"FacebarTypeaheadSponsoredEntityItem\",], function(a, b, c, d, e, f) {\n var g = b(\"FacebarTypeaheadEntityItem\"), h = b(\"FacebarTypeaheadGrammarItem\"), i = b(\"FacebarTypeaheadKeywordItem\"), j = b(\"FacebarTypeaheadWebSuggestionItem\"), k = b(\"FacebarTypeaheadSponsoredEntityItem\"), l = {\n };\n function m(o) {\n if (o.isSponsored) {\n return new k(o);\n }\n else if ((o.type == \"websuggestion\")) {\n return new j(o);\n }\n else if ((o.results_set_type == \"browse_type_blended\")) {\n return new i(o);\n }\n else if ((o.type == \"grammar\")) {\n return new h(o);\n }\n else return new g(o)\n \n \n \n ;\n };\n function n(o) {\n var p = ((!o.fetchType && !o.isSponsored) && !o.isLockedWebSearchMode), q = o.uid, r = (p && l[q]), s = m(o);\n if (!r) {\n this.inform(\"renderingItem\", {\n item: s,\n result: o\n });\n r = s.render();\n p = (p && s.cacheable());\n }\n ;\n var t = r;\n if (p) {\n l[q] = r;\n t = r.cloneNode(true);\n }\n ;\n s.highlight(t);\n return t;\n };\n e.exports = n;\n});"); |
| // 9566 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"seea0c17ebd1a26d49fc43a456e604c511a079af1"); |
| // 9567 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"G3fzU\",]);\n}\n;\n;\n__d(\"concatMap\", [], function(a, b, c, d, e, f) {\n function g(h, i) {\n var j = -1, k = i.length, l = [], m;\n while (((++j < k))) {\n m = h(i[j], j, i);\n ((Array.isArray(m) ? Array.prototype.push.apply(l, m) : Array.prototype.push.call(l, m)));\n };\n ;\n return l;\n };\n;\n e.exports = g;\n});\n__d(\"NodeHighlighter\", [\"concatMap\",\"createArrayFrom\",\"escapeRegex\",\"TokenizeUtil\",\"DOM\",], function(a, b, c, d, e, f) {\n var g = b(\"concatMap\"), h = b(\"createArrayFrom\"), i = b(\"escapeRegex\"), j = b(\"TokenizeUtil\"), k = b(\"DOM\");\n function l(o, p) {\n var q = k.getText(o).split(p), r = q.map(function(s) {\n if (p.test(s)) {\n return m(s);\n }\n ;\n ;\n return ((s || \"\"));\n });\n return ((((q.length > 1)) ? r : null));\n };\n;\n function m(o) {\n return k.create(\"span\", {\n class: \"highlightNode\"\n }, o);\n };\n;\n var n = {\n getTextNodes: function(o) {\n if (((this.isLeafNode(o) || this.isStopNode(o)))) {\n return o;\n }\n else if (this.isDiscardNode(o)) {\n return [];\n }\n \n ;\n ;\n return g(this.getTextNodes.bind(this), h(o.childNodes));\n },\n getHighlightCandidates: function() {\n return [];\n },\n isLeafNode: function(o) {\n return k.isTextNode(o);\n },\n isStopNode: function(o) {\n return false;\n },\n isDiscardNode: function(o) {\n return false;\n },\n createSegmentedRegex: function(o) {\n var p = j.getPunctuation();\n return ((((((((((((\"(^|\\\\s|\" + p)) + \")(\")) + o.map(String).map(i).join(\"|\"))) + \")(?=(?:$|\\\\s|\")) + p)) + \"))\"));\n },\n createNonSegmentedRegex: function(o) {\n return ((((\"(\" + o.map(String).join(\"|\"))) + \")\"));\n },\n createRegex: function(o) {\n var p = /[\\u0E00-\\u109F\\u2000-\\uFFFF]/, q = [], r = [];\n o.forEach(function(t) {\n if (p.test(t)) {\n r.push(t);\n }\n else q.push(t);\n ;\n ;\n });\n var s = \"\";\n if (q.length) {\n s += this.createSegmentedRegex(q);\n s += (((r.length) ? \"|\" : \"\"));\n }\n ;\n ;\n if (r.length) {\n s += this.createNonSegmentedRegex(r);\n }\n ;\n ;\n return new RegExp(s, \"i\");\n },\n highlight: function(o, p) {\n if (((((!p || ((p.length === 0)))) || !o))) {\n return;\n }\n ;\n ;\n var q = g(function(s) {\n return g(this.getTextNodes.bind(this), k.scry(o, s));\n }.bind(this), this.getHighlightCandidates()), r = this.createRegex(p);\n q.forEach(function(s) {\n var t = l(s, r);\n if (t) {\n if (this.isStopNode(s)) {\n k.setContent(s, t);\n }\n else k.replace(s, t);\n ;\n }\n ;\n ;\n }.bind(this));\n }\n };\n e.exports = n;\n});\n__d(\"BrowseFacebarHighlighter\", [\"copyProperties\",\"JSBNG__CSS\",\"csx\",\"escapeRegex\",\"NodeHighlighter\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"JSBNG__CSS\"), i = b(\"csx\"), j = b(\"escapeRegex\"), k = b(\"NodeHighlighter\"), l = {\n };\n g(l, k, {\n getHighlightCandidates: function() {\n return [\".-cx-PUBLIC-fbFacebarTypeaheadItem__labeltitle\",];\n },\n isDiscardNode: function(m) {\n return h.hasClass(m, \"DefaultText\");\n },\n createSegmentedRegex: function(m) {\n return ((((\"(^|\\\\s|\\\\b)(\" + m.map(String).map(j).join(\"|\"))) + \")\"));\n }\n });\n e.exports = l;\n});\n__d(\"BrowseNUXBootstrap\", [\"Arbiter\",\"AsyncRequest\",\"invariant\",\"Run\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncRequest\"), i = b(\"invariant\"), j = b(\"Run\"), k = null, l = null, m = null, n = {\n registerFacebar: function(o) {\n i(!k);\n k = o;\n j.onLoad(function() {\n new h(\"/ajax/browse/nux.php\").setAllowCrossPageTransition(true).send();\n });\n },\n registerStory: function(o) {\n l = o;\n g.inform(\"BrowseNUX/story\", {\n }, g.BEHAVIOR_STATE);\n },\n registerTypeaheadUnit: function(o) {\n m = o;\n g.inform(\"BrowseNUX/typeaheadUnit\", {\n }, g.BEHAVIOR_STATE);\n },\n getFacebarData: function() {\n return k;\n },\n getStoryData: function() {\n return l;\n },\n getTypeaheadUnitData: function() {\n return m;\n }\n };\n e.exports = n;\n});\n__d(\"BrowseNUXCheckpoint\", [\"AsyncRequest\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"emptyFunction\");\n function i(l, m) {\n new g(\"/ajax/browse/nux_checkpoint.php\").setData(l).setFinallyHandler(((m || h))).send();\n };\n;\n var j = null, k = {\n SHOW_MEGAPHONE: 0,\n RESULTS_VIEW: 1,\n COMPLETED: 2,\n init: function(l) {\n j = l;\n },\n getStep: function() {\n return j;\n },\n setStep: function(l, m) {\n j = l;\n i({\n nextStep: l\n }, m);\n },\n setFinished: function(l) {\n j = k.COMPLETED;\n i({\n finished: true\n }, l);\n }\n };\n e.exports = k;\n});\n__d(\"BrowseNUXMegaphone\", [\"JSBNG__Event\",\"function-extensions\",\"Animation\",\"ArbiterMixin\",\"BrowseNUXBootstrap\",\"JSBNG__CSS\",\"cx\",\"DOM\",\"Ease\",\"MegaphoneHelper\",\"Style\",\"Vector\",\"$\",\"copyProperties\",\"csx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\");\n b(\"function-extensions\");\n var h = b(\"Animation\"), i = b(\"ArbiterMixin\"), j = b(\"BrowseNUXBootstrap\"), k = b(\"JSBNG__CSS\"), l = b(\"cx\"), m = b(\"DOM\"), n = b(\"Ease\"), o = b(\"MegaphoneHelper\"), p = b(\"Style\"), q = b(\"Vector\"), r = b(\"$\"), s = b(\"copyProperties\"), t = b(\"csx\");\n function u(v) {\n this.megaphone = v;\n this.contentArea = null;\n this.className = null;\n this.startButton = m.JSBNG__find(this.megaphone, \"a.-cx-PRIVATE-fbBrowseNUXMegaphone__button\");\n this.hideLink = m.JSBNG__find(this.megaphone, \"a.-cx-PRIVATE-fbBrowseNUXMegaphone__hidelink\");\n g.listen(this.startButton, \"click\", this._handleStart.bind(this));\n g.listen(this.hideLink, \"click\", this._handleHide.bind(this));\n };\n;\n s(u.prototype, i, {\n _attachListener: function() {\n var v = 1, w = function() {\n var x = this._getScrollOpacity();\n if (((x !== v))) {\n p.set(this.megaphone, \"opacity\", ((((x === 1)) ? \"\" : x)));\n k.conditionShow(this.megaphone, ((x > 0)));\n v = x;\n }\n ;\n ;\n }.bind(this);\n this.listener = g.listen(window, \"JSBNG__scroll\", w);\n w();\n },\n _removeListener: function() {\n if (this.listener) {\n this.listener.remove();\n this.listener = null;\n }\n ;\n ;\n },\n _getScrollOpacity: function() {\n var v = q.getElementPosition(r(\"globalContainer\"), \"viewport\"), w = Math.max(0, Math.min(1, ((((v.y + 70)) / 40))));\n return n.circOut(w);\n },\n _handleStart: function() {\n this.inform(\"start\");\n },\n _handleHide: function() {\n var v = j.getStoryData();\n o.hideStory(v.id, v.JSBNG__location);\n this.inform(\"hide\");\n this.hide();\n },\n setClass: function(v) {\n ((this.className && k.removeClass(this.megaphone, this.className)));\n k.addClass(this.megaphone, v);\n this.className = v;\n },\n show: function(v) {\n if (this.shown) {\n return;\n }\n ;\n ;\n this.shown = true;\n this.contentArea = v;\n var w = 5, x = ((r(\"blueBarHolder\").offsetHeight - w));\n p.set(this.megaphone, \"JSBNG__top\", ((x + \"px\")));\n p.set(this.megaphone, \"opacity\", 0);\n m.appendContent(r(\"pageHead\"), this.megaphone);\n k.show(this.megaphone);\n var y = ((((this.megaphone.offsetHeight || 90)) - w));\n if (k.hasClass(JSBNG__document.body, \"-cx-PUBLIC-fbBrowseLayout__fullwidth\")) {\n y = 0;\n }\n ;\n ;\n new h(v).to(\"marginTop\", y).duration(500).ease(n.sineOut).go();\n var z = this._getScrollOpacity();\n if (z) {\n new h(this.megaphone).duration(250).checkpoint().to(\"opacity\", z).duration(250).ease(n.makePowerIn(2)).ondone(function() {\n if (((z === 1))) {\n p.set(this.megaphone, \"opacity\", \"\");\n }\n ;\n ;\n this._attachListener();\n }.bind(this)).go();\n }\n else {\n this._attachListener();\n k.hide(this.megaphone);\n }\n ;\n ;\n },\n hide: function() {\n if (!this.shown) {\n return;\n }\n ;\n ;\n this.shown = false;\n this._removeListener();\n new h(this.megaphone).to(\"opacity\", 0).duration(250).ease(n.makePowerOut(2)).go();\n new h(this.contentArea).to(\"marginTop\", 0).duration(500).ease(n.sineIn).ondone(m.remove.curry(this.megaphone)).go();\n }\n });\n e.exports = u;\n});\n__d(\"TextSelection\", [], function(a, b, c, d, e, f) {\n var g = window.JSBNG__getSelection, h = JSBNG__document.selection, i = {\n JSBNG__getSelection: function() {\n if (g) {\n return ((g() + \"\"));\n }\n else if (h) {\n return h.createRange().text;\n }\n \n ;\n ;\n return null;\n },\n clearSelection: function() {\n if (g) {\n g().removeAllRanges();\n }\n else if (h) {\n h.empty();\n }\n \n ;\n ;\n },\n selectAllInNode: function(j) {\n var k = JSBNG__document.body.createTextRange;\n if (k) {\n var l = k();\n l.moveToElementText(j);\n l.select();\n }\n else if (g) {\n var m = g(), n = JSBNG__document.createRange();\n n.selectNodeContents(j);\n m.removeAllRanges();\n m.addRange(n);\n }\n \n ;\n ;\n }\n };\n e.exports = i;\n});\n__d(\"BrowseNUXTourDialog\", [\"JSBNG__Event\",\"Animation\",\"JSBNG__CSS\",\"DOMQuery\",\"LayerSlowlyFadeOnShow\",\"TextSelection\",\"UserAgent\",\"copyProperties\",\"csx\",\"cx\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Animation\"), i = b(\"JSBNG__CSS\"), j = b(\"DOMQuery\"), k = b(\"LayerSlowlyFadeOnShow\"), l = b(\"TextSelection\"), m = b(\"UserAgent\"), n = b(\"copyProperties\"), o = b(\"csx\"), p = b(\"cx\"), q = b(\"emptyFunction\");\n function r(s, t) {\n this.dialog = s;\n this.typeahead = t;\n this.dialog.enableBehavior(k);\n this._closeButtonHandler = null;\n i.addClass(this.dialog.getRoot(), \"-cx-PRIVATE-fbBrowseNUXTourDialog__root\");\n i.addClass(this.dialog.getContent(), \"-cx-PRIVATE-fbBrowseNUXTourDialog__content\");\n this.subscription = this.dialog.subscribe(\"beforehide\", q.thatReturnsFalse);\n };\n;\n n(r.prototype, {\n showWithContext: function(s, t) {\n this.resultIndex = t;\n this.dialog.setContext(s).show();\n l.clearSelection();\n },\n getButton: function() {\n return j.JSBNG__find(this.dialog.getRoot(), \"a.-cx-PRIVATE-fbBrowseNUX__nextbutton\");\n },\n getCloseButton: function() {\n return j.JSBNG__find(this.dialog.getRoot(), \"a.-cx-PRIVATE-fbBrowseNUX__closebutton\");\n },\n activateCloseButton: function(s) {\n var t = this.getCloseButton();\n this._closeButtonHandler = g.listen(t, \"click\", function(JSBNG__event) {\n this.reset();\n s(JSBNG__event);\n }.bind(this));\n i.show(t);\n },\n showButton: function() {\n var s = this.getButton();\n i.removeClass(s, \"invisible_elem\");\n new h(s).to(\"opacity\", 1).go();\n },\n setNextHandler: function(s) {\n var t = g.listen(this.getButton(), \"click\", function(JSBNG__event) {\n t.remove();\n this.reset();\n s(JSBNG__event);\n }.bind(this));\n },\n reset: function() {\n this.subscription.unsubscribe();\n ((this._closeButtonHandler && this._closeButtonHandler.remove()));\n this.dialog.hide();\n }\n });\n e.exports = r;\n});\n__d(\"AutoTypewriter\", [], function(a, b, c, d, e, f) {\n var g = [null,null,], h = {\n request: function(i, j, k) {\n k = ((k || 200));\n var l = false, m = 1, n = g.length;\n (function o() {\n if (l) {\n return;\n }\n ;\n ;\n var p = j.substr(0, m);\n if (((p === j))) {\n i(p, true);\n g[n] = null;\n }\n else {\n i(p, false);\n m++;\n JSBNG__setTimeout(o, k);\n }\n ;\n ;\n })();\n g[n] = function() {\n l = true;\n };\n return n;\n },\n cancel: function(i) {\n if (!g[i]) {\n return false;\n }\n ;\n ;\n g[i]();\n g[i] = null;\n return true;\n }\n };\n e.exports = h;\n});\n__d(\"BrowseNUXTypewriter\", [\"Arbiter\",\"AutoTypewriter\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AutoTypewriter\"), i = b(\"copyProperties\");\n function j(k) {\n this.structuredInput = k;\n };\n;\n i(j.prototype, {\n setValue: function(k, l) {\n this._type(k, function(m, n) {\n g.inform(\"BrowseNUX/typing\");\n this.structuredInput.setText(m);\n this.structuredInput.togglePlaceholder();\n this.structuredInput.moveSelectionToEnd();\n }.bind(this), l);\n },\n prependFragment: function(k, l) {\n var m = this.structuredInput, n = m.getStructure();\n this._type(k.text, function(o) {\n g.inform(\"BrowseNUX/typing\");\n k.text = o;\n m.setStructure([k,].concat(n));\n m.setSelection({\n offset: o.length,\n length: 0\n });\n }, l);\n },\n abort: function() {\n if (this._token) {\n h.cancel(this._token);\n this._cleanup();\n }\n ;\n ;\n },\n _type: function(k, l, m) {\n this.abort();\n var n = this.structuredInput;\n this._wasEnabled = n.getEnabled();\n n.setEnabled(true);\n n.JSBNG__focus();\n this._token = h.request(function(o, p) {\n l(o);\n if (p) {\n this._cleanup();\n ((m && m()));\n }\n ;\n ;\n }.bind(this), k, 100);\n },\n _cleanup: function() {\n this.structuredInput.setEnabled(this._wasEnabled);\n delete this._token;\n delete this._wasEnabled;\n }\n });\n e.exports = j;\n});\n__d(\"FacebarSemanticQuery\", [\"URI\",\"copyProperties\",\"Env\",], function(a, b, c, d, e, f) {\n var g = b(\"URI\"), h = b(\"copyProperties\"), i = b(\"Env\"), j = \"str\";\n function k(t) {\n var u = {\n me: i.user\n };\n return h(u, t.semantic_map);\n };\n;\n function l(t, u) {\n var v = k(t);\n if (((typeof v[u] !== \"undefined\"))) {\n return String(v[u]);\n }\n ;\n ;\n return u;\n };\n;\n function m(t) {\n return new g(\"/profile.php\").addQueryData({\n id: t\n });\n };\n;\n function n(t, u) {\n var v, w = q(u), x = {\n };\n for (var y = 0; ((y < w.length)); ++y) {\n if (((w[y].indexOf(\"path(\") === 0))) {\n v = g(q(w[y])[0]);\n }\n else {\n var z = w[y].substring(6, w[y].indexOf(\"(\")).split(\"_\"), aa = q(w[y]);\n for (var ba = 0; ((ba < z.length)); ++ba) {\n x[z[ba]] = l(t, aa[ba]);\n ;\n };\n ;\n }\n ;\n ;\n };\n ;\n v.addQueryData(x);\n return v;\n };\n;\n function o(t, u) {\n var v = [u,], w = [], x = t.browse_functions, y = t.search_path;\n while (((v.length > 0))) {\n var z = v.pop();\n if (!p(z)) {\n w.push(z);\n continue;\n }\n ;\n ;\n var aa = z.substring(0, z.indexOf(\"(\")), ba = aa, ca = q(z);\n if (!x[aa]) {\n w = [];\n break;\n }\n ;\n ;\n var da = x[aa].minNumParams, ea = x[aa].maxNumParams;\n if (((v.length > 0))) {\n if (x[aa].numParamsUnbounded) {\n if (((w.length > 0))) {\n aa += ((\"-\" + ca.length));\n }\n ;\n ;\n }\n else if (((((((ca.length != 1)) && ((ca.length > da)))) || ((((ca.length === 0)) && ((da != ea))))))) {\n aa += ((\"-\" + ca.length));\n }\n \n ;\n }\n ;\n ;\n v.push(aa);\n for (var fa = 0; ((fa < ca.length)); fa++) {\n if (((ca[fa].length === 0))) {\n continue;\n }\n ;\n ;\n if (x[ba].allowsFreeText) {\n v.push(((((j + \"/\")) + encodeURIComponent(ca[fa]))));\n }\n else v.push(ca[fa]);\n ;\n ;\n };\n ;\n };\n ;\n return g(((y + w.join(\"/\"))));\n };\n;\n function p(t) {\n return (/^[a-z\\-]+\\(.*\\)$/).test(t);\n };\n;\n function q(t) {\n if (((!p(t) && ((t.indexOf(\"param_\") !== 0))))) {\n return [t,];\n }\n ;\n ;\n var u = t.substring(((t.indexOf(\"(\") + 1)), ((t.length - 1)));\n if (((u.length === 0))) {\n return [];\n }\n ;\n ;\n return r(u);\n };\n;\n function r(t) {\n var u = [], v = 0, w = 0;\n for (var x = 0; ((x < t.length)); ++x) {\n if (((((t[x] == \",\")) && ((w === 0))))) {\n u.push(t.substring(v, x));\n v = ((x + 1));\n }\n else if (((t[x] == \"(\"))) {\n w++;\n }\n else if (((t[x] == \")\"))) {\n w--;\n }\n \n \n ;\n ;\n };\n ;\n u.push(t.substring(v, t.length));\n return u;\n };\n;\n function s(t, u) {\n this.facebarConfig = t;\n this.unmapped = ((u || \"\")).trim();\n this.mapped = l(t, this.unmapped);\n this.position = null;\n };\n;\n s.prototype.isEntity = function() {\n return (/^\\d+$/).test(this.mapped);\n };\n s.prototype.isURI = function() {\n return ((this.mapped.indexOf(\"uri(\") === 0));\n };\n s.prototype.isImplemented = function() {\n return ((this.mapped && ((this.mapped.indexOf(\"*\") == -1))));\n };\n s.prototype.getUnimplemented = function() {\n return ((this.mapped.match(/\\*[\\w\\-]+\\(/g) || [])).map(function(t) {\n return t.substr(1, ((t.length - 2)));\n });\n };\n s.prototype.getURI = function() {\n if (this.isEntity()) {\n return m(this.mapped);\n }\n else if (this.isURI()) {\n return n(this.facebarConfig, this.mapped);\n }\n else return o(this.facebarConfig, this.unmapped)\n \n ;\n };\n e.exports = s;\n});\n__d(\"FacebarURI\", [\"URI\",\"Env\",\"FacebarSemanticQuery\",], function(a, b, c, d, e, f) {\n var g = b(\"URI\"), h = b(\"Env\"), i = b(\"FacebarSemanticQuery\"), j = {\n getSearchRawPrefix: function() {\n return \"search\";\n },\n getSearchPath: function() {\n return ((((\"/\" + this.getSearchRawPrefix())) + \"/\"));\n },\n getURI: function(k, l) {\n var m = null, n = ((!l.song && l.path));\n if (n) {\n m = new g(n);\n if (((l.type == \"user\"))) {\n m.addQueryData({\n fref: \"ts\"\n });\n }\n ;\n ;\n }\n else {\n var o = new i(k, l.semantic);\n if (((o && o.isImplemented()))) {\n m = o.getURI();\n }\n ;\n ;\n }\n ;\n ;\n return ((m && j.getQualifiedURI(m)));\n },\n getQualifiedURI: function(k) {\n var l = new g(k);\n if (!l.getDomain()) {\n var m = g(h.www_base);\n l.setProtocol(m.getProtocol()).setDomain(m.getDomain()).setPort(m.getPort());\n }\n ;\n ;\n return l;\n }\n };\n e.exports = j;\n});\n__d(\"BrowseNUXController\", [\"JSBNG__Event\",\"function-extensions\",\"Arbiter\",\"BrowseLogger\",\"BrowseNUXBootstrap\",\"BrowseNUXCheckpoint\",\"BrowseNUXMegaphone\",\"BrowseNUXTourDialog\",\"BrowseNUXTypewriter\",\"JSBNG__CSS\",\"DOM\",\"DOMScroll\",\"FacebarStructuredText\",\"FacebarURI\",\"KeyEventController\",\"LayerSlowlyFadeOnShow\",\"ModalMask\",\"PageTransitions\",\"Parent\",\"Run\",\"SubscriptionsHandler\",\"URI\",\"Vector\",\"copyProperties\",\"csx\",\"cx\",\"emptyFunction\",\"ge\",\"startsWith\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\");\n b(\"function-extensions\");\n var h = b(\"Arbiter\"), i = b(\"BrowseLogger\"), j = b(\"BrowseNUXBootstrap\"), k = b(\"BrowseNUXCheckpoint\"), l = b(\"BrowseNUXMegaphone\"), m = b(\"BrowseNUXTourDialog\"), n = b(\"BrowseNUXTypewriter\"), o = b(\"JSBNG__CSS\"), p = b(\"DOM\"), q = b(\"DOMScroll\"), r = b(\"FacebarStructuredText\"), s = b(\"FacebarURI\"), t = b(\"KeyEventController\"), u = b(\"LayerSlowlyFadeOnShow\"), v = b(\"ModalMask\"), w = b(\"PageTransitions\"), x = b(\"Parent\"), y = b(\"Run\"), z = b(\"SubscriptionsHandler\"), aa = b(\"URI\"), ba = b(\"Vector\"), ca = b(\"copyProperties\"), da = b(\"csx\"), ea = b(\"cx\"), fa = b(\"emptyFunction\"), ga = b(\"ge\"), ha = b(\"startsWith\"), ia = {\n init: function(ma) {\n ca(ia, {\n bootstrap: j.getFacebarData(),\n megaphone: new l(ma.megaphone),\n fragments: ma.fragments,\n resultURI: ma.resultURI,\n buttons: ma.buttons,\n dialogs: ma.dialogs,\n endDialog: ma.endDialog\n });\n k.init(ma.nextStep);\n h.inform(\"BrowseNUX/initialized\");\n ia.initMegaphoneHandler();\n },\n initMegaphoneHandler: function() {\n var ma = function() {\n return ((k.getStep() == k.SHOW_MEGAPHONE));\n };\n h.subscribe(\"BrowseNUX/story\", function() {\n if (ma()) {\n ia.showStoryMegaphone();\n h.inform(\"BrowseNUX/starting\");\n }\n ;\n ;\n });\n h.subscribe(\"BrowseNUX/typeaheadUnit\", function() {\n if (ma()) {\n ia.showViewMegaphone();\n h.inform(\"BrowseNUX/starting\");\n }\n ;\n ;\n });\n },\n startAtNextStep: function() {\n var ma = w.getNextURI().getPath();\n switch (k.getStep()) {\n case k.SHOW_MEGAPHONE:\n break;\n case k.RESULTS_VIEW:\n if (ha(ma, s.getSearchPath())) {\n JSBNG__setTimeout(function() {\n ia.showEndDialog();\n h.inform(\"BrowseNUX/starting\");\n }, 2000);\n }\n else i.logNUXStep(\"abandon\");\n ;\n ;\n break;\n default:\n return;\n };\n ;\n y.onAfterLoad(function() {\n w.setCompletionCallback(ia.startAtNextStep);\n });\n },\n toggleSponsoredResults: function(ma) {\n var na = ia.bootstrap, oa = na.typeahead, pa = na.FacebarTypeaheadSponsoredResults;\n if (pa) {\n if (ma) {\n oa.enableBehavior(pa);\n }\n else oa.disableBehavior(pa);\n ;\n }\n ;\n ;\n },\n showMegaphone: function(ma) {\n var na = false, oa = ma.subscribe(\"start\", function() {\n na = true;\n ma.hide();\n ia.showSearchBarTour();\n }), pa = ma.subscribe(\"hide\", function() {\n na = true;\n i.logNUXStep(\"hide\");\n });\n i.logNUXStep(\"show_megaphone\");\n ia.prefetchResults();\n ka(function() {\n ((na || i.logNUXStep(\"ignore\")));\n oa.unsubscribe();\n pa.unsubscribe();\n });\n },\n showViewMegaphone: function() {\n var ma = j.getTypeaheadUnitData();\n ia.showMegaphone(ma);\n },\n showStoryMegaphone: function() {\n var ma = ((ga(\"contentArea\") || ga(\"JSBNG__content\")));\n if (ma) {\n var na = ia.megaphone, oa = j.getStoryData();\n na.setClass(oa.className);\n na.show(ma);\n ia.showMegaphone(na);\n }\n ;\n ;\n },\n prefetchResults: function() {\n var ma = ia.bootstrap.typeahead.getData(), na = ia.fragments;\n ma.query(r.fromStruct([na.page,]));\n ma.query(r.fromStruct([na.edge,na.page,]));\n },\n showSearchBarTour: function(ma) {\n var na = ia.dialogs;\n i.logNUXStep(\"start\");\n var oa = ia.bootstrap.input, pa = ia.bootstrap.typeahead, qa = la(pa);\n ia.toggleSponsoredResults(false);\n t.registerKey(\"BACKSPACE\", fa.thatReturnsFalse);\n oa.setEnabled(false);\n v.show();\n var ra = new m(na.search, pa), sa = new n(oa), ta = ia.fragments.page, ua = ta.text.toLowerCase(), va = function() {\n ra.showWithContext(oa.getRoot(), 0);\n }, wa = function() {\n oa.JSBNG__focus();\n sa.setValue(ua, function() {\n JSBNG__setTimeout(function() {\n oa.setStructure([ta,]);\n oa.moveSelectionToEnd();\n ja(pa, function() {\n ra.showButton();\n });\n }, 1000);\n });\n };\n JSBNG__setTimeout(va, 0);\n JSBNG__setTimeout(wa, 2000);\n var xa = new m(na.phrase, pa), ya = ia.fragments.edge;\n na.phrase.setOffsetY(-10);\n ra.setNextHandler(function() {\n i.logNUXStep(\"phrase\");\n sa.prependFragment(ya, function() {\n ja(pa, function() {\n var ab = pa.getView().getItems()[0];\n if (ab) {\n var bb = p.JSBNG__find(ab, \"span.-cx-PUBLIC-fbFacebarTypeaheadItem__label\");\n xa.showWithContext(bb, 1);\n }\n else xa.showWithContext(oa.getRoot(), 0);\n ;\n ;\n JSBNG__setTimeout(xa.showButton.bind(xa), 2000);\n });\n });\n });\n xa.setNextHandler(function() {\n i.logNUXStep(\"personalized\");\n k.setStep(k.RESULTS_VIEW, function() {\n qa.release();\n w.go(aa(ia.resultURI).addQueryData({\n view: \"list\"\n }));\n });\n });\n o.addClass(JSBNG__document.body, \"-cx-PUBLIC-fbBrowseNUX__shown\");\n function za() {\n ia.toggleSponsoredResults(true);\n sa.abort();\n qa.release();\n ra.reset();\n xa.reset();\n v.hide();\n oa.setEnabled(true);\n o.removeClass(JSBNG__document.body, \"-cx-PUBLIC-fbBrowseNUX__shown\");\n };\n ;\n if (ma) {\n ra.activateCloseButton(za);\n xa.activateCloseButton(za);\n }\n ;\n ;\n ka(za);\n },\n showEndDialog: function() {\n var ma = ia.bootstrap.input, na = ia.bootstrap.typeahead, oa = ia.endDialog;\n oa.enableBehavior(u);\n oa.show();\n i.logNUXStep(\"end_dialog\");\n k.setFinished();\n h.inform(\"BrowseNUX/finished\");\n var pa = function(sa) {\n ma.setStructure([]);\n ma.togglePlaceholder();\n ma.JSBNG__focus();\n if (o.hasClass(JSBNG__document.documentElement, \"tinyViewport\")) {\n var ta = new ba(0, 0, \"JSBNG__document\");\n q.JSBNG__scrollTo(ta, true, false, false, sa);\n }\n else if (sa) {\n sa();\n }\n \n ;\n ;\n }, qa = oa.subscribe(\"button\", function(sa, ta) {\n oa.hide();\n switch (ta.getAttribute(\"data-action\")) {\n case \"replay\":\n ia.showSearchBarTour(true);\n i.logNUXStep(\"replay\");\n break;\n case \"search\":\n pa();\n i.logNUXStep(\"search\");\n break;\n case \"cancel\":\n i.logNUXStep(\"cancel\");\n break;\n };\n ;\n }), ra = g.listen(oa.getRoot(), \"click\", function(JSBNG__event) {\n var sa = JSBNG__event.getTarget();\n if (sa) {\n var ta;\n if (sa.getAttribute(\"data-action\")) {\n ta = sa.getAttribute(\"data-action\");\n }\n else ta = sa.parentNode.getAttribute(\"data-action\");\n ;\n ;\n if (ta) {\n i.logNUXStep(ta);\n }\n ;\n ;\n }\n ;\n ;\n var ua = x.byClass(sa, \"-cx-PRIVATE-fbBrowseNUX__dialogsample\");\n if (((!ua || JSBNG__event.isDefaultRequested()))) {\n return;\n }\n ;\n ;\n oa.hide();\n pa(function() {\n var va = ((ua.getAttribute(\"data-query\") + \" \")), wa = new n(ma), xa = la(na);\n JSBNG__setTimeout(function() {\n wa.setValue(va, function() {\n ja(na, function() {\n xa.release();\n w.go(ua.getAttribute(\"href\"));\n });\n });\n }, 1000);\n });\n return false;\n });\n ka(function() {\n ra.remove();\n qa.unsubscribe();\n });\n }\n };\n function ja(ma, na) {\n var oa = new h();\n oa.registerCallback(na, [\"timeout\",\"render\",]);\n JSBNG__setTimeout(oa.inform.bind(oa, \"timeout\"), 2000);\n var pa = JSBNG__setTimeout(ra, 6000), qa = ma.subscribe(\"render\", ra);\n function ra() {\n qa.unsubscribe();\n JSBNG__clearTimeout(pa);\n oa.inform(\"render\");\n };\n ;\n ka(qa.unsubscribe.bind(qa));\n };\n;\n function ka(ma) {\n w.registerHandler(ma, 10);\n };\n;\n function la(ma) {\n var na = new z(\"FacebarTypeaheadLock\");\n na.addSubscriptions(g.listen(ia.bootstrap.input.getRichInput(), \"keydown\", fa.thatReturnsFalse), ma.getCore().subscribe(\"close\", fa.thatReturnsFalse), ma.getView().subscribe([\"beforeHighlight\",\"beforeSelect\",], fa.thatReturnsFalse));\n return na;\n };\n;\n e.exports = ia;\n});\n__d(\"FacebarResultStore\", [\"copyProperties\",\"concatMap\",\"FacebarResultStoreUtils\",\"TokenizeUtil\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"concatMap\"), i = b(\"FacebarResultStoreUtils\"), j = b(\"TokenizeUtil\"), k = \"unimplemented\";\n function l(m, n, o, p) {\n this.facebarConfig = m;\n this.facebarConfig.grammar_stop_words_penalty = ((this.facebarConfig.grammar_stop_words_penalty || 2));\n this.facebarConfig.grammar_stop_words = ((this.facebarConfig.grammar_stop_words || {\n }));\n this.facebarConfig.options = p;\n this.tokenize = n;\n this.getEntry = o;\n this.typeaheadTypeMap = this.facebarConfig.mapped_types;\n this.facebarConfig.typeahead_types.forEach(function(q) {\n this.typeaheadTypeMap[q] = q;\n }.bind(this));\n this.resetCaches();\n this.cacheEnabled(true);\n };\n;\n l.prototype.transformStructured = function(m) {\n var n = [], o = [], p = \"\", q = \"\";\n m.forEach(function(t, u) {\n if (t.isType(\"text\")) {\n p += t.getText();\n q = ((((q == null)) ? null : ((q + t.getText()))));\n }\n else {\n var v = p.match(/\\\"/g);\n if (((v && ((v.length % 2))))) {\n p = ((p.replace(/\\s+$/, \"\") + \"\\\"\"));\n }\n ;\n ;\n if (p.length) {\n Array.prototype.push.apply(n, this.tokenize(p));\n o.push(p);\n p = \"\";\n }\n ;\n ;\n n.push(t.toStruct());\n o.push({\n uid: String(t.getUID()),\n type: this._getFBObjectType(t.getTypePart(1)),\n text: t.getText()\n });\n q = null;\n }\n ;\n ;\n }.bind(this));\n if (p.length) {\n if (((p[((p.length - 1))] == \"'\"))) {\n p = p.substr(0, ((p.length - 1)));\n }\n ;\n ;\n Array.prototype.push.apply(n, this.tokenize(p));\n o.push(p);\n if (((p[((p.length - 1))] == \" \"))) {\n n.push(\"\");\n }\n ;\n ;\n }\n ;\n ;\n var r = JSON.stringify(o), s = r.replace(/\\]$/, \"\").replace(/\\\"$/, \"\");\n s = s.replace(/\\s{2,}/g, \" \");\n return {\n tokens: n,\n text_form: r,\n is_empty: !!r.match(/^\\[(\\\"\\s*\\\")?\\]$/),\n raw_text: q,\n cache_id: s\n };\n };\n l.prototype.resetCaches = function() {\n this.bootstrapCache = {\n };\n this.queryCache = {\n \"\": {\n tokens: [],\n results: []\n }\n };\n };\n l.prototype.setNullState = function(m) {\n this.facebarConfig.null_state = m.map(this._extractStructure.bind(this));\n };\n l.prototype.addEntryToNullState = function(m) {\n if (this.facebarConfig.null_state) {\n var n = ((this.facebarConfig.entity_cost + m.grammar_costs[((((\"{\" + m.type)) + \"}\"))])), o = i.processEntityResult(m.type, m.uid, m.text, n);\n this.facebarConfig.null_state.unshift(o);\n }\n ;\n ;\n };\n l.prototype.setSortFunction = function(m) {\n this._sortFunction = m;\n };\n l.prototype.addBootstrap = function(m) {\n var n = this.bootstrapCache;\n m.forEach(function(o) {\n var p = this.getEntry(o);\n p.bootstrapped = true;\n var q = this.tokenize(p.textToIndex, true);\n if (p.tokens) {\n Array.prototype.push.apply(q, p.tokens.split(\" \"));\n }\n ;\n ;\n q.forEach(function(r) {\n if (!n.hasOwnProperty(r)) {\n n[r] = {\n };\n }\n ;\n ;\n n[r][o] = true;\n });\n }, this);\n };\n l.prototype.addNullStateToQueryCache = function(m) {\n this.saveResults(this.facebarConfig.null_state, m, true);\n };\n l.prototype.getResults = function(m) {\n if (((((m.tokens.length === 0)) || ((((m.tokens.length == 1)) && ((m.tokens[0] === \"\"))))))) {\n return {\n results: ((this.facebarConfig.null_state || [])),\n null_state: true\n };\n }\n ;\n ;\n var n = this._getBestQueryCache(m.cache_id), o = n.results, p = {\n }, q = this._getBootstrapMatchByType(m.tokens, p), r = this._addMatchingBootstrapResults(m.tokens, ((q[0] || {\n })));\n Array.prototype.push.apply(r, h(this._getResultsFromCache.bind(this, q, m.tokens), o));\n var s = {\n }, t = [], u = false, v = 0;\n r.sort(this._sortFunction).forEach(function(w) {\n w.semantic = w.semantic.toLowerCase();\n if (!w.termMatches) {\n w.termMatches = p[parseInt(w.semantic, 10)];\n }\n ;\n ;\n var x = l.getUniqueSemantic(w.semantic);\n if (!x) {\n return;\n }\n ;\n ;\n if (s[x]) {\n if (w.isJSBootstrapMatch) {\n s[x].isJSBootstrapMatch = true;\n s[x].bootstrapCost = w.bootstrapCost;\n }\n else if (((((s[x].isJSBootstrapMatch && ((w.backendCost !== undefined)))) && ((s[x].backendCost === undefined))))) {\n s[x].backendCost = w.backendCost;\n }\n \n ;\n ;\n if (!!w.tags) {\n s[x].tags = w.tags;\n }\n ;\n ;\n return;\n }\n ;\n ;\n if (((u && w.blankFilled))) {\n return;\n }\n ;\n ;\n if (((w.type.indexOf(\"browse_type\") >= 0))) {\n v += 1;\n if (((((this.facebarConfig.maxGrammarResults !== undefined)) && ((v > this.facebarConfig.maxGrammarResults))))) {\n return;\n }\n ;\n ;\n }\n ;\n ;\n u = ((u || !!w.blankFilled));\n s[x] = w;\n t.push(w);\n }.bind(this));\n return {\n results: t,\n webSuggOnTop: n.webSuggOnTop,\n webSuggLimit: n.webSuggLimit,\n webSuggLimitSeeMore: n.webSuggLimitSeeMore\n };\n };\n l.prototype.cacheEnabled = function(m) {\n this._enableCache = m;\n };\n l.prototype.saveResults = function(m, n, o, p) {\n m = m.map(this._processBackendResult.bind(this));\n var q = [];\n if (this._enableCache) {\n var r = {\n }, s = {\n };\n m.forEach(function(u) {\n s[u.semantic] = true;\n ((((u.parse && u.parse.disambiguation)) && u.parse.disambiguation.forEach(function(v) {\n r[v] = true;\n })));\n });\n var t = this._getBestQueryCache(n.cache_id);\n t.results.forEach(function(u) {\n if (((u.type === \"websuggestion\"))) {\n return;\n }\n ;\n ;\n if (((u.semanticForest in r))) {\n return;\n }\n ;\n ;\n var v = this._getDifferenceArrayTokens(u.tokens, n.tokens), w = this._getNumTokensMatching(v, u);\n w = this._tryMatchingFinalInsertedEntity(v, w, u);\n if (((((w > 0)) && ((w == v.length))))) {\n u.cacheOnlyResult = !s[u.semantic];\n q.push(u);\n }\n ;\n ;\n }.bind(this));\n }\n ;\n ;\n m.forEach(function(u) {\n u.tokens = n.tokens;\n u.cache_id_length = n.cache_id.length;\n q.push(u);\n });\n if (((this.queryCache[n.cache_id] === undefined))) {\n this.queryCache[n.cache_id] = {\n };\n }\n ;\n ;\n g(this.queryCache[n.cache_id], {\n tokens: n.tokens,\n results: q,\n incomplete: o\n });\n g(this.queryCache[n.cache_id], p);\n };\n l.prototype.alreadyKnown = function(m) {\n return ((!!this.queryCache[m] && !this.queryCache[m].incomplete));\n };\n l.prototype.stripBrackets = function(m) {\n return m.replace(/^[\\[\\{]/, \"\").replace(/[\\]\\}]$/, \"\");\n };\n l.prototype._extractStructure = function(m) {\n function n(q, r, s) {\n return {\n type: q,\n text: r,\n uid: ((s || null))\n };\n };\n ;\n function o(q, r) {\n q.split(\" \").forEach(function(s) {\n if (((s !== \"\"))) {\n if (r) {\n m.chunks.push(m.structure.length);\n }\n ;\n ;\n m.structure.push(n(\"text\", s));\n }\n ;\n ;\n m.structure.push(n(\"text\", \" \"));\n });\n m.structure.pop();\n };\n ;\n function p(q) {\n var r = ((((((m.structure.length === 0)) && ((m.type != \"websuggestion\")))) ? ((q.charAt(0).toUpperCase() + q.substr(1))) : q));\n return r;\n };\n ;\n m.structure = [];\n m.chunks = [];\n m.parse.display.forEach(function(q) {\n if (((typeof q === \"string\"))) {\n o(p(q), true);\n }\n else if (q.uid) {\n var r = this.getEntry(q.uid, q.fetchType);\n m.chunks.push(m.structure.length);\n if (r.grammar_like) {\n o(p(r.text), false);\n }\n else {\n var s = q.type;\n if (q.fetchType) {\n s += ((\":\" + q.fetchType));\n }\n ;\n ;\n m.structure.push(n(s, r.text, q.uid));\n }\n ;\n ;\n }\n else {\n m.chunks.push(m.structure.length);\n m.blankType = q.type.replace(/^blank:/, \"\");\n m.structure.push(n(q.type, \"\"));\n }\n \n ;\n ;\n }.bind(this));\n return m;\n };\n l.prototype._getDifferenceArrayTokens = function(m, n) {\n if (!m.length) {\n return [\"\",].concat(n);\n }\n ;\n ;\n var o = ((m.length - 1)), p = m[o];\n if (((p === \"\"))) {\n p = m[--o];\n }\n ;\n ;\n return [((((typeof (p) == \"string\")) ? n[o].substr(p.length) : \"\")),].concat(n.slice(((o + 1))));\n };\n l.prototype._processBackendResult = function(m) {\n m.semantic = m.semantic.toString();\n m.backendCost = m.cost;\n this._extractStructure(m);\n if (m.type.match(/^\\{.*\\}$/)) {\n m.useExtendedIndex = true;\n }\n ;\n ;\n if (m.semantic.match(/\\[.*\\]/)) {\n var n = m.parse, o = n.pos;\n if (((o === undefined))) {\n m.semantic = m.semantic.replace(/\\[(.*)\\]/g, \"$1\");\n }\n else {\n var p = n.remTokens[((n.remTokens.length - 1))];\n if (((n.remTokens.length && m.structure[m.chunks[p]].uid))) {\n o = n.remTokens[((n.remTokens.length - 1))];\n m.completed = true;\n }\n ;\n ;\n var q = m.structure[m.chunks[o]].uid;\n if (((q === null))) {\n m.semantic = m.semantic.replace(/\\[(\\d*)\\]/g, \"$1\");\n }\n else {\n var r = new RegExp(((((\"\\\\[\" + q)) + \"\\\\]\")), \"g\");\n m.unsubstituted_semantic = m.semantic;\n m.semantic = m.semantic.replace(r, q);\n if (((((n && n.disambiguation)) && ((n.disambiguation.length > 0))))) {\n n.disambiguation = n.disambiguation.filter(function(s) {\n return ((s.indexOf(((((\"[\" + q)) + \"]\"))) !== -1));\n });\n n.unsubstituted_disambiguation = n.disambiguation.splice(0);\n n.disambiguation = n.disambiguation.map(function(s) {\n return s.replace(r, q);\n });\n }\n ;\n ;\n }\n ;\n ;\n }\n ;\n ;\n }\n ;\n ;\n m.semantic = m.semantic.replace(/\\[(.*)\\]/g, \"$1\");\n m.tuid = JSON.stringify({\n semantic: m.semantic,\n structure: m.structure\n });\n return m;\n };\n l.prototype._sortFunction = function(m, n) {\n return ((((m.cost || 0)) - ((n.cost || 0))));\n };\n l.prototype._getResultsFromCache = function(m, n, o) {\n var p = this._getDifferenceArrayTokens(o.tokens, n), q = [], r = this._getNumTokensMatching(p, o), s = this._tryMatchingFinalInsertedEntity(p, r, o);\n if (((((s > 0)) && ((s == p.length))))) {\n q.push(o);\n }\n ;\n ;\n o.bolding = this._computeBolding(o, p, 0);\n Array.prototype.push.apply(q, this._trySubstitutingBootstrapResult(m[((n.length - p.length))], o, p));\n if (((r <= 0))) {\n return q;\n }\n ;\n ;\n var t = p.slice(r);\n r += ((n.length - p.length));\n var u = {\n };\n if (((r == n.length))) {\n --r;\n if (((r < 0))) {\n return q;\n }\n ;\n ;\n if (((n[r] !== \"\"))) {\n u = this._computeBolding(o, p, 1);\n }\n ;\n ;\n }\n ;\n ;\n if (((((r == ((n.length - 1)))) && ((n[r] === \"\"))))) {\n --r;\n if (((r < 0))) {\n return q;\n }\n ;\n ;\n u = this._computeBolding(o, p, 1);\n }\n ;\n ;\n var v = function(w, x) {\n x.bolding = w;\n return x;\n }.bind(null, u);\n Array.prototype.push.apply(q, this._tryMatchingFinalBootstrapResult(m[r], t, o).map(v));\n return q;\n };\n l.prototype._addMatchingBootstrapResults = function(m, n) {\n return h(function(o) {\n var p = n[o];\n if (((p === undefined))) {\n return [];\n }\n ;\n ;\n var q = [];\n p.forEach(function(r) {\n var s = this.getEntry(r, o);\n if (!this._isTitleTermMatch(m, s)) {\n return;\n }\n ;\n ;\n var t = ((this._isExactNameMatch(m, s) ? 0 : this.facebarConfig.non_title_term_match_penalty)), u = this._isNonGrammarTermMatch(m, s), v = ((((((s.grammar_costs[((((\"{\" + o)) + \"}\"))] + t)) + this.facebarConfig.entity_cost)) + ((this.facebarConfig.grammar_stop_words_penalty * !u)))), w = i.processEntityResult(o, r, s.text, v);\n w.bootstrapCost = v;\n w.isJSBootstrapMatch = true;\n q.push(w);\n }.bind(this));\n return q;\n }.bind(this), this.facebarConfig.bootstrap_types);\n };\n l.prototype._isTitleTermMatch = function(m, n) {\n var o = ((m[0] || {\n }));\n if (((typeof (o) == \"object\"))) {\n return false;\n }\n ;\n ;\n var p = n.titleToIndex;\n return ((((m.length === 1)) ? j.isPrefixMatch(o, p) : j.isExactMatch(o, p)));\n };\n l.prototype._isExactNameMatch = function(m, n) {\n var o = ((m[0] || {\n }));\n if (((typeof (o) == \"object\"))) {\n return 0;\n }\n ;\n ;\n var p = n.text;\n if (((((m.length === 1)) ? j.isPrefixMatch(o, p) : j.isExactMatch(o, p)))) {\n return true;\n }\n ;\n ;\n return ((((((m.length == 1)) && ((n.alias !== undefined)))) && j.isExactMatch(o, n.alias)));\n };\n l.prototype._isNonGrammarTermMatch = function(m, n) {\n var o = j.parse(n.titleToIndex.toLowerCase()), p = o.tokens.filter(function(s) {\n return ((((s !== \"\")) && !this.facebarConfig.grammar_stop_words[s]));\n }.bind(this));\n p = p.join(\" \");\n for (var q = 0; ((q < m.length)); ++q) {\n if (((typeof (m[q]) == \"object\"))) {\n return true;\n }\n ;\n ;\n var r = ((((q === ((m.length - 1)))) ? j.isPrefixMatch(m[q], p) : j.isQueryMatch(m[q], p)));\n if (r) {\n return true;\n }\n ;\n ;\n };\n ;\n return false;\n };\n l.prototype._getBootstrapMatchByType = function(m, n) {\n if (((m.length === 0))) {\n return [];\n }\n ;\n ;\n var o = m.map(function() {\n return {\n };\n }), p = ((m[((m.length - 1))] === \"\")), q = {\n }, r, s = ((p ? ((m.length - 1)) : m.length));\n if (((s && m[((s - 1))].uid))) {\n this._pushBootstrapEntryAtPosition(o, ((s - 1)), m[((s - 1))].uid);\n return o;\n }\n ;\n ;\n {\n var fin197keys = ((window.top.JSBNG_Replay.forInKeys)((this.bootstrapCache))), fin197i = (0);\n var t;\n for (; (fin197i < fin197keys.length); (fin197i++)) {\n ((t) = (fin197keys[fin197i]));\n {\n if (((((s && ((t.indexOf(m[((s - 1))]) === 0)))) && ((!p || ((t === m[((s - 1))]))))))) {\n {\n var fin198keys = ((window.top.JSBNG_Replay.forInKeys)((this.bootstrapCache[t]))), fin198i = (0);\n (0);\n for (; (fin198i < fin198keys.length); (fin198i++)) {\n ((r) = (fin198keys[fin198i]));\n {\n if (!q[r]) {\n q[r] = 1;\n this._addMatchedTerm(r, t, n);\n this._pushBootstrapEntryAtPosition(o, ((s - 1)), r);\n }\n ;\n ;\n };\n };\n };\n }\n ;\n ;\n };\n };\n };\n ;\n for (var u = ((s - 2)); ((u >= 0)); u--) {\n if (((typeof (m[u]) == \"object\"))) {\n break;\n }\n ;\n ;\n if (((m[u].length && ((m[u][0] == \"\\\"\"))))) {\n break;\n }\n ;\n ;\n {\n var fin199keys = ((window.top.JSBNG_Replay.forInKeys)((this.bootstrapCache[m[u]]))), fin199i = (0);\n (0);\n for (; (fin199i < fin199keys.length); (fin199i++)) {\n ((r) = (fin199keys[fin199i]));\n {\n if (!q[r]) {\n q[r] = 0;\n }\n ;\n ;\n if (((((q[r] + u)) == ((s - 1))))) {\n ++q[r];\n this._addMatchedTerm(r, m[u], n);\n this._pushBootstrapEntryAtPosition(o, u, r);\n }\n ;\n ;\n };\n };\n };\n ;\n };\n ;\n return o;\n };\n l.prototype._addMatchedTerm = function(m, n, o) {\n (o[m] = ((o[m] || []))).push(n);\n return o;\n };\n l.prototype._pushBootstrapEntryAtPosition = function(m, n, o) {\n var p = this.getEntry(o);\n if (!p) {\n return;\n }\n ;\n ;\n {\n var fin200keys = ((window.top.JSBNG_Replay.forInKeys)((p.grammar_costs))), fin200i = (0);\n var q;\n for (; (fin200i < fin200keys.length); (fin200i++)) {\n ((q) = (fin200keys[fin200i]));\n {\n var r = this.stripBrackets(q);\n if (((m[n][r] === undefined))) {\n m[n][r] = [];\n }\n ;\n ;\n m[n][r].push(o);\n };\n };\n };\n ;\n };\n l.prototype._getNumTokensMatching = function(m, n) {\n var o = 0, p = n.parse, q = m.length, r = null, s = null;\n if (((p.pos !== undefined))) {\n var t = n.structure[n.chunks[p.pos]];\n r = t.uid;\n s = t.type.split(\":\")[2];\n }\n ;\n ;\n n.outputTokensUsed = [];\n n.termMatches = [];\n if (r) {\n o = this._prefixMatchEntity(m, p, r, n.outputTokensUsed, s, !!n.useExtendedIndex, n.termMatches);\n if (((((o === 0)) || ((o === q))))) {\n return o;\n }\n ;\n ;\n }\n else if (((((p.suffix && ((q == 1)))) && ((p.suffix.indexOf(m[0]) === 0))))) {\n return q;\n }\n else if (((p.suffix == m[0]))) {\n ++o;\n }\n else return 0\n \n \n ;\n var u = [];\n for (var v = 0; ((v < p.remTokens.length)); v++) {\n if (((((((typeof (m[o]) != \"string\")) || ((n.chunks.length < p.remTokens[v])))) || n.structure[n.chunks[p.remTokens[v]]].uid))) {\n break;\n }\n ;\n ;\n var w = n.structure[n.chunks[p.remTokens[v]]].text;\n u.push(w.toLowerCase());\n };\n ;\n o = this._greedyMatchText(u, m, o, p.remTokens, n.outputTokensUsed);\n if (((((o == ((q - 1)))) && ((m[o] === \"\"))))) {\n return q;\n }\n ;\n ;\n return o;\n };\n l.prototype._prefixMatchEntity = function(m, n, o, p, q, r, s) {\n if (((n.entTokens.length === 0))) {\n if (((m[0] !== \"\"))) {\n return 0;\n }\n ;\n ;\n if (((((n.possessive && ((m.length > 1)))) && ((m[1] == \"'s\"))))) {\n p.push([((n.pos + 1)),]);\n return 2;\n }\n else return 1\n ;\n }\n ;\n ;\n var t = false, u = this.getEntry(o, q);\n if (((((typeof (q) !== \"undefined\")) && ((q !== u.fetchType))))) {\n return 0;\n }\n ;\n ;\n var v = this.tokenize(((r ? u.textToIndex : u.text)), true), w = [];\n for (var x = 0; ((x < ((((m.length + n.entTokens.length)) - 1)))); x++) {\n if (((x < ((n.entTokens.length - 1))))) {\n w.push(n.entTokens[x]);\n }\n else if (((x == ((n.entTokens.length - 1))))) {\n w.push(((n.entTokens[x] + m[0])));\n }\n else w.push(m[((((x - n.entTokens.length)) + 1))]);\n \n ;\n ;\n };\n ;\n var y = ((-n.entTokens.length + 1));\n for (var z = 0; ((z < w.length)); ++z) {\n var aa = w[z];\n if (((typeof (aa) != \"string\"))) {\n break;\n }\n ;\n ;\n if (((aa === \"\"))) {\n y++;\n continue;\n }\n ;\n ;\n var ba = false;\n for (var ca = 0; ((ca < v.length)); ca++) {\n if (((((v[ca] == aa)) || ((((z === ((w.length - 1)))) && ((v[ca].indexOf(aa) === 0))))))) {\n if (s) {\n s.push(v[ca]);\n }\n ;\n ;\n v[ca] = \"\";\n ba = true;\n ++y;\n break;\n }\n ;\n ;\n };\n ;\n if (ba) {\n continue;\n }\n ;\n ;\n if (((((!n.possessive || ((aa.length <= 2)))) || ((aa.substr(((aa.length - 2))) != \"'s\"))))) {\n break;\n }\n ;\n ;\n var da = aa.substr(0, ((aa.length - 2)));\n for (ca = 0; ((ca < v.length)); ca++) {\n if (((v[ca] == da))) {\n ++y;\n if (p) {\n t = true;\n }\n ;\n ;\n break;\n }\n ;\n ;\n };\n ;\n break;\n };\n ;\n if (((y > 0))) {\n if (t) {\n p.push([((n.pos + 1)),]);\n }\n ;\n ;\n return y;\n }\n ;\n ;\n if (((p === undefined))) {\n return 0;\n }\n ;\n ;\n var ea = m[0], fa = ea;\n if (((((n.possessive && ((ea.length >= 2)))) && ((ea.substr(((ea.length - 2))) == \"'s\"))))) {\n fa = ea.substr(0, ((ea.length - 2)));\n }\n ;\n ;\n if (((((((((m.length == 1)) && ((n.suffix.indexOf(ea) === 0)))) || ((n.suffix == fa)))) || ((n.suffix == ea))))) {\n if (((((fa != ea)) && ((n.suffix == fa))))) {\n p.push([((n.pos + 1)),]);\n }\n ;\n ;\n return 1;\n }\n ;\n ;\n return 0;\n };\n l.prototype._tryMatchingFinalInsertedEntity = function(m, n, o) {\n if (((!o.completed || ((n < 0))))) {\n return n;\n }\n ;\n ;\n var p = o.parse, q = p.remTokens[((p.remTokens.length - 1))], r = o.structure[o.chunks[q]], s = this.getEntry(r.uid, r.type), t = this.tokenize(s.text, true);\n n = this._greedyMatchText(t, m, n);\n if (((((n == ((m.length - 1)))) && ((m[n] === \"\"))))) {\n return m.length;\n }\n ;\n ;\n return n;\n };\n l.prototype._greedyMatchText = function(m, n, o, p, q) {\n for (var r = 0; ((r < m.length)); r++) {\n var s = m[r];\n if (((s == n[o]))) {\n if (((q !== undefined))) {\n q.push(p[r]);\n }\n ;\n ;\n ++o;\n continue;\n }\n ;\n ;\n if (((((o === ((n.length - 1)))) && ((s.indexOf(n[o]) === 0))))) {\n if (((q !== undefined))) {\n if (((s == n[o]))) {\n q.push([p[r],]);\n }\n else q.push([p[r],n[o].length,]);\n ;\n }\n ;\n ;\n return n.length;\n }\n ;\n ;\n };\n ;\n return o;\n };\n l.prototype._createMapOverFinalBootstrapUids = function(m, n, o, p, q, r) {\n return function(s) {\n var t = this.getEntry(s, q);\n if (((((t === undefined)) || ((r(s, t) === false))))) {\n return;\n }\n ;\n ;\n var u = {\n };\n g(u, m);\n if (!u.iconClass) {\n u.photo = t.photo;\n }\n ;\n ;\n u.cost = ((((((m.cost + l.EPSILON)) + t.grammar_costs[((((\"{\" + q)) + \"}\"))])) - o.grammar_costs[((((\"{\" + q)) + \"}\"))]));\n u.cache_id_length = Infinity;\n u.structure = m.structure.slice(0);\n u.structure[m.chunks[p]] = {\n type: n.type,\n text: t.text,\n uid: s\n };\n u.blankFilled = true;\n var v = new RegExp(((((\"\\\\[\" + n.uid)) + \"\\\\]\")), \"g\");\n u.semantic = m.unsubstituted_semantic.replace(v, s);\n if (((((u.parse && u.parse.disambiguation)) && ((u.parse.disambiguation.length > 0))))) {\n u.parse.disambiguation = u.parse.unsubstituted_disambiguation.map(function(w) {\n return w.replace(v, s);\n });\n }\n ;\n ;\n u.tuid = JSON.stringify({\n semantic: u.semantic,\n structure: u.structure\n });\n return u;\n }.bind(this);\n };\n l.prototype._tryMatchingFinalBootstrapResult = function(m, n, o) {\n if (!o.completed) {\n return [];\n }\n ;\n ;\n var p = o.parse, q = p.remTokens[((p.remTokens.length - 1))], r = o.structure[o.chunks[q]], s = r.type.substr(4).replace(\":blank\", \"\"), t = this.getEntry(r.uid, s), u = m[s];\n if (((((((u === undefined)) || ((t === undefined)))) || ((t.grammar_costs === undefined))))) {\n return [];\n }\n ;\n ;\n return u.map(this._createMapOverFinalBootstrapUids(o, r, t, q, s, function(v, w) {\n return ((n.length == this._greedyMatchText(this.tokenize(w.text), n, 0)));\n }.bind(this))).filter(function(v) {\n return !!v;\n });\n };\n l.prototype._trySubstitutingBootstrapResult = function(m, n, o) {\n if (((((((n.unsubstituted_semantic === undefined)) || n.completed)) || ((n.type === k))))) {\n return [];\n }\n ;\n ;\n var p = n.parse.pos, q = n.structure[n.chunks[n.parse.pos]], r = q.type.substr(4), s = m[r];\n if (((s === undefined))) {\n return [];\n }\n ;\n ;\n var t = this.getEntry(q.uid);\n if (((!t || ((t.grammar_costs === undefined))))) {\n return [];\n }\n ;\n ;\n return s.map(this._createMapOverFinalBootstrapUids(n, q, t, p, r, function(u) {\n return ((this._prefixMatchEntity(o, n.parse, u) === o.length));\n }.bind(this))).filter(function(u) {\n return !!u;\n });\n };\n l.prototype._computeBolding = function(m, n, o) {\n var p = {\n };\n if (((m.parse.pos !== undefined))) {\n var q = m.structure[m.chunks[m.parse.pos]];\n if (!q.uid) {\n p[m.chunks[m.parse.pos]] = ((((q.text.length - m.parse.suffix.length)) + n[0].length));\n }\n ;\n ;\n }\n ;\n ;\n m.parse.unmatch.forEach(function(t) {\n if (((typeof (t) == \"object\"))) {\n p[m.chunks[t[0]]] = ((m.structure[m.chunks[t[0]]].text.length - t[1].length));\n }\n else p[m.chunks[t]] = 0;\n ;\n ;\n });\n m.parse.remTokens.forEach(function(t) {\n p[m.chunks[t]] = 0;\n });\n for (var r = 0; ((r < ((m.outputTokensUsed.length - o)))); r++) {\n var s = m.outputTokensUsed[r];\n if (((s.length == 1))) {\n delete p[m.chunks[s[0]]];\n }\n else p[m.chunks[s[0]]] = s[1];\n ;\n ;\n };\n ;\n return p;\n };\n l.prototype._getBestQueryCache = function(m) {\n for (var n = m.length; ((n >= 0)); n--) {\n var o = this.queryCache[m.slice(0, n)];\n if (o) {\n return o;\n }\n ;\n ;\n };\n ;\n };\n l.prototype._getFBObjectType = function(m) {\n if (this.typeaheadTypeMap[m]) {\n return this.typeaheadTypeMap[m];\n }\n else return \"page\"\n ;\n };\n l.EPSILON = 59555;\n l.getUniqueSemantic = function(m) {\n var n = [], o = [], p = [];\n m = ((((\"(\" + m)) + \")\"));\n var q = m, r = false;\n m.replace(/[\\(\\),]/g, function(s, t) {\n var u;\n switch (s) {\n case \",\":\n var v = ((p.length - 1));\n u = q.substr(p[v], ((t - p[v])));\n n[v].push(u);\n p[v] = ((t + 1));\n break;\n case \"(\":\n p.push(((t + 1)));\n n.push([]);\n o.push(((t + 1)));\n break;\n case \")\":\n if (((p.length === 0))) {\n throw ((m + \" is not a valid semantic string\"));\n }\n ;\n ;\n var w = p.pop();\n u = q.substr(w, ((t - w)));\n var x = n.pop();\n x.push(u);\n var y = x.sort();\n for (var z = 1; ((z < y.length)); z++) {\n if (((y[z] == y[((z - 1))]))) {\n r = true;\n }\n ;\n ;\n };\n ;\n var aa = y.join(\",\");\n q = ((((q.substr(0, o.pop()) + aa)) + q.substr(t)));\n break;\n };\n ;\n return s;\n });\n if (r) {\n return \"\";\n }\n ;\n ;\n return q.replace(/\\((.*)\\)/, \"$1\");\n };\n e.exports = l;\n});\n__d(\"FacebarTokenizer\", [\"TokenizeUtil\",], function(a, b, c, d, e, f) {\n var g = b(\"TokenizeUtil\"), h = \"[^\\\"]\", i = [\"\\\\s's\",\"'s\",((((\"\\\"\" + h)) + \"*\\\"?\")),], j = [[/\\s+$/,\"\",],[/\\\"\\s+/,\"\\\"\",],[/\\s+\\\"/,\"\\\"\",],[/\\\"\\\"/,\"\",],[/^\\\"$/,\"\",],[/\\s+/,\" \",],], k = {\n tokenize: function(l, m) {\n var n = [], o = 0;\n l = l.replace(/\\s/g, \" \").toLowerCase();\n l.replace(new RegExp(i.join(\"|\"), \"g\"), function(q, r) {\n if (((r > o))) {\n var s = l.substr(o, ((r - o)));\n Array.prototype.push.apply(n, g.parse(s).tokens.slice(0));\n }\n ;\n ;\n var t = q;\n for (var u = 0; ((u < j.length)); u++) {\n var v = j[u];\n t = t.replace(v[0], v[1]);\n };\n ;\n if (((n.length && ((t == \"'s\"))))) {\n n[((n.length - 1))] += t;\n }\n else if (((t !== \"\"))) {\n n.push(t);\n }\n \n ;\n ;\n if (m) {\n Array.prototype.push.apply(n, g.parse(q).tokens);\n }\n ;\n ;\n o = ((r + q.length));\n });\n if (((o < l.length))) {\n var p = l.substr(o, ((l.length - o)));\n Array.prototype.push.apply(n, g.parse(p).tokens.slice(0));\n }\n ;\n ;\n return n;\n }\n };\n e.exports = k;\n});\n__d(\"ResultsBucketizer\", [], function(a, b, c, d, e, f) {\n function g(h, i) {\n this.$ResultsBucketizer0 = h;\n this.$ResultsBucketizer1 = i;\n };\n;\n g.trimResults = function(h, i, j) {\n var k = [];\n h.forEach(function(l, m) {\n if (((l.indexBeforeBuckets > i))) {\n k.push({\n index: m,\n originalIndex: l.indexBeforeBuckets\n });\n }\n ;\n ;\n });\n k.sort(function(l, m) {\n return ((l.originalIndex - m.originalIndex));\n }).slice(j).sort(function(l, m) {\n return ((m.index - l.index));\n }).forEach(function(l) {\n h.splice(l.index, 1);\n });\n };\n g.mergeBuckets = function(h, i) {\n var j = [];\n {\n var fin201keys = ((window.top.JSBNG_Replay.forInKeys)((i))), fin201i = (0);\n var k;\n for (; (fin201i < fin201keys.length); (fin201i++)) {\n ((k) = (fin201keys[fin201i]));\n {\n if (!i[k].rule.hidden) {\n j.push(i[k]);\n }\n ;\n ;\n };\n };\n };\n ;\n j.sort(function(l, m) {\n var n = ((((l.rule.position || 0)) - ((m.rule.position || 0))));\n if (((n !== 0))) {\n return n;\n }\n ;\n ;\n return ((l.results[0].indexBeforeBuckets - m.results[0].indexBeforeBuckets));\n });\n h.length = 0;\n j.forEach(function(l, m) {\n if (((((l.rule.maxPromotions !== undefined)) && ((m < ((j.length - 1))))))) {\n g.trimResults(l.results, j[((m + 1))].results[0].indexBeforeBuckets, l.rule.maxPromotions);\n }\n ;\n ;\n Array.prototype.push.apply(h, l.results);\n }.bind(this));\n };\n g.prototype.$ResultsBucketizer2 = function(h, i) {\n if (((i.propertyName === undefined))) {\n return ((i.bucketName || \"default\"));\n }\n ;\n ;\n var j = this.$ResultsBucketizer1(h, i.propertyName);\n if (((((j === undefined)) || ((((i.propertyValue !== undefined)) && ((j.toString() !== i.propertyValue))))))) {\n return false;\n }\n ;\n ;\n return ((i.bucketName || ((((i.propertyName + \".\")) + j.toString()))));\n };\n g.prototype.$ResultsBucketizer3 = function(h, i) {\n var j = {\n }, k = this.$ResultsBucketizer2.bind(this);\n h.forEach(function(l, m) {\n i.some(function(n) {\n var o = k(l, n);\n if (((o === false))) {\n return false;\n }\n ;\n ;\n if (((j[o] === undefined))) {\n j[o] = {\n results: [],\n rule: n\n };\n }\n ;\n ;\n if (((!!n.maxResults && ((j[o].results.length >= n.maxResults))))) {\n return false;\n }\n ;\n ;\n l.bucketLineage.push({\n bucketName: o,\n bucketIndex: j[o].results.length\n });\n j[o].results.push(l);\n return true;\n });\n });\n return j;\n };\n g.prototype.$ResultsBucketizer4 = function(h, i) {\n var j = this.$ResultsBucketizer0[i];\n if (!j) {\n return {\n };\n }\n ;\n ;\n var k = this.$ResultsBucketizer3(h, j);\n {\n var fin202keys = ((window.top.JSBNG_Replay.forInKeys)((k))), fin202i = (0);\n var l;\n for (; (fin202i < fin202keys.length); (fin202i++)) {\n ((l) = (fin202keys[fin202i]));\n {\n var m = k[l].rule.subBucketRules;\n if (!!m) {\n this.$ResultsBucketizer4(k[l].results, m);\n }\n ;\n ;\n };\n };\n };\n ;\n g.mergeBuckets(h, k);\n return k;\n };\n g.prototype.bucketize = function(h) {\n h.forEach(function(i, j) {\n i.bucketLineage = [];\n i.indexBeforeBuckets = j;\n });\n return this.$ResultsBucketizer4(h, \"main\");\n };\n e.exports = g;\n});\n__d(\"FacebarTypeaheadTypeNamedX\", [], function(a, b, c, d, e, f) {\n var g = {\n browse_type_user: \"user\",\n browse_type_page: \"page\",\n browse_type_place: \"place\",\n browse_type_group: \"group\",\n browse_type_application: \"app\"\n }, h = 1, i = 3;\n function j() {\n \n };\n;\n j.addTypeNamedX = function(k, l, m, n) {\n var o = new j(), p = o.buildTypeNamedXBuckets(((((l.entities || {\n })).results || [])), ((((l[\"isSeeMore.true\"] || {\n })).results || [])), n), q = p[0], r = p[1];\n q.forEach(function(t, u) {\n t.bucketLineage.push({\n bucketName: \"promotedFromSeeMore\",\n bucketIndex: u\n });\n });\n var s = o.replaceResults(k, q);\n s.forEach(function(t, u) {\n t.bucketLineage.push({\n bucketName: \"demotedToSeeMore\",\n bucketIndex: u\n });\n });\n s.push.apply(s, r);\n r = s;\n if (m) {\n k.push.apply(k, r);\n }\n ;\n ;\n };\n j.prototype.buildTypeNamedXBuckets = function(k, l, m) {\n var n = {\n };\n k.forEach(function(v, w) {\n var x = ((v.render_type || v.type));\n if (((n[x] === undefined))) {\n n[x] = {\n index: w,\n matchCount: 0\n };\n }\n ;\n ;\n if (((v.text.toLowerCase().indexOf(m.toLowerCase()) >= 0))) {\n n[x].matchCount++;\n }\n ;\n ;\n });\n var o = [], p = [], q, r;\n l.forEach(function(v) {\n if (((v.results_set_type == \"browse_type_story\"))) {\n if (((v.isPostsAboutEnt === true))) {\n r = v;\n }\n else q = v;\n ;\n ;\n }\n else {\n var w = g[v.results_set_type];\n if (((((n[w] !== undefined)) && ((n[w].matchCount >= h))))) {\n o.push([v,n[w].index,]);\n }\n else p.push(v);\n ;\n ;\n }\n ;\n ;\n });\n o.sort(function(v, w) {\n return ((v[1] - w[1]));\n });\n var s = o.map(function(v) {\n return v[0];\n });\n if (((r !== undefined))) {\n s.unshift(r);\n }\n ;\n ;\n if (((q !== undefined))) {\n s.unshift(q);\n }\n ;\n ;\n var t = s.slice(0, i), u = s.slice(i);\n return [t,u.concat(u, p),];\n };\n j.prototype.replaceResults = function(k, l) {\n var m = [];\n for (var n = 0; ((n < l.length)); n++) {\n var o = 0, p = -1;\n k.forEach(function(s, t) {\n if (((((k[t].cost !== undefined)) && ((k[t].cost > o))))) {\n p = t;\n o = k[t].cost;\n }\n ;\n ;\n });\n if (((p >= 0))) {\n m.push(k[p]);\n k.splice(p, 1);\n }\n ;\n ;\n };\n ;\n var q = k.length;\n while (((((q > 0)) && ((k[((q - 1))].type == \"websuggestion\"))))) {\n q--;\n ;\n };\n ;\n for (var r = 0; ((r < l.length)); r++) {\n k.splice(q, 0, l[r]);\n q++;\n };\n ;\n return m;\n };\n e.exports = j;\n});\n__d(\"FacebarDataSource\", [\"Arbiter\",\"AsyncRequest\",\"FacebarResultStore\",\"FacebarStructuredText\",\"FacebarTokenizer\",\"FacebarURI\",\"SearchDataSource\",\"Vector\",\"ViewportBounds\",\"copyProperties\",\"throttle\",\"FacebarTypeNamedXTokenOptions\",\"ResultsBucketizer\",\"ResultsBucketizerConfig\",\"FacebarTypeaheadTypeNamedX\",\"BingScalingCommon\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncRequest\"), i = b(\"FacebarResultStore\"), j = b(\"FacebarStructuredText\"), k = b(\"FacebarTokenizer\"), l = b(\"FacebarURI\"), m = b(\"SearchDataSource\"), n = b(\"Vector\"), o = b(\"ViewportBounds\"), p = b(\"copyProperties\"), q = b(\"throttle\"), r = b(\"FacebarTypeNamedXTokenOptions\"), s = b(\"ResultsBucketizer\"), t = b(\"ResultsBucketizerConfig\"), u = b(\"FacebarTypeaheadTypeNamedX\"), v = b(\"BingScalingCommon\"), w = 100, x = 250;\n {\n var fin203keys = ((window.top.JSBNG_Replay.forInKeys)((m))), fin203i = (0);\n var y;\n for (; (fin203i < fin203keys.length); (fin203i++)) {\n ((y) = (fin203keys[fin203i]));\n {\n if (((m.hasOwnProperty(y) && ((y !== \"_metaprototype\"))))) {\n aa[y] = m[y];\n }\n ;\n ;\n };\n };\n };\n;\n var z = ((((m === null)) ? null : m.prototype));\n aa.prototype = Object.create(z);\n aa.prototype.constructor = aa;\n aa.__superConstructor__ = m;\n function aa(ba) {\n m.call(this, ba);\n this.filterOutWebSuggestion = true;\n this.bootstrap_saved = [];\n this.null_state = null;\n this._initialQueryData = null;\n this._curQueryId = -1;\n this._seeMore = false;\n this._waitingQueries = 0;\n this.mixGrammarAndEntity = ((((ba.mixGrammarAndEntity !== undefined)) ? ba.mixGrammarAndEntity : true));\n this.grammarVersion = ((ba.grammarVersion || \"\"));\n if (!ba.grammarOptions) {\n ba.grammarOptions = {\n };\n }\n ;\n ;\n this.recordingRoute = ((ba.grammarOptions.recordingRoute || \"banzai_vital\"));\n this._maxGrammarResults = ba.grammarOptions.maxGrammarResults;\n this._allowGrammar = ((ba.allowGrammar !== false));\n this._webSearchLockedInMode = ((ba.webSearchLockedInMode !== false));\n this.nullStateEndpoint = ((ba.nullStateEndpoint || \"/ajax/browse/null_state.php\"));\n this.setNullStateData(((ba.nullStateData || {\n })), true);\n this._minWebSugg = ((ba.minWebSugg || 1));\n this._minQueryLength = ((ba.minQueryLength || -1));\n this.allowWebSuggOnTop = ((ba.allowWebSuggOnTop || false));\n this._maxWebSuggToCountFetchMore = ((ba.maxWebSuggToCountFetchMore || 0));\n this._fixProcessLean = ((ba.grammarOptions.fixProcessLean || false));\n if (((ba.throttled === \"0\"))) {\n this.executeQueryThrottled = this.executeQuery;\n this.sendRemoteQueryThrottled = this.sendRemoteQuery;\n }\n else {\n this.executeQueryThrottled = q(this.executeQuery, w, this);\n this.sendRemoteQueryThrottled = q(this.sendRemoteQuery, x, this);\n }\n ;\n ;\n this.resultStoreOptions = ((ba.grammarOptions || {\n }));\n this.resultStoreOptions.useNewExactNameMatch = ((ba.grammarOptions.useNewExactNameMatch === \"true\"));\n this._bypassBucketizer = false;\n this._resultsBucketizer = new s(t.rules, function(da, ea) {\n switch (ea) {\n case \"isSeeMore\":\n return da.isSeeMore;\n case \"objectType\":\n return da.type;\n case \"resultSetType\":\n return da.results_set_type;\n case \"renderType\":\n return ((da.render_type || da.type));\n case \"cacheOnlyResult\":\n return da.cacheOnlyResult;\n case \"bootstrapped\":\n return da.bootstrapped;\n default:\n return ((!!da.tags ? da.tags[ea] : undefined));\n };\n ;\n });\n var ca = new h().setURI(\"/ajax/typeahead/search/facebar/config.php\").setData({\n version: this.grammarVersion\n }).setMethod(\"GET\").setReadOnly(true).setAllowCrossPageTransition(true).setHandler(function(da) {\n this.facebarConfig = da.payload;\n this.createResultStore();\n if (this.null_state) {\n this.setNullState(this.null_state);\n this.null_state = null;\n }\n ;\n ;\n this.inform(\"ready\", true);\n }.bind(this)).setFinallyHandler(this.activityEnd.bind(this));\n this.activityStart();\n ca.send();\n this.fetchNullState();\n };\n;\n aa.prototype.createResultStore = function() {\n this.facebarConfig.maxGrammarResults = this._maxGrammarResults;\n this.resultStore = new i(this.facebarConfig, k.tokenize, this.getEntry.bind(this), this.resultStoreOptions);\n this.addEntries(this.bootstrap_saved);\n if (this._fixProcessLean) {\n this._processLean();\n }\n ;\n ;\n this.bootstrap_saved = [];\n this.subscribe(\"enableCache\", function(ba, ca) {\n this.resultStore.cacheEnabled(ca);\n }.bind(this));\n this.subscribe(\"setSortFunction\", function(ba, ca) {\n this.resultStore.setSortFunction(ca);\n }.bind(this));\n };\n aa.prototype.dirty = function() {\n this.bootstrap_saved = [];\n this._nullStateFetched = false;\n if (this.resultStore) {\n this.resultStore.resetCaches();\n }\n ;\n ;\n z.dirty.call(this);\n };\n aa.prototype.addEntries = function(ba) {\n if (this.resultStore) {\n this.resultStore.addBootstrap(this.processEntries(ba));\n }\n else Array.prototype.push.apply(this.bootstrap_saved, ba);\n ;\n ;\n };\n aa.prototype._processLean = function() {\n if (this._fixProcessLean) {\n if (((this._leanPayload && this.resultStore))) {\n var ba, ca = this._leanPayload.entries;\n {\n var fin204keys = ((window.top.JSBNG_Replay.forInKeys)((ca))), fin204i = (0);\n var da;\n for (; (fin204i < fin204keys.length); (fin204i++)) {\n ((da) = (fin204keys[fin204i]));\n {\n ba = this.getEntry(da);\n if (!ba) {\n continue;\n }\n ;\n ;\n {\n var fin205keys = ((window.top.JSBNG_Replay.forInKeys)((ca[da]))), fin205i = (0);\n var ea;\n for (; (fin205i < fin205keys.length); (fin205i++)) {\n ((ea) = (fin205keys[fin205i]));\n {\n if (!ba.grammar_costs) {\n ba.grammar_costs = {\n };\n }\n ;\n ;\n ba.grammar_costs[((((\"{\" + ea)) + \"}\"))] = ca[da][ea];\n };\n };\n };\n ;\n };\n };\n };\n ;\n this.setExclusions(this._leanPayload.blocked);\n this._leanPayload = null;\n }\n ;\n ;\n }\n else z._processLean.call(this);\n ;\n ;\n };\n aa.prototype.setNullStateData = function(ba, ca) {\n if (ca) {\n this.nullStateData = {\n grammar_version: this.grammarVersion\n };\n }\n ;\n ;\n p(this.nullStateData, ba);\n return this;\n };\n aa.prototype.setNullState = function(ba) {\n if (this.resultStore) {\n this.processEntries(ba.entities);\n this.resultStore.setNullState(ba.queries);\n this.resultStore.addNullStateToQueryCache(this.getRawStructure(j.fromString(\"\")));\n this.inform(\"ready\", true);\n }\n ;\n ;\n };\n aa.prototype.allowGrammar = function() {\n return this._allowGrammar;\n };\n aa.prototype.isWebSearchLockedInModeEnabled = function() {\n return this._webSearchLockedInMode;\n };\n aa.prototype.fetchNullState = function() {\n if (((this._nullStateFetched || !this._allowGrammar))) {\n return;\n }\n ;\n ;\n var ba = new h().setURI(this.nullStateEndpoint).setData(this.nullStateData).setMethod(\"GET\").setReadOnly(true).setAllowCrossPageTransition(true).setHandler(function(ca) {\n if (this.resultStore) {\n this.setNullState(ca.payload);\n }\n else this.null_state = ca.payload;\n ;\n ;\n this._nullStateFetched = true;\n }.bind(this)).setFinallyHandler(this.activityEnd.bind(this));\n this.activityStart();\n ba.send();\n };\n aa.prototype.toTypeaheadEntryUid = function(ba) {\n var ca, da = j.fromStruct(ba.structure), ea = da.getFragment(0);\n if (((((da.getCount() == 1)) && ea.isType(\"ent\")))) {\n var fa = ea.getType().split(\":\")[2];\n ca = this.getEntry(ea.getUID(), fa);\n ca.type = this.resultStore.stripBrackets(ba.type);\n }\n else {\n ca = this.getEntry(ba.tuid);\n if (!ca) {\n var fa, ga, ha;\n if (((ba.type === \"websuggestion\"))) {\n fa = ba.type;\n ha = ba.iconClass;\n }\n else {\n fa = \"grammar\";\n ga = ba.type;\n ha = ba.iconClass;\n }\n ;\n ;\n ca = {\n dynamic_cost: ba.dynamic_cost,\n extra_uri_params: ba.extra_uri_params,\n icon_class: ha,\n memcache: ba.fromMemcache,\n photo: ba.photo,\n results_set_type: ga,\n tuid: ba.tuid,\n type: fa,\n uid: ba.tuid,\n tags: ba.tags,\n websuggestion_source: ba.websuggestion_source\n };\n this.processEntries([ca,]);\n ca = this.getEntry(ba.tuid);\n }\n ;\n ;\n }\n ;\n ;\n if (((((ca.type === \"websuggestion\")) || ba.isRedirect))) {\n ca.path = ba.path;\n }\n ;\n ;\n ca.error_info = ba.errorInfo;\n ca.logInfo = ba.logInfo;\n ca.structure = da;\n ca.text = ca.structure.toString();\n ca.queryTypeText = ba.queryTypeText;\n ca.semantic = ba.semantic;\n ca.tree = ba.tree;\n ca.cost = ba.cost;\n ca.isSeeMore = !!ba.isSeeMore;\n ca.isNullState = !!ba.isNullState;\n ca.entityInfo = ba.entityInfo;\n ca.cacheOnlyResult = ((ba.cacheOnlyResult || false));\n ca.uri = ((ca.uri || l.getURI(this.facebarConfig, ca)));\n ca.semanticForest = ba.semanticForest;\n ca.entityTypes = ba.entityTypes;\n ca.parse = ba.parse;\n ca.tags = ba.tags;\n ca.isPostsAboutEnt = ((ba.isPostsAboutEnt || false));\n ca.removable = true;\n if (ba.isJSBootstrapMatch) {\n ca.isJSBootstrapMatch = ba.isJSBootstrapMatch;\n ca.backendCost = ba.backendCost;\n ca.bootstrapCost = ba.bootstrapCost;\n }\n ;\n ;\n this._replaceCategoryWithTermMatches(ca, ba);\n if (((((ba.parse && ba.parse.disambiguation)) && ((ba.parse.disambiguation.length > 0))))) {\n ca.disambiguation_paths = [];\n for (var ia = 0; ((ia < ba.parse.disambiguation.length)); ia++) {\n var ja = {\n };\n ja.semantic = ba.parse.disambiguation[ia];\n var ka = l.getURI(this.facebarConfig, ja);\n if (ka) {\n ka.path = ka.path.replace(((((\"/^/\" + l.getSearchRawPrefix())) + \"//\")), \"\");\n ca.disambiguation_paths.push(ka.path);\n }\n ;\n ;\n };\n ;\n }\n ;\n ;\n return ca.tuid;\n };\n aa.prototype._replaceCategoryWithTermMatches = function(ba, ca) {\n if (((((((ba.type !== \"user\")) || !ba.term_to_subtitle)) || !ca.termMatches))) {\n return;\n }\n ;\n ;\n var da = [];\n ca.termMatches.forEach(function(fa) {\n if (ba.term_to_subtitle[fa]) {\n da.push(ba.term_to_subtitle[fa]);\n }\n ;\n ;\n }.bind(this));\n if (((ba.category === undefined))) {\n ba.category = \"\";\n }\n ;\n ;\n var ea = ba.category.split(\" \\u00b7 \");\n ea.unshift.apply(ea, da);\n ea = ea.filter(function(fa, ga, ha) {\n return ((ga == ha.indexOf(fa)));\n });\n ba.category = ea.splice(0, 2).join(\" \\u00b7 \");\n };\n aa.prototype.getRawStructure = function(ba) {\n if (((typeof ba == \"string\"))) {\n ba = j.fromString(ba);\n }\n ;\n ;\n if (this.resultStore) {\n return this.resultStore.transformStructured(ba.toArray());\n }\n ;\n ;\n };\n aa.prototype.isSeeMore = function() {\n return this._seeMore;\n };\n aa.prototype.saveResult = function(ba) {\n this._initialQueryData = ba.uid;\n };\n aa.prototype.buildUids = function(ba, ca, da) {\n if (((!ba || !this.resultStore))) {\n return [];\n }\n ;\n ;\n if (((typeof ba == \"string\"))) {\n ba = j.fromString(ba);\n }\n ;\n ;\n var ea = this.getRawStructure(ba), fa = this.resultStore.getResults(ea), ga = fa.results;\n if (((typeof ga === \"undefined\"))) {\n return [];\n }\n ;\n ;\n var ha = fa.webSuggOnTop;\n if (((typeof ha === \"undefined\"))) {\n ha = false;\n }\n ;\n ;\n var ia = ((fa.webSuggLimit || 0)), ja = ((fa.null_state === true)), ka = ((this.filterOutWebSuggestion && !ja)), la = 0;\n ga = ga.filter(function(qa, ra) {\n if (((!this._allowGrammar && ((qa.type == \"grammar\"))))) {\n return false;\n }\n ;\n ;\n if (((qa.type != \"websuggestion\"))) {\n return ((((qa.semantic != \"\\u003Cblank\\u003E\")) && ((((qa.type != \"unimplemented\")) || ((la++ === 0))))));\n }\n else return !ka\n ;\n }.bind(this));\n var ma = ga.slice(), na = [], oa = [], pa = [];\n ga.forEach(function(qa) {\n if (((qa.forcedPosition > 0))) {\n pa.push(qa);\n }\n else if (qa.isSeeMore) {\n na.push(qa);\n }\n else oa.push(qa);\n \n ;\n ;\n });\n if (ja) {\n ga = this.orderNullState(ga, this.getMaxResults());\n }\n else {\n ga = v.integrateWebsuggestions(oa, Boolean(ha), this.getMaxResults(), ia, this._minWebSugg);\n ga.length = Math.min(ga.length, this.getMaxResults());\n }\n ;\n ;\n this.inform(\"decorateSeeMoreSuggestions\", {\n structured: ba,\n allResults: ma,\n selectedResults: ga,\n seeMoreResults: na\n });\n if (((pa.length > 0))) {\n pa.sort(function(qa, ra) {\n return ((qa.forcedPosition - ra.forcedPosition));\n });\n pa.forEach(function(qa) {\n ga.splice(qa.forcedPosition, 0, qa);\n });\n }\n ;\n ;\n if (((na.length > 0))) {\n ga.push.apply(ga, na);\n }\n ;\n ;\n return ga.map(this.toTypeaheadEntryUid.bind(this));\n };\n aa.prototype.orderNullState = function(ba, ca) {\n var da = {\n JSBNG__top: [],\n bottom: [],\n middle: []\n }, ea = function(ha) {\n var ia = ha.null_state_position;\n return ((da.hasOwnProperty(ia) ? ia : \"middle\"));\n }, fa = function(ha, ia) {\n return ((ha.original_cost - ia.original_cost));\n };\n ((ba && ba.forEach(function(ha) {\n da[ea(ha)].push(ha);\n }.bind(this))));\n {\n var fin206keys = ((window.top.JSBNG_Replay.forInKeys)((da))), fin206i = (0);\n var ga;\n for (; (fin206i < fin206keys.length); (fin206i++)) {\n ((ga) = (fin206keys[fin206i]));\n {\n da[ga] = da[ga].sort(fa).slice(0, ca);\n ca -= da[ga].length;\n };\n };\n };\n ;\n return [].concat(da.JSBNG__top, da.middle, da.bottom);\n };\n aa.prototype.handleResponse = function(ba, ca) {\n if (!(ba.payload.errors)) {\n this.processEntries(ba.payload.entities);\n this.filterOutWebSuggestion = true;\n for (var da = 0; ((da < ba.payload.results.length)); da++) {\n if (((ba.payload.results[da].type == \"websuggestion\"))) {\n this.filterOutWebSuggestion = false;\n break;\n }\n ;\n ;\n };\n ;\n var ea = {\n };\n [\"webSuggOnTop\",\"webSuggLimit\",\"webSuggLimitSeeMore\",].forEach(function(fa) {\n if (ba.payload.hasOwnProperty(fa)) {\n ea[fa] = ba.payload[fa];\n }\n ;\n ;\n });\n this.resultStore.saveResults(ba.payload.results, ca, ba.payload.incomplete, ea);\n }\n ;\n ;\n };\n aa.prototype.processEntries = function(ba) {\n return ba.map(function(ca, da) {\n var ea = (ca.uid = ((ca.uid + \"\")));\n ca.textToIndex = this.getTextToIndex(ca);\n ca.titleToIndex = this.getTitleTerms(ca);\n ea = this.getUID(ea, ca.fetchType);\n var fa = this.getEntry(ea);\n if (!fa) {\n this.setEntry(ea, {\n });\n fa = this.getEntry(ea);\n }\n ;\n ;\n p(fa, ca);\n fa.tokenVersion = ca.tokenVersion;\n fa.tuid = ea;\n ((((fa.index === undefined)) && (fa.index = da)));\n return ea;\n }.bind(this));\n };\n aa.prototype.getUID = function(ba, ca) {\n ba = ((ba + \"\"));\n if (((ca !== undefined))) {\n ca = /([^:]+:)?([^:]+)(:.*)?/.exec(ca)[2];\n return JSON.stringify([ba,ca,]);\n }\n ;\n ;\n return ba;\n };\n aa.prototype.getEntry = function(ba, ca) {\n if (((ca !== undefined))) {\n var da = z.getEntry.call(this, this.getUID(ba, ca));\n if (da) {\n return da;\n }\n ;\n ;\n }\n ;\n ;\n return z.getEntry.call(this, ba);\n };\n aa.prototype.getEntryForFragment = function(ba) {\n return this.getEntry(ba.getUID(), ba.getTypePart(2));\n };\n aa.prototype.getMaxResults = function() {\n return this._numResults.max;\n };\n aa.prototype.query = function(ba, ca, da, ea) {\n this.executeQueryThrottled(ba, ea, this._initialQueryData);\n this._initialQueryData = null;\n };\n aa.prototype.executeQuery = function(ba, ca, da) {\n this._seeMore = ((ca === true));\n this._curQueryId++;\n this.setQueryData({\n qid: this._curQueryId,\n see_more: this._seeMore,\n max_results: ((this.getMaxResults() + r.additionalResultsToFetch))\n });\n this.inform(\"beforeQuery\", {\n value: ba,\n queryId: this.curQueryId\n });\n var ea = this.buildUids(ba, []);\n if (da) {\n ea = ea.filter(function(ga) {\n return ((ga !== da));\n });\n ea.unshift(da);\n }\n ;\n ;\n this.value = ba;\n this.inform(\"query\", {\n value: ba,\n results: ea,\n see_more: this._seeMore,\n queryId: this._curQueryId\n });\n if (this.resultStore) {\n var fa = this.getRawStructure(ba);\n if (this.shouldFetchMore(fa, ea)) {\n this.sendRemoteQueryThrottled(fa, ba);\n }\n ;\n ;\n this.respond(ba, ea, false);\n }\n ;\n ;\n };\n aa.prototype.shouldFetchMore = function(ba, ca) {\n if (ba.is_empty) {\n return false;\n }\n ;\n ;\n if (this._seeMore) {\n return true;\n }\n ;\n ;\n if (this.resultStore.alreadyKnown(ba.cache_id)) {\n return false;\n }\n ;\n ;\n if (((ba.raw_text && this._isQueryTooShort(ba.raw_text)))) {\n return false;\n }\n ;\n ;\n if (((ca.length < this.getMaxResults()))) {\n return true;\n }\n ;\n ;\n return ((this.countValidResults(ca) < this.getMaxResults()));\n };\n aa.prototype.countValidResults = function(ba) {\n var ca = 0, da = 0;\n ba.forEach(function(ea) {\n var fa = this.getEntry(ea);\n if (((fa && !fa.isNullState))) {\n if (((fa.type === \"websuggestion\"))) {\n ca++;\n }\n else da++;\n ;\n }\n ;\n ;\n }.bind(this));\n return ((da + Math.min(this._maxWebSuggToCountFetchMore, ca)));\n };\n aa.prototype.sendRemoteQuery = function(ba, ca) {\n var da = new h().setURI(this.queryEndpoint).setData(this.getQueryData(ba.text_form)).setMethod(\"GET\").setReadOnly(true).setAllowCrossPageTransition(true).setHandler(function(ea, fa) {\n fa.queryId = ea;\n this.inform(\"response_received\", fa);\n this.handleResponse(fa, ba);\n this.respond(ca, this.buildUids(ca), true, ((fa.payload && ((!fa.payload.results || ((fa.payload.results.length === 0)))))));\n this.inform(\"backend_response\", fa);\n }.bind(this, this._curQueryId)).setFinallyHandler(this.activityEnd.bind(this));\n this.inform(\"sending_request\", da);\n this.activityStart();\n da.send();\n };\n aa.prototype.activityStart = function() {\n if (!this._waitingQueries) {\n this.inform(\"activity\", {\n activity: true,\n seeMore: this._seeMore\n }, g.BEHAVIOR_STATE);\n }\n ;\n ;\n this._waitingQueries++;\n };\n aa.prototype.activityEnd = function() {\n this._waitingQueries--;\n if (!this._waitingQueries) {\n this.inform(\"activity\", {\n activity: false,\n seeMore: this._seeMore\n }, g.BEHAVIOR_STATE);\n }\n ;\n ;\n };\n aa.prototype._bucketizeResults = function(ba, ca) {\n var da = this._resultsBucketizer.bucketize(ca);\n u.addTypeNamedX(ca, da, this.isSeeMore(), ba.toString());\n };\n aa.prototype.setBypassBucketizer = function(ba) {\n this._bypassBucketizer = ba;\n };\n aa.prototype.respond = function(ba, ca, da, ea) {\n this.inform(\"reorderResults\", ca);\n this.inform(\"respondValidUids\", ca);\n var fa = ca.map(this.getEntry.bind(this));\n if (((((!!ba && ((((ba instanceof j)) && !ba.isEmptyOrWhitespace())))) && !this._bypassBucketizer))) {\n this._bucketizeResults(ba, fa);\n }\n ;\n ;\n this.inform(\"respond\", {\n value: ba,\n results: fa,\n isAsync: !!da,\n isEmptyResults: ea,\n isScrollable: this.isSeeMore()\n });\n return fa;\n };\n aa.prototype._updateMaxResults = function() {\n var ba = n.getViewportDimensions().y, ca = ((o.getTop() || 42)), da = 56, ea = 48;\n this.setMaxResults(Math.max(this._numResults.min, Math.min(this._numResults.max, ((Math.floor(((((((((ba - ca)) - ea)) - 25)) / da))) - 1)))));\n };\n aa.prototype.getCurQueryId = function() {\n return this._curQueryId;\n };\n p(aa.prototype, {\n events: [\"query\",\"respond\",\"bootstrapped\",\"activity\",\"ready\",]\n });\n e.exports = aa;\n});\n__d(\"FacebarFragmentRenderer\", [\"Badge\",\"DOM\",], function(a, b, c, d, e, f) {\n var g = b(\"Badge\"), h = b(\"DOM\");\n function i(m, n, o) {\n var p = m.structure.getFragment(n), q = null, r = ((m.bolding && m.bolding[n]));\n if (((typeof r == \"number\"))) {\n q = [r,((p.getLength() - r)),];\n }\n else if (r) {\n q = r;\n }\n \n ;\n ;\n var s = [p.getText(),];\n if (m.verified) {\n s.push(g(\"medium\", \"verified\"));\n }\n ;\n ;\n if (((q && q.length))) {\n return h.create(\"span\", {\n }, j(p.getText(), q, o));\n }\n else return h.create(\"span\", {\n className: ((((m.bolding && o.unchanged)) || \"\"))\n }, s)\n ;\n };\n;\n function j(m, n, o) {\n var p = [], q = false, r = 0;\n n.forEach(function(s) {\n var t = m.substr(r, s), u = ((q ? o.changed : o.unchanged));\n if (((s && u))) {\n p.push(h.create(\"span\", {\n className: u\n }, t));\n }\n else p.push(t);\n ;\n ;\n r += s;\n q = !q;\n });\n return p;\n };\n;\n function k(m, n) {\n var o = {\n };\n m.forEach(function(p, q) {\n if (((p.type.lastIndexOf(\"ent:\", 0) === 0))) {\n o[q] = l(n, p);\n }\n ;\n ;\n });\n return o;\n };\n;\n function l(m, n) {\n var o = false, p = [];\n m.tokens.forEach(function(t) {\n if (((typeof t == \"object\"))) {\n if (((t.uid == n.getUID()))) {\n o = true;\n }\n ;\n ;\n }\n else {\n p.push(t);\n if (((((t.length > 2)) && ((t.substr(((t.length - 2))) == \"'s\"))))) {\n p.push(t.substr(0, ((t.length - 2))));\n }\n ;\n ;\n }\n ;\n ;\n });\n if (o) {\n return;\n }\n ;\n ;\n var q = n.getText().split(\" \"), r = \"\", s = [];\n q.forEach(function(t, u) {\n var v = 0;\n p.forEach(function(w) {\n if (((((w.length > v)) && ((t.toLowerCase().indexOf(w) === 0))))) {\n v = w.length;\n }\n ;\n ;\n });\n r += t.substr(0, v);\n if (((v != t.length))) {\n s.push(r.length);\n s.push(((t.length - v)));\n r = \"\";\n }\n ;\n ;\n if (((u < ((q.length - 1))))) {\n r += \" \";\n }\n ;\n ;\n });\n s.push(r.length);\n return s;\n };\n;\n e.exports = {\n renderFragment: i,\n computeEntBolding: k\n };\n});\n__d(\"FacebarTypeaheadItem\", [\"BrowseFacebarHighlighter\",\"JSBNG__CSS\",\"cx\",\"DOM\",\"FacebarFragmentRenderer\",\"FacebarRender\",\"fbt\",], function(a, b, c, d, e, f) {\n var g = b(\"BrowseFacebarHighlighter\"), h = b(\"JSBNG__CSS\"), i = b(\"cx\"), j = b(\"DOM\"), k = b(\"FacebarFragmentRenderer\"), l = b(\"FacebarRender\"), m = b(\"fbt\"), n = \"-cx-PUBLIC-fbFacebarTypeaheadItem__label\", o = \"-cx-PUBLIC-fbFacebarTypeaheadItem__labeltitle\", p = k.renderFragment;\n function q(s) {\n var t = s.getTypePart(0);\n return ((t ? ((((\"fragment\" + t.charAt(0).toUpperCase())) + t.substr(1))) : \"fragment\"));\n };\n;\n function r(s) {\n this._result = s;\n this._aux = null;\n this._debug = null;\n this._renderEducation = true;\n this._classes = ((s.classNames || \"\")).split(\" \");\n this.addClass(\"-cx-PRIVATE-fbFacebarTypeaheadItem__root\");\n this.addClass(\"-cx-PRIVATE-fbHighlightNodeDecorator__highlight\");\n this._shouldVAlign = true;\n this._messageButton = null;\n };\n;\n r.prototype.setVAlign = function(s) {\n this._shouldVAlign = s;\n return this;\n };\n r.prototype.shouldVAlign = function() {\n return this._shouldVAlign;\n };\n r.prototype.addClass = function(s) {\n this._classes.push(s);\n };\n r.prototype.setAux = function(s) {\n this._aux = s;\n return this;\n };\n r.prototype.setShouldRenderEducation = function(s) {\n this._renderEducation = s;\n return this;\n };\n r.prototype.setDebug = function(s) {\n this._debug = s;\n return this;\n };\n r.prototype.setMessageButton = function(s) {\n this._messageButton = s;\n return this;\n };\n r.prototype.cacheable = function() {\n return ((this._debug === null));\n };\n r.prototype.renderText = function() {\n return this._result.structure.toArray().map(function(s, t) {\n var u = p(this._result, t, {\n });\n return h.addClass(u, q(s));\n }.bind(this));\n };\n r.prototype.renderAux = function() {\n return ((this._aux ? [this._aux,] : []));\n };\n r.prototype.renderSubtext = function() {\n return [];\n };\n r.prototype.renderIcon = function() {\n return [];\n };\n r.prototype.renderEduContent = function() {\n if (!this._renderEducation) {\n return [];\n }\n ;\n ;\n var s = j.create(\"span\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadItem__usereducationkeytext\"\n }, \"Tab\"), t = m._(\"Use {tab} key to select\", [m.param(\"tab\", s),]);\n return j.create(\"span\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadItem__usereducationtext\"\n }, l.children(t));\n };\n r.prototype.highlight = function(s) {\n if (((!this._result.original_query || !h.hasClass(s, \"-cx-PRIVATE-fbFacebarTypeaheadItem__entityitem\")))) {\n return;\n }\n ;\n ;\n var t = this._result.original_query.toString().trim(), u = t.split(\" \"), v = ((((u.length > 1)) ? [t,].concat(u) : [t,]));\n v = v.filter(function(w) {\n return ((w !== \"\"));\n });\n if (h.hasClass(s, \"-cx-PRIVATE-fbFacebarTypeaheadItem__entityitem\")) {\n g.highlight(s, v);\n }\n ;\n ;\n };\n r.prototype.render = function() {\n var s = this.renderAux(), t = this.renderIcon(), u = this.renderText(), v = this.renderEduContent(), w = this.renderSubtext(), x = this._debug, y = this._messageButton, z = l.span(o, l.children(u, w));\n h.conditionClass(z, \"-cx-PUBLIC-fbFacebarTypeaheadItem__valign\", ((this.shouldVAlign() && w)));\n var aa = l.span(n, [z,v,y,]);\n h.conditionClass(aa, \"-cx-PRIVATE-fbFacebarTypeaheadItem__hasmessagebutton\", y);\n var ba = j.create(\"a\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadItem__link\",\n href: this._result.uri,\n rel: \"ignore\"\n }, j.create(\"span\", {\n className: \"-cx-PUBLIC-fbFacebarTypeaheadItem__maincontent\"\n }, l.children(t, aa, x))), ca = j.create(\"span\", {\n className: \"-cx-PUBLIC-fbFacebarTypeaheadItem__auxcontent\"\n }, l.children(s, this._aux));\n if (t) {\n this._classes.push(\"-cx-PRIVATE-fbFacebarTypeaheadItem__hasicon\");\n }\n ;\n ;\n var da = j.create(\"li\", {\n className: this._classes.join(\" \")\n }, [ba,ca,]);\n da.setAttribute(\"aria-label\", this._result.structure.toString());\n return da;\n };\n e.exports = r;\n});\n__d(\"FacebarTypeaheadToken\", [\"cx\",\"FacebarRender\",], function(a, b, c, d, e, f) {\n var g = b(\"cx\"), h = b(\"FacebarRender\"), i = ((((\" \" + \"\\u00b7\")) + \" \")), j = \"-cx-PUBLIC-fbFacebarTypeaheadToken__root\", k = \"-cx-PUBLIC-fbFacebarTypeaheadToken__inner\", l = \"-cx-PUBLIC-fbFacebarTypeaheadToken__subtext\";\n function m(n, o) {\n this._text = n;\n this._limit = null;\n this._innerClass = ((o ? o : k));\n this._showLeadingMiddot = false;\n this._separateMainText = true;\n };\n;\n m.prototype.setLimit = function(n) {\n this._limit = n;\n return this;\n };\n m.prototype.setLeadingMiddot = function(n) {\n this._showLeadingMiddot = n;\n return this;\n };\n m.prototype.separateMainText = function(n) {\n this._separateMainText = n;\n return this;\n };\n m.prototype.getText = function() {\n return this._text;\n };\n m.prototype.render = function() {\n var n = this.getText();\n if (n.length) {\n ((this._limit && n.splice(this._limit)));\n n.forEach(function(r, s) {\n if (((((s !== 0)) || this._showLeadingMiddot))) {\n n[s] = [i,r,];\n }\n ;\n ;\n }.bind(this));\n var o = ((this._separateMainText ? n.shift() : null)), p = ((n.length ? h.span(l, n) : null)), q = h.span(j, h.span(this._innerClass, [o,p,]));\n return q;\n }\n ;\n ;\n };\n e.exports = m;\n});\n__d(\"FacebarTypeaheadEntityToken\", [\"FacebarTypeaheadToken\",\"DOM\",\"HTML\",], function(a, b, c, d, e, f) {\n var g = b(\"FacebarTypeaheadToken\"), h = b(\"DOM\"), i = b(\"HTML\"), j = \"\\u00b7\";\n {\n var fin207keys = ((window.top.JSBNG_Replay.forInKeys)((g))), fin207i = (0);\n var k;\n for (; (fin207i < fin207keys.length); (fin207i++)) {\n ((k) = (fin207keys[fin207i]));\n {\n if (((g.hasOwnProperty(k) && ((k !== \"_metaprototype\"))))) {\n m[k] = g[k];\n }\n ;\n ;\n };\n };\n };\n;\n var l = ((((g === null)) ? null : g.prototype));\n m.prototype = Object.create(l);\n m.prototype.constructor = m;\n m.__superConstructor__ = g;\n function m(n) {\n g.call(this);\n this._entity = n;\n this._default = {\n };\n };\n;\n m.prototype.setDefaultText = function(n, o) {\n this._default[n] = o;\n return this;\n };\n m.prototype.getText = function() {\n var n = [], o = {\n }, p = function(r) {\n r = r.trim();\n if (!o[r]) {\n n.push(r);\n o[r] = 1;\n }\n ;\n ;\n }, q = function(r) {\n if (((typeof r == \"object\"))) {\n r = h.getText(i(r).getRootNode());\n }\n ;\n ;\n ((r && r.split(j).map(p)));\n };\n ((this._entity.category ? q(this._entity.category) : n.push(this._default[this._entity.type])));\n q(this._entity.subtext);\n return n;\n };\n e.exports = m;\n});\n__d(\"FacebarTypeaheadEntityItem\", [\"JSBNG__CSS\",\"cx\",\"DOM\",\"FacebarTypeaheadItem\",\"FacebarTypeaheadEntityToken\",\"fbt\",\"TypeaheadFacepile\",\"FacebarRender\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = b(\"cx\"), i = b(\"DOM\"), j = b(\"FacebarTypeaheadItem\"), k = b(\"FacebarTypeaheadEntityToken\"), l = b(\"fbt\"), m = b(\"TypeaheadFacepile\"), n = b(\"FacebarRender\");\n {\n var fin208keys = ((window.top.JSBNG_Replay.forInKeys)((j))), fin208i = (0);\n var o;\n for (; (fin208i < fin208keys.length); (fin208i++)) {\n ((o) = (fin208keys[fin208i]));\n {\n if (((j.hasOwnProperty(o) && ((o !== \"_metaprototype\"))))) {\n q[o] = j[o];\n }\n ;\n ;\n };\n };\n };\n;\n var p = ((((j === null)) ? null : j.prototype));\n q.prototype = Object.create(p);\n q.prototype.constructor = q;\n q.__superConstructor__ = j;\n function q(r) {\n j.call(this, r);\n this.addClass(\"-cx-PRIVATE-fbFacebarTypeaheadItem__entityitem\");\n };\n;\n q.prototype.renderSubtext = function() {\n var r = n.span(\"DefaultText\", \"Timeline\");\n return new k(this._result).setDefaultText(\"user\", r).render();\n };\n q.prototype.renderIcon = function() {\n var r = ((this._result.photos || this._result.photo));\n if (!r) {\n return null;\n }\n ;\n ;\n if (((r instanceof Array))) {\n r = m.render(r);\n g.addClass(r, \"-cx-PRIVATE-fbFacebarTypeaheadItem__entitysplitpics\");\n return r;\n }\n else return i.create(\"img\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadItem__entityicon\",\n alt: \"\",\n src: r\n })\n ;\n };\n e.exports = q;\n});\n__d(\"FacebarDisambiguationDialog\", [\"JSBNG__Event\",\"BrowseLogger\",\"JSBNG__CSS\",\"cx\",\"Dialog\",\"DOM\",\"FacebarStructuredText\",\"FacebarTypeaheadEntityItem\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"BrowseLogger\"), i = b(\"JSBNG__CSS\"), j = b(\"cx\"), k = b(\"Dialog\"), l = b(\"DOM\"), m = b(\"FacebarStructuredText\"), n = b(\"FacebarTypeaheadEntityItem\"), o = b(\"tx\"), p = 650;\n function q(r, s, t, u, v) {\n this._sets = r;\n this._path = s;\n this._ondone = t;\n this._oncancel = u;\n this._selection = [];\n this._typeaheadSID = v;\n };\n;\n q.prototype.show = function() {\n new k().setTitle(\"Which of these did you mean?\").setBody(this._createBody()).setContentWidth(p).setModal(true).setButtons([k.CONFIRM,k.CANCEL,]).setHandler(this._handleDone.bind(this)).setCancelHandler(this._handleCancel.bind(this)).show();\n this._sets.forEach(function(r) {\n var s = [];\n r.forEach(function(u) {\n s.push(u.uid);\n });\n var t = r[0];\n h.logDisambiguationImpression(t.text, t.type, this._path, s.join(\",\"), this._typeaheadSID);\n }.bind(this));\n };\n q.prototype._createBody = function() {\n var r = [];\n this._sets.forEach(function(s, t) {\n ((r.length && r.push(l.create(\"li\", {\n className: \"-cx-PRIVATE-fbFacebarDisambiguationDialog__divider\"\n }))));\n s.forEach(function(u) {\n var v = this._createItem(u, t);\n ((this._selection[t] || this._selectItem(v)));\n r.push(v.root);\n }.bind(this));\n }.bind(this));\n return l.create(\"ul\", {\n className: \"viewList disambiguationList\"\n }, r);\n };\n q.prototype._createItem = function(r, s) {\n var t = {\n uri: null,\n subtext: r.subtext,\n category: r.category,\n photo: r.photo,\n type: r.type,\n structure: m.fromStruct([{\n text: r.text,\n type: ((\"ent:\" + r.type)),\n uid: r.uid\n },])\n }, u = l.create(\"div\", {\n className: \"-cx-PRIVATE-fbFacebarDisambiguationDialog__check\"\n }), v = new n(t).setAux(i.hide(u)).setShouldRenderEducation(false).render(), w = {\n setId: s,\n result: r,\n root: v,\n check: u\n };\n i.addClass(v, \"-cx-PRIVATE-fbFacebarDisambiguationDialog__item\");\n g.listen(v, \"mouseover\", this._toggleHover.bind(this, w, true));\n g.listen(v, \"mouseout\", this._toggleHover.bind(this, w, false));\n g.listen(v, \"click\", function(JSBNG__event) {\n this._selectItem(w);\n return JSBNG__event.kill();\n }.bind(this));\n return w;\n };\n q.prototype._toggleHover = function(r, s) {\n i.conditionClass(r.root, \"selected\", s);\n };\n q.prototype._toggleCheck = function(r, s) {\n i.conditionShow(r.check, s);\n };\n q.prototype._selectItem = function(r) {\n var s = this._selection[r.setId];\n this._selection[r.setId] = r;\n ((s && this._toggleCheck(s, false)));\n this._toggleCheck(r, true);\n };\n q.prototype._handleDone = function(r) {\n this._ondone(((((r == k.CONFIRM)) ? this._selection.map(function(s) {\n var t = s.result;\n h.logDisambiguationClick(t.text, t.type, this._path, t.index, t.uid, this._typeaheadSID);\n return t;\n }.bind(this)) : null)));\n };\n q.prototype._handleCancel = function() {\n this._oncancel();\n };\n e.exports = q;\n});\n__d(\"FacebarTypeahead\", [\"Arbiter\",\"Typeahead\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Typeahead\"), i = b(\"copyProperties\"), j = b(\"emptyFunction\");\n {\n var fin209keys = ((window.top.JSBNG_Replay.forInKeys)((h))), fin209i = (0);\n var k;\n for (; (fin209i < fin209keys.length); (fin209i++)) {\n ((k) = (fin209keys[fin209i]));\n {\n if (((h.hasOwnProperty(k) && ((k !== \"_metaprototype\"))))) {\n m[k] = h[k];\n }\n ;\n ;\n };\n };\n };\n;\n var l = ((((h === null)) ? null : h.prototype));\n m.prototype = Object.create(l);\n m.prototype.constructor = m;\n m.__superConstructor__ = h;\n function m(n, o, p, q, r, s) {\n h.call(this, n, o, p, q);\n this.getCore();\n this.proxyEvents();\n this.initBehaviors(((r || [])));\n var t = this.core.subscribe(\"JSBNG__focus\", function() {\n if (s) {\n s.init(this);\n }\n ;\n ;\n this.core.unsubscribe(t);\n this.data.bootstrap(false);\n this.core.input.JSBNG__focus();\n }.bind(this));\n this.data.bootstrap(true);\n this.inform(\"init\", this, g.BEHAVIOR_PERSISTENT);\n g.inform(\"Facebar/init\", this, g.BEHAVIOR_PERSISTENT);\n };\n;\n m.prototype.proxyEvents = function() {\n var n, o = [], p = null, q = (function() {\n while (n = o.shift()) {\n this.inform(n[0], n[1]);\n ;\n };\n ;\n p = null;\n }).bind(this);\n [this.data,this.view,this.core,].forEach(function(r) {\n r.subscribe(r.events, function(s, t) {\n o.push([s,t,]);\n p = ((p || q.defer()));\n }.bind(this));\n }, this);\n };\n i(m.prototype, {\n init: j\n });\n e.exports = m;\n});\n__d(\"StructuredInputDOM\", [\"createArrayFrom\",\"JSBNG__CSS\",\"cx\",\"DOM\",], function(a, b, c, d, e, f) {\n var g = b(\"createArrayFrom\"), h = b(\"JSBNG__CSS\"), i = b(\"cx\"), j = b(\"DOM\"), k = {\n ENTITY_CLASS: \"-cx-PUBLIC-uiStructuredInput__entity\",\n encodeText: function(l) {\n return l.replace(/ /g, \"\\u00a0\");\n },\n decodeText: function(l) {\n return l.replace(/\\u00a0/g, \" \");\n },\n createIconNode: function(l) {\n if (((l && ((typeof l == \"object\"))))) {\n var m = j.create(\"i\", {\n className: l.className,\n style: ((l.uri && {\n backgroundImage: ((((\"url(\\\"\" + l.uri)) + \"\\\")\"))\n }))\n });\n m.setAttribute(\"data-select\", \"ignore\");\n return m;\n }\n ;\n ;\n },\n createTextNode: function(l) {\n return j.create(\"span\", {\n \"data-si\": true\n }, k.encodeText(((l || \"\"))));\n },\n createEntityNode: function(l, m) {\n var n = k.encodeText(l.text), o = k.createIconNode(m.icon), p = j.create(\"span\", {\n }, ((o ? [o,n,] : n))), q = ((m.className || \"\")).split(/\\s+/);\n q.push(k.ENTITY_CLASS);\n q.forEach(h.addClass.bind(h, p));\n var r = {\n si: true,\n uid: l.uid,\n type: l.type,\n text: n,\n fulltext: n,\n group: m.group,\n select: m.select,\n icon: JSON.stringify(((m.icon || null)))\n };\n {\n var fin210keys = ((window.top.JSBNG_Replay.forInKeys)((r))), fin210i = (0);\n var s;\n for (; (fin210i < fin210keys.length); (fin210i++)) {\n ((s) = (fin210keys[fin210i]));\n {\n if (((r[s] != null))) {\n p.setAttribute(((\"data-\" + s)), r[s]);\n }\n ;\n ;\n };\n };\n };\n ;\n return p;\n },\n convertToTextNode: function(l) {\n l.className = \"\";\n l.setAttribute(\"data-type\", \"text\");\n l.removeAttribute(\"data-group\");\n l.removeAttribute(\"data-select\");\n l.removeAttribute(\"data-icon\");\n l.removeAttribute(\"data-uid\");\n for (var m = l.firstChild; m; m = m.nextSibling) {\n if (!j.isTextNode(m)) {\n j.remove(m);\n }\n ;\n ;\n };\n ;\n },\n isEntityNode: function(l) {\n return ((j.isElementNode(l) && h.hasClass(l, k.ENTITY_CLASS)));\n },\n containsOnlyText: function(l, m) {\n m = g(m);\n for (var n = l.firstChild; n; n = n.nextSibling) {\n if (!((j.isTextNode(n) || ((l.nodeName in m))))) {\n return false;\n }\n ;\n ;\n };\n ;\n return true;\n },\n getText: function(l) {\n return j.getText(l).replace(/ /g, \"\\u00a0\");\n },\n getDecodedText: function(l) {\n return k.decodeText(j.getText(l));\n },\n getLength: function(l) {\n return j.getText(l).length;\n },\n getMarker: function(l, m, n) {\n var o = l.firstChild;\n while (o) {\n var p = k.getLength(o);\n if (((((p > m)) || !o.nextSibling))) {\n if (((j.isTextNode(o) || !n))) {\n return {\n node: o,\n offset: Math.min(m, p)\n };\n }\n else return k.getMarker(o, m)\n ;\n }\n else m -= p;\n ;\n ;\n o = o.nextSibling;\n };\n ;\n }\n };\n e.exports = k;\n});\n__d(\"StructuredInputUtil\", [\"StructuredInputDOM\",], function(a, b, c, d, e, f) {\n var g = b(\"StructuredInputDOM\");\n function h(n, o, p) {\n var q = n.substr(0, o).lastIndexOf(p);\n return ((((q !== -1)) ? ((q + 1)) : 0));\n };\n;\n function i(n, o, p) {\n var q = n.indexOf(p, o);\n return ((((q !== -1)) ? q : n.length));\n };\n;\n function j(n, o, p) {\n return ((((((o === 0)) || ((o === n.length)))) || ((n.substr(o, p.length) == p))));\n };\n;\n function k(n, o, p, q) {\n switch (o) {\n case \"none\":\n return p;\n case \"all\":\n return ((q ? n.length : 0));\n case \"word\":\n if (j(n, p, \"\\u00a0\")) {\n return p;\n }\n else if (q) {\n return i(n, p, \"\\u00a0\");\n }\n else return h(n, p, \"\\u00a0\")\n \n ;\n };\n ;\n };\n;\n function l(n, o) {\n return ((((o && g.isEntityNode(n))) && !g.isEntityNode(o)));\n };\n;\n var m = {\n getMarkerAtOffset: function(n, o) {\n var p = n.firstChild, q = 0, r = 0;\n while (p) {\n q += r;\n r = g.getLength(p);\n if (((((q + r)) > o))) {\n break;\n }\n else p = p.nextSibling;\n ;\n ;\n };\n ;\n return {\n node: ((p || n.lastChild)),\n offset: ((o - q))\n };\n },\n validateEntityText: function(n) {\n var o = g.getText(n), p = n.getAttribute(\"data-fulltext\"), q = n.getAttribute(\"data-group\");\n if (((q == \"hashtag\"))) {\n var r = o.match(/#[^\\s]+/);\n p = ((r && r[0]));\n }\n ;\n ;\n var s = o.indexOf(p), t = {\n prefix: null,\n entity: null,\n suffix: null\n };\n switch (q) {\n case \"none\":\n t.entity = o;\n break;\n case \"hashtag\":\n \n case \"all\":\n if (((s != -1))) {\n t.prefix = o.substr(0, s);\n t.entity = o.substr(s, p.length);\n t.suffix = o.substr(((s + p.length)));\n }\n else t.suffix = o;\n ;\n ;\n break;\n case \"word\":\n if (((s != -1))) {\n t.prefix = o.substr(0, s);\n o = o.substr(s);\n }\n ;\n ;\n var u = 0, v = 0;\n while (((u < p.length))) {\n v = i(p, ((u + 1)), \"\\u00a0\");\n if (((o.substr(0, v) != p.substr(0, v)))) {\n break;\n }\n else u = v;\n ;\n ;\n };\n ;\n t.entity = ((o.substr(0, u) || null));\n t.suffix = ((o.substr(u) || null));\n };\n ;\n return t;\n },\n getGrouping: function(n, o) {\n var p = n.getAttribute(\"data-group\"), q = n.getAttribute(\"data-select\");\n if (((o == \"select\"))) {\n return ((((q == \"group\")) ? p : \"none\"));\n }\n else return p\n ;\n },\n snapMarkerToText: function(n, o) {\n var p = n.node;\n if (g.isEntityNode(p)) {\n var q = n.offset, r = m.getGrouping(p, o);\n if (((r != \"none\"))) {\n if (((q === 0))) {\n var s = p.previousSibling;\n if (l(p, s)) {\n return {\n node: s,\n offset: g.getLength(s)\n };\n }\n ;\n ;\n }\n else if (((q == g.getLength(p)))) {\n var t = p.nextSibling;\n if (l(p, t)) {\n return {\n node: t,\n offset: 0\n };\n }\n ;\n ;\n }\n \n ;\n }\n ;\n ;\n }\n ;\n ;\n return n;\n },\n nextMarkerBoundary: function(n, o, p) {\n var q = n.node;\n if (((g.isEntityNode(q) && ((!o || ((n.offset !== 0))))))) {\n var r = m.getGrouping(q, p);\n if (((r != \"none\"))) {\n return {\n node: n.node,\n offset: k(g.getText(q), r, n.offset, o)\n };\n }\n ;\n ;\n }\n ;\n ;\n return n;\n }\n };\n e.exports = m;\n});\n__d(\"StructuredInputCleaner\", [\"DOM\",\"createArrayFrom\",\"copyProperties\",\"StructuredInputUtil\",\"StructuredInputDOM\",\"UserAgent\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"createArrayFrom\"), i = b(\"copyProperties\"), j = b(\"StructuredInputUtil\"), k = b(\"StructuredInputDOM\"), l = b(\"UserAgent\");\n function m(n, o) {\n this._node = n;\n this._wrapText = o;\n };\n;\n m.prototype._cleanEntityNode = function(n) {\n var o = n.getAttribute(\"data-text\"), p = k.getText(n);\n n.style.cssText = \"\";\n if (((((o == p)) && k.containsOnlyText(n, {\n I: true\n })))) {\n return null;\n }\n ;\n ;\n var q = [], r = j.validateEntityText(n), s = k.createIconNode(JSON.parse(n.getAttribute(\"data-icon\")));\n if (((!r.entity && ((((r.suffix && !r.prefix)) || ((r.prefix && !r.suffix))))))) {\n k.convertToTextNode(n);\n n.setAttribute(\"data-text\", p);\n return null;\n }\n ;\n ;\n if (r.prefix) {\n q.push(this._createTextNode(r.prefix));\n }\n ;\n ;\n if (r.entity) {\n g.setContent(n, ((s ? [s,r.entity,] : r.entity)));\n n.setAttribute(\"data-text\", r.entity);\n q.push(n);\n }\n ;\n ;\n if (r.suffix) {\n q.push(this._createTextNode(r.suffix));\n }\n ;\n ;\n return q;\n };\n m.prototype._removeSpecialNodes = function() {\n var n = h(this._node.getElementsByTagName(\"script\")), o = h(this._node.getElementsByTagName(\"style\"));\n n.forEach(g.remove);\n o.forEach(g.remove);\n };\n m.prototype._collapseNodes = function() {\n for (var n, o = this._node.firstChild; o; o = n) {\n n = o.nextSibling;\n if (((((!g.isTextNode(o) && !k.isEntityNode(o))) && !k.containsOnlyText(o)))) {\n for (var p = o.lastChild; p; p = o.lastChild) {\n this._node.insertBefore(p, n);\n n = p;\n };\n }\n ;\n ;\n };\n ;\n };\n m.prototype._createTextNode = function(n) {\n if (this._wrapText) {\n return k.createTextNode(n);\n }\n else return JSBNG__document.createTextNode(n)\n ;\n };\n m.prototype.replaceNodes = function(n, o) {\n if (((o == null))) {\n return;\n }\n ;\n ;\n var p = ((n.length ? n[((n.length - 1))].nextSibling : null));\n n.forEach(g.remove);\n o.forEach(function(q) {\n this._node.insertBefore(q, p);\n }.bind(this));\n };\n m.prototype.clean = function() {\n this._removeSpecialNodes();\n this._collapseNodes();\n var n = [], o = function() {\n if (n.length) {\n this.replaceNodes(n, this._cleanTextNodes(n));\n n.length = 0;\n }\n ;\n ;\n }.bind(this);\n h(this._node.childNodes).forEach(function(p) {\n if (k.isEntityNode(p)) {\n this.replaceNodes([p,], this._cleanEntityNode(p));\n o(n);\n }\n else n.push(p);\n ;\n ;\n }.bind(this));\n o();\n if (((!this._node.firstChild && l.firefox()))) {\n this._node.appendChild(this._createTextNode());\n }\n ;\n ;\n };\n m.prototype.endOnText = function() {\n var n = function(o, p) {\n if (k.isEntityNode(o)) {\n this._node.insertBefore(this._createTextNode(), ((p ? o : null)));\n }\n ;\n ;\n }.bind(this);\n n(this._node.firstChild, true);\n n(this._node.lastChild, false);\n };\n i(m.prototype, {\n _cleanTextNodes: (function() {\n var n = function(p) {\n return ((((p.nodeName === \"BR\")) || ((((p.nodeName === \"SPAN\")) && o(p)))));\n }, o = function(p) {\n return ((((p.getAttribute(\"data-si\") && k.containsOnlyText(p))) && ((k.getLength(p) > 0))));\n };\n return function(p) {\n if (((((p.length != 1)) || !n(p[0])))) {\n var q = p.map(k.getText).join(\"\").replace(/\\s+/g, \" \");\n return ((q ? [this._createTextNode(q),] : []));\n }\n else {\n p[0].style.cssText = \"\";\n return;\n }\n ;\n ;\n };\n })()\n });\n e.exports = m;\n});\n__d(\"DOMSelection\", [], function(a, b, c, d, e, f) {\n (function() {\n var g = this, h = {\n isPreceding: function(n, o) {\n return ((o.compareDocumentPosition(n) & 2));\n },\n contains: function(n, o) {\n if (((n.compareDocumentPosition != null))) {\n return ((n.compareDocumentPosition(o) & 16));\n }\n else return n.contains(o)\n ;\n },\n isCursorPreceding: function(n, o, p, q) {\n if (((n === p))) {\n return ((o <= q));\n }\n ;\n ;\n if (((h.isText(n) && h.isText(p)))) {\n return h.isPreceding(n, p);\n }\n ;\n ;\n if (((h.isText(n) && !h.isText(p)))) {\n return !h.isCursorPreceding(p, q, n, o);\n }\n ;\n ;\n if (!h.contains(n, p)) {\n return h.isPreceding(n, p);\n }\n ;\n ;\n if (((n.childNodes.length <= o))) {\n return false;\n }\n ;\n ;\n if (((n.childNodes[o] === p))) {\n return ((0 <= q));\n }\n ;\n ;\n return h.isPreceding(n.childNodes[o], p);\n },\n isText: function(n) {\n return ((((n != null)) ? ((n.nodeType == 3)) : false));\n },\n getChildIndex: function(n) {\n var o = 0;\n while (n = n.previousSibling) {\n o++;\n ;\n };\n ;\n return o;\n }\n }, i = g.JSBNG__Selection = (function() {\n function n(o) {\n this.win = o;\n };\n ;\n n.prototype.hasSelection = function() {\n return n.hasSelection(this.win);\n };\n n.prototype.isBidirectional = function() {\n return n.isBidirectional(this.win);\n };\n n.prototype.getOrigin = function() {\n return n.getOrigin(this.win);\n };\n n.prototype.getFocus = function() {\n return n.getFocus(this.win);\n };\n n.prototype.getStart = function() {\n return n.getStart(this.win);\n };\n n.prototype.getEnd = function() {\n return n.getEnd(this.win);\n };\n n.prototype.trySelection = function(o, p, q, r) {\n return n.trySelection(this.win, o, p, q, r);\n };\n n.prototype.setSelection = function(o, p, q, r) {\n return n.setSelection(this.win, o, p, q, r);\n };\n n.prototype.clearSelection = function() {\n return n.clearSelection(this.win);\n };\n return n;\n })();\n function j() {\n if (((g.JSBNG__document.selection && /MSIE 9\\./.test(JSBNG__navigator.userAgent)))) {\n return false;\n }\n else return !!g.JSBNG__getSelection\n ;\n };\n ;\n if (j()) {\n i.supported = true;\n i.hasSelection = function(n) {\n var o;\n return (((((o = n.JSBNG__getSelection()) && ((o.focusNode != null)))) && ((o.anchorNode != null))));\n };\n i.isBidirectional = function(n) {\n return true;\n };\n i.getOrigin = function(n) {\n var o;\n if (!(((o = n.JSBNG__getSelection()) && ((o.anchorNode != null))))) {\n return null;\n }\n ;\n ;\n return [o.anchorNode,o.anchorOffset,];\n };\n i.getFocus = function(n) {\n var o;\n if (!(((o = n.JSBNG__getSelection()) && ((o.focusNode != null))))) {\n return null;\n }\n ;\n ;\n return [o.focusNode,o.focusOffset,];\n };\n i.getStart = function(n) {\n var o, p, q, r, s, t;\n if (!i.hasSelection(n)) {\n return null;\n }\n ;\n ;\n s = i.getOrigin(n), o = s[0], q = s[1];\n t = i.getFocus(n), p = t[0], r = t[1];\n if (h.isCursorPreceding(o, q, p, r)) {\n return [o,q,];\n }\n ;\n ;\n return [p,r,];\n };\n i.getEnd = function(n) {\n var o, p, q, r, s, t;\n if (!i.hasSelection(n)) {\n return null;\n }\n ;\n ;\n s = i.getOrigin(n), o = s[0], q = s[1];\n t = i.getFocus(n), p = t[0], r = t[1];\n if (h.isCursorPreceding(o, q, p, r)) {\n return [p,r,];\n }\n ;\n ;\n return [o,q,];\n };\n var k = function(n, o, p, q, s, t) {\n var u = o.JSBNG__getSelection();\n if (!u) {\n return;\n }\n ;\n ;\n if (((s == null))) {\n s = p;\n }\n ;\n ;\n if (((t == null))) {\n t = q;\n }\n ;\n ;\n if (((u.collapse && u.extend))) {\n u.collapse(p, q);\n u.extend(s, t);\n }\n else {\n r = o.JSBNG__document.createRange();\n r.setStart(p, q);\n r.setEnd(s, t);\n if (((((n || !i.hasSelection(o))) || ((((((((r.endContainer === s)) && ((r.endOffset === t)))) && ((r.startContainer === p)))) && ((r.startOffset === q))))))) {\n try {\n u.removeAllRanges();\n } catch (v) {\n \n };\n ;\n u.addRange(r);\n }\n ;\n ;\n }\n ;\n ;\n };\n i.setSelection = k.bind(i, true);\n i.trySelection = k.bind(i, false);\n i.clearSelection = function(n) {\n try {\n var p = n.JSBNG__getSelection();\n if (!p) {\n return;\n }\n ;\n ;\n p.removeAllRanges();\n } catch (o) {\n \n };\n ;\n };\n i.getText = function(n) {\n var o = n.JSBNG__getSelection();\n if (!o) {\n return;\n }\n ;\n ;\n return o.toString();\n };\n }\n else if (g.JSBNG__document.selection) {\n var l = function(n, o, p) {\n var q, r, s, t, u;\n r = n.createElement(\"a\");\n q = o.duplicate();\n q.collapse(p);\n u = q.parentElement();\n while (true) {\n u.insertBefore(r, r.previousSibling);\n q.moveToElementText(r);\n if (!((((q.compareEndPoints(((p ? \"StartToStart\" : \"StartToEnd\")), o) > 0)) && ((r.previousSibling != null))))) {\n break;\n }\n ;\n ;\n };\n ;\n if (((((q.compareEndPoints(((p ? \"StartToStart\" : \"StartToEnd\")), o) === -1)) && r.nextSibling))) {\n q.setEndPoint(((p ? \"EndToStart\" : \"EndToEnd\")), o);\n s = r.nextSibling;\n t = q.text.length;\n }\n else {\n s = r.parentNode;\n t = h.getChildIndex(r);\n }\n ;\n ;\n r.parentNode.removeChild(r);\n return [s,t,];\n }, m = function(n, o, p, q, r) {\n var s, t, u, v, w;\n w = 0;\n s = ((h.isText(q) ? q : q.childNodes[r]));\n t = ((h.isText(q) ? q.parentNode : q));\n if (h.isText(q)) {\n w = r;\n }\n ;\n ;\n v = n.createElement(\"a\");\n t.insertBefore(v, ((s || null)));\n u = n.body.createTextRange();\n u.moveToElementText(v);\n v.parentNode.removeChild(v);\n o.setEndPoint(((p ? \"StartToStart\" : \"EndToEnd\")), u);\n return o[((p ? \"moveStart\" : \"moveEnd\"))](\"character\", w);\n };\n i.supported = true;\n i.hasSelection = function(n) {\n var o;\n if (!n.JSBNG__document.selection) {\n return false;\n }\n ;\n ;\n o = n.JSBNG__document.selection.createRange();\n return ((o && ((o.parentElement().JSBNG__document === n.JSBNG__document))));\n };\n i.getStart = function(n) {\n var o;\n if (!i.hasSelection(n)) {\n return null;\n }\n ;\n ;\n o = n.JSBNG__document.selection.createRange();\n return l(n.JSBNG__document, o, true);\n };\n i.getEnd = function(n) {\n var o;\n if (!i.hasSelection(n)) {\n return null;\n }\n ;\n ;\n o = n.JSBNG__document.selection.createRange();\n return l(n.JSBNG__document, o, false);\n };\n i.isBidirectional = function(n) {\n return false;\n };\n i.getOrigin = function(n) {\n return i.getStart(n);\n };\n i.getFocus = function(n) {\n return i.getEnd(n);\n };\n var k = function(n, o, p, q, r, s) {\n if (((r == null))) {\n r = p;\n }\n ;\n ;\n if (((s == null))) {\n s = q;\n }\n ;\n ;\n var t = o.JSBNG__document.body.createTextRange();\n m(o.JSBNG__document, t, false, r, s);\n m(o.JSBNG__document, t, true, p, q);\n return t.select();\n };\n i.setSelection = k.bind(i, true);\n i.trySelection = k.bind(i, false);\n i.clearSelection = function(n) {\n return n.JSBNG__document.selection.empty();\n };\n i.getText = function(n) {\n if (!i.hasSelection(n)) {\n return null;\n }\n ;\n ;\n var o = n.JSBNG__document.selection.createRange();\n return ((o && o.text));\n };\n }\n else i.supported = false;\n \n ;\n ;\n }).call(this);\n e.exports = JSBNG__Selection;\n});\n__d(\"StructuredInputSelection\", [\"DOMSelection\",\"Vector\",\"StructuredInputUtil\",\"StructuredInputDOM\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMSelection\"), h = b(\"Vector\"), i = b(\"StructuredInputUtil\"), j = b(\"StructuredInputDOM\");\n function k(m) {\n var n = m.ownerDocument;\n this.window = ((n.defaultView || n.parentWindow));\n this.root = m;\n this.selection = false;\n this.start = new l(this, []);\n this.end = new l(this, []);\n this.update();\n };\n;\n k.prototype.isSupported = function() {\n return !!((g && g.hasSelection));\n };\n k.prototype.update = function() {\n this.selection = false;\n if (((this.isSupported() && ((this.root == JSBNG__document.activeElement))))) {\n if (g.hasSelection(this.window)) {\n var m = g.getStart(this.window), n = g.getEnd(this.window), o = g.getFocus(this.window);\n this.start = this.makeMarker(m);\n this.end = this.makeMarker(n);\n this.backward = ((((m[0] == o[0])) && ((m[1] == o[1]))));\n this.selection = ((this.start.node && this.end.node));\n }\n ;\n }\n ;\n ;\n };\n k.prototype.makeMarker = function(m) {\n if (((m[0] === this.root))) {\n return new l(this, [this.root.childNodes[m[1]],0,]);\n }\n else return new l(this, m)\n ;\n };\n k.prototype.getFocus = function() {\n return ((this.backward ? this.start : this.end));\n };\n k.prototype.getOrigin = function() {\n return ((this.backward ? this.end : this.start));\n };\n k.prototype.move = function(m) {\n if (this.selection) {\n this.start.move(m);\n this.start.snap();\n this.end.setPosition(this.start);\n return this.apply();\n }\n ;\n ;\n };\n k.prototype.expand = function(m) {\n if (this.selection) {\n if (g.isBidirectional()) {\n this.start.move(!m);\n this.start.snap();\n this.end.move(m);\n this.end.snap();\n }\n ;\n ;\n return this.apply();\n }\n ;\n ;\n };\n k.prototype.getText = function() {\n if (((this.selection && this.isSupported()))) {\n var m = g.getText(this.window);\n return m;\n }\n ;\n ;\n };\n k.prototype.getOffset = function() {\n if (this.selection) {\n return this.start.rootOffset;\n }\n ;\n ;\n };\n k.prototype.getLength = function() {\n return ((this.getText() || \"\")).length;\n };\n k.prototype.setPosition = function(m, n) {\n this.backward = false;\n this.selection = true;\n this.start.setPosition(i.getMarkerAtOffset(this.root, m));\n this.start.snap();\n if (((n > 0))) {\n this.end.setPosition(i.getMarkerAtOffset(this.root, ((m + n))));\n this.end.snap();\n }\n else this.end.setPosition(this.start);\n ;\n ;\n return this.apply();\n };\n k.prototype.hasRange = function() {\n return ((this.selection && ((((this.start.node != this.end.node)) || ((this.start.offset != this.end.offset))))));\n };\n k.prototype.scrollToFocus = function() {\n var m = 5, n = this.getFocus();\n if (n.node) {\n var o = h.getElementDimensions(this.root).x, p = this.root.scrollLeft, q = ((n.node.offsetLeft + n.node.offsetWidth));\n if (((((q - p)) < m))) {\n this.root.scrollLeft = ((q - m));\n }\n else if (((((q - p)) > ((o - m))))) {\n this.root.scrollLeft = ((((q - o)) + m));\n }\n \n ;\n ;\n }\n ;\n ;\n };\n k.prototype.apply = function() {\n if (((this.start.hasChanged() || this.end.hasChanged()))) {\n var m = this.getOrigin().getMarker(true), n = this.getFocus().getMarker(true);\n this.selection = ((((((((this.selection && m)) && m.node)) && n)) && n.node));\n if (((this.selection && this.isSupported()))) {\n this.start.changed = false;\n this.end.changed = false;\n g.trySelection(this.window, m.node, m.offset, n.node, n.offset);\n return true;\n }\n ;\n ;\n }\n ;\n ;\n };\n function l(m, n) {\n this.selection = m;\n this.node = n[0];\n this.offset = n[1];\n this.rootOffset = this.getRootOffset(n[0], n[1]);\n this.sibling = ((this.node && this.node.previousSibling));\n this.changed = false;\n };\n;\n l.prototype.hasChanged = function() {\n return ((this.changed || !this.isNodeValid()));\n };\n l.prototype.isNodeValid = function() {\n if (((j.getLength(this.node) > this.offset))) {\n var m = this.node;\n while (m = m.parentNode) {\n if (((m == this.selection.root))) {\n return true;\n }\n ;\n ;\n };\n ;\n }\n ;\n ;\n };\n l.prototype.getMarker = function(m) {\n if (((this.isNodeValid() && ((((m && !this.node.firstChild)) || ((!m && ((this.node.parentNode == this.selection.root))))))))) {\n return this;\n }\n else return j.getMarker(this.selection.root, this.rootOffset, m)\n ;\n };\n l.prototype.move = function(m) {\n ((this.node && this.setPosition(i.nextMarkerBoundary(this.getMarker(false), m, \"select\"))));\n };\n l.prototype.snap = function() {\n ((this.node && this.setPosition(i.snapMarkerToText(this.getMarker(false), \"select\"))));\n };\n l.prototype.setPosition = function(m) {\n if (((((m.offset != this.offset)) || ((m.node != this.node))))) {\n this.changed = true;\n this.node = m.node;\n this.offset = m.offset;\n this.rootOffset = this.getRootOffset(this.node, this.offset);\n }\n ;\n ;\n };\n l.prototype.getRootOffset = function(m, n) {\n var o = 0, p = 5;\n while (((m && ((o++ < p))))) {\n if (((m === this.selection.root))) {\n return n;\n }\n else {\n var q = m;\n while (q = q.previousSibling) {\n n += j.getLength(q);\n ;\n };\n ;\n m = m.parentNode;\n }\n ;\n ;\n };\n ;\n };\n e.exports = k;\n});\n__d(\"StructuredInput\", [\"JSBNG__Event\",\"Arbiter\",\"ArbiterMixin\",\"JSBNG__CSS\",\"cx\",\"csx\",\"DataStore\",\"DOM\",\"Input\",\"InputSelection\",\"Keys\",\"Parent\",\"JSBNG__requestAnimationFrame\",\"StructuredInputCleaner\",\"StructuredInputDOM\",\"StructuredInputSelection\",\"StructuredInputUtil\",\"Style\",\"UserAgent\",\"copyProperties\",\"createArrayFrom\",\"createObjectFrom\",\"emptyFunction\",\"mixin\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Arbiter\"), i = b(\"ArbiterMixin\"), j = b(\"JSBNG__CSS\"), k = b(\"cx\"), l = b(\"csx\"), m = b(\"DataStore\"), n = b(\"DOM\"), o = b(\"Input\"), p = b(\"InputSelection\"), q = b(\"Keys\"), r = b(\"Parent\"), s = b(\"JSBNG__requestAnimationFrame\"), t = b(\"StructuredInputCleaner\"), u = b(\"StructuredInputDOM\"), v = b(\"StructuredInputSelection\"), w = b(\"StructuredInputUtil\"), x = b(\"Style\"), y = b(\"UserAgent\"), z = b(\"copyProperties\"), aa = b(\"createArrayFrom\"), ba = b(\"createObjectFrom\"), ca = b(\"emptyFunction\"), da = 229, ea = ba([q.UP,q.DOWN,q.LEFT,q.RIGHT,]), fa = ba([q.BACKSPACE,q.DELETE,]), ga = ba([q.SPACE,q.RETURN,]), ha = ba(\"IUB\".split(\"\").map(function(qa) {\n return qa.charCodeAt(0);\n })), ia = y.firefox(), ja = y.ie(), ka = y.webkit(), la = b(\"mixin\"), ma = la(i);\n {\n var fin211keys = ((window.top.JSBNG_Replay.forInKeys)((ma))), fin211i = (0);\n var na;\n for (; (fin211i < fin211keys.length); (fin211i++)) {\n ((na) = (fin211keys[fin211i]));\n {\n if (((ma.hasOwnProperty(na) && ((na !== \"_metaprototype\"))))) {\n pa[na] = ma[na];\n }\n ;\n ;\n };\n };\n };\n;\n var oa = ((((ma === null)) ? null : ma.prototype));\n pa.prototype = Object.create(oa);\n pa.prototype.constructor = pa;\n pa.__superConstructor__ = ma;\n function pa(qa) {\n m.set(qa, \"StructuredInput\", this);\n this._root = qa;\n this._richInput = n.JSBNG__find(qa, \".-cx-PUBLIC-uiStructuredInput__rich\");\n this._textInput = n.JSBNG__find(qa, \".-cx-PUBLIC-uiStructuredInput__text\");\n this._placeholderText = n.scry(qa, \".-cx-PUBLIC-uiStructuredInput__placeholder\")[0];\n this._hintText = n.JSBNG__find(qa, \".-cx-PUBLIC-uiStructuredInput__hint\");\n this._contentWidth = null;\n this._richWidth = null;\n this._hintNodes = [];\n this.init();\n };\n;\n pa.prototype.init = function() {\n this.init = ca;\n this._initSelection();\n this._initCleaner();\n this._initInputs();\n this._initEvents();\n this._scheduledCleanInput = false;\n this._richChanged = false;\n this._textChanged = false;\n this._selectionChanged = false;\n this._selectionIgnore = false;\n this._imeMode = false;\n this.cleanInput();\n this.inform(\"init\", null, h.BEHAVIOR_PERSISTENT);\n };\n pa.prototype._initInputs = function() {\n this._richInput.contentEditable = true;\n this._richInput.spellcheck = false;\n this._richInput.tabIndex = 0;\n this._textInput.tabIndex = -1;\n this._multiline = ((this._textInput.nodeName == \"TEXTAREA\"));\n if (!j.shown(this._richInput)) {\n var qa = p.get(this._textInput);\n n.setContent(this._richInput, u.encodeText(o.getValue(this._textInput)));\n j.hide(this._textInput);\n j.show(this._richInput);\n this.cleanInput();\n this.setSelection({\n offset: qa.start,\n length: ((qa.end - qa.start))\n });\n }\n ;\n ;\n this.togglePlaceholder();\n this._toggleHint();\n };\n pa.prototype._initEvents = function() {\n var qa = null;\n g.listen(this._richInput, \"keydown\", function(ra) {\n qa = ra.keyCode;\n if (((ra.ctrlKey && ((ra.keyCode in ha))))) {\n return ra.kill();\n }\n else if (((ra.keyCode in ea))) {\n this._selectionChanged = true;\n this.scheduleCleanInput(false);\n }\n else if (((ra.keyCode in fa))) {\n this._richChanged = true;\n this.scheduleCleanInput(true);\n if (((ra.keyCode === q.BACKSPACE))) {\n if (this._deleteTrailingChunk()) {\n return ra.kill();\n }\n ;\n }\n ;\n ;\n }\n else if (((ra.keyCode == da))) {\n this._imeMode = true;\n j.hide(this._placeholderText);\n }\n \n \n \n ;\n ;\n }.bind(this));\n g.listen(this._richInput, \"keyup\", function(ra) {\n if (((((this._imeMode || ((ra.keyCode != qa)))) && ((ra.keyCode in ga))))) {\n this._imeMode = false;\n this._richChanged = true;\n this.scheduleCleanInput();\n return ra.kill();\n }\n else if (this._imeMode) {\n this._textChanged = true;\n this.cleanInput();\n }\n \n ;\n ;\n }.bind(this));\n g.listen(this._richInput, \"keypress\", function(ra) {\n if (((ra.keyCode == q.RETURN))) {\n ((this._multiline && this._insertText(\"\\u000a\")));\n return ra.kill();\n }\n else if (((!this._selectionChanged && this._selectionIsText()))) {\n this._textChanged = true;\n this.scheduleCleanInput(false);\n }\n else {\n this._richChanged = true;\n this.scheduleCleanInput(true);\n }\n \n ;\n ;\n }.bind(this));\n g.listen(JSBNG__document, \"selectionchange\", function() {\n if (this._selectionIgnore) {\n this._selectionIgnore = false;\n }\n else this._selectionChanged = true;\n ;\n ;\n }.bind(this));\n g.listen(this._richInput, \"mousedown\", function() {\n this._selectionChanged = true;\n this._selectionLength = 0;\n this._selectionOffset = 0;\n }.bind(this));\n g.listen(this._richInput, \"mouseup\", function() {\n this._selectionChanged = true;\n s(this.cleanInput.bind(this));\n }.bind(this));\n g.listen(this._richInput, \"cut\", function() {\n this._richChanged = true;\n this.scheduleCleanInput(false);\n }.bind(this));\n g.listen(this._richInput, \"paste\", function(ra) {\n if (this._insertClipboard(((((ra && ra.JSBNG__clipboardData)) || window.JSBNG__clipboardData)))) {\n return ra.kill();\n }\n else {\n this._richChanged = true;\n this.scheduleCleanInput(true);\n }\n ;\n ;\n }.bind(this));\n g.listen(this._richInput, \"drop\", function(ra) {\n this.JSBNG__focus();\n this.selectAll();\n this._insertClipboard(((ra && ra.dataTransfer)));\n return ra.kill();\n }.bind(this));\n g.listen(this._richInput, \"dragover\", function(ra) {\n ra.dataTransfer.dropEffect = \"move\";\n ra.dataTransfer.effectAllowed = \"move\";\n return ra.kill();\n });\n g.listen(this._richInput, \"JSBNG__focus\", function(ra) {\n this._toggleHint();\n this.inform(\"JSBNG__focus\");\n }.bind(this));\n g.listen(this._richInput, \"JSBNG__blur\", function(ra) {\n j.hide(this._hintText);\n this._imeMode = false;\n this._richChanged = true;\n this.scheduleCleanInput(false);\n this.inform(\"JSBNG__blur\");\n }.bind(this));\n };\n pa.prototype._initCleaner = function() {\n this._cleaner = new t(this._richInput, true);\n };\n pa.prototype._initSelection = function() {\n this._selection = new v(this._richInput);\n this._selectionLength = 0;\n this._selectionOffset = 0;\n };\n pa.prototype._insertClipboard = function(qa) {\n if (((qa && qa.getData))) {\n var ra = ((qa.types && aa(qa.types)));\n if (!ra) {\n this._insertText(qa.getData(\"JSBNG__Text\"));\n }\n else if (((ra.indexOf(\"text/html\") != -1))) {\n this._insertHTML(qa.getData(\"text/html\"));\n }\n else if (((ra.indexOf(\"text/plain\") != -1))) {\n this._insertText(qa.getData(\"text/plain\"));\n }\n \n \n ;\n ;\n return true;\n }\n else return false\n ;\n };\n pa.prototype._deleteTrailingChunk = function(qa) {\n var ra = this.JSBNG__getSelection();\n if (((((ra.length > 0)) || ((ra.offset === 0))))) {\n return false;\n }\n ;\n ;\n var sa = ((this.JSBNG__getSelection().offset - 1)), ta = w.getMarkerAtOffset(this._richInput, sa);\n if (((((ta && u.isEntityNode(ta.node))) && ((w.getGrouping(ta.node, \"select\") !== \"none\"))))) {\n n.remove(ta.node);\n return true;\n }\n ;\n ;\n return false;\n };\n pa.prototype._selectionIsText = function() {\n var qa = this._selection.start.node, ra = this._selection.end.node;\n return ((((((qa && ((qa === ra)))) && !u.isEntityNode(qa))) && !u.isEntityNode(qa.parentNode)));\n };\n pa.prototype._insertText = function(qa) {\n if (qa) {\n var ra = n.create(\"div\", {\n }, qa);\n return this._insertNodes(ra);\n }\n ;\n ;\n };\n pa.prototype._insertNodes = function(qa) {\n if (JSBNG__document.selection) {\n JSBNG__document.selection.createRange().pasteHTML(qa.innerHTML);\n }\n else JSBNG__document.execCommand(\"insertHTML\", false, qa.innerHTML);\n ;\n ;\n this._richChanged = true;\n this.cleanInput();\n };\n pa.prototype.togglePlaceholder = function(qa) {\n if (!this._placeholderText) {\n return;\n }\n ;\n ;\n var ra = ((u.getLength(this._richInput) === 0));\n if (((qa && ra))) {\n j.show(this._placeholderText);\n }\n else j.conditionShow(this._placeholderText, ((ra && !this._imeMode)));\n ;\n ;\n };\n pa.prototype._toggleHint = function() {\n var qa = aa(this._hintNodes), ra = null, sa = \"\", ta = u.getText(this._richInput).toLowerCase();\n if (!this.hasFocus()) {\n return;\n }\n ;\n ;\n if (this._contentOverflows()) {\n j.hide(this._hintText);\n return;\n }\n ;\n ;\n while (((qa.length && ((sa.length < ta.length))))) {\n ra = qa.shift();\n sa += u.getText(ra);\n };\n ;\n if (((ta.length && ((sa.substr(0, ta.length).toLowerCase() == ta.toLowerCase()))))) {\n n.setContent(this._hintText, aa(this._richInput.cloneNode(true).childNodes));\n var ua = u.createTextNode(sa.substr(ta.length));\n qa.unshift(ua);\n n.appendContent(this._hintText, n.create(\"span\", {\n className: \"-cx-PUBLIC-uiStructuredInput__hintsuffix\"\n }, qa));\n j.show(this._hintText);\n j.hide(this._placeholderText);\n }\n else j.hide(this._hintText);\n ;\n ;\n };\n pa.prototype._contentOverflows = function() {\n if (((this._richWidth === null))) {\n this._richWidth = this._richInput.clientWidth;\n }\n ;\n ;\n if (((this._contentWidth === null))) {\n var qa = this._richInput.lastChild;\n this._contentWidth = ((n.isElementNode(qa) ? ((qa.offsetLeft + qa.offsetWidth)) : 0));\n }\n ;\n ;\n return ((this._contentWidth > this._richWidth));\n };\n pa.prototype._forceTop = function() {\n if (!this._multiline) {\n this._richInput.scrollTop = 0;\n }\n ;\n ;\n this._root.scrollTop = 0;\n };\n pa.prototype._createStructureNodes = function(qa) {\n return qa.map(function(ra) {\n return ((((ra.uid || ((ra.type && ((ra.type != \"text\")))))) ? u.createEntityNode(ra, ((ra.display || {\n }))) : u.createTextNode(ra.text)));\n }.bind(this));\n };\n pa.prototype._suppressInput = function() {\n if (((ia || ja))) {\n if (this._richClean) {\n return;\n }\n ;\n ;\n this._richClean = this._richInput.cloneNode(true);\n this._richClean.contentEditable = false;\n this._root.insertBefore(this._richClean, this._richInput.nextSibling);\n this._richClean.scrollLeft = this._richInput.scrollLeft;\n x.set(this._richInput, \"padding\", 0);\n x.set(this._richInput, \"height\", 0);\n }\n ;\n ;\n };\n pa.prototype._revealInput = function() {\n if (!this._richClean) {\n return;\n }\n ;\n ;\n x.set(this._richInput, \"height\", \"\");\n x.set(this._richInput, \"padding\", \"\");\n this._root.removeChild(this._richClean);\n this.JSBNG__focus();\n this._richClean = null;\n };\n pa.prototype._cleanInput = function() {\n var qa;\n if (((this._textChanged && !this._richChanged))) {\n this._selection.update();\n qa = \"change\";\n }\n else if (((this._richChanged || this._selectionChanged))) {\n this._selection.update();\n if (this._richChanged) {\n this._contentWidth = null;\n this._cleaner.clean();\n this._cleaner.endOnText();\n this._selection.apply();\n qa = \"change\";\n }\n ;\n ;\n if (this._selectionChanged) {\n this._cleanSelection();\n if (((this._selectionLength || !this._richChanged))) {\n qa = \"select\";\n }\n ;\n ;\n }\n ;\n ;\n }\n \n ;\n ;\n this._revealInput();\n this._forceTop();\n if (((this._richChanged || this._textChanged))) {\n this.togglePlaceholder();\n this._toggleHint();\n }\n ;\n ;\n this._selectionIgnore = true;\n this._selectionChanged = false;\n this._richChanged = false;\n this._textChanged = false;\n ((qa && this.inform(qa)));\n };\n pa.prototype._cleanSelection = function() {\n var qa = this._selection.getLength(), ra = this._selection.getOffset();\n if (qa) {\n this._selection.expand(((qa >= this._selectionLength)));\n qa = this._selection.getLength();\n ra = this._selection.getOffset();\n }\n ;\n ;\n this._selectionLength = qa;\n this._selectionOffset = ra;\n };\n pa.prototype.cleanInput = function() {\n ((this._scheduledCleanInput || this._cleanInput()));\n };\n pa.prototype.scheduleCleanInput = function(qa) {\n ((qa && this._suppressInput()));\n if (!this._scheduledCleanInput) {\n this._scheduledCleanInput = true;\n s(function() {\n this._cleanInput();\n this._scheduledCleanInput = false;\n }.bind(this));\n }\n ;\n ;\n };\n pa.prototype.setEnabled = function(qa) {\n this._textInput.disabled = !qa;\n this._richInput.contentEditable = qa;\n };\n pa.prototype.getRoot = function() {\n return this._root;\n };\n pa.prototype.getRichInput = function() {\n return this._richInput;\n };\n pa.prototype.getEnabled = function() {\n return !this._textInput.disabled;\n };\n pa.prototype.getText = function() {\n return u.getDecodedText(this._richInput);\n };\n pa.prototype.setText = function(qa) {\n n.setContent(this._richInput, u.createTextNode(qa));\n this._richChanged = false;\n this._selectionChanged = false;\n this.inform(\"change\");\n };\n pa.prototype.setHint = function(qa) {\n this._hintNodes = this._createStructureNodes(qa);\n this._toggleHint();\n };\n pa.prototype.getStructure = function() {\n var qa = [];\n aa(this._richInput.childNodes).forEach(function(ra) {\n var sa = !n.isTextNode(ra), ta = u.getDecodedText(ra);\n ((ta.length && qa.push({\n text: ta,\n uid: ((sa ? ra.getAttribute(\"data-uid\") : null)),\n type: ((((sa && ra.getAttribute(\"data-type\"))) || \"text\"))\n })));\n }.bind(this));\n return qa;\n };\n pa.prototype.setStructure = function(qa) {\n n.setContent(this._richInput, this._createStructureNodes(qa));\n this._cleaner.endOnText();\n this._cleaner.clean();\n this.togglePlaceholder();\n this._toggleHint();\n this._richChanged = false;\n this._selectionChanged = false;\n this.inform(\"change\");\n };\n pa.prototype.getContentDimensions = function() {\n var qa = this._richInput.lastChild;\n return {\n width: ((qa ? ((qa.offsetLeft + qa.offsetWidth)) : 0)),\n height: ((qa ? ((qa.offsetTop + qa.offsetHeight)) : 0))\n };\n };\n pa.prototype.JSBNG__getSelection = function() {\n return {\n offset: this._selection.getOffset(),\n length: this._selection.getLength()\n };\n };\n pa.prototype.setSelection = function(qa) {\n if (this.hasFocus()) {\n this._selection.update();\n this._selection.setPosition(qa.offset, qa.length);\n this._selection.scrollToFocus();\n this._selectionChanged = false;\n this.inform(\"select\");\n }\n ;\n ;\n };\n pa.prototype.moveSelectionToEnd = function() {\n this.setSelection({\n length: 0,\n offset: u.getLength(this._richInput)\n });\n };\n pa.prototype.isSelectionAtEnd = function() {\n var qa = this.JSBNG__getSelection().offset, ra = u.getLength(this._richInput);\n return ((qa >= ra));\n };\n pa.prototype.selectAll = function() {\n this.setSelection({\n offset: 0,\n length: u.getLength(this._richInput)\n });\n };\n pa.prototype.hasFocus = function() {\n return n.contains(this._root, JSBNG__document.activeElement);\n };\n pa.prototype.JSBNG__focus = function() {\n this._richInput.JSBNG__focus();\n };\n pa.prototype.JSBNG__blur = function() {\n var qa = n.create(\"input\", {\n type: \"text\",\n tabIndex: -1,\n style: {\n position: \"absolute\",\n JSBNG__top: 0,\n left: \"-100px\",\n width: \"1px\",\n height: \"1px\"\n }\n });\n n.appendContent(this._root, qa);\n var ra = function() {\n if (((this.hasFocus() || ((ka && ((JSBNG__document.activeElement === JSBNG__document.body))))))) {\n qa.JSBNG__focus();\n qa.JSBNG__blur();\n }\n ;\n ;\n };\n this.JSBNG__blur = ra;\n this.JSBNG__blur();\n };\n pa.getInstance = function(qa) {\n var ra = r.byClass(qa, \"-cx-PRIVATE-uiStructuredInput__root\");\n return ((ra ? m.get(ra, \"StructuredInput\") : null));\n };\n z(pa.prototype, {\n _insertHTML: (function() {\n var qa = n.create(\"div\"), ra = new t(qa, false);\n return function(sa) {\n if (sa) {\n qa.innerHTML = sa;\n ra.clean();\n return this._insertNodes(qa);\n }\n ;\n ;\n };\n })()\n });\n e.exports = pa;\n});\n__d(\"FacebarTypeaheadWebSearch\", [\"startsWith\",\"FacebarStructuredFragment\",\"FacebarStructuredText\",], function(a, b, c, d, e, f) {\n var g = b(\"startsWith\"), h = b(\"FacebarStructuredFragment\"), i = b(\"FacebarStructuredText\"), j = new h({\n type: \"ent:websuggestion\",\n text: \"Web Search: \",\n uid: null\n }), k = j.getText().toLowerCase().trim();\n function l(o, p) {\n if (((!o || ((o.type !== \"websuggestion\"))))) {\n return;\n }\n ;\n ;\n var q = p.getValue().toArray();\n q.forEach(function(r) {\n if (((((r.isType(\"ent\") && !r.isType(\"ent\", \"user\"))) && r.getUID()))) {\n if (o.extra_uri_params) {\n o.extra_uri_params.qh = r.getUID();\n return;\n }\n ;\n }\n ;\n ;\n });\n };\n;\n function m(o) {\n return ((o.getType() === j.getType()));\n };\n;\n function n(o) {\n this._core = o.getCore();\n this._view = o.getView();\n this._input = this._core.input;\n this._isEnabled = false;\n };\n;\n n.prototype.enable = function() {\n this._isEnabled = true;\n this.changeListener = this._input.subscribe(\"change\", this._changeWebSearch.bind(this));\n this.lockListener = this._input.subscribe(\"shortcut\", this._lockWebSearch.bind(this));\n this.beforeSelectListener = this._view.subscribe(\"beforeSelect\", this._beforeSelect.bind(this));\n this.beforeRenderListener = this._view.subscribe(\"beforeRender\", this._beforeRender.bind(this));\n };\n n.prototype._changeWebSearch = function() {\n var o = this._input.getValue(), p = o.toArray(), q = p[0];\n if (((q && ((q.getType() === \"text\"))))) {\n if (g(q.getText().toLowerCase(), k)) {\n p.splice(0, 1, j, new h({\n text: q.getText().substr(k.length).replace(/^ /, \"\")\n }));\n this._replaceFragments(p);\n }\n else if (((((p.length > 1)) && p.some(m)))) {\n this._replaceFragments([new h({\n text: o.toString()\n }),]);\n }\n \n ;\n }\n ;\n ;\n };\n n.prototype._replaceFragments = function(o) {\n this._input.storeSelection();\n this._input.setValue(new i(o));\n this._input.restoreSelection();\n };\n n.prototype._beforeSelect = function(o, p) {\n l(p.selected, this._input);\n return true;\n };\n n.prototype._beforeRender = function(o, p) {\n var q = this._input.getValue().toArray()[0], r = ((q && m(q)));\n p.results.forEach(function(s) {\n if (((s.type === \"websuggestion\"))) {\n s.isLockedWebSearchMode = r;\n }\n ;\n ;\n });\n return true;\n };\n n.prototype._lockWebSearch = function(o, p) {\n if (p.shift) {\n var q = this._input.getValue().toArray()[0];\n if (((!q || !m(q)))) {\n this._input.setValue(new i([j,]));\n }\n ;\n ;\n }\n ;\n ;\n };\n n.prototype.disable = function() {\n this.beforeSelectListener.unsubscribe();\n this.changeListener.unsubscribe();\n this.lockListener.unsubscribe();\n this.beforeRenderListener.unsubscribe();\n this._isEnabled = false;\n };\n n.addPrefix = function(o) {\n if (!m(o.getFragment(0))) {\n var p = [j,].concat(o.toArray());\n return new i(p);\n }\n else return o\n ;\n };\n e.exports = n;\n});\n__d(\"FacebarTypeaheadCore\", [\"JSBNG__Event\",\"Arbiter\",\"ArbiterMixin\",\"Animation\",\"arrayContains\",\"Base64\",\"copyProperties\",\"csx\",\"JSBNG__CSS\",\"DOM\",\"FacebarStructuredText\",\"FacebarTypeaheadInput\",\"FacebarTypeaheadWebSearch\",\"invariant\",\"Keys\",\"startsWith\",\"Style\",\"URI\",\"mixin\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Arbiter\"), i = b(\"ArbiterMixin\"), j = b(\"Animation\"), k = b(\"arrayContains\"), l = b(\"Base64\"), m = b(\"copyProperties\"), n = b(\"csx\"), o = b(\"JSBNG__CSS\"), p = b(\"DOM\"), q = b(\"FacebarStructuredText\"), r = b(\"FacebarTypeaheadInput\"), s = b(\"FacebarTypeaheadWebSearch\"), t = b(\"invariant\"), u = b(\"Keys\"), v = b(\"startsWith\"), w = b(\"Style\"), x = b(\"URI\"), y = b(\"mixin\"), z = y(i);\n {\n var fin212keys = ((window.top.JSBNG_Replay.forInKeys)((z))), fin212i = (0);\n var aa;\n for (; (fin212i < fin212keys.length); (fin212i++)) {\n ((aa) = (fin212keys[fin212i]));\n {\n if (((z.hasOwnProperty(aa) && ((aa !== \"_metaprototype\"))))) {\n ca[aa] = z[aa];\n }\n ;\n ;\n };\n };\n };\n;\n var ba = ((((z === null)) ? null : z.prototype));\n ca.prototype = Object.create(ba);\n ca.prototype.constructor = ca;\n ca.__superConstructor__ = z;\n function ca(da) {\n m(this, da);\n };\n;\n ca.prototype.init = function(da, ea, fa) {\n this.init = function() {\n \n };\n this.data = da;\n this.view = ea;\n this.root = fa;\n this.windowFocused = true;\n this.isFocused = false;\n this.keepOpen = false;\n this.hoverAnimation = null;\n this.stickyQuery = null;\n this.settedQuery = null;\n this.selectedQuery = null;\n this.currentQuery = null;\n this._prefillTextInInputField = this.data.allowGrammar();\n this._webSearchLockedInMode = this.data.isWebSearchLockedInModeEnabled();\n this.initSubcomponents();\n this.initEvents();\n this.checkValue();\n };\n ca.prototype.initSubcomponents = function() {\n var da = p.JSBNG__find(this.root, \".-cx-PUBLIC-fbFacebar__input\");\n this.input = new r(da);\n this.view.setInputElement(this.input.getRawInputElement());\n };\n ca.prototype.initEvents = function() {\n g.listen(this.root, \"keydown\", this.keydown.bind(this));\n g.listen(this.root.parentNode, \"mousedown\", this.mousedown.bind(this));\n g.listen(this.view.getElement(), \"mousedown\", this.mousedown.bind(this));\n g.listen(JSBNG__document.body, \"mouseup\", this.mouseup.bind(this));\n g.listen(window, \"JSBNG__focus\", this.focusWindow.bind(this));\n g.listen(window, \"JSBNG__blur\", this.blurWindow.bind(this));\n this.view.subscribe(\"select\", this.selectView.bind(this));\n this.view.subscribe(\"highlight\", this.highlightView.bind(this));\n this.view.subscribe(\"render\", this.highlightView.bind(this));\n this.view.subscribe(\"hideHelp\", this.performQuery.bind(this));\n this.input.subscribe(\"JSBNG__focus\", this.focusInput.bind(this));\n this.input.subscribe(\"JSBNG__blur\", this.blurInput.bind(this));\n this.input.subscribe(\"change\", this.changeInput.bind(this));\n this.data.subscribe(\"activity\", this.typeaheadActivity.bind(this));\n this.data.subscribe(\"respond\", this.completeData.bind(this));\n this.data.subscribe(\"ready\", this.typeaheadReady.bind(this));\n this.initFocus.bind(this).defer();\n };\n ca.prototype.initFocus = function() {\n if (p.contains(this.input.root, JSBNG__document.activeElement)) {\n this.isFocused = true;\n this._newSession();\n this.open();\n }\n ;\n ;\n };\n ca.prototype.cleanQuery = function(da) {\n da = ((m({\n }, da) || {\n }));\n if (!da.structure) {\n da.structure = new q();\n }\n ;\n ;\n if (!this._prefillTextInInputField) {\n da.structure = q.fromString(da.structure.toString());\n }\n ;\n ;\n t(((da.structure instanceof q)));\n if (((((((da.type == \"websuggestion\")) && this._prefillTextInInputField)) && this._webSearchLockedInMode))) {\n da.structure = s.addPrefix(da.structure);\n }\n ;\n ;\n return da;\n };\n ca.prototype.setPageQuery = function(da) {\n da = this.cleanQuery(da);\n var ea = this.input.getValue(), fa = da.structure, ga = ((!fa.isEmptyOrWhitespace() && ((ea.isEmptyOrWhitespace() || ((ea.toString().trim() == fa.toString().trim()))))));\n return this.selectQuery(da, ga);\n };\n ca.prototype.selectQuery = function(da, ea) {\n ea = ((ea !== false));\n da = this.cleanQuery(da);\n if (((ea || !this.selectedQuery))) {\n if (((ea || this.getValue().isEmptyOrWhitespace()))) {\n this.setQuery(da);\n }\n ;\n ;\n this.selectedQuery = da;\n }\n ;\n ;\n return da;\n };\n ca.prototype.completeSelection = function() {\n var da = this.view.JSBNG__getSelection();\n if (((da && !da.search))) {\n this.data.saveResult(da);\n this.setQuery(da);\n return true;\n }\n ;\n ;\n };\n ca.prototype.setQuery = function(da, ea) {\n da = this.cleanQuery(da);\n this.input.setValue(da.structure);\n this.settedQuery = da;\n this.stickyQuery = ((((ea === false)) ? this.stickyQuery : da));\n this.checkValue();\n };\n ca.prototype.checkValue = function() {\n if (((((!this.view.visible || !this.dataSourceReady)) || ((this.value && ((this.value.getHash() == this.input.getValue().getHash()))))))) {\n return;\n }\n ;\n ;\n this.value = this.nextQuery = this.getValue();\n this.performQuery();\n };\n ca.prototype.performQuery = function() {\n this.data.query(this.nextQuery);\n this.currentQuery = this.nextQuery;\n };\n ca.prototype.expandView = function() {\n this.data.query(this.currentQuery, false, [], true);\n this.input.restoreSelection();\n };\n ca.prototype.collapseView = function() {\n this.requery();\n };\n ca.prototype.requery = function() {\n if (this.currentQuery) {\n this.data.query(this.currentQuery);\n }\n ;\n ;\n };\n ca.prototype.executeQuery = function(da) {\n da = this.cleanQuery(da);\n var ea = this.inform(\"execute\", da), fa = this.getSessionID();\n this.close();\n if (this._prefillTextInInputField) {\n this.selectQuery(da);\n }\n else this.selectQuery();\n ;\n ;\n if (!ea) {\n this._navigateToQuery(da, fa);\n }\n ;\n ;\n };\n ca.prototype.getSearchType = function() {\n return \"facebar\";\n };\n ca.prototype._newSession = function() {\n this._sessionID = Math.JSBNG__random().toString();\n this.inform(\"session\", this._sessionID, h.BEHAVIOR_STATE);\n };\n ca.prototype._closeSession = function() {\n this.inform(\"session\", null, h.BEHAVIOR_STATE);\n };\n ca.prototype.getSessionID = function() {\n return this._sessionID;\n };\n ca.prototype._navigateToQuery = function(da, ea) {\n var fa = this.data.facebarConfig;\n if (da.uri) {\n da.uri.addQueryData(da.extra_uri_params);\n da.uri.addQueryData({\n ref: \"br_tf\"\n });\n if (((da.structure && ((((da.type == \"websuggestion\")) || ((((da.type == \"grammar\")) && ((!fa || v(da.uri.getPath(), fa.search_path)))))))))) {\n var ga = this.data.getRawStructure(da.structure).text_form, ha = l.encode(ga).replace(/\\=+$/, \"\"), ia = {\n sid: ea,\n qs: ha,\n gv: this.data.getQueryData().grammar_version\n }, ja = l.encode(JSON.stringify(ia)).replace(/\\=+$/, \"\");\n da.uri.addQueryData({\n ref: ja\n });\n }\n ;\n ;\n da.uri.go();\n return;\n }\n ;\n ;\n };\n ca.prototype.reset = function() {\n this.selectQuery();\n this.inform(\"reset\");\n };\n ca.prototype.animateInputValue = function(da, ea, fa) {\n ((this.hoverAnimation && this.hoverAnimation.JSBNG__stop()));\n var ga = new j(ea).from(\"opacity\", 1).to(\"opacity\", 0).duration(150).ondone(function() {\n this.input.setValue(fa);\n this.hoverAnimation = ha.go();\n }.bind(this)), ha = new j(da).from(\"opacity\", 0).to(\"opacity\", 1).duration(150).ondone(function() {\n this.hoverAnimation = null;\n w.set(ea, \"opacity\", \"\");\n w.set(da, \"opacity\", \"\");\n }.bind(this));\n w.set(da, \"opacity\", 0);\n this.hoverAnimation = ga.go();\n };\n ca.prototype.open = function() {\n o.addClass(JSBNG__document.body, \"facebarOpened\");\n this.inform(\"open\");\n this.view.show();\n this.input.JSBNG__focus();\n this.checkValue();\n if (!this.isFocused) {\n this.isFocused = true;\n this._newSession();\n this.inform(\"JSBNG__focus\");\n }\n ;\n ;\n };\n ca.prototype.close = function() {\n this._closeSession();\n if (((this.inform(\"close\") === false))) {\n return;\n }\n ;\n ;\n if (((((!this.value || this.value.isEmptyOrWhitespace())) && this.selectedQuery))) {\n this.input.setValue(this.selectedQuery.structure);\n }\n else if (this.stickyQuery) {\n this.input.setValue(this.stickyQuery.structure);\n }\n \n ;\n ;\n this.input.JSBNG__blur();\n this.view.hide();\n this.view.setAutoSelect(false);\n this.inform(\"session\", null, h.BEHAVIOR_STATE);\n if (this.isFocused) {\n o.addClass(JSBNG__document.body, \"facebarClosing\");\n o.removeClass(JSBNG__document.body, \"facebarOpened\");\n o.removeClass.curry(JSBNG__document.body, \"facebarClosing\").defer(355);\n this.isFocused = false;\n this.inform.bind(this, \"JSBNG__blur\").defer();\n }\n ;\n ;\n };\n ca.prototype.getElement = function() {\n return this.root;\n };\n ca.prototype.getValue = function() {\n return this.input.getValue();\n };\n ca.prototype.getText = function() {\n return this.getValue().toString();\n };\n ca.prototype.keydown = function(JSBNG__event) {\n var da = true, ea = g.getKeyCode(JSBNG__event);\n switch (ea) {\n case u.ESC:\n this.close();\n break;\n case u.RIGHT:\n da = ((this.input.isSelectionAtEnd() && this.completeSelection()));\n break;\n case u.TAB:\n if (((JSBNG__event.getModifiers().shift || ((!this.completeSelection() && !this.loading))))) {\n this.view.setAutoSelect(false);\n this.view.hide();\n da = false;\n }\n ;\n ;\n break;\n case u.UP:\n this.view.prev();\n break;\n case u.DOWN:\n this.view.next();\n break;\n case u.RETURN:\n this.view.select();\n break;\n case u.PAGE_UP:\n this.view.first();\n break;\n default:\n if (((((ea >= \"0\".charCodeAt(0))) && ((ea <= \"z\".charCodeAt(0)))))) {\n this.view.setAutoSelect(true);\n }\n ;\n ;\n this.stickyQuery = null;\n da = false;\n break;\n };\n ;\n this.input.storeSelection();\n if (da) {\n return JSBNG__event.kill();\n }\n ;\n ;\n };\n ca.prototype.mousedown = function() {\n this.view.setAutoSelect(true);\n this.input.storeSelection();\n this.keepOpen = true;\n };\n ca.prototype.mouseup = function(da) {\n if (this.keepOpen) {\n this.open();\n }\n ;\n ;\n this.keepOpen = false;\n };\n ca.prototype.focusWindow = function() {\n this.windowFocused = true;\n };\n ca.prototype.blurWindow = function() {\n this.windowFocused = false;\n };\n ca.prototype.selectView = function(da, ea) {\n if (((!ea || !ea.selected))) {\n return;\n }\n ;\n ;\n ea.selected.see_more = this.data.isSeeMore();\n this.inform(\"select\", ea);\n var fa = this.cleanQuery(ea.selected);\n this.executeQuery(fa);\n };\n ca.prototype.highlightView = function() {\n var da = this.view.JSBNG__getSelection();\n ((da && this.input.setHint(da.structure)));\n };\n ca.prototype.blurInput = function() {\n JSBNG__setTimeout((function() {\n if (((this.windowFocused || ((x.getRequestURI().getSubdomain() == \"apps\"))))) {\n this.input.togglePlaceholder();\n if (!this.keepOpen) {\n this.close();\n }\n ;\n ;\n }\n ;\n ;\n }).bind(this), 0);\n };\n ca.prototype.changeInput = function() {\n this.inform(\"change\");\n this.checkValue();\n this.inform(\"change_end\");\n };\n ca.prototype.focusInput = function() {\n this.open();\n this.input.togglePlaceholder(false);\n };\n ca.prototype.typeaheadReady = function() {\n this.dataSourceReady = true;\n this.checkValue();\n };\n ca.prototype.updateData = function() {\n this.view.setLoading(this.loading);\n };\n ca.prototype.completeData = function(da, ea) {\n if (((ea.forceDisplay || ((this.value && this.value.matches(ea.value)))))) {\n this.view.render(ea.value, ea.results, ea.isAsync, ((((ea.results.length === 0)) && ea.isEmptyResults)), ea.isScrollable);\n }\n ;\n ;\n };\n ca.prototype.typeaheadActivity = function(da, ea) {\n this.fetching = ea.activity;\n if (((this.loading != this.fetching))) {\n this.loading = this.fetching;\n this.updateData();\n }\n ;\n ;\n };\n ca.prototype.getNameTextFromSelected = function() {\n var da = ((this.settedQuery && this.settedQuery.semantic)), ea = ((this.data.facebarConfig && this.data.facebarConfig.name_functions)), fa = ((((da && ea)) && da.match(/[a-z-]+\\([^()]+\\)/g)));\n if (fa) {\n for (var ga = 0; ((ga < fa.length)); ga++) {\n var ha = fa[ga].match(/([a-z-]+)\\(([^()]+)\\)/);\n if (((ha && k(ea, ha[1])))) {\n return ha[2];\n }\n ;\n ;\n };\n }\n ;\n ;\n return this.value.toString();\n };\n m(ca.prototype, {\n events: [\"session\",\"JSBNG__focus\",\"select\",\"change\",\"execute\",\"JSBNG__blur\",],\n dataSourceReady: false\n });\n e.exports = ca;\n});\n__d(\"FacebarTypeaheadHighlighter\", [], function(a, b, c, d, e, f) {\n function g(h) {\n this.$FacebarTypeaheadHighlighter0 = h.getCore();\n this.$FacebarTypeaheadHighlighter1 = this.$FacebarTypeaheadHighlighter0.view;\n };\n;\n g.prototype.enable = function() {\n this.$FacebarTypeaheadHighlighter2 = this.$FacebarTypeaheadHighlighter1.subscribe(\"filter\", this.$FacebarTypeaheadHighlighter3.bind(this));\n };\n g.prototype.disable = function() {\n this.$FacebarTypeaheadHighlighter2.unsubscribe();\n };\n g.prototype.$FacebarTypeaheadHighlighter3 = function(h, JSBNG__event) {\n var i = JSBNG__event.results, j = JSBNG__event.value;\n i.forEach(function(k) {\n k.original_query = j;\n });\n };\n e.exports = g;\n});\n__d(\"FacebarTypeaheadRecorder\", [\"clickRefAction\",\"copyProperties\",\"Env\",\"JSBNG__Event\",\"Keys\",\"ScubaSample\",\"SearchTypeaheadRecorder\",\"URI\",\"userAction\",\"Arbiter\",], function(a, b, c, d, e, f) {\n var g = b(\"clickRefAction\"), h = b(\"copyProperties\"), i = b(\"Env\"), j = b(\"JSBNG__Event\"), k = b(\"Keys\"), l = b(\"ScubaSample\"), m = b(\"SearchTypeaheadRecorder\"), n = b(\"URI\"), o = b(\"userAction\"), p = b(\"Arbiter\");\n {\n var fin213keys = ((window.top.JSBNG_Replay.forInKeys)((m))), fin213i = (0);\n var q;\n for (; (fin213i < fin213keys.length); (fin213i++)) {\n ((q) = (fin213keys[fin213i]));\n {\n if (((m.hasOwnProperty(q) && ((q !== \"_metaprototype\"))))) {\n s[q] = m[q];\n }\n ;\n ;\n };\n };\n };\n;\n var r = ((((m === null)) ? null : m.prototype));\n s.prototype = Object.create(r);\n s.prototype.constructor = s;\n s.__superConstructor__ = m;\n function s(t) {\n this.typeahead = t;\n m.call(this, t);\n this.userText = \"\";\n this.queryTimes = [];\n this._sessionDisabled = false;\n };\n;\n s.prototype.initEvents = function() {\n this.typeahead.getCore().subscribe(\"session\", function(t, u) {\n if (((u === null))) {\n this.sessionEnd();\n }\n else this.sessionStart(u);\n ;\n ;\n }.bind(this));\n this.typeahead.getCore().subscribe(\"select\", function(t, u) {\n this.recordSelectInfo(u);\n }.bind(this));\n this.typeahead.getCore().input.subscribe(\"shortcut\", function(t, u) {\n this.recordShortcut(u);\n }.bind(this));\n this.typeahead.getCore().subscribe(\"quickSelectRedirect\", function(t, u) {\n this.recordQuickSelectInfo(u);\n }.bind(this));\n this.typeahead.getView().subscribe(\"render\", function(t, u) {\n this.recordRender(u);\n }.bind(this));\n this.typeahead.data.subscribe(\"query\", function(t, u) {\n if (!u.value.isEmpty()) {\n this.recordCountStat(\"num_queries\");\n }\n ;\n ;\n if (u.see_more) {\n this.recordStat(\"clicked_see_more\", 1);\n }\n ;\n ;\n this.recordAvgStat(\"num_results_from_cache\", u.results.length);\n this.queryTimes[((u.queryId - this.startQueryId))] = {\n send: JSBNG__Date.now()\n };\n }.bind(this));\n this.typeahead.data.subscribe(\"sending_request\", function(t, u) {\n var v = u.data.value;\n if (!v) {\n return;\n }\n ;\n ;\n this.backendQueries.push(v);\n }.bind(this));\n this.typeahead.subscribe(\"navigation\", function(t, u) {\n if (((u && u.structure))) {\n this.recordStat(\"navigation_input\", JSON.stringify(u.structure.toStruct()));\n this.recordStat(\"navigation_text\", u.structure.toString());\n }\n ;\n ;\n }.bind(this));\n this.typeahead.data.subscribe(\"response_received\", function(t, u, v) {\n if (((u.queryId >= this.startQueryId))) {\n var w = this.queryTimes[((u.queryId - this.startQueryId))];\n w.recv = ((JSBNG__Date.now() - w.send));\n }\n ;\n ;\n }.bind(this));\n this.typeahead.data.subscribe(\"backend_response\", function(t, u) {\n if (((u.queryId >= this.startQueryId))) {\n var v = this.queryTimes[((u.queryId - this.startQueryId))];\n v.render = ((JSBNG__Date.now() - v.send));\n if (u.payload.incomplete) {\n v.incomplete = true;\n }\n ;\n ;\n v.backendInfo = u.payload.info;\n if (this.core.scubaInfo) {\n this.logToScuba(u, v, this.core.scubaInfo);\n }\n ;\n ;\n }\n ;\n ;\n }.bind(this));\n p.subscribe(\"BrowseNUX/typing\", this.disableThisSession.bind(this));\n p.subscribe(\"TestConsole/typing\", this.disableThisSession.bind(this));\n this.typeahead.getCore().subscribe(\"change\", function(t, u) {\n this.userInput(this.core.getText());\n }.bind(this));\n this.typeahead.subscribe(\"clear\", function() {\n this.recordAppendStat(\"before_clear_queries\", this.userText);\n }.bind(this));\n j.listen(this.element, \"keydown\", function(JSBNG__event) {\n this.recordStat(\"keypressed\", 1);\n if (((j.getKeyCode(JSBNG__event) == k.BACKSPACE))) {\n if (!this._backspacing) {\n this._backspacing = true;\n this.recordAppendStat(\"before_backspace_queries\", this.core.getText());\n }\n ;\n ;\n }\n else this._backspacing = false;\n ;\n ;\n }.bind(this));\n this.typeahead.subscribe(\"record_after_reorder\", function(t, u) {\n this._reorderInfo = u;\n this._reorderInfo.s_organic_results = this._reorderInfo.s_organic_results.map(this.buildTypeaheadRecord.bind(this));\n }.bind(this));\n this.typeahead.subscribe(\"filter\", function(t, u) {\n this._unsupportedGrammarInfo = this.buildUnsupportedGrammarInfo(u);\n }.bind(this));\n this.typeahead.getCore().subscribe(\"recordFunction\", function(t, u) {\n this._extraRecorder.push(u);\n }.bind(this));\n };\n s.prototype._reset = function(t) {\n this.stats = {\n };\n this.avgStats = {\n };\n this.appendStats = {\n };\n this._backspacing = false;\n this.backendQueries = [];\n this._topreplace = false;\n this._inflightRequests = {\n };\n };\n s.prototype.sessionStart = function(t) {\n this._sessionEnded = false;\n this.data.setQueryData({\n sid: t\n });\n this.recordStat(\"sid\", t);\n if (!this.stats.session_start_time) {\n this.recordStat(\"session_start_time\", JSBNG__Date.now());\n }\n ;\n ;\n this.startQueryId = ((this.data.getCurQueryId() + 1));\n this.recordStat(\"keypressed\", 0);\n this.queryTimes = [];\n };\n s.prototype.sessionEnd = function() {\n if (((this._sessionEnded || this._sessionDisabled))) {\n if (this._sessionDisabled) {\n this.reset();\n this._sessionDisabled = false;\n this._sessionEnded = true;\n }\n ;\n ;\n return;\n }\n ;\n ;\n this._sessionEnded = true;\n this.recordStat(\"session_end_time\", JSBNG__Date.now());\n this.recordStat(\"grammar_version\", this.data.getQueryData().grammar_version);\n this.submit();\n };\n s.prototype.disableThisSession = function() {\n this._sessionDisabled = true;\n };\n s.prototype.userInput = function(t) {\n this.userText = t;\n };\n s.prototype.buildUnsupportedGrammarInfo = function(t) {\n var u = ((t.results ? t.results[0] : null));\n if (((!u || ((u.results_set_type !== \"unimplemented\"))))) {\n return null;\n }\n ;\n ;\n return {\n unsupported_grammar: {\n category: ((u.error_info.category || \"unknown\")),\n edge: u.error_info.blamed_edge\n }\n };\n };\n s.prototype.buildTypeaheadRecord = function(t, u) {\n var v = ((((t.rankType || t.render_type)) || t.type)), w = 0, x = u;\n if (((typeof t.groupIndex == \"number\"))) {\n w = t.groupIndex;\n x = t.indexInGroup;\n }\n ;\n ;\n var y = {\n group_index: w,\n index_in_group: x,\n cost: t.cost,\n s_value: ((t.s_value || 0)),\n semantic: t.semantic,\n text: t.structure.toString(),\n cache_only: ((t.cacheOnlyResult ? 1 : 0)),\n parse: t.parse,\n semantic_forest: t.semanticForest,\n normalized_input: t.entityTypes,\n category: t.category,\n type: v,\n source: t.bootstrapped,\n grammar_results_type: ((t.results_set_type || \"\")).replace(/[\\[\\{](.*)[\\]\\}]/, \"$1\"),\n result_from_memcache: t.memcache,\n websuggestion_source: t.websuggestion_source,\n dynamic_cost: t.dynamic_cost,\n is_js_bootstrap_match: t.isJSBootstrapMatch,\n backend_cost: t.backendCost,\n bootstrap_cost: t.bootstrapCost,\n match_type: t.match_type,\n l_type: t.l_type,\n vertical_type: t.vertical_type,\n prefix_match: t.prefix_match,\n prefix_length: t.prefix_length,\n index_before_buckets: t.indexBeforeBuckets,\n bucket_lineage: t.bucketLineage\n };\n if (t.logInfo) {\n y.backend_log_info = t.logInfo;\n }\n ;\n ;\n if (t.s_token) {\n y.s_token = t.s_token;\n }\n ;\n ;\n if (t.s_categories) {\n y.s_categories = t.s_categories;\n }\n ;\n ;\n return y;\n };\n s.prototype.buildListTypeaheadRecords = function() {\n var t = [];\n ((this.results && this.results.forEach(function(u, v) {\n if (((u.uid !== \"search\"))) {\n t.push(this.buildTypeaheadRecord(u, v));\n }\n ;\n ;\n }.bind(this))));\n return t;\n };\n s.prototype.recordShortcut = function(t) {\n this.recordStat(\"shortcut\", 1);\n this.recordStat(\"shortcut_with_shift\", t.shift);\n };\n s.prototype.recordStats = function(t, u) {\n {\n var fin214keys = ((window.top.JSBNG_Replay.forInKeys)((u))), fin214i = (0);\n var v;\n for (; (fin214i < fin214keys.length); (fin214i++)) {\n ((v) = (fin214keys[fin214i]));\n {\n this.recordStat(((((t + \"_\")) + v)), u[v]);\n ;\n };\n };\n };\n ;\n };\n s.prototype.getTypeaheadIndex = function(t, u) {\n var v = ((((typeof t.groupIndex == \"number\")) ? ((t.groupIndex + 1)) : 0));\n return ((u - v));\n };\n s.prototype.recordQuickSelectInfo = function(t) {\n var u = {\n input_query: t.input_query,\n semantic: t.semantic,\n type: t.type,\n position: t.position,\n with_mouse: t.with_mouse,\n text: t.text,\n quick_select: 1\n };\n this.recordStats(\"selected\", u);\n this.recordStat(\"quick_select\", 1);\n };\n s.prototype.recordSelectInfo = function(t) {\n var u = t.selected, v = this.getTypeaheadIndex(u, t.index), w = {\n };\n if (((u.uid == \"search\"))) {\n w.selected_search = 1;\n }\n else {\n w = this.buildTypeaheadRecord(u);\n var x = ((((w.type == \"friend\")) ? \"user\" : w.type));\n w.position = v;\n w[x] = 1;\n }\n ;\n ;\n w.with_mouse = ((t.clicked ? 1 : 0));\n w.quick_select = 0;\n w.see_more = ((u.see_more ? 1 : 0));\n w.input_query = this.userText;\n w.input_fragments = JSON.stringify(this.core.currentQuery.toStruct());\n var y = ((u.dataGT ? {\n gt: JSON.parse(u.dataGT)\n } : {\n })), z = {\n href: u.path\n };\n g(\"click\", z, null, null, y);\n o(\"search\").uai(\"click\");\n this.recordStats(\"selected\", w);\n this.recordAppendStat(\"selection_history\", {\n selected: w,\n candidate_results: this.buildListTypeaheadRecords(),\n timestamp: JSBNG__Date.now()\n });\n var aa = {\n };\n this._extraRecorder.forEach(function(ba) {\n ba(t, this.results, aa);\n }.bind(this));\n this.recordStat(\"extra_select_info\", JSON.stringify(aa));\n this.recordStat(\"selected_with_mouse\", ((t.clicked ? 1 : 0)));\n };\n s.prototype._dataToSubmit = function() {\n this.recordStat(\"max_results\", this.data._maxResults);\n if (((this.stats && this.stats.selected_input_query))) {\n this.recordStat(\"input_query\", this.stats.selected_input_query);\n }\n else this.recordStat(\"input_query\", this.userText);\n ;\n ;\n this.recordStat(\"uri\", n().toString());\n if (!this.stats.shortcut) {\n this.recordStat(\"shortcut\", 0);\n this.recordStat(\"shortcut_with_shift\", false);\n }\n ;\n ;\n var t = this.stats;\n {\n var fin215keys = ((window.top.JSBNG_Replay.forInKeys)((this.avgStats))), fin215i = (0);\n var u;\n for (; (fin215i < fin215keys.length); (fin215i++)) {\n ((u) = (fin215keys[fin215i]));\n {\n var v = this.avgStats[u];\n t[u] = ((v[0] / v[1]));\n };\n };\n };\n ;\n var w = {\n candidate_results: this.buildListTypeaheadRecords(),\n timestamp: JSBNG__Date.now(),\n input_query: this.userText\n };\n if (this._reorderInfo) {\n h(w, this._reorderInfo);\n }\n ;\n ;\n if (this._unsupportedGrammarInfo) {\n h(w, this._unsupportedGrammarInfo);\n }\n ;\n ;\n this.recordAppendStat(\"suggestions_at_end_of_session\", w);\n this.recordAppendStat(\"query_times\", this.queryTimes);\n if (((this.backendQueries.length > 0))) {\n if (((this.backendQueries.length > this.data.logBackendQueriesWindow))) {\n this.backendQueries = this.backendQueries.slice(((this.backendQueries.length - this.data.logBackendQueriesWindow)));\n }\n ;\n ;\n this.recordStat(\"backend_queries\", this.backendQueries);\n }\n ;\n ;\n {\n var fin216keys = ((window.top.JSBNG_Replay.forInKeys)((this.appendStats))), fin216i = (0);\n var x;\n for (; (fin216i < fin216keys.length); (fin216i++)) {\n ((x) = (fin216keys[fin216i]));\n {\n t[x] = JSON.stringify(this.appendStats[x]);\n ;\n };\n };\n };\n ;\n return t;\n };\n s.prototype.getDataToSubmit = function() {\n return this._dataToSubmit();\n };\n s.prototype.reset = function() {\n return this._reset();\n };\n s.prototype.submit = function() {\n if (!this._sessionDisabled) {\n r.submit.call(this);\n }\n ;\n ;\n this.view.inform(\"feedback\");\n this._reset();\n };\n s.prototype.logToScuba = function(t, u, v) {\n if (this._sessionDisabled) {\n return;\n }\n ;\n ;\n var w = new l(\"search_facebar_js\", null, {\n addBrowserFields: true\n });\n w.addInteger(\"sample_rate\", v.sample_rate);\n w.addNormal(\"site\", v.site);\n w.addDenorm(\"query\", t.request.uri.query_s);\n var x = t.payload;\n ((x.entities && w.addInteger(\"num_entities\", x.entities.length)));\n ((x.results && w.addInteger(\"num_results\", x.results.length)));\n if (x.times) {\n w.addInteger(\"time_bootstrap\", x.times.bootstrap);\n w.addInteger(\"time_php_end_to_end\", x.times.end_to_end);\n w.addInteger(\"time_fetchers\", x.times.fetchers);\n w.addInteger(\"time_grammar\", x.times.grammar);\n }\n ;\n ;\n w.addInteger(\"incomplete\", ((u.incomplete ? 1 : 0)));\n w.addInteger(\"time_render\", ((u.render - u.recv)));\n w.addInteger(\"time_js_async\", u.recv);\n w.addInteger(\"query_id\", u.queryId);\n w.addInteger(\"user_id\", i.user);\n w.addInteger(\"session_id\", this.typeahead.getCore().getSessionID());\n w.flush();\n };\n h(s.prototype, {\n _endPoint: \"/ajax/typeahead/search/record_metrics.php\",\n _sessionEnded: true,\n _extraRecorder: [],\n _banzaiRoute: \"facebar\"\n });\n e.exports = s;\n});\n__d(\"FacebarTypeaheadView\", [\"Animation\",\"Arbiter\",\"ContextualLayer\",\"copyProperties\",\"JSBNG__CSS\",\"csx\",\"cx\",\"DOM\",\"Ease\",\"JSBNG__Event\",\"FacebarStructuredText\",\"fbt\",\"Parent\",\"ScrollableArea\",\"Style\",\"throttle\",\"TypeaheadView\",\"Vector\",\"ViewportBounds\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"Arbiter\"), i = b(\"ContextualLayer\"), j = b(\"copyProperties\"), k = b(\"JSBNG__CSS\"), l = b(\"csx\"), m = b(\"cx\"), n = b(\"DOM\"), o = b(\"Ease\"), p = b(\"JSBNG__Event\"), q = b(\"FacebarStructuredText\"), r = b(\"fbt\"), s = b(\"Parent\"), t = b(\"ScrollableArea\"), u = b(\"Style\"), v = b(\"throttle\"), w = b(\"TypeaheadView\"), x = b(\"Vector\"), y = b(\"ViewportBounds\"), z = 981, aa = 500, ba = \"unimplemented\";\n {\n var fin217keys = ((window.top.JSBNG_Replay.forInKeys)((w))), fin217i = (0);\n var ca;\n for (; (fin217i < fin217keys.length); (fin217i++)) {\n ((ca) = (fin217keys[fin217i]));\n {\n if (((w.hasOwnProperty(ca) && ((ca !== \"_metaprototype\"))))) {\n ea[ca] = w[ca];\n }\n ;\n ;\n };\n };\n };\n;\n var da = ((((w === null)) ? null : w.prototype));\n ea.prototype = Object.create(da);\n ea.prototype.constructor = ea;\n ea.__superConstructor__ = w;\n function ea(fa, ga) {\n w.call(this, fa, ga);\n this.sid = \"\";\n this.index = -1;\n this.animation = null;\n this.warningShown = false;\n this.autoSelect = false;\n this.minResults = ((ga.minResults || 3));\n this.maxResults = ga.maxResults;\n this.animateHeightThrottled = v(this.animateHeight, 50, this);\n this.animateCount = -1;\n this.animateWidth = -1;\n this.loading = false;\n };\n;\n ea.prototype.init = function() {\n this.initializeElements();\n da.init.call(this);\n };\n ea.prototype.initializeElements = function() {\n var fa = this.element;\n this.JSBNG__content = n.JSBNG__find(fa, \".-cx-PRIVATE-fbFacebarTypeaheadView__content\");\n this.throbber = n.JSBNG__find(fa, \".-cx-PRIVATE-fbFacebarTypeaheadView__throbber\");\n this.warningNode = n.JSBNG__find(fa, \".-cx-PRIVATE-fbFacebarTypeaheadView__warning\");\n this.scroller = n.JSBNG__find(fa, \".-cx-PRIVATE-fbFacebarTypeaheadView__scroller\");\n this.scrollableArea = t.getInstance(this.scroller);\n this.footer = this.createFooter();\n };\n ea.prototype.initializeLayer = function() {\n var fa = n.scry(JSBNG__document.body, \"#blueBar\")[0], ga, ha, ia;\n if (((fa && n.contains(fa, this.element)))) {\n ga = fa;\n ia = \"-cx-PUBLIC-fbFacebarTypeaheadView__layer\";\n ha = \"100%\";\n }\n else {\n ga = this.element.parentNode;\n ia = \"\";\n ha = ((z + \"px\"));\n }\n ;\n ;\n this.wrapper = n.create(\"div\");\n n.appendContent(this.wrapper, this.element);\n this.layer = new i({\n context: ga,\n position: \"below\",\n alignment: this.alignment,\n causalElement: this.causalElement\n }, this.wrapper);\n this.layer.show();\n this.layer.hide();\n k.addClass(this.layer.getRoot(), ia);\n u.set(this.layer.getContentRoot(), \"width\", ha);\n };\n ea.prototype.initializeEvents = function() {\n p.listen(this.JSBNG__content, {\n click: this.click.bind(this),\n mouseover: this.mouseover.bind(this)\n });\n };\n ea.prototype.setInputElement = function(fa) {\n this.setAccessibilityControlElement(fa);\n this.causalElement = fa;\n this.initializeLayer();\n };\n ea.prototype.setAutoSelect = function(fa) {\n this.autoSelect = fa;\n if (((((this.index === -1)) && fa))) {\n this.first();\n }\n ;\n ;\n };\n ea.prototype.click = function(JSBNG__event) {\n if (((!JSBNG__event.isMiddleClick() && !JSBNG__event.getModifiers().any))) {\n var fa = s.byTag(JSBNG__event.getTarget(), \"a\");\n if (((!fa || k.hasClass(fa, \"-cx-PRIVATE-fbFacebarTypeaheadItem__link\")))) {\n this.select(true);\n return JSBNG__event.kill();\n }\n ;\n ;\n }\n ;\n ;\n };\n ea.prototype.show = function() {\n if (!this.visible) {\n this.inform(\"beforeShow\", this.layer);\n var fa = da.show.call(this);\n this.first();\n this.layer.show();\n this.layer.updatePosition();\n this.recalculateScrollableArea();\n this.animateCount = -1;\n this.animateHeight();\n this.inform(\"show\");\n h.inform(\"layer_shown\", {\n type: \"FacebarTypeahead\"\n });\n return fa;\n }\n ;\n ;\n };\n ea.prototype.hide = function() {\n if (this.visible) {\n this.layer.hide();\n da.hide.call(this);\n u.set(this.scroller, \"height\", \"0px\");\n this.inform(\"hide\");\n h.inform(\"layer_hidden\", {\n type: \"FacebarTypeahead\"\n });\n }\n ;\n ;\n return this;\n };\n ea.prototype.select = function(fa) {\n var ga = this.results[this.index];\n if (!ga) {\n this.inform(\"quickSelect\");\n return;\n }\n ;\n ;\n var ha = this.inform(\"beforeSelect\", {\n index: this.index,\n selected: ga\n });\n if (((((ha !== false)) && this.isIndexFooter(this.index)))) {\n ha = false;\n }\n ;\n ;\n if (((ha !== false))) {\n da.select.call(this, fa);\n }\n ;\n ;\n };\n ea.prototype.buildResults = function(fa) {\n this.list = k.addClass(da.buildResults.call(this, fa), \"-cx-PRIVATE-fbFacebarTypeaheadView__list\");\n return this.list;\n };\n ea.prototype.animateHeight = function() {\n if (((this.items.length == this.animateCount))) {\n var fa = x.getViewportDimensions().x;\n if (((this.animateWidth != fa))) {\n this.animateWidth = fa;\n this.recalculateScrollableArea();\n }\n ;\n ;\n return;\n }\n ;\n ;\n if (((this.list && k.shown(this.list)))) {\n this.animateCount = this.items.length;\n var ga = Math.min(x.getElementDimensions(this.list).y, this.calculateMaxAllowableHeight());\n ((this.animation && this.animation.JSBNG__stop()));\n this.animation = new g(this.scroller).to(\"height\", ga).duration(aa).ease(o.makePowerOut(5)).ondone(this.recalculateScrollableArea.bind(this)).go();\n }\n ;\n ;\n };\n ea.prototype.calculateMaxAllowableHeight = function() {\n var fa = x.getViewportDimensions().y, ga = ((y.getTop() || 48)), ha = 56, ia = ((Math.max(this.minResults, ((Math.floor(((((((fa - ga)) - 25)) / ha))) - 1))) + 1));\n return ((((ia * ha)) + ((ha / 4))));\n };\n ea.prototype.render = function(fa, ga, ha, ia, ja) {\n this.inform(\"filter\", {\n results: ga,\n value: fa,\n isScrollable: ja\n });\n if (this.loading) {\n ga.push({\n uid: \"search\",\n node: this.footer,\n structure: new q(),\n search: true\n });\n }\n ;\n ;\n var ka = ga[0];\n if (ia) {\n this.showWarning(r._(\"There are no results for '{query}'\", [r.param(\"query\", fa.toString()),]));\n }\n else if (((ka && ((ka.results_set_type === ba))))) {\n if (!ka.error_info.suppress) {\n this.showWarning(((ka.error_info.errorMessage || \"This search isn't currently supported.\")));\n }\n ;\n ;\n }\n else this.hideWarning();\n \n ;\n ;\n if (((this.inform(\"removeUnimplementedGrammar\") !== false))) {\n ga = ga.filter(function(la) {\n return ((la.results_set_type !== ba));\n }.bind(this));\n }\n ;\n ;\n da.render.call(this, fa, ga, ha);\n this.renderFooter();\n this.animateHeightThrottled();\n };\n ea.prototype.showWarning = function(fa) {\n k.show(this.warningNode);\n n.setContent(this.warningNode, fa);\n this.warningShown = true;\n this.highlight(-1, false);\n };\n ea.prototype.hideWarning = function() {\n k.hide(this.warningNode);\n this.warningShown = false;\n this.highlight(this.index, false);\n };\n ea.prototype.recalculateScrollableArea = function() {\n u.set(this.scroller, \"width\", ((x.getElementDimensions(this.element).x + \"px\")));\n this.scrollableArea.resize();\n this.scrollableArea.poke();\n };\n ea.prototype.setLoading = function(fa) {\n this.loading = fa;\n this.renderFooter();\n };\n ea.prototype.JSBNG__scrollTo = function(fa) {\n ((fa && this.scrollableArea.scrollIntoView(fa, true)));\n };\n ea.prototype.renderFooter = function() {\n k.conditionShow(this.throbber, this.loading);\n k.conditionShow(this.footer, this.loading);\n if (this.loading) {\n this.inform(\"showingFooter\");\n }\n else this.inform(\"hidingFooter\");\n ;\n ;\n };\n ea.prototype.isIndexFooter = function(fa) {\n var ga = this.results[fa];\n return ((ga && ((ga.node == this.footer))));\n };\n ea.prototype.first = function() {\n this.index = ((this.autoSelect ? 0 : -1));\n this.highlight(this.index);\n };\n ea.prototype.prev = function() {\n if (((this.index <= 0))) {\n this.index = this.items.length;\n }\n ;\n ;\n if (this.isIndexFooter(((this.index - 1)))) {\n this.index -= 1;\n }\n ;\n ;\n da.prev.call(this);\n };\n ea.prototype.next = function() {\n if (((((this.index + 1)) >= this.items.length))) {\n this.index = -1;\n }\n ;\n ;\n if (this.isIndexFooter(((this.index + 1)))) {\n this.index = -1;\n }\n ;\n ;\n da.next.call(this);\n };\n ea.prototype.highlight = function(fa, ga) {\n ga = ((((ga !== false)) && ((this.index != fa))));\n if (((!ga || ((this.inform(\"beforeHighlight\") !== false))))) {\n var ha = ((((this.warningShown || !this.autoSelect)) ? -1 : 0));\n da.highlight.call(this, Math.max(ha, fa), ga);\n }\n ;\n ;\n };\n ea.prototype.createFooter = function() {\n return n.create(\"li\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadView__footer hidden_elem\"\n }, this.throbber);\n };\n j(ea.prototype, {\n events: [\"highlight\",\"render\",\"filter\",]\n });\n e.exports = ea;\n});\n__d(\"FacebarTypeaheadViewMegaphone\", [\"Arbiter\",\"ArbiterMixin\",\"AsyncRequest\",\"JSBNG__CSS\",\"JSBNG__Event\",\"mixin\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ArbiterMixin\"), i = b(\"AsyncRequest\"), j = b(\"JSBNG__CSS\"), k = b(\"JSBNG__Event\"), l = b(\"mixin\"), m = l(h);\n {\n var fin218keys = ((window.top.JSBNG_Replay.forInKeys)((m))), fin218i = (0);\n var n;\n for (; (fin218i < fin218keys.length); (fin218i++)) {\n ((n) = (fin218keys[fin218i]));\n {\n if (((m.hasOwnProperty(n) && ((n !== \"_metaprototype\"))))) {\n p[n] = m[n];\n }\n ;\n ;\n };\n };\n };\n;\n var o = ((((m === null)) ? null : m.prototype));\n p.prototype = Object.create(o);\n p.prototype.constructor = p;\n p.__superConstructor__ = m;\n function p(q, r, s) {\n this.root = q;\n this.tourButton = r;\n this.closeButton = s;\n this.nuxReady = false;\n this.core = null;\n k.listen(this.tourButton, \"click\", this.$FacebarTypeaheadViewMegaphone0.bind(this));\n k.listen(this.closeButton, \"click\", this.$FacebarTypeaheadViewMegaphone1.bind(this));\n g.subscribe(\"Facebar/init\", this.$FacebarTypeaheadViewMegaphone2.bind(this));\n };\n;\n p.prototype.$FacebarTypeaheadViewMegaphone2 = function(q, r) {\n r.view.subscribe(\"render\", this.$FacebarTypeaheadViewMegaphone4.bind(this));\n r.view.subscribe(\"show\", this.$FacebarTypeaheadViewMegaphone4.bind(this));\n g.subscribe(\"BrowseNUX/initialized\", this.$FacebarTypeaheadViewMegaphone5.bind(this));\n this.core = r.core;\n };\n p.prototype.$FacebarTypeaheadViewMegaphone5 = function() {\n this.nuxReady = true;\n this.$FacebarTypeaheadViewMegaphone4();\n };\n p.prototype.$FacebarTypeaheadViewMegaphone4 = function() {\n if (this.nuxReady) {\n j.conditionShow(this.root, this.core.getValue().isEmpty());\n }\n ;\n ;\n };\n p.prototype.$FacebarTypeaheadViewMegaphone0 = function() {\n this.inform(\"start\");\n };\n p.prototype.$FacebarTypeaheadViewMegaphone1 = function() {\n new i().setURI(\"/ajax/browse/nux_hide.php\").setMethod(\"POST\").send();\n this.hide();\n this.inform(\"hide\");\n };\n p.prototype.hide = function() {\n j.hide(this.root);\n };\n e.exports = p;\n});\n__d(\"FacebarTypeaheadDecorateEntities\", [\"arrayContains\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"arrayContains\"), h = b(\"copyProperties\"), i = b(\"emptyFunction\");\n function j(n) {\n var o = [];\n n.forEach(function(p) {\n if (p.isType(\"ent\")) {\n o.push(p.getUID());\n }\n ;\n ;\n });\n return o;\n };\n;\n function k(n, o) {\n var p = null;\n n.structure.forEach(function(q) {\n if (((q.isType(\"ent\") && !g(o, q.getUID())))) {\n p = q;\n }\n ;\n ;\n });\n return p;\n };\n;\n function l(n, o, p) {\n n.forEach(function(q) {\n var r = k(q, o);\n q.decoration = {\n entity: ((r && p.getEntryForFragment(r)))\n };\n });\n };\n;\n function m(n) {\n this._typeahead = n;\n };\n;\n m.prototype.enable = function() {\n this._typeahead.view.subscribe(\"filter\", function(n, o) {\n l(o.results, j(this._typeahead.core.getValue()), this._typeahead.data);\n }.bind(this));\n };\n h(m.prototype, {\n disable: i\n });\n e.exports = m;\n});\n__d(\"FacebarTypeaheadDecorateMessageButton\", [\"cx\",\"ChatOpenTab\",\"DOM\",\"React\",\"XUIButton.react\",], function(a, b, c, d, e, f) {\n var g = b(\"cx\"), h = b(\"ChatOpenTab\"), i = b(\"DOM\"), j = b(\"React\"), k = b(\"XUIButton.react\");\n function l(m) {\n this.$FacebarTypeaheadDecorateMessageButton0 = m;\n this.$FacebarTypeaheadDecorateMessageButton1 = null;\n };\n;\n l.prototype.enable = function() {\n this.$FacebarTypeaheadDecorateMessageButton1 = this.$FacebarTypeaheadDecorateMessageButton0.view.subscribe(\"renderingItem\", this.$FacebarTypeaheadDecorateMessageButton2.bind(this));\n };\n l.prototype.$FacebarTypeaheadDecorateMessageButton2 = function(m, JSBNG__event) {\n JSBNG__event.JSBNG__item.setShouldRenderEducation(false);\n var n = JSBNG__event.result;\n if (((((n.type !== \"user\")) && ((n.type !== \"{user}\"))))) {\n return;\n }\n ;\n ;\n var o = i.create(\"span\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadItem__typeaheadmessagebutton\"\n }), p = function() {\n h.openUserTab(n.uid, \"search\");\n };\n j.renderComponent(k({\n label: \"Message\",\n onMouseDown: p\n }), o);\n JSBNG__event.JSBNG__item.setMessageButton(o);\n };\n l.prototype.disable = function() {\n ((this.$FacebarTypeaheadDecorateMessageButton1 && this.$FacebarTypeaheadDecorateMessageButton1.unsubscribe()));\n };\n e.exports = l;\n});\n__d(\"FacebarTypeaheadDisambiguateResults\", [\"FacebarDisambiguationDialog\",\"FacebarStructuredFragment\",\"FacebarStructuredText\",\"URI\",\"copyProperties\",\"emptyFunction\",\"getObjectValues\",], function(a, b, c, d, e, f) {\n var g = b(\"FacebarDisambiguationDialog\"), h = b(\"FacebarStructuredFragment\"), i = b(\"FacebarStructuredText\"), j = b(\"URI\"), k = b(\"copyProperties\"), l = b(\"emptyFunction\"), m = b(\"getObjectValues\");\n function n(w, x) {\n var y = {\n };\n w.forEach(function(ba) {\n if (((ba.type == \"grammar\"))) {\n var ca = x(ba.structure).toLowerCase();\n y[ca] = ((y[ca] || []));\n y[ca].push(ba);\n }\n ;\n ;\n });\n var z = [];\n {\n var fin219keys = ((window.top.JSBNG_Replay.forInKeys)((y))), fin219i = (0);\n var aa;\n for (; (fin219i < fin219keys.length); (fin219i++)) {\n ((aa) = (fin219keys[fin219i]));\n {\n if (((y[aa].length > 1))) {\n z.push(y[aa]);\n }\n ;\n ;\n };\n };\n };\n ;\n return z;\n };\n;\n function o(w) {\n var x = [];\n w.toArray().forEach(function(y, z) {\n if (y.isType(\"ent\")) {\n x.push(z);\n }\n ;\n ;\n });\n return x;\n };\n;\n function p(w, x, y) {\n var z = {\n }, aa = {\n }, ba = {\n };\n x.forEach(function(da) {\n var ea = w[0].structure.getFragment(da), fa = ea.getHash();\n aa[fa] = ((aa[fa] || []));\n ba[da] = aa[fa];\n w.forEach(function(ga) {\n var ha = ga.structure.getFragment(da), ia = ((ha && ha.getUID()));\n if (((ia && !z.hasOwnProperty(ia)))) {\n aa[fa].push(y.getEntryForFragment(ha));\n z[ia] = true;\n }\n ;\n ;\n });\n });\n {\n var fin220keys = ((window.top.JSBNG_Replay.forInKeys)((ba))), fin220i = (0);\n var ca;\n for (; (fin220i < fin220keys.length); (fin220i++)) {\n ((ca) = (fin220keys[fin220i]));\n {\n if (((ba[ca].length <= 1))) {\n delete ba[ca];\n }\n ;\n ;\n };\n };\n };\n ;\n return ba;\n };\n;\n function q(w, x) {\n var y = {\n }, z = [];\n w.forEach(function(aa) {\n var ba = aa.structure.getFragment(x).getUID();\n if (!y.hasOwnProperty(ba)) {\n y[ba] = z.length;\n z.push([]);\n }\n ;\n ;\n z[y[ba]].push(aa);\n });\n return z;\n };\n;\n function r(w, x, y) {\n var z = w.shift();\n z.ambiguity.entities = x;\n y.push.apply(y, w);\n return z;\n };\n;\n function s(w, x) {\n var y = [], z = [], aa = false;\n w.forEach(function(ca) {\n ca.ambiguity = {\n fragment: null,\n entities: null,\n text: null\n };\n });\n n(w, function(ca) {\n return ca.getHash();\n }).forEach(function(ca) {\n var da = ca[0].structure, ea = o(da), fa = p(ca, ea, x);\n if (aa) {\n r(ca, fa, y);\n return;\n }\n ;\n ;\n var ga = ea.pop();\n if (((typeof ga == \"number\"))) {\n var ha = q(ca, ga);\n aa = ((ha.length > 1));\n if (aa) {\n delete fa[ga];\n }\n ;\n ;\n ha.forEach(function(ia) {\n var ja = r(ia, fa, y);\n if (aa) {\n var ka = ja.structure.getFragment(ga).getUID();\n ja.ambiguity.entity = x.getEntry(ka);\n z.push(ja);\n }\n ;\n ;\n });\n }\n ;\n ;\n });\n y.forEach(function(ca) {\n var da = w.indexOf(ca);\n ((((da != -1)) && w.splice(da, 1)));\n });\n n(w, function(ca) {\n return ca.toString();\n }).forEach(function(ca) {\n ca.forEach(function(da) {\n if (!da.ambiguity.entities) {\n da.ambiguity.text = da.queryTypeText;\n }\n ;\n ;\n });\n });\n var ba = w.indexOf(z[0]);\n z.slice(1).forEach(function(ca) {\n var da = w.indexOf(ca);\n if (((((da != -1)) && ((da != ++ba))))) {\n w.splice(da, 1);\n w.splice(ba, 0, ca);\n }\n ;\n ;\n });\n };\n;\n function t(w, x) {\n var y = ((((w && w.ambiguity)) && w.ambiguity.entities)), z = ((y && Object.keys(y).map(Number))), aa = x.core.input;\n if (((!z || ((z.length === 0))))) {\n return false;\n }\n ;\n ;\n var ba = function(ea) {\n x.core.executeQuery(u(w, z, ea));\n }, ca = function() {\n aa.JSBNG__focus();\n aa.input.moveSelectionToEnd();\n }, da = new g(m(y), w.uri.getPath(), ba, ca, x.getCore().getSessionID());\n aa.JSBNG__blur();\n da.show();\n return true;\n };\n;\n function u(w, x, y) {\n var z = w.structure.toArray(), aa = j(w.uri), ba = aa.getPath().split(\"/\");\n x.forEach(function(ca) {\n var da = z[ca], ea = y.shift(), fa = ba.indexOf(String(da.getUID()));\n if (((fa != -1))) {\n ba[fa] = ea.uid;\n }\n ;\n ;\n z[ca] = new h({\n uid: ea.uid,\n text: ea.text,\n type: ((\"ent:\" + ea.type))\n });\n });\n return {\n uri: aa.setPath(ba.join(\"/\")),\n structure: new i(z)\n };\n };\n;\n function v(w) {\n this._typeahead = w;\n };\n;\n v.prototype.enable = function() {\n this._typeahead.view.subscribe(\"filter\", function(w, x) {\n s(x.results, this._typeahead.data);\n }.bind(this));\n this._typeahead.view.subscribe(\"beforeSelect\", function(w, x) {\n return !t(x.selected, this._typeahead);\n }.bind(this));\n };\n k(v.prototype, {\n disable: l\n });\n e.exports = v;\n});\n__d(\"FacebarTypeaheadHashtagResult\", [\"HashtagSearchResultUtils\",], function(a, b, c, d, e, f) {\n var g = b(\"HashtagSearchResultUtils\");\n function h(i) {\n this.$FacebarTypeaheadHashtagResult0 = i.getData();\n };\n;\n h.prototype.enable = function() {\n this.$FacebarTypeaheadHashtagResult1 = this.$FacebarTypeaheadHashtagResult0.subscribe(\"beforeQuery\", this.$FacebarTypeaheadHashtagResult2.bind(this));\n };\n h.prototype.$FacebarTypeaheadHashtagResult2 = function(i, j) {\n if (((!j || !j.value))) {\n return;\n }\n ;\n ;\n var k = this.$FacebarTypeaheadHashtagResult0.getRawStructure(j.value);\n if (((((!k || k.is_empty)) || !k.raw_text))) {\n return;\n }\n ;\n ;\n var l = g.getHashtagFromQuery(k.raw_text);\n if (!l) {\n return;\n }\n ;\n ;\n var m = ((\"hashtag:\" + l)), n = this.$FacebarTypeaheadHashtagResult0.getEntry(m);\n if (!n) {\n this.$FacebarTypeaheadHashtagResult0.processEntries([g.makeFacebarEntry(l),]);\n this.$FacebarTypeaheadHashtagResult0.resultStore.saveResults([g.makeFacebarResult(l),], k, true);\n }\n ;\n ;\n return;\n };\n h.prototype.disable = function() {\n ((this.$FacebarTypeaheadHashtagResult1 && this.$FacebarTypeaheadHashtagResult0.unsubscribe(this.$FacebarTypeaheadHashtagResult1)));\n };\n e.exports = h;\n});\n__d(\"FacebarTypeaheadMagGo\", [\"csx\",\"DOM\",\"JSBNG__Event\",\"$\",\"SubscriptionsHandler\",], function(a, b, c, d, e, f) {\n var g = b(\"csx\"), h = b(\"DOM\"), i = b(\"JSBNG__Event\"), j = b(\"$\"), k = b(\"SubscriptionsHandler\");\n function l(m) {\n this._core = m.getCore();\n this._view = this._core.view;\n this._handler = new k();\n this._selected = null;\n };\n;\n l.prototype.enable = function() {\n var m = h.JSBNG__find(j(\"blueBar\"), \".-cx-PUBLIC-fbFacebar__icon\");\n this._handler.addSubscriptions(i.listen(m, \"click\", this._runQuery.bind(this)), this._view.subscribe(\"highlight\", this._highlight.bind(this)), this._view.subscribe(\"render\", this._render.bind(this)), this._core.subscribe(\"close\", this._close.bind(this)));\n };\n l.prototype.disable = function() {\n this._handler.release();\n };\n l.prototype._highlight = function(m, n) {\n this._selected = n.selected;\n };\n l.prototype._render = function(m, n) {\n this._selected = this._view.results[this._view.index];\n };\n l.prototype._runQuery = function() {\n if (this._selected) {\n return this._core.selectView(null, {\n selected: this._selected\n });\n }\n ;\n ;\n };\n l.prototype._close = function() {\n this._selected = null;\n };\n e.exports = l;\n});\n__d(\"FacebarTypeaheadMagPPS\", [\"csx\",\"DOM\",\"JSBNG__Event\",\"FacebarStructuredText\",\"FacebarURI\",\"FacebarResultStoreUtils\",\"$\",\"SubscriptionsHandler\",\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"csx\"), h = b(\"DOM\"), i = b(\"JSBNG__Event\"), j = b(\"FacebarStructuredText\"), k = b(\"FacebarURI\"), l = b(\"FacebarResultStoreUtils\"), m = b(\"$\"), n = b(\"SubscriptionsHandler\"), o = b(\"URI\");\n function p(q) {\n this._core = q.getCore();\n this._data = q.getData();\n this._view = this._core.view;\n this._input = this._core.input;\n this._handler = new n();\n };\n;\n p.prototype.enable = function() {\n var q = h.JSBNG__find(m(\"blueBar\"), \".-cx-PUBLIC-fbFacebar__icon\");\n this._handler.addSubscriptions(i.listen(q, \"click\", this._runQuery.bind(this)));\n };\n p.prototype.disable = function() {\n this._handler.release();\n };\n p.prototype._runQuery = function() {\n var q = this._input.getValue(), r = this._data.getRawStructure(q);\n if (((!r || r.is_empty))) {\n return;\n }\n ;\n ;\n var s;\n if (!r.raw_text) {\n s = l.getRawTextFromStructured(q.toArray());\n }\n else s = r.raw_text;\n ;\n ;\n var t = o(this._view.seeMoreSerpEndpoint).addQueryData(\"q\", s).addQueryData(\"sid\", this._core.getSessionID());\n t = k.getQualifiedURI(t);\n var u = ((((((((((((((((\"uri(\" + \"path(\")) + this._view.seeMoreSerpEndpoint)) + \")\")) + \",param_q(\")) + s)) + \")\")) + \",param_source(mag_glass)\")) + \")\"));\n return this._core.selectView(null, {\n selected: {\n uid: \"see_more_serp\",\n node: this._moreBar,\n structure: new j(),\n search: true,\n uri: t,\n type: \"see_more_serp\",\n text: s,\n selected: true,\n semantic: u\n }\n });\n };\n e.exports = p;\n});\n__d(\"FacebarTypeaheadNarrowDrawer\", [\"JSBNG__CSS\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = b(\"cx\");\n function i(j) {\n this.$FacebarTypeaheadNarrowDrawer0 = j;\n this.$FacebarTypeaheadNarrowDrawer1 = null;\n };\n;\n i.prototype.enable = function() {\n this.$FacebarTypeaheadNarrowDrawer1 = this.$FacebarTypeaheadNarrowDrawer0.view.subscribe(\"beforeShow\", this.$FacebarTypeaheadNarrowDrawer2.bind(this));\n };\n i.prototype.$FacebarTypeaheadNarrowDrawer2 = function(j, k) {\n g.removeClass(k.getRoot(), \"-cx-PUBLIC-fbFacebarTypeaheadView__layer\");\n g.addClass(k.getContentRoot(), \"-cx-PUBLIC-fbFacebarTypeaheadView__narrowlayer\");\n k.setContext(this.$FacebarTypeaheadNarrowDrawer0.element.offsetParent);\n };\n i.prototype.disable = function() {\n ((this.$FacebarTypeaheadNarrowDrawer1 && this.$FacebarTypeaheadNarrowDrawer1.unsubscribe()));\n };\n e.exports = i;\n});\n__d(\"FacebarTypeaheadNavigation\", [\"Arbiter\",\"FacebarNavigation\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"FacebarNavigation\"), i = b(\"copyProperties\"), j = b(\"emptyFunction\");\n function k(l) {\n this._core = l.core;\n this._preserveQuery = false;\n this._typeahead = l;\n };\n;\n k.prototype.enable = function() {\n h.registerBehavior(this);\n this._core.subscribe(\"execute\", this.executedUserQuery.bind(this));\n this._core.subscribe(\"change\", this.changeUserQuery.bind(this));\n };\n k.prototype.executedUserQuery = function(l, m) {\n this._preserveQuery = true;\n };\n k.prototype.changeUserQuery = function() {\n this._navigatedQuery = false;\n };\n k.prototype.pageTransition = function() {\n if (!this._preserveQuery) {\n this._core.close();\n this._core.reset();\n }\n else this._preserveQuery = false;\n ;\n ;\n };\n k.prototype.setPageQuery = function(l) {\n l = this._core.setPageQuery(l);\n this._typeahead.inform(\"navigation\", l, g.BEHAVIOR_PERSISTENT);\n };\n i(k.prototype, {\n disable: j\n });\n e.exports = k;\n});\n__d(\"FacebarTypeaheadQuickSelect\", [\"FacebarStructuredText\",\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"FacebarStructuredText\"), h = b(\"URI\"), i = \"/search/web/direct_search.php\";\n function j(k) {\n this._core = k.getCore();\n this._view = k.getView();\n this._input = this._core.input;\n this._beforeSelectListener = null;\n this._quickSelectListener = null;\n };\n;\n j.prototype.enable = function() {\n this._beforeSelectListener = this._view.subscribe(\"beforeSelect\", this._quickSelect.bind(this));\n this._quickSelectListener = this._view.subscribe(\"quickSelect\", this._quickSelect.bind(this));\n };\n j.prototype._quickSelect = function(k, l) {\n if (((((l && l.selected)) && ((l.selected.uid !== \"search\"))))) {\n return true;\n }\n ;\n ;\n var m = this._input.getValue().toArray(), n = new g(m), o = n.toString();\n if (!o) {\n return true;\n }\n ;\n ;\n var p = h(i).addQueryData(\"q\", o), q = {\n input_query: o,\n type: \"quickselect\",\n text: o,\n position: 0,\n with_mouse: 0,\n semantic: ((((\"uri(path(\" + p.toString())) + \"))\")),\n extra_uri_params: {\n source: \"quickselect\",\n sid: this._core.getSessionID()\n },\n uri: p\n };\n this._core.inform(\"quickSelectRedirect\", q);\n this._core.executeQuery(q);\n return false;\n };\n j.prototype.disable = function() {\n ((this._beforeSelectListener && this._view.unsubscribe(this._beforeSelectListener)));\n ((this._quickSelectListener && this._view.unsubscribe(this._quickSelectListener)));\n };\n e.exports = j;\n});\n__d(\"FacebarTypeaheadRecorderBasic\", [\"Arbiter\",\"FacebarTypeaheadRecorder\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"FacebarTypeaheadRecorder\"), i = b(\"copyProperties\");\n function j(k) {\n this._typeahead = k;\n };\n;\n j.prototype.enable = function() {\n var k = this._typeahead;\n this._subscription = k.subscribe(\"init\", function(l, m) {\n var n = new h(k);\n k.inform(\"recorder\", n, g.BEHAVIOR_PERSISTENT);\n });\n };\n j.prototype.disable = function() {\n this._typeahead.unsubscribe(this._subscription);\n this._subscription = null;\n };\n i(j.prototype, {\n _subscription: null\n });\n e.exports = j;\n});\n__d(\"FacebarTypeaheadSeeMore\", [\"JSBNG__CSS\",\"cx\",\"DOM\",\"FacebarStructuredText\",\"fbt\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = b(\"cx\"), i = b(\"DOM\"), j = b(\"FacebarStructuredText\"), k = b(\"fbt\");\n function l(m) {\n this._core = m.getCore();\n this._view = this._core.view;\n this._moreBar = null;\n this._isOpen = false;\n };\n;\n l.prototype.enable = function() {\n this._subscriptions = [this._core.subscribe(\"close\", this._close.bind(this)),this._view.subscribe(\"filter\", this._buildSeeMore.bind(this)),this._view.subscribe(\"beforeSelect\", this._beforeSelect.bind(this)),this._view.subscribe(\"next\", this._scrollView.bind(this)),this._view.subscribe(\"prev\", this._scrollView.bind(this)),this._view.subscribe(\"showingFooter\", this._footerShow.bind(this)),this._view.subscribe(\"hidingFooter\", this._footerHide.bind(this)),];\n };\n l.prototype.disable = function() {\n while (this._subscriptions.length) {\n this._subscriptions.pop().unsubscribe();\n ;\n };\n ;\n };\n l.prototype._beforeSelect = function(m, JSBNG__event) {\n if (((!JSBNG__event.selected || ((JSBNG__event.selected.node !== this._moreBar))))) {\n return true;\n }\n ;\n ;\n this._view.first();\n this._core.expandView();\n return false;\n };\n l.prototype._buildSeeMore = function(m, JSBNG__event) {\n var n = JSBNG__event.results;\n if (((((((n.length === 0)) || JSBNG__event.isScrollable)) || ((JSBNG__event.value.toString().trim() == \"\"))))) {\n return;\n }\n ;\n ;\n if (((n.length < this._view.maxResults))) {\n var o = n.some(function(q) {\n return ((q.type !== \"websuggestion\"));\n });\n if (!o) {\n return;\n }\n ;\n ;\n }\n else if (((n.length > ((this._view.maxResults + 1))))) {\n this._isOpen = true;\n return;\n }\n \n ;\n ;\n var p = \"See More\";\n this._isOpen = false;\n this._moreBar = i.create(\"li\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadView__seemore calltoaction\"\n }, p);\n this._moreBar.setAttribute(\"aria-label\", p);\n n.push({\n uid: \"search\",\n node: this._moreBar,\n structure: new j(),\n search: true\n });\n };\n l.prototype._close = function() {\n if (this._isOpen) {\n this._core.collapseView();\n this._isOpen = false;\n }\n ;\n ;\n return true;\n };\n l.prototype._footerHide = function() {\n if (this._moreBar) {\n g.show(this._moreBar);\n this._view.animateCount = -1;\n this._view.animateHeightThrottled();\n }\n ;\n ;\n return true;\n };\n l.prototype._footerShow = function() {\n ((this._moreBar && g.hide(this._moreBar)));\n return true;\n };\n l.prototype._scrollView = function(m, n) {\n if (this._isOpen) {\n this._view.JSBNG__scrollTo(n);\n }\n ;\n ;\n return true;\n };\n e.exports = l;\n});\n__d(\"FacebarTypeaheadSeeMoreSerp\", [\"JSBNG__CSS\",\"cx\",\"DOM\",\"FacebarStructuredText\",\"FacebarURI\",\"fbt\",\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = b(\"cx\"), i = b(\"DOM\"), j = b(\"FacebarStructuredText\"), k = b(\"FacebarURI\"), l = b(\"fbt\"), m = b(\"URI\");\n function n(o) {\n this._core = o.getCore();\n this._view = this._core.view;\n this._moreBar = null;\n };\n;\n n.prototype.enable = function() {\n this._subscriptions = [this._view.subscribe(\"filter\", this._buildSeeMore.bind(this)),this._view.subscribe(\"showingFooter\", this._footerShow.bind(this)),this._view.subscribe(\"hidingFooter\", this._footerHide.bind(this)),];\n };\n n.prototype.disable = function() {\n while (this._subscriptions.length) {\n this._subscriptions.pop().unsubscribe();\n ;\n };\n ;\n };\n n.prototype._buildSeeMore = function(o, JSBNG__event) {\n var p = JSBNG__event.results, q = JSBNG__event.value.toString().trim();\n if (((((((p.length === 0)) || JSBNG__event.isScrollable)) || ((q === \"\"))))) {\n return;\n }\n ;\n ;\n var r = l._(\"See more results for \\\"{query}\\\"\", [l.param(\"query\", q),]);\n this._moreBar = i.create(\"li\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadView__seemoreserp calltoaction\"\n }, [i.create(\"span\", {\n className: \"text\"\n }, [i.create(\"span\", {\n className: \"seeMore\"\n }, [r,]),]),]);\n var s = m(this._view.seeMoreSerpEndpoint).addQueryData(\"q\", q).addQueryData(\"sid\", this._core.getSessionID());\n s = k.getQualifiedURI(s);\n var t = ((((((((((((((((\"uri(\" + \"path(\")) + this._view.seeMoreSerpEndpoint)) + \")\")) + \",param_q(\")) + q)) + \")\")) + \",param_source(typeahead_footer)\")) + \")\"));\n this._moreBar.setAttribute(\"aria-label\", r);\n p.push({\n uid: \"see_more_serp\",\n node: this._moreBar,\n structure: new j(),\n search: true,\n uri: s,\n type: \"see_more_serp\",\n text: q,\n semantic: t\n });\n };\n n.prototype._footerHide = function() {\n if (this._moreBar) {\n g.show(this._moreBar);\n this._view.animateCount = -1;\n this._view.animateHeightThrottled();\n }\n ;\n ;\n return true;\n };\n n.prototype._footerShow = function() {\n ((this._moreBar && g.hide(this._moreBar)));\n return true;\n };\n e.exports = n;\n});\n__d(\"FacebarTypeaheadSelectAll\", [\"JSBNG__requestAnimationFrame\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__requestAnimationFrame\");\n function h(i) {\n this._core = i.getCore();\n this._listener = null;\n };\n;\n h.prototype.enable = function() {\n var i = this._core.input;\n this._listener = this._core.subscribe(\"JSBNG__focus\", function() {\n g(function() {\n i.selectInput();\n }.bind(this));\n }.bind(this));\n };\n h.prototype.disable = function() {\n ((this._listener && this._core.unsubscribe(this._listener)));\n };\n e.exports = h;\n});\n__d(\"FacebarTypeaheadShortcut\", [\"KeyEventController\",\"Run\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"KeyEventController\"), h = b(\"Run\"), i = b(\"copyProperties\"), j = b(\"emptyFunction\");\n function k(l) {\n this._input = l.core.input;\n this._view = l.view;\n this._listener = null;\n };\n;\n k.prototype.enable = function() {\n this._registerListener();\n };\n k.prototype._registerListener = function() {\n g.registerKey(\"SLASH\", this._handleKeydown.bind(this));\n h.onLeave(function() {\n this._registerListener.bind(this).defer();\n }.bind(this));\n };\n k.prototype._handleKeydown = function(l) {\n this._view.setAutoSelect(true);\n this._input.JSBNG__focus();\n this._input.inform(\"shortcut\", {\n shift: l.getModifiers().shift\n });\n return false;\n };\n i(k.prototype, {\n disable: j\n });\n e.exports = k;\n});\n__d(\"FacebarTypeaheadSizeAdjuster\", [\"copyProperties\",\"createArrayFrom\",\"clip\",\"emptyFunction\",\"foldl\",\"Style\",\"Vector\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"createArrayFrom\"), i = b(\"clip\"), j = b(\"emptyFunction\"), k = b(\"foldl\"), l = b(\"Style\"), m = b(\"Vector\"), n = 12, o = 20, p = 50, q = 200, r = 5;\n function s(u) {\n return m.getElementDimensions(u).x;\n };\n;\n function t(u) {\n this._core = u.getCore();\n this._view = this._core.view;\n this._input = this._core.input;\n this._cachedSizes = {\n };\n this._appliedSize = null;\n this._defaultSize = this.getDefaultFontSize();\n this._calculatedSize = this._defaultSize;\n this._containerWidth = this.getContainerWidth();\n };\n;\n t.prototype.enable = function() {\n this._input.subscribe(\"change\", this.adjustFontSize.bind(this));\n this.adjustFontSize();\n };\n t.prototype.getContainerWidth = function() {\n return m.getElementDimensions(this._input.getElement()).x;\n };\n t.prototype.getDefaultFontSize = function() {\n var u = l.get(this._input.getElement(), \"font-size\"), v = /^([\\d\\.]+)px$/.exec(u), w = ((v && Number(v[1])));\n return Math.max(n, Math.min(o, w));\n };\n t.prototype.calculateFontSize = function() {\n var u = this.getTextWidth(), v = this._calculatedSize;\n if (((u > ((this._containerWidth - p))))) {\n v--;\n }\n else if (((u < ((this._containerWidth - q))))) {\n v++;\n }\n \n ;\n ;\n this._calculatedSize = i(v, n, this._defaultSize);\n return this._calculatedSize;\n };\n t.prototype.getTextWidth = function() {\n var u = ((this._calculatedSize + this.getValueKey()));\n if (!this._cachedSizes.hasOwnProperty(u)) {\n this._cachedSizes[u] = this.measureTextWidth();\n }\n ;\n ;\n return this._cachedSizes[u];\n };\n t.prototype.getValueKey = function() {\n var u = this._core.getValue().getHash(), v = ((r * Math.floor(((u.length / r)))));\n return u.substr(0, v);\n };\n t.prototype.measureTextWidth = function() {\n var u = this._input.getRawInputElement().childNodes;\n return k(function(v, w) {\n return ((v + s(w)));\n }, h(u), 0);\n };\n t.prototype.adjustFontSize = function() {\n for (var u = 0; ((u < 10)); u++) {\n var v = this.calculateFontSize();\n if (((v != this._appliedSize))) {\n this._appliedSize = v;\n l.set(this._input.getElement(), \"font-size\", ((v + \"px\")));\n l.set(this._view.JSBNG__content, \"font-size\", ((v + \"px\")));\n }\n else break;\n ;\n ;\n };\n ;\n };\n g(t.prototype, {\n disable: j\n });\n e.exports = t;\n});\n__d(\"FacebarTypeaheadTourItem\", [\"cx\",\"DOM\",\"FacebarTypeaheadItem\",], function(a, b, c, d, e, f) {\n var g = b(\"cx\"), h = b(\"DOM\"), i = b(\"FacebarTypeaheadItem\");\n {\n var fin221keys = ((window.top.JSBNG_Replay.forInKeys)((i))), fin221i = (0);\n var j;\n for (; (fin221i < fin221keys.length); (fin221i++)) {\n ((j) = (fin221keys[fin221i]));\n {\n if (((i.hasOwnProperty(j) && ((j !== \"_metaprototype\"))))) {\n l[j] = i[j];\n }\n ;\n ;\n };\n };\n };\n;\n var k = ((((i === null)) ? null : i.prototype));\n l.prototype = Object.create(k);\n l.prototype.constructor = l;\n l.__superConstructor__ = i;\n function l(m) {\n i.call(this, m);\n };\n;\n l.prototype.renderIcon = function() {\n return h.create(\"span\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadItem__iconwrapper\"\n }, h.create(\"span\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadItem__touricon\"\n }));\n };\n l.prototype.renderSubtext = function() {\n this.setVAlign(false);\n return k.renderSubtext.call(this);\n };\n e.exports = l;\n});\n__d(\"FacebarTypeaheadTour\", [\"Arbiter\",\"AsyncRequest\",\"BrowseNUXController\",\"FacebarStructuredText\",\"FacebarTypeaheadTourItem\",\"copyProperties\",\"fbt\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncRequest\"), i = b(\"BrowseNUXController\"), j = b(\"FacebarStructuredText\"), k = b(\"FacebarTypeaheadTourItem\"), l = b(\"copyProperties\"), m = b(\"fbt\");\n function n(o) {\n this._core = o.getCore();\n this._view = this._core.view;\n this._moreBar = null;\n this._events = [];\n this._subscriptions = [];\n this._item = {\n uid: \"tour\",\n uri: \"#\",\n structure: j.fromString(\"Take the tour\")\n };\n };\n;\n n.prototype.enable = function() {\n this._subscriptions = [g.subscribe(\"BrowseNUX/initialized\", this._initEvents.bind(this)),g.subscribe(\"BrowseNUX/starting\", this._removeEvents.bind(this)),g.subscribe(\"BrowseNUX/finished\", this._initEvents.bind(this)),];\n };\n n.prototype.disable = function() {\n while (this._subscriptions.length) {\n this._subscriptions.pop().unsubscribe();\n ;\n };\n ;\n };\n n.prototype._initEvents = function() {\n this._events = [this._view.subscribe(\"filter\", this._addTour.bind(this)),this._view.subscribe(\"beforeSelect\", this._beforeSelect.bind(this)),];\n this._core.requery();\n };\n n.prototype._removeEvents = function() {\n while (this._events.length) {\n this._events.pop().unsubscribe();\n ;\n };\n ;\n this._core.requery();\n };\n n.prototype._isNullState = function() {\n return this._core.input.getValue().isEmpty();\n };\n n.prototype._addTour = function(o, JSBNG__event) {\n var p = JSBNG__event.results;\n if (((((p.length === 0)) || !this._isNullState()))) {\n return;\n }\n ;\n ;\n var q = new k(this._item);\n q.setShouldRenderEducation(false);\n this._moreBar = q.render();\n var r = p.length;\n while (((--r >= 0))) {\n if (((p[r].removable === true))) {\n break;\n }\n ;\n ;\n };\n ;\n p.splice(((r + 1)), 0, l(this._item, {\n node: this._moreBar\n }));\n };\n n.prototype._beforeSelect = function(o, JSBNG__event) {\n if (((JSBNG__event.selected.node === this._moreBar))) {\n i.showSearchBarTour();\n return false;\n }\n ;\n ;\n new h(\"/ajax/browse/nux_addquery.php\").send();\n return true;\n };\n e.exports = n;\n});\n__d(\"FacebarTypeaheadTrigger\", [\"copyProperties\",\"Arbiter\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"Arbiter\");\n function i(j) {\n this._typeahead = j;\n this._core = j.getCore();\n this._subscription = null;\n };\n;\n i.prototype.enable = function() {\n this._subscription = h.subscribe(\"FacebarTrigger/select\", this._activateTrigger.bind(this));\n };\n i.prototype.disable = function() {\n h.unsubscribe(this._subscription);\n };\n i.prototype._activateTrigger = function(j, k) {\n var l = g({\n type: \"grammar\",\n uri: null,\n structure: null\n }, k);\n if (!l.uri) {\n this._core.open();\n this._core.setQuery(l, false);\n }\n else this._core.executeQuery(l);\n ;\n ;\n };\n e.exports = i;\n});\n__d(\"FacebarTypeaheadGrammarItem\", [\"cx\",\"DOM\",\"FacebarTypeaheadItem\",\"FacebarTypeaheadToken\",\"FacebarTypeaheadEntityToken\",\"fbt\",], function(a, b, c, d, e, f) {\n var g = b(\"cx\"), h = b(\"DOM\"), i = b(\"FacebarTypeaheadItem\"), j = b(\"FacebarTypeaheadToken\"), k = b(\"FacebarTypeaheadEntityToken\"), l = b(\"fbt\");\n {\n var fin222keys = ((window.top.JSBNG_Replay.forInKeys)((i))), fin222i = (0);\n var m;\n for (; (fin222i < fin222keys.length); (fin222i++)) {\n ((m) = (fin222keys[fin222i]));\n {\n if (((i.hasOwnProperty(m) && ((m !== \"_metaprototype\"))))) {\n o[m] = i[m];\n }\n ;\n ;\n };\n };\n };\n;\n var n = ((((i === null)) ? null : i.prototype));\n o.prototype = Object.create(n);\n o.prototype.constructor = o;\n o.__superConstructor__ = i;\n function o(p) {\n i.call(this, p);\n this.addClass(\"-cx-PRIVATE-fbFacebarTypeaheadItem__queryitem\");\n };\n;\n o.prototype.renderIcon = function() {\n if (this._result.photo) {\n return h.create(\"img\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadItem__entityicon\",\n alt: \"\",\n src: this._result.photo\n });\n }\n ;\n ;\n return h.create(\"span\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadItem__iconwrapper\"\n }, h.create(\"span\", {\n className: this._result.icon_class\n }));\n };\n o.prototype.renderSubtext = function() {\n var p = this._result.decoration, q = this._result.ambiguity, r = ((q && q.text)), s = ((((p && p.entity)) || ((q && q.entity))));\n if (r) {\n return new j([r,]).render();\n }\n else if (s) {\n this.setVAlign(false);\n return new k(s).setDefaultText(\"user\", \"Person\").setLeadingMiddot(true).setLimit(2).render();\n }\n \n ;\n ;\n };\n e.exports = o;\n});\n__d(\"FacebarTypeaheadKeywordItem\", [\"cx\",\"FacebarTypeaheadGrammarItem\",\"FacebarTypeaheadToken\",], function(a, b, c, d, e, f) {\n var g = b(\"cx\"), h = b(\"FacebarTypeaheadGrammarItem\"), i = b(\"FacebarTypeaheadToken\"), j = \"-cx-PUBLIC-fbFacebarTypeaheadToken__subtext\";\n {\n var fin223keys = ((window.top.JSBNG_Replay.forInKeys)((h))), fin223i = (0);\n var k;\n for (; (fin223i < fin223keys.length); (fin223i++)) {\n ((k) = (fin223keys[fin223i]));\n {\n if (((h.hasOwnProperty(k) && ((k !== \"_metaprototype\"))))) {\n m[k] = h[k];\n }\n ;\n ;\n };\n };\n };\n;\n var l = ((((h === null)) ? null : h.prototype));\n m.prototype = Object.create(l);\n m.prototype.constructor = m;\n m.__superConstructor__ = h;\n function m(n) {\n h.call(this, n);\n };\n;\n m.prototype.renderSubtext = function() {\n var n = new i([\"Search\",], j);\n return n.render();\n };\n e.exports = m;\n});\n__d(\"FacebarTypeaheadSponsoredEntityItem\", [\"AsyncRequest\",\"Bootloader\",\"JSBNG__CSS\",\"cx\",\"DOM\",\"emptyFunction\",\"JSBNG__Event\",\"HTML\",\"FacebarTypeaheadEntityItem\",\"FacebarTypeaheadToken\",\"tx\",\"TypeaheadSearchSponsored\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"Bootloader\"), i = b(\"JSBNG__CSS\"), j = b(\"cx\"), k = b(\"DOM\"), l = b(\"emptyFunction\"), m = b(\"JSBNG__Event\"), n = b(\"HTML\"), o = b(\"FacebarTypeaheadEntityItem\"), p = b(\"FacebarTypeaheadToken\"), q = b(\"tx\"), r = b(\"TypeaheadSearchSponsored\"), s = \"\\u00b7\";\n {\n var fin224keys = ((window.top.JSBNG_Replay.forInKeys)((o))), fin224i = (0);\n var t;\n for (; (fin224i < fin224keys.length); (fin224i++)) {\n ((t) = (fin224keys[fin224i]));\n {\n if (((o.hasOwnProperty(t) && ((t !== \"_metaprototype\"))))) {\n v[t] = o[t];\n }\n ;\n ;\n };\n };\n };\n;\n var u = ((((o === null)) ? null : o.prototype));\n v.prototype = Object.create(u);\n v.prototype.constructor = v;\n v.__superConstructor__ = o;\n function v(w) {\n o.call(this, w);\n this.addClass(\"-cx-PRIVATE-fbFacebarTypeaheadItem__entityitem\");\n };\n;\n v.prototype.renderSubtext = function() {\n var w = this._result, x = w.category;\n if (w.category.__html) {\n x = k.getText(n(x).getRootNode());\n }\n ;\n ;\n var y = [];\n y.push(q._(\"Sponsored {category}\", {\n category: x\n }));\n y.push(this.getHideLink());\n return new p(y).render();\n };\n v.prototype.render = function() {\n var w = u.render.call(this);\n i.addClass(w, \"-cx-PRIVATE-fbFacebarTypeaheadToken__sponsored\");\n return w;\n };\n v.prototype.getHideLink = function() {\n var w = k.create(\"a\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadItem__report\",\n href: \"#\",\n title: \"Hide the ad\"\n }, \"\\u2715\");\n m.listen(w, \"click\", this.hideSponsoredResult.bind(this));\n return w;\n };\n v.prototype.renderText = function() {\n var w = u.renderText.call(this);\n w.push(this.getSponsoredMessage());\n return w;\n };\n v.prototype.getSponsoredMessage = function() {\n if (this._result.s_message) {\n return k.create(\"span\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadItem__sponsoredmessage\"\n }, [((((\" \" + s)) + \" \")),this._result.s_message,]);\n }\n ;\n ;\n return [];\n };\n v.prototype.hideSponsoredResult = function(JSBNG__event) {\n r.hideAdResult(this._result.uid);\n h.loadModules([\"AdsHidePoll\",\"Dialog\",], function(w, x) {\n var y = new x().setModal(true).setTitle(\"Ad was hidden\").setButtons(x.CLOSE);\n new w(y.getBody(), this._result.s_token).setShowTitle(false).setUndoHandler(function() {\n r.undoHideAdResult(this._result.uid);\n y.hide();\n }.bind(this)).renderAsync(function() {\n y.show();\n });\n }.bind(this));\n new g(\"/ajax/ads/hide\").setData({\n action: \"hide\",\n impression: this._result.s_token\n }).setMethod(\"post\").setHandler(l).send();\n };\n e.exports = v;\n});\n__d(\"FacebarTypeaheadWebSuggestionItem\", [\"cx\",\"DOM\",\"FacebarTypeaheadItem\",\"FacebarTypeaheadToken\",], function(a, b, c, d, e, f) {\n var g = b(\"cx\"), h = b(\"DOM\"), i = b(\"FacebarTypeaheadItem\"), j = b(\"FacebarTypeaheadToken\"), k = {\n EXACT_MATCH: 1,\n BING: 2,\n BING_POPULAR: 3,\n WEBSUGGESTIONS_AS_KEYWORDS: 4\n }, l = \"-cx-PUBLIC-fbFacebarTypeaheadToken__websuggestioninner\";\n {\n var fin225keys = ((window.top.JSBNG_Replay.forInKeys)((i))), fin225i = (0);\n var m;\n for (; (fin225i < fin225keys.length); (fin225i++)) {\n ((m) = (fin225keys[fin225i]));\n {\n if (((i.hasOwnProperty(m) && ((m !== \"_metaprototype\"))))) {\n o[m] = i[m];\n }\n ;\n ;\n };\n };\n };\n;\n var n = ((((i === null)) ? null : i.prototype));\n o.prototype = Object.create(n);\n o.prototype.constructor = o;\n o.__superConstructor__ = i;\n function o(p) {\n i.call(this, p);\n this.addClass(\"-cx-PRIVATE-fbFacebarTypeaheadItem__queryitem\");\n };\n;\n o.prototype.renderIcon = function() {\n return h.create(\"span\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadItem__iconwrapper\"\n }, h.create(\"span\", {\n className: \"-cx-PRIVATE-fbFacebarTypeaheadItem__webicon\"\n }));\n };\n o.prototype.renderSubtext = function() {\n if (this._result.isLockedWebSearchMode) {\n return;\n }\n ;\n ;\n var p, q;\n p = this._result.websuggestion_source;\n var r = ((((p === k.WEBSUGGESTIONS_AS_KEYWORDS)) ? \"Search\" : ((((p === k.BING_POPULAR)) ? \"Popular Web Search\" : \"Web Search\"))));\n q = new j([r,], l);\n return q.render();\n };\n e.exports = o;\n});\n__d(\"FacebarTypeaheadRenderer\", [\"FacebarTypeaheadEntityItem\",\"FacebarTypeaheadGrammarItem\",\"FacebarTypeaheadKeywordItem\",\"FacebarTypeaheadWebSuggestionItem\",\"FacebarTypeaheadSponsoredEntityItem\",], function(a, b, c, d, e, f) {\n var g = b(\"FacebarTypeaheadEntityItem\"), h = b(\"FacebarTypeaheadGrammarItem\"), i = b(\"FacebarTypeaheadKeywordItem\"), j = b(\"FacebarTypeaheadWebSuggestionItem\"), k = b(\"FacebarTypeaheadSponsoredEntityItem\"), l = {\n };\n function m(o) {\n if (o.isSponsored) {\n return new k(o);\n }\n else if (((o.type == \"websuggestion\"))) {\n return new j(o);\n }\n else if (((o.results_set_type == \"browse_type_blended\"))) {\n return new i(o);\n }\n else if (((o.type == \"grammar\"))) {\n return new h(o);\n }\n else return new g(o)\n \n \n \n ;\n };\n;\n function n(o) {\n var p = ((((!o.fetchType && !o.isSponsored)) && !o.isLockedWebSearchMode)), q = o.uid, r = ((p && l[q])), s = m(o);\n if (!r) {\n this.inform(\"renderingItem\", {\n JSBNG__item: s,\n result: o\n });\n r = s.render();\n p = ((p && s.cacheable()));\n }\n ;\n ;\n var t = r;\n if (p) {\n l[q] = r;\n t = r.cloneNode(true);\n }\n ;\n ;\n s.highlight(t);\n return t;\n };\n;\n e.exports = n;\n});"); |
| // 10600 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o102,o135); |
| // undefined |
| o135 = null; |
| // 10605 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o136,o138); |
| // undefined |
| o138 = null; |
| // 10610 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o140,o141); |
| // undefined |
| o141 = null; |
| // 10615 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o142,o143); |
| // undefined |
| o143 = null; |
| // 10620 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o144,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y6/r/QRKzqNeXwzk.js",o145); |
| // undefined |
| o144 = null; |
| // undefined |
| o145 = null; |
| // 11423 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o76,o105); |
| // undefined |
| o105 = null; |
| // 11426 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"nxD7O\",]);\n}\n;\n__d(\"ErrorDialog\", [\"Dialog\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Dialog\"), h = b(\"emptyFunction\"), i = {\n showAsyncError: function(j) {\n try {\n return i.show(j.getErrorSummary(), j.getErrorDescription());\n } catch (k) {\n alert(j);\n };\n },\n show: function(j, k, l, m) {\n return (new g()).setTitle(j).setBody(k).setButtons([g.OK,]).setStackable(true).setModal(true).setHandler((l || h)).setButtonsMessage((m || \"\")).show();\n }\n };\n e.exports = i;\n});\n__d(\"ScrollingPager\", [\"Arbiter\",\"copyProperties\",\"CSS\",\"OnVisible\",\"UIPagelet\",\"$\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"copyProperties\"), i = b(\"CSS\"), j = b(\"OnVisible\"), k = b(\"UIPagelet\"), l = b(\"$\"), m = b(\"ge\"), n = {\n };\n function o(p, q, r, s) {\n this.scroll_loader_id = p;\n this.pagelet_src = q;\n this.data = r;\n this.options = (s || {\n });\n if (this.options.target_id) {\n this.target_id = this.options.target_id;\n this.options.append = true;\n }\n else this.target_id = p;\n ;\n this.scroll_area_id = this.options.scroll_area_id;\n this.handler = null;\n };\n h(o, {\n REGISTERED: \"ScrollingPager/registered\",\n getInstance: function(p) {\n return n[p];\n }\n });\n h(o.prototype, {\n setBuffer: function(p) {\n this.options.buffer = p;\n (this.onvisible && this.onvisible.setBuffer(p));\n },\n getBuffer: function() {\n return this.options.buffer;\n },\n register: function() {\n this.onvisible = new j(l(this.scroll_loader_id), this.getHandler(), false, this.options.buffer, false, m(this.scroll_area_id));\n n[this.scroll_loader_id] = this;\n g.inform(o.REGISTERED, {\n id: this.scroll_loader_id\n });\n },\n getInstance: function(p) {\n return n[p];\n },\n getHandler: function() {\n if (this.handler) {\n return this.handler\n };\n function p(q) {\n var r = m(this.scroll_loader_id);\n if (!r) {\n this.onvisible.remove();\n return;\n }\n ;\n i.addClass(r.firstChild, \"async_saving\");\n var s = this.options.handler;\n this.options.handler = function() {\n g.inform(\"ScrollingPager/loadingComplete\");\n (s && s.apply(null, arguments));\n };\n if (q) {\n this.data.pager_fired_on_init = true;\n };\n k.loadFromEndpoint(this.pagelet_src, this.target_id, this.data, this.options);\n };\n return p.bind(this);\n },\n setHandler: function(p) {\n this.handler = p;\n },\n removeOnVisible: function() {\n this.onvisible.remove();\n },\n checkBuffer: function() {\n (this.onvisible && this.onvisible.checkBuffer());\n }\n });\n e.exports = o;\n});\n__d(\"tidyEvent\", [\"Run\",], function(a, b, c, d, e, f) {\n var g = b(\"Run\"), h = [];\n function i() {\n while (h.length) {\n var k = h.shift();\n if (k.remove) {\n (k._handler && k.remove());\n }\n else (k && k.unsubscribe());\n ;\n };\n };\n function j(k) {\n if (!h.length) {\n g.onLeave(i);\n };\n if (Array.isArray(k)) {\n h = h.concat(k);\n }\n else h.push(k);\n ;\n return k;\n };\n e.exports = j;\n});\n__d(\"TimelineConstants\", [], function(a, b, c, d, e, f) {\n var g = {\n DS_HEIGHT: \"timeline-unit-height\",\n DS_LOADED: \"timeline-capsule-loaded\",\n DS_SIDEORG: \"timeline-unit-sideorg\",\n DS_TAILBALANCE: \"timeline-capsule-tailbalance\",\n DS_COLUMN_HEIGHT_DIFFERENTIAL: \"timeline-column-diff-height\",\n FIXED_SIDE_LEFT: \"left\",\n FIXED_SIDE_RIGHT: \"right\",\n FIXED_SIDE_BOTH: \"both\",\n FIXED_SIDE_NONE: \"none\",\n SCROLL_TO_OFFSET: 30,\n SUBSECTION_SCROLL_TO_OFFSET: 90,\n SCRUBBER_DEFAULT_OFFSET: 38,\n SECTION_LOADING: \"TimelineConstants/sectionLoading\",\n SECTION_LOADED: \"TimelineConstants/sectionLoaded\",\n SECTION_FULLY_LOADED: \"TimelineConstants/sectionFullyLoaded\",\n SECTION_REGISTERED: \"TimelineConstants/sectionRegistered\"\n };\n e.exports = g;\n});\n__d(\"TimelineLegacySections\", [], function(a, b, c, d, e, f) {\n var g = {\n }, h = {\n get: function(i) {\n return g[i];\n },\n getAll: function() {\n return g;\n },\n remove: function(i) {\n delete g[i];\n },\n removeAll: function() {\n g = {\n };\n },\n set: function(i, j) {\n g[i] = j;\n }\n };\n e.exports = h;\n});\n__d(\"TimelineURI\", [\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"URI\"), h = {\n TIMELINE_KEY: \"timeline\",\n WALL_KEY: \"wall\",\n parseURI: function(i) {\n i = g(i);\n var j = i.getQueryData(), k = i.getPath(), l = k.split(\"/\").slice(1);\n if (((l[0] == \"people\") || (l[0] == \"pages\"))) {\n l = l.slice(2);\n };\n var m = ((j.sk || l[1]) || h.TIMELINE_KEY);\n if ((m == h.WALL_KEY)) {\n m = h.TIMELINE_KEY;\n };\n var n = null, o = null;\n if ((m == h.TIMELINE_KEY)) {\n o = (parseInt(l[2], 10) || null);\n n = (parseInt(l[3], 10) || null);\n }\n ;\n return {\n path: k,\n id: (j.id || l[0]),\n key: m,\n viewas: (j.viewas ? j.viewas : 0),\n filter: (j.filter ? j.filter : null),\n year: o,\n month: n,\n friendship: !!j.and\n };\n }\n };\n e.exports = h;\n});\n__d(\"TimelineController\", [\"Event\",\"Arbiter\",\"CSS\",\"DataStore\",\"DOMQuery\",\"Run\",\"ScrollingPager\",\"TidyArbiter\",\"TimelineConstants\",\"TimelineLegacySections\",\"TimelineURI\",\"Vector\",\"ViewportBounds\",\"$\",\"copyProperties\",\"ge\",\"tidyEvent\",\"queryThenMutateDOM\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Arbiter\"), i = b(\"CSS\"), j = b(\"DataStore\"), k = b(\"DOMQuery\"), l = b(\"Run\"), m = b(\"ScrollingPager\"), n = b(\"TidyArbiter\"), o = b(\"TimelineConstants\"), p = b(\"TimelineLegacySections\"), q = b(\"TimelineURI\"), r = b(\"Vector\"), s = b(\"ViewportBounds\"), t = b(\"$\"), u = b(\"copyProperties\"), v = b(\"ge\"), w = b(\"tidyEvent\"), x = b(\"queryThenMutateDOM\"), y = 358, z = 48, aa = 740, ba = 1285, ca = null, da = false, ea, fa, ga, ha = {\n }, ia = {\n }, ja = [], ka = null, la = null, ma = false, na = false, oa = 0, pa = false, qa = false, ra = false, sa = {\n }, ta = false;\n function ua() {\n (ka && ka.remove());\n ka = null;\n };\n function va(hb, ib, jb) {\n jb = (jb || []);\n if (ha[hb]) {\n return ha[hb][ib].apply(ha[hb], jb)\n };\n ia[hb] = (ia[hb] || {\n });\n ia[hb][ib] = jb;\n return false;\n };\n function wa() {\n if (!(((pa || ra) || qa))) {\n ua();\n return;\n }\n ;\n var hb = r.getScrollPosition();\n pa = (pa && ab(v(\"rightCol\"), hb, \"paddingTop\", true));\n qa = (qa && ab(t(\"pagelet_above_header_timeline\"), hb, \"top\"));\n ra = (ra && ab(t(\"blueBar\"), hb, \"paddingTop\"));\n };\n var xa = 0;\n function ya() {\n xa = r.getScrollPosition();\n };\n function za() {\n x(ya, function() {\n var hb = ((oa === 0) || (xa.y >= oa));\n va(gb.STICKY_HEADER, \"toggle\", [hb,]);\n va(gb.CONTENT, \"checkCurrentSectionChange\");\n }, \"TimelineController/scrollListener\");\n };\n function ab(hb, ib, jb, kb) {\n if (!hb) {\n ua();\n return;\n }\n ;\n if ((ib.y <= 0)) {\n bb(hb, jb);\n return false;\n }\n else {\n var lb = (kb && gb.getCurrentScrubber());\n if ((lb && i.hasClass(lb.getRoot(), \"fixed_elem\"))) {\n bb(hb, jb);\n return false;\n }\n else {\n var mb = (parseInt(hb.style[jb], 10) || 0);\n if ((ib.y < mb)) {\n i.addClass(hb, \"timeline_fixed\");\n hb.style[jb] = (ib.y + \"px\");\n }\n else i.removeClass(hb, \"timeline_fixed\");\n ;\n }\n ;\n }\n ;\n return true;\n };\n function bb(hb, ib) {\n hb.style[ib] = \"0px\";\n i.removeClass(hb, \"timeline_fixed\");\n };\n function cb() {\n x(gb.shouldShowWideAds, function() {\n va(gb.ADS, \"adjustAdsType\", [ma,]);\n va(gb.ADS, \"adjustAdsToFit\");\n va(gb.CONTENT, \"adjustContentPadding\");\n va(gb.STICKY_HEADER_NAV, \"adjustMenuHeights\");\n }, \"TimelineController/resize\");\n };\n function db(hb, ib) {\n if ((hb == \"sidebar/initialized\")) {\n ta = true;\n };\n va(gb.ADS, \"adjustAdsType\", [gb.shouldShowWideAds(),]);\n };\n function eb(hb, ib) {\n var jb = v(\"rightCol\");\n if (jb) {\n jb.style.paddingTop = (ib + \"px\");\n pa = true;\n }\n ;\n var kb = t(\"pagelet_above_header_timeline\");\n if (kb.firstChild) {\n t(\"above_header_timeline_placeholder\").style.height = (kb.offsetHeight + \"px\");\n kb.style.top = (ib + \"px\");\n qa = true;\n }\n ;\n var lb = document.documentElement;\n ra = ((lb.clientHeight < 400) || (lb.clientWidth < lb.scrollWidth));\n if (ra) {\n t(\"blueBar\").style.paddingTop = (ib + \"px\");\n };\n ka = g.listen(window, \"scroll\", wa);\n h.inform(\"reflow\");\n };\n function fb() {\n while (ja.length) {\n ja.pop().remove();;\n };\n for (var hb in ha) {\n (ha[hb].reset && ha[hb].reset());;\n };\n ua();\n ga.unsubscribe();\n ga = null;\n ca = null;\n ea = null;\n ha = {\n };\n ia = {\n };\n la = null;\n na = false;\n oa = 0;\n qa = false;\n if (pa) {\n var ib = v(\"rightCol\");\n if (ib) {\n ib.style.paddingTop = \"\";\n i.removeClass(ib, \"timeline_fixed\");\n }\n ;\n }\n ;\n pa = false;\n if (ra) {\n t(\"blueBar\").style.paddingTop = \"\";\n i.removeClass(t(\"blueBar\"), \"timeline_fixed\");\n }\n ;\n ra = false;\n ta = false;\n da = false;\n j.purge(o.DS_HEIGHT);\n j.purge(o.DS_LOADED);\n j.purge(o.DS_SIDEORG);\n j.purge(o.DS_TAILBALANCE);\n j.purge(o.DS_COLUMN_HEIGHT_DIFFERENTIAL);\n };\n var gb = {\n NAV: \"nav\",\n STICKY_HEADER: \"sticky_header\",\n STICKY_HEADER_NAV: \"sticky_header_nav\",\n SCRUBBER: \"scrubber\",\n CONTENT: \"content\",\n ADS: \"ads\",\n LOGGING: \"logging\",\n init: function(hb, ib, jb) {\n if (da) {\n return\n };\n if ((ib == q.WALL_KEY)) {\n ib = q.TIMELINE_KEY;\n };\n da = true;\n ea = hb;\n fa = jb.has_fixed_ads;\n na = jb.one_column_minimal;\n sa = {\n allactivity: true,\n approve: true\n };\n if (!na) {\n u(sa, {\n games: true,\n map: true,\n music: true,\n video: true\n });\n };\n sa[q.TIMELINE_KEY] = true;\n va(gb.CONTENT, \"adjustContentPadding\");\n ja.push(g.listen(window, \"scroll\", za), g.listen(window, \"resize\", cb));\n ga = h.subscribe([\"sidebar/initialized\",\"sidebar/show\",\"sidebar/hide\",], db);\n w(n.subscribe(\"TimelineCover/coverCollapsed\", eb));\n l.onLeave(fb);\n gb.registerCurrentKey(ib);\n },\n setAdsTracking: function(hb) {\n va(gb.ADS, \"start\", [hb,]);\n },\n pageHasScrubber: function(hb) {\n return ((!hb || ((!na && hb.match(/^(og_)?app_/)))) || ((hb in sa)));\n },\n fixedAds: function() {\n return fa;\n },\n registerCurrentKey: function(hb) {\n ca = hb;\n la = (((hb !== \"map\") && (r.getViewportDimensions().y < aa)) && gb.pageHasScrubber(hb));\n la = (la || t(\"blueBar\").offsetTop);\n va(gb.ADS, \"setShortMode\", [la,]);\n va(gb.ADS, \"updateCurrentKey\", [hb,]);\n oa = ((hb == q.TIMELINE_KEY) ? (y - z) : 0);\n },\n getCurrentKey: function() {\n return ca;\n },\n getCurrentScrubber: function() {\n return ha[gb.SCRUBBER];\n },\n getCurrentStickyHeaderNav: function() {\n return ha[gb.STICKY_HEADER_NAV];\n },\n scrubberHasLoaded: function(hb) {\n i.conditionClass(hb.getRoot(), \"fixed_elem\", !la);\n va(gb.ADS, \"registerScrubber\", [hb,]);\n },\n scrubberHasChangedState: function() {\n va(gb.ADS, \"adjustAdsToFit\");\n },\n scrubberWasClicked: function(hb) {\n va(gb.LOGGING, \"logScrubberClick\", [hb,]);\n },\n stickyHeaderNavWasClicked: function(hb) {\n va(gb.LOGGING, \"logStickyHeaderNavClick\", [hb,]);\n },\n sectionHasChanged: function(hb, ib) {\n va(gb.STICKY_HEADER_NAV, \"updateSection\", [hb,ib,]);\n va(gb.SCRUBBER, \"updateSection\", [hb,ib,]);\n va(gb.ADS, \"loadAdsIfEnoughTimePassed\");\n va(gb.LOGGING, \"logSectionChange\", [hb,ib,]);\n },\n navigateToSection: function(hb) {\n va(gb.CONTENT, \"navigateToSection\", [hb,]);\n },\n shouldShowWideAds: function() {\n if (!ta) {\n ma = false;\n }\n else {\n var hb = ((ba + s.getRight()) + s.getLeft());\n ma = (r.getViewportDimensions().x >= hb);\n }\n ;\n return ma;\n },\n sidebarInitialized: function() {\n return ta;\n },\n adjustStickyHeaderWidth: function() {\n va(gb.STICKY_HEADER, \"adjustWidth\");\n },\n isOneColumnMinimal: function() {\n return na;\n },\n register: function(hb, ib) {\n ha[hb] = ib;\n if (ia[hb]) {\n for (var jb in ia[hb]) {\n va(hb, jb, ia[hb][jb]);;\n };\n delete ia[hb];\n }\n ;\n },\n adjustScrollingPagerBuffer: function(hb, ib) {\n var jb = j.get(o.DS_COLUMN_HEIGHT_DIFFERENTIAL, ib);\n if (!jb) {\n return\n };\n var kb = m.getInstance(hb);\n (kb && kb.setBuffer((kb.getBuffer() + Math.abs(jb))));\n },\n runOnceWhenSectionFullyLoaded: function(hb, ib, jb) {\n var kb = p.get(ib);\n if (kb) {\n var lb = false;\n k.scry(kb.node, \".fbTimelineCapsule\").forEach(function(nb) {\n if ((!lb && (parseInt(j.get(o.DS_LOADED, nb.id), 10) >= parseInt(jb, 10)))) {\n hb();\n lb = true;\n }\n ;\n });\n if (lb) {\n return\n };\n }\n ;\n var mb = h.subscribe(o.SECTION_FULLY_LOADED, function(nb, ob) {\n if (((ob.scrubberKey === ib) && (ob.pageIndex === jb))) {\n hb();\n mb.unsubscribe();\n }\n ;\n });\n },\n unrankedWasClicked: function() {\n va(gb.LOGGING, \"logUnrankedClick\");\n }\n };\n e.exports = gb;\n});\n__d(\"TimelineSmartInsert\", [\"Run\",\"UserAgent\",\"Vector\",], function(a, b, c, d, e, f) {\n var g = b(\"Run\"), h = b(\"UserAgent\"), i = b(\"Vector\"), j = 100;\n function k(q) {\n if ((q === \"viewport\")) {\n return i.getViewportDimensions().y\n };\n return q;\n };\n var l = false, m = false;\n function n() {\n if (m) {\n return\n };\n g.onLeave(o);\n m = true;\n };\n function o() {\n l = false;\n m = false;\n };\n var p = {\n run: function(q, r, s) {\n n();\n if ((!l || (h.ie() <= 8))) {\n r();\n return;\n }\n ;\n var t = q.offsetHeight;\n r();\n var u = q.offsetHeight, v = i.getScrollPosition().y, w = i.getElementPosition(q).y;\n if ((((u !== t) && (w < v)) && ((w + t) < (v + k((s || j)))))) {\n window.scrollBy(0, (u - t));\n };\n },\n enable: function() {\n l = true;\n }\n };\n e.exports = p;\n});\n__d(\"legacy:ui-scrolling-pager-js\", [\"ScrollingPager\",], function(a, b, c, d) {\n a.ScrollingPager = b(\"ScrollingPager\");\n}, 3);\n__d(\"ButtonGroup\", [\"function-extensions\",\"copyProperties\",\"createArrayFrom\",\"CSS\",\"DataStore\",\"Parent\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"copyProperties\"), h = b(\"createArrayFrom\"), i = b(\"CSS\"), j = b(\"DataStore\"), k = b(\"Parent\"), l = \"firstItem\", m = \"lastItem\";\n function n(s, t) {\n var u = k.byClass(s, t);\n if (!u) {\n throw new Error(\"invalid use case\")\n };\n return u;\n };\n function o(s) {\n return (i.shown(s) && h(s.childNodes).some(i.shown));\n };\n function p(s) {\n var t, u, v;\n h(s.childNodes).forEach(function(w) {\n v = o(w);\n i.removeClass(w, l);\n i.removeClass(w, m);\n i.conditionShow(w, v);\n if (v) {\n t = (t || w);\n u = w;\n }\n ;\n });\n (t && i.addClass(t, l));\n (u && i.addClass(u, m));\n i.conditionShow(s, t);\n };\n function q(s, t) {\n var u = n(t, \"uiButtonGroupItem\");\n s(u);\n p(u.parentNode);\n };\n function r(s) {\n this._root = n(s, \"uiButtonGroup\");\n j.set(this._root, \"ButtonGroup\", this);\n p(this._root);\n };\n r.getInstance = function(s) {\n var t = n(s, \"uiButtonGroup\"), u = j.get(t, \"ButtonGroup\");\n return (u || new r(t));\n };\n g(r.prototype, {\n hideItem: q.curry(i.hide),\n showItem: q.curry(i.show),\n toggleItem: q.curry(i.toggle)\n });\n e.exports = r;\n});\n__d(\"ButtonGroupMonitor\", [\"ContextualDialog\",\"ContextualLayer\",\"CSS\",\"Layer\",\"Parent\",\"SelectorDeprecated\",], function(a, b, c, d, e, f) {\n var g = b(\"ContextualDialog\"), h = b(\"ContextualLayer\"), i = b(\"CSS\"), j = b(\"Layer\"), k = b(\"Parent\"), l = b(\"SelectorDeprecated\");\n function m(n) {\n var o = (k.byClass(n, \"bg_stat_elem\") || k.byClass(n, \"uiButtonGroup\"));\n (o && i.toggleClass(o, \"uiButtonGroupActive\"));\n };\n j.subscribe([\"hide\",\"show\",], function(n, o) {\n if (((o instanceof h) || (o instanceof g))) {\n m(o.getCausalElement());\n };\n });\n l.subscribe([\"close\",\"open\",], function(n, o) {\n m(o.selector);\n });\n});"); |
| // 11427 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s6991863287b13869d6a8454747dc5da9967b0056"); |
| // 11428 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"nxD7O\",]);\n}\n;\n;\n__d(\"ErrorDialog\", [\"Dialog\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Dialog\"), h = b(\"emptyFunction\"), i = {\n showAsyncError: function(j) {\n try {\n return i.show(j.getErrorSummary(), j.getErrorDescription());\n } catch (k) {\n JSBNG__alert(j);\n };\n ;\n },\n show: function(j, k, l, m) {\n return (new g()).setTitle(j).setBody(k).setButtons([g.OK,]).setStackable(true).setModal(true).setHandler(((l || h))).setButtonsMessage(((m || \"\"))).show();\n }\n };\n e.exports = i;\n});\n__d(\"ScrollingPager\", [\"Arbiter\",\"copyProperties\",\"JSBNG__CSS\",\"OnVisible\",\"UIPagelet\",\"$\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"copyProperties\"), i = b(\"JSBNG__CSS\"), j = b(\"OnVisible\"), k = b(\"UIPagelet\"), l = b(\"$\"), m = b(\"ge\"), n = {\n };\n function o(p, q, r, s) {\n this.scroll_loader_id = p;\n this.pagelet_src = q;\n this.data = r;\n this.options = ((s || {\n }));\n if (this.options.target_id) {\n this.target_id = this.options.target_id;\n this.options.append = true;\n }\n else this.target_id = p;\n ;\n ;\n this.scroll_area_id = this.options.scroll_area_id;\n this.handler = null;\n };\n;\n h(o, {\n REGISTERED: \"ScrollingPager/registered\",\n getInstance: function(p) {\n return n[p];\n }\n });\n h(o.prototype, {\n setBuffer: function(p) {\n this.options.buffer = p;\n ((this.onvisible && this.onvisible.setBuffer(p)));\n },\n getBuffer: function() {\n return this.options.buffer;\n },\n register: function() {\n this.onvisible = new j(l(this.scroll_loader_id), this.getHandler(), false, this.options.buffer, false, m(this.scroll_area_id));\n n[this.scroll_loader_id] = this;\n g.inform(o.REGISTERED, {\n id: this.scroll_loader_id\n });\n },\n getInstance: function(p) {\n return n[p];\n },\n getHandler: function() {\n if (this.handler) {\n return this.handler;\n }\n ;\n ;\n function p(q) {\n var r = m(this.scroll_loader_id);\n if (!r) {\n this.onvisible.remove();\n return;\n }\n ;\n ;\n i.addClass(r.firstChild, \"async_saving\");\n var s = this.options.handler;\n this.options.handler = function() {\n g.inform(\"ScrollingPager/loadingComplete\");\n ((s && s.apply(null, arguments)));\n };\n if (q) {\n this.data.pager_fired_on_init = true;\n }\n ;\n ;\n k.loadFromEndpoint(this.pagelet_src, this.target_id, this.data, this.options);\n };\n ;\n return p.bind(this);\n },\n setHandler: function(p) {\n this.handler = p;\n },\n removeOnVisible: function() {\n this.onvisible.remove();\n },\n checkBuffer: function() {\n ((this.onvisible && this.onvisible.checkBuffer()));\n }\n });\n e.exports = o;\n});\n__d(\"tidyEvent\", [\"Run\",], function(a, b, c, d, e, f) {\n var g = b(\"Run\"), h = [];\n function i() {\n while (h.length) {\n var k = h.shift();\n if (k.remove) {\n ((k._handler && k.remove()));\n }\n else ((k && k.unsubscribe()));\n ;\n ;\n };\n ;\n };\n;\n function j(k) {\n if (!h.length) {\n g.onLeave(i);\n }\n ;\n ;\n if (Array.isArray(k)) {\n h = h.concat(k);\n }\n else h.push(k);\n ;\n ;\n return k;\n };\n;\n e.exports = j;\n});\n__d(\"TimelineConstants\", [], function(a, b, c, d, e, f) {\n var g = {\n DS_HEIGHT: \"timeline-unit-height\",\n DS_LOADED: \"timeline-capsule-loaded\",\n DS_SIDEORG: \"timeline-unit-sideorg\",\n DS_TAILBALANCE: \"timeline-capsule-tailbalance\",\n DS_COLUMN_HEIGHT_DIFFERENTIAL: \"timeline-column-diff-height\",\n FIXED_SIDE_LEFT: \"left\",\n FIXED_SIDE_RIGHT: \"right\",\n FIXED_SIDE_BOTH: \"both\",\n FIXED_SIDE_NONE: \"none\",\n SCROLL_TO_OFFSET: 30,\n SUBSECTION_SCROLL_TO_OFFSET: 90,\n SCRUBBER_DEFAULT_OFFSET: 38,\n SECTION_LOADING: \"TimelineConstants/sectionLoading\",\n SECTION_LOADED: \"TimelineConstants/sectionLoaded\",\n SECTION_FULLY_LOADED: \"TimelineConstants/sectionFullyLoaded\",\n SECTION_REGISTERED: \"TimelineConstants/sectionRegistered\"\n };\n e.exports = g;\n});\n__d(\"TimelineLegacySections\", [], function(a, b, c, d, e, f) {\n var g = {\n }, h = {\n get: function(i) {\n return g[i];\n },\n getAll: function() {\n return g;\n },\n remove: function(i) {\n delete g[i];\n },\n removeAll: function() {\n g = {\n };\n },\n set: function(i, j) {\n g[i] = j;\n }\n };\n e.exports = h;\n});\n__d(\"TimelineURI\", [\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"URI\"), h = {\n TIMELINE_KEY: \"timeline\",\n WALL_KEY: \"wall\",\n parseURI: function(i) {\n i = g(i);\n var j = i.getQueryData(), k = i.getPath(), l = k.split(\"/\").slice(1);\n if (((((l[0] == \"people\")) || ((l[0] == \"pages\"))))) {\n l = l.slice(2);\n }\n ;\n ;\n var m = ((((j.sk || l[1])) || h.TIMELINE_KEY));\n if (((m == h.WALL_KEY))) {\n m = h.TIMELINE_KEY;\n }\n ;\n ;\n var n = null, o = null;\n if (((m == h.TIMELINE_KEY))) {\n o = ((parseInt(l[2], 10) || null));\n n = ((parseInt(l[3], 10) || null));\n }\n ;\n ;\n return {\n path: k,\n id: ((j.id || l[0])),\n key: m,\n viewas: ((j.viewas ? j.viewas : 0)),\n filter: ((j.filter ? j.filter : null)),\n year: o,\n month: n,\n friendship: !!j.and\n };\n }\n };\n e.exports = h;\n});\n__d(\"TimelineController\", [\"JSBNG__Event\",\"Arbiter\",\"JSBNG__CSS\",\"DataStore\",\"DOMQuery\",\"Run\",\"ScrollingPager\",\"TidyArbiter\",\"TimelineConstants\",\"TimelineLegacySections\",\"TimelineURI\",\"Vector\",\"ViewportBounds\",\"$\",\"copyProperties\",\"ge\",\"tidyEvent\",\"queryThenMutateDOM\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Arbiter\"), i = b(\"JSBNG__CSS\"), j = b(\"DataStore\"), k = b(\"DOMQuery\"), l = b(\"Run\"), m = b(\"ScrollingPager\"), n = b(\"TidyArbiter\"), o = b(\"TimelineConstants\"), p = b(\"TimelineLegacySections\"), q = b(\"TimelineURI\"), r = b(\"Vector\"), s = b(\"ViewportBounds\"), t = b(\"$\"), u = b(\"copyProperties\"), v = b(\"ge\"), w = b(\"tidyEvent\"), x = b(\"queryThenMutateDOM\"), y = 358, z = 48, aa = 740, ba = 1285, ca = null, da = false, ea, fa, ga, ha = {\n }, ia = {\n }, ja = [], ka = null, la = null, ma = false, na = false, oa = 0, pa = false, qa = false, ra = false, sa = {\n }, ta = false;\n function ua() {\n ((ka && ka.remove()));\n ka = null;\n };\n;\n function va(hb, ib, jb) {\n jb = ((jb || []));\n if (ha[hb]) {\n return ha[hb][ib].apply(ha[hb], jb);\n }\n ;\n ;\n ia[hb] = ((ia[hb] || {\n }));\n ia[hb][ib] = jb;\n return false;\n };\n;\n function wa() {\n if (!((((pa || ra)) || qa))) {\n ua();\n return;\n }\n ;\n ;\n var hb = r.getScrollPosition();\n pa = ((pa && ab(v(\"rightCol\"), hb, \"paddingTop\", true)));\n qa = ((qa && ab(t(\"pagelet_above_header_timeline\"), hb, \"JSBNG__top\")));\n ra = ((ra && ab(t(\"blueBar\"), hb, \"paddingTop\")));\n };\n;\n var xa = 0;\n function ya() {\n xa = r.getScrollPosition();\n };\n;\n function za() {\n x(ya, function() {\n var hb = ((((oa === 0)) || ((xa.y >= oa))));\n va(gb.STICKY_HEADER, \"toggle\", [hb,]);\n va(gb.CONTENT, \"checkCurrentSectionChange\");\n }, \"TimelineController/scrollListener\");\n };\n;\n function ab(hb, ib, jb, kb) {\n if (!hb) {\n ua();\n return;\n }\n ;\n ;\n if (((ib.y <= 0))) {\n bb(hb, jb);\n return false;\n }\n else {\n var lb = ((kb && gb.getCurrentScrubber()));\n if (((lb && i.hasClass(lb.getRoot(), \"fixed_elem\")))) {\n bb(hb, jb);\n return false;\n }\n else {\n var mb = ((parseInt(hb.style[jb], 10) || 0));\n if (((ib.y < mb))) {\n i.addClass(hb, \"timeline_fixed\");\n hb.style[jb] = ((ib.y + \"px\"));\n }\n else i.removeClass(hb, \"timeline_fixed\");\n ;\n ;\n }\n ;\n ;\n }\n ;\n ;\n return true;\n };\n;\n function bb(hb, ib) {\n hb.style[ib] = \"0px\";\n i.removeClass(hb, \"timeline_fixed\");\n };\n;\n function cb() {\n x(gb.shouldShowWideAds, function() {\n va(gb.ADS, \"adjustAdsType\", [ma,]);\n va(gb.ADS, \"adjustAdsToFit\");\n va(gb.CONTENT, \"adjustContentPadding\");\n va(gb.STICKY_HEADER_NAV, \"adjustMenuHeights\");\n }, \"TimelineController/resize\");\n };\n;\n function db(hb, ib) {\n if (((hb == \"sidebar/initialized\"))) {\n ta = true;\n }\n ;\n ;\n va(gb.ADS, \"adjustAdsType\", [gb.shouldShowWideAds(),]);\n };\n;\n function eb(hb, ib) {\n var jb = v(\"rightCol\");\n if (jb) {\n jb.style.paddingTop = ((ib + \"px\"));\n pa = true;\n }\n ;\n ;\n var kb = t(\"pagelet_above_header_timeline\");\n if (kb.firstChild) {\n t(\"above_header_timeline_placeholder\").style.height = ((kb.offsetHeight + \"px\"));\n kb.style.JSBNG__top = ((ib + \"px\"));\n qa = true;\n }\n ;\n ;\n var lb = JSBNG__document.documentElement;\n ra = ((((lb.clientHeight < 400)) || ((lb.clientWidth < lb.scrollWidth))));\n if (ra) {\n t(\"blueBar\").style.paddingTop = ((ib + \"px\"));\n }\n ;\n ;\n ka = g.listen(window, \"JSBNG__scroll\", wa);\n h.inform(\"reflow\");\n };\n;\n function fb() {\n while (ja.length) {\n ja.pop().remove();\n ;\n };\n ;\n {\n var fin226keys = ((window.top.JSBNG_Replay.forInKeys)((ha))), fin226i = (0);\n var hb;\n for (; (fin226i < fin226keys.length); (fin226i++)) {\n ((hb) = (fin226keys[fin226i]));\n {\n ((ha[hb].reset && ha[hb].reset()));\n ;\n };\n };\n };\n ;\n ua();\n ga.unsubscribe();\n ga = null;\n ca = null;\n ea = null;\n ha = {\n };\n ia = {\n };\n la = null;\n na = false;\n oa = 0;\n qa = false;\n if (pa) {\n var ib = v(\"rightCol\");\n if (ib) {\n ib.style.paddingTop = \"\";\n i.removeClass(ib, \"timeline_fixed\");\n }\n ;\n ;\n }\n ;\n ;\n pa = false;\n if (ra) {\n t(\"blueBar\").style.paddingTop = \"\";\n i.removeClass(t(\"blueBar\"), \"timeline_fixed\");\n }\n ;\n ;\n ra = false;\n ta = false;\n da = false;\n j.purge(o.DS_HEIGHT);\n j.purge(o.DS_LOADED);\n j.purge(o.DS_SIDEORG);\n j.purge(o.DS_TAILBALANCE);\n j.purge(o.DS_COLUMN_HEIGHT_DIFFERENTIAL);\n };\n;\n var gb = {\n NAV: \"nav\",\n STICKY_HEADER: \"sticky_header\",\n STICKY_HEADER_NAV: \"sticky_header_nav\",\n SCRUBBER: \"scrubber\",\n CONTENT: \"JSBNG__content\",\n ADS: \"ads\",\n LOGGING: \"logging\",\n init: function(hb, ib, jb) {\n if (da) {\n return;\n }\n ;\n ;\n if (((ib == q.WALL_KEY))) {\n ib = q.TIMELINE_KEY;\n }\n ;\n ;\n da = true;\n ea = hb;\n fa = jb.has_fixed_ads;\n na = jb.one_column_minimal;\n sa = {\n allactivity: true,\n approve: true\n };\n if (!na) {\n u(sa, {\n games: true,\n map: true,\n music: true,\n video: true\n });\n }\n ;\n ;\n sa[q.TIMELINE_KEY] = true;\n va(gb.CONTENT, \"adjustContentPadding\");\n ja.push(g.listen(window, \"JSBNG__scroll\", za), g.listen(window, \"resize\", cb));\n ga = h.subscribe([\"sidebar/initialized\",\"sidebar/show\",\"sidebar/hide\",], db);\n w(n.subscribe(\"TimelineCover/coverCollapsed\", eb));\n l.onLeave(fb);\n gb.registerCurrentKey(ib);\n },\n setAdsTracking: function(hb) {\n va(gb.ADS, \"start\", [hb,]);\n },\n pageHasScrubber: function(hb) {\n return ((((!hb || ((!na && hb.match(/^(og_)?app_/))))) || ((hb in sa))));\n },\n fixedAds: function() {\n return fa;\n },\n registerCurrentKey: function(hb) {\n ca = hb;\n la = ((((((hb !== \"map\")) && ((r.getViewportDimensions().y < aa)))) && gb.pageHasScrubber(hb)));\n la = ((la || t(\"blueBar\").offsetTop));\n va(gb.ADS, \"setShortMode\", [la,]);\n va(gb.ADS, \"updateCurrentKey\", [hb,]);\n oa = ((((hb == q.TIMELINE_KEY)) ? ((y - z)) : 0));\n },\n getCurrentKey: function() {\n return ca;\n },\n getCurrentScrubber: function() {\n return ha[gb.SCRUBBER];\n },\n getCurrentStickyHeaderNav: function() {\n return ha[gb.STICKY_HEADER_NAV];\n },\n scrubberHasLoaded: function(hb) {\n i.conditionClass(hb.getRoot(), \"fixed_elem\", !la);\n va(gb.ADS, \"registerScrubber\", [hb,]);\n },\n scrubberHasChangedState: function() {\n va(gb.ADS, \"adjustAdsToFit\");\n },\n scrubberWasClicked: function(hb) {\n va(gb.LOGGING, \"logScrubberClick\", [hb,]);\n },\n stickyHeaderNavWasClicked: function(hb) {\n va(gb.LOGGING, \"logStickyHeaderNavClick\", [hb,]);\n },\n sectionHasChanged: function(hb, ib) {\n va(gb.STICKY_HEADER_NAV, \"updateSection\", [hb,ib,]);\n va(gb.SCRUBBER, \"updateSection\", [hb,ib,]);\n va(gb.ADS, \"loadAdsIfEnoughTimePassed\");\n va(gb.LOGGING, \"logSectionChange\", [hb,ib,]);\n },\n navigateToSection: function(hb) {\n va(gb.CONTENT, \"navigateToSection\", [hb,]);\n },\n shouldShowWideAds: function() {\n if (!ta) {\n ma = false;\n }\n else {\n var hb = ((((ba + s.getRight())) + s.getLeft()));\n ma = ((r.getViewportDimensions().x >= hb));\n }\n ;\n ;\n return ma;\n },\n sidebarInitialized: function() {\n return ta;\n },\n adjustStickyHeaderWidth: function() {\n va(gb.STICKY_HEADER, \"adjustWidth\");\n },\n isOneColumnMinimal: function() {\n return na;\n },\n register: function(hb, ib) {\n ha[hb] = ib;\n if (ia[hb]) {\n {\n var fin227keys = ((window.top.JSBNG_Replay.forInKeys)((ia[hb]))), fin227i = (0);\n var jb;\n for (; (fin227i < fin227keys.length); (fin227i++)) {\n ((jb) = (fin227keys[fin227i]));\n {\n va(hb, jb, ia[hb][jb]);\n ;\n };\n };\n };\n ;\n delete ia[hb];\n }\n ;\n ;\n },\n adjustScrollingPagerBuffer: function(hb, ib) {\n var jb = j.get(o.DS_COLUMN_HEIGHT_DIFFERENTIAL, ib);\n if (!jb) {\n return;\n }\n ;\n ;\n var kb = m.getInstance(hb);\n ((kb && kb.setBuffer(((kb.getBuffer() + Math.abs(jb))))));\n },\n runOnceWhenSectionFullyLoaded: function(hb, ib, jb) {\n var kb = p.get(ib);\n if (kb) {\n var lb = false;\n k.scry(kb.node, \".fbTimelineCapsule\").forEach(function(nb) {\n if (((!lb && ((parseInt(j.get(o.DS_LOADED, nb.id), 10) >= parseInt(jb, 10)))))) {\n hb();\n lb = true;\n }\n ;\n ;\n });\n if (lb) {\n return;\n }\n ;\n ;\n }\n ;\n ;\n var mb = h.subscribe(o.SECTION_FULLY_LOADED, function(nb, ob) {\n if (((((ob.scrubberKey === ib)) && ((ob.pageIndex === jb))))) {\n hb();\n mb.unsubscribe();\n }\n ;\n ;\n });\n },\n unrankedWasClicked: function() {\n va(gb.LOGGING, \"logUnrankedClick\");\n }\n };\n e.exports = gb;\n});\n__d(\"TimelineSmartInsert\", [\"Run\",\"UserAgent\",\"Vector\",], function(a, b, c, d, e, f) {\n var g = b(\"Run\"), h = b(\"UserAgent\"), i = b(\"Vector\"), j = 100;\n function k(q) {\n if (((q === \"viewport\"))) {\n return i.getViewportDimensions().y;\n }\n ;\n ;\n return q;\n };\n;\n var l = false, m = false;\n function n() {\n if (m) {\n return;\n }\n ;\n ;\n g.onLeave(o);\n m = true;\n };\n;\n function o() {\n l = false;\n m = false;\n };\n;\n var p = {\n run: function(q, r, s) {\n n();\n if (((!l || ((h.ie() <= 8))))) {\n r();\n return;\n }\n ;\n ;\n var t = q.offsetHeight;\n r();\n var u = q.offsetHeight, v = i.getScrollPosition().y, w = i.getElementPosition(q).y;\n if (((((((u !== t)) && ((w < v)))) && ((((w + t)) < ((v + k(((s || j)))))))))) {\n window.JSBNG__scrollBy(0, ((u - t)));\n }\n ;\n ;\n },\n enable: function() {\n l = true;\n }\n };\n e.exports = p;\n});\n__d(\"legacy:ui-scrolling-pager-js\", [\"ScrollingPager\",], function(a, b, c, d) {\n a.ScrollingPager = b(\"ScrollingPager\");\n}, 3);\n__d(\"ButtonGroup\", [\"function-extensions\",\"copyProperties\",\"createArrayFrom\",\"JSBNG__CSS\",\"DataStore\",\"Parent\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"copyProperties\"), h = b(\"createArrayFrom\"), i = b(\"JSBNG__CSS\"), j = b(\"DataStore\"), k = b(\"Parent\"), l = \"firstItem\", m = \"lastItem\";\n function n(s, t) {\n var u = k.byClass(s, t);\n if (!u) {\n throw new Error(\"invalid use case\");\n }\n ;\n ;\n return u;\n };\n;\n function o(s) {\n return ((i.shown(s) && h(s.childNodes).some(i.shown)));\n };\n;\n function p(s) {\n var t, u, v;\n h(s.childNodes).forEach(function(w) {\n v = o(w);\n i.removeClass(w, l);\n i.removeClass(w, m);\n i.conditionShow(w, v);\n if (v) {\n t = ((t || w));\n u = w;\n }\n ;\n ;\n });\n ((t && i.addClass(t, l)));\n ((u && i.addClass(u, m)));\n i.conditionShow(s, t);\n };\n;\n function q(s, t) {\n var u = n(t, \"uiButtonGroupItem\");\n s(u);\n p(u.parentNode);\n };\n;\n function r(s) {\n this._root = n(s, \"uiButtonGroup\");\n j.set(this._root, \"ButtonGroup\", this);\n p(this._root);\n };\n;\n r.getInstance = function(s) {\n var t = n(s, \"uiButtonGroup\"), u = j.get(t, \"ButtonGroup\");\n return ((u || new r(t)));\n };\n g(r.prototype, {\n hideItem: q.curry(i.hide),\n showItem: q.curry(i.show),\n toggleItem: q.curry(i.toggle)\n });\n e.exports = r;\n});\n__d(\"ButtonGroupMonitor\", [\"ContextualDialog\",\"ContextualLayer\",\"JSBNG__CSS\",\"Layer\",\"Parent\",\"SelectorDeprecated\",], function(a, b, c, d, e, f) {\n var g = b(\"ContextualDialog\"), h = b(\"ContextualLayer\"), i = b(\"JSBNG__CSS\"), j = b(\"Layer\"), k = b(\"Parent\"), l = b(\"SelectorDeprecated\");\n function m(n) {\n var o = ((k.byClass(n, \"bg_stat_elem\") || k.byClass(n, \"uiButtonGroup\")));\n ((o && i.toggleClass(o, \"uiButtonGroupActive\")));\n };\n;\n j.subscribe([\"hide\",\"show\",], function(n, o) {\n if (((((o instanceof h)) || ((o instanceof g))))) {\n m(o.getCausalElement());\n }\n ;\n ;\n });\n l.subscribe([\"close\",\"open\",], function(n, o) {\n m(o.selector);\n });\n});"); |
| // 11513 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o27,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y3/r/8VWsK8lNjX5.js",o123); |
| // undefined |
| o27 = null; |
| // undefined |
| o123 = null; |
| // 11534 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_413[0](false); |
| // 11564 |
| fpc.call(JSBNG_Replay.s5f7fb1571d9ddaabf0918a66ba121ad96869441c_256[0], o124,undefined); |
| // undefined |
| o124 = null; |
| // 11770 |
| fpc.call(JSBNG_Replay.s1da4c91f736d950de61ac9962e5a050e9ae4a4ed_104[0], o118,undefined); |
| // undefined |
| o118 = null; |
| // 11771 |
| JSBNG_Replay.s1406cdb8f82a4497c9e210b291001f76845e62bf_379[0](false); |
| // 11778 |
| o19.readyState = 2; |
| // 11776 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o136,o125); |
| // undefined |
| o125 = null; |
| // 11782 |
| o19.readyState = 3; |
| // 11780 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o136,o127); |
| // undefined |
| o127 = null; |
| // 11784 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o136,o146); |
| // undefined |
| o146 = null; |
| // 11788 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o136,o147); |
| // undefined |
| o147 = null; |
| // 11794 |
| o19.readyState = 4; |
| // undefined |
| o19 = null; |
| // 11834 |
| o150.toString = f81632121_1344; |
| // undefined |
| o150 = null; |
| // 11843 |
| o151.hasOwnProperty = f81632121_1662; |
| // undefined |
| o151 = null; |
| // 11792 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o136,o148); |
| // undefined |
| o136 = null; |
| // undefined |
| o148 = null; |
| // 11920 |
| o18.readyState = 2; |
| // 11918 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o102,o149); |
| // undefined |
| o149 = null; |
| // 11924 |
| o18.readyState = 3; |
| // 11922 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o102,o152); |
| // undefined |
| o152 = null; |
| // 11926 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o102,o153); |
| // undefined |
| o153 = null; |
| // 11932 |
| o18.readyState = 4; |
| // undefined |
| o18 = null; |
| // 11972 |
| o156.toString = f81632121_1344; |
| // undefined |
| o156 = null; |
| // 11980 |
| o157.hasOwnProperty = f81632121_1662; |
| // undefined |
| o157 = null; |
| // 11930 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o102,o154); |
| // undefined |
| o102 = null; |
| // undefined |
| o154 = null; |
| // 12118 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"ywV7J\",]);\n}\n;\n__d(\"CensorLogger\", [\"Event\",\"Banzai\",\"DOM\",\"debounce\",\"ge\",\"Keys\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Banzai\"), i = b(\"DOM\"), j = b(\"debounce\"), k = b(\"ge\"), l = ((10 * 60) * 1000), m = b(\"Keys\").RETURN, n = function(q) {\n var r = ((q.target || q.srcElement)).id, s = ((q.target || q.srcElement)).value.trim().length, t = o.tracker(r);\n if (!t) {\n return\n };\n if (((s > 5) && !t.submitted)) {\n if (((t.type == \"comment\") && (t.parent_fbid == \"unknown\"))) {\n if (!o.syncTrackerWithForm(r)) {\n o.snowliftSync(r);\n };\n t = o.tracker(r);\n }\n ;\n h.post(\"censorlogger\", {\n impid: t.impid,\n clearcounter: t.clearcounter,\n instrument: t.type,\n elementid: r,\n parent_fbid: (((t.parent_fbid == \"unknown\") ? null : t.parent_fbid)),\n version: \"original\"\n }, h.VITAL);\n o.setSubmitted(r, true);\n }\n else if ((((s === 0) && t.submitted) && (q.which != m))) {\n o.debouncers[r] = p(r);\n o.debouncers[r]();\n }\n else if (((s > 0) && t.submitted)) {\n if (o.debouncers[r]) {\n o.debouncers[r].reset();\n }\n }\n \n ;\n }, o = {\n init: function(q) {\n this.impressionID = q;\n for (var r in this.trackedElements) {\n if (!k(r)) {\n this.stopTracking(r);\n };\n };\n for (var s in this.unmatchedForms) {\n if (!k(s)) {\n delete this.unmatchedForms[s];\n };\n };\n },\n trackElement: function(q, r, s) {\n var t, u, v;\n this.debouncers = (this.debouncers || {\n });\n this.trackedElements = (this.trackedElements || {\n });\n this.unmatchedForms = (this.unmatchedForms || {\n });\n r = r.toLowerCase();\n if ((r == \"composer\")) {\n t = ((s ? i.find(q, \"div.uiMetaComposerMessageBox textarea.input\") : i.find(q, \"div.uiComposerMessageBox textarea.input\")));\n u = i.find(q, \"form.attachmentForm\");\n var w = i.scry(q, \"input[name=\\\"xhpc_targetid\\\"]\")[0];\n if (w) {\n v = w.value;\n };\n }\n else if ((r == \"comment\")) {\n t = i.find(q, \"div.commentBox textarea.textInput\");\n }\n ;\n if ((t == null)) {\n return\n };\n var x = i.getID(t);\n if (u) {\n this.addJoinTableInfoToForm(u, i.getID(t));\n };\n g.listen(t, \"keyup\", n.bind(this));\n this.trackedElements[x] = {\n submitted: false,\n clearcounter: 0,\n type: r,\n impid: this.impressionID,\n parent_fbid: (v || \"unknown\"),\n formID: ((u ? i.getID(u) : null))\n };\n if ((r == \"comment\")) {\n this.syncTrackerWithForm(x);\n };\n },\n registerForm: function(q, r) {\n this.unmatchedForms = (this.unmatchedForms || {\n });\n this.unmatchedForms[q] = r;\n },\n syncTrackerWithForm: function(q) {\n for (var r in this.unmatchedForms) {\n var s = k(r);\n if (s) {\n var t = i.scry(s, \"div.commentBox textarea.textInput\")[0];\n if (t) {\n var u = i.getID(t);\n if ((u && (u == q))) {\n this.trackedElements[q].parent_fbid = this.unmatchedForms[r];\n this.trackedElements[q].formID = r;\n this.addJoinTableInfoToForm(s, q);\n delete this.unmatchedForms[r];\n return true;\n }\n ;\n }\n ;\n }\n ;\n };\n return false;\n },\n snowliftSync: function(q) {\n var r, s = k(q);\n if ((s && (r = i.scry(s, \"^.fbPhotosSnowboxFeedbackInput\")[0]))) {\n var t = i.find(r, \"input[name=\\\"feedback_params\\\"]\"), u = JSON.parse(t.value).target_fbid;\n this.trackedElements[q].parent_fbid = u;\n this.trackedElements[q].formID = r.id;\n this.addJoinTableInfoToForm(r, q);\n return true;\n }\n ;\n return false;\n },\n stopTracking: function(q) {\n delete this.trackedElements[q];\n if (this.debouncers[q]) {\n this.debouncers[q].reset();\n delete this.debouncers[q];\n }\n ;\n },\n tracker: function(q) {\n return this.trackedElements[q];\n },\n getSubmitted: function(q) {\n return ((this.trackedElements[q] ? this.trackedElements[q].submitted : false));\n },\n setSubmitted: function(q, r) {\n if (this.trackedElements[q]) {\n this.trackedElements[q].submitted = r;\n };\n },\n incrementClearCounter: function(q) {\n if (!this.tracker(q)) {\n return\n };\n this.trackedElements[q].clearcounter++;\n this.trackedElements[q].submitted = false;\n var r = i.scry(k(this.trackedElements[q].formID), \"input[name=\\\"clp\\\"]\")[0];\n if (r) {\n r.value = JSON.stringify({\n censorlogger_impid: this.trackedElements[q].impid,\n clearcounter: this.trackedElements[q].clearcounter,\n element_id: q\n });\n };\n },\n addJoinTableInfoToForm: function(q, r) {\n i.prependContent(q, i.create(\"input\", {\n type: \"hidden\",\n name: \"clp\",\n value: JSON.stringify({\n censorlogger_impid: this.impressionID,\n clearcounter: 0,\n element_id: r,\n version: \"original\"\n })\n }));\n }\n }, p = function(q) {\n return j(function() {\n o.incrementClearCounter(q);\n }, l, o);\n };\n e.exports = o;\n});"); |
| // 12119 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"sb07b886257ccef0f1a7b671b3a82a783aa23d43f"); |
| // 12120 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"ywV7J\",]);\n}\n;\n;\n__d(\"CensorLogger\", [\"JSBNG__Event\",\"Banzai\",\"DOM\",\"debounce\",\"ge\",\"Keys\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Banzai\"), i = b(\"DOM\"), j = b(\"debounce\"), k = b(\"ge\"), l = ((((10 * 60)) * 1000)), m = b(\"Keys\").RETURN, n = function(q) {\n var r = ((q.target || q.srcElement)).id, s = ((q.target || q.srcElement)).value.trim().length, t = o.tracker(r);\n if (!t) {\n return;\n }\n ;\n ;\n if (((((s > 5)) && !t.submitted))) {\n if (((((t.type == \"comment\")) && ((t.parent_fbid == \"unknown\"))))) {\n if (!o.syncTrackerWithForm(r)) {\n o.snowliftSync(r);\n }\n ;\n ;\n t = o.tracker(r);\n }\n ;\n ;\n h.post(\"censorlogger\", {\n impid: t.impid,\n clearcounter: t.clearcounter,\n instrument: t.type,\n elementid: r,\n parent_fbid: ((((t.parent_fbid == \"unknown\")) ? null : t.parent_fbid)),\n version: \"original\"\n }, h.VITAL);\n o.setSubmitted(r, true);\n }\n else if (((((((s === 0)) && t.submitted)) && ((q.which != m))))) {\n o.debouncers[r] = p(r);\n o.debouncers[r]();\n }\n else if (((((s > 0)) && t.submitted))) {\n if (o.debouncers[r]) {\n o.debouncers[r].reset();\n }\n ;\n }\n \n \n ;\n ;\n }, o = {\n init: function(q) {\n this.impressionID = q;\n {\n var fin228keys = ((window.top.JSBNG_Replay.forInKeys)((this.trackedElements))), fin228i = (0);\n var r;\n for (; (fin228i < fin228keys.length); (fin228i++)) {\n ((r) = (fin228keys[fin228i]));\n {\n if (!k(r)) {\n this.stopTracking(r);\n }\n ;\n ;\n };\n };\n };\n ;\n {\n var fin229keys = ((window.top.JSBNG_Replay.forInKeys)((this.unmatchedForms))), fin229i = (0);\n var s;\n for (; (fin229i < fin229keys.length); (fin229i++)) {\n ((s) = (fin229keys[fin229i]));\n {\n if (!k(s)) {\n delete this.unmatchedForms[s];\n }\n ;\n ;\n };\n };\n };\n ;\n },\n trackElement: function(q, r, s) {\n var t, u, v;\n this.debouncers = ((this.debouncers || {\n }));\n this.trackedElements = ((this.trackedElements || {\n }));\n this.unmatchedForms = ((this.unmatchedForms || {\n }));\n r = r.toLowerCase();\n if (((r == \"composer\"))) {\n t = ((s ? i.JSBNG__find(q, \"div.uiMetaComposerMessageBox textarea.input\") : i.JSBNG__find(q, \"div.uiComposerMessageBox textarea.input\")));\n u = i.JSBNG__find(q, \"form.attachmentForm\");\n var w = i.scry(q, \"input[name=\\\"xhpc_targetid\\\"]\")[0];\n if (w) {\n v = w.value;\n }\n ;\n ;\n }\n else if (((r == \"comment\"))) {\n t = i.JSBNG__find(q, \"div.commentBox textarea.textInput\");\n }\n \n ;\n ;\n if (((t == null))) {\n return;\n }\n ;\n ;\n var x = i.getID(t);\n if (u) {\n this.addJoinTableInfoToForm(u, i.getID(t));\n }\n ;\n ;\n g.listen(t, \"keyup\", n.bind(this));\n this.trackedElements[x] = {\n submitted: false,\n clearcounter: 0,\n type: r,\n impid: this.impressionID,\n parent_fbid: ((v || \"unknown\")),\n formID: ((u ? i.getID(u) : null))\n };\n if (((r == \"comment\"))) {\n this.syncTrackerWithForm(x);\n }\n ;\n ;\n },\n registerForm: function(q, r) {\n this.unmatchedForms = ((this.unmatchedForms || {\n }));\n this.unmatchedForms[q] = r;\n },\n syncTrackerWithForm: function(q) {\n {\n var fin230keys = ((window.top.JSBNG_Replay.forInKeys)((this.unmatchedForms))), fin230i = (0);\n var r;\n for (; (fin230i < fin230keys.length); (fin230i++)) {\n ((r) = (fin230keys[fin230i]));\n {\n var s = k(r);\n if (s) {\n var t = i.scry(s, \"div.commentBox textarea.textInput\")[0];\n if (t) {\n var u = i.getID(t);\n if (((u && ((u == q))))) {\n this.trackedElements[q].parent_fbid = this.unmatchedForms[r];\n this.trackedElements[q].formID = r;\n this.addJoinTableInfoToForm(s, q);\n delete this.unmatchedForms[r];\n return true;\n }\n ;\n ;\n }\n ;\n ;\n }\n ;\n ;\n };\n };\n };\n ;\n return false;\n },\n snowliftSync: function(q) {\n var r, s = k(q);\n if (((s && (r = i.scry(s, \"^.fbPhotosSnowboxFeedbackInput\")[0])))) {\n var t = i.JSBNG__find(r, \"input[name=\\\"feedback_params\\\"]\"), u = JSON.parse(t.value).target_fbid;\n this.trackedElements[q].parent_fbid = u;\n this.trackedElements[q].formID = r.id;\n this.addJoinTableInfoToForm(r, q);\n return true;\n }\n ;\n ;\n return false;\n },\n stopTracking: function(q) {\n delete this.trackedElements[q];\n if (this.debouncers[q]) {\n this.debouncers[q].reset();\n delete this.debouncers[q];\n }\n ;\n ;\n },\n tracker: function(q) {\n return this.trackedElements[q];\n },\n getSubmitted: function(q) {\n return ((this.trackedElements[q] ? this.trackedElements[q].submitted : false));\n },\n setSubmitted: function(q, r) {\n if (this.trackedElements[q]) {\n this.trackedElements[q].submitted = r;\n }\n ;\n ;\n },\n incrementClearCounter: function(q) {\n if (!this.tracker(q)) {\n return;\n }\n ;\n ;\n this.trackedElements[q].clearcounter++;\n this.trackedElements[q].submitted = false;\n var r = i.scry(k(this.trackedElements[q].formID), \"input[name=\\\"clp\\\"]\")[0];\n if (r) {\n r.value = JSON.stringify({\n censorlogger_impid: this.trackedElements[q].impid,\n clearcounter: this.trackedElements[q].clearcounter,\n element_id: q\n });\n }\n ;\n ;\n },\n addJoinTableInfoToForm: function(q, r) {\n i.prependContent(q, i.create(\"input\", {\n type: \"hidden\",\n JSBNG__name: \"clp\",\n value: JSON.stringify({\n censorlogger_impid: this.impressionID,\n clearcounter: 0,\n element_id: r,\n version: \"original\"\n })\n }));\n }\n }, p = function(q) {\n return j(function() {\n o.incrementClearCounter(q);\n }, l, o);\n };\n e.exports = o;\n});"); |
| // 12127 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o155,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yt/r/wyUJpAs1Jud.js",o158); |
| // undefined |
| o155 = null; |
| // undefined |
| o158 = null; |
| // 12132 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"gyG67\",]);\n}\n;\n__d(\"FullScreen\", [\"Event\",\"Arbiter\",\"CSS\",\"UserAgent\",\"copyProperties\",\"throttle\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Arbiter\"), i = b(\"CSS\"), j = b(\"UserAgent\"), k = b(\"copyProperties\"), l = b(\"throttle\"), m = {\n }, n = k(new h(), {\n listenForEvent: function(p) {\n var q = l(this.onChange, 0, this);\n if (!m[p.id]) {\n m[p.id] = true;\n g.listen(p, {\n webkitfullscreenchange: q,\n mozfullscreenchange: q,\n fullscreenchange: q\n });\n }\n ;\n },\n enableFullScreen: function(p) {\n this.listenForEvent(p);\n if (p.webkitRequestFullScreen) {\n if (j.chrome()) {\n p.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT);\n }\n else p.webkitRequestFullScreen();\n ;\n }\n else if (p.mozRequestFullScreen) {\n p.mozRequestFullScreen();\n }\n else if (p.requestFullScreen) {\n p.requestFullScreen();\n }\n else return false\n \n \n ;\n return true;\n },\n disableFullScreen: function() {\n if (document.webkitCancelFullScreen) {\n document.webkitCancelFullScreen();\n }\n else if (document.mozCancelFullScreen) {\n document.mozCancelFullScreen();\n }\n else if (document.cancelFullScreen) {\n document.cancelFullScreen();\n }\n else if (document.exitFullScreen) {\n document.exitFullScreen();\n }\n else return false\n \n \n \n ;\n return true;\n },\n isFullScreen: function() {\n return (((document.webkitIsFullScreen || document.fullScreen) || document.mozFullScreen));\n },\n toggleFullScreen: function(p) {\n if (this.isFullScreen()) {\n this.disableFullScreen();\n return false;\n }\n else return this.enableFullScreen(p)\n ;\n return false;\n },\n onChange: function() {\n var p = this.isFullScreen();\n i.conditionClass(document.body, \"fullScreen\", p);\n this.inform(\"changed\");\n },\n isSupported: function() {\n return (((((document.webkitCancelFullScreen && j.chrome())) || document.mozCancelFullScreen) || document.cancelFullScreen) || document.exitFullScreen);\n }\n }), o = l(n.onChange, 0, n);\n g.listen(document, {\n webkitfullscreenchange: o,\n mozfullscreenchange: o,\n fullscreenchange: o\n });\n e.exports = n;\n});\n__d(\"ImageUtils\", [\"UserAgent\",], function(a, b, c, d, e, f) {\n var g = b(\"UserAgent\"), h = {\n hasLoaded: function(i) {\n if ((i.naturalWidth !== undefined)) {\n return (i.complete && (i.width !== 0));\n }\n else if ((((i.height == 20) && (i.width == 20)) && i.complete)) {\n return false;\n }\n else if (((i.complete === undefined) && (g.webkit() < 500))) {\n var j = new Image();\n j.src = i.src;\n return j.complete;\n }\n \n \n ;\n return i.complete;\n }\n };\n e.exports = h;\n});\n__d(\"PhotoEverstoreLogger\", [\"Event\",\"AsyncRequest\",\"copyProperties\",\"ImageUtils\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"AsyncRequest\"), i = b(\"copyProperties\"), j = b(\"ImageUtils\"), k = {\n BATCH_WINDOW_MS: 500,\n storedLog: []\n };\n function l() {\n \n };\n i(l, {\n _log: function(n) {\n k.storedLog.push(n);\n if ((k.storedLog.length == 1)) {\n setTimeout(m, k.BATCH_WINDOW_MS, false);\n };\n },\n logImmediately: function(n) {\n l._log(n);\n },\n registerForLogging: function(n) {\n if (j.hasLoaded(n)) {\n l._log(n.src);\n }\n else g.listen(n, \"load\", function(event) {\n l._log(n.src);\n });\n ;\n }\n });\n function m() {\n var n = k.storedLog;\n k.storedLog = [];\n var o = JSON.stringify(n);\n new h().setURI(\"/ajax/photos/logging/everstore_logging.php\").setData({\n loggedUrls: o\n }).setMethod(\"POST\").setOption(\"suppressErrorHandlerWarning\", true).setOption(\"suppressErrorAlerts\", true).send();\n };\n e.exports = l;\n});\n__d(\"PhotoSessionLog\", [\"AsyncRequest\",\"Run\",\"Vector\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"Run\"), i = b(\"Vector\"), j = b(\"copyProperties\");\n function k() {\n \n };\n j(k, {\n UNKNOWN: 0,\n ESC: 1,\n X: 2,\n OUTSIDE: 3,\n UNLOAD: 4,\n NAVIGATE: 5,\n AGGREGATE: 6,\n LEAVE: 7,\n PERMALINK: 0,\n SNOWLIFT: 6,\n AGGREGATION_COUNT: 20,\n set: null,\n time: null,\n views: 0,\n fbidList: [],\n details: {\n },\n width: 0,\n height: 0,\n first: false,\n last: false,\n logIds: false,\n version: null,\n source: null,\n buttonLikes: 0,\n pagingAction: \"\",\n faceTagImpressions: 0,\n cycle: false,\n endOfRelevant: false,\n relevantCount: 0,\n initLogging: function(l) {\n this.set = null;\n this.time = new Date();\n this.views = 0;\n this.hiResLoads = 0;\n this.fullScreenViews = {\n };\n this.first = true;\n this.last = false;\n this.logIds = false;\n this.version = l;\n this.buttonLikes = 0;\n this.pagingAction = \"\";\n this.faceTagImpressions = 0;\n this.cycle = false;\n this.endOfRelevant = false;\n this.relevantCount = 0;\n if ((l === k.SNOWLIFT)) {\n var m = i.getViewportDimensions();\n this.width = m.x;\n this.height = m.y;\n }\n ;\n },\n setLogFbids: function(l) {\n this.logIds = l;\n },\n setPhotoSet: function(l) {\n this.set = l;\n },\n addButtonLike: function() {\n this.buttonLikes++;\n },\n setPagingAction: function(l) {\n this.pagingAction = l;\n },\n addFaceTagImpression: function() {\n this.faceTagImpressions++;\n },\n setCycle: function(l) {\n this.cycle = l;\n },\n setEndOfRelevant: function(l) {\n this.endOfRelevant = l;\n },\n setRelevantCount: function(l) {\n this.relevantCount = l;\n },\n setEndMetrics: function(l) {\n this.endMetrics = l;\n },\n setSource: function(l) {\n this.source = l;\n },\n addPhotoView: function(l, m, n) {\n if ((this.logIds && (this.views >= this.AGGREGATION_COUNT))) {\n this.logPhotoViews(this.AGGREGATE);\n };\n this.views++;\n if (l) {\n this.fbidList.push([l.fbid,l.owner,Date.now(),]);\n };\n if (m) {\n this.hiResLoads++;\n };\n if (n) {\n this.fullScreenViews[l.fbid] = true;\n };\n },\n logEnterFullScreen: function(l) {\n this.fullScreenViews[l] = true;\n },\n addDetailData: function(l, m) {\n if (!this.details[l]) {\n this.details[l] = {\n t: m.num_tags,\n l: m.has_location,\n c: m.has_caption,\n cm: m.comment_count,\n lk: m.like_count,\n w: m.width,\n h: m.height,\n ad: \"{}\",\n p: this.pagingAction\n };\n };\n },\n updateAdData: function(l, m) {\n if (this.details[l]) {\n this.details[l].ad = JSON.stringify(m);\n };\n },\n logPhotoViews: function(l) {\n if (((!this.views) || (((this.version === k.SNOWLIFT) && (l == k.LEAVE))))) {\n return\n };\n if ((l != this.AGGREGATE)) {\n this.last = true;\n };\n var m = {\n set: this.set,\n time: (new Date() - this.time),\n fbids: (this.logIds ? this.fbidList : []),\n details: (this.logIds ? this.details : {\n }),\n first: this.first,\n last: this.last,\n close: (l ? l : this.UNKNOWN),\n button_likes: this.buttonLikes,\n version: this.version,\n face_imp: this.faceTagImpressions,\n endmetric: this.endMetrics,\n cycle: this.cycle,\n end_relev: this.endOfRelevant,\n relev_count: this.relevantCount,\n source: this.source\n };\n if ((this.version === k.SNOWLIFT)) {\n var n = i.getViewportDimensions();\n m.width = (n.x || this.width);\n m.height = (n.y || this.height);\n if ((this.hiResLoads > 0)) {\n m.hires_loads = this.hiResLoads;\n };\n if (this.last) {\n var o = Object.keys(this.fullScreenViews).length;\n if ((o > 0)) {\n m.fullscreen = o;\n };\n }\n ;\n }\n ;\n new g().setURI(\"/ajax/photos/logging/session_logging.php\").setAllowCrossPageTransition(true).setOption(\"asynchronous\", ((l != k.UNLOAD))).setOption(\"suppressErrorHandlerWarning\", true).setData(m).send();\n this.views = 0;\n this.hiResLoads = 0;\n this.fbidList = [];\n this.details = {\n };\n this.first = false;\n this.buttonLikes = 0;\n if (this.last) {\n this.set = null;\n this.logIds = false;\n this.fullScreenViews = {\n };\n }\n ;\n }\n });\n h.onUnload(function() {\n k.logPhotoViews(k.UNLOAD);\n });\n h.onLeave(function() {\n k.logPhotoViews(k.LEAVE);\n });\n e.exports = k;\n});\n__d(\"PhotoViewerImage\", [\"PhotoEverstoreLogger\",\"URI\",\"Vector\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"PhotoEverstoreLogger\"), h = b(\"URI\"), i = b(\"Vector\"), j = b(\"copyProperties\");\n function k(l) {\n this._hiResDimensions = (l.hiResDimensions && i.deserialize(l.hiResDimensions));\n this._normalDimensions = (l.normalDimensions && i.deserialize(l.normalDimensions));\n this._info = l.info;\n this._video = l.video;\n this._shouldLog = l.everstoreLogThis;\n this._hiResSrc = l.hiResSrc;\n this._normalSrc = l.normalSrc;\n this._thumbSrc = l.thumbSrc;\n this._isInverted = false;\n this._data = l;\n };\n j(k.prototype, {\n getURIString: function() {\n return h(this._info.permalink).getUnqualifiedURI().toString();\n },\n hasHiResDimensions: function() {\n return !!this._hiResDimensions;\n },\n getHiResDimensions: function() {\n return this._hiResDimensions;\n },\n getNormalDimensions: function() {\n return this._normalDimensions;\n },\n getHiResSrc: function() {\n return this._hiResSrc;\n },\n getNormalSrc: function() {\n return this._normalSrc;\n },\n getThumbSrc: function() {\n return this._thumbSrc;\n },\n getInfo: function() {\n return this._info;\n },\n getPermalink: function() {\n return this._info.permalink;\n },\n getHighestResSrc: function() {\n return (this._hiResSrc || this._normalSrc);\n },\n preload: function(l) {\n if (this.getHighestResSrc()) {\n if ((l && !this._resource)) {\n this._resource = new Image();\n this._resource.src = this.getHighestResSrc();\n if (this._shouldLog) {\n g.logImmediately(this._resource.src);\n };\n }\n else if ((!l && !this._small)) {\n this._small = new Image();\n this._small.src = (this._normalSrc || this._hiResSrc);\n if (this._shouldLog) {\n g.logImmediately(this._small.src);\n };\n }\n \n \n };\n },\n setNormalDimensions: function(l, m) {\n this._normalDimensions = new i(l, m);\n },\n setHiResDimensions: function(l, m) {\n this._hiResDimensions = new i(l, m);\n },\n invertDimensions: function() {\n if (this.hasHiResDimensions()) {\n this._hiResDimensions = new i(this._hiResDimensions.y, this._hiResDimensions.x);\n };\n this._normalDimensions = new i(this._normalDimensions.y, this._normalDimensions.x);\n this._isInverted = !this._isInverted;\n },\n copy: function() {\n return new k(this._data);\n }\n });\n e.exports = k;\n});\n__d(\"PhotosConst\", [], function(a, b, c, d, e, f) {\n var g = {\n VIEWER_PERMALINK: 0,\n VIEWER_SNOWLIFT: 6,\n VIEWER_VAULTBOX: 8,\n BULK_EDITOR: 3,\n FLASH_UPLOADER: 4,\n HTML5_UPLOADER: 10,\n SIZE_NORMAL: \"n\",\n PIC_NORMAL_FBX_SIZE: 180\n };\n e.exports = g;\n});\n__d(\"PhotosUtils\", [\"copyProperties\",\"Vector\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"Vector\");\n function i() {\n \n };\n g(i, {\n getNearestBox: function(j, k) {\n var l = Infinity, m = null;\n for (var n in j) {\n var o = j[n];\n if (o.contains(k)) {\n var p = k.distanceTo(o.getCenter());\n if ((p < l)) {\n l = p;\n m = n;\n }\n ;\n }\n ;\n };\n return m;\n },\n absoluteToNormalizedPosition: function(j, k) {\n var l = h.getElementPosition(j), m = h.getElementDimensions(j), n = k.sub(l).mul((100 / m.x), (100 / m.y));\n n.domain = \"pure\";\n return n;\n },\n normalizedToAbsolutePosition: function(j, k) {\n var l = h.getElementPosition(j), m = h.getElementDimensions(j), n = k.mul((m.x / 100), (m.y / 100)).add(l);\n n.domain = \"document\";\n return n;\n },\n isFacebox: function(j) {\n return j.match(/^face:/);\n },\n isTag: function(j) {\n return j.match(/^tag:/);\n }\n });\n e.exports = i;\n});\n__d(\"PhotoStreamCache\", [\"DOM\",\"HTML\",\"PhotosConst\",\"PhotoEverstoreLogger\",\"PhotoViewerImage\",\"Rect\",\"UIPagelet\",\"URI\",\"Vector\",\"copyProperties\",\"createArrayFrom\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"HTML\"), i = b(\"PhotosConst\"), j = b(\"PhotoEverstoreLogger\"), k = b(\"PhotoViewerImage\"), l = b(\"Rect\"), m = b(\"UIPagelet\"), n = b(\"URI\"), o = b(\"Vector\"), p = b(\"copyProperties\"), q = b(\"createArrayFrom\"), r = b(\"ge\");\n function s() {\n \n };\n p(s, {\n ERROR: \"error\",\n HTML: \"html\",\n IMAGE_DATA: \"image\",\n EXTRA: \"extra\",\n BUFFER_SIZE: 3,\n INIT_BUCKET_SIZE: 4,\n FULL_BUCKET_SIZE: 12,\n ERROR_ID: -1,\n INIT_PLACEHOLDER: 1\n });\n p(s.prototype, {\n init: function(t, u, v) {\n this.version = t;\n this.pageletName = u;\n this.pageletRootID = v;\n this.bufferSize = s.BUFFER_SIZE;\n this.fullBucketSize = s.FULL_BUCKET_SIZE;\n this.initError = false;\n this.isActive = true;\n this.usesOpaqueCursor = false;\n this.usesNonCircularPhotoSet = false;\n this.reachedLeftEnd = false;\n this.reachedRightEnd = false;\n this.leftLock = false;\n this.rightLock = false;\n this.useAjaxPipe = true;\n this.reset();\n },\n getUsesOpaqueCursor: function() {\n return this.usesOpaqueCursor;\n },\n isNonCircularPhotoSet: function() {\n return this.usesNonCircularPhotoSet;\n },\n setReachedLeftEnd: function() {\n this.reachedLeftEnd = true;\n },\n setReachedRightEnd: function() {\n this.reachedRightEnd = true;\n },\n hasReachedLeftEnd: function() {\n return this.reachedLeftEnd;\n },\n hasReachedRightEnd: function() {\n return this.reachedRightEnd;\n },\n nonCircularPhotoSetCanPage: function(t) {\n if (!this.isNonCircularPhotoSet()) {\n return true\n };\n if ((t < 0)) {\n return (this.getCursorPos() || !this.hasReachedLeftEnd())\n };\n if ((t > 0)) {\n return ((((this.getLength() - 1) != this.getCursorPos())) || !this.hasReachedRightEnd())\n };\n return true;\n },\n setUseAjaxPipe: function(t) {\n this.useAjaxPipe = t;\n },\n reset: function() {\n this.cache = {\n image: {\n },\n extra: {\n },\n html: {\n }\n };\n this.fbidList = [];\n this.loaded = false;\n this.allLoaded = false;\n this.permalinkMap = {\n };\n this.position = 0;\n this.totalCount = null;\n this.firstCursor = null;\n this.firstCursorIndex = null;\n this.firstOpaqueCursor = null;\n },\n waitForInitData: function() {\n this.fbidList.push(s.INIT_PLACEHOLDER);\n },\n destroy: function() {\n this.reset();\n this.isActive = false;\n },\n isLoaded: function() {\n return this.loaded;\n },\n canPage: function() {\n if (!this.isLoaded()) {\n return false\n };\n if ((this.totalCount !== null)) {\n return (this.totalCount > 1)\n };\n if (this.usesNonCircularPhotoSet) {\n return true\n };\n return (this.getLength() > 1);\n },\n errorInCurrent: function() {\n if (this.initError) {\n return true;\n }\n else if (!this.isLoaded()) {\n return false\n }\n ;\n return this.checkErrorAt(this.getCursor());\n },\n getLength: function() {\n return this.fbidList.length;\n },\n getPhotoSet: function() {\n return this.photoSetQuery.set;\n },\n getPhotoSetQuery: function() {\n return this.photoSetQuery;\n },\n getCurrentImageData: function() {\n return this.getImageData(this.getCursor());\n },\n getOpaqueCursor: function(t) {\n if (this.getImageData(t)) {\n if ((this.version === i.VIEWER_VAULTBOX)) {\n return this.getImageData(t).getInfo().opaquecursor\n };\n return this.getImageData(t).info.opaquecursor;\n }\n ;\n if ((t == this.firstCursor)) {\n return this.firstOpaqueCursor\n };\n return null;\n },\n getImageData: function(t) {\n return this.getCacheContent(t, s.IMAGE_DATA);\n },\n getCurrentHtml: function() {\n return this.getCacheContent(this.getCursor(), s.HTML);\n },\n getCurrentExtraData: function() {\n return this.getCacheContent(this.getCursor(), s.EXTRA);\n },\n getCacheContent: function(t, u) {\n if (((!t || (t === s.ERROR_ID)) || (t === s.INIT_PLACEHOLDER))) {\n return null\n };\n return this.cache[u][t];\n },\n getCursorPos: function() {\n return this.position;\n },\n getCursor: function() {\n if (((this.position >= 0) && (this.position < this.getLength()))) {\n return this.fbidList[this.position]\n };\n return null;\n },\n getCursorForURI: function(t) {\n return this.permalinkMap[t];\n },\n calculatePositionForMovement: function(t) {\n var u = (this.position + t);\n if (this.allLoaded) {\n var v = this.getLength();\n u = (((v + (u % v))) % v);\n }\n ;\n return u;\n },\n isValidMovement: function(t) {\n if ((!this.isLoaded() || !this.canPage())) {\n return false\n };\n var u = this.calculatePositionForMovement(t);\n return ((this.getCursor() > 0) || (((u >= 0) && (u < this.getLength()))));\n },\n moveCursor: function(t) {\n if (!this.isValidMovement(t)) {\n return\n };\n this.position = this.calculatePositionForMovement(t);\n if ((t !== 0)) {\n this.loadMoreIfNeccessary((t > 0));\n };\n },\n checkErrorAt: function(t) {\n if (!this.isLoaded()) {\n return false\n };\n if ((t === s.ERROR_ID)) {\n return true\n };\n return false;\n },\n getRelativeMovement: function(t) {\n for (var u = 0; (u < this.getLength()); u++) {\n if ((this.fbidList[u] == t)) {\n return (u - this.position)\n };\n };\n return null;\n },\n preloadImages: function(t) {\n var u, v, w = this.getLength(), x = this.cache.image, y = s.BUFFER_SIZE;\n if ((w > (y * 2))) {\n u = ((((this.position + w) - (y % w))) % w);\n v = (((this.position + y)) % w);\n }\n else {\n u = 0;\n v = (w - 1);\n }\n ;\n while ((u != v)) {\n var z = this.fbidList[u];\n if ((this.version === i.VIEWER_VAULTBOX)) {\n (x[z] && x[z].preload(t));\n }\n else if ((x[z] && x[z].url)) {\n if ((t && !x[z].resource)) {\n x[z].resource = new Image();\n x[z].resource.src = x[z].url;\n if ((x[z].everstoreLogThis === true)) {\n j.logImmediately(x[z].resource.src);\n };\n }\n else if ((!t && !x[z].small)) {\n x[z].small = new Image();\n x[z].small.src = (x[z].smallurl || x[z].url);\n if ((x[z].everstoreLogThis === true)) {\n j.logImmediately(x[z].small.src);\n };\n }\n \n \n }\n ;\n u = (((u + 1)) % w);\n };\n },\n loadMoreIfNeccessary: function(t) {\n if (((this.allLoaded || ((t && this.rightLock))) || ((!t && this.leftLock)))) {\n return\n };\n var u = (t ? 1 : -1), v = (this.position + (this.bufferSize * u));\n if (((v < 0) && !this.checkErrorAt(this.getEndCursor(false)))) {\n this.leftLock = true;\n this.fetch(this.fullBucketSize, false);\n }\n else if (((v > this.getLength()) && !this.checkErrorAt(this.getEndCursor(true)))) {\n this.rightLock = true;\n this.fetch(this.fullBucketSize, true);\n }\n \n ;\n },\n getEndCursor: function(t) {\n return (t ? this.fbidList[(this.getLength() - 1)] : this.fbidList[0]);\n },\n calculateRelativeIndex: function(t, u, v) {\n if (!this.totalCount) {\n return null\n };\n var w = this.fbidList.indexOf(u), x = this.fbidList.indexOf(v);\n if (((w === -1) || (x === -1))) {\n return null\n };\n var y = (x - w);\n return ((((t + y) + this.totalCount)) % this.totalCount);\n },\n calculateDistance: function(t, u) {\n var v = this.fbidList.indexOf(t), w = this.fbidList.indexOf(u);\n if (((v === -1) || (w === -1))) {\n return null\n };\n return ((((w - v) + this.getLength())) % this.getLength());\n },\n fetch: function(t, u) {\n var v = this.getEndCursor(u), w = p({\n cursor: v,\n version: this.version,\n end: this.getEndCursor(!u),\n fetchSize: (u ? t : (-1 * t)),\n relevant_count: this.relevantCount,\n opaqueCursor: this.getOpaqueCursor(v)\n }, this.photoSetQuery);\n if ((this.totalCount && (this.firstCursorIndex !== null))) {\n w.total = this.totalCount;\n w.cursorIndex = this.calculateRelativeIndex(this.firstCursorIndex, this.firstCursor, v);\n }\n ;\n var x = r(this.pageletRootID);\n if (!x) {\n x = g.create(\"div\", {\n id: this.pageletRootID\n });\n g.appendContent(document.body, x);\n }\n ;\n m.loadFromEndpoint(this.pageletName, x, w, {\n usePipe: this.useAjaxPipe,\n automatic: true,\n jsNonblock: true,\n crossPage: true\n });\n if (!this.useAjaxPipe) {\n this.setUseAjaxPipe(true);\n };\n },\n storeToCache: function(t) {\n var u = {\n };\n if (!this.isActive) {\n return u\n };\n if ((\"error\" in t)) {\n this.processErrorResult(t.error);\n u.error = true;\n return u;\n }\n ;\n if ((\"init\" in t)) {\n this.processInitResult(t.init);\n u.init = {\n logids: t.init.logids,\n fbid: t.init.fbid,\n loggedin: t.init.loggedin,\n fromad: t.init.fromad,\n disablesessionads: t.init.disablesessionads,\n flashtags: t.init.flashtags\n };\n }\n ;\n if ((\"image\" in t)) {\n this.processImageResult(t.image);\n u.image = true;\n }\n ;\n if ((\"data\" in t)) {\n this.processDataResult(t.data);\n u.data = true;\n }\n ;\n return u;\n },\n processInitResult: function(t) {\n if (this.loaded) {\n return\n };\n this.usesOpaqueCursor = t.usesopaquecursor;\n this.usesNonCircularPhotoSet = t.isnoncircularphotoset;\n this.loaded = true;\n this.photoSetQuery = t.query;\n if (t.bufferSize) {\n this.bufferSize = t.bufferSize;\n };\n if (t.fullBucketSize) {\n this.fullBucketSize = t.fullBucketSize;\n };\n if ((this.fbidList.length === 0)) {\n this.fbidList.push(t.fbid);\n this.rightLock = true;\n }\n else {\n var u = this.fbidList.indexOf(s.INIT_PLACEHOLDER);\n if ((u != -1)) {\n this.fbidList[u] = t.fbid;\n };\n }\n ;\n this.firstCursor = t.fbid;\n this.firstOpaqueCursor = t.opaquecursor;\n if (((\"initIndex\" in t) && (\"totalCount\" in t))) {\n this.firstCursorIndex = t.initIndex;\n this.totalCount = t.totalCount;\n }\n ;\n if ((this.version == i.VIEWER_PERMALINK)) {\n this.fetch(s.INIT_BUCKET_SIZE, true);\n };\n },\n processImageResult: function(t) {\n for (var u in t) {\n if (((u === this.firstCursor) && t[u].everstoreLogThis)) {\n j.logImmediately(t[u].url);\n };\n if ((this.version === i.VIEWER_VAULTBOX)) {\n var v = t[u];\n this.cache.image[u] = new k(v);\n this.permalinkMap[this.cache.image[u].getURIString()] = u;\n }\n else {\n this.cache.image[u] = t[u];\n if (t[u].dimensions) {\n this.cache.image[u].dimensions = o.deserialize(t[u].dimensions);\n };\n if (t[u].smalldims) {\n this.cache.image[u].smalldims = o.deserialize(t[u].smalldims);\n };\n this.permalinkMap[n(t[u].info.permalink).getUnqualifiedURI().toString()] = u;\n }\n ;\n };\n },\n attachToFbidsList: function(t, u, v) {\n if (this.allLoaded) {\n return\n };\n if ((u === -1)) {\n for (var w = (t.length - 1); (w >= 0); w--) {\n this.fbidList.unshift(t[w]);\n this.position++;\n };\n this.leftLock = false;\n }\n else {\n for (var x = 0; (x < t.length); x++) {\n this.fbidList.push(t[x]);;\n };\n this.rightLock = false;\n }\n ;\n if (v) {\n this.setAllLoaded();\n };\n },\n setAllLoaded: function() {\n this.allLoaded = true;\n if ((this.getCursor() === null)) {\n this.position = this.calculatePositionForMovement(0);\n };\n },\n processDataResult: function(t) {\n for (var u in t) {\n if (!this.cache.html[u]) {\n this.cache.html[u] = {\n };\n };\n for (var v in t[u].html) {\n var w = t[u].html[v];\n if ((typeof w === \"string\")) {\n w = h(w).getRootNode();\n };\n this.cache.html[u][v] = q(w.childNodes);\n };\n if (!((\"extra\" in t[u]))) {\n this.cache.extra[u] = null;\n continue;\n }\n ;\n this.cache.extra[u] = {\n tagRects: {\n }\n };\n if (!Array.isArray(t[u].extra.tagRects)) {\n for (var x in t[u].extra.tagRects) {\n if (t[u].extra.tagRects[x]) {\n this.cache.extra[u].tagRects[x] = l.deserialize(t[u].extra.tagRects[x]);\n };\n }\n };\n Object.keys(t[u].extra).forEach(function(y) {\n if ((y == \"tagRects\")) {\n return\n };\n this.cache.extra[u][y] = t[u].extra[y];\n }.bind(this));\n };\n },\n processErrorResult: function(t) {\n if (!this.isLoaded()) {\n this.initError = true;\n return;\n }\n ;\n var u = t.side, v = [s.ERROR_ID,];\n this.attachToFbidsList(v, u);\n },\n setTotalCount: function(t) {\n this.totalCount = t;\n },\n setFirstCursorIndex: function(t) {\n this.firstCursorIndex = t;\n }\n });\n e.exports = s;\n});\n__d(\"PhotoViewer\", [\"Bootloader\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Bootloader\"), h = b(\"copyProperties\"), i = b(\"emptyFunction\");\n function j() {\n this.image = null;\n this.root = null;\n this.stream = null;\n };\n h(j, {\n bootstrap: function(k, l) {\n g.loadModules([\"PhotoSnowlift\",], function(m) {\n m.bootstrap(k, l);\n });\n }\n });\n h(j.prototype, {\n getEventPrefix: i.thatReturnsNull,\n getEventString: function(k) {\n var l = this.getEventPrefix();\n if (l) {\n return ((l + \".\") + k)\n };\n return null;\n },\n getImage: function() {\n return this.image;\n },\n getPosition: function() {\n return (this.stream ? this.stream.getCursor() : null);\n },\n getRoot: function() {\n return this.root;\n },\n getSourceString: i.thatReturnsNull,\n getVersionConst: i.thatReturnsNull,\n getViewerSource: i.thatReturnsNull,\n getViewerSet: i.thatReturnsNull\n });\n e.exports = j;\n});\n__d(\"ManagedError\", [], function(a, b, c, d, e, f) {\n function g(h, i) {\n Error.prototype.constructor.call(this, h);\n this.message = h;\n this.innerError = i;\n };\n g.prototype = new Error();\n g.prototype.constructor = g;\n e.exports = g;\n});\n__d(\"AssertionError\", [\"ManagedError\",], function(a, b, c, d, e, f) {\n var g = b(\"ManagedError\");\n function h(i) {\n g.prototype.constructor.apply(this, arguments);\n };\n h.prototype = new g();\n h.prototype.constructor = h;\n e.exports = h;\n});\n__d(\"Assert\", [\"AssertionError\",\"sprintf\",], function(a, b, c, d, e, f) {\n var g = b(\"AssertionError\"), h = b(\"sprintf\");\n function i(n, o) {\n if (((typeof n !== \"boolean\") || !n)) {\n throw new g(o)\n };\n return n;\n };\n function j(n, o, p) {\n var q;\n if ((o === undefined)) {\n q = \"undefined\";\n }\n else if ((o === null)) {\n q = \"null\";\n }\n else {\n var r = Object.prototype.toString.call(o);\n q = /\\s(\\w*)/.exec(r)[1].toLowerCase();\n }\n \n ;\n i((n.indexOf(q) !== -1), (p || h(\"Expression is of type %s, not %s\", q, n)));\n return o;\n };\n function k(n, o, p) {\n i((o instanceof n), (p || \"Expression not instance of type\"));\n return o;\n };\n function l(n, o) {\n m[(\"is\" + n)] = o;\n m[(\"maybe\" + n)] = function(p, q) {\n if ((p != null)) {\n o(p, q);\n };\n };\n };\n var m = {\n isInstanceOf: k,\n isTrue: i,\n isTruthy: function(n, o) {\n return i(!!n, o);\n },\n type: j,\n define: function(n, o) {\n n = (n.substring(0, 1).toUpperCase() + n.substring(1).toLowerCase());\n l(n, function(p, q) {\n i(o(p), q);\n });\n }\n };\n [\"Array\",\"Boolean\",\"Date\",\"Function\",\"Null\",\"Number\",\"Object\",\"Regexp\",\"String\",\"Undefined\",].forEach(function(n) {\n l(n, j.bind(null, n.toLowerCase()));\n });\n e.exports = m;\n});"); |
| // 12133 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s2b2e6bc548a30a5306679fa35cdad18274145a8b"); |
| // 12134 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"gyG67\",]);\n}\n;\n;\n__d(\"FullScreen\", [\"JSBNG__Event\",\"Arbiter\",\"JSBNG__CSS\",\"UserAgent\",\"copyProperties\",\"throttle\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Arbiter\"), i = b(\"JSBNG__CSS\"), j = b(\"UserAgent\"), k = b(\"copyProperties\"), l = b(\"throttle\"), m = {\n }, n = k(new h(), {\n listenForEvent: function(p) {\n var q = l(this.onChange, 0, this);\n if (!m[p.id]) {\n m[p.id] = true;\n g.listen(p, {\n webkitfullscreenchange: q,\n mozfullscreenchange: q,\n fullscreenchange: q\n });\n }\n ;\n ;\n },\n enableFullScreen: function(p) {\n this.listenForEvent(p);\n if (p.webkitRequestFullScreen) {\n if (j.chrome()) {\n p.webkitRequestFullScreen(JSBNG__Element.ALLOW_KEYBOARD_INPUT);\n }\n else p.webkitRequestFullScreen();\n ;\n ;\n }\n else if (p.mozRequestFullScreen) {\n p.mozRequestFullScreen();\n }\n else if (p.requestFullScreen) {\n p.requestFullScreen();\n }\n else return false\n \n \n ;\n return true;\n },\n disableFullScreen: function() {\n if (JSBNG__document.webkitCancelFullScreen) {\n JSBNG__document.webkitCancelFullScreen();\n }\n else if (JSBNG__document.mozCancelFullScreen) {\n JSBNG__document.mozCancelFullScreen();\n }\n else if (JSBNG__document.cancelFullScreen) {\n JSBNG__document.cancelFullScreen();\n }\n else if (JSBNG__document.exitFullScreen) {\n JSBNG__document.exitFullScreen();\n }\n else return false\n \n \n \n ;\n return true;\n },\n isFullScreen: function() {\n return ((((JSBNG__document.webkitIsFullScreen || JSBNG__document.JSBNG__fullScreen)) || JSBNG__document.mozFullScreen));\n },\n toggleFullScreen: function(p) {\n if (this.isFullScreen()) {\n this.disableFullScreen();\n return false;\n }\n else return this.enableFullScreen(p)\n ;\n return false;\n },\n onChange: function() {\n var p = this.isFullScreen();\n i.conditionClass(JSBNG__document.body, \"JSBNG__fullScreen\", p);\n this.inform(\"changed\");\n },\n isSupported: function() {\n return ((((((((JSBNG__document.webkitCancelFullScreen && j.chrome())) || JSBNG__document.mozCancelFullScreen)) || JSBNG__document.cancelFullScreen)) || JSBNG__document.exitFullScreen));\n }\n }), o = l(n.onChange, 0, n);\n g.listen(JSBNG__document, {\n webkitfullscreenchange: o,\n mozfullscreenchange: o,\n fullscreenchange: o\n });\n e.exports = n;\n});\n__d(\"ImageUtils\", [\"UserAgent\",], function(a, b, c, d, e, f) {\n var g = b(\"UserAgent\"), h = {\n hasLoaded: function(i) {\n if (((i.naturalWidth !== undefined))) {\n return ((i.complete && ((i.width !== 0))));\n }\n else if (((((((i.height == 20)) && ((i.width == 20)))) && i.complete))) {\n return false;\n }\n else if (((((i.complete === undefined)) && ((g.webkit() < 500))))) {\n var j = new JSBNG__Image();\n j.src = i.src;\n return j.complete;\n }\n \n \n ;\n ;\n return i.complete;\n }\n };\n e.exports = h;\n});\n__d(\"PhotoEverstoreLogger\", [\"JSBNG__Event\",\"AsyncRequest\",\"copyProperties\",\"ImageUtils\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"AsyncRequest\"), i = b(\"copyProperties\"), j = b(\"ImageUtils\"), k = {\n BATCH_WINDOW_MS: 500,\n storedLog: []\n };\n function l() {\n \n };\n;\n i(l, {\n _log: function(n) {\n k.storedLog.push(n);\n if (((k.storedLog.length == 1))) {\n JSBNG__setTimeout(m, k.BATCH_WINDOW_MS, false);\n }\n ;\n ;\n },\n logImmediately: function(n) {\n l._log(n);\n },\n registerForLogging: function(n) {\n if (j.hasLoaded(n)) {\n l._log(n.src);\n }\n else g.listen(n, \"load\", function(JSBNG__event) {\n l._log(n.src);\n });\n ;\n ;\n }\n });\n function m() {\n var n = k.storedLog;\n k.storedLog = [];\n var o = JSON.stringify(n);\n new h().setURI(\"/ajax/photos/logging/everstore_logging.php\").setData({\n loggedUrls: o\n }).setMethod(\"POST\").setOption(\"suppressErrorHandlerWarning\", true).setOption(\"suppressErrorAlerts\", true).send();\n };\n;\n e.exports = l;\n});\n__d(\"PhotoSessionLog\", [\"AsyncRequest\",\"Run\",\"Vector\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"Run\"), i = b(\"Vector\"), j = b(\"copyProperties\");\n function k() {\n \n };\n;\n j(k, {\n UNKNOWN: 0,\n ESC: 1,\n X: 2,\n OUTSIDE: 3,\n UNLOAD: 4,\n NAVIGATE: 5,\n AGGREGATE: 6,\n LEAVE: 7,\n PERMALINK: 0,\n SNOWLIFT: 6,\n AGGREGATION_COUNT: 20,\n set: null,\n time: null,\n views: 0,\n fbidList: [],\n details: {\n },\n width: 0,\n height: 0,\n first: false,\n last: false,\n logIds: false,\n version: null,\n source: null,\n buttonLikes: 0,\n pagingAction: \"\",\n faceTagImpressions: 0,\n cycle: false,\n endOfRelevant: false,\n relevantCount: 0,\n initLogging: function(l) {\n this.set = null;\n this.time = new JSBNG__Date();\n this.views = 0;\n this.hiResLoads = 0;\n this.fullScreenViews = {\n };\n this.first = true;\n this.last = false;\n this.logIds = false;\n this.version = l;\n this.buttonLikes = 0;\n this.pagingAction = \"\";\n this.faceTagImpressions = 0;\n this.cycle = false;\n this.endOfRelevant = false;\n this.relevantCount = 0;\n if (((l === k.SNOWLIFT))) {\n var m = i.getViewportDimensions();\n this.width = m.x;\n this.height = m.y;\n }\n ;\n ;\n },\n setLogFbids: function(l) {\n this.logIds = l;\n },\n setPhotoSet: function(l) {\n this.set = l;\n },\n addButtonLike: function() {\n this.buttonLikes++;\n },\n setPagingAction: function(l) {\n this.pagingAction = l;\n },\n addFaceTagImpression: function() {\n this.faceTagImpressions++;\n },\n setCycle: function(l) {\n this.cycle = l;\n },\n setEndOfRelevant: function(l) {\n this.endOfRelevant = l;\n },\n setRelevantCount: function(l) {\n this.relevantCount = l;\n },\n setEndMetrics: function(l) {\n this.endMetrics = l;\n },\n setSource: function(l) {\n this.source = l;\n },\n addPhotoView: function(l, m, n) {\n if (((this.logIds && ((this.views >= this.AGGREGATION_COUNT))))) {\n this.logPhotoViews(this.AGGREGATE);\n }\n ;\n ;\n this.views++;\n if (l) {\n this.fbidList.push([l.fbid,l.owner,JSBNG__Date.now(),]);\n }\n ;\n ;\n if (m) {\n this.hiResLoads++;\n }\n ;\n ;\n if (n) {\n this.fullScreenViews[l.fbid] = true;\n }\n ;\n ;\n },\n logEnterFullScreen: function(l) {\n this.fullScreenViews[l] = true;\n },\n addDetailData: function(l, m) {\n if (!this.details[l]) {\n this.details[l] = {\n t: m.num_tags,\n l: m.has_location,\n c: m.has_caption,\n cm: m.comment_count,\n lk: m.like_count,\n w: m.width,\n h: m.height,\n ad: \"{}\",\n p: this.pagingAction\n };\n }\n ;\n ;\n },\n updateAdData: function(l, m) {\n if (this.details[l]) {\n this.details[l].ad = JSON.stringify(m);\n }\n ;\n ;\n },\n logPhotoViews: function(l) {\n if ((((!this.views) || ((((this.version === k.SNOWLIFT)) && ((l == k.LEAVE))))))) {\n return;\n }\n ;\n ;\n if (((l != this.AGGREGATE))) {\n this.last = true;\n }\n ;\n ;\n var m = {\n set: this.set,\n time: ((new JSBNG__Date() - this.time)),\n fbids: ((this.logIds ? this.fbidList : [])),\n details: ((this.logIds ? this.details : {\n })),\n first: this.first,\n last: this.last,\n close: ((l ? l : this.UNKNOWN)),\n button_likes: this.buttonLikes,\n version: this.version,\n face_imp: this.faceTagImpressions,\n endmetric: this.endMetrics,\n cycle: this.cycle,\n end_relev: this.endOfRelevant,\n relev_count: this.relevantCount,\n source: this.source\n };\n if (((this.version === k.SNOWLIFT))) {\n var n = i.getViewportDimensions();\n m.width = ((n.x || this.width));\n m.height = ((n.y || this.height));\n if (((this.hiResLoads > 0))) {\n m.hires_loads = this.hiResLoads;\n }\n ;\n ;\n if (this.last) {\n var o = Object.keys(this.fullScreenViews).length;\n if (((o > 0))) {\n m.fullscreen = o;\n }\n ;\n ;\n }\n ;\n ;\n }\n ;\n ;\n new g().setURI(\"/ajax/photos/logging/session_logging.php\").setAllowCrossPageTransition(true).setOption(\"asynchronous\", ((l != k.UNLOAD))).setOption(\"suppressErrorHandlerWarning\", true).setData(m).send();\n this.views = 0;\n this.hiResLoads = 0;\n this.fbidList = [];\n this.details = {\n };\n this.first = false;\n this.buttonLikes = 0;\n if (this.last) {\n this.set = null;\n this.logIds = false;\n this.fullScreenViews = {\n };\n }\n ;\n ;\n }\n });\n h.onUnload(function() {\n k.logPhotoViews(k.UNLOAD);\n });\n h.onLeave(function() {\n k.logPhotoViews(k.LEAVE);\n });\n e.exports = k;\n});\n__d(\"PhotoViewerImage\", [\"PhotoEverstoreLogger\",\"URI\",\"Vector\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"PhotoEverstoreLogger\"), h = b(\"URI\"), i = b(\"Vector\"), j = b(\"copyProperties\");\n function k(l) {\n this._hiResDimensions = ((l.hiResDimensions && i.deserialize(l.hiResDimensions)));\n this._normalDimensions = ((l.normalDimensions && i.deserialize(l.normalDimensions)));\n this._info = l.info;\n this._video = l.video;\n this._shouldLog = l.everstoreLogThis;\n this._hiResSrc = l.hiResSrc;\n this._normalSrc = l.normalSrc;\n this._thumbSrc = l.thumbSrc;\n this._isInverted = false;\n this._data = l;\n };\n;\n j(k.prototype, {\n getURIString: function() {\n return h(this._info.permalink).getUnqualifiedURI().toString();\n },\n hasHiResDimensions: function() {\n return !!this._hiResDimensions;\n },\n getHiResDimensions: function() {\n return this._hiResDimensions;\n },\n getNormalDimensions: function() {\n return this._normalDimensions;\n },\n getHiResSrc: function() {\n return this._hiResSrc;\n },\n getNormalSrc: function() {\n return this._normalSrc;\n },\n getThumbSrc: function() {\n return this._thumbSrc;\n },\n getInfo: function() {\n return this._info;\n },\n getPermalink: function() {\n return this._info.permalink;\n },\n getHighestResSrc: function() {\n return ((this._hiResSrc || this._normalSrc));\n },\n preload: function(l) {\n if (this.getHighestResSrc()) {\n if (((l && !this._resource))) {\n this._resource = new JSBNG__Image();\n this._resource.src = this.getHighestResSrc();\n if (this._shouldLog) {\n g.logImmediately(this._resource.src);\n }\n ;\n ;\n }\n else if (((!l && !this._small))) {\n this._small = new JSBNG__Image();\n this._small.src = ((this._normalSrc || this._hiResSrc));\n if (this._shouldLog) {\n g.logImmediately(this._small.src);\n }\n ;\n ;\n }\n \n ;\n }\n ;\n ;\n },\n setNormalDimensions: function(l, m) {\n this._normalDimensions = new i(l, m);\n },\n setHiResDimensions: function(l, m) {\n this._hiResDimensions = new i(l, m);\n },\n invertDimensions: function() {\n if (this.hasHiResDimensions()) {\n this._hiResDimensions = new i(this._hiResDimensions.y, this._hiResDimensions.x);\n }\n ;\n ;\n this._normalDimensions = new i(this._normalDimensions.y, this._normalDimensions.x);\n this._isInverted = !this._isInverted;\n },\n copy: function() {\n return new k(this._data);\n }\n });\n e.exports = k;\n});\n__d(\"PhotosConst\", [], function(a, b, c, d, e, f) {\n var g = {\n VIEWER_PERMALINK: 0,\n VIEWER_SNOWLIFT: 6,\n VIEWER_VAULTBOX: 8,\n BULK_EDITOR: 3,\n FLASH_UPLOADER: 4,\n HTML5_UPLOADER: 10,\n SIZE_NORMAL: \"n\",\n PIC_NORMAL_FBX_SIZE: 180\n };\n e.exports = g;\n});\n__d(\"PhotosUtils\", [\"copyProperties\",\"Vector\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"Vector\");\n function i() {\n \n };\n;\n g(i, {\n getNearestBox: function(j, k) {\n var l = Infinity, m = null;\n {\n var fin231keys = ((window.top.JSBNG_Replay.forInKeys)((j))), fin231i = (0);\n var n;\n for (; (fin231i < fin231keys.length); (fin231i++)) {\n ((n) = (fin231keys[fin231i]));\n {\n var o = j[n];\n if (o.contains(k)) {\n var p = k.distanceTo(o.getCenter());\n if (((p < l))) {\n l = p;\n m = n;\n }\n ;\n ;\n }\n ;\n ;\n };\n };\n };\n ;\n return m;\n },\n absoluteToNormalizedPosition: function(j, k) {\n var l = h.getElementPosition(j), m = h.getElementDimensions(j), n = k.sub(l).mul(((100 / m.x)), ((100 / m.y)));\n n.domain = \"pure\";\n return n;\n },\n normalizedToAbsolutePosition: function(j, k) {\n var l = h.getElementPosition(j), m = h.getElementDimensions(j), n = k.mul(((m.x / 100)), ((m.y / 100))).add(l);\n n.domain = \"JSBNG__document\";\n return n;\n },\n isFacebox: function(j) {\n return j.match(/^face:/);\n },\n isTag: function(j) {\n return j.match(/^tag:/);\n }\n });\n e.exports = i;\n});\n__d(\"PhotoStreamCache\", [\"DOM\",\"HTML\",\"PhotosConst\",\"PhotoEverstoreLogger\",\"PhotoViewerImage\",\"JSBNG__Rect\",\"UIPagelet\",\"URI\",\"Vector\",\"copyProperties\",\"createArrayFrom\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"HTML\"), i = b(\"PhotosConst\"), j = b(\"PhotoEverstoreLogger\"), k = b(\"PhotoViewerImage\"), l = b(\"JSBNG__Rect\"), m = b(\"UIPagelet\"), n = b(\"URI\"), o = b(\"Vector\"), p = b(\"copyProperties\"), q = b(\"createArrayFrom\"), r = b(\"ge\");\n function s() {\n \n };\n;\n p(s, {\n ERROR: \"error\",\n HTML: \"html\",\n IMAGE_DATA: \"image\",\n EXTRA: \"extra\",\n BUFFER_SIZE: 3,\n INIT_BUCKET_SIZE: 4,\n FULL_BUCKET_SIZE: 12,\n ERROR_ID: -1,\n INIT_PLACEHOLDER: 1\n });\n p(s.prototype, {\n init: function(t, u, v) {\n this.version = t;\n this.pageletName = u;\n this.pageletRootID = v;\n this.bufferSize = s.BUFFER_SIZE;\n this.fullBucketSize = s.FULL_BUCKET_SIZE;\n this.initError = false;\n this.isActive = true;\n this.usesOpaqueCursor = false;\n this.usesNonCircularPhotoSet = false;\n this.reachedLeftEnd = false;\n this.reachedRightEnd = false;\n this.leftLock = false;\n this.rightLock = false;\n this.useAjaxPipe = true;\n this.reset();\n },\n getUsesOpaqueCursor: function() {\n return this.usesOpaqueCursor;\n },\n isNonCircularPhotoSet: function() {\n return this.usesNonCircularPhotoSet;\n },\n setReachedLeftEnd: function() {\n this.reachedLeftEnd = true;\n },\n setReachedRightEnd: function() {\n this.reachedRightEnd = true;\n },\n hasReachedLeftEnd: function() {\n return this.reachedLeftEnd;\n },\n hasReachedRightEnd: function() {\n return this.reachedRightEnd;\n },\n nonCircularPhotoSetCanPage: function(t) {\n if (!this.isNonCircularPhotoSet()) {\n return true;\n }\n ;\n ;\n if (((t < 0))) {\n return ((this.getCursorPos() || !this.hasReachedLeftEnd()));\n }\n ;\n ;\n if (((t > 0))) {\n return ((((((this.getLength() - 1)) != this.getCursorPos())) || !this.hasReachedRightEnd()));\n }\n ;\n ;\n return true;\n },\n setUseAjaxPipe: function(t) {\n this.useAjaxPipe = t;\n },\n reset: function() {\n this.cache = {\n image: {\n },\n extra: {\n },\n html: {\n }\n };\n this.fbidList = [];\n this.loaded = false;\n this.allLoaded = false;\n this.permalinkMap = {\n };\n this.position = 0;\n this.totalCount = null;\n this.firstCursor = null;\n this.firstCursorIndex = null;\n this.firstOpaqueCursor = null;\n },\n waitForInitData: function() {\n this.fbidList.push(s.INIT_PLACEHOLDER);\n },\n destroy: function() {\n this.reset();\n this.isActive = false;\n },\n isLoaded: function() {\n return this.loaded;\n },\n canPage: function() {\n if (!this.isLoaded()) {\n return false;\n }\n ;\n ;\n if (((this.totalCount !== null))) {\n return ((this.totalCount > 1));\n }\n ;\n ;\n if (this.usesNonCircularPhotoSet) {\n return true;\n }\n ;\n ;\n return ((this.getLength() > 1));\n },\n errorInCurrent: function() {\n if (this.initError) {\n return true;\n }\n else if (!this.isLoaded()) {\n return false;\n }\n \n ;\n ;\n return this.checkErrorAt(this.getCursor());\n },\n getLength: function() {\n return this.fbidList.length;\n },\n getPhotoSet: function() {\n return this.photoSetQuery.set;\n },\n getPhotoSetQuery: function() {\n return this.photoSetQuery;\n },\n getCurrentImageData: function() {\n return this.getImageData(this.getCursor());\n },\n getOpaqueCursor: function(t) {\n if (this.getImageData(t)) {\n if (((this.version === i.VIEWER_VAULTBOX))) {\n return this.getImageData(t).getInfo().opaquecursor;\n }\n ;\n ;\n return this.getImageData(t).info.opaquecursor;\n }\n ;\n ;\n if (((t == this.firstCursor))) {\n return this.firstOpaqueCursor;\n }\n ;\n ;\n return null;\n },\n getImageData: function(t) {\n return this.getCacheContent(t, s.IMAGE_DATA);\n },\n getCurrentHtml: function() {\n return this.getCacheContent(this.getCursor(), s.HTML);\n },\n getCurrentExtraData: function() {\n return this.getCacheContent(this.getCursor(), s.EXTRA);\n },\n getCacheContent: function(t, u) {\n if (((((!t || ((t === s.ERROR_ID)))) || ((t === s.INIT_PLACEHOLDER))))) {\n return null;\n }\n ;\n ;\n return this.cache[u][t];\n },\n getCursorPos: function() {\n return this.position;\n },\n getCursor: function() {\n if (((((this.position >= 0)) && ((this.position < this.getLength()))))) {\n return this.fbidList[this.position];\n }\n ;\n ;\n return null;\n },\n getCursorForURI: function(t) {\n return this.permalinkMap[t];\n },\n calculatePositionForMovement: function(t) {\n var u = ((this.position + t));\n if (this.allLoaded) {\n var v = this.getLength();\n u = ((((v + ((u % v)))) % v));\n }\n ;\n ;\n return u;\n },\n isValidMovement: function(t) {\n if (((!this.isLoaded() || !this.canPage()))) {\n return false;\n }\n ;\n ;\n var u = this.calculatePositionForMovement(t);\n return ((((this.getCursor() > 0)) || ((((u >= 0)) && ((u < this.getLength()))))));\n },\n moveCursor: function(t) {\n if (!this.isValidMovement(t)) {\n return;\n }\n ;\n ;\n this.position = this.calculatePositionForMovement(t);\n if (((t !== 0))) {\n this.loadMoreIfNeccessary(((t > 0)));\n }\n ;\n ;\n },\n checkErrorAt: function(t) {\n if (!this.isLoaded()) {\n return false;\n }\n ;\n ;\n if (((t === s.ERROR_ID))) {\n return true;\n }\n ;\n ;\n return false;\n },\n getRelativeMovement: function(t) {\n for (var u = 0; ((u < this.getLength())); u++) {\n if (((this.fbidList[u] == t))) {\n return ((u - this.position));\n }\n ;\n ;\n };\n ;\n return null;\n },\n preloadImages: function(t) {\n var u, v, w = this.getLength(), x = this.cache.image, y = s.BUFFER_SIZE;\n if (((w > ((y * 2))))) {\n u = ((((((this.position + w)) - ((y % w)))) % w));\n v = ((((this.position + y)) % w));\n }\n else {\n u = 0;\n v = ((w - 1));\n }\n ;\n ;\n while (((u != v))) {\n var z = this.fbidList[u];\n if (((this.version === i.VIEWER_VAULTBOX))) {\n ((x[z] && x[z].preload(t)));\n }\n else if (((x[z] && x[z].url))) {\n if (((t && !x[z].resource))) {\n x[z].resource = new JSBNG__Image();\n x[z].resource.src = x[z].url;\n if (((x[z].everstoreLogThis === true))) {\n j.logImmediately(x[z].resource.src);\n }\n ;\n ;\n }\n else if (((!t && !x[z].small))) {\n x[z].small = new JSBNG__Image();\n x[z].small.src = ((x[z].smallurl || x[z].url));\n if (((x[z].everstoreLogThis === true))) {\n j.logImmediately(x[z].small.src);\n }\n ;\n ;\n }\n \n ;\n }\n \n ;\n ;\n u = ((((u + 1)) % w));\n };\n ;\n },\n loadMoreIfNeccessary: function(t) {\n if (((((this.allLoaded || ((t && this.rightLock)))) || ((!t && this.leftLock))))) {\n return;\n }\n ;\n ;\n var u = ((t ? 1 : -1)), v = ((this.position + ((this.bufferSize * u))));\n if (((((v < 0)) && !this.checkErrorAt(this.getEndCursor(false))))) {\n this.leftLock = true;\n this.fetch(this.fullBucketSize, false);\n }\n else if (((((v > this.getLength())) && !this.checkErrorAt(this.getEndCursor(true))))) {\n this.rightLock = true;\n this.fetch(this.fullBucketSize, true);\n }\n \n ;\n ;\n },\n getEndCursor: function(t) {\n return ((t ? this.fbidList[((this.getLength() - 1))] : this.fbidList[0]));\n },\n calculateRelativeIndex: function(t, u, v) {\n if (!this.totalCount) {\n return null;\n }\n ;\n ;\n var w = this.fbidList.indexOf(u), x = this.fbidList.indexOf(v);\n if (((((w === -1)) || ((x === -1))))) {\n return null;\n }\n ;\n ;\n var y = ((x - w));\n return ((((((t + y)) + this.totalCount)) % this.totalCount));\n },\n calculateDistance: function(t, u) {\n var v = this.fbidList.indexOf(t), w = this.fbidList.indexOf(u);\n if (((((v === -1)) || ((w === -1))))) {\n return null;\n }\n ;\n ;\n return ((((((w - v)) + this.getLength())) % this.getLength()));\n },\n fetch: function(t, u) {\n var v = this.getEndCursor(u), w = p({\n cursor: v,\n version: this.version,\n end: this.getEndCursor(!u),\n fetchSize: ((u ? t : ((-1 * t)))),\n relevant_count: this.relevantCount,\n opaqueCursor: this.getOpaqueCursor(v)\n }, this.photoSetQuery);\n if (((this.totalCount && ((this.firstCursorIndex !== null))))) {\n w.total = this.totalCount;\n w.cursorIndex = this.calculateRelativeIndex(this.firstCursorIndex, this.firstCursor, v);\n }\n ;\n ;\n var x = r(this.pageletRootID);\n if (!x) {\n x = g.create(\"div\", {\n id: this.pageletRootID\n });\n g.appendContent(JSBNG__document.body, x);\n }\n ;\n ;\n m.loadFromEndpoint(this.pageletName, x, w, {\n usePipe: this.useAjaxPipe,\n automatic: true,\n jsNonblock: true,\n crossPage: true\n });\n if (!this.useAjaxPipe) {\n this.setUseAjaxPipe(true);\n }\n ;\n ;\n },\n storeToCache: function(t) {\n var u = {\n };\n if (!this.isActive) {\n return u;\n }\n ;\n ;\n if (((\"error\" in t))) {\n this.processErrorResult(t.error);\n u.error = true;\n return u;\n }\n ;\n ;\n if (((\"init\" in t))) {\n this.processInitResult(t.init);\n u.init = {\n logids: t.init.logids,\n fbid: t.init.fbid,\n loggedin: t.init.loggedin,\n fromad: t.init.fromad,\n disablesessionads: t.init.disablesessionads,\n flashtags: t.init.flashtags\n };\n }\n ;\n ;\n if (((\"image\" in t))) {\n this.processImageResult(t.image);\n u.image = true;\n }\n ;\n ;\n if (((\"data\" in t))) {\n this.processDataResult(t.data);\n u.data = true;\n }\n ;\n ;\n return u;\n },\n processInitResult: function(t) {\n if (this.loaded) {\n return;\n }\n ;\n ;\n this.usesOpaqueCursor = t.usesopaquecursor;\n this.usesNonCircularPhotoSet = t.isnoncircularphotoset;\n this.loaded = true;\n this.photoSetQuery = t.query;\n if (t.bufferSize) {\n this.bufferSize = t.bufferSize;\n }\n ;\n ;\n if (t.fullBucketSize) {\n this.fullBucketSize = t.fullBucketSize;\n }\n ;\n ;\n if (((this.fbidList.length === 0))) {\n this.fbidList.push(t.fbid);\n this.rightLock = true;\n }\n else {\n var u = this.fbidList.indexOf(s.INIT_PLACEHOLDER);\n if (((u != -1))) {\n this.fbidList[u] = t.fbid;\n }\n ;\n ;\n }\n ;\n ;\n this.firstCursor = t.fbid;\n this.firstOpaqueCursor = t.opaquecursor;\n if (((((\"initIndex\" in t)) && ((\"totalCount\" in t))))) {\n this.firstCursorIndex = t.initIndex;\n this.totalCount = t.totalCount;\n }\n ;\n ;\n if (((this.version == i.VIEWER_PERMALINK))) {\n this.fetch(s.INIT_BUCKET_SIZE, true);\n }\n ;\n ;\n },\n processImageResult: function(t) {\n {\n var fin232keys = ((window.top.JSBNG_Replay.forInKeys)((t))), fin232i = (0);\n var u;\n for (; (fin232i < fin232keys.length); (fin232i++)) {\n ((u) = (fin232keys[fin232i]));\n {\n if (((((u === this.firstCursor)) && t[u].everstoreLogThis))) {\n j.logImmediately(t[u].url);\n }\n ;\n ;\n if (((this.version === i.VIEWER_VAULTBOX))) {\n var v = t[u];\n this.cache.image[u] = new k(v);\n this.permalinkMap[this.cache.image[u].getURIString()] = u;\n }\n else {\n this.cache.image[u] = t[u];\n if (t[u].dimensions) {\n this.cache.image[u].dimensions = o.deserialize(t[u].dimensions);\n }\n ;\n ;\n if (t[u].smalldims) {\n this.cache.image[u].smalldims = o.deserialize(t[u].smalldims);\n }\n ;\n ;\n this.permalinkMap[n(t[u].info.permalink).getUnqualifiedURI().toString()] = u;\n }\n ;\n ;\n };\n };\n };\n ;\n },\n attachToFbidsList: function(t, u, v) {\n if (this.allLoaded) {\n return;\n }\n ;\n ;\n if (((u === -1))) {\n for (var w = ((t.length - 1)); ((w >= 0)); w--) {\n this.fbidList.unshift(t[w]);\n this.position++;\n };\n ;\n this.leftLock = false;\n }\n else {\n for (var x = 0; ((x < t.length)); x++) {\n this.fbidList.push(t[x]);\n ;\n };\n ;\n this.rightLock = false;\n }\n ;\n ;\n if (v) {\n this.setAllLoaded();\n }\n ;\n ;\n },\n setAllLoaded: function() {\n this.allLoaded = true;\n if (((this.getCursor() === null))) {\n this.position = this.calculatePositionForMovement(0);\n }\n ;\n ;\n },\n processDataResult: function(t) {\n {\n var fin233keys = ((window.top.JSBNG_Replay.forInKeys)((t))), fin233i = (0);\n var u;\n for (; (fin233i < fin233keys.length); (fin233i++)) {\n ((u) = (fin233keys[fin233i]));\n {\n if (!this.cache.html[u]) {\n this.cache.html[u] = {\n };\n }\n ;\n ;\n {\n var fin234keys = ((window.top.JSBNG_Replay.forInKeys)((t[u].html))), fin234i = (0);\n var v;\n for (; (fin234i < fin234keys.length); (fin234i++)) {\n ((v) = (fin234keys[fin234i]));\n {\n var w = t[u].html[v];\n if (((typeof w === \"string\"))) {\n w = h(w).getRootNode();\n }\n ;\n ;\n this.cache.html[u][v] = q(w.childNodes);\n };\n };\n };\n ;\n if (!((\"extra\" in t[u]))) {\n this.cache.extra[u] = null;\n continue;\n }\n ;\n ;\n this.cache.extra[u] = {\n tagRects: {\n }\n };\n if (!Array.isArray(t[u].extra.tagRects)) {\n {\n var fin235keys = ((window.top.JSBNG_Replay.forInKeys)((t[u].extra.tagRects))), fin235i = (0);\n var x;\n for (; (fin235i < fin235keys.length); (fin235i++)) {\n ((x) = (fin235keys[fin235i]));\n {\n if (t[u].extra.tagRects[x]) {\n this.cache.extra[u].tagRects[x] = l.deserialize(t[u].extra.tagRects[x]);\n }\n ;\n ;\n };\n };\n };\n }\n ;\n ;\n Object.keys(t[u].extra).forEach(function(y) {\n if (((y == \"tagRects\"))) {\n return;\n }\n ;\n ;\n this.cache.extra[u][y] = t[u].extra[y];\n }.bind(this));\n };\n };\n };\n ;\n },\n processErrorResult: function(t) {\n if (!this.isLoaded()) {\n this.initError = true;\n return;\n }\n ;\n ;\n var u = t.side, v = [s.ERROR_ID,];\n this.attachToFbidsList(v, u);\n },\n setTotalCount: function(t) {\n this.totalCount = t;\n },\n setFirstCursorIndex: function(t) {\n this.firstCursorIndex = t;\n }\n });\n e.exports = s;\n});\n__d(\"PhotoViewer\", [\"Bootloader\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Bootloader\"), h = b(\"copyProperties\"), i = b(\"emptyFunction\");\n function j() {\n this.image = null;\n this.root = null;\n this.stream = null;\n };\n;\n h(j, {\n bootstrap: function(k, l) {\n g.loadModules([\"PhotoSnowlift\",], function(m) {\n m.bootstrap(k, l);\n });\n }\n });\n h(j.prototype, {\n getEventPrefix: i.thatReturnsNull,\n getEventString: function(k) {\n var l = this.getEventPrefix();\n if (l) {\n return ((((l + \".\")) + k));\n }\n ;\n ;\n return null;\n },\n getImage: function() {\n return this.image;\n },\n getPosition: function() {\n return ((this.stream ? this.stream.getCursor() : null));\n },\n getRoot: function() {\n return this.root;\n },\n getSourceString: i.thatReturnsNull,\n getVersionConst: i.thatReturnsNull,\n getViewerSource: i.thatReturnsNull,\n getViewerSet: i.thatReturnsNull\n });\n e.exports = j;\n});\n__d(\"ManagedError\", [], function(a, b, c, d, e, f) {\n function g(h, i) {\n Error.prototype.constructor.call(this, h);\n this.message = h;\n this.innerError = i;\n };\n;\n g.prototype = new Error();\n g.prototype.constructor = g;\n e.exports = g;\n});\n__d(\"AssertionError\", [\"ManagedError\",], function(a, b, c, d, e, f) {\n var g = b(\"ManagedError\");\n function h(i) {\n g.prototype.constructor.apply(this, arguments);\n };\n;\n h.prototype = new g();\n h.prototype.constructor = h;\n e.exports = h;\n});\n__d(\"Assert\", [\"AssertionError\",\"sprintf\",], function(a, b, c, d, e, f) {\n var g = b(\"AssertionError\"), h = b(\"sprintf\");\n function i(n, o) {\n if (((((typeof n !== \"boolean\")) || !n))) {\n throw new g(o);\n }\n ;\n ;\n return n;\n };\n;\n function j(n, o, p) {\n var q;\n if (((o === undefined))) {\n q = \"undefined\";\n }\n else if (((o === null))) {\n q = \"null\";\n }\n else {\n var r = Object.prototype.toString.call(o);\n q = /\\s(\\w*)/.exec(r)[1].toLowerCase();\n }\n \n ;\n ;\n i(((n.indexOf(q) !== -1)), ((p || h(\"Expression is of type %s, not %s\", q, n))));\n return o;\n };\n;\n function k(n, o, p) {\n i(((o instanceof n)), ((p || \"Expression not instance of type\")));\n return o;\n };\n;\n function l(n, o) {\n m[((\"is\" + n))] = o;\n m[((\"maybe\" + n))] = function(p, q) {\n if (((p != null))) {\n o(p, q);\n }\n ;\n ;\n };\n };\n;\n var m = {\n isInstanceOf: k,\n isTrue: i,\n isTruthy: function(n, o) {\n return i(!!n, o);\n },\n type: j,\n define: function(n, o) {\n n = ((n.substring(0, 1).toUpperCase() + n.substring(1).toLowerCase()));\n l(n, function(p, q) {\n i(o(p), q);\n });\n }\n };\n [\"Array\",\"Boolean\",\"JSBNG__Date\",\"Function\",\"Null\",\"Number\",\"Object\",\"Regexp\",\"String\",\"Undefined\",].forEach(function(n) {\n l(n, j.bind(null, n.toLowerCase()));\n });\n e.exports = m;\n});"); |
| // 12137 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o159,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yV/r/ul7Pqk1hCQb.js",o160); |
| // undefined |
| o159 = null; |
| // undefined |
| o160 = null; |
| // 12142 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"cstCX\",]);\n}\n;\n__d(\"SubscriptionLevels\", [], function(a, b, c, d, e, f) {\n var g = {\n ALL: \"162318810514679\",\n DEFAULT: \"271670892858696\",\n TOP: \"266156873403755\"\n };\n e.exports = g;\n});\n__d(\"EditSubscriptions\", [\"Event\",\"function-extensions\",\"Arbiter\",\"AsyncRequest\",\"CSS\",\"DOM\",\"MenuDeprecated\",\"Parent\",\"SubscriptionLevels\",\"arrayContains\",\"cx\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\");\n b(\"function-extensions\");\n var h = b(\"Arbiter\"), i = b(\"AsyncRequest\"), j = b(\"CSS\"), k = b(\"DOM\"), l = b(\"MenuDeprecated\"), m = b(\"Parent\"), n = b(\"SubscriptionLevels\"), o = b(\"arrayContains\"), p = b(\"cx\"), q = b(\"ge\"), r = 13, s = 45, t = [n.ALL,n.DEFAULT,n.TOP,], u = {\n }, v = {\n }, w = {\n }, x = {\n }, y = {\n }, z = {\n }, aa = {\n }, ba = {\n }, ca = {\n }, da = {\n }, ea = {\n }, fa = \"/ajax/follow/follow_profile.php\", ga = \"/ajax/follow/unfollow_profile.php\", ha = \"/ajax/settings/notifications/notify_me.php\", ia = {\n }, ja = {\n }, ka = null, la = false;\n function ma(jb) {\n return o(t, jb);\n };\n function na(jb, kb, lb, mb) {\n var nb = (m.byClass(mb, \"uiMenuItem\") || m.byClass(mb, \"-cx-PUBLIC-abstractMenuItem__root\"));\n if ((!nb || !k.contains(jb, nb))) {\n return;\n }\n else if (j.hasClass(nb, \"SubscribeMenuSubscribeCheckbox\")) {\n if (w[kb]) {\n qa(jb, kb);\n }\n else pa(jb, kb);\n ;\n return false;\n }\n else if (j.hasClass(nb, \"SubscribeMenuUnsubscribe\")) {\n qa(jb, kb);\n return false;\n }\n else if (j.hasClass(nb, \"SubscribeMenuSettingsItem\")) {\n db(jb, true);\n return false;\n }\n else if (j.hasClass(nb, \"SubscriptionMenuGoBack\")) {\n db(jb, false);\n return false;\n }\n else if (j.hasClass(nb, \"SubscriptionMenuItem\")) {\n oa(jb, kb, lb, nb);\n return false;\n }\n else if (j.hasClass(nb, \"SubscribeMenuNotifyMeCheckbox\")) {\n if (x[kb]) {\n hb(jb, kb);\n }\n else gb(jb, kb);\n ;\n return false;\n }\n \n \n \n \n \n \n ;\n };\n function oa(jb, kb, lb, mb) {\n if (j.hasClass(mb, \"SubscriptionMenuLevel\")) {\n if (l.isItemChecked(mb)) {\n return\n };\n bb(jb, kb, ua(mb), true, lb);\n }\n else if (j.hasClass(mb, \"SubscriptionMenuCategory\")) {\n ya(kb, mb, !l.isItemChecked(mb), true, lb);\n }\n else if (j.hasClass(mb, \"SubscriptionAppStory\")) {\n ab(kb, mb, !l.isItemChecked(mb), lb);\n }\n \n ;\n };\n function pa(jb, kb) {\n var lb = {\n profile_id: kb\n };\n h.inform(\"FollowingUser\", lb);\n new i().setURI(fa).setMethod(\"POST\").setData({\n profile_id: kb,\n location: ra(jb)\n }).setErrorHandler(h.inform.curry(\"FollowUserFail\", lb)).send();\n };\n function qa(jb, kb) {\n var lb = {\n profile_id: kb\n };\n h.inform(\"UnfollowingUser\", lb);\n new i().setURI(ga).setMethod(\"POST\").setData({\n profile_id: kb,\n location: ra(jb)\n }).setErrorHandler(h.inform.curry(\"UnfollowUserFail\", lb)).send();\n };\n function ra(jb) {\n if (j.hasClass(jb, \"followButtonFlyout\")) {\n return r;\n }\n else return s\n ;\n };\n function sa(jb, kb, lb) {\n var mb = {\n profile_id: jb,\n level: ba[jb],\n custom_categories: ca[jb],\n location: lb\n };\n new i().setURI(\"/ajax/follow/manage_subscriptions.php\").setData(mb).send();\n };\n function ta(jb, kb) {\n var lb = (ca[kb] || []), mb = l.getItems(jb);\n mb.forEach(function(nb) {\n if (j.hasClass(nb, \"SubscriptionMenuCategory\")) {\n var ob = ua(nb);\n if (o(lb, ob)) {\n wa(nb);\n }\n else xa(nb);\n ;\n }\n else if (j.hasClass(nb, \"SubscriptionAppStory\")) {\n var pb = ua(nb);\n if ((ja[kb] && ja[kb][pb])) {\n wa(nb);\n }\n else xa(nb);\n ;\n }\n \n ;\n });\n bb(jb, kb, ba[kb], false);\n };\n function ua(jb) {\n var kb = k.scry(jb, \"input\")[0];\n return (kb && kb.value);\n };\n function va(jb) {\n return k.find(jb, \"a.itemAnchor\");\n };\n function wa(jb) {\n j.addClass(jb, \"checked\");\n va(jb).setAttribute(\"aria-checked\", true);\n };\n function xa(jb) {\n j.removeClass(jb, \"checked\");\n va(jb).setAttribute(\"aria-checked\", false);\n };\n function ya(jb, kb, lb, mb, nb) {\n if (lb) {\n wa(kb);\n }\n else xa(kb);\n ;\n var ob = ua(kb);\n if (ma(ob)) {\n (lb && za(jb, ob));\n }\n else if (lb) {\n if (!o(ca[jb], ob)) {\n ca[jb].push(ob);\n };\n }\n else {\n var pb = ca[jb].indexOf(ob);\n if ((pb !== -1)) {\n ca[jb].splice(pb, 1);\n };\n }\n \n ;\n if (mb) {\n sa(jb, ob, nb);\n };\n };\n function za(jb, kb) {\n ba[jb] = kb;\n h.inform(\"SubscriptionLevelUpdated\", {\n profile_id: jb,\n level: kb\n });\n };\n function ab(jb, kb, lb, mb) {\n var nb = \"/ajax/feed/filter_action/\", ob = ua(kb), pb = {\n actor_id: jb,\n app_id: ob\n };\n if (lb) {\n wa(kb);\n nb += \"resubscribe_user_app/\";\n pb.action = \"resubscribe_user_app\";\n if (!ja[jb]) {\n ja[jb] = {\n };\n };\n ja[jb][ob] = true;\n }\n else {\n xa(kb);\n nb += \"unsubscribe_user_app_checkbox/\";\n pb.action = \"unsubscribe_user_app_checkbox\";\n if (ja[jb]) {\n ja[jb][ob] = false;\n };\n }\n ;\n new i().setURI(nb).setData(pb).send();\n };\n function bb(jb, kb, lb, mb, nb) {\n var ob = k.scry(jb, \".SubscriptionMenuLevel\"), pb = null;\n ob.forEach(function(qb) {\n if ((ua(qb) == lb)) {\n pb = qb;\n }\n else if (l.isItemChecked(qb)) {\n ya(kb, qb, false, false);\n }\n ;\n });\n (pb && ya(kb, pb, true, mb, nb));\n };\n function cb(jb, kb, lb) {\n w[kb] = lb;\n j.conditionClass(jb, \"isUnsubscribed\", !lb);\n var mb = k.scry(jb, \"li.SubscribeMenuSubscribeCheckbox\");\n if ((mb.length !== 0)) {\n var nb = mb[0];\n if (lb) {\n wa(nb);\n }\n else xa(nb);\n ;\n }\n ;\n };\n function db(jb, kb) {\n j.conditionClass(jb, \"subscriptionMenuOpen\", kb);\n };\n function eb(jb, kb, lb) {\n var mb = k.find(jb, \".FriendListSubscriptionsMenu\"), nb = k.find(mb, \".uiMenuInner\");\n if ((ka != null)) {\n ka.forEach(function(ob) {\n nb.removeChild(ob);\n });\n };\n lb.forEach(function(ob) {\n nb.appendChild(ob);\n });\n ka = lb;\n };\n h.subscribe(\"UnfollowUser\", function(jb, kb) {\n if (da[kb.profile_id]) {\n za(kb.profile_id, da[kb.profile_id]);\n ca[kb.profile_id] = ea[kb.profile_id].slice();\n }\n ;\n });\n h.subscribe(\"UpdateSubscriptionLevel\", function(jb, kb) {\n var lb = (kb.profile_id + \"\"), mb = (kb.level + \"\");\n za(lb, mb);\n var nb;\n for (nb in u) {\n if ((u[nb] === lb)) {\n var ob = q(nb);\n (ob && bb(ob, lb, mb, false));\n }\n ;\n };\n });\n function fb(jb, kb, lb) {\n x[kb] = lb;\n var mb = (z[kb] && !la), nb = k.scry(jb, \"li.SubscribeMenuNotifyMeCheckbox\");\n if ((nb.length !== 0)) {\n var ob = nb[0];\n j.conditionShow(ob, !mb);\n j.conditionShow(k.find(jb, \"li.SubscribeMenuNotifyMeCheckboxSeparator\"), !mb);\n if (lb) {\n wa(ob);\n }\n else xa(ob);\n ;\n }\n ;\n };\n function gb(jb, kb) {\n var lb = {\n profile_id: kb\n };\n h.inform(\"EnableNotifsForUser\", lb);\n new i().setURI(ha).setMethod(\"POST\").setData({\n notifier_id: kb,\n enable: true\n }).setErrorHandler(h.inform.curry(\"EnableNotifsForUserFail\", lb)).send();\n };\n function hb(jb, kb) {\n var lb = {\n profile_id: kb\n };\n h.inform(\"DisableNotifsForUser\", lb);\n new i().setURI(ha).setMethod(\"POST\").setData({\n notifier_id: kb,\n enable: false\n }).setErrorHandler(h.inform.curry(\"DisableNotifsForUserFail\", lb)).send();\n };\n var ib = {\n init: function(jb, kb, lb) {\n var mb = k.getID(jb);\n if (!u[mb]) {\n g.listen(jb, \"click\", function(nb) {\n return na(jb, u[mb], lb, nb.getTarget());\n });\n };\n if (((lb === s) && ia[kb].length)) {\n eb(jb, kb, ia[kb]);\n };\n if (ba[kb]) {\n ta(jb, kb);\n };\n u[mb] = kb;\n j.conditionClass(jb, \"NonFriendSubscriptionMenu\", !v[kb]);\n j.conditionClass(jb, \"cannotSubscribe\", !y[kb]);\n j.conditionClass(jb, \"noSubscriptionLevels\", (z[kb] && !aa[kb]));\n j.conditionClass(jb, \"noSubscribeCheckbox\", (!v[kb] && !z[kb]));\n cb(jb, kb, w[kb]);\n fb(jb, kb, x[kb]);\n h.subscribe([\"FollowUser\",\"FollowingUser\",\"UnfollowUserFail\",], function(nb, ob) {\n cb(jb, kb, true);\n }.bind(this));\n h.subscribe([\"UnfollowUser\",\"UnfollowingUser\",\"FollowUserFail\",], function(nb, ob) {\n h.inform(\"SubMenu/Reset\");\n cb(jb, kb, false);\n }.bind(this));\n h.subscribe([\"EnableNotifsForUser\",\"DisableNotifsForUserFail\",], function(nb, ob) {\n fb(jb, kb, true);\n }.bind(this));\n h.subscribe([\"DisableNotifsForUser\",\"EnableNotifsForUserFail\",], function(nb, ob) {\n fb(jb, kb, false);\n }.bind(this));\n h.subscribe(\"listeditor/friend_lists_changed\", function(nb, ob) {\n if (ob.notify_state) {\n var pb = (ob.added_uid ? ob.added_uid : ob.removed_uid);\n fb(jb, pb, ob.notify_state.is_notified);\n }\n ;\n }.bind(this));\n db(jb, false);\n },\n getSubscriptions: function(jb) {\n return {\n level: ba[jb],\n custom_categories: ca[jb]\n };\n },\n setSubscriptions: function(jb, kb, lb, mb, nb, ob, pb, qb, rb, sb, tb, ub, vb) {\n za(jb, (pb + \"\"));\n v[jb] = kb;\n w[jb] = lb;\n y[jb] = mb;\n z[jb] = nb;\n aa[jb] = ob;\n da[jb] = (rb + \"\");\n ca[jb] = qb.map(String);\n ea[jb] = sb.map(String);\n ia[jb] = vb;\n x[jb] = tb;\n la = ub;\n }\n };\n e.exports = (a.EditSubscriptions || ib);\n});\n__d(\"legacy:EditSubscriptions\", [\"SubscriptionLevels\",\"EditSubscriptions\",], function(a, b, c, d) {\n a.SubscriptionLevels = b(\"SubscriptionLevels\");\n a.EditSubscriptions = b(\"EditSubscriptions\");\n}, 3);\n__d(\"DynamicFriendListEducation\", [\"Event\",\"Arbiter\",\"AsyncRequest\",\"Dialog\",\"PageTransitions\",\"arrayContains\",\"createArrayFrom\",\"removeFromArray\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Arbiter\"), i = b(\"AsyncRequest\"), j = b(\"Dialog\"), k = b(\"PageTransitions\"), l = b(\"arrayContains\"), m = b(\"createArrayFrom\"), n = b(\"removeFromArray\"), o, p, q, r, s, t;\n function u() {\n (q && q.hide());\n (r && r.hide());\n };\n function v(y) {\n n(p, y);\n u();\n s({\n accept_tag_education: true\n });\n };\n function w() {\n u();\n s({\n nux_cancel: true\n });\n };\n var x = {\n init: function(y, z) {\n o = y;\n p = m(z).map(String);\n k.registerHandler(function() {\n u();\n o = false;\n s = undefined;\n p = [];\n });\n },\n showDialog: function(y, z, aa) {\n if ((o && l(p, y))) {\n u();\n h.inform(\"DynamicFriendListEducation/dialogOpen\", {\n uid: z,\n flid: y\n });\n s = aa;\n q = new j().setAsync(new i(\"/ajax/friends/lists/smart_list_education.php\").setMethod(\"GET\").setData({\n flid: y,\n uid: z\n }).setReadOnly(true)).setHandler(v.bind(this, y)).setCloseHandler(function() {\n h.inform(\"DynamicFriendListEducation/dialogClosed\", {\n uid: z,\n flid: y\n });\n }).setCancelHandler(function() {\n h.inform(\"DynamicFriendListEducation/dialogCancel\", {\n uid: z,\n flid: y\n });\n }).show();\n }\n else aa();\n ;\n },\n showContextualDialog: function(y, z, aa, ba) {\n if ((o && l(p, y))) {\n u();\n t = aa;\n s = ba;\n new i(\"/ajax/friends/lists/smart_list_contextual_education.php\").setMethod(\"GET\").setData({\n flid: y,\n uid: z\n }).setReadOnly(true).send();\n }\n else ba();\n ;\n },\n setContextualDialog: function(y, z, aa, ba) {\n r = y;\n r.setContext(t);\n r.show();\n g.listen(z, \"click\", v.bind(this, ba));\n g.listen(aa, \"click\", w);\n }\n };\n e.exports = x;\n});\n__d(\"FriendStatus\", [\"function-extensions\",\"Arbiter\",\"AsyncRequest\",\"arrayContains\",\"copyProperties\",\"createArrayFrom\",\"eachKeyVal\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"Arbiter\"), h = b(\"AsyncRequest\"), i = b(\"arrayContains\"), j = b(\"copyProperties\"), k = b(\"createArrayFrom\"), l = b(\"eachKeyVal\");\n function m(q, r, s) {\n this.id = q;\n this.update(r, s);\n };\n j(m.prototype, {\n update: function(q, r) {\n (q && (this.status = q));\n if (r) {\n this.lists = k(r).map(String);\n this._informListChange();\n }\n ;\n },\n isComplete: function() {\n return !!this.lists;\n },\n addToList: function(q) {\n if ((this.lists && !i(this.lists, q))) {\n this.lists.push(q);\n };\n this._informListChange();\n },\n removeFromList: function(q) {\n if (this.lists) {\n var r = this.lists.indexOf(q);\n ((r !== -1) && this.lists.splice(r, 1));\n }\n ;\n this._informListChange();\n },\n updateList: function(q, r) {\n (r ? this.addToList(q) : this.removeFromList(q));\n },\n _informListChange: function() {\n g.inform(\"FriendListMembershipChange\", {\n uid: this.id,\n lists: this.lists\n });\n }\n });\n j(m, {\n ARE_FRIENDS: 1,\n INCOMING_REQUEST: 2,\n OUTGOING_REQUEST: 3,\n CAN_REQUEST: 4\n });\n var n = {\n }, o = {\n };\n function p(q, r, s) {\n if (!n[s.uid]) {\n n[s.uid] = new m(s.uid, q);\n }\n else n[s.uid].update(q);\n ;\n g.inform(\"FriendRequest/change\", {\n uid: s.uid,\n status: q\n });\n };\n g.subscribe([\"FriendRequest/cancel\",\"FriendRequest/unfriend\",\"FriendRequest/sendFail\",], p.curry(m.CAN_REQUEST));\n g.subscribe([\"FriendRequest/confirmFail\",], p.curry(m.INCOMING_REQUEST));\n g.subscribe([\"FriendRequest/cancelFail\",\"FriendRequest/sent\",\"FriendRequest/sending\",], p.curry(m.OUTGOING_REQUEST));\n g.subscribe([\"FriendRequest/confirm\",\"FriendRequest/confirming\",], p.curry(m.ARE_FRIENDS));\n j(m, {\n CLOSE_FRIENDS: null,\n ACQUAINTANCES: null,\n getFriend: function(q, r) {\n if ((n[q] && n[q].isComplete())) {\n r(n[q]);\n }\n else if (o[q]) {\n o[q].push(r);\n }\n else {\n o[q] = [r,];\n new h().setURI(\"/ajax/friends/status.php\").setData({\n friend: q\n }).setHandler(function(s) {\n var t = s.getPayload();\n m.initFriend.bind(m, q, t.status, t.lists).defer();\n }).send();\n }\n \n ;\n },\n initFriend: function(q, r, s) {\n var t = (n[q] || new m(q));\n t.update((t.status || r), (t.lists || s));\n n[q] = t;\n (o[q] && o[q].forEach(function(u) {\n u(t);\n }));\n o[q] = null;\n },\n setSpecialLists: function(q) {\n var r = (m.CLOSE_FRIENDS === null);\n m.CLOSE_FRIENDS = (q.close + \"\");\n m.ACQUAINTANCES = (q.acq + \"\");\n if (r) {\n l(n, function(s, t) {\n t._informListChange();\n });\n };\n }\n });\n e.exports = m;\n});\n__d(\"FriendEditLists\", [\"Arbiter\",\"AsyncRequest\",\"CSS\",\"DOMQuery\",\"DynamicFriendListEducation\",\"EditSubscriptions\",\"FriendStatus\",\"MenuDeprecated\",\"Parent\",\"ScrollableArea\",\"URI\",\"$\",\"arrayContains\",\"copyProperties\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncRequest\"), i = b(\"CSS\"), j = b(\"DOMQuery\"), k = b(\"DynamicFriendListEducation\"), l = b(\"EditSubscriptions\"), m = b(\"FriendStatus\"), n = b(\"MenuDeprecated\"), o = b(\"Parent\"), p = b(\"ScrollableArea\"), q = b(\"URI\"), r = b(\"$\"), s = b(\"arrayContains\"), t = b(\"copyProperties\"), u = b(\"ge\"), v = 5, w = {\n }, x = \"/ajax/profile/removefriendconfirm.php\", y = \"/ajax/friends/requests/cancel.php\", z = \"/ajax/choose/\", aa = \"/profile.php\", ba = \"/ajax/report/social.php\", ca, da;\n function ea(pa, qa, ra) {\n var sa = w[pa.id], ta = function(ua) {\n var va = {\n action: (ra ? \"add_list\" : \"del_list\"),\n to_friend: sa.id,\n friendlists: [qa,],\n source: ca\n };\n if (ua) {\n t(va, ua);\n };\n sa.updateList(qa, ra);\n var wa;\n if ((ra && (qa == m.CLOSE_FRIENDS))) {\n wa = ha(pa, m.ACQUAINTANCES);\n if (n.isItemChecked(wa)) {\n n.toggleItem(wa);\n ea(pa, m.ACQUAINTANCES, false);\n }\n ;\n }\n else if ((ra && (qa == m.ACQUAINTANCES))) {\n wa = ha(pa, m.CLOSE_FRIENDS);\n if (n.isItemChecked(wa)) {\n n.toggleItem(wa);\n ea(pa, m.CLOSE_FRIENDS, false);\n }\n ;\n }\n \n ;\n var xa = {\n flid: qa,\n uid: sa.id\n }, ya = (ra ? \"FriendListHovercard/add\" : \"FriendListHovercard/remove\");\n g.inform(ya, xa);\n new h().setURI(\"/ajax/add_friend/action.php\").setData(va).send();\n };\n if (ra) {\n k.showDialog(qa, sa.id, ta);\n }\n else ta();\n ;\n };\n function fa(pa) {\n var qa = j.scry(pa, \"input\")[0];\n return (qa && qa.value);\n };\n function ga(pa, qa, ra) {\n var sa = {\n uid: qa.id\n };\n new h().setURI(y).setMethod(\"POST\").setData({\n friend: qa.id\n }).setHandler(g.inform.bind(g, \"FriendRequest/cancel\", sa)).setErrorHandler(g.inform.bind(g, \"FriendRequest/cancelFail\", sa)).setStatusElement(ra).send();\n };\n function ha(pa, qa) {\n var ra = n.getItems(pa);\n for (var sa = 0; (sa < ra.length); sa++) {\n if ((fa(ra[sa]) == qa)) {\n return ra[sa]\n };\n };\n return null;\n };\n function ia(pa, qa) {\n var ra = n.getItems(pa);\n ra.forEach(function(sa) {\n var ta = fa(sa), ua = s(qa.lists, ta);\n if ((n.isItemChecked(sa) !== ua)) {\n n.toggleItem(sa);\n };\n });\n };\n function ja(pa) {\n var qa = n.getItems(pa), ra = (!i.hasClass(pa, \"followButtonFlyout\") && !i.hasClass(pa, \"likeButtonFlyout\")), sa = [], ta = [], ua = 0, va = 0;\n qa.forEach(function(ab) {\n if (i.hasClass(ab, \"neverHide\")) {\n i.removeClass(ab, \"underShowMore\");\n ua++;\n }\n else if (n.isItemChecked(ab)) {\n sa.push(ab);\n }\n else if (((i.hasClass(ab, \"neverShow\") || i.hasClass(ab, \"FriendListCreateTrigger\")) || ((!ra && i.hasClass(ab, \"friendOptionsOnly\"))))) {\n i.addClass(ab, \"underShowMore\");\n va++;\n }\n else ta.push(ab);\n \n \n ;\n });\n var wa = (v - ua), xa = sa.concat(ta), ya = va;\n xa.forEach(function(ab) {\n if (i.hasClass(ab, \"ShowMoreItem\")) {\n wa--;\n return;\n }\n ;\n if (wa) {\n i.removeClass(ab, \"underShowMore\");\n wa--;\n }\n else {\n i.addClass(ab, \"underShowMore\");\n ya = true;\n }\n ;\n });\n i.conditionClass(pa, \"hasMoreFriendListItems\", ya);\n var za = j.scry(pa, \".FriendListMenuShowMore\");\n za.forEach(function(ab) {\n i.removeClass(ab, \"FriendListMenuShowMore\");\n });\n };\n function ka(pa, qa) {\n i.conditionClass(pa, \"FriendListMemorializedUser\", qa);\n };\n function la(pa, qa) {\n i.conditionClass(pa, \"FriendListCannotSuggestFriends\", !qa);\n };\n function ma(pa, qa) {\n var ra = j.scry(pa, \".FriendListUnfriend\")[0], sa = j.scry(pa, \".FriendListCancel\")[0], ta = j.scry(pa, \".FriendListSuggestFriends\")[0], ua = j.scry(pa, \".FriendListFriendship\")[0], va = j.scry(pa, \".FriendListReportBlock\")[0];\n if (sa) {\n i.conditionShow(sa, (qa.status == m.OUTGOING_REQUEST));\n };\n if (ra) {\n i.conditionShow(ra, (qa.status == m.ARE_FRIENDS));\n var wa = j.find(ra, \"a\");\n wa.setAttribute(\"ajaxify\", q(x).addQueryData({\n uid: qa.id,\n unref: da\n }).toString());\n }\n else i.conditionClass(pa, \"NoFriendListActionSeparator\", (!sa || (qa.status != m.OUTGOING_REQUEST)));\n ;\n if (ta) {\n j.find(ta, \"a\").setAttribute(\"href\", q(z).addQueryData({\n type: \"suggest_friends\",\n newcomer: qa.id,\n ref: \"profile_others_dropdown\"\n }).toString());\n };\n if (ua) {\n i.conditionShow(ua, (qa.status == m.ARE_FRIENDS));\n j.find(ua, \"a\").setAttribute(\"href\", q(aa).addQueryData({\n and: qa.id\n }).toString());\n }\n ;\n if (va) {\n j.find(va, \"a\").setAttribute(\"ajaxify\", q(ba).addQueryData({\n content_type: 0,\n cid: qa.id,\n rid: qa.id\n }).toString());\n };\n };\n function na(pa, qa) {\n var ra = j.scry(pa, \"div.FriendListSubscriptionsMenu\");\n if ((ra.length !== 0)) {\n l.init(pa, qa, 45);\n };\n };\n g.subscribe(\"FriendRequest/change\", function(pa, qa) {\n for (var ra in w) {\n var sa = u(ra), ta = w[ra];\n if (((sa && ta) && (ta.id == qa.uid))) {\n ia(sa, ta);\n ma(sa, ta);\n ja(sa);\n }\n ;\n };\n });\n n.subscribe(\"select\", function(pa, qa) {\n if ((i.hasClass(qa.item, \"ShowMoreItem\") && i.hasClass(qa.menu, \"FriendListMenu\"))) {\n i.addClass(qa.menu, \"FriendListMenuShowMore\");\n p.poke(qa.item);\n }\n ;\n });\n var oa = {\n init: function(pa, qa, ra, sa, ta, ua) {\n pa = r(pa);\n ca = ra;\n da = ua;\n if (!w[pa.id]) {\n n.subscribe(\"select\", function(va, wa) {\n if (j.contains(pa, wa.item)) {\n if (o.byClass(wa.item, \"FriendListItem\")) {\n n.toggleItem(wa.item);\n var xa = fa(wa.item);\n ea(pa, xa, n.isItemChecked(wa.item));\n }\n else if (o.byClass(wa.item, \"FriendListCancel\")) {\n ga(pa, w[pa.id], wa.item);\n }\n else if (o.byClass(wa.item, \"FriendListUnfriend\")) {\n g.inform(\"FriendEditLists/unfriend\");\n }\n \n \n };\n });\n };\n i.addClass(pa, \"async_saving\");\n m.getFriend(qa, function(va) {\n ka(pa, sa);\n la(pa, ta);\n ia(pa, va);\n ma(pa, va);\n w[pa.id] = va;\n ja(pa);\n na(pa, qa);\n i.removeClass(pa, \"async_saving\");\n }.bind(this));\n }\n };\n e.exports = (a.FriendEditLists || oa);\n});\n__d(\"FriendListFlyoutController\", [\"Event\",\"Arbiter\",\"AsyncRequest\",\"Button\",\"ContextualLayer\",\"CSS\",\"DataStore\",\"Dialog\",\"DOM\",\"DOMQuery\",\"FriendEditLists\",\"FriendStatus\",\"Keys\",\"Layer\",\"LayerHideOnEscape\",\"LayerTabIsolation\",\"MenuDeprecated\",\"Parent\",\"ScrollableArea\",\"Style\",\"TabbableElements\",\"UserAgent\",\"cx\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Arbiter\"), i = b(\"AsyncRequest\"), j = b(\"Button\"), k = b(\"ContextualLayer\"), l = b(\"CSS\"), m = b(\"DataStore\"), n = b(\"Dialog\"), o = b(\"DOM\"), p = b(\"DOMQuery\"), q = b(\"FriendEditLists\"), r = b(\"FriendStatus\"), s = b(\"Keys\"), t = b(\"Layer\"), u = b(\"LayerHideOnEscape\"), v = b(\"LayerTabIsolation\"), w = b(\"MenuDeprecated\"), x = b(\"Parent\"), y = b(\"ScrollableArea\"), z = b(\"Style\"), aa = b(\"TabbableElements\"), ba = b(\"UserAgent\"), ca = b(\"cx\"), da = b(\"emptyFunction\"), ea, fa, ga = null, ha = null, ia, ja, ka, la, ma, na, oa = 1500, pa, qa = [\"uiButtonConfirm\",\"uiButtonSpecial\",\"-cx-PRIVATE-uiButton__special\",\"-cx-PRIVATE-uiButton__confirm\",\"-cx-PRIVATE-xuiButton__special\",\"-cx-PRIVATE-xuiOverlayButton__root\",\"-cx-PRIVATE-xuiButton__confirm\",], ra = {\n init: function(tb, ub) {\n ra.init = da;\n ea = tb;\n ea.subscribe(\"mouseenter\", ab);\n ea.subscribe(\"mouseleave\", ob);\n ea.subscribe(\"hide\", cb);\n ea.enableBehavior(v);\n ea.enableBehavior(u);\n pa = ub;\n if (ga) {\n o.setContent(ea.getContent(), [ga,ha,]);\n };\n var vb = function(wb) {\n var xb = x.byClass(wb.getTarget(), \"enableFriendListFlyout\");\n if (xb) {\n if ((ia === xb)) {\n clearTimeout(la);\n }\n else {\n (fa && qb());\n nb(xb);\n }\n \n };\n };\n g.listen(document.documentElement, {\n mouseover: vb,\n click: vb,\n keydown: function(event) {\n var wb = event.getTarget();\n if (event.getModifiers().any) {\n return\n };\n if ((!fa || p.isNodeOfType(wb, [\"input\",\"textarea\",]))) {\n return\n };\n var xb = g.getKeyCode(event), yb;\n switch (xb) {\n case s.UP:\n \n case s.DOWN:\n var zb = za();\n yb = xa(zb);\n va(zb[(yb + (((xb === s.UP) ? -1 : 1)))]);\n return false;\n case s.SPACE:\n var ac = wa(wb);\n if (ac) {\n sa(ac);\n event.prevent();\n }\n ;\n break;\n default:\n var bc = String.fromCharCode(xb).toLowerCase(), cc = za();\n yb = xa(cc);\n var dc = yb, ec = cc.length;\n while ((((~yb && ((dc = (++dc % ec)) !== yb))) || ((!~yb && (++dc < ec))))) {\n var fc = w.getItemLabel(cc[dc]);\n if ((fc && (fc.charAt(0).toLowerCase() === bc))) {\n va(cc[dc]);\n return false;\n }\n ;\n };\n };\n }\n });\n h.subscribe(\"FriendEditLists/unfriend\", qb);\n h.subscribe(\"DynamicFriendListEducation/dialogOpen\", function() {\n na = true;\n });\n h.subscribe(\"DynamicFriendListEducation/dialogClosed\", function() {\n na = false;\n ob();\n });\n },\n initContent: function(tb) {\n o.appendContent(document.body, tb);\n db(tb);\n (function() {\n if (!ga) {\n ga = tb;\n (ea && o.setContent(ea.getContent(), [ga,ha,]));\n l.show(ga);\n g.listen(ga, \"click\", rb);\n (fa && kb(ia));\n }\n else {\n o.remove(tb);\n tb = null;\n }\n ;\n }).defer();\n },\n initNux: function(tb) {\n if (ha) {\n return\n };\n ha = tb;\n (ea && o.setContent(ea.getContent(), [ga,ha,]));\n },\n show: function(tb) {\n lb(tb);\n },\n hide: function(tb) {\n ((tb === false) ? qb() : ob());\n },\n setActiveNode: function(tb) {\n (fa && qb());\n ia = tb;\n ja = g.listen(tb, \"mouseleave\", function() {\n ia = null;\n (ja && ja.remove());\n });\n },\n setCloseListener: function(tb, ub) {\n m.set(tb, \"flfcloselistener\", ub);\n if ((ia != tb)) {\n m.set(tb, \"flfcloselistenertimeout\", sb.curry(tb).defer(oa));\n };\n },\n setCloseListenerTimeout: function(tb) {\n oa = tb;\n }\n };\n function sa(tb) {\n (ba.firefox() && ua(tb).blur());\n w.inform(\"select\", {\n menu: ta(tb),\n item: tb\n });\n };\n function ta(tb) {\n if (l.hasClass(tb, \"uiMenuContainer\")) {\n return tb\n };\n return x.byClass(tb, \"uiMenu\");\n };\n function ua(tb) {\n return p.find(tb, \"a.itemAnchor\");\n };\n function va(tb) {\n if ((tb && ya(tb))) {\n w._removeSelected(ea.getContent());\n l.addClass(tb, \"selected\");\n ua(tb).focus();\n }\n ;\n };\n function wa(tb) {\n return x.byClass(tb, \"uiMenuItem\");\n };\n function xa(tb) {\n if (document.activeElement) {\n var ub = wa(document.activeElement);\n return tb.indexOf(ub);\n }\n ;\n return -1;\n };\n function ya(tb) {\n return ((!l.hasClass(tb, \"disabled\") && (z.get(tb, \"display\") !== \"none\")) && (z.get(x.byClass(tb, \"uiMenu\"), \"display\") !== \"none\"));\n };\n function za() {\n return w.getItems(ea.getContent()).filter(ya);\n };\n function ab() {\n clearTimeout(la);\n };\n function bb(tb) {\n for (var ub = 0; (ub < qa.length); ub++) {\n if (l.hasClass(tb, qa[ub])) {\n return false\n };\n };\n return true;\n };\n function cb() {\n if (ia) {\n if (bb(ia)) {\n l.removeClass(ia, \"-cx-PUBLIC-uiHoverButton__selected\");\n if ((l.hasClass(ia, \"uiButton\") || l.hasClass(ia, \"-cx-PRIVATE-uiButton__root\"))) {\n l.removeClass(ia, \"selected\");\n };\n }\n ;\n if (m.get(ia, \"flfcloselistener\")) {\n var tb = ia;\n m.set(ia, \"flfcloselistenertimeout\", sb.curry(tb).defer(oa));\n }\n ;\n }\n ;\n fa = false;\n jb();\n ia = null;\n };\n function db(tb) {\n var ub = p.scry(tb, \"[tabindex=\\\"0\\\"]\");\n ub.forEach(function(vb) {\n vb.tabIndex = \"-1\";\n });\n (ub[0] && (ub[0].tabIndex = \"0\"));\n };\n function eb(tb) {\n if ((p.isNodeOfType(tb, \"label\") && l.hasClass(tb, \"uiButton\"))) {\n tb = j.getInputElement(tb);\n };\n return tb;\n };\n function fb(tb) {\n return m.get(eb(tb), \"profileid\");\n };\n function gb(tb) {\n return (m.get(eb(tb), \"memorialized\") === \"true\");\n };\n function hb(tb) {\n return (m.get(eb(tb), \"cansuggestfriends\") === \"true\");\n };\n function ib(tb) {\n return m.get(eb(tb), \"unref\");\n };\n function jb() {\n (ja && ja.remove());\n ja = null;\n (ma && t.unsubscribe(ma));\n ma = null;\n (la && clearTimeout(la));\n la = null;\n };\n function kb(tb) {\n var ub = fb(tb), vb = gb(tb), wb = hb(tb), xb = m.get(tb, \"flloc\"), yb = ib(tb);\n q.init(ga, ub, xb, vb, wb, yb);\n l.conditionClass(ga, \"followButtonFlyout\", l.hasClass(tb, \"profileFollowButton\"));\n l.conditionClass(ga, \"friendButtonFlyout\", ((l.hasClass(tb, \"FriendRequestFriends\") || l.hasClass(tb, \"FriendRequestIncoming\")) || l.hasClass(tb, \"FriendRequestOutgoing\")));\n l.conditionClass(ga, \"likeButtonFlyout\", l.hasClass(tb, \"profileLikeButton\"));\n var zb = p.scry(ga, \"div.uiScrollableArea\")[0];\n (zb && y.poke(zb));\n var ac = aa.find(ga)[0];\n (ac && ac.focus());\n };\n function lb(tb) {\n if ((!ea || fa)) {\n return\n };\n ea.setContext(tb);\n ea.setCausalElement(tb);\n tb.setAttribute(\"aria-expanded\", \"true\");\n if (bb(tb)) {\n l.addClass(tb, \"-cx-PUBLIC-uiHoverButton__selected\");\n if ((l.hasClass(tb, \"uiButton\") || l.hasClass(tb, \"-cx-PRIVATE-uiButton__root\"))) {\n l.addClass(tb, \"selected\");\n };\n }\n ;\n ea.show();\n ia = tb;\n fa = true;\n var ub = null;\n if (ga) {\n ub = \"show\";\n kb(tb);\n }\n else {\n ub = \"init_show\";\n new i().setURI(\"/ajax/friends/lists/flyout_content.php\").setStatusElement(ea.getContent()).send();\n }\n ;\n jb();\n ja = g.listen(tb, \"mouseleave\", ob);\n ma = t.subscribe(\"show\", mb);\n if (m.get(tb, \"flfcloselistener\")) {\n clearTimeout(m.remove(tb, \"flfcloselistenertimeout\"));\n };\n var vb = fb(tb);\n r.getFriend(vb, function(wb) {\n if ((wb.status == r.ARE_FRIENDS)) {\n new i().setURI(\"/ajax/friends/lists/flyout_log.php\").setData({\n target_id: fb(tb),\n unref: ib(tb),\n action: ub\n }).send();\n };\n if (!ha) {\n return\n };\n if ((wb.status == r.OUTGOING_REQUEST)) {\n l.show(ha);\n i.bootstrap(\"/ajax/friends/lists/nux_flyout.php\", null, true);\n }\n else l.hide(ha);\n ;\n });\n };\n function mb(tb, ub) {\n if ((!((ub instanceof k)) || !p.contains(ia, ub.getContext()))) {\n ob();\n };\n };\n function nb(tb) {\n ia = tb;\n ka = lb.curry(tb).defer(pa);\n ja = g.listen(tb, \"mouseleave\", function() {\n clearTimeout(ka);\n ia = null;\n (ja && ja.remove());\n });\n };\n function ob() {\n la = qb.defer(150);\n };\n function pb() {\n var tb = n.getCurrent(), ub = (tb && tb.getBody());\n return !!((ub && p.scry(ub, \".friendListDialogTourCarousel\")[0]));\n };\n function qb() {\n if ((na || pb())) {\n return\n };\n ((ba.ie() < 8) && document.documentElement.focus());\n if (ea) {\n ea.hide();\n var tb = ea.getCausalElement();\n (tb && tb.setAttribute(\"aria-expanded\", \"false\"));\n }\n ;\n };\n function rb(event) {\n var tb = x.byTag(event.getTarget(), \"a\");\n if ((tb && l.hasClass(tb, \"FriendListActionItem\"))) {\n ob();\n };\n };\n function sb(tb) {\n var ub = m.remove(tb, \"flfcloselistener\");\n (ub && ub());\n };\n e.exports = (a.FriendListFlyoutController || ra);\n});\n__d(\"AddFriendButton\", [\"Event\",\"Animation\",\"Arbiter\",\"AsyncRequest\",\"AsyncResponse\",\"collectDataAttributes\",\"CSS\",\"DOMQuery\",\"FriendListFlyoutController\",\"FriendStatus\",\"ge\",\"goURI\",\"Style\",\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Animation\"), i = b(\"Arbiter\"), j = b(\"AsyncRequest\"), k = b(\"AsyncResponse\"), l = b(\"collectDataAttributes\"), m = b(\"CSS\"), n = b(\"DOMQuery\"), o = b(\"FriendListFlyoutController\"), p = b(\"FriendStatus\"), q = b(\"ge\"), r = b(\"goURI\"), s = b(\"Style\"), t = b(\"URI\"), u = {\n ERROR_ALREADY_ADDED: 1431005,\n init: function(v, w, x, y, z, aa, ba, ca, da, ea, fa, ga) {\n var ha = v.id, ia = null, ja = n.scry(v, \".addButton\")[0], ka = n.scry(v, \".addFriendText\")[0], la = n.scry(v, \".outgoingButton\")[0], ma = n.scry(v, \".incomingButton\")[0], na = n.scry(v, \".friendButton\")[0];\n function oa(ua, va, wa) {\n var xa = new t(ja.getAttribute(\"ajaxify\")), ya = l(v, [\"ft\",\"gt\",]);\n new j().setURI(aa).setData({\n to_friend: w,\n action: ua,\n how_found: y,\n ref_param: z,\n link_data: ya,\n outgoing_id: la.id,\n xids: xa.getQueryData().xids,\n logging_location: ba,\n no_flyout_on_click: ca,\n ego_log_data: da,\n http_referer: fa\n }).setErrorHandler(va).setServerDialogCancelHandler(wa).setRelativeTo(la).send();\n if ((ga && (ua === \"add_friend\"))) {\n new j().setURI(\"/ajax/add_friend/chain_pymk.php\").send();\n };\n };\n function pa(ua, va) {\n if (ka) {\n m.hide(ka);\n }\n else if (ja) {\n m.hide(ja);\n }\n ;\n (la && m.hide(la));\n (ma && m.hide(ma));\n (na && m.hide(na));\n if (ua) {\n m.show(ua);\n };\n if ((((\"Outgoing\" == va) && (ia != va)) && ea)) {\n new h(ua).from(\"backgroundColor\", \"#FFF8CC\").to(\"backgroundColor\", \"transparent\").from(\"borderColor\", \"#FFE222\").to(\"borderColor\", s.get(ua, \"borderLeftColor\")).duration(2000).go();\n };\n (ia && m.removeClass(v, (\"fStatus\" + ia)));\n ia = va;\n m.addClass(v, (\"fStatus\" + va));\n };\n function qa(ua) {\n if (m.hasClass(ua, \"enableFriendListFlyout\")) {\n o.show(ua);\n }\n else o.hide();\n ;\n };\n var ra = i.subscribe(\"FriendRequest/change\", function(ua, va) {\n ta();\n if ((va.uid != w)) {\n return\n };\n switch (va.status) {\n case p.ARE_FRIENDS:\n return pa(na, \"Friends\");\n case p.INCOMING_REQUEST:\n return pa(ma, \"Incoming\");\n case p.OUTGOING_REQUEST:\n return pa(la, \"Outgoing\");\n case p.CAN_REQUEST:\n return pa((ka ? ka : ja), \"Requestable\");\n };\n }), sa;\n if (x) {\n sa = i.subscribe(\"FriendRequest/confirm\", function(ua, va) {\n ta();\n ((va.uid == w) && r(x));\n });\n };\n (ja && g.listen(ja, \"click\", function() {\n i.inform(\"FriendRequest/sending\", {\n uid: w\n });\n if (ca) {\n o.setActiveNode(la);\n }\n else qa(la);\n ;\n oa(\"add_friend\", function(ua) {\n var va = ((ua.error == u.ERROR_ALREADY_ADDED) ? \"FriendRequest/sent\" : \"FriendRequest/sendFail\");\n i.inform(va, {\n uid: w\n });\n o.hide();\n k.defaultErrorHandler(ua);\n }, function(ua) {\n i.inform(\"FriendRequest/sendFail\", {\n uid: w\n });\n o.hide();\n });\n }));\n function ta() {\n if (q(ha)) {\n return\n };\n (ra && ra.unsubscribe());\n (sa && sa.unsubscribe());\n ra = sa = null;\n };\n }\n };\n e.exports = u;\n});\n__d(\"FriendButtonIcon\", [\"Arbiter\",\"FriendStatus\",\"Button\",\"arrayContains\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"FriendStatus\"), i = b(\"Button\"), j = b(\"arrayContains\");\n e.exports = {\n register: function(k, l, m) {\n g.subscribe(\"FriendListMembershipChange\", function(n, o) {\n if ((o.uid == m)) {\n var p = j(o.lists, h.CLOSE_FRIENDS), q = j(o.lists, h.ACQUAINTANCES);\n if ((p && !q)) {\n i.setIcon(k, l.close);\n }\n else if ((q && !p)) {\n i.setIcon(k, l.acquaintance);\n }\n else i.setIcon(k, l.friend);\n \n ;\n }\n ;\n });\n }\n };\n});\n__d(\"legacy:friend-browser-checkbox-js\", [\"FriendBrowserCheckboxController\",], function(a, b, c, d) {\n a.FriendBrowserCheckboxController = b(\"FriendBrowserCheckboxController\");\n}, 3);\n__d(\"legacy:onvisible\", [\"OnVisible\",], function(a, b, c, d) {\n a.OnVisible = b(\"OnVisible\");\n}, 3);"); |
| // 12143 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s16aa7ef075b409a7e3c2d48eb99ad115febdba99"); |
| // 12144 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"cstCX\",]);\n}\n;\n;\n__d(\"SubscriptionLevels\", [], function(a, b, c, d, e, f) {\n var g = {\n ALL: \"162318810514679\",\n DEFAULT: \"271670892858696\",\n TOP: \"266156873403755\"\n };\n e.exports = g;\n});\n__d(\"EditSubscriptions\", [\"JSBNG__Event\",\"function-extensions\",\"Arbiter\",\"AsyncRequest\",\"JSBNG__CSS\",\"DOM\",\"MenuDeprecated\",\"Parent\",\"SubscriptionLevels\",\"arrayContains\",\"cx\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\");\n b(\"function-extensions\");\n var h = b(\"Arbiter\"), i = b(\"AsyncRequest\"), j = b(\"JSBNG__CSS\"), k = b(\"DOM\"), l = b(\"MenuDeprecated\"), m = b(\"Parent\"), n = b(\"SubscriptionLevels\"), o = b(\"arrayContains\"), p = b(\"cx\"), q = b(\"ge\"), r = 13, s = 45, t = [n.ALL,n.DEFAULT,n.TOP,], u = {\n }, v = {\n }, w = {\n }, x = {\n }, y = {\n }, z = {\n }, aa = {\n }, ba = {\n }, ca = {\n }, da = {\n }, ea = {\n }, fa = \"/ajax/follow/follow_profile.php\", ga = \"/ajax/follow/unfollow_profile.php\", ha = \"/ajax/settings/notifications/notify_me.php\", ia = {\n }, ja = {\n }, ka = null, la = false;\n function ma(jb) {\n return o(t, jb);\n };\n;\n function na(jb, kb, lb, mb) {\n var nb = ((m.byClass(mb, \"uiMenuItem\") || m.byClass(mb, \"-cx-PUBLIC-abstractMenuItem__root\")));\n if (((!nb || !k.contains(jb, nb)))) {\n return;\n }\n else if (j.hasClass(nb, \"SubscribeMenuSubscribeCheckbox\")) {\n if (w[kb]) {\n qa(jb, kb);\n }\n else pa(jb, kb);\n ;\n ;\n return false;\n }\n else if (j.hasClass(nb, \"SubscribeMenuUnsubscribe\")) {\n qa(jb, kb);\n return false;\n }\n else if (j.hasClass(nb, \"SubscribeMenuSettingsItem\")) {\n db(jb, true);\n return false;\n }\n else if (j.hasClass(nb, \"SubscriptionMenuGoBack\")) {\n db(jb, false);\n return false;\n }\n else if (j.hasClass(nb, \"SubscriptionMenuItem\")) {\n oa(jb, kb, lb, nb);\n return false;\n }\n else if (j.hasClass(nb, \"SubscribeMenuNotifyMeCheckbox\")) {\n if (x[kb]) {\n hb(jb, kb);\n }\n else gb(jb, kb);\n ;\n ;\n return false;\n }\n \n \n \n \n \n \n ;\n ;\n };\n;\n function oa(jb, kb, lb, mb) {\n if (j.hasClass(mb, \"SubscriptionMenuLevel\")) {\n if (l.isItemChecked(mb)) {\n return;\n }\n ;\n ;\n bb(jb, kb, ua(mb), true, lb);\n }\n else if (j.hasClass(mb, \"SubscriptionMenuCategory\")) {\n ya(kb, mb, !l.isItemChecked(mb), true, lb);\n }\n else if (j.hasClass(mb, \"SubscriptionAppStory\")) {\n ab(kb, mb, !l.isItemChecked(mb), lb);\n }\n \n \n ;\n ;\n };\n;\n function pa(jb, kb) {\n var lb = {\n profile_id: kb\n };\n h.inform(\"FollowingUser\", lb);\n new i().setURI(fa).setMethod(\"POST\").setData({\n profile_id: kb,\n JSBNG__location: ra(jb)\n }).setErrorHandler(h.inform.curry(\"FollowUserFail\", lb)).send();\n };\n;\n function qa(jb, kb) {\n var lb = {\n profile_id: kb\n };\n h.inform(\"UnfollowingUser\", lb);\n new i().setURI(ga).setMethod(\"POST\").setData({\n profile_id: kb,\n JSBNG__location: ra(jb)\n }).setErrorHandler(h.inform.curry(\"UnfollowUserFail\", lb)).send();\n };\n;\n function ra(jb) {\n if (j.hasClass(jb, \"followButtonFlyout\")) {\n return r;\n }\n else return s\n ;\n };\n;\n function sa(jb, kb, lb) {\n var mb = {\n profile_id: jb,\n level: ba[jb],\n custom_categories: ca[jb],\n JSBNG__location: lb\n };\n new i().setURI(\"/ajax/follow/manage_subscriptions.php\").setData(mb).send();\n };\n;\n function ta(jb, kb) {\n var lb = ((ca[kb] || [])), mb = l.getItems(jb);\n mb.forEach(function(nb) {\n if (j.hasClass(nb, \"SubscriptionMenuCategory\")) {\n var ob = ua(nb);\n if (o(lb, ob)) {\n wa(nb);\n }\n else xa(nb);\n ;\n ;\n }\n else if (j.hasClass(nb, \"SubscriptionAppStory\")) {\n var pb = ua(nb);\n if (((ja[kb] && ja[kb][pb]))) {\n wa(nb);\n }\n else xa(nb);\n ;\n ;\n }\n \n ;\n ;\n });\n bb(jb, kb, ba[kb], false);\n };\n;\n function ua(jb) {\n var kb = k.scry(jb, \"input\")[0];\n return ((kb && kb.value));\n };\n;\n function va(jb) {\n return k.JSBNG__find(jb, \"a.itemAnchor\");\n };\n;\n function wa(jb) {\n j.addClass(jb, \"checked\");\n va(jb).setAttribute(\"aria-checked\", true);\n };\n;\n function xa(jb) {\n j.removeClass(jb, \"checked\");\n va(jb).setAttribute(\"aria-checked\", false);\n };\n;\n function ya(jb, kb, lb, mb, nb) {\n if (lb) {\n wa(kb);\n }\n else xa(kb);\n ;\n ;\n var ob = ua(kb);\n if (ma(ob)) {\n ((lb && za(jb, ob)));\n }\n else if (lb) {\n if (!o(ca[jb], ob)) {\n ca[jb].push(ob);\n }\n ;\n ;\n }\n else {\n var pb = ca[jb].indexOf(ob);\n if (((pb !== -1))) {\n ca[jb].splice(pb, 1);\n }\n ;\n ;\n }\n \n ;\n ;\n if (mb) {\n sa(jb, ob, nb);\n }\n ;\n ;\n };\n;\n function za(jb, kb) {\n ba[jb] = kb;\n h.inform(\"SubscriptionLevelUpdated\", {\n profile_id: jb,\n level: kb\n });\n };\n;\n function ab(jb, kb, lb, mb) {\n var nb = \"/ajax/feed/filter_action/\", ob = ua(kb), pb = {\n actor_id: jb,\n app_id: ob\n };\n if (lb) {\n wa(kb);\n nb += \"resubscribe_user_app/\";\n pb.action = \"resubscribe_user_app\";\n if (!ja[jb]) {\n ja[jb] = {\n };\n }\n ;\n ;\n ja[jb][ob] = true;\n }\n else {\n xa(kb);\n nb += \"unsubscribe_user_app_checkbox/\";\n pb.action = \"unsubscribe_user_app_checkbox\";\n if (ja[jb]) {\n ja[jb][ob] = false;\n }\n ;\n ;\n }\n ;\n ;\n new i().setURI(nb).setData(pb).send();\n };\n;\n function bb(jb, kb, lb, mb, nb) {\n var ob = k.scry(jb, \".SubscriptionMenuLevel\"), pb = null;\n ob.forEach(function(qb) {\n if (((ua(qb) == lb))) {\n pb = qb;\n }\n else if (l.isItemChecked(qb)) {\n ya(kb, qb, false, false);\n }\n \n ;\n ;\n });\n ((pb && ya(kb, pb, true, mb, nb)));\n };\n;\n function cb(jb, kb, lb) {\n w[kb] = lb;\n j.conditionClass(jb, \"isUnsubscribed\", !lb);\n var mb = k.scry(jb, \"li.SubscribeMenuSubscribeCheckbox\");\n if (((mb.length !== 0))) {\n var nb = mb[0];\n if (lb) {\n wa(nb);\n }\n else xa(nb);\n ;\n ;\n }\n ;\n ;\n };\n;\n function db(jb, kb) {\n j.conditionClass(jb, \"subscriptionMenuOpen\", kb);\n };\n;\n function eb(jb, kb, lb) {\n var mb = k.JSBNG__find(jb, \".FriendListSubscriptionsMenu\"), nb = k.JSBNG__find(mb, \".uiMenuInner\");\n if (((ka != null))) {\n ka.forEach(function(ob) {\n nb.removeChild(ob);\n });\n }\n ;\n ;\n lb.forEach(function(ob) {\n nb.appendChild(ob);\n });\n ka = lb;\n };\n;\n h.subscribe(\"UnfollowUser\", function(jb, kb) {\n if (da[kb.profile_id]) {\n za(kb.profile_id, da[kb.profile_id]);\n ca[kb.profile_id] = ea[kb.profile_id].slice();\n }\n ;\n ;\n });\n h.subscribe(\"UpdateSubscriptionLevel\", function(jb, kb) {\n var lb = ((kb.profile_id + \"\")), mb = ((kb.level + \"\"));\n za(lb, mb);\n var nb;\n {\n var fin236keys = ((window.top.JSBNG_Replay.forInKeys)((u))), fin236i = (0);\n (0);\n for (; (fin236i < fin236keys.length); (fin236i++)) {\n ((nb) = (fin236keys[fin236i]));\n {\n if (((u[nb] === lb))) {\n var ob = q(nb);\n ((ob && bb(ob, lb, mb, false)));\n }\n ;\n ;\n };\n };\n };\n ;\n });\n function fb(jb, kb, lb) {\n x[kb] = lb;\n var mb = ((z[kb] && !la)), nb = k.scry(jb, \"li.SubscribeMenuNotifyMeCheckbox\");\n if (((nb.length !== 0))) {\n var ob = nb[0];\n j.conditionShow(ob, !mb);\n j.conditionShow(k.JSBNG__find(jb, \"li.SubscribeMenuNotifyMeCheckboxSeparator\"), !mb);\n if (lb) {\n wa(ob);\n }\n else xa(ob);\n ;\n ;\n }\n ;\n ;\n };\n;\n function gb(jb, kb) {\n var lb = {\n profile_id: kb\n };\n h.inform(\"EnableNotifsForUser\", lb);\n new i().setURI(ha).setMethod(\"POST\").setData({\n notifier_id: kb,\n enable: true\n }).setErrorHandler(h.inform.curry(\"EnableNotifsForUserFail\", lb)).send();\n };\n;\n function hb(jb, kb) {\n var lb = {\n profile_id: kb\n };\n h.inform(\"DisableNotifsForUser\", lb);\n new i().setURI(ha).setMethod(\"POST\").setData({\n notifier_id: kb,\n enable: false\n }).setErrorHandler(h.inform.curry(\"DisableNotifsForUserFail\", lb)).send();\n };\n;\n var ib = {\n init: function(jb, kb, lb) {\n var mb = k.getID(jb);\n if (!u[mb]) {\n g.listen(jb, \"click\", function(nb) {\n return na(jb, u[mb], lb, nb.getTarget());\n });\n }\n ;\n ;\n if (((((lb === s)) && ia[kb].length))) {\n eb(jb, kb, ia[kb]);\n }\n ;\n ;\n if (ba[kb]) {\n ta(jb, kb);\n }\n ;\n ;\n u[mb] = kb;\n j.conditionClass(jb, \"NonFriendSubscriptionMenu\", !v[kb]);\n j.conditionClass(jb, \"cannotSubscribe\", !y[kb]);\n j.conditionClass(jb, \"noSubscriptionLevels\", ((z[kb] && !aa[kb])));\n j.conditionClass(jb, \"noSubscribeCheckbox\", ((!v[kb] && !z[kb])));\n cb(jb, kb, w[kb]);\n fb(jb, kb, x[kb]);\n h.subscribe([\"FollowUser\",\"FollowingUser\",\"UnfollowUserFail\",], function(nb, ob) {\n cb(jb, kb, true);\n }.bind(this));\n h.subscribe([\"UnfollowUser\",\"UnfollowingUser\",\"FollowUserFail\",], function(nb, ob) {\n h.inform(\"SubMenu/Reset\");\n cb(jb, kb, false);\n }.bind(this));\n h.subscribe([\"EnableNotifsForUser\",\"DisableNotifsForUserFail\",], function(nb, ob) {\n fb(jb, kb, true);\n }.bind(this));\n h.subscribe([\"DisableNotifsForUser\",\"EnableNotifsForUserFail\",], function(nb, ob) {\n fb(jb, kb, false);\n }.bind(this));\n h.subscribe(\"listeditor/friend_lists_changed\", function(nb, ob) {\n if (ob.notify_state) {\n var pb = ((ob.added_uid ? ob.added_uid : ob.removed_uid));\n fb(jb, pb, ob.notify_state.is_notified);\n }\n ;\n ;\n }.bind(this));\n db(jb, false);\n },\n getSubscriptions: function(jb) {\n return {\n level: ba[jb],\n custom_categories: ca[jb]\n };\n },\n setSubscriptions: function(jb, kb, lb, mb, nb, ob, pb, qb, rb, sb, tb, ub, vb) {\n za(jb, ((pb + \"\")));\n v[jb] = kb;\n w[jb] = lb;\n y[jb] = mb;\n z[jb] = nb;\n aa[jb] = ob;\n da[jb] = ((rb + \"\"));\n ca[jb] = qb.map(String);\n ea[jb] = sb.map(String);\n ia[jb] = vb;\n x[jb] = tb;\n la = ub;\n }\n };\n e.exports = ((a.EditSubscriptions || ib));\n});\n__d(\"legacy:EditSubscriptions\", [\"SubscriptionLevels\",\"EditSubscriptions\",], function(a, b, c, d) {\n a.SubscriptionLevels = b(\"SubscriptionLevels\");\n a.EditSubscriptions = b(\"EditSubscriptions\");\n}, 3);\n__d(\"DynamicFriendListEducation\", [\"JSBNG__Event\",\"Arbiter\",\"AsyncRequest\",\"Dialog\",\"PageTransitions\",\"arrayContains\",\"createArrayFrom\",\"removeFromArray\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Arbiter\"), i = b(\"AsyncRequest\"), j = b(\"Dialog\"), k = b(\"PageTransitions\"), l = b(\"arrayContains\"), m = b(\"createArrayFrom\"), n = b(\"removeFromArray\"), o, p, q, r, s, t;\n function u() {\n ((q && q.hide()));\n ((r && r.hide()));\n };\n;\n function v(y) {\n n(p, y);\n u();\n s({\n accept_tag_education: true\n });\n };\n;\n function w() {\n u();\n s({\n nux_cancel: true\n });\n };\n;\n var x = {\n init: function(y, z) {\n o = y;\n p = m(z).map(String);\n k.registerHandler(function() {\n u();\n o = false;\n s = undefined;\n p = [];\n });\n },\n showDialog: function(y, z, aa) {\n if (((o && l(p, y)))) {\n u();\n h.inform(\"DynamicFriendListEducation/dialogOpen\", {\n uid: z,\n flid: y\n });\n s = aa;\n q = new j().setAsync(new i(\"/ajax/friends/lists/smart_list_education.php\").setMethod(\"GET\").setData({\n flid: y,\n uid: z\n }).setReadOnly(true)).setHandler(v.bind(this, y)).setCloseHandler(function() {\n h.inform(\"DynamicFriendListEducation/dialogClosed\", {\n uid: z,\n flid: y\n });\n }).setCancelHandler(function() {\n h.inform(\"DynamicFriendListEducation/dialogCancel\", {\n uid: z,\n flid: y\n });\n }).show();\n }\n else aa();\n ;\n ;\n },\n showContextualDialog: function(y, z, aa, ba) {\n if (((o && l(p, y)))) {\n u();\n t = aa;\n s = ba;\n new i(\"/ajax/friends/lists/smart_list_contextual_education.php\").setMethod(\"GET\").setData({\n flid: y,\n uid: z\n }).setReadOnly(true).send();\n }\n else ba();\n ;\n ;\n },\n setContextualDialog: function(y, z, aa, ba) {\n r = y;\n r.setContext(t);\n r.show();\n g.listen(z, \"click\", v.bind(this, ba));\n g.listen(aa, \"click\", w);\n }\n };\n e.exports = x;\n});\n__d(\"FriendStatus\", [\"function-extensions\",\"Arbiter\",\"AsyncRequest\",\"arrayContains\",\"copyProperties\",\"createArrayFrom\",\"eachKeyVal\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"Arbiter\"), h = b(\"AsyncRequest\"), i = b(\"arrayContains\"), j = b(\"copyProperties\"), k = b(\"createArrayFrom\"), l = b(\"eachKeyVal\");\n function m(q, r, s) {\n this.id = q;\n this.update(r, s);\n };\n;\n j(m.prototype, {\n update: function(q, r) {\n ((q && (this.JSBNG__status = q)));\n if (r) {\n this.lists = k(r).map(String);\n this._informListChange();\n }\n ;\n ;\n },\n isComplete: function() {\n return !!this.lists;\n },\n addToList: function(q) {\n if (((this.lists && !i(this.lists, q)))) {\n this.lists.push(q);\n }\n ;\n ;\n this._informListChange();\n },\n removeFromList: function(q) {\n if (this.lists) {\n var r = this.lists.indexOf(q);\n ((((r !== -1)) && this.lists.splice(r, 1)));\n }\n ;\n ;\n this._informListChange();\n },\n updateList: function(q, r) {\n ((r ? this.addToList(q) : this.removeFromList(q)));\n },\n _informListChange: function() {\n g.inform(\"FriendListMembershipChange\", {\n uid: this.id,\n lists: this.lists\n });\n }\n });\n j(m, {\n ARE_FRIENDS: 1,\n INCOMING_REQUEST: 2,\n OUTGOING_REQUEST: 3,\n CAN_REQUEST: 4\n });\n var n = {\n }, o = {\n };\n function p(q, r, s) {\n if (!n[s.uid]) {\n n[s.uid] = new m(s.uid, q);\n }\n else n[s.uid].update(q);\n ;\n ;\n g.inform(\"FriendRequest/change\", {\n uid: s.uid,\n JSBNG__status: q\n });\n };\n;\n g.subscribe([\"FriendRequest/cancel\",\"FriendRequest/unfriend\",\"FriendRequest/sendFail\",], p.curry(m.CAN_REQUEST));\n g.subscribe([\"FriendRequest/confirmFail\",], p.curry(m.INCOMING_REQUEST));\n g.subscribe([\"FriendRequest/cancelFail\",\"FriendRequest/sent\",\"FriendRequest/sending\",], p.curry(m.OUTGOING_REQUEST));\n g.subscribe([\"FriendRequest/confirm\",\"FriendRequest/confirming\",], p.curry(m.ARE_FRIENDS));\n j(m, {\n CLOSE_FRIENDS: null,\n ACQUAINTANCES: null,\n getFriend: function(q, r) {\n if (((n[q] && n[q].isComplete()))) {\n r(n[q]);\n }\n else if (o[q]) {\n o[q].push(r);\n }\n else {\n o[q] = [r,];\n new h().setURI(\"/ajax/friends/status.php\").setData({\n friend: q\n }).setHandler(function(s) {\n var t = s.getPayload();\n m.initFriend.bind(m, q, t.JSBNG__status, t.lists).defer();\n }).send();\n }\n \n ;\n ;\n },\n initFriend: function(q, r, s) {\n var t = ((n[q] || new m(q)));\n t.update(((t.JSBNG__status || r)), ((t.lists || s)));\n n[q] = t;\n ((o[q] && o[q].forEach(function(u) {\n u(t);\n })));\n o[q] = null;\n },\n setSpecialLists: function(q) {\n var r = ((m.CLOSE_FRIENDS === null));\n m.CLOSE_FRIENDS = ((q.close + \"\"));\n m.ACQUAINTANCES = ((q.acq + \"\"));\n if (r) {\n l(n, function(s, t) {\n t._informListChange();\n });\n }\n ;\n ;\n }\n });\n e.exports = m;\n});\n__d(\"FriendEditLists\", [\"Arbiter\",\"AsyncRequest\",\"JSBNG__CSS\",\"DOMQuery\",\"DynamicFriendListEducation\",\"EditSubscriptions\",\"FriendStatus\",\"MenuDeprecated\",\"Parent\",\"ScrollableArea\",\"URI\",\"$\",\"arrayContains\",\"copyProperties\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncRequest\"), i = b(\"JSBNG__CSS\"), j = b(\"DOMQuery\"), k = b(\"DynamicFriendListEducation\"), l = b(\"EditSubscriptions\"), m = b(\"FriendStatus\"), n = b(\"MenuDeprecated\"), o = b(\"Parent\"), p = b(\"ScrollableArea\"), q = b(\"URI\"), r = b(\"$\"), s = b(\"arrayContains\"), t = b(\"copyProperties\"), u = b(\"ge\"), v = 5, w = {\n }, x = \"/ajax/profile/removefriendconfirm.php\", y = \"/ajax/friends/requests/cancel.php\", z = \"/ajax/choose/\", aa = \"/profile.php\", ba = \"/ajax/report/social.php\", ca, da;\n function ea(pa, qa, ra) {\n var sa = w[pa.id], ta = function(ua) {\n var va = {\n action: ((ra ? \"add_list\" : \"del_list\")),\n to_friend: sa.id,\n friendlists: [qa,],\n source: ca\n };\n if (ua) {\n t(va, ua);\n }\n ;\n ;\n sa.updateList(qa, ra);\n var wa;\n if (((ra && ((qa == m.CLOSE_FRIENDS))))) {\n wa = ha(pa, m.ACQUAINTANCES);\n if (n.isItemChecked(wa)) {\n n.toggleItem(wa);\n ea(pa, m.ACQUAINTANCES, false);\n }\n ;\n ;\n }\n else if (((ra && ((qa == m.ACQUAINTANCES))))) {\n wa = ha(pa, m.CLOSE_FRIENDS);\n if (n.isItemChecked(wa)) {\n n.toggleItem(wa);\n ea(pa, m.CLOSE_FRIENDS, false);\n }\n ;\n ;\n }\n \n ;\n ;\n var xa = {\n flid: qa,\n uid: sa.id\n }, ya = ((ra ? \"FriendListHovercard/add\" : \"FriendListHovercard/remove\"));\n g.inform(ya, xa);\n new h().setURI(\"/ajax/add_friend/action.php\").setData(va).send();\n };\n if (ra) {\n k.showDialog(qa, sa.id, ta);\n }\n else ta();\n ;\n ;\n };\n;\n function fa(pa) {\n var qa = j.scry(pa, \"input\")[0];\n return ((qa && qa.value));\n };\n;\n function ga(pa, qa, ra) {\n var sa = {\n uid: qa.id\n };\n new h().setURI(y).setMethod(\"POST\").setData({\n friend: qa.id\n }).setHandler(g.inform.bind(g, \"FriendRequest/cancel\", sa)).setErrorHandler(g.inform.bind(g, \"FriendRequest/cancelFail\", sa)).setStatusElement(ra).send();\n };\n;\n function ha(pa, qa) {\n var ra = n.getItems(pa);\n for (var sa = 0; ((sa < ra.length)); sa++) {\n if (((fa(ra[sa]) == qa))) {\n return ra[sa];\n }\n ;\n ;\n };\n ;\n return null;\n };\n;\n function ia(pa, qa) {\n var ra = n.getItems(pa);\n ra.forEach(function(sa) {\n var ta = fa(sa), ua = s(qa.lists, ta);\n if (((n.isItemChecked(sa) !== ua))) {\n n.toggleItem(sa);\n }\n ;\n ;\n });\n };\n;\n function ja(pa) {\n var qa = n.getItems(pa), ra = ((!i.hasClass(pa, \"followButtonFlyout\") && !i.hasClass(pa, \"likeButtonFlyout\"))), sa = [], ta = [], ua = 0, va = 0;\n qa.forEach(function(ab) {\n if (i.hasClass(ab, \"neverHide\")) {\n i.removeClass(ab, \"underShowMore\");\n ua++;\n }\n else if (n.isItemChecked(ab)) {\n sa.push(ab);\n }\n else if (((((i.hasClass(ab, \"neverShow\") || i.hasClass(ab, \"FriendListCreateTrigger\"))) || ((!ra && i.hasClass(ab, \"friendOptionsOnly\")))))) {\n i.addClass(ab, \"underShowMore\");\n va++;\n }\n else ta.push(ab);\n \n \n ;\n ;\n });\n var wa = ((v - ua)), xa = sa.concat(ta), ya = va;\n xa.forEach(function(ab) {\n if (i.hasClass(ab, \"ShowMoreItem\")) {\n wa--;\n return;\n }\n ;\n ;\n if (wa) {\n i.removeClass(ab, \"underShowMore\");\n wa--;\n }\n else {\n i.addClass(ab, \"underShowMore\");\n ya = true;\n }\n ;\n ;\n });\n i.conditionClass(pa, \"hasMoreFriendListItems\", ya);\n var za = j.scry(pa, \".FriendListMenuShowMore\");\n za.forEach(function(ab) {\n i.removeClass(ab, \"FriendListMenuShowMore\");\n });\n };\n;\n function ka(pa, qa) {\n i.conditionClass(pa, \"FriendListMemorializedUser\", qa);\n };\n;\n function la(pa, qa) {\n i.conditionClass(pa, \"FriendListCannotSuggestFriends\", !qa);\n };\n;\n function ma(pa, qa) {\n var ra = j.scry(pa, \".FriendListUnfriend\")[0], sa = j.scry(pa, \".FriendListCancel\")[0], ta = j.scry(pa, \".FriendListSuggestFriends\")[0], ua = j.scry(pa, \".FriendListFriendship\")[0], va = j.scry(pa, \".FriendListReportBlock\")[0];\n if (sa) {\n i.conditionShow(sa, ((qa.JSBNG__status == m.OUTGOING_REQUEST)));\n }\n ;\n ;\n if (ra) {\n i.conditionShow(ra, ((qa.JSBNG__status == m.ARE_FRIENDS)));\n var wa = j.JSBNG__find(ra, \"a\");\n wa.setAttribute(\"ajaxify\", q(x).addQueryData({\n uid: qa.id,\n unref: da\n }).toString());\n }\n else i.conditionClass(pa, \"NoFriendListActionSeparator\", ((!sa || ((qa.JSBNG__status != m.OUTGOING_REQUEST)))));\n ;\n ;\n if (ta) {\n j.JSBNG__find(ta, \"a\").setAttribute(\"href\", q(z).addQueryData({\n type: \"suggest_friends\",\n newcomer: qa.id,\n ref: \"profile_others_dropdown\"\n }).toString());\n }\n ;\n ;\n if (ua) {\n i.conditionShow(ua, ((qa.JSBNG__status == m.ARE_FRIENDS)));\n j.JSBNG__find(ua, \"a\").setAttribute(\"href\", q(aa).addQueryData({\n and: qa.id\n }).toString());\n }\n ;\n ;\n if (va) {\n j.JSBNG__find(va, \"a\").setAttribute(\"ajaxify\", q(ba).addQueryData({\n content_type: 0,\n cid: qa.id,\n rid: qa.id\n }).toString());\n }\n ;\n ;\n };\n;\n function na(pa, qa) {\n var ra = j.scry(pa, \"div.FriendListSubscriptionsMenu\");\n if (((ra.length !== 0))) {\n l.init(pa, qa, 45);\n }\n ;\n ;\n };\n;\n g.subscribe(\"FriendRequest/change\", function(pa, qa) {\n {\n var fin237keys = ((window.top.JSBNG_Replay.forInKeys)((w))), fin237i = (0);\n var ra;\n for (; (fin237i < fin237keys.length); (fin237i++)) {\n ((ra) = (fin237keys[fin237i]));\n {\n var sa = u(ra), ta = w[ra];\n if (((((sa && ta)) && ((ta.id == qa.uid))))) {\n ia(sa, ta);\n ma(sa, ta);\n ja(sa);\n }\n ;\n ;\n };\n };\n };\n ;\n });\n n.subscribe(\"select\", function(pa, qa) {\n if (((i.hasClass(qa.JSBNG__item, \"ShowMoreItem\") && i.hasClass(qa.menu, \"FriendListMenu\")))) {\n i.addClass(qa.menu, \"FriendListMenuShowMore\");\n p.poke(qa.JSBNG__item);\n }\n ;\n ;\n });\n var oa = {\n init: function(pa, qa, ra, sa, ta, ua) {\n pa = r(pa);\n ca = ra;\n da = ua;\n if (!w[pa.id]) {\n n.subscribe(\"select\", function(va, wa) {\n if (j.contains(pa, wa.JSBNG__item)) {\n if (o.byClass(wa.JSBNG__item, \"FriendListItem\")) {\n n.toggleItem(wa.JSBNG__item);\n var xa = fa(wa.JSBNG__item);\n ea(pa, xa, n.isItemChecked(wa.JSBNG__item));\n }\n else if (o.byClass(wa.JSBNG__item, \"FriendListCancel\")) {\n ga(pa, w[pa.id], wa.JSBNG__item);\n }\n else if (o.byClass(wa.JSBNG__item, \"FriendListUnfriend\")) {\n g.inform(\"FriendEditLists/unfriend\");\n }\n \n \n ;\n }\n ;\n ;\n });\n }\n ;\n ;\n i.addClass(pa, \"async_saving\");\n m.getFriend(qa, function(va) {\n ka(pa, sa);\n la(pa, ta);\n ia(pa, va);\n ma(pa, va);\n w[pa.id] = va;\n ja(pa);\n na(pa, qa);\n i.removeClass(pa, \"async_saving\");\n }.bind(this));\n }\n };\n e.exports = ((a.FriendEditLists || oa));\n});\n__d(\"FriendListFlyoutController\", [\"JSBNG__Event\",\"Arbiter\",\"AsyncRequest\",\"Button\",\"ContextualLayer\",\"JSBNG__CSS\",\"DataStore\",\"Dialog\",\"DOM\",\"DOMQuery\",\"FriendEditLists\",\"FriendStatus\",\"Keys\",\"Layer\",\"LayerHideOnEscape\",\"LayerTabIsolation\",\"MenuDeprecated\",\"Parent\",\"ScrollableArea\",\"Style\",\"TabbableElements\",\"UserAgent\",\"cx\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Arbiter\"), i = b(\"AsyncRequest\"), j = b(\"Button\"), k = b(\"ContextualLayer\"), l = b(\"JSBNG__CSS\"), m = b(\"DataStore\"), n = b(\"Dialog\"), o = b(\"DOM\"), p = b(\"DOMQuery\"), q = b(\"FriendEditLists\"), r = b(\"FriendStatus\"), s = b(\"Keys\"), t = b(\"Layer\"), u = b(\"LayerHideOnEscape\"), v = b(\"LayerTabIsolation\"), w = b(\"MenuDeprecated\"), x = b(\"Parent\"), y = b(\"ScrollableArea\"), z = b(\"Style\"), aa = b(\"TabbableElements\"), ba = b(\"UserAgent\"), ca = b(\"cx\"), da = b(\"emptyFunction\"), ea, fa, ga = null, ha = null, ia, ja, ka, la, ma, na, oa = 1500, pa, qa = [\"uiButtonConfirm\",\"uiButtonSpecial\",\"-cx-PRIVATE-uiButton__special\",\"-cx-PRIVATE-uiButton__confirm\",\"-cx-PRIVATE-xuiButton__special\",\"-cx-PRIVATE-xuiOverlayButton__root\",\"-cx-PRIVATE-xuiButton__confirm\",], ra = {\n init: function(tb, ub) {\n ra.init = da;\n ea = tb;\n ea.subscribe(\"mouseenter\", ab);\n ea.subscribe(\"mouseleave\", ob);\n ea.subscribe(\"hide\", cb);\n ea.enableBehavior(v);\n ea.enableBehavior(u);\n pa = ub;\n if (ga) {\n o.setContent(ea.getContent(), [ga,ha,]);\n }\n ;\n ;\n var vb = function(wb) {\n var xb = x.byClass(wb.getTarget(), \"enableFriendListFlyout\");\n if (xb) {\n if (((ia === xb))) {\n JSBNG__clearTimeout(la);\n }\n else {\n ((fa && qb()));\n nb(xb);\n }\n ;\n }\n ;\n ;\n };\n g.listen(JSBNG__document.documentElement, {\n mouseover: vb,\n click: vb,\n keydown: function(JSBNG__event) {\n var wb = JSBNG__event.getTarget();\n if (JSBNG__event.getModifiers().any) {\n return;\n }\n ;\n ;\n if (((!fa || p.isNodeOfType(wb, [\"input\",\"textarea\",])))) {\n return;\n }\n ;\n ;\n var xb = g.getKeyCode(JSBNG__event), yb;\n switch (xb) {\n case s.UP:\n \n case s.DOWN:\n var zb = za();\n yb = xa(zb);\n va(zb[((yb + ((((xb === s.UP)) ? -1 : 1))))]);\n return false;\n case s.SPACE:\n var ac = wa(wb);\n if (ac) {\n sa(ac);\n JSBNG__event.prevent();\n }\n ;\n ;\n break;\n default:\n var bc = String.fromCharCode(xb).toLowerCase(), cc = za();\n yb = xa(cc);\n var dc = yb, ec = cc.length;\n while (((((~yb && (((dc = ((++dc % ec))) !== yb)))) || ((!~yb && ((++dc < ec))))))) {\n var fc = w.getItemLabel(cc[dc]);\n if (((fc && ((fc.charAt(0).toLowerCase() === bc))))) {\n va(cc[dc]);\n return false;\n }\n ;\n ;\n };\n ;\n };\n ;\n }\n });\n h.subscribe(\"FriendEditLists/unfriend\", qb);\n h.subscribe(\"DynamicFriendListEducation/dialogOpen\", function() {\n na = true;\n });\n h.subscribe(\"DynamicFriendListEducation/dialogClosed\", function() {\n na = false;\n ob();\n });\n },\n initContent: function(tb) {\n o.appendContent(JSBNG__document.body, tb);\n db(tb);\n (function() {\n if (!ga) {\n ga = tb;\n ((ea && o.setContent(ea.getContent(), [ga,ha,])));\n l.show(ga);\n g.listen(ga, \"click\", rb);\n ((fa && kb(ia)));\n }\n else {\n o.remove(tb);\n tb = null;\n }\n ;\n ;\n }).defer();\n },\n initNux: function(tb) {\n if (ha) {\n return;\n }\n ;\n ;\n ha = tb;\n ((ea && o.setContent(ea.getContent(), [ga,ha,])));\n },\n show: function(tb) {\n lb(tb);\n },\n hide: function(tb) {\n ((((tb === false)) ? qb() : ob()));\n },\n setActiveNode: function(tb) {\n ((fa && qb()));\n ia = tb;\n ja = g.listen(tb, \"mouseleave\", function() {\n ia = null;\n ((ja && ja.remove()));\n });\n },\n setCloseListener: function(tb, ub) {\n m.set(tb, \"flfcloselistener\", ub);\n if (((ia != tb))) {\n m.set(tb, \"flfcloselistenertimeout\", sb.curry(tb).defer(oa));\n }\n ;\n ;\n },\n setCloseListenerTimeout: function(tb) {\n oa = tb;\n }\n };\n function sa(tb) {\n ((ba.firefox() && ua(tb).JSBNG__blur()));\n w.inform(\"select\", {\n menu: ta(tb),\n JSBNG__item: tb\n });\n };\n;\n function ta(tb) {\n if (l.hasClass(tb, \"uiMenuContainer\")) {\n return tb;\n }\n ;\n ;\n return x.byClass(tb, \"uiMenu\");\n };\n;\n function ua(tb) {\n return p.JSBNG__find(tb, \"a.itemAnchor\");\n };\n;\n function va(tb) {\n if (((tb && ya(tb)))) {\n w._removeSelected(ea.getContent());\n l.addClass(tb, \"selected\");\n ua(tb).JSBNG__focus();\n }\n ;\n ;\n };\n;\n function wa(tb) {\n return x.byClass(tb, \"uiMenuItem\");\n };\n;\n function xa(tb) {\n if (JSBNG__document.activeElement) {\n var ub = wa(JSBNG__document.activeElement);\n return tb.indexOf(ub);\n }\n ;\n ;\n return -1;\n };\n;\n function ya(tb) {\n return ((((!l.hasClass(tb, \"disabled\") && ((z.get(tb, \"display\") !== \"none\")))) && ((z.get(x.byClass(tb, \"uiMenu\"), \"display\") !== \"none\"))));\n };\n;\n function za() {\n return w.getItems(ea.getContent()).filter(ya);\n };\n;\n function ab() {\n JSBNG__clearTimeout(la);\n };\n;\n function bb(tb) {\n for (var ub = 0; ((ub < qa.length)); ub++) {\n if (l.hasClass(tb, qa[ub])) {\n return false;\n }\n ;\n ;\n };\n ;\n return true;\n };\n;\n function cb() {\n if (ia) {\n if (bb(ia)) {\n l.removeClass(ia, \"-cx-PUBLIC-uiHoverButton__selected\");\n if (((l.hasClass(ia, \"uiButton\") || l.hasClass(ia, \"-cx-PRIVATE-uiButton__root\")))) {\n l.removeClass(ia, \"selected\");\n }\n ;\n ;\n }\n ;\n ;\n if (m.get(ia, \"flfcloselistener\")) {\n var tb = ia;\n m.set(ia, \"flfcloselistenertimeout\", sb.curry(tb).defer(oa));\n }\n ;\n ;\n }\n ;\n ;\n fa = false;\n jb();\n ia = null;\n };\n;\n function db(tb) {\n var ub = p.scry(tb, \"[tabindex=\\\"0\\\"]\");\n ub.forEach(function(vb) {\n vb.tabIndex = \"-1\";\n });\n ((ub[0] && (ub[0].tabIndex = \"0\")));\n };\n;\n function eb(tb) {\n if (((p.isNodeOfType(tb, \"label\") && l.hasClass(tb, \"uiButton\")))) {\n tb = j.getInputElement(tb);\n }\n ;\n ;\n return tb;\n };\n;\n function fb(tb) {\n return m.get(eb(tb), \"profileid\");\n };\n;\n function gb(tb) {\n return ((m.get(eb(tb), \"memorialized\") === \"true\"));\n };\n;\n function hb(tb) {\n return ((m.get(eb(tb), \"cansuggestfriends\") === \"true\"));\n };\n;\n function ib(tb) {\n return m.get(eb(tb), \"unref\");\n };\n;\n function jb() {\n ((ja && ja.remove()));\n ja = null;\n ((ma && t.unsubscribe(ma)));\n ma = null;\n ((la && JSBNG__clearTimeout(la)));\n la = null;\n };\n;\n function kb(tb) {\n var ub = fb(tb), vb = gb(tb), wb = hb(tb), xb = m.get(tb, \"flloc\"), yb = ib(tb);\n q.init(ga, ub, xb, vb, wb, yb);\n l.conditionClass(ga, \"followButtonFlyout\", l.hasClass(tb, \"profileFollowButton\"));\n l.conditionClass(ga, \"friendButtonFlyout\", ((((l.hasClass(tb, \"FriendRequestFriends\") || l.hasClass(tb, \"FriendRequestIncoming\"))) || l.hasClass(tb, \"FriendRequestOutgoing\"))));\n l.conditionClass(ga, \"likeButtonFlyout\", l.hasClass(tb, \"profileLikeButton\"));\n var zb = p.scry(ga, \"div.uiScrollableArea\")[0];\n ((zb && y.poke(zb)));\n var ac = aa.JSBNG__find(ga)[0];\n ((ac && ac.JSBNG__focus()));\n };\n;\n function lb(tb) {\n if (((!ea || fa))) {\n return;\n }\n ;\n ;\n ea.setContext(tb);\n ea.setCausalElement(tb);\n tb.setAttribute(\"aria-expanded\", \"true\");\n if (bb(tb)) {\n l.addClass(tb, \"-cx-PUBLIC-uiHoverButton__selected\");\n if (((l.hasClass(tb, \"uiButton\") || l.hasClass(tb, \"-cx-PRIVATE-uiButton__root\")))) {\n l.addClass(tb, \"selected\");\n }\n ;\n ;\n }\n ;\n ;\n ea.show();\n ia = tb;\n fa = true;\n var ub = null;\n if (ga) {\n ub = \"show\";\n kb(tb);\n }\n else {\n ub = \"init_show\";\n new i().setURI(\"/ajax/friends/lists/flyout_content.php\").setStatusElement(ea.getContent()).send();\n }\n ;\n ;\n jb();\n ja = g.listen(tb, \"mouseleave\", ob);\n ma = t.subscribe(\"show\", mb);\n if (m.get(tb, \"flfcloselistener\")) {\n JSBNG__clearTimeout(m.remove(tb, \"flfcloselistenertimeout\"));\n }\n ;\n ;\n var vb = fb(tb);\n r.getFriend(vb, function(wb) {\n if (((wb.JSBNG__status == r.ARE_FRIENDS))) {\n new i().setURI(\"/ajax/friends/lists/flyout_log.php\").setData({\n target_id: fb(tb),\n unref: ib(tb),\n action: ub\n }).send();\n }\n ;\n ;\n if (!ha) {\n return;\n }\n ;\n ;\n if (((wb.JSBNG__status == r.OUTGOING_REQUEST))) {\n l.show(ha);\n i.bootstrap(\"/ajax/friends/lists/nux_flyout.php\", null, true);\n }\n else l.hide(ha);\n ;\n ;\n });\n };\n;\n function mb(tb, ub) {\n if (((!((ub instanceof k)) || !p.contains(ia, ub.getContext())))) {\n ob();\n }\n ;\n ;\n };\n;\n function nb(tb) {\n ia = tb;\n ka = lb.curry(tb).defer(pa);\n ja = g.listen(tb, \"mouseleave\", function() {\n JSBNG__clearTimeout(ka);\n ia = null;\n ((ja && ja.remove()));\n });\n };\n;\n function ob() {\n la = qb.defer(150);\n };\n;\n function pb() {\n var tb = n.getCurrent(), ub = ((tb && tb.getBody()));\n return !!((ub && p.scry(ub, \".friendListDialogTourCarousel\")[0]));\n };\n;\n function qb() {\n if (((na || pb()))) {\n return;\n }\n ;\n ;\n ((((ba.ie() < 8)) && JSBNG__document.documentElement.JSBNG__focus()));\n if (ea) {\n ea.hide();\n var tb = ea.getCausalElement();\n ((tb && tb.setAttribute(\"aria-expanded\", \"false\")));\n }\n ;\n ;\n };\n;\n function rb(JSBNG__event) {\n var tb = x.byTag(JSBNG__event.getTarget(), \"a\");\n if (((tb && l.hasClass(tb, \"FriendListActionItem\")))) {\n ob();\n }\n ;\n ;\n };\n;\n function sb(tb) {\n var ub = m.remove(tb, \"flfcloselistener\");\n ((ub && ub()));\n };\n;\n e.exports = ((a.FriendListFlyoutController || ra));\n});\n__d(\"AddFriendButton\", [\"JSBNG__Event\",\"Animation\",\"Arbiter\",\"AsyncRequest\",\"AsyncResponse\",\"collectDataAttributes\",\"JSBNG__CSS\",\"DOMQuery\",\"FriendListFlyoutController\",\"FriendStatus\",\"ge\",\"goURI\",\"Style\",\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Animation\"), i = b(\"Arbiter\"), j = b(\"AsyncRequest\"), k = b(\"AsyncResponse\"), l = b(\"collectDataAttributes\"), m = b(\"JSBNG__CSS\"), n = b(\"DOMQuery\"), o = b(\"FriendListFlyoutController\"), p = b(\"FriendStatus\"), q = b(\"ge\"), r = b(\"goURI\"), s = b(\"Style\"), t = b(\"URI\"), u = {\n ERROR_ALREADY_ADDED: 1431005,\n init: function(v, w, x, y, z, aa, ba, ca, da, ea, fa, ga) {\n var ha = v.id, ia = null, ja = n.scry(v, \".addButton\")[0], ka = n.scry(v, \".addFriendText\")[0], la = n.scry(v, \".outgoingButton\")[0], ma = n.scry(v, \".incomingButton\")[0], na = n.scry(v, \".friendButton\")[0];\n function oa(ua, va, wa) {\n var xa = new t(ja.getAttribute(\"ajaxify\")), ya = l(v, [\"ft\",\"gt\",]);\n new j().setURI(aa).setData({\n to_friend: w,\n action: ua,\n how_found: y,\n ref_param: z,\n link_data: ya,\n outgoing_id: la.id,\n xids: xa.getQueryData().xids,\n logging_location: ba,\n no_flyout_on_click: ca,\n ego_log_data: da,\n http_referer: fa\n }).setErrorHandler(va).setServerDialogCancelHandler(wa).setRelativeTo(la).send();\n if (((ga && ((ua === \"add_friend\"))))) {\n new j().setURI(\"/ajax/add_friend/chain_pymk.php\").send();\n }\n ;\n ;\n };\n ;\n function pa(ua, va) {\n if (ka) {\n m.hide(ka);\n }\n else if (ja) {\n m.hide(ja);\n }\n \n ;\n ;\n ((la && m.hide(la)));\n ((ma && m.hide(ma)));\n ((na && m.hide(na)));\n if (ua) {\n m.show(ua);\n }\n ;\n ;\n if (((((((\"Outgoing\" == va)) && ((ia != va)))) && ea))) {\n new h(ua).from(\"backgroundColor\", \"#FFF8CC\").to(\"backgroundColor\", \"transparent\").from(\"borderColor\", \"#FFE222\").to(\"borderColor\", s.get(ua, \"borderLeftColor\")).duration(2000).go();\n }\n ;\n ;\n ((ia && m.removeClass(v, ((\"fStatus\" + ia)))));\n ia = va;\n m.addClass(v, ((\"fStatus\" + va)));\n };\n ;\n function qa(ua) {\n if (m.hasClass(ua, \"enableFriendListFlyout\")) {\n o.show(ua);\n }\n else o.hide();\n ;\n ;\n };\n ;\n var ra = i.subscribe(\"FriendRequest/change\", function(ua, va) {\n ta();\n if (((va.uid != w))) {\n return;\n }\n ;\n ;\n switch (va.JSBNG__status) {\n case p.ARE_FRIENDS:\n return pa(na, \"Friends\");\n case p.INCOMING_REQUEST:\n return pa(ma, \"Incoming\");\n case p.OUTGOING_REQUEST:\n return pa(la, \"Outgoing\");\n case p.CAN_REQUEST:\n return pa(((ka ? ka : ja)), \"Requestable\");\n };\n ;\n }), sa;\n if (x) {\n sa = i.subscribe(\"FriendRequest/confirm\", function(ua, va) {\n ta();\n ((((va.uid == w)) && r(x)));\n });\n }\n ;\n ;\n ((ja && g.listen(ja, \"click\", function() {\n i.inform(\"FriendRequest/sending\", {\n uid: w\n });\n if (ca) {\n o.setActiveNode(la);\n }\n else qa(la);\n ;\n ;\n oa(\"add_friend\", function(ua) {\n var va = ((((ua.error == u.ERROR_ALREADY_ADDED)) ? \"FriendRequest/sent\" : \"FriendRequest/sendFail\"));\n i.inform(va, {\n uid: w\n });\n o.hide();\n k.defaultErrorHandler(ua);\n }, function(ua) {\n i.inform(\"FriendRequest/sendFail\", {\n uid: w\n });\n o.hide();\n });\n })));\n function ta() {\n if (q(ha)) {\n return;\n }\n ;\n ;\n ((ra && ra.unsubscribe()));\n ((sa && sa.unsubscribe()));\n ra = sa = null;\n };\n ;\n }\n };\n e.exports = u;\n});\n__d(\"FriendButtonIcon\", [\"Arbiter\",\"FriendStatus\",\"Button\",\"arrayContains\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"FriendStatus\"), i = b(\"Button\"), j = b(\"arrayContains\");\n e.exports = {\n register: function(k, l, m) {\n g.subscribe(\"FriendListMembershipChange\", function(n, o) {\n if (((o.uid == m))) {\n var p = j(o.lists, h.CLOSE_FRIENDS), q = j(o.lists, h.ACQUAINTANCES);\n if (((p && !q))) {\n i.setIcon(k, l.close);\n }\n else if (((q && !p))) {\n i.setIcon(k, l.acquaintance);\n }\n else i.setIcon(k, l.friend);\n \n ;\n ;\n }\n ;\n ;\n });\n }\n };\n});\n__d(\"legacy:friend-browser-checkbox-js\", [\"FriendBrowserCheckboxController\",], function(a, b, c, d) {\n a.FriendBrowserCheckboxController = b(\"FriendBrowserCheckboxController\");\n}, 3);\n__d(\"legacy:onvisible\", [\"OnVisible\",], function(a, b, c, d) {\n a.OnVisible = b(\"OnVisible\");\n}, 3);"); |
| // 12378 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o161,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yW/r/W9EdqwZ5ZfH.js",o162); |
| // undefined |
| o161 = null; |
| // undefined |
| o162 = null; |
| // 12391 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"dShSX\",]);\n}\n;\n__d(\"TrackingPixel\", [\"Arbiter\",\"ControlledReferer\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ControlledReferer\"), i = {\n _iframe: undefined,\n loadWithNoReferrer: function(j) {\n if (!i._iframe) {\n var k = document.createElement(\"iframe\");\n k.frameborder = 0;\n k.width = k.height = 1;\n k.style.position = \"absolute\";\n k.style.top = \"-10px\";\n h.useFacebookReferer(k, function() {\n g.inform(\"TrackingPixel/iframeIsLoaded\", null, g.BEHAVIOR_PERSISTENT);\n }, null);\n document.body.appendChild(k);\n i._iframe = k;\n }\n ;\n g.subscribe(\"TrackingPixel/iframeIsLoaded\", function() {\n var l = i._iframe.contentWindow.document, m = l.createElement(\"img\");\n m.src = j;\n });\n }\n };\n e.exports = i;\n});\n__d(\"ExternalTrackingTag\", [\"AsyncSignal\",\"TrackingPixel\",\"Event\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncSignal\"), h = b(\"TrackingPixel\"), i = b(\"Event\"), j = {\n listenForElementClick: function(k, l, m, n) {\n i.listen(k, \"click\", function() {\n j.sendRequest(l, m, n);\n });\n },\n sendRequest: function(k, l, m) {\n if (!k) {\n return\n };\n new g(\"/ads/external_tracking_tag/\", {\n href: k,\n tracking_tag_id: l,\n adgroup_id: m\n }).send();\n h.loadWithNoReferrer(k);\n }\n };\n e.exports = j;\n});\n__d(\"ad-logging\", [\"Arbiter\",\"AsyncRequest\",\"Banzai\",\"collectDataAttributes\",\"Parent\",\"TrackingNodes\",\"ExternalTrackingTag\",], function(a, b, c, d, e, f) {\n var g = \"ssinfeed\", h = b(\"Arbiter\"), i = b(\"AsyncRequest\"), j = b(\"Banzai\"), k = b(\"collectDataAttributes\"), l = b(\"Parent\"), m = b(\"TrackingNodes\"), n = b(\"ExternalTrackingTag\"), o = {\n };\n function p(s) {\n return (((((s.getAttribute && ((s.getAttribute(\"ajaxify\") || s.getAttribute(\"data-endpoint\")))) || s.action) || s.href) || s.name));\n };\n function q(s) {\n var t = (s.ei || s.ai);\n if ((!t && s.mei)) {\n t = s.mf_story_key;\n };\n if (((s !== null) && (typeof (t) === \"string\"))) {\n var u = false;\n if (s.tn) {\n var v = m.parseTrackingNodeString(s.tn);\n for (var w = 0; (w < v.length); w++) {\n var x = v[w][0];\n switch (x) {\n case m.types.LIKE_LINK:\n \n case m.types.UNLIKE_LINK:\n \n case m.types.COMMENT:\n \n case m.types.ADD_COMMENT_BOX:\n return;\n case m.types.XBUTTON:\n \n case m.types.HIDE_LINK:\n \n case m.types.REPORT_SPAM_LINK:\n \n case m.types.HIDE_ALL_LINK:\n \n case m.types.DROPDOWN_BUTTON:\n \n case m.types.UNHIDE_LINK:\n return;\n case m.types.RELATED_SHARE:\n return;\n case m.types.ATTACHMENT:\n \n case m.types.USER_MESSAGE:\n u = true;\n break;\n };\n };\n }\n ;\n var y = Date.now(), z = 500;\n s.duplicate_click = (!!o[t] && (((y - o[t]) < z)));\n o[t] = y;\n if (j.isEnabled(\"ssinfeed\")) {\n j.post(g, s, {\n delay: 0,\n retry: j.isEnabled(\"ssinfeed_retry\")\n });\n }\n else {\n var aa = new i(\"/ajax/ssinfeed/end/\").setData(s).setAllowCrossPageTransition(true).setMethod(\"POST\");\n aa.send();\n }\n ;\n if (((u && s.external_tracking_tag) && !s.duplicate_click)) {\n n.sendRequest(s.external_tracking_tag.url, s.external_tracking_tag.tag_id, s.external_tracking_tag.adgroup_id);\n };\n }\n ;\n };\n function r(s, t) {\n if (!t.node) {\n return\n };\n var u = p(t.node), v = (l.byTag(t.node, \"input\") || l.byTag(t.node, \"button\"));\n if (((((!u && v) && (v.type == \"submit\")) && v.getAttribute) && v.getAttribute(\"data-ft\"))) {\n u = \"#\";\n };\n var w;\n if (((u && t.event) && (((t.event.type === \"click\") || (t.event.type === \"contextmenu\"))))) {\n w = k(t.node, [\"ft\",]);\n w.ft.href = u;\n w.ft.mouse_type = t.event.type;\n q(w.ft);\n }\n ;\n };\n h.subscribe(\"ClickRefAction/new\", r);\n});\n__d(\"PopoverMenu.react\", [\"CSS\",\"InlineBlock.react\",\"Popover\",\"PopoverMenu\",\"React\",\"ReactPropTypes\",\"SubscriptionsHandler\",\"cx\",\"joinClasses\",], function(a, b, c, d, e, f) {\n var g = b(\"CSS\"), h = b(\"InlineBlock.react\"), i = b(\"Popover\"), j = b(\"PopoverMenu\"), k = b(\"React\"), l = b(\"ReactPropTypes\"), m = b(\"SubscriptionsHandler\"), n = b(\"cx\"), o = b(\"joinClasses\");\n function p(r, s) {\n var t, u;\n for (var v in r) {\n t = r[v];\n u = s[v];\n if (((typeof t === \"object\") && (typeof u === \"object\"))) {\n if (!p(t, u)) {\n return false\n };\n }\n else if ((t !== u)) {\n return false\n }\n ;\n };\n return true;\n };\n var q = k.createClass({\n displayName: \"ReactPopoverMenu\",\n propTypes: {\n alignh: l.oneOf([\"left\",\"center\",\"right\",]),\n layerBehaviors: l.array,\n menu: l.object,\n disabled: l.bool\n },\n _menuSubscriptions: null,\n componentDidMount: function() {\n var r = this.refs.root.getDOMNode(), s = r.firstChild;\n g.addClass(s, \"-cx-PRIVATE-uiPopover__trigger\");\n this._popover = new i(r, s, this.props.layerBehaviors, {\n alignh: this.props.alignh,\n disabled: this.props.disabled\n });\n this._popoverMenu = new j(this._popover, s, this._createMenu(this.props.menu), this.props.behaviors);\n },\n componentDidUpdate: function(r) {\n if (!p(r.menu, this.props.menu)) {\n if (this._menuSubscriptions) {\n this._menuSubscriptions.release();\n this._menuSubscriptions = null;\n }\n ;\n this._popoverMenu.setMenu(this._createMenu(this.props.menu));\n }\n ;\n if ((this.props.alignh !== r.alignh)) {\n this._popoverMenu.getPopover().getLayer().setAlignment(this.props.alignh);\n };\n if ((this.props.disabled !== r.disabled)) {\n if (this.props.disabled) {\n this._popoverMenu.disable();\n }\n else this._popoverMenu.enable();\n \n };\n },\n getFirstChild: function() {\n var r = this.props.children;\n return (Array.isArray(r) ? r[0] : r);\n },\n getButtonSize: function() {\n var r = this.getFirstChild();\n return (r && r.getButtonSize());\n },\n render: function() {\n var r = this.getFirstChild();\n r.props.className = o((r.props.className || \"\"), \"-cx-PRIVATE-uiPopover__trigger\");\n return this.transferPropsTo(h({\n alignv: \"middle\",\n className: \"uiPopover\",\n ref: \"root\",\n disabled: null\n }, this.props.children));\n },\n componentWillUnmount: function() {\n if (this._menuSubscriptions) {\n this._menuSubscriptions.release();\n this._menuSubscriptions = null;\n }\n ;\n },\n _createMenu: function(r) {\n var s = new r.ctor(r.menuitems, r.config);\n this._menuSubscriptions = new m();\n if (r.onItemClick) {\n this._menuSubscriptions.addSubscriptions(s.subscribe(\"itemclick\", r.onItemClick));\n };\n if (r.onChange) {\n this._menuSubscriptions.addSubscriptions(s.subscribe(\"change\", r.onChange));\n };\n if (this.props.onShow) {\n this._menuSubscriptions.addSubscriptions(this._popover.subscribe(\"show\", this.props.onShow));\n };\n if (this.props.onHide) {\n this._menuSubscriptions.addSubscriptions(this._popover.subscribe(\"hide\", this.props.onHide));\n };\n return s;\n }\n });\n e.exports = q;\n});\n__d(\"ReactMenu\", [\"Menu\",\"MenuItem\",\"MenuSelectableItem\",\"MenuTheme\",\"SelectableMenu\",\"cx\",\"flattenArray\",\"merge\",], function(a, b, c, d, e, f) {\n var g = b(\"Menu\"), h = b(\"MenuItem\"), i = b(\"MenuSelectableItem\"), j = b(\"MenuTheme\"), k = b(\"SelectableMenu\"), l = b(\"cx\"), m = b(\"flattenArray\"), n = b(\"merge\"), o = Array.prototype.slice;\n function p(q, r) {\n if (!Array.isArray(r)) {\n r = o.call(arguments, 1);\n };\n var s = {\n ctor: g,\n menuitems: m((r || [])),\n config: {\n theme: j,\n maxheight: (q ? q.maxheight : null)\n }\n };\n return n(s, q);\n };\n p.SelectableMenu = function(q, r) {\n if (!Array.isArray(r)) {\n r = o.call(arguments, 1);\n };\n var s = {\n ctor: k,\n menuitems: m(r),\n config: {\n className: \"-cx-PUBLIC-abstractSelectableMenu__root\",\n theme: j,\n multiple: (q && q.multiple),\n maxheight: (q ? q.maxheight : null)\n }\n };\n return n(s, q);\n };\n p.Item = function(q, r) {\n if (!Array.isArray(r)) {\n r = o.call(arguments, 1);\n };\n var s = {\n ctor: h,\n reactChildren: r\n };\n return n(s, q);\n };\n p.SelectableItem = function(q, r) {\n if (!Array.isArray(r)) {\n r = o.call(arguments, 1);\n };\n var s = {\n ctor: i,\n reactChildren: r\n };\n return n(s, q);\n };\n e.exports = p;\n});\n__d(\"UFIOrderingModeSelector.react\", [\"InlineBlock.react\",\"Link.react\",\"LoadingIndicator.react\",\"React\",\"Image.react\",\"ReactMenu\",\"PopoverMenu.react\",\"cx\",\"ix\",], function(a, b, c, d, e, f) {\n var g = b(\"InlineBlock.react\"), h = b(\"Link.react\"), i = b(\"LoadingIndicator.react\"), j = b(\"React\"), k = b(\"Image.react\"), l = b(\"ReactMenu\"), m = b(\"PopoverMenu.react\"), n = b(\"cx\"), o = b(\"ix\"), p = l.SelectableMenu, q = l.SelectableItem, r = j.createClass({\n displayName: \"UFIOrderingModeSelector\",\n getInitialState: function() {\n var s = null;\n this.props.orderingmodes.map(function(t) {\n if (t.selected) {\n s = t;\n };\n });\n return {\n selectedMode: s\n };\n },\n onMenuItemClick: function(s, t) {\n var u = t.item.getValue();\n this.props.orderingmodes.map(function(v) {\n if ((v.value === u)) {\n this.setState({\n selectedMode: v\n });\n };\n }.bind(this));\n this.props.onOrderChanged(u);\n },\n render: function() {\n var s = null;\n if ((this.props.currentOrderingMode != this.state.selectedMode.value)) {\n s = i({\n className: \"UFIOrderingModeSelectorLoading\",\n color: \"white\",\n size: \"small\"\n });\n };\n var t = p({\n onItemClick: this.onMenuItemClick\n }, this.props.orderingmodes.map(function(u) {\n return (q({\n key: u.value,\n value: u.value,\n selected: (u.value === this.state.selectedMode.value)\n }, u.name));\n }.bind(this)));\n return (j.DOM.div({\n className: \"UFIOrderingModeSelector\"\n }, s, g(null, m({\n className: \"UFIOrderingModeSelectorPopover\",\n menu: t,\n alignh: \"right\"\n }, h(null, this.state.selectedMode.name, k({\n className: \"UFIOrderingModeSelectorDownCaret\",\n src: o(\"/images/ui/xhp/link/more/down_caret.gif\")\n }))))));\n }\n });\n e.exports = r;\n});\n__d(\"SwapButtonDEPRECATED\", [\"Event\",\"Arbiter\",\"copyProperties\",\"CSS\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Arbiter\"), i = b(\"copyProperties\"), j = b(\"CSS\");\n function k(l, m, n) {\n this._swapperButton = l;\n this._swappeeButton = m;\n g.listen(l, \"click\", this.swap.bind(this));\n if (n) {\n g.listen(m, \"click\", this.unswap.bind(this));\n };\n h.subscribe(\"SwapButtonDEPRECATED/focusOnJoinButton\", this.setFocusOnSwapper.bind(this), h.SUBSCRIBE_ALL);\n };\n i(k.prototype, {\n _swapperButton: null,\n _swappeeButton: null,\n swap: function(l) {\n j.hide(this._swapperButton);\n j.show(this._swappeeButton);\n ((l !== false) && this._swappeeButton.focus());\n },\n unswap: function(l) {\n j.show(this._swapperButton);\n j.hide(this._swappeeButton);\n ((l !== false) && this._swapperButton.focus());\n },\n toggle: function() {\n j.toggle(this._swapperButton);\n j.toggle(this._swappeeButton);\n },\n setFocusOnSwapper: function() {\n this._swapperButton.focus();\n }\n });\n e.exports = k;\n});\n__d(\"SubscribeButton\", [\"Arbiter\",\"AsyncRequest\",\"Event\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncRequest\"), i = b(\"Event\"), j = {\n SUBSCRIBED: \"FollowingUser\",\n UNSUBSCRIBED: \"UnfollowingUser\",\n init: function(k, l, m, n, o, p) {\n i.listen(l, \"click\", function() {\n g.inform(j.SUBSCRIBED, {\n profile_id: n\n });\n });\n g.subscribe(j.SUBSCRIBED, function(q, r) {\n if ((n === r.profile_id)) {\n if (!o) {\n m.suppressNextMouseEnter();\n };\n k.swap();\n if ((p === true)) {\n new h().setURI(\"/ajax/profile/suggestions_on_following.php\").setData({\n profileid: n\n }).send();\n };\n }\n ;\n });\n g.subscribe(j.UNSUBSCRIBED, function(q, r) {\n if ((n === r.profile_id)) {\n k.unswap();\n m.hideFlyout();\n g.inform(\"SubMenu/Reset\");\n }\n ;\n });\n },\n initUnsubscribe: function(k, l) {\n i.listen(k, \"click\", function() {\n g.inform.bind(g, j.UNSUBSCRIBED, {\n profile_id: l\n }).defer();\n });\n }\n };\n e.exports = j;\n});\n__d(\"Tour\", [\"Arbiter\",\"LayerDestroyOnHide\",\"LayerHideOnEscape\",\"copyProperties\",\"NavigationMessage\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"LayerDestroyOnHide\"), i = b(\"LayerHideOnEscape\"), j = b(\"copyProperties\"), k = b(\"NavigationMessage\");\n function l() {\n if (l._instance) {\n l._instance.setTourComplete();\n };\n l._instance = this;\n };\n j(l.prototype, {\n tourStarted: false,\n tourComplete: false,\n _navigationBeginToken: null,\n _pageLeaveToken: null,\n steps: {\n },\n openDialog: null,\n init: function() {\n this._pageLeaveToken = g.subscribe(\"onload/exit\", this.handleLeavePage.bind(this));\n this._navigationBeginToken = g.subscribe(k.NAVIGATION_BEGIN, this.handleTransition.bind(this));\n this.steps = {\n };\n return this;\n },\n registerStep: function(m, n) {\n m.disableBehavior(h);\n m.disableBehavior(i);\n this.steps[n] = m;\n m.subscribe(\"show\", function() {\n m.inform(\"tour-dialog-show\", m);\n });\n if (!this.getTourStarted()) {\n this.setTourStart();\n };\n },\n _unsubscribeSubscriptions: function() {\n this._navigationBeginToken.unsubscribe();\n this._pageLeaveToken.unsubscribe();\n },\n handleLeavePage: function() {\n this._unsubscribeSubscriptions();\n },\n handleTransition: function() {\n this._unsubscribeSubscriptions();\n },\n handleTourStart: function() {\n \n },\n handleTourStop: function() {\n \n },\n handleTourComplete: function() {\n \n },\n showStep: function(m) {\n var n = this.steps[m];\n if (!((this.openDialog == n))) {\n this.hideOpenDialog();\n };\n if (!n) {\n return\n };\n this.openDialog = n;\n n.show();\n },\n hideOpenDialog: function() {\n if (this.openDialog) {\n this.openDialog.hide();\n this.openDialog = null;\n }\n ;\n },\n getTourStarted: function() {\n return this.tourStarted;\n },\n setTourStart: function() {\n this.tourStarted = true;\n this.handleTourStart();\n },\n setTourStop: function() {\n this.tourStarted = false;\n this.hideOpenDialog();\n this.handleTourStop();\n },\n setTourComplete: function() {\n if (this.tourComplete) {\n return\n };\n this.setTourStop();\n this.tourComplete = true;\n this.handleTourComplete();\n },\n hideStep: function(m) {\n var n = this.steps[m];\n (n && n.hide());\n }\n });\n j(l, {\n getInstance: function() {\n return (l._instance || (l._instance = new l()));\n }\n });\n e.exports = l;\n});\n__d(\"FutureSideNavItem\", [\"Arbiter\",\"CSS\",\"DOM\",\"Parent\",\"$\",\"copyProperties\",\"createArrayFrom\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"CSS\"), i = b(\"DOM\"), j = b(\"Parent\"), k = b(\"$\"), l = b(\"copyProperties\"), m = b(\"createArrayFrom\");\n function n(o, p) {\n this.id = o.id;\n this.up = p;\n this.endpoint = o.endpoint;\n this.type = o.type;\n this.node = (o.node || k(o.id));\n this.paths = (o.path ? m(o.path) : []);\n this.keys = (o.key ? m(o.key) : []);\n var q = this._findKeys(this.keys);\n this.numericKey = (q.numeric || this.keys[0]);\n this.textKey = (q.text || this.keys[0]);\n this._pathPattern = this._buildRegex(this.paths);\n this._keyPattern = this._buildRegex(this.keys);\n this.hideLoading();\n this.hideSelected();\n };\n l(n.prototype, {\n equals: function(o) {\n return (o && (o.id === this.id));\n },\n getLinkNode: function() {\n return ((i.scry(this.node, \"a.item\")[0] || i.scry(this.node, \"a.subitem\")[0]));\n },\n matchPath: function(o) {\n return this._matchInput(this._pathPattern, o);\n },\n matchKey: function(o) {\n return this._matchInput(this._keyPattern, o);\n },\n _matchInput: function(o, p) {\n var q = (o && o.exec(p));\n return (q && q.slice(1));\n },\n getTop: function() {\n return (this.isTop() ? this : this.up.getTop());\n },\n isTop: function(o) {\n return !this.up;\n },\n setCount: function(o, p) {\n return this._updateCount(o, true);\n },\n incrementCount: function(o, p) {\n return this._updateCount(o, false);\n },\n _updateCount: function(o, p, q) {\n var r = i.scry(this.node, \"span.count\")[0], s = (r && i.scry(r, \"span.countValue\")[0]);\n if (s) {\n var t = (p ? 0 : parseInt(i.getText(s), 10)), u = Math.max(0, (t + o)), v = (this.isTop() ? \"hidden\" : \"hiddenSubitem\");\n i.setContent(s, u);\n (q && h.conditionClass(this.node, v, !u));\n h.conditionClass(r, \"hidden_elem\", !u);\n if (this.isTop()) {\n var w = i.scry(this.node, \"div.linkWrap\")[0];\n if (w) {\n h.conditionClass(w, \"noCount\", !u);\n h.conditionClass(w, \"hasCount\", u);\n }\n ;\n }\n ;\n }\n ;\n g.inform(\"NavigationMessage.COUNT_UPDATE_DONE\");\n },\n showLoading: function() {\n h.addClass(this.node, \"loading\");\n },\n hideLoading: function() {\n h.removeClass(this.node, \"loading\");\n },\n showSelected: function() {\n h.addClass(this.node, \"selectedItem\");\n (h.hasClass(this.node, \"hider\") && h.addClass(this._getExpanderParent(), \"expandedMode\"));\n },\n hideSelected: function() {\n h.removeClass(this.node, \"selectedItem\");\n },\n showChildren: function() {\n h.addClass(this.node, \"open\");\n },\n hideChildren: function() {\n h.removeClass(this.node, \"open\");\n },\n _getExpanderParent: function() {\n return j.byClass(this.node, \"expandableSideNav\");\n },\n _buildRegex: function(o) {\n if (o.length) {\n var p = o.map(function(q) {\n if ((typeof q === \"string\")) {\n return q.replace(/([^a-z0-9_])/gi, \"\\\\$1\");\n }\n else if ((q && q.regex)) {\n return q.regex\n }\n ;\n });\n return new RegExp(((\"^(?:\" + p.join(\"|\")) + \")$\"));\n }\n ;\n },\n _findKeys: function(o) {\n var p = /^(app|group|fl)_/, q = {\n };\n for (var r = 0; (r < o.length); r++) {\n var s = p.test(o[r]);\n if ((s && !q.numeric)) {\n q.numeric = o[r];\n }\n else if ((!s && !q.text)) {\n q.text = o[r];\n }\n ;\n if ((q.numeric && q.text)) {\n break;\n };\n };\n return q;\n }\n });\n e.exports = n;\n});\n__d(\"FutureSideNavSection\", [\"Bootloader\",\"DOMQuery\",\"$\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Bootloader\"), h = b(\"DOMQuery\"), i = b(\"$\"), j = b(\"copyProperties\");\n function k(l) {\n this.id = l.id;\n this.node = (this.node || i(l.id));\n this.editEndpoint = l.editEndpoint;\n };\n j(k.prototype, {\n equals: function(l) {\n return (l && (l.id === this.id));\n },\n getEditorAsync: function(l) {\n g.loadModules([\"SortableSideNav\",], function(m) {\n var n = new m(h.find(this.node, \"ul.uiSideNav\"), this.editEndpoint);\n l(n);\n }.bind(this));\n }\n });\n e.exports = k;\n});\n__d(\"FutureSideNav\", [\"Arbiter\",\"Bootloader\",\"ChannelConstants\",\"CSS\",\"DOM\",\"Event\",\"FutureSideNavItem\",\"FutureSideNavSection\",\"NavigationMessage\",\"PageTransitions\",\"Parent\",\"Run\",\"SelectorDeprecated\",\"URI\",\"UserAgent\",\"Vector\",\"copyProperties\",\"createArrayFrom\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Bootloader\"), i = b(\"ChannelConstants\"), j = b(\"CSS\"), k = b(\"DOM\"), l = b(\"Event\"), m = b(\"FutureSideNavItem\"), n = b(\"FutureSideNavSection\"), o = b(\"NavigationMessage\"), p = b(\"PageTransitions\"), q = b(\"Parent\"), r = b(\"Run\"), s = b(\"SelectorDeprecated\"), t = b(\"URI\"), u = b(\"UserAgent\"), v = b(\"Vector\"), w = b(\"copyProperties\"), x = b(\"createArrayFrom\");\n function y() {\n (y.instance && y.instance.uninstall());\n y.instance = this;\n };\n y.instance = null;\n y.getInstance = function() {\n return (y.instance || new y());\n };\n w(y.prototype, {\n init: function(z, aa, ba) {\n this.root = z;\n this.items = {\n };\n this.sections = {\n };\n this.editor = null;\n this.editing = false;\n this.selected = null;\n this.loading = null;\n this.keyParam = \"sk\";\n this.defaultKey = aa;\n this.uri = t.getRequestURI();\n this.ajaxPipe = ba;\n this.ajaxPipeEndpoints = {\n };\n this.sidecol = true;\n this._installed = true;\n this._handlePageTransitions = true;\n p.registerHandler(function(ca) {\n return (this._handlePageTransitions && this.handlePageTransition(ca));\n }.bind(this));\n this._eventHandlers = [];\n this._arbiterSubscriptions = [g.subscribe(o.NAVIGATION_COMPLETED, this.navigationComplete.bind(this)),g.subscribe(o.NAVIGATION_FAILED, this.navigationFailed.bind(this)),g.subscribe(o.NAVIGATION_COUNT_UPDATE, this.navigationCountUpdate.bind(this)),g.subscribe(o.NAVIGATION_SELECT, this.navigationSelect.bind(this)),g.subscribe(i.getArbiterType(\"nav_update_counts\"), this.navigationCountUpdateFromPresence.bind(this)),];\n this._explicitHover = [];\n this._ensureHover(\"sideNavItem\");\n this._eventHandlers.push(l.listen(window, \"resize\", this._handleResize.bind(this)));\n this._checkNarrow();\n this._selectorSubscriptions = [];\n (window.Selector && this._selectorSubscriptions.push(s.subscribe([\"open\",\"close\",], function(ca, da) {\n var ea = q.byClass(da.selector, \"sideNavItem\");\n (ea && j.conditionClass(ea, \"editMenuOpened\", (ca === \"open\")));\n })));\n r.onLeave(this.uninstall.bind(this));\n if (this._pendingSections) {\n this._pendingSections.forEach(function(ca) {\n this.initSection.apply(this, ca);\n }.bind(this));\n };\n },\n _handleResize: (function() {\n var z;\n return function() {\n (z && clearTimeout(z));\n z = this._checkNarrow.bind(this).defer(200);\n };\n })(),\n _checkNarrow: function() {\n j.conditionClass(this.root, \"uiNarrowSideNav\", (v.getElementPosition(this.root).x < 20));\n },\n _ensureHover: function(z) {\n if ((u.ie() < 8)) {\n h.loadModules([\"ExplicitHover\",], function(aa) {\n this._explicitHover.push(new aa(this.root, z));\n }.bind(this));\n };\n },\n uninstall: function() {\n if (this._installed) {\n this._installed = false;\n this._handlePageTransitions = false;\n this._arbiterSubscriptions.forEach(g.unsubscribe);\n this._selectorSubscriptions.forEach(function(z) {\n s.unsubscribe(z);\n });\n this._eventHandlers.forEach(function(z) {\n z.remove();\n });\n this._explicitHover.forEach(function(z) {\n z.uninstall();\n });\n }\n ;\n },\n initSection: function(z, aa) {\n if (!this._installed) {\n this._pendingSections = (this._pendingSections || []);\n this._pendingSections.push(arguments);\n return;\n }\n ;\n this._initItems(aa);\n this._initSection(z);\n },\n addItem: function(z, aa) {\n this._initItem(z, aa);\n },\n _initItems: function(z) {\n var aa = function(ba, ca) {\n var da = this._initItem(ba, ca);\n if (ba.children) {\n ba.children.forEach(function(ea) {\n aa(ea, da);\n });\n };\n }.bind(this);\n x(z).forEach(function(ba) {\n aa(ba, null);\n });\n },\n _initItem: function(z, aa) {\n var ba = this.items[z.id] = this._constructItem(z, aa);\n if ((ba.equals(this.selected) || z.selected)) {\n this.setSelected(ba);\n };\n var ca = ba.getLinkNode();\n (ca && this._eventHandlers.push(l.listen(ca, \"click\", function(event) {\n return !this.editing;\n }.bind(this))));\n return ba;\n },\n _initSection: function(z) {\n var aa = this.sections[z.id] = this._constructSection(z);\n this._eventHandlers.push(l.listen(aa.node, \"click\", this.handleSectionClick.bind(this, aa)));\n k.scry(aa.node, \"div.bookmarksMenuButton\").forEach(j.show);\n return aa;\n },\n _constructItem: function(z, aa) {\n return new m(z, aa);\n },\n _constructSection: function(z) {\n return new n(z);\n },\n handleSectionClick: function(z, event) {\n var aa = this._getEventTarget(event, \"a\"), ba = this._getItemForNode(aa);\n if (!aa) {\n return;\n }\n else if (j.hasClass(aa.parentNode, \"uiMenuItem\")) {\n this._handleMenuClick(z, ba, aa.parentNode, event);\n }\n else this._handleLinkClick(z, aa, event);\n \n ;\n },\n _getEventTarget: function(event, z) {\n var aa = event.getTarget();\n if ((aa.tagName !== z.toUpperCase())) {\n return q.byTag(aa, z);\n }\n else return aa\n ;\n },\n _handleMenuClick: function(z, aa, ba, event) {\n if (j.hasClass(ba, \"rearrange\")) {\n this.beginEdit(z);\n };\n },\n _handleLinkClick: function(z, aa, event) {\n if (j.hasClass(aa, \"navEditDone\")) {\n (this.editing ? this.endEdit() : this.beginEdit(z));\n event.kill();\n }\n ;\n },\n getItem: function(z) {\n if (this._isCurrentPath(z)) {\n return this._getItemForKey((this._getKey(z.getQueryData()) || this.defaultKey));\n }\n else return this._getItemForPath(z.getPath())\n ;\n },\n getNodeForKey: function(z) {\n var aa = this._getItemForKey(z);\n if (aa) {\n return aa.node\n };\n },\n _isCurrentPath: function(z) {\n return ((z.getDomain() === this.uri.getDomain()) && (z.getPath() === this.uri.getPath()));\n },\n _getKey: function(z) {\n return z[this.keyParam];\n },\n _getItemForNode: function(z) {\n z = q.byClass(z, \"sideNavItem\");\n return (z && this.items[z.id]);\n },\n _getItemForKey: function(z) {\n return this._findItem(function(aa) {\n return aa.matchKey(z);\n });\n },\n _getItemForPath: function(z) {\n return this._findItem(function(aa) {\n return aa.matchPath(z);\n });\n },\n _findItem: function(z) {\n for (var aa in this.items) {\n if (z(this.items[aa])) {\n return this.items[aa]\n };\n };\n },\n removeItem: function(z) {\n if ((z && this.items[z.id])) {\n k.remove(z.node);\n delete this.items[z.id];\n }\n ;\n },\n removeItemByKey: function(z) {\n this.removeItem(this._getItemForKey(z));\n },\n moveItem: function(z, aa, ba) {\n var ca = k.find(z.node, \"ul.uiSideNav\");\n ((ba ? k.prependContent : k.appendContent))(ca, aa.node);\n },\n setLoading: function(z) {\n (this.loading && this.loading.hideLoading());\n this.loading = z;\n (this.loading && this.loading.showLoading());\n },\n setSelected: function(z) {\n this.setLoading(null);\n if (this.selected) {\n this.selected.hideSelected();\n this.selected.getTop().hideChildren();\n }\n ;\n this.selected = z;\n if (this.selected) {\n this.selected.showSelected();\n this.selected.getTop().showChildren();\n }\n ;\n },\n handlePageTransition: function(z) {\n var aa = this.getItem(z), ba = ((aa && aa.endpoint) && this._doPageTransition(aa, z));\n return ba;\n },\n _doPageTransition: function(z, aa) {\n this.setLoading(z);\n this._sendPageTransition(z.endpoint, w(this._getTransitionData(z, aa), aa.getQueryData()));\n return true;\n },\n _sendPageTransition: function(z, aa) {\n aa.endpoint = z;\n g.inform(o.NAVIGATION_BEGIN, {\n useAjaxPipe: this._useAjaxPipe(z),\n params: aa\n });\n },\n _getTransitionData: function(z, aa) {\n var ba = {\n };\n ba.sidecol = this.sidecol;\n ba.path = aa.getPath();\n ba[this.keyParam] = z.textKey;\n ba.key = z.textKey;\n return ba;\n },\n _useAjaxPipe: function(z) {\n return (this.ajaxPipe || this.ajaxPipeEndpoints[z]);\n },\n navigationComplete: function() {\n (this.loading && this.setSelected(this.loading));\n },\n navigationFailed: function() {\n this.setLoading(null);\n },\n navigationSelect: function(z, aa) {\n var ba = this._getItemForKey(this._getKey(aa));\n if (aa.asLoading) {\n this.setLoading(ba);\n }\n else this.setSelected(ba);\n ;\n },\n navigationCountUpdate: function(z, aa) {\n var ba = this._getItemForKey((aa && aa.key));\n if (ba) {\n if ((typeof aa.count !== \"undefined\")) {\n ba.setCount(aa.count, aa.hide);\n }\n else if ((typeof aa.increment !== \"undefined\")) {\n ba.incrementCount(aa.increment, aa.hide);\n }\n \n };\n },\n navigationCountUpdateFromPresence: function(z, aa) {\n aa = aa.obj;\n if (aa) {\n if ((!aa.class_name || (aa.class_name && j.hasClass(this.root, aa.class_name)))) {\n if (aa.items) {\n for (var ba = 0; (ba < aa.items.length); ba++) {\n this.navigationCountUpdate(z, aa.items[ba]);;\n }\n }\n }\n };\n },\n beginEdit: function(z) {\n if (!this.editing) {\n this.editing = true;\n j.addClass(this.root, \"editMode\");\n this._updateTrackingData();\n this._initEditor(z);\n }\n ;\n },\n endEdit: function() {\n if (this.editing) {\n j.removeClass(this.root, \"editMode\");\n (this.editor && this.editor.endEdit());\n this.editor = null;\n this.editing = false;\n this._updateTrackingData();\n }\n ;\n },\n _updateTrackingData: function(z) {\n var aa = (this.root.getAttribute(\"data-gt\") || \"{}\");\n try {\n aa = JSON.parse(aa);\n if (this.editing) {\n aa.editing = true;\n }\n else delete aa.editing;\n ;\n this.root.setAttribute(\"data-gt\", JSON.stringify(aa));\n } catch (ba) {\n \n };\n },\n _initEditor: function(z) {\n z.getEditorAsync(function(aa) {\n if (this.editing) {\n this.editor = aa;\n this.editor.beginEdit();\n }\n ;\n }.bind(this));\n }\n });\n e.exports = y;\n});\n__d(\"PageFanning\", [\"Animation\",\"AsyncRequest\",\"CSS\",\"DOM\",\"FutureSideNav\",\"Parent\",\"URI\",\"$\",\"collectDataAttributes\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"AsyncRequest\"), i = b(\"CSS\"), j = b(\"DOM\"), k = b(\"FutureSideNav\"), l = b(\"Parent\"), m = b(\"URI\"), n = b(\"$\"), o = b(\"collectDataAttributes\"), p = b(\"copyProperties\"), q = {\n setFanStatus: function(s, t, u, v, w, x, y) {\n var z = {\n ft: {\n }\n };\n if (s) {\n z = {\n ft: o(s, [\"ft\",]).ft\n };\n };\n w = (w || function(ca) {\n var da = ca.getPayload();\n if ((!da || !s)) {\n return\n };\n if (da.reload) {\n q.reloadOnFanStatusChanged(da.preserve_tab);\n }\n else r(s, da);\n ;\n });\n var aa = {\n fbpage_id: t,\n add: u,\n reload: v\n };\n if ((y != null)) {\n p(aa, y);\n };\n p(aa, z);\n var ba = new h().setURI(\"/ajax/pages/fan_status.php\").setData(aa).setNectarModuleDataSafe(s).setHandler(w);\n if (x) {\n ba.setErrorHandler(x);\n };\n ba.send();\n return false;\n },\n reloadOnFanStatusChanged: function(s) {\n var t = m.getRequestURI();\n if (s) {\n var u = k.getInstance().selected.textKey;\n if ((!t.getQueryData().sk && u)) {\n t.addQueryData({\n sk: u\n });\n };\n }\n ;\n window.location.href = t;\n },\n toggleLikeOnFanStatusChanged: function(s, t) {\n var u = n((\"liked_pages_like_action_\" + s)), v = n((\"liked_pages_undo_action_\" + s));\n i.conditionClass(u, \"hidden_elem\", t);\n i.conditionClass(v, \"hidden_elem\", !t);\n },\n informPageLikeButtonOnChange: function(s, t) {\n var u = a.PageLikeButton;\n if (u) {\n if (t) {\n u.informLike(s);\n u.informLikeSuccess(s);\n }\n else u.informUnlike(s);\n \n };\n }\n };\n function r(s, t) {\n var u = t.feedback;\n if (!u) {\n return\n };\n if (l.byClass(s, \"fbTimelineEscapeSectionItem\")) {\n s = (l.byClass(s, \"fan_status_inactive\") || s);\n };\n var v = j.create(\"span\", {\n className: \"fan_status_inactive\"\n }, u);\n s.parentNode.replaceChild(v, s);\n var w = function() {\n if (t.can_repeat_action) {\n v.parentNode.replaceChild(s, v);\n };\n };\n new g(v).duration(3000).checkpoint().to(\"backgroundColor\", \"#FFFFFF\").duration(1000).ondone(w).go();\n };\n e.exports = q;\n});\n__d(\"PageLikeButton\", [\"Arbiter\",\"AsyncRequest\",\"AsyncResponse\",\"Event\",\"PageFanning\",\"SubscribeButton\",\"Tour\",\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncRequest\"), i = b(\"AsyncResponse\"), j = b(\"Event\"), k = b(\"PageFanning\"), l = b(\"SubscribeButton\"), m = b(\"Tour\"), n = b(\"URI\"), o = {\n LIKED: \"liked\",\n UNLIKED: \"unliked\",\n LIKED_SUCCESS: \"liked_success\",\n init: function(r, s, t, u, v, w, x, y, z, aa, ba) {\n g.subscribe(o.LIKED, function(ca, da) {\n if ((u === da.profile_id)) {\n if (!z) {\n t.suppressNextMouseEnter();\n };\n r.swap(ba);\n }\n ;\n });\n g.subscribe(o.UNLIKED, function(ca, da) {\n if ((u === da.profile_id)) {\n r.unswap(ba);\n t.hideFlyout();\n }\n ;\n });\n if (y) {\n g.subscribe(o.LIKED_SUCCESS, function(ca, da) {\n var ea = n.getRequestURI().getQueryData().app_data;\n if ((da.profile_id == u)) {\n new h().setURI(\"/ajax/pages/fetch_app_column.php\").setData({\n profile_id: u,\n tab_key: y,\n app_data: ea\n }).send();\n };\n });\n };\n j.listen(s, \"click\", q.bind(null, u, v, w, x));\n },\n initCallout: function(r, s) {\n var t = document.getElementById(\"pageActionLikeCalloutButton\");\n j.listen(t, \"click\", q.bind(null, r, s, null, null));\n },\n initUnlike: function(r, s, t) {\n j.listen(r, \"click\", function(event) {\n p(event.getTarget(), s, false, function(u) {\n g.inform(o.LIKED, {\n profile_id: s\n });\n i.defaultErrorHandler(u);\n }, t);\n o.informUnlike(s);\n });\n },\n informLike: function(r, s, t) {\n var u = {\n profile_id: r,\n target: s,\n origin: t\n };\n g.inform(o.LIKED, u);\n g.inform(l.SUBSCRIBED, u);\n },\n informLikeSuccess: function(r) {\n var s = {\n profile_id: r\n };\n g.inform(o.LIKED_SUCCESS, s);\n },\n informUnlike: function(r) {\n var s = {\n profile_id: r\n };\n g.inform.bind(g, o.UNLIKED, s).defer();\n g.inform.bind(g, l.UNSUBSCRIBED, s).defer();\n }\n };\n function p(r, s, t, u, v, w, x) {\n m.getInstance().hideStep(\"low_page_likes\");\n k.setFanStatus(r, s, t, false, function() {\n o.informLikeSuccess(s);\n }, u, {\n fan_origin: v,\n fan_source: w,\n cat: x\n });\n };\n function q(r, s, t, u, event) {\n p(event.getTarget(), r, true, function(v) {\n g.inform(o.UNLIKED, {\n profile_id: r\n });\n i.defaultErrorHandler(v);\n }, s, t, u);\n o.informLike(r, event.getTarget(), s);\n };\n e.exports = o;\n a.PageLikeButton = o;\n});\n__d(\"legacy:PageLikeButton\", [\"PageLikeButton\",], function(a, b, c, d) {\n a.PageLikeButton = b(\"PageLikeButton\");\n}, 3);\n__d(\"HoverButton\", [\"AsyncRequest\",\"CSS\",\"DOM\",\"URI\",\"copyProperties\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"CSS\"), i = b(\"DOM\"), j = b(\"URI\"), k = b(\"copyProperties\"), l = b(\"cx\");\n function m(n, o, p, q) {\n this._button = n;\n this._flyout = o;\n this._flyoutAjaxify = q;\n this._flyoutContent = p;\n o.subscribe(\"show\", this._onShow.bind(this));\n o.subscribe(\"hide\", this._onHide.bind(this));\n };\n k(m.prototype, {\n _button: null,\n _flyout: null,\n _flyoutAjaxify: null,\n _flyoutContent: null,\n showFlyoutBriefly: function() {\n this.showFlyout();\n this._flyout.hideFlyoutDelayed(5000);\n },\n showFlyout: function() {\n this._flyout.showFlyout(this._button, true);\n this._flyout.inform(\"show\", this._button);\n },\n hideFlyout: function() {\n this._flyout.hideFlyout(true);\n this._flyout.inform(\"hide\", this._button);\n },\n enableButton: function() {\n this._flyout.initNode(this._button);\n },\n disableButton: function() {\n this.hideFlyout();\n this._flyout.deactivateNode(this._button);\n },\n _onShow: function(n, o) {\n h.addClass(o, \"-cx-PUBLIC-uiHoverButton__selected\");\n if ((h.hasClass(o, \"uiButton\") || h.hasClass(o, \"-cx-PRIVATE-uiButton__root\"))) {\n h.addClass(o, \"selected\");\n };\n if (this._flyoutAjaxify) {\n h.addClass(this._flyoutContent, \"async_saving\");\n new g().setURI(new j(this._flyoutAjaxify)).setHandler(function(p) {\n h.removeClass(this._flyoutContent, \"async_saving\");\n i.setContent(this._flyoutContent, p.payload);\n }.bind(this)).send();\n this._flyoutAjaxify = null;\n }\n ;\n },\n _onHide: function(n, o) {\n h.removeClass(o, \"-cx-PUBLIC-uiHoverButton__selected\");\n if ((h.hasClass(o, \"uiButton\") || h.hasClass(o, \"-cx-PRIVATE-uiButton__root\"))) {\n h.removeClass(o, \"selected\");\n };\n },\n destroy: function() {\n this.hideFlyout();\n this._flyout.destroy();\n },\n suppressNextMouseEnter: function() {\n this._flyout.setActiveNode(this._button);\n }\n });\n e.exports = m;\n});\n__d(\"legacy:ui-side-nav-future-js\", [\"FutureSideNav\",], function(a, b, c, d) {\n a.FutureSideNav = b(\"FutureSideNav\");\n}, 3);"); |
| // 12392 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s98531d6b18e98ac4b77cb6624350e8113c34f3ad"); |
| // 12393 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"dShSX\",]);\n}\n;\n;\n__d(\"TrackingPixel\", [\"Arbiter\",\"ControlledReferer\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ControlledReferer\"), i = {\n _iframe: undefined,\n loadWithNoReferrer: function(j) {\n if (!i._iframe) {\n var k = JSBNG__document.createElement(\"div\");\n k.frameborder = 0;\n k.width = k.height = 1;\n k.style.position = \"absolute\";\n k.style.JSBNG__top = \"-10px\";\n h.useFacebookReferer(k, function() {\n g.inform(\"TrackingPixel/iframeIsLoaded\", null, g.BEHAVIOR_PERSISTENT);\n }, null);\n JSBNG__document.body.appendChild(k);\n i._iframe = k;\n }\n ;\n ;\n g.subscribe(\"TrackingPixel/iframeIsLoaded\", function() {\n var l = i._iframe.contentWindow.JSBNG__document, m = l.createElement(\"img\");\n m.src = j;\n });\n }\n };\n e.exports = i;\n});\n__d(\"ExternalTrackingTag\", [\"AsyncSignal\",\"TrackingPixel\",\"JSBNG__Event\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncSignal\"), h = b(\"TrackingPixel\"), i = b(\"JSBNG__Event\"), j = {\n listenForElementClick: function(k, l, m, n) {\n i.listen(k, \"click\", function() {\n j.sendRequest(l, m, n);\n });\n },\n sendRequest: function(k, l, m) {\n if (!k) {\n return;\n }\n ;\n ;\n new g(\"/ads/external_tracking_tag/\", {\n href: k,\n tracking_tag_id: l,\n adgroup_id: m\n }).send();\n h.loadWithNoReferrer(k);\n }\n };\n e.exports = j;\n});\n__d(\"ad-logging\", [\"Arbiter\",\"AsyncRequest\",\"Banzai\",\"collectDataAttributes\",\"Parent\",\"TrackingNodes\",\"ExternalTrackingTag\",], function(a, b, c, d, e, f) {\n var g = \"ssinfeed\", h = b(\"Arbiter\"), i = b(\"AsyncRequest\"), j = b(\"Banzai\"), k = b(\"collectDataAttributes\"), l = b(\"Parent\"), m = b(\"TrackingNodes\"), n = b(\"ExternalTrackingTag\"), o = {\n };\n function p(s) {\n return ((((((((s.getAttribute && ((s.getAttribute(\"ajaxify\") || s.getAttribute(\"data-endpoint\"))))) || s.action)) || s.href)) || s.JSBNG__name));\n };\n;\n function q(s) {\n var t = ((s.ei || s.ai));\n if (((!t && s.mei))) {\n t = s.mf_story_key;\n }\n ;\n ;\n if (((((s !== null)) && ((typeof (t) === \"string\"))))) {\n var u = false;\n if (s.tn) {\n var v = m.parseTrackingNodeString(s.tn);\n for (var w = 0; ((w < v.length)); w++) {\n var x = v[w][0];\n switch (x) {\n case m.types.LIKE_LINK:\n \n case m.types.UNLIKE_LINK:\n \n case m.types.COMMENT:\n \n case m.types.ADD_COMMENT_BOX:\n return;\n case m.types.XBUTTON:\n \n case m.types.HIDE_LINK:\n \n case m.types.REPORT_SPAM_LINK:\n \n case m.types.HIDE_ALL_LINK:\n \n case m.types.DROPDOWN_BUTTON:\n \n case m.types.UNHIDE_LINK:\n return;\n case m.types.RELATED_SHARE:\n return;\n case m.types.ATTACHMENT:\n \n case m.types.USER_MESSAGE:\n u = true;\n break;\n };\n ;\n };\n ;\n }\n ;\n ;\n var y = JSBNG__Date.now(), z = 500;\n s.duplicate_click = ((!!o[t] && ((((y - o[t])) < z))));\n o[t] = y;\n if (j.isEnabled(\"ssinfeed\")) {\n j.post(g, s, {\n delay: 0,\n retry: j.isEnabled(\"ssinfeed_retry\")\n });\n }\n else {\n var aa = new i(\"/ajax/ssinfeed/end/\").setData(s).setAllowCrossPageTransition(true).setMethod(\"POST\");\n aa.send();\n }\n ;\n ;\n if (((((u && s.external_tracking_tag)) && !s.duplicate_click))) {\n n.sendRequest(s.external_tracking_tag.url, s.external_tracking_tag.tag_id, s.external_tracking_tag.adgroup_id);\n }\n ;\n ;\n }\n ;\n ;\n };\n;\n function r(s, t) {\n if (!t.node) {\n return;\n }\n ;\n ;\n var u = p(t.node), v = ((l.byTag(t.node, \"input\") || l.byTag(t.node, \"button\")));\n if (((((((((!u && v)) && ((v.type == \"submit\")))) && v.getAttribute)) && v.getAttribute(\"data-ft\")))) {\n u = \"#\";\n }\n ;\n ;\n var w;\n if (((((u && t.JSBNG__event)) && ((((t.JSBNG__event.type === \"click\")) || ((t.JSBNG__event.type === \"contextmenu\"))))))) {\n w = k(t.node, [\"ft\",]);\n w.ft.href = u;\n w.ft.mouse_type = t.JSBNG__event.type;\n q(w.ft);\n }\n ;\n ;\n };\n;\n h.subscribe(\"ClickRefAction/new\", r);\n});\n__d(\"PopoverMenu.react\", [\"JSBNG__CSS\",\"InlineBlock.react\",\"Popover\",\"PopoverMenu\",\"React\",\"ReactPropTypes\",\"SubscriptionsHandler\",\"cx\",\"joinClasses\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = b(\"InlineBlock.react\"), i = b(\"Popover\"), j = b(\"PopoverMenu\"), k = b(\"React\"), l = b(\"ReactPropTypes\"), m = b(\"SubscriptionsHandler\"), n = b(\"cx\"), o = b(\"joinClasses\");\n function p(r, s) {\n var t, u;\n {\n var fin238keys = ((window.top.JSBNG_Replay.forInKeys)((r))), fin238i = (0);\n var v;\n for (; (fin238i < fin238keys.length); (fin238i++)) {\n ((v) = (fin238keys[fin238i]));\n {\n t = r[v];\n u = s[v];\n if (((((typeof t === \"object\")) && ((typeof u === \"object\"))))) {\n if (!p(t, u)) {\n return false;\n }\n ;\n ;\n }\n else if (((t !== u))) {\n return false;\n }\n \n ;\n ;\n };\n };\n };\n ;\n return true;\n };\n;\n var q = k.createClass({\n displayName: \"ReactPopoverMenu\",\n propTypes: {\n alignh: l.oneOf([\"left\",\"center\",\"right\",]),\n layerBehaviors: l.array,\n menu: l.object,\n disabled: l.bool\n },\n _menuSubscriptions: null,\n componentDidMount: function() {\n var r = this.refs.root.getDOMNode(), s = r.firstChild;\n g.addClass(s, \"-cx-PRIVATE-uiPopover__trigger\");\n this._popover = new i(r, s, this.props.layerBehaviors, {\n alignh: this.props.alignh,\n disabled: this.props.disabled\n });\n this._popoverMenu = new j(this._popover, s, this._createMenu(this.props.menu), this.props.behaviors);\n },\n componentDidUpdate: function(r) {\n if (!p(r.menu, this.props.menu)) {\n if (this._menuSubscriptions) {\n this._menuSubscriptions.release();\n this._menuSubscriptions = null;\n }\n ;\n ;\n this._popoverMenu.setMenu(this._createMenu(this.props.menu));\n }\n ;\n ;\n if (((this.props.alignh !== r.alignh))) {\n this._popoverMenu.getPopover().getLayer().setAlignment(this.props.alignh);\n }\n ;\n ;\n if (((this.props.disabled !== r.disabled))) {\n if (this.props.disabled) {\n this._popoverMenu.disable();\n }\n else this._popoverMenu.enable();\n ;\n }\n ;\n ;\n },\n getFirstChild: function() {\n var r = this.props.children;\n return ((Array.isArray(r) ? r[0] : r));\n },\n getButtonSize: function() {\n var r = this.getFirstChild();\n return ((r && r.getButtonSize()));\n },\n render: function() {\n var r = this.getFirstChild();\n r.props.className = o(((r.props.className || \"\")), \"-cx-PRIVATE-uiPopover__trigger\");\n return this.transferPropsTo(h({\n alignv: \"middle\",\n className: \"uiPopover\",\n ref: \"root\",\n disabled: null\n }, this.props.children));\n },\n componentWillUnmount: function() {\n if (this._menuSubscriptions) {\n this._menuSubscriptions.release();\n this._menuSubscriptions = null;\n }\n ;\n ;\n },\n _createMenu: function(r) {\n var s = new r.ctor(r.menuitems, r.config);\n this._menuSubscriptions = new m();\n if (r.onItemClick) {\n this._menuSubscriptions.addSubscriptions(s.subscribe(\"itemclick\", r.onItemClick));\n }\n ;\n ;\n if (r.onChange) {\n this._menuSubscriptions.addSubscriptions(s.subscribe(\"change\", r.onChange));\n }\n ;\n ;\n if (this.props.onShow) {\n this._menuSubscriptions.addSubscriptions(this._popover.subscribe(\"show\", this.props.onShow));\n }\n ;\n ;\n if (this.props.onHide) {\n this._menuSubscriptions.addSubscriptions(this._popover.subscribe(\"hide\", this.props.onHide));\n }\n ;\n ;\n return s;\n }\n });\n e.exports = q;\n});\n__d(\"ReactMenu\", [\"Menu\",\"MenuItem\",\"MenuSelectableItem\",\"MenuTheme\",\"SelectableMenu\",\"cx\",\"flattenArray\",\"merge\",], function(a, b, c, d, e, f) {\n var g = b(\"Menu\"), h = b(\"MenuItem\"), i = b(\"MenuSelectableItem\"), j = b(\"MenuTheme\"), k = b(\"SelectableMenu\"), l = b(\"cx\"), m = b(\"flattenArray\"), n = b(\"merge\"), o = Array.prototype.slice;\n function p(q, r) {\n if (!Array.isArray(r)) {\n r = o.call(arguments, 1);\n }\n ;\n ;\n var s = {\n ctor: g,\n menuitems: m(((r || []))),\n config: {\n theme: j,\n maxheight: ((q ? q.maxheight : null))\n }\n };\n return n(s, q);\n };\n;\n p.SelectableMenu = function(q, r) {\n if (!Array.isArray(r)) {\n r = o.call(arguments, 1);\n }\n ;\n ;\n var s = {\n ctor: k,\n menuitems: m(r),\n config: {\n className: \"-cx-PUBLIC-abstractSelectableMenu__root\",\n theme: j,\n multiple: ((q && q.multiple)),\n maxheight: ((q ? q.maxheight : null))\n }\n };\n return n(s, q);\n };\n p.Item = function(q, r) {\n if (!Array.isArray(r)) {\n r = o.call(arguments, 1);\n }\n ;\n ;\n var s = {\n ctor: h,\n reactChildren: r\n };\n return n(s, q);\n };\n p.SelectableItem = function(q, r) {\n if (!Array.isArray(r)) {\n r = o.call(arguments, 1);\n }\n ;\n ;\n var s = {\n ctor: i,\n reactChildren: r\n };\n return n(s, q);\n };\n e.exports = p;\n});\n__d(\"UFIOrderingModeSelector.react\", [\"InlineBlock.react\",\"Link.react\",\"LoadingIndicator.react\",\"React\",\"JSBNG__Image.react\",\"ReactMenu\",\"PopoverMenu.react\",\"cx\",\"ix\",], function(a, b, c, d, e, f) {\n var g = b(\"InlineBlock.react\"), h = b(\"Link.react\"), i = b(\"LoadingIndicator.react\"), j = b(\"React\"), k = b(\"JSBNG__Image.react\"), l = b(\"ReactMenu\"), m = b(\"PopoverMenu.react\"), n = b(\"cx\"), o = b(\"ix\"), p = l.SelectableMenu, q = l.SelectableItem, r = j.createClass({\n displayName: \"UFIOrderingModeSelector\",\n getInitialState: function() {\n var s = null;\n this.props.orderingmodes.map(function(t) {\n if (t.selected) {\n s = t;\n }\n ;\n ;\n });\n return {\n selectedMode: s\n };\n },\n onMenuItemClick: function(s, t) {\n var u = t.JSBNG__item.getValue();\n this.props.orderingmodes.map(function(v) {\n if (((v.value === u))) {\n this.setState({\n selectedMode: v\n });\n }\n ;\n ;\n }.bind(this));\n this.props.onOrderChanged(u);\n },\n render: function() {\n var s = null;\n if (((this.props.currentOrderingMode != this.state.selectedMode.value))) {\n s = i({\n className: \"UFIOrderingModeSelectorLoading\",\n color: \"white\",\n size: \"small\"\n });\n }\n ;\n ;\n var t = p({\n onItemClick: this.onMenuItemClick\n }, this.props.orderingmodes.map(function(u) {\n return (q({\n key: u.value,\n value: u.value,\n selected: ((u.value === this.state.selectedMode.value))\n }, u.JSBNG__name));\n }.bind(this)));\n return (j.DOM.div({\n className: \"UFIOrderingModeSelector\"\n }, s, g(null, m({\n className: \"UFIOrderingModeSelectorPopover\",\n menu: t,\n alignh: \"right\"\n }, h(null, this.state.selectedMode.JSBNG__name, k({\n className: \"UFIOrderingModeSelectorDownCaret\",\n src: o(\"/images/ui/xhp/link/more/down_caret.gif\")\n }))))));\n }\n });\n e.exports = r;\n});\n__d(\"SwapButtonDEPRECATED\", [\"JSBNG__Event\",\"Arbiter\",\"copyProperties\",\"JSBNG__CSS\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Arbiter\"), i = b(\"copyProperties\"), j = b(\"JSBNG__CSS\");\n function k(l, m, n) {\n this._swapperButton = l;\n this._swappeeButton = m;\n g.listen(l, \"click\", this.swap.bind(this));\n if (n) {\n g.listen(m, \"click\", this.unswap.bind(this));\n }\n ;\n ;\n h.subscribe(\"SwapButtonDEPRECATED/focusOnJoinButton\", this.setFocusOnSwapper.bind(this), h.SUBSCRIBE_ALL);\n };\n;\n i(k.prototype, {\n _swapperButton: null,\n _swappeeButton: null,\n swap: function(l) {\n j.hide(this._swapperButton);\n j.show(this._swappeeButton);\n ((((l !== false)) && this._swappeeButton.JSBNG__focus()));\n },\n unswap: function(l) {\n j.show(this._swapperButton);\n j.hide(this._swappeeButton);\n ((((l !== false)) && this._swapperButton.JSBNG__focus()));\n },\n toggle: function() {\n j.toggle(this._swapperButton);\n j.toggle(this._swappeeButton);\n },\n setFocusOnSwapper: function() {\n this._swapperButton.JSBNG__focus();\n }\n });\n e.exports = k;\n});\n__d(\"SubscribeButton\", [\"Arbiter\",\"AsyncRequest\",\"JSBNG__Event\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncRequest\"), i = b(\"JSBNG__Event\"), j = {\n SUBSCRIBED: \"FollowingUser\",\n UNSUBSCRIBED: \"UnfollowingUser\",\n init: function(k, l, m, n, o, p) {\n i.listen(l, \"click\", function() {\n g.inform(j.SUBSCRIBED, {\n profile_id: n\n });\n });\n g.subscribe(j.SUBSCRIBED, function(q, r) {\n if (((n === r.profile_id))) {\n if (!o) {\n m.suppressNextMouseEnter();\n }\n ;\n ;\n k.swap();\n if (((p === true))) {\n new h().setURI(\"/ajax/profile/suggestions_on_following.php\").setData({\n profileid: n\n }).send();\n }\n ;\n ;\n }\n ;\n ;\n });\n g.subscribe(j.UNSUBSCRIBED, function(q, r) {\n if (((n === r.profile_id))) {\n k.unswap();\n m.hideFlyout();\n g.inform(\"SubMenu/Reset\");\n }\n ;\n ;\n });\n },\n initUnsubscribe: function(k, l) {\n i.listen(k, \"click\", function() {\n g.inform.bind(g, j.UNSUBSCRIBED, {\n profile_id: l\n }).defer();\n });\n }\n };\n e.exports = j;\n});\n__d(\"Tour\", [\"Arbiter\",\"LayerDestroyOnHide\",\"LayerHideOnEscape\",\"copyProperties\",\"NavigationMessage\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"LayerDestroyOnHide\"), i = b(\"LayerHideOnEscape\"), j = b(\"copyProperties\"), k = b(\"NavigationMessage\");\n function l() {\n if (l._instance) {\n l._instance.setTourComplete();\n }\n ;\n ;\n l._instance = this;\n };\n;\n j(l.prototype, {\n tourStarted: false,\n tourComplete: false,\n _navigationBeginToken: null,\n _pageLeaveToken: null,\n steps: {\n },\n JSBNG__openDialog: null,\n init: function() {\n this._pageLeaveToken = g.subscribe(\"onload/exit\", this.handleLeavePage.bind(this));\n this._navigationBeginToken = g.subscribe(k.NAVIGATION_BEGIN, this.handleTransition.bind(this));\n this.steps = {\n };\n return this;\n },\n registerStep: function(m, n) {\n m.disableBehavior(h);\n m.disableBehavior(i);\n this.steps[n] = m;\n m.subscribe(\"show\", function() {\n m.inform(\"tour-dialog-show\", m);\n });\n if (!this.getTourStarted()) {\n this.setTourStart();\n }\n ;\n ;\n },\n _unsubscribeSubscriptions: function() {\n this._navigationBeginToken.unsubscribe();\n this._pageLeaveToken.unsubscribe();\n },\n handleLeavePage: function() {\n this._unsubscribeSubscriptions();\n },\n handleTransition: function() {\n this._unsubscribeSubscriptions();\n },\n handleTourStart: function() {\n \n },\n handleTourStop: function() {\n \n },\n handleTourComplete: function() {\n \n },\n showStep: function(m) {\n var n = this.steps[m];\n if (!((this.JSBNG__openDialog == n))) {\n this.hideOpenDialog();\n }\n ;\n ;\n if (!n) {\n return;\n }\n ;\n ;\n this.JSBNG__openDialog = n;\n n.show();\n },\n hideOpenDialog: function() {\n if (this.JSBNG__openDialog) {\n this.JSBNG__openDialog.hide();\n this.JSBNG__openDialog = null;\n }\n ;\n ;\n },\n getTourStarted: function() {\n return this.tourStarted;\n },\n setTourStart: function() {\n this.tourStarted = true;\n this.handleTourStart();\n },\n setTourStop: function() {\n this.tourStarted = false;\n this.hideOpenDialog();\n this.handleTourStop();\n },\n setTourComplete: function() {\n if (this.tourComplete) {\n return;\n }\n ;\n ;\n this.setTourStop();\n this.tourComplete = true;\n this.handleTourComplete();\n },\n hideStep: function(m) {\n var n = this.steps[m];\n ((n && n.hide()));\n }\n });\n j(l, {\n getInstance: function() {\n return ((l._instance || (l._instance = new l())));\n }\n });\n e.exports = l;\n});\n__d(\"FutureSideNavItem\", [\"Arbiter\",\"JSBNG__CSS\",\"DOM\",\"Parent\",\"$\",\"copyProperties\",\"createArrayFrom\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"JSBNG__CSS\"), i = b(\"DOM\"), j = b(\"Parent\"), k = b(\"$\"), l = b(\"copyProperties\"), m = b(\"createArrayFrom\");\n function n(o, p) {\n this.id = o.id;\n this.up = p;\n this.endpoint = o.endpoint;\n this.type = o.type;\n this.node = ((o.node || k(o.id)));\n this.paths = ((o.path ? m(o.path) : []));\n this.keys = ((o.key ? m(o.key) : []));\n var q = this._findKeys(this.keys);\n this.numericKey = ((q.numeric || this.keys[0]));\n this.textKey = ((q.text || this.keys[0]));\n this._pathPattern = this._buildRegex(this.paths);\n this._keyPattern = this._buildRegex(this.keys);\n this.hideLoading();\n this.hideSelected();\n };\n;\n l(n.prototype, {\n equals: function(o) {\n return ((o && ((o.id === this.id))));\n },\n getLinkNode: function() {\n return ((i.scry(this.node, \"a.JSBNG__item\")[0] || i.scry(this.node, \"a.subitem\")[0]));\n },\n matchPath: function(o) {\n return this._matchInput(this._pathPattern, o);\n },\n matchKey: function(o) {\n return this._matchInput(this._keyPattern, o);\n },\n _matchInput: function(o, p) {\n var q = ((o && o.exec(p)));\n return ((q && q.slice(1)));\n },\n getTop: function() {\n return ((this.isTop() ? this : this.up.getTop()));\n },\n isTop: function(o) {\n return !this.up;\n },\n setCount: function(o, p) {\n return this._updateCount(o, true);\n },\n incrementCount: function(o, p) {\n return this._updateCount(o, false);\n },\n _updateCount: function(o, p, q) {\n var r = i.scry(this.node, \"span.count\")[0], s = ((r && i.scry(r, \"span.countValue\")[0]));\n if (s) {\n var t = ((p ? 0 : parseInt(i.getText(s), 10))), u = Math.max(0, ((t + o))), v = ((this.isTop() ? \"hidden\" : \"hiddenSubitem\"));\n i.setContent(s, u);\n ((q && h.conditionClass(this.node, v, !u)));\n h.conditionClass(r, \"hidden_elem\", !u);\n if (this.isTop()) {\n var w = i.scry(this.node, \"div.linkWrap\")[0];\n if (w) {\n h.conditionClass(w, \"noCount\", !u);\n h.conditionClass(w, \"hasCount\", u);\n }\n ;\n ;\n }\n ;\n ;\n }\n ;\n ;\n g.inform(\"NavigationMessage.COUNT_UPDATE_DONE\");\n },\n showLoading: function() {\n h.addClass(this.node, \"loading\");\n },\n hideLoading: function() {\n h.removeClass(this.node, \"loading\");\n },\n showSelected: function() {\n h.addClass(this.node, \"selectedItem\");\n ((h.hasClass(this.node, \"hider\") && h.addClass(this._getExpanderParent(), \"expandedMode\")));\n },\n hideSelected: function() {\n h.removeClass(this.node, \"selectedItem\");\n },\n showChildren: function() {\n h.addClass(this.node, \"open\");\n },\n hideChildren: function() {\n h.removeClass(this.node, \"open\");\n },\n _getExpanderParent: function() {\n return j.byClass(this.node, \"expandableSideNav\");\n },\n _buildRegex: function(o) {\n if (o.length) {\n var p = o.map(function(q) {\n if (((typeof q === \"string\"))) {\n return q.replace(/([^a-z0-9_])/gi, \"\\\\$1\");\n }\n else if (((q && q.regex))) {\n return q.regex;\n }\n \n ;\n ;\n });\n return new RegExp(((((\"^(?:\" + p.join(\"|\"))) + \")$\")));\n }\n ;\n ;\n },\n _findKeys: function(o) {\n var p = /^(app|group|fl)_/, q = {\n };\n for (var r = 0; ((r < o.length)); r++) {\n var s = p.test(o[r]);\n if (((s && !q.numeric))) {\n q.numeric = o[r];\n }\n else if (((!s && !q.text))) {\n q.text = o[r];\n }\n \n ;\n ;\n if (((q.numeric && q.text))) {\n break;\n }\n ;\n ;\n };\n ;\n return q;\n }\n });\n e.exports = n;\n});\n__d(\"FutureSideNavSection\", [\"Bootloader\",\"DOMQuery\",\"$\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Bootloader\"), h = b(\"DOMQuery\"), i = b(\"$\"), j = b(\"copyProperties\");\n function k(l) {\n this.id = l.id;\n this.node = ((this.node || i(l.id)));\n this.editEndpoint = l.editEndpoint;\n };\n;\n j(k.prototype, {\n equals: function(l) {\n return ((l && ((l.id === this.id))));\n },\n getEditorAsync: function(l) {\n g.loadModules([\"SortableSideNav\",], function(m) {\n var n = new m(h.JSBNG__find(this.node, \"ul.uiSideNav\"), this.editEndpoint);\n l(n);\n }.bind(this));\n }\n });\n e.exports = k;\n});\n__d(\"FutureSideNav\", [\"Arbiter\",\"Bootloader\",\"ChannelConstants\",\"JSBNG__CSS\",\"DOM\",\"JSBNG__Event\",\"FutureSideNavItem\",\"FutureSideNavSection\",\"NavigationMessage\",\"PageTransitions\",\"Parent\",\"Run\",\"SelectorDeprecated\",\"URI\",\"UserAgent\",\"Vector\",\"copyProperties\",\"createArrayFrom\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Bootloader\"), i = b(\"ChannelConstants\"), j = b(\"JSBNG__CSS\"), k = b(\"DOM\"), l = b(\"JSBNG__Event\"), m = b(\"FutureSideNavItem\"), n = b(\"FutureSideNavSection\"), o = b(\"NavigationMessage\"), p = b(\"PageTransitions\"), q = b(\"Parent\"), r = b(\"Run\"), s = b(\"SelectorDeprecated\"), t = b(\"URI\"), u = b(\"UserAgent\"), v = b(\"Vector\"), w = b(\"copyProperties\"), x = b(\"createArrayFrom\");\n function y() {\n ((y.instance && y.instance.uninstall()));\n y.instance = this;\n };\n;\n y.instance = null;\n y.getInstance = function() {\n return ((y.instance || new y()));\n };\n w(y.prototype, {\n init: function(z, aa, ba) {\n this.root = z;\n this.items = {\n };\n this.sections = {\n };\n this.editor = null;\n this.editing = false;\n this.selected = null;\n this.loading = null;\n this.keyParam = \"sk\";\n this.defaultKey = aa;\n this.uri = t.getRequestURI();\n this.ajaxPipe = ba;\n this.ajaxPipeEndpoints = {\n };\n this.sidecol = true;\n this._installed = true;\n this._handlePageTransitions = true;\n p.registerHandler(function(ca) {\n return ((this._handlePageTransitions && this.handlePageTransition(ca)));\n }.bind(this));\n this._eventHandlers = [];\n this._arbiterSubscriptions = [g.subscribe(o.NAVIGATION_COMPLETED, this.navigationComplete.bind(this)),g.subscribe(o.NAVIGATION_FAILED, this.navigationFailed.bind(this)),g.subscribe(o.NAVIGATION_COUNT_UPDATE, this.navigationCountUpdate.bind(this)),g.subscribe(o.NAVIGATION_SELECT, this.navigationSelect.bind(this)),g.subscribe(i.getArbiterType(\"nav_update_counts\"), this.navigationCountUpdateFromPresence.bind(this)),];\n this._explicitHover = [];\n this._ensureHover(\"sideNavItem\");\n this._eventHandlers.push(l.listen(window, \"resize\", this._handleResize.bind(this)));\n this._checkNarrow();\n this._selectorSubscriptions = [];\n ((window.Selector && this._selectorSubscriptions.push(s.subscribe([\"open\",\"close\",], function(ca, da) {\n var ea = q.byClass(da.selector, \"sideNavItem\");\n ((ea && j.conditionClass(ea, \"editMenuOpened\", ((ca === \"open\")))));\n }))));\n r.onLeave(this.uninstall.bind(this));\n if (this._pendingSections) {\n this._pendingSections.forEach(function(ca) {\n this.initSection.apply(this, ca);\n }.bind(this));\n }\n ;\n ;\n },\n _handleResize: (function() {\n var z;\n return function() {\n ((z && JSBNG__clearTimeout(z)));\n z = this._checkNarrow.bind(this).defer(200);\n };\n })(),\n _checkNarrow: function() {\n j.conditionClass(this.root, \"uiNarrowSideNav\", ((v.getElementPosition(this.root).x < 20)));\n },\n _ensureHover: function(z) {\n if (((u.ie() < 8))) {\n h.loadModules([\"ExplicitHover\",], function(aa) {\n this._explicitHover.push(new aa(this.root, z));\n }.bind(this));\n }\n ;\n ;\n },\n uninstall: function() {\n if (this._installed) {\n this._installed = false;\n this._handlePageTransitions = false;\n this._arbiterSubscriptions.forEach(g.unsubscribe);\n this._selectorSubscriptions.forEach(function(z) {\n s.unsubscribe(z);\n });\n this._eventHandlers.forEach(function(z) {\n z.remove();\n });\n this._explicitHover.forEach(function(z) {\n z.uninstall();\n });\n }\n ;\n ;\n },\n initSection: function(z, aa) {\n if (!this._installed) {\n this._pendingSections = ((this._pendingSections || []));\n this._pendingSections.push(arguments);\n return;\n }\n ;\n ;\n this._initItems(aa);\n this._initSection(z);\n },\n addItem: function(z, aa) {\n this._initItem(z, aa);\n },\n _initItems: function(z) {\n var aa = function(ba, ca) {\n var da = this._initItem(ba, ca);\n if (ba.children) {\n ba.children.forEach(function(ea) {\n aa(ea, da);\n });\n }\n ;\n ;\n }.bind(this);\n x(z).forEach(function(ba) {\n aa(ba, null);\n });\n },\n _initItem: function(z, aa) {\n var ba = this.items[z.id] = this._constructItem(z, aa);\n if (((ba.equals(this.selected) || z.selected))) {\n this.setSelected(ba);\n }\n ;\n ;\n var ca = ba.getLinkNode();\n ((ca && this._eventHandlers.push(l.listen(ca, \"click\", function(JSBNG__event) {\n return !this.editing;\n }.bind(this)))));\n return ba;\n },\n _initSection: function(z) {\n var aa = this.sections[z.id] = this._constructSection(z);\n this._eventHandlers.push(l.listen(aa.node, \"click\", this.handleSectionClick.bind(this, aa)));\n k.scry(aa.node, \"div.bookmarksMenuButton\").forEach(j.show);\n return aa;\n },\n _constructItem: function(z, aa) {\n return new m(z, aa);\n },\n _constructSection: function(z) {\n return new n(z);\n },\n handleSectionClick: function(z, JSBNG__event) {\n var aa = this._getEventTarget(JSBNG__event, \"a\"), ba = this._getItemForNode(aa);\n if (!aa) {\n return;\n }\n else if (j.hasClass(aa.parentNode, \"uiMenuItem\")) {\n this._handleMenuClick(z, ba, aa.parentNode, JSBNG__event);\n }\n else this._handleLinkClick(z, aa, JSBNG__event);\n \n ;\n ;\n },\n _getEventTarget: function(JSBNG__event, z) {\n var aa = JSBNG__event.getTarget();\n if (((aa.tagName !== z.toUpperCase()))) {\n return q.byTag(aa, z);\n }\n else return aa\n ;\n },\n _handleMenuClick: function(z, aa, ba, JSBNG__event) {\n if (j.hasClass(ba, \"rearrange\")) {\n this.beginEdit(z);\n }\n ;\n ;\n },\n _handleLinkClick: function(z, aa, JSBNG__event) {\n if (j.hasClass(aa, \"navEditDone\")) {\n ((this.editing ? this.endEdit() : this.beginEdit(z)));\n JSBNG__event.kill();\n }\n ;\n ;\n },\n getItem: function(z) {\n if (this._isCurrentPath(z)) {\n return this._getItemForKey(((this._getKey(z.getQueryData()) || this.defaultKey)));\n }\n else return this._getItemForPath(z.getPath())\n ;\n },\n getNodeForKey: function(z) {\n var aa = this._getItemForKey(z);\n if (aa) {\n return aa.node;\n }\n ;\n ;\n },\n _isCurrentPath: function(z) {\n return ((((z.getDomain() === this.uri.getDomain())) && ((z.getPath() === this.uri.getPath()))));\n },\n _getKey: function(z) {\n return z[this.keyParam];\n },\n _getItemForNode: function(z) {\n z = q.byClass(z, \"sideNavItem\");\n return ((z && this.items[z.id]));\n },\n _getItemForKey: function(z) {\n return this._findItem(function(aa) {\n return aa.matchKey(z);\n });\n },\n _getItemForPath: function(z) {\n return this._findItem(function(aa) {\n return aa.matchPath(z);\n });\n },\n _findItem: function(z) {\n {\n var fin239keys = ((window.top.JSBNG_Replay.forInKeys)((this.items))), fin239i = (0);\n var aa;\n for (; (fin239i < fin239keys.length); (fin239i++)) {\n ((aa) = (fin239keys[fin239i]));\n {\n if (z(this.items[aa])) {\n return this.items[aa];\n }\n ;\n ;\n };\n };\n };\n ;\n },\n removeItem: function(z) {\n if (((z && this.items[z.id]))) {\n k.remove(z.node);\n delete this.items[z.id];\n }\n ;\n ;\n },\n removeItemByKey: function(z) {\n this.removeItem(this._getItemForKey(z));\n },\n moveItem: function(z, aa, ba) {\n var ca = k.JSBNG__find(z.node, \"ul.uiSideNav\");\n ((ba ? k.prependContent : k.appendContent))(ca, aa.node);\n },\n setLoading: function(z) {\n ((this.loading && this.loading.hideLoading()));\n this.loading = z;\n ((this.loading && this.loading.showLoading()));\n },\n setSelected: function(z) {\n this.setLoading(null);\n if (this.selected) {\n this.selected.hideSelected();\n this.selected.getTop().hideChildren();\n }\n ;\n ;\n this.selected = z;\n if (this.selected) {\n this.selected.showSelected();\n this.selected.getTop().showChildren();\n }\n ;\n ;\n },\n handlePageTransition: function(z) {\n var aa = this.getItem(z), ba = ((((aa && aa.endpoint)) && this._doPageTransition(aa, z)));\n return ba;\n },\n _doPageTransition: function(z, aa) {\n this.setLoading(z);\n this._sendPageTransition(z.endpoint, w(this._getTransitionData(z, aa), aa.getQueryData()));\n return true;\n },\n _sendPageTransition: function(z, aa) {\n aa.endpoint = z;\n g.inform(o.NAVIGATION_BEGIN, {\n useAjaxPipe: this._useAjaxPipe(z),\n params: aa\n });\n },\n _getTransitionData: function(z, aa) {\n var ba = {\n };\n ba.sidecol = this.sidecol;\n ba.path = aa.getPath();\n ba[this.keyParam] = z.textKey;\n ba.key = z.textKey;\n return ba;\n },\n _useAjaxPipe: function(z) {\n return ((this.ajaxPipe || this.ajaxPipeEndpoints[z]));\n },\n navigationComplete: function() {\n ((this.loading && this.setSelected(this.loading)));\n },\n navigationFailed: function() {\n this.setLoading(null);\n },\n navigationSelect: function(z, aa) {\n var ba = this._getItemForKey(this._getKey(aa));\n if (aa.asLoading) {\n this.setLoading(ba);\n }\n else this.setSelected(ba);\n ;\n ;\n },\n navigationCountUpdate: function(z, aa) {\n var ba = this._getItemForKey(((aa && aa.key)));\n if (ba) {\n if (((typeof aa.count !== \"undefined\"))) {\n ba.setCount(aa.count, aa.hide);\n }\n else if (((typeof aa.increment !== \"undefined\"))) {\n ba.incrementCount(aa.increment, aa.hide);\n }\n \n ;\n }\n ;\n ;\n },\n navigationCountUpdateFromPresence: function(z, aa) {\n aa = aa.obj;\n if (aa) {\n if (((!aa.class_name || ((aa.class_name && j.hasClass(this.root, aa.class_name)))))) {\n if (aa.items) {\n for (var ba = 0; ((ba < aa.items.length)); ba++) {\n this.navigationCountUpdate(z, aa.items[ba]);\n ;\n };\n }\n ;\n }\n ;\n }\n ;\n ;\n },\n beginEdit: function(z) {\n if (!this.editing) {\n this.editing = true;\n j.addClass(this.root, \"editMode\");\n this._updateTrackingData();\n this._initEditor(z);\n }\n ;\n ;\n },\n endEdit: function() {\n if (this.editing) {\n j.removeClass(this.root, \"editMode\");\n ((this.editor && this.editor.endEdit()));\n this.editor = null;\n this.editing = false;\n this._updateTrackingData();\n }\n ;\n ;\n },\n _updateTrackingData: function(z) {\n var aa = ((this.root.getAttribute(\"data-gt\") || \"{}\"));\n try {\n aa = JSON.parse(aa);\n if (this.editing) {\n aa.editing = true;\n }\n else delete aa.editing;\n ;\n ;\n this.root.setAttribute(\"data-gt\", JSON.stringify(aa));\n } catch (ba) {\n \n };\n ;\n },\n _initEditor: function(z) {\n z.getEditorAsync(function(aa) {\n if (this.editing) {\n this.editor = aa;\n this.editor.beginEdit();\n }\n ;\n ;\n }.bind(this));\n }\n });\n e.exports = y;\n});\n__d(\"PageFanning\", [\"Animation\",\"AsyncRequest\",\"JSBNG__CSS\",\"DOM\",\"FutureSideNav\",\"Parent\",\"URI\",\"$\",\"collectDataAttributes\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"AsyncRequest\"), i = b(\"JSBNG__CSS\"), j = b(\"DOM\"), k = b(\"FutureSideNav\"), l = b(\"Parent\"), m = b(\"URI\"), n = b(\"$\"), o = b(\"collectDataAttributes\"), p = b(\"copyProperties\"), q = {\n setFanStatus: function(s, t, u, v, w, x, y) {\n var z = {\n ft: {\n }\n };\n if (s) {\n z = {\n ft: o(s, [\"ft\",]).ft\n };\n }\n ;\n ;\n w = ((w || function(ca) {\n var da = ca.getPayload();\n if (((!da || !s))) {\n return;\n }\n ;\n ;\n if (da.reload) {\n q.reloadOnFanStatusChanged(da.preserve_tab);\n }\n else r(s, da);\n ;\n ;\n }));\n var aa = {\n fbpage_id: t,\n add: u,\n reload: v\n };\n if (((y != null))) {\n p(aa, y);\n }\n ;\n ;\n p(aa, z);\n var ba = new h().setURI(\"/ajax/pages/fan_status.php\").setData(aa).setNectarModuleDataSafe(s).setHandler(w);\n if (x) {\n ba.setErrorHandler(x);\n }\n ;\n ;\n ba.send();\n return false;\n },\n reloadOnFanStatusChanged: function(s) {\n var t = m.getRequestURI();\n if (s) {\n var u = k.getInstance().selected.textKey;\n if (((!t.getQueryData().sk && u))) {\n t.addQueryData({\n sk: u\n });\n }\n ;\n ;\n }\n ;\n ;\n window.JSBNG__location.href = t;\n },\n toggleLikeOnFanStatusChanged: function(s, t) {\n var u = n(((\"liked_pages_like_action_\" + s))), v = n(((\"liked_pages_undo_action_\" + s)));\n i.conditionClass(u, \"hidden_elem\", t);\n i.conditionClass(v, \"hidden_elem\", !t);\n },\n informPageLikeButtonOnChange: function(s, t) {\n var u = a.PageLikeButton;\n if (u) {\n if (t) {\n u.informLike(s);\n u.informLikeSuccess(s);\n }\n else u.informUnlike(s);\n ;\n }\n ;\n ;\n }\n };\n function r(s, t) {\n var u = t.feedback;\n if (!u) {\n return;\n }\n ;\n ;\n if (l.byClass(s, \"fbTimelineEscapeSectionItem\")) {\n s = ((l.byClass(s, \"fan_status_inactive\") || s));\n }\n ;\n ;\n var v = j.create(\"span\", {\n className: \"fan_status_inactive\"\n }, u);\n s.parentNode.replaceChild(v, s);\n var w = function() {\n if (t.can_repeat_action) {\n v.parentNode.replaceChild(s, v);\n }\n ;\n ;\n };\n new g(v).duration(3000).checkpoint().to(\"backgroundColor\", \"#FFFFFF\").duration(1000).ondone(w).go();\n };\n;\n e.exports = q;\n});\n__d(\"PageLikeButton\", [\"Arbiter\",\"AsyncRequest\",\"AsyncResponse\",\"JSBNG__Event\",\"PageFanning\",\"SubscribeButton\",\"Tour\",\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncRequest\"), i = b(\"AsyncResponse\"), j = b(\"JSBNG__Event\"), k = b(\"PageFanning\"), l = b(\"SubscribeButton\"), m = b(\"Tour\"), n = b(\"URI\"), o = {\n LIKED: \"liked\",\n UNLIKED: \"unliked\",\n LIKED_SUCCESS: \"liked_success\",\n init: function(r, s, t, u, v, w, x, y, z, aa, ba) {\n g.subscribe(o.LIKED, function(ca, da) {\n if (((u === da.profile_id))) {\n if (!z) {\n t.suppressNextMouseEnter();\n }\n ;\n ;\n r.swap(ba);\n }\n ;\n ;\n });\n g.subscribe(o.UNLIKED, function(ca, da) {\n if (((u === da.profile_id))) {\n r.unswap(ba);\n t.hideFlyout();\n }\n ;\n ;\n });\n if (y) {\n g.subscribe(o.LIKED_SUCCESS, function(ca, da) {\n var ea = n.getRequestURI().getQueryData().app_data;\n if (((da.profile_id == u))) {\n new h().setURI(\"/ajax/pages/fetch_app_column.php\").setData({\n profile_id: u,\n tab_key: y,\n app_data: ea\n }).send();\n }\n ;\n ;\n });\n }\n ;\n ;\n j.listen(s, \"click\", q.bind(null, u, v, w, x));\n },\n initCallout: function(r, s) {\n var t = JSBNG__document.getElementById(\"pageActionLikeCalloutButton\");\n j.listen(t, \"click\", q.bind(null, r, s, null, null));\n },\n initUnlike: function(r, s, t) {\n j.listen(r, \"click\", function(JSBNG__event) {\n p(JSBNG__event.getTarget(), s, false, function(u) {\n g.inform(o.LIKED, {\n profile_id: s\n });\n i.defaultErrorHandler(u);\n }, t);\n o.informUnlike(s);\n });\n },\n informLike: function(r, s, t) {\n var u = {\n profile_id: r,\n target: s,\n origin: t\n };\n g.inform(o.LIKED, u);\n g.inform(l.SUBSCRIBED, u);\n },\n informLikeSuccess: function(r) {\n var s = {\n profile_id: r\n };\n g.inform(o.LIKED_SUCCESS, s);\n },\n informUnlike: function(r) {\n var s = {\n profile_id: r\n };\n g.inform.bind(g, o.UNLIKED, s).defer();\n g.inform.bind(g, l.UNSUBSCRIBED, s).defer();\n }\n };\n function p(r, s, t, u, v, w, x) {\n m.getInstance().hideStep(\"low_page_likes\");\n k.setFanStatus(r, s, t, false, function() {\n o.informLikeSuccess(s);\n }, u, {\n fan_origin: v,\n fan_source: w,\n cat: x\n });\n };\n;\n function q(r, s, t, u, JSBNG__event) {\n p(JSBNG__event.getTarget(), r, true, function(v) {\n g.inform(o.UNLIKED, {\n profile_id: r\n });\n i.defaultErrorHandler(v);\n }, s, t, u);\n o.informLike(r, JSBNG__event.getTarget(), s);\n };\n;\n e.exports = o;\n a.PageLikeButton = o;\n});\n__d(\"legacy:PageLikeButton\", [\"PageLikeButton\",], function(a, b, c, d) {\n a.PageLikeButton = b(\"PageLikeButton\");\n}, 3);\n__d(\"HoverButton\", [\"AsyncRequest\",\"JSBNG__CSS\",\"DOM\",\"URI\",\"copyProperties\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"JSBNG__CSS\"), i = b(\"DOM\"), j = b(\"URI\"), k = b(\"copyProperties\"), l = b(\"cx\");\n function m(n, o, p, q) {\n this._button = n;\n this._flyout = o;\n this._flyoutAjaxify = q;\n this._flyoutContent = p;\n o.subscribe(\"show\", this._onShow.bind(this));\n o.subscribe(\"hide\", this._onHide.bind(this));\n };\n;\n k(m.prototype, {\n _button: null,\n _flyout: null,\n _flyoutAjaxify: null,\n _flyoutContent: null,\n showFlyoutBriefly: function() {\n this.showFlyout();\n this._flyout.hideFlyoutDelayed(5000);\n },\n showFlyout: function() {\n this._flyout.showFlyout(this._button, true);\n this._flyout.inform(\"show\", this._button);\n },\n hideFlyout: function() {\n this._flyout.hideFlyout(true);\n this._flyout.inform(\"hide\", this._button);\n },\n enableButton: function() {\n this._flyout.initNode(this._button);\n },\n disableButton: function() {\n this.hideFlyout();\n this._flyout.deactivateNode(this._button);\n },\n _onShow: function(n, o) {\n h.addClass(o, \"-cx-PUBLIC-uiHoverButton__selected\");\n if (((h.hasClass(o, \"uiButton\") || h.hasClass(o, \"-cx-PRIVATE-uiButton__root\")))) {\n h.addClass(o, \"selected\");\n }\n ;\n ;\n if (this._flyoutAjaxify) {\n h.addClass(this._flyoutContent, \"async_saving\");\n new g().setURI(new j(this._flyoutAjaxify)).setHandler(function(p) {\n h.removeClass(this._flyoutContent, \"async_saving\");\n i.setContent(this._flyoutContent, p.payload);\n }.bind(this)).send();\n this._flyoutAjaxify = null;\n }\n ;\n ;\n },\n _onHide: function(n, o) {\n h.removeClass(o, \"-cx-PUBLIC-uiHoverButton__selected\");\n if (((h.hasClass(o, \"uiButton\") || h.hasClass(o, \"-cx-PRIVATE-uiButton__root\")))) {\n h.removeClass(o, \"selected\");\n }\n ;\n ;\n },\n destroy: function() {\n this.hideFlyout();\n this._flyout.destroy();\n },\n suppressNextMouseEnter: function() {\n this._flyout.setActiveNode(this._button);\n }\n });\n e.exports = m;\n});\n__d(\"legacy:ui-side-nav-future-js\", [\"FutureSideNav\",], function(a, b, c, d) {\n a.FutureSideNav = b(\"FutureSideNav\");\n}, 3);"); |
| // 12436 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o163,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yZ/r/JdjE3mVpxG6.js",o166); |
| // undefined |
| o163 = null; |
| // undefined |
| o166 = null; |
| // 12543 |
| o69.readyState = 2; |
| // 12541 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o142,o167); |
| // undefined |
| o167 = null; |
| // 12547 |
| o69.readyState = 3; |
| // 12545 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o142,o168); |
| // undefined |
| o168 = null; |
| // 12551 |
| o69.readyState = 4; |
| // undefined |
| o69 = null; |
| // 12593 |
| o171.toString = f81632121_1344; |
| // undefined |
| o171 = null; |
| // 12601 |
| o172.hasOwnProperty = f81632121_1662; |
| // undefined |
| o172 = null; |
| // 12626 |
| o173.hasOwnProperty = f81632121_1662; |
| // undefined |
| o173 = null; |
| // 12549 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o142,o169); |
| // undefined |
| o142 = null; |
| // undefined |
| o169 = null; |
| // 12719 |
| o22.readyState = 2; |
| // 12717 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o140,o170); |
| // undefined |
| o170 = null; |
| // 12723 |
| o22.readyState = 3; |
| // 12721 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o140,o174); |
| // undefined |
| o174 = null; |
| // 12727 |
| o22.readyState = 4; |
| // undefined |
| o22 = null; |
| // 12769 |
| o177.toString = f81632121_1344; |
| // undefined |
| o177 = null; |
| // 12777 |
| o178.hasOwnProperty = f81632121_1662; |
| // undefined |
| o178 = null; |
| // 12802 |
| o179.hasOwnProperty = f81632121_1662; |
| // undefined |
| o179 = null; |
| // 12725 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o140,o175); |
| // undefined |
| o140 = null; |
| // undefined |
| o175 = null; |
| // 12949 |
| JSBNG_Replay.s1406cdb8f82a4497c9e210b291001f76845e62bf_379[0](false); |
| // 12986 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"e0RyX\",]);\n}\n;\n__d(\"PhotoSnowliftAds\", [\"Event\",\"copyProperties\",\"CSS\",\"csx\",\"DataStore\",\"DOM\",\"PhotoSessionLog\",\"UIPagelet\",\"URI\",\"Vector\",\"extendArray\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"copyProperties\"), i = b(\"CSS\"), j = b(\"csx\"), k = b(\"DataStore\"), l = b(\"DOM\"), m = b(\"PhotoSessionLog\"), n = b(\"UIPagelet\"), o = b(\"URI\"), p = b(\"Vector\"), q = b(\"extendArray\"), r = {\n DEFAULT_UNITS_REFRESH_RATE: 30000,\n UNITS_REGISTER_DELAY: 1000,\n root: null,\n availableDimensions: null,\n loadQuery: null,\n lastLoadTime: 0,\n minAds: 100,\n units: null,\n isLogAdData: null,\n displayedCallback: null,\n refreshUnitsRate: null,\n position: null,\n adsStatus: \"null\",\n adsEvents: {\n },\n snowliftRedesign: false,\n resetEvents: function() {\n this.adsStatus = \"reset\";\n this.adsEvents = {\n };\n },\n addEvent: function(s, t) {\n if (t) {\n this.adsStatus = s;\n };\n var u = Date.now();\n this.adsEvents[((s + \"_\") + u)] = u;\n },\n init: function(s, t, u, v) {\n this.reset();\n this.root = s;\n this.snowlift = t;\n this.minAds = u.min_ads;\n this.displayedCallback = v;\n this.addEvent(\"init\", true);\n this.snowliftRedesign = u.snowlift_redesign;\n this.refreshUnitsRate = r.DEFAULT_UNITS_REFRESH_RATE;\n if (u.refresh_fast) {\n this.refreshUnitsRate = u.refresh_rate;\n };\n },\n reset: function() {\n this.lastLoadTime = 0;\n this.position = 0;\n this.units = [];\n this.resetEvents();\n this.addEvent(\"reset\", true);\n },\n resize: function(s) {\n this.availableDimensions = s;\n this.loadQuery = this.snowlift.getLoadQuery();\n this.processResize();\n },\n calculateUnitSizes: function(s, t, u) {\n var v = {\n };\n s.forEach(function(w) {\n var x = w.root.firstChild.offsetHeight;\n w.units.forEach(function(z) {\n if ((!i.hasClass(z, \"hidden\") && !this.getIsHoldout(z))) {\n var aa = this.getHeight(z.firstChild, t);\n x -= aa;\n }\n ;\n }.bind(this));\n var y = {\n height: x,\n visible: false\n };\n w.units.forEach(function(z) {\n var aa = this.getIsAds(z), ba = this.getHeight(z.firstChild, t), ca = this.getUnitId(z), da = this.getIsHoldout(z);\n if ((da && u)) {\n return\n };\n v[ca] = {\n height: ba,\n visible: false,\n priority: 0,\n is_ads: aa,\n is_holdout: da,\n section_ref: y\n };\n }.bind(this));\n }.bind(this));\n return v;\n },\n calculateVisibleUnits: function(s, t, u) {\n var v = 0, w = this.getUnitPriority(t);\n w.forEach(function(x) {\n if (t.hasOwnProperty(x)) {\n var y = t[x], z = y.height;\n if (!y.section_ref.visible) {\n z += y.section_ref.height;\n };\n y.height_below = (u - z);\n y.visible = ((y.height_below >= 0) && (z > 0));\n if (y.visible) {\n y.section_ref.visible = true;\n u -= z;\n v++;\n }\n ;\n }\n ;\n }.bind(this));\n return t;\n },\n displayUnits: function(s, t) {\n s.forEach(function(u) {\n var v = false, w = true;\n u.units.forEach(function(x) {\n var y = this.getUnitId(x), z = t[y];\n if (!z) {\n return\n };\n var aa = z.visible, ba = z.height_below, ca = z.is_ads;\n i.conditionClass(x, \"hidden\", !aa);\n if (((ca && aa) && w)) {\n var da = l.find(x, \"div.ego_unit\");\n i.addClass(da, \"ego_unit_no_top_border\");\n w = false;\n }\n ;\n v = (v || aa);\n this.calcUnitStats(this.units[ca][y], aa, ba);\n }.bind(this));\n i.conditionClass(u.root, \"hidden\", !v);\n }.bind(this));\n },\n getUnitsDisplayed: function(s, t) {\n var u = 0;\n s.forEach(function(v) {\n v.units.forEach(function(w) {\n var x = this.getUnitId(w), y = t[x];\n if ((!y || !y.visible)) {\n return\n };\n u++;\n }.bind(this));\n }.bind(this));\n return u;\n },\n getHeightsRequired: function(s, t) {\n var u = 0, v = [];\n s.forEach(function(w) {\n var x = false;\n w.units.forEach(function(y) {\n var z = this.getUnitId(y), aa = t[z];\n if (!aa) {\n return\n };\n u += aa.height;\n if (!x) {\n u += aa.section_ref.height;\n x = true;\n }\n ;\n v.push(u);\n }.bind(this));\n }.bind(this));\n return v;\n },\n getUnitPriority: function(s) {\n var t = [], u = 0, v = 0;\n for (var w in s) {\n var x = s[w];\n t.push(w);\n var y = ((this.minAds + u) + v);\n if (x.is_ads) {\n if ((v < this.minAds)) {\n y = v;\n };\n v++;\n }\n else u++;\n ;\n x.priority = y;\n };\n t = t.sort(function(z, aa) {\n var ba = s[z], ca = s[aa];\n return (ba.priority - ca.priority);\n }.bind(this));\n return t;\n },\n updateUnitsStatus: function() {\n var s = this.availableDimensions.x, t = this.availableDimensions.y, u = this.calculateUnitSizes(this.sections, s);\n u = this.calculateVisibleUnits(this.sections, u, t);\n for (var v in u) {\n if (!u.hasOwnProperty(v)) {\n continue;\n };\n var w = u[v];\n if ((!w.is_holdout || !w.visible)) {\n continue;\n };\n var x = this.units[1][v];\n this.calcUnitStats(x, w.visible, w.height_below);\n };\n u = this.calculateUnitSizes(this.sections, s, true);\n u = this.calculateVisibleUnits(this.sections, u, t);\n this.displayUnits(this.sections, u);\n if (this.displayedCallback) {\n var y = this.getUnitsDisplayed(this.sections, u), z = this.getHeightsRequired(this.sections, u);\n this.displayedCallback(y, z);\n }\n ;\n },\n calcUnitStats: function(s, t, u) {\n var v = Date.now();\n if (s.visible) {\n s.totalTime += (v - s.lastShowTime);\n };\n if (((s.trackingCode !== null) && (s.totalTime >= this.UNITS_REGISTER_DELAY))) {\n var w = s.trackingCode;\n s.trackingCode = null;\n this.registerImpression(w, s.registerUrl);\n }\n ;\n s.visible = t;\n s.heightBelow = u;\n s.lastShowTime = v;\n },\n prepareResize: function() {\n var s = function(t) {\n var u = l.create(\"div\", {\n className: \"inner\"\n }), v = l.create(\"div\", {\n className: \"wrapper\"\n }, u);\n l.replace(t, v);\n l.setContent(u, t);\n return v;\n };\n this.sections = l.scry(this.root, \"div.ego_section\").map(function(t) {\n return {\n root: s(t),\n units: l.scry(t, \"div.ego_unit\").map(s)\n };\n });\n },\n processResize: function() {\n if (((this.isLoading || (this.lastLoadTime === 0)) || (this.availableDimensions === null))) {\n this.setLogData();\n return;\n }\n ;\n this.updateUnitsStatus();\n this.setLogData();\n var s = this.nextRegisterTime();\n if ((s !== Infinity)) {\n this.processResize.bind(this).defer(s, true);\n };\n },\n setIsLogAdData: function(s) {\n this.isLogAdData = s;\n this.addEvent(\"setIsLogAdData\", false);\n this.setLogData();\n },\n setLogData: function() {\n var s = this.snowlift.getImageId();\n if ((this.isLogAdData && s)) {\n var t = p.getElementDimensions(this.snowlift.getImage()), u = p.getElementDimensions(this.snowlift.getRHCHeader()), v = p.getElementDimensions(this.snowlift.getRHCBody()), w = p.getElementDimensions(this.snowlift.getRHCFooter()), x = {\n query_set: this.snowlift.getLoadQuery().set,\n window_x: window.innerWidth,\n window_y: window.innerHeight,\n image_x: t.x,\n image_y: t.y,\n header_x: u.x,\n header_y: u.y,\n body_x: v.x,\n body_y: v.y,\n footer_x: w.x,\n footer_y: w.y,\n ads_below_space: this.getAdsBelowSpace(),\n time: Date.now(),\n adsStatus: this.adsStatus,\n adsEvents: this.adsEvents,\n refreshRate: this.refreshUnitsRate,\n position: this.position\n };\n m.updateAdData(s, x);\n }\n ;\n },\n getAdsBelowSpace: function() {\n var s = [], t = this.units[1];\n for (var u in t) {\n if ((t.hasOwnProperty(u) && !this.getIsHoldout(this.getAdUnit(u)))) {\n s.push(t[u].heightBelow);\n };\n };\n return s;\n },\n getIsAds: function(s) {\n var t = l.scry(s, \"div.-cx-PUBLIC-fbAdUnit__root\");\n return t.length;\n },\n getUnitId: function(s) {\n if (this.getIsAds(s)) {\n return this.getAdId(s);\n }\n else return this.getEgoId(s)\n ;\n },\n getEgoId: function(s) {\n var t = l.find(s, \"div.ego_unit\");\n return t.getAttribute(\"data-ego-fbid\");\n },\n getAdData: function(s) {\n var t = l.find(s, \"div.-cx-PUBLIC-fbAdUnit__root\"), u = t.getAttribute(\"data-ad\");\n return ((u && JSON.parse(u)) || {\n });\n },\n getAdId: function(s) {\n return this.getAdData(s).adid;\n },\n getIsHoldout: function(s) {\n return ((s && this.getIsAds(s)) && this.getAdData(s).holdout);\n },\n getAdUnit: function(s) {\n if (!this.sections) {\n return null\n };\n var t = [];\n this.sections.forEach(function(v) {\n q(t, v.units);\n });\n for (var u = 0; (u < t.length); u++) {\n if ((this.getIsAds(t[u]) && (this.getAdId(t[u]) == s))) {\n return t[u]\n };\n };\n return null;\n },\n nextRegisterTime: function() {\n var s = Infinity, t = h(h({\n }, this.units[0]), this.units[1]);\n for (var u in t) {\n if (t.hasOwnProperty(u)) {\n var v = t[u];\n if (((v.trackingCode !== null) && v.visible)) {\n s = Math.min(s, (this.UNITS_REGISTER_DELAY - v.totalTime));\n };\n }\n ;\n };\n return s;\n },\n getHeight: function(s, t) {\n var u = k.get(s, \"height\");\n if ((u && (u.x === t))) {\n return u.y\n };\n return this.cacheHeight(s, t);\n },\n cacheHeight: function(s, t) {\n var u = {\n x: t,\n y: s.offsetHeight\n };\n k.set(s, \"height\", u);\n return u.y;\n },\n loadAdsAndEgo: function() {\n this.resetEvents();\n this.addEvent(\"adsRequested\", true);\n this.position++;\n var s = this.getCursorFBID(this.loadQuery);\n n.loadFromEndpoint(\"WebEgoPane\", this.root, {\n pid: 34,\n data: [this.loadQuery.set,s,this.snowliftRedesign,this.snowlift.getOpaqueCursor(s),]\n }, {\n crossPage: true,\n bundle: false\n });\n },\n getCursorFBID: function(s) {\n if ((s.v !== undefined)) {\n return s.v\n };\n if ((s.fbid !== undefined)) {\n return s.fbid\n };\n return \"0\";\n },\n unitsLoaded: function(s, t) {\n var u;\n if (t) {\n u = \"/ai.php\";\n this.addEvent(\"adsLoaded\", true);\n }\n else {\n u = \"/ajax/ei.php\";\n this.addEvent(\"egoLoaded\", true);\n }\n ;\n var v = {\n };\n for (var w in s) {\n if (s.hasOwnProperty(w)) {\n v[w] = {\n trackingCode: s[w],\n totalTime: 0,\n lastShowTime: 0,\n heightBelow: -10000,\n visible: false,\n registerUrl: u\n };\n };\n };\n this.units[t] = v;\n if (t) {\n this.waitForImages(this.imagesLoaded.bind(this));\n };\n },\n imagesLoaded: function() {\n this.prepareResize();\n this.addEvent(\"imagesLoaded\", true);\n this.lastLoadTime = Date.now();\n this.isLoading = false;\n this.processResize();\n i.removeClass(this.root, \"loading\");\n },\n loadAdsFromUserActivity: function() {\n var s = Date.now(), t = this.refreshUnitsRate;\n if ((!this.isLoading && ((s - this.lastLoadTime) > t))) {\n i.addClass(this.root, \"loading\");\n this.isLoading = true;\n this.loadAdsAndEgo();\n }\n ;\n },\n registerImpression: function(s, t) {\n var u = l.create(\"iframe\", {\n src: o(t).addQueryData({\n aed: s\n }),\n width: 0,\n height: 0,\n frameborder: 0,\n scrolling: \"no\",\n className: \"fbEmuTracking\"\n });\n u.setAttribute(\"aria-hidden\", \"true\");\n l.appendContent(this.root, u);\n },\n waitForImages: function(s) {\n var t = l.scry(this.root, \"img.img\"), u = t.length, v = u;\n if ((v === 0)) {\n s();\n };\n var w = function() {\n v--;\n if ((v === 0)) {\n s.defer();\n };\n };\n for (var x = 0; (x < u); x++) {\n var y = t[x];\n if (y.complete) {\n w();\n }\n else g.listen(y, {\n load: w,\n error: w,\n abort: w\n });\n ;\n };\n }\n };\n e.exports = r;\n});\n__d(\"PhotoSnowlift\", [\"function-extensions\",\"Arbiter\",\"AsyncDialog\",\"AsyncRequest\",\"Bootloader\",\"Class\",\"collectDataAttributes\",\"CSS\",\"Dialog\",\"DOM\",\"DOMControl\",\"Event\",\"FullScreen\",\"Input\",\"ImageUtils\",\"Keys\",\"Layer\",\"LinkController\",\"Locale\",\"PageTransitions\",\"Parent\",\"PhotosConst\",\"PhotoSessionLog\",\"PhotoSnowliftAds\",\"PhotoStreamCache\",\"PhotosUtils\",\"PhotoViewer\",\"Rect\",\"ScrollableArea\",\"Style\",\"Toggler\",\"UIPagelet\",\"URI\",\"UserAgent\",\"Vector\",\"$\",\"asyncCallback\",\"computeRelativeURI\",\"copyProperties\",\"createArrayFrom\",\"csx\",\"emptyFunction\",\"ge\",\"goURI\",\"shield\",\"startsWith\",\"tx\",\"userAction\",\"Assert\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"Arbiter\"), h = b(\"AsyncDialog\"), i = b(\"AsyncRequest\"), j = b(\"Bootloader\"), k = b(\"Class\"), l = b(\"collectDataAttributes\"), m = b(\"CSS\"), n = b(\"Dialog\"), o = b(\"DOM\"), p = b(\"DOMControl\"), q = b(\"Event\"), r = b(\"FullScreen\"), s = b(\"Input\"), t = b(\"ImageUtils\"), u = b(\"Keys\"), v = b(\"Layer\"), w = b(\"LinkController\"), x = b(\"Locale\"), y = b(\"PageTransitions\"), z = b(\"Parent\"), aa = b(\"PhotosConst\"), ba = b(\"PhotoSessionLog\"), ca = b(\"PhotoSnowliftAds\"), da = b(\"PhotoStreamCache\"), ea = b(\"PhotosUtils\"), fa = b(\"PhotoViewer\"), ga = b(\"Rect\"), ha = b(\"ScrollableArea\"), ia = b(\"Style\"), ja = b(\"Toggler\"), ka = b(\"UIPagelet\"), la = b(\"URI\"), ma = b(\"UserAgent\"), na = b(\"Vector\"), oa = b(\"$\"), pa = b(\"asyncCallback\"), qa = b(\"computeRelativeURI\"), ra = b(\"copyProperties\"), sa = b(\"createArrayFrom\"), ta = b(\"csx\"), ua = b(\"emptyFunction\"), va = b(\"ge\"), wa = b(\"goURI\"), xa = b(\"shield\"), ya = b(\"startsWith\"), za = b(\"tx\"), ab = b(\"userAction\"), bb = b(\"Assert\"), cb = 74, db = 75, eb = 70, fb = 76;\n function gb() {\n this.parent.construct(this);\n };\n ra(gb, {\n STATE_ERROR: \"error\",\n STATE_HTML: \"html\",\n STATE_IMAGE_PIXELS: \"image_pixels\",\n STATE_IMAGE_DATA: \"image\",\n LOADING_TIMEOUT: 2000,\n PAGER_FADE: 3000,\n FULL_SCREEN_PADDING: 10,\n STAGE_HIRES_MAX: {\n x: 2048,\n y: 2048\n },\n STAGE_NORMAL_MAX: {\n x: 960,\n y: 960\n },\n STAGE_MIN: {\n x: 520,\n y: 520\n },\n SIDEBAR_SIZE_MAX: 360,\n STAGE_CHROME: {\n x: 82,\n y: 42\n },\n VIDEO_BOTTOM_BAR_SPACE: 40,\n GOPREV_AREA: 120,\n TIMELINE_STRETCH_WIDTH: 843,\n TIMELINE_STRETCH_MIN: 480,\n MIN_TAG_DISTANCE: 83,\n PADDING_MIN: 40,\n MIN_UFI_HEIGHT: 250,\n COLLECTIONS_UNTAGGED_PHOTOS: 3,\n PHOTOS_OF_YOU_SUGGESTIONS: 28,\n MIN_ADS_VISIBLE: 1,\n RESERVED_ADS_HEIGHT: 150,\n _instance: null,\n getInstance: function() {\n if (!gb._instance) {\n gb._instance = new gb();\n };\n return gb._instance;\n },\n initWithSpotlight: function(hb, ib) {\n gb.getInstance().init(hb, ib);\n },\n touch: ua,\n addPhotoFbids: function(hb, ib, jb, kb) {\n gb.getInstance().addPhotoFbids(hb, ib, jb, kb);\n },\n setReachedLeftEnd: function() {\n gb.getInstance().setReachedLeftEnd();\n },\n setReachedRightEnd: function() {\n gb.getInstance().setReachedRightEnd();\n },\n attachFollowFlyout: function(hb) {\n o.insertAfter(oa(\"fbPhotoSnowliftSubscribe\"), hb);\n },\n attachSubscribeFlyout: function(hb) {\n o.insertAfter(oa(\"fbPhotoSnowliftSubscribe\"), hb);\n },\n attachTagger: function(hb) {\n gb.getInstance().attachTagger(hb);\n },\n preload: function(hb, ib) {\n gb.getInstance().preload(hb, ib);\n },\n bootstrap: function(hb, ib) {\n if ((hb && la(hb).getQueryData().hasOwnProperty(\"share_id\"))) {\n j.loadModules([\"SpotlightShareViewer\",], function(jb) {\n jb.bootstrap(hb, ib);\n });\n return;\n }\n ;\n gb.getInstance().bootstrap(hb, ib);\n },\n closeRefresh: function() {\n gb.getInstance().closeRefresh();\n },\n deletePhoto: function(hb) {\n gb.getInstance().deletePhoto(hb);\n },\n getImage: function() {\n return gb.getInstance().getImage();\n },\n getImageId: function() {\n return gb.getInstance().getImageId();\n },\n getLoadQuery: function() {\n return gb.getInstance().getLoadQuery();\n },\n getRHCBody: function() {\n return gb.getInstance().getRHCBody();\n },\n getRHCFooter: function() {\n return gb.getInstance().getRHCFooter();\n },\n getRHCHeader: function() {\n return gb.getInstance().getRHCHeader();\n },\n getRoot: function() {\n return gb.getInstance().getRoot();\n },\n likePhotoSkipConfirmation: function(hb) {\n gb.getInstance().likePhotoSkipConfirmation(hb);\n },\n saveTagsFromPayload: function(hb) {\n gb.getInstance().saveTagsFromPayload(hb);\n },\n saveTagsFromPayloadDelayed: function(hb) {\n gb.saveTagsFromPayload.curry(hb).defer(2000);\n },\n handleServerError: function(hb, ib) {\n gb.getInstance().handleServerError(hb, ib);\n },\n setVideoWarning: function(hb, ib) {\n var jb = gb.getInstance(), kb = (\"video_warning_\" + hb);\n if (!jb.videoWarnings) {\n jb.videoWarnings = [];\n };\n jb.videoWarnings[kb] = ib;\n },\n storeFromData: function(hb) {\n gb.getInstance().storeFromData(hb);\n },\n swapData: function() {\n gb.getInstance().swapData();\n },\n touchMarkup: ua,\n updateTotalCount: function(hb, ib, jb) {\n gb.getInstance().updateTotalCount(hb, ib, jb);\n },\n setVideoRotateURI: function(hb) {\n gb.getInstance().videoRotateURI = hb;\n }\n });\n k.extend(gb, fa);\n ra(gb.prototype, {\n switchTimer: null,\n imageRefreshTimer: null,\n imageLoadingTimer: null,\n lastPage: 0,\n currentMinSize: null,\n currentImageSize: null,\n resetUriStack: true,\n thumbSrc: null,\n shouldStretch: false,\n stageMax: gb.STAGE_NORMAL_MAX,\n stageChrome: gb.STAGE_CHROME,\n stagePagerPrev: null,\n ua: null,\n PhotoTagger: null,\n showHover: false,\n skipLikePhotoConfirmation: false,\n isShowingLikePhotoConfirmation: false,\n preload: function(hb, ib) {\n j.loadModules([\"PhotoTagger\",\"Live\",\"PhotoTagApproval\",\"PhotoTags\",\"TagTokenizer\",\"fb-photos-snowlift-fullscreen-css\",], function(kb) {\n this.PhotoTagger = kb;\n }.bind(this));\n var jb = this.getImageSrc(la(hb).getQueryData());\n if (jb) {\n (new Image()).src = jb;\n };\n },\n bootstrap: function(hb, ib) {\n if ((hb && la(hb).getQueryData().makeprofile)) {\n this.enableCropperOnInit = true;\n this.isUserProfilePic = la(hb).getQueryData().makeuserprofile;\n this.isInProfilePicAlbum = la(hb).getQueryData().inprofilepicalbum;\n }\n ;\n this.preload(hb, ib);\n if (this.closeDirty) {\n this.bootstrap.bind(this, hb, ib).defer();\n return;\n }\n ;\n ca.reset();\n this.resetUriStack = true;\n if (this.isOpen) {\n if (this.openExplicitly) {\n this.closeCleanup();\n this.resetUriStack = false;\n }\n else return\n \n };\n this.ua = ab(\"snowlift\", ib).uai(\"open\");\n this.returningToStart = false;\n (this.loading && m.removeClass(this.loading, \"loading\"));\n if (ib) {\n m.addClass((this.loading = ib), \"loading\");\n if (this.container) {\n var jb = z.byClass(ib, \"uiStreamStory\");\n if (jb) {\n this.container.setAttribute(\"data-ownerid\", jb.id);\n }\n else this.container.removeAttribute(\"data-ownerid\");\n ;\n }\n ;\n this.getThumbAndSize(ib);\n }\n else this.loading = null;\n ;\n g.inform(\"PhotoSnowlift.GO\", hb, g.BEHAVIOR_STATE);\n this.loadFrameIfUninitialized();\n },\n getCurrentImageServerSizeDimensions: function() {\n return this.stream.getCurrentImageData().dimensions;\n },\n getEventPrefix: function() {\n return \"PhotoSnowlift\";\n },\n getRoot: function() {\n return this.root;\n },\n getSourceString: function() {\n return \"snowlift\";\n },\n getViewerSource: function() {\n return this.source;\n },\n getViewerSet: function() {\n return this.stream.getPhotoSet();\n },\n getVersionConst: function() {\n return aa.VIEWER_SNOWLIFT;\n },\n getImage: function() {\n return this.image;\n },\n getImageId: function() {\n return this.stream.getCursor();\n },\n getRHCHeader: function() {\n return this.rhcHeader;\n },\n getRHCBody: function() {\n return this.ufiForm;\n },\n getRHCFooter: function() {\n return this.rhcFooter;\n },\n getLoadQuery: function() {\n return this.loadQuery;\n },\n getCurrentPhotoInfo: function() {\n var hb = this.stream.getCurrentImageData();\n if (hb) {\n return hb.info\n };\n return null;\n },\n getOwnerId: function() {\n var hb = this.stream.getCurrentImageData();\n if (hb) {\n return hb.info.owner\n };\n return null;\n },\n getThumbAndSize: function(hb) {\n this.currentImageSize = null;\n this.thumbSrc = null;\n var ib = la(hb.getAttribute(\"ajaxify\")).getQueryData();\n if (!ib.size) {\n return\n };\n var jb = na.deserialize(ib.size);\n if ((!jb.x || !jb.y)) {\n return\n };\n this.currentImageSize = jb;\n if (((!m.hasClass(hb, \"uiMediaThumb\") && !m.hasClass(hb, \"uiPhotoThumb\")) && !m.hasClass(hb, \"uiScaledThumb\"))) {\n return\n };\n if (hb.getAttribute(\"data-cropped\")) {\n return\n };\n var kb = o.scry(hb, \"img\")[0], lb = o.scry(hb, \"i\")[0], mb = z.byAttribute(hb, \"data-size\");\n this.shouldStretch = ((((((mb && this.currentImageSize) && kb) && (mb.getAttribute(\"data-size\") === \"2\")) && (this.currentImageSize.x > this.currentImageSize.y)) && (this.currentImageSize.x <= gb.TIMELINE_STRETCH_WIDTH)) && (kb.offsetWidth === gb.TIMELINE_STRETCH_WIDTH));\n var nb;\n if (kb) {\n nb = kb.src;\n }\n else if (lb) {\n nb = ia.get(lb, \"backgroundImage\").replace(/.*url\\(\"?([^\"]*)\"?\\).*/, \"$1\");\n }\n else return\n \n ;\n this.thumbSrc = nb;\n },\n loadFrameIfUninitialized: function() {\n if (this.root) {\n return\n };\n new i(\"/ajax/photos/snowlift/init.php\").setAllowCrossPageTransition(true).setMethod(\"GET\").setReadOnly(true).send();\n },\n init: function(hb, ib) {\n this.init = ua;\n this.showHover = ib.pivot_hover;\n ba.setEndMetrics(ib.pivot_end_metric);\n this.enableSnowliftProfilePicCropper = ib.snowlift_profile_pic_cropper;\n this.pagersOnKeyboardNav = ib.pagers_on_keyboard_nav;\n this.hilitAllTagsAndBoxesOnHover = ib.snowlift_hover_shows_all_tags_and_faces;\n this.fullscreen = r.isSupported();\n this.showOGVideos = ib.og_videos;\n this.resizeCommentsForAds = ib.resize_comments_for_ads;\n if (this.resizeCommentsForAds) {\n gb.STAGE_MIN.y = 600;\n };\n this.stageMax = gb.STAGE_HIRES_MAX;\n this.spotlight = hb;\n this.spotlight.subscribe(\"blur\", function() {\n this.closingAction = ba.OUTSIDE;\n }.bind(this));\n this.spotlight.subscribe(\"hide\", xa(this.closeHandler, this));\n this.spotlight.subscribe(\"key\", this.keyHandler.bind(this));\n this.initializeNodes(this.spotlight.getRoot());\n ca.init(this.sideAdUnit, this, ib, this.adsDisplayedCallback.bind(this));\n this.inAdsDisplayedCallback = false;\n this.lastAdsHeight = (this.resizeCommentsForAds ? gb.RESERVED_ADS_HEIGHT : 0);\n if (!this.subscription) {\n w.registerHandler(this.handleNavigateAway.bind(this));\n this.subscription = g.subscribe(\"PhotoSnowlift.GO\", function(jb, kb) {\n this.openExplicitly = true;\n (this.loading && m.removeClass(this.loading, \"loading\"));\n this.open(kb);\n }.bind(this));\n }\n ;\n this.transitionHandlerRegistered = false;\n this.returningToStart = false;\n y.registerHandler(this.openHandler.bind(this));\n this.openHandlerRegistered = true;\n g.subscribe(\"PhotoTagApproval.HILITE_TAG\", this.onHiliteTag.bind(this));\n g.subscribe(\"PhotoTagApproval.UPDATE_TAG_BOX\", this.onUpdateTagBox.bind(this));\n if (this.fullscreen) {\n r.subscribe(\"changed\", this.onFullScreenChange.bind(this));\n };\n this.redesign = ib.snowlift_redesign;\n },\n onFullScreenChange: function() {\n var hb = r.isFullScreen();\n m.conditionClass(document.body, \"fbPhotoSnowliftFullScreenMode\", hb);\n if (hb) {\n if (!m.hasClass(this.root, \"fbPhotoSnowliftEditMode\")) {\n this.collapseRHC();\n };\n var ib = this.stream.getCurrentImageData();\n if ((((ib && ib.url) && (this.image.src !== ib.url)) && this.shouldShowHiRes(ib))) {\n this.switchImage(ib.url);\n };\n this.adjustForResize();\n }\n else {\n this.uncollapseRHC();\n if ((ma.chrome() && !m.hasClass(this.root, \"fbPhotoSnowliftEditMode\"))) {\n this.page(0, false);\n };\n g.inform(\"reflow\");\n }\n ;\n ja.hide();\n if (this.cropper) {\n this.cropper.resetPhoto();\n };\n },\n initializeNodes: function(hb) {\n this.root = hb;\n this.container = o.find(hb, \"div.fbPhotoSnowliftContainer\");\n this.snowliftPopup = o.find(this.container, \"div.fbPhotoSnowliftPopup\");\n this.rhc = o.find(this.snowliftPopup, \"div.rhc\");\n this.rhcHeader = o.find(this.rhc, \"div.rhcHeader\");\n this.rhcFooter = o.find(this.rhc, \"div.rhcFooter\");\n this.ufiForm = o.find(this.rhc, \"form.fbPhotosSnowliftFeedbackForm\");\n this.ufiInputContainer = o.find(this.rhc, \"div.fbPhotosSnowboxFeedbackInput\");\n this.scroller = o.find(this.ufiForm, \"div.rhcScroller\");\n this.scrollerBody = o.find(this.scroller, \"div.uiScrollableAreaBody\");\n this.stageWrapper = o.find(this.snowliftPopup, \"div.stageWrapper\");\n this.overlay = o.find(this.snowliftPopup, \"div.snowliftOverlay\");\n this.errorBox = o.find(this.stageWrapper, \"div.stageError\");\n this.image = o.find(this.stageWrapper, \"img.spotlight\");\n this.stage = o.find(this.stageWrapper, \"div.stage\");\n this.videoStage = o.find(this.stageWrapper, \"div.videoStage\");\n this.prevPager = o.find(this.snowliftPopup, \"a.snowliftPager.prev\");\n this.nextPager = o.find(this.snowliftPopup, \"a.snowliftPager.next\");\n this.stageActions = o.find(hb, \"div.stageActions\");\n this.buttonActions = o.find(this.stageActions, \"div.fbPhotosPhotoButtons\");\n this.productMetadata = o.scry(this.rhc, \"div.fbPhotosSnowliftProductMetadata\").pop();\n this.sideAdUnit = o.find(hb, \".-cx-PUBLIC-snowliftAds__root\");\n g.inform(\"Amoeba/instrumentMulti\", [[this.container,\"snowlift\",],[this.rhc,\"rhc\",],[this.rhcHeader,\"rhc_header\",],[this.ufiForm,\"ufi_form\",],[this.ufiInputContainer,\"ufi_input\",],[this.prevPager,\"prev_pager\",],[this.nextPager,\"next_pager\",],[this.stageActions,\"stage_actions\",],[this.sideAdUnit,\"side_ads\",],], g.BEHAVIOR_PERSISTENT);\n m.conditionClass(this.root, \"fullScreenAvailable\", this.fullscreen);\n },\n initializeScroller: function() {\n this.initializeScroller = ua;\n this.scrollableArea = ha.fromNative(this.scroller, {\n fade: true,\n persistent: true\n });\n var hb = function(event) {\n var ib = q.$E(event).getTarget();\n if (o.contains(this.ufiInputContainer, ib)) {\n var jb = p.getInstance(ib);\n if (jb) {\n this.scrollableArea.scrollToBottom();\n var kb = jb.subscribe(\"resize\", function() {\n var mb = this.scrollableArea.isScrolledToBottom();\n this.adjustScroller();\n (mb && this.scrollableArea.scrollToBottom());\n }.bind(this)), lb = q.listen(ib, \"blur\", function() {\n jb.unsubscribe(kb);\n lb.remove();\n });\n }\n ;\n }\n ;\n }.bind(this);\n g.subscribe(\"ufi/changed\", function(ib, jb) {\n if ((this.ufiForm === jb.form)) {\n this.adjustScrollerIfNecessary();\n };\n }.bind(this));\n g.subscribe(\"ufi/comment\", function(ib, jb) {\n if ((this.ufiForm === jb.form)) {\n this.adjustScrollerIfNecessary();\n if (jb.isranked) {\n this.scrollableArea.scrollToTop();\n }\n else this.scrollableArea.scrollToBottom();\n ;\n }\n ;\n }.bind(this));\n q.listen(this.rhc, \"click\", function(event) {\n var ib = event.getTarget();\n if (((z.byTag(ib, \"a\") || z.byTag(ib, \"button\")) || o.isNodeOfType(ib, \"input\"))) {\n this.adjustScrollerIfNecessary();\n };\n }.bind(this));\n g.subscribe([\"reflow\",\"CommentUFI.Pager\",], function() {\n if (this.isOpen) {\n this.adjustScrollerIfNecessary();\n };\n }.bind(this));\n q.listen(this.ufiForm, \"focusin\", hb);\n },\n openHandler: function(hb) {\n if ((((((this.isOpen || (hb.getPath() != \"/photo.php\")) || this.returningToStart) || hb.getQueryData().closeTheater) || hb.getQueryData().permPage) || hb.getQueryData().makeprofile)) {\n this.openHandlerRegistered = false;\n return false;\n }\n ;\n this.open(hb);\n this._uriStack.push(la(hb).getQualifiedURI().toString());\n y.transitionComplete(true);\n return true;\n },\n getImageSrc: function(hb) {\n if (hb.smallsrc) {\n if (!hb.size) {\n return hb.smallsrc\n };\n var ib = na.deserialize(hb.size), jb = this.getStageSize(ib);\n if (((jb.x <= gb.STAGE_NORMAL_MAX.x) && (jb.y <= gb.STAGE_NORMAL_MAX.y))) {\n return hb.smallsrc\n };\n }\n ;\n return hb.src;\n },\n open: function(hb) {\n var ib = la(hb).getQueryData(), jb = this.getImageSrc(ib);\n if (jb) {\n delete ib.src;\n delete ib.smallsrc;\n }\n ;\n if (this.resetUriStack) {\n this._uriStack = [];\n };\n if (!this.initialLoad) {\n ib.firstLoad = true;\n this.initialLoad = true;\n }\n ;\n this.sessionID = Date.now();\n this.sessionPhotosHilited = {\n };\n this.loadQuery = ra(ib, {\n ssid: this.sessionID\n });\n this.isOpen = true;\n this.pagersShown = false;\n this.refreshOnClose = false;\n this.hilitedTag = null;\n this.loadingStates = {\n image: false,\n html: false\n };\n this.replaceUrl = false;\n this.source = null;\n this.saveTagSubscription = g.subscribe(\"PhotoTagger.SAVE_TAG\", this.onTagSaved.bind(this));\n this.taggedPhotoIds = [];\n this.stream = new da();\n this.stream.init(aa.VIEWER_SNOWLIFT, \"PhotoViewerPagelet\", \"pagelet_photo_viewer\");\n this.fetchInitialData();\n this.setLoadingState(gb.STATE_HTML, true);\n this.rhcCollapsed = false;\n this._open(hb, jb);\n if (this.enableSnowliftProfilePicCropper) {\n j.loadModules([\"SnowliftPicCropper\",], function(kb) {\n this.cropper = kb.getInstance(this);\n this.cropper.init();\n if (this.enableCropperOnInit) {\n var lb = g.subscribe(\"PhotoSnowlift.SWITCH_IMAGE\", function() {\n if (this.isInProfilePicAlbum) {\n this.cropper.showPicInProfileAlbumDialog();\n }\n else this.cropper.enableCropping(this.isUserProfilePic);\n ;\n g.unsubscribe(lb);\n }.bind(this));\n this.enableCropperOnInit = false;\n }\n ;\n }.bind(this));\n };\n j.loadModules([\"PhotosButtonTooltips\",], function(kb) {\n kb.init();\n });\n },\n _open: function(hb, ib) {\n this.createLoader(ib);\n this.spotlight.show();\n (this.ua && this.ua.add_event(\"frame\"));\n g.inform(\"layer_shown\", {\n type: \"PhotoSnowlift\"\n });\n g.inform(\"PhotoSnowlift.OPEN\");\n this.stageHandlers = [q.listen(window, \"resize\", this.adjustForResize.bind(this)),q.listen(this.stageWrapper, \"click\", this.buttonListener.bind(this)),q.listen(this.stageWrapper, \"mouseleave\", function(event) {\n var lb = event.getTarget();\n if (!(((((((z.byClass(lb, \"snowliftOverlay\") || z.byClass(lb, \"fbPhotoSnowliftTagApproval\")) || z.byClass(lb, \"tagPointer\")) || z.byClass(lb, \"arrow\")) || z.byClass(lb, \"faceboxSuggestion\")) || z.byClass(lb, \"typeaheadWrapper\")) || z.byClass(lb, \"photoTagTypeahead\")))) {\n this.unhiliteAllTags();\n };\n this.hidePagers();\n }.bind(this)),q.listen(this.stageWrapper, \"mousemove\", this.hilitePagerOnMouseMove.bind(this)),q.listen(this.stageWrapper, \"mousemove\", this.hiliteTagsOnMouseMove.bind(this)),q.listen(this.overlay, \"mouseenter\", this.unhiliteAllTags.bind(this)),];\n this.stageHandlers.push(q.listen(this.container, \"click\", function(event) {\n var lb = event.getTarget();\n if (z.byClass(lb, \"rotateRight\")) {\n this.rotate(\"right\");\n }\n else if (z.byClass(lb, \"rotateLeft\")) {\n this.rotate(\"left\");\n }\n else if (z.byClass(lb, \"closeTheater\")) {\n if (r.isFullScreen()) {\n r.toggleFullScreen();\n return;\n }\n ;\n this.closingAction = ba.X;\n this.closeHandler();\n return false;\n }\n else if (this.fullscreen) {\n if (z.byClass(lb, \"fbPhotoSnowliftFullScreen\")) {\n this.toggleFullScreen();\n }\n else if (z.byClass(lb, \"fbPhotoSnowliftCollapse\")) {\n this.toggleCollapse();\n }\n \n }\n \n \n ;\n }.bind(this)));\n var jb = va(\"fbPhotoSnowliftFeedback\");\n if (jb) {\n this.stageHandlers.push(q.listen(jb, \"click\", function(event) {\n var lb = event.getTarget();\n if ((z.byClass(lb, \"like_link\") || ((z.byClass(lb, \"UFILikeLink\") && z.byClass(lb, \"UIActionLinks\"))))) {\n this.toggleLikeButton();\n };\n var mb = z.byClass(event.getTarget(), \"uiUfiCollapsedComment\");\n if (mb) {\n m.addClass(mb, \"uiUfiCollapsedCommentToggle\");\n };\n }.bind(this)));\n };\n var kb = va(\"fbPhotoSnowliftOnProfile\");\n if (kb) {\n this.stageHandlers.push(q.listen(kb, \"click\", function(event) {\n if (z.byClass(event.getTarget(), \"fbPhotoRemoveFromProfileLink\")) {\n this.refreshOnClose = true;\n };\n }.bind(this)));\n };\n if (this.resetUriStack) {\n this.startingURI = la.getMostRecentURI().addQueryData({\n closeTheater: 1\n }).getUnqualifiedURI();\n };\n if (!ib) {\n this.setLoadingState(gb.STATE_IMAGE_DATA, true);\n };\n if (!this.transitionHandlerRegistered) {\n y.registerHandler(this.transitionHandler.bind(this));\n this.transitionHandlerRegistered = true;\n }\n ;\n ba.initLogging(ba.SNOWLIFT);\n if (this.pivots) {\n ba.setRelevantCount(this.pivots.relevantCount);\n };\n },\n toggleFullScreen: function() {\n var hb = r.toggleFullScreen(document.documentElement);\n if (hb) {\n var ib = this.stream.getCurrentImageData();\n if ((((ib && ib.url) && (this.image.src !== ib.url)) && this.shouldShowHiRes(ib))) {\n (new Image()).src = ib.url;\n };\n ba.logEnterFullScreen(this.stream.getCursor());\n }\n ;\n },\n getStream: function() {\n return this.stream;\n },\n fetchInitialData: function() {\n (this.ua && this.ua.add_event(\"init_data\"));\n this.stream.waitForInitData();\n var hb = l(this.container, [\"ft\",]);\n if ((((hb && hb.ft) && hb.ft.ei) && this.loadQuery)) {\n this.loadQuery.ei = hb.ft.ei;\n };\n ka.loadFromEndpoint(\"PhotoViewerInitPagelet\", va(\"pagelet_photo_viewer_init\", this.root), this.loadQuery, {\n usePipe: true,\n jsNonblock: true,\n crossPage: true\n });\n },\n toggleCollapse: function() {\n if (this.rhcCollapsed) {\n this.uncollapseRHC();\n }\n else this.collapseRHC();\n ;\n },\n collapseRHC: function() {\n this.rhcCollapsed = true;\n m.addClass(this.root, \"collapseRHC\");\n this.adjustForResize();\n },\n uncollapseRHC: function() {\n this.rhcCollapsed = false;\n m.removeClass(this.root, \"collapseRHC\");\n this.adjustForResize();\n },\n closeHandler: function() {\n if (!this.isOpen) {\n return\n };\n this.closingAction = (this.closingAction || ba.ESC);\n if ((la.getMostRecentURI().addQueryData({\n closeTheater: 1\n }).getUnqualifiedURI().toString() == this.startingURI.toString())) {\n this.close();\n return;\n }\n ;\n this.returnToStartingURI(this.refreshOnClose);\n this.close();\n },\n returnToStartingURI: function(hb, ib) {\n if (!hb) {\n if (ib) {\n this.squashNextTransition(wa.curry(ib));\n }\n else this.squashNextTransition();\n \n };\n this.returningToStart = true;\n var jb = g.subscribe(\"page_transition\", (function() {\n this.returningToStart = false;\n jb.unsubscribe();\n }).bind(this)), kb = (hb || isNaN(ma.opera())), lb = this._uriStack.length;\n if ((kb && (lb < window.history.length))) {\n window.history.go(-lb);\n }\n else {\n var mb = this.startingURI, nb = new la(mb).removeQueryData(\"closeTheater\");\n if (((mb.getQueryData().sk == \"approve\") && (mb.getPath() == \"/profile.php\"))) {\n nb.removeQueryData(\"highlight\");\n nb.removeQueryData(\"notif_t\");\n }\n ;\n wa(nb);\n }\n ;\n },\n squashNextTransition: function(hb) {\n this.squashNext = true;\n y.registerHandler(function ib() {\n if (this.squashNext) {\n this.squashNext = false;\n if (hb) {\n hb.defer();\n };\n y.transitionComplete(true);\n return true;\n }\n ;\n return false;\n }.bind(this), 7);\n },\n handleNavigateAway: function(hb) {\n var ib = qa(y._most_recent_uri.getQualifiedURI(), hb.getAttribute(\"href\"));\n if ((this.isOpen && ya(ib.getPath(), \"/hashtag/\"))) {\n this.close();\n y.transitionComplete(true);\n this.squashNextTransition();\n y.go(this.startingURI);\n return true;\n }\n ;\n if ((((this.isOpen && ((ib instanceof la))) && (ib.getUnqualifiedURI().toString() != this.startingURI.toString())) && (ib.getPath() != \"/photo.php\"))) {\n if (!this.closingAction) {\n this.closingAction = ba.NAVIGATE;\n };\n this.returnToStartingURI(false, ib);\n this.close();\n return false;\n }\n ;\n return true;\n },\n postProcessTaggedPhotos: function() {\n if ((this.taggedPhotoIds && (this.taggedPhotoIds.length > 0))) {\n var hb = null;\n if ((this.source === gb.COLLECTIONS_UNTAGGED_PHOTOS)) {\n hb = \"/ajax/photos/photo/edit/skiptag/\";\n }\n else if ((this.source === gb.PHOTOS_OF_YOU_SUGGESTIONS)) {\n hb = \"/ajax/photos/photo/add_to_star_grid/\";\n }\n ;\n if (hb) {\n new i().setURI(hb).setAllowCrossPageTransition(true).setData({\n media_id: this.taggedPhotoIds\n }).send();\n };\n }\n ;\n },\n onTagSaved: function(hb, ib) {\n if (this.taggedPhotoIds) {\n if (((this.source === gb.PHOTOS_OF_YOU_SUGGESTIONS) && !ib.self_tag)) {\n return\n };\n this.taggedPhotoIds.push(ib.photo_fbid);\n }\n ;\n },\n close: function() {\n if (!this.isOpen) {\n return\n };\n this.isOpen = false;\n if (this.fullscreen) {\n r.disableFullScreen();\n };\n ab(\"snowlift\").uai(\"close\");\n (this.cropper && this.cropper.disableCropping());\n this.spotlight.hide();\n this.openExplicitly = false;\n this.postProcessTaggedPhotos();\n g.unsubscribe(this.saveTagSubscription);\n this.taggedPhotoIds = [];\n this.closeDirty = true;\n this.closeCleanup.bind(this).defer();\n },\n closeCleanup: function() {\n this.closeDirty = false;\n m.removeClass(this.root, \"dataLoading\");\n ba.logPhotoViews(this.closingAction);\n this.destroy();\n m.hide(this.errorBox);\n m.hide(this.image);\n this.currentImageSize = null;\n this.thumbSrc = null;\n this.shouldStretch = false;\n this.resetUriStack = true;\n m.removeClass(this.stageWrapper, \"showVideo\");\n o.empty(this.videoStage);\n this.uncollapseRHC();\n this.currentMinSize = null;\n this.rhcMinHeight = null;\n this.setStagePagersState(\"reset\");\n this.recacheData();\n o.empty(this.sideAdUnit);\n this.stream.destroy();\n var hb = (this.closingAction === ba.NAVIGATE);\n this.closingAction = null;\n if (!this.openHandlerRegistered) {\n y.registerHandler(this.openHandler.bind(this));\n this.openHandlerRegistered = true;\n }\n ;\n g.inform(\"layer_hidden\", {\n type: \"PhotoSnowlift\"\n });\n g.inform(\"PhotoSnowlift.CLOSE\", hb);\n this.root.setAttribute(\"aria-busy\", \"true\");\n },\n createLoader: function(hb) {\n if ((this.currentImageSize === null)) {\n this.adjustStageSize(gb.STAGE_MIN);\n }\n else {\n var ib = this.getStageSize(this.currentImageSize);\n ib = new na(Math.max(ib.x, gb.STAGE_MIN.x), Math.max(ib.y, gb.STAGE_MIN.y));\n var jb = this.getImageSizeInStage(this.currentImageSize, ib);\n if ((this.thumbSrc === null)) {\n this.adjustStageSize(jb);\n }\n else this.useImage(o.create(\"img\", {\n className: \"spotlight\",\n alt: \"\",\n src: this.thumbSrc,\n style: {\n width: (jb.x + \"px\"),\n height: (jb.y + \"px\")\n }\n }), jb, false);\n ;\n }\n ;\n this.setLoadingState(this.STATE_IMAGE_PIXELS, true);\n if (hb) {\n (function() {\n var kb = new Image(), lb = q.listen(kb, \"load\", pa(function() {\n if (!this.isOpen) {\n return\n };\n if ((!this.stream || !this.stream.errorInCurrent())) {\n this.switchImage(hb, this.currentImageSize);\n (this.ua && this.ua.add_event(\"image\"));\n this.setLoadingState(gb.STATE_IMAGE_DATA, false);\n }\n ;\n }.bind(this), \"photo_theater\"));\n g.subscribeOnce(\"PhotoSnowlift.PAGE\", lb.remove.bind(lb));\n kb.src = hb;\n }).bind(this).defer();\n };\n m.hide(this.stageActions);\n this.setStagePagersState(\"disabled\");\n },\n initDataFetched: function(hb) {\n ba.setPhotoSet(this.stream.getPhotoSet());\n ba.setLogFbids(hb.logids);\n var ib = this.stream.getCurrentImageData();\n ba.addPhotoView(ib.info, this.shouldShowHiRes(ib), (this.fullscreen && r.isFullScreen()));\n var jb = this.stream.getCurrentExtraData();\n if ((jb && (jb.source !== undefined))) {\n this.source = parseInt(jb.source, 10);\n ba.setSource(this.source);\n }\n ;\n if (!this.pageHandlers) {\n this.pageHandlers = [q.listen(this.root, \"click\", this.pageListener.bind(this)),q.listen(this.root, \"mouseleave\", this.mouseLeaveListener.bind(this)),];\n };\n m.show(this.stageActions);\n this.root.setAttribute(\"aria-busy\", \"false\");\n this.isLoggedInViewer = hb.loggedin;\n this.disableAdsForSession = (hb.disablesessionads || !this.isLoggedInViewer);\n this.showFlashTags = !!hb.flashtags;\n this.disableAds = (this.disableAdsForSession || hb.fromad);\n this.loadAds();\n },\n adjustScrollerIfNecessary: function() {\n clearTimeout(this.scrollerTimeout);\n this.scrollerTimeout = this.adjustScroller.bind(this).defer();\n },\n adjustScroller: function(hb) {\n clearTimeout(this.scrollerTimeout);\n this.initializeScroller();\n this.scrollableArea.resize();\n var ib = na.getElementDimensions(this.rhc), jb = ib.y;\n jb -= na.getElementDimensions(this.rhcHeader).y;\n jb -= na.getElementDimensions(this.ufiInputContainer).y;\n if (this.productMetadata) {\n var kb = na.getElementDimensions(this.productMetadata);\n if ((kb.x !== 0)) {\n jb -= kb.y;\n };\n }\n ;\n if ((hb == null)) {\n hb = (this.resizeCommentsForAds ? this.lastAdsHeight : 0);\n };\n this.lastAdsHeight = hb;\n this.rhcMinHeight = (ib.y - ((jb - gb.MIN_UFI_HEIGHT)));\n jb = Math.max(0, jb);\n var lb = na.getElementDimensions(this.scrollerBody).y, mb = Math.max(gb.MIN_UFI_HEIGHT, (jb - hb));\n if ((lb >= mb)) {\n ia.set(this.scroller, \"height\", (mb + \"px\"));\n if ((jb > mb)) {\n m.removeClass(this.rhc, \"pinnedUfi\");\n jb -= mb;\n }\n else {\n m.addClass(this.rhc, \"pinnedUfi\");\n jb = 0;\n }\n ;\n }\n else {\n ia.set(this.scroller, \"height\", \"auto\");\n m.removeClass(this.rhc, \"pinnedUfi\");\n jb -= lb;\n }\n ;\n var nb = o.scry(this.ufiInputContainer, \"li.UFIAddComment\");\n if ((nb.length !== 0)) {\n var ob = o.scry(this.scrollerBody, \"li.UFIComment.display\");\n if ((ob.length === 0)) {\n m.addClass(nb[0], \"UFIFirstComponent\");\n }\n else m.removeClass(nb[0], \"UFIFirstComponent\");\n ;\n }\n ;\n var pb = na.getElementDimensions(this.ufiInputContainer).y;\n ia.set(this.ufiForm, \"padding-bottom\", (pb + \"px\"));\n ca.resize(new na(ib.x, jb));\n this.scrollableArea.adjustGripper();\n },\n adjustForResize: function() {\n this.currentMinSize = null;\n this.adjustStageSize();\n this.adjustForNewData();\n },\n shouldShowHiRes: function(hb) {\n if ((!hb || !hb.smallurl)) {\n return false\n };\n var ib = this.getStageSize(hb.dimensions), jb = this.getImageSizeInStage(hb.dimensions, ib);\n return (((jb.x > gb.STAGE_NORMAL_MAX.x) || (jb.y > gb.STAGE_NORMAL_MAX.y)));\n },\n getImageURL: function(hb) {\n if (hb.video) {\n return null;\n }\n else if ((hb.smallurl && !this.shouldShowHiRes(hb))) {\n return hb.smallurl\n }\n ;\n return hb.url;\n },\n getImageDimensions: function(hb) {\n if ((hb.smalldims && ((!this.shouldShowHiRes(hb) || (this.image.src === hb.smallurl))))) {\n return hb.smalldims\n };\n return hb.dimensions;\n },\n getStageSize: function(hb, ib) {\n var jb = na.getViewportDimensions(), kb = new na(hb.x, hb.y);\n if (ib) {\n kb = new na(Math.max(hb.x, ib.x), Math.max(hb.y, ib.y));\n };\n var lb, mb;\n if ((this.fullscreen && r.isFullScreen())) {\n return new na(((this.rhcCollapsed ? screen.width : (screen.width - gb.SIDEBAR_SIZE_MAX))), (screen.height - (gb.FULL_SCREEN_PADDING * 2)));\n }\n else {\n lb = Math.min(kb.x, this.stageMax.x, (((jb.x - gb.SIDEBAR_SIZE_MAX) - gb.STAGE_CHROME.x)));\n mb = Math.min(kb.y, this.stageMax.y, (jb.y - gb.STAGE_CHROME.y));\n }\n ;\n if (((lb === 0) && (mb === 0))) {\n return new na(0, 0)\n };\n var nb = (lb / mb), ob = (kb.x / kb.y);\n if ((nb < ob)) {\n return new na(lb, Math.round((lb / ob)))\n };\n return new na(Math.round((mb * ob)), mb);\n },\n getImageSizeInStage: function(hb, ib) {\n var jb = hb.x, kb = hb.y;\n if (((jb >= ib.x) || (kb >= ib.y))) {\n var lb = (ib.x / ib.y), mb = (jb / kb);\n if ((lb < mb)) {\n jb = ib.x;\n kb = Math.round((jb / mb));\n }\n else if ((lb > mb)) {\n kb = ib.y;\n jb = Math.round((kb * mb));\n }\n else {\n jb = ib.x;\n kb = ib.y;\n }\n \n ;\n }\n ;\n return new na(jb, kb);\n },\n adjustStageSize: function(hb) {\n var ib = this.currentImageSize;\n if (hb) {\n ib = hb;\n }\n else {\n var jb = (this.stream && this.stream.getCurrentImageData());\n if (jb) {\n ib = this.getImageDimensions(jb);\n };\n }\n ;\n if (!ib) {\n return\n };\n this.currentImageSize = ib;\n var kb = 0;\n if (((((this.shouldStretch && !this.getVideoOnStage()) && (ib.x > ib.y)) && (ib.x <= gb.TIMELINE_STRETCH_WIDTH)) && (ib.x >= gb.TIMELINE_STRETCH_MIN))) {\n ib.y = Math.round(((ib.y * gb.TIMELINE_STRETCH_WIDTH) / ib.x));\n ib.x = gb.TIMELINE_STRETCH_WIDTH;\n }\n else if (this.getVideoOnStage()) {\n kb = (gb.VIDEO_BOTTOM_BAR_SPACE * 2);\n }\n ;\n var lb = this.getStageSize(ib, this.currentMinSize);\n if (!this.currentMinSize) {\n this.currentMinSize = new na(0, 0);\n };\n if (!this.rhcMinHeight) {\n this.rhcMinHeight = 0;\n };\n this.currentMinSize = new na(Math.max(lb.x, gb.STAGE_MIN.x, this.currentMinSize.x), Math.max(lb.y, gb.STAGE_MIN.y, this.currentMinSize.y));\n var mb = this.getImageSizeInStage(ib, this.currentMinSize), nb = (this.currentMinSize.x - mb.x), ob = (this.currentMinSize.y - mb.y);\n if (((nb > 0) && (nb < gb.PADDING_MIN))) {\n this.currentMinSize.x -= nb;\n }\n else if (((ob > 0) && (ob < gb.PADDING_MIN))) {\n this.currentMinSize.y -= ob;\n }\n ;\n var pb = o.scry(this.productMetadata, \"#fbPhotoSnowliftTaggedProducts .taggee\");\n if (pb.length) {\n this.currentMinSize.y = Math.max(this.currentMinSize.y, this.rhcMinHeight);\n };\n var qb = (this.currentMinSize.x + gb.SIDEBAR_SIZE_MAX);\n if (this.rhcCollapsed) {\n qb = this.currentMinSize.x;\n };\n this.snowliftPopup.style.cssText = (((((\"width:\" + qb) + \"px;\") + \"height:\") + this.currentMinSize.y) + \"px;\");\n var rb = ((this.currentMinSize.y - kb) + \"px\");\n if ((ma.firefox() || (ma.ie() < 8))) {\n var sb = ia.get(this.stageWrapper, \"font-size\");\n if ((ma.ie() && (sb.indexOf(\"px\") < 0))) {\n var tb = o.create(\"div\");\n tb.style.fontSize = sb;\n tb.style.height = \"1em\";\n sb = tb.style.pixelHeight;\n }\n ;\n rb = (((((this.currentMinSize.y - kb)) / parseFloat(sb))) + \"em\");\n }\n ;\n this.stageWrapper.style.cssText = (((((\"width:\" + this.currentMinSize.x) + \"px;\") + \"line-height:\") + rb) + \";\");\n if ((ma.ie() < 8)) {\n ia.set(this.root, \"height\", (na.getViewportDimensions().y + \"px\"));\n ia.set(this.container, \"min-height\", (((this.currentMinSize.y + gb.STAGE_CHROME.y)) + \"px\"));\n }\n ;\n this.image.style.cssText = (((((\"width:\" + mb.x) + \"px;\") + \"height:\") + mb.y) + \"px;\");\n var ub = this.getTagger();\n if (ub) {\n ub.repositionTagger();\n };\n this.adjustScrollerIfNecessary();\n },\n adjustForNewData: function() {\n if (!this.image) {\n return\n };\n var hb = o.scry(this.stage, \"div.tagsWrapper\")[0], ib = na.getElementDimensions(this.image);\n if (hb) {\n ia.set(hb, \"width\", (ib.x + \"px\"));\n ia.set(hb, \"height\", (ib.y + \"px\"));\n if ((ma.ie() <= 7)) {\n var jb = o.scry(this.root, \"div.tagContainer\")[0];\n if (jb) {\n m.conditionClass(hb, \"ie7VerticalFix\", (na.getElementDimensions(jb).y > ib.y));\n };\n }\n ;\n }\n ;\n },\n adsDisplayedCallback: function(hb, ib) {\n var jb = ((((this.resizeCommentsForAds && !this.inAdsDisplayedCallback) && !this.disableAds) && (gb.MIN_ADS_VISIBLE > 0)) && (ib.length >= gb.MIN_ADS_VISIBLE));\n if (jb) {\n var kb = ib[(gb.MIN_ADS_VISIBLE - 1)], lb = ((hb < gb.MIN_ADS_VISIBLE) || (kb != gb.RESERVED_ADS_HEIGHT));\n if (lb) {\n this.inAdsDisplayedCallback = true;\n this.adjustScroller(kb);\n this.inAdsDisplayedCallback = false;\n }\n ;\n }\n ;\n },\n setLoadingState: function(hb, ib) {\n switch (hb) {\n case gb.STATE_IMAGE_PIXELS:\n m.conditionClass(this.root, \"imagePixelsLoading\", ib);\n break;\n case gb.STATE_IMAGE_DATA:\n this.loadingStates[hb] = ib;\n m.conditionClass(this.root, \"imageLoading\", ib);\n break;\n case gb.STATE_HTML:\n this.loadingStates[hb] = ib;\n m.conditionClass(this.root, \"dataLoading\", ib);\n this.rhc.setAttribute(\"aria-busy\", (ib ? \"true\" : \"false\"));\n break;\n };\n },\n destroy: function() {\n this.stageHandlers.forEach(function(hb) {\n hb.remove();\n });\n if (this.pageHandlers) {\n this.pageHandlers.forEach(function(hb) {\n hb.remove();\n });\n this.pageHandlers = null;\n }\n ;\n },\n checkState: function(hb) {\n if (((hb != gb.STATE_ERROR) && !this.loadingStates[hb])) {\n return\n };\n switch (hb) {\n case gb.STATE_IMAGE_DATA:\n var ib = this.stream.getCurrentImageData();\n if (ib) {\n var jb = this.getImageURL(ib);\n if (jb) {\n this.switchImage(jb, null, true);\n }\n else if (ib.video) {\n this.switchVideo(ib.video, true);\n }\n ;\n this.setLoadingState(hb, false);\n }\n ;\n break;\n case gb.STATE_HTML:\n if (this.stream.getCurrentHtml()) {\n this.swapData();\n this.showPagers(gb.PAGER_FADE);\n this.setLoadingState(hb, false);\n }\n ;\n break;\n default:\n if (this.stream.errorInCurrent()) {\n m.hide(this.image);\n m.show(this.errorBox);\n }\n ;\n break;\n };\n },\n buttonListener: function(event) {\n var hb = event.getTarget(), ib = Date.now();\n if (z.byClass(hb, \"fbPhotoTagApprovalBox\")) {\n return\n };\n if (z.byClass(hb, \"fbPhotosCornerWantButton\")) {\n event.stop();\n return;\n }\n ;\n if (((ib - this.lastPage) < 350)) {\n return\n };\n if (z.byClass(hb, \"fbPhotosPhotoLike\")) {\n this.likePhoto();\n }\n else if (z.byClass(hb, \"tagApproveIgnore\")) {\n this.updateTagBox(event, hb);\n }\n ;\n },\n likePhoto: function() {\n ba.addButtonLike();\n var hb = oa(\"fbPhotoSnowliftFeedback\"), ib = o.scry(hb, \"button.like_link\")[0];\n if (!ib) {\n if (this.redesign) {\n ib = o.scry(this.root, \"a.-cx-PUBLIC-fbEntstreamCollapsedUFI__likelink\")[0];\n }\n else ib = o.scry(hb, \"a.UFILikeLink\")[0];\n \n };\n var jb = ib.getAttribute(\"href\");\n if (r.isFullScreen()) {\n if (ma.chrome()) {\n ib.setAttribute(\"href\", \"javascript:;\");\n }\n };\n ib.click();\n ib.setAttribute(\"href\", jb);\n },\n toggleLikeButton: function() {\n var hb = o.scry(this.buttonActions, \"a.fbPhotosPhotoLike\")[0];\n if (hb) {\n var ib = o.find(this.root, \".likeCount\"), jb = o.find(ib, \".likeCountNum\");\n if (ib) {\n if (m.hasClass(hb, \"viewerLikesThis\")) {\n o.setContent(jb, (parseInt(jb.textContent, 10) - 1));\n }\n else o.setContent(jb, (parseInt(jb.textContent, 10) + 1));\n \n };\n m.toggleClass(hb, \"viewerLikesThis\");\n m.removeClass(hb, \"viewerAlreadyLikedThis\");\n }\n ;\n },\n likePhotoWithKey: function() {\n if (this.isShowingLikePhotoConfirmation) {\n return\n };\n if (this.skipLikePhotoConfirmation) {\n this.likePhoto();\n }\n else h.send(new i(\"/photos/confirm_like.php\"), function(hb) {\n this.isShowingLikePhotoConfirmation = true;\n hb.subscribe(\"confirm\", this.onCloseLikePhotoConfirmDialog.bind(this));\n hb.subscribe(\"cancel\", this.onCloseLikePhotoConfirmDialog.bind(this));\n }.bind(this));\n ;\n return false;\n },\n likePhotoSkipConfirmation: function(hb) {\n this.skipLikePhotoConfirmation = hb;\n this.likePhoto();\n },\n onCloseLikePhotoConfirmDialog: function() {\n this.isShowingLikePhotoConfirmation = false;\n },\n updateTagBox: function(hb, ib) {\n this.unhiliteAllTags();\n var jb = va(hb);\n if (!jb) {\n return\n };\n m.addClass(jb, \"tagBox\");\n m.addClass(jb, \"tagBoxPendingResponse\");\n m.removeClass(jb, \"tagBoxPending\");\n m.hide(o.find(jb, \"span.tagForm\"));\n if (ib) {\n m.show(o.find(jb, \"span.tagApproved\"));\n }\n else m.show(o.find(jb, \"span.tagIgnored\"));\n ;\n },\n rotate: function(hb) {\n var ib = this.stream.getCursor();\n if (this.getVideoOnStage()) {\n var jb = (((hb == \"left\")) ? 270 : 90);\n bb.isTruthy(this.videoRotateURI, \"Video rotate URI not set.\");\n j.loadModules([\"VideoRotate\",], function(lb) {\n new lb(ib, this.videoRotateURI).motionRotate(jb);\n }.bind(this));\n return;\n }\n ;\n var kb = ra({\n fbid: ib,\n opaquecursor: this.stream.getOpaqueCursor(ib),\n cs_ver: aa.VIEWER_SNOWLIFT\n }, this.stream.getPhotoSetQuery());\n kb[hb] = 1;\n this.setLoadingState(gb.STATE_IMAGE_DATA, true);\n this.setLoadingState(this.STATE_IMAGE_PIXELS, true);\n m.hide(this.image);\n new i(\"/ajax/photos/photo/rotate/\").setAllowCrossPageTransition(true).setData(kb).setErrorHandler(this.rotationError.bind(this, ib)).setFinallyHandler(this.rotationComplete.bind(this, ib)).setMethod(\"POST\").setReadOnly(false).send();\n },\n rotationComplete: function(hb, ib) {\n if ((hb == this.stream.getCursor())) {\n this.setLoadingState(gb.STATE_IMAGE_DATA, false);\n this.switchImage(this.getImageURL(this.stream.getCurrentImageData()));\n this.swapData();\n }\n ;\n },\n rotationError: function(hb, ib) {\n if ((hb == this.stream.getCursor())) {\n this.setLoadingState(gb.STATE_IMAGE_DATA, false);\n this.switchImage(this.getImageURL(this.stream.getCurrentImageData()));\n j.loadModules([\"AsyncResponse\",], function(jb) {\n jb.defaultErrorHandler(ib);\n });\n }\n ;\n },\n saveTagsFromPayload: function(hb) {\n this.storeFromData(hb);\n if (((\"data\" in hb) && (this.stream.getCursor() in hb.data))) {\n this.swapData();\n };\n },\n saveEdit: function() {\n if (!m.hasClass(this.root, \"fbPhotoSnowliftEditMode\")) {\n return\n };\n j.loadModules([\"PhotoInlineEditor\",\"Form\",], function(hb, ib) {\n var jb = hb.getInstance(this.getViewerConst());\n (jb && ib.bootstrap(jb.getForm().controller));\n }.bind(this));\n },\n mouseLeaveListener: function(event) {\n this.unhiliteAllTags();\n this.reHilitePendingTag();\n },\n hilitePagerOnMouseMove: function(event) {\n var hb = na.getEventPosition(event), ib = na.getElementPosition(this.stage);\n if (x.isRTL()) {\n var jb = na.getElementDimensions(this.stage);\n this.stagePagerPrev = ((jb.x - ((hb.x - ib.x))) < gb.GOPREV_AREA);\n }\n else this.stagePagerPrev = ((hb.x - ib.x) < gb.GOPREV_AREA);\n ;\n m.conditionClass(this.prevPager, \"hilightPager\", this.stagePagerPrev);\n m.conditionClass(this.nextPager, \"hilightPager\", !this.stagePagerPrev);\n var kb, lb = event.getTarget();\n if (((!z.byClass(lb, \"snowliftOverlay\") && !z.byClass(lb, \"bottomBarActions\")) && !z.byClass(lb, \"snowliftPager\"))) {\n kb = gb.PAGER_FADE;\n };\n this.showPagers(kb);\n },\n showPagers: function(hb) {\n clearTimeout(this.fadePagerTimer);\n this.setStagePagersState(\"active\");\n if ((typeof hb !== \"undefined\")) {\n this.fadePagerTimer = this.hidePagers.bind(this).defer(hb);\n };\n },\n hidePagers: function() {\n var hb = o.scry(this.getRoot(), \".fbPhotosPhotoActionsMenu\")[0];\n if (hb) {\n return\n };\n clearTimeout(this.fadePagerTimer);\n this.setStagePagersState(\"inactive\");\n },\n getTagger: function() {\n if (!this.PhotoTagger) {\n return null\n };\n var hb = this.PhotoTagger.getInstance(aa.VIEWER_SNOWLIFT);\n if ((!hb || !hb.tagHoverFacebox)) {\n return null\n };\n return hb;\n },\n hiliteAllBoxes: function() {\n o.scry(this.stage, \"div.tagsWrapper div.faceBox\").forEach(function(hb) {\n m.addClass(hb, \"otherActive\");\n });\n },\n flashAllTags: function() {\n var hb = this.stream.getCurrentImageData().info.fbid;\n if (this.sessionPhotosHilited[hb]) {\n return\n };\n o.scry(this.stage, \"div.tagsWrapper div.tagBox\").forEach(function(ib) {\n m.addClass(ib, \"hover\");\n });\n this.sessionPhotosHilited[hb] = true;\n this.unhiliteTimer = this.unhiliteAllTags.bind(this).defer(2000, true);\n },\n unhiliteAllTags: function() {\n clearTimeout(this.unhiliteTimer);\n o.scry(this.stage, \"div.tagsWrapper div.hover\").forEach(function(ib) {\n m.removeClass(ib, \"hover\");\n });\n if (this.hilitAllTagsAndBoxesOnHover) {\n o.scry(this.stage, \"div.tagsWrapper div.otherActive\").forEach(function(ib) {\n m.removeClass(ib, \"otherActive\");\n });\n };\n this.hilitedTag = null;\n if (!m.hasClass(this.root, \"taggingMode\")) {\n var hb = this.getTagger();\n if (hb) {\n hb.hideTagger();\n hb.setCurrentFacebox(null);\n }\n ;\n }\n ;\n },\n switchHilitedTags: function(hb, ib) {\n if ((this.switchTimer !== null)) {\n clearTimeout(this.switchTimer);\n this.switchTimer = null;\n }\n ;\n this.unhiliteAllTags();\n if (this.hilitAllTagsAndBoxesOnHover) {\n this.hiliteAllBoxes();\n };\n var jb = va(hb);\n if (jb) {\n this.hilitedTag = hb;\n if ((!m.hasClass(this.root, \"taggingMode\") && ea.isFacebox(this.hilitedTag))) {\n var kb = this.getTagger();\n if (kb) {\n m.addClass(jb, \"hover\");\n var lb = kb.getFacebox(hb);\n kb.setCurrentFacebox(lb);\n if (lb) {\n kb.addTagFromFacebox(lb);\n };\n }\n ;\n }\n else m.addClass(jb, \"hover\");\n ;\n if (((m.hasClass(jb, \"tagBoxPending\") && !m.hasClass(jb, \"showPendingTagName\")) && (ib === true))) {\n o.scry(this.stage, \"div.tagsWrapper div.showPendingTagName\").forEach(function(mb) {\n m.removeClass(mb, \"showPendingTagName\");\n });\n m.addClass(jb, \"showPendingTagName\");\n }\n ;\n }\n ;\n },\n reHilitePendingTag: function() {\n var hb = va(this.hilitedTag);\n if ((hb && m.hasClass(hb, \"showPendingTagName\"))) {\n return\n };\n var ib = o.scry(this.stage, \"div.tagsWrapper div.showPendingTagName\")[0];\n if (ib) {\n this.switchHilitedTags(ib.id);\n };\n },\n hiliteTagsOnMouseMove: function(event) {\n if ((!this.stream.getCurrentExtraData() || this.getVideoOnStage())) {\n return\n };\n if ((this.switchTimer !== null)) {\n return\n };\n var hb = event.getTarget();\n if (((((((z.byClass(hb, \"snowliftOverlay\") || z.byClass(hb, \"fbPhotoSnowliftTagApproval\")) || z.byClass(hb, \"tagPointer\")) || z.byClass(hb, \"arrow\")) || z.byClass(hb, \"faceboxSuggestion\")) || z.byClass(hb, \"typeaheadWrapper\")) || z.byClass(hb, \"photoTagTypeahead\"))) {\n return\n };\n var ib = z.byClass(hb, \"tagBoxPending\"), jb = false;\n if (this.hilitedTag) {\n var kb = va(this.hilitedTag);\n jb = (kb && m.hasClass(kb, \"tagBoxPending\"));\n }\n ;\n var lb = ((((!this.hilitedTag && ib)) || ((!jb && ib))));\n if (lb) {\n this.switchHilitedTags(ib.id);\n return;\n }\n ;\n if ((ib && ((ib.id == this.hilitedTag)))) {\n return\n };\n var mb = 250, nb = ea.absoluteToNormalizedPosition(this.image, na.getEventPosition(event));\n if (this.currentTagHasPrecedence(nb)) {\n return\n };\n var ob = ea.getNearestBox(this.stream.getCurrentExtraData().tagRects, nb);\n if (!ob) {\n if (!jb) {\n this.unhiliteAllTags();\n this.reHilitePendingTag();\n }\n ;\n return;\n }\n ;\n var pb = null;\n if (jb) {\n var qb = {\n };\n qb[this.hilitedTag] = this.stream.getCurrentExtraData().tagRects[this.hilitedTag];\n pb = ea.getNearestBox(qb, nb);\n }\n ;\n if (((pb !== null) && jb)) {\n return\n };\n if ((this.hilitedTag != ob)) {\n if (jb) {\n this.switchTimer = this.switchHilitedTags.bind(this, ob).defer(mb);\n }\n else {\n if (this.showHover) {\n if (!this.seenTags) {\n this.seenTags = [];\n };\n if (!this.seenTags[ob]) {\n ba.addFaceTagImpression();\n this.seenTags[ob] = true;\n }\n ;\n }\n ;\n this.switchHilitedTags(ob);\n }\n \n };\n },\n currentTagHasPrecedence: function(hb) {\n if (!this.hilitedTag) {\n return false\n };\n if ((this.stream.getCurrentExtraData().tagRects[this.hilitedTag] === undefined)) {\n this.hilitedTag = null;\n return false;\n }\n ;\n var ib = this.stream.getCurrentExtraData().tagRects[this.hilitedTag], jb = new ga((ib.t + ((ib.h() / 2))), ib.r, (ib.b + ((ea.isFacebox(this.hilitedTag) ? 10 : 0))), ib.l, ib.domain);\n return jb.contains(hb);\n },\n getVideoOnStage: function() {\n var hb = (this.stream && this.stream.getCurrentImageData());\n return (hb && hb.video);\n },\n shouldPageOnAction: function(hb, ib) {\n if ((!this.isOpen || this.isShowingLikePhotoConfirmation)) {\n return false\n };\n var jb = (o.isNode(ib) && (((z.byClass(ib, \"snowliftPager\") || z.byClass(ib, \"stagePagers\")) || z.byClass(ib, \"pivotPageColumn\")))), kb = (o.isNode(ib) && z.byClass(ib, \"stage\")), lb = m.hasClass(ib, \"faceBox\"), mb = ((((((((kb && m.hasClass(this.root, \"taggingMode\"))) || z.byClass(ib, \"tagBoxPending\")) || z.byClass(ib, \"tagBoxPendingResponse\")) || z.byClass(ib, \"fbPhotoTagApprovalBox\")) || z.byClass(ib, \"tag\")) || ((this.cropper && this.cropper.croppingMode))));\n if (mb) {\n return false\n };\n return (((((((hb == u.LEFT) || (hb == u.RIGHT)) || (hb == cb)) || (hb == db)) || ((!m.hasClass(this.root, \"taggingMode\") && lb))) || jb) || kb);\n },\n keyHandler: function(hb, event) {\n if ((event.getModifiers().any || (v.getTopmostLayer() !== this.spotlight))) {\n return true\n };\n switch (q.getKeyCode(event)) {\n case u.LEFT:\n \n case u.RIGHT:\n \n case cb:\n \n case db:\n if (!this.pagersOnKeyboardNav) {\n this.showPagers(gb.PAGER_FADE);\n };\n this.pageListener(event);\n return false;\n case eb:\n return this.toggleFullScreen();\n case fb:\n return this.likePhotoWithKey();\n };\n },\n shouldHandlePendingTag: function(event) {\n var hb = this.getTagger();\n if (!hb.tags.length) {\n return false\n };\n var ib = ea.absoluteToNormalizedPosition(this.getImage(), na.getEventPosition(event)), jb = hb.findNearestTag(ib);\n if ((!jb || !m.hasClass(jb.node, \"tagBoxPending\"))) {\n return false\n };\n g.inform(\"PhotoTagApproval.PENDING_TAG_PHOTO_CLICK\", {\n id: jb.id,\n version: this.getVersionConst()\n });\n return true;\n },\n pageListener: function(event) {\n var hb = q.getKeyCode(event), ib = event.getTarget();\n if (!this.shouldPageOnAction(hb, ib)) {\n return\n };\n if (this.shouldHandlePendingTag(event)) {\n return\n };\n var jb = 0;\n if (((hb == u.RIGHT) || (hb == db))) {\n jb = 1;\n ba.setPagingAction(\"key_right\");\n }\n else if (((hb == u.LEFT) || (hb == cb))) {\n jb = -1;\n ba.setPagingAction(\"key_left\");\n }\n else if (z.byClass(ib, \"next\")) {\n jb = 1;\n ba.setPagingAction(\"click_next\");\n }\n else if (z.byClass(ib, \"prev\")) {\n jb = -1;\n ba.setPagingAction(\"click_prev\");\n }\n else if (!this.stagePagerPrev) {\n jb = 1;\n ba.setPagingAction(\"click_stage\");\n }\n else {\n jb = -1;\n ba.setPagingAction(\"click_stage_back\");\n }\n \n \n \n \n ;\n var kb = o.scry(this.ufiForm, \"input.mentionsHidden\"), lb = false;\n for (var mb = 0; (mb < kb.length); mb++) {\n if (!s.isEmpty(kb[mb])) {\n lb = true;\n break;\n }\n ;\n };\n if (((lb || m.hasClass(this.root, \"fbPhotoSnowliftEditMode\")) || ((this.cropper && this.cropper.croppingMode)))) {\n this.warnLeavePage(jb);\n }\n else {\n this.page(jb, (ma.chrome() && r.isFullScreen()));\n ab(\"snowlift\", ib, event).uai(ba.pagingAction);\n }\n ;\n },\n warnLeavePage: function(hb) {\n new n().setTitle(\"Are you sure you want to leave this page?\").setBody(\"You have unsaved changes that will be lost if you leave the page.\").setButtons([{\n name: \"leave_page\",\n label: \"Leave this Page\",\n handler: this.page.bind(this, hb)\n },{\n name: \"continue_editing\",\n label: \"Stay on this Page\",\n className: \"inputaux\"\n },]).setModal(true).show();\n },\n getUsesOpaqueCursor: function() {\n return this.stream.getUsesOpaqueCursor();\n },\n getOpaqueCursor: function(hb) {\n return this.stream.getOpaqueCursor(hb);\n },\n setReachedLeftEnd: function() {\n this.stream.setReachedLeftEnd();\n },\n setReachedRightEnd: function() {\n this.stream.setReachedRightEnd();\n },\n page: function(hb, ib) {\n if ((!this.stream.isValidMovement(hb) || !this.stream.nonCircularPhotoSetCanPage(hb))) {\n this.showPagers(gb.PAGER_FADE);\n return;\n }\n ;\n this.lastPage = Date.now();\n this.unhiliteAllTags();\n this.seenTags = [];\n var jb = this.getVideoOnStage();\n if (jb) {\n this.switchVideo(jb, false);\n };\n if ((this.pivots && this.pivots.page(hb))) {\n return\n };\n g.inform(\"PhotoSnowlift.PAGE\");\n ja.hide();\n this.recacheData();\n this.stream.moveCursor(hb);\n m.hide(this.image);\n if (this.stream.errorInCurrent()) {\n this.setLoadingState(gb.STATE_HTML, true);\n m.show(this.errorBox);\n return;\n }\n ;\n var kb = this.stream.getCurrentImageData();\n if (kb) {\n var lb = this.getImageURL(kb);\n if (lb) {\n this.switchImage(lb, null, true);\n }\n else if (kb.video) {\n this.switchVideo(kb.video, true);\n }\n ;\n if (!ib) {\n this.replaceUrl = true;\n wa(kb.info.permalink);\n }\n ;\n this.setLoadingState(gb.STATE_IMAGE_DATA, false);\n }\n else {\n this.setLoadingState(gb.STATE_IMAGE_PIXELS, true);\n this.setLoadingState(gb.STATE_IMAGE_DATA, true);\n }\n ;\n if (this.stream.getCurrentHtml()) {\n this.swapData();\n }\n else this.setLoadingState(gb.STATE_HTML, true);\n ;\n this.disableAds = this.disableAdsForSession;\n this.loadAds();\n if (this.cropper) {\n this.cropper.resetPhoto();\n };\n this.setLeftAndRightPagersState();\n },\n logImpressionDetailsForPhoto: function() {\n var hb = [].concat(o.scry(oa(\"fbPhotoSnowliftTagList\"), \"input.photoImpressionDetails\"), o.scry(oa(\"fbPhotoSnowliftFeedback\"), \"input.photoImpressionDetails\"));\n if ((hb.length === 0)) {\n return\n };\n var ib = {\n };\n for (var jb = 0; (jb < hb.length); jb++) {\n ib[hb[jb].name] = hb[jb].value;;\n };\n if (this.getVideoOnStage()) {\n ib.width = 0;\n ib.height = 0;\n }\n else {\n var kb = this.getImageDimensions(this.stream.getCurrentImageData());\n ib.width = kb.x;\n ib.height = kb.y;\n }\n ;\n ba.addDetailData(this.stream.getCursor(), ib);\n ca.setIsLogAdData(true);\n },\n loadAds: function() {\n if (this.disableAds) {\n return\n };\n ca.loadAdsFromUserActivity();\n },\n transitionHandler: function(hb) {\n if ((((hb.getQueryData().closeTheater || hb.getQueryData().permPage) || hb.getQueryData().makeprofile) || this.returningToStart)) {\n if (this.isOpen) {\n this.close();\n };\n this.transitionHandlerRegistered = false;\n return false;\n }\n ;\n if (this.replaceUrl) {\n this.replaceUrl = false;\n this._uriStack.push(hb.getQualifiedURI().toString());\n y.transitionComplete(true);\n return true;\n }\n ;\n var ib = this._uriStack.length;\n if (((ib >= 2) && (this._uriStack[(ib - 2)] == hb.getQualifiedURI().toString()))) {\n this._uriStack.pop();\n };\n var jb = this.stream.getCursorForURI(hb.getUnqualifiedURI().toString());\n if (jb) {\n var kb = this.stream.getRelativeMovement(jb);\n this.page(kb, true);\n y.transitionComplete(false);\n return true;\n }\n ;\n if (this.isOpen) {\n y.transitionComplete(true);\n this.close();\n return true;\n }\n ;\n this.transitionHandlerRegistered = false;\n return false;\n },\n recacheData: function() {\n if (!this.loadingStates.html) {\n var hb = this.stream.getCurrentHtml();\n for (var ib in hb) {\n hb[ib] = sa(oa(ib).childNodes);\n o.empty(oa(ib));\n };\n }\n ;\n },\n reloadIfTimeout: function() {\n if (!t.hasLoaded(this.image)) {\n var hb = this.makeNewImage(this.image.src, true);\n q.listen(hb, \"load\", this.useImage.bind(this, hb, null, true));\n }\n ;\n },\n useImage: function(hb, ib, jb) {\n if ((jb && t.hasLoaded(this.image))) {\n return\n };\n o.replace(this.image, hb);\n this.image = hb;\n g.inform(\"Amoeba/instrument\", [this.image,\"image\",], g.BEHAVIOR_PERSISTENT);\n this.adjustStageSize(ib);\n },\n makeNewImage: function(hb, ib) {\n if (this.imageLoadingTimer) {\n clearTimeout(this.imageLoadingTimer);\n this.imageLoadingTimer = null;\n }\n else if (!ib) {\n this.imageRefreshTimer = setTimeout(this.reloadIfTimeout.bind(this), gb.LOADING_TIMEOUT);\n }\n ;\n var jb = o.create(\"img\", {\n className: \"spotlight\",\n alt: \"\"\n });\n jb.setAttribute(\"aria-describedby\", \"fbPhotosSnowliftCaption\");\n jb.setAttribute(\"aria-busy\", \"true\");\n q.listen(jb, \"load\", pa(function() {\n clearTimeout(this.imageRefreshTimer);\n this.image.setAttribute(\"aria-busy\", \"false\");\n this.setLoadingState(this.STATE_IMAGE_PIXELS, false);\n (function() {\n if (this.isOpen) {\n this.adjustStageSize();\n this.adjustForNewData();\n }\n ;\n }).bind(this).defer();\n }.bind(this), \"photo_theater\"));\n jb.src = hb;\n return jb;\n },\n switchImage: function(hb, ib, jb) {\n m.hide(this.image);\n m.hide(this.errorBox);\n this.setLoadingState(this.STATE_IMAGE_PIXELS, true);\n var kb = (this.stream && this.stream.getCurrentImageData());\n if (kb) {\n ba.addPhotoView(kb.info, this.shouldShowHiRes(kb), (this.fullscreen && r.isFullScreen()));\n };\n this.useImage(this.makeNewImage(hb, false), ib, false);\n if (jb) {\n this.stream.preloadImages(this.shouldShowHiRes(kb));\n };\n if ((this.cropper && this.cropper.croppingMode)) {\n this.cropper.resetPhoto();\n };\n g.inform(\"PhotoSnowlift.SWITCH_IMAGE\");\n },\n switchVideo: function(hb, ib) {\n var jb = (\"swf_\" + hb);\n if (ib) {\n m.addClass(this.stageWrapper, \"showVideo\");\n var kb = o.create(\"div\", {\n className: \"videoStageContainer\"\n });\n o.appendContent(this.videoStage, kb);\n kb.id = hb;\n if ((window[jb] && !va(jb))) {\n window[jb].write(hb);\n };\n var lb = (\"video_warning_\" + hb), mb = va(hb);\n if (!this.videoWarnings) {\n this.videoWarnings = [];\n };\n if ((mb && this.videoWarnings[lb])) {\n o.setContent(mb, this.videoWarnings[lb]);\n };\n this.adjustStageSizeForVideo.bind(this, jb).defer();\n }\n else {\n (window[jb] && window[jb].addVariable(\"video_autoplay\", 0));\n (this.videoLoadTimer && clearTimeout(this.videoLoadTimer));\n o.empty(this.videoStage);\n m.removeClass(this.stageWrapper, \"showVideo\");\n }\n ;\n },\n checkVideoStatus: function(hb) {\n if (this.videoLoadTimer) {\n clearTimeout(this.videoLoadTimer);\n };\n var ib = this.getVideoOnStage();\n if (!ib) {\n return;\n }\n else {\n var jb = (\"swf_\" + ib);\n if ((hb !== jb)) {\n return\n };\n this.adjustStageSizeForVideo(hb);\n }\n ;\n },\n adjustStageSizeForVideo: function(hb) {\n var ib = va(hb);\n if (!ib) {\n this.videoLoadTimer = setTimeout(this.checkVideoStatus.bind(this, hb), 200);\n }\n else this.adjustStageSize(new na(ib.width, ib.height));\n ;\n },\n handleServerError: function(hb, ib) {\n o.setContent(this.errorBox, hb);\n this.storeFromData(ib);\n },\n swapData: function() {\n var hb, ib = this.stream.getCurrentHtml();\n if (ib) {\n this.setLoadingState(gb.STATE_HTML, false);\n for (var jb in ib) {\n hb = va(jb);\n (hb && o.setContent(hb, ib[jb]));\n };\n g.inform(\"PhotoSnowlift.DATA_CHANGE\", this.stream.getCurrentImageData().info, g.BEHAVIOR_STATE);\n if (this.stream.getCurrentExtraData()) {\n g.inform(\"PhotoSnowlift.EXTRA_DATA_CHANGE\", this.stream.getCurrentExtraData(), g.BEHAVIOR_STATE);\n };\n }\n ;\n this.adjustScroller();\n this.adjustStageSize();\n this.scrollableArea.showScrollbar(false);\n this.adjustForNewData();\n this.logImpressionDetailsForPhoto();\n if (this.showFlashTags) {\n this.flashAllTags();\n };\n },\n updateTotalCount: function(hb, ib, jb) {\n var kb = this.stream.getCurrentHtml();\n if (kb) {\n var lb = oa(\"fbPhotoSnowliftPositionAndCount\");\n o.replace(lb, jb);\n lb = jb;\n m.show(lb);\n var mb = \"fbPhotoSnowliftPositionAndCount\";\n kb[mb] = sa(lb.childNodes);\n }\n ;\n this.stream.setTotalCount(hb);\n this.stream.setFirstCursorIndex(ib);\n },\n addPhotoFbids: function(hb, ib, jb, kb) {\n if (((kb && this.sessionID) && (kb != this.sessionID))) {\n return\n };\n var lb = (this.stream.getCursor() === null);\n this.stream.attachToFbidsList(hb, ib, jb);\n if ((jb && lb)) {\n this.page(0, true);\n };\n if ((this.pivots && jb)) {\n this.pivots.setCycleCount(this.stream.calculateDistance(this.stream.getCursor(), this.stream.firstCursor));\n };\n if ((!this.pagersShown && this.stream.canPage())) {\n this.setStagePagersState(\"ready\");\n };\n this.setLeftAndRightPagersState();\n },\n attachTagger: function(hb) {\n o.appendContent(this.stageActions, hb);\n },\n storeFromData: function(hb) {\n if (!this.isOpen) {\n return\n };\n if (((hb.ssid && this.sessionID) && (this.sessionID != hb.ssid))) {\n return\n };\n var ib = this.stream.storeToCache(hb);\n if ((\"error\" in ib)) {\n this.checkState(gb.STATE_ERROR);\n return;\n }\n ;\n if ((\"init\" in ib)) {\n this.initDataFetched(ib.init);\n if (this.openExplicitly) {\n this.replaceUrl = true;\n wa(this.stream.getCurrentImageData().info.permalink);\n }\n ;\n if (this.stream.canPage()) {\n this.setStagePagersState(\"ready\");\n };\n this.setLeftAndRightPagersState();\n (this.ua && this.ua.add_event(\"ufi\"));\n }\n ;\n if ((\"image\" in ib)) {\n this.checkState(gb.STATE_IMAGE_DATA);\n };\n if ((\"data\" in ib)) {\n this.checkState(gb.STATE_HTML);\n };\n },\n setLeftAndRightPagersState: function() {\n if (this.stream.isNonCircularPhotoSet()) {\n m.conditionClass(this.root, \"disableLeft\", !this.stream.nonCircularPhotoSetCanPage(-1));\n m.conditionClass(this.root, \"disableRight\", !this.stream.nonCircularPhotoSetCanPage(1));\n }\n ;\n },\n setStagePagersState: function(hb) {\n switch (hb) {\n case \"ready\":\n m.addClass(this.root, \"pagingReady\");\n this.pagersShown = true;\n (this.ua && this.ua.add_event(\"arrows\"));\n return;\n case \"active\":\n m.addClass(this.root, \"pagingActivated\");\n return;\n case \"inactive\":\n m.removeClass(this.root, \"pagingActivated\");\n return;\n case \"disabled\":\n \n case \"reset\":\n m.removeClass(this.root, \"pagingReady\");\n return;\n };\n },\n deletePhoto: function(hb) {\n this.closeRefresh();\n },\n closeRefresh: function() {\n this.refreshOnClose = true;\n this.closeHandler();\n },\n onHiliteTag: function(hb, ib) {\n if ((ib.version != aa.VIEWER_SNOWLIFT)) {\n return\n };\n var jb = ib.tag;\n if (jb) {\n this.switchHilitedTags(jb, true);\n };\n },\n onUpdateTagBox: function(hb, ib) {\n if ((ib.version == aa.VIEWER_SNOWLIFT)) {\n this.updateTagBox(ib.id, ib.approve);\n };\n }\n });\n e.exports = gb;\n});\n__d(\"Spotlight\", [\"JSXDOM\",\"Arbiter\",\"ArbiterMixin\",\"Class\",\"DOM\",\"Layer\",\"LayerAutoFocus\",\"LayerTabIsolation\",\"ModalLayer\",\"Vector\",\"copyProperties\",\"csx\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSXDOM\"), h = b(\"Arbiter\"), i = b(\"ArbiterMixin\"), j = b(\"Class\"), k = b(\"DOM\"), l = b(\"Layer\"), m = b(\"LayerAutoFocus\"), n = b(\"LayerTabIsolation\"), o = b(\"ModalLayer\"), p = b(\"Vector\"), q = b(\"copyProperties\"), r = b(\"csx\"), s = b(\"cx\");\n function t(v, w) {\n this.parent.construct(this, v, w);\n this.stageMinSize = new p(0, 0);\n this.stagePadding = new p(0, 0);\n };\n j.extend(t, l);\n q(t.prototype, i, {\n stageMinSize: null,\n stagePadding: null,\n _buildWrapper: function(v, w) {\n return (g.div({\n className: \"-cx-PRIVATE-uiSpotlight__root -cx-PRIVATE-ModalLayer__dark\"\n }, g.div({\n className: \"-cx-PRIVATE-uiSpotlight__container\"\n }, w)));\n },\n _getDefaultBehaviors: function() {\n return this.parent._getDefaultBehaviors().concat([u,m,n,o,]);\n },\n getContentRoot: function() {\n if (!this._content) {\n this._content = k.find(this.getRoot(), \"div.-cx-PRIVATE-uiSpotlight__content\");\n };\n return this._content;\n },\n configure: function(v) {\n if (v.stageMinSize) {\n this.stageMinSize = v.stageMinSize;\n };\n if (v.stagePadding) {\n this.stagePadding = v.stagePadding;\n };\n },\n onContentLoaded: function() {\n this.inform(\"content-load\");\n },\n updatePermalink: function(v) {\n this.inform(\"permalinkchange\", v);\n }\n });\n function u(v) {\n this._layer = v;\n };\n q(u.prototype, {\n _subscription: null,\n enable: function() {\n this._subscription = this._layer.subscribe([\"show\",\"hide\",], function(v, w) {\n if ((v === \"show\")) {\n h.inform(\"layer_shown\", {\n type: \"Spotlight\"\n });\n }\n else h.inform(\"layer_hidden\", {\n type: \"Spotlight\"\n });\n ;\n });\n },\n disable: function() {\n this._subscription.unsubscribe();\n this._subscription = null;\n }\n });\n e.exports = t;\n});"); |
| // 12987 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s96db0ff9943622b0163880becbaeeb6725dde055"); |
| // 12991 |
| o62.style = o176; |
| // undefined |
| o62 = null; |
| // undefined |
| o176 = null; |
| // 12988 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"e0RyX\",]);\n}\n;\n;\n__d(\"PhotoSnowliftAds\", [\"JSBNG__Event\",\"copyProperties\",\"JSBNG__CSS\",\"csx\",\"DataStore\",\"DOM\",\"PhotoSessionLog\",\"UIPagelet\",\"URI\",\"Vector\",\"extendArray\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"copyProperties\"), i = b(\"JSBNG__CSS\"), j = b(\"csx\"), k = b(\"DataStore\"), l = b(\"DOM\"), m = b(\"PhotoSessionLog\"), n = b(\"UIPagelet\"), o = b(\"URI\"), p = b(\"Vector\"), q = b(\"extendArray\"), r = {\n DEFAULT_UNITS_REFRESH_RATE: 30000,\n UNITS_REGISTER_DELAY: 1000,\n root: null,\n availableDimensions: null,\n loadQuery: null,\n lastLoadTime: 0,\n minAds: 100,\n units: null,\n isLogAdData: null,\n displayedCallback: null,\n refreshUnitsRate: null,\n position: null,\n adsStatus: \"null\",\n adsEvents: {\n },\n snowliftRedesign: false,\n resetEvents: function() {\n this.adsStatus = \"reset\";\n this.adsEvents = {\n };\n },\n addEvent: function(s, t) {\n if (t) {\n this.adsStatus = s;\n }\n ;\n ;\n var u = JSBNG__Date.now();\n this.adsEvents[((((s + \"_\")) + u))] = u;\n },\n init: function(s, t, u, v) {\n this.reset();\n this.root = s;\n this.snowlift = t;\n this.minAds = u.min_ads;\n this.displayedCallback = v;\n this.addEvent(\"init\", true);\n this.snowliftRedesign = u.snowlift_redesign;\n this.refreshUnitsRate = r.DEFAULT_UNITS_REFRESH_RATE;\n if (u.refresh_fast) {\n this.refreshUnitsRate = u.refresh_rate;\n }\n ;\n ;\n },\n reset: function() {\n this.lastLoadTime = 0;\n this.position = 0;\n this.units = [];\n this.resetEvents();\n this.addEvent(\"reset\", true);\n },\n resize: function(s) {\n this.availableDimensions = s;\n this.loadQuery = this.snowlift.getLoadQuery();\n this.processResize();\n },\n calculateUnitSizes: function(s, t, u) {\n var v = {\n };\n s.forEach(function(w) {\n var x = w.root.firstChild.offsetHeight;\n w.units.forEach(function(z) {\n if (((!i.hasClass(z, \"hidden\") && !this.getIsHoldout(z)))) {\n var aa = this.getHeight(z.firstChild, t);\n x -= aa;\n }\n ;\n ;\n }.bind(this));\n var y = {\n height: x,\n visible: false\n };\n w.units.forEach(function(z) {\n var aa = this.getIsAds(z), ba = this.getHeight(z.firstChild, t), ca = this.getUnitId(z), da = this.getIsHoldout(z);\n if (((da && u))) {\n return;\n }\n ;\n ;\n v[ca] = {\n height: ba,\n visible: false,\n priority: 0,\n is_ads: aa,\n is_holdout: da,\n section_ref: y\n };\n }.bind(this));\n }.bind(this));\n return v;\n },\n calculateVisibleUnits: function(s, t, u) {\n var v = 0, w = this.getUnitPriority(t);\n w.forEach(function(x) {\n if (t.hasOwnProperty(x)) {\n var y = t[x], z = y.height;\n if (!y.section_ref.visible) {\n z += y.section_ref.height;\n }\n ;\n ;\n y.height_below = ((u - z));\n y.visible = ((((y.height_below >= 0)) && ((z > 0))));\n if (y.visible) {\n y.section_ref.visible = true;\n u -= z;\n v++;\n }\n ;\n ;\n }\n ;\n ;\n }.bind(this));\n return t;\n },\n displayUnits: function(s, t) {\n s.forEach(function(u) {\n var v = false, w = true;\n u.units.forEach(function(x) {\n var y = this.getUnitId(x), z = t[y];\n if (!z) {\n return;\n }\n ;\n ;\n var aa = z.visible, ba = z.height_below, ca = z.is_ads;\n i.conditionClass(x, \"hidden\", !aa);\n if (((((ca && aa)) && w))) {\n var da = l.JSBNG__find(x, \"div.ego_unit\");\n i.addClass(da, \"ego_unit_no_top_border\");\n w = false;\n }\n ;\n ;\n v = ((v || aa));\n this.calcUnitStats(this.units[ca][y], aa, ba);\n }.bind(this));\n i.conditionClass(u.root, \"hidden\", !v);\n }.bind(this));\n },\n getUnitsDisplayed: function(s, t) {\n var u = 0;\n s.forEach(function(v) {\n v.units.forEach(function(w) {\n var x = this.getUnitId(w), y = t[x];\n if (((!y || !y.visible))) {\n return;\n }\n ;\n ;\n u++;\n }.bind(this));\n }.bind(this));\n return u;\n },\n getHeightsRequired: function(s, t) {\n var u = 0, v = [];\n s.forEach(function(w) {\n var x = false;\n w.units.forEach(function(y) {\n var z = this.getUnitId(y), aa = t[z];\n if (!aa) {\n return;\n }\n ;\n ;\n u += aa.height;\n if (!x) {\n u += aa.section_ref.height;\n x = true;\n }\n ;\n ;\n v.push(u);\n }.bind(this));\n }.bind(this));\n return v;\n },\n getUnitPriority: function(s) {\n var t = [], u = 0, v = 0;\n {\n var fin240keys = ((window.top.JSBNG_Replay.forInKeys)((s))), fin240i = (0);\n var w;\n for (; (fin240i < fin240keys.length); (fin240i++)) {\n ((w) = (fin240keys[fin240i]));\n {\n var x = s[w];\n t.push(w);\n var y = ((((this.minAds + u)) + v));\n if (x.is_ads) {\n if (((v < this.minAds))) {\n y = v;\n }\n ;\n ;\n v++;\n }\n else u++;\n ;\n ;\n x.priority = y;\n };\n };\n };\n ;\n t = t.sort(function(z, aa) {\n var ba = s[z], ca = s[aa];\n return ((ba.priority - ca.priority));\n }.bind(this));\n return t;\n },\n updateUnitsStatus: function() {\n var s = this.availableDimensions.x, t = this.availableDimensions.y, u = this.calculateUnitSizes(this.sections, s);\n u = this.calculateVisibleUnits(this.sections, u, t);\n {\n var fin241keys = ((window.top.JSBNG_Replay.forInKeys)((u))), fin241i = (0);\n var v;\n for (; (fin241i < fin241keys.length); (fin241i++)) {\n ((v) = (fin241keys[fin241i]));\n {\n if (!u.hasOwnProperty(v)) {\n continue;\n }\n ;\n ;\n var w = u[v];\n if (((!w.is_holdout || !w.visible))) {\n continue;\n }\n ;\n ;\n var x = this.units[1][v];\n this.calcUnitStats(x, w.visible, w.height_below);\n };\n };\n };\n ;\n u = this.calculateUnitSizes(this.sections, s, true);\n u = this.calculateVisibleUnits(this.sections, u, t);\n this.displayUnits(this.sections, u);\n if (this.displayedCallback) {\n var y = this.getUnitsDisplayed(this.sections, u), z = this.getHeightsRequired(this.sections, u);\n this.displayedCallback(y, z);\n }\n ;\n ;\n },\n calcUnitStats: function(s, t, u) {\n var v = JSBNG__Date.now();\n if (s.visible) {\n s.totalTime += ((v - s.lastShowTime));\n }\n ;\n ;\n if (((((s.trackingCode !== null)) && ((s.totalTime >= this.UNITS_REGISTER_DELAY))))) {\n var w = s.trackingCode;\n s.trackingCode = null;\n this.registerImpression(w, s.registerUrl);\n }\n ;\n ;\n s.visible = t;\n s.heightBelow = u;\n s.lastShowTime = v;\n },\n prepareResize: function() {\n var s = function(t) {\n var u = l.create(\"div\", {\n className: \"JSBNG__inner\"\n }), v = l.create(\"div\", {\n className: \"wrapper\"\n }, u);\n l.replace(t, v);\n l.setContent(u, t);\n return v;\n };\n this.sections = l.scry(this.root, \"div.ego_section\").map(function(t) {\n return {\n root: s(t),\n units: l.scry(t, \"div.ego_unit\").map(s)\n };\n });\n },\n processResize: function() {\n if (((((this.isLoading || ((this.lastLoadTime === 0)))) || ((this.availableDimensions === null))))) {\n this.setLogData();\n return;\n }\n ;\n ;\n this.updateUnitsStatus();\n this.setLogData();\n var s = this.nextRegisterTime();\n if (((s !== Infinity))) {\n this.processResize.bind(this).defer(s, true);\n }\n ;\n ;\n },\n setIsLogAdData: function(s) {\n this.isLogAdData = s;\n this.addEvent(\"setIsLogAdData\", false);\n this.setLogData();\n },\n setLogData: function() {\n var s = this.snowlift.getImageId();\n if (((this.isLogAdData && s))) {\n var t = p.getElementDimensions(this.snowlift.getImage()), u = p.getElementDimensions(this.snowlift.getRHCHeader()), v = p.getElementDimensions(this.snowlift.getRHCBody()), w = p.getElementDimensions(this.snowlift.getRHCFooter()), x = {\n query_set: this.snowlift.getLoadQuery().set,\n window_x: window.JSBNG__innerWidth,\n window_y: window.JSBNG__innerHeight,\n image_x: t.x,\n image_y: t.y,\n header_x: u.x,\n header_y: u.y,\n body_x: v.x,\n body_y: v.y,\n footer_x: w.x,\n footer_y: w.y,\n ads_below_space: this.getAdsBelowSpace(),\n time: JSBNG__Date.now(),\n adsStatus: this.adsStatus,\n adsEvents: this.adsEvents,\n refreshRate: this.refreshUnitsRate,\n position: this.position\n };\n m.updateAdData(s, x);\n }\n ;\n ;\n },\n getAdsBelowSpace: function() {\n var s = [], t = this.units[1];\n {\n var fin242keys = ((window.top.JSBNG_Replay.forInKeys)((t))), fin242i = (0);\n var u;\n for (; (fin242i < fin242keys.length); (fin242i++)) {\n ((u) = (fin242keys[fin242i]));\n {\n if (((t.hasOwnProperty(u) && !this.getIsHoldout(this.getAdUnit(u))))) {\n s.push(t[u].heightBelow);\n }\n ;\n ;\n };\n };\n };\n ;\n return s;\n },\n getIsAds: function(s) {\n var t = l.scry(s, \"div.-cx-PUBLIC-fbAdUnit__root\");\n return t.length;\n },\n getUnitId: function(s) {\n if (this.getIsAds(s)) {\n return this.getAdId(s);\n }\n else return this.getEgoId(s)\n ;\n },\n getEgoId: function(s) {\n var t = l.JSBNG__find(s, \"div.ego_unit\");\n return t.getAttribute(\"data-ego-fbid\");\n },\n getAdData: function(s) {\n var t = l.JSBNG__find(s, \"div.-cx-PUBLIC-fbAdUnit__root\"), u = t.getAttribute(\"data-ad\");\n return ((((u && JSON.parse(u))) || {\n }));\n },\n getAdId: function(s) {\n return this.getAdData(s).adid;\n },\n getIsHoldout: function(s) {\n return ((((s && this.getIsAds(s))) && this.getAdData(s).holdout));\n },\n getAdUnit: function(s) {\n if (!this.sections) {\n return null;\n }\n ;\n ;\n var t = [];\n this.sections.forEach(function(v) {\n q(t, v.units);\n });\n for (var u = 0; ((u < t.length)); u++) {\n if (((this.getIsAds(t[u]) && ((this.getAdId(t[u]) == s))))) {\n return t[u];\n }\n ;\n ;\n };\n ;\n return null;\n },\n nextRegisterTime: function() {\n var s = Infinity, t = h(h({\n }, this.units[0]), this.units[1]);\n {\n var fin243keys = ((window.top.JSBNG_Replay.forInKeys)((t))), fin243i = (0);\n var u;\n for (; (fin243i < fin243keys.length); (fin243i++)) {\n ((u) = (fin243keys[fin243i]));\n {\n if (t.hasOwnProperty(u)) {\n var v = t[u];\n if (((((v.trackingCode !== null)) && v.visible))) {\n s = Math.min(s, ((this.UNITS_REGISTER_DELAY - v.totalTime)));\n }\n ;\n ;\n }\n ;\n ;\n };\n };\n };\n ;\n return s;\n },\n getHeight: function(s, t) {\n var u = k.get(s, \"height\");\n if (((u && ((u.x === t))))) {\n return u.y;\n }\n ;\n ;\n return this.cacheHeight(s, t);\n },\n cacheHeight: function(s, t) {\n var u = {\n x: t,\n y: s.offsetHeight\n };\n k.set(s, \"height\", u);\n return u.y;\n },\n loadAdsAndEgo: function() {\n this.resetEvents();\n this.addEvent(\"adsRequested\", true);\n this.position++;\n var s = this.getCursorFBID(this.loadQuery);\n n.loadFromEndpoint(\"WebEgoPane\", this.root, {\n pid: 34,\n data: [this.loadQuery.set,s,this.snowliftRedesign,this.snowlift.getOpaqueCursor(s),]\n }, {\n crossPage: true,\n bundle: false\n });\n },\n getCursorFBID: function(s) {\n if (((s.v !== undefined))) {\n return s.v;\n }\n ;\n ;\n if (((s.fbid !== undefined))) {\n return s.fbid;\n }\n ;\n ;\n return \"0\";\n },\n unitsLoaded: function(s, t) {\n var u;\n if (t) {\n u = \"/ai.php\";\n this.addEvent(\"adsLoaded\", true);\n }\n else {\n u = \"/ajax/ei.php\";\n this.addEvent(\"egoLoaded\", true);\n }\n ;\n ;\n var v = {\n };\n {\n var fin244keys = ((window.top.JSBNG_Replay.forInKeys)((s))), fin244i = (0);\n var w;\n for (; (fin244i < fin244keys.length); (fin244i++)) {\n ((w) = (fin244keys[fin244i]));\n {\n if (s.hasOwnProperty(w)) {\n v[w] = {\n trackingCode: s[w],\n totalTime: 0,\n lastShowTime: 0,\n heightBelow: -10000,\n visible: false,\n registerUrl: u\n };\n }\n ;\n ;\n };\n };\n };\n ;\n this.units[t] = v;\n if (t) {\n this.waitForImages(this.imagesLoaded.bind(this));\n }\n ;\n ;\n },\n imagesLoaded: function() {\n this.prepareResize();\n this.addEvent(\"imagesLoaded\", true);\n this.lastLoadTime = JSBNG__Date.now();\n this.isLoading = false;\n this.processResize();\n i.removeClass(this.root, \"loading\");\n },\n loadAdsFromUserActivity: function() {\n var s = JSBNG__Date.now(), t = this.refreshUnitsRate;\n if (((!this.isLoading && ((((s - this.lastLoadTime)) > t))))) {\n i.addClass(this.root, \"loading\");\n this.isLoading = true;\n this.loadAdsAndEgo();\n }\n ;\n ;\n },\n registerImpression: function(s, t) {\n var u = l.create(\"div\", {\n src: o(t).addQueryData({\n aed: s\n }),\n width: 0,\n height: 0,\n frameborder: 0,\n scrolling: \"no\",\n className: \"fbEmuTracking\"\n });\n u.setAttribute(\"aria-hidden\", \"true\");\n l.appendContent(this.root, u);\n },\n waitForImages: function(s) {\n var t = l.scry(this.root, \"img.img\"), u = t.length, v = u;\n if (((v === 0))) {\n s();\n }\n ;\n ;\n var w = function() {\n v--;\n if (((v === 0))) {\n s.defer();\n }\n ;\n ;\n };\n for (var x = 0; ((x < u)); x++) {\n var y = t[x];\n if (y.complete) {\n w();\n }\n else g.listen(y, {\n load: w,\n error: w,\n abort: w\n });\n ;\n ;\n };\n ;\n }\n };\n e.exports = r;\n});\n__d(\"PhotoSnowlift\", [\"function-extensions\",\"Arbiter\",\"AsyncDialog\",\"AsyncRequest\",\"Bootloader\",\"Class\",\"collectDataAttributes\",\"JSBNG__CSS\",\"Dialog\",\"DOM\",\"DOMControl\",\"JSBNG__Event\",\"FullScreen\",\"Input\",\"ImageUtils\",\"Keys\",\"Layer\",\"LinkController\",\"Locale\",\"PageTransitions\",\"Parent\",\"PhotosConst\",\"PhotoSessionLog\",\"PhotoSnowliftAds\",\"PhotoStreamCache\",\"PhotosUtils\",\"PhotoViewer\",\"JSBNG__Rect\",\"ScrollableArea\",\"Style\",\"Toggler\",\"UIPagelet\",\"URI\",\"UserAgent\",\"Vector\",\"$\",\"asyncCallback\",\"computeRelativeURI\",\"copyProperties\",\"createArrayFrom\",\"csx\",\"emptyFunction\",\"ge\",\"goURI\",\"shield\",\"startsWith\",\"tx\",\"userAction\",\"Assert\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"Arbiter\"), h = b(\"AsyncDialog\"), i = b(\"AsyncRequest\"), j = b(\"Bootloader\"), k = b(\"Class\"), l = b(\"collectDataAttributes\"), m = b(\"JSBNG__CSS\"), n = b(\"Dialog\"), o = b(\"DOM\"), p = b(\"DOMControl\"), q = b(\"JSBNG__Event\"), r = b(\"FullScreen\"), s = b(\"Input\"), t = b(\"ImageUtils\"), u = b(\"Keys\"), v = b(\"Layer\"), w = b(\"LinkController\"), x = b(\"Locale\"), y = b(\"PageTransitions\"), z = b(\"Parent\"), aa = b(\"PhotosConst\"), ba = b(\"PhotoSessionLog\"), ca = b(\"PhotoSnowliftAds\"), da = b(\"PhotoStreamCache\"), ea = b(\"PhotosUtils\"), fa = b(\"PhotoViewer\"), ga = b(\"JSBNG__Rect\"), ha = b(\"ScrollableArea\"), ia = b(\"Style\"), ja = b(\"Toggler\"), ka = b(\"UIPagelet\"), la = b(\"URI\"), ma = b(\"UserAgent\"), na = b(\"Vector\"), oa = b(\"$\"), pa = b(\"asyncCallback\"), qa = b(\"computeRelativeURI\"), ra = b(\"copyProperties\"), sa = b(\"createArrayFrom\"), ta = b(\"csx\"), ua = b(\"emptyFunction\"), va = b(\"ge\"), wa = b(\"goURI\"), xa = b(\"shield\"), ya = b(\"startsWith\"), za = b(\"tx\"), ab = b(\"userAction\"), bb = b(\"Assert\"), cb = 74, db = 75, eb = 70, fb = 76;\n function gb() {\n this.parent.construct(this);\n };\n;\n ra(gb, {\n STATE_ERROR: \"error\",\n STATE_HTML: \"html\",\n STATE_IMAGE_PIXELS: \"image_pixels\",\n STATE_IMAGE_DATA: \"image\",\n LOADING_TIMEOUT: 2000,\n PAGER_FADE: 3000,\n FULL_SCREEN_PADDING: 10,\n STAGE_HIRES_MAX: {\n x: 2048,\n y: 2048\n },\n STAGE_NORMAL_MAX: {\n x: 960,\n y: 960\n },\n STAGE_MIN: {\n x: 520,\n y: 520\n },\n SIDEBAR_SIZE_MAX: 360,\n STAGE_CHROME: {\n x: 82,\n y: 42\n },\n VIDEO_BOTTOM_BAR_SPACE: 40,\n GOPREV_AREA: 120,\n TIMELINE_STRETCH_WIDTH: 843,\n TIMELINE_STRETCH_MIN: 480,\n MIN_TAG_DISTANCE: 83,\n PADDING_MIN: 40,\n MIN_UFI_HEIGHT: 250,\n COLLECTIONS_UNTAGGED_PHOTOS: 3,\n PHOTOS_OF_YOU_SUGGESTIONS: 28,\n MIN_ADS_VISIBLE: 1,\n RESERVED_ADS_HEIGHT: 150,\n _instance: null,\n getInstance: function() {\n if (!gb._instance) {\n gb._instance = new gb();\n }\n ;\n ;\n return gb._instance;\n },\n initWithSpotlight: function(hb, ib) {\n gb.getInstance().init(hb, ib);\n },\n touch: ua,\n addPhotoFbids: function(hb, ib, jb, kb) {\n gb.getInstance().addPhotoFbids(hb, ib, jb, kb);\n },\n setReachedLeftEnd: function() {\n gb.getInstance().setReachedLeftEnd();\n },\n setReachedRightEnd: function() {\n gb.getInstance().setReachedRightEnd();\n },\n attachFollowFlyout: function(hb) {\n o.insertAfter(oa(\"fbPhotoSnowliftSubscribe\"), hb);\n },\n attachSubscribeFlyout: function(hb) {\n o.insertAfter(oa(\"fbPhotoSnowliftSubscribe\"), hb);\n },\n attachTagger: function(hb) {\n gb.getInstance().attachTagger(hb);\n },\n preload: function(hb, ib) {\n gb.getInstance().preload(hb, ib);\n },\n bootstrap: function(hb, ib) {\n if (((hb && la(hb).getQueryData().hasOwnProperty(\"share_id\")))) {\n j.loadModules([\"SpotlightShareViewer\",], function(jb) {\n jb.bootstrap(hb, ib);\n });\n return;\n }\n ;\n ;\n gb.getInstance().bootstrap(hb, ib);\n },\n closeRefresh: function() {\n gb.getInstance().closeRefresh();\n },\n deletePhoto: function(hb) {\n gb.getInstance().deletePhoto(hb);\n },\n getImage: function() {\n return gb.getInstance().getImage();\n },\n getImageId: function() {\n return gb.getInstance().getImageId();\n },\n getLoadQuery: function() {\n return gb.getInstance().getLoadQuery();\n },\n getRHCBody: function() {\n return gb.getInstance().getRHCBody();\n },\n getRHCFooter: function() {\n return gb.getInstance().getRHCFooter();\n },\n getRHCHeader: function() {\n return gb.getInstance().getRHCHeader();\n },\n getRoot: function() {\n return gb.getInstance().getRoot();\n },\n likePhotoSkipConfirmation: function(hb) {\n gb.getInstance().likePhotoSkipConfirmation(hb);\n },\n saveTagsFromPayload: function(hb) {\n gb.getInstance().saveTagsFromPayload(hb);\n },\n saveTagsFromPayloadDelayed: function(hb) {\n gb.saveTagsFromPayload.curry(hb).defer(2000);\n },\n handleServerError: function(hb, ib) {\n gb.getInstance().handleServerError(hb, ib);\n },\n setVideoWarning: function(hb, ib) {\n var jb = gb.getInstance(), kb = ((\"video_warning_\" + hb));\n if (!jb.videoWarnings) {\n jb.videoWarnings = [];\n }\n ;\n ;\n jb.videoWarnings[kb] = ib;\n },\n storeFromData: function(hb) {\n gb.getInstance().storeFromData(hb);\n },\n swapData: function() {\n gb.getInstance().swapData();\n },\n touchMarkup: ua,\n updateTotalCount: function(hb, ib, jb) {\n gb.getInstance().updateTotalCount(hb, ib, jb);\n },\n setVideoRotateURI: function(hb) {\n gb.getInstance().videoRotateURI = hb;\n }\n });\n k.extend(gb, fa);\n ra(gb.prototype, {\n switchTimer: null,\n imageRefreshTimer: null,\n imageLoadingTimer: null,\n lastPage: 0,\n currentMinSize: null,\n currentImageSize: null,\n resetUriStack: true,\n thumbSrc: null,\n shouldStretch: false,\n stageMax: gb.STAGE_NORMAL_MAX,\n stageChrome: gb.STAGE_CHROME,\n stagePagerPrev: null,\n ua: null,\n PhotoTagger: null,\n showHover: false,\n skipLikePhotoConfirmation: false,\n isShowingLikePhotoConfirmation: false,\n preload: function(hb, ib) {\n j.loadModules([\"PhotoTagger\",\"Live\",\"PhotoTagApproval\",\"PhotoTags\",\"TagTokenizer\",\"fb-photos-snowlift-fullscreen-css\",], function(kb) {\n this.PhotoTagger = kb;\n }.bind(this));\n var jb = this.getImageSrc(la(hb).getQueryData());\n if (jb) {\n (new JSBNG__Image()).src = jb;\n }\n ;\n ;\n },\n bootstrap: function(hb, ib) {\n if (((hb && la(hb).getQueryData().makeprofile))) {\n this.enableCropperOnInit = true;\n this.isUserProfilePic = la(hb).getQueryData().makeuserprofile;\n this.isInProfilePicAlbum = la(hb).getQueryData().inprofilepicalbum;\n }\n ;\n ;\n this.preload(hb, ib);\n if (this.closeDirty) {\n this.bootstrap.bind(this, hb, ib).defer();\n return;\n }\n ;\n ;\n ca.reset();\n this.resetUriStack = true;\n if (this.isOpen) {\n if (this.openExplicitly) {\n this.closeCleanup();\n this.resetUriStack = false;\n }\n else return\n ;\n }\n ;\n ;\n this.ua = ab(\"snowlift\", ib).uai(\"open\");\n this.returningToStart = false;\n ((this.loading && m.removeClass(this.loading, \"loading\")));\n if (ib) {\n m.addClass((this.loading = ib), \"loading\");\n if (this.container) {\n var jb = z.byClass(ib, \"uiStreamStory\");\n if (jb) {\n this.container.setAttribute(\"data-ownerid\", jb.id);\n }\n else this.container.removeAttribute(\"data-ownerid\");\n ;\n ;\n }\n ;\n ;\n this.getThumbAndSize(ib);\n }\n else this.loading = null;\n ;\n ;\n g.inform(\"PhotoSnowlift.GO\", hb, g.BEHAVIOR_STATE);\n this.loadFrameIfUninitialized();\n },\n getCurrentImageServerSizeDimensions: function() {\n return this.stream.getCurrentImageData().dimensions;\n },\n getEventPrefix: function() {\n return \"PhotoSnowlift\";\n },\n getRoot: function() {\n return this.root;\n },\n getSourceString: function() {\n return \"snowlift\";\n },\n getViewerSource: function() {\n return this.source;\n },\n getViewerSet: function() {\n return this.stream.getPhotoSet();\n },\n getVersionConst: function() {\n return aa.VIEWER_SNOWLIFT;\n },\n getImage: function() {\n return this.image;\n },\n getImageId: function() {\n return this.stream.getCursor();\n },\n getRHCHeader: function() {\n return this.rhcHeader;\n },\n getRHCBody: function() {\n return this.ufiForm;\n },\n getRHCFooter: function() {\n return this.rhcFooter;\n },\n getLoadQuery: function() {\n return this.loadQuery;\n },\n getCurrentPhotoInfo: function() {\n var hb = this.stream.getCurrentImageData();\n if (hb) {\n return hb.info;\n }\n ;\n ;\n return null;\n },\n getOwnerId: function() {\n var hb = this.stream.getCurrentImageData();\n if (hb) {\n return hb.info.owner;\n }\n ;\n ;\n return null;\n },\n getThumbAndSize: function(hb) {\n this.currentImageSize = null;\n this.thumbSrc = null;\n var ib = la(hb.getAttribute(\"ajaxify\")).getQueryData();\n if (!ib.size) {\n return;\n }\n ;\n ;\n var jb = na.deserialize(ib.size);\n if (((!jb.x || !jb.y))) {\n return;\n }\n ;\n ;\n this.currentImageSize = jb;\n if (((((!m.hasClass(hb, \"uiMediaThumb\") && !m.hasClass(hb, \"uiPhotoThumb\"))) && !m.hasClass(hb, \"uiScaledThumb\")))) {\n return;\n }\n ;\n ;\n if (hb.getAttribute(\"data-cropped\")) {\n return;\n }\n ;\n ;\n var kb = o.scry(hb, \"img\")[0], lb = o.scry(hb, \"i\")[0], mb = z.byAttribute(hb, \"data-size\");\n this.shouldStretch = ((((((((((((mb && this.currentImageSize)) && kb)) && ((mb.getAttribute(\"data-size\") === \"2\")))) && ((this.currentImageSize.x > this.currentImageSize.y)))) && ((this.currentImageSize.x <= gb.TIMELINE_STRETCH_WIDTH)))) && ((kb.offsetWidth === gb.TIMELINE_STRETCH_WIDTH))));\n var nb;\n if (kb) {\n nb = kb.src;\n }\n else if (lb) {\n nb = ia.get(lb, \"backgroundImage\").replace(/.*url\\(\"?([^\"]*)\"?\\).*/, \"$1\");\n }\n else return\n \n ;\n this.thumbSrc = nb;\n },\n loadFrameIfUninitialized: function() {\n if (this.root) {\n return;\n }\n ;\n ;\n new i(\"/ajax/photos/snowlift/init.php\").setAllowCrossPageTransition(true).setMethod(\"GET\").setReadOnly(true).send();\n },\n init: function(hb, ib) {\n this.init = ua;\n this.showHover = ib.pivot_hover;\n ba.setEndMetrics(ib.pivot_end_metric);\n this.enableSnowliftProfilePicCropper = ib.snowlift_profile_pic_cropper;\n this.pagersOnKeyboardNav = ib.pagers_on_keyboard_nav;\n this.hilitAllTagsAndBoxesOnHover = ib.snowlift_hover_shows_all_tags_and_faces;\n this.fullscreen = r.isSupported();\n this.showOGVideos = ib.og_videos;\n this.resizeCommentsForAds = ib.resize_comments_for_ads;\n if (this.resizeCommentsForAds) {\n gb.STAGE_MIN.y = 600;\n }\n ;\n ;\n this.stageMax = gb.STAGE_HIRES_MAX;\n this.spotlight = hb;\n this.spotlight.subscribe(\"JSBNG__blur\", function() {\n this.closingAction = ba.OUTSIDE;\n }.bind(this));\n this.spotlight.subscribe(\"hide\", xa(this.closeHandler, this));\n this.spotlight.subscribe(\"key\", this.keyHandler.bind(this));\n this.initializeNodes(this.spotlight.getRoot());\n ca.init(this.sideAdUnit, this, ib, this.adsDisplayedCallback.bind(this));\n this.inAdsDisplayedCallback = false;\n this.lastAdsHeight = ((this.resizeCommentsForAds ? gb.RESERVED_ADS_HEIGHT : 0));\n if (!this.subscription) {\n w.registerHandler(this.handleNavigateAway.bind(this));\n this.subscription = g.subscribe(\"PhotoSnowlift.GO\", function(jb, kb) {\n this.openExplicitly = true;\n ((this.loading && m.removeClass(this.loading, \"loading\")));\n this.open(kb);\n }.bind(this));\n }\n ;\n ;\n this.transitionHandlerRegistered = false;\n this.returningToStart = false;\n y.registerHandler(this.openHandler.bind(this));\n this.openHandlerRegistered = true;\n g.subscribe(\"PhotoTagApproval.HILITE_TAG\", this.onHiliteTag.bind(this));\n g.subscribe(\"PhotoTagApproval.UPDATE_TAG_BOX\", this.onUpdateTagBox.bind(this));\n if (this.fullscreen) {\n r.subscribe(\"changed\", this.onFullScreenChange.bind(this));\n }\n ;\n ;\n this.redesign = ib.snowlift_redesign;\n },\n onFullScreenChange: function() {\n var hb = r.isFullScreen();\n m.conditionClass(JSBNG__document.body, \"fbPhotoSnowliftFullScreenMode\", hb);\n if (hb) {\n if (!m.hasClass(this.root, \"fbPhotoSnowliftEditMode\")) {\n this.collapseRHC();\n }\n ;\n ;\n var ib = this.stream.getCurrentImageData();\n if (((((((ib && ib.url)) && ((this.image.src !== ib.url)))) && this.shouldShowHiRes(ib)))) {\n this.switchImage(ib.url);\n }\n ;\n ;\n this.adjustForResize();\n }\n else {\n this.uncollapseRHC();\n if (((ma.chrome() && !m.hasClass(this.root, \"fbPhotoSnowliftEditMode\")))) {\n this.page(0, false);\n }\n ;\n ;\n g.inform(\"reflow\");\n }\n ;\n ;\n ja.hide();\n if (this.cropper) {\n this.cropper.resetPhoto();\n }\n ;\n ;\n },\n initializeNodes: function(hb) {\n this.root = hb;\n this.container = o.JSBNG__find(hb, \"div.fbPhotoSnowliftContainer\");\n this.snowliftPopup = o.JSBNG__find(this.container, \"div.fbPhotoSnowliftPopup\");\n this.rhc = o.JSBNG__find(this.snowliftPopup, \"div.rhc\");\n this.rhcHeader = o.JSBNG__find(this.rhc, \"div.rhcHeader\");\n this.rhcFooter = o.JSBNG__find(this.rhc, \"div.rhcFooter\");\n this.ufiForm = o.JSBNG__find(this.rhc, \"form.fbPhotosSnowliftFeedbackForm\");\n this.ufiInputContainer = o.JSBNG__find(this.rhc, \"div.fbPhotosSnowboxFeedbackInput\");\n this.scroller = o.JSBNG__find(this.ufiForm, \"div.rhcScroller\");\n this.scrollerBody = o.JSBNG__find(this.scroller, \"div.uiScrollableAreaBody\");\n this.stageWrapper = o.JSBNG__find(this.snowliftPopup, \"div.stageWrapper\");\n this.overlay = o.JSBNG__find(this.snowliftPopup, \"div.snowliftOverlay\");\n this.errorBox = o.JSBNG__find(this.stageWrapper, \"div.stageError\");\n this.image = o.JSBNG__find(this.stageWrapper, \"img.spotlight\");\n this.stage = o.JSBNG__find(this.stageWrapper, \"div.stage\");\n this.videoStage = o.JSBNG__find(this.stageWrapper, \"div.videoStage\");\n this.prevPager = o.JSBNG__find(this.snowliftPopup, \"a.snowliftPager.prev\");\n this.nextPager = o.JSBNG__find(this.snowliftPopup, \"a.snowliftPager.next\");\n this.stageActions = o.JSBNG__find(hb, \"div.stageActions\");\n this.buttonActions = o.JSBNG__find(this.stageActions, \"div.fbPhotosPhotoButtons\");\n this.productMetadata = o.scry(this.rhc, \"div.fbPhotosSnowliftProductMetadata\").pop();\n this.sideAdUnit = o.JSBNG__find(hb, \".-cx-PUBLIC-snowliftAds__root\");\n g.inform(\"Amoeba/instrumentMulti\", [[this.container,\"snowlift\",],[this.rhc,\"rhc\",],[this.rhcHeader,\"rhc_header\",],[this.ufiForm,\"ufi_form\",],[this.ufiInputContainer,\"ufi_input\",],[this.prevPager,\"prev_pager\",],[this.nextPager,\"next_pager\",],[this.stageActions,\"stage_actions\",],[this.sideAdUnit,\"side_ads\",],], g.BEHAVIOR_PERSISTENT);\n m.conditionClass(this.root, \"fullScreenAvailable\", this.fullscreen);\n },\n initializeScroller: function() {\n this.initializeScroller = ua;\n this.scrollableArea = ha.fromNative(this.scroller, {\n fade: true,\n persistent: true\n });\n var hb = function(JSBNG__event) {\n var ib = q.$E(JSBNG__event).getTarget();\n if (o.contains(this.ufiInputContainer, ib)) {\n var jb = p.getInstance(ib);\n if (jb) {\n this.scrollableArea.scrollToBottom();\n var kb = jb.subscribe(\"resize\", function() {\n var mb = this.scrollableArea.isScrolledToBottom();\n this.adjustScroller();\n ((mb && this.scrollableArea.scrollToBottom()));\n }.bind(this)), lb = q.listen(ib, \"JSBNG__blur\", function() {\n jb.unsubscribe(kb);\n lb.remove();\n });\n }\n ;\n ;\n }\n ;\n ;\n }.bind(this);\n g.subscribe(\"ufi/changed\", function(ib, jb) {\n if (((this.ufiForm === jb.form))) {\n this.adjustScrollerIfNecessary();\n }\n ;\n ;\n }.bind(this));\n g.subscribe(\"ufi/comment\", function(ib, jb) {\n if (((this.ufiForm === jb.form))) {\n this.adjustScrollerIfNecessary();\n if (jb.isranked) {\n this.scrollableArea.scrollToTop();\n }\n else this.scrollableArea.scrollToBottom();\n ;\n ;\n }\n ;\n ;\n }.bind(this));\n q.listen(this.rhc, \"click\", function(JSBNG__event) {\n var ib = JSBNG__event.getTarget();\n if (((((z.byTag(ib, \"a\") || z.byTag(ib, \"button\"))) || o.isNodeOfType(ib, \"input\")))) {\n this.adjustScrollerIfNecessary();\n }\n ;\n ;\n }.bind(this));\n g.subscribe([\"reflow\",\"CommentUFI.Pager\",], function() {\n if (this.isOpen) {\n this.adjustScrollerIfNecessary();\n }\n ;\n ;\n }.bind(this));\n q.listen(this.ufiForm, \"focusin\", hb);\n },\n openHandler: function(hb) {\n if (((((((((((this.isOpen || ((hb.getPath() != \"/photo.php\")))) || this.returningToStart)) || hb.getQueryData().closeTheater)) || hb.getQueryData().permPage)) || hb.getQueryData().makeprofile))) {\n this.openHandlerRegistered = false;\n return false;\n }\n ;\n ;\n this.open(hb);\n this._uriStack.push(la(hb).getQualifiedURI().toString());\n y.transitionComplete(true);\n return true;\n },\n getImageSrc: function(hb) {\n if (hb.smallsrc) {\n if (!hb.size) {\n return hb.smallsrc;\n }\n ;\n ;\n var ib = na.deserialize(hb.size), jb = this.getStageSize(ib);\n if (((((jb.x <= gb.STAGE_NORMAL_MAX.x)) && ((jb.y <= gb.STAGE_NORMAL_MAX.y))))) {\n return hb.smallsrc;\n }\n ;\n ;\n }\n ;\n ;\n return hb.src;\n },\n open: function(hb) {\n var ib = la(hb).getQueryData(), jb = this.getImageSrc(ib);\n if (jb) {\n delete ib.src;\n delete ib.smallsrc;\n }\n ;\n ;\n if (this.resetUriStack) {\n this._uriStack = [];\n }\n ;\n ;\n if (!this.initialLoad) {\n ib.firstLoad = true;\n this.initialLoad = true;\n }\n ;\n ;\n this.sessionID = JSBNG__Date.now();\n this.sessionPhotosHilited = {\n };\n this.loadQuery = ra(ib, {\n ssid: this.sessionID\n });\n this.isOpen = true;\n this.pagersShown = false;\n this.refreshOnClose = false;\n this.hilitedTag = null;\n this.loadingStates = {\n image: false,\n html: false\n };\n this.replaceUrl = false;\n this.source = null;\n this.saveTagSubscription = g.subscribe(\"PhotoTagger.SAVE_TAG\", this.onTagSaved.bind(this));\n this.taggedPhotoIds = [];\n this.stream = new da();\n this.stream.init(aa.VIEWER_SNOWLIFT, \"PhotoViewerPagelet\", \"pagelet_photo_viewer\");\n this.fetchInitialData();\n this.setLoadingState(gb.STATE_HTML, true);\n this.rhcCollapsed = false;\n this._open(hb, jb);\n if (this.enableSnowliftProfilePicCropper) {\n j.loadModules([\"SnowliftPicCropper\",], function(kb) {\n this.cropper = kb.getInstance(this);\n this.cropper.init();\n if (this.enableCropperOnInit) {\n var lb = g.subscribe(\"PhotoSnowlift.SWITCH_IMAGE\", function() {\n if (this.isInProfilePicAlbum) {\n this.cropper.showPicInProfileAlbumDialog();\n }\n else this.cropper.enableCropping(this.isUserProfilePic);\n ;\n ;\n g.unsubscribe(lb);\n }.bind(this));\n this.enableCropperOnInit = false;\n }\n ;\n ;\n }.bind(this));\n }\n ;\n ;\n j.loadModules([\"PhotosButtonTooltips\",], function(kb) {\n kb.init();\n });\n },\n _open: function(hb, ib) {\n this.createLoader(ib);\n this.spotlight.show();\n ((this.ua && this.ua.add_event(\"frame\")));\n g.inform(\"layer_shown\", {\n type: \"PhotoSnowlift\"\n });\n g.inform(\"PhotoSnowlift.OPEN\");\n this.stageHandlers = [q.listen(window, \"resize\", this.adjustForResize.bind(this)),q.listen(this.stageWrapper, \"click\", this.buttonListener.bind(this)),q.listen(this.stageWrapper, \"mouseleave\", function(JSBNG__event) {\n var lb = JSBNG__event.getTarget();\n if (!((((((((((((z.byClass(lb, \"snowliftOverlay\") || z.byClass(lb, \"fbPhotoSnowliftTagApproval\"))) || z.byClass(lb, \"tagPointer\"))) || z.byClass(lb, \"arrow\"))) || z.byClass(lb, \"faceboxSuggestion\"))) || z.byClass(lb, \"typeaheadWrapper\"))) || z.byClass(lb, \"photoTagTypeahead\")))) {\n this.unhiliteAllTags();\n }\n ;\n ;\n this.hidePagers();\n }.bind(this)),q.listen(this.stageWrapper, \"mousemove\", this.hilitePagerOnMouseMove.bind(this)),q.listen(this.stageWrapper, \"mousemove\", this.hiliteTagsOnMouseMove.bind(this)),q.listen(this.overlay, \"mouseenter\", this.unhiliteAllTags.bind(this)),];\n this.stageHandlers.push(q.listen(this.container, \"click\", function(JSBNG__event) {\n var lb = JSBNG__event.getTarget();\n if (z.byClass(lb, \"rotateRight\")) {\n this.rotate(\"right\");\n }\n else if (z.byClass(lb, \"rotateLeft\")) {\n this.rotate(\"left\");\n }\n else if (z.byClass(lb, \"closeTheater\")) {\n if (r.isFullScreen()) {\n r.toggleFullScreen();\n return;\n }\n ;\n ;\n this.closingAction = ba.X;\n this.closeHandler();\n return false;\n }\n else if (this.fullscreen) {\n if (z.byClass(lb, \"fbPhotoSnowliftFullScreen\")) {\n this.toggleFullScreen();\n }\n else if (z.byClass(lb, \"fbPhotoSnowliftCollapse\")) {\n this.toggleCollapse();\n }\n \n ;\n }\n \n \n \n ;\n ;\n }.bind(this)));\n var jb = va(\"fbPhotoSnowliftFeedback\");\n if (jb) {\n this.stageHandlers.push(q.listen(jb, \"click\", function(JSBNG__event) {\n var lb = JSBNG__event.getTarget();\n if (((z.byClass(lb, \"like_link\") || ((z.byClass(lb, \"UFILikeLink\") && z.byClass(lb, \"UIActionLinks\")))))) {\n this.toggleLikeButton();\n }\n ;\n ;\n var mb = z.byClass(JSBNG__event.getTarget(), \"uiUfiCollapsedComment\");\n if (mb) {\n m.addClass(mb, \"uiUfiCollapsedCommentToggle\");\n }\n ;\n ;\n }.bind(this)));\n }\n ;\n ;\n var kb = va(\"fbPhotoSnowliftOnProfile\");\n if (kb) {\n this.stageHandlers.push(q.listen(kb, \"click\", function(JSBNG__event) {\n if (z.byClass(JSBNG__event.getTarget(), \"fbPhotoRemoveFromProfileLink\")) {\n this.refreshOnClose = true;\n }\n ;\n ;\n }.bind(this)));\n }\n ;\n ;\n if (this.resetUriStack) {\n this.startingURI = la.getMostRecentURI().addQueryData({\n closeTheater: 1\n }).getUnqualifiedURI();\n }\n ;\n ;\n if (!ib) {\n this.setLoadingState(gb.STATE_IMAGE_DATA, true);\n }\n ;\n ;\n if (!this.transitionHandlerRegistered) {\n y.registerHandler(this.transitionHandler.bind(this));\n this.transitionHandlerRegistered = true;\n }\n ;\n ;\n ba.initLogging(ba.SNOWLIFT);\n if (this.pivots) {\n ba.setRelevantCount(this.pivots.relevantCount);\n }\n ;\n ;\n },\n toggleFullScreen: function() {\n var hb = r.toggleFullScreen(JSBNG__document.documentElement);\n if (hb) {\n var ib = this.stream.getCurrentImageData();\n if (((((((ib && ib.url)) && ((this.image.src !== ib.url)))) && this.shouldShowHiRes(ib)))) {\n (new JSBNG__Image()).src = ib.url;\n }\n ;\n ;\n ba.logEnterFullScreen(this.stream.getCursor());\n }\n ;\n ;\n },\n getStream: function() {\n return this.stream;\n },\n fetchInitialData: function() {\n ((this.ua && this.ua.add_event(\"init_data\")));\n this.stream.waitForInitData();\n var hb = l(this.container, [\"ft\",]);\n if (((((((hb && hb.ft)) && hb.ft.ei)) && this.loadQuery))) {\n this.loadQuery.ei = hb.ft.ei;\n }\n ;\n ;\n ka.loadFromEndpoint(\"PhotoViewerInitPagelet\", va(\"pagelet_photo_viewer_init\", this.root), this.loadQuery, {\n usePipe: true,\n jsNonblock: true,\n crossPage: true\n });\n },\n toggleCollapse: function() {\n if (this.rhcCollapsed) {\n this.uncollapseRHC();\n }\n else this.collapseRHC();\n ;\n ;\n },\n collapseRHC: function() {\n this.rhcCollapsed = true;\n m.addClass(this.root, \"collapseRHC\");\n this.adjustForResize();\n },\n uncollapseRHC: function() {\n this.rhcCollapsed = false;\n m.removeClass(this.root, \"collapseRHC\");\n this.adjustForResize();\n },\n closeHandler: function() {\n if (!this.isOpen) {\n return;\n }\n ;\n ;\n this.closingAction = ((this.closingAction || ba.ESC));\n if (((la.getMostRecentURI().addQueryData({\n closeTheater: 1\n }).getUnqualifiedURI().toString() == this.startingURI.toString()))) {\n this.close();\n return;\n }\n ;\n ;\n this.returnToStartingURI(this.refreshOnClose);\n this.close();\n },\n returnToStartingURI: function(hb, ib) {\n if (!hb) {\n if (ib) {\n this.squashNextTransition(wa.curry(ib));\n }\n else this.squashNextTransition();\n ;\n }\n ;\n ;\n this.returningToStart = true;\n var jb = g.subscribe(\"page_transition\", (function() {\n this.returningToStart = false;\n jb.unsubscribe();\n }).bind(this)), kb = ((hb || isNaN(ma.JSBNG__opera()))), lb = this._uriStack.length;\n if (((kb && ((lb < window.JSBNG__history.length))))) {\n window.JSBNG__history.go(-lb);\n }\n else {\n var mb = this.startingURI, nb = new la(mb).removeQueryData(\"closeTheater\");\n if (((((mb.getQueryData().sk == \"approve\")) && ((mb.getPath() == \"/profile.php\"))))) {\n nb.removeQueryData(\"highlight\");\n nb.removeQueryData(\"notif_t\");\n }\n ;\n ;\n wa(nb);\n }\n ;\n ;\n },\n squashNextTransition: function(hb) {\n this.squashNext = true;\n y.registerHandler(function ib() {\n if (this.squashNext) {\n this.squashNext = false;\n if (hb) {\n hb.defer();\n }\n ;\n ;\n y.transitionComplete(true);\n return true;\n }\n ;\n ;\n return false;\n }.bind(this), 7);\n },\n handleNavigateAway: function(hb) {\n var ib = qa(y._most_recent_uri.getQualifiedURI(), hb.getAttribute(\"href\"));\n if (((this.isOpen && ya(ib.getPath(), \"/hashtag/\")))) {\n this.close();\n y.transitionComplete(true);\n this.squashNextTransition();\n y.go(this.startingURI);\n return true;\n }\n ;\n ;\n if (((((((this.isOpen && ((ib instanceof la)))) && ((ib.getUnqualifiedURI().toString() != this.startingURI.toString())))) && ((ib.getPath() != \"/photo.php\"))))) {\n if (!this.closingAction) {\n this.closingAction = ba.NAVIGATE;\n }\n ;\n ;\n this.returnToStartingURI(false, ib);\n this.close();\n return false;\n }\n ;\n ;\n return true;\n },\n postProcessTaggedPhotos: function() {\n if (((this.taggedPhotoIds && ((this.taggedPhotoIds.length > 0))))) {\n var hb = null;\n if (((this.source === gb.COLLECTIONS_UNTAGGED_PHOTOS))) {\n hb = \"/ajax/photos/photo/edit/skiptag/\";\n }\n else if (((this.source === gb.PHOTOS_OF_YOU_SUGGESTIONS))) {\n hb = \"/ajax/photos/photo/add_to_star_grid/\";\n }\n \n ;\n ;\n if (hb) {\n new i().setURI(hb).setAllowCrossPageTransition(true).setData({\n media_id: this.taggedPhotoIds\n }).send();\n }\n ;\n ;\n }\n ;\n ;\n },\n onTagSaved: function(hb, ib) {\n if (this.taggedPhotoIds) {\n if (((((this.source === gb.PHOTOS_OF_YOU_SUGGESTIONS)) && !ib.self_tag))) {\n return;\n }\n ;\n ;\n this.taggedPhotoIds.push(ib.photo_fbid);\n }\n ;\n ;\n },\n close: function() {\n if (!this.isOpen) {\n return;\n }\n ;\n ;\n this.isOpen = false;\n if (this.fullscreen) {\n r.disableFullScreen();\n }\n ;\n ;\n ab(\"snowlift\").uai(\"close\");\n ((this.cropper && this.cropper.disableCropping()));\n this.spotlight.hide();\n this.openExplicitly = false;\n this.postProcessTaggedPhotos();\n g.unsubscribe(this.saveTagSubscription);\n this.taggedPhotoIds = [];\n this.closeDirty = true;\n this.closeCleanup.bind(this).defer();\n },\n closeCleanup: function() {\n this.closeDirty = false;\n m.removeClass(this.root, \"dataLoading\");\n ba.logPhotoViews(this.closingAction);\n this.destroy();\n m.hide(this.errorBox);\n m.hide(this.image);\n this.currentImageSize = null;\n this.thumbSrc = null;\n this.shouldStretch = false;\n this.resetUriStack = true;\n m.removeClass(this.stageWrapper, \"showVideo\");\n o.empty(this.videoStage);\n this.uncollapseRHC();\n this.currentMinSize = null;\n this.rhcMinHeight = null;\n this.setStagePagersState(\"reset\");\n this.recacheData();\n o.empty(this.sideAdUnit);\n this.stream.destroy();\n var hb = ((this.closingAction === ba.NAVIGATE));\n this.closingAction = null;\n if (!this.openHandlerRegistered) {\n y.registerHandler(this.openHandler.bind(this));\n this.openHandlerRegistered = true;\n }\n ;\n ;\n g.inform(\"layer_hidden\", {\n type: \"PhotoSnowlift\"\n });\n g.inform(\"PhotoSnowlift.CLOSE\", hb);\n this.root.setAttribute(\"aria-busy\", \"true\");\n },\n createLoader: function(hb) {\n if (((this.currentImageSize === null))) {\n this.adjustStageSize(gb.STAGE_MIN);\n }\n else {\n var ib = this.getStageSize(this.currentImageSize);\n ib = new na(Math.max(ib.x, gb.STAGE_MIN.x), Math.max(ib.y, gb.STAGE_MIN.y));\n var jb = this.getImageSizeInStage(this.currentImageSize, ib);\n if (((this.thumbSrc === null))) {\n this.adjustStageSize(jb);\n }\n else this.useImage(o.create(\"img\", {\n className: \"spotlight\",\n alt: \"\",\n src: this.thumbSrc,\n style: {\n width: ((jb.x + \"px\")),\n height: ((jb.y + \"px\"))\n }\n }), jb, false);\n ;\n ;\n }\n ;\n ;\n this.setLoadingState(this.STATE_IMAGE_PIXELS, true);\n if (hb) {\n (function() {\n var kb = new JSBNG__Image(), lb = q.listen(kb, \"load\", pa(function() {\n if (!this.isOpen) {\n return;\n }\n ;\n ;\n if (((!this.stream || !this.stream.errorInCurrent()))) {\n this.switchImage(hb, this.currentImageSize);\n ((this.ua && this.ua.add_event(\"image\")));\n this.setLoadingState(gb.STATE_IMAGE_DATA, false);\n }\n ;\n ;\n }.bind(this), \"photo_theater\"));\n g.subscribeOnce(\"PhotoSnowlift.PAGE\", lb.remove.bind(lb));\n kb.src = hb;\n }).bind(this).defer();\n }\n ;\n ;\n m.hide(this.stageActions);\n this.setStagePagersState(\"disabled\");\n },\n initDataFetched: function(hb) {\n ba.setPhotoSet(this.stream.getPhotoSet());\n ba.setLogFbids(hb.logids);\n var ib = this.stream.getCurrentImageData();\n ba.addPhotoView(ib.info, this.shouldShowHiRes(ib), ((this.fullscreen && r.isFullScreen())));\n var jb = this.stream.getCurrentExtraData();\n if (((jb && ((jb.source !== undefined))))) {\n this.source = parseInt(jb.source, 10);\n ba.setSource(this.source);\n }\n ;\n ;\n if (!this.pageHandlers) {\n this.pageHandlers = [q.listen(this.root, \"click\", this.pageListener.bind(this)),q.listen(this.root, \"mouseleave\", this.mouseLeaveListener.bind(this)),];\n }\n ;\n ;\n m.show(this.stageActions);\n this.root.setAttribute(\"aria-busy\", \"false\");\n this.isLoggedInViewer = hb.loggedin;\n this.disableAdsForSession = ((hb.disablesessionads || !this.isLoggedInViewer));\n this.showFlashTags = !!hb.flashtags;\n this.disableAds = ((this.disableAdsForSession || hb.fromad));\n this.loadAds();\n },\n adjustScrollerIfNecessary: function() {\n JSBNG__clearTimeout(this.scrollerTimeout);\n this.scrollerTimeout = this.adjustScroller.bind(this).defer();\n },\n adjustScroller: function(hb) {\n JSBNG__clearTimeout(this.scrollerTimeout);\n this.initializeScroller();\n this.scrollableArea.resize();\n var ib = na.getElementDimensions(this.rhc), jb = ib.y;\n jb -= na.getElementDimensions(this.rhcHeader).y;\n jb -= na.getElementDimensions(this.ufiInputContainer).y;\n if (this.productMetadata) {\n var kb = na.getElementDimensions(this.productMetadata);\n if (((kb.x !== 0))) {\n jb -= kb.y;\n }\n ;\n ;\n }\n ;\n ;\n if (((hb == null))) {\n hb = ((this.resizeCommentsForAds ? this.lastAdsHeight : 0));\n }\n ;\n ;\n this.lastAdsHeight = hb;\n this.rhcMinHeight = ((ib.y - ((jb - gb.MIN_UFI_HEIGHT))));\n jb = Math.max(0, jb);\n var lb = na.getElementDimensions(this.scrollerBody).y, mb = Math.max(gb.MIN_UFI_HEIGHT, ((jb - hb)));\n if (((lb >= mb))) {\n ia.set(this.scroller, \"height\", ((mb + \"px\")));\n if (((jb > mb))) {\n m.removeClass(this.rhc, \"pinnedUfi\");\n jb -= mb;\n }\n else {\n m.addClass(this.rhc, \"pinnedUfi\");\n jb = 0;\n }\n ;\n ;\n }\n else {\n ia.set(this.scroller, \"height\", \"auto\");\n m.removeClass(this.rhc, \"pinnedUfi\");\n jb -= lb;\n }\n ;\n ;\n var nb = o.scry(this.ufiInputContainer, \"li.UFIAddComment\");\n if (((nb.length !== 0))) {\n var ob = o.scry(this.scrollerBody, \"li.UFIComment.display\");\n if (((ob.length === 0))) {\n m.addClass(nb[0], \"UFIFirstComponent\");\n }\n else m.removeClass(nb[0], \"UFIFirstComponent\");\n ;\n ;\n }\n ;\n ;\n var pb = na.getElementDimensions(this.ufiInputContainer).y;\n ia.set(this.ufiForm, \"padding-bottom\", ((pb + \"px\")));\n ca.resize(new na(ib.x, jb));\n this.scrollableArea.adjustGripper();\n },\n adjustForResize: function() {\n this.currentMinSize = null;\n this.adjustStageSize();\n this.adjustForNewData();\n },\n shouldShowHiRes: function(hb) {\n if (((!hb || !hb.smallurl))) {\n return false;\n }\n ;\n ;\n var ib = this.getStageSize(hb.dimensions), jb = this.getImageSizeInStage(hb.dimensions, ib);\n return ((((jb.x > gb.STAGE_NORMAL_MAX.x)) || ((jb.y > gb.STAGE_NORMAL_MAX.y))));\n },\n getImageURL: function(hb) {\n if (hb.video) {\n return null;\n }\n else if (((hb.smallurl && !this.shouldShowHiRes(hb)))) {\n return hb.smallurl;\n }\n \n ;\n ;\n return hb.url;\n },\n getImageDimensions: function(hb) {\n if (((hb.smalldims && ((!this.shouldShowHiRes(hb) || ((this.image.src === hb.smallurl))))))) {\n return hb.smalldims;\n }\n ;\n ;\n return hb.dimensions;\n },\n getStageSize: function(hb, ib) {\n var jb = na.getViewportDimensions(), kb = new na(hb.x, hb.y);\n if (ib) {\n kb = new na(Math.max(hb.x, ib.x), Math.max(hb.y, ib.y));\n }\n ;\n ;\n var lb, mb;\n if (((this.fullscreen && r.isFullScreen()))) {\n return new na(((this.rhcCollapsed ? JSBNG__screen.width : ((JSBNG__screen.width - gb.SIDEBAR_SIZE_MAX)))), ((JSBNG__screen.height - ((gb.FULL_SCREEN_PADDING * 2)))));\n }\n else {\n lb = Math.min(kb.x, this.stageMax.x, ((((jb.x - gb.SIDEBAR_SIZE_MAX)) - gb.STAGE_CHROME.x)));\n mb = Math.min(kb.y, this.stageMax.y, ((jb.y - gb.STAGE_CHROME.y)));\n }\n ;\n ;\n if (((((lb === 0)) && ((mb === 0))))) {\n return new na(0, 0);\n }\n ;\n ;\n var nb = ((lb / mb)), ob = ((kb.x / kb.y));\n if (((nb < ob))) {\n return new na(lb, Math.round(((lb / ob))));\n }\n ;\n ;\n return new na(Math.round(((mb * ob))), mb);\n },\n getImageSizeInStage: function(hb, ib) {\n var jb = hb.x, kb = hb.y;\n if (((((jb >= ib.x)) || ((kb >= ib.y))))) {\n var lb = ((ib.x / ib.y)), mb = ((jb / kb));\n if (((lb < mb))) {\n jb = ib.x;\n kb = Math.round(((jb / mb)));\n }\n else if (((lb > mb))) {\n kb = ib.y;\n jb = Math.round(((kb * mb)));\n }\n else {\n jb = ib.x;\n kb = ib.y;\n }\n \n ;\n ;\n }\n ;\n ;\n return new na(jb, kb);\n },\n adjustStageSize: function(hb) {\n var ib = this.currentImageSize;\n if (hb) {\n ib = hb;\n }\n else {\n var jb = ((this.stream && this.stream.getCurrentImageData()));\n if (jb) {\n ib = this.getImageDimensions(jb);\n }\n ;\n ;\n }\n ;\n ;\n if (!ib) {\n return;\n }\n ;\n ;\n this.currentImageSize = ib;\n var kb = 0;\n if (((((((((this.shouldStretch && !this.getVideoOnStage())) && ((ib.x > ib.y)))) && ((ib.x <= gb.TIMELINE_STRETCH_WIDTH)))) && ((ib.x >= gb.TIMELINE_STRETCH_MIN))))) {\n ib.y = Math.round(((((ib.y * gb.TIMELINE_STRETCH_WIDTH)) / ib.x)));\n ib.x = gb.TIMELINE_STRETCH_WIDTH;\n }\n else if (this.getVideoOnStage()) {\n kb = ((gb.VIDEO_BOTTOM_BAR_SPACE * 2));\n }\n \n ;\n ;\n var lb = this.getStageSize(ib, this.currentMinSize);\n if (!this.currentMinSize) {\n this.currentMinSize = new na(0, 0);\n }\n ;\n ;\n if (!this.rhcMinHeight) {\n this.rhcMinHeight = 0;\n }\n ;\n ;\n this.currentMinSize = new na(Math.max(lb.x, gb.STAGE_MIN.x, this.currentMinSize.x), Math.max(lb.y, gb.STAGE_MIN.y, this.currentMinSize.y));\n var mb = this.getImageSizeInStage(ib, this.currentMinSize), nb = ((this.currentMinSize.x - mb.x)), ob = ((this.currentMinSize.y - mb.y));\n if (((((nb > 0)) && ((nb < gb.PADDING_MIN))))) {\n this.currentMinSize.x -= nb;\n }\n else if (((((ob > 0)) && ((ob < gb.PADDING_MIN))))) {\n this.currentMinSize.y -= ob;\n }\n \n ;\n ;\n var pb = o.scry(this.productMetadata, \"#fbPhotoSnowliftTaggedProducts .taggee\");\n if (pb.length) {\n this.currentMinSize.y = Math.max(this.currentMinSize.y, this.rhcMinHeight);\n }\n ;\n ;\n var qb = ((this.currentMinSize.x + gb.SIDEBAR_SIZE_MAX));\n if (this.rhcCollapsed) {\n qb = this.currentMinSize.x;\n }\n ;\n ;\n this.snowliftPopup.style.cssText = ((((((((((\"width:\" + qb)) + \"px;\")) + \"height:\")) + this.currentMinSize.y)) + \"px;\"));\n var rb = ((((this.currentMinSize.y - kb)) + \"px\"));\n if (((ma.firefox() || ((ma.ie() < 8))))) {\n var sb = ia.get(this.stageWrapper, \"font-size\");\n if (((ma.ie() && ((sb.indexOf(\"px\") < 0))))) {\n var tb = o.create(\"div\");\n tb.style.fontSize = sb;\n tb.style.height = \"1em\";\n sb = tb.style.pixelHeight;\n }\n ;\n ;\n rb = ((((((this.currentMinSize.y - kb)) / parseFloat(sb))) + \"em\"));\n }\n ;\n ;\n this.stageWrapper.style.cssText = ((((((((((\"width:\" + this.currentMinSize.x)) + \"px;\")) + \"line-height:\")) + rb)) + \";\"));\n if (((ma.ie() < 8))) {\n ia.set(this.root, \"height\", ((na.getViewportDimensions().y + \"px\")));\n ia.set(this.container, \"min-height\", ((((this.currentMinSize.y + gb.STAGE_CHROME.y)) + \"px\")));\n }\n ;\n ;\n this.image.style.cssText = ((((((((((\"width:\" + mb.x)) + \"px;\")) + \"height:\")) + mb.y)) + \"px;\"));\n var ub = this.getTagger();\n if (ub) {\n ub.repositionTagger();\n }\n ;\n ;\n this.adjustScrollerIfNecessary();\n },\n adjustForNewData: function() {\n if (!this.image) {\n return;\n }\n ;\n ;\n var hb = o.scry(this.stage, \"div.tagsWrapper\")[0], ib = na.getElementDimensions(this.image);\n if (hb) {\n ia.set(hb, \"width\", ((ib.x + \"px\")));\n ia.set(hb, \"height\", ((ib.y + \"px\")));\n if (((ma.ie() <= 7))) {\n var jb = o.scry(this.root, \"div.tagContainer\")[0];\n if (jb) {\n m.conditionClass(hb, \"ie7VerticalFix\", ((na.getElementDimensions(jb).y > ib.y)));\n }\n ;\n ;\n }\n ;\n ;\n }\n ;\n ;\n },\n adsDisplayedCallback: function(hb, ib) {\n var jb = ((((((((this.resizeCommentsForAds && !this.inAdsDisplayedCallback)) && !this.disableAds)) && ((gb.MIN_ADS_VISIBLE > 0)))) && ((ib.length >= gb.MIN_ADS_VISIBLE))));\n if (jb) {\n var kb = ib[((gb.MIN_ADS_VISIBLE - 1))], lb = ((((hb < gb.MIN_ADS_VISIBLE)) || ((kb != gb.RESERVED_ADS_HEIGHT))));\n if (lb) {\n this.inAdsDisplayedCallback = true;\n this.adjustScroller(kb);\n this.inAdsDisplayedCallback = false;\n }\n ;\n ;\n }\n ;\n ;\n },\n setLoadingState: function(hb, ib) {\n switch (hb) {\n case gb.STATE_IMAGE_PIXELS:\n m.conditionClass(this.root, \"imagePixelsLoading\", ib);\n break;\n case gb.STATE_IMAGE_DATA:\n this.loadingStates[hb] = ib;\n m.conditionClass(this.root, \"imageLoading\", ib);\n break;\n case gb.STATE_HTML:\n this.loadingStates[hb] = ib;\n m.conditionClass(this.root, \"dataLoading\", ib);\n this.rhc.setAttribute(\"aria-busy\", ((ib ? \"true\" : \"false\")));\n break;\n };\n ;\n },\n destroy: function() {\n this.stageHandlers.forEach(function(hb) {\n hb.remove();\n });\n if (this.pageHandlers) {\n this.pageHandlers.forEach(function(hb) {\n hb.remove();\n });\n this.pageHandlers = null;\n }\n ;\n ;\n },\n checkState: function(hb) {\n if (((((hb != gb.STATE_ERROR)) && !this.loadingStates[hb]))) {\n return;\n }\n ;\n ;\n switch (hb) {\n case gb.STATE_IMAGE_DATA:\n var ib = this.stream.getCurrentImageData();\n if (ib) {\n var jb = this.getImageURL(ib);\n if (jb) {\n this.switchImage(jb, null, true);\n }\n else if (ib.video) {\n this.switchVideo(ib.video, true);\n }\n \n ;\n ;\n this.setLoadingState(hb, false);\n }\n ;\n ;\n break;\n case gb.STATE_HTML:\n if (this.stream.getCurrentHtml()) {\n this.swapData();\n this.showPagers(gb.PAGER_FADE);\n this.setLoadingState(hb, false);\n }\n ;\n ;\n break;\n default:\n if (this.stream.errorInCurrent()) {\n m.hide(this.image);\n m.show(this.errorBox);\n }\n ;\n ;\n break;\n };\n ;\n },\n buttonListener: function(JSBNG__event) {\n var hb = JSBNG__event.getTarget(), ib = JSBNG__Date.now();\n if (z.byClass(hb, \"fbPhotoTagApprovalBox\")) {\n return;\n }\n ;\n ;\n if (z.byClass(hb, \"fbPhotosCornerWantButton\")) {\n JSBNG__event.JSBNG__stop();\n return;\n }\n ;\n ;\n if (((((ib - this.lastPage)) < 350))) {\n return;\n }\n ;\n ;\n if (z.byClass(hb, \"fbPhotosPhotoLike\")) {\n this.likePhoto();\n }\n else if (z.byClass(hb, \"tagApproveIgnore\")) {\n this.updateTagBox(JSBNG__event, hb);\n }\n \n ;\n ;\n },\n likePhoto: function() {\n ba.addButtonLike();\n var hb = oa(\"fbPhotoSnowliftFeedback\"), ib = o.scry(hb, \"button.like_link\")[0];\n if (!ib) {\n if (this.redesign) {\n ib = o.scry(this.root, \"a.-cx-PUBLIC-fbEntstreamCollapsedUFI__likelink\")[0];\n }\n else ib = o.scry(hb, \"a.UFILikeLink\")[0];\n ;\n }\n ;\n ;\n var jb = ib.getAttribute(\"href\");\n if (r.isFullScreen()) {\n if (ma.chrome()) {\n ib.setAttribute(\"href\", \"javascript:;\");\n }\n ;\n }\n ;\n ;\n ib.click();\n ib.setAttribute(\"href\", jb);\n },\n toggleLikeButton: function() {\n var hb = o.scry(this.buttonActions, \"a.fbPhotosPhotoLike\")[0];\n if (hb) {\n var ib = o.JSBNG__find(this.root, \".likeCount\"), jb = o.JSBNG__find(ib, \".likeCountNum\");\n if (ib) {\n if (m.hasClass(hb, \"viewerLikesThis\")) {\n o.setContent(jb, ((parseInt(jb.textContent, 10) - 1)));\n }\n else o.setContent(jb, ((parseInt(jb.textContent, 10) + 1)));\n ;\n }\n ;\n ;\n m.toggleClass(hb, \"viewerLikesThis\");\n m.removeClass(hb, \"viewerAlreadyLikedThis\");\n }\n ;\n ;\n },\n likePhotoWithKey: function() {\n if (this.isShowingLikePhotoConfirmation) {\n return;\n }\n ;\n ;\n if (this.skipLikePhotoConfirmation) {\n this.likePhoto();\n }\n else h.send(new i(\"/photos/confirm_like.php\"), function(hb) {\n this.isShowingLikePhotoConfirmation = true;\n hb.subscribe(\"JSBNG__confirm\", this.onCloseLikePhotoConfirmDialog.bind(this));\n hb.subscribe(\"cancel\", this.onCloseLikePhotoConfirmDialog.bind(this));\n }.bind(this));\n ;\n ;\n return false;\n },\n likePhotoSkipConfirmation: function(hb) {\n this.skipLikePhotoConfirmation = hb;\n this.likePhoto();\n },\n onCloseLikePhotoConfirmDialog: function() {\n this.isShowingLikePhotoConfirmation = false;\n },\n updateTagBox: function(hb, ib) {\n this.unhiliteAllTags();\n var jb = va(hb);\n if (!jb) {\n return;\n }\n ;\n ;\n m.addClass(jb, \"tagBox\");\n m.addClass(jb, \"tagBoxPendingResponse\");\n m.removeClass(jb, \"tagBoxPending\");\n m.hide(o.JSBNG__find(jb, \"span.tagForm\"));\n if (ib) {\n m.show(o.JSBNG__find(jb, \"span.tagApproved\"));\n }\n else m.show(o.JSBNG__find(jb, \"span.tagIgnored\"));\n ;\n ;\n },\n rotate: function(hb) {\n var ib = this.stream.getCursor();\n if (this.getVideoOnStage()) {\n var jb = ((((hb == \"left\")) ? 270 : 90));\n bb.isTruthy(this.videoRotateURI, \"Video rotate URI not set.\");\n j.loadModules([\"VideoRotate\",], function(lb) {\n new lb(ib, this.videoRotateURI).motionRotate(jb);\n }.bind(this));\n return;\n }\n ;\n ;\n var kb = ra({\n fbid: ib,\n opaquecursor: this.stream.getOpaqueCursor(ib),\n cs_ver: aa.VIEWER_SNOWLIFT\n }, this.stream.getPhotoSetQuery());\n kb[hb] = 1;\n this.setLoadingState(gb.STATE_IMAGE_DATA, true);\n this.setLoadingState(this.STATE_IMAGE_PIXELS, true);\n m.hide(this.image);\n new i(\"/ajax/photos/photo/rotate/\").setAllowCrossPageTransition(true).setData(kb).setErrorHandler(this.rotationError.bind(this, ib)).setFinallyHandler(this.rotationComplete.bind(this, ib)).setMethod(\"POST\").setReadOnly(false).send();\n },\n rotationComplete: function(hb, ib) {\n if (((hb == this.stream.getCursor()))) {\n this.setLoadingState(gb.STATE_IMAGE_DATA, false);\n this.switchImage(this.getImageURL(this.stream.getCurrentImageData()));\n this.swapData();\n }\n ;\n ;\n },\n rotationError: function(hb, ib) {\n if (((hb == this.stream.getCursor()))) {\n this.setLoadingState(gb.STATE_IMAGE_DATA, false);\n this.switchImage(this.getImageURL(this.stream.getCurrentImageData()));\n j.loadModules([\"AsyncResponse\",], function(jb) {\n jb.defaultErrorHandler(ib);\n });\n }\n ;\n ;\n },\n saveTagsFromPayload: function(hb) {\n this.storeFromData(hb);\n if (((((\"data\" in hb)) && ((this.stream.getCursor() in hb.data))))) {\n this.swapData();\n }\n ;\n ;\n },\n saveEdit: function() {\n if (!m.hasClass(this.root, \"fbPhotoSnowliftEditMode\")) {\n return;\n }\n ;\n ;\n j.loadModules([\"PhotoInlineEditor\",\"Form\",], function(hb, ib) {\n var jb = hb.getInstance(this.getViewerConst());\n ((jb && ib.bootstrap(jb.getForm().controller)));\n }.bind(this));\n },\n mouseLeaveListener: function(JSBNG__event) {\n this.unhiliteAllTags();\n this.reHilitePendingTag();\n },\n hilitePagerOnMouseMove: function(JSBNG__event) {\n var hb = na.getEventPosition(JSBNG__event), ib = na.getElementPosition(this.stage);\n if (x.isRTL()) {\n var jb = na.getElementDimensions(this.stage);\n this.stagePagerPrev = ((((jb.x - ((hb.x - ib.x)))) < gb.GOPREV_AREA));\n }\n else this.stagePagerPrev = ((((hb.x - ib.x)) < gb.GOPREV_AREA));\n ;\n ;\n m.conditionClass(this.prevPager, \"hilightPager\", this.stagePagerPrev);\n m.conditionClass(this.nextPager, \"hilightPager\", !this.stagePagerPrev);\n var kb, lb = JSBNG__event.getTarget();\n if (((((!z.byClass(lb, \"snowliftOverlay\") && !z.byClass(lb, \"bottomBarActions\"))) && !z.byClass(lb, \"snowliftPager\")))) {\n kb = gb.PAGER_FADE;\n }\n ;\n ;\n this.showPagers(kb);\n },\n showPagers: function(hb) {\n JSBNG__clearTimeout(this.fadePagerTimer);\n this.setStagePagersState(\"active\");\n if (((typeof hb !== \"undefined\"))) {\n this.fadePagerTimer = this.hidePagers.bind(this).defer(hb);\n }\n ;\n ;\n },\n hidePagers: function() {\n var hb = o.scry(this.getRoot(), \".fbPhotosPhotoActionsMenu\")[0];\n if (hb) {\n return;\n }\n ;\n ;\n JSBNG__clearTimeout(this.fadePagerTimer);\n this.setStagePagersState(\"inactive\");\n },\n getTagger: function() {\n if (!this.PhotoTagger) {\n return null;\n }\n ;\n ;\n var hb = this.PhotoTagger.getInstance(aa.VIEWER_SNOWLIFT);\n if (((!hb || !hb.tagHoverFacebox))) {\n return null;\n }\n ;\n ;\n return hb;\n },\n hiliteAllBoxes: function() {\n o.scry(this.stage, \"div.tagsWrapper div.faceBox\").forEach(function(hb) {\n m.addClass(hb, \"otherActive\");\n });\n },\n flashAllTags: function() {\n var hb = this.stream.getCurrentImageData().info.fbid;\n if (this.sessionPhotosHilited[hb]) {\n return;\n }\n ;\n ;\n o.scry(this.stage, \"div.tagsWrapper div.tagBox\").forEach(function(ib) {\n m.addClass(ib, \"hover\");\n });\n this.sessionPhotosHilited[hb] = true;\n this.unhiliteTimer = this.unhiliteAllTags.bind(this).defer(2000, true);\n },\n unhiliteAllTags: function() {\n JSBNG__clearTimeout(this.unhiliteTimer);\n o.scry(this.stage, \"div.tagsWrapper div.hover\").forEach(function(ib) {\n m.removeClass(ib, \"hover\");\n });\n if (this.hilitAllTagsAndBoxesOnHover) {\n o.scry(this.stage, \"div.tagsWrapper div.otherActive\").forEach(function(ib) {\n m.removeClass(ib, \"otherActive\");\n });\n }\n ;\n ;\n this.hilitedTag = null;\n if (!m.hasClass(this.root, \"taggingMode\")) {\n var hb = this.getTagger();\n if (hb) {\n hb.hideTagger();\n hb.setCurrentFacebox(null);\n }\n ;\n ;\n }\n ;\n ;\n },\n switchHilitedTags: function(hb, ib) {\n if (((this.switchTimer !== null))) {\n JSBNG__clearTimeout(this.switchTimer);\n this.switchTimer = null;\n }\n ;\n ;\n this.unhiliteAllTags();\n if (this.hilitAllTagsAndBoxesOnHover) {\n this.hiliteAllBoxes();\n }\n ;\n ;\n var jb = va(hb);\n if (jb) {\n this.hilitedTag = hb;\n if (((!m.hasClass(this.root, \"taggingMode\") && ea.isFacebox(this.hilitedTag)))) {\n var kb = this.getTagger();\n if (kb) {\n m.addClass(jb, \"hover\");\n var lb = kb.getFacebox(hb);\n kb.setCurrentFacebox(lb);\n if (lb) {\n kb.addTagFromFacebox(lb);\n }\n ;\n ;\n }\n ;\n ;\n }\n else m.addClass(jb, \"hover\");\n ;\n ;\n if (((((m.hasClass(jb, \"tagBoxPending\") && !m.hasClass(jb, \"showPendingTagName\"))) && ((ib === true))))) {\n o.scry(this.stage, \"div.tagsWrapper div.showPendingTagName\").forEach(function(mb) {\n m.removeClass(mb, \"showPendingTagName\");\n });\n m.addClass(jb, \"showPendingTagName\");\n }\n ;\n ;\n }\n ;\n ;\n },\n reHilitePendingTag: function() {\n var hb = va(this.hilitedTag);\n if (((hb && m.hasClass(hb, \"showPendingTagName\")))) {\n return;\n }\n ;\n ;\n var ib = o.scry(this.stage, \"div.tagsWrapper div.showPendingTagName\")[0];\n if (ib) {\n this.switchHilitedTags(ib.id);\n }\n ;\n ;\n },\n hiliteTagsOnMouseMove: function(JSBNG__event) {\n if (((!this.stream.getCurrentExtraData() || this.getVideoOnStage()))) {\n return;\n }\n ;\n ;\n if (((this.switchTimer !== null))) {\n return;\n }\n ;\n ;\n var hb = JSBNG__event.getTarget();\n if (((((((((((((z.byClass(hb, \"snowliftOverlay\") || z.byClass(hb, \"fbPhotoSnowliftTagApproval\"))) || z.byClass(hb, \"tagPointer\"))) || z.byClass(hb, \"arrow\"))) || z.byClass(hb, \"faceboxSuggestion\"))) || z.byClass(hb, \"typeaheadWrapper\"))) || z.byClass(hb, \"photoTagTypeahead\")))) {\n return;\n }\n ;\n ;\n var ib = z.byClass(hb, \"tagBoxPending\"), jb = false;\n if (this.hilitedTag) {\n var kb = va(this.hilitedTag);\n jb = ((kb && m.hasClass(kb, \"tagBoxPending\")));\n }\n ;\n ;\n var lb = ((((!this.hilitedTag && ib)) || ((!jb && ib))));\n if (lb) {\n this.switchHilitedTags(ib.id);\n return;\n }\n ;\n ;\n if (((ib && ((ib.id == this.hilitedTag))))) {\n return;\n }\n ;\n ;\n var mb = 250, nb = ea.absoluteToNormalizedPosition(this.image, na.getEventPosition(JSBNG__event));\n if (this.currentTagHasPrecedence(nb)) {\n return;\n }\n ;\n ;\n var ob = ea.getNearestBox(this.stream.getCurrentExtraData().tagRects, nb);\n if (!ob) {\n if (!jb) {\n this.unhiliteAllTags();\n this.reHilitePendingTag();\n }\n ;\n ;\n return;\n }\n ;\n ;\n var pb = null;\n if (jb) {\n var qb = {\n };\n qb[this.hilitedTag] = this.stream.getCurrentExtraData().tagRects[this.hilitedTag];\n pb = ea.getNearestBox(qb, nb);\n }\n ;\n ;\n if (((((pb !== null)) && jb))) {\n return;\n }\n ;\n ;\n if (((this.hilitedTag != ob))) {\n if (jb) {\n this.switchTimer = this.switchHilitedTags.bind(this, ob).defer(mb);\n }\n else {\n if (this.showHover) {\n if (!this.seenTags) {\n this.seenTags = [];\n }\n ;\n ;\n if (!this.seenTags[ob]) {\n ba.addFaceTagImpression();\n this.seenTags[ob] = true;\n }\n ;\n ;\n }\n ;\n ;\n this.switchHilitedTags(ob);\n }\n ;\n }\n ;\n ;\n },\n currentTagHasPrecedence: function(hb) {\n if (!this.hilitedTag) {\n return false;\n }\n ;\n ;\n if (((this.stream.getCurrentExtraData().tagRects[this.hilitedTag] === undefined))) {\n this.hilitedTag = null;\n return false;\n }\n ;\n ;\n var ib = this.stream.getCurrentExtraData().tagRects[this.hilitedTag], jb = new ga(((ib.t + ((ib.h() / 2)))), ib.r, ((ib.b + ((ea.isFacebox(this.hilitedTag) ? 10 : 0)))), ib.l, ib.domain);\n return jb.contains(hb);\n },\n getVideoOnStage: function() {\n var hb = ((this.stream && this.stream.getCurrentImageData()));\n return ((hb && hb.video));\n },\n shouldPageOnAction: function(hb, ib) {\n if (((!this.isOpen || this.isShowingLikePhotoConfirmation))) {\n return false;\n }\n ;\n ;\n var jb = ((o.isNode(ib) && ((((z.byClass(ib, \"snowliftPager\") || z.byClass(ib, \"stagePagers\"))) || z.byClass(ib, \"pivotPageColumn\"))))), kb = ((o.isNode(ib) && z.byClass(ib, \"stage\"))), lb = m.hasClass(ib, \"faceBox\"), mb = ((((((((((((kb && m.hasClass(this.root, \"taggingMode\"))) || z.byClass(ib, \"tagBoxPending\"))) || z.byClass(ib, \"tagBoxPendingResponse\"))) || z.byClass(ib, \"fbPhotoTagApprovalBox\"))) || z.byClass(ib, \"tag\"))) || ((this.cropper && this.cropper.croppingMode))));\n if (mb) {\n return false;\n }\n ;\n ;\n return ((((((((((((((hb == u.LEFT)) || ((hb == u.RIGHT)))) || ((hb == cb)))) || ((hb == db)))) || ((!m.hasClass(this.root, \"taggingMode\") && lb)))) || jb)) || kb));\n },\n keyHandler: function(hb, JSBNG__event) {\n if (((JSBNG__event.getModifiers().any || ((v.getTopmostLayer() !== this.spotlight))))) {\n return true;\n }\n ;\n ;\n switch (q.getKeyCode(JSBNG__event)) {\n case u.LEFT:\n \n case u.RIGHT:\n \n case cb:\n \n case db:\n if (!this.pagersOnKeyboardNav) {\n this.showPagers(gb.PAGER_FADE);\n }\n ;\n ;\n this.pageListener(JSBNG__event);\n return false;\n case eb:\n return this.toggleFullScreen();\n case fb:\n return this.likePhotoWithKey();\n };\n ;\n },\n shouldHandlePendingTag: function(JSBNG__event) {\n var hb = this.getTagger();\n if (!hb.tags.length) {\n return false;\n }\n ;\n ;\n var ib = ea.absoluteToNormalizedPosition(this.getImage(), na.getEventPosition(JSBNG__event)), jb = hb.findNearestTag(ib);\n if (((!jb || !m.hasClass(jb.node, \"tagBoxPending\")))) {\n return false;\n }\n ;\n ;\n g.inform(\"PhotoTagApproval.PENDING_TAG_PHOTO_CLICK\", {\n id: jb.id,\n version: this.getVersionConst()\n });\n return true;\n },\n pageListener: function(JSBNG__event) {\n var hb = q.getKeyCode(JSBNG__event), ib = JSBNG__event.getTarget();\n if (!this.shouldPageOnAction(hb, ib)) {\n return;\n }\n ;\n ;\n if (this.shouldHandlePendingTag(JSBNG__event)) {\n return;\n }\n ;\n ;\n var jb = 0;\n if (((((hb == u.RIGHT)) || ((hb == db))))) {\n jb = 1;\n ba.setPagingAction(\"key_right\");\n }\n else if (((((hb == u.LEFT)) || ((hb == cb))))) {\n jb = -1;\n ba.setPagingAction(\"key_left\");\n }\n else if (z.byClass(ib, \"next\")) {\n jb = 1;\n ba.setPagingAction(\"click_next\");\n }\n else if (z.byClass(ib, \"prev\")) {\n jb = -1;\n ba.setPagingAction(\"click_prev\");\n }\n else if (!this.stagePagerPrev) {\n jb = 1;\n ba.setPagingAction(\"click_stage\");\n }\n else {\n jb = -1;\n ba.setPagingAction(\"click_stage_back\");\n }\n \n \n \n \n ;\n ;\n var kb = o.scry(this.ufiForm, \"input.mentionsHidden\"), lb = false;\n for (var mb = 0; ((mb < kb.length)); mb++) {\n if (!s.isEmpty(kb[mb])) {\n lb = true;\n break;\n }\n ;\n ;\n };\n ;\n if (((((lb || m.hasClass(this.root, \"fbPhotoSnowliftEditMode\"))) || ((this.cropper && this.cropper.croppingMode))))) {\n this.warnLeavePage(jb);\n }\n else {\n this.page(jb, ((ma.chrome() && r.isFullScreen())));\n ab(\"snowlift\", ib, JSBNG__event).uai(ba.pagingAction);\n }\n ;\n ;\n },\n warnLeavePage: function(hb) {\n new n().setTitle(\"Are you sure you want to leave this page?\").setBody(\"You have unsaved changes that will be lost if you leave the page.\").setButtons([{\n JSBNG__name: \"leave_page\",\n label: \"Leave this Page\",\n handler: this.page.bind(this, hb)\n },{\n JSBNG__name: \"continue_editing\",\n label: \"Stay on this Page\",\n className: \"inputaux\"\n },]).setModal(true).show();\n },\n getUsesOpaqueCursor: function() {\n return this.stream.getUsesOpaqueCursor();\n },\n getOpaqueCursor: function(hb) {\n return this.stream.getOpaqueCursor(hb);\n },\n setReachedLeftEnd: function() {\n this.stream.setReachedLeftEnd();\n },\n setReachedRightEnd: function() {\n this.stream.setReachedRightEnd();\n },\n page: function(hb, ib) {\n if (((!this.stream.isValidMovement(hb) || !this.stream.nonCircularPhotoSetCanPage(hb)))) {\n this.showPagers(gb.PAGER_FADE);\n return;\n }\n ;\n ;\n this.lastPage = JSBNG__Date.now();\n this.unhiliteAllTags();\n this.seenTags = [];\n var jb = this.getVideoOnStage();\n if (jb) {\n this.switchVideo(jb, false);\n }\n ;\n ;\n if (((this.pivots && this.pivots.page(hb)))) {\n return;\n }\n ;\n ;\n g.inform(\"PhotoSnowlift.PAGE\");\n ja.hide();\n this.recacheData();\n this.stream.moveCursor(hb);\n m.hide(this.image);\n if (this.stream.errorInCurrent()) {\n this.setLoadingState(gb.STATE_HTML, true);\n m.show(this.errorBox);\n return;\n }\n ;\n ;\n var kb = this.stream.getCurrentImageData();\n if (kb) {\n var lb = this.getImageURL(kb);\n if (lb) {\n this.switchImage(lb, null, true);\n }\n else if (kb.video) {\n this.switchVideo(kb.video, true);\n }\n \n ;\n ;\n if (!ib) {\n this.replaceUrl = true;\n wa(kb.info.permalink);\n }\n ;\n ;\n this.setLoadingState(gb.STATE_IMAGE_DATA, false);\n }\n else {\n this.setLoadingState(gb.STATE_IMAGE_PIXELS, true);\n this.setLoadingState(gb.STATE_IMAGE_DATA, true);\n }\n ;\n ;\n if (this.stream.getCurrentHtml()) {\n this.swapData();\n }\n else this.setLoadingState(gb.STATE_HTML, true);\n ;\n ;\n this.disableAds = this.disableAdsForSession;\n this.loadAds();\n if (this.cropper) {\n this.cropper.resetPhoto();\n }\n ;\n ;\n this.setLeftAndRightPagersState();\n },\n logImpressionDetailsForPhoto: function() {\n var hb = [].concat(o.scry(oa(\"fbPhotoSnowliftTagList\"), \"input.photoImpressionDetails\"), o.scry(oa(\"fbPhotoSnowliftFeedback\"), \"input.photoImpressionDetails\"));\n if (((hb.length === 0))) {\n return;\n }\n ;\n ;\n var ib = {\n };\n for (var jb = 0; ((jb < hb.length)); jb++) {\n ib[hb[jb].JSBNG__name] = hb[jb].value;\n ;\n };\n ;\n if (this.getVideoOnStage()) {\n ib.width = 0;\n ib.height = 0;\n }\n else {\n var kb = this.getImageDimensions(this.stream.getCurrentImageData());\n ib.width = kb.x;\n ib.height = kb.y;\n }\n ;\n ;\n ba.addDetailData(this.stream.getCursor(), ib);\n ca.setIsLogAdData(true);\n },\n loadAds: function() {\n if (this.disableAds) {\n return;\n }\n ;\n ;\n ca.loadAdsFromUserActivity();\n },\n transitionHandler: function(hb) {\n if (((((((hb.getQueryData().closeTheater || hb.getQueryData().permPage)) || hb.getQueryData().makeprofile)) || this.returningToStart))) {\n if (this.isOpen) {\n this.close();\n }\n ;\n ;\n this.transitionHandlerRegistered = false;\n return false;\n }\n ;\n ;\n if (this.replaceUrl) {\n this.replaceUrl = false;\n this._uriStack.push(hb.getQualifiedURI().toString());\n y.transitionComplete(true);\n return true;\n }\n ;\n ;\n var ib = this._uriStack.length;\n if (((((ib >= 2)) && ((this._uriStack[((ib - 2))] == hb.getQualifiedURI().toString()))))) {\n this._uriStack.pop();\n }\n ;\n ;\n var jb = this.stream.getCursorForURI(hb.getUnqualifiedURI().toString());\n if (jb) {\n var kb = this.stream.getRelativeMovement(jb);\n this.page(kb, true);\n y.transitionComplete(false);\n return true;\n }\n ;\n ;\n if (this.isOpen) {\n y.transitionComplete(true);\n this.close();\n return true;\n }\n ;\n ;\n this.transitionHandlerRegistered = false;\n return false;\n },\n recacheData: function() {\n if (!this.loadingStates.html) {\n var hb = this.stream.getCurrentHtml();\n {\n var fin245keys = ((window.top.JSBNG_Replay.forInKeys)((hb))), fin245i = (0);\n var ib;\n for (; (fin245i < fin245keys.length); (fin245i++)) {\n ((ib) = (fin245keys[fin245i]));\n {\n hb[ib] = sa(oa(ib).childNodes);\n o.empty(oa(ib));\n };\n };\n };\n ;\n }\n ;\n ;\n },\n reloadIfTimeout: function() {\n if (!t.hasLoaded(this.image)) {\n var hb = this.makeNewImage(this.image.src, true);\n q.listen(hb, \"load\", this.useImage.bind(this, hb, null, true));\n }\n ;\n ;\n },\n useImage: function(hb, ib, jb) {\n if (((jb && t.hasLoaded(this.image)))) {\n return;\n }\n ;\n ;\n o.replace(this.image, hb);\n this.image = hb;\n g.inform(\"Amoeba/instrument\", [this.image,\"image\",], g.BEHAVIOR_PERSISTENT);\n this.adjustStageSize(ib);\n },\n makeNewImage: function(hb, ib) {\n if (this.imageLoadingTimer) {\n JSBNG__clearTimeout(this.imageLoadingTimer);\n this.imageLoadingTimer = null;\n }\n else if (!ib) {\n this.imageRefreshTimer = JSBNG__setTimeout(this.reloadIfTimeout.bind(this), gb.LOADING_TIMEOUT);\n }\n \n ;\n ;\n var jb = o.create(\"img\", {\n className: \"spotlight\",\n alt: \"\"\n });\n jb.setAttribute(\"aria-describedby\", \"fbPhotosSnowliftCaption\");\n jb.setAttribute(\"aria-busy\", \"true\");\n q.listen(jb, \"load\", pa(function() {\n JSBNG__clearTimeout(this.imageRefreshTimer);\n this.image.setAttribute(\"aria-busy\", \"false\");\n this.setLoadingState(this.STATE_IMAGE_PIXELS, false);\n (function() {\n if (this.isOpen) {\n this.adjustStageSize();\n this.adjustForNewData();\n }\n ;\n ;\n }).bind(this).defer();\n }.bind(this), \"photo_theater\"));\n jb.src = hb;\n return jb;\n },\n switchImage: function(hb, ib, jb) {\n m.hide(this.image);\n m.hide(this.errorBox);\n this.setLoadingState(this.STATE_IMAGE_PIXELS, true);\n var kb = ((this.stream && this.stream.getCurrentImageData()));\n if (kb) {\n ba.addPhotoView(kb.info, this.shouldShowHiRes(kb), ((this.fullscreen && r.isFullScreen())));\n }\n ;\n ;\n this.useImage(this.makeNewImage(hb, false), ib, false);\n if (jb) {\n this.stream.preloadImages(this.shouldShowHiRes(kb));\n }\n ;\n ;\n if (((this.cropper && this.cropper.croppingMode))) {\n this.cropper.resetPhoto();\n }\n ;\n ;\n g.inform(\"PhotoSnowlift.SWITCH_IMAGE\");\n },\n switchVideo: function(hb, ib) {\n var jb = ((\"swf_\" + hb));\n if (ib) {\n m.addClass(this.stageWrapper, \"showVideo\");\n var kb = o.create(\"div\", {\n className: \"videoStageContainer\"\n });\n o.appendContent(this.videoStage, kb);\n kb.id = hb;\n if (((window[jb] && !va(jb)))) {\n window[jb].write(hb);\n }\n ;\n ;\n var lb = ((\"video_warning_\" + hb)), mb = va(hb);\n if (!this.videoWarnings) {\n this.videoWarnings = [];\n }\n ;\n ;\n if (((mb && this.videoWarnings[lb]))) {\n o.setContent(mb, this.videoWarnings[lb]);\n }\n ;\n ;\n this.adjustStageSizeForVideo.bind(this, jb).defer();\n }\n else {\n ((window[jb] && window[jb].addVariable(\"video_autoplay\", 0)));\n ((this.videoLoadTimer && JSBNG__clearTimeout(this.videoLoadTimer)));\n o.empty(this.videoStage);\n m.removeClass(this.stageWrapper, \"showVideo\");\n }\n ;\n ;\n },\n checkVideoStatus: function(hb) {\n if (this.videoLoadTimer) {\n JSBNG__clearTimeout(this.videoLoadTimer);\n }\n ;\n ;\n var ib = this.getVideoOnStage();\n if (!ib) {\n return;\n }\n else {\n var jb = ((\"swf_\" + ib));\n if (((hb !== jb))) {\n return;\n }\n ;\n ;\n this.adjustStageSizeForVideo(hb);\n }\n ;\n ;\n },\n adjustStageSizeForVideo: function(hb) {\n var ib = va(hb);\n if (!ib) {\n this.videoLoadTimer = JSBNG__setTimeout(this.checkVideoStatus.bind(this, hb), 200);\n }\n else this.adjustStageSize(new na(ib.width, ib.height));\n ;\n ;\n },\n handleServerError: function(hb, ib) {\n o.setContent(this.errorBox, hb);\n this.storeFromData(ib);\n },\n swapData: function() {\n var hb, ib = this.stream.getCurrentHtml();\n if (ib) {\n this.setLoadingState(gb.STATE_HTML, false);\n {\n var fin246keys = ((window.top.JSBNG_Replay.forInKeys)((ib))), fin246i = (0);\n var jb;\n for (; (fin246i < fin246keys.length); (fin246i++)) {\n ((jb) = (fin246keys[fin246i]));\n {\n hb = va(jb);\n ((hb && o.setContent(hb, ib[jb])));\n };\n };\n };\n ;\n g.inform(\"PhotoSnowlift.DATA_CHANGE\", this.stream.getCurrentImageData().info, g.BEHAVIOR_STATE);\n if (this.stream.getCurrentExtraData()) {\n g.inform(\"PhotoSnowlift.EXTRA_DATA_CHANGE\", this.stream.getCurrentExtraData(), g.BEHAVIOR_STATE);\n }\n ;\n ;\n }\n ;\n ;\n this.adjustScroller();\n this.adjustStageSize();\n this.scrollableArea.showScrollbar(false);\n this.adjustForNewData();\n this.logImpressionDetailsForPhoto();\n if (this.showFlashTags) {\n this.flashAllTags();\n }\n ;\n ;\n },\n updateTotalCount: function(hb, ib, jb) {\n var kb = this.stream.getCurrentHtml();\n if (kb) {\n var lb = oa(\"fbPhotoSnowliftPositionAndCount\");\n o.replace(lb, jb);\n lb = jb;\n m.show(lb);\n var mb = \"fbPhotoSnowliftPositionAndCount\";\n kb[mb] = sa(lb.childNodes);\n }\n ;\n ;\n this.stream.setTotalCount(hb);\n this.stream.setFirstCursorIndex(ib);\n },\n addPhotoFbids: function(hb, ib, jb, kb) {\n if (((((kb && this.sessionID)) && ((kb != this.sessionID))))) {\n return;\n }\n ;\n ;\n var lb = ((this.stream.getCursor() === null));\n this.stream.attachToFbidsList(hb, ib, jb);\n if (((jb && lb))) {\n this.page(0, true);\n }\n ;\n ;\n if (((this.pivots && jb))) {\n this.pivots.setCycleCount(this.stream.calculateDistance(this.stream.getCursor(), this.stream.firstCursor));\n }\n ;\n ;\n if (((!this.pagersShown && this.stream.canPage()))) {\n this.setStagePagersState(\"ready\");\n }\n ;\n ;\n this.setLeftAndRightPagersState();\n },\n attachTagger: function(hb) {\n o.appendContent(this.stageActions, hb);\n },\n storeFromData: function(hb) {\n if (!this.isOpen) {\n return;\n }\n ;\n ;\n if (((((hb.ssid && this.sessionID)) && ((this.sessionID != hb.ssid))))) {\n return;\n }\n ;\n ;\n var ib = this.stream.storeToCache(hb);\n if (((\"error\" in ib))) {\n this.checkState(gb.STATE_ERROR);\n return;\n }\n ;\n ;\n if (((\"init\" in ib))) {\n this.initDataFetched(ib.init);\n if (this.openExplicitly) {\n this.replaceUrl = true;\n wa(this.stream.getCurrentImageData().info.permalink);\n }\n ;\n ;\n if (this.stream.canPage()) {\n this.setStagePagersState(\"ready\");\n }\n ;\n ;\n this.setLeftAndRightPagersState();\n ((this.ua && this.ua.add_event(\"ufi\")));\n }\n ;\n ;\n if (((\"image\" in ib))) {\n this.checkState(gb.STATE_IMAGE_DATA);\n }\n ;\n ;\n if (((\"data\" in ib))) {\n this.checkState(gb.STATE_HTML);\n }\n ;\n ;\n },\n setLeftAndRightPagersState: function() {\n if (this.stream.isNonCircularPhotoSet()) {\n m.conditionClass(this.root, \"disableLeft\", !this.stream.nonCircularPhotoSetCanPage(-1));\n m.conditionClass(this.root, \"disableRight\", !this.stream.nonCircularPhotoSetCanPage(1));\n }\n ;\n ;\n },\n setStagePagersState: function(hb) {\n switch (hb) {\n case \"ready\":\n m.addClass(this.root, \"pagingReady\");\n this.pagersShown = true;\n ((this.ua && this.ua.add_event(\"arrows\")));\n return;\n case \"active\":\n m.addClass(this.root, \"pagingActivated\");\n return;\n case \"inactive\":\n m.removeClass(this.root, \"pagingActivated\");\n return;\n case \"disabled\":\n \n case \"reset\":\n m.removeClass(this.root, \"pagingReady\");\n return;\n };\n ;\n },\n deletePhoto: function(hb) {\n this.closeRefresh();\n },\n closeRefresh: function() {\n this.refreshOnClose = true;\n this.closeHandler();\n },\n onHiliteTag: function(hb, ib) {\n if (((ib.version != aa.VIEWER_SNOWLIFT))) {\n return;\n }\n ;\n ;\n var jb = ib.tag;\n if (jb) {\n this.switchHilitedTags(jb, true);\n }\n ;\n ;\n },\n onUpdateTagBox: function(hb, ib) {\n if (((ib.version == aa.VIEWER_SNOWLIFT))) {\n this.updateTagBox(ib.id, ib.approve);\n }\n ;\n ;\n }\n });\n e.exports = gb;\n});\n__d(\"Spotlight\", [\"JSXDOM\",\"Arbiter\",\"ArbiterMixin\",\"Class\",\"DOM\",\"Layer\",\"LayerAutoFocus\",\"LayerTabIsolation\",\"ModalLayer\",\"Vector\",\"copyProperties\",\"csx\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSXDOM\"), h = b(\"Arbiter\"), i = b(\"ArbiterMixin\"), j = b(\"Class\"), k = b(\"DOM\"), l = b(\"Layer\"), m = b(\"LayerAutoFocus\"), n = b(\"LayerTabIsolation\"), o = b(\"ModalLayer\"), p = b(\"Vector\"), q = b(\"copyProperties\"), r = b(\"csx\"), s = b(\"cx\");\n function t(v, w) {\n this.parent.construct(this, v, w);\n this.stageMinSize = new p(0, 0);\n this.stagePadding = new p(0, 0);\n };\n;\n j.extend(t, l);\n q(t.prototype, i, {\n stageMinSize: null,\n stagePadding: null,\n _buildWrapper: function(v, w) {\n return (g.div({\n className: \"-cx-PRIVATE-uiSpotlight__root -cx-PRIVATE-ModalLayer__dark\"\n }, g.div({\n className: \"-cx-PRIVATE-uiSpotlight__container\"\n }, w)));\n },\n _getDefaultBehaviors: function() {\n return this.parent._getDefaultBehaviors().concat([u,m,n,o,]);\n },\n getContentRoot: function() {\n if (!this._content) {\n this._content = k.JSBNG__find(this.getRoot(), \"div.-cx-PRIVATE-uiSpotlight__content\");\n }\n ;\n ;\n return this._content;\n },\n configure: function(v) {\n if (v.stageMinSize) {\n this.stageMinSize = v.stageMinSize;\n }\n ;\n ;\n if (v.stagePadding) {\n this.stagePadding = v.stagePadding;\n }\n ;\n ;\n },\n onContentLoaded: function() {\n this.inform(\"content-load\");\n },\n updatePermalink: function(v) {\n this.inform(\"permalinkchange\", v);\n }\n });\n function u(v) {\n this._layer = v;\n };\n;\n q(u.prototype, {\n _subscription: null,\n enable: function() {\n this._subscription = this._layer.subscribe([\"show\",\"hide\",], function(v, w) {\n if (((v === \"show\"))) {\n h.inform(\"layer_shown\", {\n type: \"Spotlight\"\n });\n }\n else h.inform(\"layer_hidden\", {\n type: \"Spotlight\"\n });\n ;\n ;\n });\n },\n disable: function() {\n this._subscription.unsubscribe();\n this._subscription = null;\n }\n });\n e.exports = t;\n});"); |
| // 13130 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o25,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/ya/r/pKyqR8GP59i.js",o180); |
| // undefined |
| o25 = null; |
| // undefined |
| o180 = null; |
| // 13135 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"OYzUx\",]);\n}\n;\n__d(\"ComposerXAttachmentBootstrap\", [\"CSS\",\"Form\",\"Parent\",\"URI\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"CSS\"), h = b(\"Form\"), i = b(\"Parent\"), j = b(\"URI\"), k = b(\"cx\"), l = [], m = {\n bootstrap: function(n) {\n m.load(i.byTag(n, \"form\"), n.getAttribute(\"data-endpoint\"));\n },\n load: function(n, o, p) {\n var q = j(o).addQueryData({\n composerurihash: m.getURIHash(o)\n });\n g.conditionClass(n, \"-cx-PRIVATE-fbComposerAttachment__hidespinner\", p);\n var r = i.byClass(n, \"-cx-PRIVATE-fbComposer__attachmentform\");\n g.removeClass(r, \"async_saving\");\n h.setDisabled(n, false);\n n.action = q.toString();\n h.bootstrap(n);\n },\n getURIHash: function(n) {\n if ((n === \"initial\")) {\n return \"initial\"\n };\n var o = l.indexOf(n);\n if ((o !== -1)) {\n return (o + \"\");\n }\n else {\n o = l.length;\n l[o] = n;\n return (o + \"\");\n }\n ;\n }\n };\n e.exports = m;\n});\n__d(\"ComposerXStore\", [\"function-extensions\",\"Arbiter\",\"ge\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"Arbiter\"), h = b(\"ge\"), i = {\n };\n function j(l, m) {\n return (((\"ComposerX/\" + l) + \"/\") + m);\n };\n var k = {\n set: function(l, m, n) {\n if (!i[l]) {\n i[l] = {\n };\n };\n i[l][m] = n;\n g.inform(j(l, m), {\n }, g.BEHAVIOR_STATE);\n },\n get: function(l, m) {\n if (i[l]) {\n return i[l][m]\n };\n return null;\n },\n getAllForComposer: function(l) {\n return (i[l] || {\n });\n },\n waitForComponents: function(l, m, n) {\n g.registerCallback(n, m.map(j.curry(l)));\n }\n };\n g.subscribe(\"page_transition\", function() {\n for (var l in i) {\n if (!h(l)) {\n delete i[l];\n };\n };\n });\n e.exports = k;\n});\n__d(\"ComposerX\", [\"Arbiter\",\"ComposerXAttachmentBootstrap\",\"ComposerXStore\",\"CSS\",\"DOM\",\"DOMQuery\",\"copyProperties\",\"csx\",\"cx\",\"getObjectValues\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ComposerXAttachmentBootstrap\"), i = b(\"ComposerXStore\"), j = b(\"CSS\"), k = b(\"DOM\"), l = b(\"DOMQuery\"), m = b(\"copyProperties\"), n = b(\"csx\"), o = b(\"cx\"), p = b(\"getObjectValues\"), q = \"any\";\n function r(s) {\n this._root = s;\n this._composerID = s.id;\n this._attachments = {\n };\n this._attachmentFetchForm = l.find(s, \".-cx-PRIVATE-fbComposer__attachmentform\");\n this._resetSubscription = g.subscribe(\"composer/publish\", function(t, u) {\n if ((u.composer_id === this._composerID)) {\n this.reset();\n };\n }.bind(this));\n };\n m(r.prototype, {\n _endpointHashToShow: q,\n _lastFetchEndpoint: \"\",\n _initialAttachmentEndpoint: \"\",\n getAttachment: function(s, t) {\n var u = h.getURIHash(s);\n this._endpointHashToShow = u;\n var v = this._attachments[u];\n if (v) {\n this._showAttachmentAfterComponentsLoaded(u);\n }\n else this.fetchAttachmentData(s, t);\n ;\n },\n fetchAttachmentData: function(s, t) {\n var u = h.getURIHash(s);\n if (this._attachments[u]) {\n return\n };\n if ((s !== this._lastFetchEndpoint)) {\n h.load(this._attachmentFetchForm, s, t);\n this._lastFetchEndpoint = s;\n }\n ;\n },\n setAttachment: function(s, t, u, v) {\n this._setupAttachment(s, t, u, v);\n this._showAttachmentAfterComponentsLoaded(s);\n },\n setInitialAttachment: function(s, t, u, v) {\n var w = h.getURIHash(s);\n this._setupAttachment(w, t, u, v);\n this._initialAttachmentEndpoint = s;\n if (!this._currentInstance) {\n this._showAttachmentAfterComponentsLoaded(w);\n };\n },\n setComponent: function(s, t) {\n if (!i.get(this._composerID, s)) {\n i.set(this._composerID, s, t);\n k.appendContent(this._attachmentFetchForm, k.create(\"input\", {\n type: \"hidden\",\n name: \"loaded_components[]\",\n value: s\n }));\n }\n ;\n },\n reset: function() {\n if (this._currentInstance) {\n this._currentInstance.cleanup();\n this._currentInstance = null;\n }\n ;\n for (var s in this._attachments) {\n this._attachments[s].instance.reset();;\n };\n var t = i.getAllForComposer(this._composerID);\n p(t).forEach(function(u) {\n if (u.reset) {\n u.reset(u);\n };\n });\n this.getAttachment(this._initialAttachmentEndpoint);\n g.inform(\"composer/reset\");\n },\n destroy: function() {\n if (this._resetSubscription) {\n this._resetSubscription.unsubscribe();\n this._resetSubscription = null;\n }\n ;\n },\n addPlaceholders: function(s, t) {\n var u;\n for (var v in this._attachments) {\n u = this._attachments[v];\n if ((u.instance === s)) {\n t.forEach(function(w) {\n u.placeholders.push(w);\n u.required_components.push(w.component_name);\n });\n break;\n }\n ;\n };\n if ((this._currentInstance === s)) {\n this._fillPlaceholders(t);\n };\n },\n _setupAttachment: function(s, t, u, v) {\n t.setComposerID(this._composerID);\n this._attachments[s] = {\n instance: t,\n placeholders: u,\n required_components: v\n };\n var w = l.find(this._root, \"div.-cx-PUBLIC-fbComposer__content\"), x = t.getRoot();\n if ((x.parentNode !== w)) {\n j.hide(x);\n k.appendContent(w, x);\n }\n ;\n },\n _showAttachment: function(s, t, u) {\n if ((this._currentInstance === s)) {\n return\n };\n if ((this._endpointHashToShow === q)) {\n this._endpointHashToShow = null;\n }\n else if ((this._endpointHashToShow !== t)) {\n return\n }\n ;\n if (this._currentInstance) {\n if (!this._currentInstance.canSwitchAway()) {\n return\n };\n this._currentInstance.cleanup();\n }\n ;\n this._currentInstance = s;\n var v = l.find(this._root, \"div.-cx-PUBLIC-fbComposer__content\"), w = v.childNodes, x = s.getRoot();\n for (var y = 0; (y < w.length); y++) {\n if ((w[y] !== x)) {\n j.hide(w[y]);\n };\n };\n j.show(x);\n this._fillPlaceholders(u);\n var z = h.getURIHash(this._initialAttachmentEndpoint), aa = (t === z);\n s.initWithComponents(aa);\n this._setAttachmentSelectedClass(s.attachmentClassName);\n g.inform(\"composer/initializedAttachment\", {\n composerRoot: this._root,\n isInitial: aa\n });\n },\n _showAttachmentAfterComponentsLoaded: function(s) {\n var t = this._attachments[s];\n i.waitForComponents(this._composerID, t.required_components, this._showAttachment.bind(this, t.instance, s, t.placeholders));\n },\n _fillPlaceholders: function(s) {\n s.forEach(function(t) {\n var u = i.get(this._composerID, t.component_name);\n if ((t.element !== u.element.parentNode)) {\n k.setContent(t.element, u.element);\n };\n }.bind(this));\n },\n _setAttachmentSelectedClass: function(s) {\n var t = l.scry(this._root, \".-cx-PUBLIC-fbComposerAttachment__selected\")[0], u;\n if (t) {\n j.removeClass(t, \"-cx-PUBLIC-fbComposerAttachment__selected\");\n u = l.scry(t, \"*[aria-pressed=\\\"true\\\"]\")[0];\n if (u) {\n u.setAttribute(\"aria-pressed\", \"false\");\n };\n }\n ;\n if (s) {\n var v = l.scry(this._root, (\".\" + s))[0];\n if (v) {\n j.addClass(v, \"-cx-PUBLIC-fbComposerAttachment__selected\");\n u = l.scry(v, \"*[aria-pressed=\\\"false\\\"]\")[0];\n if (u) {\n u.setAttribute(\"aria-pressed\", \"true\");\n };\n }\n ;\n }\n ;\n }\n });\n e.exports = r;\n});\n__d(\"ComposerXAttachment\", [\"ComposerXStore\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"ComposerXStore\"), h = b(\"copyProperties\"), i = b(\"emptyFunction\");\n function j() {\n \n };\n h(j.prototype, {\n getRoot: i,\n initWithComponents: function(k) {\n \n },\n cleanup: i,\n reset: i,\n attachmentClassName: \"\",\n getComponent: function(k) {\n return g.get(this._composerID, k);\n },\n canSwitchAway: i.thatReturnsTrue,\n setComposerID: function(k) {\n this._composerID = k;\n },\n allowOGTagPreview: function() {\n return false;\n }\n });\n e.exports = j;\n});\n__d(\"ComposerXController\", [\"Arbiter\",\"ComposerX\",\"ComposerXAttachmentBootstrap\",\"Parent\",\"$\",\"cx\",\"emptyFunction\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ComposerX\"), i = b(\"ComposerXAttachmentBootstrap\"), j = b(\"Parent\"), k = b(\"$\"), l = b(\"cx\"), m = b(\"emptyFunction\"), n = b(\"ge\"), o = {\n };\n function p(r) {\n var s = j.byClass(k(r), \"-cx-PRIVATE-fbComposer__root\"), t = s.id;\n if (!o[t]) {\n o[t] = new h(s);\n };\n return o[t];\n };\n var q = {\n getAttachment: function(r, s, t) {\n var u = p(r);\n u.getAttachment(s, t);\n },\n fetchAttachmentData: function(r, s, t) {\n p(r).fetchAttachmentData(s, t);\n },\n setAttachment: function(r, s, t, u, v) {\n var w = p(r);\n w.setAttachment(s, t, u, v);\n },\n setInitialAttachment: function(r, s, t, u, v) {\n var w = p(r);\n w.setInitialAttachment(s, t, u, v);\n },\n setComponent: function(r, s, t) {\n var u = p(r);\n u.setComponent(s, t);\n },\n reset: function(r) {\n var s = p(r);\n s.reset();\n },\n holdTheMarkup: m,\n getEndpoint: function(r, s, t) {\n var u = p(r);\n i.load(u._attachmentFetchForm, s, t);\n },\n addPlaceholders: function(r, s, t) {\n var u = p(r);\n u.addPlaceholders(s, t);\n }\n };\n i.bootstrap = function(r) {\n q.getAttachment(r, r.getAttribute(\"data-endpoint\"));\n };\n g.subscribe(\"page_transition\", function() {\n for (var r in o) {\n if (!n(r)) {\n o[r].destroy();\n delete o[r];\n }\n ;\n };\n });\n e.exports = q;\n});\n__d(\"DragDropFileUpload\", [], function(a, b, c, d, e, f) {\n f.isSupported = function() {\n return (typeof (FileList) !== \"undefined\");\n };\n});\n__d(\"DocumentDragDrop\", [\"Event\",\"Arbiter\",\"CSS\",\"DOM\",\"DOMQuery\",\"DragDropFileUpload\",\"emptyFunction\",\"getObjectValues\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Arbiter\"), i = b(\"CSS\"), j = b(\"DOM\"), k = b(\"DOMQuery\"), l = b(\"DragDropFileUpload\"), m = b(\"emptyFunction\"), n = b(\"getObjectValues\"), o = {\n }, p = 0;\n function q() {\n p = 0;\n n(o).forEach(function(t) {\n i.removeClass(t.element, t.className);\n h.inform(\"dragleave\", {\n element: t.element\n });\n });\n };\n function r() {\n if (!l.isSupported()) {\n return\n };\n g.listen(document, \"dragenter\", function(u) {\n if ((p === 0)) {\n n(o).forEach(function(v) {\n i.addClass(v.element, v.className);\n h.inform(\"dragenter\", {\n element: v.element,\n event: u\n });\n });\n };\n p++;\n });\n g.listen(document, \"dragleave\", function(u) {\n p--;\n if ((p === 0)) {\n q();\n };\n });\n g.listen(document, \"drop\", function(u) {\n var v = u.getTarget();\n if (k.isNodeOfType(u.getTarget(), \"input\")) {\n if ((v.type === \"file\")) {\n return\n }\n };\n u.prevent();\n });\n g.listen(document, \"dragover\", g.prevent);\n var t = null;\n document.addEventListener(\"dragover\", function() {\n (t && clearTimeout(t));\n t = setTimeout(q, 839);\n }, true);\n r = m;\n };\n var s = {\n registerStatusElement: function(t, u) {\n r();\n o[j.getID(t)] = {\n element: t,\n className: u\n };\n },\n removeStatusElement: function(t) {\n var u = j.getID(t), v = o[u];\n i.removeClass(v.element, v.className);\n delete o[u];\n }\n };\n e.exports = s;\n});\n__d(\"DragDropTarget\", [\"Event\",\"CSS\",\"DocumentDragDrop\",\"DragDropFileUpload\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"CSS\"), i = b(\"DocumentDragDrop\"), j = b(\"DragDropFileUpload\"), k = b(\"copyProperties\"), l = b(\"emptyFunction\");\n function m(n) {\n this._element = n;\n this._listeners = [];\n this._statusElem = n;\n this._dragEnterCount = 0;\n this._enabled = false;\n };\n k(m.prototype, {\n _onFilesDropCallback: l,\n _onURLDropCallback: l,\n _onPlainTextDropCallback: l,\n _onDropCallback: l,\n _fileFilterFn: l.thatReturnsArgument,\n setOnFilesDropCallback: function(n) {\n this._onFilesDropCallback = n;\n return this;\n },\n setOnURLDropCallback: function(n) {\n this._onURLDropCallback = n;\n return this;\n },\n setOnPlainTextDropCallback: function(n) {\n this._onPlainTextDropCallback = n;\n return this;\n },\n setOnDropCallback: function(n) {\n this._onDropCallback = n;\n return this;\n },\n enable: function() {\n if (!j.isSupported()) {\n return this\n };\n i.registerStatusElement(this._statusElem, \"fbWantsDragDrop\");\n this._listeners.push(g.listen(this._element, \"dragenter\", this._onDragEnter.bind(this)));\n this._listeners.push(g.listen(this._element, \"dragleave\", this._onDragLeave.bind(this)));\n this._listeners.push(g.listen(this._element, \"dragover\", g.kill));\n this._listeners.push(g.listen(this._element, \"drop\", function(n) {\n this._dragEnterCount = 0;\n h.removeClass(this._statusElem, \"fbDropReady\");\n h.removeClass(this._statusElem, \"fbDropReadyPhoto\");\n h.removeClass(this._statusElem, \"fbDropReadyPhotos\");\n h.removeClass(this._statusElem, \"fbDropReadyLink\");\n var o = {\n }, p = false, q = this._fileFilterFn(n.dataTransfer.files);\n if (q.length) {\n this._onFilesDropCallback(q, n);\n o.files = q;\n p = true;\n }\n ;\n var r = (n.dataTransfer.getData(\"url\") || n.dataTransfer.getData(\"text/uri-list\"));\n if (r) {\n this._onURLDropCallback(r, n);\n o.url = r;\n p = true;\n }\n ;\n var s = n.dataTransfer.getData(\"text/plain\");\n if (s) {\n this._onPlainTextDropCallback(s, n);\n o.plainText = s;\n p = true;\n }\n ;\n if (p) {\n this._onDropCallback(o, n);\n };\n n.kill();\n }.bind(this)));\n this._enabled = true;\n return this;\n },\n disable: function() {\n if (!this._enabled) {\n return this\n };\n i.removeStatusElement(this._statusElem, \"fbWantsDragDrop\");\n h.removeClass(this._statusElem, \"fbDropReady\");\n h.removeClass(this._statusElem, \"fbDropReadyPhoto\");\n h.removeClass(this._statusElem, \"fbDropReadyPhotos\");\n h.removeClass(this._statusElem, \"fbDropReadyLink\");\n while (this._listeners.length) {\n this._listeners.pop().remove();;\n };\n this._enabled = false;\n return this;\n },\n setFileFilter: function(n) {\n this._fileFilterFn = n;\n return this;\n },\n setStatusElement: function(n) {\n this._statusElem = n;\n return this;\n },\n _onDragEnter: function(n) {\n if ((this._dragEnterCount === 0)) {\n var o = n.dataTransfer.items, p = false;\n for (var q = 0; (q < o.length); q++) {\n if (!o[q].type.match(\"image/*\")) {\n p = true;\n break;\n }\n ;\n };\n h.addClass(this._statusElem, \"fbDropReady\");\n if (p) {\n h.addClass(this._statusElem, \"fbDropReadyLink\");\n }\n else if ((o.length > 1)) {\n h.addClass(this._statusElem, \"fbDropReadyPhotos\");\n }\n else h.addClass(this._statusElem, \"fbDropReadyPhoto\");\n \n ;\n }\n ;\n this._dragEnterCount++;\n },\n _onDragLeave: function() {\n this._dragEnterCount = Math.max((this._dragEnterCount - 1), 0);\n if ((this._dragEnterCount === 0)) {\n h.removeClass(this._statusElem, \"fbDropReady\");\n h.removeClass(this._statusElem, \"fbDropReadyPhoto\");\n h.removeClass(this._statusElem, \"fbDropReadyPhotos\");\n h.removeClass(this._statusElem, \"fbDropReadyLink\");\n }\n ;\n }\n });\n e.exports = m;\n});\n__d(\"ComposerXDragDrop\", [\"Arbiter\",\"ComposerXController\",\"CSS\",\"DragDropTarget\",\"DOMQuery\",\"Parent\",\"URI\",\"copyProperties\",\"csx\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ComposerXController\"), i = b(\"CSS\"), j = b(\"DragDropTarget\"), k = b(\"DOMQuery\"), l = b(\"Parent\"), m = b(\"URI\"), n = b(\"copyProperties\"), o = b(\"csx\"), p = b(\"cx\"), q = \"/ajax/composerx/attachment/media/upload/\", r = \"/ajax/composerx/attachment/link/scraper/\", s = function(u) {\n u();\n };\n function t(u, v, w, x) {\n this._root = u;\n this._composerID = v;\n this._targetID = w;\n x = (x || s);\n this._dragdrop = new j(u).setOnFilesDropCallback(function(y) {\n x(this._uploadFiles.bind(this, y));\n }.bind(this)).setFileFilter(t.filterImages).enable();\n t.handleDragEnterAndLeave(u);\n g.subscribe(\"composer/deactivateDragdrop\", function() {\n this.deactivate();\n }.bind(this));\n g.subscribe(\"composer/reactivateDragdrop\", function() {\n this.reactivate();\n }.bind(this));\n };\n n(t, {\n handleDragEnterAndLeave: function(u) {\n var v = k.scry(l.byClass(u, \"-cx-PRIVATE-fbComposer__root\"), \".-cx-PUBLIC-fbComposerAttachment__nub\");\n g.subscribe(\"dragenter\", function(w, x) {\n if ((u == x.element)) {\n v.forEach(i.hide);\n };\n });\n g.subscribe(\"dragleave\", function(w, x) {\n if ((u == x.element)) {\n v.forEach(i.show);\n };\n });\n },\n filterImages: function(u) {\n var v = [];\n for (var w = 0; (w < u.length); w++) {\n if (u[w].type.match(\"image/*\")) {\n v.push(u[w]);\n };\n };\n return v;\n }\n });\n n(t.prototype, {\n enableURLDropping: function() {\n this._dragdrop.setOnURLDropCallback(this._onURLDrop.bind(this));\n },\n deactivate: function() {\n this._dragdrop.disable();\n },\n reactivate: function() {\n this._dragdrop.enable();\n },\n _uploadFiles: function(u) {\n h.getAttachment(this._root, q);\n g.inform(((\"ComposerXFilesStore/filesDropped/\" + this._composerID) + \"/mediaupload\"), {\n files: u\n }, g.BEHAVIOR_PERSISTENT);\n },\n _onURLDrop: function(u) {\n var v = new m(r);\n v.addQueryData({\n scrape_url: encodeURIComponent(u)\n });\n h.getAttachment(this._root, v.toString());\n }\n });\n e.exports = t;\n});\n__d(\"curry\", [\"bind\",], function(a, b, c, d, e, f) {\n var g = b(\"bind\"), h = g(null, g, null);\n e.exports = h;\n});\n__d(\"Popover\", [\"Event\",\"Arbiter\",\"ArbiterMixin\",\"ContextualLayer\",\"ContextualLayerHideOnScroll\",\"CSS\",\"DataStore\",\"DOM\",\"Focus\",\"Keys\",\"KeyStatus\",\"LayerHideOnEscape\",\"Toggler\",\"copyProperties\",\"curry\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Arbiter\"), i = b(\"ArbiterMixin\"), j = b(\"ContextualLayer\"), k = b(\"ContextualLayerHideOnScroll\"), l = b(\"CSS\"), m = b(\"DataStore\"), n = b(\"DOM\"), o = b(\"Focus\"), p = b(\"Keys\"), q = b(\"KeyStatus\"), r = b(\"LayerHideOnEscape\"), s = b(\"Toggler\"), t = b(\"copyProperties\"), u = b(\"curry\");\n s.subscribe([\"show\",\"hide\",], function(w, x) {\n var y = m.get(x.getActive(), \"Popover\");\n if (y) {\n if ((w === \"show\")) {\n y.showLayer();\n }\n else y.hideLayer();\n \n };\n });\n function v(w, x, y, z) {\n this._root = w;\n this._triggerElem = x;\n this._behaviors = y;\n this._config = (z || {\n });\n this._disabled = !!this._config.disabled;\n this._listeners = [];\n if ((!this._disabled && (((x.nodeName !== \"A\") || (x.rel !== \"toggle\"))))) {\n this._setupClickListener();\n };\n this._setupKeyListener();\n x.setAttribute(\"role\", \"button\");\n m.set(w, \"Popover\", this);\n };\n t(v.prototype, i, {\n _layer: null,\n ensureInit: function() {\n if (!this._layer) {\n this._init();\n };\n },\n showLayer: function() {\n this.ensureInit();\n this._layer.show();\n s.show(this._root);\n l.addClass(this._root, \"selected\");\n this.inform(\"show\");\n this._triggerElem.setAttribute(\"aria-expanded\", \"true\");\n },\n getLayer: function() {\n return this._layer;\n },\n hideLayer: function() {\n this._layer.hide();\n this._triggerElem.setAttribute(\"aria-expanded\", \"false\");\n },\n isShown: function() {\n return (this._layer && this._layer.isShown());\n },\n setLayerContent: function(w) {\n this.ensureInit();\n this._layer.setContent(w);\n },\n _init: function() {\n var w = new j({\n context: this._triggerElem,\n position: \"below\"\n }, n.create(\"div\"));\n w.enableBehaviors([k,r,]);\n s.createInstance(w.getRoot()).setSticky(false);\n w.subscribe(\"hide\", this._onLayerHide.bind(this));\n (this._behaviors && w.enableBehaviors(this._behaviors));\n this._layer = w;\n if (this._config.alignh) {\n this._layer.setAlignment(this._config.alignh);\n };\n if (this._config.layer_content) {\n this._layer.setContent(this._config.layer_content);\n };\n this.inform(\"init\", null, h.BEHAVIOR_PERSISTENT);\n },\n _onLayerHide: function() {\n s.hide(this._root);\n l.removeClass(this._root, \"selected\");\n this.inform(\"hide\");\n if ((q.getKeyDownCode() === p.ESC)) {\n o.set(this._triggerElem);\n };\n },\n enable: function() {\n if (!this._disabled) {\n return\n };\n this._setupClickListener();\n this._setupKeyListener();\n this._disabled = false;\n },\n disable: function() {\n if (this._disabled) {\n return\n };\n if (this.isShown()) {\n this.hideLayer();\n };\n while (this._listeners.length) {\n this._listeners.pop().remove();;\n };\n if ((this._triggerElem.getAttribute(\"rel\") === \"toggle\")) {\n this._triggerElem.removeAttribute(\"rel\");\n };\n this._disabled = true;\n },\n _setupClickListener: function() {\n this._listeners.push(g.listen(this._triggerElem, \"click\", u(s.bootstrap, this._triggerElem)));\n },\n _setupKeyListener: function() {\n this._listeners.push(g.listen(this._triggerElem, \"keydown\", this._handleKeyEvent.bind(this)));\n },\n _handleKeyEvent: function(event) {\n if (event.getModifiers().any) {\n return\n };\n switch (g.getKeyCode(event)) {\n case p.DOWN:\n \n case p.UP:\n s.bootstrap(this._triggerElem);\n break;\n default:\n return;\n };\n event.prevent();\n }\n });\n e.exports = v;\n});\n__d(\"PopoverMenu\", [\"Event\",\"Arbiter\",\"ArbiterMixin\",\"ARIA\",\"BehaviorsMixin\",\"Focus\",\"Keys\",\"KeyStatus\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Arbiter\"), i = b(\"ArbiterMixin\"), j = b(\"ARIA\"), k = b(\"BehaviorsMixin\"), l = b(\"Focus\"), m = b(\"Keys\"), n = b(\"KeyStatus\"), o = b(\"copyProperties\");\n function p(q, r, s, t) {\n this._popover = q;\n this._triggerElem = r;\n this._initialMenu = s;\n q.subscribe(\"init\", this._onLayerInit.bind(this));\n q.subscribe(\"show\", this._onPopoverShow.bind(this));\n q.subscribe(\"hide\", this._onPopoverHide.bind(this));\n g.listen(this._triggerElem, \"keydown\", this._handleKeyEventOnTrigger.bind(this));\n (t && this.enableBehaviors(t));\n };\n o(p.prototype, i, k);\n o(p.prototype, {\n _popoverShown: false,\n setMenu: function(q) {\n this._menu = q;\n var r = q.getRoot();\n this._popover.setLayerContent(r);\n q.subscribe(\"done\", this._onMenuDone.bind(this));\n if (this._popoverShown) {\n this._menu.onShow();\n };\n j.owns(this._triggerElem, r);\n this.inform(\"setMenu\", null, h.BEHAVIOR_PERSISTENT);\n },\n getPopover: function() {\n return this._popover;\n },\n getTriggerElem: function() {\n return this._triggerElem;\n },\n getMenu: function() {\n return this._menu;\n },\n _onLayerInit: function() {\n this.setMenu(this._initialMenu);\n this._popover.getLayer().subscribe(\"key\", this._handleKeyEvent.bind(this));\n },\n _onPopoverShow: function() {\n if (this._menu) {\n this._menu.onShow();\n };\n this._popoverShown = true;\n },\n _onPopoverHide: function() {\n if (this._menu) {\n this._menu.onHide();\n };\n this._popoverShown = false;\n },\n _handleKeyEvent: function(q, r) {\n var s = g.getKeyCode(r);\n if ((s === m.TAB)) {\n this._popover.hideLayer();\n l.set(this._triggerElem);\n return;\n }\n ;\n if (r.getModifiers().any) {\n return\n };\n switch (s) {\n case m.RETURN:\n return;\n case m.UP:\n \n case m.DOWN:\n this._menu.handleKeydown(s, r);\n break;\n default:\n if ((this._menu.handleKeydown(s, r) === false)) {\n this._menu.blur();\n this._menu.handleKeydown(s, r);\n }\n ;\n break;\n };\n r.prevent();\n },\n _handleKeyEventOnTrigger: function(q) {\n var r = g.getKeyCode(q);\n switch (r) {\n case m.DOWN:\n \n case m.UP:\n break;\n default:\n var s = String.fromCharCode(r).toLowerCase();\n if (!/^\\s?$/.test(s)) {\n this._popover.showLayer();\n this._menu.blur();\n if ((this._menu.handleKeydown(r, q) === false)) {\n this._popover.hideLayer();\n l.set(this._triggerElem);\n }\n ;\n }\n ;\n };\n },\n _onMenuDone: function(q) {\n this._popover.hideLayer.bind(this._popover).defer();\n if (n.isKeyDown()) {\n l.set(this._triggerElem);\n };\n },\n enable: function() {\n this._popover.enable();\n },\n disable: function() {\n this._popover.disable();\n }\n });\n e.exports = p;\n});\n__d(\"PopoverAsyncMenu\", [\"Event\",\"AsyncRequest\",\"Class\",\"PopoverMenu\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"AsyncRequest\"), i = b(\"Class\"), j = b(\"PopoverMenu\"), k = b(\"copyProperties\"), l = {\n }, m = 0;\n function n(o, p, q, r, s) {\n this._endpoint = r;\n this._loadingMenu = q;\n this._instanceId = m++;\n l[this._instanceId] = this;\n this._mouseoverListener = g.listen(p, \"mouseover\", this._fetchMenu.bind(this));\n this.parent.construct(this, o, p, null, s);\n };\n n.setMenu = function(o, p) {\n l[o].setMenu(p);\n };\n n.getInstance = function(o) {\n return l[o];\n };\n i.extend(n, j);\n k(n.prototype, {\n _fetched: false,\n _mouseoverListener: null,\n _onLayerInit: function() {\n if (!this._menu) {\n this.setMenu(this._loadingMenu);\n };\n this._fetchMenu();\n this._popover.getLayer().subscribe(\"key\", this._handleKeyEvent.bind(this));\n },\n _fetchMenu: function() {\n if (this._fetched) {\n return\n };\n new h().setURI(this._endpoint).setData({\n pmid: this._instanceId\n }).send();\n this._fetched = true;\n if (this._mouseoverListener) {\n this._mouseoverListener.remove();\n this._mouseoverListener = null;\n }\n ;\n }\n });\n e.exports = n;\n});\n__d(\"PopoverMenuInterface\", [\"ArbiterMixin\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"copyProperties\"), i = b(\"emptyFunction\");\n function j() {\n \n };\n h(j.prototype, g, {\n getRoot: i,\n onShow: i,\n onHide: i,\n focusAnItem: i.thatReturnsFalse,\n blur: i,\n handleKeydown: i.thatReturnsFalse,\n done: function() {\n this.inform(\"done\");\n }\n });\n e.exports = j;\n});\n__d(\"PopoverMenuOverlappingBorder\", [\"CSS\",\"DOM\",\"Style\",\"copyProperties\",\"cx\",\"shield\",], function(a, b, c, d, e, f) {\n var g = b(\"CSS\"), h = b(\"DOM\"), i = b(\"Style\"), j = b(\"copyProperties\"), k = b(\"cx\"), l = b(\"shield\");\n function m(n) {\n this._popoverMenu = n;\n this._popover = n.getPopover();\n this._triggerElem = n.getTriggerElem();\n };\n j(m.prototype, {\n _shortBorder: null,\n _setMenuSubscription: null,\n _showSubscription: null,\n _menuSubscription: null,\n enable: function() {\n this._setMenuSubscription = this._popoverMenu.subscribe(\"setMenu\", l(this._onSetMenu, this));\n },\n disable: function() {\n this._popoverMenu.unsubscribe(this._setMenuSubscription);\n this._setMenuSubscription = null;\n this._removeBorderSubscriptions();\n this._removeShortBorder();\n },\n _onSetMenu: function() {\n this._removeBorderSubscriptions();\n this._menu = this._popoverMenu.getMenu();\n this._renderShortBorder(this._menu.getRoot());\n this._showSubscription = this._popover.subscribe(\"show\", l(this._updateBorder, this));\n this._menuSubscription = this._menu.subscribe([\"change\",\"resize\",], l(Function.prototype.defer, l(this._updateBorder, this)));\n this._updateBorder();\n },\n _updateBorder: function() {\n var n = this._menu.getRoot(), o = this._triggerElem.offsetWidth, p = Math.max((n.offsetWidth - o), 0);\n i.set(this._shortBorder, \"width\", (p + \"px\"));\n },\n _renderShortBorder: function(n) {\n this._shortBorder = h.create(\"div\", {\n className: \"-cx-PUBLIC-abstractMenu__shortborder\"\n });\n h.appendContent(n, this._shortBorder);\n g.addClass(n, \"-cx-PRIVATE-abstractMenuWithShortBorder__hasshortborder\");\n },\n _removeShortBorder: function() {\n if (this._shortBorder) {\n h.remove(this._shortBorder);\n this._shortBorder = null;\n g.removeClass(this._popoverMenu.getMenu().getRoot(), \"-cx-PRIVATE-abstractMenuWithShortBorder__hasshortborder\");\n }\n ;\n },\n _removeBorderSubscriptions: function() {\n if (this._showSubscription) {\n this._popover.unsubscribe(this._showSubscription);\n this._showSubscription = null;\n }\n ;\n if (this._menuSubscription) {\n this._menu.unsubscribe(this._menuSubscription);\n this._menuSubscription = null;\n }\n ;\n }\n });\n e.exports = m;\n});\n__d(\"Menu\", [\"CSS\",\"Class\",\"DataStore\",\"DOM\",\"Event\",\"Keys\",\"Parent\",\"PopoverMenuInterface\",\"ScrollableArea\",\"Style\",\"copyProperties\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"CSS\"), h = b(\"Class\"), i = b(\"DataStore\"), j = b(\"DOM\"), k = b(\"Event\"), l = b(\"Keys\"), m = b(\"Parent\"), n = b(\"PopoverMenuInterface\"), o = b(\"ScrollableArea\"), p = b(\"Style\"), q = b(\"copyProperties\"), r = b(\"cx\");\n function s(t, u) {\n this.parent.construct(this);\n this._items = [];\n for (var v = 0; (v < t.length); v++) {\n this._items[v] = new t[v].ctor(t[v]);;\n };\n this._config = (u || {\n });\n this._theme = (u.theme || {\n });\n };\n h.extend(s, n);\n q(s.prototype, {\n _focused: null,\n _root: null,\n addItem: function(t) {\n this._addItem(t);\n },\n addItemBefore: function(t, u) {\n this._addItem(t, u, false);\n },\n addItemAfter: function(t, u) {\n this._addItem(t, u, true);\n },\n _addItem: function(t, u, v) {\n var w = this._items.indexOf(t);\n if ((w >= 0)) {\n var x = (v ? -1 : 1);\n if ((this._items[(w + x)] == u)) {\n return\n };\n this._items.splice(w, 1);\n }\n ;\n if (u) {\n w = this._items.indexOf(u);\n if ((w < 0)) {\n throw new Error(\"reference item must already be in the menu\")\n };\n if (v) {\n w++;\n };\n this._items.splice(w, 0, t);\n }\n else this._items.push(t);\n ;\n if (this._root) {\n this._insertItem(t, u, v);\n };\n },\n removeItem: function(t) {\n var u = this._items.indexOf(t);\n if ((u < 0)) {\n return\n };\n this._items.splice(u, 1);\n (this._root && j.remove(t.getRoot()));\n },\n forEachItem: function(t) {\n this._items.forEach(t);\n },\n getItemAt: function(t) {\n return (this._items[t] || null);\n },\n getRoot: function() {\n if (!this._root) {\n this._render();\n };\n return this._root;\n },\n onShow: function() {\n if (this._config.maxheight) {\n if (!this._scrollableArea) {\n this._scrollableArea = o.fromNative(this._scrollableElems.root, {\n fade: true\n });\n }\n else this._scrollableArea.resize();\n \n };\n this.focusAnItem();\n },\n onHide: function() {\n this.blur();\n },\n focusAnItem: function() {\n return this._attemptFocus(0, 1);\n },\n blur: function() {\n if (this._focused) {\n this._focused.blur();\n this._focused = null;\n this.inform(\"blur\");\n }\n ;\n },\n handleKeydown: function(t, u) {\n var v = this._items.indexOf(this._focused);\n switch (t) {\n case l.UP:\n \n case l.DOWN:\n var w = ((t === l.UP) ? -1 : 1);\n if ((v !== -1)) {\n return this._attemptFocus((v + w), w);\n }\n else if ((t === l.UP)) {\n return this._attemptFocus((this._items.length - 1), -1);\n }\n else return this._attemptFocus(0, 1)\n \n ;\n break;\n case l.SPACE:\n if ((this._items.indexOf(this._focused) !== -1)) {\n this._handleItemClick(this._focused, u);\n return true;\n }\n ;\n return false;\n default:\n var x = String.fromCharCode(t).toLowerCase(), y;\n for (var z = (v + 1); (z < this._items.length); z++) {\n y = this._items[z].getAccessKey();\n if ((y && (y.charAt(0).toLowerCase() === x))) {\n if (this._focusItem(this._items[z])) {\n return true\n }\n };\n };\n return false;\n };\n },\n _render: function() {\n this._ul = j.create(\"ul\", {\n className: \"-cx-PUBLIC-abstractMenu__menu\"\n });\n this._ul.setAttribute(\"role\", \"menu\");\n this._items.forEach(function(v) {\n this._insertItem(v, null);\n }.bind(this));\n k.listen(this._ul, \"click\", this._handleClick.bind(this));\n k.listen(this._ul, \"mouseover\", this._handleMouseOver.bind(this));\n k.listen(this._ul, \"mouseout\", this._handleMouseOut.bind(this));\n var t = this._ul;\n if (this._config.maxheight) {\n this._scrollableElems = o.renderDOM();\n j.setContent(this._scrollableElems.content, this._ul);\n t = this._scrollableElems.root;\n p.set(this._scrollableElems.wrap, \"max-height\", (this._config.maxheight + \"px\"));\n }\n ;\n var u = ((\"-cx-PUBLIC-abstractMenu__wrapper\" + ((this._config.className ? (\" \" + this._config.className) : \"\"))) + ((this._theme.className ? (\" \" + this._theme.className) : \"\")));\n this._root = j.create(\"div\", {\n className: u\n }, j.create(\"div\", {\n className: \"-cx-PUBLIC-abstractMenu__border\"\n }, t));\n (this._config.id && this._root.setAttribute(\"id\", this._config.id));\n this.inform(\"rendered\", this._root);\n },\n _needsDefaultBehavior: function(t) {\n if ((t.isDefaultRequested && t.isDefaultRequested())) {\n var u = m.byTag(t.getTarget(), \"a\"), v = (u && u.getAttribute(\"href\"));\n return (v && (v[0] !== \"#\"));\n }\n ;\n return false;\n },\n _handleClick: function(t) {\n if (!this._needsDefaultBehavior(t)) {\n var u = this._getItemInstance(t.getTarget());\n if (u) {\n return this._handleItemClick(u, t)\n };\n }\n ;\n },\n _handleItemClick: function(t, u) {\n this.inform(\"itemclick\", {\n item: t,\n event: u\n });\n if (t.hasAction()) {\n this.done();\n };\n return t.handleClick();\n },\n _handleMouseOver: function(t) {\n var u = this._getItemInstance(t.getTarget());\n (u && this._focusItem(u, true));\n },\n _handleMouseOut: function(t) {\n var u = this._getItemInstance(t.getTarget());\n if ((u && (this._focused === u))) {\n this.blur();\n };\n },\n _insertItem: function(t, u, v) {\n var w = t.getRoot();\n g.addClass(w, \"__MenuItem\");\n i.set(w, \"MenuItem\", t);\n if (u) {\n var x = (v ? j.insertAfter : j.insertBefore);\n x(u.getRoot(), w);\n }\n else j.appendContent(this._ul, w);\n ;\n },\n _attemptFocus: function(t, u) {\n var v = this.getItemAt(t);\n if (v) {\n if (this._focusItem(v)) {\n return true;\n }\n else return this._attemptFocus((t + u), u)\n \n };\n return false;\n },\n _focusItem: function(t, u) {\n if ((t.focus(u) !== false)) {\n if ((this._focused !== t)) {\n this.blur();\n this._focused = t;\n this.inform(\"focus\");\n }\n ;\n return true;\n }\n ;\n return false;\n },\n _getItemInstance: function(t) {\n var u = m.byClass(t, \"__MenuItem\");\n return (u ? i.get(u, \"MenuItem\") : null);\n }\n });\n e.exports = s;\n});\n__d(\"MenuItemInterface\", [\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"emptyFunction\");\n function i() {\n \n };\n g(i.prototype, {\n _root: null,\n getRoot: function() {\n if (!this._root) {\n this._root = this.render();\n };\n return this._root;\n },\n render: h,\n getAccessKey: h,\n hasAction: h.thatReturnsFalse,\n focus: h.thatReturnsFalse,\n blur: h.thatReturnsFalse,\n handleClick: h.thatReturnsFalse\n });\n e.exports = i;\n});\n__d(\"MenuItemBase\", [\"Class\",\"DOM\",\"HTML\",\"MenuItemInterface\",\"copyProperties\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"DOM\"), i = b(\"HTML\"), j = b(\"MenuItemInterface\"), k = b(\"copyProperties\"), l = b(\"cx\");\n function m(n) {\n this.parent.construct(this);\n this._data = n;\n };\n g.extend(m, j);\n k(m.prototype, {\n render: function() {\n var n = \"-cx-PUBLIC-abstractMenuItem__root\";\n if (this._data.className) {\n n += (\" \" + this._data.className);\n };\n var o = {\n className: n,\n \"aria-selected\": \"false\"\n };\n for (var p in this._data) {\n if ((p.indexOf(\"data-\") === 0)) {\n o[p] = this._data[p];\n };\n };\n return h.create(\"li\", o, this._renderItemContent());\n },\n _renderItemContent: function() {\n return i(this._data.markup).getNodes();\n }\n });\n e.exports = m;\n});\n__d(\"MenuItem\", [\"Class\",\"CSS\",\"DOM\",\"MenuItemBase\",\"React\",\"copyProperties\",\"cx\",\"emptyFunction\",\"startsWith\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"CSS\"), i = b(\"DOM\"), j = b(\"MenuItemBase\"), k = b(\"React\"), l = b(\"copyProperties\"), m = b(\"cx\"), n = b(\"emptyFunction\"), o = b(\"startsWith\"), p = [\"href\",\"rel\",\"ajaxify\",\"target\",];\n function q(t, u) {\n var v = {\n };\n p.forEach(function(w) {\n if ((w in u)) {\n v[w] = u[w];\n };\n });\n i.setAttributes(t, v);\n };\n function r(t) {\n p.forEach(function(u) {\n t.removeAttribute(u);\n });\n };\n function s(t) {\n this.parent.construct(this, t);\n this._disabled = !!this._data.disabled;\n };\n g.extend(s, j);\n l(s.prototype, {\n getValue: function() {\n return this._data.value;\n },\n getAccessKey: function() {\n return (this._data.label && this._data.label.charAt(0));\n },\n hasAction: n.thatReturnsTrue,\n focus: function(t) {\n if ((this.isDisabled() || !this._root.offsetParent)) {\n return false\n };\n h.addClass(this._root, \"-cx-PUBLIC-abstractMenuItem__highlighted\");\n h.addClass(this._root, \"selected\");\n this._root.setAttribute(\"aria-selected\", \"true\");\n (t || this._anchor.focus());\n },\n blur: function() {\n h.removeClass(this._root, \"-cx-PUBLIC-abstractMenuItem__highlighted\");\n h.removeClass(this._root, \"selected\");\n this._root.setAttribute(\"aria-selected\", \"false\");\n },\n handleClick: function() {\n if (this.isDisabled()) {\n return false\n };\n if ((typeof this._onclickHandler === \"function\")) {\n return this._onclickHandler()\n };\n return true;\n },\n setOnClickHandler: function(t) {\n this._onclickHandler = t;\n },\n _renderItemContent: function() {\n this._anchor = i.create(\"a\", {\n className: \"-cx-PUBLIC-abstractMenuItem__anchor\",\n tabIndex: (this.isDisabled() ? -1 : 0)\n });\n if (this._data.reactChildren) {\n k.renderComponent(k.DOM.span({\n className: \"-cx-PUBLIC-abstractMenuItem__label\"\n }, this._data.reactChildren), this._anchor);\n this._data.label = (this._anchor.innerText || this._anchor.textContent);\n }\n else i.setContent(this._anchor, i.create(\"span\", {\n className: \"-cx-PUBLIC-abstractMenuItem__label\"\n }, (this._data.markup || this._data.label)));\n ;\n if (this._data.icon) {\n i.prependContent(this._anchor, this._data.icon);\n h.addClass(this._anchor, \"-cx-PUBLIC-abstractMenuItem__hasicon\");\n }\n ;\n if (!this.isDisabled()) {\n q(this._anchor, this._data);\n };\n for (var t in this._data) {\n if (((typeof t === \"string\") && o(t, \"data-\"))) {\n this._anchor.setAttribute(t, this._data[t]);\n };\n };\n this._anchor.setAttribute(\"role\", \"menuitem\");\n this._anchor.setAttribute(\"title\", this._data.title);\n return this._anchor;\n },\n isDisabled: function() {\n return this._disabled;\n },\n enable: function() {\n q(this._anchor, this._data);\n this._anchor.tabIndex = 0;\n h.removeClass(this._root, \"-cx-PUBLIC-abstractMenuItem__disabled\");\n this._disabled = false;\n },\n disable: function() {\n r(this._anchor);\n this._anchor.tabIndex = -1;\n h.addClass(this._root, \"-cx-PUBLIC-abstractMenuItem__disabled\");\n this._disabled = true;\n },\n render: function() {\n var t = this.parent.render();\n if (this._data.disabled) {\n h.addClass(t, \"-cx-PUBLIC-abstractMenuItem__disabled\");\n };\n return t;\n }\n });\n e.exports = s;\n});\n__d(\"MenuSelectableItem\", [\"Class\",\"CSS\",\"MenuItem\",\"copyProperties\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"CSS\"), i = b(\"MenuItem\"), j = b(\"copyProperties\"), k = b(\"cx\");\n function l(m) {\n this.parent.construct(this, m);\n this._selected = !!this._data.selected;\n };\n g.extend(l, i);\n j(l.prototype, {\n _selected: false,\n getLabel: function() {\n return this._data.label;\n },\n getIcon: function() {\n return this._data.icon;\n },\n isSelected: function() {\n return this._selected;\n },\n select: function() {\n if (this.isDisabled()) {\n return false\n };\n h.addClass(this._root, \"-cx-PUBLIC-abstractMenuItem__checked\");\n this._selected = true;\n },\n deselect: function() {\n h.removeClass(this._root, \"-cx-PUBLIC-abstractMenuItem__checked\");\n this._selected = false;\n },\n render: function() {\n var m = this.parent.render();\n if (this._data.selected) {\n h.addClass(m, \"-cx-PUBLIC-abstractMenuItem__checked\");\n };\n return m;\n }\n });\n e.exports = l;\n});\n__d(\"SelectableMenu\", [\"Class\",\"Menu\",\"arrayContains\",\"copyProperties\",\"createArrayFrom\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"Menu\"), i = b(\"arrayContains\"), j = b(\"copyProperties\"), k = b(\"createArrayFrom\");\n function l(o, p) {\n this.parent.construct(this, o, p);\n };\n function m(o) {\n return ((o.select && o.deselect) && o.isSelected);\n };\n function n(o) {\n return (m(o) && o.isSelected());\n };\n g.extend(l, h);\n j(l.prototype, {\n focusAnItem: function() {\n for (var o = 0; (o < this._items.length); o++) {\n if (n(this._items[o])) {\n if ((this._focusItem(this._items[o]) !== false)) {\n return true\n }\n };\n };\n return this.parent.focusAnItem();\n },\n setValue: function(o) {\n if (!this._root) {\n this._render();\n };\n var p = k(o);\n this._items.forEach(function(q) {\n if (m(q)) {\n if (i(p, q.getValue())) {\n q.select();\n }\n else if (n(q)) {\n q.deselect();\n }\n \n };\n });\n this.inform(\"change\", this._getSelection());\n },\n _handleItemClick: function(o, p) {\n if (!m(o)) {\n return this.parent._handleItemClick(o, p)\n };\n var q = this.inform(\"itemclick\", {\n item: o,\n event: p\n });\n if (q) {\n return\n };\n if (this._config.multiple) {\n var r = (n(o) ? o.deselect() : o.select());\n if ((r !== false)) {\n this.inform(\"change\", this._getSelection());\n };\n }\n else {\n if (!n(o)) {\n if ((o.select() !== false)) {\n this._items.forEach(function(s) {\n if ((n(s) && (s !== o))) {\n s.deselect();\n };\n });\n this.inform(\"change\", this._getSelection());\n }\n \n };\n this.done();\n }\n ;\n return o.handleClick();\n },\n _getSelection: function() {\n var o = [];\n this._items.forEach(function(p) {\n if (n(p)) {\n o.push({\n label: p.getLabel(),\n value: p.getValue(),\n item: p\n });\n };\n });\n if (!this._config.multiple) {\n o = o[0];\n };\n return o;\n }\n });\n e.exports = l;\n});\n__d(\"PopoverLoadingMenu\", [\"Class\",\"DOM\",\"PopoverMenuInterface\",\"copyProperties\",\"cx\",\"joinClasses\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"DOM\"), i = b(\"PopoverMenuInterface\"), j = b(\"copyProperties\"), k = b(\"cx\"), l = b(\"joinClasses\");\n function m(n) {\n this.parent.construct(this);\n this._config = (n || {\n });\n this._theme = (n.theme || {\n });\n };\n g.extend(m, i);\n j(m.prototype, {\n _root: null,\n getRoot: function() {\n if (!this._root) {\n this._root = h.create(\"div\", {\n className: l(\"-cx-PUBLIC-abstractMenu__wrapper\", this._config.className, this._theme.className)\n }, h.create(\"div\", {\n className: \"-cx-PUBLIC-abstractMenu__border\"\n }, h.create(\"div\", {\n className: \"-cx-PUBLIC-abstractMenu__menu -cx-PUBLIC-abstractLoadingMenu__root\"\n }, h.create(\"span\", {\n className: \"-cx-PUBLIC-abstractLoadingMenu__spinner\"\n }))));\n };\n return this._root;\n }\n });\n e.exports = m;\n});\n__d(\"ContextualLayerAsyncRelative\", [\"Event\",\"copyProperties\",\"Parent\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"copyProperties\"), i = b(\"Parent\");\n function j(k) {\n this._layer = k;\n };\n h(j.prototype, {\n _layerSubscription: null,\n _listener: null,\n enable: function() {\n this._layerSubscription = this._layer.subscribe(\"show\", this._attachListener.bind(this));\n if (this._layer.isShown()) {\n this._attachListener();\n };\n },\n disable: function() {\n this._layerSubscription.unsubscribe();\n this._layerSubscription = null;\n if (this._listener) {\n this._listener.remove();\n this._listener = null;\n }\n ;\n },\n _attachListener: function() {\n this._listener = g.listen(this._layer.getRoot(), \"click\", this._onclick.bind(this));\n },\n _onclick: function(k) {\n var l = i.byTag(k.getTarget(), \"A\");\n if (!l) {\n return\n };\n var m = l.getAttribute(\"ajaxify\"), n = l.href, o = (m || n);\n if (((l.rel === \"async\") || (l.rel === \"async-post\"))) {\n d([\"AsyncRequest\",], function(p) {\n p.bootstrap(o, this._layer.getContext(), (l.rel === \"async-post\"));\n }.bind(this));\n return false;\n }\n ;\n }\n });\n e.exports = j;\n});\n__d(\"HoverFlyout\", [\"Arbiter\",\"ArbiterMixin\",\"DataStore\",\"Event\",\"Keys\",\"arrayContains\",\"copyProperties\",\"removeFromArray\",\"shield\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ArbiterMixin\"), i = b(\"DataStore\"), j = b(\"Event\"), k = b(\"Keys\"), l = b(\"arrayContains\"), m = b(\"copyProperties\"), n = b(\"removeFromArray\"), o = b(\"shield\");\n function p(q, r, s, t) {\n if (q) {\n this._showDelay = s;\n this._hideDelay = t;\n this.init(q);\n if (r) {\n this.initNode(r);\n };\n }\n ;\n g.subscribe(\"SwapButtonDEPRECATED/focusOnJoinButton\", o(this.hideFlyout, this), g.SUBSCRIBE_ALL);\n };\n m(p.prototype, h, {\n init: function(q) {\n this._flyout = q;\n this._showDelay = (this._showDelay || 0);\n this._hideDelay = (this._hideDelay || 100);\n this._showTimeout = null;\n this._hideTimeout = null;\n this._flyoutSubscriptions = [this._flyout.subscribe(\"mouseenter\", this._onFlyoutMouseEnter.bind(this)),this._flyout.subscribe(\"mouseleave\", o(this.hideFlyout, this)),];\n this._nodes = [];\n this._dataStoreUnique = ((\"HoverFlyout_\" + Date.now()) + \"_listeners\");\n return this;\n },\n initNode: function(q) {\n if (l(this._nodes, q)) {\n return this\n };\n this._nodes.push(q);\n i.set(q, this._dataStoreUnique, [j.listen(q, \"mouseenter\", this._onNodeMouseEnter.bind(this, q)),j.listen(q, \"mouseleave\", o(this.hideFlyout, this)),j.listen(q, \"click\", this._onNodeMouseEnter.bind(this, q)),j.listen(q, \"keydown\", this._onNodeKeyEscape.bind(this)),]);\n return this;\n },\n deactivateNode: function(q) {\n var r = i.get(q, this._dataStoreUnique);\n if (r) {\n while (r.length) {\n r.pop().remove();;\n }\n };\n n(this._nodes, q);\n },\n setShowDelay: function(q) {\n this._showDelay = q;\n return this;\n },\n setHideDelay: function(q) {\n this._hideDelay = q;\n return this;\n },\n showFlyout: function(q, r) {\n this.setActiveNode(q);\n if (r) {\n this._flyout.setContext(q).show();\n this.inform(\"show\", q);\n }\n else this._showTimeout = this.showFlyout.bind(this, q, true).defer(this._showDelay);\n ;\n return this;\n },\n hideFlyout: function(q) {\n clearTimeout(this._showTimeout);\n if (q) {\n this._flyout.hide();\n (this._activeNode && this.inform(\"hide\", this._activeNode));\n this._activeNode = null;\n }\n else this._hideTimeout = this.hideFlyout.bind(this, true).defer(this._hideDelay);\n ;\n },\n hideFlyoutDelayed: function(q) {\n clearTimeout(this._showTimeout);\n clearTimeout(this._hideTimeout);\n this._hideTimeout = this.hideFlyout.bind(this, true).defer(q);\n },\n getActiveNode: function() {\n return this._activeNode;\n },\n setActiveNode: function(q) {\n clearTimeout(this._hideTimeout);\n if ((this._activeNode && (this._activeNode !== q))) {\n this.hideFlyout(true);\n };\n this._activeNode = q;\n return this;\n },\n clearNodes: function() {\n for (var q = this._nodes.length; (q > 0); q--) {\n this.deactivateNode(this._nodes[(q - 1)]);;\n };\n },\n destroy: function() {\n while (this._flyoutSubscriptions.length) {\n this._flyout.unsubscribe(this._flyoutSubscriptions.pop());;\n };\n this.clearNodes();\n },\n _onNodeMouseEnter: function(q) {\n if ((this._activeNode === q)) {\n clearTimeout(this._hideTimeout);\n }\n else this.showFlyout(q);\n ;\n },\n _onFlyoutMouseEnter: function() {\n clearTimeout(this._hideTimeout);\n },\n _onNodeKeyEscape: function(event) {\n if ((j.getKeyCode(event) === k.ESC)) {\n (this._activeNode && this.inform(\"hide\", this._activeNode));\n this._activeNode = null;\n }\n ;\n }\n });\n e.exports = (a.HoverFlyout || p);\n});"); |
| // 13136 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s3b31c8884df9af5961b1fe9f6e6838b6210fcc05"); |
| // 13137 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"OYzUx\",]);\n}\n;\n;\n__d(\"ComposerXAttachmentBootstrap\", [\"JSBNG__CSS\",\"Form\",\"Parent\",\"URI\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = b(\"Form\"), i = b(\"Parent\"), j = b(\"URI\"), k = b(\"cx\"), l = [], m = {\n bootstrap: function(n) {\n m.load(i.byTag(n, \"form\"), n.getAttribute(\"data-endpoint\"));\n },\n load: function(n, o, p) {\n var q = j(o).addQueryData({\n composerurihash: m.getURIHash(o)\n });\n g.conditionClass(n, \"-cx-PRIVATE-fbComposerAttachment__hidespinner\", p);\n var r = i.byClass(n, \"-cx-PRIVATE-fbComposer__attachmentform\");\n g.removeClass(r, \"async_saving\");\n h.setDisabled(n, false);\n n.action = q.toString();\n h.bootstrap(n);\n },\n getURIHash: function(n) {\n if (((n === \"initial\"))) {\n return \"initial\";\n }\n ;\n ;\n var o = l.indexOf(n);\n if (((o !== -1))) {\n return ((o + \"\"));\n }\n else {\n o = l.length;\n l[o] = n;\n return ((o + \"\"));\n }\n ;\n ;\n }\n };\n e.exports = m;\n});\n__d(\"ComposerXStore\", [\"function-extensions\",\"Arbiter\",\"ge\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"Arbiter\"), h = b(\"ge\"), i = {\n };\n function j(l, m) {\n return ((((((\"ComposerX/\" + l)) + \"/\")) + m));\n };\n;\n var k = {\n set: function(l, m, n) {\n if (!i[l]) {\n i[l] = {\n };\n }\n ;\n ;\n i[l][m] = n;\n g.inform(j(l, m), {\n }, g.BEHAVIOR_STATE);\n },\n get: function(l, m) {\n if (i[l]) {\n return i[l][m];\n }\n ;\n ;\n return null;\n },\n getAllForComposer: function(l) {\n return ((i[l] || {\n }));\n },\n waitForComponents: function(l, m, n) {\n g.registerCallback(n, m.map(j.curry(l)));\n }\n };\n g.subscribe(\"page_transition\", function() {\n {\n var fin247keys = ((window.top.JSBNG_Replay.forInKeys)((i))), fin247i = (0);\n var l;\n for (; (fin247i < fin247keys.length); (fin247i++)) {\n ((l) = (fin247keys[fin247i]));\n {\n if (!h(l)) {\n delete i[l];\n }\n ;\n ;\n };\n };\n };\n ;\n });\n e.exports = k;\n});\n__d(\"ComposerX\", [\"Arbiter\",\"ComposerXAttachmentBootstrap\",\"ComposerXStore\",\"JSBNG__CSS\",\"DOM\",\"DOMQuery\",\"copyProperties\",\"csx\",\"cx\",\"getObjectValues\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ComposerXAttachmentBootstrap\"), i = b(\"ComposerXStore\"), j = b(\"JSBNG__CSS\"), k = b(\"DOM\"), l = b(\"DOMQuery\"), m = b(\"copyProperties\"), n = b(\"csx\"), o = b(\"cx\"), p = b(\"getObjectValues\"), q = \"any\";\n function r(s) {\n this._root = s;\n this._composerID = s.id;\n this._attachments = {\n };\n this._attachmentFetchForm = l.JSBNG__find(s, \".-cx-PRIVATE-fbComposer__attachmentform\");\n this._resetSubscription = g.subscribe(\"composer/publish\", function(t, u) {\n if (((u.composer_id === this._composerID))) {\n this.reset();\n }\n ;\n ;\n }.bind(this));\n };\n;\n m(r.prototype, {\n _endpointHashToShow: q,\n _lastFetchEndpoint: \"\",\n _initialAttachmentEndpoint: \"\",\n getAttachment: function(s, t) {\n var u = h.getURIHash(s);\n this._endpointHashToShow = u;\n var v = this._attachments[u];\n if (v) {\n this._showAttachmentAfterComponentsLoaded(u);\n }\n else this.fetchAttachmentData(s, t);\n ;\n ;\n },\n fetchAttachmentData: function(s, t) {\n var u = h.getURIHash(s);\n if (this._attachments[u]) {\n return;\n }\n ;\n ;\n if (((s !== this._lastFetchEndpoint))) {\n h.load(this._attachmentFetchForm, s, t);\n this._lastFetchEndpoint = s;\n }\n ;\n ;\n },\n setAttachment: function(s, t, u, v) {\n this._setupAttachment(s, t, u, v);\n this._showAttachmentAfterComponentsLoaded(s);\n },\n setInitialAttachment: function(s, t, u, v) {\n var w = h.getURIHash(s);\n this._setupAttachment(w, t, u, v);\n this._initialAttachmentEndpoint = s;\n if (!this._currentInstance) {\n this._showAttachmentAfterComponentsLoaded(w);\n }\n ;\n ;\n },\n setComponent: function(s, t) {\n if (!i.get(this._composerID, s)) {\n i.set(this._composerID, s, t);\n k.appendContent(this._attachmentFetchForm, k.create(\"input\", {\n type: \"hidden\",\n JSBNG__name: \"loaded_components[]\",\n value: s\n }));\n }\n ;\n ;\n },\n reset: function() {\n if (this._currentInstance) {\n this._currentInstance.cleanup();\n this._currentInstance = null;\n }\n ;\n ;\n {\n var fin248keys = ((window.top.JSBNG_Replay.forInKeys)((this._attachments))), fin248i = (0);\n var s;\n for (; (fin248i < fin248keys.length); (fin248i++)) {\n ((s) = (fin248keys[fin248i]));\n {\n this._attachments[s].instance.reset();\n ;\n };\n };\n };\n ;\n var t = i.getAllForComposer(this._composerID);\n p(t).forEach(function(u) {\n if (u.reset) {\n u.reset(u);\n }\n ;\n ;\n });\n this.getAttachment(this._initialAttachmentEndpoint);\n g.inform(\"composer/reset\");\n },\n destroy: function() {\n if (this._resetSubscription) {\n this._resetSubscription.unsubscribe();\n this._resetSubscription = null;\n }\n ;\n ;\n },\n addPlaceholders: function(s, t) {\n var u;\n {\n var fin249keys = ((window.top.JSBNG_Replay.forInKeys)((this._attachments))), fin249i = (0);\n var v;\n for (; (fin249i < fin249keys.length); (fin249i++)) {\n ((v) = (fin249keys[fin249i]));\n {\n u = this._attachments[v];\n if (((u.instance === s))) {\n t.forEach(function(w) {\n u.placeholders.push(w);\n u.required_components.push(w.component_name);\n });\n break;\n }\n ;\n ;\n };\n };\n };\n ;\n if (((this._currentInstance === s))) {\n this._fillPlaceholders(t);\n }\n ;\n ;\n },\n _setupAttachment: function(s, t, u, v) {\n t.setComposerID(this._composerID);\n this._attachments[s] = {\n instance: t,\n placeholders: u,\n required_components: v\n };\n var w = l.JSBNG__find(this._root, \"div.-cx-PUBLIC-fbComposer__content\"), x = t.getRoot();\n if (((x.parentNode !== w))) {\n j.hide(x);\n k.appendContent(w, x);\n }\n ;\n ;\n },\n _showAttachment: function(s, t, u) {\n if (((this._currentInstance === s))) {\n return;\n }\n ;\n ;\n if (((this._endpointHashToShow === q))) {\n this._endpointHashToShow = null;\n }\n else if (((this._endpointHashToShow !== t))) {\n return;\n }\n \n ;\n ;\n if (this._currentInstance) {\n if (!this._currentInstance.canSwitchAway()) {\n return;\n }\n ;\n ;\n this._currentInstance.cleanup();\n }\n ;\n ;\n this._currentInstance = s;\n var v = l.JSBNG__find(this._root, \"div.-cx-PUBLIC-fbComposer__content\"), w = v.childNodes, x = s.getRoot();\n for (var y = 0; ((y < w.length)); y++) {\n if (((w[y] !== x))) {\n j.hide(w[y]);\n }\n ;\n ;\n };\n ;\n j.show(x);\n this._fillPlaceholders(u);\n var z = h.getURIHash(this._initialAttachmentEndpoint), aa = ((t === z));\n s.initWithComponents(aa);\n this._setAttachmentSelectedClass(s.attachmentClassName);\n g.inform(\"composer/initializedAttachment\", {\n composerRoot: this._root,\n isInitial: aa\n });\n },\n _showAttachmentAfterComponentsLoaded: function(s) {\n var t = this._attachments[s];\n i.waitForComponents(this._composerID, t.required_components, this._showAttachment.bind(this, t.instance, s, t.placeholders));\n },\n _fillPlaceholders: function(s) {\n s.forEach(function(t) {\n var u = i.get(this._composerID, t.component_name);\n if (((t.element !== u.element.parentNode))) {\n k.setContent(t.element, u.element);\n }\n ;\n ;\n }.bind(this));\n },\n _setAttachmentSelectedClass: function(s) {\n var t = l.scry(this._root, \".-cx-PUBLIC-fbComposerAttachment__selected\")[0], u;\n if (t) {\n j.removeClass(t, \"-cx-PUBLIC-fbComposerAttachment__selected\");\n u = l.scry(t, \"*[aria-pressed=\\\"true\\\"]\")[0];\n if (u) {\n u.setAttribute(\"aria-pressed\", \"false\");\n }\n ;\n ;\n }\n ;\n ;\n if (s) {\n var v = l.scry(this._root, ((\".\" + s)))[0];\n if (v) {\n j.addClass(v, \"-cx-PUBLIC-fbComposerAttachment__selected\");\n u = l.scry(v, \"*[aria-pressed=\\\"false\\\"]\")[0];\n if (u) {\n u.setAttribute(\"aria-pressed\", \"true\");\n }\n ;\n ;\n }\n ;\n ;\n }\n ;\n ;\n }\n });\n e.exports = r;\n});\n__d(\"ComposerXAttachment\", [\"ComposerXStore\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"ComposerXStore\"), h = b(\"copyProperties\"), i = b(\"emptyFunction\");\n function j() {\n \n };\n;\n h(j.prototype, {\n getRoot: i,\n initWithComponents: function(k) {\n \n },\n cleanup: i,\n reset: i,\n attachmentClassName: \"\",\n getComponent: function(k) {\n return g.get(this._composerID, k);\n },\n canSwitchAway: i.thatReturnsTrue,\n setComposerID: function(k) {\n this._composerID = k;\n },\n allowOGTagPreview: function() {\n return false;\n }\n });\n e.exports = j;\n});\n__d(\"ComposerXController\", [\"Arbiter\",\"ComposerX\",\"ComposerXAttachmentBootstrap\",\"Parent\",\"$\",\"cx\",\"emptyFunction\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ComposerX\"), i = b(\"ComposerXAttachmentBootstrap\"), j = b(\"Parent\"), k = b(\"$\"), l = b(\"cx\"), m = b(\"emptyFunction\"), n = b(\"ge\"), o = {\n };\n function p(r) {\n var s = j.byClass(k(r), \"-cx-PRIVATE-fbComposer__root\"), t = s.id;\n if (!o[t]) {\n o[t] = new h(s);\n }\n ;\n ;\n return o[t];\n };\n;\n var q = {\n getAttachment: function(r, s, t) {\n var u = p(r);\n u.getAttachment(s, t);\n },\n fetchAttachmentData: function(r, s, t) {\n p(r).fetchAttachmentData(s, t);\n },\n setAttachment: function(r, s, t, u, v) {\n var w = p(r);\n w.setAttachment(s, t, u, v);\n },\n setInitialAttachment: function(r, s, t, u, v) {\n var w = p(r);\n w.setInitialAttachment(s, t, u, v);\n },\n setComponent: function(r, s, t) {\n var u = p(r);\n u.setComponent(s, t);\n },\n reset: function(r) {\n var s = p(r);\n s.reset();\n },\n holdTheMarkup: m,\n getEndpoint: function(r, s, t) {\n var u = p(r);\n i.load(u._attachmentFetchForm, s, t);\n },\n addPlaceholders: function(r, s, t) {\n var u = p(r);\n u.addPlaceholders(s, t);\n }\n };\n i.bootstrap = function(r) {\n q.getAttachment(r, r.getAttribute(\"data-endpoint\"));\n };\n g.subscribe(\"page_transition\", function() {\n {\n var fin250keys = ((window.top.JSBNG_Replay.forInKeys)((o))), fin250i = (0);\n var r;\n for (; (fin250i < fin250keys.length); (fin250i++)) {\n ((r) = (fin250keys[fin250i]));\n {\n if (!n(r)) {\n o[r].destroy();\n delete o[r];\n }\n ;\n ;\n };\n };\n };\n ;\n });\n e.exports = q;\n});\n__d(\"DragDropFileUpload\", [], function(a, b, c, d, e, f) {\n f.isSupported = function() {\n return ((typeof (JSBNG__FileList) !== \"undefined\"));\n };\n});\n__d(\"DocumentDragDrop\", [\"JSBNG__Event\",\"Arbiter\",\"JSBNG__CSS\",\"DOM\",\"DOMQuery\",\"DragDropFileUpload\",\"emptyFunction\",\"getObjectValues\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Arbiter\"), i = b(\"JSBNG__CSS\"), j = b(\"DOM\"), k = b(\"DOMQuery\"), l = b(\"DragDropFileUpload\"), m = b(\"emptyFunction\"), n = b(\"getObjectValues\"), o = {\n }, p = 0;\n function q() {\n p = 0;\n n(o).forEach(function(t) {\n i.removeClass(t.element, t.className);\n h.inform(\"dragleave\", {\n element: t.element\n });\n });\n };\n;\n function r() {\n if (!l.isSupported()) {\n return;\n }\n ;\n ;\n g.listen(JSBNG__document, \"dragenter\", function(u) {\n if (((p === 0))) {\n n(o).forEach(function(v) {\n i.addClass(v.element, v.className);\n h.inform(\"dragenter\", {\n element: v.element,\n JSBNG__event: u\n });\n });\n }\n ;\n ;\n p++;\n });\n g.listen(JSBNG__document, \"dragleave\", function(u) {\n p--;\n if (((p === 0))) {\n q();\n }\n ;\n ;\n });\n g.listen(JSBNG__document, \"drop\", function(u) {\n var v = u.getTarget();\n if (k.isNodeOfType(u.getTarget(), \"input\")) {\n if (((v.type === \"file\"))) {\n return;\n }\n ;\n }\n ;\n ;\n u.prevent();\n });\n g.listen(JSBNG__document, \"dragover\", g.prevent);\n var t = null;\n JSBNG__document.JSBNG__addEventListener(\"dragover\", function() {\n ((t && JSBNG__clearTimeout(t)));\n t = JSBNG__setTimeout(q, 839);\n }, true);\n r = m;\n };\n;\n var s = {\n registerStatusElement: function(t, u) {\n r();\n o[j.getID(t)] = {\n element: t,\n className: u\n };\n },\n removeStatusElement: function(t) {\n var u = j.getID(t), v = o[u];\n i.removeClass(v.element, v.className);\n delete o[u];\n }\n };\n e.exports = s;\n});\n__d(\"DragDropTarget\", [\"JSBNG__Event\",\"JSBNG__CSS\",\"DocumentDragDrop\",\"DragDropFileUpload\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"JSBNG__CSS\"), i = b(\"DocumentDragDrop\"), j = b(\"DragDropFileUpload\"), k = b(\"copyProperties\"), l = b(\"emptyFunction\");\n function m(n) {\n this._element = n;\n this._listeners = [];\n this._statusElem = n;\n this._dragEnterCount = 0;\n this._enabled = false;\n };\n;\n k(m.prototype, {\n _onFilesDropCallback: l,\n _onURLDropCallback: l,\n _onPlainTextDropCallback: l,\n _onDropCallback: l,\n _fileFilterFn: l.thatReturnsArgument,\n setOnFilesDropCallback: function(n) {\n this._onFilesDropCallback = n;\n return this;\n },\n setOnURLDropCallback: function(n) {\n this._onURLDropCallback = n;\n return this;\n },\n setOnPlainTextDropCallback: function(n) {\n this._onPlainTextDropCallback = n;\n return this;\n },\n setOnDropCallback: function(n) {\n this._onDropCallback = n;\n return this;\n },\n enable: function() {\n if (!j.isSupported()) {\n return this;\n }\n ;\n ;\n i.registerStatusElement(this._statusElem, \"fbWantsDragDrop\");\n this._listeners.push(g.listen(this._element, \"dragenter\", this._onDragEnter.bind(this)));\n this._listeners.push(g.listen(this._element, \"dragleave\", this._onDragLeave.bind(this)));\n this._listeners.push(g.listen(this._element, \"dragover\", g.kill));\n this._listeners.push(g.listen(this._element, \"drop\", function(n) {\n this._dragEnterCount = 0;\n h.removeClass(this._statusElem, \"fbDropReady\");\n h.removeClass(this._statusElem, \"fbDropReadyPhoto\");\n h.removeClass(this._statusElem, \"fbDropReadyPhotos\");\n h.removeClass(this._statusElem, \"fbDropReadyLink\");\n var o = {\n }, p = false, q = this._fileFilterFn(n.dataTransfer.files);\n if (q.length) {\n this._onFilesDropCallback(q, n);\n o.files = q;\n p = true;\n }\n ;\n ;\n var r = ((n.dataTransfer.getData(\"url\") || n.dataTransfer.getData(\"text/uri-list\")));\n if (r) {\n this._onURLDropCallback(r, n);\n o.url = r;\n p = true;\n }\n ;\n ;\n var s = n.dataTransfer.getData(\"text/plain\");\n if (s) {\n this._onPlainTextDropCallback(s, n);\n o.plainText = s;\n p = true;\n }\n ;\n ;\n if (p) {\n this._onDropCallback(o, n);\n }\n ;\n ;\n n.kill();\n }.bind(this)));\n this._enabled = true;\n return this;\n },\n disable: function() {\n if (!this._enabled) {\n return this;\n }\n ;\n ;\n i.removeStatusElement(this._statusElem, \"fbWantsDragDrop\");\n h.removeClass(this._statusElem, \"fbDropReady\");\n h.removeClass(this._statusElem, \"fbDropReadyPhoto\");\n h.removeClass(this._statusElem, \"fbDropReadyPhotos\");\n h.removeClass(this._statusElem, \"fbDropReadyLink\");\n while (this._listeners.length) {\n this._listeners.pop().remove();\n ;\n };\n ;\n this._enabled = false;\n return this;\n },\n setFileFilter: function(n) {\n this._fileFilterFn = n;\n return this;\n },\n setStatusElement: function(n) {\n this._statusElem = n;\n return this;\n },\n _onDragEnter: function(n) {\n if (((this._dragEnterCount === 0))) {\n var o = n.dataTransfer.items, p = false;\n for (var q = 0; ((q < o.length)); q++) {\n if (!o[q].type.match(\"image/*\")) {\n p = true;\n break;\n }\n ;\n ;\n };\n ;\n h.addClass(this._statusElem, \"fbDropReady\");\n if (p) {\n h.addClass(this._statusElem, \"fbDropReadyLink\");\n }\n else if (((o.length > 1))) {\n h.addClass(this._statusElem, \"fbDropReadyPhotos\");\n }\n else h.addClass(this._statusElem, \"fbDropReadyPhoto\");\n \n ;\n ;\n }\n ;\n ;\n this._dragEnterCount++;\n },\n _onDragLeave: function() {\n this._dragEnterCount = Math.max(((this._dragEnterCount - 1)), 0);\n if (((this._dragEnterCount === 0))) {\n h.removeClass(this._statusElem, \"fbDropReady\");\n h.removeClass(this._statusElem, \"fbDropReadyPhoto\");\n h.removeClass(this._statusElem, \"fbDropReadyPhotos\");\n h.removeClass(this._statusElem, \"fbDropReadyLink\");\n }\n ;\n ;\n }\n });\n e.exports = m;\n});\n__d(\"ComposerXDragDrop\", [\"Arbiter\",\"ComposerXController\",\"JSBNG__CSS\",\"DragDropTarget\",\"DOMQuery\",\"Parent\",\"URI\",\"copyProperties\",\"csx\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ComposerXController\"), i = b(\"JSBNG__CSS\"), j = b(\"DragDropTarget\"), k = b(\"DOMQuery\"), l = b(\"Parent\"), m = b(\"URI\"), n = b(\"copyProperties\"), o = b(\"csx\"), p = b(\"cx\"), q = \"/ajax/composerx/attachment/media/upload/\", r = \"/ajax/composerx/attachment/link/scraper/\", s = function(u) {\n u();\n };\n function t(u, v, w, x) {\n this._root = u;\n this._composerID = v;\n this._targetID = w;\n x = ((x || s));\n this._dragdrop = new j(u).setOnFilesDropCallback(function(y) {\n x(this._uploadFiles.bind(this, y));\n }.bind(this)).setFileFilter(t.filterImages).enable();\n t.handleDragEnterAndLeave(u);\n g.subscribe(\"composer/deactivateDragdrop\", function() {\n this.deactivate();\n }.bind(this));\n g.subscribe(\"composer/reactivateDragdrop\", function() {\n this.reactivate();\n }.bind(this));\n };\n;\n n(t, {\n handleDragEnterAndLeave: function(u) {\n var v = k.scry(l.byClass(u, \"-cx-PRIVATE-fbComposer__root\"), \".-cx-PUBLIC-fbComposerAttachment__nub\");\n g.subscribe(\"dragenter\", function(w, x) {\n if (((u == x.element))) {\n v.forEach(i.hide);\n }\n ;\n ;\n });\n g.subscribe(\"dragleave\", function(w, x) {\n if (((u == x.element))) {\n v.forEach(i.show);\n }\n ;\n ;\n });\n },\n filterImages: function(u) {\n var v = [];\n for (var w = 0; ((w < u.length)); w++) {\n if (u[w].type.match(\"image/*\")) {\n v.push(u[w]);\n }\n ;\n ;\n };\n ;\n return v;\n }\n });\n n(t.prototype, {\n enableURLDropping: function() {\n this._dragdrop.setOnURLDropCallback(this._onURLDrop.bind(this));\n },\n deactivate: function() {\n this._dragdrop.disable();\n },\n reactivate: function() {\n this._dragdrop.enable();\n },\n _uploadFiles: function(u) {\n h.getAttachment(this._root, q);\n g.inform(((((\"ComposerXFilesStore/filesDropped/\" + this._composerID)) + \"/mediaupload\")), {\n files: u\n }, g.BEHAVIOR_PERSISTENT);\n },\n _onURLDrop: function(u) {\n var v = new m(r);\n v.addQueryData({\n scrape_url: encodeURIComponent(u)\n });\n h.getAttachment(this._root, v.toString());\n }\n });\n e.exports = t;\n});\n__d(\"curry\", [\"bind\",], function(a, b, c, d, e, f) {\n var g = b(\"bind\"), h = g(null, g, null);\n e.exports = h;\n});\n__d(\"Popover\", [\"JSBNG__Event\",\"Arbiter\",\"ArbiterMixin\",\"ContextualLayer\",\"ContextualLayerHideOnScroll\",\"JSBNG__CSS\",\"DataStore\",\"DOM\",\"Focus\",\"Keys\",\"KeyStatus\",\"LayerHideOnEscape\",\"Toggler\",\"copyProperties\",\"curry\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Arbiter\"), i = b(\"ArbiterMixin\"), j = b(\"ContextualLayer\"), k = b(\"ContextualLayerHideOnScroll\"), l = b(\"JSBNG__CSS\"), m = b(\"DataStore\"), n = b(\"DOM\"), o = b(\"Focus\"), p = b(\"Keys\"), q = b(\"KeyStatus\"), r = b(\"LayerHideOnEscape\"), s = b(\"Toggler\"), t = b(\"copyProperties\"), u = b(\"curry\");\n s.subscribe([\"show\",\"hide\",], function(w, x) {\n var y = m.get(x.getActive(), \"Popover\");\n if (y) {\n if (((w === \"show\"))) {\n y.showLayer();\n }\n else y.hideLayer();\n ;\n }\n ;\n ;\n });\n function v(w, x, y, z) {\n this._root = w;\n this._triggerElem = x;\n this._behaviors = y;\n this._config = ((z || {\n }));\n this._disabled = !!this._config.disabled;\n this._listeners = [];\n if (((!this._disabled && ((((x.nodeName !== \"A\")) || ((x.rel !== \"toggle\"))))))) {\n this._setupClickListener();\n }\n ;\n ;\n this._setupKeyListener();\n x.setAttribute(\"role\", \"button\");\n m.set(w, \"Popover\", this);\n };\n;\n t(v.prototype, i, {\n _layer: null,\n ensureInit: function() {\n if (!this._layer) {\n this._init();\n }\n ;\n ;\n },\n showLayer: function() {\n this.ensureInit();\n this._layer.show();\n s.show(this._root);\n l.addClass(this._root, \"selected\");\n this.inform(\"show\");\n this._triggerElem.setAttribute(\"aria-expanded\", \"true\");\n },\n getLayer: function() {\n return this._layer;\n },\n hideLayer: function() {\n this._layer.hide();\n this._triggerElem.setAttribute(\"aria-expanded\", \"false\");\n },\n isShown: function() {\n return ((this._layer && this._layer.isShown()));\n },\n setLayerContent: function(w) {\n this.ensureInit();\n this._layer.setContent(w);\n },\n _init: function() {\n var w = new j({\n context: this._triggerElem,\n position: \"below\"\n }, n.create(\"div\"));\n w.enableBehaviors([k,r,]);\n s.createInstance(w.getRoot()).setSticky(false);\n w.subscribe(\"hide\", this._onLayerHide.bind(this));\n ((this._behaviors && w.enableBehaviors(this._behaviors)));\n this._layer = w;\n if (this._config.alignh) {\n this._layer.setAlignment(this._config.alignh);\n }\n ;\n ;\n if (this._config.layer_content) {\n this._layer.setContent(this._config.layer_content);\n }\n ;\n ;\n this.inform(\"init\", null, h.BEHAVIOR_PERSISTENT);\n },\n _onLayerHide: function() {\n s.hide(this._root);\n l.removeClass(this._root, \"selected\");\n this.inform(\"hide\");\n if (((q.getKeyDownCode() === p.ESC))) {\n o.set(this._triggerElem);\n }\n ;\n ;\n },\n enable: function() {\n if (!this._disabled) {\n return;\n }\n ;\n ;\n this._setupClickListener();\n this._setupKeyListener();\n this._disabled = false;\n },\n disable: function() {\n if (this._disabled) {\n return;\n }\n ;\n ;\n if (this.isShown()) {\n this.hideLayer();\n }\n ;\n ;\n while (this._listeners.length) {\n this._listeners.pop().remove();\n ;\n };\n ;\n if (((this._triggerElem.getAttribute(\"rel\") === \"toggle\"))) {\n this._triggerElem.removeAttribute(\"rel\");\n }\n ;\n ;\n this._disabled = true;\n },\n _setupClickListener: function() {\n this._listeners.push(g.listen(this._triggerElem, \"click\", u(s.bootstrap, this._triggerElem)));\n },\n _setupKeyListener: function() {\n this._listeners.push(g.listen(this._triggerElem, \"keydown\", this._handleKeyEvent.bind(this)));\n },\n _handleKeyEvent: function(JSBNG__event) {\n if (JSBNG__event.getModifiers().any) {\n return;\n }\n ;\n ;\n switch (g.getKeyCode(JSBNG__event)) {\n case p.DOWN:\n \n case p.UP:\n s.bootstrap(this._triggerElem);\n break;\n default:\n return;\n };\n ;\n JSBNG__event.prevent();\n }\n });\n e.exports = v;\n});\n__d(\"PopoverMenu\", [\"JSBNG__Event\",\"Arbiter\",\"ArbiterMixin\",\"ARIA\",\"BehaviorsMixin\",\"Focus\",\"Keys\",\"KeyStatus\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Arbiter\"), i = b(\"ArbiterMixin\"), j = b(\"ARIA\"), k = b(\"BehaviorsMixin\"), l = b(\"Focus\"), m = b(\"Keys\"), n = b(\"KeyStatus\"), o = b(\"copyProperties\");\n function p(q, r, s, t) {\n this._popover = q;\n this._triggerElem = r;\n this._initialMenu = s;\n q.subscribe(\"init\", this._onLayerInit.bind(this));\n q.subscribe(\"show\", this._onPopoverShow.bind(this));\n q.subscribe(\"hide\", this._onPopoverHide.bind(this));\n g.listen(this._triggerElem, \"keydown\", this._handleKeyEventOnTrigger.bind(this));\n ((t && this.enableBehaviors(t)));\n };\n;\n o(p.prototype, i, k);\n o(p.prototype, {\n _popoverShown: false,\n setMenu: function(q) {\n this._menu = q;\n var r = q.getRoot();\n this._popover.setLayerContent(r);\n q.subscribe(\"done\", this._onMenuDone.bind(this));\n if (this._popoverShown) {\n this._menu.onShow();\n }\n ;\n ;\n j.owns(this._triggerElem, r);\n this.inform(\"setMenu\", null, h.BEHAVIOR_PERSISTENT);\n },\n getPopover: function() {\n return this._popover;\n },\n getTriggerElem: function() {\n return this._triggerElem;\n },\n getMenu: function() {\n return this._menu;\n },\n _onLayerInit: function() {\n this.setMenu(this._initialMenu);\n this._popover.getLayer().subscribe(\"key\", this._handleKeyEvent.bind(this));\n },\n _onPopoverShow: function() {\n if (this._menu) {\n this._menu.onShow();\n }\n ;\n ;\n this._popoverShown = true;\n },\n _onPopoverHide: function() {\n if (this._menu) {\n this._menu.onHide();\n }\n ;\n ;\n this._popoverShown = false;\n },\n _handleKeyEvent: function(q, r) {\n var s = g.getKeyCode(r);\n if (((s === m.TAB))) {\n this._popover.hideLayer();\n l.set(this._triggerElem);\n return;\n }\n ;\n ;\n if (r.getModifiers().any) {\n return;\n }\n ;\n ;\n switch (s) {\n case m.RETURN:\n return;\n case m.UP:\n \n case m.DOWN:\n this._menu.handleKeydown(s, r);\n break;\n default:\n if (((this._menu.handleKeydown(s, r) === false))) {\n this._menu.JSBNG__blur();\n this._menu.handleKeydown(s, r);\n }\n ;\n ;\n break;\n };\n ;\n r.prevent();\n },\n _handleKeyEventOnTrigger: function(q) {\n var r = g.getKeyCode(q);\n switch (r) {\n case m.DOWN:\n \n case m.UP:\n break;\n default:\n var s = String.fromCharCode(r).toLowerCase();\n if (!/^\\s?$/.test(s)) {\n this._popover.showLayer();\n this._menu.JSBNG__blur();\n if (((this._menu.handleKeydown(r, q) === false))) {\n this._popover.hideLayer();\n l.set(this._triggerElem);\n }\n ;\n ;\n }\n ;\n ;\n };\n ;\n },\n _onMenuDone: function(q) {\n this._popover.hideLayer.bind(this._popover).defer();\n if (n.isKeyDown()) {\n l.set(this._triggerElem);\n }\n ;\n ;\n },\n enable: function() {\n this._popover.enable();\n },\n disable: function() {\n this._popover.disable();\n }\n });\n e.exports = p;\n});\n__d(\"PopoverAsyncMenu\", [\"JSBNG__Event\",\"AsyncRequest\",\"Class\",\"PopoverMenu\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"AsyncRequest\"), i = b(\"Class\"), j = b(\"PopoverMenu\"), k = b(\"copyProperties\"), l = {\n }, m = 0;\n function n(o, p, q, r, s) {\n this._endpoint = r;\n this._loadingMenu = q;\n this._instanceId = m++;\n l[this._instanceId] = this;\n this._mouseoverListener = g.listen(p, \"mouseover\", this._fetchMenu.bind(this));\n this.parent.construct(this, o, p, null, s);\n };\n;\n n.setMenu = function(o, p) {\n l[o].setMenu(p);\n };\n n.getInstance = function(o) {\n return l[o];\n };\n i.extend(n, j);\n k(n.prototype, {\n _fetched: false,\n _mouseoverListener: null,\n _onLayerInit: function() {\n if (!this._menu) {\n this.setMenu(this._loadingMenu);\n }\n ;\n ;\n this._fetchMenu();\n this._popover.getLayer().subscribe(\"key\", this._handleKeyEvent.bind(this));\n },\n _fetchMenu: function() {\n if (this._fetched) {\n return;\n }\n ;\n ;\n new h().setURI(this._endpoint).setData({\n pmid: this._instanceId\n }).send();\n this._fetched = true;\n if (this._mouseoverListener) {\n this._mouseoverListener.remove();\n this._mouseoverListener = null;\n }\n ;\n ;\n }\n });\n e.exports = n;\n});\n__d(\"PopoverMenuInterface\", [\"ArbiterMixin\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"copyProperties\"), i = b(\"emptyFunction\");\n function j() {\n \n };\n;\n h(j.prototype, g, {\n getRoot: i,\n onShow: i,\n onHide: i,\n focusAnItem: i.thatReturnsFalse,\n JSBNG__blur: i,\n handleKeydown: i.thatReturnsFalse,\n done: function() {\n this.inform(\"done\");\n }\n });\n e.exports = j;\n});\n__d(\"PopoverMenuOverlappingBorder\", [\"JSBNG__CSS\",\"DOM\",\"Style\",\"copyProperties\",\"cx\",\"shield\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = b(\"DOM\"), i = b(\"Style\"), j = b(\"copyProperties\"), k = b(\"cx\"), l = b(\"shield\");\n function m(n) {\n this._popoverMenu = n;\n this._popover = n.getPopover();\n this._triggerElem = n.getTriggerElem();\n };\n;\n j(m.prototype, {\n _shortBorder: null,\n _setMenuSubscription: null,\n _showSubscription: null,\n _menuSubscription: null,\n enable: function() {\n this._setMenuSubscription = this._popoverMenu.subscribe(\"setMenu\", l(this._onSetMenu, this));\n },\n disable: function() {\n this._popoverMenu.unsubscribe(this._setMenuSubscription);\n this._setMenuSubscription = null;\n this._removeBorderSubscriptions();\n this._removeShortBorder();\n },\n _onSetMenu: function() {\n this._removeBorderSubscriptions();\n this._menu = this._popoverMenu.getMenu();\n this._renderShortBorder(this._menu.getRoot());\n this._showSubscription = this._popover.subscribe(\"show\", l(this._updateBorder, this));\n this._menuSubscription = this._menu.subscribe([\"change\",\"resize\",], l(Function.prototype.defer, l(this._updateBorder, this)));\n this._updateBorder();\n },\n _updateBorder: function() {\n var n = this._menu.getRoot(), o = this._triggerElem.offsetWidth, p = Math.max(((n.offsetWidth - o)), 0);\n i.set(this._shortBorder, \"width\", ((p + \"px\")));\n },\n _renderShortBorder: function(n) {\n this._shortBorder = h.create(\"div\", {\n className: \"-cx-PUBLIC-abstractMenu__shortborder\"\n });\n h.appendContent(n, this._shortBorder);\n g.addClass(n, \"-cx-PRIVATE-abstractMenuWithShortBorder__hasshortborder\");\n },\n _removeShortBorder: function() {\n if (this._shortBorder) {\n h.remove(this._shortBorder);\n this._shortBorder = null;\n g.removeClass(this._popoverMenu.getMenu().getRoot(), \"-cx-PRIVATE-abstractMenuWithShortBorder__hasshortborder\");\n }\n ;\n ;\n },\n _removeBorderSubscriptions: function() {\n if (this._showSubscription) {\n this._popover.unsubscribe(this._showSubscription);\n this._showSubscription = null;\n }\n ;\n ;\n if (this._menuSubscription) {\n this._menu.unsubscribe(this._menuSubscription);\n this._menuSubscription = null;\n }\n ;\n ;\n }\n });\n e.exports = m;\n});\n__d(\"Menu\", [\"JSBNG__CSS\",\"Class\",\"DataStore\",\"DOM\",\"JSBNG__Event\",\"Keys\",\"Parent\",\"PopoverMenuInterface\",\"ScrollableArea\",\"Style\",\"copyProperties\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = b(\"Class\"), i = b(\"DataStore\"), j = b(\"DOM\"), k = b(\"JSBNG__Event\"), l = b(\"Keys\"), m = b(\"Parent\"), n = b(\"PopoverMenuInterface\"), o = b(\"ScrollableArea\"), p = b(\"Style\"), q = b(\"copyProperties\"), r = b(\"cx\");\n function s(t, u) {\n this.parent.construct(this);\n this._items = [];\n for (var v = 0; ((v < t.length)); v++) {\n this._items[v] = new t[v].ctor(t[v]);\n ;\n };\n ;\n this._config = ((u || {\n }));\n this._theme = ((u.theme || {\n }));\n };\n;\n h.extend(s, n);\n q(s.prototype, {\n _focused: null,\n _root: null,\n addItem: function(t) {\n this._addItem(t);\n },\n addItemBefore: function(t, u) {\n this._addItem(t, u, false);\n },\n addItemAfter: function(t, u) {\n this._addItem(t, u, true);\n },\n _addItem: function(t, u, v) {\n var w = this._items.indexOf(t);\n if (((w >= 0))) {\n var x = ((v ? -1 : 1));\n if (((this._items[((w + x))] == u))) {\n return;\n }\n ;\n ;\n this._items.splice(w, 1);\n }\n ;\n ;\n if (u) {\n w = this._items.indexOf(u);\n if (((w < 0))) {\n throw new Error(\"reference item must already be in the menu\");\n }\n ;\n ;\n if (v) {\n w++;\n }\n ;\n ;\n this._items.splice(w, 0, t);\n }\n else this._items.push(t);\n ;\n ;\n if (this._root) {\n this._insertItem(t, u, v);\n }\n ;\n ;\n },\n removeItem: function(t) {\n var u = this._items.indexOf(t);\n if (((u < 0))) {\n return;\n }\n ;\n ;\n this._items.splice(u, 1);\n ((this._root && j.remove(t.getRoot())));\n },\n forEachItem: function(t) {\n this._items.forEach(t);\n },\n getItemAt: function(t) {\n return ((this._items[t] || null));\n },\n getRoot: function() {\n if (!this._root) {\n this._render();\n }\n ;\n ;\n return this._root;\n },\n onShow: function() {\n if (this._config.maxheight) {\n if (!this._scrollableArea) {\n this._scrollableArea = o.fromNative(this._scrollableElems.root, {\n fade: true\n });\n }\n else this._scrollableArea.resize();\n ;\n }\n ;\n ;\n this.focusAnItem();\n },\n onHide: function() {\n this.JSBNG__blur();\n },\n focusAnItem: function() {\n return this._attemptFocus(0, 1);\n },\n JSBNG__blur: function() {\n if (this._focused) {\n this._focused.JSBNG__blur();\n this._focused = null;\n this.inform(\"JSBNG__blur\");\n }\n ;\n ;\n },\n handleKeydown: function(t, u) {\n var v = this._items.indexOf(this._focused);\n switch (t) {\n case l.UP:\n \n case l.DOWN:\n var w = ((((t === l.UP)) ? -1 : 1));\n if (((v !== -1))) {\n return this._attemptFocus(((v + w)), w);\n }\n else if (((t === l.UP))) {\n return this._attemptFocus(((this._items.length - 1)), -1);\n }\n else return this._attemptFocus(0, 1)\n \n ;\n break;\n case l.SPACE:\n if (((this._items.indexOf(this._focused) !== -1))) {\n this._handleItemClick(this._focused, u);\n return true;\n }\n ;\n ;\n return false;\n default:\n var x = String.fromCharCode(t).toLowerCase(), y;\n for (var z = ((v + 1)); ((z < this._items.length)); z++) {\n y = this._items[z].getAccessKey();\n if (((y && ((y.charAt(0).toLowerCase() === x))))) {\n if (this._focusItem(this._items[z])) {\n return true;\n }\n ;\n }\n ;\n ;\n };\n ;\n return false;\n };\n ;\n },\n _render: function() {\n this._ul = j.create(\"ul\", {\n className: \"-cx-PUBLIC-abstractMenu__menu\"\n });\n this._ul.setAttribute(\"role\", \"menu\");\n this._items.forEach(function(v) {\n this._insertItem(v, null);\n }.bind(this));\n k.listen(this._ul, \"click\", this._handleClick.bind(this));\n k.listen(this._ul, \"mouseover\", this._handleMouseOver.bind(this));\n k.listen(this._ul, \"mouseout\", this._handleMouseOut.bind(this));\n var t = this._ul;\n if (this._config.maxheight) {\n this._scrollableElems = o.renderDOM();\n j.setContent(this._scrollableElems.JSBNG__content, this._ul);\n t = this._scrollableElems.root;\n p.set(this._scrollableElems.wrap, \"max-height\", ((this._config.maxheight + \"px\")));\n }\n ;\n ;\n var u = ((((\"-cx-PUBLIC-abstractMenu__wrapper\" + ((this._config.className ? ((\" \" + this._config.className)) : \"\")))) + ((this._theme.className ? ((\" \" + this._theme.className)) : \"\"))));\n this._root = j.create(\"div\", {\n className: u\n }, j.create(\"div\", {\n className: \"-cx-PUBLIC-abstractMenu__border\"\n }, t));\n ((this._config.id && this._root.setAttribute(\"id\", this._config.id)));\n this.inform(\"rendered\", this._root);\n },\n _needsDefaultBehavior: function(t) {\n if (((t.isDefaultRequested && t.isDefaultRequested()))) {\n var u = m.byTag(t.getTarget(), \"a\"), v = ((u && u.getAttribute(\"href\")));\n return ((v && ((v[0] !== \"#\"))));\n }\n ;\n ;\n return false;\n },\n _handleClick: function(t) {\n if (!this._needsDefaultBehavior(t)) {\n var u = this._getItemInstance(t.getTarget());\n if (u) {\n return this._handleItemClick(u, t);\n }\n ;\n ;\n }\n ;\n ;\n },\n _handleItemClick: function(t, u) {\n this.inform(\"itemclick\", {\n JSBNG__item: t,\n JSBNG__event: u\n });\n if (t.hasAction()) {\n this.done();\n }\n ;\n ;\n return t.handleClick();\n },\n _handleMouseOver: function(t) {\n var u = this._getItemInstance(t.getTarget());\n ((u && this._focusItem(u, true)));\n },\n _handleMouseOut: function(t) {\n var u = this._getItemInstance(t.getTarget());\n if (((u && ((this._focused === u))))) {\n this.JSBNG__blur();\n }\n ;\n ;\n },\n _insertItem: function(t, u, v) {\n var w = t.getRoot();\n g.addClass(w, \"__MenuItem\");\n i.set(w, \"MenuItem\", t);\n if (u) {\n var x = ((v ? j.insertAfter : j.insertBefore));\n x(u.getRoot(), w);\n }\n else j.appendContent(this._ul, w);\n ;\n ;\n },\n _attemptFocus: function(t, u) {\n var v = this.getItemAt(t);\n if (v) {\n if (this._focusItem(v)) {\n return true;\n }\n else return this._attemptFocus(((t + u)), u)\n ;\n }\n ;\n ;\n return false;\n },\n _focusItem: function(t, u) {\n if (((t.JSBNG__focus(u) !== false))) {\n if (((this._focused !== t))) {\n this.JSBNG__blur();\n this._focused = t;\n this.inform(\"JSBNG__focus\");\n }\n ;\n ;\n return true;\n }\n ;\n ;\n return false;\n },\n _getItemInstance: function(t) {\n var u = m.byClass(t, \"__MenuItem\");\n return ((u ? i.get(u, \"MenuItem\") : null));\n }\n });\n e.exports = s;\n});\n__d(\"MenuItemInterface\", [\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"emptyFunction\");\n function i() {\n \n };\n;\n g(i.prototype, {\n _root: null,\n getRoot: function() {\n if (!this._root) {\n this._root = this.render();\n }\n ;\n ;\n return this._root;\n },\n render: h,\n getAccessKey: h,\n hasAction: h.thatReturnsFalse,\n JSBNG__focus: h.thatReturnsFalse,\n JSBNG__blur: h.thatReturnsFalse,\n handleClick: h.thatReturnsFalse\n });\n e.exports = i;\n});\n__d(\"MenuItemBase\", [\"Class\",\"DOM\",\"HTML\",\"MenuItemInterface\",\"copyProperties\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"DOM\"), i = b(\"HTML\"), j = b(\"MenuItemInterface\"), k = b(\"copyProperties\"), l = b(\"cx\");\n function m(n) {\n this.parent.construct(this);\n this._data = n;\n };\n;\n g.extend(m, j);\n k(m.prototype, {\n render: function() {\n var n = \"-cx-PUBLIC-abstractMenuItem__root\";\n if (this._data.className) {\n n += ((\" \" + this._data.className));\n }\n ;\n ;\n var o = {\n className: n,\n \"aria-selected\": \"false\"\n };\n {\n var fin251keys = ((window.top.JSBNG_Replay.forInKeys)((this._data))), fin251i = (0);\n var p;\n for (; (fin251i < fin251keys.length); (fin251i++)) {\n ((p) = (fin251keys[fin251i]));\n {\n if (((p.indexOf(\"data-\") === 0))) {\n o[p] = this._data[p];\n }\n ;\n ;\n };\n };\n };\n ;\n return h.create(\"li\", o, this._renderItemContent());\n },\n _renderItemContent: function() {\n return i(this._data.markup).getNodes();\n }\n });\n e.exports = m;\n});\n__d(\"MenuItem\", [\"Class\",\"JSBNG__CSS\",\"DOM\",\"MenuItemBase\",\"React\",\"copyProperties\",\"cx\",\"emptyFunction\",\"startsWith\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"JSBNG__CSS\"), i = b(\"DOM\"), j = b(\"MenuItemBase\"), k = b(\"React\"), l = b(\"copyProperties\"), m = b(\"cx\"), n = b(\"emptyFunction\"), o = b(\"startsWith\"), p = [\"href\",\"rel\",\"ajaxify\",\"target\",];\n function q(t, u) {\n var v = {\n };\n p.forEach(function(w) {\n if (((w in u))) {\n v[w] = u[w];\n }\n ;\n ;\n });\n i.setAttributes(t, v);\n };\n;\n function r(t) {\n p.forEach(function(u) {\n t.removeAttribute(u);\n });\n };\n;\n function s(t) {\n this.parent.construct(this, t);\n this._disabled = !!this._data.disabled;\n };\n;\n g.extend(s, j);\n l(s.prototype, {\n getValue: function() {\n return this._data.value;\n },\n getAccessKey: function() {\n return ((this._data.label && this._data.label.charAt(0)));\n },\n hasAction: n.thatReturnsTrue,\n JSBNG__focus: function(t) {\n if (((this.isDisabled() || !this._root.offsetParent))) {\n return false;\n }\n ;\n ;\n h.addClass(this._root, \"-cx-PUBLIC-abstractMenuItem__highlighted\");\n h.addClass(this._root, \"selected\");\n this._root.setAttribute(\"aria-selected\", \"true\");\n ((t || this._anchor.JSBNG__focus()));\n },\n JSBNG__blur: function() {\n h.removeClass(this._root, \"-cx-PUBLIC-abstractMenuItem__highlighted\");\n h.removeClass(this._root, \"selected\");\n this._root.setAttribute(\"aria-selected\", \"false\");\n },\n handleClick: function() {\n if (this.isDisabled()) {\n return false;\n }\n ;\n ;\n if (((typeof this._onclickHandler === \"function\"))) {\n return this._onclickHandler();\n }\n ;\n ;\n return true;\n },\n setOnClickHandler: function(t) {\n this._onclickHandler = t;\n },\n _renderItemContent: function() {\n this._anchor = i.create(\"a\", {\n className: \"-cx-PUBLIC-abstractMenuItem__anchor\",\n tabIndex: ((this.isDisabled() ? -1 : 0))\n });\n if (this._data.reactChildren) {\n k.renderComponent(k.DOM.span({\n className: \"-cx-PUBLIC-abstractMenuItem__label\"\n }, this._data.reactChildren), this._anchor);\n this._data.label = ((this._anchor.innerText || this._anchor.textContent));\n }\n else i.setContent(this._anchor, i.create(\"span\", {\n className: \"-cx-PUBLIC-abstractMenuItem__label\"\n }, ((this._data.markup || this._data.label))));\n ;\n ;\n if (this._data.icon) {\n i.prependContent(this._anchor, this._data.icon);\n h.addClass(this._anchor, \"-cx-PUBLIC-abstractMenuItem__hasicon\");\n }\n ;\n ;\n if (!this.isDisabled()) {\n q(this._anchor, this._data);\n }\n ;\n ;\n {\n var fin252keys = ((window.top.JSBNG_Replay.forInKeys)((this._data))), fin252i = (0);\n var t;\n for (; (fin252i < fin252keys.length); (fin252i++)) {\n ((t) = (fin252keys[fin252i]));\n {\n if (((((typeof t === \"string\")) && o(t, \"data-\")))) {\n this._anchor.setAttribute(t, this._data[t]);\n }\n ;\n ;\n };\n };\n };\n ;\n this._anchor.setAttribute(\"role\", \"menuitem\");\n this._anchor.setAttribute(\"title\", this._data.title);\n return this._anchor;\n },\n isDisabled: function() {\n return this._disabled;\n },\n enable: function() {\n q(this._anchor, this._data);\n this._anchor.tabIndex = 0;\n h.removeClass(this._root, \"-cx-PUBLIC-abstractMenuItem__disabled\");\n this._disabled = false;\n },\n disable: function() {\n r(this._anchor);\n this._anchor.tabIndex = -1;\n h.addClass(this._root, \"-cx-PUBLIC-abstractMenuItem__disabled\");\n this._disabled = true;\n },\n render: function() {\n var t = this.parent.render();\n if (this._data.disabled) {\n h.addClass(t, \"-cx-PUBLIC-abstractMenuItem__disabled\");\n }\n ;\n ;\n return t;\n }\n });\n e.exports = s;\n});\n__d(\"MenuSelectableItem\", [\"Class\",\"JSBNG__CSS\",\"MenuItem\",\"copyProperties\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"JSBNG__CSS\"), i = b(\"MenuItem\"), j = b(\"copyProperties\"), k = b(\"cx\");\n function l(m) {\n this.parent.construct(this, m);\n this._selected = !!this._data.selected;\n };\n;\n g.extend(l, i);\n j(l.prototype, {\n _selected: false,\n getLabel: function() {\n return this._data.label;\n },\n getIcon: function() {\n return this._data.icon;\n },\n isSelected: function() {\n return this._selected;\n },\n select: function() {\n if (this.isDisabled()) {\n return false;\n }\n ;\n ;\n h.addClass(this._root, \"-cx-PUBLIC-abstractMenuItem__checked\");\n this._selected = true;\n },\n deselect: function() {\n h.removeClass(this._root, \"-cx-PUBLIC-abstractMenuItem__checked\");\n this._selected = false;\n },\n render: function() {\n var m = this.parent.render();\n if (this._data.selected) {\n h.addClass(m, \"-cx-PUBLIC-abstractMenuItem__checked\");\n }\n ;\n ;\n return m;\n }\n });\n e.exports = l;\n});\n__d(\"SelectableMenu\", [\"Class\",\"Menu\",\"arrayContains\",\"copyProperties\",\"createArrayFrom\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"Menu\"), i = b(\"arrayContains\"), j = b(\"copyProperties\"), k = b(\"createArrayFrom\");\n function l(o, p) {\n this.parent.construct(this, o, p);\n };\n;\n function m(o) {\n return ((((o.select && o.deselect)) && o.isSelected));\n };\n;\n function n(o) {\n return ((m(o) && o.isSelected()));\n };\n;\n g.extend(l, h);\n j(l.prototype, {\n focusAnItem: function() {\n for (var o = 0; ((o < this._items.length)); o++) {\n if (n(this._items[o])) {\n if (((this._focusItem(this._items[o]) !== false))) {\n return true;\n }\n ;\n }\n ;\n ;\n };\n ;\n return this.parent.focusAnItem();\n },\n setValue: function(o) {\n if (!this._root) {\n this._render();\n }\n ;\n ;\n var p = k(o);\n this._items.forEach(function(q) {\n if (m(q)) {\n if (i(p, q.getValue())) {\n q.select();\n }\n else if (n(q)) {\n q.deselect();\n }\n \n ;\n }\n ;\n ;\n });\n this.inform(\"change\", this._getSelection());\n },\n _handleItemClick: function(o, p) {\n if (!m(o)) {\n return this.parent._handleItemClick(o, p);\n }\n ;\n ;\n var q = this.inform(\"itemclick\", {\n JSBNG__item: o,\n JSBNG__event: p\n });\n if (q) {\n return;\n }\n ;\n ;\n if (this._config.multiple) {\n var r = ((n(o) ? o.deselect() : o.select()));\n if (((r !== false))) {\n this.inform(\"change\", this._getSelection());\n }\n ;\n ;\n }\n else {\n if (!n(o)) {\n if (((o.select() !== false))) {\n this._items.forEach(function(s) {\n if (((n(s) && ((s !== o))))) {\n s.deselect();\n }\n ;\n ;\n });\n this.inform(\"change\", this._getSelection());\n }\n ;\n }\n ;\n ;\n this.done();\n }\n ;\n ;\n return o.handleClick();\n },\n _getSelection: function() {\n var o = [];\n this._items.forEach(function(p) {\n if (n(p)) {\n o.push({\n label: p.getLabel(),\n value: p.getValue(),\n JSBNG__item: p\n });\n }\n ;\n ;\n });\n if (!this._config.multiple) {\n o = o[0];\n }\n ;\n ;\n return o;\n }\n });\n e.exports = l;\n});\n__d(\"PopoverLoadingMenu\", [\"Class\",\"DOM\",\"PopoverMenuInterface\",\"copyProperties\",\"cx\",\"joinClasses\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"DOM\"), i = b(\"PopoverMenuInterface\"), j = b(\"copyProperties\"), k = b(\"cx\"), l = b(\"joinClasses\");\n function m(n) {\n this.parent.construct(this);\n this._config = ((n || {\n }));\n this._theme = ((n.theme || {\n }));\n };\n;\n g.extend(m, i);\n j(m.prototype, {\n _root: null,\n getRoot: function() {\n if (!this._root) {\n this._root = h.create(\"div\", {\n className: l(\"-cx-PUBLIC-abstractMenu__wrapper\", this._config.className, this._theme.className)\n }, h.create(\"div\", {\n className: \"-cx-PUBLIC-abstractMenu__border\"\n }, h.create(\"div\", {\n className: \"-cx-PUBLIC-abstractMenu__menu -cx-PUBLIC-abstractLoadingMenu__root\"\n }, h.create(\"span\", {\n className: \"-cx-PUBLIC-abstractLoadingMenu__spinner\"\n }))));\n }\n ;\n ;\n return this._root;\n }\n });\n e.exports = m;\n});\n__d(\"ContextualLayerAsyncRelative\", [\"JSBNG__Event\",\"copyProperties\",\"Parent\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"copyProperties\"), i = b(\"Parent\");\n function j(k) {\n this._layer = k;\n };\n;\n h(j.prototype, {\n _layerSubscription: null,\n _listener: null,\n enable: function() {\n this._layerSubscription = this._layer.subscribe(\"show\", this._attachListener.bind(this));\n if (this._layer.isShown()) {\n this._attachListener();\n }\n ;\n ;\n },\n disable: function() {\n this._layerSubscription.unsubscribe();\n this._layerSubscription = null;\n if (this._listener) {\n this._listener.remove();\n this._listener = null;\n }\n ;\n ;\n },\n _attachListener: function() {\n this._listener = g.listen(this._layer.getRoot(), \"click\", this._onclick.bind(this));\n },\n _onclick: function(k) {\n var l = i.byTag(k.getTarget(), \"A\");\n if (!l) {\n return;\n }\n ;\n ;\n var m = l.getAttribute(\"ajaxify\"), n = l.href, o = ((m || n));\n if (((((l.rel === \"async\")) || ((l.rel === \"async-post\"))))) {\n d([\"AsyncRequest\",], function(p) {\n p.bootstrap(o, this._layer.getContext(), ((l.rel === \"async-post\")));\n }.bind(this));\n return false;\n }\n ;\n ;\n }\n });\n e.exports = j;\n});\n__d(\"HoverFlyout\", [\"Arbiter\",\"ArbiterMixin\",\"DataStore\",\"JSBNG__Event\",\"Keys\",\"arrayContains\",\"copyProperties\",\"removeFromArray\",\"shield\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ArbiterMixin\"), i = b(\"DataStore\"), j = b(\"JSBNG__Event\"), k = b(\"Keys\"), l = b(\"arrayContains\"), m = b(\"copyProperties\"), n = b(\"removeFromArray\"), o = b(\"shield\");\n function p(q, r, s, t) {\n if (q) {\n this._showDelay = s;\n this._hideDelay = t;\n this.init(q);\n if (r) {\n this.initNode(r);\n }\n ;\n ;\n }\n ;\n ;\n g.subscribe(\"SwapButtonDEPRECATED/focusOnJoinButton\", o(this.hideFlyout, this), g.SUBSCRIBE_ALL);\n };\n;\n m(p.prototype, h, {\n init: function(q) {\n this._flyout = q;\n this._showDelay = ((this._showDelay || 0));\n this._hideDelay = ((this._hideDelay || 100));\n this._showTimeout = null;\n this._hideTimeout = null;\n this._flyoutSubscriptions = [this._flyout.subscribe(\"mouseenter\", this._onFlyoutMouseEnter.bind(this)),this._flyout.subscribe(\"mouseleave\", o(this.hideFlyout, this)),];\n this._nodes = [];\n this._dataStoreUnique = ((((\"HoverFlyout_\" + JSBNG__Date.now())) + \"_listeners\"));\n return this;\n },\n initNode: function(q) {\n if (l(this._nodes, q)) {\n return this;\n }\n ;\n ;\n this._nodes.push(q);\n i.set(q, this._dataStoreUnique, [j.listen(q, \"mouseenter\", this._onNodeMouseEnter.bind(this, q)),j.listen(q, \"mouseleave\", o(this.hideFlyout, this)),j.listen(q, \"click\", this._onNodeMouseEnter.bind(this, q)),j.listen(q, \"keydown\", this._onNodeKeyEscape.bind(this)),]);\n return this;\n },\n deactivateNode: function(q) {\n var r = i.get(q, this._dataStoreUnique);\n if (r) {\n while (r.length) {\n r.pop().remove();\n ;\n };\n }\n ;\n ;\n n(this._nodes, q);\n },\n setShowDelay: function(q) {\n this._showDelay = q;\n return this;\n },\n setHideDelay: function(q) {\n this._hideDelay = q;\n return this;\n },\n showFlyout: function(q, r) {\n this.setActiveNode(q);\n if (r) {\n this._flyout.setContext(q).show();\n this.inform(\"show\", q);\n }\n else this._showTimeout = this.showFlyout.bind(this, q, true).defer(this._showDelay);\n ;\n ;\n return this;\n },\n hideFlyout: function(q) {\n JSBNG__clearTimeout(this._showTimeout);\n if (q) {\n this._flyout.hide();\n ((this._activeNode && this.inform(\"hide\", this._activeNode)));\n this._activeNode = null;\n }\n else this._hideTimeout = this.hideFlyout.bind(this, true).defer(this._hideDelay);\n ;\n ;\n },\n hideFlyoutDelayed: function(q) {\n JSBNG__clearTimeout(this._showTimeout);\n JSBNG__clearTimeout(this._hideTimeout);\n this._hideTimeout = this.hideFlyout.bind(this, true).defer(q);\n },\n getActiveNode: function() {\n return this._activeNode;\n },\n setActiveNode: function(q) {\n JSBNG__clearTimeout(this._hideTimeout);\n if (((this._activeNode && ((this._activeNode !== q))))) {\n this.hideFlyout(true);\n }\n ;\n ;\n this._activeNode = q;\n return this;\n },\n clearNodes: function() {\n for (var q = this._nodes.length; ((q > 0)); q--) {\n this.deactivateNode(this._nodes[((q - 1))]);\n ;\n };\n ;\n },\n destroy: function() {\n while (this._flyoutSubscriptions.length) {\n this._flyout.unsubscribe(this._flyoutSubscriptions.pop());\n ;\n };\n ;\n this.clearNodes();\n },\n _onNodeMouseEnter: function(q) {\n if (((this._activeNode === q))) {\n JSBNG__clearTimeout(this._hideTimeout);\n }\n else this.showFlyout(q);\n ;\n ;\n },\n _onFlyoutMouseEnter: function() {\n JSBNG__clearTimeout(this._hideTimeout);\n },\n _onNodeKeyEscape: function(JSBNG__event) {\n if (((j.getKeyCode(JSBNG__event) === k.ESC))) {\n ((this._activeNode && this.inform(\"hide\", this._activeNode)));\n this._activeNode = null;\n }\n ;\n ;\n }\n });\n e.exports = ((a.HoverFlyout || p));\n});"); |
| // 13342 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o164,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yN/r/bD9K1YDrR29.js",o165); |
| // undefined |
| o164 = null; |
| // undefined |
| o165 = null; |
| // 13347 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"xfhln\",]);\n}\n;\n__d(\"ComposerXEmptyAttachment\", [\"Class\",\"ComposerXAttachment\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"ComposerXAttachment\"), i = b(\"copyProperties\");\n function j(k, l) {\n this.parent.construct(this);\n this._root = k;\n if (l) {\n this.attachmentClassName = l;\n };\n };\n g.extend(j, h);\n i(j.prototype, {\n getRoot: function() {\n return this._root;\n }\n });\n e.exports = j;\n});\n__d(\"ComposerXDatepickerIconReset\", [\"CSS\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"CSS\"), h = b(\"cx\");\n function i(j) {\n g.removeClass(j.element, \"-cx-PUBLIC-fbTimelineBackdatedComposer__datepickericonselected\");\n g.removeClass(j.element, \"-cx-PUBLIC-fbComposerXTagger__controlopen\");\n };\n e.exports = i;\n});\n__d(\"TimelineCommentsLoader\", [\"Event\",\"CommentPrelude\",\"CSS\",\"DOM\",\"Parent\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"CommentPrelude\"), i = b(\"CSS\"), j = b(\"DOM\"), k = b(\"Parent\"), l = b(\"emptyFunction\"), m = {\n init: function() {\n m.init = l;\n g.listen(document.body, \"click\", function(n) {\n var o = k.byClass(n.getTarget(), \"fbTimelineFeedbackCommentLoader\");\n if (o) {\n n.kill();\n h.click(o, false);\n var p = k.byTag(o, \"form\"), q = j.scry(p, \"li.uiUfiViewAll input\");\n if (!q.length) {\n q = j.scry(p, \"li.fbUfiViewPrevious input\");\n };\n if (!q.length) {\n q = j.scry(p, \"a.UFIPagerLink\");\n };\n q[0].click();\n i.show(j.find(p, \"li.uiUfiComments\"));\n i.removeClass(o, \"fbTimelineFeedbackCommentLoader\");\n }\n ;\n });\n }\n };\n e.exports = m;\n});\n__d(\"TimelineCapsule\", [\"Arbiter\",\"CSS\",\"DataStore\",\"DOM\",\"DOMQuery\",\"DOMScroll\",\"Parent\",\"TimelineConstants\",\"TimelineLegacySections\",\"UserAgent\",\"Vector\",\"$\",\"createArrayFrom\",\"csx\",\"isEmpty\",\"queryThenMutateDOM\",\"requestAnimationFrame\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"CSS\"), i = b(\"DataStore\"), j = b(\"DOM\"), k = b(\"DOMQuery\"), l = b(\"DOMScroll\"), m = b(\"Parent\"), n = b(\"TimelineConstants\"), o = b(\"TimelineLegacySections\"), p = b(\"UserAgent\"), q = b(\"Vector\"), r = b(\"$\"), s = b(\"createArrayFrom\"), t = b(\"csx\"), u = b(\"isEmpty\"), v = b(\"queryThenMutateDOM\"), w = b(\"requestAnimationFrame\"), x = (function() {\n var y = 45, z = 15, aa = \"use\", ba = \"update\", ca = {\n }, da = {\n };\n function ea(ra) {\n return h.hasClass(ra, \"fbTimelineBalancer\");\n };\n function fa(ra) {\n return ra.getAttribute(\"data-spine\");\n };\n function ga(ra) {\n return h.hasClass(ra, \"placeholderUnit\");\n };\n function ha(ra, sa) {\n if (sa) {\n return ((i.get(n.DS_SIDEORG, ra.id) || ra.getAttribute(\"data-side\")))\n };\n return ra.getAttribute(\"data-side\");\n };\n var ia = function(ra, sa) {\n if ((p.ie() <= 6)) {\n ia = function(ta, ua) {\n i.set(n.DS_SIDEORG, ta.id, ha(ta, true));\n ta.setAttribute(\"data-side\", ua);\n h.removeClass(ta, \"leftColumn\");\n h.removeClass(ta, \"rightColumn\");\n h.addClass(ta, ((ua == \"l\") ? \"leftColumn\" : \"rightColumn\"));\n };\n }\n else ia = function(ta, ua) {\n i.set(n.DS_SIDEORG, ta.id, ha(ta, true));\n ta.setAttribute(\"data-side\", ua);\n };\n ;\n ia(ra, sa);\n };\n function ja(ra) {\n return ra.getAttribute(\"data-size\");\n };\n function ka(ra) {\n if (((h.hasClass(ra, \"fbTimelineOneColumn\") && ra.prevSibling) && h.hasClass(ra.prevSibling, \"fbTimelineOneColumn\"))) {\n return (z * 2)\n };\n if (h.hasClass(ra, \"fbTimelineIndeterminateContent\")) {\n return 0\n };\n return z;\n };\n function la(ra, sa) {\n var ta = 0;\n if ((h.shown(ra) && !h.hasClass(ra, \"placeholderUnit\"))) {\n if ((sa === aa)) {\n ta = i.get(n.DS_HEIGHT, ra.id, null);\n if ((ta === null)) {\n ta = ra.getAttribute(\"data-calculatedheight\");\n };\n }\n else ta = (ra.offsetHeight + ka(ra));\n \n };\n if (((sa === aa) && (ta === null))) {\n ta = 300;\n };\n i.set(n.DS_HEIGHT, ra.id, parseInt(ta, 10));\n };\n function ma(ra) {\n var sa = i.get(n.DS_HEIGHT, ra.id, null);\n return sa;\n };\n function na(ra, sa) {\n if ((ja(sa) == \"2\")) {\n return 0;\n }\n else if ((ha(sa) == \"r\")) {\n return (ra + ma(sa));\n }\n else return (ra - ma(sa))\n \n ;\n };\n function oa(ra) {\n k.scry(ra, \".-cx-PUBLIC-timelineOneColMin__endmarker\").forEach(function(sa) {\n var ta = sa.getAttribute(\"data-endmarker\"), ua = sa.getAttribute(\"data-pageindex\"), va = function() {\n if (!sa.parentNode) {\n return\n };\n i.set(n.DS_LOADED, ra.id, ua);\n j.remove(sa);\n g.inform(n.SECTION_FULLY_LOADED, {\n scrubberKey: ta,\n pageIndex: ua,\n capsuleID: ra.id,\n childCount: ra.childNodes.length\n });\n };\n if (o.get(ta)) {\n va();\n }\n else var wa = g.subscribe(n.SECTION_REGISTERED, function(xa, ya) {\n if ((ya.scrubberKey === ta)) {\n va();\n wa.unsubscribe();\n }\n ;\n })\n ;\n });\n g.inform(\"TimelineCapsule/balanced\", {\n capsule: ra\n });\n };\n function pa(ra) {\n if (u(ca[ra.id])) {\n return\n };\n var sa = (ea(ra) ? ra.firstChild : ra), ta = sa.childNodes.length, ua = {\n }, va = {\n }, wa, xa = z, ya = z, za, ab = [];\n for (var bb = 0; (bb < ta); bb++) {\n wa = sa.childNodes[bb];\n if (h.hasClass(wa, \"fbTimelineUnit\")) {\n za = k.scry(wa, \"div.timelineUnitContainer\")[0];\n if (za) {\n va[wa.id] = za.getAttribute(\"data-time\");\n };\n if ((!ga(wa) && h.shown(wa))) {\n if ((ja(wa) == \"2\")) {\n ua[wa.id] = Math.max(xa, ya);\n xa = ya = (ua[wa.id] + ma(wa));\n }\n else if ((ha(wa) == \"r\")) {\n ua[wa.id] = ya;\n ya += ma(wa);\n }\n else {\n ua[wa.id] = xa;\n xa += ma(wa);\n }\n \n ;\n if (((ha(wa, true) == \"l\") || (ja(wa) == \"2\"))) {\n ab.push(wa.id);\n };\n }\n ;\n }\n ;\n };\n for (bb = 0; (bb < (ab.length - 1)); ++bb) {\n var cb = ab[bb], db = ab[(bb + 1)], eb = (ua[cb] + y), fb = ua[db];\n for (var gb in ca[ra.id]) {\n if ((eb > fb)) {\n break;\n };\n var hb = ca[ra.id][gb];\n if (h.shown(hb)) {\n continue;\n };\n if (((va[gb] <= va[cb]) && (va[gb] > va[db]))) {\n hb.style.top = (eb + \"px\");\n eb += y;\n h.show(hb);\n }\n ;\n };\n };\n };\n function qa(ra, sa) {\n var ta = m.byAttribute(ra, \"data-size\");\n if (ta) {\n if (h.hasClass(ra.parentNode, \"timelineReportContent\")) {\n sa(ra);\n }\n else sa(ta);\n ;\n x.balanceCapsule(m.byClass(ta, \"fbTimelineCapsule\"));\n }\n ;\n };\n return {\n removeUnit: function(ra) {\n qa(ra, function(sa) {\n j.remove(sa);\n });\n },\n hideUnit: function(ra) {\n qa(ra, function(sa) {\n h.addClass(sa, \"fbTimelineColumnHidden\");\n });\n },\n undoHideUnit: function(ra, sa) {\n j.remove(m.byClass(sa, \"hiddenText\"));\n qa(ra, function(ta) {\n h.removeClass(ta, \"fbTimelineColumnHidden\");\n });\n },\n unplacehold: function(ra) {\n var sa = r(ra);\n sa.style.top = null;\n h.removeClass(sa, \"visiblePlaceholder\");\n h.removeClass(sa, \"placeholder\");\n var ta = m.byClass(sa, \"fbTimelineCapsule\");\n delete ca[ta.id][ra];\n x.balanceCapsule(ta);\n },\n scrollToCapsule: function(ra) {\n if (!da.hasOwnProperty(ra.id)) {\n var sa = q.getElementPosition(ra.parentNode);\n l.scrollTo(new q(q.getScrollPosition().x, (sa.y - n.SUBSECTION_SCROLL_TO_OFFSET), \"document\"));\n da[ra.id] = true;\n }\n ;\n },\n balanceCapsuleFromChild: function(ra, sa) {\n x.balanceCapsule(m.byClass(ra, \"fbTimelineCapsule\"), sa);\n },\n balanceCapsuleDeferred: function(ra, sa) {\n x.balanceCapsule.curry(ra, sa).defer();\n },\n balanceCapsule: function(ra, sa) {\n if ((!ra || !ra.childNodes)) {\n return\n };\n var ta = 0, ua, va = document.createDocumentFragment(), wa = [], xa = [], ya = [], za = false, ab = (sa && sa.heights_action);\n if ((sa && sa.tail_balance)) {\n i.set(n.DS_TAILBALANCE, ra.id, sa.tail_balance);\n };\n if (((ab !== ba) && ((p.chrome() || p.webkit())))) {\n h.toggleClass(ra, \"webkitFix\");\n };\n for (var bb = 0; (bb < ra.childNodes.length); bb++) {\n ua = ra.childNodes[bb];\n if (fa(ua)) {\n continue;\n }\n else if (ea(ua)) {\n s(ua.firstChild.childNodes).forEach(function(jb) {\n la(jb, ab);\n });\n continue;\n }\n \n ;\n la(ua, ab);\n if ((ha(ua, true) == \"r\")) {\n xa.push(ua);\n }\n else wa.push(ua);\n ;\n ya.push(ua);\n if ((ja(ua) != \"2\")) {\n if (((((ta > 0) && (ha(ua) == \"r\"))) || (((ta < 0) && (ha(ua) == \"l\"))))) {\n za = true;\n }\n };\n ta = na(ta, ua);\n };\n var cb = [], db = [], eb = [];\n k.scry(ra, \"li.fbTimelineBalancer\").forEach(function(jb) {\n var kb = s(jb.firstChild.childNodes);\n if (jb.getAttribute(\"data-nonunits\")) {\n eb = eb.concat(kb);\n }\n else if ((ha(jb) == \"left\")) {\n cb = cb.concat(kb);\n }\n else if ((ha(jb) == \"right\")) {\n db = db.concat(kb);\n }\n \n ;\n });\n if (za) {\n ra.style.minHeight = ra.offsetHeight;\n wa.forEach(function(jb) {\n if ((ja(jb) != \"2\")) {\n ia(jb, \"l\");\n };\n });\n xa.forEach(function(jb) {\n if ((ja(jb) != \"2\")) {\n ia(jb, \"r\");\n };\n });\n var fb = j.create(\"li\", {\n className: \"fbTimelineBalancer\"\n }, j.create(\"ol\", null, wa));\n fb.setAttribute(\"data-side\", \"left\");\n j.prependContent(ra, fb);\n cb = wa.concat(cb);\n var gb = j.create(\"li\", {\n className: \"fbTimelineBalancer\"\n }, j.create(\"ol\", null, xa));\n gb.setAttribute(\"data-side\", \"right\");\n j.prependContent(ra, gb);\n db = xa.concat(db);\n ta = 0;\n }\n ;\n while (eb.length) {\n va.appendChild(eb.shift());;\n };\n while (((((ta >= 0) && cb.length)) || (((ta < 0) && db.length)))) {\n if ((ta >= 0)) {\n ua = cb.shift();\n }\n else ua = db.shift();\n ;\n va.appendChild(ua);\n ta = na(ta, ua);\n };\n ra.appendChild(va);\n k.scry(ra, \"li.fbTimelineBalancer\").forEach(function(jb) {\n if (!jb.firstChild.childNodes.length) {\n j.remove(jb);\n };\n });\n var hb = (((sa && sa.tail_balance)) || i.get(n.DS_TAILBALANCE, ra.id));\n if (hb) {\n ta = x.tailBalance(ra, ta, hb);\n };\n if (za) {\n ya.forEach(function(jb) {\n if ((jb.parentNode !== ra)) {\n ra.appendChild(jb);\n ta = na(ta, jb);\n }\n ;\n });\n ra.style.minHeight = null;\n }\n ;\n var ib = m.byClass(ra, \"fbTimelineSection\");\n if (ib) {\n i.set(n.DS_COLUMN_HEIGHT_DIFFERENTIAL, ib.id, ta);\n };\n ca[ra.id] = {\n };\n k.scry(ra, \"li.placeholderUnit\").forEach(function(jb) {\n ca[ra.id][jb.id] = jb;\n });\n pa(ra);\n oa(ra);\n if ((ab === aa)) {\n sa.heights_action = ba;\n w(function() {\n w(x.balanceCapsule.curry(ra, sa));\n });\n }\n ;\n },\n tailBalance: function(ra, sa, ta) {\n if (!ra) {\n return sa\n };\n var ua = [], va = [], wa = [], xa = [];\n k.scry(ra, \"li.fbTimelineBalancer\").forEach(function(za) {\n var ab = s(za.firstChild.childNodes);\n if (za.getAttribute(\"data-nonunits\")) {\n xa = xa.concat(ab);\n }\n else if ((ha(za) == \"left\")) {\n va = va.concat(ab);\n }\n else if ((ha(za) == \"right\")) {\n wa = wa.concat(ab);\n }\n \n ;\n ua = ua.concat(ab);\n });\n if (((((ta == n.FIXED_SIDE_RIGHT) && va.length)) || (((ta == n.FIXED_SIDE_LEFT) && wa.length)))) {\n return sa\n };\n var ya = document.createDocumentFragment();\n if (ua) {\n while (ua.length) {\n if ((ta != n.FIXED_SIDE_NONE)) {\n if ((ja(ua[0]) != \"2\")) {\n if ((sa >= 0)) {\n ia(ua[0], \"l\");\n }\n else ia(ua[0], \"r\");\n \n }\n };\n sa = na(sa, ua[0]);\n ya.appendChild(ua.shift());\n }\n };\n ra.appendChild(ya);\n k.scry(ra, \"li.fbTimelineBalancer\").forEach(function(za) {\n if (!za.firstChild.childNodes.length) {\n j.remove(za);\n };\n });\n return sa;\n },\n loadTwoColumnUnits: function(ra) {\n var sa = r(ra);\n v(function() {\n var ta = m.byClass(sa, \"fbTimelineSection\");\n if (ta) {\n var ua = k.find(sa, \".-cx-PUBLIC-timelineOneColMin__leftcapsule\"), va = k.find(sa, \".-cx-PUBLIC-timelineOneColMin__rightcapsule\"), wa = (va.offsetHeight - ua.offsetHeight);\n i.set(n.DS_COLUMN_HEIGHT_DIFFERENTIAL, ta.id, wa);\n }\n ;\n }, oa.curry(sa));\n }\n };\n })();\n e.exports = (a.TimelineCapsule || x);\n});\n__d(\"TimelineCapsuleUtilities\", [\"CSS\",], function(a, b, c, d, e, f) {\n var g = b(\"CSS\"), h = {\n setFirstUnit: function(i) {\n var j = true;\n for (var k = 0; (k < i.childNodes.length); ++k) {\n var l = i.childNodes[k];\n if ((l.id.indexOf(\"tl_unit_\") === 0)) {\n if (j) {\n j = false;\n g.addClass(l, \"firstUnit\");\n }\n else {\n g.removeClass(l, \"firstUnit\");\n break;\n }\n \n };\n };\n }\n };\n e.exports = h;\n});\n__d(\"TimelineUnitSelector\", [\"DOMQuery\",\"Parent\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMQuery\"), h = b(\"Parent\"), i = {\n getUnitsWithTime: function(j) {\n return g.scry(j, \"div.timelineUnitContainer\").filter(function(k) {\n return (((h.byClass(k, \"fbTimelineCapsule\") === j) && k.getAttribute(\"data-time\")));\n });\n }\n };\n e.exports = i;\n});\n__d(\"TimelineComposerUtilities\", [\"Event\",\"Arbiter\",\"Bootloader\",\"CSS\",\"DOM\",\"DOMQuery\",\"Parent\",\"TimelineUnitSelector\",\"Vector\",\"cx\",\"csx\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Arbiter\"), i = b(\"Bootloader\"), j = b(\"CSS\"), k = b(\"DOM\"), l = b(\"DOMQuery\"), m = b(\"Parent\"), n = b(\"TimelineUnitSelector\"), o = b(\"Vector\"), p = b(\"cx\"), q = b(\"csx\"), r = (86400 * 31), s = 86400000, t = {\n listenToSetEstimatedDate: function(u, v) {\n return h.subscribe(\"ComposerXTimelineTagger/init\", function(w, x) {\n if (l.contains(u, x.datePickerElement)) {\n t.setEstimatedDate(x.datePickerInstance, v());\n x.composerTimelineTagger.switchToTagger(\"date\");\n }\n ;\n });\n },\n listenToSetEstimatedDateOld: function(u, v) {\n return h.subscribe(\"TimelineBackdatedComposerTagger/initialized\", function(event, w) {\n if ((w.composer === u)) {\n w.date_picker.subscribe(\"initialized\", function(x, y) {\n t.setEstimatedDate(y, v());\n });\n };\n });\n },\n listenToPublish: function(u, v) {\n if (u.root) {\n u = u.root;\n };\n return h.subscribe(\"composer/publish\", function(event, w) {\n if ((w.composer_id === u.id)) {\n i.loadModules([\"TimelineStoryPublisher\",], function(x) {\n x.publish(w);\n (v && v());\n });\n };\n });\n },\n listenToAnotherComposerOpen: function(u, v) {\n return h.subscribe(\"composer/mutate\", function(w, x) {\n if ((x !== u)) {\n v();\n };\n });\n },\n listenToCancel: function(u, v) {\n return g.listen(u, \"click\", function(event) {\n if (m.byClass(event.getTarget(), \"-cx-PRIVATE-fbTimelineComposer__cancelbutton\")) {\n v();\n };\n });\n },\n listenToCancelOld: function(u, v) {\n return g.listen(u, \"click\", function(event) {\n (m.byClass(event.getTarget(), \"cancelBtn\") && v());\n });\n },\n hidePlaceIfAttachmentsTooTall: function(u) {\n var v = l.find(u, \".-cx-PRIVATE-fbComposer__attachmentform\"), w = o.getElementDimensions(v).y;\n if ((w > 50)) {\n j.hide(l.find(v, \".-cx-PRIVATE-fbComposerAttachment__place\"));\n };\n },\n hidePlaceIfAttachmentsTooTallOld: function(u) {\n var v = k.find(u, \"ul.fbTimelineComposerAttachments\"), w = o.getElementDimensions(v).y;\n if ((w > 50)) {\n var x = m.byTag(k.scry(v, \"span.placeAttachment\")[0], \"li\");\n (x && j.hide(x));\n }\n ;\n },\n setEstimatedDate: function(u, v) {\n var w, x;\n if ((v && j.hasClass(v, \"fbTimelineCapsule\"))) {\n w = v.getAttribute(\"data-start\");\n x = v.getAttribute(\"data-end\");\n if ((w && x)) {\n var y = new Date((x * 1000)), z = new Date();\n if ((y > z)) {\n u.setDate(z.getFullYear(), (z.getMonth() + 1), z.getDate());\n }\n else if (((x - w) > (2 * r))) {\n u.setDate(y.getFullYear());\n }\n else u.setDate(y.getFullYear(), (y.getMonth() + 1));\n \n ;\n }\n ;\n return;\n }\n ;\n var aa = m.byClass(v, \"fbTimelineCapsule\");\n if (aa) {\n w = aa.getAttribute(\"data-start\");\n x = aa.getAttribute(\"data-end\");\n var ba = o.getElementPosition(v).y, ca = [x,null,], da = [w,null,], ea = n.getUnitsWithTime(aa);\n for (var fa = 0; (fa < ea.length); fa++) {\n var ga = ea[fa], ha = k.scry(ga.parentNode, \".spinePointer\")[0];\n if (!ha) {\n continue;\n };\n var ia = o.getElementPosition(ha).y;\n if ((ia <= ba)) {\n if ((!ca[1] || (ia > ca[1]))) {\n ca = [ga.getAttribute(\"data-time\"),ia,];\n };\n }\n else if ((!da[1] || (ia < da[1]))) {\n da = [ga.getAttribute(\"data-time\"),ia,];\n }\n ;\n };\n if (((ca[0] !== null) && (da[0] !== null))) {\n var ja = (Math.round((((parseInt(ca[0], 10) + parseInt(da[0], 10))) / 2)) * 1000);\n ja = Math.min((new Date() - s), ja);\n u.setDateWithTimestamp(ja);\n }\n ;\n }\n ;\n },\n showMLEFlyout: function(u) {\n var v = (k.scry(document, \"a.fbTimelineSpine\").length === 0), w = function(x) {\n x.showMLEFlyout(u);\n };\n if (v) {\n i.loadModules([\"TimelineSpinelessComposer\",], w);\n }\n else i.loadModules([\"TimelineComposer\",], w);\n ;\n }\n };\n e.exports = t;\n});\n__d(\"TimelineComposer\", [\"Arbiter\",\"Bootloader\",\"CSS\",\"DOM\",\"Parent\",\"Run\",\"TimelineCapsule\",\"TimelineCapsuleUtilities\",\"TimelineComposerUtilities\",\"$\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Bootloader\"), i = b(\"CSS\"), j = b(\"DOM\"), k = b(\"Parent\"), l = b(\"Run\"), m = b(\"TimelineCapsule\"), n = b(\"TimelineCapsuleUtilities\"), o = b(\"TimelineComposerUtilities\"), p = b(\"$\"), q = b(\"cx\"), r;\n function s(x) {\n if ((x.isScheduledPost || x.isOGPost)) {\n return\n };\n if (!x.streamStory) {\n window.location.reload();\n return;\n }\n ;\n if (x.backdatedTime) {\n h.loadModules([\"TimelineStoryPublisher\",], function(z) {\n z.publish(x);\n });\n return;\n }\n ;\n var y = w.renderCapsuleBasedStory(r, x.streamStory);\n g.inform(\"TimelineComposer/on_after_publish\", y, g.BEHAVIOR_PERSISTENT);\n };\n function t() {\n var x = k.byClass(r, \"fbTimelineTwoColumn\");\n return j.find(x, \".spinePointer\");\n };\n function u(x) {\n var y = v();\n i.show(y);\n var z = x.subscribe(\"hide\", function() {\n i.hide(y);\n x.unsubscribe(z);\n });\n };\n function v() {\n var x = k.byClass(r, \"fbTimelineTwoColumn\"), y = j.scry(x, \"div.composerVeil\");\n if ((y.length !== 1)) {\n y = j.appendContent(x, j.create(\"div\", {\n className: \"composerVeil hidden_elem\"\n }));\n };\n return y[0];\n };\n var w = {\n init: function(x) {\n r = p(x);\n var y = g.subscribe(\"composer/publish\", function(event, z) {\n if ((z.composer_id === r.id)) {\n s(z);\n };\n });\n l.onLeave(y.unsubscribe.bind(y));\n if (i.hasClass(r, \"-cx-PRIVATE-fbTimelineComposer__root\")) {\n o.hidePlaceIfAttachmentsTooTall(r);\n }\n else o.hidePlaceIfAttachmentsTooTallOld(r);\n ;\n },\n showMLEFlyout: function(x) {\n x.setContext(t()).show();\n u(x);\n },\n renderCapsuleBasedStory: function(x, y) {\n var z = k.byClass(x, \"fbTimelineCapsule\");\n if (!z) {\n return\n };\n var aa = k.byClass(x, \"timelineUnitContainer\").parentNode;\n if (aa.nextSibling.getAttribute(\"data-spine\")) {\n aa = aa.nextSibling;\n };\n var ba = j.insertAfter(aa, y)[0];\n h.loadModules([\"Animation\",], function(ca) {\n new ca(ba.firstChild).from(\"backgroundColor\", \"#fff8dd\").to(\"backgroundColor\", \"#fff\").duration(2000).ease(ca.ease.both).go();\n });\n n.setFirstUnit(z);\n m.balanceCapsule(z);\n return ba;\n }\n };\n e.exports = (a.TimelineComposer || w);\n});\n__d(\"TimelineContentLoader\", [\"Event\",\"function-extensions\",\"Arbiter\",\"CSS\",\"DOM\",\"DOMScroll\",\"OnVisible\",\"ScrollingPager\",\"TimelineConstants\",\"TimelineController\",\"TimelineLegacySections\",\"TimelineSmartInsert\",\"TimelineURI\",\"UIPagelet\",\"UserAgent\",\"Vector\",\"$\",\"arrayContains\",\"copyProperties\",\"createArrayFrom\",\"csx\",\"debounce\",\"ge\",\"startsWith\",\"tx\",\"userAction\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\");\n b(\"function-extensions\");\n var h = b(\"Arbiter\"), i = b(\"CSS\"), j = b(\"DOM\"), k = b(\"DOMScroll\"), l = b(\"OnVisible\"), m = b(\"ScrollingPager\"), n = b(\"TimelineConstants\"), o = b(\"TimelineController\"), p = b(\"TimelineLegacySections\"), q = b(\"TimelineSmartInsert\"), r = b(\"TimelineURI\"), s = b(\"UIPagelet\"), t = b(\"UserAgent\"), u = b(\"Vector\"), v = b(\"$\"), w = b(\"arrayContains\"), x = b(\"copyProperties\"), y = b(\"createArrayFrom\"), z = b(\"csx\"), aa = b(\"debounce\"), ba = b(\"ge\"), ca = b(\"startsWith\"), da = b(\"tx\"), ea = b(\"userAction\"), fa = false, ga = false, ha, ia = null, ja = {\n }, ka = [], la = [], ma = [], na = {\n }, oa = {\n }, pa = {\n }, qa = {\n }, ra = null, sa = null, ta = false, ua = null;\n function va(eb, fb, gb, hb, ib) {\n this.node = eb;\n this.loaded = hb;\n this.canScrollLoad = true;\n this.canUnload = (fb != db.RECENT);\n this.scrubberKey = fb;\n this.historicUnitCount = ib;\n this._pageletLoadData = gb;\n this._expandPageletLoadData = {\n };\n this.rightColumnFinished = false;\n };\n x(va.prototype, {\n load: function(eb, fb) {\n if (this.loaded) {\n return\n };\n var gb = this._pageletLoadData;\n h.inform(n.SECTION_LOADING, {\n data: gb,\n scrubberKey: this.scrubberKey\n });\n this.loaded = true;\n i.removeClass(this.node, \"fbTimelineTimePeriodUnexpanded\");\n i.removeClass(this.node, \"fbTimelineTimePeriodSuppressed\");\n var hb = \"ProfileTimelineSectionPagelet\", ib = (this.scrubberKey == db.WAY_BACK);\n if (ib) {\n hb = \"ProfileTimelineRemainingYearsPagelet\";\n };\n gb.time_cutoff = db.getTimeCutoff();\n gb.highlight_unit_data = eb;\n gb.parent_key = this.parentKey;\n gb.force_no_friend_activity = ta;\n i.addClass(this.node, \"fbTimelineSectionLoading\");\n if (gb.combine_sections) {\n i.addClass(this.node, \"combinedSections\");\n };\n if ((this.canUnload && ga)) {\n var jb = this.node.firstChild.cloneNode(true);\n i.hide(jb);\n j.insertAfter(this.node, jb);\n }\n else this.canScrollLoad = false;\n ;\n var kb = null;\n if ((fb && !mb)) {\n var lb = this.node;\n lb.style.minHeight = (window.innerHeight + \"px\");\n kb = function() {\n lb.style.minHeight = null;\n };\n }\n ;\n var mb = (gb.combine_sections && ib);\n pa[this.scrubberKey] = s.loadFromEndpoint(hb, (mb ? (gb.unit_container_id + \"_left\") : this.node.id), gb, {\n usePipe: true,\n jsNonblock: true,\n constHeight: true,\n append: mb,\n finallyHandler: kb\n });\n cb(this.scrubberKey);\n },\n preload: function() {\n i.addClass(this.node, \"fbTimelineTimePeriodSuppressed\");\n i.removeClass(this.node, \"fbTimelineTimePeriodUnexpanded\");\n var eb = j.find(this.node, \"span.sectionLabel\");\n if (eb.getAttribute(\"data-original-label\")) {\n j.setContent(eb, eb.getAttribute(\"data-original-label\"));\n eb.removeAttribute(\"data-original-label\");\n }\n ;\n },\n unload: function() {\n if ((!this.loaded || !this.canUnload)) {\n return\n };\n this.loaded = false;\n (pa[this.scrubberKey] && pa[this.scrubberKey].cancel());\n i.addClass(this.node, \"fbTimelineTimePeriodUnexpanded\");\n i.removeClass(this.node, \"fbTimelineTimePeriodSuppressed\");\n if ((this.node.nextSibling && i.hasClass(this.node.nextSibling, \"fbTimelineSection\"))) {\n j.setContent(this.node, this.node.nextSibling);\n i.show(this.node.firstChild);\n }\n else j.empty(this.node);\n ;\n this.deactivateScrollLoad();\n },\n activateScrollLoad: function() {\n this.canScrollLoad = true;\n i.removeClass(this.node, \"fbTimelineTimePeriodSuppressed\");\n i.addClass(this.node, \"fbTimelineTimePeriodUnexpanded\");\n (oa[this.scrubberKey] && oa[this.scrubberKey].reset());\n },\n deactivateScrollLoad: function() {\n if (!this.loaded) {\n this.canScrollLoad = false;\n i.removeClass(this.node, \"fbTimelineTimePeriodUnexpanded\");\n i.addClass(this.node, \"fbTimelineTimePeriodSuppressed\");\n (oa[this.scrubberKey] && oa[this.scrubberKey].remove());\n }\n ;\n },\n setExpandLoadData: function(eb) {\n this._expandPageletLoadData = eb;\n return this;\n },\n appendData: function(eb) {\n x(this._pageleLoadData, eb);\n return this;\n },\n expandSubSections: function() {\n if (this.subSections.length) {\n db.navigateToSection(this.subSections[0].scrubberKey);\n };\n },\n expand: function(eb) {\n if (!this.loaded) {\n return\n };\n sa.add_event((\"expand_\" + this.scrubberKey));\n var fb = j.find(this.node, \".fbTimelineSectionExpander\");\n i.addClass(fb.firstChild, \"async_saving\");\n (eb && i.addClass(eb, \"async_saving\"));\n this._expandPageletLoadData.time_cutoff = db.getTimeCutoff();\n db.navigateToSection(this.scrubberKey);\n j.scry(this.node, \".fbTimelineCapsule\").forEach(j.remove);\n this._expandPageletLoadData.new_expand = true;\n (pa[this.scrubberKey] && pa[this.scrubberKey].cancel());\n pa[this.scrubberKey] = s.loadFromEndpoint(\"ProfileTimelineSectionPagelet\", fb.id, this._expandPageletLoadData, {\n usePipe: true,\n jsNonblock: true,\n constHeight: true\n });\n },\n isPermalinkPeriod: function() {\n return this._pageletLoadData.is_permalink_period;\n }\n });\n function wa() {\n if (fa) {\n return\n };\n o.register(o.CONTENT, db);\n sa = ea(\"timeline\").uai(\"init\", \"scrubber\", false);\n fa = true;\n if ((t.ie() <= 7)) {\n ga = true;\n };\n };\n var xa = aa(function(eb, fb, gb) {\n var hb = p.get(eb).historicUnitCount;\n fb -= hb;\n gb -= 1;\n if ((((hb == -1) || (gb <= 0)) || (fb < 0))) {\n return\n };\n var ib = db.getNextSectionKey(eb);\n if (ib) {\n p.get(ib).load();\n xa(ib, fb, gb);\n }\n ;\n }, 500);\n function ya(eb, fb, gb, hb) {\n var ib = db.getNextSectionKey(fb);\n if (ib) {\n oa[ib] = new l(eb, za.curry(ib, eb), false, (gb || 1000));\n }\n else if ((fb !== db.WAY_BACK)) {\n hb = (hb ? hb : 0);\n if ((hb > 80)) {\n return null\n };\n ya.curry(eb, fb, gb, (hb + 1)).defer(250);\n }\n \n ;\n };\n function za(eb, fb) {\n var gb = p.get(eb);\n if ((gb && gb.canScrollLoad)) {\n sa.add_event((\"scroll_load_\" + eb));\n if (ga) {\n gb.preload();\n }\n else {\n gb.load();\n if (ua) {\n xa(eb, ua.required_units, ua.max_parallelism);\n };\n }\n ;\n (fb && j.remove(fb));\n }\n ;\n };\n function ab() {\n var eb, fb, gb = false;\n for (var hb = 0; (hb < ka.length); hb++) {\n var ib = ka[hb];\n if (!ib) {\n continue;\n };\n var jb = p.get(ib);\n if ((jb && ((jb.canScrollLoad || jb.loaded)))) {\n if (!jb.loaded) {\n i.removeClass(jb.node, \"fbTimelineTimePeriodSuppressed\");\n i.addClass(jb.node, \"fbTimelineTimePeriodUnexpanded\");\n }\n ;\n if ((eb && fb)) {\n bb(eb, fb);\n if (gb) {\n eb.deactivateScrollLoad();\n };\n gb = true;\n }\n ;\n eb = null;\n fb = null;\n continue;\n }\n else if (eb) {\n fb = jb;\n jb.deactivateScrollLoad();\n }\n else {\n eb = jb;\n if (gb) {\n jb.activateScrollLoad();\n };\n }\n \n ;\n i.removeClass(jb.node, \"fbTimelineTimePeriodSuppressed\");\n i.addClass(jb.node, \"fbTimelineTimePeriodUnexpanded\");\n };\n };\n function bb(eb, fb) {\n i.removeClass(fb.node, \"fbTimelineTimePeriodUnexpanded\");\n i.addClass(fb.node, \"fbTimelineTimePeriodSuppressed\");\n var gb = j.find(eb.node, \"span.sectionLabel\"), hb = j.find(fb.node, \"span.sectionLabel\");\n if (!hb.getAttribute(\"data-original-label\")) {\n hb.setAttribute(\"data-original-label\", j.getText(hb));\n };\n if (((gb.getAttribute(\"data-month\") && hb.getAttribute(\"data-month\")) && (gb.getAttribute(\"data-year\") == hb.getAttribute(\"data-year\")))) {\n j.setContent(hb, da._(\"Show {month1} - {month2} {year}\", {\n month1: hb.getAttribute(\"data-month\"),\n month2: gb.getAttribute(\"data-month\"),\n year: gb.getAttribute(\"data-year\")\n }));\n }\n else if ((gb.getAttribute(\"data-year\") !== hb.getAttribute(\"data-year\"))) {\n j.setContent(hb, da._(\"Show {year1} - {year2}\", {\n year1: hb.getAttribute(\"data-year\"),\n year2: gb.getAttribute(\"data-year\")\n }));\n }\n else j.setContent(hb, da._(\"Show {year}\", {\n year: hb.getAttribute(\"data-year\")\n }));\n \n ;\n };\n function cb(eb) {\n if (ga) {\n for (var fb = 0; (fb < (ka.length - 1)); fb++) {\n var gb = ka[fb];\n if (!gb) {\n continue;\n };\n if ((gb != eb)) {\n var hb = p.get(gb);\n if ((hb.loaded && hb.canUnload)) {\n hb.unload();\n };\n }\n ;\n }\n };\n ab();\n };\n var db = {\n WAY_BACK: \"way_back\",\n RECENT: \"recent\",\n HEADER_SCROLL_CUTOFF: 80,\n CURRENT_SECTION_OFFSET: 150,\n FOOTER_HEIGHT: 60,\n registerTimePeriod: function(eb, fb, gb, hb, ib, jb, kb) {\n wa();\n if (w(ma, fb)) {\n return\n };\n if (la) {\n x(gb, la);\n };\n var lb = new va(eb, fb, gb, hb, kb);\n if (!ib) {\n ka[jb] = fb;\n ja[fb] = true;\n }\n else {\n lb.parentKey = ib;\n p.get(ib).subSections = (p.get(ib).subSections || []);\n p.get(ib).subSections[jb] = lb;\n }\n ;\n p.set(fb, lb);\n db.checkCurrentSectionChange();\n h.inform(n.SECTION_REGISTERED, {\n scrubberKey: fb\n });\n },\n reset: function() {\n for (var eb in oa) {\n oa[eb].remove();;\n };\n for (var fb in pa) {\n (pa[fb] && pa[fb].cancel());;\n };\n for (var gb in qa) {\n qa[gb].unsubscribe();\n delete qa[gb];\n };\n (ha && ha.unsubscribe());\n ha = null;\n p.removeAll();\n ia = null;\n ja = {\n };\n ka = [];\n la = [];\n ma = [];\n na = {\n };\n oa = {\n };\n pa = {\n };\n ra = null;\n sa = null;\n ta = false;\n fa = false;\n },\n checkCurrentSectionChange: function() {\n var eb = db.getCurrentSection(), fb = (ia && ia.scrubberKey);\n if (((eb && (eb.scrubberKey !== fb)) && !eb.isPermalinkPeriod())) {\n ia = eb;\n var gb = eb.scrubberKey, hb = eb.parentKey;\n if (!hb) {\n hb = gb;\n gb = null;\n }\n ;\n o.sectionHasChanged(hb, gb);\n }\n ;\n },\n setTimeCutoff: function(eb) {\n ra = eb;\n },\n getTimeCutoff: function() {\n return ra;\n },\n setParallelLoadConfig: function(eb) {\n ua = eb;\n },\n getCurrentSection: function() {\n var eb = {\n }, fb = p.getAll();\n for (var gb in fb) {\n var hb = fb[gb];\n if ((!hb.loaded || na[hb.scrubberKey])) {\n continue;\n };\n var ib = u.getElementPosition(hb.node, \"viewport\").y;\n if ((hb.scrubberKey == \"recent\")) {\n ib--;\n };\n if ((ib < db.CURRENT_SECTION_OFFSET)) {\n eb[ib] = hb;\n };\n };\n var jb = Math.max.apply(null, Object.keys(eb)), kb = (jb == -Infinity);\n if (!kb) {\n return eb[jb];\n }\n else if (ka[0]) {\n return p.get(ka[0])\n }\n ;\n return null;\n },\n capsuleForCurrentSection: function() {\n var eb = db.getCurrentSection();\n return (eb && j.scry(eb.node, \".fbTimelineCapsule\")[0]);\n },\n enableScrollLoad: function(eb, fb, gb, hb) {\n eb = v(eb);\n var ib = j.scry(eb.parentNode, \".fbTimelineCapsule\")[0];\n if (!ib) {\n return\n };\n if ((gb === null)) {\n ya(eb, fb, hb);\n }\n else o.runOnceWhenSectionFullyLoaded(ya.curry(eb, fb, hb), fb, gb);\n ;\n },\n enableScrollLoadOnClick: function(eb, fb, gb) {\n eb = v(eb);\n g.listen(eb, \"click\", function(hb) {\n hb.prevent();\n db.enableScrollLoad(eb, fb, null, gb);\n });\n },\n expandSectionOnClick: function(eb, fb) {\n g.listen(eb, \"click\", function(gb) {\n gb.prevent();\n p.get(fb).expand();\n });\n },\n expandSubSectionsOnClick: function(eb, fb) {\n g.listen(eb, \"click\", function(gb) {\n gb.prevent();\n p.get(fb).expandSubSections();\n });\n },\n getNextSectionKey: function(eb) {\n for (var fb = 0; (fb < (ka.length - 1)); fb++) {\n if ((ka[fb] == eb)) {\n while (((fb < (ka.length - 1)) && !ka[(fb + 1)])) {\n fb++;;\n };\n return ka[(fb + 1)];\n }\n ;\n };\n var gb = p.get(eb);\n if ((!gb || !gb.parentKey)) {\n return\n };\n var hb = p.get(gb.parentKey);\n if (!hb) {\n return\n };\n for (var ib = 0; (ib < (hb.subSections.length - 1)); ib++) {\n if ((hb.subSections[ib].scrubberKey == eb)) {\n return hb.subSections[(ib + 1)].scrubberKey\n };\n };\n },\n hideSection: function(eb) {\n var fb = p.get(eb);\n (fb && i.hide(j.find(fb.node, \".fbTimelineSection\")));\n var gb = o.getCurrentScrubber();\n if (gb) {\n var hb = o.getCurrentScrubber().getNav(eb);\n (hb && i.hide(hb));\n }\n ;\n var ib = o.getCurrentStickyHeaderNav();\n (ib && ib.removeTimePeriod(eb));\n na[eb] = true;\n },\n loadSectionOnClick: function(eb, fb) {\n g.listen(eb, \"click\", function(gb) {\n gb.prevent();\n p.get(fb).load();\n });\n },\n removeSection: function(eb) {\n for (var fb in ka) {\n if ((ka[fb] == eb)) {\n ka[fb] = null;\n break;\n }\n ;\n };\n p.remove(eb);\n delete ja[eb];\n if ((eb in oa)) {\n oa[eb].remove();\n delete oa[eb];\n }\n ;\n var gb = o.getCurrentStickyHeaderNav();\n (gb && gb.removeTimePeriod(eb));\n ma.push(eb);\n },\n removeSectionParent: function(eb) {\n j.remove(v(eb).parentNode);\n },\n navigateToSection: function(eb, fb, gb) {\n sa.add_event((\"nav_\" + eb));\n fb = !!fb;\n var hb = eb, ib = p.get(eb);\n if (!ib) {\n return\n };\n if (!ib.loaded) {\n q.enable();\n j.scry(v(\"timeline_tab_content\"), \".fbTimelineShowOlderSections\").forEach(j.remove);\n }\n ;\n if (!ja[eb]) {\n ib.node.style.minHeight = (u.getViewportDimensions().y + \"px\");\n var jb = h.subscribe(n.SECTION_FULLY_LOADED, function(rb, sb) {\n if ((sb.scrubberKey === eb)) {\n ib.node.style.minHeight = \"\";\n jb.unsubscribe();\n }\n ;\n });\n hb = ib.parentKey;\n var kb = p.get(hb).node;\n if (!i.hasClass(kb, \"fbTimelineSectionExpanded\")) {\n k.scrollTo(kb, 0);\n i.addClass(kb, \"fbTimelineSectionExpanded\");\n j.scry(kb, \".fbTimelineCapsule\").forEach(j.remove);\n j.scry(kb, \"div.fbTimelineSectionExpandPager\").forEach(j.remove);\n j.scry(kb, \"div.fbTimelineContentHeader\").forEach(j.remove);\n j.scry(kb, \".-cx-PRIVATE-fbTimelineOneColumnHeader__header\").forEach(function(rb) {\n if (!rb.getAttribute(\"data-subsection\")) {\n j.remove(rb);\n };\n });\n }\n ;\n var lb = db.getNextSectionKey(hb);\n if ((lb && oa[lb])) {\n oa[lb].setBuffer(0);\n };\n }\n ;\n for (var mb = 0; (mb < ka.length); mb++) {\n var nb = ka[mb];\n if (!nb) {\n continue;\n };\n if ((nb == hb)) {\n break;\n };\n p.get(nb).deactivateScrollLoad();\n j.scry(v(\"timeline_tab_content\"), \".fbTimelineSectionExpandPager\").forEach(function(rb) {\n var sb = m.getInstance(rb.id);\n (sb && sb.removeOnVisible());\n });\n };\n db.adjustContentPadding();\n ib.load(gb, true);\n ab();\n var ob = u.getScrollPosition().x, pb = u.getElementPosition(ib.node).y;\n if (!fb) {\n var qb = (ja[eb] ? n.SCROLL_TO_OFFSET : n.SUBSECTION_SCROLL_TO_OFFSET);\n k.scrollTo(new u(ob, (pb - qb), \"document\"), true, false, false, function() {\n var rb = u.getElementPosition(ib.node).y;\n k.scrollTo(new u(ob, (rb - qb), \"document\"), false);\n var sb = j.scry(ib.node, \"h3.uiHeaderTitle\")[0];\n if (sb) {\n sb.tabIndex = 0;\n sb.focus();\n }\n ;\n });\n }\n ;\n },\n adjustContentPadding: function() {\n var eb = ba(\"timeline_tab_content\");\n if (!eb) {\n return\n };\n if (o.isOneColumnMinimal()) {\n return\n };\n var fb = (o.getCurrentKey() || r.TIMELINE_KEY);\n if ((fb !== r.TIMELINE_KEY)) {\n return\n };\n var gb = (ka.length - 1), hb = p.get(ka[gb]);\n eb.style.paddingBottom = ((hb && hb.loaded) ? null : ((((u.getViewportDimensions().y - db.CURRENT_SECTION_OFFSET) - db.HEADER_SCROLL_CUTOFF) - db.FOOTER_HEIGHT) + \"px\"));\n },\n adjustContentPaddingAfterLoad: function(eb, fb) {\n o.runOnceWhenSectionFullyLoaded(db.adjustContentPadding, eb, fb);\n },\n appendContentAfterLoad: function(eb, fb, gb) {\n o.runOnceWhenSectionFullyLoaded(j.appendContent.curry(v(eb), fb), gb, \"0\");\n },\n markSectionAsLoaded: function(eb, fb, gb) {\n o.runOnceWhenSectionFullyLoaded(function() {\n (ba(eb) && i.removeClass(v(eb).parentNode, \"fbTimelineSectionLoading\"));\n }, fb, gb);\n },\n suppressSectionsAbove: function(eb) {\n var fb, gb;\n for (var hb = 0; (hb < ka.length); hb++) {\n var ib = ka[hb];\n if (!ib) {\n continue;\n };\n fb = p.get(ib).node;\n gb = null;\n if ((y(eb.parentNode.children).indexOf(eb) <= y(fb.parentNode.children).indexOf(fb))) {\n gb = ib;\n break;\n }\n ;\n p.get(ib).deactivateScrollLoad();\n };\n if (gb) {\n db.navigateToSection(gb, true);\n };\n },\n forceNoFriendActivity: function() {\n ta = true;\n },\n removeDupes: function(eb) {\n var fb = ba(eb);\n if (!fb) {\n return\n };\n var gb = j.scry(fb, \"li.fbTimelineUnit\"), hb = {\n };\n for (var ib = 0; (ib < gb.length); ib++) {\n var jb = gb[ib];\n if ((jb.id && ca(jb.id, \"tl_unit_\"))) {\n var kb = jb.id.substring(8, jb.id.length), lb = (((jb.getAttribute(\"data-unit\") == \"ExperienceSummaryUnit\") ? jb.getAttribute(\"data-time\") : 1));\n if ((hb.hasOwnProperty(kb) && (hb[kb] == lb))) {\n jb.id = (\"dupe_unit_\" + Math.random());\n jb.className = \"hidden_elem\";\n }\n else hb[kb] = lb;\n ;\n }\n ;\n };\n },\n removeLoadingState: function(eb) {\n (ba(eb) && i.removeClass(v(eb), \"fbTimelineSectionLoading\"));\n },\n setExpandLoadDataForSection: function(eb, fb) {\n var gb = p.get(eb);\n (gb && gb.setExpandLoadData(fb));\n },\n appendSectionDataForAllSections: function(eb) {\n la = eb;\n for (var fb = 0; (fb < (ka.length - 1)); fb++) {\n var gb = ka[fb];\n if (!gb) {\n continue;\n };\n var hb = p.get(gb);\n (hb && hb.appendData(eb));\n };\n },\n updatePagerAfterLoad: function(eb, fb, gb, hb, ib) {\n var jb = m.getInstance(eb.firstChild.id);\n if (!jb) {\n qa[eb.firstChild.id] = h.subscribe(m.REGISTERED, function(kb, lb) {\n qa[eb.firstChild.id].unsubscribe();\n delete qa[eb.firstChild.id];\n if ((lb.id === eb.firstChild.id)) {\n db.updatePagerAfterLoad(eb, fb, gb, hb, ib);\n };\n });\n return;\n }\n ;\n o.runOnceWhenSectionFullyLoaded(function() {\n i.removeClass(eb, \"fbTimelineHiddenPager\");\n jb.checkBuffer();\n }, gb, hb);\n if (ib) {\n o.runOnceWhenSectionFullyLoaded(o.adjustScrollingPagerBuffer.curry(eb.firstChild.id, fb), gb, hb);\n };\n },\n showAfterLoad: function(eb, fb, gb) {\n o.runOnceWhenSectionFullyLoaded(function() {\n var hb = ba(eb);\n (hb && i.show(hb));\n }, fb, gb);\n },\n repositionDialog: function(eb) {\n h.subscribe(n.SECTION_LOADED, function() {\n eb.updatePosition();\n });\n },\n rightColumnFinished: function(eb) {\n var fb = p.get(eb);\n fb.rightColumnFinished = true;\n },\n registerUnrankedGroup: function(eb, fb) {\n g.listen(eb, \"click\", function(event) {\n o.unrankedWasClicked();\n var gb = eb.offsetHeight;\n j.remove(eb.parentNode);\n i.removeClass(fb, \"hidden_elem\");\n var hb = fb.offsetHeight;\n fb.style.height = (gb + \"px\");\n fb.style.height = (hb + \"px\");\n return true;\n });\n }\n };\n e.exports = db;\n});\n__d(\"TimelineLogging\", [\"TimelineController\",\"reportData\",], function(a, b, c, d, e, f) {\n var g = b(\"TimelineController\"), h = b(\"reportData\"), i = false, j = 0, k = null, l = null, m = {\n init: function(n) {\n if (i) {\n return\n };\n j = n;\n g.register(g.LOGGING, this);\n },\n reset: function() {\n i = false;\n j = 0;\n k = null;\n },\n log: function(n, o) {\n o.profile_id = j;\n h(n, {\n gt: o\n });\n },\n logSectionChange: function(n, o) {\n var p = {\n timeline_section_change: 1,\n key: n\n };\n if ((k && (n == k))) {\n p.timeline_scrubber = 1;\n k = null;\n }\n ;\n if ((l && (n == l))) {\n p.sticky_header_nav = 1;\n l = null;\n }\n ;\n m.log(\"timeline\", p);\n },\n logScrubberClick: function(n) {\n k = n;\n },\n logStickyHeaderNavClick: function(n) {\n l = n;\n },\n logUnrankedClick: function() {\n var n = {\n timeline_unranked: 1\n };\n m.log(\"timeline\", n);\n }\n };\n e.exports = m;\n});\n__d(\"TimelineStickyHeaderComposerX\", [\"Event\",\"Arbiter\",\"Bootloader\",\"CSS\",\"ComposerXController\",\"DOMQuery\",\"Parent\",\"Run\",\"TimelineComposerUtilities\",\"TimelineContentLoader\",\"TimelineStickyHeader\",\"Vector\",\"copyProperties\",\"csx\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Arbiter\"), i = b(\"Bootloader\"), j = b(\"CSS\"), k = b(\"ComposerXController\"), l = b(\"DOMQuery\"), m = b(\"Parent\"), n = b(\"Run\"), o = b(\"TimelineComposerUtilities\"), p = b(\"TimelineContentLoader\"), q = b(\"TimelineStickyHeader\"), r = b(\"Vector\"), s = b(\"copyProperties\"), t = b(\"csx\"), u = b(\"cx\");\n function v(x) {\n return (x && m.byClass(x.getContext(), \"-cx-PRIVATE-fbTimelineStickyHeaderComposer__root\"));\n };\n function w(x) {\n this._composerRoot = x;\n this._tokens = [o.listenToSetEstimatedDate(this._composerRoot, p.capsuleForCurrentSection),o.listenToPublish(this._composerRoot, this._close.bind(this)),h.subscribe(\"PhotoSnowlift.OPEN\", this._close.bind(this)),h.subscribe(\"TimelineMLE/mleFlyoutShown\", function(y, z) {\n if ((v(z) === this._composerRoot)) {\n k.reset(this._composerRoot);\n };\n }.bind(this)),h.subscribe(\"composer/initializedAttachment\", function(y, z) {\n if ((z.composerRoot === this._composerRoot)) {\n this._registerClickToDismiss();\n if (!z.isInitial) {\n this._closeMLE();\n };\n }\n else this._close();\n ;\n }.bind(this)),h.subscribe(q.ADJUST_WIDTH, this._toggleNarrowMode.bind(this)),];\n this._clickCancelToken = o.listenToCancel(this._composerRoot, this._close.bind(this));\n n.onLeave(function() {\n while (this._tokens.length) {\n this._tokens.pop().unsubscribe();;\n };\n this._clearClickDismissToken();\n if (this._clickCancelToken) {\n this._clickCancelToken.remove();\n this._clickCancelToken = null;\n }\n ;\n }.bind(this));\n };\n s(w.prototype, {\n _toggleNarrowMode: function(event, x) {\n i.loadModules([\"Tooltip\",], function(y) {\n var z = (r.getElementDimensions(x).x > 400), aa = l.scry(this._composerRoot, \".-cx-PUBLIC-fbComposerAttachment__link\");\n j.conditionClass(this._composerRoot, \"-cx-PRIVATE-fbTimelineStickyHeaderComposer__narrow\", z);\n for (var ba = 0; (ba < aa.length); ba++) {\n var ca = aa[ba], da = l.getText(ca);\n if (z) {\n y.set(ca, da);\n }\n else y.remove(ca);\n ;\n };\n }.bind(this));\n return false;\n },\n _registerClickToDismiss: function() {\n var x = j.hasClass(l.find(this._composerRoot, \".-cx-PRIVATE-fbComposerAttachment__mle\"), \"-cx-PUBLIC-fbComposerAttachment__selected\");\n if (!x) {\n this._clearClickDismissToken();\n return;\n }\n ;\n this._clickDismissToken = g.listen(document.body, \"click\", function(y) {\n var z = m.byClass(y.getTarget(), \"-cx-PRIVATE-fbTimelineStickyHeaderComposer__root\");\n if (!z) {\n this._close();\n this._clearClickDismissToken();\n }\n ;\n }.bind(this));\n },\n _clearClickDismissToken: function() {\n if (this._clickDismissToken) {\n this._clickDismissToken.remove();\n this._clickDismissToken = null;\n }\n ;\n },\n _close: function() {\n this._clearClickDismissToken();\n this._closeMLE();\n k.reset(this._composerRoot);\n },\n _closeMLE: function() {\n i.loadModules([\"TimelineMLE\",], function(x) {\n var y = x.getFlyout();\n if ((v(y) === this._composerRoot)) {\n x.hideFlyout();\n };\n }.bind(this));\n }\n });\n e.exports = w;\n});\n__d(\"TimelineSpinelessComposer\", [\"Arbiter\",\"Bootloader\",\"CSS\",\"DOM\",\"Parent\",\"Run\",\"TimelineComposer\",\"TimelineComposerUtilities\",\"csx\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Bootloader\"), i = b(\"CSS\"), j = b(\"DOM\"), k = b(\"Parent\"), l = b(\"Run\"), m = b(\"TimelineComposer\"), n = b(\"TimelineComposerUtilities\"), o = b(\"csx\"), p = b(\"cx\"), q;\n function r(w) {\n if ((w.isScheduledPost || w.isOGPost)) {\n return\n };\n if (!w.streamStory) {\n window.location.reload();\n return;\n }\n ;\n if (w.backdatedTime) {\n h.loadModules([\"TimelineStoryPublisher\",], function(x) {\n x.publish(w);\n });\n return;\n }\n ;\n m.renderCapsuleBasedStory(q, w.streamStory);\n };\n function s() {\n return j.find(k.byClass(q, \"fbTimelineComposerCapsule\"), \"div.-cx-PRIVATE-fbTimelineComposerAttachment__mleflyoutpointer\");\n };\n function t(w) {\n var x = u();\n i.show(x);\n var y = w.subscribe(\"hide\", function() {\n i.hide(x);\n w.unsubscribe(y);\n });\n };\n function u() {\n var w = k.byClass(q, \"fbTimelineComposerCapsule\"), x = j.scry(w, \"div.composerVeil\");\n if ((x.length !== 1)) {\n x = j.appendContent(w, j.create(\"div\", {\n className: \"composerVeil hidden_elem\"\n }));\n };\n return x[0];\n };\n var v = {\n init: function(w) {\n q = w;\n var x = g.subscribe(\"composer/publish\", function(event, y) {\n if ((y.composer_id === q.id)) {\n r(y);\n };\n });\n l.onLeave(x.unsubscribe.bind(x));\n if (i.hasClass(q, \"-cx-PRIVATE-fbTimelineComposer__root\")) {\n n.hidePlaceIfAttachmentsTooTall(q);\n }\n else n.hidePlaceIfAttachmentsTooTallOld(q);\n ;\n },\n showMLEFlyout: function(w) {\n w.setContext(s()).show();\n t(w);\n }\n };\n e.exports = v;\n});\n__d(\"TimelineStickyRightColumn\", [\"Arbiter\",\"CSS\",\"DOMQuery\",\"Event\",\"PhotoSnowlift\",\"Run\",\"Style\",\"TimelineContentLoader\",\"Vector\",\"UserAgent\",\"csx\",\"queryThenMutateDOM\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"CSS\"), i = b(\"DOMQuery\"), j = b(\"Event\"), k = b(\"PhotoSnowlift\"), l = b(\"Run\"), m = b(\"Style\"), n = b(\"TimelineContentLoader\"), o = b(\"Vector\"), p = b(\"UserAgent\"), q = b(\"csx\"), r = b(\"queryThenMutateDOM\"), s = 100, t = 15, u = 15, v = 71, w = false, x = null, y = null, z, aa, ba, ca, da, ea, fa, ga;\n function ha() {\n if (k.getInstance().isOpen) {\n return\n };\n z = n.getCurrentSection();\n if ((!z || !z.rightColumnFinished)) {\n return\n };\n var pa = i.scry(z.node, \".-cx-PUBLIC-timelineOneColMin__leftcapsule\")[0], qa = i.scry(z.node, \".-cx-PUBLIC-timelineOneColMin__rightcapsule\")[0];\n aa = (pa ? pa.offsetHeight : 0);\n ba = (qa ? qa.offsetHeight : 0);\n ca = o.getViewportDimensions().y;\n fa = (pa ? o.getElementPosition(pa).y : 0);\n ga = (document.body.clientWidth < document.body.scrollWidth);\n };\n function ia() {\n if (k.getInstance().isOpen) {\n return\n };\n if ((y && (y !== z))) {\n var pa = i.scry(y.node, \".-cx-PUBLIC-timelineOneColMin__rightcapsule\")[0];\n if (pa) {\n ka(pa, \"\", \"\", \"\");\n };\n }\n ;\n var qa = i.scry(z.node, \".-cx-PUBLIC-timelineOneColMin__rightcapsule\")[0];\n if (!qa) {\n return\n };\n if (ga) {\n ka(qa, \"\", \"\", \"\");\n return;\n }\n ;\n if ((!z || !z.rightColumnFinished)) {\n return\n };\n ja(z);\n y = (h.hasClass(qa, \"fixed_always\") ? z : null);\n };\n function ja(pa) {\n if (((ba >= aa) || (aa <= ca))) {\n return\n };\n ea = da;\n da = o.getScrollPosition().y;\n var qa, ra = i.scry(pa.node, \".-cx-PUBLIC-timelineOneColMin__rightcapsule\")[0];\n if (!ra) {\n return\n };\n if ((da <= (fa - la()))) {\n ka(ra, \"\", \"\", \"\");\n return;\n }\n ;\n if (((aa + fa) <= (da + Math.min((ba + la()), ((ca - u) - v))))) {\n ka(ra, \"absolute\", \"\", (u + \"px\"));\n return;\n }\n ;\n if ((ba > ((ca - u) - la()))) {\n if ((da < ea)) {\n var sa = false;\n if ((ra.style.position === \"absolute\")) {\n if (((ra.style.top !== \"\") && (((da + la()) - fa) <= parseInt(ra.style.top, 10)))) {\n sa = true;\n }\n else if (((ra.style.bottom !== \"\") && (da <= ((((fa + aa) - la())) - ba)))) {\n sa = true;\n }\n \n };\n if (sa) {\n ka(ra, \"fixed\", (la() + \"px\"), \"\");\n return;\n }\n else if (((ra.style.position === \"absolute\") && ra.style.top)) {\n return;\n }\n else if (h.hasClass(ra, \"fixed_always\")) {\n if ((parseInt(ra.style.top, 10) >= la())) {\n return\n };\n qa = ((da - fa) - ((ba - ((ca - v)))));\n if (ea) {\n qa += (ea - da);\n };\n ka(ra, \"absolute\", (qa + \"px\"), \"\");\n return;\n }\n \n \n ;\n }\n else {\n var ta = false;\n if (((ra.style.position === \"absolute\") || (((ra.style.position === \"\") && !h.hasClass(ra, \"fixed_always\"))))) {\n qa = (ra.style.top ? parseInt(ra.style.top, 10) : 0);\n if (((da + ca) >= (((fa + qa) + ba) + v))) {\n ta = true;\n };\n }\n ;\n if (ta) {\n qa = (((ca - ba) - u) - v);\n ka(ra, \"fixed\", (qa + \"px\"), \"\");\n return;\n }\n else if ((da == ea)) {\n return;\n }\n else if (h.hasClass(ra, \"fixed_always\")) {\n if ((parseInt(ra.style.top, 10) >= la())) {\n qa = ((da - fa) + la());\n if (ea) {\n qa += (ea - da);\n };\n ka(ra, \"absolute\", (qa + \"px\"), \"\");\n return;\n }\n ;\n }\n else if ((ra.style.position === \"absolute\")) {\n return\n }\n \n \n ;\n }\n ;\n }\n else ka(ra, \"fixed\", (la() + \"px\"), \"\");\n ;\n };\n function ka(pa, qa, ra, sa) {\n m.set(pa, \"bottom\", sa);\n if ((qa === \"fixed\")) {\n h.addClass(pa, \"fixed_always\");\n m.set(pa, \"position\", \"\");\n }\n else {\n h.removeClass(pa, \"fixed_always\");\n m.set(pa, \"position\", qa);\n }\n ;\n m.set(pa, \"top\", ra);\n g.inform(\"reflow\");\n };\n function la() {\n return (h.hasClass(document.documentElement, \"tinyViewport\") ? t : s);\n };\n function ma() {\n r(ha, ia);\n };\n function na() {\n w = false;\n y = null;\n while (x.length) {\n x.pop().remove();;\n };\n x = null;\n };\n var oa = {\n init: function() {\n if ((w || (p.ie() < 8))) {\n return\n };\n w = true;\n x = [j.listen(window, \"scroll\", ma),j.listen(window, \"resize\", ma),];\n l.onLeave(na);\n },\n adjust: function() {\n if (w) {\n ha();\n ia();\n }\n ;\n }\n };\n e.exports = oa;\n});\n__d(\"TimelineProfileQuestionsUnit\", [\"CSS\",\"Event\",\"Parent\",\"tidyEvent\",], function(a, b, c, d, e, f) {\n var g = b(\"CSS\"), h = b(\"Event\"), i = b(\"Parent\"), j = b(\"tidyEvent\"), k = null, l = {\n COLLAPSED: \"collapsedUnit\",\n UNIT: \"fbTimelineUnit\"\n };\n function m(n, o, p, q) {\n this.$TimelineProfileQuestionsUnit0 = n;\n this.$TimelineProfileQuestionsUnit1 = o;\n this.$TimelineProfileQuestionsUnit2 = p;\n this.$TimelineProfileQuestionsUnit3 = q;\n this.$TimelineProfileQuestionsUnit4();\n (k && k.$TimelineProfileQuestionsUnit5());\n k = this;\n };\n m.prototype.$TimelineProfileQuestionsUnit5 = function() {\n (this.$TimelineProfileQuestionsUnit6 && this.$TimelineProfileQuestionsUnit6.remove());\n this.$TimelineProfileQuestionsUnit6 = null;\n };\n m.prototype.$TimelineProfileQuestionsUnit4 = function() {\n if (this.$TimelineProfileQuestionsUnit3.isCollapsed) {\n return\n };\n this.$TimelineProfileQuestionsUnit6 = h.listen(this.$TimelineProfileQuestionsUnit1, \"click\", this.$TimelineProfileQuestionsUnit7.bind(this));\n j(this.$TimelineProfileQuestionsUnit6);\n };\n m.prototype.$TimelineProfileQuestionsUnit7 = function() {\n if (!this.$TimelineProfileQuestionsUnit2) {\n return\n };\n var n = i.byClass(this.$TimelineProfileQuestionsUnit0, l.UNIT);\n g.toggle(this.$TimelineProfileQuestionsUnit2);\n var o = !g.shown(this.$TimelineProfileQuestionsUnit2);\n g.conditionClass(n, l.COLLAPSED, o);\n };\n m.updateElements = function(n, o) {\n if (!k) {\n return\n };\n k.$TimelineProfileQuestionsUnit5();\n k.$TimelineProfileQuestionsUnit1 = n;\n k.$TimelineProfileQuestionsUnit2 = o;\n k.$TimelineProfileQuestionsUnit4();\n };\n e.exports = m;\n});"); |
| // 13348 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"sc344fd856451d82954e184ab8fd081f4e1937e29"); |
| // 13349 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"xfhln\",]);\n}\n;\n;\n__d(\"ComposerXEmptyAttachment\", [\"Class\",\"ComposerXAttachment\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"ComposerXAttachment\"), i = b(\"copyProperties\");\n function j(k, l) {\n this.parent.construct(this);\n this._root = k;\n if (l) {\n this.attachmentClassName = l;\n }\n ;\n ;\n };\n;\n g.extend(j, h);\n i(j.prototype, {\n getRoot: function() {\n return this._root;\n }\n });\n e.exports = j;\n});\n__d(\"ComposerXDatepickerIconReset\", [\"JSBNG__CSS\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = b(\"cx\");\n function i(j) {\n g.removeClass(j.element, \"-cx-PUBLIC-fbTimelineBackdatedComposer__datepickericonselected\");\n g.removeClass(j.element, \"-cx-PUBLIC-fbComposerXTagger__controlopen\");\n };\n;\n e.exports = i;\n});\n__d(\"TimelineCommentsLoader\", [\"JSBNG__Event\",\"CommentPrelude\",\"JSBNG__CSS\",\"DOM\",\"Parent\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"CommentPrelude\"), i = b(\"JSBNG__CSS\"), j = b(\"DOM\"), k = b(\"Parent\"), l = b(\"emptyFunction\"), m = {\n init: function() {\n m.init = l;\n g.listen(JSBNG__document.body, \"click\", function(n) {\n var o = k.byClass(n.getTarget(), \"fbTimelineFeedbackCommentLoader\");\n if (o) {\n n.kill();\n h.click(o, false);\n var p = k.byTag(o, \"form\"), q = j.scry(p, \"li.uiUfiViewAll input\");\n if (!q.length) {\n q = j.scry(p, \"li.fbUfiViewPrevious input\");\n }\n ;\n ;\n if (!q.length) {\n q = j.scry(p, \"a.UFIPagerLink\");\n }\n ;\n ;\n q[0].click();\n i.show(j.JSBNG__find(p, \"li.uiUfiComments\"));\n i.removeClass(o, \"fbTimelineFeedbackCommentLoader\");\n }\n ;\n ;\n });\n }\n };\n e.exports = m;\n});\n__d(\"TimelineCapsule\", [\"Arbiter\",\"JSBNG__CSS\",\"DataStore\",\"DOM\",\"DOMQuery\",\"DOMScroll\",\"Parent\",\"TimelineConstants\",\"TimelineLegacySections\",\"UserAgent\",\"Vector\",\"$\",\"createArrayFrom\",\"csx\",\"isEmpty\",\"queryThenMutateDOM\",\"JSBNG__requestAnimationFrame\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"JSBNG__CSS\"), i = b(\"DataStore\"), j = b(\"DOM\"), k = b(\"DOMQuery\"), l = b(\"DOMScroll\"), m = b(\"Parent\"), n = b(\"TimelineConstants\"), o = b(\"TimelineLegacySections\"), p = b(\"UserAgent\"), q = b(\"Vector\"), r = b(\"$\"), s = b(\"createArrayFrom\"), t = b(\"csx\"), u = b(\"isEmpty\"), v = b(\"queryThenMutateDOM\"), w = b(\"JSBNG__requestAnimationFrame\"), x = (function() {\n var y = 45, z = 15, aa = \"use\", ba = \"update\", ca = {\n }, da = {\n };\n function ea(ra) {\n return h.hasClass(ra, \"fbTimelineBalancer\");\n };\n ;\n function fa(ra) {\n return ra.getAttribute(\"data-spine\");\n };\n ;\n function ga(ra) {\n return h.hasClass(ra, \"placeholderUnit\");\n };\n ;\n function ha(ra, sa) {\n if (sa) {\n return ((i.get(n.DS_SIDEORG, ra.id) || ra.getAttribute(\"data-side\")));\n }\n ;\n ;\n return ra.getAttribute(\"data-side\");\n };\n ;\n var ia = function(ra, sa) {\n if (((p.ie() <= 6))) {\n ia = function(ta, ua) {\n i.set(n.DS_SIDEORG, ta.id, ha(ta, true));\n ta.setAttribute(\"data-side\", ua);\n h.removeClass(ta, \"leftColumn\");\n h.removeClass(ta, \"rightColumn\");\n h.addClass(ta, ((((ua == \"l\")) ? \"leftColumn\" : \"rightColumn\")));\n };\n }\n else ia = function(ta, ua) {\n i.set(n.DS_SIDEORG, ta.id, ha(ta, true));\n ta.setAttribute(\"data-side\", ua);\n };\n ;\n ;\n ia(ra, sa);\n };\n function ja(ra) {\n return ra.getAttribute(\"data-size\");\n };\n ;\n function ka(ra) {\n if (((((h.hasClass(ra, \"fbTimelineOneColumn\") && ra.prevSibling)) && h.hasClass(ra.prevSibling, \"fbTimelineOneColumn\")))) {\n return ((z * 2));\n }\n ;\n ;\n if (h.hasClass(ra, \"fbTimelineIndeterminateContent\")) {\n return 0;\n }\n ;\n ;\n return z;\n };\n ;\n function la(ra, sa) {\n var ta = 0;\n if (((h.shown(ra) && !h.hasClass(ra, \"placeholderUnit\")))) {\n if (((sa === aa))) {\n ta = i.get(n.DS_HEIGHT, ra.id, null);\n if (((ta === null))) {\n ta = ra.getAttribute(\"data-calculatedheight\");\n }\n ;\n ;\n }\n else ta = ((ra.offsetHeight + ka(ra)));\n ;\n }\n ;\n ;\n if (((((sa === aa)) && ((ta === null))))) {\n ta = 300;\n }\n ;\n ;\n i.set(n.DS_HEIGHT, ra.id, parseInt(ta, 10));\n };\n ;\n function ma(ra) {\n var sa = i.get(n.DS_HEIGHT, ra.id, null);\n return sa;\n };\n ;\n function na(ra, sa) {\n if (((ja(sa) == \"2\"))) {\n return 0;\n }\n else if (((ha(sa) == \"r\"))) {\n return ((ra + ma(sa)));\n }\n else return ((ra - ma(sa)))\n \n ;\n };\n ;\n function oa(ra) {\n k.scry(ra, \".-cx-PUBLIC-timelineOneColMin__endmarker\").forEach(function(sa) {\n var ta = sa.getAttribute(\"data-endmarker\"), ua = sa.getAttribute(\"data-pageindex\"), va = function() {\n if (!sa.parentNode) {\n return;\n }\n ;\n ;\n i.set(n.DS_LOADED, ra.id, ua);\n j.remove(sa);\n g.inform(n.SECTION_FULLY_LOADED, {\n scrubberKey: ta,\n pageIndex: ua,\n capsuleID: ra.id,\n childCount: ra.childNodes.length\n });\n };\n if (o.get(ta)) {\n va();\n }\n else var wa = g.subscribe(n.SECTION_REGISTERED, function(xa, ya) {\n if (((ya.scrubberKey === ta))) {\n va();\n wa.unsubscribe();\n }\n ;\n ;\n })\n ;\n });\n g.inform(\"TimelineCapsule/balanced\", {\n capsule: ra\n });\n };\n ;\n function pa(ra) {\n if (u(ca[ra.id])) {\n return;\n }\n ;\n ;\n var sa = ((ea(ra) ? ra.firstChild : ra)), ta = sa.childNodes.length, ua = {\n }, va = {\n }, wa, xa = z, ya = z, za, ab = [];\n for (var bb = 0; ((bb < ta)); bb++) {\n wa = sa.childNodes[bb];\n if (h.hasClass(wa, \"fbTimelineUnit\")) {\n za = k.scry(wa, \"div.timelineUnitContainer\")[0];\n if (za) {\n va[wa.id] = za.getAttribute(\"data-time\");\n }\n ;\n ;\n if (((!ga(wa) && h.shown(wa)))) {\n if (((ja(wa) == \"2\"))) {\n ua[wa.id] = Math.max(xa, ya);\n xa = ya = ((ua[wa.id] + ma(wa)));\n }\n else if (((ha(wa) == \"r\"))) {\n ua[wa.id] = ya;\n ya += ma(wa);\n }\n else {\n ua[wa.id] = xa;\n xa += ma(wa);\n }\n \n ;\n ;\n if (((((ha(wa, true) == \"l\")) || ((ja(wa) == \"2\"))))) {\n ab.push(wa.id);\n }\n ;\n ;\n }\n ;\n ;\n }\n ;\n ;\n };\n ;\n for (bb = 0; ((bb < ((ab.length - 1)))); ++bb) {\n var cb = ab[bb], db = ab[((bb + 1))], eb = ((ua[cb] + y)), fb = ua[db];\n {\n var fin253keys = ((window.top.JSBNG_Replay.forInKeys)((ca[ra.id]))), fin253i = (0);\n var gb;\n for (; (fin253i < fin253keys.length); (fin253i++)) {\n ((gb) = (fin253keys[fin253i]));\n {\n if (((eb > fb))) {\n break;\n }\n ;\n ;\n var hb = ca[ra.id][gb];\n if (h.shown(hb)) {\n continue;\n }\n ;\n ;\n if (((((va[gb] <= va[cb])) && ((va[gb] > va[db]))))) {\n hb.style.JSBNG__top = ((eb + \"px\"));\n eb += y;\n h.show(hb);\n }\n ;\n ;\n };\n };\n };\n ;\n };\n ;\n };\n ;\n function qa(ra, sa) {\n var ta = m.byAttribute(ra, \"data-size\");\n if (ta) {\n if (h.hasClass(ra.parentNode, \"timelineReportContent\")) {\n sa(ra);\n }\n else sa(ta);\n ;\n ;\n x.balanceCapsule(m.byClass(ta, \"fbTimelineCapsule\"));\n }\n ;\n ;\n };\n ;\n return {\n removeUnit: function(ra) {\n qa(ra, function(sa) {\n j.remove(sa);\n });\n },\n hideUnit: function(ra) {\n qa(ra, function(sa) {\n h.addClass(sa, \"fbTimelineColumnHidden\");\n });\n },\n undoHideUnit: function(ra, sa) {\n j.remove(m.byClass(sa, \"hiddenText\"));\n qa(ra, function(ta) {\n h.removeClass(ta, \"fbTimelineColumnHidden\");\n });\n },\n unplacehold: function(ra) {\n var sa = r(ra);\n sa.style.JSBNG__top = null;\n h.removeClass(sa, \"visiblePlaceholder\");\n h.removeClass(sa, \"placeholder\");\n var ta = m.byClass(sa, \"fbTimelineCapsule\");\n delete ca[ta.id][ra];\n x.balanceCapsule(ta);\n },\n scrollToCapsule: function(ra) {\n if (!da.hasOwnProperty(ra.id)) {\n var sa = q.getElementPosition(ra.parentNode);\n l.JSBNG__scrollTo(new q(q.getScrollPosition().x, ((sa.y - n.SUBSECTION_SCROLL_TO_OFFSET)), \"JSBNG__document\"));\n da[ra.id] = true;\n }\n ;\n ;\n },\n balanceCapsuleFromChild: function(ra, sa) {\n x.balanceCapsule(m.byClass(ra, \"fbTimelineCapsule\"), sa);\n },\n balanceCapsuleDeferred: function(ra, sa) {\n x.balanceCapsule.curry(ra, sa).defer();\n },\n balanceCapsule: function(ra, sa) {\n if (((!ra || !ra.childNodes))) {\n return;\n }\n ;\n ;\n var ta = 0, ua, va = JSBNG__document.createDocumentFragment(), wa = [], xa = [], ya = [], za = false, ab = ((sa && sa.heights_action));\n if (((sa && sa.tail_balance))) {\n i.set(n.DS_TAILBALANCE, ra.id, sa.tail_balance);\n }\n ;\n ;\n if (((((ab !== ba)) && ((p.chrome() || p.webkit()))))) {\n h.toggleClass(ra, \"webkitFix\");\n }\n ;\n ;\n for (var bb = 0; ((bb < ra.childNodes.length)); bb++) {\n ua = ra.childNodes[bb];\n if (fa(ua)) {\n continue;\n }\n else if (ea(ua)) {\n s(ua.firstChild.childNodes).forEach(function(jb) {\n la(jb, ab);\n });\n continue;\n }\n \n ;\n ;\n la(ua, ab);\n if (((ha(ua, true) == \"r\"))) {\n xa.push(ua);\n }\n else wa.push(ua);\n ;\n ;\n ya.push(ua);\n if (((ja(ua) != \"2\"))) {\n if (((((((ta > 0)) && ((ha(ua) == \"r\")))) || ((((ta < 0)) && ((ha(ua) == \"l\"))))))) {\n za = true;\n }\n ;\n }\n ;\n ;\n ta = na(ta, ua);\n };\n ;\n var cb = [], db = [], eb = [];\n k.scry(ra, \"li.fbTimelineBalancer\").forEach(function(jb) {\n var kb = s(jb.firstChild.childNodes);\n if (jb.getAttribute(\"data-nonunits\")) {\n eb = eb.concat(kb);\n }\n else if (((ha(jb) == \"left\"))) {\n cb = cb.concat(kb);\n }\n else if (((ha(jb) == \"right\"))) {\n db = db.concat(kb);\n }\n \n \n ;\n ;\n });\n if (za) {\n ra.style.minHeight = ra.offsetHeight;\n wa.forEach(function(jb) {\n if (((ja(jb) != \"2\"))) {\n ia(jb, \"l\");\n }\n ;\n ;\n });\n xa.forEach(function(jb) {\n if (((ja(jb) != \"2\"))) {\n ia(jb, \"r\");\n }\n ;\n ;\n });\n var fb = j.create(\"li\", {\n className: \"fbTimelineBalancer\"\n }, j.create(\"ol\", null, wa));\n fb.setAttribute(\"data-side\", \"left\");\n j.prependContent(ra, fb);\n cb = wa.concat(cb);\n var gb = j.create(\"li\", {\n className: \"fbTimelineBalancer\"\n }, j.create(\"ol\", null, xa));\n gb.setAttribute(\"data-side\", \"right\");\n j.prependContent(ra, gb);\n db = xa.concat(db);\n ta = 0;\n }\n ;\n ;\n while (eb.length) {\n va.appendChild(eb.shift());\n ;\n };\n ;\n while (((((((ta >= 0)) && cb.length)) || ((((ta < 0)) && db.length))))) {\n if (((ta >= 0))) {\n ua = cb.shift();\n }\n else ua = db.shift();\n ;\n ;\n va.appendChild(ua);\n ta = na(ta, ua);\n };\n ;\n ra.appendChild(va);\n k.scry(ra, \"li.fbTimelineBalancer\").forEach(function(jb) {\n if (!jb.firstChild.childNodes.length) {\n j.remove(jb);\n }\n ;\n ;\n });\n var hb = ((((sa && sa.tail_balance)) || i.get(n.DS_TAILBALANCE, ra.id)));\n if (hb) {\n ta = x.tailBalance(ra, ta, hb);\n }\n ;\n ;\n if (za) {\n ya.forEach(function(jb) {\n if (((jb.parentNode !== ra))) {\n ra.appendChild(jb);\n ta = na(ta, jb);\n }\n ;\n ;\n });\n ra.style.minHeight = null;\n }\n ;\n ;\n var ib = m.byClass(ra, \"fbTimelineSection\");\n if (ib) {\n i.set(n.DS_COLUMN_HEIGHT_DIFFERENTIAL, ib.id, ta);\n }\n ;\n ;\n ca[ra.id] = {\n };\n k.scry(ra, \"li.placeholderUnit\").forEach(function(jb) {\n ca[ra.id][jb.id] = jb;\n });\n pa(ra);\n oa(ra);\n if (((ab === aa))) {\n sa.heights_action = ba;\n w(function() {\n w(x.balanceCapsule.curry(ra, sa));\n });\n }\n ;\n ;\n },\n tailBalance: function(ra, sa, ta) {\n if (!ra) {\n return sa;\n }\n ;\n ;\n var ua = [], va = [], wa = [], xa = [];\n k.scry(ra, \"li.fbTimelineBalancer\").forEach(function(za) {\n var ab = s(za.firstChild.childNodes);\n if (za.getAttribute(\"data-nonunits\")) {\n xa = xa.concat(ab);\n }\n else if (((ha(za) == \"left\"))) {\n va = va.concat(ab);\n }\n else if (((ha(za) == \"right\"))) {\n wa = wa.concat(ab);\n }\n \n \n ;\n ;\n ua = ua.concat(ab);\n });\n if (((((((ta == n.FIXED_SIDE_RIGHT)) && va.length)) || ((((ta == n.FIXED_SIDE_LEFT)) && wa.length))))) {\n return sa;\n }\n ;\n ;\n var ya = JSBNG__document.createDocumentFragment();\n if (ua) {\n while (ua.length) {\n if (((ta != n.FIXED_SIDE_NONE))) {\n if (((ja(ua[0]) != \"2\"))) {\n if (((sa >= 0))) {\n ia(ua[0], \"l\");\n }\n else ia(ua[0], \"r\");\n ;\n }\n ;\n }\n ;\n ;\n sa = na(sa, ua[0]);\n ya.appendChild(ua.shift());\n };\n }\n ;\n ;\n ra.appendChild(ya);\n k.scry(ra, \"li.fbTimelineBalancer\").forEach(function(za) {\n if (!za.firstChild.childNodes.length) {\n j.remove(za);\n }\n ;\n ;\n });\n return sa;\n },\n loadTwoColumnUnits: function(ra) {\n var sa = r(ra);\n v(function() {\n var ta = m.byClass(sa, \"fbTimelineSection\");\n if (ta) {\n var ua = k.JSBNG__find(sa, \".-cx-PUBLIC-timelineOneColMin__leftcapsule\"), va = k.JSBNG__find(sa, \".-cx-PUBLIC-timelineOneColMin__rightcapsule\"), wa = ((va.offsetHeight - ua.offsetHeight));\n i.set(n.DS_COLUMN_HEIGHT_DIFFERENTIAL, ta.id, wa);\n }\n ;\n ;\n }, oa.curry(sa));\n }\n };\n })();\n e.exports = ((a.TimelineCapsule || x));\n});\n__d(\"TimelineCapsuleUtilities\", [\"JSBNG__CSS\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = {\n setFirstUnit: function(i) {\n var j = true;\n for (var k = 0; ((k < i.childNodes.length)); ++k) {\n var l = i.childNodes[k];\n if (((l.id.indexOf(\"tl_unit_\") === 0))) {\n if (j) {\n j = false;\n g.addClass(l, \"firstUnit\");\n }\n else {\n g.removeClass(l, \"firstUnit\");\n break;\n }\n ;\n }\n ;\n ;\n };\n ;\n }\n };\n e.exports = h;\n});\n__d(\"TimelineUnitSelector\", [\"DOMQuery\",\"Parent\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMQuery\"), h = b(\"Parent\"), i = {\n getUnitsWithTime: function(j) {\n return g.scry(j, \"div.timelineUnitContainer\").filter(function(k) {\n return ((((h.byClass(k, \"fbTimelineCapsule\") === j)) && k.getAttribute(\"data-time\")));\n });\n }\n };\n e.exports = i;\n});\n__d(\"TimelineComposerUtilities\", [\"JSBNG__Event\",\"Arbiter\",\"Bootloader\",\"JSBNG__CSS\",\"DOM\",\"DOMQuery\",\"Parent\",\"TimelineUnitSelector\",\"Vector\",\"cx\",\"csx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Arbiter\"), i = b(\"Bootloader\"), j = b(\"JSBNG__CSS\"), k = b(\"DOM\"), l = b(\"DOMQuery\"), m = b(\"Parent\"), n = b(\"TimelineUnitSelector\"), o = b(\"Vector\"), p = b(\"cx\"), q = b(\"csx\"), r = ((86400 * 31)), s = 86400000, t = {\n listenToSetEstimatedDate: function(u, v) {\n return h.subscribe(\"ComposerXTimelineTagger/init\", function(w, x) {\n if (l.contains(u, x.datePickerElement)) {\n t.setEstimatedDate(x.datePickerInstance, v());\n x.composerTimelineTagger.switchToTagger(\"date\");\n }\n ;\n ;\n });\n },\n listenToSetEstimatedDateOld: function(u, v) {\n return h.subscribe(\"TimelineBackdatedComposerTagger/initialized\", function(JSBNG__event, w) {\n if (((w.composer === u))) {\n w.date_picker.subscribe(\"initialized\", function(x, y) {\n t.setEstimatedDate(y, v());\n });\n }\n ;\n ;\n });\n },\n listenToPublish: function(u, v) {\n if (u.root) {\n u = u.root;\n }\n ;\n ;\n return h.subscribe(\"composer/publish\", function(JSBNG__event, w) {\n if (((w.composer_id === u.id))) {\n i.loadModules([\"TimelineStoryPublisher\",], function(x) {\n x.publish(w);\n ((v && v()));\n });\n }\n ;\n ;\n });\n },\n listenToAnotherComposerOpen: function(u, v) {\n return h.subscribe(\"composer/mutate\", function(w, x) {\n if (((x !== u))) {\n v();\n }\n ;\n ;\n });\n },\n listenToCancel: function(u, v) {\n return g.listen(u, \"click\", function(JSBNG__event) {\n if (m.byClass(JSBNG__event.getTarget(), \"-cx-PRIVATE-fbTimelineComposer__cancelbutton\")) {\n v();\n }\n ;\n ;\n });\n },\n listenToCancelOld: function(u, v) {\n return g.listen(u, \"click\", function(JSBNG__event) {\n ((m.byClass(JSBNG__event.getTarget(), \"cancelBtn\") && v()));\n });\n },\n hidePlaceIfAttachmentsTooTall: function(u) {\n var v = l.JSBNG__find(u, \".-cx-PRIVATE-fbComposer__attachmentform\"), w = o.getElementDimensions(v).y;\n if (((w > 50))) {\n j.hide(l.JSBNG__find(v, \".-cx-PRIVATE-fbComposerAttachment__place\"));\n }\n ;\n ;\n },\n hidePlaceIfAttachmentsTooTallOld: function(u) {\n var v = k.JSBNG__find(u, \"ul.fbTimelineComposerAttachments\"), w = o.getElementDimensions(v).y;\n if (((w > 50))) {\n var x = m.byTag(k.scry(v, \"span.placeAttachment\")[0], \"li\");\n ((x && j.hide(x)));\n }\n ;\n ;\n },\n setEstimatedDate: function(u, v) {\n var w, x;\n if (((v && j.hasClass(v, \"fbTimelineCapsule\")))) {\n w = v.getAttribute(\"data-start\");\n x = v.getAttribute(\"data-end\");\n if (((w && x))) {\n var y = new JSBNG__Date(((x * 1000))), z = new JSBNG__Date();\n if (((y > z))) {\n u.setDate(z.getFullYear(), ((z.getMonth() + 1)), z.getDate());\n }\n else if (((((x - w)) > ((2 * r))))) {\n u.setDate(y.getFullYear());\n }\n else u.setDate(y.getFullYear(), ((y.getMonth() + 1)));\n \n ;\n ;\n }\n ;\n ;\n return;\n }\n ;\n ;\n var aa = m.byClass(v, \"fbTimelineCapsule\");\n if (aa) {\n w = aa.getAttribute(\"data-start\");\n x = aa.getAttribute(\"data-end\");\n var ba = o.getElementPosition(v).y, ca = [x,null,], da = [w,null,], ea = n.getUnitsWithTime(aa);\n for (var fa = 0; ((fa < ea.length)); fa++) {\n var ga = ea[fa], ha = k.scry(ga.parentNode, \".spinePointer\")[0];\n if (!ha) {\n continue;\n }\n ;\n ;\n var ia = o.getElementPosition(ha).y;\n if (((ia <= ba))) {\n if (((!ca[1] || ((ia > ca[1]))))) {\n ca = [ga.getAttribute(\"data-time\"),ia,];\n }\n ;\n ;\n }\n else if (((!da[1] || ((ia < da[1]))))) {\n da = [ga.getAttribute(\"data-time\"),ia,];\n }\n \n ;\n ;\n };\n ;\n if (((((ca[0] !== null)) && ((da[0] !== null))))) {\n var ja = ((Math.round(((((parseInt(ca[0], 10) + parseInt(da[0], 10))) / 2))) * 1000));\n ja = Math.min(((new JSBNG__Date() - s)), ja);\n u.setDateWithTimestamp(ja);\n }\n ;\n ;\n }\n ;\n ;\n },\n showMLEFlyout: function(u) {\n var v = ((k.scry(JSBNG__document, \"a.fbTimelineSpine\").length === 0)), w = function(x) {\n x.showMLEFlyout(u);\n };\n if (v) {\n i.loadModules([\"TimelineSpinelessComposer\",], w);\n }\n else i.loadModules([\"TimelineComposer\",], w);\n ;\n ;\n }\n };\n e.exports = t;\n});\n__d(\"TimelineComposer\", [\"Arbiter\",\"Bootloader\",\"JSBNG__CSS\",\"DOM\",\"Parent\",\"Run\",\"TimelineCapsule\",\"TimelineCapsuleUtilities\",\"TimelineComposerUtilities\",\"$\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Bootloader\"), i = b(\"JSBNG__CSS\"), j = b(\"DOM\"), k = b(\"Parent\"), l = b(\"Run\"), m = b(\"TimelineCapsule\"), n = b(\"TimelineCapsuleUtilities\"), o = b(\"TimelineComposerUtilities\"), p = b(\"$\"), q = b(\"cx\"), r;\n function s(x) {\n if (((x.isScheduledPost || x.isOGPost))) {\n return;\n }\n ;\n ;\n if (!x.streamStory) {\n window.JSBNG__location.reload();\n return;\n }\n ;\n ;\n if (x.backdatedTime) {\n h.loadModules([\"TimelineStoryPublisher\",], function(z) {\n z.publish(x);\n });\n return;\n }\n ;\n ;\n var y = w.renderCapsuleBasedStory(r, x.streamStory);\n g.inform(\"TimelineComposer/on_after_publish\", y, g.BEHAVIOR_PERSISTENT);\n };\n;\n function t() {\n var x = k.byClass(r, \"fbTimelineTwoColumn\");\n return j.JSBNG__find(x, \".spinePointer\");\n };\n;\n function u(x) {\n var y = v();\n i.show(y);\n var z = x.subscribe(\"hide\", function() {\n i.hide(y);\n x.unsubscribe(z);\n });\n };\n;\n function v() {\n var x = k.byClass(r, \"fbTimelineTwoColumn\"), y = j.scry(x, \"div.composerVeil\");\n if (((y.length !== 1))) {\n y = j.appendContent(x, j.create(\"div\", {\n className: \"composerVeil hidden_elem\"\n }));\n }\n ;\n ;\n return y[0];\n };\n;\n var w = {\n init: function(x) {\n r = p(x);\n var y = g.subscribe(\"composer/publish\", function(JSBNG__event, z) {\n if (((z.composer_id === r.id))) {\n s(z);\n }\n ;\n ;\n });\n l.onLeave(y.unsubscribe.bind(y));\n if (i.hasClass(r, \"-cx-PRIVATE-fbTimelineComposer__root\")) {\n o.hidePlaceIfAttachmentsTooTall(r);\n }\n else o.hidePlaceIfAttachmentsTooTallOld(r);\n ;\n ;\n },\n showMLEFlyout: function(x) {\n x.setContext(t()).show();\n u(x);\n },\n renderCapsuleBasedStory: function(x, y) {\n var z = k.byClass(x, \"fbTimelineCapsule\");\n if (!z) {\n return;\n }\n ;\n ;\n var aa = k.byClass(x, \"timelineUnitContainer\").parentNode;\n if (aa.nextSibling.getAttribute(\"data-spine\")) {\n aa = aa.nextSibling;\n }\n ;\n ;\n var ba = j.insertAfter(aa, y)[0];\n h.loadModules([\"Animation\",], function(ca) {\n new ca(ba.firstChild).from(\"backgroundColor\", \"#fff8dd\").to(\"backgroundColor\", \"#fff\").duration(2000).ease(ca.ease.both).go();\n });\n n.setFirstUnit(z);\n m.balanceCapsule(z);\n return ba;\n }\n };\n e.exports = ((a.TimelineComposer || w));\n});\n__d(\"TimelineContentLoader\", [\"JSBNG__Event\",\"function-extensions\",\"Arbiter\",\"JSBNG__CSS\",\"DOM\",\"DOMScroll\",\"OnVisible\",\"ScrollingPager\",\"TimelineConstants\",\"TimelineController\",\"TimelineLegacySections\",\"TimelineSmartInsert\",\"TimelineURI\",\"UIPagelet\",\"UserAgent\",\"Vector\",\"$\",\"arrayContains\",\"copyProperties\",\"createArrayFrom\",\"csx\",\"debounce\",\"ge\",\"startsWith\",\"tx\",\"userAction\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\");\n b(\"function-extensions\");\n var h = b(\"Arbiter\"), i = b(\"JSBNG__CSS\"), j = b(\"DOM\"), k = b(\"DOMScroll\"), l = b(\"OnVisible\"), m = b(\"ScrollingPager\"), n = b(\"TimelineConstants\"), o = b(\"TimelineController\"), p = b(\"TimelineLegacySections\"), q = b(\"TimelineSmartInsert\"), r = b(\"TimelineURI\"), s = b(\"UIPagelet\"), t = b(\"UserAgent\"), u = b(\"Vector\"), v = b(\"$\"), w = b(\"arrayContains\"), x = b(\"copyProperties\"), y = b(\"createArrayFrom\"), z = b(\"csx\"), aa = b(\"debounce\"), ba = b(\"ge\"), ca = b(\"startsWith\"), da = b(\"tx\"), ea = b(\"userAction\"), fa = false, ga = false, ha, ia = null, ja = {\n }, ka = [], la = [], ma = [], na = {\n }, oa = {\n }, pa = {\n }, qa = {\n }, ra = null, sa = null, ta = false, ua = null;\n function va(eb, fb, gb, hb, ib) {\n this.node = eb;\n this.loaded = hb;\n this.canScrollLoad = true;\n this.canUnload = ((fb != db.RECENT));\n this.scrubberKey = fb;\n this.historicUnitCount = ib;\n this._pageletLoadData = gb;\n this._expandPageletLoadData = {\n };\n this.rightColumnFinished = false;\n };\n;\n x(va.prototype, {\n load: function(eb, fb) {\n if (this.loaded) {\n return;\n }\n ;\n ;\n var gb = this._pageletLoadData;\n h.inform(n.SECTION_LOADING, {\n data: gb,\n scrubberKey: this.scrubberKey\n });\n this.loaded = true;\n i.removeClass(this.node, \"fbTimelineTimePeriodUnexpanded\");\n i.removeClass(this.node, \"fbTimelineTimePeriodSuppressed\");\n var hb = \"ProfileTimelineSectionPagelet\", ib = ((this.scrubberKey == db.WAY_BACK));\n if (ib) {\n hb = \"ProfileTimelineRemainingYearsPagelet\";\n }\n ;\n ;\n gb.time_cutoff = db.getTimeCutoff();\n gb.highlight_unit_data = eb;\n gb.parent_key = this.parentKey;\n gb.force_no_friend_activity = ta;\n i.addClass(this.node, \"fbTimelineSectionLoading\");\n if (gb.combine_sections) {\n i.addClass(this.node, \"combinedSections\");\n }\n ;\n ;\n if (((this.canUnload && ga))) {\n var jb = this.node.firstChild.cloneNode(true);\n i.hide(jb);\n j.insertAfter(this.node, jb);\n }\n else this.canScrollLoad = false;\n ;\n ;\n var kb = null;\n if (((fb && !mb))) {\n var lb = this.node;\n lb.style.minHeight = ((window.JSBNG__innerHeight + \"px\"));\n kb = function() {\n lb.style.minHeight = null;\n };\n }\n ;\n ;\n var mb = ((gb.combine_sections && ib));\n pa[this.scrubberKey] = s.loadFromEndpoint(hb, ((mb ? ((gb.unit_container_id + \"_left\")) : this.node.id)), gb, {\n usePipe: true,\n jsNonblock: true,\n constHeight: true,\n append: mb,\n finallyHandler: kb\n });\n cb(this.scrubberKey);\n },\n preload: function() {\n i.addClass(this.node, \"fbTimelineTimePeriodSuppressed\");\n i.removeClass(this.node, \"fbTimelineTimePeriodUnexpanded\");\n var eb = j.JSBNG__find(this.node, \"span.sectionLabel\");\n if (eb.getAttribute(\"data-original-label\")) {\n j.setContent(eb, eb.getAttribute(\"data-original-label\"));\n eb.removeAttribute(\"data-original-label\");\n }\n ;\n ;\n },\n unload: function() {\n if (((!this.loaded || !this.canUnload))) {\n return;\n }\n ;\n ;\n this.loaded = false;\n ((pa[this.scrubberKey] && pa[this.scrubberKey].cancel()));\n i.addClass(this.node, \"fbTimelineTimePeriodUnexpanded\");\n i.removeClass(this.node, \"fbTimelineTimePeriodSuppressed\");\n if (((this.node.nextSibling && i.hasClass(this.node.nextSibling, \"fbTimelineSection\")))) {\n j.setContent(this.node, this.node.nextSibling);\n i.show(this.node.firstChild);\n }\n else j.empty(this.node);\n ;\n ;\n this.deactivateScrollLoad();\n },\n activateScrollLoad: function() {\n this.canScrollLoad = true;\n i.removeClass(this.node, \"fbTimelineTimePeriodSuppressed\");\n i.addClass(this.node, \"fbTimelineTimePeriodUnexpanded\");\n ((oa[this.scrubberKey] && oa[this.scrubberKey].reset()));\n },\n deactivateScrollLoad: function() {\n if (!this.loaded) {\n this.canScrollLoad = false;\n i.removeClass(this.node, \"fbTimelineTimePeriodUnexpanded\");\n i.addClass(this.node, \"fbTimelineTimePeriodSuppressed\");\n ((oa[this.scrubberKey] && oa[this.scrubberKey].remove()));\n }\n ;\n ;\n },\n setExpandLoadData: function(eb) {\n this._expandPageletLoadData = eb;\n return this;\n },\n appendData: function(eb) {\n x(this._pageleLoadData, eb);\n return this;\n },\n expandSubSections: function() {\n if (this.subSections.length) {\n db.navigateToSection(this.subSections[0].scrubberKey);\n }\n ;\n ;\n },\n expand: function(eb) {\n if (!this.loaded) {\n return;\n }\n ;\n ;\n sa.add_event(((\"expand_\" + this.scrubberKey)));\n var fb = j.JSBNG__find(this.node, \".fbTimelineSectionExpander\");\n i.addClass(fb.firstChild, \"async_saving\");\n ((eb && i.addClass(eb, \"async_saving\")));\n this._expandPageletLoadData.time_cutoff = db.getTimeCutoff();\n db.navigateToSection(this.scrubberKey);\n j.scry(this.node, \".fbTimelineCapsule\").forEach(j.remove);\n this._expandPageletLoadData.new_expand = true;\n ((pa[this.scrubberKey] && pa[this.scrubberKey].cancel()));\n pa[this.scrubberKey] = s.loadFromEndpoint(\"ProfileTimelineSectionPagelet\", fb.id, this._expandPageletLoadData, {\n usePipe: true,\n jsNonblock: true,\n constHeight: true\n });\n },\n isPermalinkPeriod: function() {\n return this._pageletLoadData.is_permalink_period;\n }\n });\n function wa() {\n if (fa) {\n return;\n }\n ;\n ;\n o.register(o.CONTENT, db);\n sa = ea(\"timeline\").uai(\"init\", \"scrubber\", false);\n fa = true;\n if (((t.ie() <= 7))) {\n ga = true;\n }\n ;\n ;\n };\n;\n var xa = aa(function(eb, fb, gb) {\n var hb = p.get(eb).historicUnitCount;\n fb -= hb;\n gb -= 1;\n if (((((((hb == -1)) || ((gb <= 0)))) || ((fb < 0))))) {\n return;\n }\n ;\n ;\n var ib = db.getNextSectionKey(eb);\n if (ib) {\n p.get(ib).load();\n xa(ib, fb, gb);\n }\n ;\n ;\n }, 500);\n function ya(eb, fb, gb, hb) {\n var ib = db.getNextSectionKey(fb);\n if (ib) {\n oa[ib] = new l(eb, za.curry(ib, eb), false, ((gb || 1000)));\n }\n else if (((fb !== db.WAY_BACK))) {\n hb = ((hb ? hb : 0));\n if (((hb > 80))) {\n return null;\n }\n ;\n ;\n ya.curry(eb, fb, gb, ((hb + 1))).defer(250);\n }\n \n ;\n ;\n };\n;\n function za(eb, fb) {\n var gb = p.get(eb);\n if (((gb && gb.canScrollLoad))) {\n sa.add_event(((\"scroll_load_\" + eb)));\n if (ga) {\n gb.preload();\n }\n else {\n gb.load();\n if (ua) {\n xa(eb, ua.required_units, ua.max_parallelism);\n }\n ;\n ;\n }\n ;\n ;\n ((fb && j.remove(fb)));\n }\n ;\n ;\n };\n;\n function ab() {\n var eb, fb, gb = false;\n for (var hb = 0; ((hb < ka.length)); hb++) {\n var ib = ka[hb];\n if (!ib) {\n continue;\n }\n ;\n ;\n var jb = p.get(ib);\n if (((jb && ((jb.canScrollLoad || jb.loaded))))) {\n if (!jb.loaded) {\n i.removeClass(jb.node, \"fbTimelineTimePeriodSuppressed\");\n i.addClass(jb.node, \"fbTimelineTimePeriodUnexpanded\");\n }\n ;\n ;\n if (((eb && fb))) {\n bb(eb, fb);\n if (gb) {\n eb.deactivateScrollLoad();\n }\n ;\n ;\n gb = true;\n }\n ;\n ;\n eb = null;\n fb = null;\n continue;\n }\n else if (eb) {\n fb = jb;\n jb.deactivateScrollLoad();\n }\n else {\n eb = jb;\n if (gb) {\n jb.activateScrollLoad();\n }\n ;\n ;\n }\n \n ;\n ;\n i.removeClass(jb.node, \"fbTimelineTimePeriodSuppressed\");\n i.addClass(jb.node, \"fbTimelineTimePeriodUnexpanded\");\n };\n ;\n };\n;\n function bb(eb, fb) {\n i.removeClass(fb.node, \"fbTimelineTimePeriodUnexpanded\");\n i.addClass(fb.node, \"fbTimelineTimePeriodSuppressed\");\n var gb = j.JSBNG__find(eb.node, \"span.sectionLabel\"), hb = j.JSBNG__find(fb.node, \"span.sectionLabel\");\n if (!hb.getAttribute(\"data-original-label\")) {\n hb.setAttribute(\"data-original-label\", j.getText(hb));\n }\n ;\n ;\n if (((((gb.getAttribute(\"data-month\") && hb.getAttribute(\"data-month\"))) && ((gb.getAttribute(\"data-year\") == hb.getAttribute(\"data-year\")))))) {\n j.setContent(hb, da._(\"Show {month1} - {month2} {year}\", {\n month1: hb.getAttribute(\"data-month\"),\n month2: gb.getAttribute(\"data-month\"),\n year: gb.getAttribute(\"data-year\")\n }));\n }\n else if (((gb.getAttribute(\"data-year\") !== hb.getAttribute(\"data-year\")))) {\n j.setContent(hb, da._(\"Show {year1} - {year2}\", {\n year1: hb.getAttribute(\"data-year\"),\n year2: gb.getAttribute(\"data-year\")\n }));\n }\n else j.setContent(hb, da._(\"Show {year}\", {\n year: hb.getAttribute(\"data-year\")\n }));\n \n ;\n ;\n };\n;\n function cb(eb) {\n if (ga) {\n for (var fb = 0; ((fb < ((ka.length - 1)))); fb++) {\n var gb = ka[fb];\n if (!gb) {\n continue;\n }\n ;\n ;\n if (((gb != eb))) {\n var hb = p.get(gb);\n if (((hb.loaded && hb.canUnload))) {\n hb.unload();\n }\n ;\n ;\n }\n ;\n ;\n };\n }\n ;\n ;\n ab();\n };\n;\n var db = {\n WAY_BACK: \"way_back\",\n RECENT: \"recent\",\n HEADER_SCROLL_CUTOFF: 80,\n CURRENT_SECTION_OFFSET: 150,\n FOOTER_HEIGHT: 60,\n registerTimePeriod: function(eb, fb, gb, hb, ib, jb, kb) {\n wa();\n if (w(ma, fb)) {\n return;\n }\n ;\n ;\n if (la) {\n x(gb, la);\n }\n ;\n ;\n var lb = new va(eb, fb, gb, hb, kb);\n if (!ib) {\n ka[jb] = fb;\n ja[fb] = true;\n }\n else {\n lb.parentKey = ib;\n p.get(ib).subSections = ((p.get(ib).subSections || []));\n p.get(ib).subSections[jb] = lb;\n }\n ;\n ;\n p.set(fb, lb);\n db.checkCurrentSectionChange();\n h.inform(n.SECTION_REGISTERED, {\n scrubberKey: fb\n });\n },\n reset: function() {\n {\n var fin254keys = ((window.top.JSBNG_Replay.forInKeys)((oa))), fin254i = (0);\n var eb;\n for (; (fin254i < fin254keys.length); (fin254i++)) {\n ((eb) = (fin254keys[fin254i]));\n {\n oa[eb].remove();\n ;\n };\n };\n };\n ;\n {\n var fin255keys = ((window.top.JSBNG_Replay.forInKeys)((pa))), fin255i = (0);\n var fb;\n for (; (fin255i < fin255keys.length); (fin255i++)) {\n ((fb) = (fin255keys[fin255i]));\n {\n ((pa[fb] && pa[fb].cancel()));\n ;\n };\n };\n };\n ;\n {\n var fin256keys = ((window.top.JSBNG_Replay.forInKeys)((qa))), fin256i = (0);\n var gb;\n for (; (fin256i < fin256keys.length); (fin256i++)) {\n ((gb) = (fin256keys[fin256i]));\n {\n qa[gb].unsubscribe();\n delete qa[gb];\n };\n };\n };\n ;\n ((ha && ha.unsubscribe()));\n ha = null;\n p.removeAll();\n ia = null;\n ja = {\n };\n ka = [];\n la = [];\n ma = [];\n na = {\n };\n oa = {\n };\n pa = {\n };\n ra = null;\n sa = null;\n ta = false;\n fa = false;\n },\n checkCurrentSectionChange: function() {\n var eb = db.getCurrentSection(), fb = ((ia && ia.scrubberKey));\n if (((((eb && ((eb.scrubberKey !== fb)))) && !eb.isPermalinkPeriod()))) {\n ia = eb;\n var gb = eb.scrubberKey, hb = eb.parentKey;\n if (!hb) {\n hb = gb;\n gb = null;\n }\n ;\n ;\n o.sectionHasChanged(hb, gb);\n }\n ;\n ;\n },\n setTimeCutoff: function(eb) {\n ra = eb;\n },\n getTimeCutoff: function() {\n return ra;\n },\n setParallelLoadConfig: function(eb) {\n ua = eb;\n },\n getCurrentSection: function() {\n var eb = {\n }, fb = p.getAll();\n {\n var fin257keys = ((window.top.JSBNG_Replay.forInKeys)((fb))), fin257i = (0);\n var gb;\n for (; (fin257i < fin257keys.length); (fin257i++)) {\n ((gb) = (fin257keys[fin257i]));\n {\n var hb = fb[gb];\n if (((!hb.loaded || na[hb.scrubberKey]))) {\n continue;\n }\n ;\n ;\n var ib = u.getElementPosition(hb.node, \"viewport\").y;\n if (((hb.scrubberKey == \"recent\"))) {\n ib--;\n }\n ;\n ;\n if (((ib < db.CURRENT_SECTION_OFFSET))) {\n eb[ib] = hb;\n }\n ;\n ;\n };\n };\n };\n ;\n var jb = Math.max.apply(null, Object.keys(eb)), kb = ((jb == -Infinity));\n if (!kb) {\n return eb[jb];\n }\n else if (ka[0]) {\n return p.get(ka[0]);\n }\n \n ;\n ;\n return null;\n },\n capsuleForCurrentSection: function() {\n var eb = db.getCurrentSection();\n return ((eb && j.scry(eb.node, \".fbTimelineCapsule\")[0]));\n },\n enableScrollLoad: function(eb, fb, gb, hb) {\n eb = v(eb);\n var ib = j.scry(eb.parentNode, \".fbTimelineCapsule\")[0];\n if (!ib) {\n return;\n }\n ;\n ;\n if (((gb === null))) {\n ya(eb, fb, hb);\n }\n else o.runOnceWhenSectionFullyLoaded(ya.curry(eb, fb, hb), fb, gb);\n ;\n ;\n },\n enableScrollLoadOnClick: function(eb, fb, gb) {\n eb = v(eb);\n g.listen(eb, \"click\", function(hb) {\n hb.prevent();\n db.enableScrollLoad(eb, fb, null, gb);\n });\n },\n expandSectionOnClick: function(eb, fb) {\n g.listen(eb, \"click\", function(gb) {\n gb.prevent();\n p.get(fb).expand();\n });\n },\n expandSubSectionsOnClick: function(eb, fb) {\n g.listen(eb, \"click\", function(gb) {\n gb.prevent();\n p.get(fb).expandSubSections();\n });\n },\n getNextSectionKey: function(eb) {\n for (var fb = 0; ((fb < ((ka.length - 1)))); fb++) {\n if (((ka[fb] == eb))) {\n while (((((fb < ((ka.length - 1)))) && !ka[((fb + 1))]))) {\n fb++;\n ;\n };\n ;\n return ka[((fb + 1))];\n }\n ;\n ;\n };\n ;\n var gb = p.get(eb);\n if (((!gb || !gb.parentKey))) {\n return;\n }\n ;\n ;\n var hb = p.get(gb.parentKey);\n if (!hb) {\n return;\n }\n ;\n ;\n for (var ib = 0; ((ib < ((hb.subSections.length - 1)))); ib++) {\n if (((hb.subSections[ib].scrubberKey == eb))) {\n return hb.subSections[((ib + 1))].scrubberKey;\n }\n ;\n ;\n };\n ;\n },\n hideSection: function(eb) {\n var fb = p.get(eb);\n ((fb && i.hide(j.JSBNG__find(fb.node, \".fbTimelineSection\"))));\n var gb = o.getCurrentScrubber();\n if (gb) {\n var hb = o.getCurrentScrubber().getNav(eb);\n ((hb && i.hide(hb)));\n }\n ;\n ;\n var ib = o.getCurrentStickyHeaderNav();\n ((ib && ib.removeTimePeriod(eb)));\n na[eb] = true;\n },\n loadSectionOnClick: function(eb, fb) {\n g.listen(eb, \"click\", function(gb) {\n gb.prevent();\n p.get(fb).load();\n });\n },\n removeSection: function(eb) {\n {\n var fin258keys = ((window.top.JSBNG_Replay.forInKeys)((ka))), fin258i = (0);\n var fb;\n for (; (fin258i < fin258keys.length); (fin258i++)) {\n ((fb) = (fin258keys[fin258i]));\n {\n if (((ka[fb] == eb))) {\n ka[fb] = null;\n break;\n }\n ;\n ;\n };\n };\n };\n ;\n p.remove(eb);\n delete ja[eb];\n if (((eb in oa))) {\n oa[eb].remove();\n delete oa[eb];\n }\n ;\n ;\n var gb = o.getCurrentStickyHeaderNav();\n ((gb && gb.removeTimePeriod(eb)));\n ma.push(eb);\n },\n removeSectionParent: function(eb) {\n j.remove(v(eb).parentNode);\n },\n navigateToSection: function(eb, fb, gb) {\n sa.add_event(((\"nav_\" + eb)));\n fb = !!fb;\n var hb = eb, ib = p.get(eb);\n if (!ib) {\n return;\n }\n ;\n ;\n if (!ib.loaded) {\n q.enable();\n j.scry(v(\"timeline_tab_content\"), \".fbTimelineShowOlderSections\").forEach(j.remove);\n }\n ;\n ;\n if (!ja[eb]) {\n ib.node.style.minHeight = ((u.getViewportDimensions().y + \"px\"));\n var jb = h.subscribe(n.SECTION_FULLY_LOADED, function(rb, sb) {\n if (((sb.scrubberKey === eb))) {\n ib.node.style.minHeight = \"\";\n jb.unsubscribe();\n }\n ;\n ;\n });\n hb = ib.parentKey;\n var kb = p.get(hb).node;\n if (!i.hasClass(kb, \"fbTimelineSectionExpanded\")) {\n k.JSBNG__scrollTo(kb, 0);\n i.addClass(kb, \"fbTimelineSectionExpanded\");\n j.scry(kb, \".fbTimelineCapsule\").forEach(j.remove);\n j.scry(kb, \"div.fbTimelineSectionExpandPager\").forEach(j.remove);\n j.scry(kb, \"div.fbTimelineContentHeader\").forEach(j.remove);\n j.scry(kb, \".-cx-PRIVATE-fbTimelineOneColumnHeader__header\").forEach(function(rb) {\n if (!rb.getAttribute(\"data-subsection\")) {\n j.remove(rb);\n }\n ;\n ;\n });\n }\n ;\n ;\n var lb = db.getNextSectionKey(hb);\n if (((lb && oa[lb]))) {\n oa[lb].setBuffer(0);\n }\n ;\n ;\n }\n ;\n ;\n for (var mb = 0; ((mb < ka.length)); mb++) {\n var nb = ka[mb];\n if (!nb) {\n continue;\n }\n ;\n ;\n if (((nb == hb))) {\n break;\n }\n ;\n ;\n p.get(nb).deactivateScrollLoad();\n j.scry(v(\"timeline_tab_content\"), \".fbTimelineSectionExpandPager\").forEach(function(rb) {\n var sb = m.getInstance(rb.id);\n ((sb && sb.removeOnVisible()));\n });\n };\n ;\n db.adjustContentPadding();\n ib.load(gb, true);\n ab();\n var ob = u.getScrollPosition().x, pb = u.getElementPosition(ib.node).y;\n if (!fb) {\n var qb = ((ja[eb] ? n.SCROLL_TO_OFFSET : n.SUBSECTION_SCROLL_TO_OFFSET));\n k.JSBNG__scrollTo(new u(ob, ((pb - qb)), \"JSBNG__document\"), true, false, false, function() {\n var rb = u.getElementPosition(ib.node).y;\n k.JSBNG__scrollTo(new u(ob, ((rb - qb)), \"JSBNG__document\"), false);\n var sb = j.scry(ib.node, \"h3.uiHeaderTitle\")[0];\n if (sb) {\n sb.tabIndex = 0;\n sb.JSBNG__focus();\n }\n ;\n ;\n });\n }\n ;\n ;\n },\n adjustContentPadding: function() {\n var eb = ba(\"timeline_tab_content\");\n if (!eb) {\n return;\n }\n ;\n ;\n if (o.isOneColumnMinimal()) {\n return;\n }\n ;\n ;\n var fb = ((o.getCurrentKey() || r.TIMELINE_KEY));\n if (((fb !== r.TIMELINE_KEY))) {\n return;\n }\n ;\n ;\n var gb = ((ka.length - 1)), hb = p.get(ka[gb]);\n eb.style.paddingBottom = ((((hb && hb.loaded)) ? null : ((((((((u.getViewportDimensions().y - db.CURRENT_SECTION_OFFSET)) - db.HEADER_SCROLL_CUTOFF)) - db.FOOTER_HEIGHT)) + \"px\"))));\n },\n adjustContentPaddingAfterLoad: function(eb, fb) {\n o.runOnceWhenSectionFullyLoaded(db.adjustContentPadding, eb, fb);\n },\n appendContentAfterLoad: function(eb, fb, gb) {\n o.runOnceWhenSectionFullyLoaded(j.appendContent.curry(v(eb), fb), gb, \"0\");\n },\n markSectionAsLoaded: function(eb, fb, gb) {\n o.runOnceWhenSectionFullyLoaded(function() {\n ((ba(eb) && i.removeClass(v(eb).parentNode, \"fbTimelineSectionLoading\")));\n }, fb, gb);\n },\n suppressSectionsAbove: function(eb) {\n var fb, gb;\n for (var hb = 0; ((hb < ka.length)); hb++) {\n var ib = ka[hb];\n if (!ib) {\n continue;\n }\n ;\n ;\n fb = p.get(ib).node;\n gb = null;\n if (((y(eb.parentNode.children).indexOf(eb) <= y(fb.parentNode.children).indexOf(fb)))) {\n gb = ib;\n break;\n }\n ;\n ;\n p.get(ib).deactivateScrollLoad();\n };\n ;\n if (gb) {\n db.navigateToSection(gb, true);\n }\n ;\n ;\n },\n forceNoFriendActivity: function() {\n ta = true;\n },\n removeDupes: function(eb) {\n var fb = ba(eb);\n if (!fb) {\n return;\n }\n ;\n ;\n var gb = j.scry(fb, \"li.fbTimelineUnit\"), hb = {\n };\n for (var ib = 0; ((ib < gb.length)); ib++) {\n var jb = gb[ib];\n if (((jb.id && ca(jb.id, \"tl_unit_\")))) {\n var kb = jb.id.substring(8, jb.id.length), lb = ((((jb.getAttribute(\"data-unit\") == \"ExperienceSummaryUnit\")) ? jb.getAttribute(\"data-time\") : 1));\n if (((hb.hasOwnProperty(kb) && ((hb[kb] == lb))))) {\n jb.id = ((\"dupe_unit_\" + Math.JSBNG__random()));\n jb.className = \"hidden_elem\";\n }\n else hb[kb] = lb;\n ;\n ;\n }\n ;\n ;\n };\n ;\n },\n removeLoadingState: function(eb) {\n ((ba(eb) && i.removeClass(v(eb), \"fbTimelineSectionLoading\")));\n },\n setExpandLoadDataForSection: function(eb, fb) {\n var gb = p.get(eb);\n ((gb && gb.setExpandLoadData(fb)));\n },\n appendSectionDataForAllSections: function(eb) {\n la = eb;\n for (var fb = 0; ((fb < ((ka.length - 1)))); fb++) {\n var gb = ka[fb];\n if (!gb) {\n continue;\n }\n ;\n ;\n var hb = p.get(gb);\n ((hb && hb.appendData(eb)));\n };\n ;\n },\n updatePagerAfterLoad: function(eb, fb, gb, hb, ib) {\n var jb = m.getInstance(eb.firstChild.id);\n if (!jb) {\n qa[eb.firstChild.id] = h.subscribe(m.REGISTERED, function(kb, lb) {\n qa[eb.firstChild.id].unsubscribe();\n delete qa[eb.firstChild.id];\n if (((lb.id === eb.firstChild.id))) {\n db.updatePagerAfterLoad(eb, fb, gb, hb, ib);\n }\n ;\n ;\n });\n return;\n }\n ;\n ;\n o.runOnceWhenSectionFullyLoaded(function() {\n i.removeClass(eb, \"fbTimelineHiddenPager\");\n jb.checkBuffer();\n }, gb, hb);\n if (ib) {\n o.runOnceWhenSectionFullyLoaded(o.adjustScrollingPagerBuffer.curry(eb.firstChild.id, fb), gb, hb);\n }\n ;\n ;\n },\n showAfterLoad: function(eb, fb, gb) {\n o.runOnceWhenSectionFullyLoaded(function() {\n var hb = ba(eb);\n ((hb && i.show(hb)));\n }, fb, gb);\n },\n repositionDialog: function(eb) {\n h.subscribe(n.SECTION_LOADED, function() {\n eb.updatePosition();\n });\n },\n rightColumnFinished: function(eb) {\n var fb = p.get(eb);\n fb.rightColumnFinished = true;\n },\n registerUnrankedGroup: function(eb, fb) {\n g.listen(eb, \"click\", function(JSBNG__event) {\n o.unrankedWasClicked();\n var gb = eb.offsetHeight;\n j.remove(eb.parentNode);\n i.removeClass(fb, \"hidden_elem\");\n var hb = fb.offsetHeight;\n fb.style.height = ((gb + \"px\"));\n fb.style.height = ((hb + \"px\"));\n return true;\n });\n }\n };\n e.exports = db;\n});\n__d(\"TimelineLogging\", [\"TimelineController\",\"reportData\",], function(a, b, c, d, e, f) {\n var g = b(\"TimelineController\"), h = b(\"reportData\"), i = false, j = 0, k = null, l = null, m = {\n init: function(n) {\n if (i) {\n return;\n }\n ;\n ;\n j = n;\n g.register(g.LOGGING, this);\n },\n reset: function() {\n i = false;\n j = 0;\n k = null;\n },\n log: function(n, o) {\n o.profile_id = j;\n h(n, {\n gt: o\n });\n },\n logSectionChange: function(n, o) {\n var p = {\n timeline_section_change: 1,\n key: n\n };\n if (((k && ((n == k))))) {\n p.timeline_scrubber = 1;\n k = null;\n }\n ;\n ;\n if (((l && ((n == l))))) {\n p.sticky_header_nav = 1;\n l = null;\n }\n ;\n ;\n m.log(\"timeline\", p);\n },\n logScrubberClick: function(n) {\n k = n;\n },\n logStickyHeaderNavClick: function(n) {\n l = n;\n },\n logUnrankedClick: function() {\n var n = {\n timeline_unranked: 1\n };\n m.log(\"timeline\", n);\n }\n };\n e.exports = m;\n});\n__d(\"TimelineStickyHeaderComposerX\", [\"JSBNG__Event\",\"Arbiter\",\"Bootloader\",\"JSBNG__CSS\",\"ComposerXController\",\"DOMQuery\",\"Parent\",\"Run\",\"TimelineComposerUtilities\",\"TimelineContentLoader\",\"TimelineStickyHeader\",\"Vector\",\"copyProperties\",\"csx\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Arbiter\"), i = b(\"Bootloader\"), j = b(\"JSBNG__CSS\"), k = b(\"ComposerXController\"), l = b(\"DOMQuery\"), m = b(\"Parent\"), n = b(\"Run\"), o = b(\"TimelineComposerUtilities\"), p = b(\"TimelineContentLoader\"), q = b(\"TimelineStickyHeader\"), r = b(\"Vector\"), s = b(\"copyProperties\"), t = b(\"csx\"), u = b(\"cx\");\n function v(x) {\n return ((x && m.byClass(x.getContext(), \"-cx-PRIVATE-fbTimelineStickyHeaderComposer__root\")));\n };\n;\n function w(x) {\n this._composerRoot = x;\n this._tokens = [o.listenToSetEstimatedDate(this._composerRoot, p.capsuleForCurrentSection),o.listenToPublish(this._composerRoot, this._close.bind(this)),h.subscribe(\"PhotoSnowlift.OPEN\", this._close.bind(this)),h.subscribe(\"TimelineMLE/mleFlyoutShown\", function(y, z) {\n if (((v(z) === this._composerRoot))) {\n k.reset(this._composerRoot);\n }\n ;\n ;\n }.bind(this)),h.subscribe(\"composer/initializedAttachment\", function(y, z) {\n if (((z.composerRoot === this._composerRoot))) {\n this._registerClickToDismiss();\n if (!z.isInitial) {\n this._closeMLE();\n }\n ;\n ;\n }\n else this._close();\n ;\n ;\n }.bind(this)),h.subscribe(q.ADJUST_WIDTH, this._toggleNarrowMode.bind(this)),];\n this._clickCancelToken = o.listenToCancel(this._composerRoot, this._close.bind(this));\n n.onLeave(function() {\n while (this._tokens.length) {\n this._tokens.pop().unsubscribe();\n ;\n };\n ;\n this._clearClickDismissToken();\n if (this._clickCancelToken) {\n this._clickCancelToken.remove();\n this._clickCancelToken = null;\n }\n ;\n ;\n }.bind(this));\n };\n;\n s(w.prototype, {\n _toggleNarrowMode: function(JSBNG__event, x) {\n i.loadModules([\"Tooltip\",], function(y) {\n var z = ((r.getElementDimensions(x).x > 400)), aa = l.scry(this._composerRoot, \".-cx-PUBLIC-fbComposerAttachment__link\");\n j.conditionClass(this._composerRoot, \"-cx-PRIVATE-fbTimelineStickyHeaderComposer__narrow\", z);\n for (var ba = 0; ((ba < aa.length)); ba++) {\n var ca = aa[ba], da = l.getText(ca);\n if (z) {\n y.set(ca, da);\n }\n else y.remove(ca);\n ;\n ;\n };\n ;\n }.bind(this));\n return false;\n },\n _registerClickToDismiss: function() {\n var x = j.hasClass(l.JSBNG__find(this._composerRoot, \".-cx-PRIVATE-fbComposerAttachment__mle\"), \"-cx-PUBLIC-fbComposerAttachment__selected\");\n if (!x) {\n this._clearClickDismissToken();\n return;\n }\n ;\n ;\n this._clickDismissToken = g.listen(JSBNG__document.body, \"click\", function(y) {\n var z = m.byClass(y.getTarget(), \"-cx-PRIVATE-fbTimelineStickyHeaderComposer__root\");\n if (!z) {\n this._close();\n this._clearClickDismissToken();\n }\n ;\n ;\n }.bind(this));\n },\n _clearClickDismissToken: function() {\n if (this._clickDismissToken) {\n this._clickDismissToken.remove();\n this._clickDismissToken = null;\n }\n ;\n ;\n },\n _close: function() {\n this._clearClickDismissToken();\n this._closeMLE();\n k.reset(this._composerRoot);\n },\n _closeMLE: function() {\n i.loadModules([\"TimelineMLE\",], function(x) {\n var y = x.getFlyout();\n if (((v(y) === this._composerRoot))) {\n x.hideFlyout();\n }\n ;\n ;\n }.bind(this));\n }\n });\n e.exports = w;\n});\n__d(\"TimelineSpinelessComposer\", [\"Arbiter\",\"Bootloader\",\"JSBNG__CSS\",\"DOM\",\"Parent\",\"Run\",\"TimelineComposer\",\"TimelineComposerUtilities\",\"csx\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Bootloader\"), i = b(\"JSBNG__CSS\"), j = b(\"DOM\"), k = b(\"Parent\"), l = b(\"Run\"), m = b(\"TimelineComposer\"), n = b(\"TimelineComposerUtilities\"), o = b(\"csx\"), p = b(\"cx\"), q;\n function r(w) {\n if (((w.isScheduledPost || w.isOGPost))) {\n return;\n }\n ;\n ;\n if (!w.streamStory) {\n window.JSBNG__location.reload();\n return;\n }\n ;\n ;\n if (w.backdatedTime) {\n h.loadModules([\"TimelineStoryPublisher\",], function(x) {\n x.publish(w);\n });\n return;\n }\n ;\n ;\n m.renderCapsuleBasedStory(q, w.streamStory);\n };\n;\n function s() {\n return j.JSBNG__find(k.byClass(q, \"fbTimelineComposerCapsule\"), \"div.-cx-PRIVATE-fbTimelineComposerAttachment__mleflyoutpointer\");\n };\n;\n function t(w) {\n var x = u();\n i.show(x);\n var y = w.subscribe(\"hide\", function() {\n i.hide(x);\n w.unsubscribe(y);\n });\n };\n;\n function u() {\n var w = k.byClass(q, \"fbTimelineComposerCapsule\"), x = j.scry(w, \"div.composerVeil\");\n if (((x.length !== 1))) {\n x = j.appendContent(w, j.create(\"div\", {\n className: \"composerVeil hidden_elem\"\n }));\n }\n ;\n ;\n return x[0];\n };\n;\n var v = {\n init: function(w) {\n q = w;\n var x = g.subscribe(\"composer/publish\", function(JSBNG__event, y) {\n if (((y.composer_id === q.id))) {\n r(y);\n }\n ;\n ;\n });\n l.onLeave(x.unsubscribe.bind(x));\n if (i.hasClass(q, \"-cx-PRIVATE-fbTimelineComposer__root\")) {\n n.hidePlaceIfAttachmentsTooTall(q);\n }\n else n.hidePlaceIfAttachmentsTooTallOld(q);\n ;\n ;\n },\n showMLEFlyout: function(w) {\n w.setContext(s()).show();\n t(w);\n }\n };\n e.exports = v;\n});\n__d(\"TimelineStickyRightColumn\", [\"Arbiter\",\"JSBNG__CSS\",\"DOMQuery\",\"JSBNG__Event\",\"PhotoSnowlift\",\"Run\",\"Style\",\"TimelineContentLoader\",\"Vector\",\"UserAgent\",\"csx\",\"queryThenMutateDOM\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"JSBNG__CSS\"), i = b(\"DOMQuery\"), j = b(\"JSBNG__Event\"), k = b(\"PhotoSnowlift\"), l = b(\"Run\"), m = b(\"Style\"), n = b(\"TimelineContentLoader\"), o = b(\"Vector\"), p = b(\"UserAgent\"), q = b(\"csx\"), r = b(\"queryThenMutateDOM\"), s = 100, t = 15, u = 15, v = 71, w = false, x = null, y = null, z, aa, ba, ca, da, ea, fa, ga;\n function ha() {\n if (k.getInstance().isOpen) {\n return;\n }\n ;\n ;\n z = n.getCurrentSection();\n if (((!z || !z.rightColumnFinished))) {\n return;\n }\n ;\n ;\n var pa = i.scry(z.node, \".-cx-PUBLIC-timelineOneColMin__leftcapsule\")[0], qa = i.scry(z.node, \".-cx-PUBLIC-timelineOneColMin__rightcapsule\")[0];\n aa = ((pa ? pa.offsetHeight : 0));\n ba = ((qa ? qa.offsetHeight : 0));\n ca = o.getViewportDimensions().y;\n fa = ((pa ? o.getElementPosition(pa).y : 0));\n ga = ((JSBNG__document.body.clientWidth < JSBNG__document.body.scrollWidth));\n };\n;\n function ia() {\n if (k.getInstance().isOpen) {\n return;\n }\n ;\n ;\n if (((y && ((y !== z))))) {\n var pa = i.scry(y.node, \".-cx-PUBLIC-timelineOneColMin__rightcapsule\")[0];\n if (pa) {\n ka(pa, \"\", \"\", \"\");\n }\n ;\n ;\n }\n ;\n ;\n var qa = i.scry(z.node, \".-cx-PUBLIC-timelineOneColMin__rightcapsule\")[0];\n if (!qa) {\n return;\n }\n ;\n ;\n if (ga) {\n ka(qa, \"\", \"\", \"\");\n return;\n }\n ;\n ;\n if (((!z || !z.rightColumnFinished))) {\n return;\n }\n ;\n ;\n ja(z);\n y = ((h.hasClass(qa, \"fixed_always\") ? z : null));\n };\n;\n function ja(pa) {\n if (((((ba >= aa)) || ((aa <= ca))))) {\n return;\n }\n ;\n ;\n ea = da;\n da = o.getScrollPosition().y;\n var qa, ra = i.scry(pa.node, \".-cx-PUBLIC-timelineOneColMin__rightcapsule\")[0];\n if (!ra) {\n return;\n }\n ;\n ;\n if (((da <= ((fa - la()))))) {\n ka(ra, \"\", \"\", \"\");\n return;\n }\n ;\n ;\n if (((((aa + fa)) <= ((da + Math.min(((ba + la())), ((((ca - u)) - v)))))))) {\n ka(ra, \"absolute\", \"\", ((u + \"px\")));\n return;\n }\n ;\n ;\n if (((ba > ((((ca - u)) - la()))))) {\n if (((da < ea))) {\n var sa = false;\n if (((ra.style.position === \"absolute\"))) {\n if (((((ra.style.JSBNG__top !== \"\")) && ((((((da + la())) - fa)) <= parseInt(ra.style.JSBNG__top, 10)))))) {\n sa = true;\n }\n else if (((((ra.style.bottom !== \"\")) && ((da <= ((((((fa + aa)) - la())) - ba))))))) {\n sa = true;\n }\n \n ;\n }\n ;\n ;\n if (sa) {\n ka(ra, \"fixed\", ((la() + \"px\")), \"\");\n return;\n }\n else if (((((ra.style.position === \"absolute\")) && ra.style.JSBNG__top))) {\n return;\n }\n else if (h.hasClass(ra, \"fixed_always\")) {\n if (((parseInt(ra.style.JSBNG__top, 10) >= la()))) {\n return;\n }\n ;\n ;\n qa = ((((da - fa)) - ((ba - ((ca - v))))));\n if (ea) {\n qa += ((ea - da));\n }\n ;\n ;\n ka(ra, \"absolute\", ((qa + \"px\")), \"\");\n return;\n }\n \n \n ;\n ;\n }\n else {\n var ta = false;\n if (((((ra.style.position === \"absolute\")) || ((((ra.style.position === \"\")) && !h.hasClass(ra, \"fixed_always\")))))) {\n qa = ((ra.style.JSBNG__top ? parseInt(ra.style.JSBNG__top, 10) : 0));\n if (((((da + ca)) >= ((((((fa + qa)) + ba)) + v))))) {\n ta = true;\n }\n ;\n ;\n }\n ;\n ;\n if (ta) {\n qa = ((((((ca - ba)) - u)) - v));\n ka(ra, \"fixed\", ((qa + \"px\")), \"\");\n return;\n }\n else if (((da == ea))) {\n return;\n }\n else if (h.hasClass(ra, \"fixed_always\")) {\n if (((parseInt(ra.style.JSBNG__top, 10) >= la()))) {\n qa = ((((da - fa)) + la()));\n if (ea) {\n qa += ((ea - da));\n }\n ;\n ;\n ka(ra, \"absolute\", ((qa + \"px\")), \"\");\n return;\n }\n ;\n ;\n }\n else if (((ra.style.position === \"absolute\"))) {\n return;\n }\n \n \n \n ;\n ;\n }\n ;\n ;\n }\n else ka(ra, \"fixed\", ((la() + \"px\")), \"\");\n ;\n ;\n };\n;\n function ka(pa, qa, ra, sa) {\n m.set(pa, \"bottom\", sa);\n if (((qa === \"fixed\"))) {\n h.addClass(pa, \"fixed_always\");\n m.set(pa, \"position\", \"\");\n }\n else {\n h.removeClass(pa, \"fixed_always\");\n m.set(pa, \"position\", qa);\n }\n ;\n ;\n m.set(pa, \"JSBNG__top\", ra);\n g.inform(\"reflow\");\n };\n;\n function la() {\n return ((h.hasClass(JSBNG__document.documentElement, \"tinyViewport\") ? t : s));\n };\n;\n function ma() {\n r(ha, ia);\n };\n;\n function na() {\n w = false;\n y = null;\n while (x.length) {\n x.pop().remove();\n ;\n };\n ;\n x = null;\n };\n;\n var oa = {\n init: function() {\n if (((w || ((p.ie() < 8))))) {\n return;\n }\n ;\n ;\n w = true;\n x = [j.listen(window, \"JSBNG__scroll\", ma),j.listen(window, \"resize\", ma),];\n l.onLeave(na);\n },\n adjust: function() {\n if (w) {\n ha();\n ia();\n }\n ;\n ;\n }\n };\n e.exports = oa;\n});\n__d(\"TimelineProfileQuestionsUnit\", [\"JSBNG__CSS\",\"JSBNG__Event\",\"Parent\",\"tidyEvent\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = b(\"JSBNG__Event\"), i = b(\"Parent\"), j = b(\"tidyEvent\"), k = null, l = {\n COLLAPSED: \"collapsedUnit\",\n UNIT: \"fbTimelineUnit\"\n };\n function m(n, o, p, q) {\n this.$TimelineProfileQuestionsUnit0 = n;\n this.$TimelineProfileQuestionsUnit1 = o;\n this.$TimelineProfileQuestionsUnit2 = p;\n this.$TimelineProfileQuestionsUnit3 = q;\n this.$TimelineProfileQuestionsUnit4();\n ((k && k.$TimelineProfileQuestionsUnit5()));\n k = this;\n };\n;\n m.prototype.$TimelineProfileQuestionsUnit5 = function() {\n ((this.$TimelineProfileQuestionsUnit6 && this.$TimelineProfileQuestionsUnit6.remove()));\n this.$TimelineProfileQuestionsUnit6 = null;\n };\n m.prototype.$TimelineProfileQuestionsUnit4 = function() {\n if (this.$TimelineProfileQuestionsUnit3.isCollapsed) {\n return;\n }\n ;\n ;\n this.$TimelineProfileQuestionsUnit6 = h.listen(this.$TimelineProfileQuestionsUnit1, \"click\", this.$TimelineProfileQuestionsUnit7.bind(this));\n j(this.$TimelineProfileQuestionsUnit6);\n };\n m.prototype.$TimelineProfileQuestionsUnit7 = function() {\n if (!this.$TimelineProfileQuestionsUnit2) {\n return;\n }\n ;\n ;\n var n = i.byClass(this.$TimelineProfileQuestionsUnit0, l.UNIT);\n g.toggle(this.$TimelineProfileQuestionsUnit2);\n var o = !g.shown(this.$TimelineProfileQuestionsUnit2);\n g.conditionClass(n, l.COLLAPSED, o);\n };\n m.updateElements = function(n, o) {\n if (!k) {\n return;\n }\n ;\n ;\n k.$TimelineProfileQuestionsUnit5();\n k.$TimelineProfileQuestionsUnit1 = n;\n k.$TimelineProfileQuestionsUnit2 = o;\n k.$TimelineProfileQuestionsUnit4();\n };\n e.exports = m;\n});"); |
| // 13543 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o89,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yV/r/qrynZd4S1j9.js",o90); |
| // undefined |
| o89 = null; |
| // undefined |
| o90 = null; |
| // 13613 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"4kgAq\",]);\n}\n;\n__d(\"AdsCurrency\", [\"AdsCurrencyConfig\",], function(a, b, c, d, e, f) {\n var g = b(\"AdsCurrencyConfig\").currencies;\n function h(m) {\n if (g[m]) {\n return g[m][0]\n };\n return null;\n };\n function i(m) {\n if (g[m]) {\n return g[m][1]\n };\n return null;\n };\n function j(m) {\n if (g[m]) {\n return (1 * g[m][2])\n };\n return 1;\n };\n var k = [];\n for (var l in g) {\n if (g.hasOwnProperty(l)) {\n k.push(l);\n };\n };\n f.getFormat = h;\n f.getSymbol = i;\n f.getOffset = j;\n f.currencyMapKeys = k;\n});\n__d(\"ads-lib-formatters\", [\"AdsCurrency\",], function(a, b, c, d, e, f) {\n var g = b(\"AdsCurrency\"), h = \"USD\";\n function i(t, u, v) {\n t = (t || \"\");\n v = (v || \"\");\n u = ((typeof u === \"undefined\") ? t.length : u);\n return ((t.length > u) ? ((t.substr(0, (u - v.length)) + v)) : t);\n };\n function j(t, u) {\n if (((u === undefined) || (u === null))) {\n u = \"\";\n };\n return function(v) {\n return (!v ? u : i(v, t, \"...\"));\n };\n };\n function k(t, u, v, w) {\n if ((t === \"N/A\")) {\n return t\n };\n t = (t || 0);\n v = (v || \"\");\n w = (w || \".\");\n t = ((u !== null) ? l(t, u) : (t + \"\"));\n var x = t.split(\".\"), y = x[0], z = x[1], aa = \"\", ba = /(\\d)(\\d\\d\\d)($|\\D)/, ca = ((\"$1\" + v) + \"$2$3\");\n while (((aa = y.replace(ba, ca)) != y)) {\n y = aa;;\n };\n var da = y;\n if (z) {\n da += (w + z);\n };\n return da;\n };\n function l(t, u) {\n var v = Math.pow(10, u);\n t = ((Math.round((t * v)) / v) + \"\");\n if (!u) {\n return t\n };\n var w = t.indexOf(\".\"), x = 0;\n if ((w == -1)) {\n t += \".\";\n x = u;\n }\n else x = (u - (((t.length - w) - 1)));\n ;\n for (var y = 0, z = x; (y < z); y++) {\n t += \"0\";;\n };\n return t;\n };\n function m(t) {\n return function(u) {\n return k(u, (t || 0), \",\", \".\");\n };\n };\n function n(t, u) {\n var v = ((u === false) ? 1 : 100);\n return function(w) {\n return (k((w * v), (t || 0), \",\", \".\") + \"%\");\n };\n };\n var o = {\n };\n function p(t, u, v) {\n if ((t === undefined)) {\n t = 2;\n };\n if ((v === undefined)) {\n v = false;\n };\n u = (u || h);\n var w = ((((u + \"-\") + t) + \"-\") + v);\n if (!o[w]) {\n var x = (g.getFormat(u) || g.getFormat(h)), y = (g.getSymbol(u) || g.getSymbol(h)), z = (g.getOffset(u) || g.getOffset(h));\n x = x.replace(\"{symbol}\", y);\n o[w] = function(aa) {\n if (v) {\n aa = (aa / z);\n };\n if (!((aa + \"\")).match(/^\\-?[\\d\\.,]*$/)) {\n return \"N/A\"\n };\n var ba = k(aa, t, \",\", \".\");\n return x.replace(\"{amount}\", ba);\n };\n }\n ;\n return o[w];\n };\n function q(t) {\n t = ((t + \"\")).trim().replace(/^[^\\d]*\\-/, \"\\u0002\");\n if (!(((/^\\u0002?(\\d+,\\d*){2,}$/.test(t)) || (/^\\u0002?(\\d+\\.\\d*){2,}$/.test(t))))) {\n t = t.replace(/[\\.,](\\d*\\D*)$/, \"\\u0001$1\");\n };\n t = t.replace(/[^0-9\\u0001\\u0002]/g, \"\").replace(\"\\u0001\", \".\").replace(\"\\u0002\", \"-\");\n return (+t || 0);\n };\n function r() {\n return function(t) {\n return (k(t, 0, \",\", \".\") + \"%\");\n };\n };\n function s(t) {\n var u = t.currency(), v = ((t.offset() == 100) ? 2 : 0);\n return p(v, u);\n };\n f.createTextTruncator = j;\n f.chopString = i;\n f.parseNumber = q;\n f.formatNumber = k;\n f.createNumberFormatter = m;\n f.createPercentFormatter = n;\n f.createMoneyFormatter = p;\n f.createMoneyFormatterForAccount = s;\n f.createInflationFormatter = r;\n});\n__d(\"PopoverMenuShowOnHover\", [\"Event\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"copyProperties\");\n function i(j) {\n this._popoverMenu = j;\n this._listeners = [];\n };\n h(i.prototype, {\n enable: function() {\n this._attachMouseListeners(this._popoverMenu.getTriggerElem());\n this._setMenuSubscription = this._popoverMenu.subscribe(\"setMenu\", this._onSetMenu.bind(this));\n },\n disable: function() {\n while (this._listeners.length) {\n this._listeners.pop().remove();;\n };\n if (this._setMenuSubscription) {\n this._setMenuSubscription.unsubscribe();\n this._setMenuSubscription = null;\n }\n ;\n },\n _onSetMenu: function() {\n this._attachMouseListeners(this._popoverMenu.getMenu().getRoot());\n },\n _attachMouseListeners: function(j) {\n var k = this._popoverMenu.getPopover();\n this._listeners.push(g.listen(j, \"mouseenter\", k.showLayer.bind(k)), g.listen(j, \"mouseleave\", k.hideLayer.bind(k)));\n }\n });\n e.exports = i;\n});\n__d(\"TriggerablePageletLoader\", [\"function-extensions\",\"CSS\",\"Event\",\"OnVisible\",\"Run\",\"UIPagelet\",\"copyProperties\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"CSS\"), h = b(\"Event\"), i = b(\"OnVisible\"), j = b(\"Run\"), k = b(\"UIPagelet\"), l = b(\"copyProperties\"), m = [];\n function n(p) {\n if (!m[p]) {\n return\n };\n (m[p].__trigger && m[p].__trigger.remove());\n delete m[p];\n };\n function o(p, q) {\n this._disabledTriggerKeys = [];\n this._pageletConfig = p;\n this._loaded = false;\n this._loading = false;\n this._triggerKeys = [];\n if (q) {\n q.forEach(this.addTrigger.bind(this));\n };\n j.onLeave(this.destroy.bind(this));\n };\n l(o, {\n removeTrigger: function(p) {\n for (var q in m) {\n if ((m[q] && (m[q].node === p))) {\n n(q);\n };\n };\n },\n TRIGGER_CLICK: \"click\",\n TRIGGER_ONVISIBLE: \"onvisible\",\n TRIGGER_NOW: \"now\"\n });\n l(o.prototype, {\n addTrigger: function(p) {\n p.__trigger = this._createTrigger(p);\n m.push(p);\n this._triggerKeys.push((m.length - 1));\n },\n destroy: function() {\n this.removeTriggers();\n if (this._pageletRequest) {\n this._pageletRequest.cancel();\n this._pageletRequest = null;\n this._loading = false;\n this._loaded = false;\n }\n ;\n },\n disableTriggers: function() {\n this._triggerKeys.forEach(function(p) {\n if (m[p]) {\n m[p].__trigger.remove();\n this._disabledTriggerKeys.push(p);\n }\n ;\n }.bind(this));\n },\n enableTriggers: function() {\n if ((this._loaded || this._loading)) {\n return\n };\n this._disabledTriggerKeys.forEach(function(p) {\n if (m[p]) {\n m[p].__trigger = this._createTrigger(m[p]);\n };\n }.bind(this));\n this._disabledTriggerKeys.length = 0;\n },\n _createTrigger: function(p) {\n if ((this._loaded || this._loading)) {\n return\n };\n var q = this.onTrigger.bind(this, p);\n switch (p.type) {\n case o.TRIGGER_CLICK:\n return h.listen(p.node, \"click\", function(r) {\n r.prevent();\n q();\n });\n case o.TRIGGER_ONVISIBLE:\n return new i(p.node, q, p.onVisibleStrict, p.onVisibleBuffer);\n case o.TRIGGER_NOW:\n return q();\n default:\n \n };\n },\n load: function(p) {\n if ((this._loaded || this._loading)) {\n return\n };\n this._loading = true;\n this._loaded = false;\n g.addClass(this._pageletConfig.node, \"async_saving\");\n if ((p && p.node)) {\n g.addClass(p.node, \"async_saving\");\n };\n var q = (this._pageletConfig.options || {\n });\n q.displayCallback = this.onLoad.bind(this, p);\n if ((q.crossPage === undefined)) {\n q.crossPage = true;\n };\n this._pageletRequest = k.loadFromEndpoint(this._pageletConfig.controller, this._pageletConfig.node, this._pageletConfig.data, q);\n },\n onLoad: function(p, q) {\n this._loaded = true;\n this._pageletRequest = null;\n g.removeClass(this._pageletConfig.node, \"async_saving\");\n if ((p && p.node)) {\n g.removeClass(p.node, \"async_saving\");\n };\n if (this._pageletConfig.displayCallback) {\n this._pageletConfig.displayCallback(q);\n }\n else q();\n ;\n },\n onTrigger: function(p) {\n (p.callback && p.callback(p));\n if ((!this._loaded && !this._loading)) {\n this.load(p);\n };\n },\n removeTriggers: function(p) {\n this._triggerKeys.forEach(function(q) {\n if ((m[q] && ((!p || (m[q].type === p))))) {\n n(q);\n };\n });\n }\n });\n e.exports = o;\n});\n__d(\"OGCollectionAddDialog\", [\"AsyncRequest\",\"DataStore\",\"DOMQuery\",\"Form\",\"MenuDeprecated\",\"URI\",\"collectDataAttributes\",\"copyProperties\",\"csx\",\"tidyEvent\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"DataStore\"), i = b(\"DOMQuery\"), j = b(\"Form\"), k = b(\"MenuDeprecated\"), l = b(\"URI\"), m = b(\"collectDataAttributes\"), n = b(\"copyProperties\"), o = b(\"csx\"), p = b(\"tidyEvent\"), q = \"OGCollectionAddDialog\";\n function r(s, t, u, v, w) {\n this._dialog = s;\n this._surface = t;\n this._endpoint = l(v);\n this._loadEditMenu = w.loadEditMenu;\n this._listener = h.get(String(u), q);\n this._audienceSelector = i.find(this._dialog.getContent(), \".audienceSelector\");\n this._menu = i.find(this._dialog.getContent(), \".-cx-PRIVATE-fbOGCollectionAddMenu__menu\");\n k.register(this._menu);\n this._menuSubscriptionToken = k.subscribe(\"select\", this._onMenuClick.bind(this));\n p([this._dialog.subscribe(\"show\", this._onDialogShow.bind(this)),this._dialog.subscribe(\"hide\", this._onDialogHide.bind(this)),]);\n this._dialog.show();\n };\n n(r, {\n INSTANCE_KEY: q\n });\n n(r.prototype, {\n _onDialogShow: function() {\n this._listener.onDialogShow(this._dialog);\n },\n _onDialogHide: function() {\n this._destroy();\n },\n _onMenuClick: function(s, t) {\n if ((t.menu !== this._menu)) {\n return\n };\n var u = t.item;\n this._listener.onMenuClick(u);\n var v = i.find(u, \".-cx-PRIVATE-fbOGCollectionAddMenu__collectiontoken\"), w = v.getAttribute(\"value\");\n this._submitRequest(w);\n },\n _submitRequest: function(s) {\n this._endpoint.addQueryData({\n collection_token: s\n });\n this._dialog.hide();\n this._request = new g(this._endpoint).setData(n(j.serialize(this._audienceSelector), {\n action: \"add\",\n load_edit_menu: this._loadEditMenu,\n surface: this._surface\n }, m(this._dialog.getContext(), [\"ft\",])));\n this._request.send();\n },\n _destroy: function() {\n this._listener.onDialogHide();\n k.unsubscribe(this._menuSubscriptionToken);\n }\n });\n e.exports = r;\n});\n__d(\"OGCollectionAddMenu\", [\"CSS\",\"DataStore\",\"DOM\",\"DOMQuery\",\"Event\",\"OGCollectionAddDialog\",\"Parent\",\"TidyArbiterMixin\",\"copyProperties\",\"csx\",\"cx\",\"ge\",\"tidyEvent\",], function(a, b, c, d, e, f) {\n var g = b(\"CSS\"), h = b(\"DataStore\"), i = b(\"DOM\"), j = b(\"DOMQuery\"), k = b(\"Event\"), l = b(\"OGCollectionAddDialog\"), m = b(\"Parent\"), n = b(\"TidyArbiterMixin\"), o = b(\"copyProperties\"), p = b(\"csx\"), q = b(\"cx\"), r = b(\"ge\"), s = b(\"tidyEvent\");\n function t(u, v, w, x, y, z) {\n this._image = v;\n this._container = w;\n this._placeholder = x;\n this._surface = y;\n this._rateControl = i.scry(this._container.parentNode, \".-cx-PRIVATE-fbOGCollectionRateDialog__wrapperlink\")[0];\n t.inform(\"addButton\", {\n button: this._image,\n root: this._container\n });\n s(k.listen(this._container, \"click\", function(aa) {\n var ba = m.byClass(aa.getTarget(), \"-cx-PUBLIC-fbOGCollectionAddMenu__hoverimg\");\n if ((this.isDialogShowing() && ba)) {\n aa.kill();\n };\n }.bind(this)));\n if ((this._surface === \"friend_timeline_lhc\")) {\n this._handleAlwaysVisibleLHC();\n };\n h.set(String(u), l.INSTANCE_KEY, this);\n };\n o(t, n, {\n initCallout: function(u, v, w) {\n u.show();\n var x = r(v), y = j.find(w, \".-cx-PRIVATE-fbOGCollectionAddMenu__linkwrapper\");\n s(k.listen(x, \"click\", function(z) {\n k.fire(y, \"click\");\n }));\n }\n });\n o(t.prototype, n, {\n destroy: function() {\n i.remove(this._container);\n this._placeholder.destroy();\n },\n hide: function() {\n g.hide(this._image);\n this._placeholder.hide();\n },\n getParent: function() {\n return this._container.parentNode;\n },\n insertMenuIntoDialog: function(u) {\n this._placeholder.insertIntoDialog(u);\n },\n onMenuClick: function(u) {\n var v = j.find(u, \".-cx-PRIVATE-fbOGCollectionAddMenu__showrate\");\n this._showRate = (this._rateControl && v.getAttribute(\"value\"));\n g.hide(this._image);\n if (this._showRate) {\n g.show(this._rateControl);\n k.fire(this._rateControl, \"click\");\n }\n else g.show(this._placeholder.getIcon());\n ;\n },\n onDialogShow: function(u) {\n var v = j.find(u.getContent(), \".audienceSelector\");\n g.addClass(this._image, \"openToggler\");\n t.inform(\"menuOpened\", {\n audienceSelector: v.parentNode\n });\n this._dialogShowing = true;\n },\n onDialogHide: function() {\n g.removeClass(this._image, \"openToggler\");\n this._dialogShowing = false;\n },\n isDialogShowing: function() {\n return this._dialogShowing;\n },\n _handleAlwaysVisibleLHC: function() {\n var u = m.byClass(this._container, \"-cx-PUBLIC-fbOGCollectionItemAddCuration__container\"), v = m.byClass(u, \"-cx-PRIVATE-ogAppReport__root\");\n if (g.hasClass(u, \"-cx-PUBLIC-fbOGCollectionItemAddCuration__alwaysvisible\")) {\n s([this._alwaysVisibleToken = k.listen(v, \"mouseenter\", function() {\n g.removeClass(u, \"-cx-PUBLIC-fbOGCollectionItemAddCuration__alwaysvisible\");\n this._alwaysVisibleToken.remove();\n }.bind(this)),]);\n };\n }\n });\n e.exports = t;\n});\n__d(\"MedleyPageletRequestData\", [\"Arbiter\",\"TidyArbiter\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"TidyArbiter\"), i = {\n }, j = {\n get: function() {\n return i;\n },\n set: function(k) {\n i = k;\n h.inform(\"Medley/requestDataSet\", null, g.BEHAVIOR_STATE);\n }\n };\n e.exports = j;\n});\n__d(\"TimelineDynamicSection\", [\"Class\",\"DOM\",\"TimelineSection\",\"copyProperties\",\"cx\",\"ge\",\"TimelineDynamicSectionConfig\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"DOM\"), i = b(\"TimelineSection\"), j = b(\"copyProperties\"), k = b(\"cx\"), l = b(\"ge\"), m = b(\"TimelineDynamicSectionConfig\");\n function n(o, p, q) {\n this._controller = p;\n this._data = null;\n this._node = null;\n this._triggerLoader = null;\n this.parent.construct(this, o, o, q);\n };\n g.extend(n, i);\n j(n.prototype, {\n _createNode: function() {\n return h.create(\"div\", {\n className: \"-cx-PRIVATE-fbTimelineMedley__sectionwrapper\",\n id: this.nodeID\n }, [m.throbber.cloneNode(true),]);\n },\n getNode: function() {\n if (!this._node) {\n this._node = (l(this.nodeID) || this._createNode());\n };\n return this._node;\n }\n });\n e.exports = n;\n});\n__d(\"TimelineAppCollection\", [\"function-extensions\",\"Class\",\"CSS\",\"DOM\",\"DOMQuery\",\"Event\",\"MedleyPageletRequestData\",\"NumberFormatConfig\",\"PageTransitions\",\"Parent\",\"Style\",\"TidyArbiter\",\"TidyArbiterMixin\",\"TimelineDynamicSection\",\"TimelineSection\",\"TriggerablePageletLoader\",\"TimelineDynamicSectionConfig\",\"copyProperties\",\"csx\",\"cx\",\"ads-lib-formatters\",\"ge\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"Class\"), h = b(\"CSS\"), i = b(\"DOM\"), j = b(\"DOMQuery\"), k = b(\"Event\"), l = b(\"MedleyPageletRequestData\"), m = b(\"NumberFormatConfig\"), n = b(\"PageTransitions\"), o = b(\"Parent\"), p = b(\"Style\"), q = b(\"TidyArbiter\"), r = b(\"TidyArbiterMixin\"), s = b(\"TimelineDynamicSection\"), t = b(\"TimelineSection\"), u = b(\"TriggerablePageletLoader\"), v = b(\"TimelineDynamicSectionConfig\"), w = b(\"copyProperties\"), x = b(\"csx\"), y = b(\"cx\"), z = b(\"ads-lib-formatters\"), aa = b(\"ge\"), ba = 500, ca = 8;\n function da(ha) {\n var ia = aa(ga.getIDByToken(ha));\n if (!ia) {\n return\n };\n return i.scry(ia, \".-cx-PUBLIC-fbTimelineCollectionGrid__root\")[0];\n };\n function ea(ha, ia) {\n ((ia && !ia.isDefaultRequested()) && ia.prevent());\n var ja = ha._parentSection, ka = ja._parentSection;\n t.setActiveSectionID(ja.id);\n ja.setActiveCollection(ha);\n if ((ja._sk === ka._sk)) {\n if (!h.hasClass(ka.getNode(), \"-cx-PRIVATE-fbTimelineMedley__permafrost\")) {\n h.addClass(ka.getNode(), \"-cx-PRIVATE-fbTimelineMedley__permafrost\");\n ka.freezeChildren();\n }\n ;\n (ha._isFullyLoaded && ka.addSectionTeasers());\n }\n ;\n if ((!ka.isMedleyView() && (ja._sk === ka._sk))) {\n var la = ha.href;\n n.rewriteCurrentURI(n.getCurrentURI().getUnqualifiedURI(), la);\n }\n ;\n };\n function fa(ha, ia) {\n ia.data.overview = (ha._parentSection._sk !== ha._parentSection._parentSection._sk);\n ia.data.cursor = null;\n ea(ha);\n };\n function ga(ha, ia, ja, ka, la, ma) {\n this._contentLoader = null;\n this._isFrozen = false;\n this._isFullyLoaded = false;\n this._cursor = 0;\n this._tabNode = ja;\n this._tabCount = ((ka > 0) ? ka : 0);\n this._token = ha;\n this._ftid = null;\n this.auxContent = null;\n this.curationContent = null;\n this._order = la;\n this.href = ma;\n this._sortContent = null;\n this.refreshCount();\n this.parent.construct(this, ga.getIDByToken(ha), ia);\n if (!ja) {\n return\n };\n if (aa(this.nodeID)) {\n k.listen(ja, \"click\", ea.curry(this));\n }\n else this.createTriggerLoader.bind(this).defer();\n ;\n };\n g.extend(ga, s);\n w(ga, r, {\n NEW_ITEM: \"TimelineAppCollection/newItem\",\n ADDING_PLACEHOLDER: \"TimelineAppCollection/addingPlaceholder\",\n addPlaceholderToCollection: function(ha, ia, ja) {\n ja = ((typeof ja !== \"undefined\") ? ja : {\n });\n if (!ja.suppressCount) {\n this.incrementCount(ga.getIDByToken(ha));\n };\n t.callWithSection(ga.getIDByToken(ha), function(ka) {\n var la = i.scry(ia, \".-cx-PUBLIC-fbTimelineCollectionGrid__itemtitle\")[0].cloneNode(true), ma = i.scry(ia, \".-cx-PUBLIC-fbTimelineCollectionGrid__itemimage .img\")[0], na = i.scry(ia, \".-cx-PUBLIC-fbTimelineCollectionGrid__containerwrap\")[0], oa = (na && na.getAttribute(\"data-obj\"));\n if ((!la || !oa)) {\n return\n };\n ka.inform(ga.ADDING_PLACEHOLDER);\n var pa = da(ha);\n if (!pa) {\n return\n };\n var qa = i.scry(pa, ((\"[data-obj=\\\"\" + oa) + \"\\\"]\"))[0], ra = i.create(\"div\", {\n className: \"-cx-PUBLIC-fbTimelineCollectionGrid__placeholderimage\"\n });\n if (ma) {\n p.set(ra, \"background-image\", ((\"url(\" + ma.src) + \")\"));\n };\n var sa = i.create(\"div\", {\n className: \"-cx-PUBLIC-fbTimelineCollectionGrid__itemimage\"\n }, [ra,]), ta = i.create(\"div\", {\n className: \"-cx-PUBLIC-fbTimelineCollectionGrid__content\"\n }, [la,]), ua = i.create(\"div\", {\n className: \"-cx-PUBLIC-fbTimelineCollectionGrid__containerwrap\"\n }, [sa,ta,]), va = i.create(\"li\", {\n className: \"-cx-PUBLIC-fbTimelineCollectionGrid__item\",\n id: (\"collectionItemPlaceholder\" + oa)\n }, [ua,]);\n if ((qa && ja.replaceExistingElement)) {\n i.replace(qa.parentNode, va);\n }\n else {\n if (qa) {\n i.remove(qa.parentNode);\n }\n else if ((ka.isOverview() && (pa.children.length >= ca))) {\n h.addClass(pa.children[(ca - 1)], \"-cx-PRIVATE-fbTimelineCollectionGrid__overflowitem\");\n }\n ;\n i.prependContent(pa, va);\n }\n ;\n });\n },\n replaceItem: function(ha, ia, ja) {\n var ka = o.byClass(ha, \"-cx-PUBLIC-fbTimelineCollectionGrid__root\"), la = i.scry(ka, ((\"div[data-obj=\\\"\" + ia) + \"\\\"]\"))[0];\n if (la) {\n ga.inform(ga.NEW_ITEM, {\n grid: ka,\n newItem: ja\n });\n i.replace(la.parentNode, ja);\n }\n ;\n },\n addItemToCollection: function(ha, ia, ja) {\n var ka = aa(ja);\n if (!ka) {\n return\n };\n var la = i.scry(ka, \".-cx-PUBLIC-fbTimelineCollectionGrid__root\")[0], ma = la.parentNode.nextSibling;\n if ((ma && h.hasClass(ma, \"-cx-PRIVATE-fbTimelineMedleyPager__root\"))) {\n i.remove(la.lastChild);\n };\n this.inform(ga.NEW_ITEM, {\n grid: la,\n newItem: ha\n });\n var na = aa((\"collectionItemPlaceholder\" + ia));\n if (na) {\n i.replace(na, ha);\n return;\n }\n ;\n i.prependContent(la, ha);\n },\n createFromArray: function(ha) {\n return ha.map(function(ia) {\n return new ga(ia.token, ia.controller, ia.tab_node, ia.tab_count, ia.order, ia.href);\n });\n },\n decrementCount: function(ha) {\n t.callWithSection(ha, function(ia) {\n if ((ia._tabCount > 0)) {\n ia._tabCount--;\n ia.refreshCount();\n ia.flashCountIf();\n }\n ;\n });\n },\n enableContentLoader: function(ha, ia, ja) {\n t.callWithSection(ha, function(ka) {\n ka.addContentLoader(ia, ja);\n });\n },\n getIDByToken: function(ha) {\n return (\"pagelet_timeline_app_collection_\" + ha);\n },\n incrementCount: function(ha) {\n t.callWithSection(ha, function(ia) {\n ia._tabCount++;\n ia.refreshCount();\n ia.flashCountIf();\n });\n },\n registerAuxContent: function(ha, ia) {\n t.callWithSection(ha, function(ja) {\n ja.registerAuxContent(ia);\n });\n },\n registerAddCurationContent: function(ha, ia, ja, ka) {\n t.callWithSection(ha, function(la) {\n la.registerAddCurationContent(ia, ja, ka);\n });\n },\n registerSortContent: function(ha, ia, ja) {\n t.callWithSection(ha, function(ka) {\n ka.registerSortContent(ia, ja);\n });\n },\n setLoaded: function(ha) {\n t.callWithSection(ha, function(ia) {\n ia.setIsLoaded(true);\n ia._parentSection.inform(\"loaded\", ia);\n ia._parentSection.unsetMinHeight();\n });\n },\n setFullyLoaded: function(ha) {\n t.callWithSection(ha, function(ia) {\n ia._isFullyLoaded = true;\n var ja = ia._parentSection;\n ((ja._sk === ja._parentSection._sk) && ja._parentSection.addSectionTeasers());\n });\n },\n setFTID: function(ha, ia) {\n t.callWithSection(ha, function(ja) {\n ja.setFTID(ia);\n });\n },\n switchToNullStateCurationContent: function(ha) {\n t.callWithSection(ga.getIDByToken(ha), function(ia) {\n ia.nullStateCurationContent();\n });\n }\n });\n w(ga.prototype, r, {\n addContentLoader: function(ha, ia) {\n this._cursor = ia;\n q.subscribe(\"Medley/requestDataSet\", function() {\n var ja = {\n node: ha\n };\n if (h.hasClass(ha, \"-cx-PRIVATE-fbTimelineMedleyPager__root\")) {\n ja.type = u.TRIGGER_CLICK;\n }\n else if (this._isFrozen) {\n i.remove(ha);\n ja.node = v.pager.cloneNode(true);\n i.appendContent(this.getNode(), ja.node);\n ja.type = u.TRIGGER_CLICK;\n }\n else {\n ja.onVisibleBuffer = ba;\n ja.onVisibleStrict = true;\n ja.type = u.TRIGGER_ONVISIBLE;\n }\n \n ;\n if ((ja.type === u.TRIGGER_CLICK)) {\n ja.callback = t.setActiveSectionID.curry(this.id);\n };\n var ka = w({\n displayCallback: function(la) {\n i.remove(ja.node);\n la();\n },\n options: {\n append: true\n }\n }, this.getDefaultPageletConfig());\n ka.data.overview = this.isOverview();\n this._triggerLoader = null;\n this._contentLoader = new u(ka, [ja,]);\n }.bind(this));\n },\n _createNode: function() {\n var ha = this.parent._createNode();\n ha.setAttribute(\"aria-role\", \"tabpanel\");\n return ha;\n },\n createTriggerLoader: function() {\n q.subscribe(\"Medley/requestDataSet\", function() {\n var ha = this.getDefaultPageletConfig(), ia = {\n callback: fa.curry(this, ha),\n node: this._tabNode,\n type: u.TRIGGER_CLICK\n };\n this._triggerLoader = new u(ha, [ia,]);\n }.bind(this));\n },\n disableContentLoader: function() {\n (this._contentLoader && this._contentLoader.disableTriggers());\n },\n enableContentLoader: function() {\n var ha = (this._triggerLoader || this._contentLoader);\n (ha && ha.enableTriggers());\n },\n freeze: function() {\n this._isFrozen = true;\n if ((!this._contentLoader || this._contentLoader._loading)) {\n return\n };\n this._contentLoader.removeTriggers(u.TRIGGER_ONVISIBLE);\n var ha = j.scry(this.getNode(), \".-cx-PRIVATE-fbTimelineMedleyPager__root\");\n if (!ha.length) {\n var ia = j.scry(this.getNode(), \".-cx-PRIVATE-fbTimelineMedley__throbber\")[0];\n (ia.length && this.addContentLoader(ia, this._cursor));\n }\n ;\n },\n getCount: function() {\n return this._tabCount;\n },\n getDefaultPageletConfig: function() {\n return {\n controller: this._controller,\n data: w({\n collection_token: this._token,\n cursor: this._cursor\n }, l.get(), {\n ftid: this._ftid,\n order: this._order\n }, {\n sk: this._parentSection._sk\n }),\n node: this.getNode()\n };\n },\n getMedleySiteKey: function() {\n return this._parentSection._parentSection._sk;\n },\n flashCountIf: function() {\n if ((this._parentSection.getActiveCollection() != this)) {\n h.addClass(this._tabNode, \"-cx-PRIVATE-fbTimelineAppSection__tabhightlight\");\n setTimeout(h.removeClass.curry(this._tabNode, \"-cx-PRIVATE-fbTimelineAppSection__tabhightlight\"), 800);\n }\n ;\n },\n isOverview: function() {\n return (this._parentSection._sk != this._parentSection._parentSection._sk);\n },\n registerAuxContent: function(ha) {\n this.auxContent = ha;\n if ((ha.nodeType == 11)) {\n this.auxContent = i.create(\"span\", null, ha);\n };\n if ((this._parentSection._activeCollection !== this)) {\n h.hide(this.auxContent);\n };\n this._parentSection.addAuxContent(this.auxContent);\n },\n registerAddCurationContent: function(ha, ia, ja) {\n if (this.curationContent) {\n return\n };\n this.curationContent = (((ha.nodeType == 11)) ? i.create(\"span\", null, ha) : ha);\n this.curationContentState = ia;\n this._parentSection.addCurationContent(this.curationContent, this, ja);\n },\n nullStateCurationContent: function() {\n this._parentSection.nullStateCurationContent();\n },\n registerSortContent: function(ha, ia) {\n (this._sortContent && i.remove(this._sortContent));\n this._sortContent = ha;\n ia.subscribeOnce(\"change\", function(ja, ka) {\n i.setContent(i.find(ha, \".-cx-PRIVATE-fbTimelineCollectionSorting__menulabel\"), ka.label);\n this._sort(ka.value);\n }.bind(this));\n },\n refreshCount: function() {\n if (!this._tabNode) {\n return\n };\n var ha = j.find(this._tabNode, \".-cx-PRIVATE-fbTimelineAppSection__tabcount\");\n if ((this._tabCount > 0)) {\n i.setContent(ha, z.formatNumber(this._tabCount, 0, m.numberDelimiter, \"\"));\n }\n else i.setContent(ha, \"\");\n ;\n },\n _resetContent: function() {\n (this._contentLoader && this._contentLoader.destroy());\n i.remove(this.getNode());\n this._node = null;\n i.appendContent(j.find(this._parentSection.getNode(), \"div.-cx-PRIVATE-fbTimelineAppSection__collectionswrapper\"), this.getNode());\n this.addContentLoader(j.find(this.getNode(), \".-cx-PRIVATE-fbTimelineMedley__throbber\"), 0);\n },\n setFTID: function(ha) {\n this._ftid = ha;\n },\n _sort: function(ha) {\n this._order = ha;\n this._resetContent();\n var ia = this._parentSection, ja = ia._parentSection;\n if ((!ja.isMedleyView() && (ia._sk === ja._sk))) {\n var ka = n.getCurrentURI();\n ka.addQueryData({\n order: this._order\n });\n n.rewriteCurrentURI(n.getCurrentURI().getUnqualifiedURI(), ka);\n }\n ;\n },\n thaw: function() {\n this._isFrozen = false;\n },\n getToken: function() {\n return this._token;\n }\n });\n e.exports = ga;\n});\n__d(\"TimelineAppSectionCuration\", [\"Animation\",\"AppSectionCurationState\",\"Arbiter\",\"AsyncSignal\",\"CSS\",\"DOM\",\"Ease\",\"Event\",\"OnVisible\",\"Parent\",\"Style\",\"TidyArbiterMixin\",\"TimelineSection\",\"copyProperties\",\"cx\",\"queryThenMutateDOM\",\"tidyEvent\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"AppSectionCurationState\"), i = b(\"Arbiter\"), j = b(\"AsyncSignal\"), k = b(\"CSS\"), l = b(\"DOM\"), m = b(\"Ease\"), n = b(\"Event\"), o = b(\"OnVisible\"), p = b(\"Parent\"), q = b(\"Style\"), r = b(\"TidyArbiterMixin\"), s = b(\"TimelineSection\"), t = b(\"copyProperties\"), u = b(\"cx\"), v = b(\"queryThenMutateDOM\"), w = b(\"tidyEvent\"), x = 0, y = {\n }, z = {\n };\n function aa(fa, ga, ha) {\n var ia, ja, ka = (((ga != h.hide)) && ((ha != h.hide)));\n v(function() {\n ja = fa.offsetHeight;\n ia = ((ga === h.hide) ? 0 : fa.firstChild.offsetHeight);\n }, function() {\n q.set(fa, \"height\", (ja + \"px\"));\n q.set(fa, \"overflow\", \"hidden\");\n (ia && k.addClass(fa.parentNode, \"-cx-PUBLIC-fbTimelineAppSection__curationopen\"));\n o.checkBuffer.defer();\n var la = l.getID(fa);\n (z[la] && z[la].stop());\n z[la] = new g(fa).to(\"height\", ia).ondone(function() {\n delete z[la];\n if (ia) {\n q.set(fa, \"overflow\", \"\");\n q.set(fa.parentNode, \"overflow\", \"\");\n }\n ;\n (!ia && k.removeClass(fa.parentNode, \"-cx-PUBLIC-fbTimelineAppSection__curationopen\"));\n i.inform(\"reflow\");\n }).duration((Math.abs((ia - ja)) * ((ka ? 5 : 1.5)))).ease(m.sineOut).go();\n });\n };\n function ba(fa, ga) {\n if (fa) {\n k.show(ga);\n k.hide(fa);\n }\n ;\n };\n function ca(fa, ga) {\n if (fa) {\n k.show(fa);\n k.hide(ga);\n }\n ;\n };\n function da(fa, ga) {\n s.callWithSection(fa, function(ha) {\n new j(\"/ajax/timeline/collections/app_recs/\", {\n collection_token: ha.getActiveCollection().getToken(),\n event_type: ga\n }).send();\n });\n };\n var ea = t({\n addSection: function(fa, ga, ha) {\n y[fa] = {\n appClickLogged: false,\n buttons: ga,\n content: ha,\n id: fa,\n state: h.hide\n };\n q.set(ha, \"height\", \"0px\");\n q.set(ha, \"overflow\", \"hidden\");\n k.show(ha);\n for (var ia in ga) {\n w([n.listen(ga[ia].hide_button, \"click\", ea.informState.curry(h.hide, fa)),n.listen(ga[ia].show_button, \"click\", ea.informState.curry(ia, fa)),]);;\n };\n ea.register(fa, function(ja, ka, la, ma) {\n new o(ha, aa.curry(ha, ja, ma), true, x);\n for (var na in ga) {\n ca(ga[na].show_button, ga[na].hide_button);;\n };\n if (ga[ja]) {\n ba(ga[ja].show_button, ga[ja].hide_button);\n };\n });\n },\n informState: function(fa, ga) {\n if ((y[ga] && (y[ga].state !== fa))) {\n if (((fa === h.showApps) && !y[ga].appClickLogged)) {\n y[ga].appClickLogged = true;\n da(ga, \"add_apps_click\");\n }\n ;\n var ha = y[ga].state;\n y[ga].state = fa;\n ea.inform(fa, {\n obj: y[ga],\n oldState: ha\n });\n }\n ;\n },\n refreshState: function(fa, ga) {\n ea.inform(fa, {\n obj: y[ga],\n oldState: fa\n });\n },\n linkContent: function(fa, ga, ha) {\n var ia = y[fa].buttons[h.showApps].show_button;\n k.show(p.byClass(ia, \"hidden_elem\"));\n new o(ia, function() {\n if ((Math.floor((Math.random() * 100)) === 0)) {\n da(fa, \"add_apps_imp\");\n };\n }, true, x);\n ea.register(fa, function(ja, ka, la, ma) {\n if ((ja == h.showItems)) {\n if ((ma == h.showApps)) {\n q.set(y[fa].content.parentNode, \"overflow\", \"hidden\");\n };\n k.show(ga);\n k.hide(ha);\n }\n else if ((ja == h.showApps)) {\n k.hide(ga);\n k.show(ha);\n }\n \n ;\n });\n },\n register: function(fa, ga) {\n var ha = ea.subscribe([h.hide,h.showItems,h.showApps,], function(ia, ja) {\n if ((ja.obj.id === fa)) {\n ga(ia, ja.obj, ha, ja.oldState);\n };\n });\n },\n getSectionState: function(fa) {\n if (y[fa]) {\n return y[fa].state\n };\n }\n }, r);\n e.exports = ea;\n});\n__d(\"TimelineMonitor\", [\"Arbiter\",\"Event\",\"Run\",\"Vector\",\"ViewportBounds\",\"ge\",\"queryThenMutateDOM\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Event\"), i = b(\"Run\"), j = b(\"Vector\"), k = b(\"ViewportBounds\"), l = b(\"ge\"), m = b(\"queryThenMutateDOM\"), n = {\n }, o = {\n }, p = 0, q = [], r = null, s = false;\n function t() {\n n = {\n };\n o = {\n };\n p = 0;\n q.length = 0;\n (r && r.remove());\n r = null;\n s = false;\n };\n function u() {\n if (!r) {\n r = h.listen(window, \"scroll\", z);\n };\n if (!s) {\n i.onLeave(t);\n s = true;\n }\n ;\n z();\n };\n var v = [], w = [];\n function x() {\n q.forEach(function(ea) {\n var fa = aa.getSection(ea);\n if ((fa && (fa !== o[ea.id]))) {\n o[ea.id] = fa;\n v.push({\n section: fa\n });\n }\n ;\n });\n var ba = (k.getTop() + j.getScrollPosition().y);\n for (var ca in n) {\n var da = n[ca];\n if (((((ba >= da.boundary) && (p <= da.boundary))) || (((ba <= da.boundary) && (p >= da.boundary))))) {\n n[ca].fromAbove = (p < ba);\n w.push(n[ca]);\n }\n ;\n };\n p = ba;\n };\n function y() {\n v.forEach(function(ba) {\n g.inform(aa.SECTION_CHANGE, ba);\n });\n w.forEach(function(ba) {\n g.inform(aa.BOUNDARY_PASSED, ba);\n });\n v.length = 0;\n w.length = 0;\n };\n function z() {\n m(x, y, \"TimelineMonitor/scroll\");\n };\n var aa = {\n BOUNDARY_PASSED: \"TimelineMonitor/boundary\",\n SECTION_CHANGE: \"TimelineMonitor/change\",\n getSection: function(ba) {\n var ca = (k.getTop() + j.getScrollPosition().y), da = ba.childSections.getHead();\n while (da) {\n if ((l(da.nodeID) && (ca < (j.getElementPosition(da.getNode()).y + j.getElementDimensions(da.getNode()).y)))) {\n return da\n };\n da = da.getNext();\n };\n },\n monitorBoundary: function(ba, ca) {\n ca = (ca || ba);\n if ((!n[ca] || (n[ca].boundary !== ba))) {\n n[ca] = {\n boundary: ba,\n id: ca\n };\n u();\n }\n ;\n },\n monitorSection: function(ba) {\n o[ba.id] = null;\n q.push(ba);\n u();\n return aa.getSection(ba);\n },\n poke: function(ba) {\n z();\n }\n };\n e.exports = aa;\n});\n__d(\"TimelineAppSection\", [\"AppSectionCurationState\",\"Arbiter\",\"Class\",\"CSS\",\"DOM\",\"DOMQuery\",\"DOMScroll\",\"JSLogger\",\"MedleyPageletRequestData\",\"PageletSet\",\"Style\",\"TidyArbiter\",\"TidyArbiterMixin\",\"TimelineAppCollection\",\"TimelineAppSectionCuration\",\"TimelineDynamicSection\",\"TimelineMonitor\",\"TimelineSection\",\"TimelineSmartInsert\",\"TriggerablePageletLoader\",\"ViewportBounds\",\"copyProperties\",\"csx\",\"cx\",\"ge\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"AppSectionCurationState\"), h = b(\"Arbiter\"), i = b(\"Class\"), j = b(\"CSS\"), k = b(\"DOM\"), l = b(\"DOMQuery\"), m = b(\"DOMScroll\"), n = b(\"JSLogger\"), o = b(\"MedleyPageletRequestData\"), p = b(\"PageletSet\"), q = b(\"Style\"), r = b(\"TidyArbiter\"), s = b(\"TidyArbiterMixin\"), t = b(\"TimelineAppCollection\"), u = b(\"TimelineAppSectionCuration\"), v = b(\"TimelineDynamicSection\"), w = b(\"TimelineMonitor\"), x = b(\"TimelineSection\"), y = b(\"TimelineSmartInsert\"), z = b(\"TriggerablePageletLoader\"), aa = b(\"ViewportBounds\"), ba = b(\"copyProperties\"), ca = b(\"csx\"), da = b(\"cx\"), ea = b(\"ge\"), fa = b(\"tx\"), ga = 500, ha = 2, ia = 500, ja = 18, ka = \"-cx-PRIVATE-fbTimelineAppSection__tabscondensed\", la = \"-cx-PRIVATE-fbTimelineAppSection__activetab\", ma = k.create(\"div\", {\n className: \"-cx-PRIVATE-fbTimelineAppSection__tabnub\"\n });\n function na() {\n return k.create(\"span\", {\n className: \"-cx-PRIVATE-fbTimelineAppSection__tabdropdown\"\n }, [k.create(\"a\", {\n className: \"-cx-PRIVATE-fbTimelineAppSection__tabdropdownlabel\",\n href: \"#\"\n }, \"More\"),k.create(\"span\", {\n className: \"-cx-PRIVATE-fbTimelineAppSection__tabdropdownoverflow\"\n }),]);\n };\n var oa = n.create(\"collections\"), pa = {\n notes: 295,\n events: 345,\n photos: 555,\n app_quoraapp: 569,\n friends: 603,\n app_foodspotting: 621,\n map: 621,\n favorites: 645,\n app_pinterestapp: 699,\n app_instapp: 699,\n books: 699,\n movies: 699,\n tv: 699,\n music: 725\n };\n function qa(sa) {\n return pa[sa.replace(\"pagelet_timeline_medley_\", \"\")];\n };\n function ra(sa, ta, ua, va) {\n this.parent.construct(this, ra.getIDBySK(ta), sa, ua);\n this._sk = ta;\n this._title = va;\n };\n i.extend(ra, v);\n ba(ra, {\n createFromArray: function(sa) {\n return sa.map(function(ta) {\n return new ra(ta.controller, ta.sk, ta.label, ta.title);\n });\n },\n getIDBySK: function(sa) {\n return (\"pagelet_timeline_medley_\" + sa);\n },\n registerCollections: function(sa, ta, ua) {\n x.callWithSection(ra.getIDBySK(sa), function(va) {\n t.createFromArray(ta).forEach(va.appendSection.bind(va));\n var wa = va.childSections.get(ua);\n va.setActiveCollection(wa);\n wa.setIsLoaded(true);\n });\n },\n removeEmptyAppSection: function(sa) {\n x.callWithSection(ra.getIDBySK(sa), function(ta) {\n ta.remove();\n });\n }\n }, s);\n ba(ra.prototype, s, {\n _createNode: function() {\n var sa = this.parent._createNode();\n sa.setAttribute(\"aria-labelledby\", (\"medley_header_\" + this._sk));\n sa.setAttribute(\"aria-role\", \"region\");\n k.prependContent(sa, k.create(\"div\", {\n className: \"-cx-PRIVATE-fbTimelineAppSection__header\"\n }, [this._title,k.create(\"div\", {\n className: \"-cx-PRIVATE-fbTimelineAppSection__tabs\",\n \"aria-role\": \"tablist\"\n }),]));\n this.resetMinHeight(sa);\n return sa;\n },\n addAuxContent: function(sa) {\n var ta = l.scry(this.getNode(), \".-cx-PRIVATE-fbTimelineAppSection__aux\")[0];\n (ta && k.appendContent(ta, sa));\n (this._activeCollection && this._checkTabDimensions(this._activeCollection));\n },\n nullStateCurationContent: function() {\n if (!this._nullStateContent) {\n return\n };\n var sa = l.find(this.getNode(), \".-cx-PRIVATE-fbTimelineAppSection__addcuration\");\n k.replace(sa.firstChild, this._nullStateContent);\n },\n addCurationContent: function(sa, ta, ua) {\n var va = l.scry(this.getNode(), \".-cx-PRIVATE-fbTimelineAppSection__addcuration\")[0];\n (va && k.appendContent(va, sa));\n if (ua) {\n this._nullStateContent = ua;\n };\n this._checkCurationContent(ta);\n },\n createTriggerLoader: function(sa) {\n var ta = function(ua) {\n this._parentSection._lastLoadedSection = this;\n this.setIsLoaded(true);\n y.enable();\n y.run(this.getNode(), function() {\n ua();\n this.unsetMinHeight();\n w.poke(this._parentSection.id);\n }.bind(this), \"viewport\");\n }.bind(this);\n r.subscribe(\"Medley/requestDataSet\", function() {\n this._triggerLoader = new z({\n controller: this._controller,\n data: this.getData(),\n displayCallback: ta,\n options: {\n constHeight: true\n },\n node: this.getNode()\n }, [{\n node: this.getNode(),\n onVisibleBuffer: ga,\n onVisibleStrict: true,\n type: (sa ? z.TRIGGER_NOW : z.TRIGGER_ONVISIBLE)\n },]);\n }.bind(this));\n },\n freeze: function() {\n j.addClass(this.getNode(), \"-cx-PRIVATE-fbTimelineMedley__frozensection\");\n if ((ea(this.nodeID) && !this.isLoaded())) {\n (this._triggerLoader && this._triggerLoader.disableTriggers());\n };\n this.freezeChildren();\n },\n getData: function() {\n if (!this._data) {\n this._data = ba({\n sk: this._sk\n }, o.get(), {\n overview: (this._parentSection._sk !== this._sk)\n });\n };\n return this._data;\n },\n getActiveCollection: function() {\n return this._activeCollection;\n },\n remove: function() {\n if (p.hasPagelet(this.id)) {\n p.removePagelet(this.id);\n };\n k.remove(this.getNode());\n this._parentSection.childSections.remove(this.id);\n },\n setActiveCollection: function(sa) {\n if (((this._activeCollection === sa) || !sa._tabNode)) {\n return\n };\n if (this._activeCollection) {\n h.inform(\"TimelineSideAds/refresh\");\n oa.log(\"change_collection\", {\n previous_collection: this._activeCollection.getToken(),\n new_collection: sa.getToken()\n });\n this.resetMinHeight();\n this._activeCollection.disableContentLoader();\n j.hide(this._activeCollection.getNode());\n j.removeClass(this._activeCollection._tabNode, la);\n k.scry(this._activeCollection._tabNode, \"div.-cx-PRIVATE-fbTimelineAppSection__tabnub\").forEach(k.remove);\n k.appendContent(sa._tabNode, ma.cloneNode(true));\n (this._activeCollection.auxContent && j.hide(this._activeCollection.auxContent));\n (this._activeCollection.curationContent && j.hide(this._activeCollection.curationContent));\n this._activeCollection._tabNode.setAttribute(\"aria-selected\", \"false\");\n }\n ;\n (sa.auxContent && j.show(sa.auxContent));\n this._checkCurationContent(sa);\n j.addClass(sa._tabNode, la);\n this._checkTabDimensions(sa);\n this._activeCollection = sa;\n ra.inform(\"changeCollection\");\n if (!ea(sa.nodeID)) {\n k.appendContent(l.find(this.getNode(), \"div.-cx-PRIVATE-fbTimelineAppSection__collectionswrapper\"), sa.getNode());\n };\n j.show(sa.getNode());\n (sa.isLoaded() && this.unsetMinHeight());\n sa._tabNode.setAttribute(\"aria-selected\", \"true\");\n sa.enableContentLoader();\n },\n resetMinHeight: function(sa) {\n (sa || (sa = this.getNode()));\n var ta = (qa(this.id) || (sa.offsetHeight - ha));\n ((ta > 0) && this._updateScrollAfterHeight(sa, ta));\n },\n scrollTo: function(sa, ta) {\n var ua = aa.getElementPosition(this.getNode());\n ua.y -= (sa || ja);\n (ta && this._parentSection.toggleScrollLoad(false));\n m.scrollTo(ua, ia, null, null, function() {\n ua = aa.getElementPosition(this.getNode());\n ua.y -= (sa || ja);\n m.scrollTo(ua);\n (ta && this._parentSection.toggleScrollLoad(true));\n }.bind(this));\n },\n thaw: function() {\n j.removeClass(this.getNode(), \"-cx-PRIVATE-fbTimelineMedley__frozensection\");\n (this._triggerLoader && this._triggerLoader.enableTriggers());\n this.thawChildren();\n },\n unsetMinHeight: function() {\n this._updateScrollAfterHeight(this.getNode(), 0);\n },\n _updateScrollAfterHeight: function(sa, ta) {\n q.set(sa, \"min-height\", (ta + \"px\"));\n h.inform(\"reflow\");\n },\n _checkCurationContent: function(sa) {\n var ta = l.scry(this.getNode(), \".-cx-PRIVATE-fbTimelineAppSection__addcurationbutton\")[0];\n if (ta) {\n j.conditionShow(ta, sa.curationContent);\n if (sa.curationContent) {\n j.show(sa.curationContent);\n if (sa.curationContentState) {\n u.informState(sa.curationContentState, this.id);\n };\n }\n else u.informState(g.hide, this.id, g.showItems);\n ;\n }\n ;\n },\n _getTabObj: function() {\n if (!this._tabObj) {\n this._tabObj = {\n aux: k.find(this.getNode(), \".-cx-PRIVATE-fbTimelineAppSection__aux\"),\n items: [],\n nav: k.find(this.getNode(), \".-cx-PRIVATE-fbTimelineAppSection__navigation\"),\n tabs: k.find(this.getNode(), \".-cx-PRIVATE-fbTimelineAppSection__tabs\"),\n width: 0\n };\n j.addClass(this._tabObj.tabs, \"-cx-PRIVATE-fbTimelineAppSection__tabsloaded\");\n }\n ;\n return this._tabObj;\n },\n _checkTabDimensions: function(sa) {\n var ta = this._getTabObj(), ua = (ta.nav.offsetWidth - ta.aux.offsetWidth);\n if ((ua >= ta.width)) {\n if ((!ta.hidden && ((ua - ta.tabs.offsetWidth) >= 0))) {\n return\n };\n j.removeClass(ta.tabs, ka);\n }\n ;\n if ((ta.hidden && (sa._tabNode.parentNode === ta.overflow))) {\n k.prependContent(ta.overflow, ta.dropdown.previousSibling);\n k.insertBefore(ta.dropdown, sa._tabNode);\n }\n ;\n if ((((ua - ta.tabs.offsetWidth) >= 0) && !ta.hidden)) {\n return\n };\n var va = ta.items.length;\n if ((va && ta.hidden)) {\n for (var wa = 0; (wa < va); wa++) {\n k.appendContent(ta.tabs, ta.items[wa]);;\n };\n k.remove(ta.dropdown);\n }\n ;\n j.conditionClass(ta.tabs, ka, ((ua - ta.tabs.offsetWidth) < 0));\n ta.width = ua;\n ta.hidden = 0;\n if (((ua - ta.tabs.offsetWidth) >= 0)) {\n return\n };\n if (!ta.dropdown) {\n ta.dropdown = na();\n ta.overflow = k.find(ta.dropdown, \".-cx-PRIVATE-fbTimelineAppSection__tabdropdownoverflow\");\n ta.items = k.scry(this.getNode(), \".-cx-PRIVATE-fbTimelineAppSection__tab\");\n va = ta.items.length;\n }\n ;\n k.appendContent(ta.tabs, ta.dropdown);\n var xa = 0;\n for (wa = (va - 1); ((wa > 0) && (xa <= 0)); wa--) {\n if ((ta.items[wa] !== sa._tabNode)) {\n k.prependContent(ta.overflow, ta.items[wa]);\n xa = (ua - ta.tabs.offsetWidth);\n ta.hidden++;\n }\n ;\n };\n }\n });\n e.exports = ra;\n});\n__d(\"TimelineDrag\", [\"Event\",\"ArbiterMixin\",\"Locale\",\"Style\",\"Vector\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"ArbiterMixin\"), i = b(\"Locale\"), j = b(\"Style\"), k = b(\"Vector\"), l = b(\"copyProperties\");\n function m(n, o, p) {\n p = (p || {\n });\n this._listenOn = p.listenOn;\n this._offsetInput = o;\n this._defaultOffset = p.default_offset;\n this._killClicks = p.killClicks;\n this._vertical = true;\n this._RTLXSwitch = false;\n this.setPicture(n, p);\n };\n l(m.prototype, h, {\n setPicture: function(n, o) {\n if (!n) {\n return false\n };\n o = (o || {\n });\n this._picture = n;\n this._defaultOffset = o.default_offset;\n if (o.offsetInput) {\n this._offsetInput = o.offsetInput;\n };\n if ((o.vertical !== undefined)) {\n this._vertical = o.vertical;\n };\n if (o.height) {\n this._containerHeight = o.height;\n };\n if (o.width) {\n this._containerWidth = o.width;\n };\n if (this._vertical) {\n this._offsetType = \"top\";\n this._eventCoord = \"y\";\n }\n else {\n this._RTLXSwitch = i.isRTL();\n this._offsetType = \"left\";\n this._eventCoord = \"x\";\n }\n ;\n if (this._picture.complete) {\n this._initialLoad();\n }\n else this._loadListener = g.listen(this._picture, \"load\", function() {\n this._loadListener.remove();\n this._initialLoad();\n }.bind(this));\n ;\n },\n destroy: function() {\n this._stopDrag();\n this._saveOffset();\n (this._mousedown && this._mousedown.remove());\n (this._onclick && this._onclick.remove());\n (this._loadListener && this._loadListener.remove());\n },\n _initialLoad: function() {\n var n = (this._listenOn ? this._listenOn : this._picture);\n (this._mousedown && this._mousedown.remove());\n this._mousedown = g.listen(n, \"mousedown\", this._onMouseDown.bind(this));\n if (this._vertical) {\n this._maxOffset = (this._containerHeight - this._picture.offsetHeight);\n }\n else this._maxOffset = (this._containerWidth - this._picture.offsetWidth);\n ;\n if ((this._defaultOffset !== undefined)) {\n this._setOffset(this._defaultOffset);\n };\n (this._onclick && this._onclick.remove());\n if (this._killClicks) {\n this._onclick = g.listen(n, \"click\", this._onClick.bind(this));\n };\n this._saveOffset();\n },\n _onClick: function(event) {\n event.kill();\n },\n _onMouseDown: function(event) {\n var n = (parseInt(j.get(this._picture, this._offsetType), 10) || 0);\n this._pictureStartDragOffset = (n - k.getEventPosition(event)[this._eventCoord]);\n this._startDrag();\n event.kill();\n },\n _startDrag: function() {\n if (!this._dragStarted) {\n this.inform(\"startdrag\", this);\n this._dragTokens = [g.listen(document.documentElement, \"mouseup\", this._onMouseUp.bind(this)),g.listen(document.documentElement, \"mousemove\", this._onMouseMove.bind(this)),];\n this._dragStarted = true;\n }\n ;\n },\n _saveOffset: function() {\n var n = parseInt(j.get(this._picture, this._offsetType), 10);\n if (this._RTLXSwitch) {\n this._offsetInput.value = ((n + this._containerWidth) - this._picture.offsetWidth);\n }\n else this._offsetInput.value = n;\n ;\n },\n _stopDrag: function() {\n if (this._dragStarted) {\n this.inform(\"stopdrag\", this);\n this._dragStarted = false;\n this._dragTokens.forEach(function(n) {\n n.remove();\n });\n this._saveOffset();\n }\n ;\n },\n _onMouseUp: function(event) {\n this._stopDrag();\n event.kill();\n },\n _setOffset: function(n) {\n if (this._RTLXSwitch) {\n n = Math.max(0, Math.min(n, -this._maxOffset));\n }\n else n = Math.min(0, Math.max(n, this._maxOffset));\n ;\n j.set(this._picture, this._offsetType, (n + \"px\"));\n },\n _onMouseMove: function(event) {\n this._setOffset((this._pictureStartDragOffset + k.getEventPosition(event)[this._eventCoord]));\n event.kill();\n }\n });\n e.exports = m;\n});\n__d(\"TimelineCover\", [\"Arbiter\",\"Button\",\"CSS\",\"DOM\",\"HTML\",\"Parent\",\"DOMScroll\",\"TimelineController\",\"TimelineDrag\",\"Style\",\"Vector\",\"$\",\"copyProperties\",\"cx\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Button\"), i = b(\"CSS\"), j = b(\"DOM\"), k = b(\"HTML\"), l = b(\"Parent\"), m = b(\"DOMScroll\"), n = b(\"TimelineController\"), o = b(\"TimelineDrag\"), p = b(\"Style\"), q = b(\"Vector\"), r = b(\"$\"), s = b(\"copyProperties\"), t = b(\"cx\"), u = b(\"ge\");\n function v(w, x, y) {\n this.root = r(\"fbProfileCover\");\n if ((typeof x === \"object\")) {\n this._coverHeight = x.cover_height;\n this._coverWidth = x.cover_width;\n this.previewing = x.previewing;\n this._isLegacy = false;\n }\n else {\n this._isLegacy = true;\n this._coverHeight = x;\n this.previewing = y;\n }\n ;\n this._parentSection = l.byClass(this.root, \"fbTimelineSection\");\n this.cover = j.find(this.root, \".cover\");\n v.instance = this;\n this.editing = false;\n if (!this._parentSection) {\n this._parentSection = l.byClass(this.root, \"fbEventHeader\");\n };\n if (this.previewing) {\n this.editMode();\n this.updateCoverImage(this.previewing);\n }\n ;\n };\n v.instance = null;\n v.getInstance = function() {\n return v.instance;\n };\n s(v.prototype, {\n showLoadingIndicator: function() {\n var w = u(\"fbCoverImageContainer\");\n if (w) {\n i.addClass(w, \"opaquedLoading\");\n };\n },\n hideLoadingIndicator: function() {\n var w = u(\"fbCoverImageContainer\");\n if (w) {\n i.removeClass(w, \"opaquedLoading\");\n };\n },\n isCoverImageVerticalFlow: function(w) {\n return !(w.style.height);\n },\n editMode: function() {\n h.setEnabled(j.find(this.root, \"button.cancelButton\"), true);\n h.setEnabled(j.find(this.root, \"button.saveButton\"), true);\n this.hideLoadingIndicator();\n this._coverImage = j.scry(this.root, \".coverImage\")[0];\n var w = j.scry(this._coverImage, \".coverWrap\")[0];\n if (w) {\n var x = j.find(w, \".coverPhotoImg\");\n this._originalIsVertical = this.isCoverImageVerticalFlow(x);\n this._originalOffset = p.get(x, (this._originalIsVertical ? \"top\" : \"left\"));\n }\n ;\n i.addClass(this._parentSection, \"fbEditCover\");\n m.scrollTo(this.root);\n if (this.previewing) {\n j.remove(this._coverImage);\n i.show(this._coverImage);\n }\n ;\n var y = j.scry(this._coverImage, \".coverPhotoImg\")[0];\n if (y) {\n this._createDragger();\n };\n this.editing = true;\n g.inform(\"CoverPhotoEdit\", {\n sender: this,\n state: \"open\"\n });\n },\n _exitEditMode: function() {\n if (this._timelineDrag) {\n this._timelineDrag.destroy();\n this._timelineDrag = null;\n }\n ;\n j.find(this.root, \"input.hiddenPhotoID\").value = null;\n j.find(this.root, \"input.hiddenVideoID\").value = null;\n h.setEnabled(j.find(this.root, \"button.cancelButton\"), false);\n h.setEnabled(j.find(this.root, \"button.saveButton\"), false);\n i.removeClass(this._parentSection, \"fbEditCover\");\n this.hideLoadingIndicator();\n this.previewing = false;\n g.inform(\"CoverPhotoEdit\", {\n sender: this,\n state: \"closed\"\n });\n },\n _createDragger: function(w) {\n var x;\n if (this._isLegacy) {\n x = j.find(this.root, \"input.photoOffsetInput\");\n this._originalIsVertical = true;\n }\n else {\n var y = ((w === undefined) ? this._originalIsVertical : w);\n x = (y ? j.find(this.root, \"input.photoOffsetYInput\") : j.find(this.root, \"input.photoOffsetXInput\"));\n }\n ;\n this._timelineDrag = new o(j.find(this.root, \".coverImage .coverPhotoImg\"), x, {\n height: this._coverHeight,\n width: this._coverWidth,\n listenOn: this.cover,\n vertical: y,\n killClicks: true\n });\n },\n updateCoverImage: function(w, x, y) {\n this.videoID = y;\n if (x) {\n this.editMode();\n };\n j.find(this.root, \"input.hiddenPhotoID\").value = w;\n j.find(this.root, \"input.hiddenVideoID\").value = (y || null);\n h.setEnabled(j.find(this.root, \"button.saveButton\"), true);\n if (x) {\n j.replace(j.find(this.root, \".coverImage\"), k(x));\n };\n var z = j.find(j.find(this.root, \".coverImage\"), \".coverPhotoImg\"), aa = this.isCoverImageVerticalFlow(z), ba;\n if (this._isLegacy) {\n ba = j.find(this.root, \"input.photoOffsetInput\");\n }\n else ba = (aa ? j.find(this.root, \"input.photoOffsetYInput\") : j.find(this.root, \"input.photoOffsetXInput\"));\n ;\n if (this._timelineDrag) {\n this._timelineDrag.setPicture(z, {\n offsetInput: ba,\n vertical: aa\n });\n }\n else this._createDragger(aa);\n ;\n },\n cancelUpdate: function() {\n j.remove(j.scry(this.root, \".coverImage\")[0]);\n j.prependContent(this.cover, this._coverImage);\n if ((this._originalOffset !== undefined)) {\n p.set(j.find(this._coverImage, \".coverPhotoImg\"), (this._originalIsVertical ? \"top\" : \"left\"), this._originalOffset);\n };\n this._exitEditMode();\n },\n saveComplete: function() {\n this._coverImage = j.scry(this.root, \".coverImage\")[0];\n var w = l.byClass(this.root, \"fbTimelineTopSectionBase\");\n (w && i.removeClass(w, \"-cx-PRIVATE-fbTimelineLightHeader__nocover\"));\n this._exitEditMode();\n },\n isInEditMode: function() {\n return this.editing;\n }\n });\n e.exports = v;\n});\n__d(\"TimelineCoverDisclaimer\", [\"Dialog\",], function(a, b, c, d, e, f) {\n var g = b(\"Dialog\");\n function h(i, j, k) {\n if ((h.displayed === undefined)) {\n h.displayed = true;\n }\n else return\n ;\n new g().setModal(true).setTitle(i).setBody(j).setButtonsMessage(k).setButtons(g.OK).show();\n };\n e.exports = h;\n});\n__d(\"legacy:TimelineCoverDisclaimer\", [\"TimelineCoverDisclaimer\",], function(a, b, c, d) {\n a.TimelineCoverDisclaimer = b(\"TimelineCoverDisclaimer\");\n}, 3);\n__d(\"TimelineMedley\", [\"Class\",\"CSS\",\"DOM\",\"DOMPosition\",\"DOMQuery\",\"PageTransitions\",\"TimelineAppSection\",\"TimelineDynamicSectionConfig\",\"TimelineMonitor\",\"TimelineSection\",\"URI\",\"ViewportBounds\",\"copyProperties\",\"csx\",\"cx\",\"ge\",\"$\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"CSS\"), i = b(\"DOM\"), j = b(\"DOMPosition\"), k = b(\"DOMQuery\"), l = b(\"PageTransitions\"), m = b(\"TimelineAppSection\"), n = b(\"TimelineDynamicSectionConfig\"), o = b(\"TimelineMonitor\"), p = b(\"TimelineSection\"), q = b(\"URI\"), r = b(\"ViewportBounds\"), s = b(\"copyProperties\"), t = b(\"csx\"), u = b(\"cx\"), v = b(\"ge\"), w = b(\"$\"), x = \"timeline-medley\", y = \"about\", z = 2, aa = false;\n function ba(ea) {\n var fa = (ea.getQueryData().sk || ea.getPath().split(\"/\")[2]);\n return (n.skmapping[fa] || fa);\n };\n function ca(ea) {\n if (ea.getQueryData().id) {\n return ea.getQueryData.id\n };\n return ea.getPath().split(\"/\")[1];\n };\n function da(ea, fa, ga) {\n this.parent.construct(this, x);\n this.isOverview = (ea.length > 1);\n n.breaker = ga.breaker;\n m.createFromArray(ea).forEach(this.appendSection.bind(this));\n o.monitorSection(this);\n this._lastLoadedSection = this.childSections.get(m.getIDBySK(fa)).setIsLoaded(true);\n p.setActiveSectionID(this._lastLoadedSection.id);\n if ((aa && this.isMedleyView())) {\n this.addSectionPlaceholders();\n };\n var ha = q.getNextURI();\n this._vanity = ca(ha);\n this._sk = ba(ha);\n if (this.isOverview) {\n l.registerHandler(this._transitionHandler.bind(this));\n };\n };\n g.extend(da, p);\n s(da, {\n loadToSection: function(ea, fa) {\n p.setActiveSectionID(ea);\n p.callWithSection(x, function(ga) {\n var ha = ga.childSections.getHead(), ia = 0;\n while ((ha && (ha.id !== ea))) {\n ia++;\n ha = ha.getNext();\n };\n if (!ia) {\n return fa(ha)\n };\n ia--;\n (ia && ga.addUpcomingSectionPlaceholders(ga.childSections.getHead(), ia));\n ga.addSectionPlaceholder(ha, ha.getPrev(), true);\n var ja = ha.subscribe(\"loaded\", function() {\n fa(ha);\n ja.unsubscribe();\n });\n });\n },\n scrollToSection: function(ea, fa, ga) {\n p.callWithSection(ea, function(ha) {\n ha.scrollTo(fa, ga);\n });\n },\n toggleScrollLoad: function(ea) {\n aa = ea;\n p.callWithSection(x, function(fa) {\n fa.toggleScrollLoad(ea);\n });\n }\n });\n s(da.prototype, {\n addSectionTeasers: function() {\n if (!this.isMedleyView()) {\n h.removeClass(this.getNode(), \"-cx-PRIVATE-fbTimelineMedley__permafrost\");\n this.thawChildren();\n this.addSectionPlaceholders();\n this.addSectionBreak();\n }\n ;\n },\n addUpcomingSectionPlaceholders: function(ea, fa) {\n fa = (fa || z);\n while (ea = ea.getNext()) {\n if ((!this.addSectionPlaceholder(ea, ea.getPrev()) && (--fa <= 0))) {\n break;\n };\n };\n },\n addSectionPlaceholder: function(ea, fa, ga) {\n if ((!ea.isLoaded() && v(ea.nodeID))) {\n return false\n };\n if (!v(ea.nodeID)) {\n i.insertAfter(fa.getNode(), ea.getNode());\n ea.createTriggerLoader(ga);\n return false;\n }\n ;\n return true;\n },\n addSectionBreak: function() {\n if (this._lastLoadedSection.getNext()) {\n i.insertAfter(this.childSections.getHead().getNode(), n.breaker);\n }\n else i.remove(n.breaker);\n ;\n },\n addSectionPlaceholders: function() {\n this.addUpcomingSectionPlaceholders(this._lastLoadedSection);\n },\n getNode: function() {\n return w(this.id);\n },\n isMedleyView: function() {\n return (this._sk === y);\n },\n toggleScrollLoad: function(ea) {\n aa = ea;\n if (ea) {\n this.thawChildren();\n this.addSectionPlaceholders();\n }\n else this.freezeChildren();\n ;\n },\n _transitionHandler: function(ea) {\n if ((ca(ea) !== this._vanity)) {\n return false\n };\n var fa = ba(ea);\n if (!fa) {\n return false\n };\n if ((fa === y)) {\n return false;\n }\n else {\n var ga = ea.getQueryData();\n if (!ga.next_cursor) {\n return false\n };\n var ha = this.childSections.getHead();\n while (ha) {\n if ((ha._sk === fa)) {\n if ((!ha._activeCollection && !k.scry(ha._activeCollection.getNode(), \".-cx-PRIVATE-fbTimelineMedleyPager__root\")[0])) {\n return false\n };\n this._transitionToSection.bind(this, ha, ga).defer();\n return true;\n }\n ;\n ha = ha.getNext();\n };\n }\n ;\n return false;\n },\n _transitionToSection: function(ea, fa) {\n var ga = (j.getElementPosition(ea.getNode()).y - r.getTop());\n i.scry(ea.getNode(), \".-cx-PRIVATE-fbTimelineCollectionGrid__overflowitem\").forEach(function(ja) {\n h.removeClass(ja, \"-cx-PRIVATE-fbTimelineCollectionGrid__overflowitem\");\n });\n this._sk = ea._sk;\n p.setActiveSectionID(ea.id);\n ea.thaw();\n h.addClass(this.getNode(), \"-cx-PRIVATE-fbTimelineMedley__permafrost\");\n this.freezeChildren();\n var ha = k.find(ea._activeCollection.getNode(), \".-cx-PRIVATE-fbTimelineMedleyPager__root\");\n ea._activeCollection.addContentLoader(ha, fa.next_cursor);\n ea._activeCollection._contentLoader.load({\n node: ha\n });\n var ia = this.childSections.getHead();\n while ((ia && (ia.id !== ea.id))) {\n ia.remove();\n ia = this.childSections.getHead();\n };\n p.inform(\"Medley/transitionToSection\", ea.id);\n ea.scrollTo(((ga < 0) ? ga : 0));\n l.transitionComplete();\n }\n });\n e.exports = da;\n});\n__d(\"TimelineNavLight\", [\"CSS\",\"DOM\",\"DOMQuery\",\"Parent\",\"TimelineSection\",\"csx\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"CSS\"), h = b(\"DOM\"), i = b(\"DOMQuery\"), j = b(\"Parent\"), k = b(\"TimelineSection\"), l = b(\"csx\"), m = b(\"cx\");\n function n(o) {\n var p = i.scry(o, \".-cx-PRIVATE-fbTimelineNavLight__activeitem\")[0], q = i.scry(o, \".-cx-PRIVATE-fbTimelineNavLight__item\"), r = j.byClass(o, \"-cx-PRIVATE-fbTimelineLightHeader__navwrapper\").offsetWidth, s = q[(q.length - 1)];\n if (((s.offsetLeft + s.offsetWidth) > r)) {\n g.addClass(o, \"-cx-PRIVATE-fbTimelineNavLight__navminimal\");\n };\n for (var t = (q.length - 1); (t > 1); t--) {\n if (((q[t].offsetLeft + q[t].offsetWidth) > r)) {\n h.remove(q[t]);\n }\n else break;\n ;\n };\n var u = \"-cx-PUBLIC-fbTimelineLightHeader__loading\";\n g.removeClass(j.byClass(o, u), u);\n k.subscribe(\"Medley/transitionToSection\", function(v, w) {\n if ((p && (w === p.getAttribute(\"data-medley-id\")))) {\n return\n };\n (p && g.removeClass(p, \"-cx-PRIVATE-fbTimelineNavLight__activeitem\"));\n for (var x = 0; (x < q.length); ++x) {\n if ((q[x].getAttribute(\"data-medley-id\") === w)) {\n g.addClass(q[x], \"-cx-PRIVATE-fbTimelineNavLight__activeitem\");\n p = q[x];\n return;\n }\n ;\n };\n });\n };\n e.exports = n;\n});\n__d(\"TimelineOGCollectionAddSelector\", [\"AsyncRequest\",\"DOM\",\"Form\",\"TidyArbiterMixin\",\"copyProperties\",\"csx\",\"tidyEvent\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"DOM\"), i = b(\"Form\"), j = b(\"TidyArbiterMixin\"), k = b(\"copyProperties\"), l = b(\"csx\"), m = b(\"tidyEvent\");\n function n(o, p, q, r) {\n this._endpoint = q;\n this._button = o;\n this._buttonParent = o.parentNode;\n this._audienceSelector = r;\n var s = h.find(o, \".-cx-PUBLIC-fbTimelineAddSelector__menubutton\");\n n.inform(\"addButton\", {\n button: s,\n root: this._buttonParent\n });\n m([p.getMenu().subscribe(\"rendered\", function(t, u) {\n n.inform(\"menuOpened\", {\n audienceSelector: r\n });\n h.appendContent(h.find(u, \".-cx-PUBLIC-abstractMenu__border\"), r);\n }),p.subscribe(\"itemselected\", this._onChange.bind(this)),]);\n };\n k(n, j);\n k(n.prototype, j, {\n _onChange: function(o, p) {\n var q = p.getValue(), r = (this.inform(\"addedToCollection\", q) || {\n });\n new g(this._endpoint).setData(k(i.serialize(this._audienceSelector), r, {\n action: \"add\",\n collection_token: q,\n mechanism: \"add_selector\"\n })).send();\n }\n });\n e.exports = n;\n});\n__d(\"TimelineCurationNUXController\", [\"AppSectionCurationState\",\"AsyncRequest\",\"CSS\",\"DOM\",\"Event\",\"OGCollectionAddMenu\",\"TimelineOGCollectionAddSelector\",\"URI\",\"$\",\"csx\",\"cx\",\"tidyEvent\",], function(a, b, c, d, e, f) {\n var g = b(\"AppSectionCurationState\"), h = b(\"AsyncRequest\"), i = b(\"CSS\"), j = b(\"DOM\"), k = b(\"Event\"), l = b(\"OGCollectionAddMenu\"), m = b(\"TimelineOGCollectionAddSelector\"), n = b(\"URI\"), o = b(\"$\"), p = b(\"csx\"), q = b(\"cx\"), r = b(\"tidyEvent\"), s = 5, t = \"pagelet_timeline_medley_movies\", u = 165, v, w, x, y, z, aa, ba = [], ca = {\n reports: 0,\n about: 1,\n section: 2,\n section_privacy: 3,\n add_button: 4,\n privacy: 5,\n 0: \"reports\",\n 1: \"about\",\n 2: \"section\",\n 3: \"section_privacy\",\n 4: \"add_button\",\n 5: \"privacy\"\n };\n function da() {\n ba.forEach(function(na) {\n (na.button && na.button.setAttribute(\"data-hover\", \"tooltip\"));\n (na.listener && na.listener.remove());\n });\n ba.length = 0;\n };\n function ea(na) {\n if (z[na]) {\n z[na].destroy();\n delete z[na];\n ((na === \"add_button\") && da());\n }\n ;\n ((aa[na] && aa[na].parentNode) && j.remove(aa[na]));\n };\n function fa(na) {\n if (!i.hasClass(na, \"-cx-PRIVATE-fbTimelineCurationNUX__fadingout\")) {\n i.addClass(na, \"-cx-PRIVATE-fbTimelineCurationNUX__fadingout\");\n d([\"Animation\",], function(oa) {\n new oa(na).to(\"opacity\", 0).duration(300).ease(oa.ease.end).hide().go();\n });\n }\n ;\n };\n function ga(na) {\n ha(na);\n var oa = (ca[na] + 1);\n (oa && ia(ca[oa]));\n };\n function ha(na) {\n new h(\"/ajax/timeline/collections/tour/curation/\").setAllowCrossPageTransition(true).setData({\n step: na\n }).send();\n ea(na);\n };\n function ia(na) {\n y = na;\n switch (na) {\n case \"reports\":\n d([\"TimelineController\",], function(oa) {\n oa.runOnceWhenSectionFullyLoaded(function() {\n ka(j.find(o(\"timeline_tab_content\"), \".-cx-PUBLIC-timelineOneColMin__rightcapsulecontainer\"), na);\n }, \"recent\", \"0\");\n });\n break;\n case \"about\":\n v = j.scry(o(\"fbTimelineHeadline\"), \".-cx-PRIVATE-fbTimelineNavLight__item\")[1];\n w = r(k.listen(v, \"click\", function() {\n v = null;\n w.remove();\n y = \"section\";\n }));\n ka(v, na);\n break;\n case \"section\":\n if (v) {\n n(v.getAttribute(\"href\")).go();\n v = null;\n (w && w.remove());\n }\n else d([\"OnVisible\",\"TimelineMedley\",], function(oa, pa) {\n j.appendContent(j.find(o(\"pagelet_timeline_main_column\"), \".-cx-PRIVATE-fbTimelineMedley__maincolumn\"), aa.section);\n r(k.listen(aa.section, \"click\", function() {\n pa.scrollToSection(t, u, 1);\n fa(aa.section);\n }));\n pa.loadToSection(t, function() {\n ka(o(t), na);\n var qa = new oa(o(t), function() {\n fa(aa.section);\n qa.remove();\n }, false, -u);\n });\n });\n ;\n break;\n case \"section_privacy\":\n d([\"TimelineAppSectionCuration\",], function(oa) {\n oa.informState(g.showItems, t);\n ka(j.scry(o(t), \".audienceSelector\")[0], na);\n });\n break;\n case \"privacy\":\n k.fire(x, \"click\");\n break;\n };\n };\n function ja(na, oa) {\n if (z.add_button) {\n var pa = j.scry(oa, \"[data-hover]\")[0];\n ba.push({\n button: pa,\n listener: r(k.listen(na, \"mouseenter\", function() {\n x = na;\n ka(na, \"add_button\");\n }))\n });\n (pa && pa.removeAttribute(\"data-hover\"));\n }\n ;\n };\n function ka(na, oa) {\n if (z[oa]) {\n z[oa].setContext(na).setOffsetX(5).show();\n if ((oa === \"privacy\")) {\n ea(\"add_button\");\n };\n }\n ;\n };\n function la(na, oa, pa) {\n var qa = pa.getAttribute(\"data-action\");\n if (((qa === \"next\") || (qa === \"done\"))) {\n ga(na);\n }\n else ha(na);\n ;\n };\n var ma = {\n init: function(na) {\n var oa = na.next_step, pa = ca[oa];\n z = na.dialogs;\n aa = (na.links ? na.links : []);\n da();\n if (((oa === \"section\") && (oa !== y))) {\n ea(\"section\");\n ea(\"section_privacy\");\n pa += 2;\n oa = ca[pa];\n }\n ;\n for (var qa in z) {\n r(z[qa].subscribe(\"button\", la.curry(qa)));;\n };\n if (z.add_button) {\n var ra = (na.isViewingSelf ? m : l);\n r([ra.subscribe(\"menuOpened\", function(sa, ta) {\n ka.curry(j.find(ta.audienceSelector, \".audienceSelector\"), \"privacy\").defer(s);\n }),ra.subscribe(\"addButton\", function(sa, ta) {\n ja.curry(ta.button, ta.root).defer(s);\n }),]);\n }\n ;\n if ((na.isViewingSelf && (pa < ca.add_button))) {\n ia(oa);\n };\n }\n };\n e.exports = ma;\n});\n__d(\"legacy:TimelineCover\", [\"TimelineCover\",], function(a, b, c, d) {\n a.TimelineCover = b(\"TimelineCover\");\n}, 3);\n__d(\"SubMenu\", [\"Event\",\"Arbiter\",\"copyProperties\",\"CSS\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Arbiter\"), i = b(\"copyProperties\"), j = b(\"CSS\");\n function k() {\n \n };\n i(k.prototype, {\n _subMenu: null,\n _mainMenu: null,\n _forward: null,\n _backward: null,\n init: function(l, m, n, o) {\n this._subMenu = l;\n this._mainMenu = m;\n this._forward = n;\n this._backward = o;\n h.subscribe(\"SubMenu/Reset\", this._goToMainMenu.bind(this));\n g.listen(n, \"click\", this._goToSubMenu.bind(this));\n g.listen(o, \"click\", this._goToMainMenu.bind(this));\n },\n initAsyncChildMenu: function(l) {\n g.listen(this._forward, \"click\", function() {\n this._goToSubMenu();\n l.load();\n }.bind(this));\n },\n _goToMainMenu: function() {\n j.hide(this._subMenu);\n j.show(this._mainMenu);\n },\n _goToSubMenu: function() {\n j.hide(this._mainMenu);\n j.show(this._subMenu);\n }\n });\n e.exports = k;\n});\n__d(\"legacy:ui-submenu\", [\"SubMenu\",], function(a, b, c, d) {\n a.SubMenu = b(\"SubMenu\");\n}, 3);\n__d(\"AsyncMenu\", [\"AsyncRequest\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"copyProperties\"), i = b(\"emptyFunction\");\n function j(k, l) {\n this._uri = k;\n this._elem = l;\n };\n h(j.prototype, {\n _uri: null,\n _elem: null,\n load: function() {\n this.load = i;\n g.bootstrap(this._uri, this._elem);\n }\n });\n e.exports = j;\n});"); |
| // 13614 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"sb3e3abb1c5dce931ace6dab818dc7b49b630189b"); |
| // 13615 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"4kgAq\",]);\n}\n;\n;\n__d(\"AdsCurrency\", [\"AdsCurrencyConfig\",], function(a, b, c, d, e, f) {\n var g = b(\"AdsCurrencyConfig\").currencies;\n function h(m) {\n if (g[m]) {\n return g[m][0];\n }\n ;\n ;\n return null;\n };\n;\n function i(m) {\n if (g[m]) {\n return g[m][1];\n }\n ;\n ;\n return null;\n };\n;\n function j(m) {\n if (g[m]) {\n return ((1 * g[m][2]));\n }\n ;\n ;\n return 1;\n };\n;\n var k = [];\n {\n var fin259keys = ((window.top.JSBNG_Replay.forInKeys)((g))), fin259i = (0);\n var l;\n for (; (fin259i < fin259keys.length); (fin259i++)) {\n ((l) = (fin259keys[fin259i]));\n {\n if (g.hasOwnProperty(l)) {\n k.push(l);\n }\n ;\n ;\n };\n };\n };\n;\n f.getFormat = h;\n f.getSymbol = i;\n f.getOffset = j;\n f.currencyMapKeys = k;\n});\n__d(\"ads-lib-formatters\", [\"AdsCurrency\",], function(a, b, c, d, e, f) {\n var g = b(\"AdsCurrency\"), h = \"USD\";\n function i(t, u, v) {\n t = ((t || \"\"));\n v = ((v || \"\"));\n u = ((((typeof u === \"undefined\")) ? t.length : u));\n return ((((t.length > u)) ? ((t.substr(0, ((u - v.length))) + v)) : t));\n };\n;\n function j(t, u) {\n if (((((u === undefined)) || ((u === null))))) {\n u = \"\";\n }\n ;\n ;\n return function(v) {\n return ((!v ? u : i(v, t, \"...\")));\n };\n };\n;\n function k(t, u, v, w) {\n if (((t === \"N/A\"))) {\n return t;\n }\n ;\n ;\n t = ((t || 0));\n v = ((v || \"\"));\n w = ((w || \".\"));\n t = ((((u !== null)) ? l(t, u) : ((t + \"\"))));\n var x = t.split(\".\"), y = x[0], z = x[1], aa = \"\", ba = /(\\d)(\\d\\d\\d)($|\\D)/, ca = ((((\"$1\" + v)) + \"$2$3\"));\n while ((((aa = y.replace(ba, ca)) != y))) {\n y = aa;\n ;\n };\n ;\n var da = y;\n if (z) {\n da += ((w + z));\n }\n ;\n ;\n return da;\n };\n;\n function l(t, u) {\n var v = Math.pow(10, u);\n t = ((((Math.round(((t * v))) / v)) + \"\"));\n if (!u) {\n return t;\n }\n ;\n ;\n var w = t.indexOf(\".\"), x = 0;\n if (((w == -1))) {\n t += \".\";\n x = u;\n }\n else x = ((u - ((((t.length - w)) - 1))));\n ;\n ;\n for (var y = 0, z = x; ((y < z)); y++) {\n t += \"0\";\n ;\n };\n ;\n return t;\n };\n;\n function m(t) {\n return function(u) {\n return k(u, ((t || 0)), \",\", \".\");\n };\n };\n;\n function n(t, u) {\n var v = ((((u === false)) ? 1 : 100));\n return function(w) {\n return ((k(((w * v)), ((t || 0)), \",\", \".\") + \"%\"));\n };\n };\n;\n var o = {\n };\n function p(t, u, v) {\n if (((t === undefined))) {\n t = 2;\n }\n ;\n ;\n if (((v === undefined))) {\n v = false;\n }\n ;\n ;\n u = ((u || h));\n var w = ((((((((u + \"-\")) + t)) + \"-\")) + v));\n if (!o[w]) {\n var x = ((g.getFormat(u) || g.getFormat(h))), y = ((g.getSymbol(u) || g.getSymbol(h))), z = ((g.getOffset(u) || g.getOffset(h)));\n x = x.replace(\"{symbol}\", y);\n o[w] = function(aa) {\n if (v) {\n aa = ((aa / z));\n }\n ;\n ;\n if (!((aa + \"\")).match(/^\\-?[\\d\\.,]*$/)) {\n return \"N/A\";\n }\n ;\n ;\n var ba = k(aa, t, \",\", \".\");\n return x.replace(\"{amount}\", ba);\n };\n }\n ;\n ;\n return o[w];\n };\n;\n function q(t) {\n t = ((t + \"\")).trim().replace(/^[^\\d]*\\-/, \"\\u0002\");\n if (!(((/^\\u0002?(\\d+,\\d*){2,}$/.test(t)) || (/^\\u0002?(\\d+\\.\\d*){2,}$/.test(t))))) {\n t = t.replace(/[\\.,](\\d*\\D*)$/, \"\\u0001$1\");\n }\n ;\n ;\n t = t.replace(/[^0-9\\u0001\\u0002]/g, \"\").replace(\"\\u0001\", \".\").replace(\"\\u0002\", \"-\");\n return ((+t || 0));\n };\n;\n function r() {\n return function(t) {\n return ((k(t, 0, \",\", \".\") + \"%\"));\n };\n };\n;\n function s(t) {\n var u = t.currency(), v = ((((t.offset() == 100)) ? 2 : 0));\n return p(v, u);\n };\n;\n f.createTextTruncator = j;\n f.chopString = i;\n f.parseNumber = q;\n f.formatNumber = k;\n f.createNumberFormatter = m;\n f.createPercentFormatter = n;\n f.createMoneyFormatter = p;\n f.createMoneyFormatterForAccount = s;\n f.createInflationFormatter = r;\n});\n__d(\"PopoverMenuShowOnHover\", [\"JSBNG__Event\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"copyProperties\");\n function i(j) {\n this._popoverMenu = j;\n this._listeners = [];\n };\n;\n h(i.prototype, {\n enable: function() {\n this._attachMouseListeners(this._popoverMenu.getTriggerElem());\n this._setMenuSubscription = this._popoverMenu.subscribe(\"setMenu\", this._onSetMenu.bind(this));\n },\n disable: function() {\n while (this._listeners.length) {\n this._listeners.pop().remove();\n ;\n };\n ;\n if (this._setMenuSubscription) {\n this._setMenuSubscription.unsubscribe();\n this._setMenuSubscription = null;\n }\n ;\n ;\n },\n _onSetMenu: function() {\n this._attachMouseListeners(this._popoverMenu.getMenu().getRoot());\n },\n _attachMouseListeners: function(j) {\n var k = this._popoverMenu.getPopover();\n this._listeners.push(g.listen(j, \"mouseenter\", k.showLayer.bind(k)), g.listen(j, \"mouseleave\", k.hideLayer.bind(k)));\n }\n });\n e.exports = i;\n});\n__d(\"TriggerablePageletLoader\", [\"function-extensions\",\"JSBNG__CSS\",\"JSBNG__Event\",\"OnVisible\",\"Run\",\"UIPagelet\",\"copyProperties\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"JSBNG__CSS\"), h = b(\"JSBNG__Event\"), i = b(\"OnVisible\"), j = b(\"Run\"), k = b(\"UIPagelet\"), l = b(\"copyProperties\"), m = [];\n function n(p) {\n if (!m[p]) {\n return;\n }\n ;\n ;\n ((m[p].__trigger && m[p].__trigger.remove()));\n delete m[p];\n };\n;\n function o(p, q) {\n this._disabledTriggerKeys = [];\n this._pageletConfig = p;\n this._loaded = false;\n this._loading = false;\n this._triggerKeys = [];\n if (q) {\n q.forEach(this.addTrigger.bind(this));\n }\n ;\n ;\n j.onLeave(this.destroy.bind(this));\n };\n;\n l(o, {\n removeTrigger: function(p) {\n {\n var fin260keys = ((window.top.JSBNG_Replay.forInKeys)((m))), fin260i = (0);\n var q;\n for (; (fin260i < fin260keys.length); (fin260i++)) {\n ((q) = (fin260keys[fin260i]));\n {\n if (((m[q] && ((m[q].node === p))))) {\n n(q);\n }\n ;\n ;\n };\n };\n };\n ;\n },\n TRIGGER_CLICK: \"click\",\n TRIGGER_ONVISIBLE: \"onvisible\",\n TRIGGER_NOW: \"now\"\n });\n l(o.prototype, {\n addTrigger: function(p) {\n p.__trigger = this._createTrigger(p);\n m.push(p);\n this._triggerKeys.push(((m.length - 1)));\n },\n destroy: function() {\n this.removeTriggers();\n if (this._pageletRequest) {\n this._pageletRequest.cancel();\n this._pageletRequest = null;\n this._loading = false;\n this._loaded = false;\n }\n ;\n ;\n },\n disableTriggers: function() {\n this._triggerKeys.forEach(function(p) {\n if (m[p]) {\n m[p].__trigger.remove();\n this._disabledTriggerKeys.push(p);\n }\n ;\n ;\n }.bind(this));\n },\n enableTriggers: function() {\n if (((this._loaded || this._loading))) {\n return;\n }\n ;\n ;\n this._disabledTriggerKeys.forEach(function(p) {\n if (m[p]) {\n m[p].__trigger = this._createTrigger(m[p]);\n }\n ;\n ;\n }.bind(this));\n this._disabledTriggerKeys.length = 0;\n },\n _createTrigger: function(p) {\n if (((this._loaded || this._loading))) {\n return;\n }\n ;\n ;\n var q = this.onTrigger.bind(this, p);\n switch (p.type) {\n case o.TRIGGER_CLICK:\n return h.listen(p.node, \"click\", function(r) {\n r.prevent();\n q();\n });\n case o.TRIGGER_ONVISIBLE:\n return new i(p.node, q, p.onVisibleStrict, p.onVisibleBuffer);\n case o.TRIGGER_NOW:\n return q();\n default:\n \n };\n ;\n },\n load: function(p) {\n if (((this._loaded || this._loading))) {\n return;\n }\n ;\n ;\n this._loading = true;\n this._loaded = false;\n g.addClass(this._pageletConfig.node, \"async_saving\");\n if (((p && p.node))) {\n g.addClass(p.node, \"async_saving\");\n }\n ;\n ;\n var q = ((this._pageletConfig.options || {\n }));\n q.displayCallback = this.onLoad.bind(this, p);\n if (((q.crossPage === undefined))) {\n q.crossPage = true;\n }\n ;\n ;\n this._pageletRequest = k.loadFromEndpoint(this._pageletConfig.controller, this._pageletConfig.node, this._pageletConfig.data, q);\n },\n onLoad: function(p, q) {\n this._loaded = true;\n this._pageletRequest = null;\n g.removeClass(this._pageletConfig.node, \"async_saving\");\n if (((p && p.node))) {\n g.removeClass(p.node, \"async_saving\");\n }\n ;\n ;\n if (this._pageletConfig.displayCallback) {\n this._pageletConfig.displayCallback(q);\n }\n else q();\n ;\n ;\n },\n onTrigger: function(p) {\n ((p.callback && p.callback(p)));\n if (((!this._loaded && !this._loading))) {\n this.load(p);\n }\n ;\n ;\n },\n removeTriggers: function(p) {\n this._triggerKeys.forEach(function(q) {\n if (((m[q] && ((!p || ((m[q].type === p))))))) {\n n(q);\n }\n ;\n ;\n });\n }\n });\n e.exports = o;\n});\n__d(\"OGCollectionAddDialog\", [\"AsyncRequest\",\"DataStore\",\"DOMQuery\",\"Form\",\"MenuDeprecated\",\"URI\",\"collectDataAttributes\",\"copyProperties\",\"csx\",\"tidyEvent\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"DataStore\"), i = b(\"DOMQuery\"), j = b(\"Form\"), k = b(\"MenuDeprecated\"), l = b(\"URI\"), m = b(\"collectDataAttributes\"), n = b(\"copyProperties\"), o = b(\"csx\"), p = b(\"tidyEvent\"), q = \"OGCollectionAddDialog\";\n function r(s, t, u, v, w) {\n this._dialog = s;\n this._surface = t;\n this._endpoint = l(v);\n this._loadEditMenu = w.loadEditMenu;\n this._listener = h.get(String(u), q);\n this._audienceSelector = i.JSBNG__find(this._dialog.getContent(), \".audienceSelector\");\n this._menu = i.JSBNG__find(this._dialog.getContent(), \".-cx-PRIVATE-fbOGCollectionAddMenu__menu\");\n k.register(this._menu);\n this._menuSubscriptionToken = k.subscribe(\"select\", this._onMenuClick.bind(this));\n p([this._dialog.subscribe(\"show\", this._onDialogShow.bind(this)),this._dialog.subscribe(\"hide\", this._onDialogHide.bind(this)),]);\n this._dialog.show();\n };\n;\n n(r, {\n INSTANCE_KEY: q\n });\n n(r.prototype, {\n _onDialogShow: function() {\n this._listener.onDialogShow(this._dialog);\n },\n _onDialogHide: function() {\n this._destroy();\n },\n _onMenuClick: function(s, t) {\n if (((t.menu !== this._menu))) {\n return;\n }\n ;\n ;\n var u = t.JSBNG__item;\n this._listener.onMenuClick(u);\n var v = i.JSBNG__find(u, \".-cx-PRIVATE-fbOGCollectionAddMenu__collectiontoken\"), w = v.getAttribute(\"value\");\n this._submitRequest(w);\n },\n _submitRequest: function(s) {\n this._endpoint.addQueryData({\n collection_token: s\n });\n this._dialog.hide();\n this._request = new g(this._endpoint).setData(n(j.serialize(this._audienceSelector), {\n action: \"add\",\n load_edit_menu: this._loadEditMenu,\n surface: this._surface\n }, m(this._dialog.getContext(), [\"ft\",])));\n this._request.send();\n },\n _destroy: function() {\n this._listener.onDialogHide();\n k.unsubscribe(this._menuSubscriptionToken);\n }\n });\n e.exports = r;\n});\n__d(\"OGCollectionAddMenu\", [\"JSBNG__CSS\",\"DataStore\",\"DOM\",\"DOMQuery\",\"JSBNG__Event\",\"OGCollectionAddDialog\",\"Parent\",\"TidyArbiterMixin\",\"copyProperties\",\"csx\",\"cx\",\"ge\",\"tidyEvent\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = b(\"DataStore\"), i = b(\"DOM\"), j = b(\"DOMQuery\"), k = b(\"JSBNG__Event\"), l = b(\"OGCollectionAddDialog\"), m = b(\"Parent\"), n = b(\"TidyArbiterMixin\"), o = b(\"copyProperties\"), p = b(\"csx\"), q = b(\"cx\"), r = b(\"ge\"), s = b(\"tidyEvent\");\n function t(u, v, w, x, y, z) {\n this._image = v;\n this._container = w;\n this._placeholder = x;\n this._surface = y;\n this._rateControl = i.scry(this._container.parentNode, \".-cx-PRIVATE-fbOGCollectionRateDialog__wrapperlink\")[0];\n t.inform(\"addButton\", {\n button: this._image,\n root: this._container\n });\n s(k.listen(this._container, \"click\", function(aa) {\n var ba = m.byClass(aa.getTarget(), \"-cx-PUBLIC-fbOGCollectionAddMenu__hoverimg\");\n if (((this.isDialogShowing() && ba))) {\n aa.kill();\n }\n ;\n ;\n }.bind(this)));\n if (((this._surface === \"friend_timeline_lhc\"))) {\n this._handleAlwaysVisibleLHC();\n }\n ;\n ;\n h.set(String(u), l.INSTANCE_KEY, this);\n };\n;\n o(t, n, {\n initCallout: function(u, v, w) {\n u.show();\n var x = r(v), y = j.JSBNG__find(w, \".-cx-PRIVATE-fbOGCollectionAddMenu__linkwrapper\");\n s(k.listen(x, \"click\", function(z) {\n k.fire(y, \"click\");\n }));\n }\n });\n o(t.prototype, n, {\n destroy: function() {\n i.remove(this._container);\n this._placeholder.destroy();\n },\n hide: function() {\n g.hide(this._image);\n this._placeholder.hide();\n },\n getParent: function() {\n return this._container.parentNode;\n },\n insertMenuIntoDialog: function(u) {\n this._placeholder.insertIntoDialog(u);\n },\n onMenuClick: function(u) {\n var v = j.JSBNG__find(u, \".-cx-PRIVATE-fbOGCollectionAddMenu__showrate\");\n this._showRate = ((this._rateControl && v.getAttribute(\"value\")));\n g.hide(this._image);\n if (this._showRate) {\n g.show(this._rateControl);\n k.fire(this._rateControl, \"click\");\n }\n else g.show(this._placeholder.getIcon());\n ;\n ;\n },\n onDialogShow: function(u) {\n var v = j.JSBNG__find(u.getContent(), \".audienceSelector\");\n g.addClass(this._image, \"openToggler\");\n t.inform(\"menuOpened\", {\n audienceSelector: v.parentNode\n });\n this._dialogShowing = true;\n },\n onDialogHide: function() {\n g.removeClass(this._image, \"openToggler\");\n this._dialogShowing = false;\n },\n isDialogShowing: function() {\n return this._dialogShowing;\n },\n _handleAlwaysVisibleLHC: function() {\n var u = m.byClass(this._container, \"-cx-PUBLIC-fbOGCollectionItemAddCuration__container\"), v = m.byClass(u, \"-cx-PRIVATE-ogAppReport__root\");\n if (g.hasClass(u, \"-cx-PUBLIC-fbOGCollectionItemAddCuration__alwaysvisible\")) {\n s([this._alwaysVisibleToken = k.listen(v, \"mouseenter\", function() {\n g.removeClass(u, \"-cx-PUBLIC-fbOGCollectionItemAddCuration__alwaysvisible\");\n this._alwaysVisibleToken.remove();\n }.bind(this)),]);\n }\n ;\n ;\n }\n });\n e.exports = t;\n});\n__d(\"MedleyPageletRequestData\", [\"Arbiter\",\"TidyArbiter\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"TidyArbiter\"), i = {\n }, j = {\n get: function() {\n return i;\n },\n set: function(k) {\n i = k;\n h.inform(\"Medley/requestDataSet\", null, g.BEHAVIOR_STATE);\n }\n };\n e.exports = j;\n});\n__d(\"TimelineDynamicSection\", [\"Class\",\"DOM\",\"TimelineSection\",\"copyProperties\",\"cx\",\"ge\",\"TimelineDynamicSectionConfig\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"DOM\"), i = b(\"TimelineSection\"), j = b(\"copyProperties\"), k = b(\"cx\"), l = b(\"ge\"), m = b(\"TimelineDynamicSectionConfig\");\n function n(o, p, q) {\n this._controller = p;\n this._data = null;\n this._node = null;\n this._triggerLoader = null;\n this.parent.construct(this, o, o, q);\n };\n;\n g.extend(n, i);\n j(n.prototype, {\n _createNode: function() {\n return h.create(\"div\", {\n className: \"-cx-PRIVATE-fbTimelineMedley__sectionwrapper\",\n id: this.nodeID\n }, [m.throbber.cloneNode(true),]);\n },\n getNode: function() {\n if (!this._node) {\n this._node = ((l(this.nodeID) || this._createNode()));\n }\n ;\n ;\n return this._node;\n }\n });\n e.exports = n;\n});\n__d(\"TimelineAppCollection\", [\"function-extensions\",\"Class\",\"JSBNG__CSS\",\"DOM\",\"DOMQuery\",\"JSBNG__Event\",\"MedleyPageletRequestData\",\"NumberFormatConfig\",\"PageTransitions\",\"Parent\",\"Style\",\"TidyArbiter\",\"TidyArbiterMixin\",\"TimelineDynamicSection\",\"TimelineSection\",\"TriggerablePageletLoader\",\"TimelineDynamicSectionConfig\",\"copyProperties\",\"csx\",\"cx\",\"ads-lib-formatters\",\"ge\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"Class\"), h = b(\"JSBNG__CSS\"), i = b(\"DOM\"), j = b(\"DOMQuery\"), k = b(\"JSBNG__Event\"), l = b(\"MedleyPageletRequestData\"), m = b(\"NumberFormatConfig\"), n = b(\"PageTransitions\"), o = b(\"Parent\"), p = b(\"Style\"), q = b(\"TidyArbiter\"), r = b(\"TidyArbiterMixin\"), s = b(\"TimelineDynamicSection\"), t = b(\"TimelineSection\"), u = b(\"TriggerablePageletLoader\"), v = b(\"TimelineDynamicSectionConfig\"), w = b(\"copyProperties\"), x = b(\"csx\"), y = b(\"cx\"), z = b(\"ads-lib-formatters\"), aa = b(\"ge\"), ba = 500, ca = 8;\n function da(ha) {\n var ia = aa(ga.getIDByToken(ha));\n if (!ia) {\n return;\n }\n ;\n ;\n return i.scry(ia, \".-cx-PUBLIC-fbTimelineCollectionGrid__root\")[0];\n };\n;\n function ea(ha, ia) {\n ((((ia && !ia.isDefaultRequested())) && ia.prevent()));\n var ja = ha._parentSection, ka = ja._parentSection;\n t.setActiveSectionID(ja.id);\n ja.setActiveCollection(ha);\n if (((ja._sk === ka._sk))) {\n if (!h.hasClass(ka.getNode(), \"-cx-PRIVATE-fbTimelineMedley__permafrost\")) {\n h.addClass(ka.getNode(), \"-cx-PRIVATE-fbTimelineMedley__permafrost\");\n ka.freezeChildren();\n }\n ;\n ;\n ((ha._isFullyLoaded && ka.addSectionTeasers()));\n }\n ;\n ;\n if (((!ka.isMedleyView() && ((ja._sk === ka._sk))))) {\n var la = ha.href;\n n.rewriteCurrentURI(n.getCurrentURI().getUnqualifiedURI(), la);\n }\n ;\n ;\n };\n;\n function fa(ha, ia) {\n ia.data.overview = ((ha._parentSection._sk !== ha._parentSection._parentSection._sk));\n ia.data.cursor = null;\n ea(ha);\n };\n;\n function ga(ha, ia, ja, ka, la, ma) {\n this._contentLoader = null;\n this._isFrozen = false;\n this._isFullyLoaded = false;\n this._cursor = 0;\n this._tabNode = ja;\n this._tabCount = ((((ka > 0)) ? ka : 0));\n this._token = ha;\n this._ftid = null;\n this.auxContent = null;\n this.curationContent = null;\n this._order = la;\n this.href = ma;\n this._sortContent = null;\n this.refreshCount();\n this.parent.construct(this, ga.getIDByToken(ha), ia);\n if (!ja) {\n return;\n }\n ;\n ;\n if (aa(this.nodeID)) {\n k.listen(ja, \"click\", ea.curry(this));\n }\n else this.createTriggerLoader.bind(this).defer();\n ;\n ;\n };\n;\n g.extend(ga, s);\n w(ga, r, {\n NEW_ITEM: \"TimelineAppCollection/newItem\",\n ADDING_PLACEHOLDER: \"TimelineAppCollection/addingPlaceholder\",\n addPlaceholderToCollection: function(ha, ia, ja) {\n ja = ((((typeof ja !== \"undefined\")) ? ja : {\n }));\n if (!ja.suppressCount) {\n this.incrementCount(ga.getIDByToken(ha));\n }\n ;\n ;\n t.callWithSection(ga.getIDByToken(ha), function(ka) {\n var la = i.scry(ia, \".-cx-PUBLIC-fbTimelineCollectionGrid__itemtitle\")[0].cloneNode(true), ma = i.scry(ia, \".-cx-PUBLIC-fbTimelineCollectionGrid__itemimage .img\")[0], na = i.scry(ia, \".-cx-PUBLIC-fbTimelineCollectionGrid__containerwrap\")[0], oa = ((na && na.getAttribute(\"data-obj\")));\n if (((!la || !oa))) {\n return;\n }\n ;\n ;\n ka.inform(ga.ADDING_PLACEHOLDER);\n var pa = da(ha);\n if (!pa) {\n return;\n }\n ;\n ;\n var qa = i.scry(pa, ((((\"[data-obj=\\\"\" + oa)) + \"\\\"]\")))[0], ra = i.create(\"div\", {\n className: \"-cx-PUBLIC-fbTimelineCollectionGrid__placeholderimage\"\n });\n if (ma) {\n p.set(ra, \"background-image\", ((((\"url(\" + ma.src)) + \")\")));\n }\n ;\n ;\n var sa = i.create(\"div\", {\n className: \"-cx-PUBLIC-fbTimelineCollectionGrid__itemimage\"\n }, [ra,]), ta = i.create(\"div\", {\n className: \"-cx-PUBLIC-fbTimelineCollectionGrid__content\"\n }, [la,]), ua = i.create(\"div\", {\n className: \"-cx-PUBLIC-fbTimelineCollectionGrid__containerwrap\"\n }, [sa,ta,]), va = i.create(\"li\", {\n className: \"-cx-PUBLIC-fbTimelineCollectionGrid__item\",\n id: ((\"collectionItemPlaceholder\" + oa))\n }, [ua,]);\n if (((qa && ja.replaceExistingElement))) {\n i.replace(qa.parentNode, va);\n }\n else {\n if (qa) {\n i.remove(qa.parentNode);\n }\n else if (((ka.isOverview() && ((pa.children.length >= ca))))) {\n h.addClass(pa.children[((ca - 1))], \"-cx-PRIVATE-fbTimelineCollectionGrid__overflowitem\");\n }\n \n ;\n ;\n i.prependContent(pa, va);\n }\n ;\n ;\n });\n },\n replaceItem: function(ha, ia, ja) {\n var ka = o.byClass(ha, \"-cx-PUBLIC-fbTimelineCollectionGrid__root\"), la = i.scry(ka, ((((\"div[data-obj=\\\"\" + ia)) + \"\\\"]\")))[0];\n if (la) {\n ga.inform(ga.NEW_ITEM, {\n grid: ka,\n newItem: ja\n });\n i.replace(la.parentNode, ja);\n }\n ;\n ;\n },\n addItemToCollection: function(ha, ia, ja) {\n var ka = aa(ja);\n if (!ka) {\n return;\n }\n ;\n ;\n var la = i.scry(ka, \".-cx-PUBLIC-fbTimelineCollectionGrid__root\")[0], ma = la.parentNode.nextSibling;\n if (((ma && h.hasClass(ma, \"-cx-PRIVATE-fbTimelineMedleyPager__root\")))) {\n i.remove(la.lastChild);\n }\n ;\n ;\n this.inform(ga.NEW_ITEM, {\n grid: la,\n newItem: ha\n });\n var na = aa(((\"collectionItemPlaceholder\" + ia)));\n if (na) {\n i.replace(na, ha);\n return;\n }\n ;\n ;\n i.prependContent(la, ha);\n },\n createFromArray: function(ha) {\n return ha.map(function(ia) {\n return new ga(ia.token, ia.controller, ia.tab_node, ia.tab_count, ia.order, ia.href);\n });\n },\n decrementCount: function(ha) {\n t.callWithSection(ha, function(ia) {\n if (((ia._tabCount > 0))) {\n ia._tabCount--;\n ia.refreshCount();\n ia.flashCountIf();\n }\n ;\n ;\n });\n },\n enableContentLoader: function(ha, ia, ja) {\n t.callWithSection(ha, function(ka) {\n ka.addContentLoader(ia, ja);\n });\n },\n getIDByToken: function(ha) {\n return ((\"pagelet_timeline_app_collection_\" + ha));\n },\n incrementCount: function(ha) {\n t.callWithSection(ha, function(ia) {\n ia._tabCount++;\n ia.refreshCount();\n ia.flashCountIf();\n });\n },\n registerAuxContent: function(ha, ia) {\n t.callWithSection(ha, function(ja) {\n ja.registerAuxContent(ia);\n });\n },\n registerAddCurationContent: function(ha, ia, ja, ka) {\n t.callWithSection(ha, function(la) {\n la.registerAddCurationContent(ia, ja, ka);\n });\n },\n registerSortContent: function(ha, ia, ja) {\n t.callWithSection(ha, function(ka) {\n ka.registerSortContent(ia, ja);\n });\n },\n setLoaded: function(ha) {\n t.callWithSection(ha, function(ia) {\n ia.setIsLoaded(true);\n ia._parentSection.inform(\"loaded\", ia);\n ia._parentSection.unsetMinHeight();\n });\n },\n setFullyLoaded: function(ha) {\n t.callWithSection(ha, function(ia) {\n ia._isFullyLoaded = true;\n var ja = ia._parentSection;\n ((((ja._sk === ja._parentSection._sk)) && ja._parentSection.addSectionTeasers()));\n });\n },\n setFTID: function(ha, ia) {\n t.callWithSection(ha, function(ja) {\n ja.setFTID(ia);\n });\n },\n switchToNullStateCurationContent: function(ha) {\n t.callWithSection(ga.getIDByToken(ha), function(ia) {\n ia.nullStateCurationContent();\n });\n }\n });\n w(ga.prototype, r, {\n addContentLoader: function(ha, ia) {\n this._cursor = ia;\n q.subscribe(\"Medley/requestDataSet\", function() {\n var ja = {\n node: ha\n };\n if (h.hasClass(ha, \"-cx-PRIVATE-fbTimelineMedleyPager__root\")) {\n ja.type = u.TRIGGER_CLICK;\n }\n else if (this._isFrozen) {\n i.remove(ha);\n ja.node = v.pager.cloneNode(true);\n i.appendContent(this.getNode(), ja.node);\n ja.type = u.TRIGGER_CLICK;\n }\n else {\n ja.onVisibleBuffer = ba;\n ja.onVisibleStrict = true;\n ja.type = u.TRIGGER_ONVISIBLE;\n }\n \n ;\n ;\n if (((ja.type === u.TRIGGER_CLICK))) {\n ja.callback = t.setActiveSectionID.curry(this.id);\n }\n ;\n ;\n var ka = w({\n displayCallback: function(la) {\n i.remove(ja.node);\n la();\n },\n options: {\n append: true\n }\n }, this.getDefaultPageletConfig());\n ka.data.overview = this.isOverview();\n this._triggerLoader = null;\n this._contentLoader = new u(ka, [ja,]);\n }.bind(this));\n },\n _createNode: function() {\n var ha = this.parent._createNode();\n ha.setAttribute(\"aria-role\", \"tabpanel\");\n return ha;\n },\n createTriggerLoader: function() {\n q.subscribe(\"Medley/requestDataSet\", function() {\n var ha = this.getDefaultPageletConfig(), ia = {\n callback: fa.curry(this, ha),\n node: this._tabNode,\n type: u.TRIGGER_CLICK\n };\n this._triggerLoader = new u(ha, [ia,]);\n }.bind(this));\n },\n disableContentLoader: function() {\n ((this._contentLoader && this._contentLoader.disableTriggers()));\n },\n enableContentLoader: function() {\n var ha = ((this._triggerLoader || this._contentLoader));\n ((ha && ha.enableTriggers()));\n },\n freeze: function() {\n this._isFrozen = true;\n if (((!this._contentLoader || this._contentLoader._loading))) {\n return;\n }\n ;\n ;\n this._contentLoader.removeTriggers(u.TRIGGER_ONVISIBLE);\n var ha = j.scry(this.getNode(), \".-cx-PRIVATE-fbTimelineMedleyPager__root\");\n if (!ha.length) {\n var ia = j.scry(this.getNode(), \".-cx-PRIVATE-fbTimelineMedley__throbber\")[0];\n ((ia.length && this.addContentLoader(ia, this._cursor)));\n }\n ;\n ;\n },\n getCount: function() {\n return this._tabCount;\n },\n getDefaultPageletConfig: function() {\n return {\n controller: this._controller,\n data: w({\n collection_token: this._token,\n cursor: this._cursor\n }, l.get(), {\n ftid: this._ftid,\n order: this._order\n }, {\n sk: this._parentSection._sk\n }),\n node: this.getNode()\n };\n },\n getMedleySiteKey: function() {\n return this._parentSection._parentSection._sk;\n },\n flashCountIf: function() {\n if (((this._parentSection.getActiveCollection() != this))) {\n h.addClass(this._tabNode, \"-cx-PRIVATE-fbTimelineAppSection__tabhightlight\");\n JSBNG__setTimeout(h.removeClass.curry(this._tabNode, \"-cx-PRIVATE-fbTimelineAppSection__tabhightlight\"), 800);\n }\n ;\n ;\n },\n isOverview: function() {\n return ((this._parentSection._sk != this._parentSection._parentSection._sk));\n },\n registerAuxContent: function(ha) {\n this.auxContent = ha;\n if (((ha.nodeType == 11))) {\n this.auxContent = i.create(\"span\", null, ha);\n }\n ;\n ;\n if (((this._parentSection._activeCollection !== this))) {\n h.hide(this.auxContent);\n }\n ;\n ;\n this._parentSection.addAuxContent(this.auxContent);\n },\n registerAddCurationContent: function(ha, ia, ja) {\n if (this.curationContent) {\n return;\n }\n ;\n ;\n this.curationContent = ((((ha.nodeType == 11)) ? i.create(\"span\", null, ha) : ha));\n this.curationContentState = ia;\n this._parentSection.addCurationContent(this.curationContent, this, ja);\n },\n nullStateCurationContent: function() {\n this._parentSection.nullStateCurationContent();\n },\n registerSortContent: function(ha, ia) {\n ((this._sortContent && i.remove(this._sortContent)));\n this._sortContent = ha;\n ia.subscribeOnce(\"change\", function(ja, ka) {\n i.setContent(i.JSBNG__find(ha, \".-cx-PRIVATE-fbTimelineCollectionSorting__menulabel\"), ka.label);\n this._sort(ka.value);\n }.bind(this));\n },\n refreshCount: function() {\n if (!this._tabNode) {\n return;\n }\n ;\n ;\n var ha = j.JSBNG__find(this._tabNode, \".-cx-PRIVATE-fbTimelineAppSection__tabcount\");\n if (((this._tabCount > 0))) {\n i.setContent(ha, z.formatNumber(this._tabCount, 0, m.numberDelimiter, \"\"));\n }\n else i.setContent(ha, \"\");\n ;\n ;\n },\n _resetContent: function() {\n ((this._contentLoader && this._contentLoader.destroy()));\n i.remove(this.getNode());\n this._node = null;\n i.appendContent(j.JSBNG__find(this._parentSection.getNode(), \"div.-cx-PRIVATE-fbTimelineAppSection__collectionswrapper\"), this.getNode());\n this.addContentLoader(j.JSBNG__find(this.getNode(), \".-cx-PRIVATE-fbTimelineMedley__throbber\"), 0);\n },\n setFTID: function(ha) {\n this._ftid = ha;\n },\n _sort: function(ha) {\n this._order = ha;\n this._resetContent();\n var ia = this._parentSection, ja = ia._parentSection;\n if (((!ja.isMedleyView() && ((ia._sk === ja._sk))))) {\n var ka = n.getCurrentURI();\n ka.addQueryData({\n order: this._order\n });\n n.rewriteCurrentURI(n.getCurrentURI().getUnqualifiedURI(), ka);\n }\n ;\n ;\n },\n thaw: function() {\n this._isFrozen = false;\n },\n getToken: function() {\n return this._token;\n }\n });\n e.exports = ga;\n});\n__d(\"TimelineAppSectionCuration\", [\"Animation\",\"AppSectionCurationState\",\"Arbiter\",\"AsyncSignal\",\"JSBNG__CSS\",\"DOM\",\"Ease\",\"JSBNG__Event\",\"OnVisible\",\"Parent\",\"Style\",\"TidyArbiterMixin\",\"TimelineSection\",\"copyProperties\",\"cx\",\"queryThenMutateDOM\",\"tidyEvent\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"AppSectionCurationState\"), i = b(\"Arbiter\"), j = b(\"AsyncSignal\"), k = b(\"JSBNG__CSS\"), l = b(\"DOM\"), m = b(\"Ease\"), n = b(\"JSBNG__Event\"), o = b(\"OnVisible\"), p = b(\"Parent\"), q = b(\"Style\"), r = b(\"TidyArbiterMixin\"), s = b(\"TimelineSection\"), t = b(\"copyProperties\"), u = b(\"cx\"), v = b(\"queryThenMutateDOM\"), w = b(\"tidyEvent\"), x = 0, y = {\n }, z = {\n };\n function aa(fa, ga, ha) {\n var ia, ja, ka = ((((ga != h.hide)) && ((ha != h.hide))));\n v(function() {\n ja = fa.offsetHeight;\n ia = ((((ga === h.hide)) ? 0 : fa.firstChild.offsetHeight));\n }, function() {\n q.set(fa, \"height\", ((ja + \"px\")));\n q.set(fa, \"overflow\", \"hidden\");\n ((ia && k.addClass(fa.parentNode, \"-cx-PUBLIC-fbTimelineAppSection__curationopen\")));\n o.checkBuffer.defer();\n var la = l.getID(fa);\n ((z[la] && z[la].JSBNG__stop()));\n z[la] = new g(fa).to(\"height\", ia).ondone(function() {\n delete z[la];\n if (ia) {\n q.set(fa, \"overflow\", \"\");\n q.set(fa.parentNode, \"overflow\", \"\");\n }\n ;\n ;\n ((!ia && k.removeClass(fa.parentNode, \"-cx-PUBLIC-fbTimelineAppSection__curationopen\")));\n i.inform(\"reflow\");\n }).duration(((Math.abs(((ia - ja))) * ((ka ? 5 : 1.5))))).ease(m.sineOut).go();\n });\n };\n;\n function ba(fa, ga) {\n if (fa) {\n k.show(ga);\n k.hide(fa);\n }\n ;\n ;\n };\n;\n function ca(fa, ga) {\n if (fa) {\n k.show(fa);\n k.hide(ga);\n }\n ;\n ;\n };\n;\n function da(fa, ga) {\n s.callWithSection(fa, function(ha) {\n new j(\"/ajax/timeline/collections/app_recs/\", {\n collection_token: ha.getActiveCollection().getToken(),\n event_type: ga\n }).send();\n });\n };\n;\n var ea = t({\n addSection: function(fa, ga, ha) {\n y[fa] = {\n appClickLogged: false,\n buttons: ga,\n JSBNG__content: ha,\n id: fa,\n state: h.hide\n };\n q.set(ha, \"height\", \"0px\");\n q.set(ha, \"overflow\", \"hidden\");\n k.show(ha);\n {\n var fin261keys = ((window.top.JSBNG_Replay.forInKeys)((ga))), fin261i = (0);\n var ia;\n for (; (fin261i < fin261keys.length); (fin261i++)) {\n ((ia) = (fin261keys[fin261i]));\n {\n w([n.listen(ga[ia].hide_button, \"click\", ea.informState.curry(h.hide, fa)),n.listen(ga[ia].show_button, \"click\", ea.informState.curry(ia, fa)),]);\n ;\n };\n };\n };\n ;\n ea.register(fa, function(ja, ka, la, ma) {\n new o(ha, aa.curry(ha, ja, ma), true, x);\n {\n var fin262keys = ((window.top.JSBNG_Replay.forInKeys)((ga))), fin262i = (0);\n var na;\n for (; (fin262i < fin262keys.length); (fin262i++)) {\n ((na) = (fin262keys[fin262i]));\n {\n ca(ga[na].show_button, ga[na].hide_button);\n ;\n };\n };\n };\n ;\n if (ga[ja]) {\n ba(ga[ja].show_button, ga[ja].hide_button);\n }\n ;\n ;\n });\n },\n informState: function(fa, ga) {\n if (((y[ga] && ((y[ga].state !== fa))))) {\n if (((((fa === h.showApps)) && !y[ga].appClickLogged))) {\n y[ga].appClickLogged = true;\n da(ga, \"add_apps_click\");\n }\n ;\n ;\n var ha = y[ga].state;\n y[ga].state = fa;\n ea.inform(fa, {\n obj: y[ga],\n oldState: ha\n });\n }\n ;\n ;\n },\n refreshState: function(fa, ga) {\n ea.inform(fa, {\n obj: y[ga],\n oldState: fa\n });\n },\n linkContent: function(fa, ga, ha) {\n var ia = y[fa].buttons[h.showApps].show_button;\n k.show(p.byClass(ia, \"hidden_elem\"));\n new o(ia, function() {\n if (((Math.floor(((Math.JSBNG__random() * 100))) === 0))) {\n da(fa, \"add_apps_imp\");\n }\n ;\n ;\n }, true, x);\n ea.register(fa, function(ja, ka, la, ma) {\n if (((ja == h.showItems))) {\n if (((ma == h.showApps))) {\n q.set(y[fa].JSBNG__content.parentNode, \"overflow\", \"hidden\");\n }\n ;\n ;\n k.show(ga);\n k.hide(ha);\n }\n else if (((ja == h.showApps))) {\n k.hide(ga);\n k.show(ha);\n }\n \n ;\n ;\n });\n },\n register: function(fa, ga) {\n var ha = ea.subscribe([h.hide,h.showItems,h.showApps,], function(ia, ja) {\n if (((ja.obj.id === fa))) {\n ga(ia, ja.obj, ha, ja.oldState);\n }\n ;\n ;\n });\n },\n getSectionState: function(fa) {\n if (y[fa]) {\n return y[fa].state;\n }\n ;\n ;\n }\n }, r);\n e.exports = ea;\n});\n__d(\"TimelineMonitor\", [\"Arbiter\",\"JSBNG__Event\",\"Run\",\"Vector\",\"ViewportBounds\",\"ge\",\"queryThenMutateDOM\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"JSBNG__Event\"), i = b(\"Run\"), j = b(\"Vector\"), k = b(\"ViewportBounds\"), l = b(\"ge\"), m = b(\"queryThenMutateDOM\"), n = {\n }, o = {\n }, p = 0, q = [], r = null, s = false;\n function t() {\n n = {\n };\n o = {\n };\n p = 0;\n q.length = 0;\n ((r && r.remove()));\n r = null;\n s = false;\n };\n;\n function u() {\n if (!r) {\n r = h.listen(window, \"JSBNG__scroll\", z);\n }\n ;\n ;\n if (!s) {\n i.onLeave(t);\n s = true;\n }\n ;\n ;\n z();\n };\n;\n var v = [], w = [];\n function x() {\n q.forEach(function(ea) {\n var fa = aa.getSection(ea);\n if (((fa && ((fa !== o[ea.id]))))) {\n o[ea.id] = fa;\n v.push({\n section: fa\n });\n }\n ;\n ;\n });\n var ba = ((k.getTop() + j.getScrollPosition().y));\n {\n var fin263keys = ((window.top.JSBNG_Replay.forInKeys)((n))), fin263i = (0);\n var ca;\n for (; (fin263i < fin263keys.length); (fin263i++)) {\n ((ca) = (fin263keys[fin263i]));\n {\n var da = n[ca];\n if (((((((ba >= da.boundary)) && ((p <= da.boundary)))) || ((((ba <= da.boundary)) && ((p >= da.boundary))))))) {\n n[ca].fromAbove = ((p < ba));\n w.push(n[ca]);\n }\n ;\n ;\n };\n };\n };\n ;\n p = ba;\n };\n;\n function y() {\n v.forEach(function(ba) {\n g.inform(aa.SECTION_CHANGE, ba);\n });\n w.forEach(function(ba) {\n g.inform(aa.BOUNDARY_PASSED, ba);\n });\n v.length = 0;\n w.length = 0;\n };\n;\n function z() {\n m(x, y, \"TimelineMonitor/scroll\");\n };\n;\n var aa = {\n BOUNDARY_PASSED: \"TimelineMonitor/boundary\",\n SECTION_CHANGE: \"TimelineMonitor/change\",\n getSection: function(ba) {\n var ca = ((k.getTop() + j.getScrollPosition().y)), da = ba.childSections.getHead();\n while (da) {\n if (((l(da.nodeID) && ((ca < ((j.getElementPosition(da.getNode()).y + j.getElementDimensions(da.getNode()).y))))))) {\n return da;\n }\n ;\n ;\n da = da.getNext();\n };\n ;\n },\n monitorBoundary: function(ba, ca) {\n ca = ((ca || ba));\n if (((!n[ca] || ((n[ca].boundary !== ba))))) {\n n[ca] = {\n boundary: ba,\n id: ca\n };\n u();\n }\n ;\n ;\n },\n monitorSection: function(ba) {\n o[ba.id] = null;\n q.push(ba);\n u();\n return aa.getSection(ba);\n },\n poke: function(ba) {\n z();\n }\n };\n e.exports = aa;\n});\n__d(\"TimelineAppSection\", [\"AppSectionCurationState\",\"Arbiter\",\"Class\",\"JSBNG__CSS\",\"DOM\",\"DOMQuery\",\"DOMScroll\",\"JSLogger\",\"MedleyPageletRequestData\",\"PageletSet\",\"Style\",\"TidyArbiter\",\"TidyArbiterMixin\",\"TimelineAppCollection\",\"TimelineAppSectionCuration\",\"TimelineDynamicSection\",\"TimelineMonitor\",\"TimelineSection\",\"TimelineSmartInsert\",\"TriggerablePageletLoader\",\"ViewportBounds\",\"copyProperties\",\"csx\",\"cx\",\"ge\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"AppSectionCurationState\"), h = b(\"Arbiter\"), i = b(\"Class\"), j = b(\"JSBNG__CSS\"), k = b(\"DOM\"), l = b(\"DOMQuery\"), m = b(\"DOMScroll\"), n = b(\"JSLogger\"), o = b(\"MedleyPageletRequestData\"), p = b(\"PageletSet\"), q = b(\"Style\"), r = b(\"TidyArbiter\"), s = b(\"TidyArbiterMixin\"), t = b(\"TimelineAppCollection\"), u = b(\"TimelineAppSectionCuration\"), v = b(\"TimelineDynamicSection\"), w = b(\"TimelineMonitor\"), x = b(\"TimelineSection\"), y = b(\"TimelineSmartInsert\"), z = b(\"TriggerablePageletLoader\"), aa = b(\"ViewportBounds\"), ba = b(\"copyProperties\"), ca = b(\"csx\"), da = b(\"cx\"), ea = b(\"ge\"), fa = b(\"tx\"), ga = 500, ha = 2, ia = 500, ja = 18, ka = \"-cx-PRIVATE-fbTimelineAppSection__tabscondensed\", la = \"-cx-PRIVATE-fbTimelineAppSection__activetab\", ma = k.create(\"div\", {\n className: \"-cx-PRIVATE-fbTimelineAppSection__tabnub\"\n });\n function na() {\n return k.create(\"span\", {\n className: \"-cx-PRIVATE-fbTimelineAppSection__tabdropdown\"\n }, [k.create(\"a\", {\n className: \"-cx-PRIVATE-fbTimelineAppSection__tabdropdownlabel\",\n href: \"#\"\n }, \"More\"),k.create(\"span\", {\n className: \"-cx-PRIVATE-fbTimelineAppSection__tabdropdownoverflow\"\n }),]);\n };\n;\n var oa = n.create(\"collections\"), pa = {\n notes: 295,\n events: 345,\n photos: 555,\n app_quoraapp: 569,\n friends: 603,\n app_foodspotting: 621,\n map: 621,\n favorites: 645,\n app_pinterestapp: 699,\n app_instapp: 699,\n books: 699,\n movies: 699,\n tv: 699,\n music: 725\n };\n function qa(sa) {\n return pa[sa.replace(\"pagelet_timeline_medley_\", \"\")];\n };\n;\n function ra(sa, ta, ua, va) {\n this.parent.construct(this, ra.getIDBySK(ta), sa, ua);\n this._sk = ta;\n this._title = va;\n };\n;\n i.extend(ra, v);\n ba(ra, {\n createFromArray: function(sa) {\n return sa.map(function(ta) {\n return new ra(ta.controller, ta.sk, ta.label, ta.title);\n });\n },\n getIDBySK: function(sa) {\n return ((\"pagelet_timeline_medley_\" + sa));\n },\n registerCollections: function(sa, ta, ua) {\n x.callWithSection(ra.getIDBySK(sa), function(va) {\n t.createFromArray(ta).forEach(va.appendSection.bind(va));\n var wa = va.childSections.get(ua);\n va.setActiveCollection(wa);\n wa.setIsLoaded(true);\n });\n },\n removeEmptyAppSection: function(sa) {\n x.callWithSection(ra.getIDBySK(sa), function(ta) {\n ta.remove();\n });\n }\n }, s);\n ba(ra.prototype, s, {\n _createNode: function() {\n var sa = this.parent._createNode();\n sa.setAttribute(\"aria-labelledby\", ((\"medley_header_\" + this._sk)));\n sa.setAttribute(\"aria-role\", \"region\");\n k.prependContent(sa, k.create(\"div\", {\n className: \"-cx-PRIVATE-fbTimelineAppSection__header\"\n }, [this._title,k.create(\"div\", {\n className: \"-cx-PRIVATE-fbTimelineAppSection__tabs\",\n \"aria-role\": \"tablist\"\n }),]));\n this.resetMinHeight(sa);\n return sa;\n },\n addAuxContent: function(sa) {\n var ta = l.scry(this.getNode(), \".-cx-PRIVATE-fbTimelineAppSection__aux\")[0];\n ((ta && k.appendContent(ta, sa)));\n ((this._activeCollection && this._checkTabDimensions(this._activeCollection)));\n },\n nullStateCurationContent: function() {\n if (!this._nullStateContent) {\n return;\n }\n ;\n ;\n var sa = l.JSBNG__find(this.getNode(), \".-cx-PRIVATE-fbTimelineAppSection__addcuration\");\n k.replace(sa.firstChild, this._nullStateContent);\n },\n addCurationContent: function(sa, ta, ua) {\n var va = l.scry(this.getNode(), \".-cx-PRIVATE-fbTimelineAppSection__addcuration\")[0];\n ((va && k.appendContent(va, sa)));\n if (ua) {\n this._nullStateContent = ua;\n }\n ;\n ;\n this._checkCurationContent(ta);\n },\n createTriggerLoader: function(sa) {\n var ta = function(ua) {\n this._parentSection._lastLoadedSection = this;\n this.setIsLoaded(true);\n y.enable();\n y.run(this.getNode(), function() {\n ua();\n this.unsetMinHeight();\n w.poke(this._parentSection.id);\n }.bind(this), \"viewport\");\n }.bind(this);\n r.subscribe(\"Medley/requestDataSet\", function() {\n this._triggerLoader = new z({\n controller: this._controller,\n data: this.getData(),\n displayCallback: ta,\n options: {\n constHeight: true\n },\n node: this.getNode()\n }, [{\n node: this.getNode(),\n onVisibleBuffer: ga,\n onVisibleStrict: true,\n type: ((sa ? z.TRIGGER_NOW : z.TRIGGER_ONVISIBLE))\n },]);\n }.bind(this));\n },\n freeze: function() {\n j.addClass(this.getNode(), \"-cx-PRIVATE-fbTimelineMedley__frozensection\");\n if (((ea(this.nodeID) && !this.isLoaded()))) {\n ((this._triggerLoader && this._triggerLoader.disableTriggers()));\n }\n ;\n ;\n this.freezeChildren();\n },\n getData: function() {\n if (!this._data) {\n this._data = ba({\n sk: this._sk\n }, o.get(), {\n overview: ((this._parentSection._sk !== this._sk))\n });\n }\n ;\n ;\n return this._data;\n },\n getActiveCollection: function() {\n return this._activeCollection;\n },\n remove: function() {\n if (p.hasPagelet(this.id)) {\n p.removePagelet(this.id);\n }\n ;\n ;\n k.remove(this.getNode());\n this._parentSection.childSections.remove(this.id);\n },\n setActiveCollection: function(sa) {\n if (((((this._activeCollection === sa)) || !sa._tabNode))) {\n return;\n }\n ;\n ;\n if (this._activeCollection) {\n h.inform(\"TimelineSideAds/refresh\");\n oa.log(\"change_collection\", {\n previous_collection: this._activeCollection.getToken(),\n new_collection: sa.getToken()\n });\n this.resetMinHeight();\n this._activeCollection.disableContentLoader();\n j.hide(this._activeCollection.getNode());\n j.removeClass(this._activeCollection._tabNode, la);\n k.scry(this._activeCollection._tabNode, \"div.-cx-PRIVATE-fbTimelineAppSection__tabnub\").forEach(k.remove);\n k.appendContent(sa._tabNode, ma.cloneNode(true));\n ((this._activeCollection.auxContent && j.hide(this._activeCollection.auxContent)));\n ((this._activeCollection.curationContent && j.hide(this._activeCollection.curationContent)));\n this._activeCollection._tabNode.setAttribute(\"aria-selected\", \"false\");\n }\n ;\n ;\n ((sa.auxContent && j.show(sa.auxContent)));\n this._checkCurationContent(sa);\n j.addClass(sa._tabNode, la);\n this._checkTabDimensions(sa);\n this._activeCollection = sa;\n ra.inform(\"changeCollection\");\n if (!ea(sa.nodeID)) {\n k.appendContent(l.JSBNG__find(this.getNode(), \"div.-cx-PRIVATE-fbTimelineAppSection__collectionswrapper\"), sa.getNode());\n }\n ;\n ;\n j.show(sa.getNode());\n ((sa.isLoaded() && this.unsetMinHeight()));\n sa._tabNode.setAttribute(\"aria-selected\", \"true\");\n sa.enableContentLoader();\n },\n resetMinHeight: function(sa) {\n ((sa || (sa = this.getNode())));\n var ta = ((qa(this.id) || ((sa.offsetHeight - ha))));\n ((((ta > 0)) && this._updateScrollAfterHeight(sa, ta)));\n },\n JSBNG__scrollTo: function(sa, ta) {\n var ua = aa.getElementPosition(this.getNode());\n ua.y -= ((sa || ja));\n ((ta && this._parentSection.toggleScrollLoad(false)));\n m.JSBNG__scrollTo(ua, ia, null, null, function() {\n ua = aa.getElementPosition(this.getNode());\n ua.y -= ((sa || ja));\n m.JSBNG__scrollTo(ua);\n ((ta && this._parentSection.toggleScrollLoad(true)));\n }.bind(this));\n },\n thaw: function() {\n j.removeClass(this.getNode(), \"-cx-PRIVATE-fbTimelineMedley__frozensection\");\n ((this._triggerLoader && this._triggerLoader.enableTriggers()));\n this.thawChildren();\n },\n unsetMinHeight: function() {\n this._updateScrollAfterHeight(this.getNode(), 0);\n },\n _updateScrollAfterHeight: function(sa, ta) {\n q.set(sa, \"min-height\", ((ta + \"px\")));\n h.inform(\"reflow\");\n },\n _checkCurationContent: function(sa) {\n var ta = l.scry(this.getNode(), \".-cx-PRIVATE-fbTimelineAppSection__addcurationbutton\")[0];\n if (ta) {\n j.conditionShow(ta, sa.curationContent);\n if (sa.curationContent) {\n j.show(sa.curationContent);\n if (sa.curationContentState) {\n u.informState(sa.curationContentState, this.id);\n }\n ;\n ;\n }\n else u.informState(g.hide, this.id, g.showItems);\n ;\n ;\n }\n ;\n ;\n },\n _getTabObj: function() {\n if (!this._tabObj) {\n this._tabObj = {\n aux: k.JSBNG__find(this.getNode(), \".-cx-PRIVATE-fbTimelineAppSection__aux\"),\n items: [],\n nav: k.JSBNG__find(this.getNode(), \".-cx-PRIVATE-fbTimelineAppSection__navigation\"),\n tabs: k.JSBNG__find(this.getNode(), \".-cx-PRIVATE-fbTimelineAppSection__tabs\"),\n width: 0\n };\n j.addClass(this._tabObj.tabs, \"-cx-PRIVATE-fbTimelineAppSection__tabsloaded\");\n }\n ;\n ;\n return this._tabObj;\n },\n _checkTabDimensions: function(sa) {\n var ta = this._getTabObj(), ua = ((ta.nav.offsetWidth - ta.aux.offsetWidth));\n if (((ua >= ta.width))) {\n if (((!ta.hidden && ((((ua - ta.tabs.offsetWidth)) >= 0))))) {\n return;\n }\n ;\n ;\n j.removeClass(ta.tabs, ka);\n }\n ;\n ;\n if (((ta.hidden && ((sa._tabNode.parentNode === ta.overflow))))) {\n k.prependContent(ta.overflow, ta.dropdown.previousSibling);\n k.insertBefore(ta.dropdown, sa._tabNode);\n }\n ;\n ;\n if (((((((ua - ta.tabs.offsetWidth)) >= 0)) && !ta.hidden))) {\n return;\n }\n ;\n ;\n var va = ta.items.length;\n if (((va && ta.hidden))) {\n for (var wa = 0; ((wa < va)); wa++) {\n k.appendContent(ta.tabs, ta.items[wa]);\n ;\n };\n ;\n k.remove(ta.dropdown);\n }\n ;\n ;\n j.conditionClass(ta.tabs, ka, ((((ua - ta.tabs.offsetWidth)) < 0)));\n ta.width = ua;\n ta.hidden = 0;\n if (((((ua - ta.tabs.offsetWidth)) >= 0))) {\n return;\n }\n ;\n ;\n if (!ta.dropdown) {\n ta.dropdown = na();\n ta.overflow = k.JSBNG__find(ta.dropdown, \".-cx-PRIVATE-fbTimelineAppSection__tabdropdownoverflow\");\n ta.items = k.scry(this.getNode(), \".-cx-PRIVATE-fbTimelineAppSection__tab\");\n va = ta.items.length;\n }\n ;\n ;\n k.appendContent(ta.tabs, ta.dropdown);\n var xa = 0;\n for (wa = ((va - 1)); ((((wa > 0)) && ((xa <= 0)))); wa--) {\n if (((ta.items[wa] !== sa._tabNode))) {\n k.prependContent(ta.overflow, ta.items[wa]);\n xa = ((ua - ta.tabs.offsetWidth));\n ta.hidden++;\n }\n ;\n ;\n };\n ;\n }\n });\n e.exports = ra;\n});\n__d(\"TimelineDrag\", [\"JSBNG__Event\",\"ArbiterMixin\",\"Locale\",\"Style\",\"Vector\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"ArbiterMixin\"), i = b(\"Locale\"), j = b(\"Style\"), k = b(\"Vector\"), l = b(\"copyProperties\");\n function m(n, o, p) {\n p = ((p || {\n }));\n this._listenOn = p.listenOn;\n this._offsetInput = o;\n this._defaultOffset = p.default_offset;\n this._killClicks = p.killClicks;\n this._vertical = true;\n this._RTLXSwitch = false;\n this.setPicture(n, p);\n };\n;\n l(m.prototype, h, {\n setPicture: function(n, o) {\n if (!n) {\n return false;\n }\n ;\n ;\n o = ((o || {\n }));\n this._picture = n;\n this._defaultOffset = o.default_offset;\n if (o.offsetInput) {\n this._offsetInput = o.offsetInput;\n }\n ;\n ;\n if (((o.vertical !== undefined))) {\n this._vertical = o.vertical;\n }\n ;\n ;\n if (o.height) {\n this._containerHeight = o.height;\n }\n ;\n ;\n if (o.width) {\n this._containerWidth = o.width;\n }\n ;\n ;\n if (this._vertical) {\n this._offsetType = \"JSBNG__top\";\n this._eventCoord = \"y\";\n }\n else {\n this._RTLXSwitch = i.isRTL();\n this._offsetType = \"left\";\n this._eventCoord = \"x\";\n }\n ;\n ;\n if (this._picture.complete) {\n this._initialLoad();\n }\n else this._loadListener = g.listen(this._picture, \"load\", function() {\n this._loadListener.remove();\n this._initialLoad();\n }.bind(this));\n ;\n ;\n },\n destroy: function() {\n this._stopDrag();\n this._saveOffset();\n ((this._mousedown && this._mousedown.remove()));\n ((this._onclick && this._onclick.remove()));\n ((this._loadListener && this._loadListener.remove()));\n },\n _initialLoad: function() {\n var n = ((this._listenOn ? this._listenOn : this._picture));\n ((this._mousedown && this._mousedown.remove()));\n this._mousedown = g.listen(n, \"mousedown\", this._onMouseDown.bind(this));\n if (this._vertical) {\n this._maxOffset = ((this._containerHeight - this._picture.offsetHeight));\n }\n else this._maxOffset = ((this._containerWidth - this._picture.offsetWidth));\n ;\n ;\n if (((this._defaultOffset !== undefined))) {\n this._setOffset(this._defaultOffset);\n }\n ;\n ;\n ((this._onclick && this._onclick.remove()));\n if (this._killClicks) {\n this._onclick = g.listen(n, \"click\", this._onClick.bind(this));\n }\n ;\n ;\n this._saveOffset();\n },\n _onClick: function(JSBNG__event) {\n JSBNG__event.kill();\n },\n _onMouseDown: function(JSBNG__event) {\n var n = ((parseInt(j.get(this._picture, this._offsetType), 10) || 0));\n this._pictureStartDragOffset = ((n - k.getEventPosition(JSBNG__event)[this._eventCoord]));\n this._startDrag();\n JSBNG__event.kill();\n },\n _startDrag: function() {\n if (!this._dragStarted) {\n this.inform(\"startdrag\", this);\n this._dragTokens = [g.listen(JSBNG__document.documentElement, \"mouseup\", this._onMouseUp.bind(this)),g.listen(JSBNG__document.documentElement, \"mousemove\", this._onMouseMove.bind(this)),];\n this._dragStarted = true;\n }\n ;\n ;\n },\n _saveOffset: function() {\n var n = parseInt(j.get(this._picture, this._offsetType), 10);\n if (this._RTLXSwitch) {\n this._offsetInput.value = ((((n + this._containerWidth)) - this._picture.offsetWidth));\n }\n else this._offsetInput.value = n;\n ;\n ;\n },\n _stopDrag: function() {\n if (this._dragStarted) {\n this.inform(\"stopdrag\", this);\n this._dragStarted = false;\n this._dragTokens.forEach(function(n) {\n n.remove();\n });\n this._saveOffset();\n }\n ;\n ;\n },\n _onMouseUp: function(JSBNG__event) {\n this._stopDrag();\n JSBNG__event.kill();\n },\n _setOffset: function(n) {\n if (this._RTLXSwitch) {\n n = Math.max(0, Math.min(n, -this._maxOffset));\n }\n else n = Math.min(0, Math.max(n, this._maxOffset));\n ;\n ;\n j.set(this._picture, this._offsetType, ((n + \"px\")));\n },\n _onMouseMove: function(JSBNG__event) {\n this._setOffset(((this._pictureStartDragOffset + k.getEventPosition(JSBNG__event)[this._eventCoord])));\n JSBNG__event.kill();\n }\n });\n e.exports = m;\n});\n__d(\"TimelineCover\", [\"Arbiter\",\"Button\",\"JSBNG__CSS\",\"DOM\",\"HTML\",\"Parent\",\"DOMScroll\",\"TimelineController\",\"TimelineDrag\",\"Style\",\"Vector\",\"$\",\"copyProperties\",\"cx\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Button\"), i = b(\"JSBNG__CSS\"), j = b(\"DOM\"), k = b(\"HTML\"), l = b(\"Parent\"), m = b(\"DOMScroll\"), n = b(\"TimelineController\"), o = b(\"TimelineDrag\"), p = b(\"Style\"), q = b(\"Vector\"), r = b(\"$\"), s = b(\"copyProperties\"), t = b(\"cx\"), u = b(\"ge\");\n function v(w, x, y) {\n this.root = r(\"fbProfileCover\");\n if (((typeof x === \"object\"))) {\n this._coverHeight = x.cover_height;\n this._coverWidth = x.cover_width;\n this.previewing = x.previewing;\n this._isLegacy = false;\n }\n else {\n this._isLegacy = true;\n this._coverHeight = x;\n this.previewing = y;\n }\n ;\n ;\n this._parentSection = l.byClass(this.root, \"fbTimelineSection\");\n this.cover = j.JSBNG__find(this.root, \".cover\");\n v.instance = this;\n this.editing = false;\n if (!this._parentSection) {\n this._parentSection = l.byClass(this.root, \"fbEventHeader\");\n }\n ;\n ;\n if (this.previewing) {\n this.editMode();\n this.updateCoverImage(this.previewing);\n }\n ;\n ;\n };\n;\n v.instance = null;\n v.getInstance = function() {\n return v.instance;\n };\n s(v.prototype, {\n showLoadingIndicator: function() {\n var w = u(\"fbCoverImageContainer\");\n if (w) {\n i.addClass(w, \"opaquedLoading\");\n }\n ;\n ;\n },\n hideLoadingIndicator: function() {\n var w = u(\"fbCoverImageContainer\");\n if (w) {\n i.removeClass(w, \"opaquedLoading\");\n }\n ;\n ;\n },\n isCoverImageVerticalFlow: function(w) {\n return !(w.style.height);\n },\n editMode: function() {\n h.setEnabled(j.JSBNG__find(this.root, \"button.cancelButton\"), true);\n h.setEnabled(j.JSBNG__find(this.root, \"button.saveButton\"), true);\n this.hideLoadingIndicator();\n this._coverImage = j.scry(this.root, \".coverImage\")[0];\n var w = j.scry(this._coverImage, \".coverWrap\")[0];\n if (w) {\n var x = j.JSBNG__find(w, \".coverPhotoImg\");\n this._originalIsVertical = this.isCoverImageVerticalFlow(x);\n this._originalOffset = p.get(x, ((this._originalIsVertical ? \"JSBNG__top\" : \"left\")));\n }\n ;\n ;\n i.addClass(this._parentSection, \"fbEditCover\");\n m.JSBNG__scrollTo(this.root);\n if (this.previewing) {\n j.remove(this._coverImage);\n i.show(this._coverImage);\n }\n ;\n ;\n var y = j.scry(this._coverImage, \".coverPhotoImg\")[0];\n if (y) {\n this._createDragger();\n }\n ;\n ;\n this.editing = true;\n g.inform(\"CoverPhotoEdit\", {\n sender: this,\n state: \"open\"\n });\n },\n _exitEditMode: function() {\n if (this._timelineDrag) {\n this._timelineDrag.destroy();\n this._timelineDrag = null;\n }\n ;\n ;\n j.JSBNG__find(this.root, \"input.hiddenPhotoID\").value = null;\n j.JSBNG__find(this.root, \"input.hiddenVideoID\").value = null;\n h.setEnabled(j.JSBNG__find(this.root, \"button.cancelButton\"), false);\n h.setEnabled(j.JSBNG__find(this.root, \"button.saveButton\"), false);\n i.removeClass(this._parentSection, \"fbEditCover\");\n this.hideLoadingIndicator();\n this.previewing = false;\n g.inform(\"CoverPhotoEdit\", {\n sender: this,\n state: \"JSBNG__closed\"\n });\n },\n _createDragger: function(w) {\n var x;\n if (this._isLegacy) {\n x = j.JSBNG__find(this.root, \"input.photoOffsetInput\");\n this._originalIsVertical = true;\n }\n else {\n var y = ((((w === undefined)) ? this._originalIsVertical : w));\n x = ((y ? j.JSBNG__find(this.root, \"input.photoOffsetYInput\") : j.JSBNG__find(this.root, \"input.photoOffsetXInput\")));\n }\n ;\n ;\n this._timelineDrag = new o(j.JSBNG__find(this.root, \".coverImage .coverPhotoImg\"), x, {\n height: this._coverHeight,\n width: this._coverWidth,\n listenOn: this.cover,\n vertical: y,\n killClicks: true\n });\n },\n updateCoverImage: function(w, x, y) {\n this.videoID = y;\n if (x) {\n this.editMode();\n }\n ;\n ;\n j.JSBNG__find(this.root, \"input.hiddenPhotoID\").value = w;\n j.JSBNG__find(this.root, \"input.hiddenVideoID\").value = ((y || null));\n h.setEnabled(j.JSBNG__find(this.root, \"button.saveButton\"), true);\n if (x) {\n j.replace(j.JSBNG__find(this.root, \".coverImage\"), k(x));\n }\n ;\n ;\n var z = j.JSBNG__find(j.JSBNG__find(this.root, \".coverImage\"), \".coverPhotoImg\"), aa = this.isCoverImageVerticalFlow(z), ba;\n if (this._isLegacy) {\n ba = j.JSBNG__find(this.root, \"input.photoOffsetInput\");\n }\n else ba = ((aa ? j.JSBNG__find(this.root, \"input.photoOffsetYInput\") : j.JSBNG__find(this.root, \"input.photoOffsetXInput\")));\n ;\n ;\n if (this._timelineDrag) {\n this._timelineDrag.setPicture(z, {\n offsetInput: ba,\n vertical: aa\n });\n }\n else this._createDragger(aa);\n ;\n ;\n },\n cancelUpdate: function() {\n j.remove(j.scry(this.root, \".coverImage\")[0]);\n j.prependContent(this.cover, this._coverImage);\n if (((this._originalOffset !== undefined))) {\n p.set(j.JSBNG__find(this._coverImage, \".coverPhotoImg\"), ((this._originalIsVertical ? \"JSBNG__top\" : \"left\")), this._originalOffset);\n }\n ;\n ;\n this._exitEditMode();\n },\n saveComplete: function() {\n this._coverImage = j.scry(this.root, \".coverImage\")[0];\n var w = l.byClass(this.root, \"fbTimelineTopSectionBase\");\n ((w && i.removeClass(w, \"-cx-PRIVATE-fbTimelineLightHeader__nocover\")));\n this._exitEditMode();\n },\n isInEditMode: function() {\n return this.editing;\n }\n });\n e.exports = v;\n});\n__d(\"TimelineCoverDisclaimer\", [\"Dialog\",], function(a, b, c, d, e, f) {\n var g = b(\"Dialog\");\n function h(i, j, k) {\n if (((h.displayed === undefined))) {\n h.displayed = true;\n }\n else return\n ;\n new g().setModal(true).setTitle(i).setBody(j).setButtonsMessage(k).setButtons(g.OK).show();\n };\n;\n e.exports = h;\n});\n__d(\"legacy:TimelineCoverDisclaimer\", [\"TimelineCoverDisclaimer\",], function(a, b, c, d) {\n a.TimelineCoverDisclaimer = b(\"TimelineCoverDisclaimer\");\n}, 3);\n__d(\"TimelineMedley\", [\"Class\",\"JSBNG__CSS\",\"DOM\",\"DOMPosition\",\"DOMQuery\",\"PageTransitions\",\"TimelineAppSection\",\"TimelineDynamicSectionConfig\",\"TimelineMonitor\",\"TimelineSection\",\"URI\",\"ViewportBounds\",\"copyProperties\",\"csx\",\"cx\",\"ge\",\"$\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"JSBNG__CSS\"), i = b(\"DOM\"), j = b(\"DOMPosition\"), k = b(\"DOMQuery\"), l = b(\"PageTransitions\"), m = b(\"TimelineAppSection\"), n = b(\"TimelineDynamicSectionConfig\"), o = b(\"TimelineMonitor\"), p = b(\"TimelineSection\"), q = b(\"URI\"), r = b(\"ViewportBounds\"), s = b(\"copyProperties\"), t = b(\"csx\"), u = b(\"cx\"), v = b(\"ge\"), w = b(\"$\"), x = \"timeline-medley\", y = \"about\", z = 2, aa = false;\n function ba(ea) {\n var fa = ((ea.getQueryData().sk || ea.getPath().split(\"/\")[2]));\n return ((n.skmapping[fa] || fa));\n };\n;\n function ca(ea) {\n if (ea.getQueryData().id) {\n return ea.getQueryData.id;\n }\n ;\n ;\n return ea.getPath().split(\"/\")[1];\n };\n;\n function da(ea, fa, ga) {\n this.parent.construct(this, x);\n this.isOverview = ((ea.length > 1));\n n.breaker = ga.breaker;\n m.createFromArray(ea).forEach(this.appendSection.bind(this));\n o.monitorSection(this);\n this._lastLoadedSection = this.childSections.get(m.getIDBySK(fa)).setIsLoaded(true);\n p.setActiveSectionID(this._lastLoadedSection.id);\n if (((aa && this.isMedleyView()))) {\n this.addSectionPlaceholders();\n }\n ;\n ;\n var ha = q.getNextURI();\n this._vanity = ca(ha);\n this._sk = ba(ha);\n if (this.isOverview) {\n l.registerHandler(this._transitionHandler.bind(this));\n }\n ;\n ;\n };\n;\n g.extend(da, p);\n s(da, {\n loadToSection: function(ea, fa) {\n p.setActiveSectionID(ea);\n p.callWithSection(x, function(ga) {\n var ha = ga.childSections.getHead(), ia = 0;\n while (((ha && ((ha.id !== ea))))) {\n ia++;\n ha = ha.getNext();\n };\n ;\n if (!ia) {\n return fa(ha);\n }\n ;\n ;\n ia--;\n ((ia && ga.addUpcomingSectionPlaceholders(ga.childSections.getHead(), ia)));\n ga.addSectionPlaceholder(ha, ha.getPrev(), true);\n var ja = ha.subscribe(\"loaded\", function() {\n fa(ha);\n ja.unsubscribe();\n });\n });\n },\n scrollToSection: function(ea, fa, ga) {\n p.callWithSection(ea, function(ha) {\n ha.JSBNG__scrollTo(fa, ga);\n });\n },\n toggleScrollLoad: function(ea) {\n aa = ea;\n p.callWithSection(x, function(fa) {\n fa.toggleScrollLoad(ea);\n });\n }\n });\n s(da.prototype, {\n addSectionTeasers: function() {\n if (!this.isMedleyView()) {\n h.removeClass(this.getNode(), \"-cx-PRIVATE-fbTimelineMedley__permafrost\");\n this.thawChildren();\n this.addSectionPlaceholders();\n this.addSectionBreak();\n }\n ;\n ;\n },\n addUpcomingSectionPlaceholders: function(ea, fa) {\n fa = ((fa || z));\n while (ea = ea.getNext()) {\n if (((!this.addSectionPlaceholder(ea, ea.getPrev()) && ((--fa <= 0))))) {\n break;\n }\n ;\n ;\n };\n ;\n },\n addSectionPlaceholder: function(ea, fa, ga) {\n if (((!ea.isLoaded() && v(ea.nodeID)))) {\n return false;\n }\n ;\n ;\n if (!v(ea.nodeID)) {\n i.insertAfter(fa.getNode(), ea.getNode());\n ea.createTriggerLoader(ga);\n return false;\n }\n ;\n ;\n return true;\n },\n addSectionBreak: function() {\n if (this._lastLoadedSection.getNext()) {\n i.insertAfter(this.childSections.getHead().getNode(), n.breaker);\n }\n else i.remove(n.breaker);\n ;\n ;\n },\n addSectionPlaceholders: function() {\n this.addUpcomingSectionPlaceholders(this._lastLoadedSection);\n },\n getNode: function() {\n return w(this.id);\n },\n isMedleyView: function() {\n return ((this._sk === y));\n },\n toggleScrollLoad: function(ea) {\n aa = ea;\n if (ea) {\n this.thawChildren();\n this.addSectionPlaceholders();\n }\n else this.freezeChildren();\n ;\n ;\n },\n _transitionHandler: function(ea) {\n if (((ca(ea) !== this._vanity))) {\n return false;\n }\n ;\n ;\n var fa = ba(ea);\n if (!fa) {\n return false;\n }\n ;\n ;\n if (((fa === y))) {\n return false;\n }\n else {\n var ga = ea.getQueryData();\n if (!ga.next_cursor) {\n return false;\n }\n ;\n ;\n var ha = this.childSections.getHead();\n while (ha) {\n if (((ha._sk === fa))) {\n if (((!ha._activeCollection && !k.scry(ha._activeCollection.getNode(), \".-cx-PRIVATE-fbTimelineMedleyPager__root\")[0]))) {\n return false;\n }\n ;\n ;\n this._transitionToSection.bind(this, ha, ga).defer();\n return true;\n }\n ;\n ;\n ha = ha.getNext();\n };\n ;\n }\n ;\n ;\n return false;\n },\n _transitionToSection: function(ea, fa) {\n var ga = ((j.getElementPosition(ea.getNode()).y - r.getTop()));\n i.scry(ea.getNode(), \".-cx-PRIVATE-fbTimelineCollectionGrid__overflowitem\").forEach(function(ja) {\n h.removeClass(ja, \"-cx-PRIVATE-fbTimelineCollectionGrid__overflowitem\");\n });\n this._sk = ea._sk;\n p.setActiveSectionID(ea.id);\n ea.thaw();\n h.addClass(this.getNode(), \"-cx-PRIVATE-fbTimelineMedley__permafrost\");\n this.freezeChildren();\n var ha = k.JSBNG__find(ea._activeCollection.getNode(), \".-cx-PRIVATE-fbTimelineMedleyPager__root\");\n ea._activeCollection.addContentLoader(ha, fa.next_cursor);\n ea._activeCollection._contentLoader.load({\n node: ha\n });\n var ia = this.childSections.getHead();\n while (((ia && ((ia.id !== ea.id))))) {\n ia.remove();\n ia = this.childSections.getHead();\n };\n ;\n p.inform(\"Medley/transitionToSection\", ea.id);\n ea.JSBNG__scrollTo(((((ga < 0)) ? ga : 0)));\n l.transitionComplete();\n }\n });\n e.exports = da;\n});\n__d(\"TimelineNavLight\", [\"JSBNG__CSS\",\"DOM\",\"DOMQuery\",\"Parent\",\"TimelineSection\",\"csx\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = b(\"DOM\"), i = b(\"DOMQuery\"), j = b(\"Parent\"), k = b(\"TimelineSection\"), l = b(\"csx\"), m = b(\"cx\");\n function n(o) {\n var p = i.scry(o, \".-cx-PRIVATE-fbTimelineNavLight__activeitem\")[0], q = i.scry(o, \".-cx-PRIVATE-fbTimelineNavLight__item\"), r = j.byClass(o, \"-cx-PRIVATE-fbTimelineLightHeader__navwrapper\").offsetWidth, s = q[((q.length - 1))];\n if (((((s.offsetLeft + s.offsetWidth)) > r))) {\n g.addClass(o, \"-cx-PRIVATE-fbTimelineNavLight__navminimal\");\n }\n ;\n ;\n for (var t = ((q.length - 1)); ((t > 1)); t--) {\n if (((((q[t].offsetLeft + q[t].offsetWidth)) > r))) {\n h.remove(q[t]);\n }\n else break;\n ;\n ;\n };\n ;\n var u = \"-cx-PUBLIC-fbTimelineLightHeader__loading\";\n g.removeClass(j.byClass(o, u), u);\n k.subscribe(\"Medley/transitionToSection\", function(v, w) {\n if (((p && ((w === p.getAttribute(\"data-medley-id\")))))) {\n return;\n }\n ;\n ;\n ((p && g.removeClass(p, \"-cx-PRIVATE-fbTimelineNavLight__activeitem\")));\n for (var x = 0; ((x < q.length)); ++x) {\n if (((q[x].getAttribute(\"data-medley-id\") === w))) {\n g.addClass(q[x], \"-cx-PRIVATE-fbTimelineNavLight__activeitem\");\n p = q[x];\n return;\n }\n ;\n ;\n };\n ;\n });\n };\n;\n e.exports = n;\n});\n__d(\"TimelineOGCollectionAddSelector\", [\"AsyncRequest\",\"DOM\",\"Form\",\"TidyArbiterMixin\",\"copyProperties\",\"csx\",\"tidyEvent\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"DOM\"), i = b(\"Form\"), j = b(\"TidyArbiterMixin\"), k = b(\"copyProperties\"), l = b(\"csx\"), m = b(\"tidyEvent\");\n function n(o, p, q, r) {\n this._endpoint = q;\n this._button = o;\n this._buttonParent = o.parentNode;\n this._audienceSelector = r;\n var s = h.JSBNG__find(o, \".-cx-PUBLIC-fbTimelineAddSelector__menubutton\");\n n.inform(\"addButton\", {\n button: s,\n root: this._buttonParent\n });\n m([p.getMenu().subscribe(\"rendered\", function(t, u) {\n n.inform(\"menuOpened\", {\n audienceSelector: r\n });\n h.appendContent(h.JSBNG__find(u, \".-cx-PUBLIC-abstractMenu__border\"), r);\n }),p.subscribe(\"itemselected\", this._onChange.bind(this)),]);\n };\n;\n k(n, j);\n k(n.prototype, j, {\n _onChange: function(o, p) {\n var q = p.getValue(), r = ((this.inform(\"addedToCollection\", q) || {\n }));\n new g(this._endpoint).setData(k(i.serialize(this._audienceSelector), r, {\n action: \"add\",\n collection_token: q,\n mechanism: \"add_selector\"\n })).send();\n }\n });\n e.exports = n;\n});\n__d(\"TimelineCurationNUXController\", [\"AppSectionCurationState\",\"AsyncRequest\",\"JSBNG__CSS\",\"DOM\",\"JSBNG__Event\",\"OGCollectionAddMenu\",\"TimelineOGCollectionAddSelector\",\"URI\",\"$\",\"csx\",\"cx\",\"tidyEvent\",], function(a, b, c, d, e, f) {\n var g = b(\"AppSectionCurationState\"), h = b(\"AsyncRequest\"), i = b(\"JSBNG__CSS\"), j = b(\"DOM\"), k = b(\"JSBNG__Event\"), l = b(\"OGCollectionAddMenu\"), m = b(\"TimelineOGCollectionAddSelector\"), n = b(\"URI\"), o = b(\"$\"), p = b(\"csx\"), q = b(\"cx\"), r = b(\"tidyEvent\"), s = 5, t = \"pagelet_timeline_medley_movies\", u = 165, v, w, x, y, z, aa, ba = [], ca = {\n reports: 0,\n about: 1,\n section: 2,\n section_privacy: 3,\n add_button: 4,\n privacy: 5,\n 0: \"reports\",\n 1: \"about\",\n 2: \"section\",\n 3: \"section_privacy\",\n 4: \"add_button\",\n 5: \"privacy\"\n };\n function da() {\n ba.forEach(function(na) {\n ((na.button && na.button.setAttribute(\"data-hover\", \"tooltip\")));\n ((na.listener && na.listener.remove()));\n });\n ba.length = 0;\n };\n;\n function ea(na) {\n if (z[na]) {\n z[na].destroy();\n delete z[na];\n ((((na === \"add_button\")) && da()));\n }\n ;\n ;\n ((((aa[na] && aa[na].parentNode)) && j.remove(aa[na])));\n };\n;\n function fa(na) {\n if (!i.hasClass(na, \"-cx-PRIVATE-fbTimelineCurationNUX__fadingout\")) {\n i.addClass(na, \"-cx-PRIVATE-fbTimelineCurationNUX__fadingout\");\n d([\"Animation\",], function(oa) {\n new oa(na).to(\"opacity\", 0).duration(300).ease(oa.ease.end).hide().go();\n });\n }\n ;\n ;\n };\n;\n function ga(na) {\n ha(na);\n var oa = ((ca[na] + 1));\n ((oa && ia(ca[oa])));\n };\n;\n function ha(na) {\n new h(\"/ajax/timeline/collections/tour/curation/\").setAllowCrossPageTransition(true).setData({\n step: na\n }).send();\n ea(na);\n };\n;\n function ia(na) {\n y = na;\n switch (na) {\n case \"reports\":\n d([\"TimelineController\",], function(oa) {\n oa.runOnceWhenSectionFullyLoaded(function() {\n ka(j.JSBNG__find(o(\"timeline_tab_content\"), \".-cx-PUBLIC-timelineOneColMin__rightcapsulecontainer\"), na);\n }, \"recent\", \"0\");\n });\n break;\n case \"about\":\n v = j.scry(o(\"fbTimelineHeadline\"), \".-cx-PRIVATE-fbTimelineNavLight__item\")[1];\n w = r(k.listen(v, \"click\", function() {\n v = null;\n w.remove();\n y = \"section\";\n }));\n ka(v, na);\n break;\n case \"section\":\n if (v) {\n n(v.getAttribute(\"href\")).go();\n v = null;\n ((w && w.remove()));\n }\n else d([\"OnVisible\",\"TimelineMedley\",], function(oa, pa) {\n j.appendContent(j.JSBNG__find(o(\"pagelet_timeline_main_column\"), \".-cx-PRIVATE-fbTimelineMedley__maincolumn\"), aa.section);\n r(k.listen(aa.section, \"click\", function() {\n pa.scrollToSection(t, u, 1);\n fa(aa.section);\n }));\n pa.loadToSection(t, function() {\n ka(o(t), na);\n var qa = new oa(o(t), function() {\n fa(aa.section);\n qa.remove();\n }, false, -u);\n });\n });\n ;\n ;\n break;\n case \"section_privacy\":\n d([\"TimelineAppSectionCuration\",], function(oa) {\n oa.informState(g.showItems, t);\n ka(j.scry(o(t), \".audienceSelector\")[0], na);\n });\n break;\n case \"privacy\":\n k.fire(x, \"click\");\n break;\n };\n ;\n };\n;\n function ja(na, oa) {\n if (z.add_button) {\n var pa = j.scry(oa, \"[data-hover]\")[0];\n ba.push({\n button: pa,\n listener: r(k.listen(na, \"mouseenter\", function() {\n x = na;\n ka(na, \"add_button\");\n }))\n });\n ((pa && pa.removeAttribute(\"data-hover\")));\n }\n ;\n ;\n };\n;\n function ka(na, oa) {\n if (z[oa]) {\n z[oa].setContext(na).setOffsetX(5).show();\n if (((oa === \"privacy\"))) {\n ea(\"add_button\");\n }\n ;\n ;\n }\n ;\n ;\n };\n;\n function la(na, oa, pa) {\n var qa = pa.getAttribute(\"data-action\");\n if (((((qa === \"next\")) || ((qa === \"done\"))))) {\n ga(na);\n }\n else ha(na);\n ;\n ;\n };\n;\n var ma = {\n init: function(na) {\n var oa = na.next_step, pa = ca[oa];\n z = na.dialogs;\n aa = ((na.links ? na.links : []));\n da();\n if (((((oa === \"section\")) && ((oa !== y))))) {\n ea(\"section\");\n ea(\"section_privacy\");\n pa += 2;\n oa = ca[pa];\n }\n ;\n ;\n {\n var fin264keys = ((window.top.JSBNG_Replay.forInKeys)((z))), fin264i = (0);\n var qa;\n for (; (fin264i < fin264keys.length); (fin264i++)) {\n ((qa) = (fin264keys[fin264i]));\n {\n r(z[qa].subscribe(\"button\", la.curry(qa)));\n ;\n };\n };\n };\n ;\n if (z.add_button) {\n var ra = ((na.isViewingSelf ? m : l));\n r([ra.subscribe(\"menuOpened\", function(sa, ta) {\n ka.curry(j.JSBNG__find(ta.audienceSelector, \".audienceSelector\"), \"privacy\").defer(s);\n }),ra.subscribe(\"addButton\", function(sa, ta) {\n ja.curry(ta.button, ta.root).defer(s);\n }),]);\n }\n ;\n ;\n if (((na.isViewingSelf && ((pa < ca.add_button))))) {\n ia(oa);\n }\n ;\n ;\n }\n };\n e.exports = ma;\n});\n__d(\"legacy:TimelineCover\", [\"TimelineCover\",], function(a, b, c, d) {\n a.TimelineCover = b(\"TimelineCover\");\n}, 3);\n__d(\"SubMenu\", [\"JSBNG__Event\",\"Arbiter\",\"copyProperties\",\"JSBNG__CSS\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Arbiter\"), i = b(\"copyProperties\"), j = b(\"JSBNG__CSS\");\n function k() {\n \n };\n;\n i(k.prototype, {\n _subMenu: null,\n _mainMenu: null,\n _forward: null,\n _backward: null,\n init: function(l, m, n, o) {\n this._subMenu = l;\n this._mainMenu = m;\n this._forward = n;\n this._backward = o;\n h.subscribe(\"SubMenu/Reset\", this._goToMainMenu.bind(this));\n g.listen(n, \"click\", this._goToSubMenu.bind(this));\n g.listen(o, \"click\", this._goToMainMenu.bind(this));\n },\n initAsyncChildMenu: function(l) {\n g.listen(this._forward, \"click\", function() {\n this._goToSubMenu();\n l.load();\n }.bind(this));\n },\n _goToMainMenu: function() {\n j.hide(this._subMenu);\n j.show(this._mainMenu);\n },\n _goToSubMenu: function() {\n j.hide(this._mainMenu);\n j.show(this._subMenu);\n }\n });\n e.exports = k;\n});\n__d(\"legacy:ui-submenu\", [\"SubMenu\",], function(a, b, c, d) {\n a.SubMenu = b(\"SubMenu\");\n}, 3);\n__d(\"AsyncMenu\", [\"AsyncRequest\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"copyProperties\"), i = b(\"emptyFunction\");\n function j(k, l) {\n this._uri = k;\n this._elem = l;\n };\n;\n h(j.prototype, {\n _uri: null,\n _elem: null,\n load: function() {\n this.load = i;\n g.bootstrap(this._uri, this._elem);\n }\n });\n e.exports = j;\n});"); |
| // 13744 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o186,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y6/r/UTKDDtdCpTB.js",o187); |
| // undefined |
| o186 = null; |
| // undefined |
| o187 = null; |
| // 13878 |
| JSBNG_Replay.s1406cdb8f82a4497c9e210b291001f76845e62bf_379[0](false); |
| // 13894 |
| o63.readyState = 2; |
| // 13892 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o76,o17); |
| // undefined |
| o17 = null; |
| // 13898 |
| o63.readyState = 3; |
| // 13896 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o76,o40); |
| // undefined |
| o40 = null; |
| // 13902 |
| o63.readyState = 4; |
| // undefined |
| o63 = null; |
| // 13943 |
| o43.toString = f81632121_1344; |
| // undefined |
| o43 = null; |
| // 14042 |
| o16.scrollTop = 900; |
| // 13900 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o76,o41); |
| // undefined |
| o76 = null; |
| // undefined |
| o41 = null; |
| // 14210 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"R940f\",]);\n}\n;\n__d(\"StickyController\", [\"Event\",\"CSS\",\"Style\",\"Vector\",\"copyProperties\",\"queryThenMutateDOM\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"CSS\"), i = b(\"Style\"), j = b(\"Vector\"), k = b(\"copyProperties\"), l = b(\"queryThenMutateDOM\");\n function m(n, o, p, q) {\n this._element = n;\n this._marginTop = o;\n this._onchange = p;\n this._proxy = (q || n.parentNode);\n this._boundQueryOnScroll = this._queryOnScroll.bind(this);\n this._boundMutateOnScroll = this._mutateOnScroll.bind(this);\n };\n k(m.prototype, {\n handleScroll: function() {\n l(this._boundQueryOnScroll, this._boundMutateOnScroll);\n },\n _queryOnScroll: function() {\n this._shouldFix = (j.getElementPosition(this._proxy, \"viewport\").y <= this._marginTop);\n },\n _mutateOnScroll: function() {\n var n = this._shouldFix;\n if ((this.isFixed() !== n)) {\n i.set(this._element, \"top\", (n ? (this._marginTop + \"px\") : \"\"));\n h.conditionClass(this._element, \"fixed_elem\", n);\n (this._onchange && this._onchange(n));\n }\n ;\n },\n start: function() {\n if (this._event) {\n return\n };\n this._event = g.listen(window, \"scroll\", this.handleScroll.bind(this));\n this.handleScroll.bind(this).defer();\n },\n stop: function() {\n (this._event && this._event.remove());\n this._event = null;\n },\n isFixed: function() {\n return h.hasClass(this._element, \"fixed_elem\");\n }\n });\n e.exports = m;\n});\n__d(\"PhotoMultiPhotosThumb\", [\"Event\",\"function-extensions\",\"Style\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\");\n b(\"function-extensions\");\n var h = b(\"Style\"), i = 1200, j = {\n init: function(k, l) {\n var m = null, n = 0;\n function o(q) {\n n = q;\n l.forEach(function(r, s) {\n h.set(r, \"opacity\", ((s === q) ? 1 : 0));\n });\n };\n function p() {\n o((((n + 1)) % l.length));\n m = p.defer(i);\n };\n g.listen(k, \"mouseenter\", function() {\n if (m) {\n return\n };\n n = 0;\n p();\n });\n g.listen(k, \"mouseleave\", function() {\n o(0);\n window.clearTimeout(m);\n m = null;\n });\n }\n };\n e.exports = j;\n});\n__d(\"TimelineSideAds\", [\"function-extensions\",\"Arbiter\",\"CSS\",\"DOM\",\"EgoAdsObjectSet\",\"Event\",\"StickyController\",\"TimelineConstants\",\"TimelineController\",\"UIPagelet\",\"URI\",\"Vector\",\"cx\",\"csx\",\"debounce\",\"ge\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"Arbiter\"), h = b(\"CSS\"), i = b(\"DOM\"), j = b(\"EgoAdsObjectSet\"), k = b(\"Event\"), l = b(\"StickyController\"), m = b(\"TimelineConstants\"), n = b(\"TimelineController\"), o = b(\"UIPagelet\"), p = b(\"URI\"), q = b(\"Vector\"), r = b(\"cx\"), s = b(\"csx\"), t = b(\"debounce\"), u = b(\"ge\"), v = 3, w = 4, x = 75, y = \"data-height\", z = 30000, aa = 0, ba = false, ca, da, ea, fa, ga, ha = new j(), ia, ja = false, ka, la = Infinity, ma = 5, na = false, oa, pa, qa, ra, sa, ta, ua = false, va = [], wa;\n function xa(ub, vb, wb) {\n var xb = 0;\n if (vb) {\n xb += vb.getHeight();\n };\n if ((!cb() && !xb)) {\n return\n };\n ub -= xb;\n var yb = 0;\n for (var zb = 0; (zb < wb); zb++) {\n yb += lb(zb);;\n };\n if (vb) {\n if ((ub < yb)) {\n ub += vb.fold((yb - ub));\n }\n else if ((ub > yb)) {\n ub -= vb.unfold((ub - yb));\n }\n \n };\n return ub;\n };\n function ya() {\n var ub = da.cloneNode(true);\n ub.id = \"\";\n var vb = new j();\n vb.init(i.scry(ub, \"div.ego_unit\"));\n var wb = true;\n vb.forEach(function(xb) {\n if (wb) {\n wb = false;\n }\n else i.remove(xb);\n ;\n });\n h.addClass(ub, \"fixed_elem\");\n return ub;\n };\n function za() {\n ga = undefined;\n if (!n.pageHasScrubber(ia)) {\n db(ma);\n gb();\n }\n else if (pa) {\n eb(da, false);\n var ub = qa;\n (qa && i.remove(qa));\n qa = ya();\n if (ub) {\n rb();\n };\n db(((n.sidebarInitialized() && ja) ? w : v));\n gb();\n if (!ka) {\n var vb = n.getCurrentScrubber();\n if (vb) {\n qb(vb.getRoot(), vb.getOffset());\n };\n }\n ;\n (ka && ka.start());\n }\n else tb.adjustAdsToFit();\n \n ;\n };\n function ab() {\n if (qa) {\n i.remove(qa);\n qa = null;\n }\n ;\n if (ka) {\n ka.stop();\n ka = null;\n }\n ;\n if (cb()) {\n h.conditionClass(da, \"fixed_elem\", !pa);\n h.conditionClass(da, \"-cx-PRIVATE-fbTimelineStyleAds__topaligned\", !n.pageHasScrubber(ia));\n }\n else h.conditionClass(da, \"fixed_elem\", (!pa && n.pageHasScrubber(ia)));\n ;\n };\n function bb(ub) {\n var vb = q.getViewportDimensions().y, wb = n.getCurrentScrubber(), xb = (wb ? wb.getOffset() : m.SCRUBBER_DEFAULT_OFFSET), yb = ((vb - xb) - x);\n if ((wb || cb())) {\n return xa(yb, wb, ub)\n };\n };\n function cb() {\n return n.fixedAds();\n };\n function db(ub) {\n fa = Math.min(ub, ha.getCount());\n ha.forEach(function(vb, wb) {\n eb(vb, (wb >= fa));\n });\n eb(da, (fa === 0));\n };\n function eb(ub, vb) {\n h.conditionClass(ub, \"-cx-PRIVATE-fbTimelineStyleAds__offscreen\", vb);\n ub.setAttribute(\"aria-hidden\", (vb ? \"true\" : \"false\"));\n };\n function fb(ub) {\n var vb = i.find(ha.getUnit(ub), \"div.-cx-PUBLIC-fbAdUnit__root\"), wb = vb.getAttribute(\"data-ad\");\n return JSON.parse(wb).adid;\n };\n function gb() {\n ib();\n hb();\n };\n function hb() {\n var ub;\n if ((ga !== undefined)) {\n ub = ha.getHoldoutAdIDsForSpace(ga, mb);\n }\n else ub = ha.getHoldoutAdIDsForNumAds(fa);\n ;\n if (ub) {\n ub.forEach(jb);\n };\n };\n function ib() {\n if (!ra) {\n return\n };\n for (var ub = (fa - 1); (ub >= 0); --ub) {\n if (((ka && ka.isFixed()) && ((((ub !== 0)) || ((qa && !h.shown(qa))))))) {\n continue;\n };\n var vb = fb(ub);\n if (!ra[vb]) {\n return\n };\n jb(vb);\n };\n };\n function jb(ub) {\n if (!ra[ub]) {\n return\n };\n var vb = i.create(\"iframe\", {\n src: p(\"/ai.php\").addQueryData({\n aed: ra[ub]\n }),\n width: 0,\n height: 0,\n frameborder: 0,\n scrolling: \"no\",\n className: \"fbEmuTracking\"\n });\n vb.setAttribute(\"aria-hidden\", \"true\");\n i.appendContent(da, vb);\n delete ra[ub];\n };\n function kb(ub) {\n var vb = 0;\n while (((ub > 0) && (vb < ma))) {\n ub -= lb(vb);\n if ((ub >= 0)) {\n vb++;\n };\n };\n return vb;\n };\n function lb(ub) {\n var vb = ha.getUnit(ub);\n if (!vb) {\n return 0\n };\n return mb(vb);\n };\n function mb(ub) {\n if (!ub.getAttribute(y)) {\n nb(ub);\n };\n return parseInt(ub.getAttribute(y), 10);\n };\n function nb(ub) {\n ub.setAttribute(y, ub.offsetHeight);\n };\n function ob() {\n for (var ub = 0; (ub < ha.getCount()); ub++) {\n var vb = ha.getUnit(ub);\n if (!vb) {\n continue;\n };\n nb(vb);\n };\n };\n function pb() {\n var ub = i.scry(da, \"div.ego_unit\");\n ha.init(ub);\n var vb = ub.length;\n if (!vb) {\n return\n };\n h.addClass(ha.getUnit(0), \"ego_unit_no_top_border\");\n na = vb;\n za();\n var wb = function(xb) {\n nb(xb);\n na = --vb;\n tb.adjustAdsToFit();\n if (!na) {\n la = Date.now();\n };\n };\n ub.forEach(function(xb) {\n function yb() {\n wb.curry(xb).defer();\n };\n var zb = i.scry(xb, \"img.img\")[0];\n if (!zb) {\n return\n };\n if (zb.complete) {\n yb();\n }\n else k.listen(zb, {\n load: yb,\n error: yb,\n abort: yb\n });\n ;\n });\n };\n function qb(ub, vb) {\n ka = new l(ub, vb, function(wb) {\n if (wb) {\n rb();\n }\n else {\n i.remove(qa);\n gb();\n }\n ;\n });\n if (qa) {\n ka.start();\n };\n };\n function rb() {\n i.insertAfter(da, qa);\n sb();\n };\n function sb() {\n h.conditionShow(qa, ((lb(0) <= bb(1)) && !h.hasClass(document.documentElement, \"tinyViewport\")));\n };\n var tb = {\n init: function(ub, vb, wb) {\n if (ba) {\n return\n };\n ma = wb.max_ads;\n ca = wb.refresh_delay;\n z = wb.refresh_threshold;\n ba = true;\n ea = vb;\n da = ub;\n tb.adjustAdsType(n.shouldShowWideAds());\n sa = g.subscribe([\"UFI/CommentAddedActive\",\"UFI/CommentDeletedActive\",\"UFI/LikeActive\",\"Curation/Action\",\"ProfileBrowser/LoadMoreContent\",\"Ads/NewContentDisplayed\",], tb.loadAdsIfEnoughTimePassed);\n ta = g.subscribe(\"TimelineSideAds/refresh\", tb.forceReloadAds);\n wa = t(tb.loadAdsIfEnoughTimePassed, ca, this, true);\n if (wb.mouse_move) {\n va.push(k.listen(window, \"mousemove\", wa));\n va.push(k.listen(window, \"scroll\", wa));\n va.push(k.listen(window, \"resize\", wa));\n }\n ;\n n.register(n.ADS, tb);\n },\n setShortMode: function(ub) {\n pa = ub;\n },\n start: function(ub) {\n ra = ub;\n oa = null;\n pb();\n },\n updateCurrentKey: function(ub) {\n if ((ub == ia)) {\n return\n };\n ia = ub;\n ab();\n },\n loadAds: function(ub) {\n if ((na || oa)) {\n return\n };\n la = Infinity;\n oa = o.loadFromEndpoint(\"WebEgoPane\", da.id, {\n pid: 33,\n data: [ea,(\"timeline_\" + ub),(pa ? w : ma),++aa,false,]\n }, {\n crossPage: true,\n bundle: false\n });\n },\n registerScrubber: function(ub) {\n if (pa) {\n qb(ub.getRoot(), ub.getOffset());\n };\n (!oa && tb.adjustAdsToFit());\n },\n loadAdsIfEnoughTimePassed: function() {\n if (((((z && (((Date.now() - la) >= z))) && !h.hasClass(document.documentElement, \"tinyViewport\")) && ((!ka || ka.isFixed()))) && ((!ra || !ra[fb(0)])))) {\n tb.loadAds(ia);\n };\n tb.adjustAdsToFit();\n },\n forceReloadAds: function() {\n tb.loadAds(ia);\n },\n adjustAdsType: function(ub) {\n if ((ub != ja)) {\n h.conditionClass(da, \"-cx-PRIVATE-fbTimelineStyleAds__vertical\", !ub);\n h.conditionClass(da, \"-cx-PRIVATE-fbPageAdminUpsell__vertical\", !ub);\n (qa && h.conditionClass(qa, \"-cx-PRIVATE-fbTimelineStyleAds__vertical\", !ub));\n (qa && h.conditionClass(qa, \"-cx-PRIVATE-fbPageAdminUpsell__vertical\", !ub));\n ja = ub;\n ob();\n tb.adjustAdsToFit();\n var vb = u(\"rightColContent\");\n if (vb) {\n h.conditionClass(vb, \"fbTimelineWideRightCol\", ub);\n };\n }\n ;\n },\n adjustAdsToFit: function() {\n if ((!da || ua)) {\n return\n };\n ua = true;\n var ub = (ja ? w : v);\n if (pa) {\n if ((ka && qa)) {\n ka.handleScroll();\n if (ka.isFixed()) {\n h.conditionShow(qa, ((lb(0) <= bb(1)) && !h.hasClass(document.documentElement, \"tinyViewport\")));\n }\n else db(ub);\n ;\n gb();\n }\n ;\n }\n else {\n var vb = bb(ub);\n if ((typeof vb !== \"undefined\")) {\n ga = vb;\n db(kb(vb));\n if (!na) {\n gb();\n };\n }\n ;\n }\n ;\n ua = false;\n },\n reset: function() {\n (ka && ka.stop());\n (oa && oa.cancel());\n ha = new j();\n ja = false;\n da = null;\n ka = null;\n oa = null;\n aa = 0;\n na = null;\n pa = null;\n qa = null;\n ia = null;\n la = Infinity;\n ba = false;\n (sa && g.unsubscribe(sa));\n sa = null;\n (ta && g.unsubscribe(ta));\n ta = null;\n va.forEach(function(ub) {\n ub.remove();\n });\n va = [];\n (wa && wa.reset());\n }\n };\n e.exports = (a.TimelineSideAds || tb);\n});\n__d(\"TimelineStickyHeader\", [\"Animation\",\"Arbiter\",\"Bootloader\",\"CSS\",\"DOM\",\"Style\",\"TimelineController\",\"TimelineURI\",\"Vector\",\"ViewportBounds\",\"$\",\"ge\",\"queryThenMutateDOM\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"Arbiter\"), i = b(\"Bootloader\"), j = b(\"CSS\"), k = b(\"DOM\"), l = b(\"Style\"), m = b(\"TimelineController\"), n = b(\"TimelineURI\"), o = b(\"Vector\"), p = b(\"ViewportBounds\"), q = b(\"$\"), r = b(\"ge\"), s = b(\"queryThenMutateDOM\"), t = 200, u = false, v = false, w, x, y, z, aa, ba, ca = {\n }, da = {\n VISIBLE: \"TimelineStickyHeader/visible\",\n ADJUST_WIDTH: \"TimelineStickyHeader/adjustWidth\",\n init: function(ea) {\n if (u) {\n return\n };\n u = true;\n w = ea;\n x = k.find(ea, \"div.name\");\n y = k.find(ea, \"div.actions\");\n v = j.hasClass(ea, \"fbTimelineStickyHeaderVisible\");\n var fa = q(\"blueBar\"), ga, ha = false;\n s(function() {\n if (((fa.offsetTop && !r(\"page_admin_panel\")) && (m.getCurrentKey() !== n.TIMELINE_KEY))) {\n ga = o.getElementDimensions(fa).y;\n ha = true;\n }\n ;\n }, function() {\n if (ha) {\n i.loadModules([\"StickyController\",], function(ia) {\n new ia(ea, ga).start();\n });\n }\n else j.addClass(ea, \"fixed_elem\");\n ;\n s(function() {\n aa = ea.offsetTop;\n ba = ea.scrollHeight;\n }, function() {\n z = p.addTop(function() {\n return (v ? (aa + ba) : 0);\n });\n }, \"TimelineStickyHeader/init\");\n m.register(m.STICKY_HEADER, da);\n }, \"TimelineStickyHeader/init\");\n },\n reset: function() {\n u = false;\n v = false;\n w = null;\n x = null;\n y = null;\n ca = {\n };\n z.remove();\n z = null;\n },\n toggle: function(ea) {\n if ((ea !== v)) {\n var fa = (ea ? (aa - ba) : aa), ga = (ea ? aa : (aa - ba));\n l.set(w, \"top\", (fa + \"px\"));\n j.addClass(w, \"fbTimelineStickyHeaderAnimating\");\n var ha = k.getID(w);\n (ca[ha] && ca[ha].stop());\n ca[ha] = new g(w).from(\"top\", fa).to(\"top\", ga).duration(t).ondone(function() {\n ca[ha] = null;\n j.conditionClass(w, \"fbTimelineStickyHeaderHidden\", !ea);\n w.setAttribute(\"aria-hidden\", (ea ? \"false\" : \"true\"));\n j.removeClass(w, \"fbTimelineStickyHeaderAnimating\");\n l.set(w, \"top\", \"\");\n h.inform(da.VISIBLE, ea);\n }).go();\n v = ea;\n }\n ;\n },\n adjustWidth: function() {\n h.inform(da.ADJUST_WIDTH, x, h.BEHAVIOR_STATE);\n },\n getRoot: function() {\n return w;\n },\n setActions: function(ea) {\n if ((u && ea)) {\n k.setContent(y, ea);\n y = ea;\n }\n ;\n }\n };\n e.exports = (a.TimelineStickyHeader || da);\n});\n__d(\"TimelineStickyHeaderNav\", [\"Event\",\"function-extensions\",\"Arbiter\",\"ButtonGroup\",\"CSS\",\"DOM\",\"Parent\",\"SelectorDeprecated\",\"Style\",\"SubscriptionsHandler\",\"TimelineConstants\",\"TimelineController\",\"TimelineLegacySections\",\"URI\",\"UserAgent\",\"Vector\",\"ge\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\");\n b(\"function-extensions\");\n var h = b(\"Arbiter\"), i = b(\"ButtonGroup\"), j = b(\"CSS\"), k = b(\"DOM\"), l = b(\"Parent\"), m = b(\"SelectorDeprecated\"), n = b(\"Style\"), o = b(\"SubscriptionsHandler\"), p = b(\"TimelineConstants\"), q = b(\"TimelineController\"), r = b(\"TimelineLegacySections\"), s = b(\"URI\"), t = b(\"UserAgent\"), u = b(\"Vector\"), v = b(\"ge\"), w = b(\"tx\"), x = false, y, z, aa, ba, ca, da, ea, fa, ga, ha, ia, ja = {\n }, ka = {\n }, la = [], ma = false, na = [], oa = [], pa, qa = [\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\",];\n function ra() {\n var fb = m.getSelectorMenu(da);\n pa.addSubscriptions(g.listen(fb, \"click\", sa), h.subscribe(p.SECTION_LOADED, wa));\n };\n function sa(event) {\n var fb = l.byTag(event.getTarget(), \"a\");\n if (fb) {\n var gb = fb.getAttribute(\"data-key\");\n q.stickyHeaderNavWasClicked(gb);\n q.navigateToSection(gb);\n event.prevent();\n }\n ;\n };\n function ta(fb, gb) {\n var hb = m.getValue(gb);\n if ((hb === \"allStories\")) {\n r.get(fb).expandSubSections();\n };\n if ((hb !== \"activityLog\")) {\n ua(gb);\n };\n };\n function ua(fb) {\n db(fb, \"highlights\");\n db(fb, \"allStories\");\n var gb = k.find(fb, \"li.separator\");\n j.conditionShow(gb, gb.previousSibling);\n };\n function va(fb) {\n if ((ga[fb] && !z.custom_subsection_menu)) {\n ab(fb);\n }\n else xa();\n ;\n q.adjustStickyHeaderWidth();\n };\n function wa(fb, gb) {\n var hb = gb.key;\n if (ha[hb]) {\n bb(hb);\n va(hb);\n }\n ;\n };\n function xa() {\n ba.hideItem(ea);\n };\n function ya(fb) {\n var gb = fb.split(\"_\");\n return qa[(gb.pop() - 1)];\n };\n function za(fb) {\n var gb = fa[fb], hb = ga[fb];\n if ((!gb && hb)) {\n gb = fa[fb] = ea.cloneNode(true);\n var ib = k.scry(gb, \"li.activityLog a\")[0];\n if (ib) {\n ib.href = s(ib.href).addQueryData({\n key: fb\n });\n };\n var jb = q.getCurrentScrubber();\n if (hb.length) {\n j.show(k.find(gb, \"li.separator\"));\n };\n for (var kb = 0; (kb < hb.length); kb++) {\n var lb = hb[kb].scrubberKey, mb = (jb ? jb.getLabelForSubnav(hb[kb].parentKey, lb) : mb = ya(lb));\n if (mb) {\n cb(gb, {\n key: lb,\n label: mb\n });\n };\n };\n pa.addSubscriptions(m.listen(gb, \"change\", ta.curry(fb, gb)), g.listen(gb, \"click\", sa));\n }\n ;\n return gb;\n };\n function ab(fb) {\n var gb = za(fb);\n k.insertAfter(ea, gb);\n j.hide(ea);\n for (var hb in fa) {\n var ib = fa[hb];\n j.conditionShow(ib, (ib === gb));\n };\n ba.showItem(ea);\n };\n function bb(fb) {\n ga[fb] = r.get(fb).subSections;\n };\n function cb(fb, gb) {\n var hb = k.create(\"a\", {\n href: \"#\",\n rel: \"ignore\",\n className: \"itemAnchor\",\n tabIndex: 0\n }, k.create(\"span\", {\n className: \"itemLabel fsm\"\n }, gb.label));\n hb.setAttribute(\"data-key\", gb.key);\n hb.setAttribute(\"aria-checked\", false);\n var ib = k.create(\"li\", {\n className: \"uiMenuItem uiMenuItemRadio uiSelectorOption\"\n }, hb);\n ib.setAttribute(\"data-label\", gb.label);\n var jb = k.find(fb, \"ul.uiMenuInner\"), kb = k.create(\"option\", {\n value: gb.key\n }, gb.label), lb = k.find(fb, \"select\");\n if ((gb.key === \"recent\")) {\n k.prependContent(jb, ib);\n k.insertAfter(lb.options[0], kb);\n }\n else {\n k.appendContent(jb, ib);\n k.appendContent(lb, kb);\n }\n ;\n };\n function db(fb, gb) {\n var hb = k.scry(fb, \"li.uiMenuItem\");\n if (!hb) {\n return\n };\n for (var ib = 0; (ib < hb.length); ib++) {\n var jb = hb[ib];\n if ((j.hasClass(jb, gb) || (jb.firstChild.getAttribute(\"data-key\") == gb))) {\n k.remove(jb);\n break;\n }\n ;\n };\n var kb = k.find(fb, \"select\"), lb = k.scry(kb, \"option\");\n for (ib = 0; (ib < lb.length); ib++) {\n if ((lb[ib].value === gb)) {\n k.remove(lb[ib]);\n return;\n }\n ;\n };\n };\n var eb = {\n init: function(fb, gb) {\n if (x) {\n return\n };\n x = true;\n y = fb;\n z = (gb || {\n });\n ca = k.find(y, \"div.pageMenu\");\n da = k.find(y, \"div.sectionMenu\");\n ea = k.find(y, \"div.subsectionMenu\");\n ia = k.find(ca, \"li.uiMenuSeparator\");\n ba = i.getInstance(ca);\n pa = new o();\n fa = {\n };\n ga = {\n };\n ha = {\n };\n eb.adjustMenuHeights();\n ra();\n q.register(q.STICKY_HEADER_NAV, eb);\n oa.forEach(function(hb) {\n hb();\n });\n },\n reset: function() {\n x = false;\n z = {\n };\n la = [];\n ja = {\n };\n ka = {\n };\n ma = false;\n na = [];\n y = null;\n ca = null;\n da = null;\n ea = null;\n ia = null;\n fa = {\n };\n ga = {\n };\n ha = {\n };\n pa.release();\n },\n addTimePeriod: function(fb) {\n var gb = q.getCurrentScrubber();\n if (!gb) {\n return\n };\n var hb = gb.getLabelForNav(fb);\n if (!hb) {\n return\n };\n cb(da, {\n key: fb,\n label: hb\n });\n var ib = k.find(da, \"ul.uiMenuInner\");\n if (((fb === \"recent\") || (ib.children.length < 2))) {\n m.setSelected(da, fb, true);\n };\n },\n updateSection: function(fb, gb) {\n if (gb) {\n var hb = za(fb);\n if (hb) {\n m.setSelected(hb, gb);\n ua(hb);\n }\n else aa = fb;\n ;\n }\n else {\n ha[fb] = true;\n bb(fb);\n }\n ;\n m.setSelected(da, fb, true);\n va(fb);\n },\n adjustMenuHeights: function() {\n if ((t.ie() <= 7)) {\n return\n };\n [ca,da,].forEach(function(fb) {\n var gb = \"\";\n if (!j.hasClass(document.documentElement, \"tinyViewport\")) {\n gb = ((u.getViewportDimensions().y - u.getElementDimensions(v(\"blueBar\")).y) - 80);\n gb += \"px\";\n }\n ;\n n.set(k.find(fb, \"ul.uiMenuInner\"), \"maxHeight\", gb);\n });\n },\n initPageMenu: function(fb, gb) {\n if (!x) {\n oa.push(eb.initPageMenu.curry(fb, gb));\n return;\n }\n ;\n function hb(ib, jb) {\n ib.forEach(function(kb) {\n var lb = ka[kb] = k.create(\"li\");\n j.hide(lb);\n (jb ? k.insertBefore(ia, lb) : k.appendContent(k.find(ca, \"ul.uiMenuInner\"), lb));\n });\n };\n hb(fb, true);\n hb(gb, false);\n ja.info = k.scry(ca, \"li\")[0];\n la = gb;\n ma = true;\n if (na.length) {\n na.forEach(function(ib) {\n eb.registerPageMenuItem(ib.key, ib.item);\n });\n };\n },\n registerPageMenuItem: function(fb, gb) {\n if (!ma) {\n na.push({\n key: fb,\n item: gb\n });\n return;\n }\n ;\n if (ka[fb]) {\n k.replace(ka[fb], gb);\n ja[fb] = gb;\n delete ka[fb];\n if ((la.indexOf(fb) >= 0)) {\n j.show(ia);\n };\n }\n ;\n },\n removeTimePeriod: function(fb) {\n db(da, fb);\n }\n };\n e.exports = eb;\n});\n__d(\"TimelineScrubber\", [\"Event\",\"CSS\",\"DOM\",\"Focus\",\"Keys\",\"Parent\",\"TimelineController\",\"Vector\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"CSS\"), i = b(\"DOM\"), j = b(\"Focus\"), k = b(\"Keys\"), l = b(\"Parent\"), m = b(\"TimelineController\"), n = b(\"Vector\"), o = b(\"copyProperties\");\n function p(q) {\n this._root = q;\n this._navKeys = {\n };\n this._subNavKeys = {\n };\n this._rollups = {\n };\n this._rolledup = {\n };\n var r = q.childNodes;\n this._currentNav = r[0];\n for (var s = 0; (s < r.length); s++) {\n var t = r[s].getAttribute(\"data-key\");\n this._navKeys[t] = r[s];\n var u = i.scry(r[s], \"ul\");\n this._subNavKeys[t] = {\n };\n if (u.length) {\n var v = u[0].childNodes;\n for (var w = 0; (w < v.length); w++) {\n this._subNavKeys[t][v[w].getAttribute(\"data-key\")] = v[w];;\n };\n }\n ;\n var x = r[s].getAttribute(\"data-rollup\");\n if (x) {\n this._rollups[x] = (this._rollups[x] || []);\n this._rollups[x].push(r[s]);\n }\n ;\n };\n this._clickListener = g.listen(this._root, \"click\", this._handleScrub.bind(this));\n this._focusHandler = g.listen(this._root, \"keydown\", this._moveFocus.bind(this));\n this._tabbableElement = i.scry(this._root, \"a\")[0];\n h.show(this._root);\n var y = (n.getViewportDimensions().y - this.SCRUBBER_NO_ADS_VERTICAL_BUFFER), z = this.getHeight();\n if ((z > y)) {\n this.fold((z - y));\n };\n m.register(m.SCRUBBER, this);\n m.scrubberHasLoaded(this);\n };\n o(p.prototype, {\n KEY_HEIGHT: 23,\n SUBKEY_HEIGHT: 16,\n OFFSET: 38,\n SCRUBBER_NO_ADS_VERTICAL_BUFFER: 125,\n reset: function() {\n this._root = null;\n this._navKeys = {\n };\n this._subNavKeys = {\n };\n this._rollups = {\n };\n this._rolledup = {\n };\n },\n getRoot: function() {\n return this._root;\n },\n getNav: function(q) {\n return this._navKeys[q];\n },\n getSubnav: function(q, r) {\n return this._subNavKeys[q][r];\n },\n getHeight: function() {\n return this._root.offsetHeight;\n },\n getLabelForNav: function(q) {\n var r = this.getNav(q);\n return (r && i.getText(i.scry(r, \"a\")[0]));\n },\n getLabelForSubnav: function(q, r) {\n var s = this.getSubnav(q, r);\n return (s && i.getText(i.scry(s, \"a\")[0]));\n },\n fold: function(q) {\n return this._adjustFolding(q, true);\n },\n unfold: function(q) {\n return this._adjustFolding(q, false);\n },\n getOffset: function() {\n return ((this.OFFSET + ((h.hasClass(document.body, \"hasVoiceBar\") ? 26 : 0))) + ((h.hasClass(\"rightColContent\", \"pagesTimelineRightColumn\") ? 48 : 0)));\n },\n updateSection: function(q, r) {\n if (!this._navKeys[q]) {\n return\n };\n var s = this._navKeys[q].getAttribute(\"data-rollup\");\n if ((this._currentRollup && (this._currentRollup != s))) {\n h.removeClass(this._currentRollup, \"selected\");\n h.removeClass(i.scry(this._currentRollup, \"ul\")[0], \"loaded\");\n delete this._currentRollup;\n }\n ;\n if ((s && this._rolledup[s])) {\n var t = this._rolledup[s];\n if (t.getAttribute(\"data-rollup\")) {\n this._currentRollup = t;\n h.addClass(this._currentRollup, \"selected\");\n h.addClass(i.scry(this._currentRollup, \"ul\")[0], \"loaded\");\n }\n ;\n }\n ;\n (this._currentNav && h.removeClass(this._currentNav, \"selected\"));\n (this._currentSubNav && h.removeClass(this._currentSubNav, \"selected\"));\n this._currentNav = null;\n this._currentSubNav = null;\n if (this._navKeys[q]) {\n this._currentNav = this._navKeys[q];\n h.addClass(this._currentNav, \"selected\");\n if ((this.decadesAreSelectable && this._navKeys[r])) {\n this._currentSubNav = this._navKeys[r];\n h.addClass(this._currentSubNav, \"selected\");\n }\n else if ((r && this._subNavKeys[q][r])) {\n this._currentSubNav = this._subNavKeys[q][r];\n h.addClass(this._currentSubNav, \"selected\");\n }\n \n ;\n }\n ;\n },\n _getRollupSize: function(q) {\n var r = this._currentNav, s = (r && r.getAttribute(\"data-rollup\")), t = (this.KEY_HEIGHT * ((this._rollups[q].length - 1)));\n if ((q == s)) {\n t += (this.SUBKEY_HEIGHT * i.scry(r, \"li\").length);\n t -= (this.SUBKEY_HEIGHT * ((this._rollups[q].length - 1)));\n }\n ;\n return t;\n },\n _adjustFolding: function(q, r) {\n var s = q, t = Object.keys(this._rollups);\n while (((q > 0) && t.length)) {\n var u = t[(r ? \"pop\" : \"shift\")]();\n if ((!r == !this._rolledup[u])) {\n continue;\n };\n var v = this._getRollupSize(u);\n if ((v <= 0)) {\n continue;\n };\n if ((!r && (v > q))) {\n break;\n };\n this[(r ? \"_collapseRollup\" : \"_expandRollup\")](u);\n q -= v;\n };\n return (s - q);\n },\n _collapseRollup: function(q) {\n var r = this._rollups[q];\n if (((!r || (r.length < 2)) || this._rolledup[q])) {\n return\n };\n var s = r[0].previousSibling, t = r[0], u = i.create(\"a\", {\n href: t.firstChild.href,\n rel: \"ignore\",\n tabindex: \"-1\"\n }, [q,]), v = i.create(\"ul\", {\n className: \"clearfix\"\n });\n for (var w = 0; (w < r.length); w++) {\n v.appendChild(r[w]);;\n };\n var x = i.create(\"li\", null, [u,v,]);\n if (this.decadesAreSelectable) {\n var y = r[(r.length - 1)], z = (t.getAttribute(\"data-key\") + y.getAttribute(\"data-key\"));\n x.setAttribute(\"data-start\", y.getAttribute(\"data-start\"));\n x.setAttribute(\"data-end\", t.getAttribute(\"data-end\"));\n x.setAttribute(\"data-key\", z);\n this._navKeys[z] = x;\n }\n else x.setAttribute(\"data-key\", t.getAttribute(\"data-key\"));\n ;\n x.setAttribute(\"data-rollup\", q);\n if (s) {\n i.insertAfter(s, x);\n }\n else i.prependContent(this._root, x);\n ;\n this._rolledup[q] = x;\n this._checkSelection();\n this._ensureFocusableElementIsVisible();\n },\n _expandRollup: function(q) {\n if (!this._rolledup[q]) {\n return\n };\n var r = this._rolledup[q], s = i.scry(r, \"ul\")[0], t = document.createDocumentFragment();\n while (s.childNodes.length) {\n t.appendChild(s.firstChild);;\n };\n i.replace(r, t);\n this._rolledup[q] = false;\n this._checkSelection();\n },\n _checkSelection: function() {\n if (this._currentNav) {\n var q = (this._currentSubNav && this._currentSubNav.getAttribute(\"data-key\"));\n this.updateSection(this._currentNav.getAttribute(\"data-key\"), q);\n }\n ;\n },\n _handleScrub: function(event) {\n var q = event.getModifiers();\n if (((event.isMiddleClick() || q.access) || q.meta)) {\n return true\n };\n var r = l.byTag(event.getTarget(), \"a\"), s = (r && l.byAttribute(r, \"data-key\"));\n if (s) {\n m.scrubberWasClicked(s.getAttribute(\"data-key\"));\n m.navigateToSection(s.getAttribute(\"data-key\"));\n return event.prevent();\n }\n ;\n },\n _ensureFocusableElementIsVisible: function() {\n while (!((this._tabbableElement.offsetHeight || this._tabbableElement.offsetWidth))) {\n this._tabbableElement.tabIndex = -1;\n var q = l.byTag(l.byTag(this._tabbableElement, \"li\"), \"li\");\n this._tabbableElement = i.scry(q, \"a\")[0];\n this._tabbableElement.tabIndex = 0;\n };\n },\n _moveFocus: function(event) {\n if (event.getModifiers().any) {\n return\n };\n var q = g.getKeyCode(event);\n if (((q === k.UP) || (q === k.DOWN))) {\n var r = i.scry(this._root, \"a\").filter(function(u) {\n return (u.offsetHeight || u.offsetWidth);\n }), s = r.indexOf(this._tabbableElement);\n if ((s != -1)) {\n var t = r[(s + (((q === k.UP) ? -1 : 1)))];\n if (t) {\n t.tabindex = 0;\n j.set(t);\n this._tabbableElement.tabindex = -1;\n this._tabbableElement = t;\n event.prevent();\n }\n ;\n }\n ;\n }\n ;\n }\n });\n e.exports = p;\n});\n__d(\"TimelineMainScrubber\", [\"Arbiter\",\"Class\",\"CSS\",\"DOMQuery\",\"TimelineConstants\",\"TimelineController\",\"TimelineScrubber\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Class\"), i = b(\"CSS\"), j = b(\"DOMQuery\"), k = b(\"TimelineConstants\"), l = b(\"TimelineController\"), m = b(\"TimelineScrubber\"), n = b(\"copyProperties\");\n function o(p) {\n this.parent.construct(this, p);\n this._subscribe = g.subscribe(k.SECTION_LOADED, function(q, r) {\n var s = this._navKeys[r.key], t = (s && j.scry(s, \"ul\")[0]);\n if (t) {\n i.addClass(t, \"loaded\");\n l.scrubberHasChangedState();\n if (r.hideSubSections) {\n i.hide(t);\n };\n }\n ;\n }.bind(this));\n };\n h.extend(o, m);\n n(o.prototype, {\n reset: function() {\n this.parent.reset();\n (this._subscribe && this._subscribe.unsubscribe());\n }\n });\n e.exports = o;\n});\n__d(\"legacy:TimelineMainScrubber\", [\"TimelineMainScrubber\",], function(a, b, c, d) {\n a.TimelineMainScrubber = b(\"TimelineMainScrubber\");\n}, 3);\n__d(\"PubcontentPageTimelineChainingController\", [\"Arbiter\",\"AsyncRequest\",\"DOM\",\"PageLikeButton\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncRequest\"), i = b(\"DOM\"), j = b(\"PageLikeButton\"), k = \"fbSuggestionsPlaceHolder\", l = \"/ajax/pages/suggestions_on_liking.php\";\n m.init = function(n) {\n if (!this.$PubcontentPageTimelineChainingController0) {\n this.$PubcontentPageTimelineChainingController0 = new m(n);\n };\n };\n function m(n) {\n this.likedPageIDs = {\n };\n this.config = n;\n g.subscribe(j.LIKED, this.onLike.bind(this));\n };\n m.prototype.$PubcontentPageTimelineChainingController1 = function(n) {\n var o = i.scry(document, (\"#\" + k));\n if ((o.length === 0)) {\n return null\n };\n return o[0];\n };\n m.prototype.onLike = function(n, o) {\n if (((((o.profile_id && o.target) && o.origin) && (o.origin in this.config)) && !((o.profile_id in this.likedPageIDs)))) {\n var p = this.$PubcontentPageTimelineChainingController1(o.target);\n if (!p) {\n return\n };\n this.likedPageIDs[o.profile_id] = true;\n new h().setURI(l).setData({\n pageid: o.profile_id\n }).setRelativeTo(p).send();\n }\n ;\n };\n e.exports = m;\n});"); |
| // 14211 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s192e4c65fed2df60c6d5a7035f8e22511b43113b"); |
| // 14212 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"R940f\",]);\n}\n;\n;\n__d(\"StickyController\", [\"JSBNG__Event\",\"JSBNG__CSS\",\"Style\",\"Vector\",\"copyProperties\",\"queryThenMutateDOM\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"JSBNG__CSS\"), i = b(\"Style\"), j = b(\"Vector\"), k = b(\"copyProperties\"), l = b(\"queryThenMutateDOM\");\n function m(n, o, p, q) {\n this._element = n;\n this._marginTop = o;\n this._onchange = p;\n this._proxy = ((q || n.parentNode));\n this._boundQueryOnScroll = this._queryOnScroll.bind(this);\n this._boundMutateOnScroll = this._mutateOnScroll.bind(this);\n };\n;\n k(m.prototype, {\n handleScroll: function() {\n l(this._boundQueryOnScroll, this._boundMutateOnScroll);\n },\n _queryOnScroll: function() {\n this._shouldFix = ((j.getElementPosition(this._proxy, \"viewport\").y <= this._marginTop));\n },\n _mutateOnScroll: function() {\n var n = this._shouldFix;\n if (((this.isFixed() !== n))) {\n i.set(this._element, \"JSBNG__top\", ((n ? ((this._marginTop + \"px\")) : \"\")));\n h.conditionClass(this._element, \"fixed_elem\", n);\n ((this._onchange && this._onchange(n)));\n }\n ;\n ;\n },\n start: function() {\n if (this._event) {\n return;\n }\n ;\n ;\n this._event = g.listen(window, \"JSBNG__scroll\", this.handleScroll.bind(this));\n this.handleScroll.bind(this).defer();\n },\n JSBNG__stop: function() {\n ((this._event && this._event.remove()));\n this._event = null;\n },\n isFixed: function() {\n return h.hasClass(this._element, \"fixed_elem\");\n }\n });\n e.exports = m;\n});\n__d(\"PhotoMultiPhotosThumb\", [\"JSBNG__Event\",\"function-extensions\",\"Style\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\");\n b(\"function-extensions\");\n var h = b(\"Style\"), i = 1200, j = {\n init: function(k, l) {\n var m = null, n = 0;\n function o(q) {\n n = q;\n l.forEach(function(r, s) {\n h.set(r, \"opacity\", ((((s === q)) ? 1 : 0)));\n });\n };\n ;\n function p() {\n o(((((n + 1)) % l.length)));\n m = p.defer(i);\n };\n ;\n g.listen(k, \"mouseenter\", function() {\n if (m) {\n return;\n }\n ;\n ;\n n = 0;\n p();\n });\n g.listen(k, \"mouseleave\", function() {\n o(0);\n window.JSBNG__clearTimeout(m);\n m = null;\n });\n }\n };\n e.exports = j;\n});\n__d(\"TimelineSideAds\", [\"function-extensions\",\"Arbiter\",\"JSBNG__CSS\",\"DOM\",\"EgoAdsObjectSet\",\"JSBNG__Event\",\"StickyController\",\"TimelineConstants\",\"TimelineController\",\"UIPagelet\",\"URI\",\"Vector\",\"cx\",\"csx\",\"debounce\",\"ge\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"Arbiter\"), h = b(\"JSBNG__CSS\"), i = b(\"DOM\"), j = b(\"EgoAdsObjectSet\"), k = b(\"JSBNG__Event\"), l = b(\"StickyController\"), m = b(\"TimelineConstants\"), n = b(\"TimelineController\"), o = b(\"UIPagelet\"), p = b(\"URI\"), q = b(\"Vector\"), r = b(\"cx\"), s = b(\"csx\"), t = b(\"debounce\"), u = b(\"ge\"), v = 3, w = 4, x = 75, y = \"data-height\", z = 30000, aa = 0, ba = false, ca, da, ea, fa, ga, ha = new j(), ia, ja = false, ka, la = Infinity, ma = 5, na = false, oa, pa, qa, ra, sa, ta, ua = false, va = [], wa;\n function xa(ub, vb, wb) {\n var xb = 0;\n if (vb) {\n xb += vb.getHeight();\n }\n ;\n ;\n if (((!cb() && !xb))) {\n return;\n }\n ;\n ;\n ub -= xb;\n var yb = 0;\n for (var zb = 0; ((zb < wb)); zb++) {\n yb += lb(zb);\n ;\n };\n ;\n if (vb) {\n if (((ub < yb))) {\n ub += vb.fold(((yb - ub)));\n }\n else if (((ub > yb))) {\n ub -= vb.unfold(((ub - yb)));\n }\n \n ;\n }\n ;\n ;\n return ub;\n };\n;\n function ya() {\n var ub = da.cloneNode(true);\n ub.id = \"\";\n var vb = new j();\n vb.init(i.scry(ub, \"div.ego_unit\"));\n var wb = true;\n vb.forEach(function(xb) {\n if (wb) {\n wb = false;\n }\n else i.remove(xb);\n ;\n ;\n });\n h.addClass(ub, \"fixed_elem\");\n return ub;\n };\n;\n function za() {\n ga = undefined;\n if (!n.pageHasScrubber(ia)) {\n db(ma);\n gb();\n }\n else if (pa) {\n eb(da, false);\n var ub = qa;\n ((qa && i.remove(qa)));\n qa = ya();\n if (ub) {\n rb();\n }\n ;\n ;\n db(((((n.sidebarInitialized() && ja)) ? w : v)));\n gb();\n if (!ka) {\n var vb = n.getCurrentScrubber();\n if (vb) {\n qb(vb.getRoot(), vb.getOffset());\n }\n ;\n ;\n }\n ;\n ;\n ((ka && ka.start()));\n }\n else tb.adjustAdsToFit();\n \n ;\n ;\n };\n;\n function ab() {\n if (qa) {\n i.remove(qa);\n qa = null;\n }\n ;\n ;\n if (ka) {\n ka.JSBNG__stop();\n ka = null;\n }\n ;\n ;\n if (cb()) {\n h.conditionClass(da, \"fixed_elem\", !pa);\n h.conditionClass(da, \"-cx-PRIVATE-fbTimelineStyleAds__topaligned\", !n.pageHasScrubber(ia));\n }\n else h.conditionClass(da, \"fixed_elem\", ((!pa && n.pageHasScrubber(ia))));\n ;\n ;\n };\n;\n function bb(ub) {\n var vb = q.getViewportDimensions().y, wb = n.getCurrentScrubber(), xb = ((wb ? wb.getOffset() : m.SCRUBBER_DEFAULT_OFFSET)), yb = ((((vb - xb)) - x));\n if (((wb || cb()))) {\n return xa(yb, wb, ub);\n }\n ;\n ;\n };\n;\n function cb() {\n return n.fixedAds();\n };\n;\n function db(ub) {\n fa = Math.min(ub, ha.getCount());\n ha.forEach(function(vb, wb) {\n eb(vb, ((wb >= fa)));\n });\n eb(da, ((fa === 0)));\n };\n;\n function eb(ub, vb) {\n h.conditionClass(ub, \"-cx-PRIVATE-fbTimelineStyleAds__offscreen\", vb);\n ub.setAttribute(\"aria-hidden\", ((vb ? \"true\" : \"false\")));\n };\n;\n function fb(ub) {\n var vb = i.JSBNG__find(ha.getUnit(ub), \"div.-cx-PUBLIC-fbAdUnit__root\"), wb = vb.getAttribute(\"data-ad\");\n return JSON.parse(wb).adid;\n };\n;\n function gb() {\n ib();\n hb();\n };\n;\n function hb() {\n var ub;\n if (((ga !== undefined))) {\n ub = ha.getHoldoutAdIDsForSpace(ga, mb);\n }\n else ub = ha.getHoldoutAdIDsForNumAds(fa);\n ;\n ;\n if (ub) {\n ub.forEach(jb);\n }\n ;\n ;\n };\n;\n function ib() {\n if (!ra) {\n return;\n }\n ;\n ;\n for (var ub = ((fa - 1)); ((ub >= 0)); --ub) {\n if (((((ka && ka.isFixed())) && ((((ub !== 0)) || ((qa && !h.shown(qa)))))))) {\n continue;\n }\n ;\n ;\n var vb = fb(ub);\n if (!ra[vb]) {\n return;\n }\n ;\n ;\n jb(vb);\n };\n ;\n };\n;\n function jb(ub) {\n if (!ra[ub]) {\n return;\n }\n ;\n ;\n var vb = i.create(\"div\", {\n src: p(\"/ai.php\").addQueryData({\n aed: ra[ub]\n }),\n width: 0,\n height: 0,\n frameborder: 0,\n scrolling: \"no\",\n className: \"fbEmuTracking\"\n });\n vb.setAttribute(\"aria-hidden\", \"true\");\n i.appendContent(da, vb);\n delete ra[ub];\n };\n;\n function kb(ub) {\n var vb = 0;\n while (((((ub > 0)) && ((vb < ma))))) {\n ub -= lb(vb);\n if (((ub >= 0))) {\n vb++;\n }\n ;\n ;\n };\n ;\n return vb;\n };\n;\n function lb(ub) {\n var vb = ha.getUnit(ub);\n if (!vb) {\n return 0;\n }\n ;\n ;\n return mb(vb);\n };\n;\n function mb(ub) {\n if (!ub.getAttribute(y)) {\n nb(ub);\n }\n ;\n ;\n return parseInt(ub.getAttribute(y), 10);\n };\n;\n function nb(ub) {\n ub.setAttribute(y, ub.offsetHeight);\n };\n;\n function ob() {\n for (var ub = 0; ((ub < ha.getCount())); ub++) {\n var vb = ha.getUnit(ub);\n if (!vb) {\n continue;\n }\n ;\n ;\n nb(vb);\n };\n ;\n };\n;\n function pb() {\n var ub = i.scry(da, \"div.ego_unit\");\n ha.init(ub);\n var vb = ub.length;\n if (!vb) {\n return;\n }\n ;\n ;\n h.addClass(ha.getUnit(0), \"ego_unit_no_top_border\");\n na = vb;\n za();\n var wb = function(xb) {\n nb(xb);\n na = --vb;\n tb.adjustAdsToFit();\n if (!na) {\n la = JSBNG__Date.now();\n }\n ;\n ;\n };\n ub.forEach(function(xb) {\n function yb() {\n wb.curry(xb).defer();\n };\n ;\n var zb = i.scry(xb, \"img.img\")[0];\n if (!zb) {\n return;\n }\n ;\n ;\n if (zb.complete) {\n yb();\n }\n else k.listen(zb, {\n load: yb,\n error: yb,\n abort: yb\n });\n ;\n ;\n });\n };\n;\n function qb(ub, vb) {\n ka = new l(ub, vb, function(wb) {\n if (wb) {\n rb();\n }\n else {\n i.remove(qa);\n gb();\n }\n ;\n ;\n });\n if (qa) {\n ka.start();\n }\n ;\n ;\n };\n;\n function rb() {\n i.insertAfter(da, qa);\n sb();\n };\n;\n function sb() {\n h.conditionShow(qa, ((((lb(0) <= bb(1))) && !h.hasClass(JSBNG__document.documentElement, \"tinyViewport\"))));\n };\n;\n var tb = {\n init: function(ub, vb, wb) {\n if (ba) {\n return;\n }\n ;\n ;\n ma = wb.max_ads;\n ca = wb.refresh_delay;\n z = wb.refresh_threshold;\n ba = true;\n ea = vb;\n da = ub;\n tb.adjustAdsType(n.shouldShowWideAds());\n sa = g.subscribe([\"UFI/CommentAddedActive\",\"UFI/CommentDeletedActive\",\"UFI/LikeActive\",\"Curation/Action\",\"ProfileBrowser/LoadMoreContent\",\"Ads/NewContentDisplayed\",], tb.loadAdsIfEnoughTimePassed);\n ta = g.subscribe(\"TimelineSideAds/refresh\", tb.forceReloadAds);\n wa = t(tb.loadAdsIfEnoughTimePassed, ca, this, true);\n if (wb.mouse_move) {\n va.push(k.listen(window, \"mousemove\", wa));\n va.push(k.listen(window, \"JSBNG__scroll\", wa));\n va.push(k.listen(window, \"resize\", wa));\n }\n ;\n ;\n n.register(n.ADS, tb);\n },\n setShortMode: function(ub) {\n pa = ub;\n },\n start: function(ub) {\n ra = ub;\n oa = null;\n pb();\n },\n updateCurrentKey: function(ub) {\n if (((ub == ia))) {\n return;\n }\n ;\n ;\n ia = ub;\n ab();\n },\n loadAds: function(ub) {\n if (((na || oa))) {\n return;\n }\n ;\n ;\n la = Infinity;\n oa = o.loadFromEndpoint(\"WebEgoPane\", da.id, {\n pid: 33,\n data: [ea,((\"timeline_\" + ub)),((pa ? w : ma)),++aa,false,]\n }, {\n crossPage: true,\n bundle: false\n });\n },\n registerScrubber: function(ub) {\n if (pa) {\n qb(ub.getRoot(), ub.getOffset());\n }\n ;\n ;\n ((!oa && tb.adjustAdsToFit()));\n },\n loadAdsIfEnoughTimePassed: function() {\n if (((((((((z && ((((JSBNG__Date.now() - la)) >= z)))) && !h.hasClass(JSBNG__document.documentElement, \"tinyViewport\"))) && ((!ka || ka.isFixed())))) && ((!ra || !ra[fb(0)]))))) {\n tb.loadAds(ia);\n }\n ;\n ;\n tb.adjustAdsToFit();\n },\n forceReloadAds: function() {\n tb.loadAds(ia);\n },\n adjustAdsType: function(ub) {\n if (((ub != ja))) {\n h.conditionClass(da, \"-cx-PRIVATE-fbTimelineStyleAds__vertical\", !ub);\n h.conditionClass(da, \"-cx-PRIVATE-fbPageAdminUpsell__vertical\", !ub);\n ((qa && h.conditionClass(qa, \"-cx-PRIVATE-fbTimelineStyleAds__vertical\", !ub)));\n ((qa && h.conditionClass(qa, \"-cx-PRIVATE-fbPageAdminUpsell__vertical\", !ub)));\n ja = ub;\n ob();\n tb.adjustAdsToFit();\n var vb = u(\"rightColContent\");\n if (vb) {\n h.conditionClass(vb, \"fbTimelineWideRightCol\", ub);\n }\n ;\n ;\n }\n ;\n ;\n },\n adjustAdsToFit: function() {\n if (((!da || ua))) {\n return;\n }\n ;\n ;\n ua = true;\n var ub = ((ja ? w : v));\n if (pa) {\n if (((ka && qa))) {\n ka.handleScroll();\n if (ka.isFixed()) {\n h.conditionShow(qa, ((((lb(0) <= bb(1))) && !h.hasClass(JSBNG__document.documentElement, \"tinyViewport\"))));\n }\n else db(ub);\n ;\n ;\n gb();\n }\n ;\n ;\n }\n else {\n var vb = bb(ub);\n if (((typeof vb !== \"undefined\"))) {\n ga = vb;\n db(kb(vb));\n if (!na) {\n gb();\n }\n ;\n ;\n }\n ;\n ;\n }\n ;\n ;\n ua = false;\n },\n reset: function() {\n ((ka && ka.JSBNG__stop()));\n ((oa && oa.cancel()));\n ha = new j();\n ja = false;\n da = null;\n ka = null;\n oa = null;\n aa = 0;\n na = null;\n pa = null;\n qa = null;\n ia = null;\n la = Infinity;\n ba = false;\n ((sa && g.unsubscribe(sa)));\n sa = null;\n ((ta && g.unsubscribe(ta)));\n ta = null;\n va.forEach(function(ub) {\n ub.remove();\n });\n va = [];\n ((wa && wa.reset()));\n }\n };\n e.exports = ((a.TimelineSideAds || tb));\n});\n__d(\"TimelineStickyHeader\", [\"Animation\",\"Arbiter\",\"Bootloader\",\"JSBNG__CSS\",\"DOM\",\"Style\",\"TimelineController\",\"TimelineURI\",\"Vector\",\"ViewportBounds\",\"$\",\"ge\",\"queryThenMutateDOM\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"Arbiter\"), i = b(\"Bootloader\"), j = b(\"JSBNG__CSS\"), k = b(\"DOM\"), l = b(\"Style\"), m = b(\"TimelineController\"), n = b(\"TimelineURI\"), o = b(\"Vector\"), p = b(\"ViewportBounds\"), q = b(\"$\"), r = b(\"ge\"), s = b(\"queryThenMutateDOM\"), t = 200, u = false, v = false, w, x, y, z, aa, ba, ca = {\n }, da = {\n VISIBLE: \"TimelineStickyHeader/visible\",\n ADJUST_WIDTH: \"TimelineStickyHeader/adjustWidth\",\n init: function(ea) {\n if (u) {\n return;\n }\n ;\n ;\n u = true;\n w = ea;\n x = k.JSBNG__find(ea, \"div.JSBNG__name\");\n y = k.JSBNG__find(ea, \"div.actions\");\n v = j.hasClass(ea, \"fbTimelineStickyHeaderVisible\");\n var fa = q(\"blueBar\"), ga, ha = false;\n s(function() {\n if (((((fa.offsetTop && !r(\"page_admin_panel\"))) && ((m.getCurrentKey() !== n.TIMELINE_KEY))))) {\n ga = o.getElementDimensions(fa).y;\n ha = true;\n }\n ;\n ;\n }, function() {\n if (ha) {\n i.loadModules([\"StickyController\",], function(ia) {\n new ia(ea, ga).start();\n });\n }\n else j.addClass(ea, \"fixed_elem\");\n ;\n ;\n s(function() {\n aa = ea.offsetTop;\n ba = ea.scrollHeight;\n }, function() {\n z = p.addTop(function() {\n return ((v ? ((aa + ba)) : 0));\n });\n }, \"TimelineStickyHeader/init\");\n m.register(m.STICKY_HEADER, da);\n }, \"TimelineStickyHeader/init\");\n },\n reset: function() {\n u = false;\n v = false;\n w = null;\n x = null;\n y = null;\n ca = {\n };\n z.remove();\n z = null;\n },\n toggle: function(ea) {\n if (((ea !== v))) {\n var fa = ((ea ? ((aa - ba)) : aa)), ga = ((ea ? aa : ((aa - ba))));\n l.set(w, \"JSBNG__top\", ((fa + \"px\")));\n j.addClass(w, \"fbTimelineStickyHeaderAnimating\");\n var ha = k.getID(w);\n ((ca[ha] && ca[ha].JSBNG__stop()));\n ca[ha] = new g(w).from(\"JSBNG__top\", fa).to(\"JSBNG__top\", ga).duration(t).ondone(function() {\n ca[ha] = null;\n j.conditionClass(w, \"fbTimelineStickyHeaderHidden\", !ea);\n w.setAttribute(\"aria-hidden\", ((ea ? \"false\" : \"true\")));\n j.removeClass(w, \"fbTimelineStickyHeaderAnimating\");\n l.set(w, \"JSBNG__top\", \"\");\n h.inform(da.VISIBLE, ea);\n }).go();\n v = ea;\n }\n ;\n ;\n },\n adjustWidth: function() {\n h.inform(da.ADJUST_WIDTH, x, h.BEHAVIOR_STATE);\n },\n getRoot: function() {\n return w;\n },\n setActions: function(ea) {\n if (((u && ea))) {\n k.setContent(y, ea);\n y = ea;\n }\n ;\n ;\n }\n };\n e.exports = ((a.TimelineStickyHeader || da));\n});\n__d(\"TimelineStickyHeaderNav\", [\"JSBNG__Event\",\"function-extensions\",\"Arbiter\",\"ButtonGroup\",\"JSBNG__CSS\",\"DOM\",\"Parent\",\"SelectorDeprecated\",\"Style\",\"SubscriptionsHandler\",\"TimelineConstants\",\"TimelineController\",\"TimelineLegacySections\",\"URI\",\"UserAgent\",\"Vector\",\"ge\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\");\n b(\"function-extensions\");\n var h = b(\"Arbiter\"), i = b(\"ButtonGroup\"), j = b(\"JSBNG__CSS\"), k = b(\"DOM\"), l = b(\"Parent\"), m = b(\"SelectorDeprecated\"), n = b(\"Style\"), o = b(\"SubscriptionsHandler\"), p = b(\"TimelineConstants\"), q = b(\"TimelineController\"), r = b(\"TimelineLegacySections\"), s = b(\"URI\"), t = b(\"UserAgent\"), u = b(\"Vector\"), v = b(\"ge\"), w = b(\"tx\"), x = false, y, z, aa, ba, ca, da, ea, fa, ga, ha, ia, ja = {\n }, ka = {\n }, la = [], ma = false, na = [], oa = [], pa, qa = [\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\",];\n function ra() {\n var fb = m.getSelectorMenu(da);\n pa.addSubscriptions(g.listen(fb, \"click\", sa), h.subscribe(p.SECTION_LOADED, wa));\n };\n;\n function sa(JSBNG__event) {\n var fb = l.byTag(JSBNG__event.getTarget(), \"a\");\n if (fb) {\n var gb = fb.getAttribute(\"data-key\");\n q.stickyHeaderNavWasClicked(gb);\n q.navigateToSection(gb);\n JSBNG__event.prevent();\n }\n ;\n ;\n };\n;\n function ta(fb, gb) {\n var hb = m.getValue(gb);\n if (((hb === \"allStories\"))) {\n r.get(fb).expandSubSections();\n }\n ;\n ;\n if (((hb !== \"activityLog\"))) {\n ua(gb);\n }\n ;\n ;\n };\n;\n function ua(fb) {\n db(fb, \"highlights\");\n db(fb, \"allStories\");\n var gb = k.JSBNG__find(fb, \"li.separator\");\n j.conditionShow(gb, gb.previousSibling);\n };\n;\n function va(fb) {\n if (((ga[fb] && !z.custom_subsection_menu))) {\n ab(fb);\n }\n else xa();\n ;\n ;\n q.adjustStickyHeaderWidth();\n };\n;\n function wa(fb, gb) {\n var hb = gb.key;\n if (ha[hb]) {\n bb(hb);\n va(hb);\n }\n ;\n ;\n };\n;\n function xa() {\n ba.hideItem(ea);\n };\n;\n function ya(fb) {\n var gb = fb.split(\"_\");\n return qa[((gb.pop() - 1))];\n };\n;\n function za(fb) {\n var gb = fa[fb], hb = ga[fb];\n if (((!gb && hb))) {\n gb = fa[fb] = ea.cloneNode(true);\n var ib = k.scry(gb, \"li.activityLog a\")[0];\n if (ib) {\n ib.href = s(ib.href).addQueryData({\n key: fb\n });\n }\n ;\n ;\n var jb = q.getCurrentScrubber();\n if (hb.length) {\n j.show(k.JSBNG__find(gb, \"li.separator\"));\n }\n ;\n ;\n for (var kb = 0; ((kb < hb.length)); kb++) {\n var lb = hb[kb].scrubberKey, mb = ((jb ? jb.getLabelForSubnav(hb[kb].parentKey, lb) : mb = ya(lb)));\n if (mb) {\n cb(gb, {\n key: lb,\n label: mb\n });\n }\n ;\n ;\n };\n ;\n pa.addSubscriptions(m.listen(gb, \"change\", ta.curry(fb, gb)), g.listen(gb, \"click\", sa));\n }\n ;\n ;\n return gb;\n };\n;\n function ab(fb) {\n var gb = za(fb);\n k.insertAfter(ea, gb);\n j.hide(ea);\n {\n var fin265keys = ((window.top.JSBNG_Replay.forInKeys)((fa))), fin265i = (0);\n var hb;\n for (; (fin265i < fin265keys.length); (fin265i++)) {\n ((hb) = (fin265keys[fin265i]));\n {\n var ib = fa[hb];\n j.conditionShow(ib, ((ib === gb)));\n };\n };\n };\n ;\n ba.showItem(ea);\n };\n;\n function bb(fb) {\n ga[fb] = r.get(fb).subSections;\n };\n;\n function cb(fb, gb) {\n var hb = k.create(\"a\", {\n href: \"#\",\n rel: \"ignore\",\n className: \"itemAnchor\",\n tabIndex: 0\n }, k.create(\"span\", {\n className: \"itemLabel fsm\"\n }, gb.label));\n hb.setAttribute(\"data-key\", gb.key);\n hb.setAttribute(\"aria-checked\", false);\n var ib = k.create(\"li\", {\n className: \"uiMenuItem uiMenuItemRadio uiSelectorOption\"\n }, hb);\n ib.setAttribute(\"data-label\", gb.label);\n var jb = k.JSBNG__find(fb, \"ul.uiMenuInner\"), kb = k.create(\"option\", {\n value: gb.key\n }, gb.label), lb = k.JSBNG__find(fb, \"select\");\n if (((gb.key === \"recent\"))) {\n k.prependContent(jb, ib);\n k.insertAfter(lb.options[0], kb);\n }\n else {\n k.appendContent(jb, ib);\n k.appendContent(lb, kb);\n }\n ;\n ;\n };\n;\n function db(fb, gb) {\n var hb = k.scry(fb, \"li.uiMenuItem\");\n if (!hb) {\n return;\n }\n ;\n ;\n for (var ib = 0; ((ib < hb.length)); ib++) {\n var jb = hb[ib];\n if (((j.hasClass(jb, gb) || ((jb.firstChild.getAttribute(\"data-key\") == gb))))) {\n k.remove(jb);\n break;\n }\n ;\n ;\n };\n ;\n var kb = k.JSBNG__find(fb, \"select\"), lb = k.scry(kb, \"option\");\n for (ib = 0; ((ib < lb.length)); ib++) {\n if (((lb[ib].value === gb))) {\n k.remove(lb[ib]);\n return;\n }\n ;\n ;\n };\n ;\n };\n;\n var eb = {\n init: function(fb, gb) {\n if (x) {\n return;\n }\n ;\n ;\n x = true;\n y = fb;\n z = ((gb || {\n }));\n ca = k.JSBNG__find(y, \"div.pageMenu\");\n da = k.JSBNG__find(y, \"div.sectionMenu\");\n ea = k.JSBNG__find(y, \"div.subsectionMenu\");\n ia = k.JSBNG__find(ca, \"li.uiMenuSeparator\");\n ba = i.getInstance(ca);\n pa = new o();\n fa = {\n };\n ga = {\n };\n ha = {\n };\n eb.adjustMenuHeights();\n ra();\n q.register(q.STICKY_HEADER_NAV, eb);\n oa.forEach(function(hb) {\n hb();\n });\n },\n reset: function() {\n x = false;\n z = {\n };\n la = [];\n ja = {\n };\n ka = {\n };\n ma = false;\n na = [];\n y = null;\n ca = null;\n da = null;\n ea = null;\n ia = null;\n fa = {\n };\n ga = {\n };\n ha = {\n };\n pa.release();\n },\n addTimePeriod: function(fb) {\n var gb = q.getCurrentScrubber();\n if (!gb) {\n return;\n }\n ;\n ;\n var hb = gb.getLabelForNav(fb);\n if (!hb) {\n return;\n }\n ;\n ;\n cb(da, {\n key: fb,\n label: hb\n });\n var ib = k.JSBNG__find(da, \"ul.uiMenuInner\");\n if (((((fb === \"recent\")) || ((ib.children.length < 2))))) {\n m.setSelected(da, fb, true);\n }\n ;\n ;\n },\n updateSection: function(fb, gb) {\n if (gb) {\n var hb = za(fb);\n if (hb) {\n m.setSelected(hb, gb);\n ua(hb);\n }\n else aa = fb;\n ;\n ;\n }\n else {\n ha[fb] = true;\n bb(fb);\n }\n ;\n ;\n m.setSelected(da, fb, true);\n va(fb);\n },\n adjustMenuHeights: function() {\n if (((t.ie() <= 7))) {\n return;\n }\n ;\n ;\n [ca,da,].forEach(function(fb) {\n var gb = \"\";\n if (!j.hasClass(JSBNG__document.documentElement, \"tinyViewport\")) {\n gb = ((((u.getViewportDimensions().y - u.getElementDimensions(v(\"blueBar\")).y)) - 80));\n gb += \"px\";\n }\n ;\n ;\n n.set(k.JSBNG__find(fb, \"ul.uiMenuInner\"), \"maxHeight\", gb);\n });\n },\n initPageMenu: function(fb, gb) {\n if (!x) {\n oa.push(eb.initPageMenu.curry(fb, gb));\n return;\n }\n ;\n ;\n function hb(ib, jb) {\n ib.forEach(function(kb) {\n var lb = ka[kb] = k.create(\"li\");\n j.hide(lb);\n ((jb ? k.insertBefore(ia, lb) : k.appendContent(k.JSBNG__find(ca, \"ul.uiMenuInner\"), lb)));\n });\n };\n ;\n hb(fb, true);\n hb(gb, false);\n ja.info = k.scry(ca, \"li\")[0];\n la = gb;\n ma = true;\n if (na.length) {\n na.forEach(function(ib) {\n eb.registerPageMenuItem(ib.key, ib.JSBNG__item);\n });\n }\n ;\n ;\n },\n registerPageMenuItem: function(fb, gb) {\n if (!ma) {\n na.push({\n key: fb,\n JSBNG__item: gb\n });\n return;\n }\n ;\n ;\n if (ka[fb]) {\n k.replace(ka[fb], gb);\n ja[fb] = gb;\n delete ka[fb];\n if (((la.indexOf(fb) >= 0))) {\n j.show(ia);\n }\n ;\n ;\n }\n ;\n ;\n },\n removeTimePeriod: function(fb) {\n db(da, fb);\n }\n };\n e.exports = eb;\n});\n__d(\"TimelineScrubber\", [\"JSBNG__Event\",\"JSBNG__CSS\",\"DOM\",\"Focus\",\"Keys\",\"Parent\",\"TimelineController\",\"Vector\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"JSBNG__CSS\"), i = b(\"DOM\"), j = b(\"Focus\"), k = b(\"Keys\"), l = b(\"Parent\"), m = b(\"TimelineController\"), n = b(\"Vector\"), o = b(\"copyProperties\");\n function p(q) {\n this._root = q;\n this._navKeys = {\n };\n this._subNavKeys = {\n };\n this._rollups = {\n };\n this._rolledup = {\n };\n var r = q.childNodes;\n this._currentNav = r[0];\n for (var s = 0; ((s < r.length)); s++) {\n var t = r[s].getAttribute(\"data-key\");\n this._navKeys[t] = r[s];\n var u = i.scry(r[s], \"ul\");\n this._subNavKeys[t] = {\n };\n if (u.length) {\n var v = u[0].childNodes;\n for (var w = 0; ((w < v.length)); w++) {\n this._subNavKeys[t][v[w].getAttribute(\"data-key\")] = v[w];\n ;\n };\n ;\n }\n ;\n ;\n var x = r[s].getAttribute(\"data-rollup\");\n if (x) {\n this._rollups[x] = ((this._rollups[x] || []));\n this._rollups[x].push(r[s]);\n }\n ;\n ;\n };\n ;\n this._clickListener = g.listen(this._root, \"click\", this._handleScrub.bind(this));\n this._focusHandler = g.listen(this._root, \"keydown\", this._moveFocus.bind(this));\n this._tabbableElement = i.scry(this._root, \"a\")[0];\n h.show(this._root);\n var y = ((n.getViewportDimensions().y - this.SCRUBBER_NO_ADS_VERTICAL_BUFFER)), z = this.getHeight();\n if (((z > y))) {\n this.fold(((z - y)));\n }\n ;\n ;\n m.register(m.SCRUBBER, this);\n m.scrubberHasLoaded(this);\n };\n;\n o(p.prototype, {\n KEY_HEIGHT: 23,\n SUBKEY_HEIGHT: 16,\n OFFSET: 38,\n SCRUBBER_NO_ADS_VERTICAL_BUFFER: 125,\n reset: function() {\n this._root = null;\n this._navKeys = {\n };\n this._subNavKeys = {\n };\n this._rollups = {\n };\n this._rolledup = {\n };\n },\n getRoot: function() {\n return this._root;\n },\n getNav: function(q) {\n return this._navKeys[q];\n },\n getSubnav: function(q, r) {\n return this._subNavKeys[q][r];\n },\n getHeight: function() {\n return this._root.offsetHeight;\n },\n getLabelForNav: function(q) {\n var r = this.getNav(q);\n return ((r && i.getText(i.scry(r, \"a\")[0])));\n },\n getLabelForSubnav: function(q, r) {\n var s = this.getSubnav(q, r);\n return ((s && i.getText(i.scry(s, \"a\")[0])));\n },\n fold: function(q) {\n return this._adjustFolding(q, true);\n },\n unfold: function(q) {\n return this._adjustFolding(q, false);\n },\n getOffset: function() {\n return ((((this.OFFSET + ((h.hasClass(JSBNG__document.body, \"hasVoiceBar\") ? 26 : 0)))) + ((h.hasClass(\"rightColContent\", \"pagesTimelineRightColumn\") ? 48 : 0))));\n },\n updateSection: function(q, r) {\n if (!this._navKeys[q]) {\n return;\n }\n ;\n ;\n var s = this._navKeys[q].getAttribute(\"data-rollup\");\n if (((this._currentRollup && ((this._currentRollup != s))))) {\n h.removeClass(this._currentRollup, \"selected\");\n h.removeClass(i.scry(this._currentRollup, \"ul\")[0], \"loaded\");\n delete this._currentRollup;\n }\n ;\n ;\n if (((s && this._rolledup[s]))) {\n var t = this._rolledup[s];\n if (t.getAttribute(\"data-rollup\")) {\n this._currentRollup = t;\n h.addClass(this._currentRollup, \"selected\");\n h.addClass(i.scry(this._currentRollup, \"ul\")[0], \"loaded\");\n }\n ;\n ;\n }\n ;\n ;\n ((this._currentNav && h.removeClass(this._currentNav, \"selected\")));\n ((this._currentSubNav && h.removeClass(this._currentSubNav, \"selected\")));\n this._currentNav = null;\n this._currentSubNav = null;\n if (this._navKeys[q]) {\n this._currentNav = this._navKeys[q];\n h.addClass(this._currentNav, \"selected\");\n if (((this.decadesAreSelectable && this._navKeys[r]))) {\n this._currentSubNav = this._navKeys[r];\n h.addClass(this._currentSubNav, \"selected\");\n }\n else if (((r && this._subNavKeys[q][r]))) {\n this._currentSubNav = this._subNavKeys[q][r];\n h.addClass(this._currentSubNav, \"selected\");\n }\n \n ;\n ;\n }\n ;\n ;\n },\n _getRollupSize: function(q) {\n var r = this._currentNav, s = ((r && r.getAttribute(\"data-rollup\"))), t = ((this.KEY_HEIGHT * ((this._rollups[q].length - 1))));\n if (((q == s))) {\n t += ((this.SUBKEY_HEIGHT * i.scry(r, \"li\").length));\n t -= ((this.SUBKEY_HEIGHT * ((this._rollups[q].length - 1))));\n }\n ;\n ;\n return t;\n },\n _adjustFolding: function(q, r) {\n var s = q, t = Object.keys(this._rollups);\n while (((((q > 0)) && t.length))) {\n var u = t[((r ? \"pop\" : \"shift\"))]();\n if (((!r == !this._rolledup[u]))) {\n continue;\n }\n ;\n ;\n var v = this._getRollupSize(u);\n if (((v <= 0))) {\n continue;\n }\n ;\n ;\n if (((!r && ((v > q))))) {\n break;\n }\n ;\n ;\n this[((r ? \"_collapseRollup\" : \"_expandRollup\"))](u);\n q -= v;\n };\n ;\n return ((s - q));\n },\n _collapseRollup: function(q) {\n var r = this._rollups[q];\n if (((((!r || ((r.length < 2)))) || this._rolledup[q]))) {\n return;\n }\n ;\n ;\n var s = r[0].previousSibling, t = r[0], u = i.create(\"a\", {\n href: t.firstChild.href,\n rel: \"ignore\",\n tabindex: \"-1\"\n }, [q,]), v = i.create(\"ul\", {\n className: \"clearfix\"\n });\n for (var w = 0; ((w < r.length)); w++) {\n v.appendChild(r[w]);\n ;\n };\n ;\n var x = i.create(\"li\", null, [u,v,]);\n if (this.decadesAreSelectable) {\n var y = r[((r.length - 1))], z = ((t.getAttribute(\"data-key\") + y.getAttribute(\"data-key\")));\n x.setAttribute(\"data-start\", y.getAttribute(\"data-start\"));\n x.setAttribute(\"data-end\", t.getAttribute(\"data-end\"));\n x.setAttribute(\"data-key\", z);\n this._navKeys[z] = x;\n }\n else x.setAttribute(\"data-key\", t.getAttribute(\"data-key\"));\n ;\n ;\n x.setAttribute(\"data-rollup\", q);\n if (s) {\n i.insertAfter(s, x);\n }\n else i.prependContent(this._root, x);\n ;\n ;\n this._rolledup[q] = x;\n this._checkSelection();\n this._ensureFocusableElementIsVisible();\n },\n _expandRollup: function(q) {\n if (!this._rolledup[q]) {\n return;\n }\n ;\n ;\n var r = this._rolledup[q], s = i.scry(r, \"ul\")[0], t = JSBNG__document.createDocumentFragment();\n while (s.childNodes.length) {\n t.appendChild(s.firstChild);\n ;\n };\n ;\n i.replace(r, t);\n this._rolledup[q] = false;\n this._checkSelection();\n },\n _checkSelection: function() {\n if (this._currentNav) {\n var q = ((this._currentSubNav && this._currentSubNav.getAttribute(\"data-key\")));\n this.updateSection(this._currentNav.getAttribute(\"data-key\"), q);\n }\n ;\n ;\n },\n _handleScrub: function(JSBNG__event) {\n var q = JSBNG__event.getModifiers();\n if (((((JSBNG__event.isMiddleClick() || q.access)) || q.meta))) {\n return true;\n }\n ;\n ;\n var r = l.byTag(JSBNG__event.getTarget(), \"a\"), s = ((r && l.byAttribute(r, \"data-key\")));\n if (s) {\n m.scrubberWasClicked(s.getAttribute(\"data-key\"));\n m.navigateToSection(s.getAttribute(\"data-key\"));\n return JSBNG__event.prevent();\n }\n ;\n ;\n },\n _ensureFocusableElementIsVisible: function() {\n while (!((this._tabbableElement.offsetHeight || this._tabbableElement.offsetWidth))) {\n this._tabbableElement.tabIndex = -1;\n var q = l.byTag(l.byTag(this._tabbableElement, \"li\"), \"li\");\n this._tabbableElement = i.scry(q, \"a\")[0];\n this._tabbableElement.tabIndex = 0;\n };\n ;\n },\n _moveFocus: function(JSBNG__event) {\n if (JSBNG__event.getModifiers().any) {\n return;\n }\n ;\n ;\n var q = g.getKeyCode(JSBNG__event);\n if (((((q === k.UP)) || ((q === k.DOWN))))) {\n var r = i.scry(this._root, \"a\").filter(function(u) {\n return ((u.offsetHeight || u.offsetWidth));\n }), s = r.indexOf(this._tabbableElement);\n if (((s != -1))) {\n var t = r[((s + ((((q === k.UP)) ? -1 : 1))))];\n if (t) {\n t.tabindex = 0;\n j.set(t);\n this._tabbableElement.tabindex = -1;\n this._tabbableElement = t;\n JSBNG__event.prevent();\n }\n ;\n ;\n }\n ;\n ;\n }\n ;\n ;\n }\n });\n e.exports = p;\n});\n__d(\"TimelineMainScrubber\", [\"Arbiter\",\"Class\",\"JSBNG__CSS\",\"DOMQuery\",\"TimelineConstants\",\"TimelineController\",\"TimelineScrubber\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Class\"), i = b(\"JSBNG__CSS\"), j = b(\"DOMQuery\"), k = b(\"TimelineConstants\"), l = b(\"TimelineController\"), m = b(\"TimelineScrubber\"), n = b(\"copyProperties\");\n function o(p) {\n this.parent.construct(this, p);\n this._subscribe = g.subscribe(k.SECTION_LOADED, function(q, r) {\n var s = this._navKeys[r.key], t = ((s && j.scry(s, \"ul\")[0]));\n if (t) {\n i.addClass(t, \"loaded\");\n l.scrubberHasChangedState();\n if (r.hideSubSections) {\n i.hide(t);\n }\n ;\n ;\n }\n ;\n ;\n }.bind(this));\n };\n;\n h.extend(o, m);\n n(o.prototype, {\n reset: function() {\n this.parent.reset();\n ((this._subscribe && this._subscribe.unsubscribe()));\n }\n });\n e.exports = o;\n});\n__d(\"legacy:TimelineMainScrubber\", [\"TimelineMainScrubber\",], function(a, b, c, d) {\n a.TimelineMainScrubber = b(\"TimelineMainScrubber\");\n}, 3);\n__d(\"PubcontentPageTimelineChainingController\", [\"Arbiter\",\"AsyncRequest\",\"DOM\",\"PageLikeButton\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncRequest\"), i = b(\"DOM\"), j = b(\"PageLikeButton\"), k = \"fbSuggestionsPlaceHolder\", l = \"/ajax/pages/suggestions_on_liking.php\";\n m.init = function(n) {\n if (!this.$PubcontentPageTimelineChainingController0) {\n this.$PubcontentPageTimelineChainingController0 = new m(n);\n }\n ;\n ;\n };\n function m(n) {\n this.likedPageIDs = {\n };\n this.config = n;\n g.subscribe(j.LIKED, this.onLike.bind(this));\n };\n;\n m.prototype.$PubcontentPageTimelineChainingController1 = function(n) {\n var o = i.scry(JSBNG__document, ((\"#\" + k)));\n if (((o.length === 0))) {\n return null;\n }\n ;\n ;\n return o[0];\n };\n m.prototype.onLike = function(n, o) {\n if (((((((((o.profile_id && o.target)) && o.origin)) && ((o.origin in this.config)))) && !((o.profile_id in this.likedPageIDs))))) {\n var p = this.$PubcontentPageTimelineChainingController1(o.target);\n if (!p) {\n return;\n }\n ;\n ;\n this.likedPageIDs[o.profile_id] = true;\n new h().setURI(l).setData({\n pageid: o.profile_id\n }).setRelativeTo(p).send();\n }\n ;\n ;\n };\n e.exports = m;\n});"); |
| // 14734 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o88,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y4/r/kUk1EmwlmF-.js",o139); |
| // undefined |
| o88 = null; |
| // undefined |
| o139 = null; |
| // 15487 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"bmJBG\",]);\n}\n;\n__d(\"ChannelSubdomain\", [\"Cookie\",\"JSLogger\",], function(a, b, c, d, e, f) {\n var g = b(\"Cookie\"), h = b(\"JSLogger\"), i = h.create(\"channel\"), j = 7, k = null;\n function l(o, p) {\n var q = null, r = m(), s;\n o--;\n var t = Math.min(32, (j * o));\n t = Math.max(t, 1);\n var u = false;\n for (var v = 0; (v < 32); v++) {\n s = (((v + p)) % t);\n if (!((r & ((1 << s))))) {\n u = true;\n break;\n }\n ;\n };\n if (u) {\n k = s;\n q = (k % j);\n g.set(\"sub\", (r | ((1 << k))));\n }\n else {\n k = -1;\n q = null;\n i.error(\"subdomain_overflow\", {\n slot: k,\n max: o\n });\n }\n ;\n return q;\n };\n function m() {\n var o = (g.get(\"sub\") || 0);\n o = parseInt(o, 10);\n return (isNaN(o) ? 0 : o);\n };\n function n() {\n if (((k !== null) && (k >= 0))) {\n var o = (m() & ~((1 << k)));\n if (o) {\n g.set(\"sub\", o);\n }\n else g.clear(\"sub\");\n ;\n }\n ;\n };\n e.exports = {\n allocate: l,\n clear: n\n };\n});\n__d(\"DocRPC\", [\"ErrorUtils\",], function(a, b, c, d, e, f) {\n var g = b(\"ErrorUtils\"), h = {\n _apis: {\n },\n _dispatch: function(i) {\n var j;\n try {\n i = JSON.parse(i);\n } catch (k) {\n throw new Error(((\"DocRPC unparsable dispatch: \\\"\" + i) + \"\\\"\"));\n };\n if (h._apis.hasOwnProperty(i.api)) {\n var l = h._apis[i.api];\n if (l[i.method]) {\n j = g.applyWithGuard(l[i.method], l, i.args);\n };\n }\n ;\n if ((j === undefined)) {\n j = null;\n };\n return JSON.stringify(j);\n },\n publish: function(i, j) {\n h._apis[j] = i;\n },\n proxy: function(i, j, k) {\n var l = {\n };\n k.forEach(function(m) {\n l[m] = function() {\n var n = {\n api: j,\n method: m,\n args: Array.prototype.slice.call(arguments)\n }, o;\n try {\n if (i.closed) {\n throw new Error(\"DocRPC window closed\")\n };\n o = i.DocRPC._dispatch(JSON.stringify(n));\n } catch (p) {\n g.reportError(p);\n return;\n };\n if ((typeof (o) == \"string\")) {\n try {\n o = JSON.parse(o);\n } catch (p) {\n throw new Error(((((((\"DocRPC \" + j) + \".\") + m) + \" unparsable return: \\\"\") + o) + \"\\\"\"));\n }\n };\n return o;\n };\n });\n return l;\n }\n };\n e.exports = a.DocRPC = h;\n});\n__d(\"ChannelTransport\", [\"copyProperties\",\"bind\",\"AjaxRequest\",\"URI\",\"JSLogger\",\"DocRPC\",\"ChannelConstants\",\"UserAgent\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"bind\"), i = b(\"AjaxRequest\"), j = b(\"URI\"), k = b(\"JSLogger\"), l = b(\"DocRPC\"), m = b(\"ChannelConstants\"), n = b(\"UserAgent\"), o = k.create(\"channel\");\n function p() {\n return (((1048576 * Math.random()) | 0)).toString(36);\n };\n function q(y, z) {\n var aa = y.subdomain;\n aa = ((aa === null) ? \"\" : ((aa + \"-\")));\n var ba = new j(z).setDomain(((aa + y.host) + \".facebook.com\")).setPort(y.port).setSecure(j().isSecure());\n return ba;\n };\n function r(y) {\n var z = {\n partition: y.partition,\n cb: p()\n }, aa = q(y, \"/p\").setQueryData(z);\n o.log(\"start_p\", {\n uri: aa.toString()\n });\n var ba = new i(\"GET\", aa);\n if (i.supportsCORS()) {\n ba.xhr.withCredentials = true;\n };\n var ca = function(da) {\n o.log(\"finish_p\", {\n xhr: (da.toJSON ? da.toJSON() : da)\n });\n };\n ba.timeout = y.P_TIMEOUT;\n ba.onError = ba.onSuccess = ca;\n ba.send();\n };\n function s(y, z, aa) {\n var ba = new Image(), ca = 0, da = function(ga) {\n ba.abort();\n return (ga ? z() : aa());\n };\n ba.onload = function() {\n o.log(\"ping_ok\", {\n duration: (Date.now() - ca)\n });\n da(true);\n };\n ba.onerror = function() {\n r(y);\n da(false);\n };\n var ea = setTimeout(ba.onerror, 10000, false);\n ba.abort = function() {\n if (ea) {\n clearTimeout(ea);\n ea = null;\n }\n ;\n ba.onload = ba.onerror = null;\n };\n var fa = {\n partition: y.partition,\n cb: p()\n };\n ca = Date.now();\n ba.src = q(y, \"/ping\").setQueryData(fa);\n return ba;\n };\n function t(y, z, aa, ba) {\n var ca = new Date(), da = ((((ca - y.userActive)) / 1000) | 0);\n if ((da < 0)) {\n o.warn(\"idle_regression\", {\n idleTime: da,\n now: ca.getTime(),\n userActive: y.userActive\n });\n };\n var ea = {\n channel: y.user_channel,\n seq: y.seq,\n partition: y.partition,\n clientid: y.sessionID,\n cb: p(),\n idle: da,\n cap: 0\n };\n if ((da < 60)) {\n ea.state = \"active\";\n };\n if (y.streamingCapable) {\n ea.mode = \"stream\";\n ea.format = \"json\";\n }\n ;\n if (y.profile) {\n ea.profile = y.profile;\n };\n if ((y.webrtcSupport && (((n.chrome() >= 24) || (n.firefox() >= 22))))) {\n ea.cap = m.CAPABILITY_VOIP;\n };\n var fa = q(y, \"/pull\").setQueryData(ea), ga = new i(\"GET\", fa);\n if (i.supportsCORS()) {\n ga.xhr.withCredentials = true;\n };\n ga.timeout = (y.streamingCapable ? y.STREAMING_TIMEOUT : y.LONGPOLL_TIMEOUT);\n ga.onJSON = z;\n ga.onSuccess = aa;\n ga.onError = function() {\n var ha = ((((this.status == 12002) && (this._time >= y.MIN_12002_TIMEOUT))) || (((this.status == 504) && (this._time >= y.MIN_504_TIMEOUT)))), ia = (ha ? aa : ba);\n return (ia && ia.apply(this, arguments));\n };\n ga.send();\n y.inStreaming = y.streamingCapable;\n return ga;\n };\n function u(y) {\n this.manager = y;\n ((this.init && this.init()));\n };\n function v(y) {\n u.apply(this, arguments);\n };\n g(v.prototype, {\n logName: \"CORS\",\n enterState: function(y, z) {\n if (this._request) {\n this._request.abort();\n this._request = null;\n }\n ;\n if ((y == \"init\")) {\n setTimeout(h(this.manager, \"exitState\", {\n status: m.OK,\n stateId: z.stateId\n }), 3000, false);\n };\n if (!/pull|ping/.test(y)) {\n return\n };\n var aa = this.manager;\n if ((y == \"ping\")) {\n this._request = s(z, h(aa, \"exitState\", {\n status: m.OK,\n stateId: z.stateId\n }), h(aa, \"exitState\", {\n status: m.ERROR,\n stateId: z.stateId\n }));\n }\n else if ((y == \"pull\")) {\n this._request = t(z, h(aa, \"_processTransportData\", z.stateId), h(aa, \"exitState\", {\n status: m.OK,\n stateId: z.stateId\n }), h(aa, \"exitState\", {\n status: m.ERROR,\n stateId: z.stateId\n }));\n }\n ;\n }\n });\n function w(y) {\n o.log(\"iframe_init_constructor\");\n u.apply(this, arguments);\n this._iframe = document.createElement(\"iframe\");\n this._iframe.style.display = \"none\";\n document.body.appendChild(this._iframe);\n l.publish(this, \"outerTransport\");\n };\n g(w.prototype, {\n logName: \"iframe\",\n _initIframe: function(y) {\n o.log(\"iframe_init_start\");\n window.onchanneliframeready = function() {\n o.log(\"iframe_resources\");\n return y.resources;\n };\n window.onchanneliframeloaded = function() {\n o.log(\"iframe_loaded\");\n };\n if (y) {\n this._iframeURI = q(y, y.path);\n if (y.bustIframe) {\n var z = {\n partition: y.partition,\n cb: p()\n };\n this._iframeURI.setQueryData(z);\n }\n ;\n }\n else this._iframeURI = \"about:blank\";\n ;\n this._iframeProxy = null;\n try {\n this._iframe.contentWindow.location.replace(this._iframeURI);\n o.log(\"iframe_uri_set\");\n } catch (aa) {\n o.error(\"iframe_uri_set_error\", aa);\n this.exitState({\n status: m.ERROR,\n stateId: y.stateId\n }, (aa + \"\"));\n };\n },\n enterState: function(y, z) {\n if ((y == \"init\")) {\n this._initIframe(z);\n }\n else if (/idle|ping|pull/.test(y)) {\n if (this._iframeProxy) {\n this._iframeProxy.enterState.apply(this._iframeProxy, arguments);\n }\n else if ((y != \"idle\")) {\n this.exitState({\n status: m.ERROR,\n stateId: z.stateId\n }, \"iframe not yet loaded\");\n }\n ;\n }\n else if ((y == \"shutdown\")) {\n this._initIframe();\n }\n \n ;\n },\n _processTransportData: function() {\n this.manager._processTransportData.apply(this.manager, arguments);\n },\n exitState: function(y) {\n if (((this.manager.state == \"init\") && (y.status == m.OK))) {\n this._iframeProxy = l.proxy(this._iframe.contentWindow, \"innerTransport\", [\"enterState\",], ((this._iframeURI + \"\")).replace(/iframe.*/, \"\"));\n };\n if ((/ping|pull/.test(this.manager.state) && !this._iframeProxy)) {\n return\n };\n this.manager.exitState.apply(this.manager, arguments);\n }\n });\n function x() {\n this.init = this.init.bind(this);\n u.apply(this, arguments);\n };\n g(x.prototype, {\n logName: \"iframe(inner)\",\n init: function() {\n l.publish(this, \"innerTransport\");\n try {\n var z = l.proxy(window.parent, \"outerTransport\", [\"_processTransportData\",\"exitState\",], top.DocRPC.origin);\n g(this, z);\n this.exitState({\n status: m.OK,\n stateId: 1000000\n });\n } catch (y) {\n o.error(\"iframe_inner_init_error\", y);\n };\n },\n enterState: function(y, z) {\n if (this._request) {\n this._request.abort();\n this._request = null;\n }\n ;\n if ((y == \"ping\")) {\n this._request = s(z, h(this, \"exitState\", {\n status: m.OK,\n stateId: z.stateId\n }), h(this, \"exitState\", {\n status: m.ERROR,\n stateId: z.stateId\n }));\n }\n else if ((y == \"pull\")) {\n this._request = t(z, h(this, \"_processTransportData\", z.stateId), h(this, \"exitState\", {\n status: m.OK,\n stateId: z.stateId\n }), h(this, \"exitState\", {\n status: m.ERROR,\n stateId: z.stateId\n }));\n }\n ;\n }\n });\n e.exports = {\n getURI: q,\n Transport: u,\n CORSTransport: v,\n IframeTransport: w,\n IframeInnerTransport: x\n };\n});\n__d(\"MovingStat\", [], function(a, b, c, d, e, f) {\n function g(h) {\n h = (h || 60000);\n var i = {\n t: new Date(),\n count: 0,\n v: 0\n }, j = i, k = 0, l = 0;\n function m() {\n var n = (new Date() - h);\n while (((j && j.next) && (j.t < n))) {\n k -= j.v;\n l -= j.count;\n j = j.next;\n };\n };\n this.add = function(n) {\n k += n;\n l++;\n var o = new Date();\n if (((o - i.t) < 1000)) {\n i.v += n;\n i.count++;\n }\n else {\n i.next = {\n t: o,\n v: n,\n count: 1\n };\n i = i.next;\n m();\n }\n ;\n };\n this.tally = function(n) {\n n = (n || 1000);\n m();\n return {\n sum: k,\n count: l,\n timeAverage: ((k * n) / h)\n };\n };\n };\n e.exports = g;\n});\n__d(\"ChannelManager\", [\"Event\",\"function-extensions\",\"AjaxRequest\",\"Arbiter\",\"AsyncRequest\",\"ChannelConstants\",\"ChannelInitialData\",\"ChannelSubdomain\",\"ChannelTransport\",\"Env\",\"FBAjaxRequest\",\"JSLogger\",\"MovingStat\",\"PresenceCookieManager\",\"PresenceState\",\"PresenceUtil\",\"Run\",\"SystemEvents\",\"URI\",\"UserActivity\",\"copyProperties\",\"createArrayFrom\",\"ChatVisibility\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\");\n b(\"function-extensions\");\n var h = b(\"AjaxRequest\"), i = b(\"Arbiter\"), j = b(\"AsyncRequest\"), k = b(\"ChannelConstants\"), l = b(\"ChannelInitialData\"), m = b(\"ChannelSubdomain\"), n = b(\"ChannelTransport\"), o = b(\"Env\"), p = b(\"FBAjaxRequest\"), q = b(\"JSLogger\"), r = b(\"MovingStat\"), s = b(\"PresenceCookieManager\"), t = b(\"PresenceState\"), u = b(\"PresenceUtil\"), v = b(\"Run\"), w = b(\"SystemEvents\"), x = b(\"URI\"), y = b(\"UserActivity\"), z = b(\"copyProperties\"), aa = b(\"createArrayFrom\"), ba = b(\"ChatVisibility\"), ca, da = q.create(\"channel\"), ea = null;\n function fa(qa) {\n ea = qa;\n };\n var ga = {\n idle: {\n ok: \"init!\"\n },\n init: {\n ok: \"pull!\",\n error: \"reconnect\",\n sys_online: \"init\",\n sys_timetravel: \"init\"\n },\n pull: {\n ok: \"pull!\",\n error: \"ping\",\n error_missing: \"pull\",\n error_msg_type: \"pull\",\n refresh_0: \"reconnect\",\n refresh_110: \"reconnect\",\n refresh_111: \"reconnect\",\n refresh_112: \"pull\",\n refresh_113: \"pull\",\n refresh_117: \"reconnect\"\n },\n ping: {\n ok: \"pull!\",\n error: \"ping\",\n error_stale: \"reconnect!\"\n },\n reconnect: {\n ok: \"init!\",\n error: \"reconnect\",\n sys_online: \"reconnect\",\n sys_timetravel: \"reconnect\"\n },\n shutdown: {\n },\n _all: {\n error_max: \"shutdown!\",\n error_shutdown: \"shutdown!\",\n sys_owner: \"reconnect\",\n sys_nonowner: \"idle!\",\n sys_online: \"ping\",\n sys_offline: \"idle!\",\n sys_timetravel: \"ping\"\n }\n }, ha = {\n userActive: (ba.isOnline() ? Date.now() : 0),\n sessionID: (((Math.random() * 2147483648) | 0)).toString(16),\n streamingCapable: false,\n inStreaming: false,\n LONGPOLL_TIMEOUT: 60000,\n STREAMING_TIMEOUT: 60000,\n P_TIMEOUT: 30000,\n IFRAME_LOAD_TIMEOUT: 30000,\n MIN_RETRY_INTERVAL: 5000,\n MAX_RETRY_INTERVAL: 30000,\n MIN_12002_TIMEOUT: 9000,\n MIN_504_TIMEOUT: 20000,\n STALL_THRESHOLD: 180000,\n JUMPSTART_THRESHOLD: 90000,\n MIN_INIT_PROBE_DELAY: 3000,\n INIT_PROBE_DELAY_RANDOMIZE_RANGE: 12000,\n PROBE_DELAY: 60000,\n PROBE_HEARTBEATS_INTERVAL_LOW: 1000,\n PROBE_HEARTBEATS_INTERVAL_HIGH: 3000,\n STREAMING_EXIT_STATE_ON_CONTINUE: false\n }, ia = 1, ja = {\n }, ka = 0;\n function la() {\n return (j.lastSuccessTime ? Math.round((((Date.now() - j.lastSuccessTime)) / 1000)) : -1);\n };\n function ma() {\n var qa = {\n };\n if (ca.getConfig(\"host\")) {\n qa[ca.getConfig(\"user_channel\")] = ca.getConfig(\"seq\", 0);\n };\n return qa;\n };\n function na() {\n var qa = Date.now(), ra = Date.now(), sa = {\n total: 0\n }, ta = \"idle\", ua = false;\n w.subscribe([w.USER,w.ONLINE,w.TIME_TRAVEL,], function(xa, ya) {\n pa(true);\n ra = null;\n ca.lastPullTime = Date.now();\n var za;\n switch (xa) {\n case w.USER:\n za = (w.isPageOwner() ? k.SYS_OWNER : k.SYS_NONOWNER);\n break;\n case w.ONLINE:\n za = (ya ? k.SYS_ONLINE : k.SYS_OFFLINE);\n break;\n case w.TIME_TRAVEL:\n za = k.SYS_TIMETRAVEL;\n break;\n };\n ca.exitState({\n status: za,\n stateId: ia\n });\n });\n var va = function(xa, ya) {\n var za = Date.now(), ab;\n if (ya) {\n qa = za;\n ab = (ya.nextState || ya.state);\n }\n else ab = ta;\n ;\n w.checkTimeTravel();\n if (ra) {\n var bb = Math.round((((za - ra)) / 1000));\n if ((bb > 0)) {\n sa[ta] = (((sa[ta] || 0)) + bb);\n sa.total += bb;\n }\n ;\n }\n ;\n ta = ab;\n ra = za;\n if (!xa) {\n sa.lastSuccessTime = la();\n sa.online = w.isOnline();\n da.log(\"rollup\", sa);\n }\n ;\n };\n i.subscribe(k.ON_ENTER_STATE, va);\n setInterval(va, 60000, false);\n i.subscribe(q.DUMP_EVENT, function(xa, ya) {\n ya.channelRollup = sa;\n });\n var wa = function() {\n if ((ca.isShutdown() || ca.shouldIdle())) {\n return\n };\n w.checkTimeTravel();\n var xa = (Date.now() - ((ca.lastPullTime || o.start)));\n if ((!ua && (xa > ha.STALL_THRESHOLD))) {\n var ya = la();\n da.error(\"stall\", {\n lastSuccessTime: ya,\n rollupState: ta\n });\n ua = true;\n }\n ;\n var za = (Date.now() - qa);\n if (((ca.state == \"pull\") && (za > ha.JUMPSTART_THRESHOLD))) {\n qa = null;\n da.warn(\"jumpstart\", {\n state: ca.state,\n dormant: za\n });\n ca.enterState(\"init\");\n }\n ;\n };\n setInterval(wa, 10000, false);\n };\n function oa() {\n var qa = Date.now(), ra = 1;\n function sa() {\n setTimeout(sa, (ra * 1000), false);\n var xa = ca.state;\n if (((xa == \"idle\") && ca.shouldIdle())) {\n return\n };\n da.bump(\"conn_t\", ra);\n if ((xa == \"pull\")) {\n da.bump(\"conn_t_pull\", ra);\n };\n };\n sa();\n var ta = [15,30,60,120,240,], ua = false, va = false;\n function wa(xa) {\n setTimeout(function() {\n da.rate((\"pullenter_\" + xa), ua);\n da.rate((\"pullexit_\" + xa), va);\n }, (xa * 1000), false);\n };\n while (ta.length) {\n wa(ta.shift());;\n };\n i.subscribe(k.ON_ENTER_STATE, function(xa, ya) {\n if ((ya.state == \"pull\")) {\n ua = true;\n };\n qa = Date.now();\n });\n i.subscribe(k.ON_EXIT_STATE, function(xa, ya) {\n if (((ya.state != \"pull\") || !qa)) {\n return\n };\n var za = \"other\";\n if ((ya.status == k.OK)) {\n va = true;\n za = \"ok\";\n }\n else if ((ya.xhr && ya.xhr.errorType)) {\n za = (/ar:(\\w+)/.test(ya.xhr.errorType) && RegExp.$1);\n }\n else if (/^sys_/.test(ya.status)) {\n return\n }\n \n ;\n var ab = (((Date.now() - qa)) / 1000);\n if ((ab < 0)) {\n return;\n }\n else if ((ab > 3600)) {\n ab = 3600;\n }\n ;\n da.bump(\"conn_num\");\n da.bump(\"conn_exit\", ab);\n da.bump((\"conn_num_\" + za));\n da.bump((\"conn_exit_\" + za), ab);\n });\n };\n function pa(qa) {\n if (qa) {\n ka = 0;\n ja = {\n };\n }\n else ka++;\n ;\n };\n ca = {\n state: \"idle\",\n nextState: null,\n lastPullTime: Date.now(),\n heartbeats: [],\n setTestCallback: fa,\n init: function(qa) {\n this.init = function() {\n \n };\n if ((typeof (y) != \"undefined\")) {\n y.subscribe(function() {\n if (ba.isOnline()) {\n ha.userActive = Date.now();\n };\n }.bind(this));\n }\n else da.error(\"user_activity_undefined\");\n ;\n s.register(\"ch\", ma);\n var ra = this.getConfig(\"max_conn\", 2), sa = Math.floor((Math.random() * 32));\n ha.subdomain = m.allocate(ra, sa);\n if ((typeof window.onpageshow != \"undefined\")) {\n g.listen(window, \"pagehide\", m.clear);\n }\n else v.onUnload(m.clear);\n ;\n this._transportRate = new r(30000);\n var ta = (((h.supportsCORS() && !ha.forceIframe)) ? \"CORSTransport\" : \"IframeTransport\");\n this.transport = new n[ta](this);\n if (qa) {\n this.enterState.apply(this, arguments);\n };\n i.subscribe(q.DUMP_EVENT, function(event, va) {\n va.transportRate = this._transportRate.tally();\n va.transportType = ta;\n va.transportVersion = 2;\n }.bind(this));\n na();\n oa();\n if ((((ca.getConfig(\"tryStreaming\") && ca.getConfig(\"host\")) && h.supportsCORS()) && !ha.forceIframe)) {\n var ua = (ha.MIN_INIT_PROBE_DELAY + (Math.random() * ha.INIT_PROBE_DELAY_RANDOMIZE_RANGE));\n setTimeout(this._probeTest, ua, false);\n }\n ;\n },\n configure: function() {\n var qa = aa(arguments);\n da.log(\"configure\", qa);\n qa.forEach(z.bind(null, ha));\n i.inform(k.ON_CONFIG, this);\n },\n getConfig: function(qa, ra) {\n return ((qa in ha) ? ha[qa] : ra);\n },\n isShutdown: function() {\n return (this.state == \"shutdown\");\n },\n shouldIdle: function() {\n return !((w.isPageOwner() && w.isOnline()));\n },\n _sendIframeError: function(qa) {\n var ra = new j().setURI(\"/ajax/presence/reconnect.php\").setData({\n reason: qa,\n fb_dtsg: o.fb_dtsg\n }).setOption(\"suppressErrorHandlerWarning\", true).setOption(\"retries\", 1).setMethod(\"GET\").setReadOnly(true).setAllowCrossPageTransition(true);\n (ra.specifiesWriteRequiredParams() && ra.send());\n },\n _getDelay: function() {\n var qa = Math.min((ha.MIN_RETRY_INTERVAL * Math.pow(2, Math.max(0, (ka - 1)))), ha.MAX_RETRY_INTERVAL);\n return ((qa * ((13517 + (Math.random() / 2)))) | 0);\n },\n enterState: function() {\n if (this._inEnterState) {\n da.warn(\"enterstate_recursion\");\n };\n this._inEnterState = true;\n try {\n this._enterState.apply(this, arguments);\n this._inEnterState = false;\n } catch (qa) {\n this._inEnterState = false;\n throw qa;\n };\n },\n _enterState: function(qa) {\n var ra = 0, sa = aa(arguments);\n if (this.isShutdown()) {\n return\n };\n if (((qa != \"idle!\") && this.shouldIdle())) {\n return\n };\n ia++;\n ha.stateId = ia;\n clearTimeout(this._deferredTransition);\n this._deferredTransition = null;\n this.transport.enterState(\"idle\");\n this.state = \"idle\";\n this.nextState = null;\n if (/!$/.test(qa)) {\n var ta = this._transportRate.tally().timeAverage, ua = ca.getConfig(\"MAX_CHANNEL_STATES_PER_SEC\", 1);\n if ((ta >= ua)) {\n if (!this._throttled) {\n this._throttled = true;\n da.warn(\"throttled\");\n }\n ;\n da.bump(\"throttle\");\n ra = (1000 / ua);\n }\n ;\n }\n else if (!(/#$/.test(qa))) {\n ra = this._getDelay();\n }\n ;\n qa = qa.replace(/\\W*$/, \"\");\n if (!ga[qa]) {\n throw new Error((\"invalid state:\" + qa))\n };\n var va;\n if ((ra <= 0)) {\n va = {\n state: qa\n };\n this._transportRate.add(1);\n this.state = qa;\n var wa = this[(\"_enter_\" + this.state)];\n if (wa) {\n sa.shift();\n wa.apply(this, sa);\n }\n ;\n if (/init|idle|pull|ping/.test(this.state)) {\n if ((ha.streamingCapable && /pull/.test(this.state))) {\n this.heartbeats = [];\n };\n this.transport.enterState(this.state, ha);\n if ((this.state == \"ping\")) {\n va.url = n.getURI(ha).toString();\n va.port = (ha.port || \"undefined\");\n }\n ;\n }\n ;\n }\n else {\n this.state = \"idle\";\n this.nextState = qa;\n va = {\n state: this.state,\n delay: ra,\n nextState: qa\n };\n sa[0] = (qa + \"#\");\n this._deferredTransition = (function() {\n this._deferredTransition = null;\n this.enterState.apply(this, sa);\n }).bind(this).defer(ra, false);\n }\n ;\n if (/pull/.test(qa)) {\n va.client_id = ha.sessionID;\n va.streaming = ha.inStreaming;\n }\n ;\n da.log((\"enter_\" + this.state), va);\n i.inform(k.ON_ENTER_STATE, va);\n },\n exitState: function(qa, ra) {\n var sa = qa.stateId, ta = qa.status;\n if ((this.isShutdown() || (sa < ia))) {\n return\n };\n var ua = aa(arguments), va = this.state;\n ua[0] = qa.status;\n var wa = {\n state: va,\n status: ta\n };\n if (/pull/.test(va)) {\n wa.client_id = ha.sessionID;\n wa.streaming = ha.inStreaming;\n }\n ;\n if ((/ping/.test(va) && (ta != k.OK))) {\n wa.url = n.getURI(ha).toString();\n };\n if (this.nextState) {\n wa.nextState = this.nextState;\n };\n if ((ra && ra.errorType)) {\n wa.xhr = (ra.toJSON ? ra.toJSON() : ra);\n delete wa.xhr.json;\n }\n ;\n if ((ra && ra.json)) {\n if (ra.json.t) {\n wa.t = ra.json.t;\n };\n if (ra.json.reason) {\n wa.reason = ra.json.reason;\n };\n if (ra.json.seq) {\n wa.seq = ra.json.seq;\n };\n }\n ;\n da.log((\"exit_\" + va), wa);\n i.inform(k.ON_EXIT_STATE, wa);\n var xa = this[(\"_exit_\" + va)];\n if (xa) {\n ta = (xa.apply(this, ua) || ta);\n };\n if ((ta != k.OK)) {\n pa();\n ja[va] = (((ja[va] || 0)) + 1);\n }\n ;\n var ya = (ga[(this.nextState || va)][ta] || ga._all[ta]), za = (ya && ya.replace(/!*$/, \"\"));\n if (!za) {\n da.error(\"terminal_transition\", wa);\n this._shutdownHint = k.HINT_INVALID_STATE;\n ya = \"shutdown!\";\n }\n ;\n this._lastState = va;\n this._lastStatus = ta;\n this.enterState(ya);\n },\n _processTransportData: function(qa, ra) {\n var sa = ra.json, ta = sa.t;\n if ((\"s\" in sa)) {\n sa.seq = sa.s;\n delete sa.s;\n }\n ;\n var ua = ha.seq;\n if ((\"seq\" in sa)) {\n ha.seq = sa.seq;\n t.doSync();\n }\n ;\n switch (ta) {\n case \"continue\":\n if ((ha.inStreaming && (this.heartbeats.length < 1))) {\n ha.streamingCapable = false;\n da.log(\"switch_to_longpoll\");\n setTimeout(this._probeTest, ha.PROBE_DELAY, false);\n }\n ;\n pa(true);\n if ((!ha.inStreaming || ha.STREAMING_EXIT_STATE_ON_CONTINUE)) {\n this.exitState({\n status: k.OK,\n stateId: qa\n });\n };\n break;\n case \"refresh\":\n \n case \"refreshDelay\":\n this.exitState({\n status: (\"refresh_\" + ((sa.reason || 0))),\n stateId: qa\n }, ra);\n break;\n case \"fullReload\":\n s.clear();\n da.log(\"invalid_history\");\n i.inform(k.ON_INVALID_HISTORY);\n this.exitState({\n status: k.ERROR_MISSING,\n stateId: qa\n }, ra);\n break;\n case \"msg\":\n var va, wa, xa, ya;\n pa(true);\n wa = sa.ms;\n xa = (ha.seq - wa.length);\n for (va = 0; (va < wa.length); va++, xa++) {\n if ((xa >= ua)) {\n ya = wa[va];\n if (ya.type) {\n if (((ya.type === \"messaging\") && ya.message)) {\n var za = (ya.unread_counts && ya.unread_counts.inbox);\n da.debug(\"message\", {\n type: \"messaging\",\n inbox_unread: za,\n tid: ya.message.tid,\n mid: ya.message.mid\n });\n }\n else if ((ya.type === \"m_messaging\")) {\n da.debug(\"message\", {\n type: \"m_messaging\",\n tid: ya.tid,\n mid: ya.uuid\n });\n }\n else da.debug(\"message\", {\n type: ya.type\n });\n \n ;\n i.inform(k.getArbiterType(ya.type), {\n obj: ya\n });\n }\n ;\n }\n else da.warn(\"seq_regression\", {\n seq: xa,\n last_seq: ua,\n messages: wa.length\n });\n ;\n };\n break;\n case \"heartbeat\":\n if (ha.inStreaming) {\n var ab = Date.now();\n if ((this.heartbeats.length > 0)) {\n var bb = (ab - this.heartbeats[(this.heartbeats.length - 1)]);\n da.log(\"heartbeat_interval\", {\n client_id: ha.sessionID,\n interval: bb\n });\n }\n ;\n this.heartbeats.push(ab);\n }\n ;\n break;\n default:\n da.error(\"unknown_msg_type\", {\n type: ta\n });\n break;\n };\n },\n _enter_init: function() {\n if ((ja.init >= ca.getConfig(\"MAX_INIT_FAILS\", 2))) {\n return this.exitState.bind(this, {\n status: k.ERROR_MAX,\n stateId: ia\n }).defer()\n };\n this._initTimer = this.exitState.bind(this, {\n status: k.ERROR,\n stateId: ia\n }, \"timeout\").defer(ha.IFRAME_LOAD_TIMEOUT, false);\n },\n _enter_reconnect: function(qa) {\n var ra = ia;\n if (!u.hasUserCookie()) {\n da.warn(\"no_user_cookie\");\n (function() {\n ca._shutdownHint = k.HINT_AUTH;\n ca.exitState({\n status: k.ERROR_SHUTDOWN,\n stateId: ra\n });\n }).defer();\n return;\n }\n ;\n var sa = {\n reason: qa,\n fb_dtsg: o.fb_dtsg\n };\n if (o.fb_isb) {\n sa.fb_isb = o.fb_isb;\n };\n if (ea) {\n ea(sa);\n };\n var ta = new p(\"GET\", \"/ajax/presence/reconnect.php\", sa);\n ta.onSuccess = (function() {\n ca.configure(ta.json);\n s.store();\n this.exitState({\n status: k.OK,\n stateId: ra\n });\n }).bind(this);\n ta.onError = (function() {\n var ua = (ta.json && ta.json.error);\n if (((ta.errorType == h.TRANSPORT_ERROR) || (ta.errorType == h.PROXY_ERROR))) {\n this._shutdownHint = k.HINT_CONN;\n };\n if ((ua && (ua == 1356007))) {\n this._shutdownHint = k.HINT_MAINT;\n }\n else if ((((ua == 1357001) || (ua == 1357004)) || (ua == 1348009))) {\n this._shutdownHint = k.HINT_AUTH;\n }\n else this._shutdownHint = null;\n \n ;\n this.exitState({\n status: (this._shutdownHint ? k.ERROR_SHUTDOWN : k.ERROR),\n stateId: ra\n }, ta);\n }).bind(this);\n ta.send();\n },\n _enter_shutdown: function() {\n i.inform(k.ON_SHUTDOWN, {\n reason: this._shutdownHint\n });\n },\n _exit_init: function(qa) {\n if (this._initTimer) {\n this._initTimer = clearTimeout(this._initTimer);\n };\n if ((qa == k.ERROR_MAX)) {\n this._sendIframeError(k.reason_IFrameLoadGiveUp);\n };\n },\n _exit_pull: function(qa) {\n if ((qa == k.OK)) {\n this.lastPullTime = Date.now();\n };\n },\n _exit_ping: function(qa) {\n if ((qa == k.OK)) {\n var ra = (Date.now() - ((this.lastPullTime || o.start)));\n if ((ra > ha.STALL_THRESHOLD)) {\n return k.ERROR_STALE\n };\n }\n ;\n },\n _probeTest: function() {\n ha.streamingCapable = false;\n var qa = [], ra = {\n mode: \"stream\",\n format: \"json\"\n }, sa = new x(\"/probe\").setDomain((ha.host + \".facebook.com\")).setPort(ha.port).setSecure(x().isSecure()).setQueryData(ra), ta = new h(\"GET\", sa);\n ta.onJSON = function(ua, va) {\n if (((ua && ua.json) && (ua.json.t === \"heartbeat\"))) {\n qa.push(Date.now());\n if ((qa.length >= 2)) {\n var wa = (qa[1] - qa[0]);\n if (((wa >= ha.PROBE_HEARTBEATS_INTERVAL_LOW) && (wa <= ha.PROBE_HEARTBEATS_INTERVAL_HIGH))) {\n ha.streamingCapable = true;\n da.log(\"switch_to_streaming\");\n }\n ;\n da.log(\"probe_ok\", {\n time: wa\n });\n }\n ;\n }\n ;\n };\n ta.onSuccess = function(ua) {\n if ((qa.length != 2)) {\n ha.streamingCapable = false;\n da.error(\"probe_error\", {\n error: (\"beats.length = \" + qa.length)\n });\n }\n ;\n };\n ta.onError = function(ua) {\n ha.streamingCapable = false;\n da.error(\"probe_error\", ua);\n };\n da.log(\"probe_request\");\n ta.send();\n }\n };\n e.exports = ca;\n if (l.channelConfig) {\n ca.configure(l.channelConfig);\n if (/shutdown/.test(l.state)) {\n ca._shutdownHint = k[l.reason];\n };\n ca.init(l.state, l.reason);\n }\n;\n});\n__d(\"ChannelConnection\", [\"Arbiter\",\"copyProperties\",\"ChatConfig\",\"Run\",\"SystemEvents\",\"ChannelConstants\",\"ChannelManager\",\"JSLogger\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"copyProperties\"), i = b(\"ChatConfig\"), j = b(\"Run\"), k = b(\"SystemEvents\"), l = b(\"ChannelConstants\"), m = b(\"ChannelManager\"), n = b(\"JSLogger\"), o = n.create(\"channel_connection\"), p = null, q = null, r = null, s = null, t = 0, u = h(new g(), {\n CONNECTED: \"chat-connection/connected\",\n RECONNECTING: \"chat-connection/reconnecting\",\n SHUTDOWN: \"chat-connection/shutdown\",\n MUTE_WARNING: \"chat-connection/mute\",\n UNMUTE_WARNING: \"chat-connection/unmute\"\n });\n function v() {\n if (q) {\n clearTimeout(q);\n q = null;\n }\n ;\n };\n function w() {\n v();\n o.log(\"unmute_warning\");\n u.inform(u.UNMUTE_WARNING);\n };\n function x(ba) {\n v();\n q = w.defer(ba, false);\n o.log(\"mute_warning\", {\n time: ba\n });\n u.inform(u.MUTE_WARNING);\n };\n function y() {\n if (r) {\n clearTimeout(r);\n r = null;\n }\n ;\n };\n function z(ba, ca) {\n y();\n if (((ba === l.ON_ENTER_STATE) && (((ca.nextState || ca.state)) === \"pull\"))) {\n if ((s !== u.CONNECTED)) {\n o.log(\"connected\");\n var da = !s;\n s = u.CONNECTED;\n t = 0;\n u.inform(u.CONNECTED, {\n init: da\n });\n }\n ;\n }\n else if (((ba === l.ON_ENTER_STATE) && (((((ca.nextState || ca.state)) === \"ping\") || ((!ca.nextState && (ca.state === \"idle\"))))))) {\n r = (function() {\n var ea = null;\n if (!(((ca.state === \"idle\") && !ca.nextState))) {\n ea = ((ca.delay || 0));\n };\n o.log(\"reconnecting\", {\n delay: ea\n });\n if (u.disconnected()) {\n o.log(\"reconnecting_ui\", {\n delay: ea\n });\n };\n s = u.RECONNECTING;\n (((ca.state === \"idle\")) && t++);\n if ((t > 1)) {\n u.inform(u.RECONNECTING, ea);\n }\n else if ((!ca.nextState && (ca.state === \"idle\"))) {\n z(ba, ca);\n }\n ;\n }).defer(500, false);\n }\n else if ((ba === l.ON_SHUTDOWN)) {\n o.log(\"shutdown\", {\n reason: ca.reason\n });\n s = u.SHUTDOWN;\n t = 0;\n u.inform(u.SHUTDOWN, ca.reason);\n }\n \n \n ;\n };\n function aa(ba) {\n if (((m.state === \"ping\") || m.isShutdown())) {\n return\n };\n o.log(\"reconnect\", {\n now: ba\n });\n u.inform(u.RECONNECTING, 0);\n if (!!ba) {\n if ((p !== null)) {\n clearTimeout(p);\n p = null;\n }\n ;\n m.enterState(\"ping!\");\n }\n else if (!p) {\n p = setTimeout(function() {\n m.enterState(\"ping!\");\n p = null;\n }, i.get(\"channel_manual_reconnect_defer_msec\"), false);\n }\n ;\n };\n if (m.isShutdown()) {\n z(l.ON_SHUTDOWN, m._shutdownHint);\n }\n else z(l.ON_ENTER_STATE, {\n state: m.state,\n nextState: m.nextState,\n delay: 0\n });\n;\n g.subscribe([l.ON_ENTER_STATE,l.ON_SHUTDOWN,], z);\n k.subscribe(k.TIME_TRAVEL, function() {\n aa();\n x(i.get(\"mute_warning_time_msec\"));\n });\n j.onBeforeUnload(y, false);\n h(u, {\n disconnected: function() {\n return ((s === u.SHUTDOWN) || ((((s === u.RECONNECTING) && !q) && (t > 1))));\n },\n isShutdown: function() {\n return (s === u.SHUTDOWN);\n },\n reconnect: aa,\n unmuteWarning: w\n });\n e.exports = u;\n});\n__d(\"legacy:cookie\", [\"Cookie\",], function(a, b, c, d) {\n var e = b(\"Cookie\");\n a.getCookie = e.get;\n a.setCookie = e.set;\n a.clearCookie = e.clear;\n}, 3);\n__d(\"LayerHideOnSuccess\", [\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\");\n function h(i) {\n this._layer = i;\n };\n g(h.prototype, {\n _subscription: null,\n enable: function() {\n this._subscription = this._layer.subscribe(\"success\", this._layer.hide.bind(this._layer));\n },\n disable: function() {\n if (this._subscription) {\n this._subscription.unsubscribe();\n this._subscription = null;\n }\n ;\n }\n });\n e.exports = h;\n});\n__d(\"Overlay\", [\"Class\",\"CSS\",\"DataStore\",\"DOM\",\"Layer\",\"LayerButtons\",\"LayerDestroyOnHide\",\"LayerFadeOnHide\",\"LayerFadeOnShow\",\"LayerFormHooks\",\"LayerHideOnBlur\",\"LayerHideOnEscape\",\"LayerHideOnSuccess\",\"LayerHideOnTransition\",\"LayerTabIsolation\",\"LayerMouseHooks\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"CSS\"), i = b(\"DataStore\"), j = b(\"DOM\"), k = b(\"Layer\"), l = b(\"LayerButtons\"), m = b(\"LayerDestroyOnHide\"), n = b(\"LayerFadeOnHide\"), o = b(\"LayerFadeOnShow\"), p = b(\"LayerFormHooks\"), q = b(\"LayerHideOnBlur\"), r = b(\"LayerHideOnEscape\"), s = b(\"LayerHideOnSuccess\"), t = b(\"LayerHideOnTransition\"), u = b(\"LayerTabIsolation\"), v = b(\"LayerMouseHooks\"), w = b(\"copyProperties\");\n function x(y, z) {\n y = w({\n buildWrapper: true\n }, (y || {\n }));\n this._shouldBuildWrapper = y.buildWrapper;\n this.parent.construct(this, y, z);\n };\n g.extend(x, k);\n w(x.prototype, {\n _configure: function(y, z) {\n this.parent._configure(y, z);\n var aa = this.getRoot();\n this._overlay = (j.scry(aa, \"div.uiOverlay\")[0] || aa);\n h.hide(aa);\n j.appendContent(this.getInsertParent(), aa);\n i.set(this._overlay, \"overlay\", this);\n var ba = i.get(this._overlay, \"width\");\n (ba && this.setWidth(ba));\n if (this.setFixed) {\n this.setFixed((i.get(this._overlay, \"fixed\") == \"true\"));\n };\n if ((i.get(this._overlay, \"fadeonshow\") != \"false\")) {\n this.enableBehavior(o);\n };\n if ((i.get(this._overlay, \"fadeonhide\") != \"false\")) {\n this.enableBehavior(n);\n };\n if ((i.get(this._overlay, \"hideonsuccess\") != \"false\")) {\n this.enableBehavior(s);\n };\n if ((i.get(this._overlay, \"hideonblur\") == \"true\")) {\n this.enableBehavior(q);\n };\n if ((i.get(this._overlay, \"destroyonhide\") != \"false\")) {\n this.enableBehavior(m);\n };\n return this;\n },\n _getDefaultBehaviors: function() {\n return this.parent._getDefaultBehaviors().concat([l,p,v,r,t,u,]);\n },\n initWithoutBuildingWrapper: function() {\n this._shouldBuildWrapper = false;\n return this.init.apply(this, arguments);\n },\n _buildWrapper: function(y, z) {\n z = this.parent._buildWrapper(y, z);\n if (!this._shouldBuildWrapper) {\n this._contentRoot = z;\n return z;\n }\n ;\n this._contentRoot = j.create(\"div\", {\n className: \"uiOverlayContent\"\n }, z);\n return j.create(\"div\", {\n className: \"uiOverlay\"\n }, this._contentRoot);\n },\n getContentRoot: function() {\n return this._contentRoot;\n },\n destroy: function() {\n i.remove(this.getRoot(), \"overlay\");\n this.parent.destroy();\n }\n });\n e.exports = x;\n});\n__d(\"legacy:adware-scanner\", [\"AdwareScaner\",], function(a, b, c, d) {\n a.AdwareScaner = b(\"AdwareScaner\");\n}, 3);\n__d(\"ContextualDialogFooterLink\", [\"Event\",\"copyProperties\",\"CSS\",\"DOM\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"copyProperties\"), i = b(\"CSS\"), j = b(\"DOM\");\n function k(l) {\n this._layer = l;\n };\n h(k.prototype, {\n _subscriptions: null,\n enable: function() {\n var l = this._layer.getRoot(), m = j.scry(l, \".uiContextualDialogFooterLink\")[0], n = \"uiContextualDialogHoverFooterArrow\";\n this._subscriptions = [g.listen(m, \"mouseenter\", i.addClass.curry(l, n)),g.listen(m, \"mouseleave\", i.removeClass.curry(l, n)),];\n },\n disable: function() {\n this._subscriptions.forEach(function(l) {\n l.remove();\n });\n this._subscriptions = null;\n }\n });\n e.exports = k;\n});\n__d(\"LegacyContextualDialog\", [\"Arbiter\",\"ArbiterMixin\",\"ARIA\",\"Bootloader\",\"Class\",\"ContextualDialogFooterLink\",\"ContextualThing\",\"CSS\",\"DataStore\",\"DOM\",\"Event\",\"Locale\",\"Overlay\",\"Parent\",\"Style\",\"Vector\",\"$\",\"copyProperties\",\"getOverlayZIndex\",\"shield\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ArbiterMixin\"), i = b(\"ARIA\"), j = b(\"Bootloader\"), k = b(\"Class\"), l = b(\"ContextualDialogFooterLink\"), m = b(\"ContextualThing\"), n = b(\"CSS\"), o = b(\"DataStore\"), p = b(\"DOM\"), q = b(\"Event\"), r = b(\"Locale\"), s = b(\"Overlay\"), t = b(\"Parent\"), u = b(\"Style\"), v = b(\"Vector\"), w = b(\"$\"), x = b(\"copyProperties\"), y = b(\"getOverlayZIndex\"), z = b(\"shield\");\n function aa(ba, ca) {\n this.parent.construct(this, ba, ca);\n };\n k.extend(aa, s);\n x(aa, h, {\n ARROW_OFFSET: 15,\n ARROW_LENGTH: 16,\n ARROW_INSET: 22,\n TOP_MARGIN: 50,\n BOTTOM_MARGIN: 30,\n LEFT_MARGIN: 15,\n RIGHT_MARGIN: 30,\n MIN_TOP_GAP: 5,\n POSITION_TO_CLASS: {\n above: \"uiContextualDialogAbove\",\n below: \"uiContextualDialogBelow\",\n left: \"uiContextualDialogLeft\",\n right: \"uiContextualDialogRight\"\n },\n RIGHT_ALIGNED_CLASS: \"uiContextualDialogRightAligned\",\n ARROW_CLASS: {\n bottom: \"uiContextualDialogArrowBottom\",\n top: \"uiContextualDialogArrowTop\",\n right: \"uiContextualDialogArrowRight\",\n left: \"uiContextualDialogArrowLeft\"\n },\n POSITION_TO_ARROW: {\n above: \"bottom\",\n below: \"top\",\n left: \"right\",\n right: \"left\"\n },\n getInstance: function(ba) {\n var ca = o.get(ba, \"LegacyContextualDialog\");\n if (!ca) {\n var da = t.byClass(ba, \"uiOverlay\");\n if (da) {\n ca = o.get(da, \"overlay\");\n };\n }\n ;\n return ca;\n }\n });\n x(aa.prototype, {\n _scrollListener: null,\n _scrollParent: null,\n _width: null,\n _fixed: false,\n _hasFooter: false,\n _showSubscription: null,\n _hideSubscription: null,\n _setContextSubscription: null,\n _resizeListener: null,\n _reflowSubscription: null,\n _configure: function(ba, ca) {\n this.parent._configure(ba, ca);\n var da = this.getRoot(), ea = o.get.curry(da);\n this.setAlignH(ea(\"alignh\", \"left\"));\n this.setOffsetX(ea(\"offsetx\", 0));\n this.setOffsetY(ea(\"offsety\", 0));\n this.setPosition(ea(\"position\", \"above\"));\n this._hasFooter = ea(\"hasfooter\", false);\n if (this._hasFooter) {\n var fa = p.scry(da, \".uiContextualDialogFooterLink\")[0];\n (fa && this.enableBehavior(l));\n }\n ;\n this._setContextSubscription = this.subscribe(\"beforeshow\", function() {\n this.unsubscribe(this._setContextSubscription);\n this._setContextSubscription = null;\n var ha = ea(\"context\");\n if (ha) {\n this.setContext(w(ha));\n }\n else {\n ha = ea(\"contextselector\");\n if (ha) {\n this.setContext(p.find(document, ha));\n };\n }\n ;\n }.bind(this));\n this._content = p.scry(da, \".uiContextualDialogContent\")[0];\n if (this._content) {\n this._content.setAttribute(\"role\", \"dialog\");\n var ga = p.scry(this._content, \".legacyContextualDialogTitle\")[0];\n if (ga) {\n this._content.setAttribute(\"aria-labelledby\", p.getID(ga));\n };\n }\n ;\n this._showSubscription = this.subscribe(\"show\", function() {\n var ha = z(this.updatePosition, this);\n this._resizeListener = q.listen(window, \"resize\", ha);\n this._reflowSubscription = g.subscribe(\"reflow\", ha);\n this._setupScrollListener(this._scrollParent);\n m.register(da, this.context);\n g.inform(\"layer_shown\", {\n type: \"ContextualDialog\"\n });\n }.bind(this));\n this._hideSubscription = this.subscribe(\"hide\", function() {\n this._teardownResizeAndReflowListeners();\n this._teardownScrollListener();\n g.inform(\"layer_hidden\", {\n type: \"ContextualDialog\"\n });\n }.bind(this));\n return this;\n },\n _buildWrapper: function(ba, ca) {\n var da = this.parent._buildWrapper(ba, ca);\n if (!this._shouldBuildWrapper) {\n return da\n };\n n.addClass(da, \"uiContextualDialog\");\n return p.create(\"div\", {\n className: \"uiContextualDialogPositioner\"\n }, da);\n },\n setWidth: function(ba) {\n this._width = Math.floor(ba);\n return this;\n },\n setFixed: function(ba) {\n ba = !!ba;\n n.conditionClass(this.getRoot(), \"uiContextualDialogFixed\", ba);\n this._fixed = ba;\n return this;\n },\n setAlignH: function(ba) {\n this.alignH = ba;\n this._updateAlignmentClass();\n (this._shown && this.updatePosition());\n (this.position && this._updateArrow());\n return this;\n },\n getContent: function() {\n return this._content;\n },\n getContext: function() {\n return this.context;\n },\n setContext: function(ba) {\n if (this._setContextSubscription) {\n this.unsubscribe(this._setContextSubscription);\n this._setContextSubscription = null;\n }\n ;\n ba = w(ba);\n if ((this.context && (this.context != ba))) {\n o.remove(this.context, \"LegacyContextualDialog\");\n };\n this.context = ba;\n i.setPopup(this.getCausalElement(), this.getRoot());\n var ca = t.byClass(ba, \"fbPhotoSnowlift\");\n this.setInsertParent((ca || document.body));\n if ((this._scrollListener && (this._scrollParent !== ca))) {\n this._teardownScrollListener();\n this._setupScrollListener(ca);\n }\n ;\n this._scrollParent = ca;\n var da = y(ba, this._insertParent);\n u.set(this.getRoot(), \"z-index\", ((da > 200) ? da : \"\"));\n o.set(this.context, \"LegacyContextualDialog\", this);\n return this;\n },\n getCausalElement: function() {\n return (this.parent.getCausalElement() || this.context);\n },\n listen: function(ba, ca) {\n return q.listen(this.getRoot(), ba, ca);\n },\n setOffsetX: function(ba) {\n this.offsetX = (parseInt(ba, 10) || 0);\n (this._shown && this.updatePosition());\n return this;\n },\n setOffsetY: function(ba) {\n this.offsetY = (parseInt(ba, 10) || 0);\n (this._shown && this.updatePosition());\n return this;\n },\n setPosition: function(ba) {\n this.position = ba;\n for (var ca in aa.POSITION_TO_CLASS) {\n n.conditionClass(this.getRoot(), aa.POSITION_TO_CLASS[ca], (ba == ca));;\n };\n this._updateAlignmentClass();\n (this._shown && this.updatePosition());\n this._updateArrow();\n return this;\n },\n updatePosition: function() {\n if (!this.context) {\n return false\n };\n if (this._width) {\n u.set(this._overlay, \"width\", (this._width + \"px\"));\n };\n var ba = (this._fixed ? \"viewport\" : \"document\"), ca = v.getElementPosition(this.context, ba), da = this._scrollParent;\n if (da) {\n ca = ca.sub(v.getElementPosition(da, \"document\")).add(da.scrollLeft, da.scrollTop);\n };\n var ea = v.getElementDimensions(this.context), fa = ((this.position == \"above\") || (this.position == \"below\")), ga = r.isRTL();\n if (((((this.position == \"right\") || ((fa && (this.alignH == \"right\"))))) != ga)) {\n ca = ca.add(ea.x, 0);\n };\n if ((this.position == \"below\")) {\n ca = ca.add(0, ea.y);\n };\n var ha = new v(0, 0);\n if ((fa && (this.alignH == \"center\"))) {\n ha = ha.add((((ea.x - this._width)) / 2), 0);\n }\n else {\n var ia = (fa ? ea.x : ea.y), ja = (2 * aa.ARROW_INSET);\n if ((ia < ja)) {\n var ka = ((ia / 2) - aa.ARROW_INSET);\n if ((fa && (((this.alignH == \"right\") != ga)))) {\n ka = -ka;\n };\n ha = ha.add((fa ? ka : 0), (fa ? 0 : ka));\n }\n ;\n }\n ;\n ha = ha.add(this.offsetX, this.offsetY);\n if (ga) {\n ha = ha.mul(-1, 1);\n };\n ca = ca.add(ha);\n if (this._fixed) {\n ca = new v(ca.x, ca.y, \"document\");\n };\n ca.setElementPosition(this.getRoot());\n this._adjustVerticalPosition();\n this._adjustHorizontalPosition();\n return true;\n },\n scrollTo: function() {\n if (this.context) {\n j.loadModules([\"DOMScroll\",], function(ba) {\n ba.scrollTo(this.context, true, true);\n }.bind(this));\n };\n },\n destroy: function() {\n this.unsubscribe(this._showSubscription);\n this.unsubscribe(this._hideSubscription);\n if (this._setContextSubscription) {\n this.unsubscribe(this._setContextSubscription);\n this._setContextSubscription = null;\n }\n ;\n this._teardownScrollListener();\n this._teardownResizeAndReflowListeners();\n (this.context && o.remove(this.context, \"LegacyContextualDialog\"));\n this.parent.destroy();\n },\n _adjustVerticalPosition: function() {\n if (((this.position != \"left\") && (this.position != \"right\"))) {\n u.set(this._overlay, \"top\", \"\");\n return;\n }\n ;\n var ba = this.getRoot(), ca = v.getElementPosition(ba, \"viewport\").y, da = v.getElementDimensions(this._overlay).y, ea = v.getViewportDimensions().y, fa = Math.min(Math.max(ca, aa.MIN_TOP_GAP), aa.TOP_MARGIN), ga = Math.min(Math.max(0, (((ca + da) + aa.BOTTOM_MARGIN) - ea)), Math.max(-fa, (ca - fa)), (da - (2 * aa.ARROW_INSET)));\n u.set(this._overlay, \"top\", (((-1 * ga)) + \"px\"));\n u.set(this._arrow, \"top\", (aa.ARROW_OFFSET + \"px\"));\n u.set(this._arrow, \"marginTop\", (ga + \"px\"));\n },\n _adjustHorizontalPosition: function() {\n if (((((this.position != \"above\") && (this.position != \"below\"))) || (this.alignH != \"left\"))) {\n u.set(this._overlay, \"left\", \"\");\n u.set(this._overlay, \"right\", \"\");\n return;\n }\n ;\n var ba = this.getRoot(), ca = v.getElementPosition(ba, \"viewport\").x, da = v.getElementDimensions(this._overlay).x, ea = v.getViewportDimensions().x, fa = r.isRTL(), ga;\n if (!fa) {\n ga = (((ca + da) + aa.RIGHT_MARGIN) - ea);\n }\n else ga = ((aa.LEFT_MARGIN + da) - ca);\n ;\n ga = Math.min(Math.max(0, ga), (da - (2 * aa.ARROW_INSET)));\n u.set(this._overlay, (fa ? \"right\" : \"left\"), ((-1 * ga) + \"px\"));\n u.set(this._arrow, (fa ? \"right\" : \"left\"), (aa.ARROW_OFFSET + \"px\"));\n u.set(this._arrow, (fa ? \"marginRight\" : \"marginLeft\"), (ga + \"px\"));\n },\n _updateArrow: function() {\n var ba = 0;\n if (((this.position == \"above\") || (this.position == \"below\"))) {\n switch (this.alignH) {\n case \"center\":\n ba = 50;\n break;\n case \"right\":\n ba = 100;\n break;\n }\n };\n this._renderArrow(aa.POSITION_TO_ARROW[this.position], ba);\n },\n _renderArrow: function(ba, ca) {\n for (var da in aa.ARROW_CLASS) {\n n.conditionClass(this._overlay, aa.ARROW_CLASS[da], (ba == da));;\n };\n n.conditionClass(this._overlay, \"uiContextualDialogWithFooterArrowBottom\", ((ba == \"bottom\") && this._hasFooter));\n if ((ba == \"none\")) {\n return\n };\n if (!this._arrow) {\n this._arrow = p.create(\"i\", {\n className: \"uiContextualDialogArrow\"\n });\n p.appendContent(this._overlay, this._arrow);\n }\n ;\n u.set(this._arrow, \"top\", \"\");\n u.set(this._arrow, \"left\", \"\");\n u.set(this._arrow, \"right\", \"\");\n u.set(this._arrow, \"margin\", \"\");\n var ea = ((ba == \"top\") || (ba == \"bottom\")), fa = (ea ? ((r.isRTL() ? \"right\" : \"left\")) : \"top\");\n ca = (ca || 0);\n u.set(this._arrow, fa, (ca + \"%\"));\n var ga = (aa.ARROW_LENGTH + (aa.ARROW_OFFSET * 2)), ha = -((((ga * ca) / 100) - aa.ARROW_OFFSET));\n u.set(this._arrow, (\"margin-\" + fa), (ha + \"px\"));\n },\n _updateAlignmentClass: function() {\n n.conditionClass(this.getRoot(), aa.RIGHT_ALIGNED_CLASS, ((((this.position == \"above\") || (this.position == \"below\"))) && (this.alignH == \"right\")));\n },\n _setupScrollListener: function(ba) {\n this._scrollListener = q.listen((ba || window), \"scroll\", z(this._adjustVerticalPosition, this));\n },\n _teardownScrollListener: function() {\n if (this._scrollListener) {\n this._scrollListener.remove();\n this._scrollListener = null;\n }\n ;\n },\n _teardownResizeAndReflowListeners: function() {\n if (this._resizeListener) {\n this._resizeListener.remove();\n this._resizeListener = null;\n }\n ;\n if (this._reflowSubscription) {\n this._reflowSubscription.unsubscribe();\n this._reflowSubscription = null;\n }\n ;\n }\n });\n e.exports = aa;\n});"); |
| // 15488 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s61ecca1a9a9fed1ca3dda5a5bf60e4b4dbc498fc"); |
| // 15489 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"bmJBG\",]);\n}\n;\n;\n__d(\"ChannelSubdomain\", [\"Cookie\",\"JSLogger\",], function(a, b, c, d, e, f) {\n var g = b(\"Cookie\"), h = b(\"JSLogger\"), i = h.create(\"channel\"), j = 7, k = null;\n function l(o, p) {\n var q = null, r = m(), s;\n o--;\n var t = Math.min(32, ((j * o)));\n t = Math.max(t, 1);\n var u = false;\n for (var v = 0; ((v < 32)); v++) {\n s = ((((v + p)) % t));\n if (!((r & ((1 << s))))) {\n u = true;\n break;\n }\n ;\n ;\n };\n ;\n if (u) {\n k = s;\n q = ((k % j));\n g.set(\"sub\", ((r | ((1 << k)))));\n }\n else {\n k = -1;\n q = null;\n i.error(\"subdomain_overflow\", {\n slot: k,\n max: o\n });\n }\n ;\n ;\n return q;\n };\n;\n function m() {\n var o = ((g.get(\"sub\") || 0));\n o = parseInt(o, 10);\n return ((isNaN(o) ? 0 : o));\n };\n;\n function n() {\n if (((((k !== null)) && ((k >= 0))))) {\n var o = ((m() & ~((1 << k))));\n if (o) {\n g.set(\"sub\", o);\n }\n else g.clear(\"sub\");\n ;\n ;\n }\n ;\n ;\n };\n;\n e.exports = {\n allocate: l,\n clear: n\n };\n});\n__d(\"DocRPC\", [\"ErrorUtils\",], function(a, b, c, d, e, f) {\n var g = b(\"ErrorUtils\"), h = {\n _apis: {\n },\n _dispatch: function(i) {\n var j;\n try {\n i = JSON.parse(i);\n } catch (k) {\n throw new Error(((((\"DocRPC unparsable dispatch: \\\"\" + i)) + \"\\\"\")));\n };\n ;\n if (h._apis.hasOwnProperty(i.api)) {\n var l = h._apis[i.api];\n if (l[i.method]) {\n j = g.applyWithGuard(l[i.method], l, i.args);\n }\n ;\n ;\n }\n ;\n ;\n if (((j === undefined))) {\n j = null;\n }\n ;\n ;\n return JSON.stringify(j);\n },\n publish: function(i, j) {\n h._apis[j] = i;\n },\n proxy: function(i, j, k) {\n var l = {\n };\n k.forEach(function(m) {\n l[m] = function() {\n var n = {\n api: j,\n method: m,\n args: Array.prototype.slice.call(arguments)\n }, o;\n try {\n if (i.JSBNG__closed) {\n throw new Error(\"DocRPC window closed\");\n }\n ;\n ;\n o = i.DocRPC._dispatch(JSON.stringify(n));\n } catch (p) {\n g.reportError(p);\n return;\n };\n ;\n if (((typeof (o) == \"string\"))) {\n try {\n o = JSON.parse(o);\n } catch (p) {\n throw new Error(((((((((((((\"DocRPC \" + j)) + \".\")) + m)) + \" unparsable return: \\\"\")) + o)) + \"\\\"\")));\n };\n }\n ;\n ;\n return o;\n };\n });\n return l;\n }\n };\n e.exports = a.DocRPC = h;\n});\n__d(\"ChannelTransport\", [\"copyProperties\",\"bind\",\"AjaxRequest\",\"URI\",\"JSLogger\",\"DocRPC\",\"ChannelConstants\",\"UserAgent\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"bind\"), i = b(\"AjaxRequest\"), j = b(\"URI\"), k = b(\"JSLogger\"), l = b(\"DocRPC\"), m = b(\"ChannelConstants\"), n = b(\"UserAgent\"), o = k.create(\"channel\");\n function p() {\n return ((((1048576 * Math.JSBNG__random())) | 0)).toString(36);\n };\n;\n function q(y, z) {\n var aa = y.subdomain;\n aa = ((((aa === null)) ? \"\" : ((aa + \"-\"))));\n var ba = new j(z).setDomain(((((aa + y.host)) + \".facebook.com\"))).setPort(y.port).setSecure(j().isSecure());\n return ba;\n };\n;\n function r(y) {\n var z = {\n partition: y.partition,\n cb: p()\n }, aa = q(y, \"/p\").setQueryData(z);\n o.log(\"start_p\", {\n uri: aa.toString()\n });\n var ba = new i(\"GET\", aa);\n if (i.supportsCORS()) {\n ba.xhr.withCredentials = true;\n }\n ;\n ;\n var ca = function(da) {\n o.log(\"finish_p\", {\n xhr: ((da.toJSON ? da.toJSON() : da))\n });\n };\n ba.timeout = y.P_TIMEOUT;\n ba.onError = ba.onSuccess = ca;\n ba.send();\n };\n;\n function s(y, z, aa) {\n var ba = new JSBNG__Image(), ca = 0, da = function(ga) {\n ba.abort();\n return ((ga ? z() : aa()));\n };\n ba.JSBNG__onload = function() {\n o.log(\"ping_ok\", {\n duration: ((JSBNG__Date.now() - ca))\n });\n da(true);\n };\n ba.JSBNG__onerror = function() {\n r(y);\n da(false);\n };\n var ea = JSBNG__setTimeout(ba.JSBNG__onerror, 10000, false);\n ba.abort = function() {\n if (ea) {\n JSBNG__clearTimeout(ea);\n ea = null;\n }\n ;\n ;\n ba.JSBNG__onload = ba.JSBNG__onerror = null;\n };\n var fa = {\n partition: y.partition,\n cb: p()\n };\n ca = JSBNG__Date.now();\n ba.src = q(y, \"/ping\").setQueryData(fa);\n return ba;\n };\n;\n function t(y, z, aa, ba) {\n var ca = new JSBNG__Date(), da = ((((((ca - y.userActive)) / 1000)) | 0));\n if (((da < 0))) {\n o.warn(\"idle_regression\", {\n idleTime: da,\n now: ca.getTime(),\n userActive: y.userActive\n });\n }\n ;\n ;\n var ea = {\n channel: y.user_channel,\n seq: y.seq,\n partition: y.partition,\n clientid: y.sessionID,\n cb: p(),\n idle: da,\n cap: 0\n };\n if (((da < 60))) {\n ea.state = \"active\";\n }\n ;\n ;\n if (y.streamingCapable) {\n ea.mode = \"stream\";\n ea.format = \"json\";\n }\n ;\n ;\n if (y.profile) {\n ea.profile = y.profile;\n }\n ;\n ;\n if (((y.webrtcSupport && ((((n.chrome() >= 24)) || ((n.firefox() >= 22))))))) {\n ea.cap = m.CAPABILITY_VOIP;\n }\n ;\n ;\n var fa = q(y, \"/pull\").setQueryData(ea), ga = new i(\"GET\", fa);\n if (i.supportsCORS()) {\n ga.xhr.withCredentials = true;\n }\n ;\n ;\n ga.timeout = ((y.streamingCapable ? y.STREAMING_TIMEOUT : y.LONGPOLL_TIMEOUT));\n ga.onJSON = z;\n ga.onSuccess = aa;\n ga.onError = function() {\n var ha = ((((((this.JSBNG__status == 12002)) && ((this._time >= y.MIN_12002_TIMEOUT)))) || ((((this.JSBNG__status == 504)) && ((this._time >= y.MIN_504_TIMEOUT)))))), ia = ((ha ? aa : ba));\n return ((ia && ia.apply(this, arguments)));\n };\n ga.send();\n y.inStreaming = y.streamingCapable;\n return ga;\n };\n;\n function u(y) {\n this.manager = y;\n ((this.init && this.init()));\n };\n;\n function v(y) {\n u.apply(this, arguments);\n };\n;\n g(v.prototype, {\n logName: \"CORS\",\n enterState: function(y, z) {\n if (this._request) {\n this._request.abort();\n this._request = null;\n }\n ;\n ;\n if (((y == \"init\"))) {\n JSBNG__setTimeout(h(this.manager, \"exitState\", {\n JSBNG__status: m.OK,\n stateId: z.stateId\n }), 3000, false);\n }\n ;\n ;\n if (!/pull|ping/.test(y)) {\n return;\n }\n ;\n ;\n var aa = this.manager;\n if (((y == \"ping\"))) {\n this._request = s(z, h(aa, \"exitState\", {\n JSBNG__status: m.OK,\n stateId: z.stateId\n }), h(aa, \"exitState\", {\n JSBNG__status: m.ERROR,\n stateId: z.stateId\n }));\n }\n else if (((y == \"pull\"))) {\n this._request = t(z, h(aa, \"_processTransportData\", z.stateId), h(aa, \"exitState\", {\n JSBNG__status: m.OK,\n stateId: z.stateId\n }), h(aa, \"exitState\", {\n JSBNG__status: m.ERROR,\n stateId: z.stateId\n }));\n }\n \n ;\n ;\n }\n });\n function w(y) {\n o.log(\"iframe_init_constructor\");\n u.apply(this, arguments);\n this._iframe = JSBNG__document.createElement(\"div\");\n this._iframe.style.display = \"none\";\n JSBNG__document.body.appendChild(this._iframe);\n l.publish(this, \"outerTransport\");\n };\n;\n g(w.prototype, {\n logName: \"div\",\n _initIframe: function(y) {\n o.log(\"iframe_init_start\");\n window.onchanneliframeready = function() {\n o.log(\"iframe_resources\");\n return y.resources;\n };\n window.onchanneliframeloaded = function() {\n o.log(\"iframe_loaded\");\n };\n if (y) {\n this._iframeURI = q(y, y.path);\n if (y.bustIframe) {\n var z = {\n partition: y.partition,\n cb: p()\n };\n this._iframeURI.setQueryData(z);\n }\n ;\n ;\n }\n else this._iframeURI = \"about:blank\";\n ;\n ;\n this._iframeProxy = null;\n try {\n this._iframe.contentWindow.JSBNG__location.replace(this._iframeURI);\n o.log(\"iframe_uri_set\");\n } catch (aa) {\n o.error(\"iframe_uri_set_error\", aa);\n this.exitState({\n JSBNG__status: m.ERROR,\n stateId: y.stateId\n }, ((aa + \"\")));\n };\n ;\n },\n enterState: function(y, z) {\n if (((y == \"init\"))) {\n this._initIframe(z);\n }\n else if (/idle|ping|pull/.test(y)) {\n if (this._iframeProxy) {\n this._iframeProxy.enterState.apply(this._iframeProxy, arguments);\n }\n else if (((y != \"idle\"))) {\n this.exitState({\n JSBNG__status: m.ERROR,\n stateId: z.stateId\n }, \"iframe not yet loaded\");\n }\n \n ;\n ;\n }\n else if (((y == \"shutdown\"))) {\n this._initIframe();\n }\n \n \n ;\n ;\n },\n _processTransportData: function() {\n this.manager._processTransportData.apply(this.manager, arguments);\n },\n exitState: function(y) {\n if (((((this.manager.state == \"init\")) && ((y.JSBNG__status == m.OK))))) {\n this._iframeProxy = l.proxy(this._iframe.contentWindow, \"innerTransport\", [\"enterState\",], ((this._iframeURI + \"\")).replace(/iframe.*/, \"\"));\n }\n ;\n ;\n if (((/ping|pull/.test(this.manager.state) && !this._iframeProxy))) {\n return;\n }\n ;\n ;\n this.manager.exitState.apply(this.manager, arguments);\n }\n });\n function x() {\n this.init = this.init.bind(this);\n u.apply(this, arguments);\n };\n;\n g(x.prototype, {\n logName: \"iframe(inner)\",\n init: function() {\n l.publish(this, \"innerTransport\");\n try {\n var z = l.proxy(window.parent, \"outerTransport\", [\"_processTransportData\",\"exitState\",], JSBNG__top.DocRPC.origin);\n g(this, z);\n this.exitState({\n JSBNG__status: m.OK,\n stateId: 1000000\n });\n } catch (y) {\n o.error(\"iframe_inner_init_error\", y);\n };\n ;\n },\n enterState: function(y, z) {\n if (this._request) {\n this._request.abort();\n this._request = null;\n }\n ;\n ;\n if (((y == \"ping\"))) {\n this._request = s(z, h(this, \"exitState\", {\n JSBNG__status: m.OK,\n stateId: z.stateId\n }), h(this, \"exitState\", {\n JSBNG__status: m.ERROR,\n stateId: z.stateId\n }));\n }\n else if (((y == \"pull\"))) {\n this._request = t(z, h(this, \"_processTransportData\", z.stateId), h(this, \"exitState\", {\n JSBNG__status: m.OK,\n stateId: z.stateId\n }), h(this, \"exitState\", {\n JSBNG__status: m.ERROR,\n stateId: z.stateId\n }));\n }\n \n ;\n ;\n }\n });\n e.exports = {\n getURI: q,\n Transport: u,\n CORSTransport: v,\n IframeTransport: w,\n IframeInnerTransport: x\n };\n});\n__d(\"MovingStat\", [], function(a, b, c, d, e, f) {\n function g(h) {\n h = ((h || 60000));\n var i = {\n t: new JSBNG__Date(),\n count: 0,\n v: 0\n }, j = i, k = 0, l = 0;\n function m() {\n var n = ((new JSBNG__Date() - h));\n while (((((j && j.next)) && ((j.t < n))))) {\n k -= j.v;\n l -= j.count;\n j = j.next;\n };\n ;\n };\n ;\n this.add = function(n) {\n k += n;\n l++;\n var o = new JSBNG__Date();\n if (((((o - i.t)) < 1000))) {\n i.v += n;\n i.count++;\n }\n else {\n i.next = {\n t: o,\n v: n,\n count: 1\n };\n i = i.next;\n m();\n }\n ;\n ;\n };\n this.tally = function(n) {\n n = ((n || 1000));\n m();\n return {\n sum: k,\n count: l,\n timeAverage: ((((k * n)) / h))\n };\n };\n };\n;\n e.exports = g;\n});\n__d(\"ChannelManager\", [\"JSBNG__Event\",\"function-extensions\",\"AjaxRequest\",\"Arbiter\",\"AsyncRequest\",\"ChannelConstants\",\"ChannelInitialData\",\"ChannelSubdomain\",\"ChannelTransport\",\"Env\",\"FBAjaxRequest\",\"JSLogger\",\"MovingStat\",\"PresenceCookieManager\",\"PresenceState\",\"PresenceUtil\",\"Run\",\"SystemEvents\",\"URI\",\"UserActivity\",\"copyProperties\",\"createArrayFrom\",\"ChatVisibility\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\");\n b(\"function-extensions\");\n var h = b(\"AjaxRequest\"), i = b(\"Arbiter\"), j = b(\"AsyncRequest\"), k = b(\"ChannelConstants\"), l = b(\"ChannelInitialData\"), m = b(\"ChannelSubdomain\"), n = b(\"ChannelTransport\"), o = b(\"Env\"), p = b(\"FBAjaxRequest\"), q = b(\"JSLogger\"), r = b(\"MovingStat\"), s = b(\"PresenceCookieManager\"), t = b(\"PresenceState\"), u = b(\"PresenceUtil\"), v = b(\"Run\"), w = b(\"SystemEvents\"), x = b(\"URI\"), y = b(\"UserActivity\"), z = b(\"copyProperties\"), aa = b(\"createArrayFrom\"), ba = b(\"ChatVisibility\"), ca, da = q.create(\"channel\"), ea = null;\n function fa(qa) {\n ea = qa;\n };\n;\n var ga = {\n idle: {\n ok: \"init!\"\n },\n init: {\n ok: \"pull!\",\n error: \"reconnect\",\n sys_online: \"init\",\n sys_timetravel: \"init\"\n },\n pull: {\n ok: \"pull!\",\n error: \"ping\",\n error_missing: \"pull\",\n error_msg_type: \"pull\",\n refresh_0: \"reconnect\",\n refresh_110: \"reconnect\",\n refresh_111: \"reconnect\",\n refresh_112: \"pull\",\n refresh_113: \"pull\",\n refresh_117: \"reconnect\"\n },\n ping: {\n ok: \"pull!\",\n error: \"ping\",\n error_stale: \"reconnect!\"\n },\n reconnect: {\n ok: \"init!\",\n error: \"reconnect\",\n sys_online: \"reconnect\",\n sys_timetravel: \"reconnect\"\n },\n shutdown: {\n },\n _all: {\n error_max: \"shutdown!\",\n error_shutdown: \"shutdown!\",\n sys_owner: \"reconnect\",\n sys_nonowner: \"idle!\",\n sys_online: \"ping\",\n sys_offline: \"idle!\",\n sys_timetravel: \"ping\"\n }\n }, ha = {\n userActive: ((ba.isOnline() ? JSBNG__Date.now() : 0)),\n sessionID: ((((Math.JSBNG__random() * 2147483648)) | 0)).toString(16),\n streamingCapable: false,\n inStreaming: false,\n LONGPOLL_TIMEOUT: 60000,\n STREAMING_TIMEOUT: 60000,\n P_TIMEOUT: 30000,\n IFRAME_LOAD_TIMEOUT: 30000,\n MIN_RETRY_INTERVAL: 5000,\n MAX_RETRY_INTERVAL: 30000,\n MIN_12002_TIMEOUT: 9000,\n MIN_504_TIMEOUT: 20000,\n STALL_THRESHOLD: 180000,\n JUMPSTART_THRESHOLD: 90000,\n MIN_INIT_PROBE_DELAY: 3000,\n INIT_PROBE_DELAY_RANDOMIZE_RANGE: 12000,\n PROBE_DELAY: 60000,\n PROBE_HEARTBEATS_INTERVAL_LOW: 1000,\n PROBE_HEARTBEATS_INTERVAL_HIGH: 3000,\n STREAMING_EXIT_STATE_ON_CONTINUE: false\n }, ia = 1, ja = {\n }, ka = 0;\n function la() {\n return ((j.lastSuccessTime ? Math.round(((((JSBNG__Date.now() - j.lastSuccessTime)) / 1000))) : -1));\n };\n;\n function ma() {\n var qa = {\n };\n if (ca.getConfig(\"host\")) {\n qa[ca.getConfig(\"user_channel\")] = ca.getConfig(\"seq\", 0);\n }\n ;\n ;\n return qa;\n };\n;\n function na() {\n var qa = JSBNG__Date.now(), ra = JSBNG__Date.now(), sa = {\n total: 0\n }, ta = \"idle\", ua = false;\n w.subscribe([w.USER,w.ONLINE,w.TIME_TRAVEL,], function(xa, ya) {\n pa(true);\n ra = null;\n ca.lastPullTime = JSBNG__Date.now();\n var za;\n switch (xa) {\n case w.USER:\n za = ((w.isPageOwner() ? k.SYS_OWNER : k.SYS_NONOWNER));\n break;\n case w.ONLINE:\n za = ((ya ? k.SYS_ONLINE : k.SYS_OFFLINE));\n break;\n case w.TIME_TRAVEL:\n za = k.SYS_TIMETRAVEL;\n break;\n };\n ;\n ca.exitState({\n JSBNG__status: za,\n stateId: ia\n });\n });\n var va = function(xa, ya) {\n var za = JSBNG__Date.now(), ab;\n if (ya) {\n qa = za;\n ab = ((ya.nextState || ya.state));\n }\n else ab = ta;\n ;\n ;\n w.checkTimeTravel();\n if (ra) {\n var bb = Math.round(((((za - ra)) / 1000)));\n if (((bb > 0))) {\n sa[ta] = ((((sa[ta] || 0)) + bb));\n sa.total += bb;\n }\n ;\n ;\n }\n ;\n ;\n ta = ab;\n ra = za;\n if (!xa) {\n sa.lastSuccessTime = la();\n sa.online = w.isOnline();\n da.log(\"rollup\", sa);\n }\n ;\n ;\n };\n i.subscribe(k.ON_ENTER_STATE, va);\n JSBNG__setInterval(va, 60000, false);\n i.subscribe(q.DUMP_EVENT, function(xa, ya) {\n ya.channelRollup = sa;\n });\n var wa = function() {\n if (((ca.isShutdown() || ca.shouldIdle()))) {\n return;\n }\n ;\n ;\n w.checkTimeTravel();\n var xa = ((JSBNG__Date.now() - ((ca.lastPullTime || o.start))));\n if (((!ua && ((xa > ha.STALL_THRESHOLD))))) {\n var ya = la();\n da.error(\"stall\", {\n lastSuccessTime: ya,\n rollupState: ta\n });\n ua = true;\n }\n ;\n ;\n var za = ((JSBNG__Date.now() - qa));\n if (((((ca.state == \"pull\")) && ((za > ha.JUMPSTART_THRESHOLD))))) {\n qa = null;\n da.warn(\"jumpstart\", {\n state: ca.state,\n dormant: za\n });\n ca.enterState(\"init\");\n }\n ;\n ;\n };\n JSBNG__setInterval(wa, 10000, false);\n };\n;\n function oa() {\n var qa = JSBNG__Date.now(), ra = 1;\n function sa() {\n JSBNG__setTimeout(sa, ((ra * 1000)), false);\n var xa = ca.state;\n if (((((xa == \"idle\")) && ca.shouldIdle()))) {\n return;\n }\n ;\n ;\n da.bump(\"conn_t\", ra);\n if (((xa == \"pull\"))) {\n da.bump(\"conn_t_pull\", ra);\n }\n ;\n ;\n };\n ;\n sa();\n var ta = [15,30,60,120,240,], ua = false, va = false;\n function wa(xa) {\n JSBNG__setTimeout(function() {\n da.rate(((\"pullenter_\" + xa)), ua);\n da.rate(((\"pullexit_\" + xa)), va);\n }, ((xa * 1000)), false);\n };\n ;\n while (ta.length) {\n wa(ta.shift());\n ;\n };\n ;\n i.subscribe(k.ON_ENTER_STATE, function(xa, ya) {\n if (((ya.state == \"pull\"))) {\n ua = true;\n }\n ;\n ;\n qa = JSBNG__Date.now();\n });\n i.subscribe(k.ON_EXIT_STATE, function(xa, ya) {\n if (((((ya.state != \"pull\")) || !qa))) {\n return;\n }\n ;\n ;\n var za = \"other\";\n if (((ya.JSBNG__status == k.OK))) {\n va = true;\n za = \"ok\";\n }\n else if (((ya.xhr && ya.xhr.errorType))) {\n za = ((/ar:(\\w+)/.test(ya.xhr.errorType) && RegExp.$1));\n }\n else if (/^sys_/.test(ya.JSBNG__status)) {\n return;\n }\n \n \n ;\n ;\n var ab = ((((JSBNG__Date.now() - qa)) / 1000));\n if (((ab < 0))) {\n return;\n }\n else if (((ab > 3600))) {\n ab = 3600;\n }\n \n ;\n ;\n da.bump(\"conn_num\");\n da.bump(\"conn_exit\", ab);\n da.bump(((\"conn_num_\" + za)));\n da.bump(((\"conn_exit_\" + za)), ab);\n });\n };\n;\n function pa(qa) {\n if (qa) {\n ka = 0;\n ja = {\n };\n }\n else ka++;\n ;\n ;\n };\n;\n ca = {\n state: \"idle\",\n nextState: null,\n lastPullTime: JSBNG__Date.now(),\n heartbeats: [],\n setTestCallback: fa,\n init: function(qa) {\n this.init = function() {\n \n };\n if (((typeof (y) != \"undefined\"))) {\n y.subscribe(function() {\n if (ba.isOnline()) {\n ha.userActive = JSBNG__Date.now();\n }\n ;\n ;\n }.bind(this));\n }\n else da.error(\"user_activity_undefined\");\n ;\n ;\n s.register(\"ch\", ma);\n var ra = this.getConfig(\"max_conn\", 2), sa = Math.floor(((Math.JSBNG__random() * 32)));\n ha.subdomain = m.allocate(ra, sa);\n if (((typeof window.JSBNG__onpageshow != \"undefined\"))) {\n g.listen(window, \"pagehide\", m.clear);\n }\n else v.onUnload(m.clear);\n ;\n ;\n this._transportRate = new r(30000);\n var ta = ((((h.supportsCORS() && !ha.forceIframe)) ? \"CORSTransport\" : \"IframeTransport\"));\n this.transport = new n[ta](this);\n if (qa) {\n this.enterState.apply(this, arguments);\n }\n ;\n ;\n i.subscribe(q.DUMP_EVENT, function(JSBNG__event, va) {\n va.transportRate = this._transportRate.tally();\n va.transportType = ta;\n va.transportVersion = 2;\n }.bind(this));\n na();\n oa();\n if (((((((ca.getConfig(\"tryStreaming\") && ca.getConfig(\"host\"))) && h.supportsCORS())) && !ha.forceIframe))) {\n var ua = ((ha.MIN_INIT_PROBE_DELAY + ((Math.JSBNG__random() * ha.INIT_PROBE_DELAY_RANDOMIZE_RANGE))));\n JSBNG__setTimeout(this._probeTest, ua, false);\n }\n ;\n ;\n },\n configure: function() {\n var qa = aa(arguments);\n da.log(\"configure\", qa);\n qa.forEach(z.bind(null, ha));\n i.inform(k.ON_CONFIG, this);\n },\n getConfig: function(qa, ra) {\n return ((((qa in ha)) ? ha[qa] : ra));\n },\n isShutdown: function() {\n return ((this.state == \"shutdown\"));\n },\n shouldIdle: function() {\n return !((w.isPageOwner() && w.isOnline()));\n },\n _sendIframeError: function(qa) {\n var ra = new j().setURI(\"/ajax/presence/reconnect.php\").setData({\n reason: qa,\n fb_dtsg: o.fb_dtsg\n }).setOption(\"suppressErrorHandlerWarning\", true).setOption(\"retries\", 1).setMethod(\"GET\").setReadOnly(true).setAllowCrossPageTransition(true);\n ((ra.specifiesWriteRequiredParams() && ra.send()));\n },\n _getDelay: function() {\n var qa = Math.min(((ha.MIN_RETRY_INTERVAL * Math.pow(2, Math.max(0, ((ka - 1)))))), ha.MAX_RETRY_INTERVAL);\n return ((((qa * ((13517 + ((Math.JSBNG__random() / 2)))))) | 0));\n },\n enterState: function() {\n if (this._inEnterState) {\n da.warn(\"enterstate_recursion\");\n }\n ;\n ;\n this._inEnterState = true;\n try {\n this._enterState.apply(this, arguments);\n this._inEnterState = false;\n } catch (qa) {\n this._inEnterState = false;\n throw qa;\n };\n ;\n },\n _enterState: function(qa) {\n var ra = 0, sa = aa(arguments);\n if (this.isShutdown()) {\n return;\n }\n ;\n ;\n if (((((qa != \"idle!\")) && this.shouldIdle()))) {\n return;\n }\n ;\n ;\n ia++;\n ha.stateId = ia;\n JSBNG__clearTimeout(this._deferredTransition);\n this._deferredTransition = null;\n this.transport.enterState(\"idle\");\n this.state = \"idle\";\n this.nextState = null;\n if (/!$/.test(qa)) {\n var ta = this._transportRate.tally().timeAverage, ua = ca.getConfig(\"MAX_CHANNEL_STATES_PER_SEC\", 1);\n if (((ta >= ua))) {\n if (!this._throttled) {\n this._throttled = true;\n da.warn(\"throttled\");\n }\n ;\n ;\n da.bump(\"throttle\");\n ra = ((1000 / ua));\n }\n ;\n ;\n }\n else if (!(/#$/.test(qa))) {\n ra = this._getDelay();\n }\n \n ;\n ;\n qa = qa.replace(/\\W*$/, \"\");\n if (!ga[qa]) {\n throw new Error(((\"invalid state:\" + qa)));\n }\n ;\n ;\n var va;\n if (((ra <= 0))) {\n va = {\n state: qa\n };\n this._transportRate.add(1);\n this.state = qa;\n var wa = this[((\"_enter_\" + this.state))];\n if (wa) {\n sa.shift();\n wa.apply(this, sa);\n }\n ;\n ;\n if (/init|idle|pull|ping/.test(this.state)) {\n if (((ha.streamingCapable && /pull/.test(this.state)))) {\n this.heartbeats = [];\n }\n ;\n ;\n this.transport.enterState(this.state, ha);\n if (((this.state == \"ping\"))) {\n va.url = n.getURI(ha).toString();\n va.port = ((ha.port || \"undefined\"));\n }\n ;\n ;\n }\n ;\n ;\n }\n else {\n this.state = \"idle\";\n this.nextState = qa;\n va = {\n state: this.state,\n delay: ra,\n nextState: qa\n };\n sa[0] = ((qa + \"#\"));\n this._deferredTransition = (function() {\n this._deferredTransition = null;\n this.enterState.apply(this, sa);\n }).bind(this).defer(ra, false);\n }\n ;\n ;\n if (/pull/.test(qa)) {\n va.client_id = ha.sessionID;\n va.streaming = ha.inStreaming;\n }\n ;\n ;\n da.log(((\"enter_\" + this.state)), va);\n i.inform(k.ON_ENTER_STATE, va);\n },\n exitState: function(qa, ra) {\n var sa = qa.stateId, ta = qa.JSBNG__status;\n if (((this.isShutdown() || ((sa < ia))))) {\n return;\n }\n ;\n ;\n var ua = aa(arguments), va = this.state;\n ua[0] = qa.JSBNG__status;\n var wa = {\n state: va,\n JSBNG__status: ta\n };\n if (/pull/.test(va)) {\n wa.client_id = ha.sessionID;\n wa.streaming = ha.inStreaming;\n }\n ;\n ;\n if (((/ping/.test(va) && ((ta != k.OK))))) {\n wa.url = n.getURI(ha).toString();\n }\n ;\n ;\n if (this.nextState) {\n wa.nextState = this.nextState;\n }\n ;\n ;\n if (((ra && ra.errorType))) {\n wa.xhr = ((ra.toJSON ? ra.toJSON() : ra));\n delete wa.xhr.json;\n }\n ;\n ;\n if (((ra && ra.json))) {\n if (ra.json.t) {\n wa.t = ra.json.t;\n }\n ;\n ;\n if (ra.json.reason) {\n wa.reason = ra.json.reason;\n }\n ;\n ;\n if (ra.json.seq) {\n wa.seq = ra.json.seq;\n }\n ;\n ;\n }\n ;\n ;\n da.log(((\"exit_\" + va)), wa);\n i.inform(k.ON_EXIT_STATE, wa);\n var xa = this[((\"_exit_\" + va))];\n if (xa) {\n ta = ((xa.apply(this, ua) || ta));\n }\n ;\n ;\n if (((ta != k.OK))) {\n pa();\n ja[va] = ((((ja[va] || 0)) + 1));\n }\n ;\n ;\n var ya = ((ga[((this.nextState || va))][ta] || ga._all[ta])), za = ((ya && ya.replace(/!*$/, \"\")));\n if (!za) {\n da.error(\"terminal_transition\", wa);\n this._shutdownHint = k.HINT_INVALID_STATE;\n ya = \"shutdown!\";\n }\n ;\n ;\n this._lastState = va;\n this._lastStatus = ta;\n this.enterState(ya);\n },\n _processTransportData: function(qa, ra) {\n var sa = ra.json, ta = sa.t;\n if (((\"s\" in sa))) {\n sa.seq = sa.s;\n delete sa.s;\n }\n ;\n ;\n var ua = ha.seq;\n if (((\"seq\" in sa))) {\n ha.seq = sa.seq;\n t.doSync();\n }\n ;\n ;\n switch (ta) {\n case \"continue\":\n if (((ha.inStreaming && ((this.heartbeats.length < 1))))) {\n ha.streamingCapable = false;\n da.log(\"switch_to_longpoll\");\n JSBNG__setTimeout(this._probeTest, ha.PROBE_DELAY, false);\n }\n ;\n ;\n pa(true);\n if (((!ha.inStreaming || ha.STREAMING_EXIT_STATE_ON_CONTINUE))) {\n this.exitState({\n JSBNG__status: k.OK,\n stateId: qa\n });\n }\n ;\n ;\n break;\n case \"refresh\":\n \n case \"refreshDelay\":\n this.exitState({\n JSBNG__status: ((\"refresh_\" + ((sa.reason || 0)))),\n stateId: qa\n }, ra);\n break;\n case \"fullReload\":\n s.clear();\n da.log(\"invalid_history\");\n i.inform(k.ON_INVALID_HISTORY);\n this.exitState({\n JSBNG__status: k.ERROR_MISSING,\n stateId: qa\n }, ra);\n break;\n case \"msg\":\n var va, wa, xa, ya;\n pa(true);\n wa = sa.ms;\n xa = ((ha.seq - wa.length));\n for (va = 0; ((va < wa.length)); va++, xa++) {\n if (((xa >= ua))) {\n ya = wa[va];\n if (ya.type) {\n if (((((ya.type === \"messaging\")) && ya.message))) {\n var za = ((ya.unread_counts && ya.unread_counts.inbox));\n da.debug(\"message\", {\n type: \"messaging\",\n inbox_unread: za,\n tid: ya.message.tid,\n mid: ya.message.mid\n });\n }\n else if (((ya.type === \"m_messaging\"))) {\n da.debug(\"message\", {\n type: \"m_messaging\",\n tid: ya.tid,\n mid: ya.uuid\n });\n }\n else da.debug(\"message\", {\n type: ya.type\n });\n \n ;\n ;\n i.inform(k.getArbiterType(ya.type), {\n obj: ya\n });\n }\n ;\n ;\n }\n else da.warn(\"seq_regression\", {\n seq: xa,\n last_seq: ua,\n messages: wa.length\n });\n ;\n ;\n };\n ;\n break;\n case \"heartbeat\":\n if (ha.inStreaming) {\n var ab = JSBNG__Date.now();\n if (((this.heartbeats.length > 0))) {\n var bb = ((ab - this.heartbeats[((this.heartbeats.length - 1))]));\n da.log(\"heartbeat_interval\", {\n client_id: ha.sessionID,\n interval: bb\n });\n }\n ;\n ;\n this.heartbeats.push(ab);\n }\n ;\n ;\n break;\n default:\n da.error(\"unknown_msg_type\", {\n type: ta\n });\n break;\n };\n ;\n },\n _enter_init: function() {\n if (((ja.init >= ca.getConfig(\"MAX_INIT_FAILS\", 2)))) {\n return this.exitState.bind(this, {\n JSBNG__status: k.ERROR_MAX,\n stateId: ia\n }).defer();\n }\n ;\n ;\n this._initTimer = this.exitState.bind(this, {\n JSBNG__status: k.ERROR,\n stateId: ia\n }, \"timeout\").defer(ha.IFRAME_LOAD_TIMEOUT, false);\n },\n _enter_reconnect: function(qa) {\n var ra = ia;\n if (!u.hasUserCookie()) {\n da.warn(\"no_user_cookie\");\n (function() {\n ca._shutdownHint = k.HINT_AUTH;\n ca.exitState({\n JSBNG__status: k.ERROR_SHUTDOWN,\n stateId: ra\n });\n }).defer();\n return;\n }\n ;\n ;\n var sa = {\n reason: qa,\n fb_dtsg: o.fb_dtsg\n };\n if (o.fb_isb) {\n sa.fb_isb = o.fb_isb;\n }\n ;\n ;\n if (ea) {\n ea(sa);\n }\n ;\n ;\n var ta = new p(\"GET\", \"/ajax/presence/reconnect.php\", sa);\n ta.onSuccess = (function() {\n ca.configure(ta.json);\n s.store();\n this.exitState({\n JSBNG__status: k.OK,\n stateId: ra\n });\n }).bind(this);\n ta.onError = (function() {\n var ua = ((ta.json && ta.json.error));\n if (((((ta.errorType == h.TRANSPORT_ERROR)) || ((ta.errorType == h.PROXY_ERROR))))) {\n this._shutdownHint = k.HINT_CONN;\n }\n ;\n ;\n if (((ua && ((ua == 1356007))))) {\n this._shutdownHint = k.HINT_MAINT;\n }\n else if (((((((ua == 1357001)) || ((ua == 1357004)))) || ((ua == 1348009))))) {\n this._shutdownHint = k.HINT_AUTH;\n }\n else this._shutdownHint = null;\n \n ;\n ;\n this.exitState({\n JSBNG__status: ((this._shutdownHint ? k.ERROR_SHUTDOWN : k.ERROR)),\n stateId: ra\n }, ta);\n }).bind(this);\n ta.send();\n },\n _enter_shutdown: function() {\n i.inform(k.ON_SHUTDOWN, {\n reason: this._shutdownHint\n });\n },\n _exit_init: function(qa) {\n if (this._initTimer) {\n this._initTimer = JSBNG__clearTimeout(this._initTimer);\n }\n ;\n ;\n if (((qa == k.ERROR_MAX))) {\n this._sendIframeError(k.reason_IFrameLoadGiveUp);\n }\n ;\n ;\n },\n _exit_pull: function(qa) {\n if (((qa == k.OK))) {\n this.lastPullTime = JSBNG__Date.now();\n }\n ;\n ;\n },\n _exit_ping: function(qa) {\n if (((qa == k.OK))) {\n var ra = ((JSBNG__Date.now() - ((this.lastPullTime || o.start))));\n if (((ra > ha.STALL_THRESHOLD))) {\n return k.ERROR_STALE;\n }\n ;\n ;\n }\n ;\n ;\n },\n _probeTest: function() {\n ha.streamingCapable = false;\n var qa = [], ra = {\n mode: \"stream\",\n format: \"json\"\n }, sa = new x(\"/probe\").setDomain(((ha.host + \".facebook.com\"))).setPort(ha.port).setSecure(x().isSecure()).setQueryData(ra), ta = new h(\"GET\", sa);\n ta.onJSON = function(ua, va) {\n if (((((ua && ua.json)) && ((ua.json.t === \"heartbeat\"))))) {\n qa.push(JSBNG__Date.now());\n if (((qa.length >= 2))) {\n var wa = ((qa[1] - qa[0]));\n if (((((wa >= ha.PROBE_HEARTBEATS_INTERVAL_LOW)) && ((wa <= ha.PROBE_HEARTBEATS_INTERVAL_HIGH))))) {\n ha.streamingCapable = true;\n da.log(\"switch_to_streaming\");\n }\n ;\n ;\n da.log(\"probe_ok\", {\n time: wa\n });\n }\n ;\n ;\n }\n ;\n ;\n };\n ta.onSuccess = function(ua) {\n if (((qa.length != 2))) {\n ha.streamingCapable = false;\n da.error(\"probe_error\", {\n error: ((\"beats.length = \" + qa.length))\n });\n }\n ;\n ;\n };\n ta.onError = function(ua) {\n ha.streamingCapable = false;\n da.error(\"probe_error\", ua);\n };\n da.log(\"probe_request\");\n ta.send();\n }\n };\n e.exports = ca;\n if (l.channelConfig) {\n ca.configure(l.channelConfig);\n if (/shutdown/.test(l.state)) {\n ca._shutdownHint = k[l.reason];\n }\n ;\n ;\n ca.init(l.state, l.reason);\n }\n;\n;\n});\n__d(\"ChannelConnection\", [\"Arbiter\",\"copyProperties\",\"ChatConfig\",\"Run\",\"SystemEvents\",\"ChannelConstants\",\"ChannelManager\",\"JSLogger\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"copyProperties\"), i = b(\"ChatConfig\"), j = b(\"Run\"), k = b(\"SystemEvents\"), l = b(\"ChannelConstants\"), m = b(\"ChannelManager\"), n = b(\"JSLogger\"), o = n.create(\"channel_connection\"), p = null, q = null, r = null, s = null, t = 0, u = h(new g(), {\n CONNECTED: \"chat-connection/connected\",\n RECONNECTING: \"chat-connection/reconnecting\",\n SHUTDOWN: \"chat-connection/shutdown\",\n MUTE_WARNING: \"chat-connection/mute\",\n UNMUTE_WARNING: \"chat-connection/unmute\"\n });\n function v() {\n if (q) {\n JSBNG__clearTimeout(q);\n q = null;\n }\n ;\n ;\n };\n;\n function w() {\n v();\n o.log(\"unmute_warning\");\n u.inform(u.UNMUTE_WARNING);\n };\n;\n function x(ba) {\n v();\n q = w.defer(ba, false);\n o.log(\"mute_warning\", {\n time: ba\n });\n u.inform(u.MUTE_WARNING);\n };\n;\n function y() {\n if (r) {\n JSBNG__clearTimeout(r);\n r = null;\n }\n ;\n ;\n };\n;\n function z(ba, ca) {\n y();\n if (((((ba === l.ON_ENTER_STATE)) && ((((ca.nextState || ca.state)) === \"pull\"))))) {\n if (((s !== u.CONNECTED))) {\n o.log(\"connected\");\n var da = !s;\n s = u.CONNECTED;\n t = 0;\n u.inform(u.CONNECTED, {\n init: da\n });\n }\n ;\n ;\n }\n else if (((((ba === l.ON_ENTER_STATE)) && ((((((ca.nextState || ca.state)) === \"ping\")) || ((!ca.nextState && ((ca.state === \"idle\"))))))))) {\n r = (function() {\n var ea = null;\n if (!((((ca.state === \"idle\")) && !ca.nextState))) {\n ea = ((ca.delay || 0));\n }\n ;\n ;\n o.log(\"reconnecting\", {\n delay: ea\n });\n if (u.disconnected()) {\n o.log(\"reconnecting_ui\", {\n delay: ea\n });\n }\n ;\n ;\n s = u.RECONNECTING;\n ((((ca.state === \"idle\")) && t++));\n if (((t > 1))) {\n u.inform(u.RECONNECTING, ea);\n }\n else if (((!ca.nextState && ((ca.state === \"idle\"))))) {\n z(ba, ca);\n }\n \n ;\n ;\n }).defer(500, false);\n }\n else if (((ba === l.ON_SHUTDOWN))) {\n o.log(\"shutdown\", {\n reason: ca.reason\n });\n s = u.SHUTDOWN;\n t = 0;\n u.inform(u.SHUTDOWN, ca.reason);\n }\n \n \n ;\n ;\n };\n;\n function aa(ba) {\n if (((((m.state === \"ping\")) || m.isShutdown()))) {\n return;\n }\n ;\n ;\n o.log(\"reconnect\", {\n now: ba\n });\n u.inform(u.RECONNECTING, 0);\n if (!!ba) {\n if (((p !== null))) {\n JSBNG__clearTimeout(p);\n p = null;\n }\n ;\n ;\n m.enterState(\"ping!\");\n }\n else if (!p) {\n p = JSBNG__setTimeout(function() {\n m.enterState(\"ping!\");\n p = null;\n }, i.get(\"channel_manual_reconnect_defer_msec\"), false);\n }\n \n ;\n ;\n };\n;\n if (m.isShutdown()) {\n z(l.ON_SHUTDOWN, m._shutdownHint);\n }\n else z(l.ON_ENTER_STATE, {\n state: m.state,\n nextState: m.nextState,\n delay: 0\n });\n;\n;\n g.subscribe([l.ON_ENTER_STATE,l.ON_SHUTDOWN,], z);\n k.subscribe(k.TIME_TRAVEL, function() {\n aa();\n x(i.get(\"mute_warning_time_msec\"));\n });\n j.onBeforeUnload(y, false);\n h(u, {\n disconnected: function() {\n return ((((s === u.SHUTDOWN)) || ((((((s === u.RECONNECTING)) && !q)) && ((t > 1))))));\n },\n isShutdown: function() {\n return ((s === u.SHUTDOWN));\n },\n reconnect: aa,\n unmuteWarning: w\n });\n e.exports = u;\n});\n__d(\"legacy:cookie\", [\"Cookie\",], function(a, b, c, d) {\n var e = b(\"Cookie\");\n a.getCookie = e.get;\n a.setCookie = e.set;\n a.clearCookie = e.clear;\n}, 3);\n__d(\"LayerHideOnSuccess\", [\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\");\n function h(i) {\n this._layer = i;\n };\n;\n g(h.prototype, {\n _subscription: null,\n enable: function() {\n this._subscription = this._layer.subscribe(\"success\", this._layer.hide.bind(this._layer));\n },\n disable: function() {\n if (this._subscription) {\n this._subscription.unsubscribe();\n this._subscription = null;\n }\n ;\n ;\n }\n });\n e.exports = h;\n});\n__d(\"Overlay\", [\"Class\",\"JSBNG__CSS\",\"DataStore\",\"DOM\",\"Layer\",\"LayerButtons\",\"LayerDestroyOnHide\",\"LayerFadeOnHide\",\"LayerFadeOnShow\",\"LayerFormHooks\",\"LayerHideOnBlur\",\"LayerHideOnEscape\",\"LayerHideOnSuccess\",\"LayerHideOnTransition\",\"LayerTabIsolation\",\"LayerMouseHooks\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"JSBNG__CSS\"), i = b(\"DataStore\"), j = b(\"DOM\"), k = b(\"Layer\"), l = b(\"LayerButtons\"), m = b(\"LayerDestroyOnHide\"), n = b(\"LayerFadeOnHide\"), o = b(\"LayerFadeOnShow\"), p = b(\"LayerFormHooks\"), q = b(\"LayerHideOnBlur\"), r = b(\"LayerHideOnEscape\"), s = b(\"LayerHideOnSuccess\"), t = b(\"LayerHideOnTransition\"), u = b(\"LayerTabIsolation\"), v = b(\"LayerMouseHooks\"), w = b(\"copyProperties\");\n function x(y, z) {\n y = w({\n buildWrapper: true\n }, ((y || {\n })));\n this._shouldBuildWrapper = y.buildWrapper;\n this.parent.construct(this, y, z);\n };\n;\n g.extend(x, k);\n w(x.prototype, {\n _configure: function(y, z) {\n this.parent._configure(y, z);\n var aa = this.getRoot();\n this._overlay = ((j.scry(aa, \"div.uiOverlay\")[0] || aa));\n h.hide(aa);\n j.appendContent(this.getInsertParent(), aa);\n i.set(this._overlay, \"overlay\", this);\n var ba = i.get(this._overlay, \"width\");\n ((ba && this.setWidth(ba)));\n if (this.setFixed) {\n this.setFixed(((i.get(this._overlay, \"fixed\") == \"true\")));\n }\n ;\n ;\n if (((i.get(this._overlay, \"fadeonshow\") != \"false\"))) {\n this.enableBehavior(o);\n }\n ;\n ;\n if (((i.get(this._overlay, \"fadeonhide\") != \"false\"))) {\n this.enableBehavior(n);\n }\n ;\n ;\n if (((i.get(this._overlay, \"hideonsuccess\") != \"false\"))) {\n this.enableBehavior(s);\n }\n ;\n ;\n if (((i.get(this._overlay, \"hideonblur\") == \"true\"))) {\n this.enableBehavior(q);\n }\n ;\n ;\n if (((i.get(this._overlay, \"destroyonhide\") != \"false\"))) {\n this.enableBehavior(m);\n }\n ;\n ;\n return this;\n },\n _getDefaultBehaviors: function() {\n return this.parent._getDefaultBehaviors().concat([l,p,v,r,t,u,]);\n },\n initWithoutBuildingWrapper: function() {\n this._shouldBuildWrapper = false;\n return this.init.apply(this, arguments);\n },\n _buildWrapper: function(y, z) {\n z = this.parent._buildWrapper(y, z);\n if (!this._shouldBuildWrapper) {\n this._contentRoot = z;\n return z;\n }\n ;\n ;\n this._contentRoot = j.create(\"div\", {\n className: \"uiOverlayContent\"\n }, z);\n return j.create(\"div\", {\n className: \"uiOverlay\"\n }, this._contentRoot);\n },\n getContentRoot: function() {\n return this._contentRoot;\n },\n destroy: function() {\n i.remove(this.getRoot(), \"overlay\");\n this.parent.destroy();\n }\n });\n e.exports = x;\n});\n__d(\"legacy:adware-scanner\", [\"AdwareScaner\",], function(a, b, c, d) {\n a.AdwareScaner = b(\"AdwareScaner\");\n}, 3);\n__d(\"ContextualDialogFooterLink\", [\"JSBNG__Event\",\"copyProperties\",\"JSBNG__CSS\",\"DOM\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"copyProperties\"), i = b(\"JSBNG__CSS\"), j = b(\"DOM\");\n function k(l) {\n this._layer = l;\n };\n;\n h(k.prototype, {\n _subscriptions: null,\n enable: function() {\n var l = this._layer.getRoot(), m = j.scry(l, \".uiContextualDialogFooterLink\")[0], n = \"uiContextualDialogHoverFooterArrow\";\n this._subscriptions = [g.listen(m, \"mouseenter\", i.addClass.curry(l, n)),g.listen(m, \"mouseleave\", i.removeClass.curry(l, n)),];\n },\n disable: function() {\n this._subscriptions.forEach(function(l) {\n l.remove();\n });\n this._subscriptions = null;\n }\n });\n e.exports = k;\n});\n__d(\"LegacyContextualDialog\", [\"Arbiter\",\"ArbiterMixin\",\"ARIA\",\"Bootloader\",\"Class\",\"ContextualDialogFooterLink\",\"ContextualThing\",\"JSBNG__CSS\",\"DataStore\",\"DOM\",\"JSBNG__Event\",\"Locale\",\"Overlay\",\"Parent\",\"Style\",\"Vector\",\"$\",\"copyProperties\",\"getOverlayZIndex\",\"shield\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ArbiterMixin\"), i = b(\"ARIA\"), j = b(\"Bootloader\"), k = b(\"Class\"), l = b(\"ContextualDialogFooterLink\"), m = b(\"ContextualThing\"), n = b(\"JSBNG__CSS\"), o = b(\"DataStore\"), p = b(\"DOM\"), q = b(\"JSBNG__Event\"), r = b(\"Locale\"), s = b(\"Overlay\"), t = b(\"Parent\"), u = b(\"Style\"), v = b(\"Vector\"), w = b(\"$\"), x = b(\"copyProperties\"), y = b(\"getOverlayZIndex\"), z = b(\"shield\");\n function aa(ba, ca) {\n this.parent.construct(this, ba, ca);\n };\n;\n k.extend(aa, s);\n x(aa, h, {\n ARROW_OFFSET: 15,\n ARROW_LENGTH: 16,\n ARROW_INSET: 22,\n TOP_MARGIN: 50,\n BOTTOM_MARGIN: 30,\n LEFT_MARGIN: 15,\n RIGHT_MARGIN: 30,\n MIN_TOP_GAP: 5,\n POSITION_TO_CLASS: {\n above: \"uiContextualDialogAbove\",\n below: \"uiContextualDialogBelow\",\n left: \"uiContextualDialogLeft\",\n right: \"uiContextualDialogRight\"\n },\n RIGHT_ALIGNED_CLASS: \"uiContextualDialogRightAligned\",\n ARROW_CLASS: {\n bottom: \"uiContextualDialogArrowBottom\",\n JSBNG__top: \"uiContextualDialogArrowTop\",\n right: \"uiContextualDialogArrowRight\",\n left: \"uiContextualDialogArrowLeft\"\n },\n POSITION_TO_ARROW: {\n above: \"bottom\",\n below: \"JSBNG__top\",\n left: \"right\",\n right: \"left\"\n },\n getInstance: function(ba) {\n var ca = o.get(ba, \"LegacyContextualDialog\");\n if (!ca) {\n var da = t.byClass(ba, \"uiOverlay\");\n if (da) {\n ca = o.get(da, \"overlay\");\n }\n ;\n ;\n }\n ;\n ;\n return ca;\n }\n });\n x(aa.prototype, {\n _scrollListener: null,\n _scrollParent: null,\n _width: null,\n _fixed: false,\n _hasFooter: false,\n _showSubscription: null,\n _hideSubscription: null,\n _setContextSubscription: null,\n _resizeListener: null,\n _reflowSubscription: null,\n _configure: function(ba, ca) {\n this.parent._configure(ba, ca);\n var da = this.getRoot(), ea = o.get.curry(da);\n this.setAlignH(ea(\"alignh\", \"left\"));\n this.setOffsetX(ea(\"offsetx\", 0));\n this.setOffsetY(ea(\"offsety\", 0));\n this.setPosition(ea(\"position\", \"above\"));\n this._hasFooter = ea(\"hasfooter\", false);\n if (this._hasFooter) {\n var fa = p.scry(da, \".uiContextualDialogFooterLink\")[0];\n ((fa && this.enableBehavior(l)));\n }\n ;\n ;\n this._setContextSubscription = this.subscribe(\"beforeshow\", function() {\n this.unsubscribe(this._setContextSubscription);\n this._setContextSubscription = null;\n var ha = ea(\"context\");\n if (ha) {\n this.setContext(w(ha));\n }\n else {\n ha = ea(\"contextselector\");\n if (ha) {\n this.setContext(p.JSBNG__find(JSBNG__document, ha));\n }\n ;\n ;\n }\n ;\n ;\n }.bind(this));\n this._content = p.scry(da, \".uiContextualDialogContent\")[0];\n if (this._content) {\n this._content.setAttribute(\"role\", \"dialog\");\n var ga = p.scry(this._content, \".legacyContextualDialogTitle\")[0];\n if (ga) {\n this._content.setAttribute(\"aria-labelledby\", p.getID(ga));\n }\n ;\n ;\n }\n ;\n ;\n this._showSubscription = this.subscribe(\"show\", function() {\n var ha = z(this.updatePosition, this);\n this._resizeListener = q.listen(window, \"resize\", ha);\n this._reflowSubscription = g.subscribe(\"reflow\", ha);\n this._setupScrollListener(this._scrollParent);\n m.register(da, this.context);\n g.inform(\"layer_shown\", {\n type: \"ContextualDialog\"\n });\n }.bind(this));\n this._hideSubscription = this.subscribe(\"hide\", function() {\n this._teardownResizeAndReflowListeners();\n this._teardownScrollListener();\n g.inform(\"layer_hidden\", {\n type: \"ContextualDialog\"\n });\n }.bind(this));\n return this;\n },\n _buildWrapper: function(ba, ca) {\n var da = this.parent._buildWrapper(ba, ca);\n if (!this._shouldBuildWrapper) {\n return da;\n }\n ;\n ;\n n.addClass(da, \"uiContextualDialog\");\n return p.create(\"div\", {\n className: \"uiContextualDialogPositioner\"\n }, da);\n },\n setWidth: function(ba) {\n this._width = Math.floor(ba);\n return this;\n },\n setFixed: function(ba) {\n ba = !!ba;\n n.conditionClass(this.getRoot(), \"uiContextualDialogFixed\", ba);\n this._fixed = ba;\n return this;\n },\n setAlignH: function(ba) {\n this.alignH = ba;\n this._updateAlignmentClass();\n ((this._shown && this.updatePosition()));\n ((this.position && this._updateArrow()));\n return this;\n },\n getContent: function() {\n return this._content;\n },\n getContext: function() {\n return this.context;\n },\n setContext: function(ba) {\n if (this._setContextSubscription) {\n this.unsubscribe(this._setContextSubscription);\n this._setContextSubscription = null;\n }\n ;\n ;\n ba = w(ba);\n if (((this.context && ((this.context != ba))))) {\n o.remove(this.context, \"LegacyContextualDialog\");\n }\n ;\n ;\n this.context = ba;\n i.setPopup(this.getCausalElement(), this.getRoot());\n var ca = t.byClass(ba, \"fbPhotoSnowlift\");\n this.setInsertParent(((ca || JSBNG__document.body)));\n if (((this._scrollListener && ((this._scrollParent !== ca))))) {\n this._teardownScrollListener();\n this._setupScrollListener(ca);\n }\n ;\n ;\n this._scrollParent = ca;\n var da = y(ba, this._insertParent);\n u.set(this.getRoot(), \"z-index\", ((((da > 200)) ? da : \"\")));\n o.set(this.context, \"LegacyContextualDialog\", this);\n return this;\n },\n getCausalElement: function() {\n return ((this.parent.getCausalElement() || this.context));\n },\n listen: function(ba, ca) {\n return q.listen(this.getRoot(), ba, ca);\n },\n setOffsetX: function(ba) {\n this.offsetX = ((parseInt(ba, 10) || 0));\n ((this._shown && this.updatePosition()));\n return this;\n },\n setOffsetY: function(ba) {\n this.offsetY = ((parseInt(ba, 10) || 0));\n ((this._shown && this.updatePosition()));\n return this;\n },\n setPosition: function(ba) {\n this.position = ba;\n {\n var fin266keys = ((window.top.JSBNG_Replay.forInKeys)((aa.POSITION_TO_CLASS))), fin266i = (0);\n var ca;\n for (; (fin266i < fin266keys.length); (fin266i++)) {\n ((ca) = (fin266keys[fin266i]));\n {\n n.conditionClass(this.getRoot(), aa.POSITION_TO_CLASS[ca], ((ba == ca)));\n ;\n };\n };\n };\n ;\n this._updateAlignmentClass();\n ((this._shown && this.updatePosition()));\n this._updateArrow();\n return this;\n },\n updatePosition: function() {\n if (!this.context) {\n return false;\n }\n ;\n ;\n if (this._width) {\n u.set(this._overlay, \"width\", ((this._width + \"px\")));\n }\n ;\n ;\n var ba = ((this._fixed ? \"viewport\" : \"JSBNG__document\")), ca = v.getElementPosition(this.context, ba), da = this._scrollParent;\n if (da) {\n ca = ca.sub(v.getElementPosition(da, \"JSBNG__document\")).add(da.scrollLeft, da.scrollTop);\n }\n ;\n ;\n var ea = v.getElementDimensions(this.context), fa = ((((this.position == \"above\")) || ((this.position == \"below\")))), ga = r.isRTL();\n if (((((((this.position == \"right\")) || ((fa && ((this.alignH == \"right\")))))) != ga))) {\n ca = ca.add(ea.x, 0);\n }\n ;\n ;\n if (((this.position == \"below\"))) {\n ca = ca.add(0, ea.y);\n }\n ;\n ;\n var ha = new v(0, 0);\n if (((fa && ((this.alignH == \"center\"))))) {\n ha = ha.add(((((ea.x - this._width)) / 2)), 0);\n }\n else {\n var ia = ((fa ? ea.x : ea.y)), ja = ((2 * aa.ARROW_INSET));\n if (((ia < ja))) {\n var ka = ((((ia / 2)) - aa.ARROW_INSET));\n if (((fa && ((((this.alignH == \"right\")) != ga))))) {\n ka = -ka;\n }\n ;\n ;\n ha = ha.add(((fa ? ka : 0)), ((fa ? 0 : ka)));\n }\n ;\n ;\n }\n ;\n ;\n ha = ha.add(this.offsetX, this.offsetY);\n if (ga) {\n ha = ha.mul(-1, 1);\n }\n ;\n ;\n ca = ca.add(ha);\n if (this._fixed) {\n ca = new v(ca.x, ca.y, \"JSBNG__document\");\n }\n ;\n ;\n ca.setElementPosition(this.getRoot());\n this._adjustVerticalPosition();\n this._adjustHorizontalPosition();\n return true;\n },\n JSBNG__scrollTo: function() {\n if (this.context) {\n j.loadModules([\"DOMScroll\",], function(ba) {\n ba.JSBNG__scrollTo(this.context, true, true);\n }.bind(this));\n }\n ;\n ;\n },\n destroy: function() {\n this.unsubscribe(this._showSubscription);\n this.unsubscribe(this._hideSubscription);\n if (this._setContextSubscription) {\n this.unsubscribe(this._setContextSubscription);\n this._setContextSubscription = null;\n }\n ;\n ;\n this._teardownScrollListener();\n this._teardownResizeAndReflowListeners();\n ((this.context && o.remove(this.context, \"LegacyContextualDialog\")));\n this.parent.destroy();\n },\n _adjustVerticalPosition: function() {\n if (((((this.position != \"left\")) && ((this.position != \"right\"))))) {\n u.set(this._overlay, \"JSBNG__top\", \"\");\n return;\n }\n ;\n ;\n var ba = this.getRoot(), ca = v.getElementPosition(ba, \"viewport\").y, da = v.getElementDimensions(this._overlay).y, ea = v.getViewportDimensions().y, fa = Math.min(Math.max(ca, aa.MIN_TOP_GAP), aa.TOP_MARGIN), ga = Math.min(Math.max(0, ((((((ca + da)) + aa.BOTTOM_MARGIN)) - ea))), Math.max(-fa, ((ca - fa))), ((da - ((2 * aa.ARROW_INSET)))));\n u.set(this._overlay, \"JSBNG__top\", ((((-1 * ga)) + \"px\")));\n u.set(this._arrow, \"JSBNG__top\", ((aa.ARROW_OFFSET + \"px\")));\n u.set(this._arrow, \"marginTop\", ((ga + \"px\")));\n },\n _adjustHorizontalPosition: function() {\n if (((((((this.position != \"above\")) && ((this.position != \"below\")))) || ((this.alignH != \"left\"))))) {\n u.set(this._overlay, \"left\", \"\");\n u.set(this._overlay, \"right\", \"\");\n return;\n }\n ;\n ;\n var ba = this.getRoot(), ca = v.getElementPosition(ba, \"viewport\").x, da = v.getElementDimensions(this._overlay).x, ea = v.getViewportDimensions().x, fa = r.isRTL(), ga;\n if (!fa) {\n ga = ((((((ca + da)) + aa.RIGHT_MARGIN)) - ea));\n }\n else ga = ((((aa.LEFT_MARGIN + da)) - ca));\n ;\n ;\n ga = Math.min(Math.max(0, ga), ((da - ((2 * aa.ARROW_INSET)))));\n u.set(this._overlay, ((fa ? \"right\" : \"left\")), ((((-1 * ga)) + \"px\")));\n u.set(this._arrow, ((fa ? \"right\" : \"left\")), ((aa.ARROW_OFFSET + \"px\")));\n u.set(this._arrow, ((fa ? \"marginRight\" : \"marginLeft\")), ((ga + \"px\")));\n },\n _updateArrow: function() {\n var ba = 0;\n if (((((this.position == \"above\")) || ((this.position == \"below\"))))) {\n switch (this.alignH) {\n case \"center\":\n ba = 50;\n break;\n case \"right\":\n ba = 100;\n break;\n };\n }\n ;\n ;\n this._renderArrow(aa.POSITION_TO_ARROW[this.position], ba);\n },\n _renderArrow: function(ba, ca) {\n {\n var fin267keys = ((window.top.JSBNG_Replay.forInKeys)((aa.ARROW_CLASS))), fin267i = (0);\n var da;\n for (; (fin267i < fin267keys.length); (fin267i++)) {\n ((da) = (fin267keys[fin267i]));\n {\n n.conditionClass(this._overlay, aa.ARROW_CLASS[da], ((ba == da)));\n ;\n };\n };\n };\n ;\n n.conditionClass(this._overlay, \"uiContextualDialogWithFooterArrowBottom\", ((((ba == \"bottom\")) && this._hasFooter)));\n if (((ba == \"none\"))) {\n return;\n }\n ;\n ;\n if (!this._arrow) {\n this._arrow = p.create(\"i\", {\n className: \"uiContextualDialogArrow\"\n });\n p.appendContent(this._overlay, this._arrow);\n }\n ;\n ;\n u.set(this._arrow, \"JSBNG__top\", \"\");\n u.set(this._arrow, \"left\", \"\");\n u.set(this._arrow, \"right\", \"\");\n u.set(this._arrow, \"margin\", \"\");\n var ea = ((((ba == \"JSBNG__top\")) || ((ba == \"bottom\")))), fa = ((ea ? ((r.isRTL() ? \"right\" : \"left\")) : \"JSBNG__top\"));\n ca = ((ca || 0));\n u.set(this._arrow, fa, ((ca + \"%\")));\n var ga = ((aa.ARROW_LENGTH + ((aa.ARROW_OFFSET * 2)))), ha = -((((((ga * ca)) / 100)) - aa.ARROW_OFFSET));\n u.set(this._arrow, ((\"margin-\" + fa)), ((ha + \"px\")));\n },\n _updateAlignmentClass: function() {\n n.conditionClass(this.getRoot(), aa.RIGHT_ALIGNED_CLASS, ((((((this.position == \"above\")) || ((this.position == \"below\")))) && ((this.alignH == \"right\")))));\n },\n _setupScrollListener: function(ba) {\n this._scrollListener = q.listen(((ba || window)), \"JSBNG__scroll\", z(this._adjustVerticalPosition, this));\n },\n _teardownScrollListener: function() {\n if (this._scrollListener) {\n this._scrollListener.remove();\n this._scrollListener = null;\n }\n ;\n ;\n },\n _teardownResizeAndReflowListeners: function() {\n if (this._resizeListener) {\n this._resizeListener.remove();\n this._resizeListener = null;\n }\n ;\n ;\n if (this._reflowSubscription) {\n this._reflowSubscription.unsubscribe();\n this._reflowSubscription = null;\n }\n ;\n ;\n }\n });\n e.exports = aa;\n});"); |
| // 15666 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o86,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yK/r/RErt59oF4EQ.js",o95); |
| // undefined |
| o86 = null; |
| // undefined |
| o95 = null; |
| // 15671 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"dm/WP\",]);\n}\n;\n__d(\"AdblockDetector\", [], function(a, b, c, d, e, f) {\n var g = \"data-adblock-hash\", h = {\n }, i = 0;\n function j(k, l) {\n var m = k.getAttribute(g);\n if (!m) {\n m = ++i;\n k.setAttribute(g, m);\n }\n else if (h[m]) {\n clearTimeout(h[m]);\n h[m] = null;\n }\n \n ;\n h[m] = setTimeout(function() {\n h[m] = null;\n if (!k.offsetHeight) {\n var n = k, o = document.getElementsByTagName(\"body\")[0];\n while ((n && (n !== o))) {\n if ((((((n.style.display === \"none\") || (n.style.height === \"0px\")) || (n.style.height === 0)) || (n.style.height === \"0\")) || (n.childNodes.length === 0))) {\n return\n };\n n = n.parentNode;\n };\n if ((n === o)) {\n (l && l(k));\n };\n }\n ;\n }, 3000);\n };\n f.assertUnblocked = j;\n});\n__d(\"AdblockDetectorLogging\", [\"AdblockDetector\",\"EagleEye\",], function(a, b, c, d, e, f) {\n var g = b(\"AdblockDetector\"), h = b(\"EagleEye\");\n function i(j) {\n g.assertUnblocked(j, h.log.bind(h, \"ads\", {\n event: \"ads_blocked\"\n }));\n };\n f.assertUnblocked = i;\n});\n__d(\"EmuController\", [\"AsyncRequest\",\"DataStore\",\"URI\",\"copyProperties\",\"emptyFunction\",\"ge\",\"goURI\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"DataStore\"), i = b(\"URI\"), j = b(\"copyProperties\"), k = b(\"emptyFunction\"), l = b(\"ge\"), m = b(\"goURI\");\n function n(o, p) {\n var q = l(o);\n if (!q) {\n return null\n };\n this.impression = p;\n this.containerId = o;\n h.set(q, \"emuController\", this);\n return this;\n };\n j(n, {\n fromContainer: function(o) {\n var p = l(o);\n if (!p) {\n return null\n };\n return h.get(p, \"emuController\");\n },\n getEventClass: function(o) {\n return (\"emuEvent\" + String(o).trim());\n }\n });\n j(n.prototype, {\n EVENT_HANDLER_PATH: \"/ajax/emu/end.php\",\n CLICK: 1,\n FAN: \"fad_fan\",\n event: function(o, p, q, r) {\n var s = {\n eid: this.impression,\n f: 0,\n ui: this.containerId,\n en: o,\n a: 1\n };\n if (p) {\n s.ed = JSON.stringify(p);\n };\n if (!r) {\n r = k;\n };\n var t = new g().setURI(this.EVENT_HANDLER_PATH).setData(s).setErrorHandler(r);\n if (q) {\n t.setHandler(q);\n };\n t.send();\n },\n redirect: function() {\n var o = {\n eid: this.impression,\n f: 0,\n ui: this.containerId,\n en: this.CLICK,\n a: 0,\n sig: (Math.floor((Math.random() * 65535)) + 65536)\n }, p = new i(this.EVENT_HANDLER_PATH);\n p.setQueryData(o);\n m(p);\n }\n });\n e.exports = n;\n});\n__d(\"legacy:ad-units-base-js\", [\"EmuController\",], function(a, b, c, d) {\n a.EmuController = b(\"EmuController\");\n}, 3);\n__d(\"BassWhitespaceListener\", [\"Bootloader\",\"Event\",\"Parent\",\"copyProperties\",\"goURI\",], function(a, b, c, d, e, f) {\n var g = b(\"Bootloader\"), h = b(\"Event\"), i = b(\"Parent\"), j = b(\"copyProperties\"), k = b(\"goURI\");\n function l(m, n) {\n this.link = n;\n h.listen(m, \"click\", this.onclicked.bind(this));\n };\n j(l.prototype, {\n onclicked: function(m) {\n if (i.byTag(m.getTarget(), \"A\")) {\n return\n };\n switch (this.link.getAttribute(\"rel\")) {\n case \"async\":\n g.loadModules([\"AsyncRequest\",], function(o) {\n o.bootstrap(this.link.getAttribute(\"ajaxify\"), this.link);\n }.bind(this));\n break;\n case \"theater\":\n var n = i.byClass(m.getTarget(), \"fbPhotoSnowlift\");\n g.loadModules([\"PhotoViewer\",], function(o) {\n o.bootstrap(this.link.getAttribute(\"ajaxify\"), this.link);\n }.bind(this));\n if (n) {\n return false\n };\n break;\n default:\n k(this.link.getAttribute(\"href\"));\n };\n }\n });\n e.exports = l;\n});\n__d(\"legacy:ad-units-stream-whitespace\", [\"BassWhitespaceListener\",], function(a, b, c, d) {\n a.BassWhitespaceListener = b(\"BassWhitespaceListener\");\n}, 3);\n__d(\"legacy:async-signal\", [\"AsyncSignal\",], function(a, b, c, d) {\n a.AsyncSignal = b(\"AsyncSignal\");\n}, 3);\n__d(\"NetEgo\", [\"Arbiter\",\"CSS\",\"DOM\",\"URI\",\"ge\",\"Animation\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"CSS\"), i = b(\"DOM\"), j = b(\"URI\"), k = b(\"ge\"), l = b(\"Animation\"), m = {\n setup: function(n) {\n g.subscribe([\"page/liked\",\"FriendRequest/sending\",], function(o, p) {\n if (((n == p.id) || (n == p.uid))) {\n var q = k(document.body, \".ego_unit_container\");\n if (q) {\n var r = i.scry(q, \".ego_unit\"), s = r.length;\n for (var t = 0; (t < s); t++) {\n var u = r[t].getAttribute(\"data-ego-fbid\");\n if (((u == p.id) || (u == p.uid))) {\n var v = i.find(r[t], \".ego_action a\");\n if (v) {\n v.click();\n };\n break;\n }\n ;\n };\n }\n ;\n }\n ;\n });\n },\n updateXids: function(n, o) {\n if (((n.length == 0) && (o.length == 0))) {\n return\n };\n var p = function(z) {\n return function(aa) {\n var ba = aa.getAttribute(z);\n if (!ba) {\n return false\n };\n var ca = new j(ba).getQueryData();\n return !!ca.xids;\n };\n }, q = i.scry(document.body, \".ego_unit a\");\n q = q.filter(p(\"ajaxify\"));\n if ((q.length == 0)) {\n return\n };\n var r = new j(q[0].getAttribute(\"ajaxify\")), s = r.getQueryData();\n if (!s.xids) {\n return\n };\n try {\n var u = JSON.parse(s.xids);\n } catch (t) {\n return;\n };\n for (var v = 0; (v < n.length); ++v) {\n delete u[n[v]];;\n };\n for (v = 0; (v < o.length); ++v) {\n u[o[v]] = 1;;\n };\n var w = JSON.stringify(u), x = function(z, aa) {\n r = new j(z.getAttribute(aa));\n s = r.getQueryData();\n s.xids = w;\n r.setQueryData(s);\n z.setAttribute(aa, r.toString());\n };\n for (v = 0; (v < q.length); ++v) {\n x(q[v], \"ajaxify\");;\n };\n var y = i.scry(document.body, \".ego_unit form\");\n y = y.filter(p(\"action\"));\n for (v = 0; (v < y.length); ++v) {\n x(y[v], \"action\");;\n };\n },\n replaceUnit: function(n, o, p, q) {\n var r = i.insertAfter(n, o);\n r.forEach(h.hide);\n if (((q !== undefined) && (q !== null))) {\n (function() {\n m._replaceUnitFadeout(n, r, p);\n }).defer(q);\n }\n else m._replaceUnitFadeout(n, r, p);\n ;\n },\n _replaceUnitFadeout: function(n, o, p) {\n if (p) {\n new l(n).from(\"opacity\", 1).to(\"opacity\", 0).duration(p).checkpoint(1, function() {\n m._replaceUnitElement(n, o);\n }).go();\n }\n else m._replaceUnitElement(n, o);\n ;\n },\n _replaceUnitElement: function(n, o) {\n i.remove(n);\n o.forEach(h.show);\n g.inform(\"netego_replacedUnit\");\n m.clearHeader();\n },\n clearHeader: function() {\n var n = i.scry(document.body, \".ego_column\"), o = [];\n for (var p = 0; (p < n.length); ++p) {\n o = o.concat(i.scry(n[p], \".uiHeader\"));;\n };\n for (p = 0; (p < o.length); ++p) {\n var q = o[p].nextSibling;\n if ((!q || (q.childNodes.length === 0))) {\n i.remove(o[p]);\n }\n else if ((q.childNodes.length === 1)) {\n var r = q.childNodes[0];\n if ((h.hasClass(r, \"ego_appended_units\") && (r.childNodes.length === 0))) {\n i.remove(o[p]);\n };\n }\n \n ;\n };\n }\n };\n e.exports = m;\n});\n__d(\"ReminderStory\", [\"AsyncRequest\",\"endsWith\",\"Event\",\"DOMQuery\",\"ScrollableArea\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"endsWith\"), i = b(\"Event\"), j = b(\"DOMQuery\"), k = b(\"ScrollableArea\");\n function l(m, n, o) {\n i.listen(m, \"click\", function(p) {\n n.show();\n if (o) {\n var q = {\n context_data: o\n };\n new g().setURI(\"/growth/reminder/logging.php\").setData(q).send();\n }\n ;\n });\n n.subscribe(\"aftershow\", function() {\n var p = n.getRoot(), q = j.find(p, \"#SuggestBelowInvite\");\n if (q) {\n new g().setURI(\"/ajax/pages/reminder/recommendations\").send();\n };\n });\n n.subscribe(\"aftershow\", function() {\n var p = n.getRoot(), q = j.scry(p, \".inlineReplyTextArea\");\n if ((q.length > 0)) {\n q[0].focus();\n };\n var r = j.scry(p, \".jewelItemNew\"), s = [];\n for (var t in r) {\n var u = r[t].getAttribute(\"id\");\n if ((u && h(u, \"_1_req\"))) {\n s = s.concat(u.replace(\"_1_req\", \"\"));\n };\n };\n if ((s.length > 0)) {\n new g().setURI(\"/friends/requests/log_impressions\").setData({\n ids: s.join(\",\"),\n ref: \"reminder_box\"\n }).send();\n };\n k.poke(j.scry(p, \".uiScrollableArea\")[0]);\n });\n };\n e.exports = l;\n});"); |
| // 15672 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s197eb22f80b202989c5f857515ef594ca9682b45"); |
| // 15673 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"dm/WP\",]);\n}\n;\n;\n__d(\"AdblockDetector\", [], function(a, b, c, d, e, f) {\n var g = \"data-adblock-hash\", h = {\n }, i = 0;\n function j(k, l) {\n var m = k.getAttribute(g);\n if (!m) {\n m = ++i;\n k.setAttribute(g, m);\n }\n else if (h[m]) {\n JSBNG__clearTimeout(h[m]);\n h[m] = null;\n }\n \n ;\n ;\n h[m] = JSBNG__setTimeout(function() {\n h[m] = null;\n if (!k.offsetHeight) {\n var n = k, o = JSBNG__document.getElementsByTagName(\"body\")[0];\n while (((n && ((n !== o))))) {\n if (((((((((((n.style.display === \"none\")) || ((n.style.height === \"0px\")))) || ((n.style.height === 0)))) || ((n.style.height === \"0\")))) || ((n.childNodes.length === 0))))) {\n return;\n }\n ;\n ;\n n = n.parentNode;\n };\n ;\n if (((n === o))) {\n ((l && l(k)));\n }\n ;\n ;\n }\n ;\n ;\n }, 3000);\n };\n;\n f.assertUnblocked = j;\n});\n__d(\"AdblockDetectorLogging\", [\"AdblockDetector\",\"EagleEye\",], function(a, b, c, d, e, f) {\n var g = b(\"AdblockDetector\"), h = b(\"EagleEye\");\n function i(j) {\n g.assertUnblocked(j, h.log.bind(h, \"ads\", {\n JSBNG__event: \"ads_blocked\"\n }));\n };\n;\n f.assertUnblocked = i;\n});\n__d(\"EmuController\", [\"AsyncRequest\",\"DataStore\",\"URI\",\"copyProperties\",\"emptyFunction\",\"ge\",\"goURI\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"DataStore\"), i = b(\"URI\"), j = b(\"copyProperties\"), k = b(\"emptyFunction\"), l = b(\"ge\"), m = b(\"goURI\");\n function n(o, p) {\n var q = l(o);\n if (!q) {\n return null;\n }\n ;\n ;\n this.impression = p;\n this.containerId = o;\n h.set(q, \"emuController\", this);\n return this;\n };\n;\n j(n, {\n fromContainer: function(o) {\n var p = l(o);\n if (!p) {\n return null;\n }\n ;\n ;\n return h.get(p, \"emuController\");\n },\n getEventClass: function(o) {\n return ((\"emuEvent\" + String(o).trim()));\n }\n });\n j(n.prototype, {\n EVENT_HANDLER_PATH: \"/ajax/emu/end.php\",\n CLICK: 1,\n FAN: \"fad_fan\",\n JSBNG__event: function(o, p, q, r) {\n var s = {\n eid: this.impression,\n f: 0,\n ui: this.containerId,\n en: o,\n a: 1\n };\n if (p) {\n s.ed = JSON.stringify(p);\n }\n ;\n ;\n if (!r) {\n r = k;\n }\n ;\n ;\n var t = new g().setURI(this.EVENT_HANDLER_PATH).setData(s).setErrorHandler(r);\n if (q) {\n t.setHandler(q);\n }\n ;\n ;\n t.send();\n },\n redirect: function() {\n var o = {\n eid: this.impression,\n f: 0,\n ui: this.containerId,\n en: this.CLICK,\n a: 0,\n sig: ((Math.floor(((Math.JSBNG__random() * 65535))) + 65536))\n }, p = new i(this.EVENT_HANDLER_PATH);\n p.setQueryData(o);\n m(p);\n }\n });\n e.exports = n;\n});\n__d(\"legacy:ad-units-base-js\", [\"EmuController\",], function(a, b, c, d) {\n a.EmuController = b(\"EmuController\");\n}, 3);\n__d(\"BassWhitespaceListener\", [\"Bootloader\",\"JSBNG__Event\",\"Parent\",\"copyProperties\",\"goURI\",], function(a, b, c, d, e, f) {\n var g = b(\"Bootloader\"), h = b(\"JSBNG__Event\"), i = b(\"Parent\"), j = b(\"copyProperties\"), k = b(\"goURI\");\n function l(m, n) {\n this.link = n;\n h.listen(m, \"click\", this.onclicked.bind(this));\n };\n;\n j(l.prototype, {\n onclicked: function(m) {\n if (i.byTag(m.getTarget(), \"A\")) {\n return;\n }\n ;\n ;\n switch (this.link.getAttribute(\"rel\")) {\n case \"async\":\n g.loadModules([\"AsyncRequest\",], function(o) {\n o.bootstrap(this.link.getAttribute(\"ajaxify\"), this.link);\n }.bind(this));\n break;\n case \"theater\":\n var n = i.byClass(m.getTarget(), \"fbPhotoSnowlift\");\n g.loadModules([\"PhotoViewer\",], function(o) {\n o.bootstrap(this.link.getAttribute(\"ajaxify\"), this.link);\n }.bind(this));\n if (n) {\n return false;\n }\n ;\n ;\n break;\n default:\n k(this.link.getAttribute(\"href\"));\n };\n ;\n }\n });\n e.exports = l;\n});\n__d(\"legacy:ad-units-stream-whitespace\", [\"BassWhitespaceListener\",], function(a, b, c, d) {\n a.BassWhitespaceListener = b(\"BassWhitespaceListener\");\n}, 3);\n__d(\"legacy:async-signal\", [\"AsyncSignal\",], function(a, b, c, d) {\n a.AsyncSignal = b(\"AsyncSignal\");\n}, 3);\n__d(\"NetEgo\", [\"Arbiter\",\"JSBNG__CSS\",\"DOM\",\"URI\",\"ge\",\"Animation\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"JSBNG__CSS\"), i = b(\"DOM\"), j = b(\"URI\"), k = b(\"ge\"), l = b(\"Animation\"), m = {\n setup: function(n) {\n g.subscribe([\"page/liked\",\"FriendRequest/sending\",], function(o, p) {\n if (((((n == p.id)) || ((n == p.uid))))) {\n var q = k(JSBNG__document.body, \".ego_unit_container\");\n if (q) {\n var r = i.scry(q, \".ego_unit\"), s = r.length;\n for (var t = 0; ((t < s)); t++) {\n var u = r[t].getAttribute(\"data-ego-fbid\");\n if (((((u == p.id)) || ((u == p.uid))))) {\n var v = i.JSBNG__find(r[t], \".ego_action a\");\n if (v) {\n v.click();\n }\n ;\n ;\n break;\n }\n ;\n ;\n };\n ;\n }\n ;\n ;\n }\n ;\n ;\n });\n },\n updateXids: function(n, o) {\n if (((((n.length == 0)) && ((o.length == 0))))) {\n return;\n }\n ;\n ;\n var p = function(z) {\n return function(aa) {\n var ba = aa.getAttribute(z);\n if (!ba) {\n return false;\n }\n ;\n ;\n var ca = new j(ba).getQueryData();\n return !!ca.xids;\n };\n }, q = i.scry(JSBNG__document.body, \".ego_unit a\");\n q = q.filter(p(\"ajaxify\"));\n if (((q.length == 0))) {\n return;\n }\n ;\n ;\n var r = new j(q[0].getAttribute(\"ajaxify\")), s = r.getQueryData();\n if (!s.xids) {\n return;\n }\n ;\n ;\n try {\n var u = JSON.parse(s.xids);\n } catch (t) {\n return;\n };\n ;\n for (var v = 0; ((v < n.length)); ++v) {\n delete u[n[v]];\n ;\n };\n ;\n for (v = 0; ((v < o.length)); ++v) {\n u[o[v]] = 1;\n ;\n };\n ;\n var w = JSON.stringify(u), x = function(z, aa) {\n r = new j(z.getAttribute(aa));\n s = r.getQueryData();\n s.xids = w;\n r.setQueryData(s);\n z.setAttribute(aa, r.toString());\n };\n for (v = 0; ((v < q.length)); ++v) {\n x(q[v], \"ajaxify\");\n ;\n };\n ;\n var y = i.scry(JSBNG__document.body, \".ego_unit form\");\n y = y.filter(p(\"action\"));\n for (v = 0; ((v < y.length)); ++v) {\n x(y[v], \"action\");\n ;\n };\n ;\n },\n replaceUnit: function(n, o, p, q) {\n var r = i.insertAfter(n, o);\n r.forEach(h.hide);\n if (((((q !== undefined)) && ((q !== null))))) {\n (function() {\n m._replaceUnitFadeout(n, r, p);\n }).defer(q);\n }\n else m._replaceUnitFadeout(n, r, p);\n ;\n ;\n },\n _replaceUnitFadeout: function(n, o, p) {\n if (p) {\n new l(n).from(\"opacity\", 1).to(\"opacity\", 0).duration(p).checkpoint(1, function() {\n m._replaceUnitElement(n, o);\n }).go();\n }\n else m._replaceUnitElement(n, o);\n ;\n ;\n },\n _replaceUnitElement: function(n, o) {\n i.remove(n);\n o.forEach(h.show);\n g.inform(\"netego_replacedUnit\");\n m.clearHeader();\n },\n clearHeader: function() {\n var n = i.scry(JSBNG__document.body, \".ego_column\"), o = [];\n for (var p = 0; ((p < n.length)); ++p) {\n o = o.concat(i.scry(n[p], \".uiHeader\"));\n ;\n };\n ;\n for (p = 0; ((p < o.length)); ++p) {\n var q = o[p].nextSibling;\n if (((!q || ((q.childNodes.length === 0))))) {\n i.remove(o[p]);\n }\n else if (((q.childNodes.length === 1))) {\n var r = q.childNodes[0];\n if (((h.hasClass(r, \"ego_appended_units\") && ((r.childNodes.length === 0))))) {\n i.remove(o[p]);\n }\n ;\n ;\n }\n \n ;\n ;\n };\n ;\n }\n };\n e.exports = m;\n});\n__d(\"ReminderStory\", [\"AsyncRequest\",\"endsWith\",\"JSBNG__Event\",\"DOMQuery\",\"ScrollableArea\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"endsWith\"), i = b(\"JSBNG__Event\"), j = b(\"DOMQuery\"), k = b(\"ScrollableArea\");\n function l(m, n, o) {\n i.listen(m, \"click\", function(p) {\n n.show();\n if (o) {\n var q = {\n context_data: o\n };\n new g().setURI(\"/growth/reminder/logging.php\").setData(q).send();\n }\n ;\n ;\n });\n n.subscribe(\"aftershow\", function() {\n var p = n.getRoot(), q = j.JSBNG__find(p, \"#SuggestBelowInvite\");\n if (q) {\n new g().setURI(\"/ajax/pages/reminder/recommendations\").send();\n }\n ;\n ;\n });\n n.subscribe(\"aftershow\", function() {\n var p = n.getRoot(), q = j.scry(p, \".inlineReplyTextArea\");\n if (((q.length > 0))) {\n q[0].JSBNG__focus();\n }\n ;\n ;\n var r = j.scry(p, \".jewelItemNew\"), s = [];\n {\n var fin268keys = ((window.top.JSBNG_Replay.forInKeys)((r))), fin268i = (0);\n var t;\n for (; (fin268i < fin268keys.length); (fin268i++)) {\n ((t) = (fin268keys[fin268i]));\n {\n var u = r[t].getAttribute(\"id\");\n if (((u && h(u, \"_1_req\")))) {\n s = s.concat(u.replace(\"_1_req\", \"\"));\n }\n ;\n ;\n };\n };\n };\n ;\n if (((s.length > 0))) {\n new g().setURI(\"/friends/requests/log_impressions\").setData({\n ids: s.join(\",\"),\n ref: \"reminder_box\"\n }).send();\n }\n ;\n ;\n k.poke(j.scry(p, \".uiScrollableArea\")[0]);\n });\n };\n;\n e.exports = l;\n});"); |
| // 15693 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o189,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/ys/r/hXdibVSGozY.js",o190); |
| // undefined |
| o189 = null; |
| // undefined |
| o190 = null; |
| // 15775 |
| JSBNG_Replay.s1406cdb8f82a4497c9e210b291001f76845e62bf_379[0](false); |
| // 15785 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"TXKLp\",]);\n}\n;\n__d(\"ChatFavoriteList\", [\"AsyncRequest\",\"arrayContains\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"arrayContains\"), i = b(\"emptyFunction\"), j = false, k = [], l = [], m = false;\n function n() {\n var r = k.join(\",\");\n new g(\"/ajax/chat/favorite_list.php\").setData({\n favorite_list: r\n }).setHandler(i).setErrorHandler(i).send();\n };\n function o(r) {\n return r.toString();\n };\n function p(r) {\n if ((k.length != r.length)) {\n return true\n };\n for (var s = 0; (s < r.length); s++) {\n if ((k[s] !== r[s].toString())) {\n return true\n };\n };\n return false;\n };\n var q = {\n isEditMode: function() {\n var r = null;\n d([\"ChatSidebar\",], function(s) {\n r = s;\n });\n return ((j && r) && r.isEnabled());\n },\n toggleEditMode: function() {\n j = !j;\n if (j) {\n l = k.slice();\n };\n },\n get: function() {\n if (j) {\n return l.slice();\n }\n else return k.slice()\n ;\n },\n isFavored: function(r) {\n return h(l, r.toString());\n },\n init: function(r) {\n k = r.slice().map(o);\n l = k.slice();\n },\n toggleID: function(r) {\n if (!j) {\n return\n };\n r = r.toString();\n var s = l.indexOf(r);\n if ((s >= 0)) {\n l.splice(s, 1);\n }\n else l.push(r);\n ;\n m = true;\n },\n hasChanged: function() {\n if (m) {\n m = false;\n return true;\n }\n ;\n return false;\n },\n updateList: function(r) {\n if (!j) {\n return\n };\n l = r.map(o);\n },\n save: function() {\n if (p(l)) {\n k = l;\n n();\n }\n ;\n }\n };\n e.exports = q;\n});\n__d(\"ChatContexts\", [], function(a, b, c, d, e, f) {\n var g = {\n };\n function h(k) {\n var l = (k ? k.subtext : \"\");\n return l;\n };\n function i(k, l) {\n g[k] = l;\n };\n var j = {\n get: function(k) {\n if ((k in g)) {\n return g[k];\n }\n else return null\n ;\n },\n update: function(k) {\n for (var l in k) {\n i(l, k[l]);;\n };\n },\n getShortDisplay: function(k) {\n return h(j.get(k));\n }\n };\n e.exports = j;\n});\n__d(\"LastMobileActiveTimes\", [\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"tx\"), h = 0, i = {\n };\n function j(n) {\n if ((!h || !n)) {\n return \"\"\n };\n var o = (h - n), p = Math.floor((o / 60)), q = Math.floor((p / 60)), r = Math.floor((q / 24));\n if ((p <= 1)) {\n return g._(\"{count}m\", {\n count: 1\n });\n }\n else if ((p < 60)) {\n return g._(\"{count}m\", {\n count: p\n });\n }\n else if ((q < 24)) {\n return g._(\"{count}h\", {\n count: q\n });\n }\n else if ((r < 3)) {\n return g._(\"{count}d\", {\n count: r\n });\n }\n else return \"\"\n \n \n \n ;\n };\n function k(n, o) {\n i[n] = o;\n };\n function l(n) {\n if ((n in i)) {\n return i[n];\n }\n else return 0\n ;\n };\n var m = {\n update: function(n, o) {\n h = (o / 1000);\n for (var p in n) {\n k(p, n[p]);;\n };\n },\n getShortDisplay: function(n) {\n return j(l(n));\n }\n };\n e.exports = m;\n});\n__d(\"ServerTime\", [\"PresenceInitialData\",], function(a, b, c, d, e, f) {\n var g = b(\"PresenceInitialData\"), h;\n function i(k) {\n h = (Date.now() - k);\n };\n i(g.serverTime);\n var j = {\n get: function() {\n return (Date.now() - h);\n },\n getSkew: function() {\n return h;\n },\n update: function(k) {\n i(k);\n }\n };\n e.exports = j;\n});\n__d(\"PresenceStatus\", [\"AvailableListConstants\",\"ChatConfig\",\"ChatVisibility\",\"Env\",\"PresencePrivacy\",\"ServerTime\",\"createObjectFrom\",], function(a, b, c, d, e, f) {\n var g = b(\"AvailableListConstants\"), h = b(\"ChatConfig\"), i = b(\"ChatVisibility\"), j = b(\"Env\"), k = b(\"PresencePrivacy\"), l = b(\"ServerTime\"), m = b(\"createObjectFrom\"), n = {\n }, o = {\n }, p = {\n }, q = {\n }, r = {\n }, s = {\n resetPresenceData: function() {\n n = {\n };\n r = {\n };\n q = {\n };\n },\n reset: function() {\n s.resetPresenceData();\n o = {\n };\n p = {\n };\n },\n get: function(t) {\n if ((t == j.user)) {\n return (i.isOnline() ? g.ACTIVE : g.OFFLINE)\n };\n var u = g.OFFLINE;\n if ((t in n)) {\n u = n[t];\n };\n if (!k.allows(t)) {\n u = g.OFFLINE;\n };\n if ((u == g.OFFLINE)) {\n if (o[t]) {\n u = g.MOBILE;\n }\n };\n return u;\n },\n isBirthday: function(t) {\n return p[t];\n },\n getGroup: function(t) {\n if (!h.get(\"chat_group_presence\", 0)) {\n return g.OFFLINE\n };\n return (t.some(function(u) {\n if ((u == j.user)) {\n return false\n };\n return ((s.get(u) === g.ACTIVE));\n }) ? g.ACTIVE : g.OFFLINE);\n },\n set: function(t, u, v, w) {\n if ((t == j.user)) {\n return false\n };\n switch (u) {\n case g.OFFLINE:\n \n case g.IDLE:\n \n case g.ACTIVE:\n \n case g.MOBILE:\n break;\n default:\n return false;\n };\n var x = (s.get(t) != u);\n if (v) {\n q[t] = l.get();\n r[t] = w;\n }\n ;\n n[t] = u;\n return x;\n },\n setMobileFriends: function(t) {\n o = m(t);\n },\n setBirthdayFriends: function(t) {\n p = m(t);\n },\n getOnlineIDs: function() {\n var t, u = [];\n for (t in n) {\n if ((s.get(t) === g.ACTIVE)) {\n u.push(t);\n };\n };\n return u;\n },\n getAvailableIDs: function() {\n var t = s.getOnlineIDs(), u;\n for (u in o) {\n if (n[u]) {\n continue;\n };\n t.push(u);\n };\n return t;\n },\n getOnlineCount: function() {\n return s.getOnlineIDs().length;\n },\n getPresenceStats: function() {\n var t = 0, u = 0, v = 0, w = 0, x = 0;\n for (var y in n) {\n t += 1;\n switch (s.get(y)) {\n case g.OFFLINE:\n u += 1;\n break;\n case g.IDLE:\n v += 1;\n break;\n case g.ACTIVE:\n w += 1;\n break;\n case g.MOBILE:\n x += 1;\n break;\n default:\n break;\n };\n };\n return {\n total: t,\n offline: u,\n idle: v,\n active: w,\n mobile: x\n };\n },\n getDebugInfo: function(t) {\n return {\n id: t,\n presence: n[t],\n overlaySource: r[t],\n overlayTime: q[t],\n mobile: o[t]\n };\n }\n };\n e.exports = s;\n});\n__d(\"PresencePoller\", [\"AvailableListConstants\",\"AvailableListInitialData\",\"BanzaiODS\",\"ChannelImplementation\",\"ChatContexts\",\"ChatFavoriteList\",\"ChatVisibility\",\"Env\",\"JSLogger\",\"LastMobileActiveTimes\",\"Poller\",\"PresenceStatus\",\"PresenceUtil\",\"ServerTime\",\"ShortProfiles\",\"UserActivity\",\"copyProperties\",\"debounceAcrossTransitions\",], function(a, b, c, d, e, f) {\n var g = b(\"AvailableListConstants\"), h = b(\"AvailableListInitialData\"), i = b(\"BanzaiODS\"), j = b(\"ChannelImplementation\").instance, k = b(\"ChatContexts\"), l = b(\"ChatFavoriteList\"), m = b(\"ChatVisibility\"), n = b(\"Env\"), o = b(\"JSLogger\"), p = b(\"LastMobileActiveTimes\"), q = b(\"Poller\"), r = b(\"PresenceStatus\"), s = b(\"PresenceUtil\"), t = b(\"ServerTime\"), u = b(\"ShortProfiles\"), v = b(\"UserActivity\"), w = b(\"copyProperties\"), x = b(\"debounceAcrossTransitions\"), y = 5, z = \"/ajax/chat/buddy_list.php\", aa = 1800000, ba = h.pollInterval, ca = h.lazyPollInterval, da = h.lazyThreshold, ea = o.create(\"available_list\"), fa = \"presence_poller\";\n i.setEntitySample(fa, 4998);\n function ga(ha) {\n this.$PresencePoller0 = ha;\n this.$PresencePoller1 = false;\n this.$PresencePoller2 = h.chatNotif;\n this.$PresencePoller3 = new q({\n interval: ba,\n setupRequest: this.$PresencePoller4.bind(this),\n clearOnQuicklingEvents: false,\n dontStart: true\n });\n this.$PresencePoller5 = Date.now();\n this.$PresencePoller6 = Date.now();\n this.$PresencePoller7 = Date.now();\n this.$PresencePoller8 = h.updateTime;\n this.$PresencePoller9 = false;\n this.$PresencePollera = 0;\n if (h.favoriteList) {\n l.init(h.favoriteList);\n };\n this.$PresencePollerb(\"available_initial_data\", h.updateTime, h.availableList, h.lastActiveTimes, h.mobileFriends, h.birthdayFriends);\n v.subscribe(function(ia, ja) {\n if ((ja.idleness > ba)) {\n this.forceUpdate();\n };\n }.bind(this));\n };\n ga.prototype.start = function() {\n this.$PresencePoller3.start.bind(this.$PresencePoller3).defer();\n };\n ga.prototype.forceUpdate = function() {\n if (!this.$PresencePoller9) {\n this.$PresencePoller3.request();\n };\n };\n ga.prototype.getIsUserIdle = function() {\n return this.$PresencePoller1;\n };\n ga.prototype.getWebChatNotification = function() {\n return this.$PresencePoller2;\n };\n ga.prototype.getCallback = function() {\n return this.$PresencePoller0;\n };\n ga.prototype.$PresencePollerc = function() {\n return x(function() {\n this.$PresencePoller0(g.ON_AVAILABILITY_CHANGED);\n }.bind(this), 0)();\n };\n ga.prototype.$PresencePollerb = function(ha, ia, ja, ka, la, ma) {\n this.$PresencePoller8 = ia;\n if (!Array.isArray(ja)) {\n r.resetPresenceData();\n for (var na in ja) {\n r.set(na, ja[na].a, false, ha);;\n };\n }\n ;\n if (ka) {\n p.update(ka, ia);\n };\n if (la) {\n r.setMobileFriends(la);\n };\n if (ma) {\n r.setBirthdayFriends(ma);\n };\n this.$PresencePollerc();\n };\n ga.prototype.$PresencePoller4 = function(ha) {\n if ((j.isShutdown() || !m.isOnline())) {\n this.$PresencePoller3.skip();\n i.bumpEntityKey(fa, \"skip.offline\");\n return;\n }\n ;\n if (((Date.now() - this.$PresencePoller5) < ba)) {\n this.$PresencePoller3.skip();\n i.bumpEntityKey(fa, \"skip.recent\");\n return;\n }\n ;\n i.bumpEntityKey(fa, \"request\");\n this.$PresencePoller5 = Date.now();\n var ia = (((Date.now() - this.$PresencePoller7) > aa)), ja = u.getCachedProfileIDs().join(\",\");\n this.$PresencePoller9 = true;\n ha.setHandler(this.$PresencePollerd.bind(this)).setErrorHandler(this.$PresencePollere.bind(this)).setOption(\"suppressErrorAlerts\", true).setOption(\"retries\", 1).setData({\n user: n.user,\n cached_user_info_ids: ja,\n fetch_mobile: ia\n }).setURI(z).setAllowCrossPageTransition(true);\n };\n ga.prototype.$PresencePollerd = function(ha) {\n var ia = ha.getPayload(), ja = ia.buddy_list;\n if (!ja) {\n this.$PresencePollere(ha);\n return;\n }\n ;\n i.bumpEntityKey(fa, \"response\");\n this.$PresencePoller9 = false;\n this.$PresencePollerf();\n this.$PresencePoller6 = Date.now();\n t.update(ia.time);\n this.$PresencePollera = 0;\n this.$PresencePollerg();\n var ka = ja.userInfos;\n if (ka) {\n u.setMulti(ka);\n };\n var la = ja.chatContexts;\n (la && k.update(la));\n this.$PresencePoller1 = ja.userIsIdle;\n if ((ja.chatNotif !== undefined)) {\n this.$PresencePoller2 = ja.chatNotif;\n this.$PresencePoller0(g.ON_CHAT_NOTIFICATION_CHANGED, this.$PresencePoller2);\n }\n ;\n this.$PresencePollerb(\"buddy_list_poller\", ia.time, ja.nowAvailableList, ja.last_active_times, ja.mobile_friends, ja.todays_birthdays);\n };\n ga.prototype.$PresencePollere = function(ha) {\n i.bumpEntityKey(fa, \"error\");\n if (s.checkMaintenanceError(ha)) {\n return\n };\n this.$PresencePoller9 = false;\n this.$PresencePollera++;\n if ((this.$PresencePollera++ >= y)) {\n this.$PresencePoller0(g.ON_UPDATE_ERROR);\n };\n };\n ga.prototype.$PresencePollerg = function() {\n var ha = (v.isActive(da) ? ba : ca);\n i.bumpEntityKey(fa, (\"period.\" + ha));\n this.$PresencePoller3.setInterval(ha);\n };\n ga.prototype.$PresencePollerf = function() {\n var ha = Date.now(), ia = (ha - this.$PresencePoller6);\n ea.log(\"buddylist_presence_stats\", w({\n duration: ia\n }, r.getPresenceStats()));\n };\n e.exports = ga;\n});\n__d(\"AvailableList\", [\"function-extensions\",\"Arbiter\",\"ArbiterMixin\",\"AsyncRequest\",\"AvailableListConstants\",\"ChannelImplementation\",\"ChannelConstants\",\"ChatConfig\",\"ChatFavoriteList\",\"JSLogger\",\"PresencePoller\",\"PresencePrivacy\",\"PresenceStatus\",\"ShortProfiles\",\"TypingDetector\",\"copyProperties\",\"debounceAcrossTransitions\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"Arbiter\"), h = b(\"ArbiterMixin\"), i = b(\"AsyncRequest\"), j = b(\"AvailableListConstants\"), k = b(\"ChannelImplementation\").instance, l = b(\"ChannelConstants\"), m = b(\"ChatConfig\"), n = b(\"ChatFavoriteList\"), o = b(\"JSLogger\"), p = b(\"PresencePoller\"), q = b(\"PresencePrivacy\"), r = b(\"PresenceStatus\"), s = b(\"ShortProfiles\"), t = b(\"TypingDetector\"), u = b(\"copyProperties\"), v = b(\"debounceAcrossTransitions\"), w = b(\"emptyFunction\"), x = u({\n }, j, h);\n x.subscribe([j.ON_AVAILABILITY_CHANGED,j.ON_UPDATE_ERROR,], function(ea, fa) {\n g.inform(ea, fa);\n });\n var y = v(function() {\n x.inform(j.ON_AVAILABILITY_CHANGED);\n }, 0);\n function z(ea, fa, ga, ha) {\n var ia = r.set(ea, fa, ga, ha);\n if (ia) {\n y();\n };\n };\n function aa(ea) {\n var fa = (ea.payload.availability || {\n });\n for (var ga in fa) {\n z(ga, fa[ga], true, \"mercury_tabs\");;\n };\n };\n function ba(ea) {\n var fa = x.getDebugInfo(ea), ga = ((fa.presence == j.ACTIVE)), ha = new i(\"/ajax/mercury/tabs_presence.php\").setData({\n target_id: ea,\n to_online: ga,\n presence_source: fa.overlaySource,\n presence_time: fa.overlayTime\n }).setHandler(aa).setErrorHandler(w).setAllowCrossPageTransition(true).send();\n };\n function ca(ea, fa) {\n fa.chat_config = m.getDebugInfo();\n fa.available_list_debug_info = {\n };\n x.getAvailableIDs().forEach(function(ga) {\n fa.available_list_debug_info[ga] = x.getDebugInfo(ga);\n });\n fa.available_list_poll_interval = (x._poller && x._poller.getInterval());\n };\n var da = new p(function(event) {\n x.inform(event);\n });\n u(x, {\n get: function(ea) {\n return r.get(ea);\n },\n updateForID: function(ea) {\n ba(ea);\n },\n getWebChatNotification: function() {\n return da.getWebChatNotification();\n },\n isUserIdle: function() {\n return da.getIsUserIdle();\n },\n isReady: function() {\n return true;\n },\n set: function(ea, fa, ga) {\n z(ea, fa, true, ga);\n },\n update: function() {\n da.forceUpdate();\n },\n isIdle: function(ea) {\n return (x.get(ea) == j.IDLE);\n },\n getOnlineIDs: function() {\n return r.getOnlineIDs();\n },\n getAvailableIDs: function() {\n return r.getAvailableIDs();\n },\n getOnlineCount: function() {\n return r.getOnlineCount();\n },\n getDebugInfo: function(ea) {\n var fa = r.getDebugInfo(ea), ga = s.getNow(ea);\n if (ga) {\n fa.name = ga.name;\n };\n return fa;\n }\n });\n da.start();\n g.subscribe(o.DUMP_EVENT, ca);\n g.subscribe(l.getArbiterType(\"favorite_list\"), function(ea, fa) {\n var ga = fa.obj, ha = (ga.value ? ga.value.split(\",\") : []);\n n.init(ha);\n y();\n });\n q.subscribe([\"privacy-changed\",\"privacy-availability-changed\",\"privacy-user-presence-response\",], y);\n k.subscribe([k.CONNECTED,k.RECONNECTING,k.SHUTDOWN,k.MUTE_WARNING,k.UNMUTE_WARNING,], y);\n g.subscribe(l.getArbiterType(\"buddylist_overlay\"), function(ea, fa) {\n var ga = fa.obj.overlay;\n for (var ha in ga) {\n x.set(ha, ga[ha].a, (ga[ha].s || \"channel\"));;\n };\n });\n g.subscribe([l.getArbiterType(\"typ\"),l.getArbiterType(\"ttyp\"),], function(ea, fa) {\n var ga = fa.obj;\n if ((ga.st === t.TYPING)) {\n var ha = ga.from;\n x.set(ha, j.ACTIVE, \"channel-typing\");\n }\n ;\n });\n a.AvailableList = e.exports = x;\n});\n__d(\"ChatImpressionLogger\", [\"AvailableList\",\"AsyncSignal\",\"ChatConfig\",\"ChatVisibility\",\"Poller\",], function(a, b, c, d, e, f) {\n var g = b(\"AvailableList\"), h = b(\"AsyncSignal\"), i = b(\"ChatConfig\"), j = b(\"ChatVisibility\"), k = b(\"Poller\"), l = null, m = null, n = {\n init: function(o) {\n l = o;\n var p = i.get(\"chat_impression_logging_periodical\", 0);\n if (p) {\n var q = i.get(\"periodical_impression_logging_config.interval\");\n m = new k({\n interval: q,\n setupRequest: this.logImps.bind(this),\n clearOnQuicklingEvents: false\n });\n }\n ;\n this.init = function() {\n \n };\n },\n logImps: function(o) {\n if (!j.isOnline()) {\n return\n };\n var p = {\n source: \"periodical_imps\"\n }, q = l.getCachedSortedList(), r = [];\n for (var s = 0; (s < q.length); s++) {\n r[s] = g.get(q[s]);;\n };\n p.sorted_list = q.toString();\n p.list_availability = r.toString();\n o.setURI(\"/ajax/chat/imps_logging.php\").setData(p);\n },\n getOrderedList: function() {\n return l;\n },\n logImpressions: function(o) {\n var p = [], q = [];\n if (i.get(\"chat_impression_logging_with_click\")) {\n p = l.getCachedSortedList();\n for (var r = 0; (r < p.length); r++) {\n q[r] = g.get(p[r]);;\n };\n }\n ;\n o.sorted_list = p.toString();\n o.list_availability = q.toString();\n new h(\"/ajax/chat/ct.php\", o).send();\n }\n };\n e.exports = n;\n});\n__d(\"ChatTypeaheadConstants\", [], function(a, b, c, d, e, f) {\n var g = {\n USER_TYPE: \"user\",\n THREAD_TYPE: \"thread\",\n FRIEND_TYPE: \"friend\",\n NON_FRIEND_TYPE: \"non_friend\",\n HEADER_TYPE: \"header\"\n };\n e.exports = g;\n});\n__d(\"Chat\", [\"Arbiter\",\"AvailableList\",\"ChatImpressionLogger\",\"ChatTypeaheadConstants\",\"MercuryParticipantTypes\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AvailableList\"), i = b(\"ChatImpressionLogger\"), j = b(\"ChatTypeaheadConstants\"), k = b(\"MercuryParticipantTypes\");\n function l(q, r) {\n var s = (r && r.source);\n if ((((((((s && (s === \"ordered_list\")) || (s === \"more_online_friends\")) || (s === \"online_friends\")) || (s === \"recent_threads_in_divebar_new\")) || (s === \"recent_threads_in_divebar\")) || (s === \"presence\")) || (s === \"typeahead\"))) {\n r.viewport_width = document.body.clientWidth;\n r.target = q;\n r.target_presence = h.get(q);\n i.logImpressions(r);\n }\n ;\n };\n var m = {\n buddyListNub: \"buddylist-nub/initialized\",\n sidebar: \"sidebar/initialized\"\n };\n function n(q, r) {\n g.subscribe(m[q], function(event, s) {\n r(s);\n });\n };\n function o() {\n return (((Math.random() * 2147483648) | 0)).toString(16);\n };\n var p = {\n openTab: function(q, r, s) {\n if (((window.External && window.External.Chat) && window.External.Chat.openWindow)) {\n window.External.Chat.openWindow(q);\n };\n l.curry(q, s).defer();\n d([\"MercuryThreads\",], function(t) {\n if ((((!r || (r === k.FRIEND)) || (r === j.FRIEND_TYPE)) || (r === j.USER_TYPE))) {\n var u = t.get().getCanonicalThreadToUser(q), v = o();\n g.inform(\"chat/open-tab\", {\n thread_id: u.thread_id,\n signature_id: v\n });\n return;\n }\n ;\n if ((r === j.THREAD_TYPE)) {\n d([\"ChatOpenTab\",], function(w) {\n if (q) {\n w.openThread(q);\n }\n else w.openEmptyTab();\n ;\n });\n };\n });\n },\n openBuddyList: function() {\n n(\"buddyListNub\", function(q) {\n q.show();\n n(\"sidebar\", function(r) {\n r.enable();\n });\n });\n },\n closeBuddyList: function() {\n n(\"buddyListNub\", function(q) {\n q.hide();\n });\n },\n toggleSidebar: function() {\n n(\"sidebar\", function(q) {\n q.toggle();\n });\n },\n goOnline: function(q) {\n d([\"ChatVisibility\",], function(r) {\n r.goOnline(q);\n });\n },\n isOnline: function() {\n var q = null;\n d([\"ChatVisibility\",], function(r) {\n q = r;\n });\n return (q && q.isOnline());\n }\n };\n a.Chat = e.exports = p;\n}, 3);\n__d(\"OrderedFriendsList\", [\"AvailableList\",\"ChatConfig\",\"createArrayFrom\",\"ShortProfiles\",\"InitialChatFriendsList\",], function(a, b, c, d, e, f) {\n var g = b(\"AvailableList\"), h = b(\"ChatConfig\"), i = b(\"createArrayFrom\"), j = b(\"ShortProfiles\"), k = [], l = {\n }, m = [], n = {\n contains: function(o) {\n return (o in l);\n },\n compare: function(o, p) {\n var q = n.getRank(o), r = n.getRank(p);\n if ((q !== r)) {\n return (q - r)\n };\n var s = j.getNowUnsafe(o), t = j.getNowUnsafe(p), u = ((((s || {\n })).name || \"~\")).toLowerCase(), v = ((((t || {\n })).name || \"~\")).toLowerCase();\n if ((u !== v)) {\n return ((u < v) ? -1 : 1)\n };\n return 0;\n },\n getList: function() {\n if (h.get(\"chat_web_ranking_with_presence\")) {\n n.reRank();\n };\n var o = i(k);\n o = o.filter(function(p) {\n var q = j.getNowUnsafe(p);\n return (!q || (q.type == \"friend\"));\n });\n return o;\n },\n getRank: function(o) {\n return ((o in l) ? l[o] : k.length);\n },\n reRank: function() {\n var o = {\n }, p = {\n };\n m.forEach(function(r, s) {\n var t = r.substr(0, (r.length - 2)), u = r.substring((r.length - 1));\n if ((typeof (p.uid) == \"undefined\")) {\n if ((typeof (o.uid) == \"undefined\")) {\n o[t] = g.get(t);\n };\n var v = o[t];\n if ((v == u)) {\n p[s] = t;\n };\n }\n ;\n });\n k = [];\n for (var q in p) {\n k.push(p[q]);;\n };\n k.forEach(function(r, s) {\n l[r] = s;\n });\n }\n };\n (function() {\n var o = b(\"InitialChatFriendsList\");\n k = (o.list.length ? o.list : []);\n if (h.get(\"chat_web_ranking_with_presence\")) {\n m = k.slice();\n n.reRank();\n }\n ;\n k.forEach(function(p, q) {\n l[p] = q;\n });\n })();\n e.exports = (a.OrderedFriendsList || n);\n});\n__d(\"ChatSidebarConstants\", [], function(a, b, c, d, e, f) {\n var g = {\n LITESTAND_IMAGE_SIZE: 24,\n LITESTAND_BLENDED_SIZE: 32,\n IMAGE_SIZE: 28\n };\n e.exports = g;\n});\n__d(\"ChatTypeaheadBehavior\", [\"Chat\",\"ChatConfig\",\"ChatFavoriteList\",\"CSS\",\"DOM\",\"Rect\",\"copyProperties\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Chat\"), h = b(\"ChatConfig\"), i = b(\"ChatFavoriteList\"), j = b(\"CSS\"), k = b(\"DOM\"), l = b(\"Rect\"), m = b(\"copyProperties\"), n = b(\"tx\");\n function o(p) {\n this._typeahead = p;\n };\n m(o.prototype, {\n _subscriptions: null,\n enable: function() {\n var p = this._typeahead;\n this._subscriptions = [p.subscribe(\"focus\", function() {\n p.getData().refreshData();\n }),p.subscribe(\"blur\", function(q) {\n p.getCore().reset();\n }),p.subscribe(\"respond\", function(q, r) {\n if ((r.value && (r.value === p.getCore().getValue()))) {\n if (!r.results.length) {\n var s = h.get(\"divebar_typeahead_group_fof\", 0);\n if ((s && !r.isAsync)) {\n return\n };\n var t = k.create(\"div\", {\n className: \"noResults\"\n }, \"Friend not found.\");\n k.setContent(p.getView().getElement(), t);\n }\n ;\n j.addClass(p.getElement(), \"hasValue\");\n }\n ;\n }),p.subscribe(\"reset\", function() {\n j.removeClass(p.getElement(), \"hasValue\");\n }),p.subscribe(\"select\", function(q, r) {\n if (i.isEditMode()) {\n i.toggleID(r.selected.uid);\n i.save();\n }\n else {\n var s = j.hasClass(document.documentElement, \"sidebarMode\"), t = {\n mode: (s ? \"sidebar\" : \"chatNub\"),\n source: \"typeahead\",\n type: r.selected.type,\n typeahead: true\n };\n g.openTab(r.selected.uid, r.selected.type, t);\n }\n ;\n }),p.subscribe(\"highlight\", function(q, r) {\n if ((r.index >= 0)) {\n var s = p.getView().getItems()[r.index];\n if (s) {\n var t = new l(s), u = s.offsetParent, v = t.boundWithin(new l(u)).getPositionVector();\n t.getPositionVector().sub(v).scrollElementBy(u);\n }\n ;\n }\n ;\n }),];\n },\n disable: function() {\n this._subscriptions.forEach(function(p) {\n this._typeahead.unsubscribe(p);\n }.bind(this));\n this._subscriptions = null;\n }\n });\n e.exports = o;\n});\n__d(\"ChatTypeaheadCore\", [\"function-extensions\",\"Class\",\"Event\",\"Keys\",\"TypeaheadCore\",\"copyProperties\",\"emptyFunction\",\"shield\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"Class\"), h = b(\"Event\"), i = b(\"Keys\"), j = b(\"TypeaheadCore\"), k = b(\"copyProperties\"), l = b(\"emptyFunction\"), m = b(\"shield\");\n function n(o) {\n this.parent.construct(this, o);\n };\n g.extend(n, j);\n k(n.prototype, {\n init: function(o, p, q) {\n this.parent.init(o, p, q);\n this.informBeginActive = false;\n this.informEndActive = false;\n this.data.subscribe(\"respond\", function() {\n if (this.informBeginActive) {\n this.informBeginActive = false;\n this.inform(\"sidebar/typeahead/active\", true);\n }\n else if (this.informEndActive) {\n this.informEndActive = false;\n this.inform(\"sidebar/typeahead/active\", false);\n }\n \n ;\n }.bind(this));\n },\n handleTab: l,\n keydown: function(event) {\n var o = h.getKeyCode(event);\n if ((o === i.ESC)) {\n m(this.reset, this).defer();\n return event.kill();\n }\n ;\n return this.parent.keydown(event);\n },\n checkValue: function() {\n var o = this.getValue(), p = this.value;\n if ((o == p)) {\n return\n };\n if ((p && !o)) {\n this.typeaheadActive = false;\n this.informEndActive = true;\n }\n else if ((!p && o)) {\n this.typeaheadActive = true;\n this.informBeginActive = true;\n this.inform(\"sidebar/typeahead/preActive\");\n }\n \n ;\n this.parent.checkValue();\n }\n });\n e.exports = n;\n});\n__d(\"ChatTypeaheadDataSource\", [\"Class\",\"DataSource\",\"Env\",\"JSLogger\",\"MercuryParticipantTypes\",\"OrderedFriendsList\",\"Run\",\"ShortProfiles\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"DataSource\"), i = b(\"Env\"), j = b(\"JSLogger\"), k = b(\"MercuryParticipantTypes\"), l = b(\"OrderedFriendsList\"), m = b(\"Run\"), n = b(\"ShortProfiles\"), o = b(\"copyProperties\");\n function p(q) {\n q = (q || {\n });\n q.kanaNormalization = true;\n this.parent.construct(this, q);\n this.persistOnRefresh = (q.persistOnRefresh !== false);\n this.showOfflineUsers = !!q.showOfflineUsers;\n this._jslog = j.create(\"chat_typeahead\");\n this._jslog.log(\"created\");\n };\n g.extend(p, h);\n o(p.prototype, {\n init: function() {\n this._jslog.log(\"init\");\n this.parent.init();\n this._update();\n },\n bootstrap: function() {\n this._jslog.log(\"bootstrap\");\n this.parent.bootstrap();\n if (this.showOfflineUsers) {\n this._jslog.log(\"show_offline_users\");\n this._jslog.log(\"ensured_short_profiles\");\n if (n.hasAll()) {\n this._update();\n }\n else {\n this._jslog.log(\"fetch_all_short_profiles\");\n n.fetchAll();\n this.inform(\"activity\", {\n activity: true\n });\n var q = n.subscribe(\"updated\", function() {\n this.inform(\"activity\", {\n activity: false\n });\n this._update();\n }.bind(this));\n if (!this.persistOnRefresh) {\n m.onLeave(function() {\n n.unsubscribe(q);\n });\n };\n }\n ;\n }\n ;\n },\n _update: function() {\n d([\"AvailableList\",], function(q) {\n var r = this.value;\n this.dirty();\n var s = n.getCachedProfileIDs(), t = s.filter(function(v) {\n var w = n.getNow(v);\n return (w.type === k.FRIEND);\n });\n t.sort(l.compare);\n var u = [];\n t.forEach(function(v) {\n if ((v == i.user)) {\n return\n };\n var w = q.get(v);\n if ((!this.showOfflineUsers && (w !== q.ACTIVE))) {\n return\n };\n var x = n.getNow(v), y = x.additionalName;\n if (x.hasOwnProperty(\"searchTokens\")) {\n y = ((y !== null) ? ((y + \" \") + x.searchTokens.join(\" \")) : x.searchTokens.join(\" \"));\n };\n u.push({\n uid: v,\n text: x.name,\n tokens: y,\n localized_text: x.name,\n additional_text: x.additionalName,\n photo: x.thumbSrc,\n type: x.type\n });\n }.bind(this));\n if (u.length) {\n this.addEntries(u);\n };\n this.value = r;\n if (r) {\n this.query(r);\n };\n }.bind(this));\n },\n refreshData: function() {\n d([\"AvailableList\",], function(q) {\n q.update();\n }.bind(this));\n }\n });\n e.exports = p;\n});\n__d(\"ChatSidebarHeader.react\", [\"React\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"cx\"), i = g.createClass({\n displayName: \"ReactChatSidebarHeader\",\n render: function() {\n return (g.DOM.div({\n className: \"-cx-PRIVATE-chatSidebarItem__header\"\n }, g.DOM.div({\n className: \"-cx-PRIVATE-chatSidebarItem__headertext\"\n }, this.props.name)));\n }\n });\n e.exports = i;\n});\n__d(\"ChatSidebarItem.react\", [\"AvailableListConstants\",\"ChatConfig\",\"ChatFavoriteList\",\"ChatSidebarConstants\",\"Image.react\",\"Link.react\",\"React\",\"SplitImage.react\",\"cx\",\"ix\",], function(a, b, c, d, e, f) {\n var g = b(\"AvailableListConstants\"), h = b(\"ChatConfig\"), i = b(\"ChatFavoriteList\"), j = b(\"ChatSidebarConstants\"), k = b(\"Image.react\"), l = b(\"Link.react\"), m = b(\"React\"), n = b(\"SplitImage.react\"), o = b(\"cx\"), p = b(\"ix\"), q = 9, r = m.createClass({\n displayName: \"ChatSidebarItem\",\n render: function() {\n var s = ((((\"-cx-PRIVATE-chatSidebarItem__link\") + ((this.props.context ? (\" \" + \"-cx-PRIVATE-chatSidebarItem__hascontext\") : \"\"))) + (((this.props.unreadCount && h.get(\"litestand_buddylist_count\")) ? (\" \" + \"-cx-PRIVATE-chatSidebarItem__hasunreadcount\") : \"\")))), t;\n if (this.props.litestandSidebar) {\n t = m.DOM.div({\n \"aria-label\": this.props.name,\n className: \"-cx-PUBLIC-litestandSidebarBookmarks__tooltip\",\n \"data-hover\": \"tooltip\",\n \"data-tooltip-position\": \"right\"\n });\n };\n return (l({\n className: s,\n href: this.props.href,\n onClick: this.props.onClick,\n rel: \"ignore\"\n }, m.DOM.div({\n className: \"-cx-PRIVATE-chatSidebarItem__contents\"\n }, this.renderFavorite(), m.DOM.div({\n className: \"-cx-PUBLIC-chatSidebarItem__piccontainer\"\n }, this.renderImage(), m.DOM.div({\n className: \"-cx-PRIVATE-chatSidebarItem__picborder\"\n })), m.DOM.div({\n className: \"-cx-PRIVATE-chatSidebarItem__rightcontent\"\n }, this.renderBirthday(), this.renderUnreadCount(), this.renderStatus()), m.DOM.div({\n className: \"-cx-PRIVATE-chatSidebarItem__name\"\n }, this.props.name), m.DOM.div({\n className: \"-cx-PRIVATE-chatSidebarItem__context\"\n }, this.props.context)), t));\n },\n renderFavorite: function() {\n if ((this.props.isAdded === undefined)) {\n return null\n };\n var s = null;\n if (this.props.litestandSidebar) {\n s = (this.props.isAdded ? p(\"/images/litestand/bookmarks/sidebar/remove.png\") : p(\"/images/litestand/bookmarks/sidebar/add.png\"));\n }\n else s = (this.props.isAdded ? p(\"/images/chat/delete.png\") : p(\"/images/chat/add.png\"));\n ;\n var t = (((\"-cx-PRIVATE-chatSidebarItem__favoritebutton\") + ((!this.props.showEditButton ? (\" \" + \"hidden_elem\") : \"\"))));\n return (m.DOM.div({\n className: t,\n onClick: this.props.onEditClick\n }, k({\n className: \"-cx-PRIVATE-chatSidebarItem__favoriteicon\",\n src: s\n })));\n },\n renderImage: function() {\n var s = (this.props.imageSize || j.IMAGE_SIZE);\n return n({\n size: s,\n srcs: this.props.images\n });\n },\n renderUnreadCount: function() {\n var s = this.props.unreadCount;\n if ((!s || !h.get(\"litestand_buddylist_count\"))) {\n return null\n };\n var t = (((\"-cx-PRIVATE-chatSidebarItem__unreadcount\") + (((s > q) ? (\" \" + \"-cx-PRIVATE-chatSidebarItem__largecount\") : \"\"))));\n if ((s > q)) {\n s = (q + \"+\");\n };\n return (m.DOM.div({\n className: t\n }, s));\n },\n renderStatus: function() {\n var s = this.getStatusSrc();\n if (!s) {\n return null\n };\n if (((this.props.unreadCount && h.get(\"litestand_blended_sidebar\")) && h.get(\"litestand_buddylist_count\"))) {\n return\n };\n var t = (h.get(\"divebar_favorite_list\", 0) && i.isEditMode());\n if (t) {\n return\n };\n return (m.DOM.div({\n className: \"-cx-PRIVATE-chatSidebarItem__status\"\n }, m.DOM.div({\n className: \"-cx-PRIVATE-chatSidebarItem__statustime\"\n }, this.props.statusTime), k({\n className: \"-cx-PRIVATE-chatSidebarItem__statusicon\",\n src: s\n })));\n },\n renderBirthday: function() {\n if (!this.props.birthday) {\n return null\n };\n return (k({\n className: \"-cx-PRIVATE-chatSidebarItem__birthdayicon\",\n src: p(\"/images/gifts/icons/cake_icon.png\")\n }));\n },\n getStatusSrc: function() {\n switch (this.props.status) {\n case g.ACTIVE:\n \n case g.IDLE:\n if (this.props.litestandSidebar) {\n return (h.get(\"litestand_blended_sidebar\") ? p(\"/images/litestand/sidebar/blended/online.png\") : p(\"/images/litestand/sidebar/online.png\"))\n };\n return p(\"/images/chat/status/online.png\");\n case g.MOBILE:\n if (this.props.litestandSidebar) {\n return (h.get(\"litestand_blended_sidebar\") ? p(\"/images/litestand/sidebar/blended/pushable.png\") : p(\"/images/litestand/sidebar/pushable.png\"))\n };\n return p(\"/images/chat/status/mobile.png\");\n };\n return null;\n }\n });\n e.exports = r;\n});\n__d(\"ChatSidebarThread.react\", [\"ChatSidebarItem.react\",\"WebMessengerPermalinkConstants\",\"React\",\"MercuryThreadMetadataRawRenderer\",], function(a, b, c, d, e, f) {\n var g = b(\"ChatSidebarItem.react\"), h = b(\"WebMessengerPermalinkConstants\"), i = b(\"React\"), j = b(\"MercuryThreadMetadataRawRenderer\"), k = i.createClass({\n displayName: \"ChatSidebarThread\",\n render: function() {\n var n = this.props.name, o = l(this.props.threadID, this.props.participants), p = (n ? o : undefined), q = h.getURIPathForThreadID(this.props.threadID), r = m(this.props.image, this.props.participants), s = (n ? n : o);\n return (g({\n context: p,\n href: {\n url: q\n },\n imageSize: this.props.imageSize,\n images: r,\n litestandSidebar: this.props.litestandSidebar,\n name: s,\n status: this.props.status,\n unreadCount: this.props.unreadCount\n }));\n }\n });\n function l(n, o) {\n return j.renderRawParticipantList(n, o, o.length, {\n names_renderer: j.renderShortNames\n });\n };\n function m(n, o) {\n if (n) {\n return n\n };\n return o.map(function(p) {\n return p.image_src;\n });\n };\n e.exports = k;\n});\n__d(\"ChatSidebarUser.react\", [\"ChatFavoriteList\",\"WebMessengerPermalinkConstants\",\"ChatConfig\",\"React\",\"ChatSidebarItem.react\",], function(a, b, c, d, e, f) {\n var g = b(\"ChatFavoriteList\"), h = b(\"WebMessengerPermalinkConstants\"), i = b(\"ChatConfig\"), j = b(\"React\"), k = b(\"ChatSidebarItem.react\"), l = j.createClass({\n displayName: \"ChatSidebarUser\",\n render: function() {\n var m = h.getURIPathForIDOrVanity(this.props.userID), n = g.isFavored(this.props.userID), o = function() {\n g.toggleID(this.props.userID);\n }.bind(this), p = (i.get(\"divebar_favorite_list\", 0) ? n : undefined);\n return (k({\n href: {\n url: m\n },\n imageSize: this.props.imageSize,\n images: this.props.image,\n litestandSidebar: this.props.litestandSidebar,\n isAdded: p,\n showEditButton: g.isEditMode(),\n name: this.props.name,\n onEditClick: o,\n status: this.props.status,\n birthday: this.props.birthday,\n statusTime: this.props.statusTime,\n context: this.props.context\n }));\n }\n });\n e.exports = l;\n});\n__d(\"ChatTypeaheadRenderer\", [\"AvailableListConstants\",\"ChatConfig\",\"ChatSidebarConstants\",\"ChatSidebarHeader.react\",\"ChatSidebarThread.react\",\"ChatSidebarUser.react\",\"ChatTypeaheadConstants\",\"DOM\",\"LastMobileActiveTimes\",\"MercuryParticipants\",\"PresenceStatus\",\"React\",], function(a, b, c, d, e, f) {\n var g = b(\"AvailableListConstants\"), h = b(\"ChatConfig\"), i = b(\"ChatSidebarConstants\"), j = b(\"ChatSidebarHeader.react\"), k = b(\"ChatSidebarThread.react\"), l = b(\"ChatSidebarUser.react\"), m = b(\"ChatTypeaheadConstants\"), n = b(\"DOM\"), o = b(\"LastMobileActiveTimes\"), p = b(\"MercuryParticipants\"), q = b(\"PresenceStatus\"), r = b(\"React\"), s = {\n };\n function t(z, aa) {\n if (!((z in s))) {\n s[z] = n.create(\"li\");\n };\n r.renderComponent(aa, s[z]);\n return s[z];\n };\n function u(z) {\n return t(z.text, j({\n name: z.text\n }));\n };\n function v() {\n if ((h.get(\"litestand\", 0) && !h.get(\"test_old_divebar\"))) {\n return (h.get(\"litestand_blended_sidebar\") ? i.LITESTAND_BLENDED_SIZE : i.LITESTAND_IMAGE_SIZE)\n };\n return i.IMAGE_SIZE;\n };\n function w(z) {\n var aa = z.mercury_thread.participants.map(function(ba) {\n return p.getUserID(ba);\n });\n return t(z.uid, k({\n image: z.mercury_thread.image_src,\n imageSize: v(),\n litestandSidebar: (h.get(\"litestand\", 0) && !h.get(\"test_old_divebar\")),\n name: z.mercury_thread.name,\n participants: z.participants_to_render,\n status: q.getGroup(aa),\n threadID: z.uid\n }));\n };\n function x(z) {\n var aa = q.get(z.uid), ba = (((aa === g.MOBILE)) ? o.getShortDisplay(z.uid) : null), ca = ((z.render_type == \"non_friend\") ? z.subtext : null);\n return t(z.uid, l({\n image: z.photo,\n imageSize: v(),\n litestandSidebar: h.get(\"litestand\", 0),\n name: z.text,\n status: aa,\n birthday: q.isBirthday(z.uid),\n statusTime: ba,\n userID: z.uid,\n context: ca\n }));\n };\n function y(z, aa) {\n if ((z.type === m.HEADER_TYPE)) {\n return u(z)\n };\n if ((z.type == m.THREAD_TYPE)) {\n return w(z)\n };\n return x(z);\n };\n e.exports = y;\n});\n__d(\"ChatTypeaheadView\", [\"arrayContains\",\"BucketedTypeaheadView\",\"ChatConfig\",\"Class\",\"ChatTypeaheadConstants\",\"Env\",\"MercuryThreadSearchUtils\",\"copyProperties\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"arrayContains\"), h = b(\"BucketedTypeaheadView\"), i = b(\"ChatConfig\"), j = b(\"Class\"), k = b(\"ChatTypeaheadConstants\"), l = b(\"Env\"), m = b(\"MercuryThreadSearchUtils\"), n = b(\"copyProperties\"), o = b(\"tx\"), p = i.get(\"divebar_typeahead_group_fof\", 0);\n function q(r, s) {\n this.parent.construct(this, r, s);\n this.typeObjects = {\n };\n this.typeObjectsOrder = [];\n this.typeObjects[k.NON_FRIEND_TYPE] = {\n uid: k.NON_FRIEND_TYPE,\n type: k.HEADER_TYPE,\n text: \"FRIENDS OF FRIENDS\"\n };\n this.typeObjectsOrder.push(k.NON_FRIEND_TYPE);\n this.typeObjects[k.THREAD_TYPE] = {\n uid: k.THREAD_TYPE,\n type: k.HEADER_TYPE,\n text: \"GROUP CONVERSATIONS\"\n };\n this.typeObjectsOrder.push(k.THREAD_TYPE);\n this.typeObjects[k.FRIEND_TYPE] = {\n disabled: true,\n uid: k.FRIEND_TYPE,\n type: k.HEADER_TYPE,\n text: \"FRIENDS\"\n };\n this.typeObjectsOrder.push(k.FRIEND_TYPE);\n };\n j.extend(q, h);\n n(q.prototype, {\n buildBuckets: function(r, s) {\n if (p) {\n s = s.reverse();\n s = s.filter(function(t) {\n var u = (t.render_type || t.type);\n if ((u === \"thread\")) {\n var v = (\"fbid:\" + l.user);\n if (!g(t.mercury_thread.participants, v)) {\n return false\n };\n var w = t.participants_to_render.some(function(y) {\n return m.queryMatchesName(r, y.name);\n }), x = m.queryMatchesName(r, t.mercury_thread.name);\n if ((!w && !x)) {\n return false\n };\n }\n ;\n return true;\n });\n }\n ;\n s = this.parent.buildBuckets(r, s);\n if (!p) {\n s = s.filter(function(t) {\n return (t && !t.disabled);\n });\n };\n return s;\n },\n getDefaultIndex: function(r) {\n if (!p) {\n return this.parent.getDefaultIndex(r)\n };\n if ((r.length === 0)) {\n return -1\n };\n var s = (r.length - 1);\n while ((!this.isHighlightable(r[s]) && (s >= 0))) {\n s--;;\n };\n return s;\n }\n });\n e.exports = q;\n});\n__d(\"AbstractButton.react\", [\"Link.react\",\"ReactPropTypes\",\"React\",\"cx\",\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"Link.react\"), h = b(\"ReactPropTypes\"), i = b(\"React\"), j = b(\"cx\"), k = b(\"invariant\");\n function l(n, o) {\n if (n.props.className) {\n n.props.className += (\" \" + o);\n }\n else n.props.className = o;\n ;\n };\n var m = i.createClass({\n displayName: \"AbstractButton\",\n propTypes: {\n image: function(n, o, p) {\n var q = n[o];\n k(((q == null) || i.isValidComponent(q)));\n return q;\n },\n depressed: h.bool,\n imageOnRight: h.bool,\n href: h.object\n },\n render: function() {\n var n = ((((\"-cx-PRIVATE-abstractButton__root\") + ((this.props.disabled ? (\" \" + \"-cx-PUBLIC-abstractButton__disabled\") : \"\"))) + ((this.props.depressed ? (\" \" + \"-cx-PUBLIC-abstractButton__depressed\") : \"\")))), o = this.props.image, p = this.props.label;\n if ((o && p)) {\n if (this.props.imageOnRight) {\n l(o, \"mls\");\n }\n else l(o, \"mrs\");\n \n };\n var q;\n if (this.props.href) {\n q = g({\n disabled: null\n });\n }\n else {\n var r = (this.props.type || \"submit\");\n q = i.DOM.button({\n type: r\n });\n if ((r === \"submit\")) {\n q.props.value = \"1\";\n };\n }\n ;\n if (this.props.imageOnRight) {\n q.props.children = [p,o,];\n }\n else q.props.children = [o,p,];\n ;\n q.props.className = n;\n q.props.label = null;\n return this.transferPropsTo(q);\n }\n });\n e.exports = m;\n});\n__d(\"XUIButton.react\", [\"AbstractButton.react\",\"ReactPropTypes\",\"React\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"AbstractButton.react\"), h = b(\"ReactPropTypes\"), i = b(\"React\"), j = b(\"cx\"), k = \"medium\", l = i.createClass({\n displayName: \"XUIButton\",\n propTypes: {\n use: h.oneOf([\"default\",\"special\",\"confirm\",]),\n size: h.oneOf([\"small\",\"medium\",\"large\",\"xlarge\",\"xxlarge\",]),\n suppressed: h.bool\n },\n getDefaultProps: function() {\n return {\n use: \"default\",\n size: k,\n suppressed: false\n };\n },\n getButtonSize: function() {\n return (this.props.size || k);\n },\n render: function() {\n var m = this.props.use, n = this.getButtonSize(), o = this.props.suppressed, p = ((((((((((((\"-cx-PRIVATE-xuiButton__root\") + (((n === \"small\") ? (\" \" + \"-cx-PRIVATE-xuiButton__small\") : \"\"))) + (((n === \"medium\") ? (\" \" + \"-cx-PRIVATE-xuiButton__medium\") : \"\"))) + (((n === \"large\") ? (\" \" + \"-cx-PRIVATE-xuiButton__large\") : \"\"))) + (((n === \"xlarge\") ? (\" \" + \"-cx-PRIVATE-xuiButton__xlarge\") : \"\"))) + (((n === \"xxlarge\") ? (\" \" + \"-cx-PRIVATE-xuiButton__xxlarge\") : \"\"))) + (((m === \"default\") ? (\" \" + \"-cx-PRIVATE-xuiButton__default\") : \"\"))) + (((m === \"confirm\") ? (\" \" + \"-cx-PRIVATE-xuiButton__confirm\") : \"\"))) + (((m === \"special\") ? (\" \" + \"-cx-PRIVATE-xuiButton__special\") : \"\"))) + ((o ? (\" \" + \"-cx-PRIVATE-xuiButton__suppressed\") : \"\"))) + ((((m === \"confirm\") || (m === \"special\")) ? (\" \" + \"selected\") : \"\"))));\n return this.transferPropsTo(g({\n className: p\n }));\n }\n });\n e.exports = l;\n});\n__d(\"FeatureDetection\", [\"UserAgent\",], function(a, b, c, d, e, f) {\n var g = b(\"UserAgent\");\n e.exports = {\n isFileAPISupported: function() {\n if (((g.webkit() && !g.chrome()) && g.windows())) {\n return false\n };\n return (((\"FileList\" in window)) && ((\"FormData\" in window)));\n },\n isBlobFactorySupported: function() {\n return !!a.Blob;\n }\n };\n});\n__d(\"AsyncUploadBase\", [\"ArbiterMixin\",\"AsyncRequest\",\"AsyncResponse\",\"Form\",\"FeatureDetection\",\"copyProperties\",\"removeFromArray\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"AsyncRequest\"), i = b(\"AsyncResponse\"), j = b(\"Form\"), k = b(\"FeatureDetection\"), l = b(\"copyProperties\"), m = b(\"removeFromArray\");\n function n(p) {\n this.setURI(p);\n };\n n.isSupported = function() {\n return k.isFileAPISupported();\n };\n l(n.prototype, g, {\n _limit: 10,\n setAllowCrossOrigin: function(p) {\n this._allowCrossOrigin = !!p;\n return this;\n },\n setData: function(p) {\n this._data = p;\n return this;\n },\n setLimit: function(p) {\n this._limit = p;\n return this;\n },\n setRelativeTo: function(p) {\n this._relativeTo = p;\n return this;\n },\n setStatusElement: function(p) {\n this._statusElement = p;\n return this;\n },\n setURI: function(p) {\n this._uri = p;\n return this;\n },\n suspend: function() {\n this._suspended = true;\n return this;\n },\n resume: function() {\n this._suspended = false;\n this._processQueue();\n return this;\n },\n isUploading: function() {\n return this._inFlight;\n },\n _createFileUpload: function(p, q, r) {\n return new o(p, q, r);\n },\n _parseFiles: function(p) {\n var q = {\n };\n for (var r in p) {\n var s = p[r];\n if (Array.isArray(s)) {\n q[r] = s;\n }\n else {\n q[r] = [];\n if ((s instanceof window.FileList)) {\n for (var t = 0; (t < s.length); t++) {\n q[r].push(s.item(t));;\n };\n }\n else if (((s instanceof window.File) || (s instanceof window.Blob))) {\n q[r].push(s);\n }\n ;\n }\n ;\n };\n return q;\n },\n _processQueue: function() {\n if (this._suspended) {\n return\n };\n while ((this._pending.length < this._limit)) {\n if (!this._waiting.length) {\n break;\n };\n var p = this._waiting.shift();\n this._processUpload(p);\n this._pending.push(p);\n };\n },\n _processUpload: function(p) {\n var q = j.createFormData((p.getData() || this._data));\n if (p.getFile()) {\n q.append(p.getName(), p.getFile());\n q.append(\"upload_id\", p.getFile().uploadID);\n }\n ;\n var r = new h().setAllowCrossOrigin(this._allowCrossOrigin).setURI(this._uri).setRawData(q).setRelativeTo(this._relativeTo).setStatusElement(this._statusElement).setHandler(this._success.bind(this, p)).setErrorHandler(this._failure.bind(this, p)).setUploadProgressHandler(this._progress.bind(this, p)).setInitialHandler(this._initial.bind(this, p));\n r.send();\n p.setAsyncRequest(r);\n this._inFlight = true;\n this.inform(\"start\", p);\n },\n _abort: function(p) {\n m(this._waiting, p);\n p.abort();\n },\n _initial: function(p) {\n this.inform(\"initial\", p);\n },\n _success: function(p, q) {\n this._complete(p);\n this.inform(\"success\", p.handleSuccess(q));\n this._processQueue();\n },\n _failure: function(p, q) {\n this._complete(p);\n if ((this.inform(\"failure\", p.handleFailure(q)) !== false)) {\n i.defaultErrorHandler(q);\n };\n this._processQueue();\n },\n _progress: function(p, event) {\n this.inform(\"progress\", p.handleProgress(event));\n },\n _complete: function(p) {\n m(this._pending, p);\n if (!this._pending.length) {\n this._inFlight = false;\n };\n }\n });\n var o = function(p, q, r) {\n this._name = p;\n this._file = q;\n this._data = r;\n this._success = null;\n this._response = null;\n this._progressEvent = null;\n this._request = null;\n };\n l(o.prototype, {\n getName: function() {\n return this._name;\n },\n getFile: function() {\n return this._file;\n },\n getData: function() {\n return this._data;\n },\n isComplete: function() {\n return (this._success !== null);\n },\n isSuccess: function() {\n return (this._success === true);\n },\n getResponse: function() {\n return this._response;\n },\n getProgressEvent: function() {\n return this._progressEvent;\n },\n setAsyncRequest: function(p) {\n this._request = p;\n return this;\n },\n isWaiting: function() {\n return !this._request;\n },\n abort: function() {\n (this._request && this._request.abort());\n this._request = null;\n },\n handleSuccess: function(p) {\n this._success = true;\n this._response = p;\n this._progressEvent = null;\n return this;\n },\n handleFailure: function(p) {\n this._success = false;\n this._response = p;\n this._progressEvent = null;\n return this;\n },\n handleProgress: function(event) {\n this._progressEvent = event;\n return this;\n }\n });\n e.exports = n;\n});\n__d(\"AsyncUploadRequest\", [\"AsyncUploadBase\",\"Class\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncUploadBase\"), h = b(\"Class\"), i = b(\"copyProperties\");\n function j(k) {\n this.parent.construct(this, k);\n };\n j.isSupported = function() {\n return g.isSupported();\n };\n h.extend(j, g);\n i(j.prototype, {\n setFiles: function(k) {\n this._files = this._parseFiles(k);\n return this;\n },\n send: function() {\n if (this._inFlight) {\n return\n };\n this._inFlight = true;\n this._uploads = [];\n for (var k in this._files) {\n this._files[k].forEach(function(l) {\n this._uploads.push(this._createFileUpload(k, l));\n }.bind(this));;\n };\n if (this._uploads.length) {\n this._waiting = this._uploads.slice(0);\n this._pending = [];\n this._processQueue();\n }\n else this._processUpload(this._createFileUpload(null, null));\n ;\n },\n _processQueue: function() {\n this.parent._processQueue();\n if ((!this._pending.length && !this._waiting.length)) {\n this.inform(\"complete\", this._uploads);\n };\n }\n });\n e.exports = j;\n});\n__d(\"CacheStorage\", [\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = {\n memory: k,\n localstorage: i,\n sessionstorage: j\n };\n function i() {\n this._store = a.localStorage;\n };\n i.available = function() {\n try {\n return !!a.localStorage;\n } catch (m) {\n return false;\n };\n };\n g(i.prototype, {\n keys: function() {\n var m = [];\n for (var n = 0; (n < this._store.length); n++) {\n m.push(this._store.key(n));;\n };\n return m;\n },\n get: function(m) {\n return this._store.getItem(m);\n },\n set: function(m, n) {\n this._store.setItem(m, n);\n },\n remove: function(m) {\n this._store.removeItem(m);\n },\n clear: function() {\n this._store.clear();\n }\n });\n function j() {\n this._store = a.sessionStorage;\n };\n j.available = function() {\n try {\n return !!a.sessionStorage;\n } catch (m) {\n return false;\n };\n };\n g(j.prototype, {\n keys: function() {\n var m = [];\n for (var n = 0; (n < this._store.length); n++) {\n m.push(this._store.key(n));;\n };\n return m;\n },\n get: function(m) {\n return this._store.getItem(m);\n },\n set: function(m, n) {\n this._store.setItem(m, n);\n },\n remove: function(m) {\n this._store.removeItem(m);\n },\n clear: function() {\n this._store.clear();\n }\n });\n function k() {\n this._store = {\n };\n };\n k.available = function() {\n return true;\n };\n g(k.prototype, {\n keys: function() {\n return Object.keys(this._store);\n },\n get: function(m) {\n if ((this._store[m] === undefined)) {\n return null\n };\n return this._store[m];\n },\n set: function(m, n) {\n this._store[m] = n;\n },\n remove: function(m) {\n if ((m in this._store)) {\n delete this._store[m];\n };\n },\n clear: function() {\n this._store = {\n };\n }\n });\n function l(m, n) {\n this._key_prefix = (n || \"_cs_\");\n this._magic_prefix = \"_@_\";\n if (((m == \"AUTO\") || !m)) {\n for (var o in h) {\n var p = h[o];\n if (p.available()) {\n m = o;\n break;\n }\n ;\n }\n };\n if (m) {\n if ((typeof m == \"string\")) {\n if ((!h[m] || !h[m].available())) {\n this._backend = new k();\n }\n else this._backend = new h[m]();\n ;\n }\n else if ((!m.available || !m.available())) {\n this._backend = new k();\n }\n else this._backend = m;\n \n \n };\n };\n g(l, {\n getAllStorageTypes: function() {\n return Object.keys(h);\n }\n });\n g(l.prototype, {\n keys: function() {\n var m = [];\n try {\n if (this._backend) {\n var o = this._backend.keys();\n for (var p = 0; (p < o.length); p++) {\n if ((o[p].substr(0, this._key_prefix.length) == this._key_prefix)) {\n m.push(o[p].substr(this._key_prefix.length));\n };\n };\n }\n ;\n } catch (n) {\n \n };\n return m;\n },\n set: function(m, n) {\n if (this._backend) {\n if ((typeof n == \"string\")) {\n n = (this._magic_prefix + n);\n }\n else n = JSON.stringify(n);\n ;\n try {\n this._backend.set((this._key_prefix + m), n);\n } catch (o) {\n \n };\n }\n ;\n },\n get: function(m, n) {\n var o;\n if (this._backend) {\n try {\n o = this._backend.get((this._key_prefix + m));\n } catch (p) {\n o = null;\n };\n if ((o !== null)) {\n if ((o.substr(0, this._magic_prefix.length) == this._magic_prefix)) {\n o = o.substr(this._magic_prefix.length);\n }\n else try {\n o = JSON.parse(o);\n } catch (q) {\n o = undefined;\n }\n ;\n }\n else o = undefined;\n ;\n }\n ;\n if (((o === undefined) && (n !== undefined))) {\n o = n;\n if (this._backend) {\n var r;\n if ((typeof o == \"string\")) {\n r = (this._magic_prefix + o);\n }\n else r = JSON.stringify(o);\n ;\n try {\n this._backend.set((this._key_prefix + m), r);\n } catch (p) {\n \n };\n }\n ;\n }\n ;\n return o;\n },\n remove: function(m) {\n if (this._backend) {\n try {\n this._backend.remove((this._key_prefix + m));\n } catch (n) {\n \n }\n };\n }\n });\n e.exports = l;\n});\n__d(\"DOMWrapper\", [], function(a, b, c, d, e, f) {\n var g, h, i = {\n setRoot: function(j) {\n g = j;\n },\n getRoot: function() {\n return (g || document.body);\n },\n setWindow: function(j) {\n h = j;\n },\n getWindow: function() {\n return (h || self);\n }\n };\n e.exports = i;\n});\n__d(\"Flash\", [\"DOMWrapper\",\"QueryString\",\"UserAgent\",\"copyProperties\",\"guid\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMWrapper\"), h = b(\"QueryString\"), i = b(\"UserAgent\"), j = b(\"copyProperties\"), k = b(\"guid\"), l = {\n }, m, n = g.getWindow().document;\n function o(t) {\n var u = n.getElementById(t);\n if (u) {\n u.parentNode.removeChild(u);\n };\n delete l[t];\n };\n function p() {\n for (var t in l) {\n if (l.hasOwnProperty(t)) {\n o(t);\n };\n };\n };\n function q(t) {\n return t.replace(/\\d+/g, function(u) {\n return (\"000\".substring(u.length) + u);\n });\n };\n function r(t) {\n if (!m) {\n if ((i.ie() >= 9)) {\n window.attachEvent(\"onunload\", p);\n };\n m = true;\n }\n ;\n l[t] = t;\n };\n var s = {\n embed: function(t, u, v, w) {\n var x = k();\n t = encodeURI(t);\n v = j({\n allowscriptaccess: \"always\",\n flashvars: w,\n movie: t\n }, (v || {\n }));\n if ((typeof v.flashvars == \"object\")) {\n v.flashvars = h.encode(v.flashvars);\n };\n var y = [];\n for (var z in v) {\n if ((v.hasOwnProperty(z) && v[z])) {\n y.push(((((\"\\u003Cparam name=\\\"\" + encodeURI(z)) + \"\\\" value=\\\"\") + encodeURI(v[z])) + \"\\\"\\u003E\"));\n };\n };\n var aa = n.createElement(\"div\"), ba = (((((((((\"\\u003Cobject \" + ((i.ie() ? \"classid=\\\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\\\" \" : \"type=\\\"application/x-shockwave-flash\\\"\"))) + \"data=\\\"\") + t) + \"\\\" \") + \"id=\\\"\") + x) + \"\\\"\\u003E\") + y.join(\"\")) + \"\\u003C/object\\u003E\");\n aa.innerHTML = ba;\n var ca = u.appendChild(aa.firstChild);\n r(x);\n return ca;\n },\n remove: o,\n getVersion: function() {\n var t = \"Shockwave Flash\", u = \"application/x-shockwave-flash\", v = \"ShockwaveFlash.ShockwaveFlash\", w;\n if ((navigator.plugins && (typeof navigator.plugins[t] == \"object\"))) {\n var x = navigator.plugins[t].description;\n if ((((x && navigator.mimeTypes) && navigator.mimeTypes[u]) && navigator.mimeTypes[u].enabledPlugin)) {\n w = x.match(/\\d+/g);\n };\n }\n ;\n if (!w) {\n try {\n w = (new ActiveXObject(v)).GetVariable(\"$version\").match(/(\\d+),(\\d+),(\\d+),(\\d+)/);\n w = Array.prototype.slice.call(w, 1);\n } catch (y) {\n \n }\n };\n return w;\n },\n checkMinVersion: function(t) {\n var u = s.getVersion();\n if (!u) {\n return false\n };\n return (q(u.join(\".\")) >= q(t));\n },\n isAvailable: function() {\n return !!s.getVersion();\n }\n };\n e.exports = s;\n});\n__d(\"PhotosUploadWaterfall\", [\"AsyncSignal\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncSignal\"), h = {\n APP_FLASH: \"flash_pro\",\n APP_SIMPLE: \"simple\",\n APP_ARCHIVE: \"archive\",\n APP_COMPOSER: \"composer\",\n APP_MESSENGER: \"messenger\",\n APP_HTML5: \"html5\",\n APP_CHAT: \"chat\",\n INSTALL_CANCEL: 1,\n INSTALL_INSTALL: 2,\n INSTALL_UPDATE: 3,\n INSTALL_REINSTALL: 4,\n INSTALL_PERMA_CANCEL: 5,\n INSTALL_SILENT_SKIP: 6,\n INSTALL_DOWNLOAD: 7,\n CERROR_RESIZING_FAILED: 6,\n CERROR_MARKER_EXTRACTION_FAILED: 9,\n BEGIN: 1,\n UPLOAD_START: 4,\n ALL_UPLOADS_DONE: 6,\n CLIENT_ERROR: 7,\n RECOVERABLE_CLIENT_ERROR: 12,\n IMAGES_SELECTED: 9,\n UPGRADE_REQUIRED: 11,\n VERSION: 15,\n SELECT_START: 18,\n SELECT_CANCELED: 19,\n CANCEL: 22,\n CANCEL_DURING_UPLOAD: 83,\n ONE_RESIZING_START: 2,\n ONE_UPLOAD_DONE: 29,\n ONE_RESIZING_DONE: 34,\n PROGRESS_BAR_STOPPED: 44,\n MISSED_BEAT: 45,\n HEART_ATTACK: 46,\n PUBLISH_START: 100,\n PUBLISH_SUCCESS: 101,\n PUBLISH_FAILURE: 102,\n SESSION_POSTED: 72,\n POST_PUBLISHED: 80,\n ONE_UPLOAD_CANCELED: 81,\n ONE_UPLOAD_CANCELED_DURING_UPLOAD: 82,\n RESIZER_AVAILABLE: 20,\n OVERLAY_FIRST: 61,\n ASYNC_AVAILABLE: 63,\n FALLBACK_TO_FLASH: 13,\n RETRY_UPLOAD: 17,\n TAGGED_ALL_FACES: 14,\n VAULT_IMAGES_SELECTED: 62,\n VAULT_CREATE_POST_CANCEL: 65,\n VAULT_SEND_IN_MESSAGE_CLICKED: 66,\n VAULT_DELETE_CANCEL: 68,\n VAULT_ADD_TO_ALBUM_CANCEL: 74,\n VAULT_SHARE_IN_AN_ALBUM_CLICKED: 76,\n VAULT_SHARE_OWN_TIMELINE_CLICKED: 77,\n VAULT_SHARE_FRIENDS_TIMELINE_CLICKED: 78,\n VAULT_SHARE_IN_A_GROUP_CLICKED: 79,\n VAULT_SYNCED_PAGED_LINK_CLICKED: 84,\n METHOD_DRAGDROP: \"dragdrop\",\n METHOD_FILE_SELECTOR: \"file_selector\",\n METHOD_VAULT: \"vault\",\n METHOD_PHOTOS_OF_YOU: \"photos_of_you\",\n METHOD_RECENT_PHOTOS: \"recent_photos\",\n VAULTBOX: \"vaultbox\",\n GRID: \"grid\",\n SPOTLIGHT_VAULT_VIEWER: \"spotlight_vault_viewer\",\n REF_VAULT_NOTIFICATION: \"vault_notification\",\n sendSignal: function(i, j) {\n new g(\"/ajax/photos/waterfall.php\", {\n data: JSON.stringify(i)\n }).setHandler(j).send();\n }\n };\n e.exports = h;\n});"); |
| // 15786 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"sd1808efce0daa190ec2ad760a02db38d236b794b"); |
| // 15787 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"TXKLp\",]);\n}\n;\n;\n__d(\"ChatFavoriteList\", [\"AsyncRequest\",\"arrayContains\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"arrayContains\"), i = b(\"emptyFunction\"), j = false, k = [], l = [], m = false;\n function n() {\n var r = k.join(\",\");\n new g(\"/ajax/chat/favorite_list.php\").setData({\n favorite_list: r\n }).setHandler(i).setErrorHandler(i).send();\n };\n;\n function o(r) {\n return r.toString();\n };\n;\n function p(r) {\n if (((k.length != r.length))) {\n return true;\n }\n ;\n ;\n for (var s = 0; ((s < r.length)); s++) {\n if (((k[s] !== r[s].toString()))) {\n return true;\n }\n ;\n ;\n };\n ;\n return false;\n };\n;\n var q = {\n isEditMode: function() {\n var r = null;\n d([\"ChatSidebar\",], function(s) {\n r = s;\n });\n return ((((j && r)) && r.isEnabled()));\n },\n toggleEditMode: function() {\n j = !j;\n if (j) {\n l = k.slice();\n }\n ;\n ;\n },\n get: function() {\n if (j) {\n return l.slice();\n }\n else return k.slice()\n ;\n },\n isFavored: function(r) {\n return h(l, r.toString());\n },\n init: function(r) {\n k = r.slice().map(o);\n l = k.slice();\n },\n toggleID: function(r) {\n if (!j) {\n return;\n }\n ;\n ;\n r = r.toString();\n var s = l.indexOf(r);\n if (((s >= 0))) {\n l.splice(s, 1);\n }\n else l.push(r);\n ;\n ;\n m = true;\n },\n hasChanged: function() {\n if (m) {\n m = false;\n return true;\n }\n ;\n ;\n return false;\n },\n updateList: function(r) {\n if (!j) {\n return;\n }\n ;\n ;\n l = r.map(o);\n },\n save: function() {\n if (p(l)) {\n k = l;\n n();\n }\n ;\n ;\n }\n };\n e.exports = q;\n});\n__d(\"ChatContexts\", [], function(a, b, c, d, e, f) {\n var g = {\n };\n function h(k) {\n var l = ((k ? k.subtext : \"\"));\n return l;\n };\n;\n function i(k, l) {\n g[k] = l;\n };\n;\n var j = {\n get: function(k) {\n if (((k in g))) {\n return g[k];\n }\n else return null\n ;\n },\n update: function(k) {\n {\n var fin269keys = ((window.top.JSBNG_Replay.forInKeys)((k))), fin269i = (0);\n var l;\n for (; (fin269i < fin269keys.length); (fin269i++)) {\n ((l) = (fin269keys[fin269i]));\n {\n i(l, k[l]);\n ;\n };\n };\n };\n ;\n },\n getShortDisplay: function(k) {\n return h(j.get(k));\n }\n };\n e.exports = j;\n});\n__d(\"LastMobileActiveTimes\", [\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"tx\"), h = 0, i = {\n };\n function j(n) {\n if (((!h || !n))) {\n return \"\";\n }\n ;\n ;\n var o = ((h - n)), p = Math.floor(((o / 60))), q = Math.floor(((p / 60))), r = Math.floor(((q / 24)));\n if (((p <= 1))) {\n return g._(\"{count}m\", {\n count: 1\n });\n }\n else if (((p < 60))) {\n return g._(\"{count}m\", {\n count: p\n });\n }\n else if (((q < 24))) {\n return g._(\"{count}h\", {\n count: q\n });\n }\n else if (((r < 3))) {\n return g._(\"{count}d\", {\n count: r\n });\n }\n else return \"\"\n \n \n \n ;\n };\n;\n function k(n, o) {\n i[n] = o;\n };\n;\n function l(n) {\n if (((n in i))) {\n return i[n];\n }\n else return 0\n ;\n };\n;\n var m = {\n update: function(n, o) {\n h = ((o / 1000));\n {\n var fin270keys = ((window.top.JSBNG_Replay.forInKeys)((n))), fin270i = (0);\n var p;\n for (; (fin270i < fin270keys.length); (fin270i++)) {\n ((p) = (fin270keys[fin270i]));\n {\n k(p, n[p]);\n ;\n };\n };\n };\n ;\n },\n getShortDisplay: function(n) {\n return j(l(n));\n }\n };\n e.exports = m;\n});\n__d(\"ServerTime\", [\"PresenceInitialData\",], function(a, b, c, d, e, f) {\n var g = b(\"PresenceInitialData\"), h;\n function i(k) {\n h = ((JSBNG__Date.now() - k));\n };\n;\n i(g.serverTime);\n var j = {\n get: function() {\n return ((JSBNG__Date.now() - h));\n },\n getSkew: function() {\n return h;\n },\n update: function(k) {\n i(k);\n }\n };\n e.exports = j;\n});\n__d(\"PresenceStatus\", [\"AvailableListConstants\",\"ChatConfig\",\"ChatVisibility\",\"Env\",\"PresencePrivacy\",\"ServerTime\",\"createObjectFrom\",], function(a, b, c, d, e, f) {\n var g = b(\"AvailableListConstants\"), h = b(\"ChatConfig\"), i = b(\"ChatVisibility\"), j = b(\"Env\"), k = b(\"PresencePrivacy\"), l = b(\"ServerTime\"), m = b(\"createObjectFrom\"), n = {\n }, o = {\n }, p = {\n }, q = {\n }, r = {\n }, s = {\n resetPresenceData: function() {\n n = {\n };\n r = {\n };\n q = {\n };\n },\n reset: function() {\n s.resetPresenceData();\n o = {\n };\n p = {\n };\n },\n get: function(t) {\n if (((t == j.user))) {\n return ((i.isOnline() ? g.ACTIVE : g.OFFLINE));\n }\n ;\n ;\n var u = g.OFFLINE;\n if (((t in n))) {\n u = n[t];\n }\n ;\n ;\n if (!k.allows(t)) {\n u = g.OFFLINE;\n }\n ;\n ;\n if (((u == g.OFFLINE))) {\n if (o[t]) {\n u = g.MOBILE;\n }\n ;\n }\n ;\n ;\n return u;\n },\n isBirthday: function(t) {\n return p[t];\n },\n getGroup: function(t) {\n if (!h.get(\"chat_group_presence\", 0)) {\n return g.OFFLINE;\n }\n ;\n ;\n return ((t.some(function(u) {\n if (((u == j.user))) {\n return false;\n }\n ;\n ;\n return ((s.get(u) === g.ACTIVE));\n }) ? g.ACTIVE : g.OFFLINE));\n },\n set: function(t, u, v, w) {\n if (((t == j.user))) {\n return false;\n }\n ;\n ;\n switch (u) {\n case g.OFFLINE:\n \n case g.IDLE:\n \n case g.ACTIVE:\n \n case g.MOBILE:\n break;\n default:\n return false;\n };\n ;\n var x = ((s.get(t) != u));\n if (v) {\n q[t] = l.get();\n r[t] = w;\n }\n ;\n ;\n n[t] = u;\n return x;\n },\n setMobileFriends: function(t) {\n o = m(t);\n },\n setBirthdayFriends: function(t) {\n p = m(t);\n },\n getOnlineIDs: function() {\n var t, u = [];\n {\n var fin271keys = ((window.top.JSBNG_Replay.forInKeys)((n))), fin271i = (0);\n (0);\n for (; (fin271i < fin271keys.length); (fin271i++)) {\n ((t) = (fin271keys[fin271i]));\n {\n if (((s.get(t) === g.ACTIVE))) {\n u.push(t);\n }\n ;\n ;\n };\n };\n };\n ;\n return u;\n },\n getAvailableIDs: function() {\n var t = s.getOnlineIDs(), u;\n {\n var fin272keys = ((window.top.JSBNG_Replay.forInKeys)((o))), fin272i = (0);\n (0);\n for (; (fin272i < fin272keys.length); (fin272i++)) {\n ((u) = (fin272keys[fin272i]));\n {\n if (n[u]) {\n continue;\n }\n ;\n ;\n t.push(u);\n };\n };\n };\n ;\n return t;\n },\n getOnlineCount: function() {\n return s.getOnlineIDs().length;\n },\n getPresenceStats: function() {\n var t = 0, u = 0, v = 0, w = 0, x = 0;\n {\n var fin273keys = ((window.top.JSBNG_Replay.forInKeys)((n))), fin273i = (0);\n var y;\n for (; (fin273i < fin273keys.length); (fin273i++)) {\n ((y) = (fin273keys[fin273i]));\n {\n t += 1;\n switch (s.get(y)) {\n case g.OFFLINE:\n u += 1;\n break;\n case g.IDLE:\n v += 1;\n break;\n case g.ACTIVE:\n w += 1;\n break;\n case g.MOBILE:\n x += 1;\n break;\n default:\n break;\n };\n ;\n };\n };\n };\n ;\n return {\n total: t,\n offline: u,\n idle: v,\n active: w,\n mobile: x\n };\n },\n getDebugInfo: function(t) {\n return {\n id: t,\n presence: n[t],\n overlaySource: r[t],\n overlayTime: q[t],\n mobile: o[t]\n };\n }\n };\n e.exports = s;\n});\n__d(\"PresencePoller\", [\"AvailableListConstants\",\"AvailableListInitialData\",\"BanzaiODS\",\"ChannelImplementation\",\"ChatContexts\",\"ChatFavoriteList\",\"ChatVisibility\",\"Env\",\"JSLogger\",\"LastMobileActiveTimes\",\"Poller\",\"PresenceStatus\",\"PresenceUtil\",\"ServerTime\",\"ShortProfiles\",\"UserActivity\",\"copyProperties\",\"debounceAcrossTransitions\",], function(a, b, c, d, e, f) {\n var g = b(\"AvailableListConstants\"), h = b(\"AvailableListInitialData\"), i = b(\"BanzaiODS\"), j = b(\"ChannelImplementation\").instance, k = b(\"ChatContexts\"), l = b(\"ChatFavoriteList\"), m = b(\"ChatVisibility\"), n = b(\"Env\"), o = b(\"JSLogger\"), p = b(\"LastMobileActiveTimes\"), q = b(\"Poller\"), r = b(\"PresenceStatus\"), s = b(\"PresenceUtil\"), t = b(\"ServerTime\"), u = b(\"ShortProfiles\"), v = b(\"UserActivity\"), w = b(\"copyProperties\"), x = b(\"debounceAcrossTransitions\"), y = 5, z = \"/ajax/chat/buddy_list.php\", aa = 1800000, ba = h.pollInterval, ca = h.lazyPollInterval, da = h.lazyThreshold, ea = o.create(\"available_list\"), fa = \"presence_poller\";\n i.setEntitySample(fa, 4998);\n function ga(ha) {\n this.$PresencePoller0 = ha;\n this.$PresencePoller1 = false;\n this.$PresencePoller2 = h.chatNotif;\n this.$PresencePoller3 = new q({\n interval: ba,\n setupRequest: this.$PresencePoller4.bind(this),\n clearOnQuicklingEvents: false,\n dontStart: true\n });\n this.$PresencePoller5 = JSBNG__Date.now();\n this.$PresencePoller6 = JSBNG__Date.now();\n this.$PresencePoller7 = JSBNG__Date.now();\n this.$PresencePoller8 = h.updateTime;\n this.$PresencePoller9 = false;\n this.$PresencePollera = 0;\n if (h.favoriteList) {\n l.init(h.favoriteList);\n }\n ;\n ;\n this.$PresencePollerb(\"available_initial_data\", h.updateTime, h.availableList, h.lastActiveTimes, h.mobileFriends, h.birthdayFriends);\n v.subscribe(function(ia, ja) {\n if (((ja.idleness > ba))) {\n this.forceUpdate();\n }\n ;\n ;\n }.bind(this));\n };\n;\n ga.prototype.start = function() {\n this.$PresencePoller3.start.bind(this.$PresencePoller3).defer();\n };\n ga.prototype.forceUpdate = function() {\n if (!this.$PresencePoller9) {\n this.$PresencePoller3.request();\n }\n ;\n ;\n };\n ga.prototype.getIsUserIdle = function() {\n return this.$PresencePoller1;\n };\n ga.prototype.getWebChatNotification = function() {\n return this.$PresencePoller2;\n };\n ga.prototype.getCallback = function() {\n return this.$PresencePoller0;\n };\n ga.prototype.$PresencePollerc = function() {\n return x(function() {\n this.$PresencePoller0(g.ON_AVAILABILITY_CHANGED);\n }.bind(this), 0)();\n };\n ga.prototype.$PresencePollerb = function(ha, ia, ja, ka, la, ma) {\n this.$PresencePoller8 = ia;\n if (!Array.isArray(ja)) {\n r.resetPresenceData();\n {\n var fin274keys = ((window.top.JSBNG_Replay.forInKeys)((ja))), fin274i = (0);\n var na;\n for (; (fin274i < fin274keys.length); (fin274i++)) {\n ((na) = (fin274keys[fin274i]));\n {\n r.set(na, ja[na].a, false, ha);\n ;\n };\n };\n };\n ;\n }\n ;\n ;\n if (ka) {\n p.update(ka, ia);\n }\n ;\n ;\n if (la) {\n r.setMobileFriends(la);\n }\n ;\n ;\n if (ma) {\n r.setBirthdayFriends(ma);\n }\n ;\n ;\n this.$PresencePollerc();\n };\n ga.prototype.$PresencePoller4 = function(ha) {\n if (((j.isShutdown() || !m.isOnline()))) {\n this.$PresencePoller3.skip();\n i.bumpEntityKey(fa, \"skip.offline\");\n return;\n }\n ;\n ;\n if (((((JSBNG__Date.now() - this.$PresencePoller5)) < ba))) {\n this.$PresencePoller3.skip();\n i.bumpEntityKey(fa, \"skip.recent\");\n return;\n }\n ;\n ;\n i.bumpEntityKey(fa, \"request\");\n this.$PresencePoller5 = JSBNG__Date.now();\n var ia = ((((JSBNG__Date.now() - this.$PresencePoller7)) > aa)), ja = u.getCachedProfileIDs().join(\",\");\n this.$PresencePoller9 = true;\n ha.setHandler(this.$PresencePollerd.bind(this)).setErrorHandler(this.$PresencePollere.bind(this)).setOption(\"suppressErrorAlerts\", true).setOption(\"retries\", 1).setData({\n user: n.user,\n cached_user_info_ids: ja,\n fetch_mobile: ia\n }).setURI(z).setAllowCrossPageTransition(true);\n };\n ga.prototype.$PresencePollerd = function(ha) {\n var ia = ha.getPayload(), ja = ia.buddy_list;\n if (!ja) {\n this.$PresencePollere(ha);\n return;\n }\n ;\n ;\n i.bumpEntityKey(fa, \"response\");\n this.$PresencePoller9 = false;\n this.$PresencePollerf();\n this.$PresencePoller6 = JSBNG__Date.now();\n t.update(ia.time);\n this.$PresencePollera = 0;\n this.$PresencePollerg();\n var ka = ja.userInfos;\n if (ka) {\n u.setMulti(ka);\n }\n ;\n ;\n var la = ja.chatContexts;\n ((la && k.update(la)));\n this.$PresencePoller1 = ja.userIsIdle;\n if (((ja.chatNotif !== undefined))) {\n this.$PresencePoller2 = ja.chatNotif;\n this.$PresencePoller0(g.ON_CHAT_NOTIFICATION_CHANGED, this.$PresencePoller2);\n }\n ;\n ;\n this.$PresencePollerb(\"buddy_list_poller\", ia.time, ja.nowAvailableList, ja.last_active_times, ja.mobile_friends, ja.todays_birthdays);\n };\n ga.prototype.$PresencePollere = function(ha) {\n i.bumpEntityKey(fa, \"error\");\n if (s.checkMaintenanceError(ha)) {\n return;\n }\n ;\n ;\n this.$PresencePoller9 = false;\n this.$PresencePollera++;\n if (((this.$PresencePollera++ >= y))) {\n this.$PresencePoller0(g.ON_UPDATE_ERROR);\n }\n ;\n ;\n };\n ga.prototype.$PresencePollerg = function() {\n var ha = ((v.isActive(da) ? ba : ca));\n i.bumpEntityKey(fa, ((\"period.\" + ha)));\n this.$PresencePoller3.JSBNG__setInterval(ha);\n };\n ga.prototype.$PresencePollerf = function() {\n var ha = JSBNG__Date.now(), ia = ((ha - this.$PresencePoller6));\n ea.log(\"buddylist_presence_stats\", w({\n duration: ia\n }, r.getPresenceStats()));\n };\n e.exports = ga;\n});\n__d(\"AvailableList\", [\"function-extensions\",\"Arbiter\",\"ArbiterMixin\",\"AsyncRequest\",\"AvailableListConstants\",\"ChannelImplementation\",\"ChannelConstants\",\"ChatConfig\",\"ChatFavoriteList\",\"JSLogger\",\"PresencePoller\",\"PresencePrivacy\",\"PresenceStatus\",\"ShortProfiles\",\"TypingDetector\",\"copyProperties\",\"debounceAcrossTransitions\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"Arbiter\"), h = b(\"ArbiterMixin\"), i = b(\"AsyncRequest\"), j = b(\"AvailableListConstants\"), k = b(\"ChannelImplementation\").instance, l = b(\"ChannelConstants\"), m = b(\"ChatConfig\"), n = b(\"ChatFavoriteList\"), o = b(\"JSLogger\"), p = b(\"PresencePoller\"), q = b(\"PresencePrivacy\"), r = b(\"PresenceStatus\"), s = b(\"ShortProfiles\"), t = b(\"TypingDetector\"), u = b(\"copyProperties\"), v = b(\"debounceAcrossTransitions\"), w = b(\"emptyFunction\"), x = u({\n }, j, h);\n x.subscribe([j.ON_AVAILABILITY_CHANGED,j.ON_UPDATE_ERROR,], function(ea, fa) {\n g.inform(ea, fa);\n });\n var y = v(function() {\n x.inform(j.ON_AVAILABILITY_CHANGED);\n }, 0);\n function z(ea, fa, ga, ha) {\n var ia = r.set(ea, fa, ga, ha);\n if (ia) {\n y();\n }\n ;\n ;\n };\n;\n function aa(ea) {\n var fa = ((ea.payload.availability || {\n }));\n {\n var fin275keys = ((window.top.JSBNG_Replay.forInKeys)((fa))), fin275i = (0);\n var ga;\n for (; (fin275i < fin275keys.length); (fin275i++)) {\n ((ga) = (fin275keys[fin275i]));\n {\n z(ga, fa[ga], true, \"mercury_tabs\");\n ;\n };\n };\n };\n ;\n };\n;\n function ba(ea) {\n var fa = x.getDebugInfo(ea), ga = ((fa.presence == j.ACTIVE)), ha = new i(\"/ajax/mercury/tabs_presence.php\").setData({\n target_id: ea,\n to_online: ga,\n presence_source: fa.overlaySource,\n presence_time: fa.overlayTime\n }).setHandler(aa).setErrorHandler(w).setAllowCrossPageTransition(true).send();\n };\n;\n function ca(ea, fa) {\n fa.chat_config = m.getDebugInfo();\n fa.available_list_debug_info = {\n };\n x.getAvailableIDs().forEach(function(ga) {\n fa.available_list_debug_info[ga] = x.getDebugInfo(ga);\n });\n fa.available_list_poll_interval = ((x._poller && x._poller.getInterval()));\n };\n;\n var da = new p(function(JSBNG__event) {\n x.inform(JSBNG__event);\n });\n u(x, {\n get: function(ea) {\n return r.get(ea);\n },\n updateForID: function(ea) {\n ba(ea);\n },\n getWebChatNotification: function() {\n return da.getWebChatNotification();\n },\n isUserIdle: function() {\n return da.getIsUserIdle();\n },\n isReady: function() {\n return true;\n },\n set: function(ea, fa, ga) {\n z(ea, fa, true, ga);\n },\n update: function() {\n da.forceUpdate();\n },\n isIdle: function(ea) {\n return ((x.get(ea) == j.IDLE));\n },\n getOnlineIDs: function() {\n return r.getOnlineIDs();\n },\n getAvailableIDs: function() {\n return r.getAvailableIDs();\n },\n getOnlineCount: function() {\n return r.getOnlineCount();\n },\n getDebugInfo: function(ea) {\n var fa = r.getDebugInfo(ea), ga = s.getNow(ea);\n if (ga) {\n fa.JSBNG__name = ga.JSBNG__name;\n }\n ;\n ;\n return fa;\n }\n });\n da.start();\n g.subscribe(o.DUMP_EVENT, ca);\n g.subscribe(l.getArbiterType(\"favorite_list\"), function(ea, fa) {\n var ga = fa.obj, ha = ((ga.value ? ga.value.split(\",\") : []));\n n.init(ha);\n y();\n });\n q.subscribe([\"privacy-changed\",\"privacy-availability-changed\",\"privacy-user-presence-response\",], y);\n k.subscribe([k.CONNECTED,k.RECONNECTING,k.SHUTDOWN,k.MUTE_WARNING,k.UNMUTE_WARNING,], y);\n g.subscribe(l.getArbiterType(\"buddylist_overlay\"), function(ea, fa) {\n var ga = fa.obj.overlay;\n {\n var fin276keys = ((window.top.JSBNG_Replay.forInKeys)((ga))), fin276i = (0);\n var ha;\n for (; (fin276i < fin276keys.length); (fin276i++)) {\n ((ha) = (fin276keys[fin276i]));\n {\n x.set(ha, ga[ha].a, ((ga[ha].s || \"channel\")));\n ;\n };\n };\n };\n ;\n });\n g.subscribe([l.getArbiterType(\"typ\"),l.getArbiterType(\"ttyp\"),], function(ea, fa) {\n var ga = fa.obj;\n if (((ga.st === t.TYPING))) {\n var ha = ga.from;\n x.set(ha, j.ACTIVE, \"channel-typing\");\n }\n ;\n ;\n });\n a.AvailableList = e.exports = x;\n});\n__d(\"ChatImpressionLogger\", [\"AvailableList\",\"AsyncSignal\",\"ChatConfig\",\"ChatVisibility\",\"Poller\",], function(a, b, c, d, e, f) {\n var g = b(\"AvailableList\"), h = b(\"AsyncSignal\"), i = b(\"ChatConfig\"), j = b(\"ChatVisibility\"), k = b(\"Poller\"), l = null, m = null, n = {\n init: function(o) {\n l = o;\n var p = i.get(\"chat_impression_logging_periodical\", 0);\n if (p) {\n var q = i.get(\"periodical_impression_logging_config.interval\");\n m = new k({\n interval: q,\n setupRequest: this.logImps.bind(this),\n clearOnQuicklingEvents: false\n });\n }\n ;\n ;\n this.init = function() {\n \n };\n },\n logImps: function(o) {\n if (!j.isOnline()) {\n return;\n }\n ;\n ;\n var p = {\n source: \"periodical_imps\"\n }, q = l.getCachedSortedList(), r = [];\n for (var s = 0; ((s < q.length)); s++) {\n r[s] = g.get(q[s]);\n ;\n };\n ;\n p.sorted_list = q.toString();\n p.list_availability = r.toString();\n o.setURI(\"/ajax/chat/imps_logging.php\").setData(p);\n },\n getOrderedList: function() {\n return l;\n },\n logImpressions: function(o) {\n var p = [], q = [];\n if (i.get(\"chat_impression_logging_with_click\")) {\n p = l.getCachedSortedList();\n for (var r = 0; ((r < p.length)); r++) {\n q[r] = g.get(p[r]);\n ;\n };\n ;\n }\n ;\n ;\n o.sorted_list = p.toString();\n o.list_availability = q.toString();\n new h(\"/ajax/chat/ct.php\", o).send();\n }\n };\n e.exports = n;\n});\n__d(\"ChatTypeaheadConstants\", [], function(a, b, c, d, e, f) {\n var g = {\n USER_TYPE: \"user\",\n THREAD_TYPE: \"thread\",\n FRIEND_TYPE: \"friend\",\n NON_FRIEND_TYPE: \"non_friend\",\n HEADER_TYPE: \"header\"\n };\n e.exports = g;\n});\n__d(\"Chat\", [\"Arbiter\",\"AvailableList\",\"ChatImpressionLogger\",\"ChatTypeaheadConstants\",\"MercuryParticipantTypes\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AvailableList\"), i = b(\"ChatImpressionLogger\"), j = b(\"ChatTypeaheadConstants\"), k = b(\"MercuryParticipantTypes\");\n function l(q, r) {\n var s = ((r && r.source));\n if (((((((((((((((s && ((s === \"ordered_list\")))) || ((s === \"more_online_friends\")))) || ((s === \"online_friends\")))) || ((s === \"recent_threads_in_divebar_new\")))) || ((s === \"recent_threads_in_divebar\")))) || ((s === \"presence\")))) || ((s === \"typeahead\"))))) {\n r.viewport_width = JSBNG__document.body.clientWidth;\n r.target = q;\n r.target_presence = h.get(q);\n i.logImpressions(r);\n }\n ;\n ;\n };\n;\n var m = {\n buddyListNub: \"buddylist-nub/initialized\",\n JSBNG__sidebar: \"sidebar/initialized\"\n };\n function n(q, r) {\n g.subscribe(m[q], function(JSBNG__event, s) {\n r(s);\n });\n };\n;\n function o() {\n return ((((Math.JSBNG__random() * 2147483648)) | 0)).toString(16);\n };\n;\n var p = {\n openTab: function(q, r, s) {\n if (((((window.External && window.External.Chat)) && window.External.Chat.openWindow))) {\n window.External.Chat.openWindow(q);\n }\n ;\n ;\n l.curry(q, s).defer();\n d([\"MercuryThreads\",], function(t) {\n if (((((((!r || ((r === k.FRIEND)))) || ((r === j.FRIEND_TYPE)))) || ((r === j.USER_TYPE))))) {\n var u = t.get().getCanonicalThreadToUser(q), v = o();\n g.inform(\"chat/open-tab\", {\n thread_id: u.thread_id,\n signature_id: v\n });\n return;\n }\n ;\n ;\n if (((r === j.THREAD_TYPE))) {\n d([\"ChatOpenTab\",], function(w) {\n if (q) {\n w.openThread(q);\n }\n else w.openEmptyTab();\n ;\n ;\n });\n }\n ;\n ;\n });\n },\n openBuddyList: function() {\n n(\"buddyListNub\", function(q) {\n q.show();\n n(\"JSBNG__sidebar\", function(r) {\n r.enable();\n });\n });\n },\n closeBuddyList: function() {\n n(\"buddyListNub\", function(q) {\n q.hide();\n });\n },\n toggleSidebar: function() {\n n(\"JSBNG__sidebar\", function(q) {\n q.toggle();\n });\n },\n goOnline: function(q) {\n d([\"ChatVisibility\",], function(r) {\n r.goOnline(q);\n });\n },\n isOnline: function() {\n var q = null;\n d([\"ChatVisibility\",], function(r) {\n q = r;\n });\n return ((q && q.isOnline()));\n }\n };\n a.Chat = e.exports = p;\n}, 3);\n__d(\"OrderedFriendsList\", [\"AvailableList\",\"ChatConfig\",\"createArrayFrom\",\"ShortProfiles\",\"InitialChatFriendsList\",], function(a, b, c, d, e, f) {\n var g = b(\"AvailableList\"), h = b(\"ChatConfig\"), i = b(\"createArrayFrom\"), j = b(\"ShortProfiles\"), k = [], l = {\n }, m = [], n = {\n contains: function(o) {\n return ((o in l));\n },\n compare: function(o, p) {\n var q = n.getRank(o), r = n.getRank(p);\n if (((q !== r))) {\n return ((q - r));\n }\n ;\n ;\n var s = j.getNowUnsafe(o), t = j.getNowUnsafe(p), u = ((((s || {\n })).JSBNG__name || \"~\")).toLowerCase(), v = ((((t || {\n })).JSBNG__name || \"~\")).toLowerCase();\n if (((u !== v))) {\n return ((((u < v)) ? -1 : 1));\n }\n ;\n ;\n return 0;\n },\n getList: function() {\n if (h.get(\"chat_web_ranking_with_presence\")) {\n n.reRank();\n }\n ;\n ;\n var o = i(k);\n o = o.filter(function(p) {\n var q = j.getNowUnsafe(p);\n return ((!q || ((q.type == \"friend\"))));\n });\n return o;\n },\n getRank: function(o) {\n return ((((o in l)) ? l[o] : k.length));\n },\n reRank: function() {\n var o = {\n }, p = {\n };\n m.forEach(function(r, s) {\n var t = r.substr(0, ((r.length - 2))), u = r.substring(((r.length - 1)));\n if (((typeof (p.uid) == \"undefined\"))) {\n if (((typeof (o.uid) == \"undefined\"))) {\n o[t] = g.get(t);\n }\n ;\n ;\n var v = o[t];\n if (((v == u))) {\n p[s] = t;\n }\n ;\n ;\n }\n ;\n ;\n });\n k = [];\n {\n var fin277keys = ((window.top.JSBNG_Replay.forInKeys)((p))), fin277i = (0);\n var q;\n for (; (fin277i < fin277keys.length); (fin277i++)) {\n ((q) = (fin277keys[fin277i]));\n {\n k.push(p[q]);\n ;\n };\n };\n };\n ;\n k.forEach(function(r, s) {\n l[r] = s;\n });\n }\n };\n (function() {\n var o = b(\"InitialChatFriendsList\");\n k = ((o.list.length ? o.list : []));\n if (h.get(\"chat_web_ranking_with_presence\")) {\n m = k.slice();\n n.reRank();\n }\n ;\n ;\n k.forEach(function(p, q) {\n l[p] = q;\n });\n })();\n e.exports = ((a.OrderedFriendsList || n));\n});\n__d(\"ChatSidebarConstants\", [], function(a, b, c, d, e, f) {\n var g = {\n LITESTAND_IMAGE_SIZE: 24,\n LITESTAND_BLENDED_SIZE: 32,\n IMAGE_SIZE: 28\n };\n e.exports = g;\n});\n__d(\"ChatTypeaheadBehavior\", [\"Chat\",\"ChatConfig\",\"ChatFavoriteList\",\"JSBNG__CSS\",\"DOM\",\"JSBNG__Rect\",\"copyProperties\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Chat\"), h = b(\"ChatConfig\"), i = b(\"ChatFavoriteList\"), j = b(\"JSBNG__CSS\"), k = b(\"DOM\"), l = b(\"JSBNG__Rect\"), m = b(\"copyProperties\"), n = b(\"tx\");\n function o(p) {\n this._typeahead = p;\n };\n;\n m(o.prototype, {\n _subscriptions: null,\n enable: function() {\n var p = this._typeahead;\n this._subscriptions = [p.subscribe(\"JSBNG__focus\", function() {\n p.getData().refreshData();\n }),p.subscribe(\"JSBNG__blur\", function(q) {\n p.getCore().reset();\n }),p.subscribe(\"respond\", function(q, r) {\n if (((r.value && ((r.value === p.getCore().getValue()))))) {\n if (!r.results.length) {\n var s = h.get(\"divebar_typeahead_group_fof\", 0);\n if (((s && !r.isAsync))) {\n return;\n }\n ;\n ;\n var t = k.create(\"div\", {\n className: \"noResults\"\n }, \"Friend not found.\");\n k.setContent(p.getView().getElement(), t);\n }\n ;\n ;\n j.addClass(p.getElement(), \"hasValue\");\n }\n ;\n ;\n }),p.subscribe(\"reset\", function() {\n j.removeClass(p.getElement(), \"hasValue\");\n }),p.subscribe(\"select\", function(q, r) {\n if (i.isEditMode()) {\n i.toggleID(r.selected.uid);\n i.save();\n }\n else {\n var s = j.hasClass(JSBNG__document.documentElement, \"sidebarMode\"), t = {\n mode: ((s ? \"JSBNG__sidebar\" : \"chatNub\")),\n source: \"typeahead\",\n type: r.selected.type,\n typeahead: true\n };\n g.openTab(r.selected.uid, r.selected.type, t);\n }\n ;\n ;\n }),p.subscribe(\"highlight\", function(q, r) {\n if (((r.index >= 0))) {\n var s = p.getView().getItems()[r.index];\n if (s) {\n var t = new l(s), u = s.offsetParent, v = t.boundWithin(new l(u)).getPositionVector();\n t.getPositionVector().sub(v).scrollElementBy(u);\n }\n ;\n ;\n }\n ;\n ;\n }),];\n },\n disable: function() {\n this._subscriptions.forEach(function(p) {\n this._typeahead.unsubscribe(p);\n }.bind(this));\n this._subscriptions = null;\n }\n });\n e.exports = o;\n});\n__d(\"ChatTypeaheadCore\", [\"function-extensions\",\"Class\",\"JSBNG__Event\",\"Keys\",\"TypeaheadCore\",\"copyProperties\",\"emptyFunction\",\"shield\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"Class\"), h = b(\"JSBNG__Event\"), i = b(\"Keys\"), j = b(\"TypeaheadCore\"), k = b(\"copyProperties\"), l = b(\"emptyFunction\"), m = b(\"shield\");\n function n(o) {\n this.parent.construct(this, o);\n };\n;\n g.extend(n, j);\n k(n.prototype, {\n init: function(o, p, q) {\n this.parent.init(o, p, q);\n this.informBeginActive = false;\n this.informEndActive = false;\n this.data.subscribe(\"respond\", function() {\n if (this.informBeginActive) {\n this.informBeginActive = false;\n this.inform(\"sidebar/typeahead/active\", true);\n }\n else if (this.informEndActive) {\n this.informEndActive = false;\n this.inform(\"sidebar/typeahead/active\", false);\n }\n \n ;\n ;\n }.bind(this));\n },\n handleTab: l,\n keydown: function(JSBNG__event) {\n var o = h.getKeyCode(JSBNG__event);\n if (((o === i.ESC))) {\n m(this.reset, this).defer();\n return JSBNG__event.kill();\n }\n ;\n ;\n return this.parent.keydown(JSBNG__event);\n },\n checkValue: function() {\n var o = this.getValue(), p = this.value;\n if (((o == p))) {\n return;\n }\n ;\n ;\n if (((p && !o))) {\n this.typeaheadActive = false;\n this.informEndActive = true;\n }\n else if (((!p && o))) {\n this.typeaheadActive = true;\n this.informBeginActive = true;\n this.inform(\"sidebar/typeahead/preActive\");\n }\n \n ;\n ;\n this.parent.checkValue();\n }\n });\n e.exports = n;\n});\n__d(\"ChatTypeaheadDataSource\", [\"Class\",\"DataSource\",\"Env\",\"JSLogger\",\"MercuryParticipantTypes\",\"OrderedFriendsList\",\"Run\",\"ShortProfiles\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"DataSource\"), i = b(\"Env\"), j = b(\"JSLogger\"), k = b(\"MercuryParticipantTypes\"), l = b(\"OrderedFriendsList\"), m = b(\"Run\"), n = b(\"ShortProfiles\"), o = b(\"copyProperties\");\n function p(q) {\n q = ((q || {\n }));\n q.kanaNormalization = true;\n this.parent.construct(this, q);\n this.persistOnRefresh = ((q.persistOnRefresh !== false));\n this.showOfflineUsers = !!q.showOfflineUsers;\n this._jslog = j.create(\"chat_typeahead\");\n this._jslog.log(\"created\");\n };\n;\n g.extend(p, h);\n o(p.prototype, {\n init: function() {\n this._jslog.log(\"init\");\n this.parent.init();\n this._update();\n },\n bootstrap: function() {\n this._jslog.log(\"bootstrap\");\n this.parent.bootstrap();\n if (this.showOfflineUsers) {\n this._jslog.log(\"show_offline_users\");\n this._jslog.log(\"ensured_short_profiles\");\n if (n.hasAll()) {\n this._update();\n }\n else {\n this._jslog.log(\"fetch_all_short_profiles\");\n n.fetchAll();\n this.inform(\"activity\", {\n activity: true\n });\n var q = n.subscribe(\"updated\", function() {\n this.inform(\"activity\", {\n activity: false\n });\n this._update();\n }.bind(this));\n if (!this.persistOnRefresh) {\n m.onLeave(function() {\n n.unsubscribe(q);\n });\n }\n ;\n ;\n }\n ;\n ;\n }\n ;\n ;\n },\n _update: function() {\n d([\"AvailableList\",], function(q) {\n var r = this.value;\n this.dirty();\n var s = n.getCachedProfileIDs(), t = s.filter(function(v) {\n var w = n.getNow(v);\n return ((w.type === k.FRIEND));\n });\n t.sort(l.compare);\n var u = [];\n t.forEach(function(v) {\n if (((v == i.user))) {\n return;\n }\n ;\n ;\n var w = q.get(v);\n if (((!this.showOfflineUsers && ((w !== q.ACTIVE))))) {\n return;\n }\n ;\n ;\n var x = n.getNow(v), y = x.additionalName;\n if (x.hasOwnProperty(\"searchTokens\")) {\n y = ((((y !== null)) ? ((((y + \" \")) + x.searchTokens.join(\" \"))) : x.searchTokens.join(\" \")));\n }\n ;\n ;\n u.push({\n uid: v,\n text: x.JSBNG__name,\n tokens: y,\n localized_text: x.JSBNG__name,\n additional_text: x.additionalName,\n photo: x.thumbSrc,\n type: x.type\n });\n }.bind(this));\n if (u.length) {\n this.addEntries(u);\n }\n ;\n ;\n this.value = r;\n if (r) {\n this.query(r);\n }\n ;\n ;\n }.bind(this));\n },\n refreshData: function() {\n d([\"AvailableList\",], function(q) {\n q.update();\n }.bind(this));\n }\n });\n e.exports = p;\n});\n__d(\"ChatSidebarHeader.react\", [\"React\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"React\"), h = b(\"cx\"), i = g.createClass({\n displayName: \"ReactChatSidebarHeader\",\n render: function() {\n return (g.DOM.div({\n className: \"-cx-PRIVATE-chatSidebarItem__header\"\n }, g.DOM.div({\n className: \"-cx-PRIVATE-chatSidebarItem__headertext\"\n }, this.props.JSBNG__name)));\n }\n });\n e.exports = i;\n});\n__d(\"ChatSidebarItem.react\", [\"AvailableListConstants\",\"ChatConfig\",\"ChatFavoriteList\",\"ChatSidebarConstants\",\"JSBNG__Image.react\",\"Link.react\",\"React\",\"SplitImage.react\",\"cx\",\"ix\",], function(a, b, c, d, e, f) {\n var g = b(\"AvailableListConstants\"), h = b(\"ChatConfig\"), i = b(\"ChatFavoriteList\"), j = b(\"ChatSidebarConstants\"), k = b(\"JSBNG__Image.react\"), l = b(\"Link.react\"), m = b(\"React\"), n = b(\"SplitImage.react\"), o = b(\"cx\"), p = b(\"ix\"), q = 9, r = m.createClass({\n displayName: \"ChatSidebarItem\",\n render: function() {\n var s = (((((\"-cx-PRIVATE-chatSidebarItem__link\") + ((this.props.context ? ((\" \" + \"-cx-PRIVATE-chatSidebarItem__hascontext\")) : \"\")))) + ((((this.props.unreadCount && h.get(\"litestand_buddylist_count\"))) ? ((\" \" + \"-cx-PRIVATE-chatSidebarItem__hasunreadcount\")) : \"\")))), t;\n if (this.props.litestandSidebar) {\n t = m.DOM.div({\n \"aria-label\": this.props.JSBNG__name,\n className: \"-cx-PUBLIC-litestandSidebarBookmarks__tooltip\",\n \"data-hover\": \"tooltip\",\n \"data-tooltip-position\": \"right\"\n });\n }\n ;\n ;\n return (l({\n className: s,\n href: this.props.href,\n onClick: this.props.onClick,\n rel: \"ignore\"\n }, m.DOM.div({\n className: \"-cx-PRIVATE-chatSidebarItem__contents\"\n }, this.renderFavorite(), m.DOM.div({\n className: \"-cx-PUBLIC-chatSidebarItem__piccontainer\"\n }, this.renderImage(), m.DOM.div({\n className: \"-cx-PRIVATE-chatSidebarItem__picborder\"\n })), m.DOM.div({\n className: \"-cx-PRIVATE-chatSidebarItem__rightcontent\"\n }, this.renderBirthday(), this.renderUnreadCount(), this.renderStatus()), m.DOM.div({\n className: \"-cx-PRIVATE-chatSidebarItem__name\"\n }, this.props.JSBNG__name), m.DOM.div({\n className: \"-cx-PRIVATE-chatSidebarItem__context\"\n }, this.props.context)), t));\n },\n renderFavorite: function() {\n if (((this.props.isAdded === undefined))) {\n return null;\n }\n ;\n ;\n var s = null;\n if (this.props.litestandSidebar) {\n s = ((this.props.isAdded ? p(\"/images/litestand/bookmarks/sidebar/remove.png\") : p(\"/images/litestand/bookmarks/sidebar/add.png\")));\n }\n else s = ((this.props.isAdded ? p(\"/images/chat/delete.png\") : p(\"/images/chat/add.png\")));\n ;\n ;\n var t = (((\"-cx-PRIVATE-chatSidebarItem__favoritebutton\") + ((!this.props.showEditButton ? ((\" \" + \"hidden_elem\")) : \"\"))));\n return (m.DOM.div({\n className: t,\n onClick: this.props.onEditClick\n }, k({\n className: \"-cx-PRIVATE-chatSidebarItem__favoriteicon\",\n src: s\n })));\n },\n renderImage: function() {\n var s = ((this.props.imageSize || j.IMAGE_SIZE));\n return n({\n size: s,\n srcs: this.props.images\n });\n },\n renderUnreadCount: function() {\n var s = this.props.unreadCount;\n if (((!s || !h.get(\"litestand_buddylist_count\")))) {\n return null;\n }\n ;\n ;\n var t = (((\"-cx-PRIVATE-chatSidebarItem__unreadcount\") + ((((s > q)) ? ((\" \" + \"-cx-PRIVATE-chatSidebarItem__largecount\")) : \"\"))));\n if (((s > q))) {\n s = ((q + \"+\"));\n }\n ;\n ;\n return (m.DOM.div({\n className: t\n }, s));\n },\n renderStatus: function() {\n var s = this.getStatusSrc();\n if (!s) {\n return null;\n }\n ;\n ;\n if (((((this.props.unreadCount && h.get(\"litestand_blended_sidebar\"))) && h.get(\"litestand_buddylist_count\")))) {\n return;\n }\n ;\n ;\n var t = ((h.get(\"divebar_favorite_list\", 0) && i.isEditMode()));\n if (t) {\n return;\n }\n ;\n ;\n return (m.DOM.div({\n className: \"-cx-PRIVATE-chatSidebarItem__status\"\n }, m.DOM.div({\n className: \"-cx-PRIVATE-chatSidebarItem__statustime\"\n }, this.props.statusTime), k({\n className: \"-cx-PRIVATE-chatSidebarItem__statusicon\",\n src: s\n })));\n },\n renderBirthday: function() {\n if (!this.props.birthday) {\n return null;\n }\n ;\n ;\n return (k({\n className: \"-cx-PRIVATE-chatSidebarItem__birthdayicon\",\n src: p(\"/images/gifts/icons/cake_icon.png\")\n }));\n },\n getStatusSrc: function() {\n switch (this.props.JSBNG__status) {\n case g.ACTIVE:\n \n case g.IDLE:\n if (this.props.litestandSidebar) {\n return ((h.get(\"litestand_blended_sidebar\") ? p(\"/images/litestand/sidebar/blended/online.png\") : p(\"/images/litestand/sidebar/online.png\")));\n }\n ;\n ;\n return p(\"/images/chat/status/online.png\");\n case g.MOBILE:\n if (this.props.litestandSidebar) {\n return ((h.get(\"litestand_blended_sidebar\") ? p(\"/images/litestand/sidebar/blended/pushable.png\") : p(\"/images/litestand/sidebar/pushable.png\")));\n }\n ;\n ;\n return p(\"/images/chat/status/mobile.png\");\n };\n ;\n return null;\n }\n });\n e.exports = r;\n});\n__d(\"ChatSidebarThread.react\", [\"ChatSidebarItem.react\",\"WebMessengerPermalinkConstants\",\"React\",\"MercuryThreadMetadataRawRenderer\",], function(a, b, c, d, e, f) {\n var g = b(\"ChatSidebarItem.react\"), h = b(\"WebMessengerPermalinkConstants\"), i = b(\"React\"), j = b(\"MercuryThreadMetadataRawRenderer\"), k = i.createClass({\n displayName: \"ChatSidebarThread\",\n render: function() {\n var n = this.props.JSBNG__name, o = l(this.props.threadID, this.props.participants), p = ((n ? o : undefined)), q = h.getURIPathForThreadID(this.props.threadID), r = m(this.props.image, this.props.participants), s = ((n ? n : o));\n return (g({\n context: p,\n href: {\n url: q\n },\n imageSize: this.props.imageSize,\n images: r,\n litestandSidebar: this.props.litestandSidebar,\n JSBNG__name: s,\n JSBNG__status: this.props.JSBNG__status,\n unreadCount: this.props.unreadCount\n }));\n }\n });\n function l(n, o) {\n return j.renderRawParticipantList(n, o, o.length, {\n names_renderer: j.renderShortNames\n });\n };\n;\n function m(n, o) {\n if (n) {\n return n;\n }\n ;\n ;\n return o.map(function(p) {\n return p.image_src;\n });\n };\n;\n e.exports = k;\n});\n__d(\"ChatSidebarUser.react\", [\"ChatFavoriteList\",\"WebMessengerPermalinkConstants\",\"ChatConfig\",\"React\",\"ChatSidebarItem.react\",], function(a, b, c, d, e, f) {\n var g = b(\"ChatFavoriteList\"), h = b(\"WebMessengerPermalinkConstants\"), i = b(\"ChatConfig\"), j = b(\"React\"), k = b(\"ChatSidebarItem.react\"), l = j.createClass({\n displayName: \"ChatSidebarUser\",\n render: function() {\n var m = h.getURIPathForIDOrVanity(this.props.userID), n = g.isFavored(this.props.userID), o = function() {\n g.toggleID(this.props.userID);\n }.bind(this), p = ((i.get(\"divebar_favorite_list\", 0) ? n : undefined));\n return (k({\n href: {\n url: m\n },\n imageSize: this.props.imageSize,\n images: this.props.image,\n litestandSidebar: this.props.litestandSidebar,\n isAdded: p,\n showEditButton: g.isEditMode(),\n JSBNG__name: this.props.JSBNG__name,\n onEditClick: o,\n JSBNG__status: this.props.JSBNG__status,\n birthday: this.props.birthday,\n statusTime: this.props.statusTime,\n context: this.props.context\n }));\n }\n });\n e.exports = l;\n});\n__d(\"ChatTypeaheadRenderer\", [\"AvailableListConstants\",\"ChatConfig\",\"ChatSidebarConstants\",\"ChatSidebarHeader.react\",\"ChatSidebarThread.react\",\"ChatSidebarUser.react\",\"ChatTypeaheadConstants\",\"DOM\",\"LastMobileActiveTimes\",\"MercuryParticipants\",\"PresenceStatus\",\"React\",], function(a, b, c, d, e, f) {\n var g = b(\"AvailableListConstants\"), h = b(\"ChatConfig\"), i = b(\"ChatSidebarConstants\"), j = b(\"ChatSidebarHeader.react\"), k = b(\"ChatSidebarThread.react\"), l = b(\"ChatSidebarUser.react\"), m = b(\"ChatTypeaheadConstants\"), n = b(\"DOM\"), o = b(\"LastMobileActiveTimes\"), p = b(\"MercuryParticipants\"), q = b(\"PresenceStatus\"), r = b(\"React\"), s = {\n };\n function t(z, aa) {\n if (!((z in s))) {\n s[z] = n.create(\"li\");\n }\n ;\n ;\n r.renderComponent(aa, s[z]);\n return s[z];\n };\n;\n function u(z) {\n return t(z.text, j({\n JSBNG__name: z.text\n }));\n };\n;\n function v() {\n if (((h.get(\"litestand\", 0) && !h.get(\"test_old_divebar\")))) {\n return ((h.get(\"litestand_blended_sidebar\") ? i.LITESTAND_BLENDED_SIZE : i.LITESTAND_IMAGE_SIZE));\n }\n ;\n ;\n return i.IMAGE_SIZE;\n };\n;\n function w(z) {\n var aa = z.mercury_thread.participants.map(function(ba) {\n return p.getUserID(ba);\n });\n return t(z.uid, k({\n image: z.mercury_thread.image_src,\n imageSize: v(),\n litestandSidebar: ((h.get(\"litestand\", 0) && !h.get(\"test_old_divebar\"))),\n JSBNG__name: z.mercury_thread.JSBNG__name,\n participants: z.participants_to_render,\n JSBNG__status: q.getGroup(aa),\n threadID: z.uid\n }));\n };\n;\n function x(z) {\n var aa = q.get(z.uid), ba = ((((aa === g.MOBILE)) ? o.getShortDisplay(z.uid) : null)), ca = ((((z.render_type == \"non_friend\")) ? z.subtext : null));\n return t(z.uid, l({\n image: z.photo,\n imageSize: v(),\n litestandSidebar: h.get(\"litestand\", 0),\n JSBNG__name: z.text,\n JSBNG__status: aa,\n birthday: q.isBirthday(z.uid),\n statusTime: ba,\n userID: z.uid,\n context: ca\n }));\n };\n;\n function y(z, aa) {\n if (((z.type === m.HEADER_TYPE))) {\n return u(z);\n }\n ;\n ;\n if (((z.type == m.THREAD_TYPE))) {\n return w(z);\n }\n ;\n ;\n return x(z);\n };\n;\n e.exports = y;\n});\n__d(\"ChatTypeaheadView\", [\"arrayContains\",\"BucketedTypeaheadView\",\"ChatConfig\",\"Class\",\"ChatTypeaheadConstants\",\"Env\",\"MercuryThreadSearchUtils\",\"copyProperties\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"arrayContains\"), h = b(\"BucketedTypeaheadView\"), i = b(\"ChatConfig\"), j = b(\"Class\"), k = b(\"ChatTypeaheadConstants\"), l = b(\"Env\"), m = b(\"MercuryThreadSearchUtils\"), n = b(\"copyProperties\"), o = b(\"tx\"), p = i.get(\"divebar_typeahead_group_fof\", 0);\n function q(r, s) {\n this.parent.construct(this, r, s);\n this.typeObjects = {\n };\n this.typeObjectsOrder = [];\n this.typeObjects[k.NON_FRIEND_TYPE] = {\n uid: k.NON_FRIEND_TYPE,\n type: k.HEADER_TYPE,\n text: \"FRIENDS OF FRIENDS\"\n };\n this.typeObjectsOrder.push(k.NON_FRIEND_TYPE);\n this.typeObjects[k.THREAD_TYPE] = {\n uid: k.THREAD_TYPE,\n type: k.HEADER_TYPE,\n text: \"GROUP CONVERSATIONS\"\n };\n this.typeObjectsOrder.push(k.THREAD_TYPE);\n this.typeObjects[k.FRIEND_TYPE] = {\n disabled: true,\n uid: k.FRIEND_TYPE,\n type: k.HEADER_TYPE,\n text: \"FRIENDS\"\n };\n this.typeObjectsOrder.push(k.FRIEND_TYPE);\n };\n;\n j.extend(q, h);\n n(q.prototype, {\n buildBuckets: function(r, s) {\n if (p) {\n s = s.reverse();\n s = s.filter(function(t) {\n var u = ((t.render_type || t.type));\n if (((u === \"thread\"))) {\n var v = ((\"fbid:\" + l.user));\n if (!g(t.mercury_thread.participants, v)) {\n return false;\n }\n ;\n ;\n var w = t.participants_to_render.some(function(y) {\n return m.queryMatchesName(r, y.JSBNG__name);\n }), x = m.queryMatchesName(r, t.mercury_thread.JSBNG__name);\n if (((!w && !x))) {\n return false;\n }\n ;\n ;\n }\n ;\n ;\n return true;\n });\n }\n ;\n ;\n s = this.parent.buildBuckets(r, s);\n if (!p) {\n s = s.filter(function(t) {\n return ((t && !t.disabled));\n });\n }\n ;\n ;\n return s;\n },\n getDefaultIndex: function(r) {\n if (!p) {\n return this.parent.getDefaultIndex(r);\n }\n ;\n ;\n if (((r.length === 0))) {\n return -1;\n }\n ;\n ;\n var s = ((r.length - 1));\n while (((!this.isHighlightable(r[s]) && ((s >= 0))))) {\n s--;\n ;\n };\n ;\n return s;\n }\n });\n e.exports = q;\n});\n__d(\"AbstractButton.react\", [\"Link.react\",\"ReactPropTypes\",\"React\",\"cx\",\"invariant\",], function(a, b, c, d, e, f) {\n var g = b(\"Link.react\"), h = b(\"ReactPropTypes\"), i = b(\"React\"), j = b(\"cx\"), k = b(\"invariant\");\n function l(n, o) {\n if (n.props.className) {\n n.props.className += ((\" \" + o));\n }\n else n.props.className = o;\n ;\n ;\n };\n;\n var m = i.createClass({\n displayName: \"AbstractButton\",\n propTypes: {\n image: function(n, o, p) {\n var q = n[o];\n k(((((q == null)) || i.isValidComponent(q))));\n return q;\n },\n depressed: h.bool,\n imageOnRight: h.bool,\n href: h.object\n },\n render: function() {\n var n = (((((\"-cx-PRIVATE-abstractButton__root\") + ((this.props.disabled ? ((\" \" + \"-cx-PUBLIC-abstractButton__disabled\")) : \"\")))) + ((this.props.depressed ? ((\" \" + \"-cx-PUBLIC-abstractButton__depressed\")) : \"\")))), o = this.props.image, p = this.props.label;\n if (((o && p))) {\n if (this.props.imageOnRight) {\n l(o, \"mls\");\n }\n else l(o, \"mrs\");\n ;\n }\n ;\n ;\n var q;\n if (this.props.href) {\n q = g({\n disabled: null\n });\n }\n else {\n var r = ((this.props.type || \"submit\"));\n q = i.DOM.button({\n type: r\n });\n if (((r === \"submit\"))) {\n q.props.value = \"1\";\n }\n ;\n ;\n }\n ;\n ;\n if (this.props.imageOnRight) {\n q.props.children = [p,o,];\n }\n else q.props.children = [o,p,];\n ;\n ;\n q.props.className = n;\n q.props.label = null;\n return this.transferPropsTo(q);\n }\n });\n e.exports = m;\n});\n__d(\"XUIButton.react\", [\"AbstractButton.react\",\"ReactPropTypes\",\"React\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"AbstractButton.react\"), h = b(\"ReactPropTypes\"), i = b(\"React\"), j = b(\"cx\"), k = \"medium\", l = i.createClass({\n displayName: \"XUIButton\",\n propTypes: {\n use: h.oneOf([\"default\",\"special\",\"JSBNG__confirm\",]),\n size: h.oneOf([\"small\",\"medium\",\"large\",\"xlarge\",\"xxlarge\",]),\n suppressed: h.bool\n },\n getDefaultProps: function() {\n return {\n use: \"default\",\n size: k,\n suppressed: false\n };\n },\n getButtonSize: function() {\n return ((this.props.size || k));\n },\n render: function() {\n var m = this.props.use, n = this.getButtonSize(), o = this.props.suppressed, p = (((((((((((((((((((((\"-cx-PRIVATE-xuiButton__root\") + ((((n === \"small\")) ? ((\" \" + \"-cx-PRIVATE-xuiButton__small\")) : \"\")))) + ((((n === \"medium\")) ? ((\" \" + \"-cx-PRIVATE-xuiButton__medium\")) : \"\")))) + ((((n === \"large\")) ? ((\" \" + \"-cx-PRIVATE-xuiButton__large\")) : \"\")))) + ((((n === \"xlarge\")) ? ((\" \" + \"-cx-PRIVATE-xuiButton__xlarge\")) : \"\")))) + ((((n === \"xxlarge\")) ? ((\" \" + \"-cx-PRIVATE-xuiButton__xxlarge\")) : \"\")))) + ((((m === \"default\")) ? ((\" \" + \"-cx-PRIVATE-xuiButton__default\")) : \"\")))) + ((((m === \"JSBNG__confirm\")) ? ((\" \" + \"-cx-PRIVATE-xuiButton__confirm\")) : \"\")))) + ((((m === \"special\")) ? ((\" \" + \"-cx-PRIVATE-xuiButton__special\")) : \"\")))) + ((o ? ((\" \" + \"-cx-PRIVATE-xuiButton__suppressed\")) : \"\")))) + ((((((m === \"JSBNG__confirm\")) || ((m === \"special\")))) ? ((\" \" + \"selected\")) : \"\"))));\n return this.transferPropsTo(g({\n className: p\n }));\n }\n });\n e.exports = l;\n});\n__d(\"FeatureDetection\", [\"UserAgent\",], function(a, b, c, d, e, f) {\n var g = b(\"UserAgent\");\n e.exports = {\n isFileAPISupported: function() {\n if (((((g.webkit() && !g.chrome())) && g.windows()))) {\n return false;\n }\n ;\n ;\n return ((((\"JSBNG__FileList\" in window)) && ((\"JSBNG__FormData\" in window))));\n },\n isBlobFactorySupported: function() {\n return !!a.JSBNG__Blob;\n }\n };\n});\n__d(\"AsyncUploadBase\", [\"ArbiterMixin\",\"AsyncRequest\",\"AsyncResponse\",\"Form\",\"FeatureDetection\",\"copyProperties\",\"removeFromArray\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"AsyncRequest\"), i = b(\"AsyncResponse\"), j = b(\"Form\"), k = b(\"FeatureDetection\"), l = b(\"copyProperties\"), m = b(\"removeFromArray\");\n function n(p) {\n this.setURI(p);\n };\n;\n n.isSupported = function() {\n return k.isFileAPISupported();\n };\n l(n.prototype, g, {\n _limit: 10,\n setAllowCrossOrigin: function(p) {\n this._allowCrossOrigin = !!p;\n return this;\n },\n setData: function(p) {\n this._data = p;\n return this;\n },\n setLimit: function(p) {\n this._limit = p;\n return this;\n },\n setRelativeTo: function(p) {\n this._relativeTo = p;\n return this;\n },\n setStatusElement: function(p) {\n this._statusElement = p;\n return this;\n },\n setURI: function(p) {\n this._uri = p;\n return this;\n },\n suspend: function() {\n this._suspended = true;\n return this;\n },\n resume: function() {\n this._suspended = false;\n this._processQueue();\n return this;\n },\n isUploading: function() {\n return this._inFlight;\n },\n _createFileUpload: function(p, q, r) {\n return new o(p, q, r);\n },\n _parseFiles: function(p) {\n var q = {\n };\n {\n var fin278keys = ((window.top.JSBNG_Replay.forInKeys)((p))), fin278i = (0);\n var r;\n for (; (fin278i < fin278keys.length); (fin278i++)) {\n ((r) = (fin278keys[fin278i]));\n {\n var s = p[r];\n if (Array.isArray(s)) {\n q[r] = s;\n }\n else {\n q[r] = [];\n if (((s instanceof window.JSBNG__FileList))) {\n for (var t = 0; ((t < s.length)); t++) {\n q[r].push(s.JSBNG__item(t));\n ;\n };\n ;\n }\n else if (((((s instanceof window.JSBNG__File)) || ((s instanceof window.JSBNG__Blob))))) {\n q[r].push(s);\n }\n \n ;\n ;\n }\n ;\n ;\n };\n };\n };\n ;\n return q;\n },\n _processQueue: function() {\n if (this._suspended) {\n return;\n }\n ;\n ;\n while (((this._pending.length < this._limit))) {\n if (!this._waiting.length) {\n break;\n }\n ;\n ;\n var p = this._waiting.shift();\n this._processUpload(p);\n this._pending.push(p);\n };\n ;\n },\n _processUpload: function(p) {\n var q = j.createFormData(((p.getData() || this._data)));\n if (p.getFile()) {\n q.append(p.getName(), p.getFile());\n q.append(\"upload_id\", p.getFile().uploadID);\n }\n ;\n ;\n var r = new h().setAllowCrossOrigin(this._allowCrossOrigin).setURI(this._uri).setRawData(q).setRelativeTo(this._relativeTo).setStatusElement(this._statusElement).setHandler(this._success.bind(this, p)).setErrorHandler(this._failure.bind(this, p)).setUploadProgressHandler(this._progress.bind(this, p)).setInitialHandler(this._initial.bind(this, p));\n r.send();\n p.setAsyncRequest(r);\n this._inFlight = true;\n this.inform(\"start\", p);\n },\n _abort: function(p) {\n m(this._waiting, p);\n p.abort();\n },\n _initial: function(p) {\n this.inform(\"initial\", p);\n },\n _success: function(p, q) {\n this._complete(p);\n this.inform(\"success\", p.handleSuccess(q));\n this._processQueue();\n },\n _failure: function(p, q) {\n this._complete(p);\n if (((this.inform(\"failure\", p.handleFailure(q)) !== false))) {\n i.defaultErrorHandler(q);\n }\n ;\n ;\n this._processQueue();\n },\n _progress: function(p, JSBNG__event) {\n this.inform(\"progress\", p.handleProgress(JSBNG__event));\n },\n _complete: function(p) {\n m(this._pending, p);\n if (!this._pending.length) {\n this._inFlight = false;\n }\n ;\n ;\n }\n });\n var o = function(p, q, r) {\n this._name = p;\n this._file = q;\n this._data = r;\n this._success = null;\n this._response = null;\n this._progressEvent = null;\n this._request = null;\n };\n l(o.prototype, {\n getName: function() {\n return this._name;\n },\n getFile: function() {\n return this._file;\n },\n getData: function() {\n return this._data;\n },\n isComplete: function() {\n return ((this._success !== null));\n },\n isSuccess: function() {\n return ((this._success === true));\n },\n getResponse: function() {\n return this._response;\n },\n getProgressEvent: function() {\n return this._progressEvent;\n },\n setAsyncRequest: function(p) {\n this._request = p;\n return this;\n },\n isWaiting: function() {\n return !this._request;\n },\n abort: function() {\n ((this._request && this._request.abort()));\n this._request = null;\n },\n handleSuccess: function(p) {\n this._success = true;\n this._response = p;\n this._progressEvent = null;\n return this;\n },\n handleFailure: function(p) {\n this._success = false;\n this._response = p;\n this._progressEvent = null;\n return this;\n },\n handleProgress: function(JSBNG__event) {\n this._progressEvent = JSBNG__event;\n return this;\n }\n });\n e.exports = n;\n});\n__d(\"AsyncUploadRequest\", [\"AsyncUploadBase\",\"Class\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncUploadBase\"), h = b(\"Class\"), i = b(\"copyProperties\");\n function j(k) {\n this.parent.construct(this, k);\n };\n;\n j.isSupported = function() {\n return g.isSupported();\n };\n h.extend(j, g);\n i(j.prototype, {\n setFiles: function(k) {\n this._files = this._parseFiles(k);\n return this;\n },\n send: function() {\n if (this._inFlight) {\n return;\n }\n ;\n ;\n this._inFlight = true;\n this._uploads = [];\n {\n var fin279keys = ((window.top.JSBNG_Replay.forInKeys)((this._files))), fin279i = (0);\n var k;\n for (; (fin279i < fin279keys.length); (fin279i++)) {\n ((k) = (fin279keys[fin279i]));\n {\n this._files[k].forEach(function(l) {\n this._uploads.push(this._createFileUpload(k, l));\n }.bind(this));\n ;\n };\n };\n };\n ;\n if (this._uploads.length) {\n this._waiting = this._uploads.slice(0);\n this._pending = [];\n this._processQueue();\n }\n else this._processUpload(this._createFileUpload(null, null));\n ;\n ;\n },\n _processQueue: function() {\n this.parent._processQueue();\n if (((!this._pending.length && !this._waiting.length))) {\n this.inform(\"complete\", this._uploads);\n }\n ;\n ;\n }\n });\n e.exports = j;\n});\n__d(\"CacheStorage\", [\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = {\n memory: k,\n localstorage: i,\n sessionstorage: j\n };\n function i() {\n this._store = a.JSBNG__localStorage;\n };\n;\n i.available = function() {\n try {\n return !!a.JSBNG__localStorage;\n } catch (m) {\n return false;\n };\n ;\n };\n g(i.prototype, {\n keys: function() {\n var m = [];\n for (var n = 0; ((n < this._store.length)); n++) {\n m.push(this._store.key(n));\n ;\n };\n ;\n return m;\n },\n get: function(m) {\n return this._store.getItem(m);\n },\n set: function(m, n) {\n this._store.setItem(m, n);\n },\n remove: function(m) {\n this._store.removeItem(m);\n },\n clear: function() {\n this._store.clear();\n }\n });\n function j() {\n this._store = a.JSBNG__sessionStorage;\n };\n;\n j.available = function() {\n try {\n return !!a.JSBNG__sessionStorage;\n } catch (m) {\n return false;\n };\n ;\n };\n g(j.prototype, {\n keys: function() {\n var m = [];\n for (var n = 0; ((n < this._store.length)); n++) {\n m.push(this._store.key(n));\n ;\n };\n ;\n return m;\n },\n get: function(m) {\n return this._store.getItem(m);\n },\n set: function(m, n) {\n this._store.setItem(m, n);\n },\n remove: function(m) {\n this._store.removeItem(m);\n },\n clear: function() {\n this._store.clear();\n }\n });\n function k() {\n this._store = {\n };\n };\n;\n k.available = function() {\n return true;\n };\n g(k.prototype, {\n keys: function() {\n return Object.keys(this._store);\n },\n get: function(m) {\n if (((this._store[m] === undefined))) {\n return null;\n }\n ;\n ;\n return this._store[m];\n },\n set: function(m, n) {\n this._store[m] = n;\n },\n remove: function(m) {\n if (((m in this._store))) {\n delete this._store[m];\n }\n ;\n ;\n },\n clear: function() {\n this._store = {\n };\n }\n });\n function l(m, n) {\n this._key_prefix = ((n || \"_cs_\"));\n this._magic_prefix = \"_@_\";\n if (((((m == \"AUTO\")) || !m))) {\n {\n var fin280keys = ((window.top.JSBNG_Replay.forInKeys)((h))), fin280i = (0);\n var o;\n for (; (fin280i < fin280keys.length); (fin280i++)) {\n ((o) = (fin280keys[fin280i]));\n {\n var p = h[o];\n if (p.available()) {\n m = o;\n break;\n }\n ;\n ;\n };\n };\n };\n }\n ;\n ;\n if (m) {\n if (((typeof m == \"string\"))) {\n if (((!h[m] || !h[m].available()))) {\n this._backend = new k();\n }\n else this._backend = new h[m]();\n ;\n ;\n }\n else if (((!m.available || !m.available()))) {\n this._backend = new k();\n }\n else this._backend = m;\n \n ;\n }\n ;\n ;\n };\n;\n g(l, {\n getAllStorageTypes: function() {\n return Object.keys(h);\n }\n });\n g(l.prototype, {\n keys: function() {\n var m = [];\n try {\n if (this._backend) {\n var o = this._backend.keys();\n for (var p = 0; ((p < o.length)); p++) {\n if (((o[p].substr(0, this._key_prefix.length) == this._key_prefix))) {\n m.push(o[p].substr(this._key_prefix.length));\n }\n ;\n ;\n };\n ;\n }\n ;\n ;\n } catch (n) {\n \n };\n ;\n return m;\n },\n set: function(m, n) {\n if (this._backend) {\n if (((typeof n == \"string\"))) {\n n = ((this._magic_prefix + n));\n }\n else n = JSON.stringify(n);\n ;\n ;\n try {\n this._backend.set(((this._key_prefix + m)), n);\n } catch (o) {\n \n };\n ;\n }\n ;\n ;\n },\n get: function(m, n) {\n var o;\n if (this._backend) {\n try {\n o = this._backend.get(((this._key_prefix + m)));\n } catch (p) {\n o = null;\n };\n ;\n if (((o !== null))) {\n if (((o.substr(0, this._magic_prefix.length) == this._magic_prefix))) {\n o = o.substr(this._magic_prefix.length);\n }\n else try {\n o = JSON.parse(o);\n } catch (q) {\n o = undefined;\n }\n ;\n ;\n }\n else o = undefined;\n ;\n ;\n }\n ;\n ;\n if (((((o === undefined)) && ((n !== undefined))))) {\n o = n;\n if (this._backend) {\n var r;\n if (((typeof o == \"string\"))) {\n r = ((this._magic_prefix + o));\n }\n else r = JSON.stringify(o);\n ;\n ;\n try {\n this._backend.set(((this._key_prefix + m)), r);\n } catch (p) {\n \n };\n ;\n }\n ;\n ;\n }\n ;\n ;\n return o;\n },\n remove: function(m) {\n if (this._backend) {\n try {\n this._backend.remove(((this._key_prefix + m)));\n } catch (n) {\n \n };\n }\n ;\n ;\n }\n });\n e.exports = l;\n});\n__d(\"DOMWrapper\", [], function(a, b, c, d, e, f) {\n var g, h, i = {\n setRoot: function(j) {\n g = j;\n },\n getRoot: function() {\n return ((g || JSBNG__document.body));\n },\n setWindow: function(j) {\n h = j;\n },\n getWindow: function() {\n return ((h || JSBNG__self));\n }\n };\n e.exports = i;\n});\n__d(\"Flash\", [\"DOMWrapper\",\"QueryString\",\"UserAgent\",\"copyProperties\",\"guid\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMWrapper\"), h = b(\"QueryString\"), i = b(\"UserAgent\"), j = b(\"copyProperties\"), k = b(\"guid\"), l = {\n }, m, n = g.getWindow().JSBNG__document;\n function o(t) {\n var u = n.getElementById(t);\n if (u) {\n u.parentNode.removeChild(u);\n }\n ;\n ;\n delete l[t];\n };\n;\n function p() {\n {\n var fin281keys = ((window.top.JSBNG_Replay.forInKeys)((l))), fin281i = (0);\n var t;\n for (; (fin281i < fin281keys.length); (fin281i++)) {\n ((t) = (fin281keys[fin281i]));\n {\n if (l.hasOwnProperty(t)) {\n o(t);\n }\n ;\n ;\n };\n };\n };\n ;\n };\n;\n function q(t) {\n return t.replace(/\\d+/g, function(u) {\n return ((\"000\".substring(u.length) + u));\n });\n };\n;\n function r(t) {\n if (!m) {\n if (((i.ie() >= 9))) {\n window.JSBNG__attachEvent(\"JSBNG__onunload\", p);\n }\n ;\n ;\n m = true;\n }\n ;\n ;\n l[t] = t;\n };\n;\n var s = {\n embed: function(t, u, v, w) {\n var x = k();\n t = encodeURI(t);\n v = j({\n allowscriptaccess: \"always\",\n flashvars: w,\n movie: t\n }, ((v || {\n })));\n if (((typeof v.flashvars == \"object\"))) {\n v.flashvars = h.encode(v.flashvars);\n }\n ;\n ;\n var y = [];\n {\n var fin282keys = ((window.top.JSBNG_Replay.forInKeys)((v))), fin282i = (0);\n var z;\n for (; (fin282i < fin282keys.length); (fin282i++)) {\n ((z) = (fin282keys[fin282i]));\n {\n if (((v.hasOwnProperty(z) && v[z]))) {\n y.push(((((((((\"\\u003Cparam name=\\\"\" + encodeURI(z))) + \"\\\" value=\\\"\")) + encodeURI(v[z]))) + \"\\\"\\u003E\")));\n }\n ;\n ;\n };\n };\n };\n ;\n var aa = n.createElement(\"div\"), ba = ((((((((((((((((((\"\\u003Cobject \" + ((i.ie() ? \"classid=\\\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\\\" \" : \"type=\\\"application/x-shockwave-flash\\\"\")))) + \"data=\\\"\")) + t)) + \"\\\" \")) + \"id=\\\"\")) + x)) + \"\\\"\\u003E\")) + y.join(\"\"))) + \"\\u003C/object\\u003E\"));\n aa.innerHTML = ba;\n var ca = u.appendChild(aa.firstChild);\n r(x);\n return ca;\n },\n remove: o,\n getVersion: function() {\n var t = \"Shockwave Flash\", u = \"application/x-shockwave-flash\", v = \"ShockwaveFlash.ShockwaveFlash\", w;\n if (((JSBNG__navigator.plugins && ((typeof JSBNG__navigator.plugins[t] == \"object\"))))) {\n var x = JSBNG__navigator.plugins[t].description;\n if (((((((x && JSBNG__navigator.mimeTypes)) && JSBNG__navigator.mimeTypes[u])) && JSBNG__navigator.mimeTypes[u].enabledPlugin))) {\n w = x.match(/\\d+/g);\n }\n ;\n ;\n }\n ;\n ;\n if (!w) {\n try {\n w = (new ActiveXObject(v)).GetVariable(\"$version\").match(/(\\d+),(\\d+),(\\d+),(\\d+)/);\n w = Array.prototype.slice.call(w, 1);\n } catch (y) {\n \n };\n }\n ;\n ;\n return w;\n },\n checkMinVersion: function(t) {\n var u = s.getVersion();\n if (!u) {\n return false;\n }\n ;\n ;\n return ((q(u.join(\".\")) >= q(t)));\n },\n isAvailable: function() {\n return !!s.getVersion();\n }\n };\n e.exports = s;\n});\n__d(\"PhotosUploadWaterfall\", [\"AsyncSignal\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncSignal\"), h = {\n APP_FLASH: \"flash_pro\",\n APP_SIMPLE: \"simple\",\n APP_ARCHIVE: \"archive\",\n APP_COMPOSER: \"composer\",\n APP_MESSENGER: \"messenger\",\n APP_HTML5: \"html5\",\n APP_CHAT: \"chat\",\n INSTALL_CANCEL: 1,\n INSTALL_INSTALL: 2,\n INSTALL_UPDATE: 3,\n INSTALL_REINSTALL: 4,\n INSTALL_PERMA_CANCEL: 5,\n INSTALL_SILENT_SKIP: 6,\n INSTALL_DOWNLOAD: 7,\n CERROR_RESIZING_FAILED: 6,\n CERROR_MARKER_EXTRACTION_FAILED: 9,\n BEGIN: 1,\n UPLOAD_START: 4,\n ALL_UPLOADS_DONE: 6,\n CLIENT_ERROR: 7,\n RECOVERABLE_CLIENT_ERROR: 12,\n IMAGES_SELECTED: 9,\n UPGRADE_REQUIRED: 11,\n VERSION: 15,\n SELECT_START: 18,\n SELECT_CANCELED: 19,\n CANCEL: 22,\n CANCEL_DURING_UPLOAD: 83,\n ONE_RESIZING_START: 2,\n ONE_UPLOAD_DONE: 29,\n ONE_RESIZING_DONE: 34,\n PROGRESS_BAR_STOPPED: 44,\n MISSED_BEAT: 45,\n HEART_ATTACK: 46,\n PUBLISH_START: 100,\n PUBLISH_SUCCESS: 101,\n PUBLISH_FAILURE: 102,\n SESSION_POSTED: 72,\n POST_PUBLISHED: 80,\n ONE_UPLOAD_CANCELED: 81,\n ONE_UPLOAD_CANCELED_DURING_UPLOAD: 82,\n RESIZER_AVAILABLE: 20,\n OVERLAY_FIRST: 61,\n ASYNC_AVAILABLE: 63,\n FALLBACK_TO_FLASH: 13,\n RETRY_UPLOAD: 17,\n TAGGED_ALL_FACES: 14,\n VAULT_IMAGES_SELECTED: 62,\n VAULT_CREATE_POST_CANCEL: 65,\n VAULT_SEND_IN_MESSAGE_CLICKED: 66,\n VAULT_DELETE_CANCEL: 68,\n VAULT_ADD_TO_ALBUM_CANCEL: 74,\n VAULT_SHARE_IN_AN_ALBUM_CLICKED: 76,\n VAULT_SHARE_OWN_TIMELINE_CLICKED: 77,\n VAULT_SHARE_FRIENDS_TIMELINE_CLICKED: 78,\n VAULT_SHARE_IN_A_GROUP_CLICKED: 79,\n VAULT_SYNCED_PAGED_LINK_CLICKED: 84,\n METHOD_DRAGDROP: \"dragdrop\",\n METHOD_FILE_SELECTOR: \"file_selector\",\n METHOD_VAULT: \"vault\",\n METHOD_PHOTOS_OF_YOU: \"photos_of_you\",\n METHOD_RECENT_PHOTOS: \"recent_photos\",\n VAULTBOX: \"vaultbox\",\n GRID: \"grid\",\n SPOTLIGHT_VAULT_VIEWER: \"spotlight_vault_viewer\",\n REF_VAULT_NOTIFICATION: \"vault_notification\",\n sendSignal: function(i, j) {\n new g(\"/ajax/photos/waterfall.php\", {\n data: JSON.stringify(i)\n }).setHandler(j).send();\n }\n };\n e.exports = h;\n});"); |
| // 15996 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o51,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yC/r/601-E9kc9jy.js",o57); |
| // undefined |
| o51 = null; |
| // undefined |
| o57 = null; |
| // 16001 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"1YKDj\",]);\n}\n;\n__d(\"BuddyListNub\", [\"JSXDOM\",\"Event\",\"Arbiter\",\"AvailableList\",\"BlackbirdUpsell\",\"ChannelConnection\",\"ChannelConstants\",\"ChatConfig\",\"ChatSidebar\",\"ChatVisibility\",\"Class\",\"CSS\",\"Dock\",\"DOM\",\"HTML\",\"Keys\",\"NubController\",\"OrderedFriendsList\",\"Parent\",\"PresencePrivacy\",\"Toggler\",\"copyProperties\",\"csx\",\"cx\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSXDOM\"), h = b(\"Event\"), i = b(\"Arbiter\"), j = b(\"AvailableList\"), k = b(\"BlackbirdUpsell\"), l = b(\"ChannelConnection\"), m = b(\"ChannelConstants\"), n = b(\"ChatConfig\"), o = b(\"ChatSidebar\"), p = b(\"ChatVisibility\"), q = b(\"Class\"), r = b(\"CSS\"), s = b(\"Dock\"), t = b(\"DOM\"), u = b(\"HTML\"), v = b(\"Keys\"), w = b(\"NubController\"), x = b(\"OrderedFriendsList\"), y = b(\"Parent\"), z = b(\"PresencePrivacy\"), aa = b(\"Toggler\"), ba = b(\"copyProperties\"), ca = b(\"csx\"), da = b(\"cx\"), ea = b(\"tx\"), fa = 32, ga = 10;\n function ha(ia, ja, ka) {\n this.parent.construct(this);\n this.parent.init(ia);\n this.root = ia;\n this.orderedList = ja;\n this.typeahead = ka;\n this.button = t.find(ia, \"a.fbNubButton\");\n this.unreadCount = t.find(ia, \"span.-cx-PRIVATE-fbDockChatBuddyListNub__unreadcount\");\n this.label = t.find(ia, \"span.label\");\n this.body = t.scry(ia, \"div.fbNubFlyoutBody\")[0];\n this.container = y.byClass(ia, \"-cx-PUBLIC-fbDockChatBuddyListNub__container\");\n var la = t.find(ia, \"div.fbNubFlyoutTitlebar\");\n aa.createInstance(la).setSticky(false);\n ja.subscribe(\"render\", this.flyoutContentChanged.bind(this));\n ja.setScrollContainer(this.body);\n j.subscribe(\"buddylist/availability-changed\", this._updateCount.bind(this));\n i.subscribe(\"chat/connect\", this._handleConnect.bind(this));\n z.subscribe(\"privacy-user-presence-changed\", this._handleVisibilityChange.bind(this));\n this.message = t.find(ia, \"div.-cx-PRIVATE-fbDockChatBuddyListNub__message\");\n this.warningMsgText = null;\n this.warningMsgEventListener = null;\n this.showWarningTimeout = null;\n l.subscribe(l.CONNECTED, this._handleChannelConnected.bind(this));\n l.subscribe(l.SHUTDOWN, this._handleChannelShutdown.bind(this));\n l.subscribe(l.RECONNECTING, this._handleChannelReconnecting.bind(this));\n l.subscribe([l.MUTE_WARNING,l.UNMUTE_WARNING,], this._updateView.bind(this));\n this.subscribe(\"show\", this.onShow.bind(this));\n this.subscribe(\"hide\", this.onHide.bind(this));\n this.subscribe(\"resize\", this.onResize.bind(this));\n h.listen(ia, \"keydown\", this._onKeyDown.bind(this));\n h.listen(this.button, \"click\", this.onButtonClick.bind(this));\n ka.subscribe([\"respond\",\"reset\",], function(ma, na) {\n if (this._isOpen) {\n var oa = this.orderedList.isVisible();\n if ((((na && na.value) && (na.value === ka.getCore().getValue())) && ka.getView().isVisible())) {\n s.setUseMaxHeight(this.root, false);\n this.orderedList.hide();\n }\n else this._showBuddyList();\n ;\n if ((oa !== this.orderedList.isVisible())) {\n this.flyoutContentChanged();\n };\n }\n ;\n }.bind(this));\n i.subscribe(\"sidebar/show\", this.hide.bind(this));\n i.subscribe(\"sidebar/hide\", this._onSidebarHide.bind(this));\n if (n.get(\"litestand_buddylist_count\")) {\n this._unreadMessageCount = 0;\n i.subscribe(\"buddylist-nub/updateCount\", function(ma, na) {\n if ((this._unreadMessageCount !== na.count)) {\n this._unreadMessageCount = na.count;\n this._updateView();\n }\n ;\n }.bind(this));\n }\n ;\n this._orderedListCount = x.getList().length;\n i.inform(\"buddylist-nub/initialized\", this, i.BEHAVIOR_PERSISTENT);\n this._handleVisibilityChange();\n };\n q.extend(ha, w);\n ba(ha.prototype, {\n getButton: function() {\n return this.button;\n },\n getRoot: function() {\n return this.root;\n },\n _handleConnect: function(ia) {\n this._updateView(true);\n },\n _getShutdownReason: function(ia) {\n switch (ia) {\n case m.HINT_AUTH:\n return \"Your session has timed out. Please log in.\";\n case m.HINT_CONN:\n return ea._(\"Facebook {Chat} is currently unavailable.\", {\n Chat: \"Chat\"\n });\n case m.HINT_MAINT:\n return ea._(\"Facebook {Chat} is currently down for maintenance.\", {\n Chat: \"Chat\"\n });\n default:\n return ea._(\"Facebook {Chat} is currently unavailable.\", {\n Chat: \"Chat\"\n });\n };\n },\n _getReconnectMsg: function(ia) {\n var ja;\n if ((ia === null)) {\n ja = \"Unable to connect to chat. Check your Internet connection.\";\n }\n else if ((ia > n.get(\"warning_countdown_threshold_msec\"))) {\n var ka = t.create(\"a\", {\n href: \"#\",\n className: \"fbChatReconnectLink\"\n }, \"Try again\"), la = t.create(\"div\", null, ka), ma = la.innerHTML;\n ja = u(ea._(\"Unable to connect to chat. {try-again-link}\", {\n \"try-again-link\": ma\n }));\n }\n else if ((ia > 1000)) {\n ja = ea._(\"Unable to connect to chat. Reconnecting in {seconds}...\", {\n seconds: Math.floor((ia / 1000))\n });\n }\n else ja = \"Unable to connect to chat. Reconnecting...\";\n \n \n ;\n return ja;\n },\n _resetShowWarningTimeout: function() {\n if (this.showWarningTimeout) {\n clearTimeout(this.showWarningTimeout);\n this.showWarningTimeout = null;\n }\n ;\n },\n _handleChannelConnected: function(ia) {\n this._resetShowWarningTimeout();\n if (this.orderedList.isVisible()) {\n p.goOnline();\n };\n this.warningMsgText = null;\n this._updateView();\n },\n _handleChannelShutdown: function(ia, ja) {\n this._resetShowWarningTimeout();\n this.warningMsgText = this._getShutdownReason(ja);\n this._updateView();\n },\n _handleChannelReconnecting: function(ia, ja) {\n this._resetShowWarningTimeout();\n this.warningMsgText = this._getReconnectMsg(ja);\n if ((ja > 1000)) {\n if ((ja > n.get(\"warning_countdown_threshold_msec\"))) {\n if (this.warningMsgEventListener) {\n this.warningMsgEventListener.remove();\n this.warningMsgEventListener = null;\n }\n ;\n this.warningMsgEventListener = h.listen(this.message, \"click\", function(event) {\n if (r.hasClass(event.getTarget(), \"fbChatReconnectLink\")) {\n this._tryReconnect();\n event.kill();\n }\n ;\n }.bind(this));\n }\n ;\n this.showWarningTimeout = setTimeout(this._handleChannelReconnecting.bind(this, ia, (ja - 1000)), 1000, false);\n }\n ;\n this._updateView();\n },\n _tryReconnect: function() {\n if (l.disconnected()) {\n l.reconnect();\n };\n },\n _handleVisibilityChange: function() {\n this._updateView();\n if (k.shouldShow()) {\n if (p.hasBlackbirdEnabled()) {\n k.showBlackbirdDialog(this.getButton(), z.getVisibility());\n }\n else if (!p.isOnline()) {\n k.showOfflineDialog(this.getButton());\n }\n ;\n }\n else k.hide();\n ;\n if (!p.isOnline()) {\n this.hide();\n };\n },\n _updateView: function(ia) {\n var ja = this.container;\n if (ja) {\n r.conditionClass(ja, \"offline\", !p.isOnline());\n r.conditionClass(ja, \"error\", l.disconnected());\n }\n ;\n if (l.disconnected()) {\n t.setContent(this.message, this.warningMsgText);\n };\n var ka, la;\n if (!p.isOnline()) {\n ka = ea._(\"{Chat} (Off)\", {\n Chat: \"Chat\"\n });\n }\n else if (l.disconnected()) {\n ka = ea._(\"{Chat} (Disconnected)\", {\n Chat: \"Chat\"\n });\n }\n else {\n var ma = j.getOnlineCount();\n if (ma) {\n ka = ea._(\"{Chat} {number-available}\", {\n Chat: \"Chat\",\n \"number-available\": g.span({\n className: \"count\"\n }, \" (\", g.strong(null, ma), \") \")\n });\n }\n else {\n ka = \"Chat\";\n la = true;\n }\n ;\n }\n \n ;\n this._setUnread(this._unreadMessageCount);\n this._setLabel(ka, la);\n this.buttonContentChanged();\n },\n onButtonClick: function() {\n this._conditionallyShowTypeahead();\n if (r.shown(this.typeahead.getElement())) {\n var ia = this.subscribe(\"show\", function() {\n this.typeahead.getCore().getElement().focus();\n k.dismiss();\n }.bind(this));\n this.unsubscribe.bind(this, ia).defer();\n }\n ;\n },\n onHide: function() {\n this._isOpen = false;\n if (this._buddyListRenderSubscription) {\n this.orderedList.unsubscribe(this._buddyListRenderSubscription);\n this._buddyListRenderSubscription = null;\n }\n ;\n this.orderedList.hide();\n this.typeahead.getCore().reset();\n },\n _onKeyDown: function(event) {\n var ia = h.getKeyCode(event);\n if (((ia === v.ESC) && !r.hasClass(this.root, \"menuOpened\"))) {\n this.hide();\n return false;\n }\n else if ((ia == v.RETURN)) {\n o.enable();\n }\n ;\n },\n _onSidebarHide: function(event) {\n this.getButton().focus();\n },\n onResize: function() {\n var ia = (s.getMaxFlyoutHeight(this.root) - 60), ja = Math.max(250, ia);\n this.orderedList.setNumTopFriends(Math.floor((ja / fa)));\n },\n _showBuddyList: function() {\n if (!this._buddyListRenderSubscription) {\n this._buddyListRenderSubscription = this.orderedList.subscribe(\"render\", s.setUseMaxHeight.bind(s, this.root, false));\n };\n this.orderedList.show();\n },\n onShow: function() {\n this._isOpen = true;\n if (l.disconnected()) {\n this._tryReconnect();\n this._showBuddyList();\n }\n else p.goOnline(this._showBuddyList.bind(this));\n ;\n },\n _setLabel: function(ia, ja) {\n var ka = this.label.cloneNode(true);\n t.setContent(ka, ia);\n t.replace(this.label, ka);\n this.label = ka;\n (this.throbber && r.conditionShow(this.throbber, !!ja));\n },\n _setUnread: function(ia) {\n r.conditionShow(this.unreadCount, !!ia);\n if (ia) {\n ia = g.span({\n className: \"-cx-PRIVATE-fbMercuryChatTab__nummessages -cx-PRIVATE-fbMercuryChatTab__numbluegrey\"\n }, ia);\n t.setContent(this.unreadCount, ia);\n }\n ;\n },\n _conditionallyShowTypeahead: function() {\n r.conditionShow(this.typeahead.getElement(), (this._orderedListCount >= ga));\n },\n _updateCount: function() {\n this._updateView();\n this._conditionallyShowTypeahead();\n }\n });\n e.exports = ha;\n});\n__d(\"LiveBarData\", [\"function-extensions\",\"Arbiter\",\"ArbiterMixin\",\"AsyncRequest\",\"ChannelConstants\",\"LayerDestroyOnHide\",\"copyProperties\",\"setTimeoutAcrossTransitions\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"Arbiter\"), h = b(\"ArbiterMixin\"), i = b(\"AsyncRequest\"), j = b(\"ChannelConstants\"), k = b(\"LayerDestroyOnHide\"), l = b(\"copyProperties\"), m = b(\"setTimeoutAcrossTransitions\"), n = false, o = {\n }, p = {\n }, q = {\n };\n function r(y) {\n if (((((y.expires * 1000)) - Date.now()) > 0)) {\n return true\n };\n return false;\n };\n function s(y) {\n var z = y.payload.actions;\n if (!((z && z.length))) {\n return\n };\n var aa;\n for (var ba = 0; (ba < z.length); ba++) {\n aa = z[ba].actor_id;\n if ((!o[aa] || (z[ba].action_id != o[aa].action_id))) {\n continue;\n };\n if ((z[ba].delete_action || z[ba].remove)) {\n v(z[ba]);\n continue;\n }\n ;\n };\n };\n function t(y) {\n var z = false;\n for (var aa = 0; (aa < y.length); aa++) {\n if ((y[aa].delete_action || y[aa].remove)) {\n v(y[aa]);\n continue;\n }\n ;\n var ba = y[aa].actor_id, ca = y[aa].action_id;\n if (o[ba]) {\n if ((o[ba].action_id == ca)) {\n continue;\n };\n v(o[ba]);\n }\n ;\n z = true;\n o[ba] = y[aa];\n u(y[aa]);\n };\n if (z) {\n x.inform(\"new-actions\");\n };\n };\n function u(y) {\n var z = (((y.expires * 1000)) - Date.now());\n p[y.actor_id] = m(v.curry(y), Math.max(0, z));\n };\n function v(y) {\n if (!o[y.actor_id]) {\n return\n };\n if ((o[y.actor_id].action_id != y.action_id)) {\n return\n };\n delete o[y.actor_id];\n var z = y.actor_id;\n if (p[z]) {\n clearTimeout(p[z]);\n delete p[z];\n }\n ;\n w(z);\n x.inform(\"remove-action\", y);\n };\n function w(y) {\n var z = q[y];\n if (z) {\n z.enableBehavior(k);\n if (!z.isShown()) {\n z.destroy();\n };\n delete q[y];\n }\n ;\n };\n g.subscribe(j.getArbiterType(\"livebar_update\"), function(y, z) {\n t(z.obj.actions);\n });\n var x = {\n };\n l(x, h, {\n fetch: function() {\n if (n) {\n return\n };\n var y = [];\n for (var z in o) {\n var aa = o[z];\n if (aa.suppress_callout) {\n continue;\n };\n if (!q[aa.actor_id]) {\n y.push(o[z]);\n };\n };\n if ((y.length > 0)) {\n n = true;\n new i().setURI(\"/ajax/chat/livebar.php\").setData({\n actions: y\n }).setHandler(s).setFinallyHandler(function() {\n n = false;\n }).setAllowCrossPageTransition(true).send();\n }\n ;\n },\n addActions: t,\n getAction: function(y) {\n var z = o[y];\n if ((z && r(z))) {\n return z\n };\n return null;\n },\n getDialog: function(y) {\n var z = this.getAction(y);\n if ((z && q[z.actor_id])) {\n return q[z.actor_id]\n };\n return null;\n },\n setDialog: function(y, z, aa) {\n var ba = o[y];\n if ((ba && (ba.action_id == z))) {\n w(y);\n q[y] = aa;\n x.inform(\"dialog-fetched\", y);\n }\n ;\n }\n });\n e.exports = x;\n});\n__d(\"LiveBar\", [\"ChatOrderedList\",\"function-extensions\",\"LegacyContextualDialog\",\"ChatConfig\",\"CSS\",\"LiveBarData\",\"copyProperties\",\"setTimeoutAcrossTransitions\",\"shield\",], function(a, b, c, d, e, f) {\n b(\"ChatOrderedList\");\n b(\"function-extensions\");\n b(\"LegacyContextualDialog\");\n var g = b(\"ChatConfig\"), h = b(\"CSS\"), i = b(\"LiveBarData\"), j = b(\"copyProperties\"), k = b(\"setTimeoutAcrossTransitions\"), l = b(\"shield\"), m = (g.get(\"livebar_fetch_defer\") || 1000);\n function n(o, p, q) {\n this._orderedList = o;\n this._root = o.getRoot();\n this._liveBarTypes = q;\n this._hoverController = o.getHoverController();\n this._hoverController.subscribe(\"hover\", this._mouseMove.bind(this));\n this._hoverController.subscribe(\"leave\", this._mouseLeave.bind(this));\n o.subscribe(\"render\", l(this._handleChatListUpdate, this));\n i.subscribe(\"new-actions\", this._updateIcons.bind(this));\n i.subscribe(\"remove-action\", this._handleRemoveAction.bind(this));\n i.subscribe(\"dialog-fetched\", function(r, s) {\n this._setDialogContent(s);\n }.bind(this));\n i.addActions(p);\n };\n j(n, {\n setDialog: function(o, p, q) {\n i.setDialog(o, p, q);\n }\n });\n j(n.prototype, {\n _root: null,\n _liveBarTypes: null,\n _hoverController: null,\n _registrations: {\n },\n _renderedIcons: {\n },\n _fetchTimer: null,\n _mouseLeftRoot: false,\n _chatListRendered: false,\n _getLiveBarTypes: function() {\n return this._liveBarTypes;\n },\n _handleChatListUpdate: function() {\n if (!this._chatListRendered) {\n this._chatListRendered = true;\n this._updateIcons();\n }\n ;\n },\n _handleShow: function(o) {\n this._setDialogContent(o);\n },\n _mouseMove: function() {\n if (!this._fetchTimer) {\n this._fetchTimer = k(this._fetch.bind(this), m);\n this._mouseLeftRoot = false;\n }\n ;\n },\n _mouseLeave: function() {\n this._mouseLeftRoot = true;\n clearTimeout(this._fetchTimer);\n this._fetchTimer = null;\n },\n _setDialogContent: function(o) {\n var p = i.getDialog(o);\n if (p) {\n this._hoverController.showHovercard(o, p);\n };\n },\n _fetch: function() {\n if (this._mouseLeftRoot) {\n return\n };\n this._fetchTimer = null;\n i.fetch();\n },\n _updateIcons: function() {\n if (!this._chatListRendered) {\n return\n };\n var o = this._orderedList.getAllNodes(), p = this._getLiveBarTypes();\n for (var q in o) {\n var r = i.getAction(q);\n if ((r && ((!this._renderedIcons[q] || (this._renderedIcons[q] != r.action_id))))) {\n for (var s = 0; (s < p.length); s++) {\n h.removeClass(o[q], p[s]);;\n };\n h.addClass(o[q], r.livebar_type);\n this._renderedIcons[q] = r.action_id;\n var t = this._hoverController.register(q, this._handleShow.bind(this));\n if (t) {\n this._registrations[q] = t;\n };\n }\n ;\n };\n },\n _handleRemoveAction: function(o, p) {\n var q = p.action_id, r = p.actor_id;\n (this._registrations[r] && this._registrations[r].unregister());\n delete this._registrations[r];\n if ((this._renderedIcons[r] == q)) {\n var s = this._getLiveBarTypes(), t = this._orderedList.getAllNodes();\n if (t[r]) {\n for (var u = 0; (u < s.length); u++) {\n h.removeClass(t[r], s[u]);;\n }\n };\n delete this._renderedIcons[r];\n }\n ;\n }\n });\n e.exports = n;\n});\n__d(\"LiveBarDark\", [\"Class\",\"LiveBar\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"LiveBar\"), i = b(\"copyProperties\"), j = b(\"emptyFunction\");\n function k(l, m, n) {\n this.parent.construct(this, l, m, n);\n };\n g.extend(k, h);\n i(k.prototype, {\n _setupDialogContent: j,\n _show: j,\n _updateIcons: j,\n _handleRemoveAction: j,\n _handleChatListUpdate: j\n });\n e.exports = k;\n});\n__d(\"ChatSidebarDropdown\", [\"Arbiter\",\"AsyncRequest\",\"Chat\",\"ChatOptions\",\"ChatVisibility\",\"CSS\",\"DOM\",\"Event\",\"JSLogger\",\"PresenceState\",\"SelectorDeprecated\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncRequest\"), i = b(\"Chat\"), j = b(\"ChatOptions\"), k = b(\"ChatVisibility\"), l = b(\"CSS\"), m = b(\"DOM\"), n = b(\"Event\"), o = b(\"JSLogger\"), p = b(\"PresenceState\"), q = b(\"SelectorDeprecated\"), r = b(\"copyProperties\");\n function s(t, u) {\n this._root = t;\n this._logger = o.create(\"blackbird\");\n this._displayBrowserNotificationsIfNeeded();\n q.listen(t, \"select\", this._onSelect.bind(this));\n q.listen(t, \"toggle\", this._onToggle.bind(this));\n if (u) {\n q.listen(t, \"close\", u.allowCollapse.curry(true, \"SidebarMenu\"));\n q.listen(t, \"open\", u.allowCollapse.curry(false, \"SidebarMenu\"));\n }\n ;\n g.subscribe(\"chat/option-changed\", this._onOptionChanged.bind(this));\n };\n r(s, {\n registerEditFavorites: function(t, u, v) {\n function w(x) {\n l.conditionShow(t, !x);\n l.conditionShow(u, x);\n };\n n.listen(t, \"click\", function() {\n v.toggleEditMode();\n w(true);\n });\n n.listen(u, \"click\", function() {\n v.toggleEditMode();\n w(false);\n });\n v.subscribe(\"editStart\", w.curry(true));\n v.subscribe(\"editEnd\", w.curry(false));\n }\n });\n r(s.prototype, {\n changeSetting: function(t, u) {\n if (this._pendingChange) {\n return false\n };\n this._pendingChange = true;\n var v = {\n };\n v[t] = u;\n j.setSetting(t, u, \"sidebar_menu\");\n new h(\"/ajax/chat/settings.php\").setHandler(this._onChangeSettingResponse.bind(this, t, u)).setErrorHandler(this._onChangeSettingError.bind(this, t, u)).setFinallyHandler(this._onChangeFinally.bind(this)).setData(v).setAllowCrossPageTransition(true).send();\n },\n _displayBrowserNotificationsIfNeeded: function() {\n if (window.webkitNotifications) {\n m.scry(document, \"li.sidebar-browser-notif\").forEach(l.show);\n if ((window.webkitNotifications.checkPermission() !== 0)) {\n m.scry(document, \"li.sidebar-browser-notif\").forEach(function(t) {\n l.removeClass(t, \"checked\");\n });\n };\n }\n ;\n },\n _conditionEnabled: function(t, u) {\n var v = q.getOption(this._root, t);\n (v && q.setOptionEnabled(v, u));\n },\n _onChangeSettingResponse: function(t, u, v) {\n p.doSync();\n },\n _onChangeSettingError: function(t, u, v) {\n j.setSetting(t, !u, \"sidebar_menu_error\");\n },\n _onChangeFinally: function() {\n this._pendingChange = false;\n },\n _onOptionChanged: function(t, u) {\n var v = u.name, w = u.value;\n if (((v === \"sound\") || (v === \"browser_notif\"))) {\n var x = q.getOption(this._root, v);\n if ((w !== q.isOptionSelected(x))) {\n q.setSelected(this._root, v, w);\n };\n }\n ;\n },\n _onSelect: function(t) {\n if (this._pendingChange) {\n return false\n };\n var u = false, v = false, w = q.getOptionValue(t.option);\n switch (w) {\n case \"sidebar\":\n return this.toggleSidebar();\n case \"online\":\n if (!k.isOnline()) {\n k.goOnline();\n }\n else v = true;\n ;\n u = true;\n break;\n case \"offline\":\n if (k.isOnline()) {\n k.goOffline();\n }\n else v = true;\n ;\n u = true;\n break;\n case \"advanced_settings\":\n \n case \"turn_off_dialog\":\n g.inform(\"chat/advanced-settings-dialog-opened\");\n u = true;\n break;\n };\n if (v) {\n this._logger.error(\"sidebar_dropdown_visibility_error\", {\n action: w\n });\n }\n else this._logger.log(\"sidebar_dropdown_set_visibility\", {\n action: w\n });\n ;\n if (u) {\n q.toggle(this._root);\n return false;\n }\n ;\n },\n _onToggle: function(t) {\n if (this._pendingChange) {\n return false\n };\n var u = q.getOptionValue(t.option), v = q.isOptionSelected(t.option);\n switch (u) {\n case \"visibility\":\n if (!k) {\n this._jslogger.error(\"on_toggle_visibility_undefined\");\n return;\n }\n ;\n k.toggleVisibility();\n this._logger.log(\"sidebar_dropdown_toggle_visibility\", {\n available: v\n });\n break;\n case \"browser_notif\":\n if (((v && window.webkitNotifications) && (window.webkitNotifications.checkPermission() !== 0))) {\n window.webkitNotifications.requestPermission(function() {\n this.changeSetting(u, v);\n }.bind(this));\n }\n else this.changeSetting(u, v);\n ;\n break;\n case \"sound\":\n this.changeSetting(u, v);\n break;\n };\n q.toggle(this._root);\n },\n _onVisibilityChanged: function() {\n var t = k.isOnline(), u = q.getOption(this._root, \"visibility\");\n if ((t !== q.isOptionSelected(u))) {\n q.setSelected(this._root, \"visibility\", t);\n };\n },\n toggleSidebar: function() {\n i.toggleSidebar();\n q.toggle(this._root);\n return false;\n }\n });\n e.exports = s;\n});\n__d(\"ModuleDependencies\", [], function(a, b, c, d, e, f) {\n function g(k, l, m) {\n var n = a.require.__debug.modules[m], o = a.require.__debug.deps;\n if (l[m]) {\n return\n };\n l[m] = true;\n if (!n) {\n (o[m] && (k[m] = true));\n return;\n }\n ;\n if ((!n.dependencies || !n.dependencies.length)) {\n if (n.waiting) {\n k[m] = true;\n };\n return;\n }\n ;\n n.dependencies.forEach(function(p) {\n g(k, l, p);\n });\n };\n function h(k) {\n if (a.require.__debug) {\n var l = {\n };\n g(l, {\n }, k);\n var m = Object.keys(l);\n m.sort();\n return m;\n }\n ;\n return null;\n };\n function i() {\n var k = {\n loading: {\n },\n missing: []\n };\n if (!a.require.__debug) {\n return k\n };\n var l = {\n }, m = a.require.__debug.modules, n = a.require.__debug.deps;\n for (var o in m) {\n var p = m[o];\n if (p.waiting) {\n var q = {\n };\n g(q, {\n }, p.id);\n delete q[p.id];\n k.loading[p.id] = Object.keys(q);\n k.loading[p.id].sort();\n k.loading[p.id].forEach(function(r) {\n if ((!((r in m)) && n[r])) {\n l[r] = 1;\n };\n });\n }\n ;\n };\n k.missing = Object.keys(l);\n k.missing.sort();\n return k;\n };\n var j = {\n getMissing: h,\n getNotLoadedModules: i\n };\n e.exports = j;\n});\n__d(\"ChatSidebarLog\", [\"AsyncSignal\",\"Bootloader\",\"ModuleDependencies\",\"JSLogger\",\"Run\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncSignal\"), h = b(\"Bootloader\"), i = b(\"ModuleDependencies\"), j = b(\"JSLogger\"), k = b(\"Run\"), l = j.create(\"chat_sidebar_load\"), m = null, n = false, o = (((Math.random() * 2147483648) | 0)).toString(36);\n k.onLoad(function() {\n n = true;\n });\n try {\n d([\"ChatSidebar\",], function(t) {\n m = t;\n });\n } catch (p) {\n l.warn(\"exception\", {\n reason: p.toString()\n });\n };\n function q(t, u) {\n if ((t.length > u)) {\n return t[u]\n };\n return null;\n };\n function r(t) {\n setTimeout(function() {\n var u = i.getMissing(\"ChatSidebar\"), v = h.getErrorUrls(), w = h.getLoadingUrls(), x = [];\n for (var y in w) {\n x.push({\n url: y,\n time: w[y]\n });;\n };\n x.sort(function(aa, ba) {\n return (ba.time - aa.time);\n });\n var z = {\n page_loaded: n,\n page_id: o,\n timeout: t,\n missing_total: u.length,\n module_1: q(u, 0),\n module_2: q(u, 1),\n module_3: q(u, 2),\n error_url_total: v.length,\n error_url_1: q(v, 0),\n error_url_2: q(v, 1),\n error_url_3: q(v, 2),\n loading_url_total: x.length,\n loading_url_1: (q(x, 0) ? q(x, 0).url : null),\n loading_time_1: (q(x, 0) ? q(x, 0).time : null),\n loading_url_2: (q(x, 1) ? q(x, 1).url : null),\n loading_time_2: (q(x, 1) ? q(x, 1).time : null),\n loading_url_3: (q(x, 2) ? q(x, 2).url : null),\n loading_time_3: (q(x, 2) ? q(x, 2).time : null)\n };\n if (!m) {\n l.warn((\"require_\" + t), {\n missing: u\n });\n z.symptom = \"require\";\n }\n ;\n if ((m && !m.isInitialized())) {\n l.warn((\"init_\" + t), {\n missing: u\n });\n z.symptom = \"init\";\n }\n ;\n if (z.symptom) {\n new g(\"/ajax/chat/sidebar_load.php\", z).send();\n };\n }, t);\n };\n var s = {\n start: function() {\n r(5000);\n r(10000);\n r(15000);\n r(30000);\n r(60000);\n }\n };\n e.exports = s;\n});\n__d(\"NotificationConstants\", [], function(a, b, c, d, e, f) {\n e.exports = {\n PayloadSourceType: {\n UNKNOWN: 0,\n USER_ACTION: 1,\n LIVE_SEND: 2,\n ENDPOINT: 3,\n INITIAL_LOAD: 4,\n OTHER_APPLICATION: 5\n }\n };\n});\n__d(\"NotificationTokens\", [\"Env\",], function(a, b, c, d, e, f) {\n var g = b(\"Env\"), h = {\n tokenizeIDs: function(i) {\n return i.map(function(j) {\n return ((g.user + \":\") + j);\n });\n },\n untokenizeIDs: function(i) {\n return i.map(function(j) {\n return j.split(\":\")[1];\n });\n }\n };\n e.exports = h;\n});\n__d(\"NotificationImpressions\", [\"AsyncSignal\",\"NotificationTokens\",\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncSignal\"), h = b(\"NotificationTokens\"), i = b(\"URI\"), j = \"/ajax/notifications/impression.php\";\n function k(l, m) {\n var n = {\n ref: m\n };\n h.untokenizeIDs(l).forEach(function(o, p) {\n n[((\"alert_ids[\" + p) + \"]\")] = o;\n });\n new g(i(j).getQualifiedURI().toString(), n).send();\n };\n e.exports = {\n log: k\n };\n});\n__d(\"NotificationPhotoThumbnail\", [], function(a, b, c, d, e, f) {\n function g(i) {\n if (((!i.media || !i.style_list) || !i.style_list.length)) {\n return null\n };\n switch (i.style_list[0]) {\n case \"photo\":\n \n case \"album\":\n return i.media.image;\n default:\n return null;\n };\n };\n var h = {\n getThumbnail: function(i, j) {\n var k;\n if ((i && i.length)) {\n k = g(i[0]);\n if (k) {\n return k\n };\n }\n ;\n if (j) {\n var l = j.attachments;\n if ((l && l.length)) {\n return g(l[0])\n };\n }\n ;\n return null;\n }\n };\n e.exports = h;\n});\n__d(\"NotificationUpdates\", [\"Arbiter\",\"ChannelConstants\",\"JSLogger\",\"NotificationConstants\",\"NotificationTokens\",\"LiveTimer\",\"copyProperties\",\"createObjectFrom\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ChannelConstants\"), i = b(\"JSLogger\"), j = b(\"NotificationConstants\"), k = b(\"NotificationTokens\"), l = b(\"LiveTimer\"), m = b(\"copyProperties\"), n = b(\"createObjectFrom\"), o = {\n }, p = {\n }, q = {\n }, r = {\n }, s = [], t = 0, u = i.create(\"notification_updates\");\n function v() {\n if (t) {\n return\n };\n var z = o, aa = p, ba = q, ca = r;\n o = {\n };\n p = {\n };\n q = {\n };\n r = {\n };\n x(\"notifications-updated\", z);\n if (Object.keys(aa).length) {\n x(\"seen-state-updated\", aa);\n };\n if (Object.keys(ba).length) {\n x(\"read-state-updated\", ba);\n };\n if (Object.keys(ca).length) {\n x(\"hidden-state-updated\", ca);\n };\n s.pop();\n };\n function w() {\n if (s.length) {\n return s[(s.length - 1)]\n };\n return j.PayloadSourceType.UNKNOWN;\n };\n function x(event, z) {\n y.inform(event, {\n updates: z,\n source: w()\n });\n };\n g.subscribe(h.getArbiterType(\"notification_json\"), function(z, aa) {\n var ba = Date.now(), ca = aa.obj.nodes;\n if (ca) {\n ca.forEach(function(da) {\n da.receivedTime = ba;\n });\n u.debug(\"notifications_received\", ca);\n y.handleUpdate(j.PayloadSourceType.LIVE_SEND, aa.obj);\n }\n ;\n });\n g.subscribe(h.getArbiterType(\"notifications_seen\"), function(z, aa) {\n var ba = k.tokenizeIDs(aa.obj.alert_ids);\n y.handleUpdate(j.PayloadSourceType.LIVE_SEND, {\n seenState: n(ba)\n });\n });\n g.subscribe(h.getArbiterType(\"notifications_read\"), function(z, aa) {\n var ba = k.tokenizeIDs(aa.obj.alert_ids);\n y.handleUpdate(j.PayloadSourceType.LIVE_SEND, {\n readState: n(ba)\n });\n });\n var y = m(new g(), {\n handleUpdate: function(z, aa) {\n if (aa.servertime) {\n l.restart(aa.servertime);\n };\n if (Object.keys(aa).length) {\n this.synchronizeInforms(function() {\n s.push(z);\n var ba = m({\n payloadsource: w()\n }, aa);\n this.inform(\"update-notifications\", ba);\n this.inform(\"update-seen\", ba);\n this.inform(\"update-read\", ba);\n this.inform(\"update-hidden\", ba);\n }.bind(this));\n };\n },\n didUpdateNotifications: function(z) {\n m(o, n(z));\n v();\n },\n didUpdateSeenState: function(z) {\n m(p, n(z));\n v();\n },\n didUpdateReadState: function(z) {\n m(q, n(z));\n v();\n },\n didUpdateHiddenState: function(z) {\n m(r, n(z));\n v();\n },\n synchronizeInforms: function(z) {\n t++;\n try {\n z();\n } catch (aa) {\n throw aa;\n } finally {\n t--;\n v();\n };\n }\n });\n e.exports = y;\n});\n__d(\"NotificationStore\", [\"KeyedCallbackManager\",\"NotificationConstants\",\"NotificationUpdates\",\"RangedCallbackManager\",\"MercuryServerDispatcher\",], function(a, b, c, d, e, f) {\n var g = b(\"KeyedCallbackManager\"), h = b(\"NotificationConstants\"), i = b(\"NotificationUpdates\"), j = b(\"RangedCallbackManager\"), k = b(\"MercuryServerDispatcher\"), l = new g(), m = new j(function(p) {\n var q = l.getResource(p);\n return q.creation_time;\n }, function(p, q) {\n return (q - p);\n }), n = {\n };\n i.subscribe(\"update-notifications\", function(p, q) {\n if (q.page_info) {\n n = q.page_info;\n };\n if ((q.nodes === undefined)) {\n return\n };\n var r, s = [], t = {\n }, u = (q.nodes || []), v;\n u.forEach(function(w) {\n r = w.alert_id;\n v = l.getResource(r);\n if ((!v || (v.creation_time < w.creation_time))) {\n s.push(r);\n t[r] = w;\n }\n ;\n });\n l.addResourcesAndExecute(t);\n m.addResources(s);\n i.didUpdateNotifications(s);\n });\n k.registerEndpoints({\n \"/ajax/notifications/client/get.php\": {\n mode: k.IMMEDIATE,\n handler: function(p) {\n i.handleUpdate(h.PayloadSourceType.ENDPOINT, p);\n }\n }\n });\n var o = {\n getNotifications: function(p, q) {\n var r = m.executeOrEnqueue(0, p, function(w) {\n var x = l.executeOrEnqueue(w, function(y) {\n q(y);\n });\n }), s = m.getUnavailableResources(r);\n if (s.length) {\n m.unsubscribe(r);\n if (!o.canFetchMore()) {\n l.executeOrEnqueue(m.getAllResources(), q);\n return;\n }\n ;\n var t = (n.end_cursor || null), u;\n if (t) {\n var v = Math.max.apply(null, s);\n u = ((v - m.getCurrentArraySize()) + 1);\n }\n else u = p;\n ;\n k.trySend(\"/ajax/notifications/client/get.php\", {\n cursor: t,\n length: u\n });\n }\n ;\n },\n getAll: function(p) {\n o.getNotifications(o.getCount(), p);\n },\n getCount: function() {\n return m.getCurrentArraySize();\n },\n canFetchMore: function() {\n if (n.hasOwnProperty(\"has_next_page\")) {\n return n.has_next_page\n };\n return true;\n }\n };\n e.exports = o;\n});\n__d(\"NotificationUserActions\", [\"AsyncRequest\",\"AsyncSignal\",\"NotificationConstants\",\"NotificationStore\",\"NotificationTokens\",\"NotificationUpdates\",\"URI\",\"createObjectFrom\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"AsyncSignal\"), i = b(\"NotificationConstants\"), j = b(\"NotificationStore\"), k = b(\"NotificationTokens\"), l = b(\"NotificationUpdates\"), m = b(\"URI\"), n = b(\"createObjectFrom\"), o = b(\"emptyFunction\"), p = i.PayloadSourceType.USER_ACTION, q = \"mark_spam\", r = \"turn_off\", s = \"undo\", t = \"first_receipt_yes\", u = \"first_receipt_no\";\n function v(aa) {\n var ba = m(\"/ajax/notifications/mark_read.php\").getQualifiedURI().toString();\n new h(ba, aa).send();\n };\n function w(aa) {\n var ba = {\n };\n aa.forEach(function(ca, da) {\n ba[((\"alert_ids[\" + da) + \"]\")] = ca;\n });\n return ba;\n };\n function x(aa, ba, ca, da) {\n var ea = k.untokenizeIDs([aa,])[0];\n new g(\"/ajax/notifications/negative_req.php\").setData({\n notification_id: ea,\n client_rendered: true,\n request_type: ba\n }).setHandler((ca || o)).setErrorHandler((da || o)).send();\n };\n function y(aa, ba, ca, da, ea) {\n var fa = (ea ? s : r);\n j.getAll(function(ga) {\n var ha = Object.keys(ga).filter(function(ia) {\n var ja = ga[ia];\n return !!(((ja.application && ja.application.id) && (ja.application.id == ba)));\n });\n x(aa, fa, function(ia) {\n ca(ia);\n l.handleUpdate(p, {\n hiddenState: n(ha, !ea)\n });\n }, da);\n });\n };\n var z = {\n markNotificationsAsSeen: function(aa) {\n l.handleUpdate(p, {\n seenState: n(aa)\n });\n var ba = k.untokenizeIDs(aa), ca = w(ba);\n ca.seen = true;\n v(ca);\n if (a.presenceNotifications) {\n a.presenceNotifications.alertList.markSeen(ba);\n };\n },\n markNotificationsAsRead: function(aa) {\n l.handleUpdate(p, {\n readState: n(aa)\n });\n var ba = k.untokenizeIDs(aa);\n v(w(ba));\n if (a.presenceNotifications) {\n a.presenceNotifications.markRead(false, ba);\n };\n },\n markNotificationAsHidden: function(aa, ba, ca) {\n l.handleUpdate(p, {\n hiddenState: n([aa,])\n });\n x(aa, r, ba, ca);\n },\n markNotificationAsVisible: function(aa, ba, ca) {\n l.handleUpdate(p, {\n hiddenState: n([aa,], false)\n });\n x(aa, s, ba, ca);\n },\n markNotificationAsSpam: function(aa, ba, ca) {\n l.handleUpdate(p, {\n hiddenState: n([aa,], false)\n });\n x(aa, q, ba, ca);\n },\n markAppAsHidden: function(aa, ba, ca, da) {\n var ea = false;\n y(aa, ba, ca, da, ea);\n },\n markAppAsVisible: function(aa, ba, ca, da) {\n var ea = true;\n y(aa, ba, ca, da, ea);\n },\n markFirstReceiptYes: function(aa, ba, ca) {\n x(aa, t, ba, ca);\n },\n markFirstReceiptNo: function(aa, ba, ca) {\n x(aa, u, ba, ca);\n }\n };\n e.exports = z;\n});\n__d(\"NotificationBeeperItemContents.react\", [\"Animation\",\"CloseButton.react\",\"ImageBlock.react\",\"NotificationURI\",\"NotificationUserActions\",\"React\",\"TextWithEntities.react\",\"Timestamp.react\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"CloseButton.react\"), i = b(\"ImageBlock.react\"), j = b(\"NotificationURI\"), k = b(\"NotificationUserActions\"), l = b(\"React\"), m = b(\"TextWithEntities.react\"), n = b(\"Timestamp.react\"), o = b(\"cx\");\n function p(r, s) {\n return l.DOM.span({\n className: \"fwb\"\n }, r);\n };\n var q = l.createClass({\n displayName: \"NotificationBeeperItemContents\",\n _markAsRead: function() {\n k.markNotificationsAsRead([this.props.beep.notificationID,]);\n this.props.onHide();\n },\n _onClose: function() {\n this._markAsRead();\n this.props.onHide();\n },\n _doFlash: function() {\n new g(this.refs.inner.getDOMNode()).from(\"opacity\", \"0\").to(\"opacity\", \"1\").duration(200).go();\n },\n componentDidUpdate: function(r) {\n if ((r.beep.beepID !== this.props.beep.beepID)) {\n this._doFlash();\n };\n },\n render: function() {\n var r = this.props.beep, s = r.icon.uri, t = (r.link ? j.localize(r.link) : \"#\"), u = (r.photo && j.snowliftable(t));\n return (l.DOM.div({\n ref: \"inner\"\n }, h({\n className: \"-cx-PRIVATE-notificationBeeperItem__closebutton\",\n onClick: this._onClose,\n size: \"medium\"\n }), l.DOM.a({\n href: t,\n ajaxify: (u ? t : null),\n onClick: this._markAsRead,\n rel: (u ? \"theater\" : null),\n className: \"-cx-PRIVATE-notificationBeeperItem__anchor\"\n }, i({\n className: \"-cx-PRIVATE-notificationBeeperItem__imageblock\"\n }, l.DOM.img({\n src: r.actors[0].profile_picture.uri,\n className: \"-cx-PRIVATE-notificationBeeperItem__photo\"\n }), l.DOM.div({\n className: \"-cx-PRIVATE-notificationBeeperItem__imageblockcontent\"\n }, m({\n renderEmoticons: true,\n renderEmoji: true,\n interpolator: p,\n ranges: r.text.ranges,\n aggregatedranges: r.text.aggregated_ranges,\n text: r.text.text\n }), i({\n className: \"-cx-PRIVATE-notificationBeeperItem__metadata\"\n }, l.DOM.img({\n src: s\n }), n({\n time: r.timestamp.time,\n text: r.timestamp.text,\n verbose: r.timestamp.verbose\n })))))));\n }\n });\n e.exports = q;\n});\n__d(\"NotificationBeeperItem.react\", [\"Animation\",\"BrowserSupport\",\"NotificationBeeperItemContents.react\",\"React\",\"cx\",\"setTimeoutAcrossTransitions\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"BrowserSupport\"), i = b(\"NotificationBeeperItemContents.react\"), j = b(\"React\"), k = b(\"cx\"), l = b(\"setTimeoutAcrossTransitions\"), m = j.createClass({\n displayName: \"NotificationBeeperItem\",\n getInitialState: function() {\n return {\n fadedIn: false,\n hidden: false\n };\n },\n componentDidMount: function() {\n var n;\n if (h.hasCSSAnimations()) {\n n = this.setState.bind(this, {\n fadedIn: true\n }, null);\n }\n else n = function() {\n new g(this.refs.item.getDOMNode()).from(\"top\", \"-30px\").from(\"opacity\", \"0\").to(\"top\", \"0px\").to(\"opacity\", \"1\").duration(200).ondone(this.setState.bind(this, {\n fadedIn: true\n }, null)).go();\n }.bind(this);\n ;\n l(n, 50);\n this.props.onInserted(this.props.beep);\n },\n render: function() {\n var n = this.props.beep, o = ((((\"-cx-PRIVATE-notificationBeeperItem__beeperitem\") + ((this.state.fadedIn ? (\" \" + \"-cx-PRIVATE-notificationBeeperItem__fadedin\") : \"\"))) + ((this.state.hidden ? (\" \" + \"-cx-PRIVATE-notificationBeeperItem__hiddenitem\") : \"\")))), p = (n.beepRenderer || i);\n return (j.DOM.li({\n className: o,\n ref: \"item\",\n \"data-gt\": n.tracking\n }, p({\n beep: n,\n onHide: this.setState.bind(this, {\n hidden: true\n }, null)\n })));\n }\n });\n e.exports = m;\n});\n__d(\"NotificationSound\", [\"Sound\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Sound\"), h = b(\"copyProperties\"), i = 5000;\n g.init([\"audio/mpeg\",]);\n function j(k) {\n this._soundPath = k;\n this._lastPlayed = 0;\n };\n h(j.prototype, {\n play: function(k) {\n if (!this._soundPath) {\n return\n };\n var l = Date.now();\n if ((((l - this._lastPlayed)) < i)) {\n return\n };\n this._lastPlayed = l;\n g.play(this._soundPath, k);\n }\n });\n e.exports = j;\n});\n__d(\"NotificationBeeper.react\", [\"Animation\",\"Arbiter\",\"ChannelConstants\",\"NotificationBeeperItem.react\",\"NotificationConstants\",\"NotificationImpressions\",\"NotificationPhotoThumbnail\",\"NotificationSound\",\"NotificationUpdates\",\"NotificationUserActions\",\"React\",\"Style\",\"cx\",\"isEmpty\",\"merge\",\"setTimeoutAcrossTransitions\",\"shield\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"Arbiter\"), i = b(\"ChannelConstants\"), j = b(\"NotificationBeeperItem.react\"), k = b(\"NotificationConstants\"), l = b(\"NotificationImpressions\"), m = b(\"NotificationPhotoThumbnail\"), n = b(\"NotificationSound\"), o = b(\"NotificationUpdates\"), p = b(\"NotificationUserActions\"), q = b(\"React\"), r = b(\"Style\"), s = b(\"cx\"), t = b(\"isEmpty\"), u = b(\"merge\"), v = b(\"setTimeoutAcrossTransitions\"), w = b(\"shield\"), x = 5000, y = 2000, z = \"beeper\", aa = k.PayloadSourceType.LIVE_SEND, ba = k.PayloadSourceType.OTHER_APPLICATION, ca = q.createClass({\n displayName: \"NotificationBeeper\",\n getInitialState: function() {\n return {\n soundEnabled: this.props.soundEnabled,\n hovering: false,\n fading: false,\n paused: false,\n pendingBeeps: {\n },\n renderedBeeps: {\n }\n };\n },\n componentWillMount: function() {\n var ea = i.getArbiterType(\"notif_sound_pref_changed\"), fa = \"update-notifications\";\n this.subscriptions = [o.subscribe(fa, function(ga, ha) {\n if (((ha.payloadsource === aa) || (ha.payloadsource === ba))) {\n var ia = ha.nodes;\n if ((ia && ia.length)) {\n this._handleBeepChanges(da(ia));\n };\n }\n ;\n }.bind(this)),h.subscribe(ea, function(ga, ha) {\n this.setState({\n soundEnabled: ha.obj.enabled\n });\n }.bind(this)),];\n h.inform(\"NotificationBeeper/mounted\", null, h.BEHAVIOR_PERSISTENT);\n },\n componentWillUnmount: function() {\n this.subscriptions.forEach(function(ea) {\n ea.unsubscribe();\n });\n this.subscriptions = null;\n },\n _onMouseEnter: function() {\n if (this.state.paused) {\n return\n };\n (this._hideWait && clearTimeout(this._hideWait));\n if (this.state.fading) {\n this._animation.stop();\n this._animation = null;\n r.set(this.refs.container.getDOMNode(), \"opacity\", \"0.96\");\n }\n ;\n var ea = Object.keys(this.state.renderedBeeps);\n if (this.props.unseenVsUnread) {\n p.markNotificationsAsSeen(ea);\n }\n else p.markNotificationsAsRead(ea);\n ;\n this.setState({\n hovering: true,\n fading: false,\n pendingBeeps: {\n },\n renderedBeeps: u(this.state.renderedBeeps, this.state.pendingBeeps)\n });\n },\n _onMouseLeave: function() {\n if (this.state.paused) {\n return\n };\n this._waitToHide(y);\n this.setState({\n hovering: false\n });\n },\n _onInsertedItem: function(ea) {\n if (!this.state.hovering) {\n this._waitToHide();\n };\n if ((this.state.soundEnabled && ea.sound)) {\n if (!this._notifSound) {\n this._notifSound = new n(this.props.soundPath);\n };\n this._notifSound.play(ea.beepID);\n }\n ;\n if (this.props.shouldLogImpressions) {\n l.log([ea.notificationID,], z);\n };\n },\n _waitToHide: function(ea) {\n (this._hideWait && clearTimeout(this._hideWait));\n this._hideWait = v(w(this._hide, this), (ea || x));\n },\n _hide: function() {\n (this._animation && this._animation.stop());\n this._animation = new g(this.refs.container.getDOMNode()).from(\"opacity\", \"0.96\").to(\"opacity\", \"0\").duration(1500).ondone(this._finishHide).go();\n this.setState({\n fading: true\n });\n },\n _finishHide: function() {\n var ea = this.state.pendingBeeps;\n this.setState({\n fading: false,\n pendingBeeps: {\n },\n renderedBeeps: {\n }\n });\n v(this.setState.bind(this, {\n renderedBeeps: ea\n }, null));\n r.set(this.refs.container.getDOMNode(), \"opacity\", \"0.96\");\n },\n _handleBeepChanges: function(ea) {\n var fa = (this.state.fading ? this.state.pendingBeeps : this.state.renderedBeeps);\n Object.keys(ea).reverse().forEach(function(ga) {\n var ha = ea[ga], ia = ha.beepID, ja = (this.state.renderedBeeps[ga] || {\n });\n if ((ja.beepID != ia)) {\n delete fa[ga];\n fa[ga] = ha;\n }\n ;\n }.bind(this));\n if (!this.state.paused) {\n this._waitToHide();\n };\n this.forceUpdate();\n },\n _togglePause: function() {\n if (!this.state.paused) {\n (this._animation && this._animation.stop());\n (this._hideWait && clearTimeout(this._hideWait));\n }\n else this._waitToHide();\n ;\n this.setState({\n paused: !this.state.paused\n });\n },\n render: function() {\n var ea = this.state.renderedBeeps, fa = {\n };\n Object.keys(ea).reverse().forEach(function(ja) {\n var ka = ea[ja];\n fa[ja] = j({\n beep: ka,\n onInserted: this._onInsertedItem\n });\n }, this);\n var ga = !t(fa), ha = null;\n if ((ga && this.props.canPause)) {\n ha = q.DOM.li({\n className: \"-cx-PRIVATE-notificationBeeper__pause\",\n onClick: this._togglePause\n }, (this.state.paused ? \"Continue\" : \"Pause [fb]\"));\n };\n var ia = ((((!ga ? \"hidden_elem\" : \"\")) + ((\" \" + \"-cx-PUBLIC-notificationBeeper__list\"))));\n return (q.DOM.ul({\n ref: \"container\",\n className: ia,\n \"data-gt\": this.props.tracking,\n onMouseEnter: this._onMouseEnter,\n onMouseLeave: this._onMouseLeave\n }, fa, ha));\n }\n });\n function da(ea) {\n var fa = {\n };\n ea.forEach(function(ga) {\n var ha = ga.alert_id, ia = ((ha + \"-\") + ga.receivedTime), ja = m.getThumbnail(ga.attachments, ga.attached_story);\n fa[ha] = {\n notificationID: ha,\n beepID: ia,\n beepRenderer: ga.beepRenderer,\n actors: ga.actors,\n icon: ga.icon,\n link: ga.url,\n photo: ja,\n text: (ga.unaggregatedTitle || ga.title),\n timestamp: ga.timestamp,\n receivedTime: ga.receivedTime,\n sound: !!ga.sound,\n tracking: ga.tracking\n };\n });\n return fa;\n };\n e.exports = ca;\n});\n__d(\"FbdEventLog\", [\"URI\",\"AsyncSignal\",], function(a, b, c, d, e, f) {\n var g = b(\"URI\"), h = b(\"AsyncSignal\"), i = {\n log: function(j, k, l, m) {\n if (!j) {\n return\n };\n var n = g(\"/desktop/eventlog.php\"), o = new h(n.toString(), {\n event: j,\n category: (k || \"unknown\"),\n payload: (l || \"\")\n });\n o.setHandler(m).send();\n }\n };\n e.exports = i;\n});\n__d(\"DownloadDialog\", [\"Event\",\"Arbiter\",\"Class\",\"DataStore\",\"ModalMask\",\"Overlay\",\"Parent\",\"Style\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Arbiter\"), i = b(\"Class\"), j = b(\"DataStore\"), k = b(\"ModalMask\"), l = b(\"Overlay\"), m = b(\"Parent\"), n = b(\"Style\"), o = b(\"copyProperties\"), p = b(\"emptyFunction\");\n function q() {\n this.parent.construct(this);\n return this;\n };\n i.extend(q, l);\n o(q, {\n POSITIONS: {\n BOTTOM_LEFT: \"bottom_left\",\n TOP_LEFT: \"top_left\",\n IE9_BOTTOM: \"ie9_bottom\"\n },\n activeDialogs: {\n },\n dismissAll: function() {\n for (var r in this.POSITIONS) {\n this.hideDialog(this.POSITIONS[r]);;\n };\n },\n hideDialog: function(r) {\n var s = this.activeDialogs[r];\n (s && s.hide());\n this.activeDialogs[r] = null;\n }\n });\n o(q.prototype, {\n _cancelHandler: p,\n _closeHandler: p,\n _width: null,\n position: q.POSITIONS.BOTTOM_LEFT,\n init: function(r, s) {\n this.parent.init(r);\n this.position = s;\n var t = ((j.get(this._root, \"modal\") === \"true\"));\n q.hideDialog(s);\n q.activeDialogs[s] = this;\n g.listen(this._root, \"click\", function(event) {\n if (m.byClass(event.getTarget(), \"closeButton\")) {\n if ((this._cancelHandler() !== false)) {\n q.hideDialog(this.position);\n }\n };\n }.bind(this));\n this.subscribe(\"show\", function() {\n if (t) {\n k.show();\n };\n h.inform(\"layer_shown\", {\n type: \"DownloadDialog\"\n });\n }.bind(this));\n this.subscribe(\"hide\", function() {\n if (t) {\n k.hide();\n };\n h.inform(\"layer_hidden\", {\n type: \"DownloadDialog\"\n });\n this._closeHandler();\n }.bind(this));\n },\n setWidth: function(r) {\n this._width = Math.floor(r);\n return this;\n },\n updatePosition: function() {\n if (this._width) {\n n.set(this._overlay, \"width\", (this._width + \"px\"));\n };\n return true;\n },\n setCancelHandler: function(r) {\n this._cancelHandler = (r || p);\n return this;\n },\n setCloseHandler: function(r) {\n this._closeHandler = (r || p);\n return this;\n }\n });\n e.exports = q;\n a.DownloadDialog = q;\n});\n__d(\"FbdConversionTracking\", [\"AsyncRequest\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"emptyFunction\"), i = {\n logClick: function(j, k) {\n if (!k) {\n k = \"desktop\";\n };\n new g().setURI(\"/ajax/desktop/log_clicks.php\").setData({\n click_source: j,\n promo: k\n }).setAllowCrossPageTransition(true).setErrorHandler(h).send();\n },\n logConversion: function(j, k) {\n if (!k) {\n k = \"desktop\";\n };\n new g().setURI(\"/ajax/desktop/log_conversions.php\").setData({\n conversion_action: j,\n promo: k\n }).setAllowCrossPageTransition(true).setErrorHandler(h).send();\n }\n };\n e.exports = i;\n});\n__d(\"FbdInstall\", [\"$\",\"AsyncRequest\",\"CSS\",\"DOM\",\"DownloadDialog\",\"FbdConversionTracking\",\"FbdEventLog\",\"FBDesktopDetect\",\"FBDesktopPlugin\",\"MegaphoneHelper\",], function(a, b, c, d, e, f) {\n var g = b(\"$\"), h = b(\"AsyncRequest\"), i = b(\"CSS\"), j = b(\"DOM\"), k = b(\"DownloadDialog\"), l = b(\"FbdConversionTracking\"), m = b(\"FbdEventLog\"), n = b(\"FBDesktopDetect\"), o = b(\"FBDesktopPlugin\"), p = b(\"MegaphoneHelper\"), q = 1000, r = (300 * q), s = {\n cancelSetup: function() {\n var t = JSON.stringify({\n ref: this.ref\n });\n m.log(\"download_canceled\", \"setup\", t);\n l.logConversion(\"download_canceled\");\n },\n hideMegaphone: function() {\n if ((this.megaphoneId && this.megaphoneLoc)) {\n p.hideStory(this.megaphoneId, this.megaphoneLoc, this.elementId, \"\", null);\n };\n },\n init: function(t, u) {\n this.downloadUrl = t;\n this.ref = (u || \"unknown\");\n },\n initInstallWait: function(t, u, v) {\n this.megaphoneId = t;\n this.megaphoneLoc = u;\n this.elementId = v;\n this._waitForInstall(r);\n },\n promptDownload: function(t) {\n t = (t || this.downloadUrl);\n if (t) {\n var u = JSON.stringify({\n ref: this.ref\n });\n m.log(\"download_prompted\", \"setup\", u);\n l.logConversion(\"download_prompted\");\n var v = j.create(\"iframe\", {\n src: t,\n className: \"hidden_elem\"\n });\n j.appendContent(document.body, v);\n }\n ;\n },\n _responseHandler: function(t) {\n if (t.payload) {\n this._authToken = t.payload.access_token;\n this._userId = t.payload.id;\n }\n ;\n if ((this._authToken && this._userId)) {\n this._waitForRunningStart = Date.now();\n setTimeout(this._waitForRunning.bind(this), q);\n }\n ;\n },\n setupPlugin: function() {\n new h(\"/ajax/desktop/download\").send();\n this.promptDownload();\n },\n updateSidebarLinkVisibility: function() {\n if (!n.isPluginInstalled()) {\n i.show(g(\"sidebar-messenger-install-link\"));\n i.show(g(\"sidebar-messenger-install-separator\"));\n }\n ;\n },\n _waitForInstall: function(t) {\n var u = JSON.stringify({\n ref: this.ref\n });\n if (n.isPluginInstalled()) {\n m.log(\"install_success\", \"setup\", u);\n l.logConversion(\"install_success\");\n o.recheck();\n new h(\"/desktop/fbdesktop2/transfer.php\").setMethod(\"POST\").setHandler(this._responseHandler.bind(this)).send();\n k.dismissAll();\n this.hideMegaphone();\n return;\n }\n ;\n if ((t <= 0)) {\n m.log(\"install_timeout\", \"setup\", u);\n l.logConversion(\"install_timeout\");\n k.dismissAll();\n }\n else setTimeout(this._waitForInstall.bind(this, (t - q)), q);\n ;\n },\n _waitForRunning: function() {\n var t = (Date.now() - this._waitForRunningStart);\n if (o.isAppRunning()) {\n o.transferAuthToken(this._authToken, this._userId);\n }\n else if ((t < r)) {\n setTimeout(this._waitForRunning.bind(this), q);\n }\n ;\n }\n };\n e.exports = s;\n});\n__d(\"legacy:fbdesktop2-install-js\", [\"FbdInstall\",], function(a, b, c, d) {\n a.FbdInstall = b(\"FbdInstall\");\n}, 3);\n__d(\"legacy:fbdesktop-conversion-tracking\", [\"FbdConversionTracking\",], function(a, b, c, d) {\n a.FbdConversionTracking = b(\"FbdConversionTracking\");\n}, 3);\n__d(\"SidebarTicker\", [\"Arbiter\",\"ChatSidebar\",\"CSS\",\"DOM\",\"Run\",\"TickerController\",\"$\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ChatSidebar\"), i = b(\"CSS\"), j = b(\"DOM\"), k = b(\"Run\"), l = b(\"TickerController\"), m = b(\"$\"), n = b(\"copyProperties\");\n function o() {\n this._ticker = m(\"pagelet_ticker\");\n this._initSubscriptions();\n if (i.hasClass(document.documentElement, \"sidebarMode\")) {\n this._onSidebarShow();\n };\n };\n o.hide = function() {\n k.onAfterLoad(function() {\n j.remove(m(\"pagelet_ticker\"));\n j.remove(j.find(document.body, \"div.fbSidebarGripper\"));\n h.resize();\n });\n };\n n(o.prototype, {\n _initSubscriptions: function() {\n this._subscriptions = [g.subscribe(\"sidebar/show\", this._onSidebarShow.bind(this)),];\n },\n _onSidebarShow: function() {\n l.show(this._ticker);\n }\n });\n e.exports = o;\n});\n__d(\"SidebarTickerResizer\", [\"Arbiter\",\"AsyncRequest\",\"ChatSidebar\",\"SimpleDrag\",\"$\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncRequest\"), i = b(\"ChatSidebar\"), j = b(\"SimpleDrag\"), k = b(\"$\"), l = 1e-7;\n function m(n) {\n var o = k(\"pagelet_ticker\"), p = o.parentNode, q = this._saveResizedState.bind(this), r, s, t, u = function(x, event) {\n r = event.clientY;\n s = o.offsetHeight;\n t = p.offsetHeight;\n }, v = function(x, event) {\n var y = (s + ((event.clientY - r))), z = (100 - ((((((t - y)) / t)) * 100)));\n z = Math.max(l, Math.min(90, z));\n o.style.height = (z + \"%\");\n if ((x == \"end\")) {\n q(z);\n g.inform(\"Ticker/resized\");\n }\n ;\n i.resize();\n }, w = new j(n);\n w.subscribe(\"start\", u);\n w.subscribe([\"update\",\"end\",], v);\n };\n m.prototype._saveResizedState = function(n) {\n new h(\"/ajax/feed/ticker/resize\").setData({\n height: (\"\" + n)\n }).setMethod(\"POST\").send();\n };\n e.exports = m;\n});\n__d(\"NotificationXOut\", [\"Arbiter\",\"Event\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Event\");\n function i(m, n) {\n g.inform(\"notif/negativeCancel\", {\n id: m\n });\n n.kill();\n };\n function j(m) {\n m.prevent();\n };\n function k(m, n) {\n h.listen(m, \"click\", i.curry(n));\n };\n function l(m) {\n h.listen(m, \"click\", j);\n };\n e.exports = {\n setupCancelListener: k,\n setupNoListener: l\n };\n});\n__d(\"LiveMessageReceiver\", [\"Arbiter\",\"ChannelConstants\",\"copyProperties\",\"emptyFunction\",\"shield\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ChannelConstants\"), i = b(\"copyProperties\"), j = b(\"emptyFunction\"), k = b(\"shield\");\n function l(m) {\n this.eventName = m;\n this.subs = null;\n this.handler = j;\n this.shutdownHandler = null;\n this.registered = false;\n this.appId = 1;\n };\n i(l, {\n getAppMessageType: function(m, n) {\n return (((\"live_message/\" + m) + \":\") + n);\n },\n route: function(m) {\n var n = function(o) {\n var p = l.getAppMessageType(m.app_id, m.event_name);\n g.inform(p, o, g.BEHAVIOR_PERSISTENT);\n };\n n(m.response);\n }\n });\n i(l.prototype, {\n setAppId: function(m) {\n this.appId = m;\n return this;\n },\n setHandler: function(m) {\n this.handler = m;\n this._dirty();\n return this;\n },\n setRestartHandler: j,\n setShutdownHandler: function(m) {\n this.shutdownHandler = k(m);\n this._dirty();\n return this;\n },\n _dirty: function() {\n if (this.registered) {\n this.unregister();\n this.register();\n }\n ;\n },\n register: function() {\n var m = function(o, p) {\n return this.handler(p);\n }.bind(this), n = l.getAppMessageType(this.appId, this.eventName);\n this.subs = {\n };\n this.subs.main = g.subscribe(n, m);\n if (this.shutdownHandler) {\n this.subs.shut = g.subscribe(h.ON_SHUTDOWN, this.shutdownHandler);\n };\n this.registered = true;\n return this;\n },\n unregister: function() {\n if (!this.subs) {\n return this\n };\n for (var m in this.subs) {\n if (this.subs[m]) {\n this.subs[m].unsubscribe();\n };\n };\n this.subs = null;\n this.registered = false;\n return this;\n }\n });\n e.exports = l;\n});\n__d(\"initLiveMessageReceiver\", [\"Arbiter\",\"ChannelConstants\",\"LiveMessageReceiver\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ChannelConstants\"), i = b(\"LiveMessageReceiver\");\n g.subscribe(h.getArbiterType(\"app_msg\"), function(j, k) {\n i.route(k.obj);\n });\n});\n__d(\"legacy:CompactTypeaheadRenderer\", [\"CompactTypeaheadRenderer\",], function(a, b, c, d) {\n if (!a.TypeaheadRenderers) {\n a.TypeaheadRenderers = {\n };\n };\n a.TypeaheadRenderers.compact = b(\"CompactTypeaheadRenderer\");\n}, 3);"); |
| // 16002 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s68f309fc311d4f8233d0c2481871ee0dab181004"); |
| // 16003 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"1YKDj\",]);\n}\n;\n;\n__d(\"BuddyListNub\", [\"JSXDOM\",\"JSBNG__Event\",\"Arbiter\",\"AvailableList\",\"BlackbirdUpsell\",\"ChannelConnection\",\"ChannelConstants\",\"ChatConfig\",\"ChatSidebar\",\"ChatVisibility\",\"Class\",\"JSBNG__CSS\",\"Dock\",\"DOM\",\"HTML\",\"Keys\",\"NubController\",\"OrderedFriendsList\",\"Parent\",\"PresencePrivacy\",\"Toggler\",\"copyProperties\",\"csx\",\"cx\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSXDOM\"), h = b(\"JSBNG__Event\"), i = b(\"Arbiter\"), j = b(\"AvailableList\"), k = b(\"BlackbirdUpsell\"), l = b(\"ChannelConnection\"), m = b(\"ChannelConstants\"), n = b(\"ChatConfig\"), o = b(\"ChatSidebar\"), p = b(\"ChatVisibility\"), q = b(\"Class\"), r = b(\"JSBNG__CSS\"), s = b(\"Dock\"), t = b(\"DOM\"), u = b(\"HTML\"), v = b(\"Keys\"), w = b(\"NubController\"), x = b(\"OrderedFriendsList\"), y = b(\"Parent\"), z = b(\"PresencePrivacy\"), aa = b(\"Toggler\"), ba = b(\"copyProperties\"), ca = b(\"csx\"), da = b(\"cx\"), ea = b(\"tx\"), fa = 32, ga = 10;\n function ha(ia, ja, ka) {\n this.parent.construct(this);\n this.parent.init(ia);\n this.root = ia;\n this.orderedList = ja;\n this.typeahead = ka;\n this.button = t.JSBNG__find(ia, \"a.fbNubButton\");\n this.unreadCount = t.JSBNG__find(ia, \"span.-cx-PRIVATE-fbDockChatBuddyListNub__unreadcount\");\n this.label = t.JSBNG__find(ia, \"span.label\");\n this.body = t.scry(ia, \"div.fbNubFlyoutBody\")[0];\n this.container = y.byClass(ia, \"-cx-PUBLIC-fbDockChatBuddyListNub__container\");\n var la = t.JSBNG__find(ia, \"div.fbNubFlyoutTitlebar\");\n aa.createInstance(la).setSticky(false);\n ja.subscribe(\"render\", this.flyoutContentChanged.bind(this));\n ja.setScrollContainer(this.body);\n j.subscribe(\"buddylist/availability-changed\", this._updateCount.bind(this));\n i.subscribe(\"chat/connect\", this._handleConnect.bind(this));\n z.subscribe(\"privacy-user-presence-changed\", this._handleVisibilityChange.bind(this));\n this.message = t.JSBNG__find(ia, \"div.-cx-PRIVATE-fbDockChatBuddyListNub__message\");\n this.warningMsgText = null;\n this.warningMsgEventListener = null;\n this.showWarningTimeout = null;\n l.subscribe(l.CONNECTED, this._handleChannelConnected.bind(this));\n l.subscribe(l.SHUTDOWN, this._handleChannelShutdown.bind(this));\n l.subscribe(l.RECONNECTING, this._handleChannelReconnecting.bind(this));\n l.subscribe([l.MUTE_WARNING,l.UNMUTE_WARNING,], this._updateView.bind(this));\n this.subscribe(\"show\", this.onShow.bind(this));\n this.subscribe(\"hide\", this.onHide.bind(this));\n this.subscribe(\"resize\", this.onResize.bind(this));\n h.listen(ia, \"keydown\", this._onKeyDown.bind(this));\n h.listen(this.button, \"click\", this.onButtonClick.bind(this));\n ka.subscribe([\"respond\",\"reset\",], function(ma, na) {\n if (this._isOpen) {\n var oa = this.orderedList.isVisible();\n if (((((((na && na.value)) && ((na.value === ka.getCore().getValue())))) && ka.getView().isVisible()))) {\n s.setUseMaxHeight(this.root, false);\n this.orderedList.hide();\n }\n else this._showBuddyList();\n ;\n ;\n if (((oa !== this.orderedList.isVisible()))) {\n this.flyoutContentChanged();\n }\n ;\n ;\n }\n ;\n ;\n }.bind(this));\n i.subscribe(\"sidebar/show\", this.hide.bind(this));\n i.subscribe(\"sidebar/hide\", this._onSidebarHide.bind(this));\n if (n.get(\"litestand_buddylist_count\")) {\n this._unreadMessageCount = 0;\n i.subscribe(\"buddylist-nub/updateCount\", function(ma, na) {\n if (((this._unreadMessageCount !== na.count))) {\n this._unreadMessageCount = na.count;\n this._updateView();\n }\n ;\n ;\n }.bind(this));\n }\n ;\n ;\n this._orderedListCount = x.getList().length;\n i.inform(\"buddylist-nub/initialized\", this, i.BEHAVIOR_PERSISTENT);\n this._handleVisibilityChange();\n };\n;\n q.extend(ha, w);\n ba(ha.prototype, {\n getButton: function() {\n return this.button;\n },\n getRoot: function() {\n return this.root;\n },\n _handleConnect: function(ia) {\n this._updateView(true);\n },\n _getShutdownReason: function(ia) {\n switch (ia) {\n case m.HINT_AUTH:\n return \"Your session has timed out. Please log in.\";\n case m.HINT_CONN:\n return ea._(\"Facebook {Chat} is currently unavailable.\", {\n Chat: \"Chat\"\n });\n case m.HINT_MAINT:\n return ea._(\"Facebook {Chat} is currently down for maintenance.\", {\n Chat: \"Chat\"\n });\n default:\n return ea._(\"Facebook {Chat} is currently unavailable.\", {\n Chat: \"Chat\"\n });\n };\n ;\n },\n _getReconnectMsg: function(ia) {\n var ja;\n if (((ia === null))) {\n ja = \"Unable to connect to chat. Check your Internet connection.\";\n }\n else if (((ia > n.get(\"warning_countdown_threshold_msec\")))) {\n var ka = t.create(\"a\", {\n href: \"#\",\n className: \"fbChatReconnectLink\"\n }, \"Try again\"), la = t.create(\"div\", null, ka), ma = la.innerHTML;\n ja = u(ea._(\"Unable to connect to chat. {try-again-link}\", {\n \"try-again-link\": ma\n }));\n }\n else if (((ia > 1000))) {\n ja = ea._(\"Unable to connect to chat. Reconnecting in {seconds}...\", {\n seconds: Math.floor(((ia / 1000)))\n });\n }\n else ja = \"Unable to connect to chat. Reconnecting...\";\n \n \n ;\n ;\n return ja;\n },\n _resetShowWarningTimeout: function() {\n if (this.showWarningTimeout) {\n JSBNG__clearTimeout(this.showWarningTimeout);\n this.showWarningTimeout = null;\n }\n ;\n ;\n },\n _handleChannelConnected: function(ia) {\n this._resetShowWarningTimeout();\n if (this.orderedList.isVisible()) {\n p.goOnline();\n }\n ;\n ;\n this.warningMsgText = null;\n this._updateView();\n },\n _handleChannelShutdown: function(ia, ja) {\n this._resetShowWarningTimeout();\n this.warningMsgText = this._getShutdownReason(ja);\n this._updateView();\n },\n _handleChannelReconnecting: function(ia, ja) {\n this._resetShowWarningTimeout();\n this.warningMsgText = this._getReconnectMsg(ja);\n if (((ja > 1000))) {\n if (((ja > n.get(\"warning_countdown_threshold_msec\")))) {\n if (this.warningMsgEventListener) {\n this.warningMsgEventListener.remove();\n this.warningMsgEventListener = null;\n }\n ;\n ;\n this.warningMsgEventListener = h.listen(this.message, \"click\", function(JSBNG__event) {\n if (r.hasClass(JSBNG__event.getTarget(), \"fbChatReconnectLink\")) {\n this._tryReconnect();\n JSBNG__event.kill();\n }\n ;\n ;\n }.bind(this));\n }\n ;\n ;\n this.showWarningTimeout = JSBNG__setTimeout(this._handleChannelReconnecting.bind(this, ia, ((ja - 1000))), 1000, false);\n }\n ;\n ;\n this._updateView();\n },\n _tryReconnect: function() {\n if (l.disconnected()) {\n l.reconnect();\n }\n ;\n ;\n },\n _handleVisibilityChange: function() {\n this._updateView();\n if (k.shouldShow()) {\n if (p.hasBlackbirdEnabled()) {\n k.showBlackbirdDialog(this.getButton(), z.getVisibility());\n }\n else if (!p.isOnline()) {\n k.showOfflineDialog(this.getButton());\n }\n \n ;\n ;\n }\n else k.hide();\n ;\n ;\n if (!p.isOnline()) {\n this.hide();\n }\n ;\n ;\n },\n _updateView: function(ia) {\n var ja = this.container;\n if (ja) {\n r.conditionClass(ja, \"offline\", !p.isOnline());\n r.conditionClass(ja, \"error\", l.disconnected());\n }\n ;\n ;\n if (l.disconnected()) {\n t.setContent(this.message, this.warningMsgText);\n }\n ;\n ;\n var ka, la;\n if (!p.isOnline()) {\n ka = ea._(\"{Chat} (Off)\", {\n Chat: \"Chat\"\n });\n }\n else if (l.disconnected()) {\n ka = ea._(\"{Chat} (Disconnected)\", {\n Chat: \"Chat\"\n });\n }\n else {\n var ma = j.getOnlineCount();\n if (ma) {\n ka = ea._(\"{Chat} {number-available}\", {\n Chat: \"Chat\",\n \"number-available\": g.span({\n className: \"count\"\n }, \" (\", g.strong(null, ma), \") \")\n });\n }\n else {\n ka = \"Chat\";\n la = true;\n }\n ;\n ;\n }\n \n ;\n ;\n this._setUnread(this._unreadMessageCount);\n this._setLabel(ka, la);\n this.buttonContentChanged();\n },\n onButtonClick: function() {\n this._conditionallyShowTypeahead();\n if (r.shown(this.typeahead.getElement())) {\n var ia = this.subscribe(\"show\", function() {\n this.typeahead.getCore().getElement().JSBNG__focus();\n k.dismiss();\n }.bind(this));\n this.unsubscribe.bind(this, ia).defer();\n }\n ;\n ;\n },\n onHide: function() {\n this._isOpen = false;\n if (this._buddyListRenderSubscription) {\n this.orderedList.unsubscribe(this._buddyListRenderSubscription);\n this._buddyListRenderSubscription = null;\n }\n ;\n ;\n this.orderedList.hide();\n this.typeahead.getCore().reset();\n },\n _onKeyDown: function(JSBNG__event) {\n var ia = h.getKeyCode(JSBNG__event);\n if (((((ia === v.ESC)) && !r.hasClass(this.root, \"menuOpened\")))) {\n this.hide();\n return false;\n }\n else if (((ia == v.RETURN))) {\n o.enable();\n }\n \n ;\n ;\n },\n _onSidebarHide: function(JSBNG__event) {\n this.getButton().JSBNG__focus();\n },\n onResize: function() {\n var ia = ((s.getMaxFlyoutHeight(this.root) - 60)), ja = Math.max(250, ia);\n this.orderedList.setNumTopFriends(Math.floor(((ja / fa))));\n },\n _showBuddyList: function() {\n if (!this._buddyListRenderSubscription) {\n this._buddyListRenderSubscription = this.orderedList.subscribe(\"render\", s.setUseMaxHeight.bind(s, this.root, false));\n }\n ;\n ;\n this.orderedList.show();\n },\n onShow: function() {\n this._isOpen = true;\n if (l.disconnected()) {\n this._tryReconnect();\n this._showBuddyList();\n }\n else p.goOnline(this._showBuddyList.bind(this));\n ;\n ;\n },\n _setLabel: function(ia, ja) {\n var ka = this.label.cloneNode(true);\n t.setContent(ka, ia);\n t.replace(this.label, ka);\n this.label = ka;\n ((this.throbber && r.conditionShow(this.throbber, !!ja)));\n },\n _setUnread: function(ia) {\n r.conditionShow(this.unreadCount, !!ia);\n if (ia) {\n ia = g.span({\n className: \"-cx-PRIVATE-fbMercuryChatTab__nummessages -cx-PRIVATE-fbMercuryChatTab__numbluegrey\"\n }, ia);\n t.setContent(this.unreadCount, ia);\n }\n ;\n ;\n },\n _conditionallyShowTypeahead: function() {\n r.conditionShow(this.typeahead.getElement(), ((this._orderedListCount >= ga)));\n },\n _updateCount: function() {\n this._updateView();\n this._conditionallyShowTypeahead();\n }\n });\n e.exports = ha;\n});\n__d(\"LiveBarData\", [\"function-extensions\",\"Arbiter\",\"ArbiterMixin\",\"AsyncRequest\",\"ChannelConstants\",\"LayerDestroyOnHide\",\"copyProperties\",\"setTimeoutAcrossTransitions\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"Arbiter\"), h = b(\"ArbiterMixin\"), i = b(\"AsyncRequest\"), j = b(\"ChannelConstants\"), k = b(\"LayerDestroyOnHide\"), l = b(\"copyProperties\"), m = b(\"setTimeoutAcrossTransitions\"), n = false, o = {\n }, p = {\n }, q = {\n };\n function r(y) {\n if (((((((y.expires * 1000)) - JSBNG__Date.now())) > 0))) {\n return true;\n }\n ;\n ;\n return false;\n };\n;\n function s(y) {\n var z = y.payload.actions;\n if (!((z && z.length))) {\n return;\n }\n ;\n ;\n var aa;\n for (var ba = 0; ((ba < z.length)); ba++) {\n aa = z[ba].actor_id;\n if (((!o[aa] || ((z[ba].action_id != o[aa].action_id))))) {\n continue;\n }\n ;\n ;\n if (((z[ba].delete_action || z[ba].remove))) {\n v(z[ba]);\n continue;\n }\n ;\n ;\n };\n ;\n };\n;\n function t(y) {\n var z = false;\n for (var aa = 0; ((aa < y.length)); aa++) {\n if (((y[aa].delete_action || y[aa].remove))) {\n v(y[aa]);\n continue;\n }\n ;\n ;\n var ba = y[aa].actor_id, ca = y[aa].action_id;\n if (o[ba]) {\n if (((o[ba].action_id == ca))) {\n continue;\n }\n ;\n ;\n v(o[ba]);\n }\n ;\n ;\n z = true;\n o[ba] = y[aa];\n u(y[aa]);\n };\n ;\n if (z) {\n x.inform(\"new-actions\");\n }\n ;\n ;\n };\n;\n function u(y) {\n var z = ((((y.expires * 1000)) - JSBNG__Date.now()));\n p[y.actor_id] = m(v.curry(y), Math.max(0, z));\n };\n;\n function v(y) {\n if (!o[y.actor_id]) {\n return;\n }\n ;\n ;\n if (((o[y.actor_id].action_id != y.action_id))) {\n return;\n }\n ;\n ;\n delete o[y.actor_id];\n var z = y.actor_id;\n if (p[z]) {\n JSBNG__clearTimeout(p[z]);\n delete p[z];\n }\n ;\n ;\n w(z);\n x.inform(\"remove-action\", y);\n };\n;\n function w(y) {\n var z = q[y];\n if (z) {\n z.enableBehavior(k);\n if (!z.isShown()) {\n z.destroy();\n }\n ;\n ;\n delete q[y];\n }\n ;\n ;\n };\n;\n g.subscribe(j.getArbiterType(\"livebar_update\"), function(y, z) {\n t(z.obj.actions);\n });\n var x = {\n };\n l(x, h, {\n fetch: function() {\n if (n) {\n return;\n }\n ;\n ;\n var y = [];\n {\n var fin283keys = ((window.top.JSBNG_Replay.forInKeys)((o))), fin283i = (0);\n var z;\n for (; (fin283i < fin283keys.length); (fin283i++)) {\n ((z) = (fin283keys[fin283i]));\n {\n var aa = o[z];\n if (aa.suppress_callout) {\n continue;\n }\n ;\n ;\n if (!q[aa.actor_id]) {\n y.push(o[z]);\n }\n ;\n ;\n };\n };\n };\n ;\n if (((y.length > 0))) {\n n = true;\n new i().setURI(\"/ajax/chat/livebar.php\").setData({\n actions: y\n }).setHandler(s).setFinallyHandler(function() {\n n = false;\n }).setAllowCrossPageTransition(true).send();\n }\n ;\n ;\n },\n addActions: t,\n getAction: function(y) {\n var z = o[y];\n if (((z && r(z)))) {\n return z;\n }\n ;\n ;\n return null;\n },\n getDialog: function(y) {\n var z = this.getAction(y);\n if (((z && q[z.actor_id]))) {\n return q[z.actor_id];\n }\n ;\n ;\n return null;\n },\n setDialog: function(y, z, aa) {\n var ba = o[y];\n if (((ba && ((ba.action_id == z))))) {\n w(y);\n q[y] = aa;\n x.inform(\"dialog-fetched\", y);\n }\n ;\n ;\n }\n });\n e.exports = x;\n});\n__d(\"LiveBar\", [\"ChatOrderedList\",\"function-extensions\",\"LegacyContextualDialog\",\"ChatConfig\",\"JSBNG__CSS\",\"LiveBarData\",\"copyProperties\",\"setTimeoutAcrossTransitions\",\"shield\",], function(a, b, c, d, e, f) {\n b(\"ChatOrderedList\");\n b(\"function-extensions\");\n b(\"LegacyContextualDialog\");\n var g = b(\"ChatConfig\"), h = b(\"JSBNG__CSS\"), i = b(\"LiveBarData\"), j = b(\"copyProperties\"), k = b(\"setTimeoutAcrossTransitions\"), l = b(\"shield\"), m = ((g.get(\"livebar_fetch_defer\") || 1000));\n function n(o, p, q) {\n this._orderedList = o;\n this._root = o.getRoot();\n this._liveBarTypes = q;\n this._hoverController = o.getHoverController();\n this._hoverController.subscribe(\"hover\", this._mouseMove.bind(this));\n this._hoverController.subscribe(\"leave\", this._mouseLeave.bind(this));\n o.subscribe(\"render\", l(this._handleChatListUpdate, this));\n i.subscribe(\"new-actions\", this._updateIcons.bind(this));\n i.subscribe(\"remove-action\", this._handleRemoveAction.bind(this));\n i.subscribe(\"dialog-fetched\", function(r, s) {\n this._setDialogContent(s);\n }.bind(this));\n i.addActions(p);\n };\n;\n j(n, {\n setDialog: function(o, p, q) {\n i.setDialog(o, p, q);\n }\n });\n j(n.prototype, {\n _root: null,\n _liveBarTypes: null,\n _hoverController: null,\n _registrations: {\n },\n _renderedIcons: {\n },\n _fetchTimer: null,\n _mouseLeftRoot: false,\n _chatListRendered: false,\n _getLiveBarTypes: function() {\n return this._liveBarTypes;\n },\n _handleChatListUpdate: function() {\n if (!this._chatListRendered) {\n this._chatListRendered = true;\n this._updateIcons();\n }\n ;\n ;\n },\n _handleShow: function(o) {\n this._setDialogContent(o);\n },\n _mouseMove: function() {\n if (!this._fetchTimer) {\n this._fetchTimer = k(this._fetch.bind(this), m);\n this._mouseLeftRoot = false;\n }\n ;\n ;\n },\n _mouseLeave: function() {\n this._mouseLeftRoot = true;\n JSBNG__clearTimeout(this._fetchTimer);\n this._fetchTimer = null;\n },\n _setDialogContent: function(o) {\n var p = i.getDialog(o);\n if (p) {\n this._hoverController.showHovercard(o, p);\n }\n ;\n ;\n },\n _fetch: function() {\n if (this._mouseLeftRoot) {\n return;\n }\n ;\n ;\n this._fetchTimer = null;\n i.fetch();\n },\n _updateIcons: function() {\n if (!this._chatListRendered) {\n return;\n }\n ;\n ;\n var o = this._orderedList.getAllNodes(), p = this._getLiveBarTypes();\n {\n var fin284keys = ((window.top.JSBNG_Replay.forInKeys)((o))), fin284i = (0);\n var q;\n for (; (fin284i < fin284keys.length); (fin284i++)) {\n ((q) = (fin284keys[fin284i]));\n {\n var r = i.getAction(q);\n if (((r && ((!this._renderedIcons[q] || ((this._renderedIcons[q] != r.action_id))))))) {\n for (var s = 0; ((s < p.length)); s++) {\n h.removeClass(o[q], p[s]);\n ;\n };\n ;\n h.addClass(o[q], r.livebar_type);\n this._renderedIcons[q] = r.action_id;\n var t = this._hoverController.register(q, this._handleShow.bind(this));\n if (t) {\n this._registrations[q] = t;\n }\n ;\n ;\n }\n ;\n ;\n };\n };\n };\n ;\n },\n _handleRemoveAction: function(o, p) {\n var q = p.action_id, r = p.actor_id;\n ((this._registrations[r] && this._registrations[r].unregister()));\n delete this._registrations[r];\n if (((this._renderedIcons[r] == q))) {\n var s = this._getLiveBarTypes(), t = this._orderedList.getAllNodes();\n if (t[r]) {\n for (var u = 0; ((u < s.length)); u++) {\n h.removeClass(t[r], s[u]);\n ;\n };\n }\n ;\n ;\n delete this._renderedIcons[r];\n }\n ;\n ;\n }\n });\n e.exports = n;\n});\n__d(\"LiveBarDark\", [\"Class\",\"LiveBar\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"LiveBar\"), i = b(\"copyProperties\"), j = b(\"emptyFunction\");\n function k(l, m, n) {\n this.parent.construct(this, l, m, n);\n };\n;\n g.extend(k, h);\n i(k.prototype, {\n _setupDialogContent: j,\n _show: j,\n _updateIcons: j,\n _handleRemoveAction: j,\n _handleChatListUpdate: j\n });\n e.exports = k;\n});\n__d(\"ChatSidebarDropdown\", [\"Arbiter\",\"AsyncRequest\",\"Chat\",\"ChatOptions\",\"ChatVisibility\",\"JSBNG__CSS\",\"DOM\",\"JSBNG__Event\",\"JSLogger\",\"PresenceState\",\"SelectorDeprecated\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncRequest\"), i = b(\"Chat\"), j = b(\"ChatOptions\"), k = b(\"ChatVisibility\"), l = b(\"JSBNG__CSS\"), m = b(\"DOM\"), n = b(\"JSBNG__Event\"), o = b(\"JSLogger\"), p = b(\"PresenceState\"), q = b(\"SelectorDeprecated\"), r = b(\"copyProperties\");\n function s(t, u) {\n this._root = t;\n this._logger = o.create(\"blackbird\");\n this._displayBrowserNotificationsIfNeeded();\n q.listen(t, \"select\", this._onSelect.bind(this));\n q.listen(t, \"toggle\", this._onToggle.bind(this));\n if (u) {\n q.listen(t, \"close\", u.allowCollapse.curry(true, \"SidebarMenu\"));\n q.listen(t, \"open\", u.allowCollapse.curry(false, \"SidebarMenu\"));\n }\n ;\n ;\n g.subscribe(\"chat/option-changed\", this._onOptionChanged.bind(this));\n };\n;\n r(s, {\n registerEditFavorites: function(t, u, v) {\n function w(x) {\n l.conditionShow(t, !x);\n l.conditionShow(u, x);\n };\n ;\n n.listen(t, \"click\", function() {\n v.toggleEditMode();\n w(true);\n });\n n.listen(u, \"click\", function() {\n v.toggleEditMode();\n w(false);\n });\n v.subscribe(\"editStart\", w.curry(true));\n v.subscribe(\"editEnd\", w.curry(false));\n }\n });\n r(s.prototype, {\n changeSetting: function(t, u) {\n if (this._pendingChange) {\n return false;\n }\n ;\n ;\n this._pendingChange = true;\n var v = {\n };\n v[t] = u;\n j.setSetting(t, u, \"sidebar_menu\");\n new h(\"/ajax/chat/settings.php\").setHandler(this._onChangeSettingResponse.bind(this, t, u)).setErrorHandler(this._onChangeSettingError.bind(this, t, u)).setFinallyHandler(this._onChangeFinally.bind(this)).setData(v).setAllowCrossPageTransition(true).send();\n },\n _displayBrowserNotificationsIfNeeded: function() {\n if (window.JSBNG__webkitNotifications) {\n m.scry(JSBNG__document, \"li.sidebar-browser-notif\").forEach(l.show);\n if (((window.JSBNG__webkitNotifications.checkPermission() !== 0))) {\n m.scry(JSBNG__document, \"li.sidebar-browser-notif\").forEach(function(t) {\n l.removeClass(t, \"checked\");\n });\n }\n ;\n ;\n }\n ;\n ;\n },\n _conditionEnabled: function(t, u) {\n var v = q.getOption(this._root, t);\n ((v && q.setOptionEnabled(v, u)));\n },\n _onChangeSettingResponse: function(t, u, v) {\n p.doSync();\n },\n _onChangeSettingError: function(t, u, v) {\n j.setSetting(t, !u, \"sidebar_menu_error\");\n },\n _onChangeFinally: function() {\n this._pendingChange = false;\n },\n _onOptionChanged: function(t, u) {\n var v = u.JSBNG__name, w = u.value;\n if (((((v === \"sound\")) || ((v === \"browser_notif\"))))) {\n var x = q.getOption(this._root, v);\n if (((w !== q.isOptionSelected(x)))) {\n q.setSelected(this._root, v, w);\n }\n ;\n ;\n }\n ;\n ;\n },\n _onSelect: function(t) {\n if (this._pendingChange) {\n return false;\n }\n ;\n ;\n var u = false, v = false, w = q.getOptionValue(t.option);\n switch (w) {\n case \"JSBNG__sidebar\":\n return this.toggleSidebar();\n case \"online\":\n if (!k.isOnline()) {\n k.goOnline();\n }\n else v = true;\n ;\n ;\n u = true;\n break;\n case \"offline\":\n if (k.isOnline()) {\n k.goOffline();\n }\n else v = true;\n ;\n ;\n u = true;\n break;\n case \"advanced_settings\":\n \n case \"turn_off_dialog\":\n g.inform(\"chat/advanced-settings-dialog-opened\");\n u = true;\n break;\n };\n ;\n if (v) {\n this._logger.error(\"sidebar_dropdown_visibility_error\", {\n action: w\n });\n }\n else this._logger.log(\"sidebar_dropdown_set_visibility\", {\n action: w\n });\n ;\n ;\n if (u) {\n q.toggle(this._root);\n return false;\n }\n ;\n ;\n },\n _onToggle: function(t) {\n if (this._pendingChange) {\n return false;\n }\n ;\n ;\n var u = q.getOptionValue(t.option), v = q.isOptionSelected(t.option);\n switch (u) {\n case \"visibility\":\n if (!k) {\n this._jslogger.error(\"on_toggle_visibility_undefined\");\n return;\n }\n ;\n ;\n k.toggleVisibility();\n this._logger.log(\"sidebar_dropdown_toggle_visibility\", {\n available: v\n });\n break;\n case \"browser_notif\":\n if (((((v && window.JSBNG__webkitNotifications)) && ((window.JSBNG__webkitNotifications.checkPermission() !== 0))))) {\n window.JSBNG__webkitNotifications.requestPermission(function() {\n this.changeSetting(u, v);\n }.bind(this));\n }\n else this.changeSetting(u, v);\n ;\n ;\n break;\n case \"sound\":\n this.changeSetting(u, v);\n break;\n };\n ;\n q.toggle(this._root);\n },\n _onVisibilityChanged: function() {\n var t = k.isOnline(), u = q.getOption(this._root, \"visibility\");\n if (((t !== q.isOptionSelected(u)))) {\n q.setSelected(this._root, \"visibility\", t);\n }\n ;\n ;\n },\n toggleSidebar: function() {\n i.toggleSidebar();\n q.toggle(this._root);\n return false;\n }\n });\n e.exports = s;\n});\n__d(\"ModuleDependencies\", [], function(a, b, c, d, e, f) {\n function g(k, l, m) {\n var n = a.require.__debug.modules[m], o = a.require.__debug.deps;\n if (l[m]) {\n return;\n }\n ;\n ;\n l[m] = true;\n if (!n) {\n ((o[m] && (k[m] = true)));\n return;\n }\n ;\n ;\n if (((!n.dependencies || !n.dependencies.length))) {\n if (n.waiting) {\n k[m] = true;\n }\n ;\n ;\n return;\n }\n ;\n ;\n n.dependencies.forEach(function(p) {\n g(k, l, p);\n });\n };\n;\n function h(k) {\n if (a.require.__debug) {\n var l = {\n };\n g(l, {\n }, k);\n var m = Object.keys(l);\n m.sort();\n return m;\n }\n ;\n ;\n return null;\n };\n;\n function i() {\n var k = {\n loading: {\n },\n missing: []\n };\n if (!a.require.__debug) {\n return k;\n }\n ;\n ;\n var l = {\n }, m = a.require.__debug.modules, n = a.require.__debug.deps;\n {\n var fin285keys = ((window.top.JSBNG_Replay.forInKeys)((m))), fin285i = (0);\n var o;\n for (; (fin285i < fin285keys.length); (fin285i++)) {\n ((o) = (fin285keys[fin285i]));\n {\n var p = m[o];\n if (p.waiting) {\n var q = {\n };\n g(q, {\n }, p.id);\n delete q[p.id];\n k.loading[p.id] = Object.keys(q);\n k.loading[p.id].sort();\n k.loading[p.id].forEach(function(r) {\n if (((!((r in m)) && n[r]))) {\n l[r] = 1;\n }\n ;\n ;\n });\n }\n ;\n ;\n };\n };\n };\n ;\n k.missing = Object.keys(l);\n k.missing.sort();\n return k;\n };\n;\n var j = {\n getMissing: h,\n getNotLoadedModules: i\n };\n e.exports = j;\n});\n__d(\"ChatSidebarLog\", [\"AsyncSignal\",\"Bootloader\",\"ModuleDependencies\",\"JSLogger\",\"Run\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncSignal\"), h = b(\"Bootloader\"), i = b(\"ModuleDependencies\"), j = b(\"JSLogger\"), k = b(\"Run\"), l = j.create(\"chat_sidebar_load\"), m = null, n = false, o = ((((Math.JSBNG__random() * 2147483648)) | 0)).toString(36);\n k.onLoad(function() {\n n = true;\n });\n try {\n d([\"ChatSidebar\",], function(t) {\n m = t;\n });\n } catch (p) {\n l.warn(\"exception\", {\n reason: p.toString()\n });\n };\n;\n function q(t, u) {\n if (((t.length > u))) {\n return t[u];\n }\n ;\n ;\n return null;\n };\n;\n function r(t) {\n JSBNG__setTimeout(function() {\n var u = i.getMissing(\"ChatSidebar\"), v = h.getErrorUrls(), w = h.getLoadingUrls(), x = [];\n {\n var fin286keys = ((window.top.JSBNG_Replay.forInKeys)((w))), fin286i = (0);\n var y;\n for (; (fin286i < fin286keys.length); (fin286i++)) {\n ((y) = (fin286keys[fin286i]));\n {\n x.push({\n url: y,\n time: w[y]\n });\n ;\n };\n };\n };\n ;\n x.sort(function(aa, ba) {\n return ((ba.time - aa.time));\n });\n var z = {\n page_loaded: n,\n page_id: o,\n timeout: t,\n missing_total: u.length,\n module_1: q(u, 0),\n module_2: q(u, 1),\n module_3: q(u, 2),\n error_url_total: v.length,\n error_url_1: q(v, 0),\n error_url_2: q(v, 1),\n error_url_3: q(v, 2),\n loading_url_total: x.length,\n loading_url_1: ((q(x, 0) ? q(x, 0).url : null)),\n loading_time_1: ((q(x, 0) ? q(x, 0).time : null)),\n loading_url_2: ((q(x, 1) ? q(x, 1).url : null)),\n loading_time_2: ((q(x, 1) ? q(x, 1).time : null)),\n loading_url_3: ((q(x, 2) ? q(x, 2).url : null)),\n loading_time_3: ((q(x, 2) ? q(x, 2).time : null))\n };\n if (!m) {\n l.warn(((\"require_\" + t)), {\n missing: u\n });\n z.symptom = \"require\";\n }\n ;\n ;\n if (((m && !m.isInitialized()))) {\n l.warn(((\"init_\" + t)), {\n missing: u\n });\n z.symptom = \"init\";\n }\n ;\n ;\n if (z.symptom) {\n new g(\"/ajax/chat/sidebar_load.php\", z).send();\n }\n ;\n ;\n }, t);\n };\n;\n var s = {\n start: function() {\n r(5000);\n r(10000);\n r(15000);\n r(30000);\n r(60000);\n }\n };\n e.exports = s;\n});\n__d(\"NotificationConstants\", [], function(a, b, c, d, e, f) {\n e.exports = {\n PayloadSourceType: {\n UNKNOWN: 0,\n USER_ACTION: 1,\n LIVE_SEND: 2,\n ENDPOINT: 3,\n INITIAL_LOAD: 4,\n OTHER_APPLICATION: 5\n }\n };\n});\n__d(\"NotificationTokens\", [\"Env\",], function(a, b, c, d, e, f) {\n var g = b(\"Env\"), h = {\n tokenizeIDs: function(i) {\n return i.map(function(j) {\n return ((((g.user + \":\")) + j));\n });\n },\n untokenizeIDs: function(i) {\n return i.map(function(j) {\n return j.split(\":\")[1];\n });\n }\n };\n e.exports = h;\n});\n__d(\"NotificationImpressions\", [\"AsyncSignal\",\"NotificationTokens\",\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncSignal\"), h = b(\"NotificationTokens\"), i = b(\"URI\"), j = \"/ajax/notifications/impression.php\";\n function k(l, m) {\n var n = {\n ref: m\n };\n h.untokenizeIDs(l).forEach(function(o, p) {\n n[((((\"alert_ids[\" + p)) + \"]\"))] = o;\n });\n new g(i(j).getQualifiedURI().toString(), n).send();\n };\n;\n e.exports = {\n log: k\n };\n});\n__d(\"NotificationPhotoThumbnail\", [], function(a, b, c, d, e, f) {\n function g(i) {\n if (((((!i.media || !i.style_list)) || !i.style_list.length))) {\n return null;\n }\n ;\n ;\n switch (i.style_list[0]) {\n case \"photo\":\n \n case \"album\":\n return i.media.image;\n default:\n return null;\n };\n ;\n };\n;\n var h = {\n getThumbnail: function(i, j) {\n var k;\n if (((i && i.length))) {\n k = g(i[0]);\n if (k) {\n return k;\n }\n ;\n ;\n }\n ;\n ;\n if (j) {\n var l = j.attachments;\n if (((l && l.length))) {\n return g(l[0]);\n }\n ;\n ;\n }\n ;\n ;\n return null;\n }\n };\n e.exports = h;\n});\n__d(\"NotificationUpdates\", [\"Arbiter\",\"ChannelConstants\",\"JSLogger\",\"NotificationConstants\",\"NotificationTokens\",\"LiveTimer\",\"copyProperties\",\"createObjectFrom\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ChannelConstants\"), i = b(\"JSLogger\"), j = b(\"NotificationConstants\"), k = b(\"NotificationTokens\"), l = b(\"LiveTimer\"), m = b(\"copyProperties\"), n = b(\"createObjectFrom\"), o = {\n }, p = {\n }, q = {\n }, r = {\n }, s = [], t = 0, u = i.create(\"notification_updates\");\n function v() {\n if (t) {\n return;\n }\n ;\n ;\n var z = o, aa = p, ba = q, ca = r;\n o = {\n };\n p = {\n };\n q = {\n };\n r = {\n };\n x(\"notifications-updated\", z);\n if (Object.keys(aa).length) {\n x(\"seen-state-updated\", aa);\n }\n ;\n ;\n if (Object.keys(ba).length) {\n x(\"read-state-updated\", ba);\n }\n ;\n ;\n if (Object.keys(ca).length) {\n x(\"hidden-state-updated\", ca);\n }\n ;\n ;\n s.pop();\n };\n;\n function w() {\n if (s.length) {\n return s[((s.length - 1))];\n }\n ;\n ;\n return j.PayloadSourceType.UNKNOWN;\n };\n;\n function x(JSBNG__event, z) {\n y.inform(JSBNG__event, {\n updates: z,\n source: w()\n });\n };\n;\n g.subscribe(h.getArbiterType(\"notification_json\"), function(z, aa) {\n var ba = JSBNG__Date.now(), ca = aa.obj.nodes;\n if (ca) {\n ca.forEach(function(da) {\n da.receivedTime = ba;\n });\n u.debug(\"notifications_received\", ca);\n y.handleUpdate(j.PayloadSourceType.LIVE_SEND, aa.obj);\n }\n ;\n ;\n });\n g.subscribe(h.getArbiterType(\"notifications_seen\"), function(z, aa) {\n var ba = k.tokenizeIDs(aa.obj.alert_ids);\n y.handleUpdate(j.PayloadSourceType.LIVE_SEND, {\n seenState: n(ba)\n });\n });\n g.subscribe(h.getArbiterType(\"notifications_read\"), function(z, aa) {\n var ba = k.tokenizeIDs(aa.obj.alert_ids);\n y.handleUpdate(j.PayloadSourceType.LIVE_SEND, {\n readState: n(ba)\n });\n });\n var y = m(new g(), {\n handleUpdate: function(z, aa) {\n if (aa.servertime) {\n l.restart(aa.servertime);\n }\n ;\n ;\n if (Object.keys(aa).length) {\n this.synchronizeInforms(function() {\n s.push(z);\n var ba = m({\n payloadsource: w()\n }, aa);\n this.inform(\"update-notifications\", ba);\n this.inform(\"update-seen\", ba);\n this.inform(\"update-read\", ba);\n this.inform(\"update-hidden\", ba);\n }.bind(this));\n }\n ;\n ;\n },\n didUpdateNotifications: function(z) {\n m(o, n(z));\n v();\n },\n didUpdateSeenState: function(z) {\n m(p, n(z));\n v();\n },\n didUpdateReadState: function(z) {\n m(q, n(z));\n v();\n },\n didUpdateHiddenState: function(z) {\n m(r, n(z));\n v();\n },\n synchronizeInforms: function(z) {\n t++;\n try {\n z();\n } catch (aa) {\n throw aa;\n } finally {\n t--;\n v();\n };\n ;\n }\n });\n e.exports = y;\n});\n__d(\"NotificationStore\", [\"KeyedCallbackManager\",\"NotificationConstants\",\"NotificationUpdates\",\"RangedCallbackManager\",\"MercuryServerDispatcher\",], function(a, b, c, d, e, f) {\n var g = b(\"KeyedCallbackManager\"), h = b(\"NotificationConstants\"), i = b(\"NotificationUpdates\"), j = b(\"RangedCallbackManager\"), k = b(\"MercuryServerDispatcher\"), l = new g(), m = new j(function(p) {\n var q = l.getResource(p);\n return q.creation_time;\n }, function(p, q) {\n return ((q - p));\n }), n = {\n };\n i.subscribe(\"update-notifications\", function(p, q) {\n if (q.page_info) {\n n = q.page_info;\n }\n ;\n ;\n if (((q.nodes === undefined))) {\n return;\n }\n ;\n ;\n var r, s = [], t = {\n }, u = ((q.nodes || [])), v;\n u.forEach(function(w) {\n r = w.alert_id;\n v = l.getResource(r);\n if (((!v || ((v.creation_time < w.creation_time))))) {\n s.push(r);\n t[r] = w;\n }\n ;\n ;\n });\n l.addResourcesAndExecute(t);\n m.addResources(s);\n i.didUpdateNotifications(s);\n });\n k.registerEndpoints({\n \"/ajax/notifications/client/get.php\": {\n mode: k.IMMEDIATE,\n handler: function(p) {\n i.handleUpdate(h.PayloadSourceType.ENDPOINT, p);\n }\n }\n });\n var o = {\n getNotifications: function(p, q) {\n var r = m.executeOrEnqueue(0, p, function(w) {\n var x = l.executeOrEnqueue(w, function(y) {\n q(y);\n });\n }), s = m.getUnavailableResources(r);\n if (s.length) {\n m.unsubscribe(r);\n if (!o.canFetchMore()) {\n l.executeOrEnqueue(m.getAllResources(), q);\n return;\n }\n ;\n ;\n var t = ((n.end_cursor || null)), u;\n if (t) {\n var v = Math.max.apply(null, s);\n u = ((((v - m.getCurrentArraySize())) + 1));\n }\n else u = p;\n ;\n ;\n k.trySend(\"/ajax/notifications/client/get.php\", {\n cursor: t,\n length: u\n });\n }\n ;\n ;\n },\n getAll: function(p) {\n o.getNotifications(o.getCount(), p);\n },\n getCount: function() {\n return m.getCurrentArraySize();\n },\n canFetchMore: function() {\n if (n.hasOwnProperty(\"has_next_page\")) {\n return n.has_next_page;\n }\n ;\n ;\n return true;\n }\n };\n e.exports = o;\n});\n__d(\"NotificationUserActions\", [\"AsyncRequest\",\"AsyncSignal\",\"NotificationConstants\",\"NotificationStore\",\"NotificationTokens\",\"NotificationUpdates\",\"URI\",\"createObjectFrom\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"AsyncSignal\"), i = b(\"NotificationConstants\"), j = b(\"NotificationStore\"), k = b(\"NotificationTokens\"), l = b(\"NotificationUpdates\"), m = b(\"URI\"), n = b(\"createObjectFrom\"), o = b(\"emptyFunction\"), p = i.PayloadSourceType.USER_ACTION, q = \"mark_spam\", r = \"turn_off\", s = \"undo\", t = \"first_receipt_yes\", u = \"first_receipt_no\";\n function v(aa) {\n var ba = m(\"/ajax/notifications/mark_read.php\").getQualifiedURI().toString();\n new h(ba, aa).send();\n };\n;\n function w(aa) {\n var ba = {\n };\n aa.forEach(function(ca, da) {\n ba[((((\"alert_ids[\" + da)) + \"]\"))] = ca;\n });\n return ba;\n };\n;\n function x(aa, ba, ca, da) {\n var ea = k.untokenizeIDs([aa,])[0];\n new g(\"/ajax/notifications/negative_req.php\").setData({\n notification_id: ea,\n client_rendered: true,\n request_type: ba\n }).setHandler(((ca || o))).setErrorHandler(((da || o))).send();\n };\n;\n function y(aa, ba, ca, da, ea) {\n var fa = ((ea ? s : r));\n j.getAll(function(ga) {\n var ha = Object.keys(ga).filter(function(ia) {\n var ja = ga[ia];\n return !!((((ja.application && ja.application.id)) && ((ja.application.id == ba))));\n });\n x(aa, fa, function(ia) {\n ca(ia);\n l.handleUpdate(p, {\n hiddenState: n(ha, !ea)\n });\n }, da);\n });\n };\n;\n var z = {\n markNotificationsAsSeen: function(aa) {\n l.handleUpdate(p, {\n seenState: n(aa)\n });\n var ba = k.untokenizeIDs(aa), ca = w(ba);\n ca.seen = true;\n v(ca);\n if (a.presenceNotifications) {\n a.presenceNotifications.alertList.markSeen(ba);\n }\n ;\n ;\n },\n markNotificationsAsRead: function(aa) {\n l.handleUpdate(p, {\n readState: n(aa)\n });\n var ba = k.untokenizeIDs(aa);\n v(w(ba));\n if (a.presenceNotifications) {\n a.presenceNotifications.markRead(false, ba);\n }\n ;\n ;\n },\n markNotificationAsHidden: function(aa, ba, ca) {\n l.handleUpdate(p, {\n hiddenState: n([aa,])\n });\n x(aa, r, ba, ca);\n },\n markNotificationAsVisible: function(aa, ba, ca) {\n l.handleUpdate(p, {\n hiddenState: n([aa,], false)\n });\n x(aa, s, ba, ca);\n },\n markNotificationAsSpam: function(aa, ba, ca) {\n l.handleUpdate(p, {\n hiddenState: n([aa,], false)\n });\n x(aa, q, ba, ca);\n },\n markAppAsHidden: function(aa, ba, ca, da) {\n var ea = false;\n y(aa, ba, ca, da, ea);\n },\n markAppAsVisible: function(aa, ba, ca, da) {\n var ea = true;\n y(aa, ba, ca, da, ea);\n },\n markFirstReceiptYes: function(aa, ba, ca) {\n x(aa, t, ba, ca);\n },\n markFirstReceiptNo: function(aa, ba, ca) {\n x(aa, u, ba, ca);\n }\n };\n e.exports = z;\n});\n__d(\"NotificationBeeperItemContents.react\", [\"Animation\",\"CloseButton.react\",\"ImageBlock.react\",\"NotificationURI\",\"NotificationUserActions\",\"React\",\"TextWithEntities.react\",\"Timestamp.react\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"CloseButton.react\"), i = b(\"ImageBlock.react\"), j = b(\"NotificationURI\"), k = b(\"NotificationUserActions\"), l = b(\"React\"), m = b(\"TextWithEntities.react\"), n = b(\"Timestamp.react\"), o = b(\"cx\");\n function p(r, s) {\n return l.DOM.span({\n className: \"fwb\"\n }, r);\n };\n;\n var q = l.createClass({\n displayName: \"NotificationBeeperItemContents\",\n _markAsRead: function() {\n k.markNotificationsAsRead([this.props.beep.notificationID,]);\n this.props.onHide();\n },\n _onClose: function() {\n this._markAsRead();\n this.props.onHide();\n },\n _doFlash: function() {\n new g(this.refs.JSBNG__inner.getDOMNode()).from(\"opacity\", \"0\").to(\"opacity\", \"1\").duration(200).go();\n },\n componentDidUpdate: function(r) {\n if (((r.beep.beepID !== this.props.beep.beepID))) {\n this._doFlash();\n }\n ;\n ;\n },\n render: function() {\n var r = this.props.beep, s = r.icon.uri, t = ((r.link ? j.localize(r.link) : \"#\")), u = ((r.photo && j.snowliftable(t)));\n return (l.DOM.div({\n ref: \"JSBNG__inner\"\n }, h({\n className: \"-cx-PRIVATE-notificationBeeperItem__closebutton\",\n onClick: this._onClose,\n size: \"medium\"\n }), l.DOM.a({\n href: t,\n ajaxify: ((u ? t : null)),\n onClick: this._markAsRead,\n rel: ((u ? \"theater\" : null)),\n className: \"-cx-PRIVATE-notificationBeeperItem__anchor\"\n }, i({\n className: \"-cx-PRIVATE-notificationBeeperItem__imageblock\"\n }, l.DOM.img({\n src: r.actors[0].profile_picture.uri,\n className: \"-cx-PRIVATE-notificationBeeperItem__photo\"\n }), l.DOM.div({\n className: \"-cx-PRIVATE-notificationBeeperItem__imageblockcontent\"\n }, m({\n renderEmoticons: true,\n renderEmoji: true,\n interpolator: p,\n ranges: r.text.ranges,\n aggregatedranges: r.text.aggregated_ranges,\n text: r.text.text\n }), i({\n className: \"-cx-PRIVATE-notificationBeeperItem__metadata\"\n }, l.DOM.img({\n src: s\n }), n({\n time: r.timestamp.time,\n text: r.timestamp.text,\n verbose: r.timestamp.verbose\n })))))));\n }\n });\n e.exports = q;\n});\n__d(\"NotificationBeeperItem.react\", [\"Animation\",\"BrowserSupport\",\"NotificationBeeperItemContents.react\",\"React\",\"cx\",\"setTimeoutAcrossTransitions\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"BrowserSupport\"), i = b(\"NotificationBeeperItemContents.react\"), j = b(\"React\"), k = b(\"cx\"), l = b(\"setTimeoutAcrossTransitions\"), m = j.createClass({\n displayName: \"NotificationBeeperItem\",\n getInitialState: function() {\n return {\n fadedIn: false,\n hidden: false\n };\n },\n componentDidMount: function() {\n var n;\n if (h.hasCSSAnimations()) {\n n = this.setState.bind(this, {\n fadedIn: true\n }, null);\n }\n else n = function() {\n new g(this.refs.JSBNG__item.getDOMNode()).from(\"JSBNG__top\", \"-30px\").from(\"opacity\", \"0\").to(\"JSBNG__top\", \"0px\").to(\"opacity\", \"1\").duration(200).ondone(this.setState.bind(this, {\n fadedIn: true\n }, null)).go();\n }.bind(this);\n ;\n ;\n l(n, 50);\n this.props.onInserted(this.props.beep);\n },\n render: function() {\n var n = this.props.beep, o = (((((\"-cx-PRIVATE-notificationBeeperItem__beeperitem\") + ((this.state.fadedIn ? ((\" \" + \"-cx-PRIVATE-notificationBeeperItem__fadedin\")) : \"\")))) + ((this.state.hidden ? ((\" \" + \"-cx-PRIVATE-notificationBeeperItem__hiddenitem\")) : \"\")))), p = ((n.beepRenderer || i));\n return (j.DOM.li({\n className: o,\n ref: \"JSBNG__item\",\n \"data-gt\": n.tracking\n }, p({\n beep: n,\n onHide: this.setState.bind(this, {\n hidden: true\n }, null)\n })));\n }\n });\n e.exports = m;\n});\n__d(\"NotificationSound\", [\"Sound\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Sound\"), h = b(\"copyProperties\"), i = 5000;\n g.init([\"audio/mpeg\",]);\n function j(k) {\n this._soundPath = k;\n this._lastPlayed = 0;\n };\n;\n h(j.prototype, {\n play: function(k) {\n if (!this._soundPath) {\n return;\n }\n ;\n ;\n var l = JSBNG__Date.now();\n if (((((l - this._lastPlayed)) < i))) {\n return;\n }\n ;\n ;\n this._lastPlayed = l;\n g.play(this._soundPath, k);\n }\n });\n e.exports = j;\n});\n__d(\"NotificationBeeper.react\", [\"Animation\",\"Arbiter\",\"ChannelConstants\",\"NotificationBeeperItem.react\",\"NotificationConstants\",\"NotificationImpressions\",\"NotificationPhotoThumbnail\",\"NotificationSound\",\"NotificationUpdates\",\"NotificationUserActions\",\"React\",\"Style\",\"cx\",\"isEmpty\",\"merge\",\"setTimeoutAcrossTransitions\",\"shield\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"Arbiter\"), i = b(\"ChannelConstants\"), j = b(\"NotificationBeeperItem.react\"), k = b(\"NotificationConstants\"), l = b(\"NotificationImpressions\"), m = b(\"NotificationPhotoThumbnail\"), n = b(\"NotificationSound\"), o = b(\"NotificationUpdates\"), p = b(\"NotificationUserActions\"), q = b(\"React\"), r = b(\"Style\"), s = b(\"cx\"), t = b(\"isEmpty\"), u = b(\"merge\"), v = b(\"setTimeoutAcrossTransitions\"), w = b(\"shield\"), x = 5000, y = 2000, z = \"beeper\", aa = k.PayloadSourceType.LIVE_SEND, ba = k.PayloadSourceType.OTHER_APPLICATION, ca = q.createClass({\n displayName: \"NotificationBeeper\",\n getInitialState: function() {\n return {\n soundEnabled: this.props.soundEnabled,\n hovering: false,\n fading: false,\n paused: false,\n pendingBeeps: {\n },\n renderedBeeps: {\n }\n };\n },\n componentWillMount: function() {\n var ea = i.getArbiterType(\"notif_sound_pref_changed\"), fa = \"update-notifications\";\n this.subscriptions = [o.subscribe(fa, function(ga, ha) {\n if (((((ha.payloadsource === aa)) || ((ha.payloadsource === ba))))) {\n var ia = ha.nodes;\n if (((ia && ia.length))) {\n this._handleBeepChanges(da(ia));\n }\n ;\n ;\n }\n ;\n ;\n }.bind(this)),h.subscribe(ea, function(ga, ha) {\n this.setState({\n soundEnabled: ha.obj.enabled\n });\n }.bind(this)),];\n h.inform(\"NotificationBeeper/mounted\", null, h.BEHAVIOR_PERSISTENT);\n },\n componentWillUnmount: function() {\n this.subscriptions.forEach(function(ea) {\n ea.unsubscribe();\n });\n this.subscriptions = null;\n },\n _onMouseEnter: function() {\n if (this.state.paused) {\n return;\n }\n ;\n ;\n ((this._hideWait && JSBNG__clearTimeout(this._hideWait)));\n if (this.state.fading) {\n this._animation.JSBNG__stop();\n this._animation = null;\n r.set(this.refs.container.getDOMNode(), \"opacity\", \"0.96\");\n }\n ;\n ;\n var ea = Object.keys(this.state.renderedBeeps);\n if (this.props.unseenVsUnread) {\n p.markNotificationsAsSeen(ea);\n }\n else p.markNotificationsAsRead(ea);\n ;\n ;\n this.setState({\n hovering: true,\n fading: false,\n pendingBeeps: {\n },\n renderedBeeps: u(this.state.renderedBeeps, this.state.pendingBeeps)\n });\n },\n _onMouseLeave: function() {\n if (this.state.paused) {\n return;\n }\n ;\n ;\n this._waitToHide(y);\n this.setState({\n hovering: false\n });\n },\n _onInsertedItem: function(ea) {\n if (!this.state.hovering) {\n this._waitToHide();\n }\n ;\n ;\n if (((this.state.soundEnabled && ea.sound))) {\n if (!this._notifSound) {\n this._notifSound = new n(this.props.soundPath);\n }\n ;\n ;\n this._notifSound.play(ea.beepID);\n }\n ;\n ;\n if (this.props.shouldLogImpressions) {\n l.log([ea.notificationID,], z);\n }\n ;\n ;\n },\n _waitToHide: function(ea) {\n ((this._hideWait && JSBNG__clearTimeout(this._hideWait)));\n this._hideWait = v(w(this._hide, this), ((ea || x)));\n },\n _hide: function() {\n ((this._animation && this._animation.JSBNG__stop()));\n this._animation = new g(this.refs.container.getDOMNode()).from(\"opacity\", \"0.96\").to(\"opacity\", \"0\").duration(1500).ondone(this._finishHide).go();\n this.setState({\n fading: true\n });\n },\n _finishHide: function() {\n var ea = this.state.pendingBeeps;\n this.setState({\n fading: false,\n pendingBeeps: {\n },\n renderedBeeps: {\n }\n });\n v(this.setState.bind(this, {\n renderedBeeps: ea\n }, null));\n r.set(this.refs.container.getDOMNode(), \"opacity\", \"0.96\");\n },\n _handleBeepChanges: function(ea) {\n var fa = ((this.state.fading ? this.state.pendingBeeps : this.state.renderedBeeps));\n Object.keys(ea).reverse().forEach(function(ga) {\n var ha = ea[ga], ia = ha.beepID, ja = ((this.state.renderedBeeps[ga] || {\n }));\n if (((ja.beepID != ia))) {\n delete fa[ga];\n fa[ga] = ha;\n }\n ;\n ;\n }.bind(this));\n if (!this.state.paused) {\n this._waitToHide();\n }\n ;\n ;\n this.forceUpdate();\n },\n _togglePause: function() {\n if (!this.state.paused) {\n ((this._animation && this._animation.JSBNG__stop()));\n ((this._hideWait && JSBNG__clearTimeout(this._hideWait)));\n }\n else this._waitToHide();\n ;\n ;\n this.setState({\n paused: !this.state.paused\n });\n },\n render: function() {\n var ea = this.state.renderedBeeps, fa = {\n };\n Object.keys(ea).reverse().forEach(function(ja) {\n var ka = ea[ja];\n fa[ja] = j({\n beep: ka,\n onInserted: this._onInsertedItem\n });\n }, this);\n var ga = !t(fa), ha = null;\n if (((ga && this.props.canPause))) {\n ha = q.DOM.li({\n className: \"-cx-PRIVATE-notificationBeeper__pause\",\n onClick: this._togglePause\n }, ((this.state.paused ? \"Continue\" : \"Pause [fb]\")));\n }\n ;\n ;\n var ia = ((((!ga ? \"hidden_elem\" : \"\")) + ((\" \" + \"-cx-PUBLIC-notificationBeeper__list\"))));\n return (q.DOM.ul({\n ref: \"container\",\n className: ia,\n \"data-gt\": this.props.tracking,\n onMouseEnter: this._onMouseEnter,\n onMouseLeave: this._onMouseLeave\n }, fa, ha));\n }\n });\n function da(ea) {\n var fa = {\n };\n ea.forEach(function(ga) {\n var ha = ga.alert_id, ia = ((((ha + \"-\")) + ga.receivedTime)), ja = m.getThumbnail(ga.attachments, ga.attached_story);\n fa[ha] = {\n notificationID: ha,\n beepID: ia,\n beepRenderer: ga.beepRenderer,\n actors: ga.actors,\n icon: ga.icon,\n link: ga.url,\n photo: ja,\n text: ((ga.unaggregatedTitle || ga.title)),\n timestamp: ga.timestamp,\n receivedTime: ga.receivedTime,\n sound: !!ga.sound,\n tracking: ga.tracking\n };\n });\n return fa;\n };\n;\n e.exports = ca;\n});\n__d(\"FbdEventLog\", [\"URI\",\"AsyncSignal\",], function(a, b, c, d, e, f) {\n var g = b(\"URI\"), h = b(\"AsyncSignal\"), i = {\n log: function(j, k, l, m) {\n if (!j) {\n return;\n }\n ;\n ;\n var n = g(\"/desktop/eventlog.php\"), o = new h(n.toString(), {\n JSBNG__event: j,\n category: ((k || \"unknown\")),\n payload: ((l || \"\"))\n });\n o.setHandler(m).send();\n }\n };\n e.exports = i;\n});\n__d(\"DownloadDialog\", [\"JSBNG__Event\",\"Arbiter\",\"Class\",\"DataStore\",\"ModalMask\",\"Overlay\",\"Parent\",\"Style\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Arbiter\"), i = b(\"Class\"), j = b(\"DataStore\"), k = b(\"ModalMask\"), l = b(\"Overlay\"), m = b(\"Parent\"), n = b(\"Style\"), o = b(\"copyProperties\"), p = b(\"emptyFunction\");\n function q() {\n this.parent.construct(this);\n return this;\n };\n;\n i.extend(q, l);\n o(q, {\n POSITIONS: {\n BOTTOM_LEFT: \"bottom_left\",\n TOP_LEFT: \"top_left\",\n IE9_BOTTOM: \"ie9_bottom\"\n },\n activeDialogs: {\n },\n dismissAll: function() {\n {\n var fin287keys = ((window.top.JSBNG_Replay.forInKeys)((this.POSITIONS))), fin287i = (0);\n var r;\n for (; (fin287i < fin287keys.length); (fin287i++)) {\n ((r) = (fin287keys[fin287i]));\n {\n this.hideDialog(this.POSITIONS[r]);\n ;\n };\n };\n };\n ;\n },\n hideDialog: function(r) {\n var s = this.activeDialogs[r];\n ((s && s.hide()));\n this.activeDialogs[r] = null;\n }\n });\n o(q.prototype, {\n _cancelHandler: p,\n _closeHandler: p,\n _width: null,\n position: q.POSITIONS.BOTTOM_LEFT,\n init: function(r, s) {\n this.parent.init(r);\n this.position = s;\n var t = ((j.get(this._root, \"modal\") === \"true\"));\n q.hideDialog(s);\n q.activeDialogs[s] = this;\n g.listen(this._root, \"click\", function(JSBNG__event) {\n if (m.byClass(JSBNG__event.getTarget(), \"closeButton\")) {\n if (((this._cancelHandler() !== false))) {\n q.hideDialog(this.position);\n }\n ;\n }\n ;\n ;\n }.bind(this));\n this.subscribe(\"show\", function() {\n if (t) {\n k.show();\n }\n ;\n ;\n h.inform(\"layer_shown\", {\n type: \"DownloadDialog\"\n });\n }.bind(this));\n this.subscribe(\"hide\", function() {\n if (t) {\n k.hide();\n }\n ;\n ;\n h.inform(\"layer_hidden\", {\n type: \"DownloadDialog\"\n });\n this._closeHandler();\n }.bind(this));\n },\n setWidth: function(r) {\n this._width = Math.floor(r);\n return this;\n },\n updatePosition: function() {\n if (this._width) {\n n.set(this._overlay, \"width\", ((this._width + \"px\")));\n }\n ;\n ;\n return true;\n },\n setCancelHandler: function(r) {\n this._cancelHandler = ((r || p));\n return this;\n },\n setCloseHandler: function(r) {\n this._closeHandler = ((r || p));\n return this;\n }\n });\n e.exports = q;\n a.DownloadDialog = q;\n});\n__d(\"FbdConversionTracking\", [\"AsyncRequest\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"emptyFunction\"), i = {\n logClick: function(j, k) {\n if (!k) {\n k = \"desktop\";\n }\n ;\n ;\n new g().setURI(\"/ajax/desktop/log_clicks.php\").setData({\n click_source: j,\n promo: k\n }).setAllowCrossPageTransition(true).setErrorHandler(h).send();\n },\n logConversion: function(j, k) {\n if (!k) {\n k = \"desktop\";\n }\n ;\n ;\n new g().setURI(\"/ajax/desktop/log_conversions.php\").setData({\n conversion_action: j,\n promo: k\n }).setAllowCrossPageTransition(true).setErrorHandler(h).send();\n }\n };\n e.exports = i;\n});\n__d(\"FbdInstall\", [\"$\",\"AsyncRequest\",\"JSBNG__CSS\",\"DOM\",\"DownloadDialog\",\"FbdConversionTracking\",\"FbdEventLog\",\"FBDesktopDetect\",\"FBDesktopPlugin\",\"MegaphoneHelper\",], function(a, b, c, d, e, f) {\n var g = b(\"$\"), h = b(\"AsyncRequest\"), i = b(\"JSBNG__CSS\"), j = b(\"DOM\"), k = b(\"DownloadDialog\"), l = b(\"FbdConversionTracking\"), m = b(\"FbdEventLog\"), n = b(\"FBDesktopDetect\"), o = b(\"FBDesktopPlugin\"), p = b(\"MegaphoneHelper\"), q = 1000, r = ((300 * q)), s = {\n cancelSetup: function() {\n var t = JSON.stringify({\n ref: this.ref\n });\n m.log(\"download_canceled\", \"setup\", t);\n l.logConversion(\"download_canceled\");\n },\n hideMegaphone: function() {\n if (((this.megaphoneId && this.megaphoneLoc))) {\n p.hideStory(this.megaphoneId, this.megaphoneLoc, this.elementId, \"\", null);\n }\n ;\n ;\n },\n init: function(t, u) {\n this.downloadUrl = t;\n this.ref = ((u || \"unknown\"));\n },\n initInstallWait: function(t, u, v) {\n this.megaphoneId = t;\n this.megaphoneLoc = u;\n this.elementId = v;\n this._waitForInstall(r);\n },\n promptDownload: function(t) {\n t = ((t || this.downloadUrl));\n if (t) {\n var u = JSON.stringify({\n ref: this.ref\n });\n m.log(\"download_prompted\", \"setup\", u);\n l.logConversion(\"download_prompted\");\n var v = j.create(\"div\", {\n src: t,\n className: \"hidden_elem\"\n });\n j.appendContent(JSBNG__document.body, v);\n }\n ;\n ;\n },\n _responseHandler: function(t) {\n if (t.payload) {\n this._authToken = t.payload.access_token;\n this._userId = t.payload.id;\n }\n ;\n ;\n if (((this._authToken && this._userId))) {\n this._waitForRunningStart = JSBNG__Date.now();\n JSBNG__setTimeout(this._waitForRunning.bind(this), q);\n }\n ;\n ;\n },\n setupPlugin: function() {\n new h(\"/ajax/desktop/download\").send();\n this.promptDownload();\n },\n updateSidebarLinkVisibility: function() {\n if (!n.isPluginInstalled()) {\n i.show(g(\"sidebar-messenger-install-link\"));\n i.show(g(\"sidebar-messenger-install-separator\"));\n }\n ;\n ;\n },\n _waitForInstall: function(t) {\n var u = JSON.stringify({\n ref: this.ref\n });\n if (n.isPluginInstalled()) {\n m.log(\"install_success\", \"setup\", u);\n l.logConversion(\"install_success\");\n o.recheck();\n new h(\"/desktop/fbdesktop2/transfer.php\").setMethod(\"POST\").setHandler(this._responseHandler.bind(this)).send();\n k.dismissAll();\n this.hideMegaphone();\n return;\n }\n ;\n ;\n if (((t <= 0))) {\n m.log(\"install_timeout\", \"setup\", u);\n l.logConversion(\"install_timeout\");\n k.dismissAll();\n }\n else JSBNG__setTimeout(this._waitForInstall.bind(this, ((t - q))), q);\n ;\n ;\n },\n _waitForRunning: function() {\n var t = ((JSBNG__Date.now() - this._waitForRunningStart));\n if (o.isAppRunning()) {\n o.transferAuthToken(this._authToken, this._userId);\n }\n else if (((t < r))) {\n JSBNG__setTimeout(this._waitForRunning.bind(this), q);\n }\n \n ;\n ;\n }\n };\n e.exports = s;\n});\n__d(\"legacy:fbdesktop2-install-js\", [\"FbdInstall\",], function(a, b, c, d) {\n a.FbdInstall = b(\"FbdInstall\");\n}, 3);\n__d(\"legacy:fbdesktop-conversion-tracking\", [\"FbdConversionTracking\",], function(a, b, c, d) {\n a.FbdConversionTracking = b(\"FbdConversionTracking\");\n}, 3);\n__d(\"SidebarTicker\", [\"Arbiter\",\"ChatSidebar\",\"JSBNG__CSS\",\"DOM\",\"Run\",\"TickerController\",\"$\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ChatSidebar\"), i = b(\"JSBNG__CSS\"), j = b(\"DOM\"), k = b(\"Run\"), l = b(\"TickerController\"), m = b(\"$\"), n = b(\"copyProperties\");\n function o() {\n this._ticker = m(\"pagelet_ticker\");\n this._initSubscriptions();\n if (i.hasClass(JSBNG__document.documentElement, \"sidebarMode\")) {\n this._onSidebarShow();\n }\n ;\n ;\n };\n;\n o.hide = function() {\n k.onAfterLoad(function() {\n j.remove(m(\"pagelet_ticker\"));\n j.remove(j.JSBNG__find(JSBNG__document.body, \"div.fbSidebarGripper\"));\n h.resize();\n });\n };\n n(o.prototype, {\n _initSubscriptions: function() {\n this._subscriptions = [g.subscribe(\"sidebar/show\", this._onSidebarShow.bind(this)),];\n },\n _onSidebarShow: function() {\n l.show(this._ticker);\n }\n });\n e.exports = o;\n});\n__d(\"SidebarTickerResizer\", [\"Arbiter\",\"AsyncRequest\",\"ChatSidebar\",\"SimpleDrag\",\"$\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncRequest\"), i = b(\"ChatSidebar\"), j = b(\"SimpleDrag\"), k = b(\"$\"), l = 1e-7;\n function m(n) {\n var o = k(\"pagelet_ticker\"), p = o.parentNode, q = this._saveResizedState.bind(this), r, s, t, u = function(x, JSBNG__event) {\n r = JSBNG__event.clientY;\n s = o.offsetHeight;\n t = p.offsetHeight;\n }, v = function(x, JSBNG__event) {\n var y = ((s + ((JSBNG__event.clientY - r)))), z = ((100 - ((((((t - y)) / t)) * 100))));\n z = Math.max(l, Math.min(90, z));\n o.style.height = ((z + \"%\"));\n if (((x == \"end\"))) {\n q(z);\n g.inform(\"Ticker/resized\");\n }\n ;\n ;\n i.resize();\n }, w = new j(n);\n w.subscribe(\"start\", u);\n w.subscribe([\"update\",\"end\",], v);\n };\n;\n m.prototype._saveResizedState = function(n) {\n new h(\"/ajax/feed/ticker/resize\").setData({\n height: ((\"\" + n))\n }).setMethod(\"POST\").send();\n };\n e.exports = m;\n});\n__d(\"NotificationXOut\", [\"Arbiter\",\"JSBNG__Event\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"JSBNG__Event\");\n function i(m, n) {\n g.inform(\"notif/negativeCancel\", {\n id: m\n });\n n.kill();\n };\n;\n function j(m) {\n m.prevent();\n };\n;\n function k(m, n) {\n h.listen(m, \"click\", i.curry(n));\n };\n;\n function l(m) {\n h.listen(m, \"click\", j);\n };\n;\n e.exports = {\n setupCancelListener: k,\n setupNoListener: l\n };\n});\n__d(\"LiveMessageReceiver\", [\"Arbiter\",\"ChannelConstants\",\"copyProperties\",\"emptyFunction\",\"shield\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ChannelConstants\"), i = b(\"copyProperties\"), j = b(\"emptyFunction\"), k = b(\"shield\");\n function l(m) {\n this.eventName = m;\n this.subs = null;\n this.handler = j;\n this.shutdownHandler = null;\n this.registered = false;\n this.appId = 1;\n };\n;\n i(l, {\n getAppMessageType: function(m, n) {\n return ((((((\"live_message/\" + m)) + \":\")) + n));\n },\n route: function(m) {\n var n = function(o) {\n var p = l.getAppMessageType(m.app_id, m.event_name);\n g.inform(p, o, g.BEHAVIOR_PERSISTENT);\n };\n n(m.response);\n }\n });\n i(l.prototype, {\n setAppId: function(m) {\n this.appId = m;\n return this;\n },\n setHandler: function(m) {\n this.handler = m;\n this._dirty();\n return this;\n },\n setRestartHandler: j,\n setShutdownHandler: function(m) {\n this.shutdownHandler = k(m);\n this._dirty();\n return this;\n },\n _dirty: function() {\n if (this.registered) {\n this.unregister();\n this.register();\n }\n ;\n ;\n },\n register: function() {\n var m = function(o, p) {\n return this.handler(p);\n }.bind(this), n = l.getAppMessageType(this.appId, this.eventName);\n this.subs = {\n };\n this.subs.main = g.subscribe(n, m);\n if (this.shutdownHandler) {\n this.subs.shut = g.subscribe(h.ON_SHUTDOWN, this.shutdownHandler);\n }\n ;\n ;\n this.registered = true;\n return this;\n },\n unregister: function() {\n if (!this.subs) {\n return this;\n }\n ;\n ;\n {\n var fin288keys = ((window.top.JSBNG_Replay.forInKeys)((this.subs))), fin288i = (0);\n var m;\n for (; (fin288i < fin288keys.length); (fin288i++)) {\n ((m) = (fin288keys[fin288i]));\n {\n if (this.subs[m]) {\n this.subs[m].unsubscribe();\n }\n ;\n ;\n };\n };\n };\n ;\n this.subs = null;\n this.registered = false;\n return this;\n }\n });\n e.exports = l;\n});\n__d(\"initLiveMessageReceiver\", [\"Arbiter\",\"ChannelConstants\",\"LiveMessageReceiver\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ChannelConstants\"), i = b(\"LiveMessageReceiver\");\n g.subscribe(h.getArbiterType(\"app_msg\"), function(j, k) {\n i.route(k.obj);\n });\n});\n__d(\"legacy:CompactTypeaheadRenderer\", [\"CompactTypeaheadRenderer\",], function(a, b, c, d) {\n if (!a.TypeaheadRenderers) {\n a.TypeaheadRenderers = {\n };\n }\n;\n;\n a.TypeaheadRenderers.compact = b(\"CompactTypeaheadRenderer\");\n}, 3);"); |
| // 16017 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o58,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yQ/r/mxp6_mu5GrT.js",o59); |
| // undefined |
| o58 = null; |
| // undefined |
| o59 = null; |
| // 16023 |
| fpc.call(JSBNG_Replay.s1406cdb8f82a4497c9e210b291001f76845e62bf_361[0], o75,undefined); |
| // undefined |
| o75 = null; |
| // 16043 |
| JSBNG_Replay.s1406cdb8f82a4497c9e210b291001f76845e62bf_379[0](false); |
| // 16052 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"cmK7/\",]);\n}\n;\n__d(\"GenderConst\", [], function(a, b, c, d, e, f) {\n var g = {\n UNKNOWN: 0,\n FEMALE_SINGULAR: 1,\n MALE_SINGULAR: 2,\n FEMALE_SINGULAR_GUESS: 3,\n MALE_SINGULAR_GUESS: 4,\n MIXED_SINGULAR: 5,\n MIXED_PLURAL: 5,\n NEUTER_SINGULAR: 6,\n UNKNOWN_SINGULAR: 7,\n FEMALE_PLURAL: 8,\n MALE_PLURAL: 9,\n NEUTER_PLURAL: 10,\n UNKNOWN_PLURAL: 11\n };\n e.exports = g;\n});\n__d(\"VideoCallingTour\", [\"Arbiter\",\"ArbiterMixin\",\"Chat\",\"ChatSidebar\",\"ChatVisibility\",\"CSS\",\"DOM\",\"PresencePrivacy\",\"Run\",\"Toggler\",\"Vector\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ArbiterMixin\"), i = b(\"Chat\"), j = b(\"ChatSidebar\"), k = b(\"ChatVisibility\"), l = b(\"CSS\"), m = b(\"DOM\"), n = b(\"PresencePrivacy\"), o = b(\"Run\"), p = b(\"Toggler\"), q = b(\"Vector\"), r = b(\"copyProperties\"), s, t, u, v, w = [], x = function() {\n \n };\n function y() {\n if (j.isVisible()) {\n z();\n }\n else if (u) {\n aa();\n }\n ;\n };\n function z() {\n s.setContext(t.getBody());\n ba();\n s.show();\n ca();\n };\n function aa() {\n if (!v) {\n v = p.createInstance(u.getRoot());\n };\n var fa = m.scry(u.getRoot(), \"div.fbNubFlyout\")[0];\n if (fa) {\n s.setContext(fa);\n ba();\n s.show();\n ca();\n }\n ;\n };\n function ba() {\n var fa = q.getElementDimensions(s.getContext()).y;\n s.setOffsetY((fa * 1125));\n s.updatePosition();\n };\n function ca() {\n if (u) {\n w.push(u.subscribe(\"hide\", function() {\n da();\n if (!j.isVisible()) {\n s.hide();\n };\n }), u.subscribe(\"show\", function() {\n s.show();\n }), u.subscribe(\"resize\", function() {\n ba();\n s.updatePosition();\n }));\n };\n w.push(g.subscribe(\"sidebar/show\", z), g.subscribe(\"sidebar/hide\", aa), g.subscribe(\"sidebar/resized\", ba));\n };\n function da() {\n if (v) {\n v.setSticky(false);\n v = null;\n }\n ;\n };\n function ea() {\n while (w.length) {\n w.pop().unsubscribe();;\n };\n if (u) {\n da();\n };\n s.hide();\n l.show(\"fbVideoCallingGetStarted\");\n };\n r(x, h, {\n start: function(fa) {\n s = fa;\n l.hide(\"fbVideoCallingGetStarted\");\n k.goOnline(function() {\n w.push(n.subscribe(\"privacy-user-presence-changed\", ea));\n o.onLeave(ea);\n i.openBuddyList();\n var ga = null;\n w.push(j.subscribe(\"sidebar/initialized\", function(ha, ia) {\n t = ia;\n clearTimeout(ga);\n ga = y.defer();\n }), x.subscribe(\"videocallingtour/end\", ea));\n w.push(g.subscribe(\"buddylist-nub/initialized\", function(ha, ia) {\n u = ia;\n clearTimeout(ga);\n ga = y.defer();\n }));\n });\n x.inform(\"videocallingtour/start\");\n }\n });\n e.exports = x;\n});\n__d(\"ChatPeopleSuggestionList.react\", [\"ChatSidebarItem.react\",\"fbt\",\"React\",\"ShortProfiles\",\"PresenceStatus\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"ChatSidebarItem.react\"), h = b(\"fbt\"), i = b(\"React\"), j = b(\"ShortProfiles\"), k = b(\"PresenceStatus\"), l = b(\"cx\"), m = i.createClass({\n displayName: \"ChatPeopleSuggestionList\",\n _renderPeopleList: function() {\n var n = [];\n this.props.uids.map(function(o) {\n var p = j.getNow(o);\n if (p) {\n n.push(i.DOM.li(null, g({\n isAdded: false,\n showEditButton: true,\n images: p.thumbSrc,\n name: p.name,\n status: k.get(o),\n onClick: this.props.onClick.curry(o)\n })));\n };\n }.bind(this));\n return n;\n },\n render: function() {\n return (i.DOM.div(null, i.DOM.div({\n className: \"-cx-PRIVATE-fbChatOrderedList__header\"\n }, i.DOM.span({\n className: \"-cx-PRIVATE-fbChatOrderedList__headertext\"\n }, \"SUGGESTIONS\")), i.DOM.ul({\n className: \"-cx-PRIVATE-fbChatOrderedList__groupslist\"\n }, this._renderPeopleList())));\n }\n });\n e.exports = m;\n});\n__d(\"Dock\", [\"function-extensions\",\"Event\",\"shield\",\"WebMessengerWidthControl\",\"Arbiter\",\"ArbiterMixin\",\"ChatQuietLinks\",\"CSS\",\"DataStore\",\"DOM\",\"Parent\",\"Style\",\"Toggler\",\"Vector\",\"copyProperties\",\"csx\",\"emptyFunction\",\"ge\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"Event\"), h = b(\"shield\");\n b(\"WebMessengerWidthControl\");\n var i = b(\"Arbiter\"), j = b(\"ArbiterMixin\"), k = b(\"ChatQuietLinks\"), l = b(\"CSS\"), m = b(\"DataStore\"), n = b(\"DOM\"), o = b(\"Parent\"), p = b(\"Style\"), q = b(\"Toggler\"), r = b(\"Vector\"), s = b(\"copyProperties\"), t = b(\"csx\"), u = b(\"emptyFunction\"), v = b(\"ge\");\n function w() {\n \n };\n s(w, j, {\n MIN_HEIGHT: 140,\n INITIAL_FLYOUT_HEIGHT_OFFSET: 10,\n init: function(x) {\n this.init = u;\n this.rootEl = x;\n this.calculateViewportDimensions();\n this.calculateFlyoutHeightOffset();\n k.removeEmptyHrefs(this.rootEl);\n g.listen(x, \"click\", this._onClick.bind(this));\n g.listen(window, \"resize\", this._onWindowResize.bind(this));\n q.subscribe([\"show\",\"hide\",], function(y, z) {\n var aa = z.getActive();\n if (!n.contains(x, aa)) {\n return\n };\n if (l.hasClass(aa, \"fbNub\")) {\n this.notifyNub(aa, y);\n if ((y === \"show\")) {\n this._resizeNubFlyout(aa);\n };\n }\n else {\n var ba = o.byClass(aa, \"fbNubFlyout\");\n if (ba) {\n l.conditionClass(ba, \"menuOpened\", (y === \"show\"));\n };\n }\n ;\n }.bind(this));\n this.inform(\"init\", {\n }, i.BEHAVIOR_PERSISTENT);\n },\n calculateViewportDimensions: function() {\n return (this.viewportDimensions = r.getViewportDimensions());\n },\n calculateFlyoutHeightOffset: function() {\n this.flyoutHeightOffset = (this.INITIAL_FLYOUT_HEIGHT_OFFSET + r.getElementDimensions(this.rootEl).y);\n var x = v(\"blueBar\");\n if (x) {\n var y = (p.isFixed(x) ? \"viewport\" : \"document\");\n this.flyoutHeightOffset += (r.getElementPosition(x, y).y + r.getElementDimensions(x).y);\n }\n ;\n },\n toggle: function(x) {\n var y = this._findFlyout(x);\n if (!y) {\n return\n };\n this.subscribe(\"init\", function() {\n q.toggle(x);\n });\n },\n show: function(x) {\n this.subscribe(\"init\", function() {\n q.show(x);\n });\n },\n showNub: function(x) {\n l.show(x);\n },\n hide: function(x) {\n this.subscribe(\"init\", function() {\n var y = q.getInstance(x);\n (n.contains(x, y.getActive()) && y.hide());\n });\n },\n hideNub: function(x) {\n l.hide(x);\n this.hide(x);\n },\n setUseMaxHeight: function(x, y) {\n l.conditionClass(x, \"maxHeight\", (y !== false));\n this._resizeNubFlyout(x);\n },\n _resizeNubFlyout: function(x) {\n var y = this._findFlyout(x);\n if ((!y || !((l.hasClass(x, \"openToggler\") || l.hasClass(x, \"opened\"))))) {\n return\n };\n var z = n.find(y, \"div.fbNubFlyoutOuter\"), aa = n.find(z, \"div.fbNubFlyoutInner\"), ba = n.find(aa, \"div.fbNubFlyoutBody\"), ca = ba.scrollTop, da = ba.offsetHeight;\n p.set(ba, \"height\", \"auto\");\n var ea = r.getElementDimensions(y), fa = r.getElementDimensions(ba), ga = this.getMaxFlyoutHeight(x);\n p.set(y, \"max-height\", (ga + \"px\"));\n p.set(z, \"max-height\", (ga + \"px\"));\n ea = r.getElementDimensions(y);\n var ha = r.getElementDimensions(aa), ia = (ha.y - fa.y), ja = (ea.y - ia), ka = parseInt((ba.style.height || ba.clientHeight), 10), la = (ja !== ka);\n if (((ea.y > ia) && la)) {\n p.set(ba, \"height\", (ja + \"px\"));\n };\n l.removeClass(y, \"swapDirection\");\n var ma = r.getElementPosition(y).x;\n l.conditionClass(y, \"swapDirection\", function() {\n if ((ma < 0)) {\n return true\n };\n return (((ma + ea.x) > this.viewportDimensions.x));\n }.bind(this)());\n if ((la && ((ca + da) >= fa.y))) {\n ba.scrollTop = ba.scrollHeight;\n }\n else ba.scrollTop = ca;\n ;\n this.notifyNub(x, \"resize\");\n },\n getMaxFlyoutHeight: function(x) {\n var y = this._findFlyout(x), z = r.getElementPosition(y, \"viewport\"), aa = r.getElementDimensions(y), ba = (Math.max(this.MIN_HEIGHT, (this.viewportDimensions.y - this.flyoutHeightOffset)) - (((this.viewportDimensions.y - z.y) - aa.y)));\n return Math.max(ba, 0);\n },\n resizeAllFlyouts: function() {\n var x = n.scry(this.rootEl, \"div.-cx-PRIVATE-fbNub__root.openToggler\");\n x = x.concat(n.scry(this.rootEl, \"div.-cx-PRIVATE-fbNub__root.opened\"));\n var y = x.length;\n while (y--) {\n this._resizeNubFlyout(x[y]);;\n };\n },\n _onClick: function(event) {\n var x = event.getTarget(), y = o.byClass(x, \"fbNub\");\n if (y) {\n if (o.byClass(x, \"fbNubFlyoutTitlebar\")) {\n var z = o.byTag(x, \"a\"), aa = ((x.nodeName == \"INPUT\") && (x.getAttribute(\"type\") == \"submit\"));\n if ((!z && !aa)) {\n this.hide(y);\n return false;\n }\n ;\n }\n ;\n this.notifyNub(y, \"click\");\n }\n ;\n },\n _onWindowResize: function(event) {\n this.calculateViewportDimensions();\n this.resizeAllFlyouts();\n },\n _findFlyout: function(x) {\n return (l.hasClass(x, \"fbNubFlyout\") ? x : (n.scry(x, \"div.fbNubFlyout\")[0] || null));\n },\n registerNubController: function(x, y) {\n m.set(x, \"dock:nub:controller\", y);\n y.subscribe(\"nub/button/content-changed\", h(this.inform, this, \"resize\", x));\n y.subscribe(\"nub/flyout/content-changed\", h(this._resizeNubFlyout, this, x));\n },\n unregisterNubController: function(x) {\n m.remove(x, \"dock:nub:controller\");\n },\n notifyNub: function(x, y, z) {\n var aa = m.get(x, \"dock:nub:controller\");\n (aa && aa.inform(y, z));\n }\n });\n e.exports = (a.Dock || w);\n});\n__d(\"NubController\", [\"ArbiterMixin\",\"Dock\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"Dock\"), i = b(\"copyProperties\");\n function j() {\n \n };\n i(j.prototype, g, {\n init: function(k) {\n this.el = k;\n h.registerNubController(k, this);\n return this;\n },\n buttonContentChanged: function() {\n this.inform(\"nub/button/content-changed\");\n },\n flyoutContentChanged: function() {\n this.inform(\"nub/flyout/content-changed\");\n },\n hide: function() {\n h.hide(this.el);\n },\n show: function() {\n h.show(this.el);\n }\n });\n e.exports = j;\n});\n__d(\"ChatApp\", [\"CSS\",\"JSLogger\",], function(a, b, c, d, e, f) {\n var g = b(\"CSS\"), h = b(\"JSLogger\"), i = false, j = false, k = false, l = null, m = {\n init: function(n, o, p) {\n if (l) {\n h.create(\"chat_app\").error(\"repeated_init\");\n return;\n }\n ;\n l = n;\n d([\"TabsViewport\",\"ChatTabController\",\"ChatTabViewCoordinator\",\"MercuryServerRequests\",\"MercuryChannelHandler\",\"MercuryStateCheck\",], function(q, r, s, t, u, v) {\n t.get().handleUpdate(p);\n this.tabsViewport = new q(o);\n this.tabController = new r(this.tabsViewport);\n this.tabViewCoordinator = new s(o, this.tabsViewport);\n i = j = true;\n }.bind(this));\n },\n hide: function() {\n if ((!i || k)) {\n return\n };\n g.hide(l);\n k = true;\n },\n unhide: function() {\n if (i) {\n if (k) {\n g.show(l);\n this.tabsViewport.checkWidth();\n d([\"Dock\",], function(n) {\n n.resizeAllFlyouts();\n });\n k = false;\n }\n ;\n }\n else if (!j) {\n d([\"UIPagelet\",], function(n) {\n n.loadFromEndpoint(\"ChatTabsPagelet\", \"ChatTabsPagelet\");\n n.loadFromEndpoint(\"BuddylistPagelet\", \"BuddylistPagelet\");\n });\n j = true;\n }\n \n ;\n }\n };\n e.exports = m;\n});\n__d(\"DataViewPolyfill\", [\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\");\n function h(i, j, k) {\n if ((j === undefined)) {\n this._ba = new Uint8Array(i);\n }\n else if ((k === undefined)) {\n this._ba = new Uint8Array(i, j);\n }\n else this._ba = new Uint8Array(i, j, k);\n \n ;\n this.byteLength = this._ba.byteLength;\n };\n g(h, {\n isSupported: function() {\n return !!a.Uint8Array;\n }\n });\n g(h.prototype, {\n getUint8: function(i) {\n if ((i >= this._ba.length)) {\n throw new Error(\"Trying to read beyond bounds of DataViewPolyfill\")\n };\n return this._ba[i];\n },\n getUint16: function(i, j) {\n var k = this.getUint8(i), l = this.getUint8((i + 1));\n return (j ? (((l * 256)) + k) : (((k * 256)) + l));\n },\n getUint32: function(i, j) {\n var k = this.getUint8(i), l = this.getUint8((i + 1)), m = this.getUint8((i + 2)), n = this.getUint8((i + 3));\n return (j ? (((((((((n * 256) + m)) * 256) + l)) * 256)) + k) : (((((((((k * 256) + l)) * 256) + m)) * 256)) + n));\n }\n });\n e.exports = h;\n});\n__d(\"getImageSize\", [\"DataViewPolyfill\",], function(a, b, c, d, e, f) {\n var g = b(\"DataViewPolyfill\"), h = (a.DataView || g);\n function i(m) {\n return {\n width: m.getUint16(6, true),\n height: m.getUint16(8, true)\n };\n };\n function j(m) {\n return {\n width: m.getUint32(16, false),\n height: m.getUint32(20, false)\n };\n };\n function k(m) {\n var n = m.byteLength, o = 2;\n while ((o < n)) {\n var p = m.getUint16(o, false);\n o += 2;\n if (((p == 65472) || (p == 65474))) {\n return {\n width: m.getUint16((o + 5), false),\n height: m.getUint16((o + 3), false)\n };\n }\n else o += m.getUint16(o, false);\n ;\n };\n return null;\n };\n function l(m) {\n var n = new h(m);\n if (((n.getUint8(0) == 255) && (n.getUint8(1) == 216))) {\n return k(n)\n };\n if ((((n.getUint8(0) == 71) && (n.getUint8(1) == 73)) && (n.getUint8(2) == 70))) {\n return i(n)\n };\n if (((((n.getUint8(0) == 137) && (n.getUint8(1) == 80)) && (n.getUint8(2) == 78)) && (n.getUint8(3) == 71))) {\n return j(n)\n };\n return null;\n };\n e.exports = l;\n l.gif = i;\n l.png = j;\n l.jpeg = k;\n});\n__d(\"ChatAutoSendPhotoUploader\", [\"ArbiterMixin\",\"DOM\",\"Event\",\"FileForm\",\"FileFormResetOnSubmit\",\"FileInput\",\"FormSubmitOnChange\",\"MercuryAttachmentType\",\"SubscriptionsHandler\",\"copyProperties\",\"csx\",\"getImageSize\",\"removeFromArray\",\"shield\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"DOM\"), i = b(\"Event\"), j = b(\"FileForm\"), k = b(\"FileFormResetOnSubmit\"), l = b(\"FileInput\"), m = b(\"FormSubmitOnChange\"), n = b(\"MercuryAttachmentType\"), o = b(\"SubscriptionsHandler\"), p = b(\"copyProperties\"), q = b(\"csx\"), r = b(\"getImageSize\"), s = b(\"removeFromArray\"), t = b(\"shield\"), u = 0;\n function v(w, x, y) {\n this._idElem = y;\n this._input = x;\n this._subscriptionsHandler = new o();\n this._uploadBatches = [];\n var z = new j(w, [m,k,]), aa = h.find(w, \".-cx-PRIVATE-mercuryFileUploader__root\"), ba = h.find(aa, \".-cx-PRIVATE-mercuryFileUploader__button\");\n new l(aa, ba, x);\n this._subscriptionsHandler.addSubscriptions(z.subscribe(\"submit\", this._onFileSubmit.bind(this)), z.subscribe(\"success\", this._onFileUploadSuccess.bind(this)), z.subscribe(\"failure\", this._onFileUploadFailure.bind(this)), i.listen(ba, \"click\", t(this.inform, this, \"open\")));\n };\n p(v.prototype, g, {\n isUploading: function() {\n return (this._uploadBatches.length > 0);\n },\n destroy: function() {\n this._subscriptionsHandler.release();\n },\n _getPreviewAttachment: function(w) {\n var x = {\n attach_type: n.PHOTO,\n preview_uploading: true\n };\n if (w) {\n x.preview_width = w.width;\n x.preview_height = w.height;\n }\n ;\n return x;\n },\n _onFileSubmit: function() {\n u += 1;\n var w = (\"upload_\" + u);\n this._idElem.value = w;\n this._uploadBatches.push(w);\n if (((((typeof FileReader !== \"undefined\") && FileReader.prototype.readAsArrayBuffer) && this._input.files) && (this._input.files.length === 1))) {\n var x = new FileReader();\n x.onload = function() {\n this.inform(\"submit\", {\n upload_id: w,\n preview_attachments: [this._getPreviewAttachment(r(x.result)),]\n });\n }.bind(this);\n x.onerror = function() {\n this.inform(\"submit\", {\n upload_id: w,\n preview_attachments: [this._getPreviewAttachment(null),]\n });\n }.bind(this);\n x.readAsArrayBuffer(this._input.files[0]);\n }\n else {\n var y = 1;\n if (this._input.files) {\n y = this._input.files.length;\n };\n var z = [];\n for (var aa = 0; (aa < y); ++aa) {\n z.push(this._getPreviewAttachment(null));;\n };\n this.inform(\"submit\", {\n upload_id: w,\n preview_attachments: z\n });\n }\n ;\n },\n _onFileUploadSuccess: function(event, w) {\n var x = w.response.getPayload(), y = x.uploadID;\n s(this._uploadBatches, y);\n var z = [];\n x.metadata.forEach(function(aa) {\n z.push(aa.image_id);\n });\n this.inform(\"all-uploads-completed\", {\n upload_id: x.uploadID,\n image_ids: z\n });\n },\n _onFileUploadFailure: function(event, w) {\n var x = this._uploadBatches[(this._uploadBatches.length - 1)];\n s(this._uploadBatches, x);\n this.inform(\"all-uploads-failed\", {\n upload_id: x\n });\n }\n });\n e.exports = v;\n});\n__d(\"VideoCallPromo\", [\"ArbiterMixin\",\"AsyncRequest\",\"ChatConfig\",\"ChatVisibility\",\"LegacyContextualDialog\",\"CSS\",\"MercuryParticipants\",\"MercuryThreads\",\"ChatTabTemplates\",\"VideoCallCore\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"AsyncRequest\"), i = b(\"ChatConfig\"), j = b(\"ChatVisibility\"), k = b(\"LegacyContextualDialog\"), l = b(\"CSS\"), m = b(\"MercuryParticipants\"), n = b(\"MercuryThreads\").get(), o = b(\"ChatTabTemplates\"), p = b(\"VideoCallCore\"), q = b(\"copyProperties\"), r = b(\"emptyFunction\");\n function s() {\n this._dialog = null;\n };\n function t(v) {\n if (!((p.isSupported() && i.get(\"video.show_promo\")))) {\n return false\n };\n var w = n.getCanonicalUserInThread(v);\n if (!w) {\n return false\n };\n return (j.isOnline() && p.availableForCall(w));\n };\n function u(v) {\n new h().setURI(\"/ajax/chat/video/log_promo.php\").setData({\n viewedUserID: v\n }).setAllowCrossPageTransition(true).setErrorHandler(r).send();\n };\n q(s.prototype, g);\n q(s.prototype, {\n render: function(v, w) {\n var x = t(w);\n if (!x) {\n return\n };\n var y = n.getCanonicalUserInThread(w);\n m.get((\"fbid:\" + y), function(z) {\n if (!z.call_promo) {\n return\n };\n var aa = o[\":fb:mercury:call:promo\"].build();\n this._dialog = new k();\n this._dialog.init(aa.getRoot()).setWidth(250).setAlignH(\"center\").setContext(v).show();\n l.addClass(this._dialog.getRoot(), \"uiContextualDialogWithFooterArrowBottom\");\n l.addClass(v, \"video_call_promo\");\n u(n.getCanonicalUserInThread(w));\n this.inform(\"chat/dialog-rendered\", {\n dialog: this,\n thread_id: w\n });\n }.bind(this));\n },\n updatePosition: function() {\n if ((this._dialog && this._dialog.isShown())) {\n this._dialog.updatePosition();\n };\n },\n hide: function() {\n if ((this._dialog && this._dialog.isShown())) {\n this._dialog.hide();\n this._dialog = null;\n }\n ;\n }\n });\n e.exports = s;\n});\n__d(\"VideoCallTourDialog\", [\"ArbiterMixin\",\"LegacyContextualDialog\",\"CSS\",\"MercuryThreads\",\"ChatTabTemplates\",\"VideoCallCore\",\"VideoCallingTour\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"LegacyContextualDialog\"), i = b(\"CSS\"), j = b(\"MercuryThreads\").get(), k = b(\"ChatTabTemplates\"), l = b(\"VideoCallCore\"), m = b(\"VideoCallingTour\"), n = b(\"copyProperties\");\n function o() {\n this._dialog = null;\n };\n n(o.prototype, g);\n n(o.prototype, {\n render: function(p, q) {\n var r = j.getCanonicalUserInThread(q);\n if ((!r || !l.availableForCall(r))) {\n return\n };\n var s = k[\":fb:mercury:call:tour\"].build();\n this._dialog = new h();\n this._dialog.init(s.getRoot()).setWidth(250).setAlignH(\"center\").setContext(p).show();\n i.addClass(this._dialog.getRoot(), \"uiContextualDialogWithFooterArrowBottom\");\n i.addClass(p, \"video_call_tour\");\n this.inform(\"chat/dialog-rendered\", {\n dialog: this,\n thread_id: q\n });\n m.inform(\"videocallingtour/end\");\n },\n updatePosition: function() {\n if ((this._dialog && this._dialog.isShown())) {\n this._dialog.updatePosition();\n };\n },\n hide: function() {\n if ((this._dialog && this._dialog.isShown())) {\n this._dialog.hide();\n this._dialog = null;\n }\n ;\n }\n });\n e.exports = o;\n});\n__d(\"ChatContextualDialogController\", [\"Event\",\"ArbiterMixin\",\"ChatTabModel\",\"VideoCallingTour\",\"VideoCallPromo\",\"VideoCallTourDialog\",\"copyProperties\",\"setTimeoutAcrossTransitions\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"ArbiterMixin\"), i = b(\"ChatTabModel\"), j = b(\"VideoCallingTour\"), k = b(\"VideoCallPromo\"), l = b(\"VideoCallTourDialog\"), m = b(\"copyProperties\"), n = b(\"setTimeoutAcrossTransitions\"), o = 60000, p = false, q = false, r = function(y, z) {\n this._videoCallPromo = new k();\n this._videoCallTour = new l();\n this._threadID = y;\n this._tabMainElement = z;\n this._openDialog = null;\n this._subscriptionTokens = [];\n this._scrollListener = null;\n this._timeout = null;\n };\n function s(y, event, z) {\n if (y._openDialog) {\n y._openDialog.updatePosition();\n };\n };\n function t(y) {\n if (y._openDialog) {\n y._openDialog.updatePosition();\n };\n };\n function u(y) {\n if (y._openDialog) {\n y._openDialog.hide();\n y._openDialog = null;\n }\n ;\n if (y._timeout) {\n clearTimeout(y._timeout);\n y._timeout = null;\n }\n ;\n while (y._subscriptionTokens.length) {\n y._subscriptionTokens.pop().unsubscribe();;\n };\n if (y._scrollListener) {\n y._scrollListener.remove();\n y._scrollListener = null;\n }\n ;\n };\n function v(y, event, z) {\n if ((z.thread_id === y._threadID)) {\n y._openDialog = z.dialog;\n p = true;\n x(y);\n y._timeout = n(y.destroy.bind(y, y._threadID), o);\n y._scrollListener = g.listen(window, \"scroll\", t.curry(y));\n }\n ;\n };\n function w(y, z) {\n if (!y._openDialog) {\n y._subscriptionTokens.push(z.subscribe(\"chat/dialog-rendered\", v.curry(y)));\n z.render(y._tabMainElement, y._threadID);\n }\n ;\n };\n function x(y) {\n y._subscriptionTokens.push(i.subscribe(\"chat/tabs-changed\", s.curry(y)), r.subscribe(\"dialog/close-all\", u.curry(y)));\n };\n m(r, h);\n m(r.prototype, {\n destroy: function() {\n u(this);\n },\n tabFocused: function() {\n if (q) {\n w(this, this._videoCallTour);\n return;\n }\n ;\n if (!p) {\n w(this, this._videoCallPromo);\n };\n },\n tabNotActive: function() {\n u(this);\n },\n hideVideoCallouts: function() {\n u(this);\n }\n });\n j.subscribe(\"videocallingtour/start\", function() {\n q = true;\n r.inform(\"dialog/close-all\");\n });\n j.subscribe(\"videocallingtour/end\", function() {\n q = false;\n });\n e.exports = r;\n});\n__d(\"ChatPrivacyActionController\", [\"ChatVisibility\",\"JSLogger\",\"PresencePrivacy\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ChatVisibility\"), h = b(\"JSLogger\"), i = b(\"PresencePrivacy\"), j = b(\"copyProperties\"), k = function(l, m) {\n this._userID = l;\n this._logger = h.create(\"blackbird\");\n this._getState = function() {\n if (g.isOnline()) {\n return (i.allows(this._userID) ? k.NORMAL : k.BLOCKED)\n };\n return k.OFFLINE;\n };\n this._togglePrivacy = function() {\n var n = this._getState();\n switch (this._getState()) {\n case k.OFFLINE:\n if (g.isOnline()) {\n this._logger.error(\"tabs_already_online\");\n break;\n }\n ;\n this._logger.log(\"tabs_go_online\", {\n tab_id: this._userID\n });\n g.goOnline(function() {\n if (!i.allows(this._userID)) {\n if ((this._getState() !== k.BLOCKED)) {\n this._logger.error(\"privacy_action_controller_blocked_inconsistency\");\n };\n this._togglePrivacy();\n }\n ;\n }.bind(this));\n break;\n case k.BLOCKED:\n i.allow(this._userID);\n this._logger.log(\"tabs_unblock\", {\n tab_id: this._userID\n });\n break;\n case k.NORMAL:\n i.disallow(this._userID);\n this._logger.log(\"tabs_block\", {\n tab_id: this._userID\n });\n break;\n };\n };\n (function() {\n var n = function() {\n (m && m(this._getState()));\n }.bind(this);\n n();\n this._subscribeToken = i.subscribe(\"privacy-changed\", n);\n }.bind(this)).defer();\n };\n k.OFFLINE = \"offline\";\n k.BLOCKED = \"blocked\";\n k.NORMAL = \"normal\";\n j(k.prototype, {\n togglePrivacy: function() {\n this._logger.log(\"gear_menu_toggle_privacy\", {\n tab_id: this._userID\n });\n this._togglePrivacy();\n },\n destroy: function() {\n i.unsubscribe(this._subscribeToken);\n }\n });\n e.exports = k;\n});\n__d(\"MercuryTypingIndicator\", [\"Animation\",\"CSS\",\"DOM\",\"MercuryTypingReceiver\",\"MercuryParticipants\",\"Style\",\"ChatTabTemplates\",\"MercuryThreadInformer\",\"Tooltip\",\"copyProperties\",\"cx\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"CSS\"), i = b(\"DOM\"), j = b(\"MercuryTypingReceiver\"), k = b(\"MercuryParticipants\"), l = b(\"Style\"), m = b(\"ChatTabTemplates\"), n = b(\"MercuryThreadInformer\").get(), o = b(\"Tooltip\"), p = b(\"copyProperties\"), q = b(\"cx\"), r = b(\"tx\"), s = [];\n n.subscribe(\"messages-received\", function(v, w) {\n s.forEach(function(x) {\n var y = w[x._threadID];\n (y && x.receivedMessages(y));\n });\n });\n j.subscribe(\"state-changed\", function(v, w) {\n s.forEach(function(x) {\n var y = w[x._threadID];\n (y && x._handleStateChanged(y));\n });\n });\n function t(v) {\n var w = m[\":fb:chat:conversation:message-group\"].build(), x = m[\":fb:mercury:typing-indicator:typing\"].build();\n h.addClass(w.getRoot(), \"-cx-PRIVATE-fbChatMessage__fromothers\");\n var y = w.getNode(\"profileLink\");\n o.set(y, v.name, \"left\");\n y.href = v.href;\n w.setNodeContent(\"profileName\", v.name);\n w.setNodeProperty(\"profilePhoto\", \"src\", v.image_src);\n var z = r._(\"{name} is typing...\", {\n name: v.short_name\n });\n o.set(x.getRoot(), z, \"above\");\n i.appendContent(w.getNode(\"messages\"), x.getRoot());\n return w;\n };\n function u(v, w, x) {\n this._animations = {\n };\n this._activeUsers = {\n };\n this._typingIndicator = w;\n this._messagesView = x;\n this._threadID = v;\n this._subscription = j.subscribe(\"state-changed\", function(y, z) {\n var aa = z[this._threadID];\n (aa && this._handleStateChanged(aa));\n }.bind(this));\n s.push(this);\n };\n p(u.prototype, {\n destroy: function() {\n Object.keys(this._activeUsers).forEach(this._removeUserBubble.bind(this));\n this._controller.destroy();\n s.remove(this);\n },\n receivedMessages: function(v) {\n v.forEach(function(w) {\n if (!k.isAuthor(w.author)) {\n this._removeUserBubble(w.author);\n };\n }.bind(this));\n },\n _handleStateChanged: function(v) {\n for (var w in this._activeUsers) {\n if ((v.indexOf(w) === -1)) {\n this._slideOutUserBubble(w);\n delete this._activeUsers[w];\n }\n ;\n };\n if (v.length) {\n k.getMulti(v, function(x) {\n var y = this._messagesView.isScrolledToBottom(), z = {\n };\n for (var aa in x) {\n var ba = this._activeUsers[aa];\n z[aa] = (ba || t(x[aa]).getRoot());\n if (!ba) {\n i.appendContent(this._typingIndicator, z[aa]);\n };\n };\n var ca = (Object.keys(z).length > 0);\n (y && this._messagesView.scrollToBottom(ca));\n this._activeUsers = z;\n }.bind(this));\n };\n },\n _removeUserBubble: function(v, w) {\n var x = this._getCurrentAnimation(v, w);\n if (x) {\n x.animation.stop();\n i.remove(x.elem);\n delete this._animations[v];\n }\n ;\n if ((v in this._activeUsers)) {\n i.remove(this._activeUsers[v]);\n delete this._activeUsers[v];\n }\n ;\n (w && i.remove(w));\n },\n _slideOutUserBubble: function(v) {\n var w = this._activeUsers[v];\n if (this._getCurrentAnimation(v, w)) {\n return;\n }\n else if (w) {\n l.set(w, \"overflow\", \"hidden\");\n var x = (new g(w)).from(\"opacity\", 1).from(\"height\", w.offsetHeight).to(\"height\", 0).to(\"opacity\", 0).ease(g.ease.end).duration(250).ondone(this._removeUserBubble.bind(this, v, w)).go();\n this._animations[v] = {\n animation: x,\n elem: w\n };\n }\n \n ;\n },\n _getCurrentAnimation: function(v, w) {\n if ((this._animations[v] && ((!w || (this._animations[v].elem === w))))) {\n return this._animations[v]\n };\n }\n });\n e.exports = u;\n});\n__d(\"ChatTabMessagesView\", [\"JSXDOM\",\"Animation\",\"Arbiter\",\"ArbiterMixin\",\"MercuryAttachment\",\"MercuryAttachmentRenderer\",\"ChannelConstants\",\"ChatConfig\",\"ChatVisibility\",\"createArrayFrom\",\"CSS\",\"DOM\",\"Env\",\"Event\",\"JoinableConversationMessageFilter\",\"LiveTimer\",\"MercuryActionTypeConstants\",\"MercuryAPIArgsSource\",\"MercuryLastMessageIndicator\",\"MercuryLogMessageType\",\"MercurySourceType\",\"shield\",\"MercuryMessages\",\"MercuryServerRequests\",\"MercuryThreadMetadataRawRenderer\",\"MercuryThreadMetadataRenderer\",\"MercuryThreads\",\"MercuryThreadlistConstants\",\"MercuryTypingIndicator\",\"MercuryMessageRenderer\",\"Parent\",\"MercuryParticipants\",\"React\",\"ServerTime\",\"MercuryStatusTemplates\",\"Style\",\"SubscriptionsHandler\",\"ChatTabTemplates\",\"MercuryThreadInformer\",\"Timestamp.react\",\"Tooltip\",\"UserAgent\",\"VideoCallCore\",\"copyProperties\",\"csx\",\"cx\",\"extendArray\",\"formatDate\",\"isRTL\",\"removeFromArray\",\"throttle\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSXDOM\"), h = b(\"Animation\"), i = b(\"Arbiter\"), j = b(\"ArbiterMixin\"), k = b(\"MercuryAttachment\"), l = b(\"MercuryAttachmentRenderer\"), m = b(\"ChannelConstants\"), n = b(\"ChatConfig\"), o = b(\"ChatVisibility\"), p = b(\"createArrayFrom\"), q = b(\"CSS\"), r = b(\"DOM\"), s = b(\"Env\"), t = b(\"Event\"), u = b(\"JoinableConversationMessageFilter\"), v = b(\"LiveTimer\"), w = b(\"MercuryActionTypeConstants\"), x = b(\"MercuryAPIArgsSource\"), y = b(\"MercuryLastMessageIndicator\"), z = b(\"MercuryLogMessageType\"), aa = b(\"MercurySourceType\"), ba = b(\"shield\"), ca = b(\"MercuryMessages\").get(), da = b(\"MercuryServerRequests\").get(), ea = b(\"MercuryThreadMetadataRawRenderer\"), fa = b(\"MercuryThreadMetadataRenderer\").get(), ga = b(\"MercuryThreads\").get(), ha = b(\"MercuryThreadlistConstants\"), ia = b(\"MercuryTypingIndicator\"), ja = b(\"MercuryMessageRenderer\"), ka = b(\"Parent\"), la = b(\"MercuryParticipants\"), ma = b(\"React\"), na = b(\"ServerTime\"), oa = b(\"MercuryStatusTemplates\"), pa = b(\"Style\"), qa = b(\"SubscriptionsHandler\"), ra = b(\"ChatTabTemplates\"), sa = b(\"MercuryThreadInformer\").get(), ta = b(\"Timestamp.react\"), ua = b(\"Tooltip\"), va = b(\"UserAgent\"), wa = b(\"VideoCallCore\"), xa = b(\"copyProperties\"), ya = b(\"csx\"), za = b(\"cx\"), ab = b(\"extendArray\"), bb = b(\"formatDate\"), cb = b(\"isRTL\"), db = b(\"removeFromArray\"), eb = b(\"throttle\"), fb = b(\"tx\"), gb, hb = 34, ib = ((1000 * 60) * 60), jb = 70, kb = null, lb = 20;\n function mb(wb) {\n return bb(new Date(wb), (n.get(\"24h_times\") ? \"H:i\" : \"g:ia\"));\n };\n function nb(wb) {\n var xb = ra[\":fb:chat:conversation:message-group\"].build(), yb = xb.getNode(\"profileLink\"), zb = n.get(\"chat_tab_bubbles\"), ac = la.isAuthor(wb.author), bc = da.tokenizeThreadID(wb.thread_id), cc = (bc.type !== \"user\"), dc = (!ac || !zb);\n if (!zb) {\n xb.setNodeContent(\"timestamp\", mb(wb.timestamp));\n };\n q.conditionClass(xb.getRoot(), \"-cx-PRIVATE-fbChatMessage__fromothers\", (!ac && zb));\n q.conditionClass(xb.getRoot(), \"-cx-PRIVATE-fbChatMessageGroup__withprofilename\", ((cc && !ac) && zb));\n q.conditionShow(yb, dc);\n la.get(wb.author, function(ec) {\n if (dc) {\n yb.href = ec.href;\n var fc = (ac ? \"You\" : ec.name);\n if ((!ac && zb)) {\n fc = g.div({\n className: \"-cx-PRIVATE-fbChatMessageGroup__tooltipcontainer\"\n }, g.div({\n className: \"-cx-PRIVATE-fbChatMessageGroup__timestamptooltip\"\n }, mb(wb.timestamp)), ec.name);\n };\n ua.set(yb, fc, \"left\");\n if (((!ac && zb) && cc)) {\n xb.setNodeContent(\"profileName\", ec.name);\n };\n xb.setNodeProperty(\"profilePhoto\", \"src\", ec.image_src);\n }\n ;\n });\n return xb;\n };\n function ob(wb) {\n var xb = ra[\":fb:chat:conversation:message:event\"].build(), yb = n.get(\"chat_tab_bubbles\"), zb = mb(wb.timestamp);\n if (yb) {\n xb.getRoot().setAttribute(\"title\", zb);\n }\n else xb.setNodeContent(\"timestamp\", zb);\n ;\n ja.renderLogMessage(xb.getNode(\"icon\"), xb.getNode(\"message\"), xb.getNode(\"attachment\"), wb);\n var ac = qb(wb);\n if (ac) {\n r.appendContent(xb.getNode(\"message\"), ac);\n };\n return xb.getRoot();\n };\n function pb(wb, xb) {\n if (!n.get(\"chat_tab_bubbles\")) {\n return\n };\n if ((kb === null)) {\n var yb = xb.childNodes[0];\n pa.set(xb, \"overflow\", \"scroll\");\n kb = (yb.clientWidth - jb);\n pa.set(xb, \"overflow\", \"\");\n }\n ;\n if (!q.hasClass(wb, \"-cx-PRIVATE-fbChatMessage__root\")) {\n var zb = r.scry(wb, \".-cx-PRIVATE-fbChatMessage__root\");\n if ((zb.length === 1)) {\n wb = zb[0];\n }\n else return\n ;\n }\n ;\n pa.set(wb, \"max-width\", (kb + \"px\"));\n var ac, bc, cc = wb.firstChild;\n if (((wb.childNodes.length === 1) && cc.getAttribute(\"data-measureme\"))) {\n ac = cc.getClientRects();\n var dc = cc.offsetHeight;\n if (((ac && (ac.length > 1)) && (ac[0].height < dc))) {\n bc = true;\n if (!gb) {\n r.remove(cc);\n gb = wb.offsetWidth;\n r.appendContent(wb, cc);\n }\n ;\n var ec = cc.offsetWidth, fc = ((wb.offsetWidth - ec) - gb);\n if ((fc > 0)) {\n pa.set(wb, \"max-width\", (ec + \"px\"));\n };\n }\n ;\n }\n ;\n var gc = ka.byClass(wb, \"-cx-PRIVATE-fbChatMessageGroup__withprofilename\");\n if (gc) {\n q.conditionClass(gc, \"-cx-PRIVATE-fbChatMessageGroup__onelineunderprofilename\", (ac ? !bc : (wb.offsetHeight < hb)));\n };\n };\n function qb(wb) {\n var xb, yb;\n if ((wb.log_message_type == z.VIDEO_CALL)) {\n if ((wb.log_message_data.event_name == \"install_canceled\")) {\n xb = r.tx._(\"Retry setup and call back.\");\n yb = \"callback_cancelinstall_link\";\n return rb(xb, wb.thread_id, wb.log_message_data.to, yb);\n }\n else if (((!wb.log_message_data.event_name && (wb.log_message_data.callee == la.user)) && !wb.log_message_data.answered)) {\n xb = r.tx._(\"Call Back\");\n yb = \"callback_link\";\n return rb(xb, wb.thread_id, wb.log_message_data.caller.split(\":\")[1], yb);\n }\n \n \n };\n return null;\n };\n function rb(wb, xb, yb, zb) {\n if (wa.isSupported()) {\n var ac = (!o.isOnline() || !wa.availableForCall(yb)), bc = r.create(\"a\", {\n href: \"#\",\n className: \"callBackLink\"\n }, wb);\n if (ac) {\n q.hide(bc);\n };\n bc.setAttribute(\"data-gt\", JSON.stringify({\n videochat: \"clicked_callback_link\"\n }));\n t.listen(bc, \"click\", function() {\n ub.inform(\"video-call-clicked\", {\n userID: yb,\n threadID: xb,\n clickSource: zb\n });\n });\n return bc;\n }\n ;\n return null;\n };\n function sb(wb) {\n var xb = ra[\":fb:mercury:chat:message:forward\"].build(), yb = xb.getNode(\"forwardText\");\n if (yb) {\n q.hide(xb.getRoot());\n fa.renderTitanLink(wb.thread_id, xb.getNode(\"forwardLink\"), q.show.bind(q, xb.getRoot()));\n if ((wb.forward_count > 1)) {\n r.appendContent(yb, fb._(\"{count} forwarded messages\", {\n count: wb.forward_count\n }));\n }\n else r.appendContent(yb, \"1 forwarded message\");\n ;\n }\n ;\n return xb.getRoot();\n };\n var tb = [];\n function ub(wb, xb, yb, zb, ac, bc, cc) {\n this.loadingIcon = ac;\n this.threadID = wb;\n this.sheetController = xb;\n this.scrollContainer = yb;\n this.conversationElem = zb;\n this.messageElements = {\n };\n this.messageGroup = null;\n this.prevMessage = null;\n v.restart((na.get() / 1000));\n this._fetchMultiplier = 1;\n this._oldestMessageDisplayedTimestamp = null;\n this._loadingMoreMessages = false;\n this._currentMessageCount = 0;\n this._hasReachedClearedMessages = false;\n var dc = ha.MESSAGE_TIMESTAMP_THRESHOLD;\n this._oldestMessageDisplayedTimestamp = (Date.now() - dc);\n tb.push(this);\n function ec() {\n ub.inform(\"interaction-with-tab\", wb);\n };\n this._subscriptions = new qa();\n this._subscriptions.addSubscriptions(i.subscribe(\"overflow-applied-to-body\", this.scrollToBottom.bind(this)), t.listen(this.scrollContainer, \"mousedown\", ec));\n if (va.firefox()) {\n var fc = (((\"WheelEvent\" in window)) ? \"wheel\" : \"DOMMouseScroll\");\n this.scrollContainer.addEventListener(fc, ec, false);\n }\n else this._subscriptions.addSubscriptions(t.listen(this.scrollContainer, \"mousewheel\", ec));\n ;\n this._subscriptions.addSubscriptions(t.listen(this.scrollContainer, \"scroll\", eb(this.scrolling, 50, this)));\n var gc = n.get(\"chat_tab_bubbles\");\n this.lastMessageIndicator = new y(this.threadID, bc, gc, this);\n if (gc) {\n this.typingIndicator = new ia(this.threadID, cc, this);\n };\n ca.getThreadMessagesRange(this.threadID, 0, ha.RECENT_MESSAGES_LIMIT, this._updateTimestamp.bind(this));\n this.rerender();\n };\n xa(ub, j);\n xa(ub.prototype, {\n scrolling: function() {\n if ((((!this._loadingMoreMessages && this.isScrolledNearTop()) && !this.isScrolledToBottom()) && !this._hasReachedClearedMessages)) {\n this.loadMoreMessages();\n };\n if (!this._newMessagesSheetOpened) {\n return\n };\n if (this.isScrolledToBottom()) {\n this.sheetController.closeNewMessagesSheet();\n this._newMessagesSheetOpened = false;\n }\n ;\n },\n destroy: function() {\n r.empty(this.conversationElem);\n this._subscriptions.release();\n db(tb, this);\n (this.lastMessageIndicator && this.lastMessageIndicator.destroy());\n this.destroyed = true;\n },\n _appendMessage: function(wb) {\n if ((wb == this.prevMessage)) {\n return\n };\n var xb = ha, yb = xb.GROUPING_THRESHOLD, zb = ((wb.action_type == w.LOG_MESSAGE) && (wb.log_message_type == z.SERVER_ERROR));\n if (wb.is_cleared) {\n this._hasReachedClearedMessages = true;\n return;\n }\n ;\n var ac;\n if ((this.prevMessage !== null)) {\n ac = (wb.timestamp - this.prevMessage.timestamp);\n }\n else ac = Infinity;\n ;\n if ((!zb && ((ac >= ib)))) {\n var bc = Math.round((wb.timestamp / 1000)), cc = wb.timestamp_datetime, dc = ra[\":fb:chat:conversation:date-break\"].build();\n ma.renderComponent(ta({\n time: bc,\n verbose: cc,\n text: cc\n }), dc.getNode(\"date\"));\n r.appendContent(this.conversationElem, dc.getRoot());\n this.messageGroup = null;\n }\n ;\n if ((wb.action_type == w.LOG_MESSAGE)) {\n r.appendContent(this.conversationElem, ob(wb));\n this.messageGroup = null;\n this.prevMessage = wb;\n return;\n }\n ;\n var ec = n.get(\"chat_tab_bubbles\");\n if ((((!this.messageGroup || (ec && (wb.author !== la.user))) || (this.prevMessage.author != wb.author)) || (this.prevMessage.timestamp < (wb.timestamp - yb)))) {\n this.messageGroup = nb(wb);\n r.appendContent(this.conversationElem, this.messageGroup.getRoot());\n }\n ;\n var fc = this._makeSingleMessage(wb);\n this.messageElements[wb.message_id] = fc;\n r.appendContent(this.messageGroup.getNode(\"messages\"), fc);\n pb(fc, this.scrollContainer);\n this.prevMessage = wb;\n },\n rerender: function() {\n if (!this._oldestMessageDisplayedTimestamp) {\n return\n };\n var wb = (this._finishedFetchingMoreMessages && this.scrollContainer.scrollHeight), xb = (this._finishedFetchingMoreMessages && this.scrollContainer.scrollTop), yb = this.isScrolledToBottom();\n r.empty(this.conversationElem);\n this.messageElements = {\n };\n this.messageGroup = null;\n this.prevMessage = null;\n var zb = ca.getThreadMessagesSinceTimestamp(this.threadID, this._oldestMessageDisplayedTimestamp);\n this._renderOlderMessages(zb, wb, xb, yb);\n this._finishedFetchingMoreMessages = false;\n },\n update: function(wb) {\n for (var xb in wb) {\n var yb = this.messageElements[xb];\n if (yb) {\n var zb = this.isScrolledToBottom(), ac = this._makeSingleMessage(ca.getMessagesFromIDs([xb,])[0]);\n this.messageElements[xb] = ac;\n r.replace(yb, ac);\n pb(ac, this.scrollContainer);\n if (zb) {\n this.scrollToBottom();\n };\n }\n ;\n };\n },\n _getLoadingHeight: function() {\n return (this.loadingHeight || this.loadingIcon.clientHeight);\n },\n _appendMessages: function(wb) {\n wb.forEach(this._appendMessage.bind(this));\n (this.lastMessageIndicator && this.lastMessageIndicator.setLastMessage(this.prevMessage));\n },\n _appendNewMessages: function(wb) {\n wb = u.filterMessages(function(zb) {\n this.sheetController.openUserJoinStatusSheet(zb);\n }.bind(this), wb, true);\n var xb = this.isScrolledToBottom(), yb = this._messagesOnlySentFromSelf(wb);\n this._appendMessages(wb);\n if (xb) {\n this.scrollToBottom();\n }\n else if (!yb) {\n this.sheetController.openNewMessagesSheet();\n this._newMessagesSheetOpened = true;\n }\n \n ;\n },\n _messagesOnlySentFromSelf: function(wb) {\n for (var xb = 0; (xb < wb.length); xb++) {\n if ((wb[xb].author !== la.user)) {\n return false\n };\n };\n return true;\n },\n _renderOlderMessages: function(wb, xb, yb, zb) {\n if (!wb) {\n return\n };\n wb = u.filterMessages(function(ac) {\n this.sheetController.openUserJoinStatusSheet(ac);\n }.bind(this), wb, false);\n this._appendMessages(wb);\n if (zb) {\n this.scrollToBottom();\n }\n else if (this._finishedFetchingMoreMessages) {\n this.scrollToPosition((((this.scrollContainer.scrollHeight - xb) - this.loadingHeight) + yb));\n }\n ;\n },\n _updateTimestamp: function(wb) {\n if ((wb && wb.length)) {\n this._oldestMessageDisplayedTimestamp = wb[0].timestamp;\n this._currentMessageCount = wb.length;\n }\n ;\n this._loadingMoreMessages = false;\n this._finishedFetchingMoreMessages = true;\n q.hide(this.loadingIcon);\n },\n isScrolledToBottom: function() {\n var wb = this.scrollContainer;\n return ((wb.scrollTop + wb.clientHeight) >= (wb.scrollHeight - lb));\n },\n isScrolledNearTop: function() {\n return (this.scrollContainer.scrollTop < this.scrollContainer.clientHeight);\n },\n scrollToBottom: function(wb) {\n this.scrollToPosition(this.scrollContainer.scrollHeight, wb);\n },\n scrollToPosition: function(wb, xb) {\n (this._scrollTopAnimation && this._scrollTopAnimation.stop());\n if ((xb === true)) {\n this._scrollTopAnimation = (new h(this.scrollContainer)).to(\"scrollTop\", wb).ease(h.ease.end).duration(400).go();\n }\n else this.scrollContainer.scrollTop = wb;\n ;\n },\n loadMoreMessages: function() {\n if ((ca.hasLoadedExactlyNMessages(this.threadID, this._currentMessageCount) && ca.hasLoadedAllMessages(this.threadID))) {\n return\n };\n if (ga.isNewEmptyLocalThread(this.threadID)) {\n return\n };\n q.show(this.loadingIcon);\n this.loadingHeight = this._getLoadingHeight();\n this._loadingMoreMessages = true;\n if ((this._fetchMultiplier < 10)) {\n this._fetchMultiplier += 1;\n };\n var wb = (ha.RECENT_MESSAGES_LIMIT * this._fetchMultiplier), xb = (this._currentMessageCount + wb), yb = ca.hasLoadedNMessages(this.threadID, xb);\n ca.getThreadMessagesRange(this.threadID, 0, xb, this._updateTimestamp.bind(this), null, x.CHAT);\n if (yb) {\n this.rerender();\n };\n },\n _makeSingleMessage: function(wb) {\n var xb = this._renderSingleMessage(wb);\n q.addClass(xb, \"-cx-PRIVATE-fbChatMessage__singlemessage\");\n return xb;\n },\n _renderSingleMessage: function(wb) {\n var xb = ra[\":fb:chat:conversation:message\"].render(), yb = n.get(\"chat_tab_bubbles\");\n if ((yb && la.isAuthor(wb.author))) {\n xb.setAttribute(\"title\", mb(wb.timestamp));\n };\n if (wb.subject) {\n var zb = ra[\":fb:chat:conversation:message:subject\"].render();\n r.setContent(zb, wb.subject);\n r.appendContent(xb, zb);\n }\n ;\n function ac(ic) {\n if (yb) {\n ic = r.create(\"span\", {\n \"data-measureme\": 1\n }, ic);\n };\n return ic;\n };\n if (wb.is_filtered_content) {\n var bc = oa[\":fb:mercury:filtered-message\"].build();\n r.appendContent(xb, ac(bc.getRoot()));\n return xb;\n }\n ;\n if ((wb.body.substr(0, 4) == \"?OTR\")) {\n r.setContent(xb, ac(\"[encrypted message]\"));\n q.addClass(xb, \"-cx-PRIVATE-fbChatMessage__cyphertext\");\n }\n else {\n q.addClass(xb, (cb(wb.body) ? \"direction_rtl\" : \"direction_ltr\"));\n var cc = ja.formatMessageBody(wb.body);\n r.appendContent(xb, ac(cc));\n }\n ;\n if (wb.has_attachment) {\n var dc = g.div(null), ec = this._appendMessageAttachments(dc, wb);\n if (((yb && !wb.body) && !ec)) {\n return dc\n };\n r.appendContent(xb, p(dc.childNodes));\n }\n ;\n if (wb.forward_count) {\n r.appendContent(xb, sb(wb));\n };\n if (wb.is_spoof_warning) {\n var fc = ra[\":fb:chat:conversation:message:undertext\"].build();\n r.appendContent(fc.getNode(\"message\"), xb);\n la.get(wb.author, function(ic) {\n fa.renderChatSpoofWarning(fc.getNode(\"status\"), wb.is_spoof_warning, ic);\n });\n return fc.getRoot();\n }\n ;\n var gc = ea.renderStatusIndicator(wb.status, wb.error_data, ba(ca.resendMessage, ca, wb));\n if (gc) {\n var hc = ra[\":fb:chat:conversation:message:status\"].build();\n r.appendContent(hc.getNode(\"message\"), xb);\n r.appendContent(hc.getNode(\"status\"), gc);\n return hc.getRoot();\n }\n ;\n return xb;\n },\n _appendMessageAttachments: function(wb, xb) {\n var yb = 0, zb = xb.attachments;\n zb.sort(l.booleanLexicographicComparator([l.isPhotoAttachment,l.isShareAttachment,l.isFileAttachment,l.isErrorAttachment,]));\n if ((xb.raw_attachments && (xb.raw_attachments.length > 0))) {\n zb = k.convertRaw(xb.raw_attachments);\n };\n if ((((xb.attachments.length === 0) && xb.preview_attachments) && (xb.preview_attachments.length > 0))) {\n ab(zb, xb.preview_attachments);\n };\n var ac = l.renderPhotoAttachments(zb.filter(l.isPhotoAttachment), xb, 176, 4);\n if (ac) {\n r.appendContent(wb, ac);\n };\n for (var bc = 0; (bc < zb.length); bc++) {\n if (l.isPhotoAttachment(zb[bc])) {\n yb = 1;\n continue;\n }\n ;\n var cc = l.renderAttachment(true, zb[bc], xb);\n (cc.error && r.appendContent(wb, cc.error));\n (cc.content && r.appendContent(wb, cc.content));\n yb |= cc.bubblePreferred;\n };\n var dc = r.scry(wb, \"img\");\n dc.forEach(function(ec) {\n this._subscriptions.addSubscriptions(t.listen(ec, \"load\", ba(this._thumbLoaded, this, ec)));\n }.bind(this));\n return !!yb;\n },\n _thumbLoaded: function(wb) {\n var xb = (this.scrollContainer.scrollTop + this.scrollContainer.clientHeight);\n if (((xb + wb.offsetHeight) >= this.scrollContainer.scrollHeight)) {\n this.scrollToBottom();\n };\n }\n });\n sa.subscribe(\"messages-reordered\", function(wb, xb) {\n tb.forEach(function(yb) {\n (xb[yb.threadID] && yb.rerender());\n });\n });\n sa.subscribe(\"messages-updated\", function(wb, xb) {\n tb.forEach(function(yb) {\n (xb[yb.threadID] && yb.update(xb[yb.threadID]));\n });\n });\n sa.subscribe(\"messages-received\", function(wb, xb) {\n tb.forEach(function(yb) {\n var zb = xb[yb.threadID];\n if ((zb && zb.length)) {\n yb._currentMessageCount += zb.length;\n };\n (zb && yb._appendNewMessages(zb));\n });\n });\n i.subscribe(m.getArbiterType(\"chat_event\"), function(wb, xb) {\n if (vb(xb.obj)) {\n var yb = (((s.user == xb.obj.from)) ? xb.obj.to : xb.obj.from), zb = ga.getThreadIdForUser(yb), ac = tb.filter(function(dc) {\n return (dc.threadID === zb);\n });\n if ((ac.length > 0)) {\n var bc = ac[0], cc = ca.constructLogMessageObject(aa.CHAT_WEB, zb, z.VIDEO_CALL, xb.obj);\n cc.author = (\"fbid:\" + xb.obj.from);\n bc._appendNewMessages([cc,]);\n }\n ;\n }\n ;\n });\n function vb(wb) {\n return (((wb.event_name === \"installing\") || (wb.event_name === \"install_canceled\")));\n };\n e.exports = ub;\n});\n__d(\"MercuryPeopleSuggestions\", [\"KeyedCallbackManager\",\"MercuryServerDispatcher\",\"OrderedFriendsList\",\"ShortProfiles\",\"arrayContains\",], function(a, b, c, d, e, f) {\n var g = b(\"KeyedCallbackManager\"), h = b(\"MercuryServerDispatcher\"), i = b(\"OrderedFriendsList\"), j = b(\"ShortProfiles\"), k = b(\"arrayContains\"), l = new g(), m = 6;\n function n(s) {\n return s.sort().join(\",\");\n };\n function o(s, t) {\n if ((s.length < m)) {\n var u = i.getList();\n for (var v = 0; (v < u.length); v++) {\n if (!((k(s, u[v]) || k(t, u[v])))) {\n s.push(u[v]);\n if ((s.length >= m)) {\n break;\n };\n }\n ;\n };\n }\n ;\n return s;\n };\n function p(s) {\n h.trySend(\"/ajax/chat/people_suggest.php\", s);\n };\n function q(s, t, u) {\n s = s.filter(function(w) {\n return !k(t, w);\n });\n var v = o(s, t);\n j.getMulti(v, function() {\n u(v);\n });\n };\n var r = {\n getPeopleSuggestions: function(s, t) {\n if (s) {\n if (s.length) {\n var u = n(s), v = l.executeOrEnqueue(u, function(x) {\n q(x, s, t);\n }), w = l.getUnavailableResources(v);\n if (w.length) {\n p({\n query: u,\n size: m\n });\n };\n return v;\n }\n else q([], [], t);\n \n };\n return 0;\n },\n handleUpdate: function(s) {\n if (s.query) {\n var t = (s.suggestions || \"\"), u = (t.length ? t.split(\",\") : []);\n l.setResource(s.query, u);\n }\n ;\n }\n };\n h.registerEndpoints({\n \"/ajax/chat/people_suggest.php\": {\n mode: h.IMMEDIATE,\n handler: r.handleUpdate\n }\n });\n e.exports = r;\n});\n__d(\"ChatTabPeopleSuggestionView\", [\"ChatPeopleSuggestionList.react\",\"ChatQuietLinks\",\"CSS\",\"DOM\",\"Event\",\"MercuryPeopleSuggestions\",\"MercuryIDs\",\"React\",\"ShortProfiles\",\"Style\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ChatPeopleSuggestionList.react\"), h = b(\"ChatQuietLinks\"), i = b(\"CSS\"), j = b(\"DOM\"), k = b(\"Event\"), l = b(\"MercuryPeopleSuggestions\"), m = b(\"MercuryIDs\"), n = b(\"React\"), o = b(\"ShortProfiles\"), p = b(\"Style\"), q = b(\"copyProperties\");\n function r(s, t, u) {\n this.sheetController = s;\n this.viewNode = t;\n this.loadingIcon = u;\n this.addFriendsSheet = s.getAddFriendsTabSheet();\n this.mercuryTypeahead = (this.addFriendsSheet && this.addFriendsSheet._typeahead);\n this.typeaheadInput = (this.mercuryTypeahead && this.mercuryTypeahead._input);\n this.typeaheadView = (this.mercuryTypeahead && this.mercuryTypeahead.getTypeahead().getView());\n var v = this.showSuggestions.bind(this);\n if (this.typeaheadInput) {\n k.listen(this.typeaheadInput, \"focus\", v);\n };\n if (this.typeaheadView) {\n this.typeaheadView.subscribe(\"reset\", v);\n this.typeaheadView.subscribe(\"render\", this.clearSuggestions.bind(this));\n }\n ;\n this.tokenizer = (this.mercuryTypeahead && this.mercuryTypeahead.getTokenizer());\n if (this.tokenizer) {\n this.tokenizer.subscribe(\"removeToken\", v);\n };\n this.showSuggestions();\n };\n q(r.prototype, {\n addSelectedParticipant: function(s) {\n var t = o.getNow(s);\n if ((t && this.tokenizer)) {\n this.tokenizer.addToken(this.tokenizer.createToken({\n uid: s,\n text: t.name\n }));\n this.showSuggestions();\n }\n ;\n },\n showSuggestions: function() {\n if (this.mercuryTypeahead) {\n var s = this.mercuryTypeahead.getSelectedParticipantIDs();\n s = s.map(m.getUserIDFromParticipantID);\n j.empty(this.viewNode);\n i.show(this.loadingIcon);\n l.getPeopleSuggestions(s, function(t) {\n var u = g({\n uids: t,\n onClick: this.addSelectedParticipant.bind(this)\n });\n i.hide(this.loadingIcon);\n n.renderComponent(u, this.viewNode);\n h.removeAllHrefs(this.viewNode);\n }.bind(this));\n }\n ;\n },\n clearSuggestions: function() {\n j.empty(this.viewNode);\n i.hide(this.loadingIcon);\n p.set(this.viewNode, \"margin-top\", 0);\n },\n destroy: function() {\n this.clearSuggestions();\n }\n });\n e.exports = r;\n});\n__d(\"ChatAddFriendsTabSheetRawRenderer\", [\"ContextualTypeaheadView\",\"DOM\",\"Event\",\"MercuryTypeahead\",\"ChatTabTemplates\",\"tx\",\"MercuryDataSourceWrapper\",], function(a, b, c, d, e, f) {\n var g = b(\"ContextualTypeaheadView\"), h = b(\"DOM\"), i = b(\"Event\"), j = b(\"MercuryTypeahead\"), k = b(\"ChatTabTemplates\"), l = b(\"tx\"), m = b(\"MercuryDataSourceWrapper\").source, n = {\n render: function(o, p, q, r, s, t) {\n var u = (t ? k[\":fb:mercury:chat:tab-sheet:add-friends-empty-tab\"].build() : k[\":fb:mercury:chat:tab-sheet:add-friends\"].build()), v = new j(m, g);\n v.setExcludedParticipants(r.participants);\n if (!t) {\n v.setPlaceholder(\"Add friends to this chat\");\n };\n v.build();\n h.replace(u.getNode(\"participantsTypeahead\"), v.getElement());\n h.setContent(q, u.getRoot());\n v.getTokenizer().adjustWidth();\n v.focus();\n if (!t) {\n var w = function() {\n var x = v.getSelectedParticipantIDs();\n if (x.length) {\n s(x);\n };\n p.close(o);\n };\n i.listen(u.getNode(\"doneButton\"), \"click\", w);\n }\n ;\n return v;\n }\n };\n e.exports = n;\n});\n__d(\"MultiChatController\", [\"Arbiter\",\"AsyncSignal\",\"copyProperties\",\"Form\",\"MercuryMessages\",\"MercuryServerRequests\",\"MercuryThreads\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncSignal\"), i = b(\"copyProperties\"), j = b(\"Form\"), k = b(\"MercuryMessages\").get(), l = b(\"MercuryServerRequests\").get(), m = b(\"MercuryThreads\").get();\n function n() {\n \n };\n i(n, {\n subscribe: function(o, p) {\n o.subscribe(\"confirm\", function() {\n this.createGroupThreadFromChooserDialog(o, p);\n }.bind(this));\n },\n createGroupThreadFromChooserDialog: function(o, p) {\n var q = j.serialize(o.getRoot()), r = JSON.parse(q.profileChooserItems), s = [];\n for (var t in r) {\n if (r[t]) {\n s.push(t);\n };\n };\n var u = n.createThreadForFBIDs(s);\n l.subscribe(\"update-thread-ids\", function(v, w) {\n for (var x in w) {\n if ((w[x] == u)) {\n new h(\"/ajax/groups/chat/log\", {\n group_id: p,\n message_id: x\n }).send();\n };\n };\n });\n o.hide();\n },\n createThreadForTokens: function(o) {\n if (!o.length) {\n return\n };\n var p;\n if ((o.length == 1)) {\n p = (\"user:\" + o[0].split(\":\")[1]);\n }\n else p = (\"root:\" + k.generateNewClientMessageID(Date.now()));\n ;\n m.createNewLocalThread(p, o);\n g.inform(\"chat/open-tab\", {\n thread_id: p\n });\n return p;\n },\n createThreadForFBIDs: function(o) {\n var p = [];\n for (var q = 0; (q < o.length); q++) {\n p.push((\"fbid:\" + o[q]));;\n };\n return n.createThreadForTokens(p);\n }\n });\n e.exports = n;\n});\n__d(\"ChatAddFriendsTabSheet\", [\"Arbiter\",\"ChatAddFriendsTabSheetRawRenderer\",\"MercuryLogMessageType\",\"MercurySourceType\",\"MercuryMessages\",\"MultiChatController\",\"Style\",\"MercuryThreads\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ChatAddFriendsTabSheetRawRenderer\"), i = b(\"MercuryLogMessageType\"), j = b(\"MercurySourceType\"), k = b(\"MercuryMessages\").get(), l = b(\"MultiChatController\"), m = b(\"Style\"), n = b(\"MercuryThreads\").get(), o = b(\"copyProperties\");\n function p(s, t, u) {\n this._threadID = s;\n this._rootElement = t;\n this._sheetView = u;\n this._typeahead = null;\n };\n o(p.prototype, {\n render: function() {\n n.getThreadMeta(this._threadID, function(s) {\n var t = (s.is_canonical_user ? q : r);\n this._typeahead = h.render(this, this._sheetView, this._rootElement, s, t.curry(s), n.isNewEmptyLocalThread(this._threadID));\n this._typeahead.subscribe(\"resize\", function() {\n this._sheetView.resize();\n }.bind(this));\n }.bind(this));\n },\n getParticipants: function() {\n if (!this._typeahead) {\n return null\n };\n return this._typeahead.getSelectedParticipantIDs();\n },\n isPermanent: function() {\n return true;\n },\n getType: function() {\n return \"add_friends_type\";\n },\n open: function() {\n this._sheetView.open(this);\n },\n close: function() {\n this._sheetView.close(this);\n },\n getHeight: function() {\n return m.get(this._rootElement, \"height\");\n }\n });\n function q(s, t) {\n var u = s.participants;\n l.createThreadForTokens(u.concat(t));\n };\n function r(s, t) {\n var u = s.thread_id;\n if (n.isEmptyLocalThread(u)) {\n n.addParticipantsToThreadLocally(u, t);\n g.inform(\"chat/open-tab\", {\n thread_id: u\n });\n }\n else {\n k.sendMessage(k.constructLogMessageObject(j.CHAT_WEB, u, i.SUBSCRIBE, {\n added_participants: t\n }));\n g.inform(\"chat/open-tab\", {\n thread_id: u\n });\n }\n ;\n };\n e.exports = p;\n});\n__d(\"ChatNameConversationTabSheetRawRenderer\", [\"DOM\",\"Event\",\"Input\",\"Keys\",\"ChatTabTemplates\",\"fbt\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"Event\"), i = b(\"Input\"), j = b(\"Keys\"), k = b(\"ChatTabTemplates\"), l = b(\"fbt\"), m = {\n render: function(n, o, p, q, r, s) {\n var t = k[\":fb:mercury:chat:tab-sheet:name-conversation\"].build(), u = t.getNode(\"nameInput\"), v = t.getNode(\"doneButton\"), w = \"Done\", x = \"Hide\", y = q.name;\n if (y) {\n i.setValue(u, y);\n }\n else g.setContent(v, x);\n ;\n var z = function() {\n var aa = i.getValue(u);\n if (aa) {\n r(aa);\n };\n s();\n o.close(n);\n };\n h.listen(u, \"input\", function() {\n g.setContent(v, ((i.getValue(u).length === 0) ? x : w));\n });\n h.listen(v, \"click\", z);\n h.listen(u, \"keyup\", function(aa) {\n if ((aa.keyCode === j.RETURN)) {\n z();\n return false;\n }\n ;\n });\n g.setContent(p, t.getRoot());\n (!n.isAutomatic() && u.focus());\n }\n };\n e.exports = m;\n});\n__d(\"ChatNameConversationTabSheet\", [\"AsyncRequest\",\"ChatNameConversationTabSheetRawRenderer\",\"MercuryAPIArgsSource\",\"MercuryLogMessageType\",\"MercurySourceType\",\"MercuryMessages\",\"MercuryServerRequests\",\"MercuryThreads\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"ChatNameConversationTabSheetRawRenderer\"), i = b(\"MercuryAPIArgsSource\"), j = b(\"MercuryLogMessageType\"), k = b(\"MercurySourceType\"), l = b(\"MercuryMessages\").get(), m = b(\"MercuryServerRequests\").get(), n = b(\"MercuryThreads\").get(), o = \"/ajax/chat/multichat/name_conversation/dismiss.php\";\n function p(q, r, s) {\n this.$ChatNameConversationTabSheet0 = q;\n this.$ChatNameConversationTabSheet1 = r;\n this.$ChatNameConversationTabSheet2 = s;\n this.$ChatNameConversationTabSheet3 = false;\n this.$ChatNameConversationTabSheet4 = false;\n };\n p.prototype.render = function() {\n n.getThreadMeta(this.$ChatNameConversationTabSheet0, function(q) {\n h.render(this, this.$ChatNameConversationTabSheet2, this.$ChatNameConversationTabSheet1, q, this.$ChatNameConversationTabSheet5.curry(q), this.$ChatNameConversationTabSheet6.bind(this, q));\n this.$ChatNameConversationTabSheet2.resize();\n }.bind(this));\n };\n p.prototype.isPermanent = function() {\n return true;\n };\n p.prototype.getType = function() {\n return \"name_conversation_type\";\n };\n p.prototype.open = function(q) {\n this.$ChatNameConversationTabSheet3 = q;\n if (!((this.$ChatNameConversationTabSheet3 && this.$ChatNameConversationTabSheet4))) {\n this.$ChatNameConversationTabSheet2.open(this);\n };\n };\n p.prototype.close = function() {\n this.$ChatNameConversationTabSheet2.close(this);\n };\n p.prototype.isAutomatic = function() {\n return this.$ChatNameConversationTabSheet3;\n };\n p.prototype.$ChatNameConversationTabSheet6 = function(q) {\n if ((!q.name_conversation_sheet_dismissed || !this.$ChatNameConversationTabSheet4)) {\n this.$ChatNameConversationTabSheet4 = true;\n m.getServerThreadID(q.thread_id, function(r) {\n new g(o).setData({\n thread_id: r\n }).send();\n });\n }\n ;\n };\n p.prototype.$ChatNameConversationTabSheet5 = function(q, r) {\n var s = q.name;\n if ((((r || s)) && ((r != s)))) {\n l.sendMessage(l.constructLogMessageObject(k.CHAT_WEB, q.thread_id, j.THREAD_NAME, {\n name: r\n }), null, i.CHAT);\n };\n };\n e.exports = p;\n});\n__d(\"ChatNewMessagesTabSheet\", [\"Event\",\"ArbiterMixin\",\"DOM\",\"ChatTabTemplates\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"ArbiterMixin\"), i = b(\"DOM\"), j = b(\"ChatTabTemplates\"), k = b(\"copyProperties\");\n function l(m, n, o) {\n this._threadID = m;\n this._rootElement = n;\n this._sheetView = o;\n };\n k(l.prototype, h, {\n render: function() {\n var m = j[\":fb:mercury:chat:tab-sheet:clickable-message-icon-sheet\"].build();\n i.setContent(m.getNode(\"text\"), i.tx._(\"Scroll down to see new messages.\"));\n i.setContent(this._rootElement, m.getRoot());\n g.listen(m.getRoot(), \"click\", function() {\n this.inform(\"clicked\", this._threadID);\n }.bind(this));\n },\n isPermanent: function() {\n return true;\n },\n getType: function() {\n return \"new_messages_type\";\n },\n open: function() {\n this._sheetView.open(this);\n },\n close: function() {\n this._sheetView.close(this);\n }\n });\n e.exports = l;\n});\n__d(\"ChatNoRecipientsTabSheet\", [\"DOM\",\"fbt\",\"MercuryParticipants\",\"ChatTabTemplates\",\"MercuryThreadInformer\",\"MercuryThreads\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"fbt\"), i = b(\"MercuryParticipants\"), j = b(\"ChatTabTemplates\"), k = b(\"MercuryThreadInformer\").get(), l = b(\"MercuryThreads\").get(), m = b(\"copyProperties\");\n function n(o, p, q) {\n this._threadID = o;\n this._rootElement = p;\n this._sheetView = q;\n k.subscribe(\"threads-updated\", this._handleThreadsUpdated.bind(this));\n };\n m(n.prototype, {\n render: function() {\n var o = j[\":fb:mercury:chat:tab-sheet:message-icon-sheet\"].build();\n g.setContent(o.getNode(\"text\"), \"Everyone has left the conversation.\");\n g.setContent(this._rootElement, o.getRoot());\n },\n isPermanent: function() {\n return true;\n },\n getType: function() {\n return \"no_recipients_type\";\n },\n _handleThreadsUpdated: function() {\n l.getThreadMeta(this._threadID, function(o) {\n var p = i.user, q = o.participants.filter(function(r) {\n return (r != p);\n });\n if ((((q.length < 1) && !o.is_joinable) && !l.isNewEmptyLocalThread(this._threadID))) {\n this._sheetView.open(this);\n }\n else this._sheetView.close(this);\n ;\n }.bind(this));\n }\n });\n e.exports = n;\n});\n__d(\"ChatOfflineTabSheet\", [\"ChatPrivacyActionController\",\"ChatVisibility\",\"CSS\",\"DOM\",\"Event\",\"JSLogger\",\"MercuryParticipants\",\"MercuryThreads\",\"ChatTabTemplates\",\"copyProperties\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"ChatPrivacyActionController\"), h = b(\"ChatVisibility\"), i = b(\"CSS\"), j = b(\"DOM\"), k = b(\"Event\"), l = b(\"JSLogger\"), m = b(\"MercuryParticipants\"), n = b(\"MercuryThreads\").get(), o = b(\"ChatTabTemplates\"), p = b(\"copyProperties\"), q = b(\"cx\");\n function r(s, t, u) {\n this._rootElement = t;\n this._sheetView = u;\n this._logger = l.create(\"blackbird\");\n this._canonicalUser = n.getCanonicalUserInThread(s);\n if (this._canonicalUser) {\n this._privacyActionController = new g(this._canonicalUser, this._handlePrivacyChange.bind(this));\n };\n };\n p(r.prototype, {\n render: function() {\n if (!this._canonicalUser) {\n this._logger.error(\"offline_sheet_open_with_non_friend\");\n return;\n }\n ;\n var s = o[\":fb:mercury:chat:tab-sheet:message-icon-sheet\"].build(), t = (\"fbid:\" + this._canonicalUser);\n m.get(t, function(u) {\n var v = \"fbChatGoOnlineLink\", w = j.tx._(\"turn on chat\"), x = j.create(\"a\", {\n href: \"#\",\n className: v\n }, w), y = j.tx._(\"To chat with {name} and other friends, {link}.\", {\n name: u.short_name,\n link: x\n });\n j.setContent(s.getNode(\"text\"), y);\n i.addClass(s.getRoot(), \"-cx-PRIVATE-chatTabSheet__chatoffline\");\n j.setContent(this._rootElement, s.getRoot());\n k.listen(this._rootElement, \"click\", function(event) {\n if (i.hasClass(event.getTarget(), v)) {\n if (h.isOnline()) {\n this._logger.error(\"tab_sheet_already_online\");\n };\n this._privacyActionController.togglePrivacy();\n this._logger.log(\"tab_sheet_go_online\", {\n tab_id: this._canonicalUser\n });\n return false;\n }\n ;\n }.bind(this));\n this._sheetView.resize();\n }.bind(this));\n },\n _handlePrivacyChange: function(s) {\n if (!this._canonicalUser) {\n this._logger.error(\"user_blocked_sheet_privacy_changed_non_friend\");\n };\n switch (s) {\n case g.OFFLINE:\n this._sheetView.open(this);\n break;\n case g.NORMAL:\n \n case g.BLOCKED:\n this._sheetView.close(this);\n break;\n };\n },\n isPermanent: function() {\n return true;\n },\n getType: function() {\n return \"offline_type\";\n },\n destroy: function() {\n (this._privacyActionController && this._privacyActionController.destroy());\n }\n });\n e.exports = r;\n});\n__d(\"ChatUploadWarningTabSheet\", [\"DOM\",\"ChatTabTemplates\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"ChatTabTemplates\"), i = b(\"copyProperties\");\n function j(k, l, m) {\n this._threadID = k;\n this._rootElement = l;\n this._sheetView = m;\n };\n i(j.prototype, {\n render: function() {\n var k = h[\":fb:mercury:chat:tab-sheet:message-icon-sheet\"].build();\n g.setContent(k.getNode(\"text\"), g.tx._(\"Please wait until the upload is complete before you send your message.\"));\n g.setContent(this._rootElement, k.getRoot());\n },\n isPermanent: function() {\n return false;\n },\n getType: function() {\n return \"upload_warning_type\";\n },\n open: function() {\n this._sheetView.open(this);\n },\n close: function() {\n this._sheetView.close(this);\n }\n });\n e.exports = j;\n});\n__d(\"ChatThreadIsMutedTabSheet\", [\"Event\",\"ArbiterMixin\",\"DOM\",\"ChatTabTemplates\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"ArbiterMixin\"), i = b(\"DOM\"), j = b(\"ChatTabTemplates\"), k = b(\"copyProperties\");\n function l(m, n, o) {\n this._threadID = m;\n this._rootElement = n;\n this._sheetView = o;\n };\n k(l.prototype, h, {\n render: function() {\n var m = j[\":fb:mercury:chat:tab-sheet:message-mute-sheet\"].build();\n i.setContent(m.getNode(\"text\"), i.tx._(\"This conversation is muted. Chat tabs will not pop up for it and push notifications are off.\"));\n i.setContent(this._rootElement, m.getRoot());\n g.listen(m.getNode(\"unmuteButton\"), \"click\", function() {\n this.inform(\"clicked\", this._threadID);\n }.bind(this));\n },\n isPermanent: function() {\n return false;\n },\n getType: function() {\n return \"chat-thread-is-muted\";\n },\n open: function() {\n this._sheetView.open(this);\n },\n close: function() {\n this._sheetView.close(this);\n }\n });\n e.exports = l;\n});\n__d(\"ChatUserBlockedTabSheet\", [\"ChatPrivacyActionController\",\"CSS\",\"DOM\",\"Event\",\"GenderConst\",\"JSLogger\",\"MercuryParticipants\",\"MercuryThreads\",\"ChatTabTemplates\",\"copyProperties\",\"cx\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"ChatPrivacyActionController\"), h = b(\"CSS\"), i = b(\"DOM\"), j = b(\"Event\"), k = b(\"GenderConst\"), l = b(\"JSLogger\"), m = b(\"MercuryParticipants\"), n = b(\"MercuryThreads\").get(), o = b(\"ChatTabTemplates\"), p = b(\"copyProperties\"), q = b(\"cx\"), r = b(\"tx\");\n function s(t, u, v) {\n this._rootElement = u;\n this._sheetView = v;\n this._logger = l.create(\"blackbird\");\n this._canonicalUser = n.getCanonicalUserInThread(t);\n if (this._canonicalUser) {\n this._privacyActionController = new g(this._canonicalUser, this._handlePrivacyChange.bind(this));\n };\n };\n p(s.prototype, {\n render: function() {\n if (!this._canonicalUser) {\n this._logger.error(\"user_blocked_sheet_open_with_non_friend\");\n return;\n }\n ;\n var t = o[\":fb:mercury:chat:tab-sheet:user-blocked\"].build(), u = (\"fbid:\" + this._canonicalUser);\n m.get(u, function(v) {\n var w = null;\n switch (v.gender) {\n case k.FEMALE_SINGULAR:\n \n case k.FEMALE_SINGULAR_GUESS:\n w = r._(\"You turned off chat for {name} but you can still send her a message. \", {\n name: v.short_name\n });\n break;\n case k.MALE_SINGULAR:\n \n case k.MALE_SINGULAR_GUESS:\n w = r._(\"You turned off chat for {name} but you can still send him a message. \", {\n name: v.short_name\n });\n break;\n default:\n w = r._(\"You turned off chat for {name} but you can still send them a message. \", {\n name: v.short_name\n });\n };\n i.setContent(t.getNode(\"text\"), w);\n var x = r._(\"Turn on chat for {name}?\", {\n name: v.short_name\n });\n i.setContent(t.getNode(\"actionLink\"), x);\n h.addClass(t.getRoot(), \"-cx-PRIVATE-chatTabSheet__blocked\");\n i.setContent(this._rootElement, t.getRoot());\n j.listen(t.getNode(\"actionLink\"), \"click\", this._privacyActionController.togglePrivacy.bind(this._privacyActionController));\n this._sheetView.resize();\n }.bind(this));\n },\n _handlePrivacyChange: function(t) {\n if (!this._canonicalUser) {\n this._logger.error(\"user_blocked_sheet_privacy_changed_non_friend\");\n };\n switch (t) {\n case g.BLOCKED:\n this._sheetView.open(this);\n break;\n case g.NORMAL:\n \n case g.OFFLINE:\n this._sheetView.close(this);\n break;\n };\n },\n isPermanent: function() {\n return true;\n },\n getType: function() {\n return \"user_blocked_type\";\n },\n destroy: function() {\n (this._privacyActionController && this._privacyActionController.destroy());\n }\n });\n e.exports = s;\n});\n__d(\"ChatUserJoinStatusTabSheet\", [\"Class\",\"JoinStatusTabSheet\",\"ChatTabTemplates\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"JoinStatusTabSheet\"), i = b(\"ChatTabTemplates\"), j = b(\"copyProperties\");\n function k(l, m) {\n this.parent.construct(this, l, m);\n };\n g.extend(k, h);\n j(k.prototype, {\n _getTemplate: function() {\n return i[\":fb:mercury:chat:tab-sheet:message-icon-sheet\"];\n }\n });\n e.exports = k;\n});\n__d(\"ChatTabSheetController\", [\"ChatAddFriendsTabSheet\",\"ChatNameConversationTabSheet\",\"ChatNewMessagesTabSheet\",\"ChatNoRecipientsTabSheet\",\"ChatOfflineTabSheet\",\"ChatUploadWarningTabSheet\",\"ChatThreadIsMutedTabSheet\",\"ChatUserBlockedTabSheet\",\"ChatUserJoinStatusTabSheet\",\"copyProperties\",\"MercurySheetView\",\"MercuryThreads\",], function(a, b, c, d, e, f) {\n var g = b(\"ChatAddFriendsTabSheet\"), h = b(\"ChatNameConversationTabSheet\"), i = b(\"ChatNewMessagesTabSheet\"), j = b(\"ChatNoRecipientsTabSheet\"), k = b(\"ChatOfflineTabSheet\"), l = b(\"ChatUploadWarningTabSheet\"), m = b(\"ChatThreadIsMutedTabSheet\"), n = b(\"ChatUserBlockedTabSheet\"), o = b(\"ChatUserJoinStatusTabSheet\"), p = b(\"copyProperties\"), q = b(\"MercurySheetView\"), r = b(\"MercuryThreads\").get(), s = function(t, u, v) {\n this._sheetView = new q(t, u, v);\n this._addFriendsTabSheet = new g(t, u, this._sheetView);\n this._nameConversationTabSheet = new h(t, u, this._sheetView);\n this._userBlockedTabSheet = new n(t, u, this._sheetView);\n this._offlineTabSheet = new k(t, u, this._sheetView);\n this._newMessagesTabSheet = new i(t, u, this._sheetView);\n this._uploadWarningTabSheet = new l(t, u, this._sheetView);\n this._threadIsMutedTabSheet = new m(t, u, this._sheetView);\n this._userJoinStatusTabSheet = new o(u, this._sheetView);\n if (!r.getCanonicalUserInThread(t)) {\n this._noRecipientsTabSheet = new j(t, u, this._sheetView);\n };\n };\n p(s.prototype, {\n openAddFriendsSheet: function() {\n this._addFriendsTabSheet.open();\n },\n openUserJoinStatusSheet: function(t) {\n this._userJoinStatusTabSheet.addToQueue(t);\n },\n getAddFriendsTabSheet: function() {\n return this._addFriendsTabSheet;\n },\n getAddFriendsParticipants: function() {\n var t = this._addFriendsTabSheet.getParticipants();\n this._addFriendsTabSheet.close();\n return t;\n },\n openNameConversationSheet: function(t) {\n this._nameConversationTabSheet.open(t);\n },\n openNewMessagesSheet: function() {\n this._newMessagesTabSheet.open();\n },\n openUploadWarningTabSheet: function() {\n this._uploadWarningTabSheet.open();\n },\n openThreadIsMutedTabSheet: function() {\n this._threadIsMutedTabSheet.open();\n },\n closeAutomaticNameConversationSheet: function() {\n if (this._nameConversationTabSheet.isAutomatic()) {\n this._nameConversationTabSheet.close();\n };\n },\n closeThreadIsMutedTabSheet: function() {\n this._threadIsMutedTabSheet.close();\n },\n closeNewMessagesSheet: function() {\n this._newMessagesTabSheet.close();\n },\n closeUploadWarningTabSheet: function() {\n this._uploadWarningTabSheet.close();\n },\n onClickNewMessagesSheet: function(t) {\n this._newMessageClickSub = this._newMessagesTabSheet.subscribe(\"clicked\", t);\n },\n onClickThreadIsMutedSheet: function(t) {\n this._threadIsMutedClickSub = this._threadIsMutedTabSheet.subscribe(\"clicked\", t);\n },\n onResize: function(t) {\n this._sheetView.subscribe(\"resize\", t);\n },\n destroy: function() {\n this._sheetView.destroy();\n this._offlineTabSheet.destroy();\n this._userBlockedTabSheet.destroy();\n (this._newMessageClickSub && this._newMessageClickSub.unsubscribe());\n (this._threadIsMutedClickSub && this._threadIsMutedClickSub.unsubscribe());\n }\n });\n e.exports = s;\n});\n__d(\"ChatTabView\", [\"Event\",\"function-extensions\",\"Arbiter\",\"ArbiterMixin\",\"AsyncDialog\",\"AsyncRequest\",\"AsyncSignal\",\"AvailableListConstants\",\"ChatBehavior\",\"ChatConfig\",\"ChatContextualDialogController\",\"ChatAutoSendPhotoUploader\",\"ChatPrivacyActionController\",\"ChatQuietLinks\",\"ChatTabMessagesView\",\"ChatTabPeopleSuggestionView\",\"ChatTabSheetController\",\"ChatVisibility\",\"MercuryConstants\",\"CSS\",\"Dialog\",\"Dock\",\"DOM\",\"Input\",\"JSLogger\",\"Keys\",\"Locale\",\"MercuryActionStatus\",\"MercuryConfig\",\"MercuryFileUploader\",\"MercuryLogMessageType\",\"MercuryMessages\",\"MercuryMessageClientState\",\"MercuryParticipants\",\"MercuryServerRequests\",\"MercurySourceType\",\"MercuryStickers\",\"MercuryThreadInformer\",\"MercuryThreadMetadataRawRenderer\",\"MercuryThreadMetadataRenderer\",\"MercuryThreadMuter\",\"MercuryThreads\",\"MercuryTypingReceiver\",\"MessagesEmoticonView\",\"NubController\",\"Parent\",\"PhotosUploadWaterfall\",\"PresencePrivacy\",\"PresenceStatus\",\"Run\",\"Style\",\"SubscriptionsHandler\",\"ChatTabTemplates\",\"TextAreaControl\",\"Tooltip\",\"TypingDetectorController\",\"URI\",\"UserAgent\",\"VideoCallCore\",\"WaterfallIDGenerator\",\"copyProperties\",\"cx\",\"setIntervalAcrossTransitions\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\");\n b(\"function-extensions\");\n var h = b(\"Arbiter\"), i = b(\"ArbiterMixin\"), j = b(\"AsyncDialog\"), k = b(\"AsyncRequest\"), l = b(\"AsyncSignal\"), m = b(\"AvailableListConstants\"), n = b(\"ChatBehavior\"), o = b(\"ChatConfig\"), p = b(\"ChatContextualDialogController\"), q = b(\"ChatAutoSendPhotoUploader\"), r = b(\"ChatPrivacyActionController\"), s = b(\"ChatQuietLinks\"), t = b(\"ChatTabMessagesView\"), u = b(\"ChatTabPeopleSuggestionView\"), v = b(\"ChatTabSheetController\"), w = b(\"ChatVisibility\"), x = b(\"MercuryConstants\"), y = b(\"CSS\"), z = b(\"Dialog\"), aa = b(\"Dock\"), ba = b(\"DOM\"), ca = b(\"Input\"), da = b(\"JSLogger\"), ea = b(\"Keys\"), fa = b(\"Locale\"), ga = b(\"MercuryActionStatus\"), ha = b(\"MercuryConfig\"), ia = b(\"MercuryFileUploader\"), ja = b(\"MercuryLogMessageType\"), ka = b(\"MercuryMessages\").get(), la = b(\"MercuryMessageClientState\"), ma = b(\"MercuryParticipants\"), na = b(\"MercuryServerRequests\").get(), oa = b(\"MercurySourceType\"), pa = b(\"MercuryStickers\"), qa = b(\"MercuryThreadInformer\").get(), ra = b(\"MercuryThreadMetadataRawRenderer\"), sa = b(\"MercuryThreadMetadataRenderer\").get(), ta = b(\"MercuryThreadMuter\"), ua = b(\"MercuryThreads\").get(), va = b(\"MercuryTypingReceiver\"), wa = b(\"MessagesEmoticonView\"), xa = b(\"NubController\"), ya = b(\"Parent\"), za = b(\"PhotosUploadWaterfall\"), ab = b(\"PresencePrivacy\"), bb = b(\"PresenceStatus\"), cb = b(\"Run\"), db = b(\"Style\"), eb = b(\"SubscriptionsHandler\"), fb = b(\"ChatTabTemplates\"), gb = b(\"TextAreaControl\"), hb = b(\"Tooltip\"), ib = b(\"TypingDetectorController\"), jb = b(\"URI\"), kb = b(\"UserAgent\"), lb = b(\"VideoCallCore\"), mb = b(\"WaterfallIDGenerator\"), nb = b(\"copyProperties\"), ob = b(\"cx\"), pb = b(\"setIntervalAcrossTransitions\"), qb = b(\"tx\"), rb = 227878347358915, sb = /^\\s*$/, tb = da.create(\"tab_view\"), ub = {\n }, vb = null, wb, xb;\n function yb(tc, uc) {\n var vc = ba.create(\"div\");\n uc = uc.filter(function(wc) {\n return (wc != ma.user);\n });\n if (!uc.length) {\n return hb.remove(tc)\n };\n ma.getMulti(uc, function(wc) {\n for (var xc in wc) {\n var yc = wc[xc], zc = fb[\":fb:mercury:chat:multichat-tooltip-item\"].build();\n ba.setContent(zc.getNode(\"name\"), yc.name);\n var ad = ma.getUserID(xc), bd = (ad && (bb.get(ad) == m.ACTIVE));\n y.conditionShow(zc.getNode(\"icon\"), bd);\n y.conditionClass(zc.getNode(\"name\"), \"tooltipItemWithIcon\", bd);\n ba.appendContent(vc, zc.getRoot());\n };\n hb.set(tc, vc, \"above\");\n });\n };\n var zb = {\n }, ac = null, bc = false;\n function cc(tc, uc, vc) {\n if (vc) {\n zb[tc] = uc;\n if (!ac) {\n ac = pb(dc, 600);\n };\n }\n else {\n y.removeClass(uc, \"highlightTitle\");\n delete zb[tc];\n }\n ;\n };\n function dc() {\n for (var tc in zb) {\n var uc = zb[tc];\n if (uc.parentNode) {\n y.conditionClass(uc, \"highlightTitle\", bc);\n }\n else delete zb[tc];\n ;\n };\n bc = !bc;\n if (!Object.keys(zb).length) {\n clearInterval(ac);\n ac = null;\n }\n ;\n };\n function ec(tc) {\n var uc = na.tokenizeThreadID(tc);\n switch (uc.type) {\n case \"user\":\n return fb[\":fb:mercury:chat:user-tab\"].build();\n };\n return fb[\":fb:mercury:chat:multichat-tab\"].build();\n };\n function fc(tc) {\n var uc = (tc._tabTemplate.getNode(\"input\").value || \"\"), vc = tc._fileUploader.getAttachments();\n if (lc(tc)) {\n hc(tc, uc, vc, function(wc) {\n var xc = tc._fileUploader.getImageIDs();\n if ((xc.length > 0)) {\n wc.photo_fbids = xc;\n wc.has_attachment = true;\n }\n ;\n ka.sendMessage(wc);\n tc._fileUploader.removeAttachments();\n tc._getNode(\"input\").value = \"\";\n (tc._lastMessageIndicator && tc._lastMessageIndicator.resetState());\n (tc._messagesView && tc._messagesView.scrollToBottom());\n });\n };\n };\n function gc(tc, uc) {\n if ((uc === 0)) {\n return\n };\n pc(tc, za.POST_PUBLISHED, {\n count: uc\n });\n tc._waterfallID = mb.generate();\n };\n function hc(tc, uc, vc, wc) {\n ua.getThreadMeta(tc._threadID, function(xc) {\n var yc = ka.constructUserGeneratedMessageObject(uc, oa.CHAT_WEB, tc._threadID);\n if ((vc.length > 0)) {\n yc.has_attachment = true;\n yc.raw_attachments = vc;\n }\n ;\n if (ua.isNewEmptyLocalThread(tc._threadID)) {\n var zc = tc._sheetController.getAddFriendsParticipants();\n if (((zc === null) || (zc.length === 0))) {\n return;\n }\n else if ((zc.length === 1)) {\n var ad = (\"user:\" + ma.getUserID(zc[0]));\n yc.thread_id = ad;\n }\n else ua.addParticipantsToThreadLocally(tc._threadID, zc);\n \n ;\n }\n ;\n if (ua.isEmptyLocalThread(tc._threadID)) {\n var bd = na.tokenizeThreadID(tc._threadID);\n yc.message_id = bd.value;\n yc.specific_to_list = xc.participants;\n }\n ;\n if ((typeof yc != \"undefined\")) {\n yc.signatureID = tc._signatureID;\n };\n yc.ui_push_phase = x.UIPushPhase;\n wc(yc);\n if ((tc._threadID !== yc.thread_id)) {\n qc.inform(\"closed-tab\", tc._threadID);\n h.inform(\"chat/open-tab\", {\n thread_id: yc.thread_id\n });\n }\n ;\n });\n };\n function ic(tc) {\n tc._blocked = true;\n tc._sheetController.openUploadWarningTabSheet();\n };\n function jc(tc) {\n return ((tc._fileUploader.isUploading() || tc._photoUploader.isUploading()));\n };\n function kc(tc) {\n return tc._fileUploader.isUploading();\n };\n function lc(tc) {\n var uc = (tc._tabTemplate.getNode(\"input\").value || \"\");\n if (!sb.test(uc)) {\n return true\n };\n if (((tc._fileUploader.getAttachments().length > 0) || (tc._fileUploader.getImageIDs().length > 0))) {\n return true\n };\n return false;\n };\n function mc(tc) {\n if (tc._blocked) {\n if (kc(tc)) {\n return\n };\n tc._blocked = false;\n fc(tc);\n tc._sheetController.closeUploadWarningTabSheet();\n }\n ;\n };\n function nc(tc) {\n tc._nubController.flyoutContentChanged();\n tc._attachmentsDiv.scrollTop = tc._attachmentsDiv.scrollHeight;\n };\n function oc(tc, uc, vc) {\n tc._subscriptionsHandler.addSubscriptions(tc._photoUploader.subscribe(uc, function(wc, xc) {\n pc(tc, vc, xc);\n }));\n };\n function pc(tc, uc, vc) {\n za.sendSignal(nb({\n qn: tc._waterfallID,\n step: uc,\n uploader: za.APP_CHAT\n }, (vc || {\n })));\n };\n function qc(tc, uc, vc) {\n if (uc) {\n na.ensureThreadIsFetched(uc);\n };\n this._threadID = tc;\n this._signatureID = vc;\n this._eventListeners = [];\n this._tabTemplate = ec(tc);\n this._tabElem = this._tabTemplate.getRoot();\n this._waterfallID = mb.generate();\n if (!((this._getNode instanceof Function))) {\n tb.log(\"getnode_undefined\", {\n is_getnode_set: !!this._getNode,\n is_prototype_set: !!qc.prototype,\n is_window: (window == this),\n is_chat_tab_view: (this instanceof qc),\n ctor_name: (this.constructor && this.constructor.name)\n });\n };\n this._subscriptionsHandler = new eb();\n this._fileUploader = new ia(this._tabTemplate.getNode(\"attachmentShelf\"), this._tabTemplate.getNode(\"attachButtonForm\"), this._tabTemplate.getNode(\"fileInput\"), this._tabTemplate.getNode(\"attachID\"));\n this._initializeUploader(this._fileUploader);\n this._initializeAutoSendPhotoUploader();\n this._attachmentsDiv = this._getNode(\"attachmentShelf\");\n this._sheetController = new v(this._threadID, this._getNode(\"sheet\"), this._tabElem);\n this._sheetController.onClickNewMessagesSheet(function() {\n (this._messagesView && this._messagesView.scrollToBottom());\n this.focus();\n qc.inform(\"read\", this._threadID);\n }.bind(this));\n this._sheetController.onClickThreadIsMutedSheet(function() {\n ta.showMuteChangeDialog(0, this._threadID);\n this.focus();\n }.bind(this));\n this._nubController = new xa().init(this._tabElem);\n this._sheetController.onResize(this._nubController.flyoutContentChanged.bind(this._nubController));\n this._contextualDialogController = new p(this._threadID, this._getNode(\"videoCallLink\"));\n if ((vb === null)) {\n vb = !o.get(\"seen_autosend_photo_nux\");\n };\n if ((wb === undefined)) {\n wb = o.get(\"show_sticker_nux\");\n };\n this._messagesView = null;\n var wc = this._getNode(\"conversationLink\");\n if (wc) {\n y.hide(wc);\n sa.renderTitanLink(tc, wc, y.show.bind(y, wc));\n }\n ;\n if (!ua.getCanonicalUserInThread(this._threadID)) {\n this._titlebarTooltipAnchor = this._getNode(\"titlebarText\");\n };\n var xc = this._getCanonicalUserID();\n if (this._isTitleTextLinked()) {\n ma.get((\"fbid:\" + xc), function(id) {\n if (id.href) {\n var jd = this._getNode(\"titlebarText\");\n jd.setAttribute(\"href\", id.href);\n jd.removeAttribute(\"rel\");\n y.removeClass(jd, \"noLink\");\n }\n ;\n }.bind(this));\n };\n var yc = this._getNode(\"inputContainer\").clientHeight;\n gb.getInstance(this._getNode(\"input\")).subscribe(\"resize\", function() {\n var id = this._getNode(\"inputContainer\").clientHeight;\n if ((id != yc)) {\n this._nubController.flyoutContentChanged();\n };\n yc = id;\n }.bind(this));\n var zc = null, ad = this._getNode(\"inputContainer\");\n this._nubController.subscribe(\"resize\", function() {\n if (!zc) {\n zc = this._tabElem.clientWidth;\n };\n var id = 2, jd = (zc - ((ad.clientWidth + id))), kd = (fa.isRTL() ? \"left\" : \"right\");\n db.set(this._iconsContainerNode, kd, (jd + \"px\"));\n gb.getInstance(this._getNode(\"input\")).update();\n }.bind(this));\n var bd = o.get(\"chat_tab_height\");\n if (bd) {\n var cd = this._tabTemplate.getNode(\"chatWrapper\");\n db.set(cd, \"height\", (bd + \"px\"));\n }\n ;\n this._listen(\"closeButton\", \"click\", this._closeClicked);\n this._listen(\"titlebarCloseButton\", \"click\", this._closeClicked);\n this._listen(\"titlebarCloseButton\", \"mousedown\", this._closePreClicked);\n this._listen(\"dockButton\", \"click\", this._nubClicked);\n this._listen(\"dockButton\", \"keydown\", this._dockKeyDown);\n this._listen(\"nubFlyoutTitlebar\", \"click\", this._titleClicked);\n this._listen(\"chatConv\", \"click\", this._chatConvClicked);\n this._listen(\"inputContainer\", \"click\", this._inputContainerClicked);\n this._listen(\"addFriendLink\", \"click\", this._addFriendLinkClicked, true);\n this._listen(\"addToThreadLink\", \"click\", this._addFriendLinkClicked, true);\n this._listen(\"nameConversationLink\", \"click\", this._nameConversationLinkClicked, true);\n this._listen(\"clearWindowLink\", \"click\", this._clearHistory, true);\n this._listen(\"unsubscribeLink\", \"click\", this._unsubscribeLinkClicked, true);\n this._listen(\"videoCallLink\", \"click\", this._callClicked, true);\n this._listen(\"reportSpamLink\", \"click\", this._reportSpamClicked, true);\n this._listen(\"muteThreadLink\", \"click\", this._showMuteSettingDialog.bind(this, -1), true);\n this._listen(\"unmuteThreadLink\", \"click\", this._showMuteSettingDialog.bind(this, 0), true);\n this._listen(\"input\", \"focus\", this._focusTab);\n this._listen(\"input\", \"blur\", this._blurTab);\n this._listen(\"sheet\", \"keydown\", function(event) {\n if ((!event.getModifiers().any && (event.keyCode === ea.TAB))) {\n this._getNode(\"input\").focus();\n event.kill();\n }\n ;\n }.bind(this));\n this._iconsContainerNode = this._getNode(\"iconsContainer\");\n var dd = this._getNode(\"emoticons\");\n this._emoticonView = null;\n if (dd) {\n this._emoticonView = new wa(dd, this._getNode(\"input\"));\n };\n var ed = this._getNode(\"stickers\");\n if (ed) {\n this._stickerController = new pa(ed);\n if (ha.BigThumbsUpStickerWWWGK) {\n this._listen(\"bigThumbsUp\", \"click\", this._bigThumbsUpClicked);\n };\n this._subscriptionsHandler.addSubscriptions(this._stickerController.subscribe(\"stickerselected\", function(id, jd) {\n this._stickerSelected(jd.id);\n }.bind(this)));\n }\n ;\n if (kb.firefox()) {\n this._listen(\"input\", \"keypress\", this._inputKeyDown);\n }\n else this._listen(\"input\", \"keydown\", this._inputKeyDown);\n ;\n this._privacyLink = this._getNode(\"privacyLink\");\n if (this._privacyLink) {\n this._privacyActionController = new r(xc, this._updatePrivacyLink.bind(this));\n this._eventListeners.push(g.listen(this._privacyLink, \"click\", this._privacyActionController.togglePrivacy.bind(this._privacyActionController)));\n }\n ;\n ua.getThreadMeta(this._threadID, function(id) {\n var jd = (xc || ((o.get(\"chat_multi_typ_send\") && !id.is_canonical)));\n if (jd) {\n na.getServerThreadID(this._threadID, function(kd) {\n this._lastMessageIndicator = new ib(xc, this._getNode(\"input\"), \"mercury-chat\", null, kd);\n }.bind(this));\n };\n this._setUpMutingSettings(id);\n }.bind(this));\n var fd = this._getNode(\"muteGroupLink\");\n if (fd) {\n var gd = ua.getCanonicalGroupInThread(this._threadID);\n if (gd) {\n fd.setAttribute(\"ajaxify\", jb(fd.getAttribute(\"ajaxify\")).addQueryData({\n id: gd\n }));\n };\n }\n ;\n s.removeEmptyHrefs(this._tabElem);\n ub[tc] = this;\n this.updateAvailableStatus();\n this.updateTab();\n this._setCloseTooltip(false);\n var hd = {\n threadID: tc,\n userID: xc,\n signatureID: this._signatureID\n };\n new l(\"/ajax/chat/opentab_tracking.php\", hd).send();\n cb.onBeforeUnload(function() {\n if ((lc(this) || jc(this))) {\n return \"You haven't sent your message yet. Do you want to leave without sending?\"\n };\n if (ka.getNumberLocalMessages(this._threadID)) {\n return \"Your message is still being sent. Are you sure you want to leave?\"\n };\n return null;\n }.bind(this), false);\n cb.onUnload(function() {\n rc(this);\n }.bind(this));\n };\n function rc(tc) {\n if (tc._photoUploader.isUploading()) {\n pc(tc, za.CANCEL_DURING_UPLOAD);\n };\n };\n function sc() {\n for (var tc in ub) {\n ub[tc].updateAvailableStatus();\n ub[tc].updateMultichatTooltip();\n };\n };\n h.subscribe([\"buddylist/availability-changed\",], sc);\n ab.subscribe([\"privacy-changed\",\"privacy-availability-changed\",], sc);\n n.subscribe(n.ON_CHANGED, function() {\n for (var tc in ub) {\n ua.getThreadMeta(tc, function(uc) {\n ub[tc]._updateUnreadCount(uc);\n });;\n };\n });\n va.subscribe(\"state-changed\", function(tc, uc) {\n for (var vc in uc) {\n var wc = (uc[vc] && uc[vc].length), xc = ub[vc];\n (xc && xc.showTypingIndicator(wc));\n };\n });\n qa.subscribe(\"threads-updated\", function(tc, uc) {\n for (var vc in ub) {\n (uc[vc] && ub[vc].updateTab());;\n };\n });\n qa.subscribe(\"threads-deleted\", function(tc, uc) {\n for (var vc in ub) {\n (uc[vc] && qc.inform(\"thread-deleted\", vc));;\n };\n });\n nb(qc, i, {\n get: function(tc) {\n return ub[tc];\n }\n });\n nb(qc.prototype, {\n getThreadID: function() {\n return this._threadID;\n },\n showAddFriend: function() {\n (function() {\n this._sheetController.openAddFriendsSheet();\n }).bind(this).defer();\n },\n showPeopleSuggestions: function() {\n (function() {\n this._peopleSuggestions = new u(this._sheetController, this._getNode(\"conversation\"), this._getNode(\"loadingIndicator\"));\n }).bind(this).defer();\n },\n showNameConversation: function(tc) {\n (function() {\n this._sheetController.openNameConversationSheet(tc);\n }).bind(this).defer();\n },\n hideAutomaticNameConversation: function() {\n (function() {\n this._sheetController.closeAutomaticNameConversationSheet();\n }).bind(this).defer();\n },\n isVisible: function() {\n return y.shown(this._tabElem);\n },\n setVisibleState: function(tc, uc) {\n var vc = y.shown(this._tabElem), wc = y.hasClass(this._tabElem, \"opened\");\n y.conditionShow(this._tabElem, tc);\n y.conditionClass(this._tabElem, \"opened\", uc);\n if (((!((vc && wc)) && tc) && uc)) {\n if (!this._messagesView) {\n this._messagesView = new t(this._threadID, this._sheetController, this._getNode(\"chatConv\"), this._getNode(\"conversation\"), this._getNode(\"loadingIndicator\"), this._getNode(\"lastMessageIndicator\"), this._getNode(\"typingIndicator\"));\n };\n this._nubController.flyoutContentChanged();\n this._messagesView.scrollToBottom();\n }\n ;\n if (((vc && wc) && !((tc && uc)))) {\n this._contextualDialogController.tabNotActive();\n };\n },\n focus: function() {\n var tc = (y.hasClass(this._tabElem, \"opened\") ? \"input\" : \"dockButton\");\n this._getNode(tc).focus();\n },\n isFocused: function() {\n var tc = document.activeElement;\n return (ya.byClass(tc, \"-cx-PRIVATE-fbMercuryChatTab__root\") === this._tabElem);\n },\n hasEmptyInput: function() {\n return sb.test(this._getNode(\"input\").value);\n },\n getInputElem: function() {\n return this._getNode(\"input\");\n },\n setInput: function(tc) {\n this._getNode(\"input\").value = tc;\n },\n insertBefore: function(tc) {\n ba.insertBefore(tc._tabElem, this._tabElem);\n },\n appendTo: function(tc) {\n ba.appendContent(tc, this._tabElem);\n },\n nextTabIs: function(tc) {\n var uc = (tc && tc._tabElem);\n return (this._tabElem.nextSibling == uc);\n },\n getScrollTop: function() {\n return ba.find(this._tabElem, \".scrollable\").scrollTop;\n },\n setScrollTop: function(tc) {\n ba.find(this._tabElem, \".scrollable\").scrollTop = tc;\n },\n destroy: function() {\n ba.remove(this._tabElem);\n (this._emoticonView && this._emoticonView.destroy());\n (this._stickerController && this._stickerController.destroy());\n while (this._eventListeners.length) {\n this._eventListeners.pop().remove();;\n };\n (this._messagesView && this._messagesView.destroy());\n this._sheetController.destroy();\n this._fileUploader.destroy();\n this._photoUploader.destroy();\n this._subscriptionsHandler.release();\n this._contextualDialogController.destroy();\n (this._privacyActionController && this._privacyActionController.destroy());\n delete ub[this._threadID];\n aa.unregisterNubController(this._nubController);\n ca.reset(this._getNode(\"input\"));\n },\n updateAvailableStatus: function() {\n ua.getThreadMeta(this._threadID, function(tc) {\n var uc = m.OFFLINE, vc = this._getCanonicalUserID();\n if (vc) {\n uc = bb.get(vc);\n }\n else {\n var wc = tc.participants.map(function(yc) {\n return ma.getUserID(yc);\n });\n uc = bb.getGroup(wc);\n }\n ;\n if (!w.isOnline()) {\n uc = m.OFFLINE;\n };\n if (vc) {\n this._updateCallLink(uc);\n };\n y.conditionClass(this._tabElem, \"-cx-PRIVATE-fbMercuryChatUserTab__active\", (uc === m.ACTIVE));\n y.conditionClass(this._tabElem, \"-cx-PRIVATE-fbMercuryChatUserTab__mobile\", (uc === m.MOBILE));\n var xc = this._getNode(\"presenceIndicator\");\n switch (uc) {\n case m.ACTIVE:\n xc.setAttribute(\"alt\", \"Online\");\n break;\n case m.MOBILE:\n xc.setAttribute(\"alt\", \"Mobile\");\n break;\n default:\n xc.removeAttribute(\"alt\");\n break;\n };\n }.bind(this));\n },\n updateTab: function() {\n ua.getThreadMeta(this._threadID, function(tc) {\n if (!tc.is_subscribed) {\n qc.inform(\"unsubscribed\", this._threadID);\n return;\n }\n ;\n sa.renderAndSeparatedParticipantList(this._threadID, [this._getNode(\"name\"),this._getNode(\"titlebarText\"),], {\n names_renderer: ra.renderShortNames,\n check_length: true\n });\n if ((tc.is_joinable && !o.get(\"joinable_conversation_is_modal\"))) {\n this._updateJoinableAddFriendSheet(tc);\n };\n this._updateMutingSettings(tc);\n this._updateUnreadCount(tc);\n this.updateMultichatTooltip();\n this._updateArchiveWarning(tc);\n this._updateNewThread(tc);\n this._updateNameConversationSheet(tc);\n }.bind(this));\n },\n _updateNameConversationSheet: function(tc) {\n if ((((!tc.name && !tc.is_canonical) && !tc.name_conversation_sheet_dismissed) && !ua.isEmptyLocalThread(tc.thread_id))) {\n this.showNameConversation(true);\n }\n else this.hideAutomaticNameConversation();\n ;\n },\n _updateJoinableAddFriendSheet: function(tc) {\n var uc = ma.user, vc = tc.participants.filter(function(wc) {\n return (wc != uc);\n });\n if ((tc.is_joinable && (vc.length < 1))) {\n this.showAddFriend();\n };\n },\n updateSignatureID: function(tc) {\n this._signatureID = tc;\n },\n _showPhotoNUXIfNecessary: function() {\n if (vb) {\n vb = false;\n new k(\"/ajax/chat/photo_nux.php\").setRelativeTo(this._getNode(\"photoAttachLink\")).setData({\n threadID: this._threadID\n }).send();\n return true;\n }\n ;\n },\n _showStickerNUXIfNecessary: function() {\n if (wb) {\n wb = false;\n new k(\"/ajax/messaging/stickers/nux\").setRelativeTo(this._getNode(\"emoticons\")).setData({\n threadID: this._threadID\n }).send();\n return true;\n }\n ;\n },\n _setUpMutingSettings: function(tc) {\n var uc = ta.isThreadMuted(tc);\n if (uc) {\n this._sheetController.openThreadIsMutedTabSheet();\n };\n this._updateActionMenu(uc);\n },\n _updateMutingSettings: function(tc) {\n var uc = ta.isThreadMuted(tc);\n if ((uc && y.shown(this._getNode(\"muteThreadLink\").parentNode))) {\n this._sheetController.openThreadIsMutedTabSheet();\n }\n else if ((!uc && y.shown(this._getNode(\"unmuteThreadLink\").parentNode))) {\n this._sheetController.closeThreadIsMutedTabSheet();\n }\n ;\n this._updateActionMenu(uc);\n },\n _updateActionMenu: function(tc) {\n y.conditionShow(this._getNode(\"muteThreadLink\").parentNode, !tc);\n y.conditionShow(this._getNode(\"unmuteThreadLink\").parentNode, tc);\n },\n _updateArchiveWarning: function(tc) {\n var uc = false;\n ma.get(ma.user, function(vc) {\n uc = vc.employee;\n if (uc) {\n ma.getMulti(tc.participants, this._showArchiveWarningIfAllParticipantsAreEmployees.bind(this));\n };\n }.bind(this));\n },\n _updateNewThread: function(tc) {\n var uc = ua.isNewEmptyLocalThread(tc.thread_id);\n y.conditionShow(this._getNode(\"dropdown\"), !uc);\n if (uc) {\n this.showAddFriend();\n if (o.get(\"www_chat_compose_suggestions\", 0)) {\n this.showPeopleSuggestions();\n };\n }\n else if (this._peopleSuggestions) {\n this._peopleSuggestions.destroy();\n this._peopleSuggestions = null;\n }\n \n ;\n },\n _showArchiveWarningIfAllParticipantsAreEmployees: function(tc) {\n var uc = true;\n for (var vc in tc) {\n uc = (uc && tc[vc].employee);;\n };\n var wc = this._getNode(\"titanArchiveWarning\");\n if (wc) {\n if (this._titlebarTooltipAnchor) {\n y.conditionClass(this._titlebarTooltipAnchor, \"narrowTitleBar\", uc);\n };\n y.conditionShow(wc, uc);\n }\n ;\n },\n updateMultichatTooltip: function() {\n ua.getThreadMeta(this._threadID, function(tc) {\n if (!tc.is_canonical) {\n yb(this._titlebarTooltipAnchor, tc.participants);\n };\n }.bind(this));\n },\n _getNode: function(tc) {\n return this._tabTemplate.getNode(tc);\n },\n _getCanonicalUserID: function() {\n return ua.getCanonicalUserInThread(this._threadID);\n },\n _listen: function(tc, event, uc, vc) {\n var wc = this._getNode(tc);\n if (wc) {\n this._eventListeners.push(g.listen(wc, event, uc.bind(this)));\n }\n else if (!vc) {\n throw new Error(((\"Could not find node \\\"\" + tc) + \"\\\"\"))\n }\n ;\n },\n _closePreClicked: function(tc) {\n this._closeMouseDown = true;\n },\n _closeClicked: function(tc) {\n rc(this);\n qc.inform(\"closed-tab\", this._threadID);\n tc.kill();\n },\n _nubClicked: function(tc) {\n tc.kill();\n return qc.inform(\"nub-activated\", this._threadID);\n },\n _dockKeyDown: function(event) {\n if (((event.keyCode === ea.RETURN) || (event.keyCode === ea.SPACE))) {\n qc.inform(\"nub-activated\", this._threadID);\n event.kill();\n }\n else this._handleHotkeyPressed(event);\n ;\n },\n _handleHotkeyPressed: function(event) {\n if ((event.keyCode === ea.ESC)) {\n rc(this);\n qc.inform(\"esc-pressed\", this._threadID);\n event.kill();\n }\n else if (((event.keyCode === ea.TAB) && !event.ctrlKey)) {\n var tc = qc.inform(\"tab-pressed\", {\n id: this._threadID,\n shiftPressed: event.shiftKey\n });\n (!tc && event.kill());\n }\n \n ;\n },\n _isTitleTextLinked: function() {\n var tc = this._getCanonicalUserID();\n return (tc && o.get(\"chat_tab_title_link_timeline\"));\n },\n _titleClicked: function(event) {\n var tc = event.getTarget(), uc = ya.byClass(tc, \"titlebarText\"), vc = (uc && this._isTitleTextLinked());\n if (((!vc && !ya.byClass(tc, \"uiSelector\")) && !ya.byClass(tc, \"addToThread\"))) {\n qc.inform(\"lower-activated\", this._threadID);\n event.kill();\n }\n ;\n },\n _callClicked: function(tc) {\n var uc = this._getCanonicalUserID();\n if (lb.availableForCall(uc)) {\n var vc = \"chat_tab_icon\";\n if ((tc.target && y.hasClass(tc.target, \"video_call_promo\"))) {\n vc = \"chat_tab_icon_promo\";\n }\n else if ((tc.target && y.hasClass(tc.target, \"video_call_tour\"))) {\n vc = \"chat_tab_icon_tour\";\n }\n ;\n qc.inform(\"video-call-clicked\", {\n threadID: this._threadID,\n userID: uc,\n clickSource: vc\n });\n }\n ;\n return false;\n },\n _addFriendLinkClicked: function() {\n this.showAddFriend();\n },\n _nameConversationLinkClicked: function() {\n this.showNameConversation();\n },\n _clearHistory: function() {\n var tc = ua.getThreadMetaNow(this._threadID);\n if (tc) {\n var uc = this._getCanonicalUserID();\n na.clearChat(this._threadID, uc, tc.timestamp);\n }\n ;\n },\n _unsubscribeLinkClicked: function() {\n var tc = [];\n tc.push({\n name: \"unsubscribe\",\n label: \"Leave Conversation\",\n handler: this._unsubscribeToThread.bind(this)\n });\n tc.push(z.CANCEL);\n new z().setTitle(\"Leave Conversation?\").setBody(\"You will stop receiving messages from this conversation and people will see that you left.\").setButtons(tc).show();\n },\n _bigThumbsUpClicked: function() {\n this._stickerSelected(rb);\n },\n _reportSpamClicked: function() {\n var tc = this._getCanonicalUserID(), uc = jb(\"/ajax/chat/report.php\").addQueryData({\n id: tc\n }).addQueryData({\n src: \"top_report_link\"\n });\n j.send(new k(uc));\n },\n _showMuteSettingDialog: function(tc) {\n ta.showMuteChangeDialog(tc, this._threadID);\n },\n _focusTab: function() {\n y.addClass(this._tabElem, \"focusedTab\");\n if (this._peopleSuggestions) {\n this._peopleSuggestions.clearSuggestions();\n };\n this.tryMarkAsRead();\n this._contextualDialogController.tabFocused();\n if ((!xb && ((this._showPhotoNUXIfNecessary() || this._showStickerNUXIfNecessary())))) {\n h.subscribe([\"ChatNUX/show\",\"ChatNUX/hide\",], function(event) {\n xb = (event === \"ChatNUX/show\");\n });\n };\n this._closeMouseDown = false;\n this._setCloseTooltip(true);\n },\n _blurTab: function() {\n y.removeClass(this._tabElem, \"focusedTab\");\n (!this._closeMouseDown && this._setCloseTooltip(false));\n },\n _setCloseTooltip: function(tc) {\n var uc = this._getNode(\"titlebarCloseButton\"), vc = (tc ? \"Press Esc to close\" : \"Close tab\");\n hb.set(uc, vc, \"above\");\n },\n _inputKeyDown: function(event) {\n if (((event.keyCode === ea.RETURN) && !event.shiftKey)) {\n if (kc(this)) {\n ic(this);\n event.kill();\n return;\n }\n ;\n fc(this);\n event.kill();\n return;\n }\n ;\n if ((((event.keyCode === ea.DOWN) && event.shiftKey) && (this._getNode(\"input\").value === \"\"))) {\n qc.inform(\"lower-activated\", this._threadID);\n event.kill();\n return;\n }\n ;\n this._handleHotkeyPressed(event);\n },\n tryMarkAsRead: function() {\n if ((!this._messagesView || this._messagesView.isScrolledToBottom())) {\n qc.inform(\"read\", this._threadID);\n return true;\n }\n ;\n return false;\n },\n _chatConvClicked: function(tc) {\n this.tryMarkAsRead();\n if ((ya.byTag(tc.getTarget(), \"a\") || ba.getSelection())) {\n return\n };\n this.focus();\n },\n _inputContainerClicked: function(tc) {\n this.tryMarkAsRead();\n this.focus();\n },\n showTypingIndicator: function(tc) {\n var uc = ua.getThreadMetaNow(this._threadID), vc = (this._getCanonicalUserID() || (((o.get(\"chat_multi_typ\") && uc) && !uc.is_canonical)));\n if (vc) {\n y.conditionClass(this._tabElem, \"typing\", tc);\n };\n },\n _updateUnreadCount: function(tc) {\n var uc = tc.unread_count;\n if ((typeof uc != \"undefined\")) {\n var vc = (!!uc && ((!n.showsTabUnreadUI || n.showsTabUnreadUI()))), wc = this._getNode(\"numMessages\");\n y.conditionShow(wc, vc);\n y.conditionClass(this._tabElem, \"highlightTab\", vc);\n cc(this._threadID, this._tabElem, vc);\n ba.setContent(wc, uc);\n }\n ;\n },\n _updateCallLink: function(tc) {\n var uc = this._getNode(\"videoCallLink\");\n if (w.isOnline()) {\n var vc = this._getCanonicalUserID(), wc = (\"fbid:\" + vc);\n ma.get(wc, function(xc) {\n if (lb.availableForCall(vc)) {\n hb.set(uc, qb._(\"Start a video call with {firstname}\", {\n firstname: xc.short_name\n }));\n this._updateCallBackLinks(this._tabElem, true);\n }\n else {\n hb.set(uc, qb._(\"{firstname} is currently unavailable for video calling\", {\n firstname: xc.short_name\n }));\n this._hideVideoCallouts();\n this._updateCallBackLinks(this._tabElem, false);\n }\n ;\n }.bind(this));\n }\n else {\n hb.set(uc, \"You must be online to make a call.\");\n this._hideVideoCallouts();\n this._updateCallBackLinks(document.body, false);\n }\n ;\n },\n _updateCallBackLinks: function(tc, uc) {\n var vc = ba.scry(tc, \"a.callBackLink\");\n if (uc) {\n vc.forEach(y.show);\n }\n else vc.forEach(y.hide);\n ;\n },\n _hideVideoCallouts: function() {\n this._contextualDialogController.hideVideoCallouts();\n },\n _updatePrivacyLink: function(tc) {\n if ((tc == r.OFFLINE)) {\n ba.setContent(this._privacyLink, \"Go online\");\n }\n else {\n var uc = this._getCanonicalUserID(), vc = (\"fbid:\" + uc);\n ma.get(vc, function(wc) {\n var xc = null;\n if ((tc == r.BLOCKED)) {\n xc = qb._(\"Turn On Chat for {name}\", {\n name: wc.short_name\n });\n }\n else xc = qb._(\"Turn Off Chat for {name}\", {\n name: wc.short_name\n });\n ;\n ba.setContent(this._privacyLink, xc);\n }.bind(this));\n }\n ;\n },\n _unsubscribeToThread: function() {\n if (ua.isEmptyLocalThread(this._threadID)) {\n qc.inform(\"unsubscribed\", this._threadID);\n }\n else {\n var tc = ka.constructLogMessageObject(oa.CHAT_WEB, this._threadID, ja.UNSUBSCRIBE, {\n });\n ka.sendMessage(tc);\n }\n ;\n return true;\n },\n _initializeUploader: function(tc) {\n this._subscriptionsHandler.addSubscriptions(tc.subscribe([\"all-uploads-completed\",\"upload-canceled\",], function() {\n mc(this);\n }.bind(this)), tc.subscribe(\"dom-updated\", function() {\n nc(this);\n }.bind(this)), tc.subscribe(\"submit\", function() {\n this._getNode(\"input\").focus();\n }.bind(this)));\n },\n _initializeAutoSendPhotoUploader: function() {\n this._photoUploader = new q(this._tabTemplate.getNode(\"photoAttachButtonForm\"), this._tabTemplate.getNode(\"photoFileInput\"), this._tabTemplate.getNode(\"photoAttachID\"));\n var tc = {\n };\n oc(this, \"submit\", za.UPLOAD_START);\n oc(this, \"all-uploads-completed\", za.ALL_UPLOADS_DONE);\n oc(this, \"all-uploads-failed\", za.CLIENT_ERROR);\n this._subscriptionsHandler.addSubscriptions(this._photoUploader.subscribe(\"submit\", function(uc, vc) {\n hc(this, \"\", [], function(wc) {\n tc[vc.upload_id] = wc;\n if ((vc.preview_attachments.length > 0)) {\n wc.has_attachment = true;\n wc.preview_attachments = vc.preview_attachments;\n }\n ;\n wc.client_state = la.DO_NOT_SEND_TO_SERVER;\n wc.status = ga.RESENDING;\n ka.sendMessage(wc);\n });\n this._getNode(\"input\").focus();\n }.bind(this)), this._photoUploader.subscribe(\"all-uploads-failed\", function(uc, vc) {\n var wc = tc[vc.upload_id];\n delete tc[vc.upload_id];\n ka.deleteMessages(wc.thread_id, [wc.message_id,]);\n }.bind(this)), this._photoUploader.subscribe(\"all-uploads-completed\", function(uc, vc) {\n var wc = tc[vc.upload_id];\n delete tc[vc.upload_id];\n wc.image_ids = vc.image_ids;\n wc.client_state = la.SEND_TO_SERVER;\n ka.sendMessage(wc);\n var xc = (vc.image_ids.length || vc.attachments.length);\n gc(this, xc);\n }.bind(this)));\n },\n _stickerSelected: function(tc) {\n hc(this, \"\", [], function(uc) {\n uc.has_attachment = true;\n uc.sticker_id = tc;\n ka.sendMessage(uc);\n this.focus();\n }.bind(this));\n },\n _emoticonView: null\n });\n e.exports = qc;\n});\n__d(\"ChatNewMessageHandler\", [\"ChatActivity\",\"ChatTabModel\",\"ChatTabView\",\"JSLogger\",\"MercuryAssert\",\"MercuryBrowserAlerts\",\"MercuryUnseenState\",], function(a, b, c, d, e, f) {\n var g = b(\"ChatActivity\"), h = b(\"ChatTabModel\"), i = b(\"ChatTabView\"), j = b(\"JSLogger\"), k = b(\"MercuryAssert\"), l = b(\"MercuryBrowserAlerts\"), m = b(\"MercuryUnseenState\").get(), n = j.create(\"chat_new_message\"), o = {\n _raiseTab: function(p, q) {\n var r = h.getTab(p), s = false;\n if (r) {\n s = r.raised;\n }\n else {\n h.raiseTab(p, false);\n s = true;\n }\n ;\n q.to_new_tab = !r;\n q.to_raised_tab = !!s;\n },\n _notify: function(p, q, r) {\n var s = i.get(p);\n r.view_is_visible = (s && s.isVisible());\n r.view_is_focused = (s && s.isFocused());\n if (!r.view_is_visible) {\n n.log(\"message_to_hidden\");\n };\n r.is_active = g.isActive();\n l.messageReceived(q);\n },\n _promoteTab: function(p, q, r) {\n if (((r && !r[p]) && q)) {\n h.promoteThreadInPlaceOfThread(p, q);\n };\n },\n newMessage: function(p, q, r, s) {\n k.isThreadID(p);\n var t = {\n thread_id: p,\n message_id: q.message_id\n };\n this._raiseTab(p, t);\n this._promoteTab(p, r, s);\n this._notify(p, q, t);\n n.log(\"message\", t);\n }\n };\n l.subscribe(\"before-alert\", function(p, event) {\n var q = event.threadID, r = i.get(q), s = h.getTab(q);\n if ((((((s && s.raised) && r) && r.isVisible()) && r.isFocused()) && r.tryMarkAsRead())) {\n m.markThreadSeen(q);\n event.cancelAlert();\n }\n ;\n });\n e.exports = o;\n});\n__d(\"ChatTabPresence\", [\"AvailableList\",\"ChatTabModel\",\"MercuryThreads\",], function(a, b, c, d, e, f) {\n var g = b(\"AvailableList\"), h = b(\"ChatTabModel\"), i = b(\"MercuryThreads\").get(), j = {\n };\n function k(l) {\n var m = i.getCanonicalUserInThread(l);\n if (m) {\n g.updateForID(m);\n };\n };\n h.subscribe(\"chat/tabs-changed\", function(event, l) {\n l.tabs.forEach(function(m) {\n if ((m.raised && !j[m.id])) {\n k(m.id);\n };\n });\n j = {\n };\n l.tabs.forEach(function(m) {\n if (m.raised) {\n j[m.id] = true;\n };\n });\n });\n e.exports = {\n };\n});\n__d(\"ChatTabPolicy\", [\"ChatBehavior\",\"FBDesktopPlugin\",\"JSLogger\",\"MercuryActionTypeConstants\",\"MercuryAssert\",\"MercuryParticipants\",\"MercuryParticipantTypes\",\"MercurySourceType\",\"MercuryThreadMode\",\"MercuryThreadMuter\",\"MercuryUnseenState\",\"MessagingTag\",\"PresencePrivacy\",\"ShortProfiles\",], function(a, b, c, d, e, f) {\n var g = b(\"ChatBehavior\"), h = b(\"FBDesktopPlugin\"), i = b(\"JSLogger\"), j = b(\"MercuryActionTypeConstants\"), k = b(\"MercuryAssert\"), l = b(\"MercuryParticipants\"), m = b(\"MercuryParticipantTypes\"), n = b(\"MercurySourceType\"), o = b(\"MercuryThreadMode\"), p = b(\"MercuryThreadMuter\"), q = b(\"MercuryUnseenState\").get(), r = b(\"MessagingTag\"), s = b(\"PresencePrivacy\"), t = b(\"ShortProfiles\"), u = i.create(\"tab_policy\");\n function v(w, x) {\n q.markThreadSeen(w, x);\n };\n e.exports = {\n messageIsAllowed: function(w, x, y) {\n var z = w.thread_id, aa = x.message_id;\n k.isThreadID(z);\n k.isParticipantID(x.author);\n var ba;\n if (p.isThreadMuted(w)) {\n ba = {\n thread_id: z,\n message_id: aa,\n mute_settings: w.mute_settings\n };\n u.log(\"message_thread_muted\", ba);\n return;\n }\n ;\n if ((w.mode == o.OBJECT_ORIGINATED)) {\n ba = {\n thread_id: z,\n message_id: aa,\n mode: w.mode\n };\n u.log(\"message_object_originated\", ba);\n return;\n }\n ;\n if (((x.source == n.EMAIL) || (x.source == n.TITAN_EMAIL_REPLY))) {\n ba = {\n thread_id: z,\n message_id: aa,\n source: x.source\n };\n u.log(\"message_source_not_allowed\", ba);\n return;\n }\n ;\n var ca = l.getUserID(x.author);\n if (!ca) {\n u.log(\"message_bad_author\", {\n thread_id: z,\n message_id: aa,\n user: ca\n });\n return;\n }\n ;\n if ((x.action_type != j.USER_GENERATED_MESSAGE)) {\n ba = {\n thread_id: z,\n message_id: aa,\n type: x.action_type\n };\n u.log(\"message_non_user_generated\", ba);\n return;\n }\n ;\n if ((w.is_canonical_user && !g.notifiesUserMessages())) {\n u.log(\"message_jabber\", {\n thread_id: z,\n message_id: aa\n });\n v(z, true);\n return;\n }\n ;\n if ((w.is_canonical && !w.canonical_fbid)) {\n u.log(\"message_canonical_contact\", {\n thread_id: z,\n message_id: aa\n });\n return;\n }\n ;\n if (h.shouldSuppressMessages()) {\n u.log(\"message_desktop\", {\n thread_id: z,\n message_id: aa\n });\n return;\n }\n ;\n if ((w.folder != r.INBOX)) {\n u.log(\"message_folder\", {\n thread_id: z,\n message_id: aa,\n folder: w.folder\n });\n return;\n }\n ;\n var da = l.getUserID(l.user);\n t.getMulti([ca,da,], function(ea) {\n if (!s.allows(ca)) {\n u.log(\"message_privacy\", {\n thread_id: z,\n message_id: aa,\n user: ca\n });\n return;\n }\n ;\n var fa = (ea[ca].employee && ea[da].employee);\n if ((!fa && (ea[ca].type !== m.FRIEND))) {\n u.log(\"message_non_friend\", {\n thread_id: z,\n message_id: aa,\n user: ca\n });\n return;\n }\n ;\n y();\n });\n }\n };\n});\n__d(\"ChatTabViewSelector\", [\"Event\",\"Arbiter\",\"CSS\",\"DataStore\",\"DOM\",\"MenuDeprecated\",\"MercuryThreadInformer\",\"MercuryThreads\",\"NubController\",\"ChatTabTemplates\",\"MercuryThreadMetadataRenderer\",\"Toggler\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Arbiter\"), i = b(\"CSS\"), j = b(\"DataStore\"), k = b(\"DOM\"), l = b(\"MenuDeprecated\"), m = b(\"MercuryThreadInformer\").get(), n = b(\"MercuryThreads\").get(), o = b(\"NubController\"), p = b(\"ChatTabTemplates\"), q = b(\"MercuryThreadMetadataRenderer\").get(), r = b(\"Toggler\"), s = b(\"copyProperties\");\n function t(u) {\n var v = p[\":fb:chat:tab:selector\"].build(), w = v.getRoot(), x = v.getNode(\"menu\"), y = k.find(x, \".uiMenuInner\"), z = {\n }, aa = new o().init(w);\n i.hide(w);\n k.insertBefore(u, w);\n function ba(ea) {\n var fa = 0;\n for (var ga in z) {\n var ha = z[ga], ia = n.getThreadMetaNow(ga), ja = ha.getNode(\"unreadCount\"), ka = (((ia && ia.unread_count)) || 0);\n fa += ka;\n if ((ka > 9)) {\n ka = \"+\";\n };\n i.conditionClass(ja, \"invisible_elem\", !ka);\n k.setContent(ja, ka);\n };\n var la = v.getNode(\"numMessages\");\n i.conditionShow(la, fa);\n k.setContent(la, fa);\n };\n this.setTabData = function(ea) {\n z = {\n };\n if ((ea.length < 1)) {\n i.hide(w);\n return;\n }\n ;\n i.show(w);\n k.empty(y);\n ea.forEach(function(fa) {\n var ga = p[\":fb:chat:tab:selector:item\"].build();\n z[fa.id] = ga;\n var ha = ga.getNode(\"content\");\n q.renderAndSeparatedParticipantList(fa.id, ha);\n k.prependContent(y, ga.getRoot());\n j.set(ga.getRoot(), \"threadID\", fa.id);\n var ia = ga.getNode(\"closeButton\");\n g.listen(ia, \"click\", function(event) {\n t.inform(\"selector/close-tab\", fa.id);\n event.kill();\n });\n });\n aa.flyoutContentChanged();\n k.setContent(v.getNode(\"numTabs\"), ea.length);\n ba();\n };\n function ca(event, ea) {\n if ((ea.menu != x)) {\n return\n };\n var fa = j.get(ea.item, \"threadID\");\n t.inform(\"selected\", fa);\n r.hide(w);\n };\n function da(event, ea) {\n l.register(x);\n };\n l.subscribe(\"select\", ca.bind(this));\n r.listen(\"show\", w, function() {\n h.inform(\"layer_shown\", {\n type: \"ChatTabSelector\"\n });\n da();\n });\n r.listen(\"hide\", w, function() {\n h.inform(\"layer_hidden\", {\n type: \"ChatTabSelector\"\n });\n });\n m.subscribe(\"threads-updated\", ba);\n };\n s(t, new h());\n e.exports = t;\n});\n__d(\"ChatTabController\", [\"ChatTabPresence\",\"ChatTypeaheadBehavior\",\"Arbiter\",\"ChatActivity\",\"ChatConfig\",\"ChatNewMessageHandler\",\"ChatTabMessagesView\",\"ChatTabModel\",\"ChatTabPolicy\",\"ChatTabView\",\"ChatTabViewSelector\",\"JSLogger\",\"MercuryParticipants\",\"MercuryThreadInformer\",\"MercuryThreads\",\"MercuryUnseenState\",\"Style\",\"UserAgent\",\"VideoCallCore\",], function(a, b, c, d, e, f) {\n b(\"ChatTabPresence\");\n b(\"ChatTypeaheadBehavior\");\n var g = b(\"Arbiter\"), h = b(\"ChatActivity\"), i = b(\"ChatConfig\"), j = b(\"ChatNewMessageHandler\"), k = b(\"ChatTabMessagesView\"), l = b(\"ChatTabModel\"), m = b(\"ChatTabPolicy\"), n = b(\"ChatTabView\"), o = b(\"ChatTabViewSelector\"), p = b(\"JSLogger\"), q = b(\"MercuryParticipants\"), r = b(\"MercuryThreadInformer\").get(), s = b(\"MercuryThreads\").get(), t = b(\"MercuryUnseenState\").get(), u = b(\"Style\"), v = b(\"UserAgent\"), w = b(\"VideoCallCore\"), x = (i.get(\"tab_auto_close_timeout\") || 7200000), y = p.create(\"tab_controller\");\n function z(la) {\n s.changeThreadReadStatus(la, true);\n aa(la);\n };\n function aa(la) {\n t.markThreadSeen(la);\n };\n function ba(la, ma, na) {\n var oa = l.get().tabs;\n la += (ma ? 1 : -1);\n while (((la >= 0) && (la < oa.length))) {\n var pa = oa[la], qa = n.get(pa.id);\n if (((qa && qa.isVisible()) && ((!na || pa.raised)))) {\n qa.focus();\n return true;\n }\n ;\n la += (ma ? 1 : -1);\n };\n return false;\n };\n function ca(la, ma, na) {\n var oa = ma.shouldPromoteOnRaise(la);\n g.inform(\"chat/promote-tab\", la);\n if (oa) {\n l.raiseAndPromoteTab(la, true, na);\n }\n else l.raiseTab(la, true, na);\n ;\n var pa = n.get(la);\n (pa && pa.focus());\n };\n function da(la, ma, na) {\n var oa = na.getMaxTabsToShow(), pa = l.indexOf(la);\n l.closeTabAndDemote(la, (oa - 2), ma);\n return pa;\n };\n function ea(la) {\n var ma = Object.keys((la.getTabsToShow() || {\n })), na = (1 * 60), oa = null, pa = Infinity;\n for (var qa = 0; (qa < ma.length); qa++) {\n var ra = ma[qa], sa = s.getThreadMetaNow(ra);\n if ((!n.get(ra).hasEmptyInput() || !sa)) {\n continue;\n };\n var ta = (((l.getServerTime() - sa.timestamp)) / 1000);\n if ((!sa.timestamp || (((sa.timestamp && (sa.timestamp < pa)) && (ta > na))))) {\n oa = sa.thread_id;\n pa = sa.timestamp;\n }\n ;\n };\n return oa;\n };\n function fa(la) {\n o.subscribe(\"selected\", function(na, oa) {\n ca(oa, la);\n });\n g.subscribe(\"chat/open-tab\", function(na, oa) {\n ca(oa.thread_id, la, oa.signature_id);\n });\n g.subscribe(\"page_transition\", function(na, oa) {\n l.closeFragileTabs();\n });\n n.subscribe(\"read\", function(event, na) {\n z(na);\n });\n h.subscribe(\"idle\", function(na, oa) {\n if ((oa > x)) {\n var pa = l.get().tabs;\n pa.forEach(function(qa) {\n var ra = qa.id;\n s.getThreadMeta(ra, function(sa) {\n if (!sa.unread_count) {\n y.log(\"autoclose_idle_seen\", {\n thread_id: ra,\n idleness: oa\n });\n l.closeTab(ra, \"autoclose_idle_seen\");\n }\n ;\n });\n });\n }\n ;\n });\n n.subscribe(\"nub-activated\", function(na, oa) {\n ca(oa, la);\n });\n n.subscribe(\"lower-activated\", function(na, oa) {\n l.lowerTab(oa);\n var pa = n.get(oa);\n (pa && pa.focus());\n });\n function ma(na, oa) {\n w.showOutgoingCallDialog(oa.userID, oa.clickSource);\n l.lowerTab(oa.threadID);\n };\n n.subscribe(\"video-call-clicked\", ma);\n k.subscribe(\"video-call-clicked\", ma);\n k.subscribe(\"interaction-with-tab\", function(na, oa) {\n var pa = l.getTab(oa);\n ((pa && pa.raised) && aa(oa));\n });\n n.subscribe(\"closed-tab\", function(na, oa) {\n y.log(\"close_view\", {\n thread_id: oa\n });\n da(oa, \"close_view\", la);\n return false;\n });\n n.subscribe(\"thread-deleted\", function(na, oa) {\n y.log(\"close_thread_deleted\", {\n thread_id: oa\n });\n da(oa, \"close_thread_deleted\", la);\n return false;\n });\n n.subscribe(\"unsubscribed\", function(na, oa) {\n y.log(\"close_view_unsubscribed\", {\n thread_id: oa\n });\n da(oa, \"close_view_unsubscribed\", la);\n return false;\n });\n n.subscribe(\"esc-pressed\", function(na, oa) {\n y.log(\"close_esc\", {\n thread_id: oa\n });\n var pa = da(oa, \"close_esc\", la);\n (function() {\n (ba((pa - 1), true, true) || ba(pa, false, true));\n }).defer();\n });\n o.subscribe(\"selector/close-tab\", function(na, oa) {\n y.log(\"close_chat_from_selector\", {\n thread_id: oa\n });\n da(oa, \"close_chat_from_selector\", la);\n });\n r.subscribe(\"messages-received\", function(na, oa) {\n for (var pa in oa) {\n var qa = oa[pa];\n for (var ra = 0; (ra < qa.length); ra++) {\n var sa = qa[ra];\n if ((sa.author != q.user)) {\n if (!sa.is_unread) {\n y.log(\"message_already_read\", {\n action_id: sa.action_id,\n thread_id: sa.thread_id\n });\n continue;\n }\n ;\n s.getThreadMeta(pa, function(ta) {\n m.messageIsAllowed(ta, sa, function() {\n var ua = (la.hasRoomForRaisedTab() ? undefined : ea(la));\n j.newMessage(pa, sa, ua, la.getTabsToShow());\n });\n });\n }\n ;\n };\n };\n });\n r.subscribe(\"thread-read-changed\", function(na, oa) {\n for (var pa in oa) {\n if (!oa[pa].mark_as_read) {\n y.log(\"autoclose_marked_unread\", {\n thread_id: pa\n });\n l.closeTab(pa, \"autoclose_marked_unread\");\n }\n ;\n };\n });\n n.subscribe(\"tab-pressed\", function(na, oa) {\n return !ba(l.indexOf(oa.id), oa.shiftPressed);\n });\n g.subscribe(p.DUMP_EVENT, function(na, oa) {\n oa.chat_controller = {\n auto_close_timeout: x\n };\n });\n };\n if (v.firefox()) {\n var ga = function() {\n return ((u.get(document.body, \"overflowX\") + \" \") + u.get(document.body, \"overflowY\"));\n }, ha = ga(), ia = function() {\n var la = ga();\n if ((la !== ha)) {\n ha = la;\n g.inform(\"overflow-applied-to-body\");\n }\n ;\n };\n if ((\"MutationObserver\" in window)) {\n var ja = new MutationObserver(ia), ka = {\n attributes: true,\n attributeFilter: [\"class\",\"style\",]\n };\n ja.observe(document.documentElement, ka);\n }\n else document.documentElement.addEventListener(\"DOMAttrModified\", function(event) {\n if (((event.getTarget() === document.documentElement) && (((event.attrName === \"class\") || (event.attrName === \"style\"))))) {\n ia();\n };\n }, false);\n ;\n }\n;\n e.exports = fa;\n});\n__d(\"ChatTabViewCoordinator\", [\"Arbiter\",\"ChatTabModel\",\"ChatTabView\",\"ChatTabViewSelector\",\"CSS\",\"VideoCallCore\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ChatTabModel\"), i = b(\"ChatTabView\"), j = b(\"ChatTabViewSelector\"), k = b(\"CSS\"), l = b(\"VideoCallCore\");\n function m(n, o) {\n var p = new j(n), q = {\n }, r = false;\n function s() {\n var w = h.get(), x = {\n };\n w.tabs.forEach(function(z) {\n x[z.id] = 1;\n });\n for (var y in q) {\n if (!x[y]) {\n q[y].destroy();\n delete (q[y]);\n }\n ;\n };\n t(w);\n u(w);\n };\n function t(w) {\n var x = null;\n w.tabs.forEach(function(y) {\n var z = y.id, aa = false;\n if (!q[z]) {\n q[z] = new i(z, y.server_id, y.signatureID);\n aa = true;\n }\n else q[z].updateSignatureID(y.signatureID);\n ;\n if ((aa || !q[z].nextTabIs(x))) {\n var ba = q[z].getScrollTop();\n if (x) {\n q[z].insertBefore(x);\n }\n else q[z].appendTo(n);\n ;\n if (ba) {\n q[z].setScrollTop(ba);\n };\n }\n ;\n x = q[z];\n });\n };\n function u(w) {\n var x = o.getTabsToShow(w), y = [], z = false;\n w.tabs.forEach(function(aa) {\n if (!x[aa.id]) {\n q[aa.id].setVisibleState(false, aa.raised);\n y.push(aa);\n }\n ;\n });\n w.tabs.forEach(function(aa) {\n if (x[aa.id]) {\n q[aa.id].setVisibleState(true, aa.raised);\n z |= aa.raised;\n }\n ;\n });\n p.setTabData(y);\n v(z);\n };\n function v(w) {\n if ((!w && r)) {\n g.inform(\"layer_hidden\", {\n type: \"ChatTab\"\n });\n r = false;\n }\n else if ((w && !r)) {\n g.inform(\"layer_shown\", {\n type: \"ChatTab\"\n });\n r = true;\n }\n \n ;\n };\n if (l.isSupported()) {\n k.addClass(n, \"videoCallEnabled\");\n };\n o.subscribe(\"tabs-changed\", s);\n s();\n };\n e.exports = m;\n});\n__d(\"TabsViewport\", [\"Arbiter\",\"ArbiterMixin\",\"ChatTabModel\",\"Dock\",\"DOM\",\"DOMDimensions\",\"Event\",\"Parent\",\"Vector\",\"ViewportBounds\",\"areObjectsEqual\",\"copyProperties\",\"csx\",\"shield\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ArbiterMixin\"), i = b(\"ChatTabModel\"), j = b(\"Dock\"), k = b(\"DOM\"), l = b(\"DOMDimensions\"), m = b(\"Event\"), n = b(\"Parent\"), o = b(\"Vector\"), p = b(\"ViewportBounds\"), q = b(\"areObjectsEqual\"), r = b(\"copyProperties\"), s = b(\"csx\"), t = b(\"shield\"), u = 164, v = 264;\n function w(x) {\n this._root = x;\n var y = this._recalculateWidth.bind(this);\n m.listen(window, \"resize\", y);\n j.subscribe(\"resize\", y);\n g.subscribe([\"LitestandSidebar/expand\",\"LitestandSidebar/collapse\",], y);\n g.subscribeOnce([\"sidebar/initialized\",\"LitestandSidebar/initialized\",], y, g.SUBSCRIBE_NEW);\n i.subscribe(\"chat/tabs-changed\", t(this._recalculateTabs, this, true));\n this._recalculateWidth();\n this._initialized = true;\n };\n r(w.prototype, h, {\n _root: null,\n _initialized: false,\n _availableWidth: 0,\n _maxShown: 1,\n _viewState: null,\n _recalculateWidth: function() {\n var x = w._getAvailableDockWidth(this._root), y = Math.max(1, Math.floor((x / v))), z = (y != this._maxShown);\n if ((((!this._viewState || z) || (x <= this._viewState.usedWidth)) || (x > this._viewState.widthToShowNext))) {\n this._availableWidth = x;\n this._maxShown = y;\n this._viewState = null;\n this._recalculateTabs(z);\n }\n ;\n },\n _onTabsChanged: function() {\n if (this._initialized) {\n this.inform(\"tabs-changed\");\n this.inform(\"max-to-show-changed\", this._maxShown);\n this.inform(\"max-to-show-change-completed\");\n }\n ;\n },\n _recalculateTabs: function(x) {\n var y = w._getTabsToShow(i.get(), this._availableWidth);\n if ((x || !q(this._viewState, y))) {\n this._viewState = y;\n this._onTabsChanged();\n }\n ;\n },\n getMaxTabsToShow: function() {\n return this._maxShown;\n },\n checkWidth: function() {\n this._recalculateWidth();\n },\n hasRoomForRaisedTab: function() {\n return ((this._availableWidth - this._viewState.usedWidth) > v);\n },\n getTabsToShow: function() {\n return JSON.parse(JSON.stringify(this._viewState.tabsToShow));\n },\n shouldPromoteOnRaise: function(x) {\n if (!this._viewState.tabsToShow[x]) {\n return true\n };\n if ((this._viewState.nextToHide != x)) {\n return false\n };\n var y = i.getTab(x), z = (y && y.raised);\n return (!z && (((this._availableWidth - this._viewState.usedWidth) < 100)));\n }\n });\n r(w, {\n _getAvailableDockWidth: function(x) {\n var y = l.getViewportWithoutScrollbarDimensions().width;\n y -= (p.getLeft() + p.getRight());\n y -= 50;\n var z = n.byClass(x, \"fbDock\"), aa = k.find(z, \".-cx-PUBLIC-fbDockChatBuddyListNub__container\"), ba = o.getElementDimensions(aa).x;\n y -= ba;\n var ca = k.find(z, \".-cx-PUBLIC-fbMercuryChatTab__container\");\n ba += o.getElementDimensions(ca).x;\n var da = o.getElementDimensions(z), ea = (da.x - ba);\n y -= ea;\n y -= 15;\n return Math.max(y, 0);\n },\n _getTabsToShow: function(x, y) {\n y = Math.max(y, (v + 1));\n function z(oa) {\n return (oa.raised ? v : u);\n };\n var aa = JSON.parse(JSON.stringify(x.tabs)), ba = -1, ca = null;\n if (x.promoted) {\n aa.forEach(function(oa, pa) {\n if ((oa.id === x.promoted)) {\n ba = pa;\n ca = oa;\n }\n ;\n });\n };\n var da = 0, ea = 0, fa = !ca;\n aa.forEach(function(oa, pa) {\n var qa = z(oa);\n oa.leftmostOffset = (da + v);\n da += qa;\n if ((oa.leftmostOffset < y)) {\n ea++;\n };\n fa |= (pa == ba);\n oa.alreadyPlacedPromoted = fa;\n });\n function ga(oa, pa, qa) {\n var ra = {\n };\n for (var sa = 0; (sa < pa); sa++) {\n var ta = oa[sa];\n if ((!ta.alreadyPlacedPromoted && (sa == (pa - 1)))) {\n ra[qa] = true;\n }\n else ra[ta.id] = true;\n ;\n };\n return ra;\n };\n var ha = ga(aa, ea, x.promoted), ia = ga(aa, (ea - 1), x.promoted), ja = null;\n for (var ka in ha) {\n if (!ia[ka]) {\n ja = ka;\n };\n };\n var la = aa[(ea - 1)], ma = (la ? la.leftmostOffset : 0), na = Infinity;\n if ((ea < aa.length)) {\n na = aa[ea].leftmostOffset;\n };\n return {\n nextToHide: ja,\n tabsToShow: ha,\n usedWidth: ma,\n widthToShowNext: na\n };\n }\n });\n e.exports = w;\n});"); |
| // 16053 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s7432a7bbb7e5427efb6bdc5726a83bb5ce36ed02"); |
| // 16054 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"cmK7/\",]);\n}\n;\n;\n__d(\"GenderConst\", [], function(a, b, c, d, e, f) {\n var g = {\n UNKNOWN: 0,\n FEMALE_SINGULAR: 1,\n MALE_SINGULAR: 2,\n FEMALE_SINGULAR_GUESS: 3,\n MALE_SINGULAR_GUESS: 4,\n MIXED_SINGULAR: 5,\n MIXED_PLURAL: 5,\n NEUTER_SINGULAR: 6,\n UNKNOWN_SINGULAR: 7,\n FEMALE_PLURAL: 8,\n MALE_PLURAL: 9,\n NEUTER_PLURAL: 10,\n UNKNOWN_PLURAL: 11\n };\n e.exports = g;\n});\n__d(\"VideoCallingTour\", [\"Arbiter\",\"ArbiterMixin\",\"Chat\",\"ChatSidebar\",\"ChatVisibility\",\"JSBNG__CSS\",\"DOM\",\"PresencePrivacy\",\"Run\",\"Toggler\",\"Vector\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ArbiterMixin\"), i = b(\"Chat\"), j = b(\"ChatSidebar\"), k = b(\"ChatVisibility\"), l = b(\"JSBNG__CSS\"), m = b(\"DOM\"), n = b(\"PresencePrivacy\"), o = b(\"Run\"), p = b(\"Toggler\"), q = b(\"Vector\"), r = b(\"copyProperties\"), s, t, u, v, w = [], x = function() {\n \n };\n function y() {\n if (j.isVisible()) {\n z();\n }\n else if (u) {\n aa();\n }\n \n ;\n ;\n };\n;\n function z() {\n s.setContext(t.getBody());\n ba();\n s.show();\n ca();\n };\n;\n function aa() {\n if (!v) {\n v = p.createInstance(u.getRoot());\n }\n ;\n ;\n var fa = m.scry(u.getRoot(), \"div.fbNubFlyout\")[0];\n if (fa) {\n s.setContext(fa);\n ba();\n s.show();\n ca();\n }\n ;\n ;\n };\n;\n function ba() {\n var fa = q.getElementDimensions(s.getContext()).y;\n s.setOffsetY(((fa * 1125)));\n s.updatePosition();\n };\n;\n function ca() {\n if (u) {\n w.push(u.subscribe(\"hide\", function() {\n da();\n if (!j.isVisible()) {\n s.hide();\n }\n ;\n ;\n }), u.subscribe(\"show\", function() {\n s.show();\n }), u.subscribe(\"resize\", function() {\n ba();\n s.updatePosition();\n }));\n }\n ;\n ;\n w.push(g.subscribe(\"sidebar/show\", z), g.subscribe(\"sidebar/hide\", aa), g.subscribe(\"sidebar/resized\", ba));\n };\n;\n function da() {\n if (v) {\n v.setSticky(false);\n v = null;\n }\n ;\n ;\n };\n;\n function ea() {\n while (w.length) {\n w.pop().unsubscribe();\n ;\n };\n ;\n if (u) {\n da();\n }\n ;\n ;\n s.hide();\n l.show(\"fbVideoCallingGetStarted\");\n };\n;\n r(x, h, {\n start: function(fa) {\n s = fa;\n l.hide(\"fbVideoCallingGetStarted\");\n k.goOnline(function() {\n w.push(n.subscribe(\"privacy-user-presence-changed\", ea));\n o.onLeave(ea);\n i.openBuddyList();\n var ga = null;\n w.push(j.subscribe(\"sidebar/initialized\", function(ha, ia) {\n t = ia;\n JSBNG__clearTimeout(ga);\n ga = y.defer();\n }), x.subscribe(\"videocallingtour/end\", ea));\n w.push(g.subscribe(\"buddylist-nub/initialized\", function(ha, ia) {\n u = ia;\n JSBNG__clearTimeout(ga);\n ga = y.defer();\n }));\n });\n x.inform(\"videocallingtour/start\");\n }\n });\n e.exports = x;\n});\n__d(\"ChatPeopleSuggestionList.react\", [\"ChatSidebarItem.react\",\"fbt\",\"React\",\"ShortProfiles\",\"PresenceStatus\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"ChatSidebarItem.react\"), h = b(\"fbt\"), i = b(\"React\"), j = b(\"ShortProfiles\"), k = b(\"PresenceStatus\"), l = b(\"cx\"), m = i.createClass({\n displayName: \"ChatPeopleSuggestionList\",\n _renderPeopleList: function() {\n var n = [];\n this.props.uids.map(function(o) {\n var p = j.getNow(o);\n if (p) {\n n.push(i.DOM.li(null, g({\n isAdded: false,\n showEditButton: true,\n images: p.thumbSrc,\n JSBNG__name: p.JSBNG__name,\n JSBNG__status: k.get(o),\n onClick: this.props.onClick.curry(o)\n })));\n }\n ;\n ;\n }.bind(this));\n return n;\n },\n render: function() {\n return (i.DOM.div(null, i.DOM.div({\n className: \"-cx-PRIVATE-fbChatOrderedList__header\"\n }, i.DOM.span({\n className: \"-cx-PRIVATE-fbChatOrderedList__headertext\"\n }, \"SUGGESTIONS\")), i.DOM.ul({\n className: \"-cx-PRIVATE-fbChatOrderedList__groupslist\"\n }, this._renderPeopleList())));\n }\n });\n e.exports = m;\n});\n__d(\"Dock\", [\"function-extensions\",\"JSBNG__Event\",\"shield\",\"WebMessengerWidthControl\",\"Arbiter\",\"ArbiterMixin\",\"ChatQuietLinks\",\"JSBNG__CSS\",\"DataStore\",\"DOM\",\"Parent\",\"Style\",\"Toggler\",\"Vector\",\"copyProperties\",\"csx\",\"emptyFunction\",\"ge\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"JSBNG__Event\"), h = b(\"shield\");\n b(\"WebMessengerWidthControl\");\n var i = b(\"Arbiter\"), j = b(\"ArbiterMixin\"), k = b(\"ChatQuietLinks\"), l = b(\"JSBNG__CSS\"), m = b(\"DataStore\"), n = b(\"DOM\"), o = b(\"Parent\"), p = b(\"Style\"), q = b(\"Toggler\"), r = b(\"Vector\"), s = b(\"copyProperties\"), t = b(\"csx\"), u = b(\"emptyFunction\"), v = b(\"ge\");\n function w() {\n \n };\n;\n s(w, j, {\n MIN_HEIGHT: 140,\n INITIAL_FLYOUT_HEIGHT_OFFSET: 10,\n init: function(x) {\n this.init = u;\n this.rootEl = x;\n this.calculateViewportDimensions();\n this.calculateFlyoutHeightOffset();\n k.removeEmptyHrefs(this.rootEl);\n g.listen(x, \"click\", this._onClick.bind(this));\n g.listen(window, \"resize\", this._onWindowResize.bind(this));\n q.subscribe([\"show\",\"hide\",], function(y, z) {\n var aa = z.getActive();\n if (!n.contains(x, aa)) {\n return;\n }\n ;\n ;\n if (l.hasClass(aa, \"fbNub\")) {\n this.notifyNub(aa, y);\n if (((y === \"show\"))) {\n this._resizeNubFlyout(aa);\n }\n ;\n ;\n }\n else {\n var ba = o.byClass(aa, \"fbNubFlyout\");\n if (ba) {\n l.conditionClass(ba, \"menuOpened\", ((y === \"show\")));\n }\n ;\n ;\n }\n ;\n ;\n }.bind(this));\n this.inform(\"init\", {\n }, i.BEHAVIOR_PERSISTENT);\n },\n calculateViewportDimensions: function() {\n return (this.viewportDimensions = r.getViewportDimensions());\n },\n calculateFlyoutHeightOffset: function() {\n this.flyoutHeightOffset = ((this.INITIAL_FLYOUT_HEIGHT_OFFSET + r.getElementDimensions(this.rootEl).y));\n var x = v(\"blueBar\");\n if (x) {\n var y = ((p.isFixed(x) ? \"viewport\" : \"JSBNG__document\"));\n this.flyoutHeightOffset += ((r.getElementPosition(x, y).y + r.getElementDimensions(x).y));\n }\n ;\n ;\n },\n toggle: function(x) {\n var y = this._findFlyout(x);\n if (!y) {\n return;\n }\n ;\n ;\n this.subscribe(\"init\", function() {\n q.toggle(x);\n });\n },\n show: function(x) {\n this.subscribe(\"init\", function() {\n q.show(x);\n });\n },\n showNub: function(x) {\n l.show(x);\n },\n hide: function(x) {\n this.subscribe(\"init\", function() {\n var y = q.getInstance(x);\n ((n.contains(x, y.getActive()) && y.hide()));\n });\n },\n hideNub: function(x) {\n l.hide(x);\n this.hide(x);\n },\n setUseMaxHeight: function(x, y) {\n l.conditionClass(x, \"maxHeight\", ((y !== false)));\n this._resizeNubFlyout(x);\n },\n _resizeNubFlyout: function(x) {\n var y = this._findFlyout(x);\n if (((!y || !((l.hasClass(x, \"openToggler\") || l.hasClass(x, \"opened\")))))) {\n return;\n }\n ;\n ;\n var z = n.JSBNG__find(y, \"div.fbNubFlyoutOuter\"), aa = n.JSBNG__find(z, \"div.fbNubFlyoutInner\"), ba = n.JSBNG__find(aa, \"div.fbNubFlyoutBody\"), ca = ba.scrollTop, da = ba.offsetHeight;\n p.set(ba, \"height\", \"auto\");\n var ea = r.getElementDimensions(y), fa = r.getElementDimensions(ba), ga = this.getMaxFlyoutHeight(x);\n p.set(y, \"max-height\", ((ga + \"px\")));\n p.set(z, \"max-height\", ((ga + \"px\")));\n ea = r.getElementDimensions(y);\n var ha = r.getElementDimensions(aa), ia = ((ha.y - fa.y)), ja = ((ea.y - ia)), ka = parseInt(((ba.style.height || ba.clientHeight)), 10), la = ((ja !== ka));\n if (((((ea.y > ia)) && la))) {\n p.set(ba, \"height\", ((ja + \"px\")));\n }\n ;\n ;\n l.removeClass(y, \"swapDirection\");\n var ma = r.getElementPosition(y).x;\n l.conditionClass(y, \"swapDirection\", function() {\n if (((ma < 0))) {\n return true;\n }\n ;\n ;\n return ((((ma + ea.x)) > this.viewportDimensions.x));\n }.bind(this)());\n if (((la && ((((ca + da)) >= fa.y))))) {\n ba.scrollTop = ba.scrollHeight;\n }\n else ba.scrollTop = ca;\n ;\n ;\n this.notifyNub(x, \"resize\");\n },\n getMaxFlyoutHeight: function(x) {\n var y = this._findFlyout(x), z = r.getElementPosition(y, \"viewport\"), aa = r.getElementDimensions(y), ba = ((Math.max(this.MIN_HEIGHT, ((this.viewportDimensions.y - this.flyoutHeightOffset))) - ((((this.viewportDimensions.y - z.y)) - aa.y))));\n return Math.max(ba, 0);\n },\n resizeAllFlyouts: function() {\n var x = n.scry(this.rootEl, \"div.-cx-PRIVATE-fbNub__root.openToggler\");\n x = x.concat(n.scry(this.rootEl, \"div.-cx-PRIVATE-fbNub__root.opened\"));\n var y = x.length;\n while (y--) {\n this._resizeNubFlyout(x[y]);\n ;\n };\n ;\n },\n _onClick: function(JSBNG__event) {\n var x = JSBNG__event.getTarget(), y = o.byClass(x, \"fbNub\");\n if (y) {\n if (o.byClass(x, \"fbNubFlyoutTitlebar\")) {\n var z = o.byTag(x, \"a\"), aa = ((((x.nodeName == \"INPUT\")) && ((x.getAttribute(\"type\") == \"submit\"))));\n if (((!z && !aa))) {\n this.hide(y);\n return false;\n }\n ;\n ;\n }\n ;\n ;\n this.notifyNub(y, \"click\");\n }\n ;\n ;\n },\n _onWindowResize: function(JSBNG__event) {\n this.calculateViewportDimensions();\n this.resizeAllFlyouts();\n },\n _findFlyout: function(x) {\n return ((l.hasClass(x, \"fbNubFlyout\") ? x : ((n.scry(x, \"div.fbNubFlyout\")[0] || null))));\n },\n registerNubController: function(x, y) {\n m.set(x, \"dock:nub:controller\", y);\n y.subscribe(\"nub/button/content-changed\", h(this.inform, this, \"resize\", x));\n y.subscribe(\"nub/flyout/content-changed\", h(this._resizeNubFlyout, this, x));\n },\n unregisterNubController: function(x) {\n m.remove(x, \"dock:nub:controller\");\n },\n notifyNub: function(x, y, z) {\n var aa = m.get(x, \"dock:nub:controller\");\n ((aa && aa.inform(y, z)));\n }\n });\n e.exports = ((a.Dock || w));\n});\n__d(\"NubController\", [\"ArbiterMixin\",\"Dock\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"Dock\"), i = b(\"copyProperties\");\n function j() {\n \n };\n;\n i(j.prototype, g, {\n init: function(k) {\n this.el = k;\n h.registerNubController(k, this);\n return this;\n },\n buttonContentChanged: function() {\n this.inform(\"nub/button/content-changed\");\n },\n flyoutContentChanged: function() {\n this.inform(\"nub/flyout/content-changed\");\n },\n hide: function() {\n h.hide(this.el);\n },\n show: function() {\n h.show(this.el);\n }\n });\n e.exports = j;\n});\n__d(\"ChatApp\", [\"JSBNG__CSS\",\"JSLogger\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = b(\"JSLogger\"), i = false, j = false, k = false, l = null, m = {\n init: function(n, o, p) {\n if (l) {\n h.create(\"chat_app\").error(\"repeated_init\");\n return;\n }\n ;\n ;\n l = n;\n d([\"TabsViewport\",\"ChatTabController\",\"ChatTabViewCoordinator\",\"MercuryServerRequests\",\"MercuryChannelHandler\",\"MercuryStateCheck\",], function(q, r, s, t, u, v) {\n t.get().handleUpdate(p);\n this.tabsViewport = new q(o);\n this.tabController = new r(this.tabsViewport);\n this.tabViewCoordinator = new s(o, this.tabsViewport);\n i = j = true;\n }.bind(this));\n },\n hide: function() {\n if (((!i || k))) {\n return;\n }\n ;\n ;\n g.hide(l);\n k = true;\n },\n unhide: function() {\n if (i) {\n if (k) {\n g.show(l);\n this.tabsViewport.checkWidth();\n d([\"Dock\",], function(n) {\n n.resizeAllFlyouts();\n });\n k = false;\n }\n ;\n ;\n }\n else if (!j) {\n d([\"UIPagelet\",], function(n) {\n n.loadFromEndpoint(\"ChatTabsPagelet\", \"ChatTabsPagelet\");\n n.loadFromEndpoint(\"BuddylistPagelet\", \"BuddylistPagelet\");\n });\n j = true;\n }\n \n ;\n ;\n }\n };\n e.exports = m;\n});\n__d(\"DataViewPolyfill\", [\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\");\n function h(i, j, k) {\n if (((j === undefined))) {\n this._ba = new JSBNG__Uint8Array(i);\n }\n else if (((k === undefined))) {\n this._ba = new JSBNG__Uint8Array(i, j);\n }\n else this._ba = new JSBNG__Uint8Array(i, j, k);\n \n ;\n ;\n this.byteLength = this._ba.byteLength;\n };\n;\n g(h, {\n isSupported: function() {\n return !!a.JSBNG__Uint8Array;\n }\n });\n g(h.prototype, {\n getUint8: function(i) {\n if (((i >= this._ba.length))) {\n throw new Error(\"Trying to read beyond bounds of DataViewPolyfill\");\n }\n ;\n ;\n return this._ba[i];\n },\n getUint16: function(i, j) {\n var k = this.getUint8(i), l = this.getUint8(((i + 1)));\n return ((j ? ((((l * 256)) + k)) : ((((k * 256)) + l))));\n },\n getUint32: function(i, j) {\n var k = this.getUint8(i), l = this.getUint8(((i + 1))), m = this.getUint8(((i + 2))), n = this.getUint8(((i + 3)));\n return ((j ? ((((((((((((n * 256)) + m)) * 256)) + l)) * 256)) + k)) : ((((((((((((k * 256)) + l)) * 256)) + m)) * 256)) + n))));\n }\n });\n e.exports = h;\n});\n__d(\"getImageSize\", [\"DataViewPolyfill\",], function(a, b, c, d, e, f) {\n var g = b(\"DataViewPolyfill\"), h = ((a.JSBNG__DataView || g));\n function i(m) {\n return {\n width: m.getUint16(6, true),\n height: m.getUint16(8, true)\n };\n };\n;\n function j(m) {\n return {\n width: m.getUint32(16, false),\n height: m.getUint32(20, false)\n };\n };\n;\n function k(m) {\n var n = m.byteLength, o = 2;\n while (((o < n))) {\n var p = m.getUint16(o, false);\n o += 2;\n if (((((p == 65472)) || ((p == 65474))))) {\n return {\n width: m.getUint16(((o + 5)), false),\n height: m.getUint16(((o + 3)), false)\n };\n }\n else o += m.getUint16(o, false);\n ;\n ;\n };\n ;\n return null;\n };\n;\n function l(m) {\n var n = new h(m);\n if (((((n.getUint8(0) == 255)) && ((n.getUint8(1) == 216))))) {\n return k(n);\n }\n ;\n ;\n if (((((((n.getUint8(0) == 71)) && ((n.getUint8(1) == 73)))) && ((n.getUint8(2) == 70))))) {\n return i(n);\n }\n ;\n ;\n if (((((((((n.getUint8(0) == 137)) && ((n.getUint8(1) == 80)))) && ((n.getUint8(2) == 78)))) && ((n.getUint8(3) == 71))))) {\n return j(n);\n }\n ;\n ;\n return null;\n };\n;\n e.exports = l;\n l.gif = i;\n l.png = j;\n l.jpeg = k;\n});\n__d(\"ChatAutoSendPhotoUploader\", [\"ArbiterMixin\",\"DOM\",\"JSBNG__Event\",\"FileForm\",\"FileFormResetOnSubmit\",\"FileInput\",\"FormSubmitOnChange\",\"MercuryAttachmentType\",\"SubscriptionsHandler\",\"copyProperties\",\"csx\",\"getImageSize\",\"removeFromArray\",\"shield\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"DOM\"), i = b(\"JSBNG__Event\"), j = b(\"FileForm\"), k = b(\"FileFormResetOnSubmit\"), l = b(\"FileInput\"), m = b(\"FormSubmitOnChange\"), n = b(\"MercuryAttachmentType\"), o = b(\"SubscriptionsHandler\"), p = b(\"copyProperties\"), q = b(\"csx\"), r = b(\"getImageSize\"), s = b(\"removeFromArray\"), t = b(\"shield\"), u = 0;\n function v(w, x, y) {\n this._idElem = y;\n this._input = x;\n this._subscriptionsHandler = new o();\n this._uploadBatches = [];\n var z = new j(w, [m,k,]), aa = h.JSBNG__find(w, \".-cx-PRIVATE-mercuryFileUploader__root\"), ba = h.JSBNG__find(aa, \".-cx-PRIVATE-mercuryFileUploader__button\");\n new l(aa, ba, x);\n this._subscriptionsHandler.addSubscriptions(z.subscribe(\"submit\", this._onFileSubmit.bind(this)), z.subscribe(\"success\", this._onFileUploadSuccess.bind(this)), z.subscribe(\"failure\", this._onFileUploadFailure.bind(this)), i.listen(ba, \"click\", t(this.inform, this, \"open\")));\n };\n;\n p(v.prototype, g, {\n isUploading: function() {\n return ((this._uploadBatches.length > 0));\n },\n destroy: function() {\n this._subscriptionsHandler.release();\n },\n _getPreviewAttachment: function(w) {\n var x = {\n attach_type: n.PHOTO,\n preview_uploading: true\n };\n if (w) {\n x.preview_width = w.width;\n x.preview_height = w.height;\n }\n ;\n ;\n return x;\n },\n _onFileSubmit: function() {\n u += 1;\n var w = ((\"upload_\" + u));\n this._idElem.value = w;\n this._uploadBatches.push(w);\n if (((((((((typeof JSBNG__FileReader !== \"undefined\")) && JSBNG__FileReader.prototype.readAsArrayBuffer)) && this._input.files)) && ((this._input.files.length === 1))))) {\n var x = new JSBNG__FileReader();\n x.JSBNG__onload = function() {\n this.inform(\"submit\", {\n upload_id: w,\n preview_attachments: [this._getPreviewAttachment(r(x.result)),]\n });\n }.bind(this);\n x.JSBNG__onerror = function() {\n this.inform(\"submit\", {\n upload_id: w,\n preview_attachments: [this._getPreviewAttachment(null),]\n });\n }.bind(this);\n x.readAsArrayBuffer(this._input.files[0]);\n }\n else {\n var y = 1;\n if (this._input.files) {\n y = this._input.files.length;\n }\n ;\n ;\n var z = [];\n for (var aa = 0; ((aa < y)); ++aa) {\n z.push(this._getPreviewAttachment(null));\n ;\n };\n ;\n this.inform(\"submit\", {\n upload_id: w,\n preview_attachments: z\n });\n }\n ;\n ;\n },\n _onFileUploadSuccess: function(JSBNG__event, w) {\n var x = w.response.getPayload(), y = x.uploadID;\n s(this._uploadBatches, y);\n var z = [];\n x.metadata.forEach(function(aa) {\n z.push(aa.image_id);\n });\n this.inform(\"all-uploads-completed\", {\n upload_id: x.uploadID,\n image_ids: z\n });\n },\n _onFileUploadFailure: function(JSBNG__event, w) {\n var x = this._uploadBatches[((this._uploadBatches.length - 1))];\n s(this._uploadBatches, x);\n this.inform(\"all-uploads-failed\", {\n upload_id: x\n });\n }\n });\n e.exports = v;\n});\n__d(\"VideoCallPromo\", [\"ArbiterMixin\",\"AsyncRequest\",\"ChatConfig\",\"ChatVisibility\",\"LegacyContextualDialog\",\"JSBNG__CSS\",\"MercuryParticipants\",\"MercuryThreads\",\"ChatTabTemplates\",\"VideoCallCore\",\"copyProperties\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"AsyncRequest\"), i = b(\"ChatConfig\"), j = b(\"ChatVisibility\"), k = b(\"LegacyContextualDialog\"), l = b(\"JSBNG__CSS\"), m = b(\"MercuryParticipants\"), n = b(\"MercuryThreads\").get(), o = b(\"ChatTabTemplates\"), p = b(\"VideoCallCore\"), q = b(\"copyProperties\"), r = b(\"emptyFunction\");\n function s() {\n this._dialog = null;\n };\n;\n function t(v) {\n if (!((p.isSupported() && i.get(\"video.show_promo\")))) {\n return false;\n }\n ;\n ;\n var w = n.getCanonicalUserInThread(v);\n if (!w) {\n return false;\n }\n ;\n ;\n return ((j.isOnline() && p.availableForCall(w)));\n };\n;\n function u(v) {\n new h().setURI(\"/ajax/chat/video/log_promo.php\").setData({\n viewedUserID: v\n }).setAllowCrossPageTransition(true).setErrorHandler(r).send();\n };\n;\n q(s.prototype, g);\n q(s.prototype, {\n render: function(v, w) {\n var x = t(w);\n if (!x) {\n return;\n }\n ;\n ;\n var y = n.getCanonicalUserInThread(w);\n m.get(((\"fbid:\" + y)), function(z) {\n if (!z.call_promo) {\n return;\n }\n ;\n ;\n var aa = o[\":fb:mercury:call:promo\"].build();\n this._dialog = new k();\n this._dialog.init(aa.getRoot()).setWidth(250).setAlignH(\"center\").setContext(v).show();\n l.addClass(this._dialog.getRoot(), \"uiContextualDialogWithFooterArrowBottom\");\n l.addClass(v, \"video_call_promo\");\n u(n.getCanonicalUserInThread(w));\n this.inform(\"chat/dialog-rendered\", {\n dialog: this,\n thread_id: w\n });\n }.bind(this));\n },\n updatePosition: function() {\n if (((this._dialog && this._dialog.isShown()))) {\n this._dialog.updatePosition();\n }\n ;\n ;\n },\n hide: function() {\n if (((this._dialog && this._dialog.isShown()))) {\n this._dialog.hide();\n this._dialog = null;\n }\n ;\n ;\n }\n });\n e.exports = s;\n});\n__d(\"VideoCallTourDialog\", [\"ArbiterMixin\",\"LegacyContextualDialog\",\"JSBNG__CSS\",\"MercuryThreads\",\"ChatTabTemplates\",\"VideoCallCore\",\"VideoCallingTour\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"LegacyContextualDialog\"), i = b(\"JSBNG__CSS\"), j = b(\"MercuryThreads\").get(), k = b(\"ChatTabTemplates\"), l = b(\"VideoCallCore\"), m = b(\"VideoCallingTour\"), n = b(\"copyProperties\");\n function o() {\n this._dialog = null;\n };\n;\n n(o.prototype, g);\n n(o.prototype, {\n render: function(p, q) {\n var r = j.getCanonicalUserInThread(q);\n if (((!r || !l.availableForCall(r)))) {\n return;\n }\n ;\n ;\n var s = k[\":fb:mercury:call:tour\"].build();\n this._dialog = new h();\n this._dialog.init(s.getRoot()).setWidth(250).setAlignH(\"center\").setContext(p).show();\n i.addClass(this._dialog.getRoot(), \"uiContextualDialogWithFooterArrowBottom\");\n i.addClass(p, \"video_call_tour\");\n this.inform(\"chat/dialog-rendered\", {\n dialog: this,\n thread_id: q\n });\n m.inform(\"videocallingtour/end\");\n },\n updatePosition: function() {\n if (((this._dialog && this._dialog.isShown()))) {\n this._dialog.updatePosition();\n }\n ;\n ;\n },\n hide: function() {\n if (((this._dialog && this._dialog.isShown()))) {\n this._dialog.hide();\n this._dialog = null;\n }\n ;\n ;\n }\n });\n e.exports = o;\n});\n__d(\"ChatContextualDialogController\", [\"JSBNG__Event\",\"ArbiterMixin\",\"ChatTabModel\",\"VideoCallingTour\",\"VideoCallPromo\",\"VideoCallTourDialog\",\"copyProperties\",\"setTimeoutAcrossTransitions\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"ArbiterMixin\"), i = b(\"ChatTabModel\"), j = b(\"VideoCallingTour\"), k = b(\"VideoCallPromo\"), l = b(\"VideoCallTourDialog\"), m = b(\"copyProperties\"), n = b(\"setTimeoutAcrossTransitions\"), o = 60000, p = false, q = false, r = function(y, z) {\n this._videoCallPromo = new k();\n this._videoCallTour = new l();\n this._threadID = y;\n this._tabMainElement = z;\n this._openDialog = null;\n this._subscriptionTokens = [];\n this._scrollListener = null;\n this._timeout = null;\n };\n function s(y, JSBNG__event, z) {\n if (y._openDialog) {\n y._openDialog.updatePosition();\n }\n ;\n ;\n };\n;\n function t(y) {\n if (y._openDialog) {\n y._openDialog.updatePosition();\n }\n ;\n ;\n };\n;\n function u(y) {\n if (y._openDialog) {\n y._openDialog.hide();\n y._openDialog = null;\n }\n ;\n ;\n if (y._timeout) {\n JSBNG__clearTimeout(y._timeout);\n y._timeout = null;\n }\n ;\n ;\n while (y._subscriptionTokens.length) {\n y._subscriptionTokens.pop().unsubscribe();\n ;\n };\n ;\n if (y._scrollListener) {\n y._scrollListener.remove();\n y._scrollListener = null;\n }\n ;\n ;\n };\n;\n function v(y, JSBNG__event, z) {\n if (((z.thread_id === y._threadID))) {\n y._openDialog = z.dialog;\n p = true;\n x(y);\n y._timeout = n(y.destroy.bind(y, y._threadID), o);\n y._scrollListener = g.listen(window, \"JSBNG__scroll\", t.curry(y));\n }\n ;\n ;\n };\n;\n function w(y, z) {\n if (!y._openDialog) {\n y._subscriptionTokens.push(z.subscribe(\"chat/dialog-rendered\", v.curry(y)));\n z.render(y._tabMainElement, y._threadID);\n }\n ;\n ;\n };\n;\n function x(y) {\n y._subscriptionTokens.push(i.subscribe(\"chat/tabs-changed\", s.curry(y)), r.subscribe(\"dialog/close-all\", u.curry(y)));\n };\n;\n m(r, h);\n m(r.prototype, {\n destroy: function() {\n u(this);\n },\n tabFocused: function() {\n if (q) {\n w(this, this._videoCallTour);\n return;\n }\n ;\n ;\n if (!p) {\n w(this, this._videoCallPromo);\n }\n ;\n ;\n },\n tabNotActive: function() {\n u(this);\n },\n hideVideoCallouts: function() {\n u(this);\n }\n });\n j.subscribe(\"videocallingtour/start\", function() {\n q = true;\n r.inform(\"dialog/close-all\");\n });\n j.subscribe(\"videocallingtour/end\", function() {\n q = false;\n });\n e.exports = r;\n});\n__d(\"ChatPrivacyActionController\", [\"ChatVisibility\",\"JSLogger\",\"PresencePrivacy\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ChatVisibility\"), h = b(\"JSLogger\"), i = b(\"PresencePrivacy\"), j = b(\"copyProperties\"), k = function(l, m) {\n this._userID = l;\n this._logger = h.create(\"blackbird\");\n this._getState = function() {\n if (g.isOnline()) {\n return ((i.allows(this._userID) ? k.NORMAL : k.BLOCKED));\n }\n ;\n ;\n return k.OFFLINE;\n };\n this._togglePrivacy = function() {\n var n = this._getState();\n switch (this._getState()) {\n case k.OFFLINE:\n if (g.isOnline()) {\n this._logger.error(\"tabs_already_online\");\n break;\n }\n ;\n ;\n this._logger.log(\"tabs_go_online\", {\n tab_id: this._userID\n });\n g.goOnline(function() {\n if (!i.allows(this._userID)) {\n if (((this._getState() !== k.BLOCKED))) {\n this._logger.error(\"privacy_action_controller_blocked_inconsistency\");\n }\n ;\n ;\n this._togglePrivacy();\n }\n ;\n ;\n }.bind(this));\n break;\n case k.BLOCKED:\n i.allow(this._userID);\n this._logger.log(\"tabs_unblock\", {\n tab_id: this._userID\n });\n break;\n case k.NORMAL:\n i.disallow(this._userID);\n this._logger.log(\"tabs_block\", {\n tab_id: this._userID\n });\n break;\n };\n ;\n };\n (function() {\n var n = function() {\n ((m && m(this._getState())));\n }.bind(this);\n n();\n this._subscribeToken = i.subscribe(\"privacy-changed\", n);\n }.bind(this)).defer();\n };\n k.OFFLINE = \"offline\";\n k.BLOCKED = \"blocked\";\n k.NORMAL = \"normal\";\n j(k.prototype, {\n togglePrivacy: function() {\n this._logger.log(\"gear_menu_toggle_privacy\", {\n tab_id: this._userID\n });\n this._togglePrivacy();\n },\n destroy: function() {\n i.unsubscribe(this._subscribeToken);\n }\n });\n e.exports = k;\n});\n__d(\"MercuryTypingIndicator\", [\"Animation\",\"JSBNG__CSS\",\"DOM\",\"MercuryTypingReceiver\",\"MercuryParticipants\",\"Style\",\"ChatTabTemplates\",\"MercuryThreadInformer\",\"Tooltip\",\"copyProperties\",\"cx\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"JSBNG__CSS\"), i = b(\"DOM\"), j = b(\"MercuryTypingReceiver\"), k = b(\"MercuryParticipants\"), l = b(\"Style\"), m = b(\"ChatTabTemplates\"), n = b(\"MercuryThreadInformer\").get(), o = b(\"Tooltip\"), p = b(\"copyProperties\"), q = b(\"cx\"), r = b(\"tx\"), s = [];\n n.subscribe(\"messages-received\", function(v, w) {\n s.forEach(function(x) {\n var y = w[x._threadID];\n ((y && x.receivedMessages(y)));\n });\n });\n j.subscribe(\"state-changed\", function(v, w) {\n s.forEach(function(x) {\n var y = w[x._threadID];\n ((y && x._handleStateChanged(y)));\n });\n });\n function t(v) {\n var w = m[\":fb:chat:conversation:message-group\"].build(), x = m[\":fb:mercury:typing-indicator:typing\"].build();\n h.addClass(w.getRoot(), \"-cx-PRIVATE-fbChatMessage__fromothers\");\n var y = w.getNode(\"profileLink\");\n o.set(y, v.JSBNG__name, \"left\");\n y.href = v.href;\n w.setNodeContent(\"profileName\", v.JSBNG__name);\n w.setNodeProperty(\"profilePhoto\", \"src\", v.image_src);\n var z = r._(\"{name} is typing...\", {\n JSBNG__name: v.short_name\n });\n o.set(x.getRoot(), z, \"above\");\n i.appendContent(w.getNode(\"messages\"), x.getRoot());\n return w;\n };\n;\n function u(v, w, x) {\n this._animations = {\n };\n this._activeUsers = {\n };\n this._typingIndicator = w;\n this._messagesView = x;\n this._threadID = v;\n this._subscription = j.subscribe(\"state-changed\", function(y, z) {\n var aa = z[this._threadID];\n ((aa && this._handleStateChanged(aa)));\n }.bind(this));\n s.push(this);\n };\n;\n p(u.prototype, {\n destroy: function() {\n Object.keys(this._activeUsers).forEach(this._removeUserBubble.bind(this));\n this._controller.destroy();\n s.remove(this);\n },\n receivedMessages: function(v) {\n v.forEach(function(w) {\n if (!k.isAuthor(w.author)) {\n this._removeUserBubble(w.author);\n }\n ;\n ;\n }.bind(this));\n },\n _handleStateChanged: function(v) {\n {\n var fin289keys = ((window.top.JSBNG_Replay.forInKeys)((this._activeUsers))), fin289i = (0);\n var w;\n for (; (fin289i < fin289keys.length); (fin289i++)) {\n ((w) = (fin289keys[fin289i]));\n {\n if (((v.indexOf(w) === -1))) {\n this._slideOutUserBubble(w);\n delete this._activeUsers[w];\n }\n ;\n ;\n };\n };\n };\n ;\n if (v.length) {\n k.getMulti(v, function(x) {\n var y = this._messagesView.isScrolledToBottom(), z = {\n };\n {\n var fin290keys = ((window.top.JSBNG_Replay.forInKeys)((x))), fin290i = (0);\n var aa;\n for (; (fin290i < fin290keys.length); (fin290i++)) {\n ((aa) = (fin290keys[fin290i]));\n {\n var ba = this._activeUsers[aa];\n z[aa] = ((ba || t(x[aa]).getRoot()));\n if (!ba) {\n i.appendContent(this._typingIndicator, z[aa]);\n }\n ;\n ;\n };\n };\n };\n ;\n var ca = ((Object.keys(z).length > 0));\n ((y && this._messagesView.scrollToBottom(ca)));\n this._activeUsers = z;\n }.bind(this));\n }\n ;\n ;\n },\n _removeUserBubble: function(v, w) {\n var x = this._getCurrentAnimation(v, w);\n if (x) {\n x.animation.JSBNG__stop();\n i.remove(x.elem);\n delete this._animations[v];\n }\n ;\n ;\n if (((v in this._activeUsers))) {\n i.remove(this._activeUsers[v]);\n delete this._activeUsers[v];\n }\n ;\n ;\n ((w && i.remove(w)));\n },\n _slideOutUserBubble: function(v) {\n var w = this._activeUsers[v];\n if (this._getCurrentAnimation(v, w)) {\n return;\n }\n else if (w) {\n l.set(w, \"overflow\", \"hidden\");\n var x = (new g(w)).from(\"opacity\", 1).from(\"height\", w.offsetHeight).to(\"height\", 0).to(\"opacity\", 0).ease(g.ease.end).duration(250).ondone(this._removeUserBubble.bind(this, v, w)).go();\n this._animations[v] = {\n animation: x,\n elem: w\n };\n }\n \n ;\n ;\n },\n _getCurrentAnimation: function(v, w) {\n if (((this._animations[v] && ((!w || ((this._animations[v].elem === w))))))) {\n return this._animations[v];\n }\n ;\n ;\n }\n });\n e.exports = u;\n});\n__d(\"ChatTabMessagesView\", [\"JSXDOM\",\"Animation\",\"Arbiter\",\"ArbiterMixin\",\"MercuryAttachment\",\"MercuryAttachmentRenderer\",\"ChannelConstants\",\"ChatConfig\",\"ChatVisibility\",\"createArrayFrom\",\"JSBNG__CSS\",\"DOM\",\"Env\",\"JSBNG__Event\",\"JoinableConversationMessageFilter\",\"LiveTimer\",\"MercuryActionTypeConstants\",\"MercuryAPIArgsSource\",\"MercuryLastMessageIndicator\",\"MercuryLogMessageType\",\"MercurySourceType\",\"shield\",\"MercuryMessages\",\"MercuryServerRequests\",\"MercuryThreadMetadataRawRenderer\",\"MercuryThreadMetadataRenderer\",\"MercuryThreads\",\"MercuryThreadlistConstants\",\"MercuryTypingIndicator\",\"MercuryMessageRenderer\",\"Parent\",\"MercuryParticipants\",\"React\",\"ServerTime\",\"MercuryStatusTemplates\",\"Style\",\"SubscriptionsHandler\",\"ChatTabTemplates\",\"MercuryThreadInformer\",\"Timestamp.react\",\"Tooltip\",\"UserAgent\",\"VideoCallCore\",\"copyProperties\",\"csx\",\"cx\",\"extendArray\",\"formatDate\",\"isRTL\",\"removeFromArray\",\"throttle\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSXDOM\"), h = b(\"Animation\"), i = b(\"Arbiter\"), j = b(\"ArbiterMixin\"), k = b(\"MercuryAttachment\"), l = b(\"MercuryAttachmentRenderer\"), m = b(\"ChannelConstants\"), n = b(\"ChatConfig\"), o = b(\"ChatVisibility\"), p = b(\"createArrayFrom\"), q = b(\"JSBNG__CSS\"), r = b(\"DOM\"), s = b(\"Env\"), t = b(\"JSBNG__Event\"), u = b(\"JoinableConversationMessageFilter\"), v = b(\"LiveTimer\"), w = b(\"MercuryActionTypeConstants\"), x = b(\"MercuryAPIArgsSource\"), y = b(\"MercuryLastMessageIndicator\"), z = b(\"MercuryLogMessageType\"), aa = b(\"MercurySourceType\"), ba = b(\"shield\"), ca = b(\"MercuryMessages\").get(), da = b(\"MercuryServerRequests\").get(), ea = b(\"MercuryThreadMetadataRawRenderer\"), fa = b(\"MercuryThreadMetadataRenderer\").get(), ga = b(\"MercuryThreads\").get(), ha = b(\"MercuryThreadlistConstants\"), ia = b(\"MercuryTypingIndicator\"), ja = b(\"MercuryMessageRenderer\"), ka = b(\"Parent\"), la = b(\"MercuryParticipants\"), ma = b(\"React\"), na = b(\"ServerTime\"), oa = b(\"MercuryStatusTemplates\"), pa = b(\"Style\"), qa = b(\"SubscriptionsHandler\"), ra = b(\"ChatTabTemplates\"), sa = b(\"MercuryThreadInformer\").get(), ta = b(\"Timestamp.react\"), ua = b(\"Tooltip\"), va = b(\"UserAgent\"), wa = b(\"VideoCallCore\"), xa = b(\"copyProperties\"), ya = b(\"csx\"), za = b(\"cx\"), ab = b(\"extendArray\"), bb = b(\"formatDate\"), cb = b(\"isRTL\"), db = b(\"removeFromArray\"), eb = b(\"throttle\"), fb = b(\"tx\"), gb, hb = 34, ib = ((((1000 * 60)) * 60)), jb = 70, kb = null, lb = 20;\n function mb(wb) {\n return bb(new JSBNG__Date(wb), ((n.get(\"24h_times\") ? \"H:i\" : \"g:ia\")));\n };\n;\n function nb(wb) {\n var xb = ra[\":fb:chat:conversation:message-group\"].build(), yb = xb.getNode(\"profileLink\"), zb = n.get(\"chat_tab_bubbles\"), ac = la.isAuthor(wb.author), bc = da.tokenizeThreadID(wb.thread_id), cc = ((bc.type !== \"user\")), dc = ((!ac || !zb));\n if (!zb) {\n xb.setNodeContent(\"timestamp\", mb(wb.timestamp));\n }\n ;\n ;\n q.conditionClass(xb.getRoot(), \"-cx-PRIVATE-fbChatMessage__fromothers\", ((!ac && zb)));\n q.conditionClass(xb.getRoot(), \"-cx-PRIVATE-fbChatMessageGroup__withprofilename\", ((((cc && !ac)) && zb)));\n q.conditionShow(yb, dc);\n la.get(wb.author, function(ec) {\n if (dc) {\n yb.href = ec.href;\n var fc = ((ac ? \"You\" : ec.JSBNG__name));\n if (((!ac && zb))) {\n fc = g.div({\n className: \"-cx-PRIVATE-fbChatMessageGroup__tooltipcontainer\"\n }, g.div({\n className: \"-cx-PRIVATE-fbChatMessageGroup__timestamptooltip\"\n }, mb(wb.timestamp)), ec.JSBNG__name);\n }\n ;\n ;\n ua.set(yb, fc, \"left\");\n if (((((!ac && zb)) && cc))) {\n xb.setNodeContent(\"profileName\", ec.JSBNG__name);\n }\n ;\n ;\n xb.setNodeProperty(\"profilePhoto\", \"src\", ec.image_src);\n }\n ;\n ;\n });\n return xb;\n };\n;\n function ob(wb) {\n var xb = ra[\":fb:chat:conversation:message:event\"].build(), yb = n.get(\"chat_tab_bubbles\"), zb = mb(wb.timestamp);\n if (yb) {\n xb.getRoot().setAttribute(\"title\", zb);\n }\n else xb.setNodeContent(\"timestamp\", zb);\n ;\n ;\n ja.renderLogMessage(xb.getNode(\"icon\"), xb.getNode(\"message\"), xb.getNode(\"attachment\"), wb);\n var ac = qb(wb);\n if (ac) {\n r.appendContent(xb.getNode(\"message\"), ac);\n }\n ;\n ;\n return xb.getRoot();\n };\n;\n function pb(wb, xb) {\n if (!n.get(\"chat_tab_bubbles\")) {\n return;\n }\n ;\n ;\n if (((kb === null))) {\n var yb = xb.childNodes[0];\n pa.set(xb, \"overflow\", \"JSBNG__scroll\");\n kb = ((yb.clientWidth - jb));\n pa.set(xb, \"overflow\", \"\");\n }\n ;\n ;\n if (!q.hasClass(wb, \"-cx-PRIVATE-fbChatMessage__root\")) {\n var zb = r.scry(wb, \".-cx-PRIVATE-fbChatMessage__root\");\n if (((zb.length === 1))) {\n wb = zb[0];\n }\n else return\n ;\n }\n ;\n ;\n pa.set(wb, \"max-width\", ((kb + \"px\")));\n var ac, bc, cc = wb.firstChild;\n if (((((wb.childNodes.length === 1)) && cc.getAttribute(\"data-measureme\")))) {\n ac = cc.getClientRects();\n var dc = cc.offsetHeight;\n if (((((ac && ((ac.length > 1)))) && ((ac[0].height < dc))))) {\n bc = true;\n if (!gb) {\n r.remove(cc);\n gb = wb.offsetWidth;\n r.appendContent(wb, cc);\n }\n ;\n ;\n var ec = cc.offsetWidth, fc = ((((wb.offsetWidth - ec)) - gb));\n if (((fc > 0))) {\n pa.set(wb, \"max-width\", ((ec + \"px\")));\n }\n ;\n ;\n }\n ;\n ;\n }\n ;\n ;\n var gc = ka.byClass(wb, \"-cx-PRIVATE-fbChatMessageGroup__withprofilename\");\n if (gc) {\n q.conditionClass(gc, \"-cx-PRIVATE-fbChatMessageGroup__onelineunderprofilename\", ((ac ? !bc : ((wb.offsetHeight < hb)))));\n }\n ;\n ;\n };\n;\n function qb(wb) {\n var xb, yb;\n if (((wb.log_message_type == z.VIDEO_CALL))) {\n if (((wb.log_message_data.event_name == \"install_canceled\"))) {\n xb = r.tx._(\"Retry setup and call back.\");\n yb = \"callback_cancelinstall_link\";\n return rb(xb, wb.thread_id, wb.log_message_data.to, yb);\n }\n else if (((((!wb.log_message_data.event_name && ((wb.log_message_data.callee == la.user)))) && !wb.log_message_data.answered))) {\n xb = r.tx._(\"Call Back\");\n yb = \"callback_link\";\n return rb(xb, wb.thread_id, wb.log_message_data.caller.split(\":\")[1], yb);\n }\n \n ;\n }\n ;\n ;\n return null;\n };\n;\n function rb(wb, xb, yb, zb) {\n if (wa.isSupported()) {\n var ac = ((!o.isOnline() || !wa.availableForCall(yb))), bc = r.create(\"a\", {\n href: \"#\",\n className: \"callBackLink\"\n }, wb);\n if (ac) {\n q.hide(bc);\n }\n ;\n ;\n bc.setAttribute(\"data-gt\", JSON.stringify({\n videochat: \"clicked_callback_link\"\n }));\n t.listen(bc, \"click\", function() {\n ub.inform(\"video-call-clicked\", {\n userID: yb,\n threadID: xb,\n clickSource: zb\n });\n });\n return bc;\n }\n ;\n ;\n return null;\n };\n;\n function sb(wb) {\n var xb = ra[\":fb:mercury:chat:message:forward\"].build(), yb = xb.getNode(\"forwardText\");\n if (yb) {\n q.hide(xb.getRoot());\n fa.renderTitanLink(wb.thread_id, xb.getNode(\"forwardLink\"), q.show.bind(q, xb.getRoot()));\n if (((wb.forward_count > 1))) {\n r.appendContent(yb, fb._(\"{count} forwarded messages\", {\n count: wb.forward_count\n }));\n }\n else r.appendContent(yb, \"1 forwarded message\");\n ;\n ;\n }\n ;\n ;\n return xb.getRoot();\n };\n;\n var tb = [];\n function ub(wb, xb, yb, zb, ac, bc, cc) {\n this.loadingIcon = ac;\n this.threadID = wb;\n this.sheetController = xb;\n this.scrollContainer = yb;\n this.conversationElem = zb;\n this.messageElements = {\n };\n this.messageGroup = null;\n this.prevMessage = null;\n v.restart(((na.get() / 1000)));\n this._fetchMultiplier = 1;\n this._oldestMessageDisplayedTimestamp = null;\n this._loadingMoreMessages = false;\n this._currentMessageCount = 0;\n this._hasReachedClearedMessages = false;\n var dc = ha.MESSAGE_TIMESTAMP_THRESHOLD;\n this._oldestMessageDisplayedTimestamp = ((JSBNG__Date.now() - dc));\n tb.push(this);\n function ec() {\n ub.inform(\"interaction-with-tab\", wb);\n };\n ;\n this._subscriptions = new qa();\n this._subscriptions.addSubscriptions(i.subscribe(\"overflow-applied-to-body\", this.scrollToBottom.bind(this)), t.listen(this.scrollContainer, \"mousedown\", ec));\n if (va.firefox()) {\n var fc = ((((\"JSBNG__WheelEvent\" in window)) ? \"wheel\" : \"DOMMouseScroll\"));\n this.scrollContainer.JSBNG__addEventListener(fc, ec, false);\n }\n else this._subscriptions.addSubscriptions(t.listen(this.scrollContainer, \"mousewheel\", ec));\n ;\n ;\n this._subscriptions.addSubscriptions(t.listen(this.scrollContainer, \"JSBNG__scroll\", eb(this.scrolling, 50, this)));\n var gc = n.get(\"chat_tab_bubbles\");\n this.lastMessageIndicator = new y(this.threadID, bc, gc, this);\n if (gc) {\n this.typingIndicator = new ia(this.threadID, cc, this);\n }\n ;\n ;\n ca.getThreadMessagesRange(this.threadID, 0, ha.RECENT_MESSAGES_LIMIT, this._updateTimestamp.bind(this));\n this.rerender();\n };\n;\n xa(ub, j);\n xa(ub.prototype, {\n scrolling: function() {\n if (((((((!this._loadingMoreMessages && this.isScrolledNearTop())) && !this.isScrolledToBottom())) && !this._hasReachedClearedMessages))) {\n this.loadMoreMessages();\n }\n ;\n ;\n if (!this._newMessagesSheetOpened) {\n return;\n }\n ;\n ;\n if (this.isScrolledToBottom()) {\n this.sheetController.closeNewMessagesSheet();\n this._newMessagesSheetOpened = false;\n }\n ;\n ;\n },\n destroy: function() {\n r.empty(this.conversationElem);\n this._subscriptions.release();\n db(tb, this);\n ((this.lastMessageIndicator && this.lastMessageIndicator.destroy()));\n this.destroyed = true;\n },\n _appendMessage: function(wb) {\n if (((wb == this.prevMessage))) {\n return;\n }\n ;\n ;\n var xb = ha, yb = xb.GROUPING_THRESHOLD, zb = ((((wb.action_type == w.LOG_MESSAGE)) && ((wb.log_message_type == z.SERVER_ERROR))));\n if (wb.is_cleared) {\n this._hasReachedClearedMessages = true;\n return;\n }\n ;\n ;\n var ac;\n if (((this.prevMessage !== null))) {\n ac = ((wb.timestamp - this.prevMessage.timestamp));\n }\n else ac = Infinity;\n ;\n ;\n if (((!zb && ((ac >= ib))))) {\n var bc = Math.round(((wb.timestamp / 1000))), cc = wb.timestamp_datetime, dc = ra[\":fb:chat:conversation:date-break\"].build();\n ma.renderComponent(ta({\n time: bc,\n verbose: cc,\n text: cc\n }), dc.getNode(\"date\"));\n r.appendContent(this.conversationElem, dc.getRoot());\n this.messageGroup = null;\n }\n ;\n ;\n if (((wb.action_type == w.LOG_MESSAGE))) {\n r.appendContent(this.conversationElem, ob(wb));\n this.messageGroup = null;\n this.prevMessage = wb;\n return;\n }\n ;\n ;\n var ec = n.get(\"chat_tab_bubbles\");\n if (((((((!this.messageGroup || ((ec && ((wb.author !== la.user)))))) || ((this.prevMessage.author != wb.author)))) || ((this.prevMessage.timestamp < ((wb.timestamp - yb))))))) {\n this.messageGroup = nb(wb);\n r.appendContent(this.conversationElem, this.messageGroup.getRoot());\n }\n ;\n ;\n var fc = this._makeSingleMessage(wb);\n this.messageElements[wb.message_id] = fc;\n r.appendContent(this.messageGroup.getNode(\"messages\"), fc);\n pb(fc, this.scrollContainer);\n this.prevMessage = wb;\n },\n rerender: function() {\n if (!this._oldestMessageDisplayedTimestamp) {\n return;\n }\n ;\n ;\n var wb = ((this._finishedFetchingMoreMessages && this.scrollContainer.scrollHeight)), xb = ((this._finishedFetchingMoreMessages && this.scrollContainer.scrollTop)), yb = this.isScrolledToBottom();\n r.empty(this.conversationElem);\n this.messageElements = {\n };\n this.messageGroup = null;\n this.prevMessage = null;\n var zb = ca.getThreadMessagesSinceTimestamp(this.threadID, this._oldestMessageDisplayedTimestamp);\n this._renderOlderMessages(zb, wb, xb, yb);\n this._finishedFetchingMoreMessages = false;\n },\n update: function(wb) {\n {\n var fin291keys = ((window.top.JSBNG_Replay.forInKeys)((wb))), fin291i = (0);\n var xb;\n for (; (fin291i < fin291keys.length); (fin291i++)) {\n ((xb) = (fin291keys[fin291i]));\n {\n var yb = this.messageElements[xb];\n if (yb) {\n var zb = this.isScrolledToBottom(), ac = this._makeSingleMessage(ca.getMessagesFromIDs([xb,])[0]);\n this.messageElements[xb] = ac;\n r.replace(yb, ac);\n pb(ac, this.scrollContainer);\n if (zb) {\n this.scrollToBottom();\n }\n ;\n ;\n }\n ;\n ;\n };\n };\n };\n ;\n },\n _getLoadingHeight: function() {\n return ((this.loadingHeight || this.loadingIcon.clientHeight));\n },\n _appendMessages: function(wb) {\n wb.forEach(this._appendMessage.bind(this));\n ((this.lastMessageIndicator && this.lastMessageIndicator.setLastMessage(this.prevMessage)));\n },\n _appendNewMessages: function(wb) {\n wb = u.filterMessages(function(zb) {\n this.sheetController.openUserJoinStatusSheet(zb);\n }.bind(this), wb, true);\n var xb = this.isScrolledToBottom(), yb = this._messagesOnlySentFromSelf(wb);\n this._appendMessages(wb);\n if (xb) {\n this.scrollToBottom();\n }\n else if (!yb) {\n this.sheetController.openNewMessagesSheet();\n this._newMessagesSheetOpened = true;\n }\n \n ;\n ;\n },\n _messagesOnlySentFromSelf: function(wb) {\n for (var xb = 0; ((xb < wb.length)); xb++) {\n if (((wb[xb].author !== la.user))) {\n return false;\n }\n ;\n ;\n };\n ;\n return true;\n },\n _renderOlderMessages: function(wb, xb, yb, zb) {\n if (!wb) {\n return;\n }\n ;\n ;\n wb = u.filterMessages(function(ac) {\n this.sheetController.openUserJoinStatusSheet(ac);\n }.bind(this), wb, false);\n this._appendMessages(wb);\n if (zb) {\n this.scrollToBottom();\n }\n else if (this._finishedFetchingMoreMessages) {\n this.scrollToPosition(((((((this.scrollContainer.scrollHeight - xb)) - this.loadingHeight)) + yb)));\n }\n \n ;\n ;\n },\n _updateTimestamp: function(wb) {\n if (((wb && wb.length))) {\n this._oldestMessageDisplayedTimestamp = wb[0].timestamp;\n this._currentMessageCount = wb.length;\n }\n ;\n ;\n this._loadingMoreMessages = false;\n this._finishedFetchingMoreMessages = true;\n q.hide(this.loadingIcon);\n },\n isScrolledToBottom: function() {\n var wb = this.scrollContainer;\n return ((((wb.scrollTop + wb.clientHeight)) >= ((wb.scrollHeight - lb))));\n },\n isScrolledNearTop: function() {\n return ((this.scrollContainer.scrollTop < this.scrollContainer.clientHeight));\n },\n scrollToBottom: function(wb) {\n this.scrollToPosition(this.scrollContainer.scrollHeight, wb);\n },\n scrollToPosition: function(wb, xb) {\n ((this._scrollTopAnimation && this._scrollTopAnimation.JSBNG__stop()));\n if (((xb === true))) {\n this._scrollTopAnimation = (new h(this.scrollContainer)).to(\"scrollTop\", wb).ease(h.ease.end).duration(400).go();\n }\n else this.scrollContainer.scrollTop = wb;\n ;\n ;\n },\n loadMoreMessages: function() {\n if (((ca.hasLoadedExactlyNMessages(this.threadID, this._currentMessageCount) && ca.hasLoadedAllMessages(this.threadID)))) {\n return;\n }\n ;\n ;\n if (ga.isNewEmptyLocalThread(this.threadID)) {\n return;\n }\n ;\n ;\n q.show(this.loadingIcon);\n this.loadingHeight = this._getLoadingHeight();\n this._loadingMoreMessages = true;\n if (((this._fetchMultiplier < 10))) {\n this._fetchMultiplier += 1;\n }\n ;\n ;\n var wb = ((ha.RECENT_MESSAGES_LIMIT * this._fetchMultiplier)), xb = ((this._currentMessageCount + wb)), yb = ca.hasLoadedNMessages(this.threadID, xb);\n ca.getThreadMessagesRange(this.threadID, 0, xb, this._updateTimestamp.bind(this), null, x.CHAT);\n if (yb) {\n this.rerender();\n }\n ;\n ;\n },\n _makeSingleMessage: function(wb) {\n var xb = this._renderSingleMessage(wb);\n q.addClass(xb, \"-cx-PRIVATE-fbChatMessage__singlemessage\");\n return xb;\n },\n _renderSingleMessage: function(wb) {\n var xb = ra[\":fb:chat:conversation:message\"].render(), yb = n.get(\"chat_tab_bubbles\");\n if (((yb && la.isAuthor(wb.author)))) {\n xb.setAttribute(\"title\", mb(wb.timestamp));\n }\n ;\n ;\n if (wb.subject) {\n var zb = ra[\":fb:chat:conversation:message:subject\"].render();\n r.setContent(zb, wb.subject);\n r.appendContent(xb, zb);\n }\n ;\n ;\n function ac(ic) {\n if (yb) {\n ic = r.create(\"span\", {\n \"data-measureme\": 1\n }, ic);\n }\n ;\n ;\n return ic;\n };\n ;\n if (wb.is_filtered_content) {\n var bc = oa[\":fb:mercury:filtered-message\"].build();\n r.appendContent(xb, ac(bc.getRoot()));\n return xb;\n }\n ;\n ;\n if (((wb.body.substr(0, 4) == \"?OTR\"))) {\n r.setContent(xb, ac(\"[encrypted message]\"));\n q.addClass(xb, \"-cx-PRIVATE-fbChatMessage__cyphertext\");\n }\n else {\n q.addClass(xb, ((cb(wb.body) ? \"direction_rtl\" : \"direction_ltr\")));\n var cc = ja.formatMessageBody(wb.body);\n r.appendContent(xb, ac(cc));\n }\n ;\n ;\n if (wb.has_attachment) {\n var dc = g.div(null), ec = this._appendMessageAttachments(dc, wb);\n if (((((yb && !wb.body)) && !ec))) {\n return dc;\n }\n ;\n ;\n r.appendContent(xb, p(dc.childNodes));\n }\n ;\n ;\n if (wb.forward_count) {\n r.appendContent(xb, sb(wb));\n }\n ;\n ;\n if (wb.is_spoof_warning) {\n var fc = ra[\":fb:chat:conversation:message:undertext\"].build();\n r.appendContent(fc.getNode(\"message\"), xb);\n la.get(wb.author, function(ic) {\n fa.renderChatSpoofWarning(fc.getNode(\"JSBNG__status\"), wb.is_spoof_warning, ic);\n });\n return fc.getRoot();\n }\n ;\n ;\n var gc = ea.renderStatusIndicator(wb.JSBNG__status, wb.error_data, ba(ca.resendMessage, ca, wb));\n if (gc) {\n var hc = ra[\":fb:chat:conversation:message:status\"].build();\n r.appendContent(hc.getNode(\"message\"), xb);\n r.appendContent(hc.getNode(\"JSBNG__status\"), gc);\n return hc.getRoot();\n }\n ;\n ;\n return xb;\n },\n _appendMessageAttachments: function(wb, xb) {\n var yb = 0, zb = xb.attachments;\n zb.sort(l.booleanLexicographicComparator([l.isPhotoAttachment,l.isShareAttachment,l.isFileAttachment,l.isErrorAttachment,]));\n if (((xb.raw_attachments && ((xb.raw_attachments.length > 0))))) {\n zb = k.convertRaw(xb.raw_attachments);\n }\n ;\n ;\n if (((((((xb.attachments.length === 0)) && xb.preview_attachments)) && ((xb.preview_attachments.length > 0))))) {\n ab(zb, xb.preview_attachments);\n }\n ;\n ;\n var ac = l.renderPhotoAttachments(zb.filter(l.isPhotoAttachment), xb, 176, 4);\n if (ac) {\n r.appendContent(wb, ac);\n }\n ;\n ;\n for (var bc = 0; ((bc < zb.length)); bc++) {\n if (l.isPhotoAttachment(zb[bc])) {\n yb = 1;\n continue;\n }\n ;\n ;\n var cc = l.renderAttachment(true, zb[bc], xb);\n ((cc.error && r.appendContent(wb, cc.error)));\n ((cc.JSBNG__content && r.appendContent(wb, cc.JSBNG__content)));\n yb |= cc.bubblePreferred;\n };\n ;\n var dc = r.scry(wb, \"img\");\n dc.forEach(function(ec) {\n this._subscriptions.addSubscriptions(t.listen(ec, \"load\", ba(this._thumbLoaded, this, ec)));\n }.bind(this));\n return !!yb;\n },\n _thumbLoaded: function(wb) {\n var xb = ((this.scrollContainer.scrollTop + this.scrollContainer.clientHeight));\n if (((((xb + wb.offsetHeight)) >= this.scrollContainer.scrollHeight))) {\n this.scrollToBottom();\n }\n ;\n ;\n }\n });\n sa.subscribe(\"messages-reordered\", function(wb, xb) {\n tb.forEach(function(yb) {\n ((xb[yb.threadID] && yb.rerender()));\n });\n });\n sa.subscribe(\"messages-updated\", function(wb, xb) {\n tb.forEach(function(yb) {\n ((xb[yb.threadID] && yb.update(xb[yb.threadID])));\n });\n });\n sa.subscribe(\"messages-received\", function(wb, xb) {\n tb.forEach(function(yb) {\n var zb = xb[yb.threadID];\n if (((zb && zb.length))) {\n yb._currentMessageCount += zb.length;\n }\n ;\n ;\n ((zb && yb._appendNewMessages(zb)));\n });\n });\n i.subscribe(m.getArbiterType(\"chat_event\"), function(wb, xb) {\n if (vb(xb.obj)) {\n var yb = ((((s.user == xb.obj.from)) ? xb.obj.to : xb.obj.from)), zb = ga.getThreadIdForUser(yb), ac = tb.filter(function(dc) {\n return ((dc.threadID === zb));\n });\n if (((ac.length > 0))) {\n var bc = ac[0], cc = ca.constructLogMessageObject(aa.CHAT_WEB, zb, z.VIDEO_CALL, xb.obj);\n cc.author = ((\"fbid:\" + xb.obj.from));\n bc._appendNewMessages([cc,]);\n }\n ;\n ;\n }\n ;\n ;\n });\n function vb(wb) {\n return ((((wb.event_name === \"installing\")) || ((wb.event_name === \"install_canceled\"))));\n };\n;\n e.exports = ub;\n});\n__d(\"MercuryPeopleSuggestions\", [\"KeyedCallbackManager\",\"MercuryServerDispatcher\",\"OrderedFriendsList\",\"ShortProfiles\",\"arrayContains\",], function(a, b, c, d, e, f) {\n var g = b(\"KeyedCallbackManager\"), h = b(\"MercuryServerDispatcher\"), i = b(\"OrderedFriendsList\"), j = b(\"ShortProfiles\"), k = b(\"arrayContains\"), l = new g(), m = 6;\n function n(s) {\n return s.sort().join(\",\");\n };\n;\n function o(s, t) {\n if (((s.length < m))) {\n var u = i.getList();\n for (var v = 0; ((v < u.length)); v++) {\n if (!((k(s, u[v]) || k(t, u[v])))) {\n s.push(u[v]);\n if (((s.length >= m))) {\n break;\n }\n ;\n ;\n }\n ;\n ;\n };\n ;\n }\n ;\n ;\n return s;\n };\n;\n function p(s) {\n h.trySend(\"/ajax/chat/people_suggest.php\", s);\n };\n;\n function q(s, t, u) {\n s = s.filter(function(w) {\n return !k(t, w);\n });\n var v = o(s, t);\n j.getMulti(v, function() {\n u(v);\n });\n };\n;\n var r = {\n getPeopleSuggestions: function(s, t) {\n if (s) {\n if (s.length) {\n var u = n(s), v = l.executeOrEnqueue(u, function(x) {\n q(x, s, t);\n }), w = l.getUnavailableResources(v);\n if (w.length) {\n p({\n query: u,\n size: m\n });\n }\n ;\n ;\n return v;\n }\n else q([], [], t);\n ;\n }\n ;\n ;\n return 0;\n },\n handleUpdate: function(s) {\n if (s.query) {\n var t = ((s.suggestions || \"\")), u = ((t.length ? t.split(\",\") : []));\n l.setResource(s.query, u);\n }\n ;\n ;\n }\n };\n h.registerEndpoints({\n \"/ajax/chat/people_suggest.php\": {\n mode: h.IMMEDIATE,\n handler: r.handleUpdate\n }\n });\n e.exports = r;\n});\n__d(\"ChatTabPeopleSuggestionView\", [\"ChatPeopleSuggestionList.react\",\"ChatQuietLinks\",\"JSBNG__CSS\",\"DOM\",\"JSBNG__Event\",\"MercuryPeopleSuggestions\",\"MercuryIDs\",\"React\",\"ShortProfiles\",\"Style\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ChatPeopleSuggestionList.react\"), h = b(\"ChatQuietLinks\"), i = b(\"JSBNG__CSS\"), j = b(\"DOM\"), k = b(\"JSBNG__Event\"), l = b(\"MercuryPeopleSuggestions\"), m = b(\"MercuryIDs\"), n = b(\"React\"), o = b(\"ShortProfiles\"), p = b(\"Style\"), q = b(\"copyProperties\");\n function r(s, t, u) {\n this.sheetController = s;\n this.viewNode = t;\n this.loadingIcon = u;\n this.addFriendsSheet = s.getAddFriendsTabSheet();\n this.mercuryTypeahead = ((this.addFriendsSheet && this.addFriendsSheet._typeahead));\n this.typeaheadInput = ((this.mercuryTypeahead && this.mercuryTypeahead._input));\n this.typeaheadView = ((this.mercuryTypeahead && this.mercuryTypeahead.getTypeahead().getView()));\n var v = this.showSuggestions.bind(this);\n if (this.typeaheadInput) {\n k.listen(this.typeaheadInput, \"JSBNG__focus\", v);\n }\n ;\n ;\n if (this.typeaheadView) {\n this.typeaheadView.subscribe(\"reset\", v);\n this.typeaheadView.subscribe(\"render\", this.clearSuggestions.bind(this));\n }\n ;\n ;\n this.tokenizer = ((this.mercuryTypeahead && this.mercuryTypeahead.getTokenizer()));\n if (this.tokenizer) {\n this.tokenizer.subscribe(\"removeToken\", v);\n }\n ;\n ;\n this.showSuggestions();\n };\n;\n q(r.prototype, {\n addSelectedParticipant: function(s) {\n var t = o.getNow(s);\n if (((t && this.tokenizer))) {\n this.tokenizer.addToken(this.tokenizer.createToken({\n uid: s,\n text: t.JSBNG__name\n }));\n this.showSuggestions();\n }\n ;\n ;\n },\n showSuggestions: function() {\n if (this.mercuryTypeahead) {\n var s = this.mercuryTypeahead.getSelectedParticipantIDs();\n s = s.map(m.getUserIDFromParticipantID);\n j.empty(this.viewNode);\n i.show(this.loadingIcon);\n l.getPeopleSuggestions(s, function(t) {\n var u = g({\n uids: t,\n onClick: this.addSelectedParticipant.bind(this)\n });\n i.hide(this.loadingIcon);\n n.renderComponent(u, this.viewNode);\n h.removeAllHrefs(this.viewNode);\n }.bind(this));\n }\n ;\n ;\n },\n clearSuggestions: function() {\n j.empty(this.viewNode);\n i.hide(this.loadingIcon);\n p.set(this.viewNode, \"margin-top\", 0);\n },\n destroy: function() {\n this.clearSuggestions();\n }\n });\n e.exports = r;\n});\n__d(\"ChatAddFriendsTabSheetRawRenderer\", [\"ContextualTypeaheadView\",\"DOM\",\"JSBNG__Event\",\"MercuryTypeahead\",\"ChatTabTemplates\",\"tx\",\"MercuryDataSourceWrapper\",], function(a, b, c, d, e, f) {\n var g = b(\"ContextualTypeaheadView\"), h = b(\"DOM\"), i = b(\"JSBNG__Event\"), j = b(\"MercuryTypeahead\"), k = b(\"ChatTabTemplates\"), l = b(\"tx\"), m = b(\"MercuryDataSourceWrapper\").source, n = {\n render: function(o, p, q, r, s, t) {\n var u = ((t ? k[\":fb:mercury:chat:tab-sheet:add-friends-empty-tab\"].build() : k[\":fb:mercury:chat:tab-sheet:add-friends\"].build())), v = new j(m, g);\n v.setExcludedParticipants(r.participants);\n if (!t) {\n v.setPlaceholder(\"Add friends to this chat\");\n }\n ;\n ;\n v.build();\n h.replace(u.getNode(\"participantsTypeahead\"), v.getElement());\n h.setContent(q, u.getRoot());\n v.getTokenizer().adjustWidth();\n v.JSBNG__focus();\n if (!t) {\n var w = function() {\n var x = v.getSelectedParticipantIDs();\n if (x.length) {\n s(x);\n }\n ;\n ;\n p.close(o);\n };\n i.listen(u.getNode(\"doneButton\"), \"click\", w);\n }\n ;\n ;\n return v;\n }\n };\n e.exports = n;\n});\n__d(\"MultiChatController\", [\"Arbiter\",\"AsyncSignal\",\"copyProperties\",\"Form\",\"MercuryMessages\",\"MercuryServerRequests\",\"MercuryThreads\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncSignal\"), i = b(\"copyProperties\"), j = b(\"Form\"), k = b(\"MercuryMessages\").get(), l = b(\"MercuryServerRequests\").get(), m = b(\"MercuryThreads\").get();\n function n() {\n \n };\n;\n i(n, {\n subscribe: function(o, p) {\n o.subscribe(\"JSBNG__confirm\", function() {\n this.createGroupThreadFromChooserDialog(o, p);\n }.bind(this));\n },\n createGroupThreadFromChooserDialog: function(o, p) {\n var q = j.serialize(o.getRoot()), r = JSON.parse(q.profileChooserItems), s = [];\n {\n var fin292keys = ((window.top.JSBNG_Replay.forInKeys)((r))), fin292i = (0);\n var t;\n for (; (fin292i < fin292keys.length); (fin292i++)) {\n ((t) = (fin292keys[fin292i]));\n {\n if (r[t]) {\n s.push(t);\n }\n ;\n ;\n };\n };\n };\n ;\n var u = n.createThreadForFBIDs(s);\n l.subscribe(\"update-thread-ids\", function(v, w) {\n {\n var fin293keys = ((window.top.JSBNG_Replay.forInKeys)((w))), fin293i = (0);\n var x;\n for (; (fin293i < fin293keys.length); (fin293i++)) {\n ((x) = (fin293keys[fin293i]));\n {\n if (((w[x] == u))) {\n new h(\"/ajax/groups/chat/log\", {\n group_id: p,\n message_id: x\n }).send();\n }\n ;\n ;\n };\n };\n };\n ;\n });\n o.hide();\n },\n createThreadForTokens: function(o) {\n if (!o.length) {\n return;\n }\n ;\n ;\n var p;\n if (((o.length == 1))) {\n p = ((\"user:\" + o[0].split(\":\")[1]));\n }\n else p = ((\"root:\" + k.generateNewClientMessageID(JSBNG__Date.now())));\n ;\n ;\n m.createNewLocalThread(p, o);\n g.inform(\"chat/open-tab\", {\n thread_id: p\n });\n return p;\n },\n createThreadForFBIDs: function(o) {\n var p = [];\n for (var q = 0; ((q < o.length)); q++) {\n p.push(((\"fbid:\" + o[q])));\n ;\n };\n ;\n return n.createThreadForTokens(p);\n }\n });\n e.exports = n;\n});\n__d(\"ChatAddFriendsTabSheet\", [\"Arbiter\",\"ChatAddFriendsTabSheetRawRenderer\",\"MercuryLogMessageType\",\"MercurySourceType\",\"MercuryMessages\",\"MultiChatController\",\"Style\",\"MercuryThreads\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ChatAddFriendsTabSheetRawRenderer\"), i = b(\"MercuryLogMessageType\"), j = b(\"MercurySourceType\"), k = b(\"MercuryMessages\").get(), l = b(\"MultiChatController\"), m = b(\"Style\"), n = b(\"MercuryThreads\").get(), o = b(\"copyProperties\");\n function p(s, t, u) {\n this._threadID = s;\n this._rootElement = t;\n this._sheetView = u;\n this._typeahead = null;\n };\n;\n o(p.prototype, {\n render: function() {\n n.getThreadMeta(this._threadID, function(s) {\n var t = ((s.is_canonical_user ? q : r));\n this._typeahead = h.render(this, this._sheetView, this._rootElement, s, t.curry(s), n.isNewEmptyLocalThread(this._threadID));\n this._typeahead.subscribe(\"resize\", function() {\n this._sheetView.resize();\n }.bind(this));\n }.bind(this));\n },\n getParticipants: function() {\n if (!this._typeahead) {\n return null;\n }\n ;\n ;\n return this._typeahead.getSelectedParticipantIDs();\n },\n isPermanent: function() {\n return true;\n },\n getType: function() {\n return \"add_friends_type\";\n },\n open: function() {\n this._sheetView.open(this);\n },\n close: function() {\n this._sheetView.close(this);\n },\n getHeight: function() {\n return m.get(this._rootElement, \"height\");\n }\n });\n function q(s, t) {\n var u = s.participants;\n l.createThreadForTokens(u.concat(t));\n };\n;\n function r(s, t) {\n var u = s.thread_id;\n if (n.isEmptyLocalThread(u)) {\n n.addParticipantsToThreadLocally(u, t);\n g.inform(\"chat/open-tab\", {\n thread_id: u\n });\n }\n else {\n k.sendMessage(k.constructLogMessageObject(j.CHAT_WEB, u, i.SUBSCRIBE, {\n added_participants: t\n }));\n g.inform(\"chat/open-tab\", {\n thread_id: u\n });\n }\n ;\n ;\n };\n;\n e.exports = p;\n});\n__d(\"ChatNameConversationTabSheetRawRenderer\", [\"DOM\",\"JSBNG__Event\",\"Input\",\"Keys\",\"ChatTabTemplates\",\"fbt\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"JSBNG__Event\"), i = b(\"Input\"), j = b(\"Keys\"), k = b(\"ChatTabTemplates\"), l = b(\"fbt\"), m = {\n render: function(n, o, p, q, r, s) {\n var t = k[\":fb:mercury:chat:tab-sheet:name-conversation\"].build(), u = t.getNode(\"nameInput\"), v = t.getNode(\"doneButton\"), w = \"Done\", x = \"Hide\", y = q.JSBNG__name;\n if (y) {\n i.setValue(u, y);\n }\n else g.setContent(v, x);\n ;\n ;\n var z = function() {\n var aa = i.getValue(u);\n if (aa) {\n r(aa);\n }\n ;\n ;\n s();\n o.close(n);\n };\n h.listen(u, \"input\", function() {\n g.setContent(v, ((((i.getValue(u).length === 0)) ? x : w)));\n });\n h.listen(v, \"click\", z);\n h.listen(u, \"keyup\", function(aa) {\n if (((aa.keyCode === j.RETURN))) {\n z();\n return false;\n }\n ;\n ;\n });\n g.setContent(p, t.getRoot());\n ((!n.isAutomatic() && u.JSBNG__focus()));\n }\n };\n e.exports = m;\n});\n__d(\"ChatNameConversationTabSheet\", [\"AsyncRequest\",\"ChatNameConversationTabSheetRawRenderer\",\"MercuryAPIArgsSource\",\"MercuryLogMessageType\",\"MercurySourceType\",\"MercuryMessages\",\"MercuryServerRequests\",\"MercuryThreads\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"ChatNameConversationTabSheetRawRenderer\"), i = b(\"MercuryAPIArgsSource\"), j = b(\"MercuryLogMessageType\"), k = b(\"MercurySourceType\"), l = b(\"MercuryMessages\").get(), m = b(\"MercuryServerRequests\").get(), n = b(\"MercuryThreads\").get(), o = \"/ajax/chat/multichat/name_conversation/dismiss.php\";\n function p(q, r, s) {\n this.$ChatNameConversationTabSheet0 = q;\n this.$ChatNameConversationTabSheet1 = r;\n this.$ChatNameConversationTabSheet2 = s;\n this.$ChatNameConversationTabSheet3 = false;\n this.$ChatNameConversationTabSheet4 = false;\n };\n;\n p.prototype.render = function() {\n n.getThreadMeta(this.$ChatNameConversationTabSheet0, function(q) {\n h.render(this, this.$ChatNameConversationTabSheet2, this.$ChatNameConversationTabSheet1, q, this.$ChatNameConversationTabSheet5.curry(q), this.$ChatNameConversationTabSheet6.bind(this, q));\n this.$ChatNameConversationTabSheet2.resize();\n }.bind(this));\n };\n p.prototype.isPermanent = function() {\n return true;\n };\n p.prototype.getType = function() {\n return \"name_conversation_type\";\n };\n p.prototype.open = function(q) {\n this.$ChatNameConversationTabSheet3 = q;\n if (!((this.$ChatNameConversationTabSheet3 && this.$ChatNameConversationTabSheet4))) {\n this.$ChatNameConversationTabSheet2.open(this);\n }\n ;\n ;\n };\n p.prototype.close = function() {\n this.$ChatNameConversationTabSheet2.close(this);\n };\n p.prototype.isAutomatic = function() {\n return this.$ChatNameConversationTabSheet3;\n };\n p.prototype.$ChatNameConversationTabSheet6 = function(q) {\n if (((!q.name_conversation_sheet_dismissed || !this.$ChatNameConversationTabSheet4))) {\n this.$ChatNameConversationTabSheet4 = true;\n m.getServerThreadID(q.thread_id, function(r) {\n new g(o).setData({\n thread_id: r\n }).send();\n });\n }\n ;\n ;\n };\n p.prototype.$ChatNameConversationTabSheet5 = function(q, r) {\n var s = q.JSBNG__name;\n if (((((r || s)) && ((r != s))))) {\n l.sendMessage(l.constructLogMessageObject(k.CHAT_WEB, q.thread_id, j.THREAD_NAME, {\n JSBNG__name: r\n }), null, i.CHAT);\n }\n ;\n ;\n };\n e.exports = p;\n});\n__d(\"ChatNewMessagesTabSheet\", [\"JSBNG__Event\",\"ArbiterMixin\",\"DOM\",\"ChatTabTemplates\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"ArbiterMixin\"), i = b(\"DOM\"), j = b(\"ChatTabTemplates\"), k = b(\"copyProperties\");\n function l(m, n, o) {\n this._threadID = m;\n this._rootElement = n;\n this._sheetView = o;\n };\n;\n k(l.prototype, h, {\n render: function() {\n var m = j[\":fb:mercury:chat:tab-sheet:clickable-message-icon-sheet\"].build();\n i.setContent(m.getNode(\"text\"), i.tx._(\"Scroll down to see new messages.\"));\n i.setContent(this._rootElement, m.getRoot());\n g.listen(m.getRoot(), \"click\", function() {\n this.inform(\"clicked\", this._threadID);\n }.bind(this));\n },\n isPermanent: function() {\n return true;\n },\n getType: function() {\n return \"new_messages_type\";\n },\n open: function() {\n this._sheetView.open(this);\n },\n close: function() {\n this._sheetView.close(this);\n }\n });\n e.exports = l;\n});\n__d(\"ChatNoRecipientsTabSheet\", [\"DOM\",\"fbt\",\"MercuryParticipants\",\"ChatTabTemplates\",\"MercuryThreadInformer\",\"MercuryThreads\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"fbt\"), i = b(\"MercuryParticipants\"), j = b(\"ChatTabTemplates\"), k = b(\"MercuryThreadInformer\").get(), l = b(\"MercuryThreads\").get(), m = b(\"copyProperties\");\n function n(o, p, q) {\n this._threadID = o;\n this._rootElement = p;\n this._sheetView = q;\n k.subscribe(\"threads-updated\", this._handleThreadsUpdated.bind(this));\n };\n;\n m(n.prototype, {\n render: function() {\n var o = j[\":fb:mercury:chat:tab-sheet:message-icon-sheet\"].build();\n g.setContent(o.getNode(\"text\"), \"Everyone has left the conversation.\");\n g.setContent(this._rootElement, o.getRoot());\n },\n isPermanent: function() {\n return true;\n },\n getType: function() {\n return \"no_recipients_type\";\n },\n _handleThreadsUpdated: function() {\n l.getThreadMeta(this._threadID, function(o) {\n var p = i.user, q = o.participants.filter(function(r) {\n return ((r != p));\n });\n if (((((((q.length < 1)) && !o.is_joinable)) && !l.isNewEmptyLocalThread(this._threadID)))) {\n this._sheetView.open(this);\n }\n else this._sheetView.close(this);\n ;\n ;\n }.bind(this));\n }\n });\n e.exports = n;\n});\n__d(\"ChatOfflineTabSheet\", [\"ChatPrivacyActionController\",\"ChatVisibility\",\"JSBNG__CSS\",\"DOM\",\"JSBNG__Event\",\"JSLogger\",\"MercuryParticipants\",\"MercuryThreads\",\"ChatTabTemplates\",\"copyProperties\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"ChatPrivacyActionController\"), h = b(\"ChatVisibility\"), i = b(\"JSBNG__CSS\"), j = b(\"DOM\"), k = b(\"JSBNG__Event\"), l = b(\"JSLogger\"), m = b(\"MercuryParticipants\"), n = b(\"MercuryThreads\").get(), o = b(\"ChatTabTemplates\"), p = b(\"copyProperties\"), q = b(\"cx\");\n function r(s, t, u) {\n this._rootElement = t;\n this._sheetView = u;\n this._logger = l.create(\"blackbird\");\n this._canonicalUser = n.getCanonicalUserInThread(s);\n if (this._canonicalUser) {\n this._privacyActionController = new g(this._canonicalUser, this._handlePrivacyChange.bind(this));\n }\n ;\n ;\n };\n;\n p(r.prototype, {\n render: function() {\n if (!this._canonicalUser) {\n this._logger.error(\"offline_sheet_open_with_non_friend\");\n return;\n }\n ;\n ;\n var s = o[\":fb:mercury:chat:tab-sheet:message-icon-sheet\"].build(), t = ((\"fbid:\" + this._canonicalUser));\n m.get(t, function(u) {\n var v = \"fbChatGoOnlineLink\", w = j.tx._(\"turn on chat\"), x = j.create(\"a\", {\n href: \"#\",\n className: v\n }, w), y = j.tx._(\"To chat with {name} and other friends, {link}.\", {\n JSBNG__name: u.short_name,\n link: x\n });\n j.setContent(s.getNode(\"text\"), y);\n i.addClass(s.getRoot(), \"-cx-PRIVATE-chatTabSheet__chatoffline\");\n j.setContent(this._rootElement, s.getRoot());\n k.listen(this._rootElement, \"click\", function(JSBNG__event) {\n if (i.hasClass(JSBNG__event.getTarget(), v)) {\n if (h.isOnline()) {\n this._logger.error(\"tab_sheet_already_online\");\n }\n ;\n ;\n this._privacyActionController.togglePrivacy();\n this._logger.log(\"tab_sheet_go_online\", {\n tab_id: this._canonicalUser\n });\n return false;\n }\n ;\n ;\n }.bind(this));\n this._sheetView.resize();\n }.bind(this));\n },\n _handlePrivacyChange: function(s) {\n if (!this._canonicalUser) {\n this._logger.error(\"user_blocked_sheet_privacy_changed_non_friend\");\n }\n ;\n ;\n switch (s) {\n case g.OFFLINE:\n this._sheetView.open(this);\n break;\n case g.NORMAL:\n \n case g.BLOCKED:\n this._sheetView.close(this);\n break;\n };\n ;\n },\n isPermanent: function() {\n return true;\n },\n getType: function() {\n return \"offline_type\";\n },\n destroy: function() {\n ((this._privacyActionController && this._privacyActionController.destroy()));\n }\n });\n e.exports = r;\n});\n__d(\"ChatUploadWarningTabSheet\", [\"DOM\",\"ChatTabTemplates\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"ChatTabTemplates\"), i = b(\"copyProperties\");\n function j(k, l, m) {\n this._threadID = k;\n this._rootElement = l;\n this._sheetView = m;\n };\n;\n i(j.prototype, {\n render: function() {\n var k = h[\":fb:mercury:chat:tab-sheet:message-icon-sheet\"].build();\n g.setContent(k.getNode(\"text\"), g.tx._(\"Please wait until the upload is complete before you send your message.\"));\n g.setContent(this._rootElement, k.getRoot());\n },\n isPermanent: function() {\n return false;\n },\n getType: function() {\n return \"upload_warning_type\";\n },\n open: function() {\n this._sheetView.open(this);\n },\n close: function() {\n this._sheetView.close(this);\n }\n });\n e.exports = j;\n});\n__d(\"ChatThreadIsMutedTabSheet\", [\"JSBNG__Event\",\"ArbiterMixin\",\"DOM\",\"ChatTabTemplates\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"ArbiterMixin\"), i = b(\"DOM\"), j = b(\"ChatTabTemplates\"), k = b(\"copyProperties\");\n function l(m, n, o) {\n this._threadID = m;\n this._rootElement = n;\n this._sheetView = o;\n };\n;\n k(l.prototype, h, {\n render: function() {\n var m = j[\":fb:mercury:chat:tab-sheet:message-mute-sheet\"].build();\n i.setContent(m.getNode(\"text\"), i.tx._(\"This conversation is muted. Chat tabs will not pop up for it and push notifications are off.\"));\n i.setContent(this._rootElement, m.getRoot());\n g.listen(m.getNode(\"unmuteButton\"), \"click\", function() {\n this.inform(\"clicked\", this._threadID);\n }.bind(this));\n },\n isPermanent: function() {\n return false;\n },\n getType: function() {\n return \"chat-thread-is-muted\";\n },\n open: function() {\n this._sheetView.open(this);\n },\n close: function() {\n this._sheetView.close(this);\n }\n });\n e.exports = l;\n});\n__d(\"ChatUserBlockedTabSheet\", [\"ChatPrivacyActionController\",\"JSBNG__CSS\",\"DOM\",\"JSBNG__Event\",\"GenderConst\",\"JSLogger\",\"MercuryParticipants\",\"MercuryThreads\",\"ChatTabTemplates\",\"copyProperties\",\"cx\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"ChatPrivacyActionController\"), h = b(\"JSBNG__CSS\"), i = b(\"DOM\"), j = b(\"JSBNG__Event\"), k = b(\"GenderConst\"), l = b(\"JSLogger\"), m = b(\"MercuryParticipants\"), n = b(\"MercuryThreads\").get(), o = b(\"ChatTabTemplates\"), p = b(\"copyProperties\"), q = b(\"cx\"), r = b(\"tx\");\n function s(t, u, v) {\n this._rootElement = u;\n this._sheetView = v;\n this._logger = l.create(\"blackbird\");\n this._canonicalUser = n.getCanonicalUserInThread(t);\n if (this._canonicalUser) {\n this._privacyActionController = new g(this._canonicalUser, this._handlePrivacyChange.bind(this));\n }\n ;\n ;\n };\n;\n p(s.prototype, {\n render: function() {\n if (!this._canonicalUser) {\n this._logger.error(\"user_blocked_sheet_open_with_non_friend\");\n return;\n }\n ;\n ;\n var t = o[\":fb:mercury:chat:tab-sheet:user-blocked\"].build(), u = ((\"fbid:\" + this._canonicalUser));\n m.get(u, function(v) {\n var w = null;\n switch (v.gender) {\n case k.FEMALE_SINGULAR:\n \n case k.FEMALE_SINGULAR_GUESS:\n w = r._(\"You turned off chat for {name} but you can still send her a message. \", {\n JSBNG__name: v.short_name\n });\n break;\n case k.MALE_SINGULAR:\n \n case k.MALE_SINGULAR_GUESS:\n w = r._(\"You turned off chat for {name} but you can still send him a message. \", {\n JSBNG__name: v.short_name\n });\n break;\n default:\n w = r._(\"You turned off chat for {name} but you can still send them a message. \", {\n JSBNG__name: v.short_name\n });\n };\n ;\n i.setContent(t.getNode(\"text\"), w);\n var x = r._(\"Turn on chat for {name}?\", {\n JSBNG__name: v.short_name\n });\n i.setContent(t.getNode(\"actionLink\"), x);\n h.addClass(t.getRoot(), \"-cx-PRIVATE-chatTabSheet__blocked\");\n i.setContent(this._rootElement, t.getRoot());\n j.listen(t.getNode(\"actionLink\"), \"click\", this._privacyActionController.togglePrivacy.bind(this._privacyActionController));\n this._sheetView.resize();\n }.bind(this));\n },\n _handlePrivacyChange: function(t) {\n if (!this._canonicalUser) {\n this._logger.error(\"user_blocked_sheet_privacy_changed_non_friend\");\n }\n ;\n ;\n switch (t) {\n case g.BLOCKED:\n this._sheetView.open(this);\n break;\n case g.NORMAL:\n \n case g.OFFLINE:\n this._sheetView.close(this);\n break;\n };\n ;\n },\n isPermanent: function() {\n return true;\n },\n getType: function() {\n return \"user_blocked_type\";\n },\n destroy: function() {\n ((this._privacyActionController && this._privacyActionController.destroy()));\n }\n });\n e.exports = s;\n});\n__d(\"ChatUserJoinStatusTabSheet\", [\"Class\",\"JoinStatusTabSheet\",\"ChatTabTemplates\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"JoinStatusTabSheet\"), i = b(\"ChatTabTemplates\"), j = b(\"copyProperties\");\n function k(l, m) {\n this.parent.construct(this, l, m);\n };\n;\n g.extend(k, h);\n j(k.prototype, {\n _getTemplate: function() {\n return i[\":fb:mercury:chat:tab-sheet:message-icon-sheet\"];\n }\n });\n e.exports = k;\n});\n__d(\"ChatTabSheetController\", [\"ChatAddFriendsTabSheet\",\"ChatNameConversationTabSheet\",\"ChatNewMessagesTabSheet\",\"ChatNoRecipientsTabSheet\",\"ChatOfflineTabSheet\",\"ChatUploadWarningTabSheet\",\"ChatThreadIsMutedTabSheet\",\"ChatUserBlockedTabSheet\",\"ChatUserJoinStatusTabSheet\",\"copyProperties\",\"MercurySheetView\",\"MercuryThreads\",], function(a, b, c, d, e, f) {\n var g = b(\"ChatAddFriendsTabSheet\"), h = b(\"ChatNameConversationTabSheet\"), i = b(\"ChatNewMessagesTabSheet\"), j = b(\"ChatNoRecipientsTabSheet\"), k = b(\"ChatOfflineTabSheet\"), l = b(\"ChatUploadWarningTabSheet\"), m = b(\"ChatThreadIsMutedTabSheet\"), n = b(\"ChatUserBlockedTabSheet\"), o = b(\"ChatUserJoinStatusTabSheet\"), p = b(\"copyProperties\"), q = b(\"MercurySheetView\"), r = b(\"MercuryThreads\").get(), s = function(t, u, v) {\n this._sheetView = new q(t, u, v);\n this._addFriendsTabSheet = new g(t, u, this._sheetView);\n this._nameConversationTabSheet = new h(t, u, this._sheetView);\n this._userBlockedTabSheet = new n(t, u, this._sheetView);\n this._offlineTabSheet = new k(t, u, this._sheetView);\n this._newMessagesTabSheet = new i(t, u, this._sheetView);\n this._uploadWarningTabSheet = new l(t, u, this._sheetView);\n this._threadIsMutedTabSheet = new m(t, u, this._sheetView);\n this._userJoinStatusTabSheet = new o(u, this._sheetView);\n if (!r.getCanonicalUserInThread(t)) {\n this._noRecipientsTabSheet = new j(t, u, this._sheetView);\n }\n ;\n ;\n };\n p(s.prototype, {\n openAddFriendsSheet: function() {\n this._addFriendsTabSheet.open();\n },\n openUserJoinStatusSheet: function(t) {\n this._userJoinStatusTabSheet.addToQueue(t);\n },\n getAddFriendsTabSheet: function() {\n return this._addFriendsTabSheet;\n },\n getAddFriendsParticipants: function() {\n var t = this._addFriendsTabSheet.getParticipants();\n this._addFriendsTabSheet.close();\n return t;\n },\n openNameConversationSheet: function(t) {\n this._nameConversationTabSheet.open(t);\n },\n openNewMessagesSheet: function() {\n this._newMessagesTabSheet.open();\n },\n openUploadWarningTabSheet: function() {\n this._uploadWarningTabSheet.open();\n },\n openThreadIsMutedTabSheet: function() {\n this._threadIsMutedTabSheet.open();\n },\n closeAutomaticNameConversationSheet: function() {\n if (this._nameConversationTabSheet.isAutomatic()) {\n this._nameConversationTabSheet.close();\n }\n ;\n ;\n },\n closeThreadIsMutedTabSheet: function() {\n this._threadIsMutedTabSheet.close();\n },\n closeNewMessagesSheet: function() {\n this._newMessagesTabSheet.close();\n },\n closeUploadWarningTabSheet: function() {\n this._uploadWarningTabSheet.close();\n },\n onClickNewMessagesSheet: function(t) {\n this._newMessageClickSub = this._newMessagesTabSheet.subscribe(\"clicked\", t);\n },\n onClickThreadIsMutedSheet: function(t) {\n this._threadIsMutedClickSub = this._threadIsMutedTabSheet.subscribe(\"clicked\", t);\n },\n onResize: function(t) {\n this._sheetView.subscribe(\"resize\", t);\n },\n destroy: function() {\n this._sheetView.destroy();\n this._offlineTabSheet.destroy();\n this._userBlockedTabSheet.destroy();\n ((this._newMessageClickSub && this._newMessageClickSub.unsubscribe()));\n ((this._threadIsMutedClickSub && this._threadIsMutedClickSub.unsubscribe()));\n }\n });\n e.exports = s;\n});\n__d(\"ChatTabView\", [\"JSBNG__Event\",\"function-extensions\",\"Arbiter\",\"ArbiterMixin\",\"AsyncDialog\",\"AsyncRequest\",\"AsyncSignal\",\"AvailableListConstants\",\"ChatBehavior\",\"ChatConfig\",\"ChatContextualDialogController\",\"ChatAutoSendPhotoUploader\",\"ChatPrivacyActionController\",\"ChatQuietLinks\",\"ChatTabMessagesView\",\"ChatTabPeopleSuggestionView\",\"ChatTabSheetController\",\"ChatVisibility\",\"MercuryConstants\",\"JSBNG__CSS\",\"Dialog\",\"Dock\",\"DOM\",\"Input\",\"JSLogger\",\"Keys\",\"Locale\",\"MercuryActionStatus\",\"MercuryConfig\",\"MercuryFileUploader\",\"MercuryLogMessageType\",\"MercuryMessages\",\"MercuryMessageClientState\",\"MercuryParticipants\",\"MercuryServerRequests\",\"MercurySourceType\",\"MercuryStickers\",\"MercuryThreadInformer\",\"MercuryThreadMetadataRawRenderer\",\"MercuryThreadMetadataRenderer\",\"MercuryThreadMuter\",\"MercuryThreads\",\"MercuryTypingReceiver\",\"MessagesEmoticonView\",\"NubController\",\"Parent\",\"PhotosUploadWaterfall\",\"PresencePrivacy\",\"PresenceStatus\",\"Run\",\"Style\",\"SubscriptionsHandler\",\"ChatTabTemplates\",\"TextAreaControl\",\"Tooltip\",\"TypingDetectorController\",\"URI\",\"UserAgent\",\"VideoCallCore\",\"WaterfallIDGenerator\",\"copyProperties\",\"cx\",\"setIntervalAcrossTransitions\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\");\n b(\"function-extensions\");\n var h = b(\"Arbiter\"), i = b(\"ArbiterMixin\"), j = b(\"AsyncDialog\"), k = b(\"AsyncRequest\"), l = b(\"AsyncSignal\"), m = b(\"AvailableListConstants\"), n = b(\"ChatBehavior\"), o = b(\"ChatConfig\"), p = b(\"ChatContextualDialogController\"), q = b(\"ChatAutoSendPhotoUploader\"), r = b(\"ChatPrivacyActionController\"), s = b(\"ChatQuietLinks\"), t = b(\"ChatTabMessagesView\"), u = b(\"ChatTabPeopleSuggestionView\"), v = b(\"ChatTabSheetController\"), w = b(\"ChatVisibility\"), x = b(\"MercuryConstants\"), y = b(\"JSBNG__CSS\"), z = b(\"Dialog\"), aa = b(\"Dock\"), ba = b(\"DOM\"), ca = b(\"Input\"), da = b(\"JSLogger\"), ea = b(\"Keys\"), fa = b(\"Locale\"), ga = b(\"MercuryActionStatus\"), ha = b(\"MercuryConfig\"), ia = b(\"MercuryFileUploader\"), ja = b(\"MercuryLogMessageType\"), ka = b(\"MercuryMessages\").get(), la = b(\"MercuryMessageClientState\"), ma = b(\"MercuryParticipants\"), na = b(\"MercuryServerRequests\").get(), oa = b(\"MercurySourceType\"), pa = b(\"MercuryStickers\"), qa = b(\"MercuryThreadInformer\").get(), ra = b(\"MercuryThreadMetadataRawRenderer\"), sa = b(\"MercuryThreadMetadataRenderer\").get(), ta = b(\"MercuryThreadMuter\"), ua = b(\"MercuryThreads\").get(), va = b(\"MercuryTypingReceiver\"), wa = b(\"MessagesEmoticonView\"), xa = b(\"NubController\"), ya = b(\"Parent\"), za = b(\"PhotosUploadWaterfall\"), ab = b(\"PresencePrivacy\"), bb = b(\"PresenceStatus\"), cb = b(\"Run\"), db = b(\"Style\"), eb = b(\"SubscriptionsHandler\"), fb = b(\"ChatTabTemplates\"), gb = b(\"TextAreaControl\"), hb = b(\"Tooltip\"), ib = b(\"TypingDetectorController\"), jb = b(\"URI\"), kb = b(\"UserAgent\"), lb = b(\"VideoCallCore\"), mb = b(\"WaterfallIDGenerator\"), nb = b(\"copyProperties\"), ob = b(\"cx\"), pb = b(\"setIntervalAcrossTransitions\"), qb = b(\"tx\"), rb = 227878347358915, sb = /^\\s*$/, tb = da.create(\"tab_view\"), ub = {\n }, vb = null, wb, xb;\n function yb(tc, uc) {\n var vc = ba.create(\"div\");\n uc = uc.filter(function(wc) {\n return ((wc != ma.user));\n });\n if (!uc.length) {\n return hb.remove(tc);\n }\n ;\n ;\n ma.getMulti(uc, function(wc) {\n {\n var fin294keys = ((window.top.JSBNG_Replay.forInKeys)((wc))), fin294i = (0);\n var xc;\n for (; (fin294i < fin294keys.length); (fin294i++)) {\n ((xc) = (fin294keys[fin294i]));\n {\n var yc = wc[xc], zc = fb[\":fb:mercury:chat:multichat-tooltip-item\"].build();\n ba.setContent(zc.getNode(\"JSBNG__name\"), yc.JSBNG__name);\n var ad = ma.getUserID(xc), bd = ((ad && ((bb.get(ad) == m.ACTIVE))));\n y.conditionShow(zc.getNode(\"icon\"), bd);\n y.conditionClass(zc.getNode(\"JSBNG__name\"), \"tooltipItemWithIcon\", bd);\n ba.appendContent(vc, zc.getRoot());\n };\n };\n };\n ;\n hb.set(tc, vc, \"above\");\n });\n };\n;\n var zb = {\n }, ac = null, bc = false;\n function cc(tc, uc, vc) {\n if (vc) {\n zb[tc] = uc;\n if (!ac) {\n ac = pb(dc, 600);\n }\n ;\n ;\n }\n else {\n y.removeClass(uc, \"highlightTitle\");\n delete zb[tc];\n }\n ;\n ;\n };\n;\n function dc() {\n {\n var fin295keys = ((window.top.JSBNG_Replay.forInKeys)((zb))), fin295i = (0);\n var tc;\n for (; (fin295i < fin295keys.length); (fin295i++)) {\n ((tc) = (fin295keys[fin295i]));\n {\n var uc = zb[tc];\n if (uc.parentNode) {\n y.conditionClass(uc, \"highlightTitle\", bc);\n }\n else delete zb[tc];\n ;\n ;\n };\n };\n };\n ;\n bc = !bc;\n if (!Object.keys(zb).length) {\n JSBNG__clearInterval(ac);\n ac = null;\n }\n ;\n ;\n };\n;\n function ec(tc) {\n var uc = na.tokenizeThreadID(tc);\n switch (uc.type) {\n case \"user\":\n return fb[\":fb:mercury:chat:user-tab\"].build();\n };\n ;\n return fb[\":fb:mercury:chat:multichat-tab\"].build();\n };\n;\n function fc(tc) {\n var uc = ((tc._tabTemplate.getNode(\"input\").value || \"\")), vc = tc._fileUploader.getAttachments();\n if (lc(tc)) {\n hc(tc, uc, vc, function(wc) {\n var xc = tc._fileUploader.getImageIDs();\n if (((xc.length > 0))) {\n wc.photo_fbids = xc;\n wc.has_attachment = true;\n }\n ;\n ;\n ka.sendMessage(wc);\n tc._fileUploader.removeAttachments();\n tc._getNode(\"input\").value = \"\";\n ((tc._lastMessageIndicator && tc._lastMessageIndicator.resetState()));\n ((tc._messagesView && tc._messagesView.scrollToBottom()));\n });\n }\n ;\n ;\n };\n;\n function gc(tc, uc) {\n if (((uc === 0))) {\n return;\n }\n ;\n ;\n pc(tc, za.POST_PUBLISHED, {\n count: uc\n });\n tc._waterfallID = mb.generate();\n };\n;\n function hc(tc, uc, vc, wc) {\n ua.getThreadMeta(tc._threadID, function(xc) {\n var yc = ka.constructUserGeneratedMessageObject(uc, oa.CHAT_WEB, tc._threadID);\n if (((vc.length > 0))) {\n yc.has_attachment = true;\n yc.raw_attachments = vc;\n }\n ;\n ;\n if (ua.isNewEmptyLocalThread(tc._threadID)) {\n var zc = tc._sheetController.getAddFriendsParticipants();\n if (((((zc === null)) || ((zc.length === 0))))) {\n return;\n }\n else if (((zc.length === 1))) {\n var ad = ((\"user:\" + ma.getUserID(zc[0])));\n yc.thread_id = ad;\n }\n else ua.addParticipantsToThreadLocally(tc._threadID, zc);\n \n ;\n ;\n }\n ;\n ;\n if (ua.isEmptyLocalThread(tc._threadID)) {\n var bd = na.tokenizeThreadID(tc._threadID);\n yc.message_id = bd.value;\n yc.specific_to_list = xc.participants;\n }\n ;\n ;\n if (((typeof yc != \"undefined\"))) {\n yc.signatureID = tc._signatureID;\n }\n ;\n ;\n yc.ui_push_phase = x.UIPushPhase;\n wc(yc);\n if (((tc._threadID !== yc.thread_id))) {\n qc.inform(\"closed-tab\", tc._threadID);\n h.inform(\"chat/open-tab\", {\n thread_id: yc.thread_id\n });\n }\n ;\n ;\n });\n };\n;\n function ic(tc) {\n tc._blocked = true;\n tc._sheetController.openUploadWarningTabSheet();\n };\n;\n function jc(tc) {\n return ((tc._fileUploader.isUploading() || tc._photoUploader.isUploading()));\n };\n;\n function kc(tc) {\n return tc._fileUploader.isUploading();\n };\n;\n function lc(tc) {\n var uc = ((tc._tabTemplate.getNode(\"input\").value || \"\"));\n if (!sb.test(uc)) {\n return true;\n }\n ;\n ;\n if (((((tc._fileUploader.getAttachments().length > 0)) || ((tc._fileUploader.getImageIDs().length > 0))))) {\n return true;\n }\n ;\n ;\n return false;\n };\n;\n function mc(tc) {\n if (tc._blocked) {\n if (kc(tc)) {\n return;\n }\n ;\n ;\n tc._blocked = false;\n fc(tc);\n tc._sheetController.closeUploadWarningTabSheet();\n }\n ;\n ;\n };\n;\n function nc(tc) {\n tc._nubController.flyoutContentChanged();\n tc._attachmentsDiv.scrollTop = tc._attachmentsDiv.scrollHeight;\n };\n;\n function oc(tc, uc, vc) {\n tc._subscriptionsHandler.addSubscriptions(tc._photoUploader.subscribe(uc, function(wc, xc) {\n pc(tc, vc, xc);\n }));\n };\n;\n function pc(tc, uc, vc) {\n za.sendSignal(nb({\n qn: tc._waterfallID,\n step: uc,\n uploader: za.APP_CHAT\n }, ((vc || {\n }))));\n };\n;\n function qc(tc, uc, vc) {\n if (uc) {\n na.ensureThreadIsFetched(uc);\n }\n ;\n ;\n this._threadID = tc;\n this._signatureID = vc;\n this._eventListeners = [];\n this._tabTemplate = ec(tc);\n this._tabElem = this._tabTemplate.getRoot();\n this._waterfallID = mb.generate();\n if (!((this._getNode instanceof Function))) {\n tb.log(\"getnode_undefined\", {\n is_getnode_set: !!this._getNode,\n is_prototype_set: !!qc.prototype,\n is_window: ((window == this)),\n is_chat_tab_view: ((this instanceof qc)),\n ctor_name: ((this.constructor && this.constructor.JSBNG__name))\n });\n }\n ;\n ;\n this._subscriptionsHandler = new eb();\n this._fileUploader = new ia(this._tabTemplate.getNode(\"attachmentShelf\"), this._tabTemplate.getNode(\"attachButtonForm\"), this._tabTemplate.getNode(\"fileInput\"), this._tabTemplate.getNode(\"attachID\"));\n this._initializeUploader(this._fileUploader);\n this._initializeAutoSendPhotoUploader();\n this._attachmentsDiv = this._getNode(\"attachmentShelf\");\n this._sheetController = new v(this._threadID, this._getNode(\"sheet\"), this._tabElem);\n this._sheetController.onClickNewMessagesSheet(function() {\n ((this._messagesView && this._messagesView.scrollToBottom()));\n this.JSBNG__focus();\n qc.inform(\"read\", this._threadID);\n }.bind(this));\n this._sheetController.onClickThreadIsMutedSheet(function() {\n ta.showMuteChangeDialog(0, this._threadID);\n this.JSBNG__focus();\n }.bind(this));\n this._nubController = new xa().init(this._tabElem);\n this._sheetController.onResize(this._nubController.flyoutContentChanged.bind(this._nubController));\n this._contextualDialogController = new p(this._threadID, this._getNode(\"videoCallLink\"));\n if (((vb === null))) {\n vb = !o.get(\"seen_autosend_photo_nux\");\n }\n ;\n ;\n if (((wb === undefined))) {\n wb = o.get(\"show_sticker_nux\");\n }\n ;\n ;\n this._messagesView = null;\n var wc = this._getNode(\"conversationLink\");\n if (wc) {\n y.hide(wc);\n sa.renderTitanLink(tc, wc, y.show.bind(y, wc));\n }\n ;\n ;\n if (!ua.getCanonicalUserInThread(this._threadID)) {\n this._titlebarTooltipAnchor = this._getNode(\"titlebarText\");\n }\n ;\n ;\n var xc = this._getCanonicalUserID();\n if (this._isTitleTextLinked()) {\n ma.get(((\"fbid:\" + xc)), function(id) {\n if (id.href) {\n var jd = this._getNode(\"titlebarText\");\n jd.setAttribute(\"href\", id.href);\n jd.removeAttribute(\"rel\");\n y.removeClass(jd, \"noLink\");\n }\n ;\n ;\n }.bind(this));\n }\n ;\n ;\n var yc = this._getNode(\"inputContainer\").clientHeight;\n gb.getInstance(this._getNode(\"input\")).subscribe(\"resize\", function() {\n var id = this._getNode(\"inputContainer\").clientHeight;\n if (((id != yc))) {\n this._nubController.flyoutContentChanged();\n }\n ;\n ;\n yc = id;\n }.bind(this));\n var zc = null, ad = this._getNode(\"inputContainer\");\n this._nubController.subscribe(\"resize\", function() {\n if (!zc) {\n zc = this._tabElem.clientWidth;\n }\n ;\n ;\n var id = 2, jd = ((zc - ((ad.clientWidth + id)))), kd = ((fa.isRTL() ? \"left\" : \"right\"));\n db.set(this._iconsContainerNode, kd, ((jd + \"px\")));\n gb.getInstance(this._getNode(\"input\")).update();\n }.bind(this));\n var bd = o.get(\"chat_tab_height\");\n if (bd) {\n var cd = this._tabTemplate.getNode(\"chatWrapper\");\n db.set(cd, \"height\", ((bd + \"px\")));\n }\n ;\n ;\n this._listen(\"closeButton\", \"click\", this._closeClicked);\n this._listen(\"titlebarCloseButton\", \"click\", this._closeClicked);\n this._listen(\"titlebarCloseButton\", \"mousedown\", this._closePreClicked);\n this._listen(\"dockButton\", \"click\", this._nubClicked);\n this._listen(\"dockButton\", \"keydown\", this._dockKeyDown);\n this._listen(\"nubFlyoutTitlebar\", \"click\", this._titleClicked);\n this._listen(\"chatConv\", \"click\", this._chatConvClicked);\n this._listen(\"inputContainer\", \"click\", this._inputContainerClicked);\n this._listen(\"addFriendLink\", \"click\", this._addFriendLinkClicked, true);\n this._listen(\"addToThreadLink\", \"click\", this._addFriendLinkClicked, true);\n this._listen(\"nameConversationLink\", \"click\", this._nameConversationLinkClicked, true);\n this._listen(\"clearWindowLink\", \"click\", this._clearHistory, true);\n this._listen(\"unsubscribeLink\", \"click\", this._unsubscribeLinkClicked, true);\n this._listen(\"videoCallLink\", \"click\", this._callClicked, true);\n this._listen(\"reportSpamLink\", \"click\", this._reportSpamClicked, true);\n this._listen(\"muteThreadLink\", \"click\", this._showMuteSettingDialog.bind(this, -1), true);\n this._listen(\"unmuteThreadLink\", \"click\", this._showMuteSettingDialog.bind(this, 0), true);\n this._listen(\"input\", \"JSBNG__focus\", this._focusTab);\n this._listen(\"input\", \"JSBNG__blur\", this._blurTab);\n this._listen(\"sheet\", \"keydown\", function(JSBNG__event) {\n if (((!JSBNG__event.getModifiers().any && ((JSBNG__event.keyCode === ea.TAB))))) {\n this._getNode(\"input\").JSBNG__focus();\n JSBNG__event.kill();\n }\n ;\n ;\n }.bind(this));\n this._iconsContainerNode = this._getNode(\"iconsContainer\");\n var dd = this._getNode(\"emoticons\");\n this._emoticonView = null;\n if (dd) {\n this._emoticonView = new wa(dd, this._getNode(\"input\"));\n }\n ;\n ;\n var ed = this._getNode(\"stickers\");\n if (ed) {\n this._stickerController = new pa(ed);\n if (ha.BigThumbsUpStickerWWWGK) {\n this._listen(\"bigThumbsUp\", \"click\", this._bigThumbsUpClicked);\n }\n ;\n ;\n this._subscriptionsHandler.addSubscriptions(this._stickerController.subscribe(\"stickerselected\", function(id, jd) {\n this._stickerSelected(jd.id);\n }.bind(this)));\n }\n ;\n ;\n if (kb.firefox()) {\n this._listen(\"input\", \"keypress\", this._inputKeyDown);\n }\n else this._listen(\"input\", \"keydown\", this._inputKeyDown);\n ;\n ;\n this._privacyLink = this._getNode(\"privacyLink\");\n if (this._privacyLink) {\n this._privacyActionController = new r(xc, this._updatePrivacyLink.bind(this));\n this._eventListeners.push(g.listen(this._privacyLink, \"click\", this._privacyActionController.togglePrivacy.bind(this._privacyActionController)));\n }\n ;\n ;\n ua.getThreadMeta(this._threadID, function(id) {\n var jd = ((xc || ((o.get(\"chat_multi_typ_send\") && !id.is_canonical))));\n if (jd) {\n na.getServerThreadID(this._threadID, function(kd) {\n this._lastMessageIndicator = new ib(xc, this._getNode(\"input\"), \"mercury-chat\", null, kd);\n }.bind(this));\n }\n ;\n ;\n this._setUpMutingSettings(id);\n }.bind(this));\n var fd = this._getNode(\"muteGroupLink\");\n if (fd) {\n var gd = ua.getCanonicalGroupInThread(this._threadID);\n if (gd) {\n fd.setAttribute(\"ajaxify\", jb(fd.getAttribute(\"ajaxify\")).addQueryData({\n id: gd\n }));\n }\n ;\n ;\n }\n ;\n ;\n s.removeEmptyHrefs(this._tabElem);\n ub[tc] = this;\n this.updateAvailableStatus();\n this.updateTab();\n this._setCloseTooltip(false);\n var hd = {\n threadID: tc,\n userID: xc,\n signatureID: this._signatureID\n };\n new l(\"/ajax/chat/opentab_tracking.php\", hd).send();\n cb.onBeforeUnload(function() {\n if (((lc(this) || jc(this)))) {\n return \"You haven't sent your message yet. Do you want to leave without sending?\";\n }\n ;\n ;\n if (ka.getNumberLocalMessages(this._threadID)) {\n return \"Your message is still being sent. Are you sure you want to leave?\";\n }\n ;\n ;\n return null;\n }.bind(this), false);\n cb.onUnload(function() {\n rc(this);\n }.bind(this));\n };\n;\n function rc(tc) {\n if (tc._photoUploader.isUploading()) {\n pc(tc, za.CANCEL_DURING_UPLOAD);\n }\n ;\n ;\n };\n;\n function sc() {\n {\n var fin296keys = ((window.top.JSBNG_Replay.forInKeys)((ub))), fin296i = (0);\n var tc;\n for (; (fin296i < fin296keys.length); (fin296i++)) {\n ((tc) = (fin296keys[fin296i]));\n {\n ub[tc].updateAvailableStatus();\n ub[tc].updateMultichatTooltip();\n };\n };\n };\n ;\n };\n;\n h.subscribe([\"buddylist/availability-changed\",], sc);\n ab.subscribe([\"privacy-changed\",\"privacy-availability-changed\",], sc);\n n.subscribe(n.ON_CHANGED, function() {\n {\n var fin297keys = ((window.top.JSBNG_Replay.forInKeys)((ub))), fin297i = (0);\n var tc;\n for (; (fin297i < fin297keys.length); (fin297i++)) {\n ((tc) = (fin297keys[fin297i]));\n {\n ua.getThreadMeta(tc, function(uc) {\n ub[tc]._updateUnreadCount(uc);\n });\n ;\n };\n };\n };\n ;\n });\n va.subscribe(\"state-changed\", function(tc, uc) {\n {\n var fin298keys = ((window.top.JSBNG_Replay.forInKeys)((uc))), fin298i = (0);\n var vc;\n for (; (fin298i < fin298keys.length); (fin298i++)) {\n ((vc) = (fin298keys[fin298i]));\n {\n var wc = ((uc[vc] && uc[vc].length)), xc = ub[vc];\n ((xc && xc.showTypingIndicator(wc)));\n };\n };\n };\n ;\n });\n qa.subscribe(\"threads-updated\", function(tc, uc) {\n {\n var fin299keys = ((window.top.JSBNG_Replay.forInKeys)((ub))), fin299i = (0);\n var vc;\n for (; (fin299i < fin299keys.length); (fin299i++)) {\n ((vc) = (fin299keys[fin299i]));\n {\n ((uc[vc] && ub[vc].updateTab()));\n ;\n };\n };\n };\n ;\n });\n qa.subscribe(\"threads-deleted\", function(tc, uc) {\n {\n var fin300keys = ((window.top.JSBNG_Replay.forInKeys)((ub))), fin300i = (0);\n var vc;\n for (; (fin300i < fin300keys.length); (fin300i++)) {\n ((vc) = (fin300keys[fin300i]));\n {\n ((uc[vc] && qc.inform(\"thread-deleted\", vc)));\n ;\n };\n };\n };\n ;\n });\n nb(qc, i, {\n get: function(tc) {\n return ub[tc];\n }\n });\n nb(qc.prototype, {\n getThreadID: function() {\n return this._threadID;\n },\n showAddFriend: function() {\n (function() {\n this._sheetController.openAddFriendsSheet();\n }).bind(this).defer();\n },\n showPeopleSuggestions: function() {\n (function() {\n this._peopleSuggestions = new u(this._sheetController, this._getNode(\"conversation\"), this._getNode(\"loadingIndicator\"));\n }).bind(this).defer();\n },\n showNameConversation: function(tc) {\n (function() {\n this._sheetController.openNameConversationSheet(tc);\n }).bind(this).defer();\n },\n hideAutomaticNameConversation: function() {\n (function() {\n this._sheetController.closeAutomaticNameConversationSheet();\n }).bind(this).defer();\n },\n isVisible: function() {\n return y.shown(this._tabElem);\n },\n setVisibleState: function(tc, uc) {\n var vc = y.shown(this._tabElem), wc = y.hasClass(this._tabElem, \"opened\");\n y.conditionShow(this._tabElem, tc);\n y.conditionClass(this._tabElem, \"opened\", uc);\n if (((((!((vc && wc)) && tc)) && uc))) {\n if (!this._messagesView) {\n this._messagesView = new t(this._threadID, this._sheetController, this._getNode(\"chatConv\"), this._getNode(\"conversation\"), this._getNode(\"loadingIndicator\"), this._getNode(\"lastMessageIndicator\"), this._getNode(\"typingIndicator\"));\n }\n ;\n ;\n this._nubController.flyoutContentChanged();\n this._messagesView.scrollToBottom();\n }\n ;\n ;\n if (((((vc && wc)) && !((tc && uc))))) {\n this._contextualDialogController.tabNotActive();\n }\n ;\n ;\n },\n JSBNG__focus: function() {\n var tc = ((y.hasClass(this._tabElem, \"opened\") ? \"input\" : \"dockButton\"));\n this._getNode(tc).JSBNG__focus();\n },\n isFocused: function() {\n var tc = JSBNG__document.activeElement;\n return ((ya.byClass(tc, \"-cx-PRIVATE-fbMercuryChatTab__root\") === this._tabElem));\n },\n hasEmptyInput: function() {\n return sb.test(this._getNode(\"input\").value);\n },\n getInputElem: function() {\n return this._getNode(\"input\");\n },\n setInput: function(tc) {\n this._getNode(\"input\").value = tc;\n },\n insertBefore: function(tc) {\n ba.insertBefore(tc._tabElem, this._tabElem);\n },\n appendTo: function(tc) {\n ba.appendContent(tc, this._tabElem);\n },\n nextTabIs: function(tc) {\n var uc = ((tc && tc._tabElem));\n return ((this._tabElem.nextSibling == uc));\n },\n getScrollTop: function() {\n return ba.JSBNG__find(this._tabElem, \".scrollable\").scrollTop;\n },\n setScrollTop: function(tc) {\n ba.JSBNG__find(this._tabElem, \".scrollable\").scrollTop = tc;\n },\n destroy: function() {\n ba.remove(this._tabElem);\n ((this._emoticonView && this._emoticonView.destroy()));\n ((this._stickerController && this._stickerController.destroy()));\n while (this._eventListeners.length) {\n this._eventListeners.pop().remove();\n ;\n };\n ;\n ((this._messagesView && this._messagesView.destroy()));\n this._sheetController.destroy();\n this._fileUploader.destroy();\n this._photoUploader.destroy();\n this._subscriptionsHandler.release();\n this._contextualDialogController.destroy();\n ((this._privacyActionController && this._privacyActionController.destroy()));\n delete ub[this._threadID];\n aa.unregisterNubController(this._nubController);\n ca.reset(this._getNode(\"input\"));\n },\n updateAvailableStatus: function() {\n ua.getThreadMeta(this._threadID, function(tc) {\n var uc = m.OFFLINE, vc = this._getCanonicalUserID();\n if (vc) {\n uc = bb.get(vc);\n }\n else {\n var wc = tc.participants.map(function(yc) {\n return ma.getUserID(yc);\n });\n uc = bb.getGroup(wc);\n }\n ;\n ;\n if (!w.isOnline()) {\n uc = m.OFFLINE;\n }\n ;\n ;\n if (vc) {\n this._updateCallLink(uc);\n }\n ;\n ;\n y.conditionClass(this._tabElem, \"-cx-PRIVATE-fbMercuryChatUserTab__active\", ((uc === m.ACTIVE)));\n y.conditionClass(this._tabElem, \"-cx-PRIVATE-fbMercuryChatUserTab__mobile\", ((uc === m.MOBILE)));\n var xc = this._getNode(\"presenceIndicator\");\n switch (uc) {\n case m.ACTIVE:\n xc.setAttribute(\"alt\", \"Online\");\n break;\n case m.MOBILE:\n xc.setAttribute(\"alt\", \"Mobile\");\n break;\n default:\n xc.removeAttribute(\"alt\");\n break;\n };\n ;\n }.bind(this));\n },\n updateTab: function() {\n ua.getThreadMeta(this._threadID, function(tc) {\n if (!tc.is_subscribed) {\n qc.inform(\"unsubscribed\", this._threadID);\n return;\n }\n ;\n ;\n sa.renderAndSeparatedParticipantList(this._threadID, [this._getNode(\"JSBNG__name\"),this._getNode(\"titlebarText\"),], {\n names_renderer: ra.renderShortNames,\n check_length: true\n });\n if (((tc.is_joinable && !o.get(\"joinable_conversation_is_modal\")))) {\n this._updateJoinableAddFriendSheet(tc);\n }\n ;\n ;\n this._updateMutingSettings(tc);\n this._updateUnreadCount(tc);\n this.updateMultichatTooltip();\n this._updateArchiveWarning(tc);\n this._updateNewThread(tc);\n this._updateNameConversationSheet(tc);\n }.bind(this));\n },\n _updateNameConversationSheet: function(tc) {\n if (((((((!tc.JSBNG__name && !tc.is_canonical)) && !tc.name_conversation_sheet_dismissed)) && !ua.isEmptyLocalThread(tc.thread_id)))) {\n this.showNameConversation(true);\n }\n else this.hideAutomaticNameConversation();\n ;\n ;\n },\n _updateJoinableAddFriendSheet: function(tc) {\n var uc = ma.user, vc = tc.participants.filter(function(wc) {\n return ((wc != uc));\n });\n if (((tc.is_joinable && ((vc.length < 1))))) {\n this.showAddFriend();\n }\n ;\n ;\n },\n updateSignatureID: function(tc) {\n this._signatureID = tc;\n },\n _showPhotoNUXIfNecessary: function() {\n if (vb) {\n vb = false;\n new k(\"/ajax/chat/photo_nux.php\").setRelativeTo(this._getNode(\"photoAttachLink\")).setData({\n threadID: this._threadID\n }).send();\n return true;\n }\n ;\n ;\n },\n _showStickerNUXIfNecessary: function() {\n if (wb) {\n wb = false;\n new k(\"/ajax/messaging/stickers/nux\").setRelativeTo(this._getNode(\"emoticons\")).setData({\n threadID: this._threadID\n }).send();\n return true;\n }\n ;\n ;\n },\n _setUpMutingSettings: function(tc) {\n var uc = ta.isThreadMuted(tc);\n if (uc) {\n this._sheetController.openThreadIsMutedTabSheet();\n }\n ;\n ;\n this._updateActionMenu(uc);\n },\n _updateMutingSettings: function(tc) {\n var uc = ta.isThreadMuted(tc);\n if (((uc && y.shown(this._getNode(\"muteThreadLink\").parentNode)))) {\n this._sheetController.openThreadIsMutedTabSheet();\n }\n else if (((!uc && y.shown(this._getNode(\"unmuteThreadLink\").parentNode)))) {\n this._sheetController.closeThreadIsMutedTabSheet();\n }\n \n ;\n ;\n this._updateActionMenu(uc);\n },\n _updateActionMenu: function(tc) {\n y.conditionShow(this._getNode(\"muteThreadLink\").parentNode, !tc);\n y.conditionShow(this._getNode(\"unmuteThreadLink\").parentNode, tc);\n },\n _updateArchiveWarning: function(tc) {\n var uc = false;\n ma.get(ma.user, function(vc) {\n uc = vc.employee;\n if (uc) {\n ma.getMulti(tc.participants, this._showArchiveWarningIfAllParticipantsAreEmployees.bind(this));\n }\n ;\n ;\n }.bind(this));\n },\n _updateNewThread: function(tc) {\n var uc = ua.isNewEmptyLocalThread(tc.thread_id);\n y.conditionShow(this._getNode(\"dropdown\"), !uc);\n if (uc) {\n this.showAddFriend();\n if (o.get(\"www_chat_compose_suggestions\", 0)) {\n this.showPeopleSuggestions();\n }\n ;\n ;\n }\n else if (this._peopleSuggestions) {\n this._peopleSuggestions.destroy();\n this._peopleSuggestions = null;\n }\n \n ;\n ;\n },\n _showArchiveWarningIfAllParticipantsAreEmployees: function(tc) {\n var uc = true;\n {\n var fin301keys = ((window.top.JSBNG_Replay.forInKeys)((tc))), fin301i = (0);\n var vc;\n for (; (fin301i < fin301keys.length); (fin301i++)) {\n ((vc) = (fin301keys[fin301i]));\n {\n uc = ((uc && tc[vc].employee));\n ;\n };\n };\n };\n ;\n var wc = this._getNode(\"titanArchiveWarning\");\n if (wc) {\n if (this._titlebarTooltipAnchor) {\n y.conditionClass(this._titlebarTooltipAnchor, \"narrowTitleBar\", uc);\n }\n ;\n ;\n y.conditionShow(wc, uc);\n }\n ;\n ;\n },\n updateMultichatTooltip: function() {\n ua.getThreadMeta(this._threadID, function(tc) {\n if (!tc.is_canonical) {\n yb(this._titlebarTooltipAnchor, tc.participants);\n }\n ;\n ;\n }.bind(this));\n },\n _getNode: function(tc) {\n return this._tabTemplate.getNode(tc);\n },\n _getCanonicalUserID: function() {\n return ua.getCanonicalUserInThread(this._threadID);\n },\n _listen: function(tc, JSBNG__event, uc, vc) {\n var wc = this._getNode(tc);\n if (wc) {\n this._eventListeners.push(g.listen(wc, JSBNG__event, uc.bind(this)));\n }\n else if (!vc) {\n throw new Error(((((\"Could not find node \\\"\" + tc)) + \"\\\"\")));\n }\n \n ;\n ;\n },\n _closePreClicked: function(tc) {\n this._closeMouseDown = true;\n },\n _closeClicked: function(tc) {\n rc(this);\n qc.inform(\"closed-tab\", this._threadID);\n tc.kill();\n },\n _nubClicked: function(tc) {\n tc.kill();\n return qc.inform(\"nub-activated\", this._threadID);\n },\n _dockKeyDown: function(JSBNG__event) {\n if (((((JSBNG__event.keyCode === ea.RETURN)) || ((JSBNG__event.keyCode === ea.SPACE))))) {\n qc.inform(\"nub-activated\", this._threadID);\n JSBNG__event.kill();\n }\n else this._handleHotkeyPressed(JSBNG__event);\n ;\n ;\n },\n _handleHotkeyPressed: function(JSBNG__event) {\n if (((JSBNG__event.keyCode === ea.ESC))) {\n rc(this);\n qc.inform(\"esc-pressed\", this._threadID);\n JSBNG__event.kill();\n }\n else if (((((JSBNG__event.keyCode === ea.TAB)) && !JSBNG__event.ctrlKey))) {\n var tc = qc.inform(\"tab-pressed\", {\n id: this._threadID,\n shiftPressed: JSBNG__event.shiftKey\n });\n ((!tc && JSBNG__event.kill()));\n }\n \n ;\n ;\n },\n _isTitleTextLinked: function() {\n var tc = this._getCanonicalUserID();\n return ((tc && o.get(\"chat_tab_title_link_timeline\")));\n },\n _titleClicked: function(JSBNG__event) {\n var tc = JSBNG__event.getTarget(), uc = ya.byClass(tc, \"titlebarText\"), vc = ((uc && this._isTitleTextLinked()));\n if (((((!vc && !ya.byClass(tc, \"uiSelector\"))) && !ya.byClass(tc, \"addToThread\")))) {\n qc.inform(\"lower-activated\", this._threadID);\n JSBNG__event.kill();\n }\n ;\n ;\n },\n _callClicked: function(tc) {\n var uc = this._getCanonicalUserID();\n if (lb.availableForCall(uc)) {\n var vc = \"chat_tab_icon\";\n if (((tc.target && y.hasClass(tc.target, \"video_call_promo\")))) {\n vc = \"chat_tab_icon_promo\";\n }\n else if (((tc.target && y.hasClass(tc.target, \"video_call_tour\")))) {\n vc = \"chat_tab_icon_tour\";\n }\n \n ;\n ;\n qc.inform(\"video-call-clicked\", {\n threadID: this._threadID,\n userID: uc,\n clickSource: vc\n });\n }\n ;\n ;\n return false;\n },\n _addFriendLinkClicked: function() {\n this.showAddFriend();\n },\n _nameConversationLinkClicked: function() {\n this.showNameConversation();\n },\n _clearHistory: function() {\n var tc = ua.getThreadMetaNow(this._threadID);\n if (tc) {\n var uc = this._getCanonicalUserID();\n na.clearChat(this._threadID, uc, tc.timestamp);\n }\n ;\n ;\n },\n _unsubscribeLinkClicked: function() {\n var tc = [];\n tc.push({\n JSBNG__name: \"unsubscribe\",\n label: \"Leave Conversation\",\n handler: this._unsubscribeToThread.bind(this)\n });\n tc.push(z.CANCEL);\n new z().setTitle(\"Leave Conversation?\").setBody(\"You will stop receiving messages from this conversation and people will see that you left.\").setButtons(tc).show();\n },\n _bigThumbsUpClicked: function() {\n this._stickerSelected(rb);\n },\n _reportSpamClicked: function() {\n var tc = this._getCanonicalUserID(), uc = jb(\"/ajax/chat/report.php\").addQueryData({\n id: tc\n }).addQueryData({\n src: \"top_report_link\"\n });\n j.send(new k(uc));\n },\n _showMuteSettingDialog: function(tc) {\n ta.showMuteChangeDialog(tc, this._threadID);\n },\n _focusTab: function() {\n y.addClass(this._tabElem, \"focusedTab\");\n if (this._peopleSuggestions) {\n this._peopleSuggestions.clearSuggestions();\n }\n ;\n ;\n this.tryMarkAsRead();\n this._contextualDialogController.tabFocused();\n if (((!xb && ((this._showPhotoNUXIfNecessary() || this._showStickerNUXIfNecessary()))))) {\n h.subscribe([\"ChatNUX/show\",\"ChatNUX/hide\",], function(JSBNG__event) {\n xb = ((JSBNG__event === \"ChatNUX/show\"));\n });\n }\n ;\n ;\n this._closeMouseDown = false;\n this._setCloseTooltip(true);\n },\n _blurTab: function() {\n y.removeClass(this._tabElem, \"focusedTab\");\n ((!this._closeMouseDown && this._setCloseTooltip(false)));\n },\n _setCloseTooltip: function(tc) {\n var uc = this._getNode(\"titlebarCloseButton\"), vc = ((tc ? \"Press Esc to close\" : \"Close tab\"));\n hb.set(uc, vc, \"above\");\n },\n _inputKeyDown: function(JSBNG__event) {\n if (((((JSBNG__event.keyCode === ea.RETURN)) && !JSBNG__event.shiftKey))) {\n if (kc(this)) {\n ic(this);\n JSBNG__event.kill();\n return;\n }\n ;\n ;\n fc(this);\n JSBNG__event.kill();\n return;\n }\n ;\n ;\n if (((((((JSBNG__event.keyCode === ea.DOWN)) && JSBNG__event.shiftKey)) && ((this._getNode(\"input\").value === \"\"))))) {\n qc.inform(\"lower-activated\", this._threadID);\n JSBNG__event.kill();\n return;\n }\n ;\n ;\n this._handleHotkeyPressed(JSBNG__event);\n },\n tryMarkAsRead: function() {\n if (((!this._messagesView || this._messagesView.isScrolledToBottom()))) {\n qc.inform(\"read\", this._threadID);\n return true;\n }\n ;\n ;\n return false;\n },\n _chatConvClicked: function(tc) {\n this.tryMarkAsRead();\n if (((ya.byTag(tc.getTarget(), \"a\") || ba.JSBNG__getSelection()))) {\n return;\n }\n ;\n ;\n this.JSBNG__focus();\n },\n _inputContainerClicked: function(tc) {\n this.tryMarkAsRead();\n this.JSBNG__focus();\n },\n showTypingIndicator: function(tc) {\n var uc = ua.getThreadMetaNow(this._threadID), vc = ((this._getCanonicalUserID() || ((((o.get(\"chat_multi_typ\") && uc)) && !uc.is_canonical))));\n if (vc) {\n y.conditionClass(this._tabElem, \"typing\", tc);\n }\n ;\n ;\n },\n _updateUnreadCount: function(tc) {\n var uc = tc.unread_count;\n if (((typeof uc != \"undefined\"))) {\n var vc = ((!!uc && ((!n.showsTabUnreadUI || n.showsTabUnreadUI())))), wc = this._getNode(\"numMessages\");\n y.conditionShow(wc, vc);\n y.conditionClass(this._tabElem, \"highlightTab\", vc);\n cc(this._threadID, this._tabElem, vc);\n ba.setContent(wc, uc);\n }\n ;\n ;\n },\n _updateCallLink: function(tc) {\n var uc = this._getNode(\"videoCallLink\");\n if (w.isOnline()) {\n var vc = this._getCanonicalUserID(), wc = ((\"fbid:\" + vc));\n ma.get(wc, function(xc) {\n if (lb.availableForCall(vc)) {\n hb.set(uc, qb._(\"Start a video call with {firstname}\", {\n firstname: xc.short_name\n }));\n this._updateCallBackLinks(this._tabElem, true);\n }\n else {\n hb.set(uc, qb._(\"{firstname} is currently unavailable for video calling\", {\n firstname: xc.short_name\n }));\n this._hideVideoCallouts();\n this._updateCallBackLinks(this._tabElem, false);\n }\n ;\n ;\n }.bind(this));\n }\n else {\n hb.set(uc, \"You must be online to make a call.\");\n this._hideVideoCallouts();\n this._updateCallBackLinks(JSBNG__document.body, false);\n }\n ;\n ;\n },\n _updateCallBackLinks: function(tc, uc) {\n var vc = ba.scry(tc, \"a.callBackLink\");\n if (uc) {\n vc.forEach(y.show);\n }\n else vc.forEach(y.hide);\n ;\n ;\n },\n _hideVideoCallouts: function() {\n this._contextualDialogController.hideVideoCallouts();\n },\n _updatePrivacyLink: function(tc) {\n if (((tc == r.OFFLINE))) {\n ba.setContent(this._privacyLink, \"Go online\");\n }\n else {\n var uc = this._getCanonicalUserID(), vc = ((\"fbid:\" + uc));\n ma.get(vc, function(wc) {\n var xc = null;\n if (((tc == r.BLOCKED))) {\n xc = qb._(\"Turn On Chat for {name}\", {\n JSBNG__name: wc.short_name\n });\n }\n else xc = qb._(\"Turn Off Chat for {name}\", {\n JSBNG__name: wc.short_name\n });\n ;\n ;\n ba.setContent(this._privacyLink, xc);\n }.bind(this));\n }\n ;\n ;\n },\n _unsubscribeToThread: function() {\n if (ua.isEmptyLocalThread(this._threadID)) {\n qc.inform(\"unsubscribed\", this._threadID);\n }\n else {\n var tc = ka.constructLogMessageObject(oa.CHAT_WEB, this._threadID, ja.UNSUBSCRIBE, {\n });\n ka.sendMessage(tc);\n }\n ;\n ;\n return true;\n },\n _initializeUploader: function(tc) {\n this._subscriptionsHandler.addSubscriptions(tc.subscribe([\"all-uploads-completed\",\"upload-canceled\",], function() {\n mc(this);\n }.bind(this)), tc.subscribe(\"dom-updated\", function() {\n nc(this);\n }.bind(this)), tc.subscribe(\"submit\", function() {\n this._getNode(\"input\").JSBNG__focus();\n }.bind(this)));\n },\n _initializeAutoSendPhotoUploader: function() {\n this._photoUploader = new q(this._tabTemplate.getNode(\"photoAttachButtonForm\"), this._tabTemplate.getNode(\"photoFileInput\"), this._tabTemplate.getNode(\"photoAttachID\"));\n var tc = {\n };\n oc(this, \"submit\", za.UPLOAD_START);\n oc(this, \"all-uploads-completed\", za.ALL_UPLOADS_DONE);\n oc(this, \"all-uploads-failed\", za.CLIENT_ERROR);\n this._subscriptionsHandler.addSubscriptions(this._photoUploader.subscribe(\"submit\", function(uc, vc) {\n hc(this, \"\", [], function(wc) {\n tc[vc.upload_id] = wc;\n if (((vc.preview_attachments.length > 0))) {\n wc.has_attachment = true;\n wc.preview_attachments = vc.preview_attachments;\n }\n ;\n ;\n wc.client_state = la.DO_NOT_SEND_TO_SERVER;\n wc.JSBNG__status = ga.RESENDING;\n ka.sendMessage(wc);\n });\n this._getNode(\"input\").JSBNG__focus();\n }.bind(this)), this._photoUploader.subscribe(\"all-uploads-failed\", function(uc, vc) {\n var wc = tc[vc.upload_id];\n delete tc[vc.upload_id];\n ka.deleteMessages(wc.thread_id, [wc.message_id,]);\n }.bind(this)), this._photoUploader.subscribe(\"all-uploads-completed\", function(uc, vc) {\n var wc = tc[vc.upload_id];\n delete tc[vc.upload_id];\n wc.image_ids = vc.image_ids;\n wc.client_state = la.SEND_TO_SERVER;\n ka.sendMessage(wc);\n var xc = ((vc.image_ids.length || vc.attachments.length));\n gc(this, xc);\n }.bind(this)));\n },\n _stickerSelected: function(tc) {\n hc(this, \"\", [], function(uc) {\n uc.has_attachment = true;\n uc.sticker_id = tc;\n ka.sendMessage(uc);\n this.JSBNG__focus();\n }.bind(this));\n },\n _emoticonView: null\n });\n e.exports = qc;\n});\n__d(\"ChatNewMessageHandler\", [\"ChatActivity\",\"ChatTabModel\",\"ChatTabView\",\"JSLogger\",\"MercuryAssert\",\"MercuryBrowserAlerts\",\"MercuryUnseenState\",], function(a, b, c, d, e, f) {\n var g = b(\"ChatActivity\"), h = b(\"ChatTabModel\"), i = b(\"ChatTabView\"), j = b(\"JSLogger\"), k = b(\"MercuryAssert\"), l = b(\"MercuryBrowserAlerts\"), m = b(\"MercuryUnseenState\").get(), n = j.create(\"chat_new_message\"), o = {\n _raiseTab: function(p, q) {\n var r = h.getTab(p), s = false;\n if (r) {\n s = r.raised;\n }\n else {\n h.raiseTab(p, false);\n s = true;\n }\n ;\n ;\n q.to_new_tab = !r;\n q.to_raised_tab = !!s;\n },\n _notify: function(p, q, r) {\n var s = i.get(p);\n r.view_is_visible = ((s && s.isVisible()));\n r.view_is_focused = ((s && s.isFocused()));\n if (!r.view_is_visible) {\n n.log(\"message_to_hidden\");\n }\n ;\n ;\n r.is_active = g.isActive();\n l.messageReceived(q);\n },\n _promoteTab: function(p, q, r) {\n if (((((r && !r[p])) && q))) {\n h.promoteThreadInPlaceOfThread(p, q);\n }\n ;\n ;\n },\n newMessage: function(p, q, r, s) {\n k.isThreadID(p);\n var t = {\n thread_id: p,\n message_id: q.message_id\n };\n this._raiseTab(p, t);\n this._promoteTab(p, r, s);\n this._notify(p, q, t);\n n.log(\"message\", t);\n }\n };\n l.subscribe(\"before-alert\", function(p, JSBNG__event) {\n var q = JSBNG__event.threadID, r = i.get(q), s = h.getTab(q);\n if (((((((((((s && s.raised)) && r)) && r.isVisible())) && r.isFocused())) && r.tryMarkAsRead()))) {\n m.markThreadSeen(q);\n JSBNG__event.cancelAlert();\n }\n ;\n ;\n });\n e.exports = o;\n});\n__d(\"ChatTabPresence\", [\"AvailableList\",\"ChatTabModel\",\"MercuryThreads\",], function(a, b, c, d, e, f) {\n var g = b(\"AvailableList\"), h = b(\"ChatTabModel\"), i = b(\"MercuryThreads\").get(), j = {\n };\n function k(l) {\n var m = i.getCanonicalUserInThread(l);\n if (m) {\n g.updateForID(m);\n }\n ;\n ;\n };\n;\n h.subscribe(\"chat/tabs-changed\", function(JSBNG__event, l) {\n l.tabs.forEach(function(m) {\n if (((m.raised && !j[m.id]))) {\n k(m.id);\n }\n ;\n ;\n });\n j = {\n };\n l.tabs.forEach(function(m) {\n if (m.raised) {\n j[m.id] = true;\n }\n ;\n ;\n });\n });\n e.exports = {\n };\n});\n__d(\"ChatTabPolicy\", [\"ChatBehavior\",\"FBDesktopPlugin\",\"JSLogger\",\"MercuryActionTypeConstants\",\"MercuryAssert\",\"MercuryParticipants\",\"MercuryParticipantTypes\",\"MercurySourceType\",\"MercuryThreadMode\",\"MercuryThreadMuter\",\"MercuryUnseenState\",\"MessagingTag\",\"PresencePrivacy\",\"ShortProfiles\",], function(a, b, c, d, e, f) {\n var g = b(\"ChatBehavior\"), h = b(\"FBDesktopPlugin\"), i = b(\"JSLogger\"), j = b(\"MercuryActionTypeConstants\"), k = b(\"MercuryAssert\"), l = b(\"MercuryParticipants\"), m = b(\"MercuryParticipantTypes\"), n = b(\"MercurySourceType\"), o = b(\"MercuryThreadMode\"), p = b(\"MercuryThreadMuter\"), q = b(\"MercuryUnseenState\").get(), r = b(\"MessagingTag\"), s = b(\"PresencePrivacy\"), t = b(\"ShortProfiles\"), u = i.create(\"tab_policy\");\n function v(w, x) {\n q.markThreadSeen(w, x);\n };\n;\n e.exports = {\n messageIsAllowed: function(w, x, y) {\n var z = w.thread_id, aa = x.message_id;\n k.isThreadID(z);\n k.isParticipantID(x.author);\n var ba;\n if (p.isThreadMuted(w)) {\n ba = {\n thread_id: z,\n message_id: aa,\n mute_settings: w.mute_settings\n };\n u.log(\"message_thread_muted\", ba);\n return;\n }\n ;\n ;\n if (((w.mode == o.OBJECT_ORIGINATED))) {\n ba = {\n thread_id: z,\n message_id: aa,\n mode: w.mode\n };\n u.log(\"message_object_originated\", ba);\n return;\n }\n ;\n ;\n if (((((x.source == n.EMAIL)) || ((x.source == n.TITAN_EMAIL_REPLY))))) {\n ba = {\n thread_id: z,\n message_id: aa,\n source: x.source\n };\n u.log(\"message_source_not_allowed\", ba);\n return;\n }\n ;\n ;\n var ca = l.getUserID(x.author);\n if (!ca) {\n u.log(\"message_bad_author\", {\n thread_id: z,\n message_id: aa,\n user: ca\n });\n return;\n }\n ;\n ;\n if (((x.action_type != j.USER_GENERATED_MESSAGE))) {\n ba = {\n thread_id: z,\n message_id: aa,\n type: x.action_type\n };\n u.log(\"message_non_user_generated\", ba);\n return;\n }\n ;\n ;\n if (((w.is_canonical_user && !g.notifiesUserMessages()))) {\n u.log(\"message_jabber\", {\n thread_id: z,\n message_id: aa\n });\n v(z, true);\n return;\n }\n ;\n ;\n if (((w.is_canonical && !w.canonical_fbid))) {\n u.log(\"message_canonical_contact\", {\n thread_id: z,\n message_id: aa\n });\n return;\n }\n ;\n ;\n if (h.shouldSuppressMessages()) {\n u.log(\"message_desktop\", {\n thread_id: z,\n message_id: aa\n });\n return;\n }\n ;\n ;\n if (((w.folder != r.INBOX))) {\n u.log(\"message_folder\", {\n thread_id: z,\n message_id: aa,\n folder: w.folder\n });\n return;\n }\n ;\n ;\n var da = l.getUserID(l.user);\n t.getMulti([ca,da,], function(ea) {\n if (!s.allows(ca)) {\n u.log(\"message_privacy\", {\n thread_id: z,\n message_id: aa,\n user: ca\n });\n return;\n }\n ;\n ;\n var fa = ((ea[ca].employee && ea[da].employee));\n if (((!fa && ((ea[ca].type !== m.FRIEND))))) {\n u.log(\"message_non_friend\", {\n thread_id: z,\n message_id: aa,\n user: ca\n });\n return;\n }\n ;\n ;\n y();\n });\n }\n };\n});\n__d(\"ChatTabViewSelector\", [\"JSBNG__Event\",\"Arbiter\",\"JSBNG__CSS\",\"DataStore\",\"DOM\",\"MenuDeprecated\",\"MercuryThreadInformer\",\"MercuryThreads\",\"NubController\",\"ChatTabTemplates\",\"MercuryThreadMetadataRenderer\",\"Toggler\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Arbiter\"), i = b(\"JSBNG__CSS\"), j = b(\"DataStore\"), k = b(\"DOM\"), l = b(\"MenuDeprecated\"), m = b(\"MercuryThreadInformer\").get(), n = b(\"MercuryThreads\").get(), o = b(\"NubController\"), p = b(\"ChatTabTemplates\"), q = b(\"MercuryThreadMetadataRenderer\").get(), r = b(\"Toggler\"), s = b(\"copyProperties\");\n function t(u) {\n var v = p[\":fb:chat:tab:selector\"].build(), w = v.getRoot(), x = v.getNode(\"menu\"), y = k.JSBNG__find(x, \".uiMenuInner\"), z = {\n }, aa = new o().init(w);\n i.hide(w);\n k.insertBefore(u, w);\n function ba(ea) {\n var fa = 0;\n {\n var fin302keys = ((window.top.JSBNG_Replay.forInKeys)((z))), fin302i = (0);\n var ga;\n for (; (fin302i < fin302keys.length); (fin302i++)) {\n ((ga) = (fin302keys[fin302i]));\n {\n var ha = z[ga], ia = n.getThreadMetaNow(ga), ja = ha.getNode(\"unreadCount\"), ka = ((((ia && ia.unread_count)) || 0));\n fa += ka;\n if (((ka > 9))) {\n ka = \"+\";\n }\n ;\n ;\n i.conditionClass(ja, \"invisible_elem\", !ka);\n k.setContent(ja, ka);\n };\n };\n };\n ;\n var la = v.getNode(\"numMessages\");\n i.conditionShow(la, fa);\n k.setContent(la, fa);\n };\n ;\n this.setTabData = function(ea) {\n z = {\n };\n if (((ea.length < 1))) {\n i.hide(w);\n return;\n }\n ;\n ;\n i.show(w);\n k.empty(y);\n ea.forEach(function(fa) {\n var ga = p[\":fb:chat:tab:selector:item\"].build();\n z[fa.id] = ga;\n var ha = ga.getNode(\"JSBNG__content\");\n q.renderAndSeparatedParticipantList(fa.id, ha);\n k.prependContent(y, ga.getRoot());\n j.set(ga.getRoot(), \"threadID\", fa.id);\n var ia = ga.getNode(\"closeButton\");\n g.listen(ia, \"click\", function(JSBNG__event) {\n t.inform(\"selector/close-tab\", fa.id);\n JSBNG__event.kill();\n });\n });\n aa.flyoutContentChanged();\n k.setContent(v.getNode(\"numTabs\"), ea.length);\n ba();\n };\n function ca(JSBNG__event, ea) {\n if (((ea.menu != x))) {\n return;\n }\n ;\n ;\n var fa = j.get(ea.JSBNG__item, \"threadID\");\n t.inform(\"selected\", fa);\n r.hide(w);\n };\n ;\n function da(JSBNG__event, ea) {\n l.register(x);\n };\n ;\n l.subscribe(\"select\", ca.bind(this));\n r.listen(\"show\", w, function() {\n h.inform(\"layer_shown\", {\n type: \"ChatTabSelector\"\n });\n da();\n });\n r.listen(\"hide\", w, function() {\n h.inform(\"layer_hidden\", {\n type: \"ChatTabSelector\"\n });\n });\n m.subscribe(\"threads-updated\", ba);\n };\n;\n s(t, new h());\n e.exports = t;\n});\n__d(\"ChatTabController\", [\"ChatTabPresence\",\"ChatTypeaheadBehavior\",\"Arbiter\",\"ChatActivity\",\"ChatConfig\",\"ChatNewMessageHandler\",\"ChatTabMessagesView\",\"ChatTabModel\",\"ChatTabPolicy\",\"ChatTabView\",\"ChatTabViewSelector\",\"JSLogger\",\"MercuryParticipants\",\"MercuryThreadInformer\",\"MercuryThreads\",\"MercuryUnseenState\",\"Style\",\"UserAgent\",\"VideoCallCore\",], function(a, b, c, d, e, f) {\n b(\"ChatTabPresence\");\n b(\"ChatTypeaheadBehavior\");\n var g = b(\"Arbiter\"), h = b(\"ChatActivity\"), i = b(\"ChatConfig\"), j = b(\"ChatNewMessageHandler\"), k = b(\"ChatTabMessagesView\"), l = b(\"ChatTabModel\"), m = b(\"ChatTabPolicy\"), n = b(\"ChatTabView\"), o = b(\"ChatTabViewSelector\"), p = b(\"JSLogger\"), q = b(\"MercuryParticipants\"), r = b(\"MercuryThreadInformer\").get(), s = b(\"MercuryThreads\").get(), t = b(\"MercuryUnseenState\").get(), u = b(\"Style\"), v = b(\"UserAgent\"), w = b(\"VideoCallCore\"), x = ((i.get(\"tab_auto_close_timeout\") || 7200000)), y = p.create(\"tab_controller\");\n function z(la) {\n s.changeThreadReadStatus(la, true);\n aa(la);\n };\n;\n function aa(la) {\n t.markThreadSeen(la);\n };\n;\n function ba(la, ma, na) {\n var oa = l.get().tabs;\n la += ((ma ? 1 : -1));\n while (((((la >= 0)) && ((la < oa.length))))) {\n var pa = oa[la], qa = n.get(pa.id);\n if (((((qa && qa.isVisible())) && ((!na || pa.raised))))) {\n qa.JSBNG__focus();\n return true;\n }\n ;\n ;\n la += ((ma ? 1 : -1));\n };\n ;\n return false;\n };\n;\n function ca(la, ma, na) {\n var oa = ma.shouldPromoteOnRaise(la);\n g.inform(\"chat/promote-tab\", la);\n if (oa) {\n l.raiseAndPromoteTab(la, true, na);\n }\n else l.raiseTab(la, true, na);\n ;\n ;\n var pa = n.get(la);\n ((pa && pa.JSBNG__focus()));\n };\n;\n function da(la, ma, na) {\n var oa = na.getMaxTabsToShow(), pa = l.indexOf(la);\n l.closeTabAndDemote(la, ((oa - 2)), ma);\n return pa;\n };\n;\n function ea(la) {\n var ma = Object.keys(((la.getTabsToShow() || {\n }))), na = ((1 * 60)), oa = null, pa = Infinity;\n for (var qa = 0; ((qa < ma.length)); qa++) {\n var ra = ma[qa], sa = s.getThreadMetaNow(ra);\n if (((!n.get(ra).hasEmptyInput() || !sa))) {\n continue;\n }\n ;\n ;\n var ta = ((((l.getServerTime() - sa.timestamp)) / 1000));\n if (((!sa.timestamp || ((((sa.timestamp && ((sa.timestamp < pa)))) && ((ta > na))))))) {\n oa = sa.thread_id;\n pa = sa.timestamp;\n }\n ;\n ;\n };\n ;\n return oa;\n };\n;\n function fa(la) {\n o.subscribe(\"selected\", function(na, oa) {\n ca(oa, la);\n });\n g.subscribe(\"chat/open-tab\", function(na, oa) {\n ca(oa.thread_id, la, oa.signature_id);\n });\n g.subscribe(\"page_transition\", function(na, oa) {\n l.closeFragileTabs();\n });\n n.subscribe(\"read\", function(JSBNG__event, na) {\n z(na);\n });\n h.subscribe(\"idle\", function(na, oa) {\n if (((oa > x))) {\n var pa = l.get().tabs;\n pa.forEach(function(qa) {\n var ra = qa.id;\n s.getThreadMeta(ra, function(sa) {\n if (!sa.unread_count) {\n y.log(\"autoclose_idle_seen\", {\n thread_id: ra,\n idleness: oa\n });\n l.closeTab(ra, \"autoclose_idle_seen\");\n }\n ;\n ;\n });\n });\n }\n ;\n ;\n });\n n.subscribe(\"nub-activated\", function(na, oa) {\n ca(oa, la);\n });\n n.subscribe(\"lower-activated\", function(na, oa) {\n l.lowerTab(oa);\n var pa = n.get(oa);\n ((pa && pa.JSBNG__focus()));\n });\n function ma(na, oa) {\n w.showOutgoingCallDialog(oa.userID, oa.clickSource);\n l.lowerTab(oa.threadID);\n };\n ;\n n.subscribe(\"video-call-clicked\", ma);\n k.subscribe(\"video-call-clicked\", ma);\n k.subscribe(\"interaction-with-tab\", function(na, oa) {\n var pa = l.getTab(oa);\n ((((pa && pa.raised)) && aa(oa)));\n });\n n.subscribe(\"closed-tab\", function(na, oa) {\n y.log(\"close_view\", {\n thread_id: oa\n });\n da(oa, \"close_view\", la);\n return false;\n });\n n.subscribe(\"thread-deleted\", function(na, oa) {\n y.log(\"close_thread_deleted\", {\n thread_id: oa\n });\n da(oa, \"close_thread_deleted\", la);\n return false;\n });\n n.subscribe(\"unsubscribed\", function(na, oa) {\n y.log(\"close_view_unsubscribed\", {\n thread_id: oa\n });\n da(oa, \"close_view_unsubscribed\", la);\n return false;\n });\n n.subscribe(\"esc-pressed\", function(na, oa) {\n y.log(\"close_esc\", {\n thread_id: oa\n });\n var pa = da(oa, \"close_esc\", la);\n (function() {\n ((ba(((pa - 1)), true, true) || ba(pa, false, true)));\n }).defer();\n });\n o.subscribe(\"selector/close-tab\", function(na, oa) {\n y.log(\"close_chat_from_selector\", {\n thread_id: oa\n });\n da(oa, \"close_chat_from_selector\", la);\n });\n r.subscribe(\"messages-received\", function(na, oa) {\n {\n var fin303keys = ((window.top.JSBNG_Replay.forInKeys)((oa))), fin303i = (0);\n var pa;\n for (; (fin303i < fin303keys.length); (fin303i++)) {\n ((pa) = (fin303keys[fin303i]));\n {\n var qa = oa[pa];\n for (var ra = 0; ((ra < qa.length)); ra++) {\n var sa = qa[ra];\n if (((sa.author != q.user))) {\n if (!sa.is_unread) {\n y.log(\"message_already_read\", {\n action_id: sa.action_id,\n thread_id: sa.thread_id\n });\n continue;\n }\n ;\n ;\n s.getThreadMeta(pa, function(ta) {\n m.messageIsAllowed(ta, sa, function() {\n var ua = ((la.hasRoomForRaisedTab() ? undefined : ea(la)));\n j.newMessage(pa, sa, ua, la.getTabsToShow());\n });\n });\n }\n ;\n ;\n };\n ;\n };\n };\n };\n ;\n });\n r.subscribe(\"thread-read-changed\", function(na, oa) {\n {\n var fin304keys = ((window.top.JSBNG_Replay.forInKeys)((oa))), fin304i = (0);\n var pa;\n for (; (fin304i < fin304keys.length); (fin304i++)) {\n ((pa) = (fin304keys[fin304i]));\n {\n if (!oa[pa].mark_as_read) {\n y.log(\"autoclose_marked_unread\", {\n thread_id: pa\n });\n l.closeTab(pa, \"autoclose_marked_unread\");\n }\n ;\n ;\n };\n };\n };\n ;\n });\n n.subscribe(\"tab-pressed\", function(na, oa) {\n return !ba(l.indexOf(oa.id), oa.shiftPressed);\n });\n g.subscribe(p.DUMP_EVENT, function(na, oa) {\n oa.chat_controller = {\n auto_close_timeout: x\n };\n });\n };\n;\n if (v.firefox()) {\n var ga = function() {\n return ((((u.get(JSBNG__document.body, \"overflowX\") + \" \")) + u.get(JSBNG__document.body, \"overflowY\")));\n }, ha = ga(), ia = function() {\n var la = ga();\n if (((la !== ha))) {\n ha = la;\n g.inform(\"overflow-applied-to-body\");\n }\n ;\n ;\n };\n if (((\"JSBNG__MutationObserver\" in window))) {\n var ja = new JSBNG__MutationObserver(ia), ka = {\n attributes: true,\n attributeFilter: [\"class\",\"style\",]\n };\n ja.observe(JSBNG__document.documentElement, ka);\n }\n else JSBNG__document.documentElement.JSBNG__addEventListener(\"DOMAttrModified\", function(JSBNG__event) {\n if (((((JSBNG__event.getTarget() === JSBNG__document.documentElement)) && ((((JSBNG__event.attrName === \"class\")) || ((JSBNG__event.attrName === \"style\"))))))) {\n ia();\n }\n ;\n ;\n }, false);\n ;\n ;\n }\n;\n;\n e.exports = fa;\n});\n__d(\"ChatTabViewCoordinator\", [\"Arbiter\",\"ChatTabModel\",\"ChatTabView\",\"ChatTabViewSelector\",\"JSBNG__CSS\",\"VideoCallCore\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ChatTabModel\"), i = b(\"ChatTabView\"), j = b(\"ChatTabViewSelector\"), k = b(\"JSBNG__CSS\"), l = b(\"VideoCallCore\");\n function m(n, o) {\n var p = new j(n), q = {\n }, r = false;\n function s() {\n var w = h.get(), x = {\n };\n w.tabs.forEach(function(z) {\n x[z.id] = 1;\n });\n {\n var fin305keys = ((window.top.JSBNG_Replay.forInKeys)((q))), fin305i = (0);\n var y;\n for (; (fin305i < fin305keys.length); (fin305i++)) {\n ((y) = (fin305keys[fin305i]));\n {\n if (!x[y]) {\n q[y].destroy();\n delete (q[y]);\n }\n ;\n ;\n };\n };\n };\n ;\n t(w);\n u(w);\n };\n ;\n function t(w) {\n var x = null;\n w.tabs.forEach(function(y) {\n var z = y.id, aa = false;\n if (!q[z]) {\n q[z] = new i(z, y.server_id, y.signatureID);\n aa = true;\n }\n else q[z].updateSignatureID(y.signatureID);\n ;\n ;\n if (((aa || !q[z].nextTabIs(x)))) {\n var ba = q[z].getScrollTop();\n if (x) {\n q[z].insertBefore(x);\n }\n else q[z].appendTo(n);\n ;\n ;\n if (ba) {\n q[z].setScrollTop(ba);\n }\n ;\n ;\n }\n ;\n ;\n x = q[z];\n });\n };\n ;\n function u(w) {\n var x = o.getTabsToShow(w), y = [], z = false;\n w.tabs.forEach(function(aa) {\n if (!x[aa.id]) {\n q[aa.id].setVisibleState(false, aa.raised);\n y.push(aa);\n }\n ;\n ;\n });\n w.tabs.forEach(function(aa) {\n if (x[aa.id]) {\n q[aa.id].setVisibleState(true, aa.raised);\n z |= aa.raised;\n }\n ;\n ;\n });\n p.setTabData(y);\n v(z);\n };\n ;\n function v(w) {\n if (((!w && r))) {\n g.inform(\"layer_hidden\", {\n type: \"ChatTab\"\n });\n r = false;\n }\n else if (((w && !r))) {\n g.inform(\"layer_shown\", {\n type: \"ChatTab\"\n });\n r = true;\n }\n \n ;\n ;\n };\n ;\n if (l.isSupported()) {\n k.addClass(n, \"videoCallEnabled\");\n }\n ;\n ;\n o.subscribe(\"tabs-changed\", s);\n s();\n };\n;\n e.exports = m;\n});\n__d(\"TabsViewport\", [\"Arbiter\",\"ArbiterMixin\",\"ChatTabModel\",\"Dock\",\"DOM\",\"DOMDimensions\",\"JSBNG__Event\",\"Parent\",\"Vector\",\"ViewportBounds\",\"areObjectsEqual\",\"copyProperties\",\"csx\",\"shield\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ArbiterMixin\"), i = b(\"ChatTabModel\"), j = b(\"Dock\"), k = b(\"DOM\"), l = b(\"DOMDimensions\"), m = b(\"JSBNG__Event\"), n = b(\"Parent\"), o = b(\"Vector\"), p = b(\"ViewportBounds\"), q = b(\"areObjectsEqual\"), r = b(\"copyProperties\"), s = b(\"csx\"), t = b(\"shield\"), u = 164, v = 264;\n function w(x) {\n this._root = x;\n var y = this._recalculateWidth.bind(this);\n m.listen(window, \"resize\", y);\n j.subscribe(\"resize\", y);\n g.subscribe([\"LitestandSidebar/expand\",\"LitestandSidebar/collapse\",], y);\n g.subscribeOnce([\"sidebar/initialized\",\"LitestandSidebar/initialized\",], y, g.SUBSCRIBE_NEW);\n i.subscribe(\"chat/tabs-changed\", t(this._recalculateTabs, this, true));\n this._recalculateWidth();\n this._initialized = true;\n };\n;\n r(w.prototype, h, {\n _root: null,\n _initialized: false,\n _availableWidth: 0,\n _maxShown: 1,\n _viewState: null,\n _recalculateWidth: function() {\n var x = w._getAvailableDockWidth(this._root), y = Math.max(1, Math.floor(((x / v)))), z = ((y != this._maxShown));\n if (((((((!this._viewState || z)) || ((x <= this._viewState.usedWidth)))) || ((x > this._viewState.widthToShowNext))))) {\n this._availableWidth = x;\n this._maxShown = y;\n this._viewState = null;\n this._recalculateTabs(z);\n }\n ;\n ;\n },\n _onTabsChanged: function() {\n if (this._initialized) {\n this.inform(\"tabs-changed\");\n this.inform(\"max-to-show-changed\", this._maxShown);\n this.inform(\"max-to-show-change-completed\");\n }\n ;\n ;\n },\n _recalculateTabs: function(x) {\n var y = w._getTabsToShow(i.get(), this._availableWidth);\n if (((x || !q(this._viewState, y)))) {\n this._viewState = y;\n this._onTabsChanged();\n }\n ;\n ;\n },\n getMaxTabsToShow: function() {\n return this._maxShown;\n },\n checkWidth: function() {\n this._recalculateWidth();\n },\n hasRoomForRaisedTab: function() {\n return ((((this._availableWidth - this._viewState.usedWidth)) > v));\n },\n getTabsToShow: function() {\n return JSON.parse(JSON.stringify(this._viewState.tabsToShow));\n },\n shouldPromoteOnRaise: function(x) {\n if (!this._viewState.tabsToShow[x]) {\n return true;\n }\n ;\n ;\n if (((this._viewState.nextToHide != x))) {\n return false;\n }\n ;\n ;\n var y = i.getTab(x), z = ((y && y.raised));\n return ((!z && ((((this._availableWidth - this._viewState.usedWidth)) < 100))));\n }\n });\n r(w, {\n _getAvailableDockWidth: function(x) {\n var y = l.getViewportWithoutScrollbarDimensions().width;\n y -= ((p.getLeft() + p.getRight()));\n y -= 50;\n var z = n.byClass(x, \"fbDock\"), aa = k.JSBNG__find(z, \".-cx-PUBLIC-fbDockChatBuddyListNub__container\"), ba = o.getElementDimensions(aa).x;\n y -= ba;\n var ca = k.JSBNG__find(z, \".-cx-PUBLIC-fbMercuryChatTab__container\");\n ba += o.getElementDimensions(ca).x;\n var da = o.getElementDimensions(z), ea = ((da.x - ba));\n y -= ea;\n y -= 15;\n return Math.max(y, 0);\n },\n _getTabsToShow: function(x, y) {\n y = Math.max(y, ((v + 1)));\n function z(oa) {\n return ((oa.raised ? v : u));\n };\n ;\n var aa = JSON.parse(JSON.stringify(x.tabs)), ba = -1, ca = null;\n if (x.promoted) {\n aa.forEach(function(oa, pa) {\n if (((oa.id === x.promoted))) {\n ba = pa;\n ca = oa;\n }\n ;\n ;\n });\n }\n ;\n ;\n var da = 0, ea = 0, fa = !ca;\n aa.forEach(function(oa, pa) {\n var qa = z(oa);\n oa.leftmostOffset = ((da + v));\n da += qa;\n if (((oa.leftmostOffset < y))) {\n ea++;\n }\n ;\n ;\n fa |= ((pa == ba));\n oa.alreadyPlacedPromoted = fa;\n });\n function ga(oa, pa, qa) {\n var ra = {\n };\n for (var sa = 0; ((sa < pa)); sa++) {\n var ta = oa[sa];\n if (((!ta.alreadyPlacedPromoted && ((sa == ((pa - 1))))))) {\n ra[qa] = true;\n }\n else ra[ta.id] = true;\n ;\n ;\n };\n ;\n return ra;\n };\n ;\n var ha = ga(aa, ea, x.promoted), ia = ga(aa, ((ea - 1)), x.promoted), ja = null;\n {\n var fin306keys = ((window.top.JSBNG_Replay.forInKeys)((ha))), fin306i = (0);\n var ka;\n for (; (fin306i < fin306keys.length); (fin306i++)) {\n ((ka) = (fin306keys[fin306i]));\n {\n if (!ia[ka]) {\n ja = ka;\n }\n ;\n ;\n };\n };\n };\n ;\n var la = aa[((ea - 1))], ma = ((la ? la.leftmostOffset : 0)), na = Infinity;\n if (((ea < aa.length))) {\n na = aa[ea].leftmostOffset;\n }\n ;\n ;\n return {\n nextToHide: ja,\n tabsToShow: ha,\n usedWidth: ma,\n widthToShowNext: na\n };\n }\n });\n e.exports = w;\n});"); |
| // 16064 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o191,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yf/r/_oJ2eyBZFAi.js",o192); |
| // undefined |
| o191 = null; |
| // undefined |
| o192 = null; |
| // 16069 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"4/uwC\",]);\n}\n;\n__d(\"MercuryAudioPlayer\", [\"Event\",\"Arbiter\",\"DOM\",\"Flash\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Arbiter\"), i = b(\"DOM\"), j = b(\"Flash\"), k = b(\"copyProperties\"), l = 200;\n function m() {\n var v = i.create(\"audio\"), w = false;\n try {\n if (!!v.canPlayType) {\n if (v.canPlayType(\"video/mp4;\").replace(/^no$/, \"\")) {\n w = true;\n }\n };\n } finally {\n return w;\n };\n };\n function n() {\n return j.isAvailable();\n };\n var o = function() {\n this.interval = null;\n this.arbiterInstance = null;\n this.audio = i.create(\"audio\");\n g.listen(this.audio, \"playing\", function() {\n this.informAttachment(\"playing\", this.audio.currentTime);\n this.interval = setInterval(function() {\n this.informAttachment(\"playing\", this.audio.currentTime);\n }.bind(this), l);\n }.bind(this));\n g.listen(this.audio, \"ended\", function() {\n clearInterval(this.interval);\n this.informAttachment(\"finished\");\n }.bind(this));\n };\n k(o.prototype, {\n setAudio: function(v, w) {\n this.audio.setAttribute(\"src\", v);\n this.arbiterInstance = w;\n },\n informAttachment: function(v, w) {\n if (this.arbiterInstance) {\n this.arbiterInstance.inform(v, w);\n };\n },\n play: function() {\n this.audio.play();\n this.informAttachment(\"played\");\n },\n resume: function() {\n this.audio.play();\n this.informAttachment(\"played\");\n },\n pause: function() {\n this.audio.pause();\n clearInterval(this.interval);\n this.informAttachment(\"paused\");\n },\n getType: function() {\n return \"html5\";\n }\n });\n var p = function() {\n this.src = null;\n this.arbiterInstance = null;\n var v = i.create(\"div\");\n document.body.appendChild(v);\n this.swf = j.embed(\"/swf/SoundStreamPlayer.swf\", v, null, {\n });\n this.interval = null;\n h.subscribe(\"soundstream/finished\", function() {\n clearInterval(this.interval);\n this.informAttachment(\"finished\");\n }.bind(this));\n };\n k(p.prototype, {\n setAudio: function(v, w) {\n this.src = v;\n this.arbiterInstance = w;\n },\n informAttachment: function(v, w) {\n if (this.arbiterInstance) {\n this.arbiterInstance.inform(v, w);\n };\n },\n play: function() {\n this.swf.playSound(this.src);\n this.interval = setInterval(function() {\n var v = this.swf.getCurrentTime();\n this.informAttachment(\"playing\", v);\n }.bind(this), l);\n this.informAttachment(\"played\");\n },\n resume: function() {\n this.swf.resume();\n this.informAttachment(\"played\");\n },\n pause: function() {\n clearInterval(this.interval);\n this.swf.pause();\n this.informAttachment(\"paused\");\n },\n getType: function() {\n return \"flash\";\n }\n });\n function q() {\n if (m()) {\n return new o();\n }\n else if (n()) {\n return new p()\n }\n ;\n return false;\n };\n var r = null, s = null, t = 0;\n function u(v, w) {\n this.src = v;\n this.arbiterInstance = w;\n this.audio_id = ++t;\n ((r !== null) || (r = q()));\n if (!r) {\n return false\n };\n };\n k(u.prototype, {\n getType: function() {\n if (!r) {\n return false;\n }\n else return r.getType()\n ;\n },\n play: function(v) {\n if ((v && (s == this.audio_id))) {\n r.resume();\n }\n else {\n this.pause();\n s = this.audio_id;\n r.setAudio(this.src, this.arbiterInstance);\n r.play();\n }\n ;\n },\n pause: function() {\n r.pause();\n }\n });\n e.exports = u;\n});\n__d(\"MercuryAttachmentAudioClip.react\", [\"Arbiter\",\"ArbiterMixin\",\"MercuryAudioPlayer\",\"Env\",\"JSLogger\",\"LeftRight.react\",\"React\",\"cx\",\"shield\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ArbiterMixin\"), i = b(\"MercuryAudioPlayer\"), j = b(\"Env\"), k = b(\"JSLogger\"), l = b(\"LeftRight.react\"), m = b(\"React\"), n = b(\"cx\"), o = b(\"shield\"), p = b(\"tx\"), q = \"MercuryAttachmentAudioClip/play\", r = k.create(\"mercury_audio_clip\"), s = m.createClass({\n displayName: \"AudioClip\",\n mixins: [h,],\n getInitialState: function() {\n this.subscribe(\"playing\", this.updateTime);\n this.subscribe(\"played\", o(this.setState, this, {\n playing: true,\n started: true\n }));\n this.subscribe(\"paused\", o(this.setState, this, {\n playing: false\n }));\n this.subscribe(\"finished\", o(this.setState, this, {\n playing: false,\n started: false,\n time: this.props.duration\n }));\n this.logged = false;\n var t = (this.props.downloadOnly ? false : new i(this.props.src, this));\n g.subscribe(q, function(u, v) {\n if ((this.props.src != v)) {\n this.setState({\n time: 0\n });\n };\n }.bind(this));\n return {\n time: 0,\n playing: false,\n started: false,\n duration: this.props.duration,\n audioPlayer: t\n };\n },\n updateTime: function(t, u) {\n this.setState({\n time: u\n });\n },\n play: function() {\n if (this.state.playing) {\n this.state.audioPlayer.pause();\n }\n else {\n this.state.audioPlayer.play(this.state.started);\n g.inform(q, this.props.src);\n if (!this.logged) {\n this.logged = true;\n r.log(\"play\", {\n uid: j.user,\n duration: this.props.duration\n });\n }\n ;\n }\n ;\n },\n _formatSeconds: function(t) {\n if (t) {\n t = Math.ceil(t);\n var u = (t % 60);\n if ((u < 10)) {\n u = (\"0\" + u);\n };\n var v = Math.floor((t / 60));\n return ((v + \":\") + u);\n }\n else return null\n ;\n },\n _renderPlayer: function(t, u) {\n return (m.DOM.a({\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__player\",\n style: {\n width: t\n },\n onClick: this.play\n }, m.DOM.span({\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__play\"\n }, m.DOM.i({\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__playicon\"\n })), m.DOM.span({\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__duration\"\n }, u), m.DOM.div({\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__scrubber\"\n })));\n },\n render: function() {\n var t = this.state.time, u = this.state.playing, v = this._formatSeconds(this.state.duration), w = (this.props.width || 170), x = null, y = Math.ceil((((t * ((w + 2)))) / this.state.duration));\n if ((this.state.audioPlayer && this.state.audioPlayer.getType())) {\n var z = this._renderPlayer(w, v), aa = this._renderPlayer(w, v), ba = ((((\"-cx-PRIVATE-mercuryAttachmentAudioClip__controls\") + (((u && ((t !== 0))) ? (\" \" + \"-cx-PRIVATE-mercuryAttachmentAudioClip__playing\") : \"\"))) + (((u && ((t === 0))) ? (\" \" + \"-cx-PRIVATE-mercuryAttachmentAudioClip__loading\") : \"\"))));\n x = (m.DOM.div({\n className: ba\n }, z, m.DOM.div({\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__progresser\",\n style: {\n width: y\n }\n }, aa)));\n }\n else x = (m.DOM.div({\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__controls\"\n }, m.DOM.div({\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__player\"\n }, l(null, m.DOM.a({\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__downloadbox\",\n href: this.props.src\n }, m.DOM.span({\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__speaker\"\n }, m.DOM.i({\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__speakericon\"\n })), m.DOM.span({\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__downloadtext\"\n }, \"Voice Message\"), m.DOM.span({\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__durationinline\"\n }, v)), m.DOM.a({\n href: this.props.src,\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__download\"\n }, m.DOM.i({\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__downloadicon\"\n }))))));\n ;\n return (m.DOM.div({\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__root\"\n }, x));\n }\n });\n e.exports = s;\n});\n__d(\"MercuryStickersFlyoutList.react\", [\"Animation\",\"React\",\"Image.react\",\"cx\",\"fbt\",\"ix\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"React\"), i = b(\"Image.react\"), j = b(\"cx\"), k = b(\"fbt\"), l = b(\"ix\"), m = 5, n = \"Sticker Store\", o = h.createClass({\n displayName: \"MercuryStickersFlyoutList\",\n _calculateNumPages: function(q) {\n return Math.max(1, Math.ceil((((q.length - 1)) / m)));\n },\n getInitialState: function() {\n return {\n animating: false,\n selectedId: this.props.packs[0].id,\n page: 0,\n numPages: this._calculateNumPages(this.props.packs)\n };\n },\n componentWillReceiveProps: function(q) {\n this.setState({\n numPages: this._calculateNumPages(q.packs)\n });\n },\n shouldComponentUpdate: function(q, r) {\n return !r.animating;\n },\n _canGoPrev: function() {\n return (this.state.page > 0);\n },\n _canGoNext: function() {\n return ((this.state.page + 1) < this.state.numPages);\n },\n _setPage: function(q) {\n if (this.state.animating) {\n return\n };\n this.setState({\n animating: true,\n page: q\n });\n var r = this.refs.positioner.getDOMNode();\n new g(r).to(\"marginLeft\", (-r.childNodes[q].offsetLeft + \"px\")).ondone(function() {\n this.setState({\n animating: false\n });\n }.bind(this)).duration(200).go();\n },\n _back: function() {\n (this._canGoPrev() && this._setPage((this.state.page - 1)));\n },\n _next: function() {\n (this._canGoNext() && this._setPage((this.state.page + 1)));\n },\n render: function() {\n var q = this.props.packs, r = this.props.onPackClick, s = [];\n q.forEach(function(y, z) {\n s.push(p({\n key: y.id,\n onClick: function() {\n (r && r(y.id));\n this.setState({\n selectedId: y.id\n });\n }.bind(this),\n pack: y,\n selected: (this.state.selectedId === y.id)\n }));\n }.bind(this));\n var t = [], u = [];\n s.forEach(function(y, z) {\n u.push(y);\n if (((z > 0) && ((((z % m) === 0) || (z === (s.length - 1)))))) {\n t.push(h.DOM.div({\n className: \"-cx-PRIVATE-fbMercuryStickersSelector__page\"\n }, u));\n u = [];\n }\n ;\n });\n var v = ((((\"-cx-PRIVATE-fbMercuryStickersSelector__left\") + ((\" \" + \"lfloat\"))) + ((!this._canGoPrev() ? (\" \" + \"hidden_elem\") : \"\")))), w = ((((\"-cx-PRIVATE-fbMercuryStickersSelector__right\") + ((\" \" + \"rfloat\"))) + ((!this._canGoNext() ? (\" \" + \"hidden_elem\") : \"\")))), x;\n if ((t.length > 1)) {\n x = h.DOM.a({\n className: w,\n onClick: this._next\n }, i({\n className: \"-cx-PRIVATE-fbMercuryStickersSelector__arrow\",\n src: l(\"/images/messaging/stickers/selector/rightarrow.png\")\n }));\n };\n return (h.DOM.div({\n className: \"-cx-PRIVATE-fbMercuryStickersSelector__root\"\n }, h.DOM.a({\n ajaxify: \"/ajax/messaging/stickers/store\",\n \"aria-label\": n,\n className: \"-cx-PRIVATE-fbMercuryStickersSelector__store rfloat\",\n \"data-hover\": \"tooltip\",\n ref: \"store\",\n rel: \"dialog\"\n }, i({\n className: \"-cx-PRIVATE-fbMercuryStickersSelector__storeicon\",\n src: l(\"/images/messaging/stickers/selector/store.png\")\n })), h.DOM.a({\n className: v,\n onClick: this._back\n }, i({\n className: \"-cx-PRIVATE-fbMercuryStickersSelector__arrow\",\n src: l(\"/images/messaging/stickers/selector/leftarrow.png\")\n })), x, h.DOM.div({\n className: \"-cx-PRIVATE-fbMercuryStickersSelector__icons\"\n }, h.DOM.div({\n className: \"-cx-PRIVATE-fbMercuryStickersSelector__positioner\",\n ref: \"positioner\"\n }, t))));\n }\n }), p = h.createClass({\n displayName: \"PackIcon\",\n render: function() {\n var q = this.props.pack, r = (((\"-cx-PRIVATE-fbMercuryStickersFlyout__packselector\") + ((this.props.selected ? (\" \" + \"-cx-PRIVATE-fbMercuryStickersFlyout__selectedpack\") : \"\"))));\n return (h.DOM.a({\n \"aria-label\": q.name,\n className: r,\n \"data-id\": q.id,\n \"data-hover\": \"tooltip\",\n onClick: function() {\n (this.props.onClick && this.props.onClick(q.id));\n }.bind(this),\n tabIndex: \"0\"\n }, h.DOM.img({\n className: \"-cx-PRIVATE-fbMercuryStickersFlyout__packicon\",\n src: q.icon\n }), h.DOM.img({\n className: \"-cx-PRIVATE-fbMercuryStickersFlyout__selectedicon\",\n src: q.selectedIcon\n })));\n }\n });\n e.exports = o;\n});\n__d(\"str2rstr\", [], function(a, b, c, d, e, f) {\n function g(h) {\n var i = \"\", j, k;\n for (var l = 0; (l < h.length); l++) {\n j = h.charCodeAt(l);\n k = (((l + 1) < h.length) ? h.charCodeAt((l + 1)) : 0);\n if (((((55296 <= j) && (j <= 56319)) && (56320 <= k)) && (k <= 57343))) {\n j = ((65536 + ((((j & 1023)) << 10))) + ((k & 1023)));\n l++;\n }\n ;\n if ((j <= 127)) {\n i += String.fromCharCode(j);\n }\n else if ((j <= 2047)) {\n i += String.fromCharCode((192 | ((((j >>> 6)) & 31))), (128 | ((j & 63))));\n }\n else if ((j <= 65535)) {\n i += String.fromCharCode((224 | ((((j >>> 12)) & 15))), (128 | ((((j >>> 6)) & 63))), (128 | ((j & 63))));\n }\n else if ((j <= 2097151)) {\n i += String.fromCharCode((240 | ((((j >>> 18)) & 7))), (128 | ((((j >>> 12)) & 63))), (128 | ((((j >>> 6)) & 63))), (128 | ((j & 63))));\n }\n \n \n ;\n };\n return i;\n };\n e.exports = g;\n});\n__d(\"md5\", [\"str2rstr\",], function(a, b, c, d, e, f) {\n var g = b(\"str2rstr\");\n function h(u, v) {\n var w = u[0], x = u[1], y = u[2], z = u[3];\n w = j(w, x, y, z, v[0], 7, -680876936);\n z = j(z, w, x, y, v[1], 12, -389564586);\n y = j(y, z, w, x, v[2], 17, 606105819);\n x = j(x, y, z, w, v[3], 22, -1044525330);\n w = j(w, x, y, z, v[4], 7, -176418897);\n z = j(z, w, x, y, v[5], 12, 1200080426);\n y = j(y, z, w, x, v[6], 17, -1473231341);\n x = j(x, y, z, w, v[7], 22, -45705983);\n w = j(w, x, y, z, v[8], 7, 1770035416);\n z = j(z, w, x, y, v[9], 12, -1958414417);\n y = j(y, z, w, x, v[10], 17, -42063);\n x = j(x, y, z, w, v[11], 22, -1990404162);\n w = j(w, x, y, z, v[12], 7, 1804603682);\n z = j(z, w, x, y, v[13], 12, -40341101);\n y = j(y, z, w, x, v[14], 17, -1502002290);\n x = j(x, y, z, w, v[15], 22, 1236535329);\n w = k(w, x, y, z, v[1], 5, -165796510);\n z = k(z, w, x, y, v[6], 9, -1069501632);\n y = k(y, z, w, x, v[11], 14, 643717713);\n x = k(x, y, z, w, v[0], 20, -373897302);\n w = k(w, x, y, z, v[5], 5, -701558691);\n z = k(z, w, x, y, v[10], 9, 38016083);\n y = k(y, z, w, x, v[15], 14, -660478335);\n x = k(x, y, z, w, v[4], 20, -405537848);\n w = k(w, x, y, z, v[9], 5, 568446438);\n z = k(z, w, x, y, v[14], 9, -1019803690);\n y = k(y, z, w, x, v[3], 14, -187363961);\n x = k(x, y, z, w, v[8], 20, 1163531501);\n w = k(w, x, y, z, v[13], 5, -1444681467);\n z = k(z, w, x, y, v[2], 9, -51403784);\n y = k(y, z, w, x, v[7], 14, 1735328473);\n x = k(x, y, z, w, v[12], 20, -1926607734);\n w = l(w, x, y, z, v[5], 4, -378558);\n z = l(z, w, x, y, v[8], 11, -2022574463);\n y = l(y, z, w, x, v[11], 16, 1839030562);\n x = l(x, y, z, w, v[14], 23, -35309556);\n w = l(w, x, y, z, v[1], 4, -1530992060);\n z = l(z, w, x, y, v[4], 11, 1272893353);\n y = l(y, z, w, x, v[7], 16, -155497632);\n x = l(x, y, z, w, v[10], 23, -1094730640);\n w = l(w, x, y, z, v[13], 4, 681279174);\n z = l(z, w, x, y, v[0], 11, -358537222);\n y = l(y, z, w, x, v[3], 16, -722521979);\n x = l(x, y, z, w, v[6], 23, 76029189);\n w = l(w, x, y, z, v[9], 4, -640364487);\n z = l(z, w, x, y, v[12], 11, -421815835);\n y = l(y, z, w, x, v[15], 16, 530742520);\n x = l(x, y, z, w, v[2], 23, -995338651);\n w = m(w, x, y, z, v[0], 6, -198630844);\n z = m(z, w, x, y, v[7], 10, 1126891415);\n y = m(y, z, w, x, v[14], 15, -1416354905);\n x = m(x, y, z, w, v[5], 21, -57434055);\n w = m(w, x, y, z, v[12], 6, 1700485571);\n z = m(z, w, x, y, v[3], 10, -1894986606);\n y = m(y, z, w, x, v[10], 15, -1051523);\n x = m(x, y, z, w, v[1], 21, -2054922799);\n w = m(w, x, y, z, v[8], 6, 1873313359);\n z = m(z, w, x, y, v[15], 10, -30611744);\n y = m(y, z, w, x, v[6], 15, -1560198380);\n x = m(x, y, z, w, v[13], 21, 1309151649);\n w = m(w, x, y, z, v[4], 6, -145523070);\n z = m(z, w, x, y, v[11], 10, -1120210379);\n y = m(y, z, w, x, v[2], 15, 718787259);\n x = m(x, y, z, w, v[9], 21, -343485551);\n u[0] = s(w, u[0]);\n u[1] = s(x, u[1]);\n u[2] = s(y, u[2]);\n u[3] = s(z, u[3]);\n };\n function i(u, v, w, x, y, z) {\n v = s(s(v, u), s(x, z));\n return s((((v << y)) | ((v >>> ((32 - y))))), w);\n };\n function j(u, v, w, x, y, z, aa) {\n return i((((v & w)) | (((~v) & x))), u, v, y, z, aa);\n };\n function k(u, v, w, x, y, z, aa) {\n return i((((v & x)) | ((w & (~x)))), u, v, y, z, aa);\n };\n function l(u, v, w, x, y, z, aa) {\n return i(((v ^ w) ^ x), u, v, y, z, aa);\n };\n function m(u, v, w, x, y, z, aa) {\n return i((w ^ ((v | (~x)))), u, v, y, z, aa);\n };\n function n(u) {\n var v = u.length, w = [1732584193,-271733879,-1732584194,271733878,], x;\n for (x = 64; (x <= u.length); x += 64) {\n h(w, o(u.substring((x - 64), x)));;\n };\n u = u.substring((x - 64));\n var y = [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,];\n for (x = 0; (x < u.length); x++) {\n y[(x >> 2)] |= (u.charCodeAt(x) << ((((x & 3)) << 3)));;\n };\n y[(x >> 2)] |= (128 << ((((x & 3)) << 3)));\n if ((x > 55)) {\n h(w, y);\n for (x = 0; (x < 16); x++) {\n y[x] = 0;;\n };\n }\n ;\n y[14] = (v * 8);\n h(w, y);\n return w;\n };\n function o(u) {\n var v = [], w = 0;\n while ((w < 64)) {\n v[(w >> 2)] = (((u.charCodeAt(w++) | ((u.charCodeAt(w++) << 8))) | ((u.charCodeAt(w++) << 16))) | ((u.charCodeAt(w++) << 24)));;\n };\n return v;\n };\n var p = \"0123456789abcdef\".split(\"\");\n function q(u) {\n var v = \"\", w = 0;\n for (; (w < 4); w++) {\n v += (p[(((u >> ((((w << 3)) + 4)))) & 15)] + p[(((u >> ((w << 3)))) & 15)]);;\n };\n return v;\n };\n function r(u) {\n for (var v = 0; (v < u.length); v++) {\n u[v] = q(u[v]);;\n };\n return u.join(\"\");\n };\n var s = function(u, v) {\n return (((u + v)) & 4294967295);\n };\n function t(u) {\n if (((null === u) || (undefined === u))) {\n return null;\n }\n else {\n for (var v = 0; (v < u.length); v++) {\n if ((u[v] > \"\")) {\n u = g(u);\n break;\n }\n ;\n };\n return r(n(u));\n }\n ;\n };\n if ((t(\"hello\") != \"5d41402abc4b2a76b9719d911017c592\")) {\n s = function(u, v) {\n var w = (((u & 65535)) + ((v & 65535))), x = ((((u >> 16)) + ((v >> 16))) + ((w >> 16)));\n return (((x << 16)) | ((w & 65535)));\n };\n };\n e.exports = t;\n});\n__d(\"isRTL\", [], function(a, b, c, d, e, f) {\n var g = (\"A-Za-z\\u00c0-\\u00d6\\u00d8-\\u00f6\\u00f8-\\u02b8\\u0300-\\u0590\\u0800-\\u1fff\" + \"\\u200e\\u2c00-\\ufb1c\\ufe00-\\ufe6f\\ufefd-\\uffff\"), h = \"\\u0591-\\u07ff\\u200f\\ufb1d-\\ufdff\\ufe70-\\ufefc\", i = new RegExp(((((\"^[^\" + g) + \"]*[\") + h) + \"]\")), j = new RegExp(((\"[\" + g) + \"]\"));\n function k(l) {\n var m = 0, n = 0;\n l.split(/\\s+/, 20).forEach(function(o) {\n if (/^https?:\\/\\//.test(o)) {\n return\n };\n if (i.test(o)) {\n n++;\n m++;\n }\n else if (j.test(o)) {\n m++;\n }\n ;\n });\n return !!((m && (((n / m) > 13944))));\n };\n e.exports = k;\n});\n__d(\"WaterfallIDGenerator\", [\"Env\",\"md5\",], function(a, b, c, d, e, f) {\n var g = b(\"Env\"), h = b(\"md5\");\n function i() {\n var l = 2147483647;\n return (Math.random() * l);\n };\n function j() {\n return Math.floor((Date.now() / 1000));\n };\n var k = {\n generate: function() {\n return h([g.user,j(),i(),].join(\":\"));\n }\n };\n e.exports = k;\n});\n__d(\"FileForm\", [\"ArbiterMixin\",\"AsyncRequest\",\"AsyncResponse\",\"AsyncUploadRequest\",\"BehaviorsMixin\",\"DataStore\",\"DOMQuery\",\"Env\",\"Event\",\"Form\",\"JSONPTransport\",\"Parent\",\"URI\",\"copyProperties\",\"shield\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"AsyncRequest\"), i = b(\"AsyncResponse\"), j = b(\"AsyncUploadRequest\"), k = b(\"BehaviorsMixin\"), l = b(\"DataStore\"), m = b(\"DOMQuery\"), n = b(\"Env\"), o = b(\"Event\"), p = b(\"Form\"), q = b(\"JSONPTransport\"), r = b(\"Parent\"), s = b(\"URI\"), t = b(\"copyProperties\"), u = b(\"shield\");\n function v(y) {\n var z = {\n }, aa = m.scry(y, \"input[type=\\\"file\\\"]\");\n aa.forEach(function(ba) {\n z[ba.name] = ba.files;\n });\n return z;\n };\n function w(y) {\n var z = m.scry(y, \"input[type=\\\"file\\\"]\");\n z.forEach(function(aa) {\n aa.files = null;\n });\n };\n function x(y, z, aa) {\n if ((y.getAttribute(\"rel\") === \"async\")) {\n throw new Error(\"FileForm cannot be used with Primer forms.\")\n };\n if ((y.getAttribute(\"method\").toUpperCase() !== \"POST\")) {\n throw new Error(\"FileForm must be used with POST forms.\")\n };\n this._form = y;\n this._previousEncoding = this._form.enctype;\n this._form.enctype = this._form.encoding = \"multipart/form-data\";\n (z && this.enableBehaviors(z));\n this._options = (aa || {\n });\n this.setAllowCrossOrigin(this._options.allowCrossOrigin);\n this.setUploadInParallel(this._options.uploadInParallel);\n this._listener = o.listen(this._form, \"submit\", this._submit.bind(this));\n l.set(this._form, \"FileForm\", this);\n };\n t(x, {\n EVENTS: [\"start\",\"submit\",\"initial\",\"progress\",\"success\",\"failure\",],\n getInstance: function(y) {\n return l.get(y, \"FileForm\");\n }\n });\n t(x.prototype, g, k, {\n getRoot: function() {\n return this._form;\n },\n setAllowCrossOrigin: function(y) {\n this._allowCrossOrigin = !!y;\n return this;\n },\n setUploadInParallel: function(y) {\n this._uploadInParallel = !!y;\n return this;\n },\n _submit: function(event) {\n if ((this.inform(\"submit\") === false)) {\n event.prevent();\n return;\n }\n ;\n var y = (\"FormData\" in window);\n if (y) {\n if ((!s(this._form.action).isSameOrigin() && !this._allowCrossOrigin)) {\n y = false;\n }\n };\n return (y ? this._sendViaXHR(event) : this._sendViaFrame(event));\n },\n _sendViaFrame: function(event) {\n var y = this._request = new h();\n y.setStatusElement(this._getStatusElement());\n y.addStatusIndicator();\n y.setOption(\"useIframeTransport\", true);\n var z = y.handleResponse.bind(y), aa = new q(\"iframe\", this._form.action, z), ba = aa.getTransportFrame(), ca = aa.getRequestURI().addQueryData({\n __iframe: true,\n __user: n.user\n });\n this._form.setAttribute(\"action\", ca.toString());\n this._form.setAttribute(\"target\", ba.name);\n y.setJSONPTransport(aa);\n y.setURI(ca);\n y.setHandler(this.success.bind(this, null));\n y.setErrorHandler(this.failure.bind(this, null));\n y.setInitialHandler(u(this.initial, this, null));\n },\n _sendViaXHR: function(event) {\n var y;\n if ((this._uploadInParallel && j.isSupported())) {\n y = new j().setData(p.serialize(this._form)).setFiles(v(this._form));\n var z = [y.subscribe(\"progress\", function(aa, ba) {\n this.progress(ba, ba.getProgressEvent());\n }.bind(this)),y.subscribe(\"initial\", function(aa, ba) {\n this.initial(ba, ba.getResponse());\n }.bind(this)),y.subscribe(\"success\", function(aa, ba) {\n this.success(ba, ba.getResponse());\n }.bind(this)),y.subscribe(\"start\", function(aa, ba) {\n this.inform(\"start\", {\n upload: ba\n });\n }.bind(this)),y.subscribe(\"failure\", function(aa, ba) {\n this.failure(ba, ba.getResponse());\n return false;\n }.bind(this)),y.subscribe(\"complete\", function() {\n while (z.length) {\n z.pop().unsubscribe();;\n };\n }),];\n }\n else y = new h().setRawData(p.createFormData(this._form)).setHandler(this.success.bind(this, null)).setErrorHandler(this.failure.bind(this, null)).setUploadProgressHandler(this.progress.bind(this, null)).setInitialHandler(u(this.initial, this, null));\n ;\n y.setAllowCrossOrigin(this._allowCrossOrigin).setRelativeTo(this._form).setStatusElement(this._getStatusElement()).setURI(this._form.action).send();\n this._request = y;\n event.prevent();\n },\n initial: function(y) {\n return this.inform(\"initial\", {\n upload: y\n });\n },\n success: function(y, z) {\n var aa = {\n response: z,\n upload: y\n };\n if ((this.inform(\"success\", aa) !== false)) {\n o.fire(this._form, \"success\", aa);\n };\n this._cleanup();\n },\n failure: function(y, z) {\n var aa = {\n response: z,\n upload: y\n };\n if ((this.inform(\"failure\", aa) !== false)) {\n if ((o.fire(this._form, \"error\", aa) !== false)) {\n i.defaultErrorHandler(z);\n }\n };\n this._cleanup();\n },\n progress: function(y, event) {\n this.inform(\"progress\", {\n event: event,\n upload: y\n });\n },\n abort: function() {\n if (this._request) {\n this._request.abort();\n this._cleanup();\n }\n ;\n },\n clear: function() {\n w(this._form);\n },\n destroy: function() {\n this._cleanup();\n this._listener.remove();\n this._listener = null;\n this._form.enctype = this._form.encoding = this._previousEncoding;\n l.remove(this._form, \"FileForm\");\n },\n _cleanup: function() {\n this._request = null;\n },\n _getStatusElement: function() {\n return (r.byClass(this._form, \"stat_elem\") || this._form);\n }\n });\n e.exports = x;\n});\n__d(\"FileFormResetOnSubmit\", [\"DOMQuery\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMQuery\"), h = b(\"copyProperties\");\n function i(j) {\n this._form = j;\n };\n h(i.prototype, {\n enable: function() {\n this._subscription = this._form.subscribe(\"submit\", Function.prototype.defer.bind(this._reset.bind(this)));\n },\n disable: function() {\n this._subscription.unsubscribe();\n this._subscription = null;\n },\n _reset: function() {\n var j = g.scry(this._form.getRoot(), \"input[type=\\\"file\\\"]\");\n j.forEach(function(k) {\n k.value = \"\";\n });\n }\n });\n e.exports = i;\n});\n__d(\"submitForm\", [\"DOM\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = function(i) {\n var j = g.scry(i, \"input[type=\\\"submit\\\"]\")[0];\n if (j) {\n j.click();\n }\n else {\n j = g.create(\"input\", {\n type: \"submit\",\n className: \"hidden_elem\"\n });\n g.appendContent(i, j);\n j.click();\n g.remove(j);\n }\n ;\n };\n e.exports = h;\n});\n__d(\"FormSubmitOnChange\", [\"Event\",\"copyProperties\",\"submitForm\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"copyProperties\"), i = b(\"submitForm\");\n function j(k) {\n this._form = k;\n };\n h(j.prototype, {\n _listener: null,\n enable: function() {\n this._listener = g.listen(this._form.getRoot(), \"change\", this._submit.bind(this));\n },\n disable: function() {\n this._listener.remove();\n this._listener = null;\n },\n _submit: function() {\n i(this._form.getRoot());\n }\n });\n e.exports = j;\n});\n__d(\"MercuryFileUploader\", [\"ArbiterMixin\",\"CSS\",\"Dialog\",\"DOM\",\"Event\",\"FileForm\",\"FileFormResetOnSubmit\",\"FileInput\",\"FormSubmitOnChange\",\"MercuryAttachment\",\"MercuryAttachmentTemplates\",\"MercuryConstants\",\"SubscriptionsHandler\",\"copyProperties\",\"csx\",\"getObjectValues\",\"shield\",\"startsWith\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"CSS\"), i = b(\"Dialog\"), j = b(\"DOM\"), k = b(\"Event\"), l = b(\"FileForm\"), m = b(\"FileFormResetOnSubmit\"), n = b(\"FileInput\"), o = b(\"FormSubmitOnChange\"), p = b(\"MercuryAttachment\"), q = b(\"MercuryAttachmentTemplates\"), r = b(\"MercuryConstants\"), s = b(\"SubscriptionsHandler\"), t = b(\"copyProperties\"), u = b(\"csx\"), v = b(\"getObjectValues\"), w = b(\"shield\"), x = b(\"startsWith\"), y = b(\"tx\"), z = 0;\n function aa(ca, da, ea, fa) {\n this._parentElem = ca;\n this._attachments = {\n };\n this._imageIDs = {\n };\n this._uploading = {\n };\n this._uploadTemplates = {\n };\n this._uploadStartTimes = {\n };\n this._subscriptionsHandler = new s();\n this._fileForm = new l(da, [o,m,]);\n this._fileForm.setAllowCrossOrigin(true);\n this._fileForm.setUploadInParallel(true);\n var ga = j.find(da, \".-cx-PRIVATE-mercuryFileUploader__root\"), ha = j.find(ga, \".-cx-PRIVATE-mercuryFileUploader__button\");\n new n(ga, ha, ea);\n h.hide(this._parentElem);\n this._subscriptionsHandler.addSubscriptions(this._fileForm.subscribe(\"submit\", function() {\n var ia = (\"upload_\" + z++);\n fa.value = ia;\n var ja = {\n count: 0,\n file_sizes: []\n };\n if (ea.files) {\n for (var ka = 0; (ka < ea.files.length); ka++) {\n if ((ea.files[ka].size > r.AttachmentMaxSize)) {\n this._fileForm.abort();\n this._fileForm.clear();\n new i().setTitle(\"The file you have selected is too large\").setBody(\"The file you have selected is too large. The maximum size is 25MB.\").setButtons(i.OK).setSemiModal(true).show();\n return false;\n }\n ;\n };\n for (var la = 0; (la < ea.files.length); la++) {\n this._addFileUploadRow(ia, ea.files[la].name);\n ja.count++;\n ja.file_sizes.push(ea.files[la].size);\n };\n }\n else {\n this._addFileUploadRow(ia, ea.value);\n ja.count = 1;\n }\n ;\n this.inform(\"submit\", ja);\n }.bind(this)), this._fileForm.subscribe(\"success\", this._onFileUploadSuccess.bind(this)), this._fileForm.subscribe(\"failure\", this._onFileUploadFailure.bind(this)), k.listen(ha, \"click\", w(this.inform, this, \"open\")));\n };\n t(aa.prototype, g, {\n isUploading: function() {\n return !!Object.keys(this._uploading).length;\n },\n getAttachments: function() {\n return v(this._attachments);\n },\n getImageIDs: function() {\n return v(this._imageIDs);\n },\n removeAttachments: function() {\n v(this._uploadTemplates).forEach(function(ca) {\n if (ca) {\n j.remove(ca.getRoot());\n };\n });\n this._attachments = {\n };\n this._imageIDs = {\n };\n this._uploadTemplates = {\n };\n this._uploading = {\n };\n this._uploadStartTimes = {\n };\n h.hide(this._parentElem);\n this.inform(\"dom-updated\");\n },\n destroy: function() {\n this._subscriptionsHandler.release();\n this._fileForm.destroy();\n this.removeAttachments();\n },\n _addFileUploadRow: function(ca, da) {\n var ea = q[\":fb:mercury:upload-file-row\"].build(), fa = ba(da), ga = ((ca + \"/\") + fa);\n this._uploadTemplates[ga] = ea;\n this._uploading[ga] = true;\n this._uploadStartTimes[ga] = Date.now();\n j.appendContent(ea.getNode(\"iconText\"), fa);\n k.listen(ea.getNode(\"closeFileUpload\"), \"click\", this._removeFileUploader.bind(this, ga));\n j.appendContent(this._parentElem, ea.getRoot());\n h.show(this._parentElem);\n this.inform(\"dom-updated\");\n },\n _removeFileUploader: function(ca, event) {\n if (this._uploading[ca]) {\n this.inform(\"upload-canceled-during-upload\");\n }\n else if ((this._attachments[ca] || this._imageIDs[ca])) {\n this.inform(\"upload-canceled-after-uploaded\");\n }\n ;\n delete this._attachments[ca];\n delete this._imageIDs[ca];\n delete this._uploading[ca];\n delete this._uploadStartTimes[ca];\n var da = this._uploadTemplates[ca];\n delete this._uploadTemplates[ca];\n if (da) {\n j.remove(da.getRoot());\n this.inform(\"dom-updated\");\n }\n ;\n this.inform(\"upload-canceled\");\n return false;\n },\n _updateFileUploader: function(ca, da) {\n var ea = this._uploadTemplates[ca], fa = p.getAttachIconClassByMime(da);\n h.addClass(ea.getNode(\"iconText\"), fa);\n h.addClass(ea.getRoot(), \"done\");\n },\n _onFileUploadSuccess: function(event, ca) {\n var da = ca.response.getPayload(), ea = da.uploadID, fa = da.metadata;\n for (var ga = 0; (ga < fa.length); ga++) {\n var ha = ((ea + \"/\") + fa[ga].filename);\n if (this._uploading[ha]) {\n delete this._uploading[ha];\n if (fa[ga].image_id) {\n this._imageIDs[ha] = fa[ga].image_id;\n }\n else this._attachments[ha] = fa[ga];\n ;\n this._updateFileUploader(ha, fa[ga].filetype);\n this.inform(\"one-upload-completed\", {\n upload_time_ms: (Date.now() - this._uploadStartTimes[ha])\n });\n }\n ;\n };\n if (!this.isUploading()) {\n this.inform(\"all-uploads-completed\", {\n count: this.getAttachments().length\n });\n };\n },\n _onFileUploadFailure: function(event, ca) {\n this.inform(\"one-upload-failed\");\n }\n });\n function ba(ca) {\n if ((ca && x(ca, \"C:\\\\fakepath\\\\\"))) {\n return ca.substring(12)\n };\n return ca;\n };\n e.exports = aa;\n});\n__d(\"JoinableConversationMessageFilter\", [\"MercuryLogMessageType\",\"MercuryThreads\",\"MercuryParticipants\",], function(a, b, c, d, e, f) {\n var g = b(\"MercuryLogMessageType\"), h = b(\"MercuryThreads\").get(), i = b(\"MercuryParticipants\"), j = {\n _isFilterable: function(k) {\n var l = k.log_message_type;\n if (!l) {\n return false\n };\n if ((l == g.JOINABLE_JOINED)) {\n return (k.log_message_data.joined_participant !== i.user)\n };\n if (((l == g.UNSUBSCRIBE) || (l == g.SUBSCRIBE))) {\n var m = h.getThreadMetaNow(k.thread_id);\n if ((m && m.is_joinable)) {\n return (k.author !== i.user)\n };\n return false;\n }\n ;\n return false;\n },\n filterMessages: function(k, l, m) {\n var n = [];\n for (var o = 0; (o < l.length); o++) {\n var p = l[o];\n if (j._isFilterable(p)) {\n if (m) {\n k(p);\n };\n }\n else n.push(p);\n ;\n };\n return n;\n }\n };\n e.exports = j;\n});\n__d(\"MercuryThreadMuter\", [\"AsyncDialog\",\"AsyncRequest\",\"Env\",\"MercuryThreads\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncDialog\"), h = b(\"AsyncRequest\"), i = b(\"Env\"), j = b(\"MercuryThreads\").get(), k = {\n getUserIDEmail: function() {\n return (i.user + \"@facebook.com\");\n },\n getThreadMuteSettingForUser: function(l) {\n return (l.mute_settings && l.mute_settings[k.getUserIDEmail()]);\n },\n isThreadMuted: function(l) {\n return (k.getThreadMuteSettingForUser(l) !== undefined);\n },\n showMuteChangeDialog: function(l, m) {\n g.send(new h(\"/ajax/mercury/mute_thread_dialog.php\").setData({\n muting: l\n }), function(n) {\n n.subscribe(\"confirm\", function() {\n this.hide();\n j.updateThreadMuteSetting(m, l);\n }.bind(n));\n });\n }\n };\n e.exports = k;\n});\n__d(\"JoinStatusTabSheet\", [\"copyProperties\",\"DOM\",\"MercuryLogMessageType\",\"MercuryParticipants\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"DOM\"), i = b(\"MercuryLogMessageType\"), j = b(\"MercuryParticipants\");\n function k(l, m) {\n this._rootElement = l;\n this._messageQueue = [];\n this._sheetView = m;\n };\n g(k.prototype, {\n _setMessage: function(l, m) {\n var n = l.author, o = l.log_message_type;\n if ((o == i.JOINABLE_JOINED)) {\n var p = l.log_message_data.joined_participant;\n if ((p !== j.user)) {\n j.get(p, function(s) {\n h.setContent(m, h.tx._(\"{actor} joined the chat.\", {\n actor: s.name\n }));\n });\n };\n }\n else if ((o == i.UNSUBSCRIBE)) {\n if ((n !== j.user)) {\n j.get(n, function(s) {\n h.setContent(m, h.tx._(\"{actor} left the conversation.\", {\n actor: s.name\n }));\n });\n };\n }\n else if ((o == i.SUBSCRIBE)) {\n if ((n !== j.user)) {\n var q = l.log_message_data.added_participants;\n if ((q && (q.length > 0))) {\n var r = [n,q[0],];\n j.getMulti(r, function(s) {\n h.setContent(m, h.tx._(\"{actor} added {subscriber1}.\", {\n actor: s[n].name,\n subscriber1: s[q[0]].name\n }));\n });\n }\n ;\n }\n \n }\n \n ;\n },\n isPermanent: function() {\n return false;\n },\n getCloseTimeout: function() {\n return 3000;\n },\n getType: function() {\n return \"join_status_type\";\n },\n addToQueue: function(l) {\n this._messageQueue.push(l);\n if ((this._messageQueue.length === 1)) {\n this._open();\n };\n },\n render: function() {\n var l = this._messageQueue[0], m = this._getTemplate().build();\n this._setMessage(l, m.getNode(\"text\"));\n h.setContent(this._rootElement, m.getRoot());\n },\n _open: function() {\n this._sheetView.open(this);\n },\n autoCloseCallback: function() {\n this._messageQueue.shift();\n if ((this._messageQueue.length > 0)) {\n this._open();\n };\n },\n couldNotReplace: function() {\n this._open.bind(this).defer(this.getCloseTimeout(), false);\n }\n });\n e.exports = k;\n});\n__d(\"WebMessengerEvents\", [\"Arbiter\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"copyProperties\"), i = h(new g(), {\n MASTER_DOM_CHANGED: \"master-dom-changed\",\n DETAIL_DOM_CHANGED: \"detail-dom-changed\",\n FOCUS_COMPOSER: \"focus-composer\",\n FOCUS_SEARCH: \"focus-search\",\n FOCUS_AND_SELECT_SEARCH: \"focus-and-select-search\",\n SUBMIT_REPLY: \"submit-reply\",\n UPDATE_SELECTION: \"update-selection\",\n masterDOMChanged: function() {\n this.inform(i.MASTER_DOM_CHANGED);\n },\n detailDOMChanged: function() {\n this.inform(i.DETAIL_DOM_CHANGED);\n },\n focusComposer: function() {\n this.inform(i.FOCUS_COMPOSER);\n },\n focusSearch: function() {\n this.inform(i.FOCUS_SEARCH);\n },\n focusAndSelectSearch: function() {\n this.inform(i.FOCUS_AND_SELECT_SEARCH);\n },\n updateSelection: function(j) {\n this.inform(i.UPDATE_SELECTION, j);\n },\n submitReply: function() {\n this.inform(i.SUBMIT_REPLY);\n }\n });\n e.exports = i;\n});\n__d(\"WebMessengerSubscriptionsHandler\", [\"SubscriptionsHandler\",], function(a, b, c, d, e, f) {\n var g = b(\"SubscriptionsHandler\"), h = new g(\"webmessenger\");\n e.exports = h;\n});\n__d(\"isWebMessengerURI\", [], function(a, b, c, d, e, f) {\n function g(h) {\n return (/^(\\/messages)/).test(h.getPath());\n };\n e.exports = g;\n});\n__d(\"WebMessengerWidthControl\", [\"Arbiter\",\"CSS\",\"CSSClassTransition\",\"DOMDimensions\",\"Event\",\"Style\",\"URI\",\"ViewportBounds\",\"WebMessengerEvents\",\"shield\",\"WebMessengerSubscriptionsHandler\",\"$\",\"cx\",\"isWebMessengerURI\",\"requestAnimationFrame\",\"throttle\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"CSS\"), i = b(\"CSSClassTransition\"), j = b(\"DOMDimensions\"), k = b(\"Event\"), l = b(\"Style\"), m = b(\"URI\"), n = b(\"ViewportBounds\"), o = b(\"WebMessengerEvents\"), p = b(\"shield\"), q = b(\"WebMessengerSubscriptionsHandler\"), r = b(\"$\"), s = b(\"cx\"), t = b(\"isWebMessengerURI\"), u = b(\"requestAnimationFrame\"), v = b(\"throttle\"), w = 205, x = 981, y = 257, z = 18, aa = 848, ba = 724, ca = 28942, da = 56, ea, fa, ga;\n function ha(ma, na, oa) {\n this.masterChanged = ma;\n this.detailChaned = na;\n q.addSubscriptions(k.listen(window, \"resize\", v(p(ia, this, this), 100)), g.subscribe([\"sidebar/initialized\",\"sidebar/show\",\"sidebar/hide\",], p(ia, this, this), g.SUBSCRIBE_NEW));\n var pa = (la() ? da : 0);\n if (oa) {\n pa = w;\n };\n this._width = (la() ? 0 : aa);\n ga = true;\n ia(this, pa);\n };\n function ia(ma, na) {\n var oa = (n.getRight() + n.getLeft());\n oa = ((oa || na) || 0);\n var pa = (j.getViewportWithoutScrollbarDimensions().width - oa), qa = Math.round(Math.max(0, ((pa / 2) - (x / 2))));\n pa = ((x + qa) - y);\n pa -= z;\n pa = Math.max(ba, Math.min(aa, pa));\n if ((!isNaN(pa) && (ma._width !== pa))) {\n ma._width = pa;\n var ra = Math.round((pa / ((1 + ca)))), sa = (pa - ra);\n ma.masterChanged(sa);\n ma.detailChaned(ra);\n if (la()) {\n var ta = (pa + y);\n ja(function() {\n if (fa) {\n document.body.className = fa;\n fa = \"\";\n }\n ;\n ka((ta + \"px\"));\n h.removeClass(document.body, \"-cx-PRIVATE-fbWMWidthControl__firstload\");\n (ga && o.detailDOMChanged());\n ga = false;\n }, fa);\n }\n ;\n }\n ;\n };\n function ja(ma, na) {\n (na && h.addClass(document.documentElement, \"-cx-PRIVATE-fbWMWidthControl__animate\"));\n u(ma);\n (na && h.removeClass.curry(document.documentElement, \"-cx-PRIVATE-fbWMWidthControl__animate\").defer(1000, false));\n };\n function ka(ma) {\n l.set(r(\"pageHead\"), \"width\", ma);\n l.set(r(\"globalContainer\"), \"width\", ma);\n };\n function la() {\n if (!ea) {\n ea = h.hasClass(document.body, \"-cx-PUBLIC-hasLitestand__body\");\n };\n return ea;\n };\n i.registerHandler(function(ma, na, oa, pa) {\n function qa(ra) {\n return (la() && t(m(ra)));\n };\n if (qa(pa)) {\n fa = na;\n return true;\n }\n else if (qa(oa)) {\n ja(function() {\n ma.className = na;\n ka(\"\");\n }, true);\n return true;\n }\n \n ;\n });\n e.exports = ha;\n});\n__d(\"TextInputControl\", [\"Event\",\"function-extensions\",\"Class\",\"DOMControl\",\"Input\",\"copyProperties\",\"debounce\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\");\n b(\"function-extensions\");\n var h = b(\"Class\"), i = b(\"DOMControl\"), j = b(\"Input\"), k = b(\"copyProperties\"), l = b(\"debounce\");\n function m(n) {\n this.parent.construct(this, n);\n var o = this.getRoot(), p = l(this.update.bind(this), 0);\n g.listen(o, {\n input: p,\n keydown: p,\n paste: p\n });\n };\n h.extend(m, i);\n k(m.prototype, {\n setMaxLength: function(n) {\n j.setMaxLength(this.getRoot(), n);\n return this;\n },\n getValue: function() {\n return j.getValue(this.getRoot());\n },\n isEmpty: function() {\n return j.isEmpty(this.getRoot());\n },\n setValue: function(n) {\n j.setValue(this.getRoot(), n);\n this.update();\n return this;\n },\n clear: function() {\n return this.setValue(\"\");\n },\n setPlaceholderText: function(n) {\n j.setPlaceholder(this.getRoot(), n);\n return this;\n }\n });\n e.exports = m;\n});\n__d(\"TextMetrics\", [\"Event\",\"DOM\",\"Style\",\"UserAgent\",\"debounce\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"DOM\"), i = b(\"Style\"), j = b(\"UserAgent\"), k = b(\"debounce\"), l;\n function m() {\n if ((typeof l === \"undefined\")) {\n var p = h.create(\"div\", {\n className: \"webkitZoomTest\"\n }), q = function() {\n h.appendContent(document.body, p);\n l = (100 / p.clientHeight);\n h.remove(p);\n };\n g.listen(window, \"resize\", k(q, 100));\n q();\n }\n ;\n return l;\n };\n function n(p) {\n var q = p.clientWidth, r = ((i.get(p, \"-moz-box-sizing\") == \"border-box\"));\n if (r) {\n return q\n };\n var s = (i.getFloat(p, \"paddingLeft\") + i.getFloat(p, \"paddingRight\"));\n return (q - s);\n };\n function o(p, q) {\n this._node = p;\n this._flexible = !!q;\n var r = \"textarea\", s = \"textMetrics\";\n if (this._flexible) {\n r = \"div\";\n s += \" textMetricsInline\";\n }\n ;\n this._shadow = h.create(r, {\n className: s\n });\n var t = [\"fontSize\",\"fontStyle\",\"fontWeight\",\"fontFamily\",\"wordWrap\",];\n t.forEach(function(v) {\n i.set(this._shadow, v, i.get(p, v));\n }.bind(this));\n var u = i.get(p, \"lineHeight\");\n if ((j.chrome() || j.webkit())) {\n u = (Math.round((parseInt(u, 10) * m())) + \"px\");\n };\n i.set(this._shadow, \"lineHeight\", u);\n document.body.appendChild(this._shadow);\n };\n o.prototype.measure = function(p) {\n var q = this._node, r = this._shadow;\n p = (((p || q.value)) + \"...\");\n if (!this._flexible) {\n var s = n(q);\n i.set(r, \"width\", (Math.max(s, 0) + \"px\"));\n }\n ;\n h.setContent(r, p);\n return {\n width: r.scrollWidth,\n height: r.scrollHeight\n };\n };\n o.prototype.destroy = function() {\n h.remove(this._shadow);\n };\n e.exports = o;\n});\n__d(\"TextAreaControl\", [\"Event\",\"Arbiter\",\"ArbiterMixin\",\"Class\",\"CSS\",\"DOMControl\",\"Style\",\"TextInputControl\",\"TextMetrics\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Arbiter\"), i = b(\"ArbiterMixin\"), j = b(\"Class\"), k = b(\"CSS\"), l = b(\"DOMControl\"), m = b(\"Style\"), n = b(\"TextInputControl\"), o = b(\"TextMetrics\"), p = b(\"copyProperties\");\n function q(s, t) {\n return (m.getFloat(s, t) || 0);\n };\n function r(s) {\n this.autogrow = k.hasClass(s, \"uiTextareaAutogrow\");\n this.parent.construct(this, s);\n this.width = null;\n g.listen(s, \"focus\", this._handleFocus.bind(this));\n };\n j.extend(r, n);\n p(r.prototype, i, {\n setAutogrow: function(s) {\n this.autogrow = s;\n return this;\n },\n onupdate: function() {\n this.parent.onupdate();\n if (this.autogrow) {\n var s = this.getRoot();\n if (!this.metrics) {\n this.metrics = new o(s);\n };\n if ((typeof this.initialHeight === \"undefined\")) {\n this.isBorderBox = (((m.get(s, \"box-sizing\") === \"border-box\") || (m.get(s, \"-moz-box-sizing\") === \"border-box\")) || (m.get(s, \"-webkit-box-sizing\") === \"border-box\"));\n this.borderBoxOffset = (((q(s, \"padding-top\") + q(s, \"padding-bottom\")) + q(s, \"border-top-width\")) + q(s, \"border-bottom-width\"));\n this.initialHeight = (s.offsetHeight - this.borderBoxOffset);\n }\n ;\n var t = this.metrics.measure(), u = Math.max(this.initialHeight, t.height);\n if (this.isBorderBox) {\n u += this.borderBoxOffset;\n };\n if ((u !== this.height)) {\n this.height = u;\n m.set(s, \"height\", (u + \"px\"));\n h.inform(\"reflow\");\n this.inform(\"resize\");\n }\n ;\n }\n else if (this.metrics) {\n this.metrics.destroy();\n this.metrics = null;\n }\n \n ;\n },\n resetHeight: function() {\n this.height = -1;\n this.update();\n },\n _handleFocus: function() {\n this.width = null;\n }\n });\n r.getInstance = function(s) {\n return (l.getInstance(s) || new r(s));\n };\n e.exports = r;\n});\n__d(\"MessagesEmoticonView\", [\"DOM\",\"EmoticonsList\",\"Event\",\"Focus\",\"InputSelection\",\"Keys\",\"Parent\",\"SubscriptionsHandler\",\"TextAreaControl\",\"Toggler\",\"copyProperties\",\"endsWith\",\"startsWith\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"EmoticonsList\"), i = b(\"Event\"), j = b(\"Focus\"), k = b(\"InputSelection\"), l = b(\"Keys\"), m = b(\"Parent\"), n = b(\"SubscriptionsHandler\"), o = b(\"TextAreaControl\"), p = b(\"Toggler\"), q = b(\"copyProperties\"), r = b(\"endsWith\"), s = b(\"startsWith\"), t = h.symbols;\n function u(w, x, y) {\n var z = m.byClass(w, \"emoticon\");\n if (!z) {\n return\n };\n var aa = \"emoticon_\", ba = null;\n z.className.split(\" \").forEach(function(ia) {\n if (s(ia, aa)) {\n ba = ia.substring(aa.length);\n };\n });\n if (!t[ba]) {\n return\n };\n var ca = o.getInstance(x), da = ca.getValue(), ea = t[ba], fa = da.substring(0, y.start), ga = da.substring(y.end);\n if (((y.start > 0) && !r(fa, \" \"))) {\n ea = (\" \" + ea);\n };\n if (!s(ga, \" \")) {\n ea += \" \";\n };\n var ha = ((fa + ea) + ga);\n y.start += ea.length;\n y.end = y.start;\n ca.setValue(ha);\n k.set(x, y.start, y.end);\n return true;\n };\n function v(w, x) {\n var y = {\n start: 0,\n end: 0\n };\n function z() {\n y = k.get(x);\n };\n var aa = g.find(w, \".uiToggleFlyout\");\n this._subscriptions = new n();\n this._subscriptions.addSubscriptions(p.subscribe(\"show\", function(ba, ca) {\n if ((ca.active && g.contains(w, ca.active))) {\n k.set(x, y.start, y.end);\n var da = g.scry(aa, \"a.emoticon\")[0];\n j.setWithoutOutline(da);\n }\n ;\n }), i.listen(aa, \"click\", function(event) {\n var ba = u(event.getTarget(), x, y);\n (ba && p.hide(w));\n }), i.listen(aa, \"keyup\", function(event) {\n if ((event.keyCode === l.ESC)) {\n p.hide(w);\n k.set(x, y.start, y.end);\n }\n ;\n }), i.listen(x, \"keyup\", z), i.listen(x, \"click\", z));\n };\n q(v.prototype, {\n destroy: function() {\n this._subscriptions.release();\n this._subscriptions = null;\n }\n });\n q(v, {\n create: function(w, x) {\n return new v(w, x);\n }\n });\n e.exports = v;\n});\n__d(\"MercuryTypingReceiver\", [\"Arbiter\",\"ChannelConstants\",\"MercuryActionTypeConstants\",\"MercuryParticipants\",\"MercuryPayloadSource\",\"MercuryServerRequests\",\"MercuryThreads\",\"TypingDetector\",\"setTimeoutAcrossTransitions\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ChannelConstants\"), i = b(\"MercuryActionTypeConstants\"), j = b(\"MercuryParticipants\"), k = b(\"MercuryPayloadSource\"), l = b(\"MercuryServerRequests\").get(), m = b(\"MercuryThreads\").get(), n = b(\"TypingDetector\"), o = b(\"setTimeoutAcrossTransitions\"), p, q = {\n }, r = 30000, s = new g();\n function t(y) {\n var z = (q[y] || {\n }), aa = Object.keys(z);\n aa.sort(function(ba, ca) {\n return (z[ba] - z[ca]);\n });\n return aa;\n };\n function u() {\n p = null;\n var y = Date.now(), z = {\n }, aa = false;\n for (var ba in q) {\n var ca = false;\n for (var da in (q[ba] || {\n })) {\n if ((q[ba][da] < (y - r))) {\n delete q[ba][da];\n ca = true;\n }\n else aa = true;\n ;\n };\n if (ca) {\n z[ba] = t(ba);\n };\n };\n for (var ea in z) {\n s.inform(\"state-changed\", z);\n break;\n };\n if (aa) {\n p = o(u, 3000);\n };\n };\n function v(y, z) {\n if ((y in q)) {\n if ((z in q[y])) {\n delete q[y][z];\n w(y);\n }\n \n };\n };\n function w(y) {\n var z = {\n };\n z[y] = t(y);\n s.inform(\"state-changed\", z);\n };\n function x(y) {\n if (y.thread) {\n return l.getClientThreadIDNow(y.thread)\n };\n if ((y.type === \"typ\")) {\n return m.getThreadIdForUser(y.from)\n };\n return null;\n };\n g.subscribe([h.getArbiterType(\"typ\"),h.getArbiterType(\"ttyp\"),], function(y, z) {\n var aa = z.obj, ba = x(aa);\n if (ba) {\n var ca = j.getIDForUser(aa.from);\n if ((aa.st == n.TYPING)) {\n q[ba] = (q[ba] || {\n });\n var da = q[ba][ca];\n q[ba][ca] = Date.now();\n if (!p) {\n p = o(u, 3000);\n };\n (!da && w(ba));\n }\n else if ((aa.st == n.INACTIVE)) {\n v(ba, ca);\n }\n ;\n }\n ;\n });\n l.subscribe(\"update-typing-state\", function(y, z) {\n var aa = z.payload_source;\n if ((aa != k.CLIENT_CHANNEL_MESSAGE)) {\n return\n };\n var ba = z.actions;\n if ((!ba || !ba.length)) {\n return\n };\n var ca = i.USER_GENERATED_MESSAGE;\n ba.forEach(function(da) {\n if (((da.action_type == ca) && (da.author != j.user))) {\n v(da.thread_id, da.author);\n };\n });\n });\n e.exports = s;\n});\n__d(\"formatUnixTimestamp\", [\"formatDate\",], function(a, b, c, d, e, f) {\n var g = b(\"formatDate\");\n function h(i, j, k, l) {\n var m = new Date((i * 1000));\n return g(m, j, k, l);\n };\n e.exports = h;\n});\n__d(\"MercuryIndicatorController\", [\"ArbiterMixin\",\"DOM\",\"MercuryActionTypeConstants\",\"MercuryConfig\",\"MercuryDelayedRoger\",\"MercuryMessageSourceTags\",\"MercuryParticipants\",\"MercuryRoger\",\"MercuryThreads\",\"MercuryTypingReceiver\",\"DateFormatConfig\",\"arrayContains\",\"copyProperties\",\"formatUnixTimestamp\",\"removeFromArray\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"DOM\"), i = b(\"MercuryActionTypeConstants\"), j = b(\"MercuryConfig\"), k = b(\"MercuryDelayedRoger\"), l = b(\"MercuryMessageSourceTags\"), m = b(\"MercuryParticipants\"), n = b(\"MercuryRoger\"), o = b(\"MercuryThreads\").get(), p = b(\"MercuryTypingReceiver\"), q = b(\"DateFormatConfig\"), r = b(\"arrayContains\"), s = b(\"copyProperties\"), t = b(\"formatUnixTimestamp\"), u = b(\"removeFromArray\"), v = b(\"tx\"), w = [];\n function x(y) {\n this._threadID = y;\n this._canonicalUser = o.getCanonicalUserInThread(y);\n w.push(this);\n };\n s(x.prototype, g, {\n destroy: function() {\n u(w, this);\n },\n setLastMessage: function(y) {\n this._lastMsg = y;\n this._handleStateChange();\n },\n _informStateChanged: function(y) {\n if (((y.activity == \"none\") && (this._currentActivity == \"none\"))) {\n return\n };\n if ((this._lastMsg && m.isAuthor(this._lastMsg.author))) {\n y.self_authored = true;\n };\n this._currentActivity = y.activity;\n this.inform(\"state-changed\", y);\n },\n _notifySentFrom: function() {\n var y, z, aa = this._lastMsg.location_text, ba = (this._lastMsg.source_tags || []);\n if (aa) {\n y = v._(\"Sent from {location}\", {\n location: aa\n });\n z = \"sentFromMobile\";\n }\n else if (r(ba, l.MESSENGER)) {\n y = h.create(\"a\", {\n href: \"/mobile/messenger\",\n class: \"fcg\",\n target: \"_blank\"\n }, \"Sent from Messenger\");\n z = \"sentFromMobile\";\n }\n else if (r(ba, l.MOBILE)) {\n y = h.create(\"a\", {\n href: \"/mobile\",\n class: \"fcg\",\n target: \"_blank\"\n }, \"Sent from Mobile\");\n z = \"sentFromMobile\";\n }\n else if (r(ba, l.EMAIL)) {\n y = \"Sent from email\";\n z = \"sentFromEmail\";\n }\n else {\n this._informStateChanged({\n activity: \"none\"\n });\n return;\n }\n \n \n \n ;\n this._informStateChanged({\n activity: z,\n text: y\n });\n },\n _notifySeenTimestamp: function(y) {\n var z = (n.getSeenTimestamp(this._threadID, y[0]) * 39458), aa = (Date.now() * 39477);\n if ((z < (aa - 518400))) {\n ba = \"M j\";\n }\n else if ((z < (aa - 86400))) {\n ba = \"D g:ia\";\n }\n else ba = \"g:ia\";\n \n ;\n var ba = (q.formats[ba] || ba), ca = t(z, ba, false, true);\n this._informStateChanged({\n activity: \"seen-timestamp\",\n text: v._(\"Seen {timestamp}\", {\n timestamp: ca\n })\n });\n },\n _checkNamesForCollision: function(y, z) {\n var aa = false;\n m.getMulti(y, function(ba) {\n function ca(fa) {\n if ((typeof ba[fa] !== \"undefined\")) {\n return ba[fa].short_name.toLowerCase();\n }\n else return fa\n ;\n };\n var da = z.map(ca), ea = y.map(ca);\n aa = da.some(function(fa) {\n return (ea.indexOf(fa) !== ea.lastIndexOf(fa));\n });\n });\n return aa;\n },\n _notifySeenBy: function(y) {\n var z = this._lastMsg, aa = true;\n m.getMulti(y, function(ba) {\n aa = false;\n if ((this._lastMsg != z)) {\n return\n };\n var ca = o.getThreadMetaNow(this._threadID), da = (ca ? ca.participants.length : 0), ea = (y.length + ((z.author != m.user))), fa, ga = false, ha = false, ia = ((da > 2) && (ea >= (da - 1)));\n if ((!(ia) && (da > 0))) {\n ha = this._checkNamesForCollision(ca.participants, y);\n };\n if (ia) {\n fa = \"Seen by everyone\";\n }\n else if ((y.length == 1)) {\n fa = v._(\"Seen by {user}\", {\n user: ba[y[0]].short_name\n });\n }\n else if ((y.length == 2)) {\n fa = v._(\"Seen by {user1}, {user2}\", {\n user1: ba[y[0]].short_name,\n user2: ba[y[1]].short_name\n });\n }\n else if ((y.length == 3)) {\n fa = v._(\"Seen by {user1}, {user2}, {user3}\", {\n user1: ba[y[0]].short_name,\n user2: ba[y[1]].short_name,\n user3: ba[y[2]].short_name\n });\n }\n else if ((y.length > 3)) {\n var ja = (Object.keys(ba).length - 2), ka = v._(\"{num} more\", {\n num: ja\n }), la = h.create(\"span\", {\n className: \"more\"\n }, ka);\n fa = h.tx._(\"Seen by {user1}, {user2}, {=num more link}\", {\n user1: ba[y[0]].short_name,\n user2: ba[y[1]].short_name,\n \"=num more link\": la\n });\n ga = true;\n }\n \n \n \n \n ;\n ga = (ga || ha);\n this._informStateChanged({\n activity: \"seen-by\",\n text: fa,\n seenBy: y,\n hasNameCollision: ha,\n tooltip: ga\n });\n }.bind(this));\n (aa && this._informStateChanged({\n activity: \"none\"\n }));\n },\n _notifyTyping: function(y) {\n var z = this._lastMsg, aa = true;\n m.getMulti(y, function(ba) {\n aa = false;\n if ((this._lastMsg != z)) {\n return\n };\n if ((this._canonicalUser || j.ChatMultiTypGK)) {\n var ca = o.getThreadMetaNow(this._threadID), da = (ca ? ca.participants.length : 0), ea, fa = false;\n if (((da > 2) && (y.length >= (da - 1)))) {\n ea = \"Everyone is typing...\";\n }\n else if ((y.length == 1)) {\n ea = v._(\"{name} is typing...\", {\n name: ba[y[0]].short_name\n });\n }\n else if ((y.length == 2)) {\n ea = v._(\"{user1} and {user2} are typing...\", {\n user1: ba[y[0]].short_name,\n user2: ba[y[1]].short_name\n });\n }\n else if ((y.length == 3)) {\n ea = v._(\"{user1}, {user2}, and {user3} are typing...\", {\n user1: ba[y[0]].short_name,\n user2: ba[y[1]].short_name,\n user3: ba[y[2]].short_name\n });\n }\n else if ((y.length > 3)) {\n var ga = (Object.keys(ba).length - 2), ha = v._(\"{num} more\", {\n num: ga\n }), ia = h.create(\"a\", {\n href: \"#\"\n }, ha);\n ea = h.tx._(\"{user1}, {user2}, and {=num more link} are typing...\", {\n user1: ba[y[0]].short_name,\n user2: ba[y[1]].short_name,\n \"=num more link\": ia\n });\n fa = true;\n }\n \n \n \n \n ;\n this._informStateChanged({\n activity: \"typing\",\n text: ea,\n typing: y,\n tooltip: fa\n });\n }\n ;\n }.bind(this));\n (aa && this._informStateChanged({\n activity: \"none\"\n }));\n },\n _handleStateChange: function() {\n var y = i.LOG_MESSAGE;\n if ((!this._lastMsg || (this._lastMsg.action_type == y))) {\n this._informStateChanged({\n activity: \"none\"\n });\n return;\n }\n ;\n if ((this._typing && this._typing.length)) {\n this._notifyTyping(this._typing);\n return;\n }\n ;\n if ((this._canonicalUser && (this._lastMsg.author != m.user))) {\n this._notifySentFrom();\n return;\n }\n ;\n var z = k.getSeenBy(this._threadID, true);\n if (z.length) {\n if (this._canonicalUser) {\n this._notifySeenTimestamp(z);\n return;\n }\n else {\n this._notifySeenBy(z);\n return;\n }\n \n };\n this._informStateChanged({\n activity: \"none\"\n });\n }\n });\n p.subscribe(\"state-changed\", function(y, z) {\n w.forEach(function(aa) {\n var ba = z[aa._threadID];\n if ((ba !== undefined)) {\n aa._typing = ba;\n aa._handleStateChange();\n }\n ;\n });\n });\n k.subscribe(\"state-changed\", function(y, z) {\n w.forEach(function(aa) {\n (z[aa._threadID] && aa._handleStateChange());\n });\n });\n e.exports = x;\n});\n__d(\"MercuryLastMessageIndicator\", [\"CSS\",\"MercuryIndicatorController\",\"DOM\",\"MercuryParticipants\",\"Tooltip\",\"copyProperties\",\"csx\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"CSS\"), h = b(\"MercuryIndicatorController\"), i = b(\"DOM\"), j = b(\"MercuryParticipants\"), k = b(\"Tooltip\"), l = b(\"copyProperties\"), m = b(\"csx\"), n = b(\"cx\");\n function o(p, q, r, s) {\n this._lastMessageIndicator = q;\n this._hideTyping = (r || false);\n this._messagesView = s;\n this._controller = new h(p);\n this._subscription = this._controller.subscribe(\"state-changed\", this._handleStateChanged.bind(this));\n };\n l(o.prototype, {\n destroy: function() {\n this._setClass(null);\n this._subscription.unsubscribe();\n this._controller.destroy();\n },\n setLastMessage: function(p) {\n this._controller.setLastMessage(p);\n },\n _handleStateChanged: function(p, q) {\n var r = this._messagesView.isScrolledToBottom();\n this._rerender(q);\n (r && this._messagesView.scrollToBottom());\n },\n _rerender: function(p) {\n if ((p.activity == \"none\")) {\n this._setClass(null);\n return;\n }\n ;\n if ((this._hideTyping && (p.activity == \"typing\"))) {\n this._setClass(null);\n return;\n }\n ;\n g.conditionClass(this._lastMessageIndicator, \"-cx-PRIVATE-mercuryLastMessageIndicator__selfauthored\", p.self_authored);\n var q = i.find(this._lastMessageIndicator, \".-cx-PRIVATE-mercuryLastMessageIndicator__text\");\n if (p.text) {\n i.setContent(q, p.text);\n }\n else i.empty(q);\n ;\n if ((p.activity.substring(0, 4) == \"seen\")) {\n this._setClass(\"seen\");\n if (((p.activity == \"seen-by\") && p.tooltip)) {\n j.getMulti(p.seenBy, function(r) {\n var s = i.create(\"div\");\n for (var t in r) {\n var u = i.create(\"div\");\n i.setContent(u, r[t].name);\n i.appendContent(s, u);\n };\n var v = p.hasNameCollision, w;\n if (v) {\n w = this._lastMessageIndicator;\n }\n else w = i.find(this._lastMessageIndicator, \"span.more\");\n ;\n k.set(w, s, \"above\", \"center\");\n }.bind(this));\n }\n else k.remove(this._lastMessageIndicator);\n ;\n }\n else this._setClass(p.activity);\n ;\n },\n _setClass: function(p) {\n if ((this._lastClass === p)) {\n return\n };\n (this._lastClass && g.removeClass(this._lastMessageIndicator, this._lastClass));\n (p && g.addClass(this._lastMessageIndicator, p));\n this._lastClass = p;\n }\n });\n e.exports = o;\n});\n__d(\"MercuryStateCheck\", [\"Arbiter\",\"ChannelConstants\",\"MercuryFolders\",\"MessagingTag\",\"MercuryServerRequests\",\"URI\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ChannelConstants\"), i = b(\"MercuryFolders\"), j = b(\"MessagingTag\"), k = b(\"MercuryServerRequests\").get(), l = b(\"URI\"), m = b(\"copyProperties\"), n = m(new g(), {\n initialize: function() {\n g.subscribe(h.ON_INVALID_HISTORY, o);\n d([\"ChannelConnection\",], function(p) {\n p.subscribe(p.CONNECTED, function(q, r) {\n if (!r.init) {\n o();\n };\n });\n });\n }\n });\n function o() {\n var p;\n if ((l.getRequestURI().getPath().search(/messages/) !== -1)) {\n p = i.getSupportedFolders();\n }\n else p = [j.INBOX,];\n ;\n k.fetchMissedMessages(p);\n };\n n.initialize();\n e.exports = n;\n});\n__d(\"MercuryAttachmentRenderer\", [\"MercuryAttachmentTemplates\",\"MercuryAttachmentAudioClip.react\",\"CSS\",\"MercuryConstants\",\"DOM\",\"Image.react\",\"JSXDOM\",\"MercuryAttachment\",\"MercuryAttachmentType\",\"MercuryMessages\",\"MercuryParticipants\",\"React\",\"Style\",\"URI\",\"UserAgent\",\"cx\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"MercuryAttachmentTemplates\"), h = b(\"MercuryAttachmentAudioClip.react\"), i = b(\"CSS\"), j = b(\"MercuryConstants\"), k = b(\"DOM\"), l = b(\"Image.react\"), m = b(\"JSXDOM\"), n = b(\"MercuryAttachment\"), o = b(\"MercuryAttachmentType\"), p = b(\"MercuryMessages\").get(), q = b(\"MercuryParticipants\"), r = b(\"React\"), s = b(\"Style\"), t = b(\"URI\"), u = b(\"UserAgent\"), v = b(\"cx\"), w = b(\"tx\"), x = (u.ie() <= 8);\n function y(ba, ca) {\n var da = g[ca].build().setNodeContent(\"filename\", ba.name), ea = da.getNode(\"link\");\n ea.setAttribute(\"href\", ba.url);\n (ba.rel && ea.setAttribute(\"rel\", ba.rel));\n i.addClass(da.getRoot(), n.getAttachIconClass(ba.icon_type));\n return da;\n };\n function z(ba, ca) {\n var da = g[ca].build().setNodeContent(\"filename\", ba.name);\n i.addClass(da.getRoot(), n.getAttachIconClass(ba.icon_type));\n return da;\n };\n var aa = {\n renderAttachment: function(ba, ca, da, ea, fa) {\n var ga = 100, ha = (ba ? 160 : 400), ia = ca.attach_type, ja = null, ka = null, la = true, ma = j.MercurySupportedShareType;\n if ((ia == o.ERROR)) {\n ja = aa.renderError(ca);\n };\n if (((!ba && (ia == o.SHARE)) && ca.share_xhp)) {\n ka = aa.renderShareXHP(ca, da.id);\n };\n if ((ia == o.STICKER)) {\n la = false;\n ka = aa.renderSticker(ca);\n }\n ;\n if ((!ka && (ia == o.SHARE))) {\n var na = ca.share_data_type;\n switch (na) {\n case ma.FB_PHOTO:\n ka = aa.renderPreview(ca, da, ea, fa);\n break;\n case ma.FB_VIDEO:\n ka = aa.renderVideoThumb(ca);\n break;\n case ma.FB_MUSIC_ALBUM:\n \n case ma.FB_SONG:\n \n case ma.FB_PLAYLIST:\n \n case ma.FB_MUSICIAN:\n \n case ma.FB_RADIO_STATION:\n ka = aa.renderMusic(ca);\n break;\n case ma.EXTERNAL:\n \n case ma.FB_TEMPLATE:\n \n case ma.FB_COUPON:\n \n case ma.FB_SOCIAL_REPORT_PHOTO:\n ka = aa.renderExternalLink(ca);\n break;\n default:\n if (ca.name) {\n ka = aa.renderShareLink(ca, (da && da.id), ba);\n };\n break;\n };\n }\n ;\n if ((!ka && ca.preview_loading)) {\n ka = aa.renderPreview(null);\n };\n if ((!ka && ca.preview_url)) {\n ka = aa.renderPreview(ca, da, ea, fa);\n };\n if ((!ka && (ia == o.FILE))) {\n if ((ca.metadata && (ca.metadata.type == j.MercuryAttachmentAudioClip))) {\n ka = k.create(\"div\");\n var oa = aa.renderAudioClip(ca, da.message_id, ga, ha);\n r.renderComponent(oa, ka);\n }\n else ka = (ba ? aa.renderFileLink(ca) : aa.renderExtendedFileLink(ca));\n \n };\n return {\n error: ja,\n content: ka,\n bubblePreferred: la\n };\n },\n renderError: function(ba) {\n var ca = g[\":fb:mercury:attachment:error\"].build();\n k.appendContent(ca.getNode(\"error\"), ba.error_msg);\n return ca.getRoot();\n },\n renderExternalLink: function(ba) {\n var ca = g[\":fb:mercury:attachment:external-link\"].build().setNodeContent(\"name\", ba.name);\n (ba.base_url && ca.setNodeContent(\"shortLink\", ba.base_url));\n var da = ca.getNode(\"preview\"), ea = ca.getNode(\"image-link\");\n ea.setAttribute(\"href\", ba.url);\n (ba.rel && ea.setAttribute(\"rel\", ba.rel));\n if (ba.preview_url) {\n var fa = ca.getNode(\"preview-image\");\n fa.setAttribute(\"src\", ba.preview_url);\n i.addClass(da, ba.preview_class);\n i.show(fa);\n }\n else {\n i.addClass(ca.getRoot(), \"noMedia\");\n i.hide(da);\n }\n ;\n ca.getNode(\"name\").setAttribute(\"href\", ba.url);\n d([\"LinkshimHandler\",], function(ga) {\n ga.setUpLinkshimHandling(ca.getNode(\"name\"));\n ga.setUpLinkshimHandling(ca.getNode(\"image-link\"));\n });\n if (ba.rel) {\n ca.getNode(\"name\").setAttribute(\"rel\", ba.rel);\n };\n return ca.getRoot();\n },\n renderFileLink: function(ba) {\n var ca = null;\n if ((ba.url === \"\")) {\n ca = \":fb:mercury:attachment:file-name\";\n return z(ba, ca).getRoot();\n }\n else {\n ca = \":fb:mercury:attachment:file-link\";\n return y(ba, ca).getRoot();\n }\n ;\n },\n renderAudioClip: function(ba, ca, da, ea) {\n var fa = (ba.metadata.duration / 1000), ga = 200;\n if ((da && ea)) {\n if ((fa < 5)) {\n ga = da;\n }\n else ga = ((((1 - Math.pow(10, (((fa - 5)) / -30)))) * ((ea - da))) + da);\n \n };\n return h({\n src: ba.url,\n duration: (ba.metadata.duration / 1000),\n showHelp: false,\n width: ga\n });\n },\n renderExtendedFileLink: function(ba) {\n var ca = null;\n if ((ba.url === \"\")) {\n ca = \":fb:mercury:attachment:file-name\";\n return z(ba, ca).getRoot();\n }\n ;\n var ca = \":fb:mercury:attachment:extended-file-link\", da = y(ba, ca);\n if (ba.open_url) {\n var ea = da.getNode(\"openLinkContainer\");\n i.show(ea);\n var fa = da.getNode(\"openFile\");\n fa.setAttribute(\"href\", ba.open_url);\n }\n ;\n var ga = da.getNode(\"downloadFile\");\n ga.setAttribute(\"href\", ba.url);\n (ba.rel && ga.setAttribute(\"rel\", ba.rel));\n return da.getRoot();\n },\n renderMusic: function(ba) {\n var ca = g[\":fb:mercury:attachment:music\"].build().setNodeContent(\"filename\", ba.name), da = ca.getNode(\"link\");\n da.setAttribute(\"href\", ba.url);\n da.setAttribute(\"target\", \"_blank\");\n (ba.rel && da.setAttribute(\"rel\", ba.rel));\n var ea = ca.getNode(\"image-link\");\n ea.setAttribute(\"href\", ba.url);\n (ba.rel && ea.setAttribute(\"rel\", ba.rel));\n var fa = ca.getNode(\"preview-image\");\n fa.setAttribute(\"src\", ba.preview_url);\n i.show(fa);\n i.addClass(ca.getNode(\"icon_link\"), \"MercuryMusicIcon\");\n return ca.getRoot();\n },\n resizeContain: function(ba, ca) {\n var da = (ba.width / ba.height), ea = (ca.width / ca.height);\n if ((ea < da)) {\n return {\n width: Math.min((ba.height * ea), ca.width),\n height: Math.min(ba.height, ca.height)\n };\n }\n else return {\n width: Math.min(ba.width, ca.width),\n height: Math.min((ba.width / ea), ca.height)\n }\n ;\n },\n renderPreview: function(ba, ca, da, ea) {\n var fa = g[\":fb:mercury:attachment:preview\"].build(), ga = fa.getNode(\"image-link\");\n if (ba) {\n (ba.url && ga.setAttribute(\"href\", ba.url));\n (ba.rel && ga.setAttribute(\"rel\", ba.rel));\n var ha;\n if (ba.preview_uploading) {\n i.addClass(ga, \"-cx-PRIVATE-mercuryImages__uploading\");\n if ((da >= 176)) {\n ha = \"/images/photos/dots_large.png\";\n }\n else if ((da >= 86)) {\n ha = \"/images/photos/dots_medium.png\";\n }\n else ha = \"/images/photos/dots_small.png\";\n \n ;\n s.set(ga, \"width\", (da + \"px\"));\n s.set(ga, \"max-width\", (da + \"px\"));\n if ((ba.preview_width && ba.preview_height)) {\n s.set(ga, \"padding-bottom\", (((((ba.preview_height / ba.preview_width)) * 100)) + \"%\"));\n };\n }\n else if ((ba.metadata && ba.metadata.fbid)) {\n ha = t(\"/ajax/mercury/attachments/photo.php\").addQueryData({\n fbid: ba.metadata.fbid,\n mode: ea,\n width: da,\n height: da\n }).toString();\n }\n else ha = t(ba.preview_url).addQueryData({\n mode: ea,\n width: da,\n height: da\n }).toString();\n \n ;\n var ia = fa.getNode(\"preview-image\");\n if (ha) {\n if ((((ea === \"contain\") && ba.preview_width) && ba.preview_height)) {\n var ja = aa.resizeContain({\n width: da,\n height: da\n }, {\n width: ba.preview_width,\n height: ba.preview_height\n });\n ia.setAttribute(\"width\", ja.width);\n ia.setAttribute(\"height\", ja.height);\n }\n ;\n if ((ba.preview_uploading || (((ea === \"cover\") && !x)))) {\n i.addClass(ga, \"-cx-PRIVATE-mercuryImages__usebackgroundimage\");\n s.set(ga, \"backgroundImage\", ((\"url(\" + ha) + \")\"));\n }\n else {\n ia.onload = function() {\n ia.removeAttribute(\"width\");\n ia.removeAttribute(\"height\");\n };\n ia.setAttribute(\"src\", ha);\n }\n ;\n }\n ;\n if (ca) {\n this.renderReportRespondLink(fa.getRoot(), ba, ca.message_id);\n };\n }\n else i.addClass(ga, \"-cx-PUBLIC-mercuryImages__loading\");\n ;\n return fa.getRoot();\n },\n renderShareLink: function(ba, ca, da) {\n var ea = g[\":fb:mercury:attachment:share-link\"].build().setNodeContent(\"name\", ba.name), fa = ea.getNode(\"link\");\n fa.setAttribute(\"href\", ba.url);\n (ba.rel && fa.setAttribute(\"rel\", ba.rel));\n return ea.getRoot();\n },\n renderVideoThumb: function(ba) {\n var ca = g[\":fb:mercury:attachment:video-thumb\"].build(), da = ca.getNode(\"thumb\");\n da.setAttribute(\"href\", ba.url);\n da.setAttribute(\"rel\", ba.rel);\n var ea = k.find(ca.getRoot(), \"img\");\n ea.src = ba.preview_url;\n return ca.getRoot();\n },\n renderShareXHP: function(ba, ca) {\n var da = k.create(\"div\");\n if (ba) {\n k.appendContent(da, ba.share_xhp);\n this.renderReportRespondLink(da, ba, ca);\n }\n ;\n return da;\n },\n renderSticker: function(ba) {\n var ca = k.create(\"div\"), da = {\n uri: ba.url,\n width: ba.metadata.width,\n height: ba.metadata.height\n }, ea = l({\n className: \"mvs\",\n src: da\n });\n r.renderComponent(ea, ca);\n return ca;\n },\n renderReportRespondLink: function(ba, ca, da) {\n if (!ca.is_social_report_attachment) {\n return null\n };\n switch (ca.share_data_type) {\n case j.MercurySupportedShareType.FB_PHOTO:\n break;\n case j.MercurySupportedShareType.FB_SOCIAL_REPORT_PHOTO:\n return null;\n default:\n return null;\n };\n var ea = null;\n if (da) {\n ea = p.getMessagesFromIDs([da,])[0];\n };\n if (!ea) {\n return null\n };\n if ((ea.author === q.user)) {\n return null\n };\n var fa = null;\n q.get(ea.author, function(ga) {\n fa = k.create(\"a\", {\n rel: \"dialog-post\",\n className: \"-cx-PRIVATE-fbChatMessage__socialreportlink\",\n id: \"respond-link\",\n ajaxify: t(\"/ajax/report/social_resolution/photo/\").setQueryData({\n attachment_fbid: ca.attach_id,\n photo_fbid: ca.shared_object_id,\n sender_id: q.getUserID(ga.id)\n }).toString()\n });\n k.setContent(fa, w._(\"Respond to {name}'s request\", {\n name: ga.name\n }));\n k.appendContent(ba, fa);\n });\n },\n renderPhotoAttachments: function(ba, ca, da, ea) {\n var fa = ba.length;\n if (!fa) {\n return null\n };\n var ga = m.div({\n className: \"-cx-PRIVATE-mercuryImages__photoattachment\"\n }), ha = (m.div({\n className: \"-cx-PUBLIC-fbChatMessage__resetpadding\"\n }, ga));\n if ((fa === 1)) {\n var ia = aa.renderPreview(ba[0], ca, da, \"contain\");\n k.appendContent(ga, ia);\n return ha;\n }\n ;\n var ja = ((((fa == 2) || (fa == 4))) ? 2 : 3), ka = (((da - (((ja - 1)) * ea))) / ja), la = Math.ceil((fa / ja)), ma = ((la * ka) + (((la - 1)) * ea)), na = (m.div({\n className: \"-cx-PRIVATE-mercuryImages__grid\",\n style: ((\"padding-bottom: \" + (((ma / da) * 100))) + \"%;\")\n }));\n k.appendContent(ga, na);\n for (var oa = 0; (oa < fa); ++oa) {\n var pa = aa.renderPreview(ba[oa], ca, ka, \"cover\"), qa = (oa % ja), ra = Math.floor((oa / ja));\n i.addClass(pa, \"-cx-PRIVATE-mercuryImages__griditem\");\n s.apply(pa, {\n width: ((((ka / da) * 100)) + \"%\"),\n left: ((((((qa * ((ka + ea)))) / da) * 100)) + \"%\"),\n top: ((((((ra * ((ka + ea)))) / ma) * 100)) + \"%\")\n });\n k.appendContent(na, pa);\n };\n return ha;\n },\n isPhotoAttachment: function(ba) {\n return ((ba.attach_type == o.PHOTO) || (((ba.attach_type == o.FILE) && ba.preview_url)));\n },\n isShareAttachment: function(ba) {\n return (ba.attach_type == o.SHARE);\n },\n isFileAttachment: function(ba) {\n return (ba.attach_type == o.FILE);\n },\n isErrorAttachment: function(ba) {\n return (ba.attach_type == o.ERROR);\n },\n booleanLexicographicComparator: function(ba) {\n return function(ca, da) {\n for (var ea = 0; (ea < ba.length); ++ea) {\n var fa = ba[ea](ca), ga = ba[ea](da);\n if ((fa && !ga)) {\n return -1;\n }\n else if ((!fa && ga)) {\n return 1\n }\n ;\n };\n return 0;\n };\n }\n };\n e.exports = aa;\n});\n__d(\"URLScraper\", [\"ArbiterMixin\",\"DataStore\",\"Event\",\"URLMatcher\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"DataStore\"), i = b(\"Event\"), j = b(\"URLMatcher\"), k = b(\"copyProperties\"), l = \"scraperLastPermissiveMatch\";\n function m(n) {\n this.input = n;\n this.enable();\n };\n k(m.prototype, g, {\n reset: function() {\n h.set(this.input, l, null);\n },\n enable: function() {\n if (this.events) {\n return\n };\n var n = function(o) {\n setTimeout(this.check.bind(this, o), 30);\n };\n this.events = i.listen(this.input, {\n paste: n.bind(this, false),\n keydown: n.bind(this, true)\n });\n },\n disable: function() {\n if (!this.events) {\n return\n };\n for (var event in this.events) {\n this.events[event].remove();;\n };\n this.events = null;\n },\n check: function(n) {\n var o = this.input.value;\n if ((n && m.trigger(o))) {\n return\n };\n var p = m.match(o), q = j.permissiveMatch(o);\n if ((q && ((q != h.get(this.input, l))))) {\n h.set(this.input, l, q);\n this.inform(\"match\", {\n url: (p || q),\n alt_url: q\n });\n }\n ;\n }\n });\n k(m, j);\n e.exports = m;\n});\n__d(\"DOMHyperlink\", [\"Env\",\"JSXDOM\",\"TransformTextToDOMMixin\",\"UntrustedLink\",\"URI\",\"URLScraper\",\"copyProperties\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"Env\"), h = b(\"JSXDOM\"), i = b(\"TransformTextToDOMMixin\"), j = b(\"UntrustedLink\"), k = b(\"URI\"), l = b(\"URLScraper\"), m = b(\"copyProperties\"), n = b(\"cx\"), o = {\n MAX_ITEMS: 40,\n match: function(p, q) {\n var r = l.match(p);\n if (!r) {\n return false\n };\n var s = p.indexOf(r), t = (s + r.length);\n return {\n startIndex: s,\n endIndex: t,\n element: this._element(r, q)\n };\n },\n _element: function(p, q) {\n var r = p, s = r.replace(/\"/g, \"%22\");\n if (!(/^[a-z][a-z0-9\\-+.]+:\\/\\//i.test(p))) {\n s = (\"http://\" + s);\n };\n if (!k.isValidURI(s)) {\n return r\n };\n var t = h.a({\n className: \"-cx-PUBLIC-fbHTMLHyperlink__link\",\n href: s,\n target: \"_blank\",\n rel: \"nofollow\"\n }, r);\n if ((q && !k(s).isFacebookURI())) {\n t.onmousedown = function(u) {\n j.bootstrap(this, g.lhsh, u);\n };\n };\n return t;\n }\n };\n e.exports = m(o, i);\n});\n__d(\"MercuryMessageRenderer\", [\"MercuryAttachmentRenderer\",\"CSS\",\"DOM\",\"DOMEmoji\",\"DOMEmote\",\"DOMHyperlink\",\"DOMQuery\",\"FBIDEmote\",\"JSXDOM\",\"MercuryLogMessageType\",\"MercuryParticipants\",\"Tooltip\",\"cx\",\"transformTextToDOM\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"MercuryAttachmentRenderer\"), h = b(\"CSS\"), i = b(\"DOM\"), j = b(\"DOMEmoji\"), k = b(\"DOMEmote\"), l = b(\"DOMHyperlink\"), m = b(\"DOMQuery\"), n = b(\"FBIDEmote\"), o = b(\"JSXDOM\"), p = b(\"MercuryLogMessageType\"), q = b(\"MercuryParticipants\"), r = b(\"Tooltip\"), s = b(\"cx\"), t = b(\"transformTextToDOM\"), u = b(\"tx\"), v = [\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\",], w = {\n renderDate: function(pa) {\n var qa = new Date();\n qa.setHours(0);\n qa.setMinutes(0);\n qa.setSeconds(0);\n qa.setMilliseconds(0);\n var ra = (((24 * 60) * 60) * 1000), sa = (qa.getTime() - pa.getTime());\n if ((sa <= 0)) {\n return \"Today\";\n }\n else if ((sa < ra)) {\n return \"Yesterday\"\n }\n ;\n var ta = v[pa.getMonth()], ua = pa.getDate(), va = pa.getFullYear();\n if ((va != qa.getFullYear())) {\n return u._(\"{month} {date}, {year}\", {\n month: ta,\n date: ua,\n year: va\n });\n }\n else return u._(\"{month} {date}\", {\n month: ta,\n date: ua\n })\n ;\n },\n renderTooltipFlyout: function(pa, qa) {\n qa.forEach(function(ra) {\n var sa = i.create(\"div\");\n i.setContent(sa, ra.name);\n i.appendContent(pa, sa);\n });\n },\n renderLogMessage: function(pa, qa, ra, sa) {\n z(pa, sa);\n aa(qa, sa);\n ba(ra, sa);\n },\n formatMessageBody: function(pa, qa, ra) {\n var sa = ((pa || \"\")).replace(/\\s+$/, \"\");\n if (!qa) {\n return y(sa, false, ra)\n };\n var ta = Object.keys(qa).map(function(wa) {\n return window.parseInt(wa);\n }).sort(function(wa, xa) {\n return (wa - xa);\n }), ua = [], va = 0;\n ta.forEach(function(wa) {\n var xa = sa.slice(va, wa);\n if (xa) {\n ua.push(y(xa, false, ra));\n };\n va = (wa + qa[wa].length);\n var ya = sa.slice(wa, va);\n if (ya) {\n ua.push(y(ya, true, ra));\n };\n });\n if ((va < sa.length)) {\n ua.push(y(sa.slice(va), false, ra));\n };\n return ((ua.length === 0) ? null : ((ua.length === 1) ? ua[0] : i.create(\"span\", {\n }, ua)));\n }\n };\n function x(pa, qa) {\n var ra = pa.replace(/\\r\\n?/g, \"\\u000a\").split(/\\n{2,}/);\n return ra.filter(function(sa) {\n return sa.length;\n }).map(function(sa) {\n return o.p(null, qa(sa));\n });\n };\n function y(pa, qa, ra) {\n if (((pa.length === 0) && !qa)) {\n return null\n };\n var sa = function(ta) {\n return t(ta, [l.params(true),j,n,k,]);\n };\n return (o.span({\n className: (qa ? \"highlight\" : null)\n }, (ra ? x(pa, sa) : sa(pa))));\n };\n function z(pa, qa) {\n var ra = \"\", sa;\n switch (qa.log_message_type) {\n case p.JOINABLE_CREATED:\n \n case p.JOINABLE_JOINED:\n \n case p.SUBSCRIBE:\n ra = \"mercurySubscribeIcon\";\n break;\n case p.UNSUBSCRIBE:\n ra = \"mercuryUnsubscribeIcon\";\n break;\n case p.THREAD_NAME:\n ra = \"mercuryThreadNameIcon\";\n break;\n case p.THREAD_IMAGE:\n ra = \"mercuryThreadImageIcon\";\n break;\n case p.VIDEO_CALL:\n sa = qa.log_message_data.answered;\n if ((sa || oa(qa))) {\n ra = \"mercuryVideoCallIcon\";\n }\n else ra = \"mercuryMissedVideoCallIcon\";\n ;\n break;\n case p.PHONE_CALL:\n sa = qa.log_message_data.answered;\n if (sa) {\n ra = \"mercuryPhoneCallIcon\";\n }\n else ra = \"mercuryMissedPhoneCallIcon\";\n ;\n break;\n case p.SERVER_ERROR:\n ra = \"mercuryErrorIcon\";\n break;\n };\n h.addClass(pa, ra);\n };\n function aa(pa, qa) {\n switch (qa.log_message_type) {\n case p.JOINABLE_CREATED:\n ga(pa, qa);\n break;\n case p.JOINABLE_JOINED:\n ha(pa, qa);\n break;\n case p.SUBSCRIBE:\n la(pa, qa);\n break;\n case p.UNSUBSCRIBE:\n ma(pa, qa);\n break;\n case p.VIDEO_CALL:\n if (oa(qa)) {\n ca(pa, qa);\n }\n else ea(pa, qa);\n ;\n break;\n case p.PHONE_CALL:\n da(pa, qa);\n break;\n case p.THREAD_NAME:\n fa(pa, qa);\n break;\n case p.THREAD_IMAGE:\n ia(pa, qa);\n break;\n case p.SERVER_ERROR:\n na(pa, qa);\n break;\n };\n };\n function ba(pa, qa) {\n var ra = qa.log_message_type;\n if ((ra == p.THREAD_IMAGE)) {\n var sa = qa.log_message_data.image;\n if (sa) {\n var ta = g.renderPreview((sa.preview_url ? sa : null));\n i.setContent(pa, ta);\n h.addClass(ta, \"-cx-PRIVATE-mercuryImages__logmessageattachment\");\n h.show(pa);\n }\n ;\n }\n ;\n };\n var ca = function(pa, qa) {\n q.get(qa.author, function(ra) {\n var sa = i.create(\"span\", {\n className: \"-cx-PRIVATE-fbChatEventMsg__participant\"\n }, ra.short_name), ta;\n switch (qa.log_message_data.event_name) {\n case \"installing\":\n ta = i.tx._(\"{firstname} is setting up video calling...\", {\n firstname: sa\n });\n break;\n case \"installed\":\n ta = i.tx._(\"{firstname} finished setting up video calling.\", {\n firstname: sa\n });\n break;\n case \"install_canceled\":\n ta = i.tx._(\"You canceled the video calling installation. \", {\n firstname: sa\n });\n break;\n };\n if (ta) {\n i.setContent(pa, ta);\n };\n });\n }, da = function(pa, qa) {\n var ra = qa.log_message_data.caller, sa = qa.log_message_data.callee, ta = [ra,sa,];\n q.getMulti(ta, function(ua) {\n if ((ra == q.user)) {\n var va = i.create(\"span\", {\n className: \"-cx-PRIVATE-fbChatEventMsg__participant\"\n }, ua[sa].short_name), wa;\n if (qa.log_message_data.answered) {\n wa = i.tx._(\"You called {firstname}.\", {\n firstname: va\n });\n }\n else wa = i.tx._(\"{firstname} missed a call from you. \", {\n firstname: va\n });\n ;\n }\n else {\n var xa = i.create(\"span\", {\n className: \"-cx-PRIVATE-fbChatEventMsg__participant\"\n }, ua[ra].short_name);\n if (qa.log_message_data.answered) {\n wa = i.tx._(\"{firstname} called you.\", {\n firstname: xa\n });\n }\n else wa = i.tx._(\"You missed a call from {firstname}. \", {\n firstname: xa\n });\n ;\n }\n ;\n i.setContent(pa, wa);\n });\n }, ea = function(pa, qa) {\n var ra = qa.log_message_data.caller, sa = qa.log_message_data.callee, ta = [ra,sa,];\n q.getMulti(ta, function(ua) {\n if ((ra == q.user)) {\n var va = i.create(\"span\", {\n className: \"-cx-PRIVATE-fbChatEventMsg__participant\"\n }, ua[sa].short_name), wa;\n if (qa.log_message_data.answered) {\n wa = i.tx._(\"You called {firstname}.\", {\n firstname: va\n });\n }\n else wa = i.tx._(\"{firstname} missed a call from you. \", {\n firstname: va\n });\n ;\n }\n else {\n var xa = i.create(\"span\", {\n className: \"-cx-PRIVATE-fbChatEventMsg__participant\"\n }, ua[ra].short_name);\n if (qa.log_message_data.answered) {\n wa = i.tx._(\"{firstname} called you.\", {\n firstname: xa\n });\n }\n else wa = i.tx._(\"You missed a call from {firstname}. \", {\n firstname: xa\n });\n ;\n }\n ;\n i.setContent(pa, wa);\n });\n }, fa = function(pa, qa) {\n var ra = qa.log_message_data.name, sa = i.create(\"b\", {\n }, ra);\n if ((qa.author == q.user)) {\n if (ra) {\n i.setContent(pa, i.tx._(\"You named the conversation: {name}.\", {\n name: sa\n }));\n }\n else i.setContent(pa, i.tx._(\"You removed the conversation name.\"));\n ;\n }\n else q.get(qa.author, function(ta) {\n var ua, va = ja(ta);\n if (ra) {\n ua = i.tx._(\"{actor} named the conversation: {name}.\", {\n actor: va,\n name: sa\n });\n }\n else ua = i.tx._(\"{actor} removed the conversation name.\", {\n actor: va\n });\n ;\n i.setContent(pa, ua);\n });\n ;\n }, ga = function(pa, qa) {\n if ((qa.author == q.user)) {\n i.setContent(pa, i.tx._(\"Other people can join this chat from News Feed and add their friends.\"));\n }\n else q.get(qa.author, function(ra) {\n var sa = ja(ra);\n i.setContent(pa, i.tx._(\"{actor} shared this chat to News Feed. Other people can join and add their friends.\", {\n actor: sa\n }));\n });\n ;\n }, ha = function(pa, qa) {\n var ra = qa.log_message_data.joined_participant;\n if ((ra == q.user)) {\n i.setContent(pa, i.tx._(\"You joined the chat. Other people can join from News Feed and add their friends.\"));\n }\n else q.get(ra, function(sa) {\n var ta = ja(sa);\n i.setContent(pa, i.tx._(\"{actor} joined the chat.\", {\n actor: ta\n }));\n });\n ;\n }, ia = function(pa, qa) {\n if ((qa.author == q.user)) {\n if (qa.log_message_data.image) {\n i.setContent(pa, i.tx._(\"You changed the conversation picture.\"));\n }\n else i.setContent(pa, i.tx._(\"You removed the conversation picture.\"));\n ;\n }\n else q.get(qa.author, function(ra) {\n var sa = ja(ra), ta;\n if (qa.log_message_data.image) {\n ta = i.tx._(\"{actor} changed the conversation picture.\", {\n actor: sa\n });\n }\n else ta = i.tx._(\"{actor} removed the conversation picture.\", {\n actor: sa\n });\n ;\n i.setContent(pa, ta);\n });\n ;\n }, ja = function(pa) {\n if (pa.href) {\n return i.create(\"a\", {\n href: pa.href,\n className: \"-cx-PRIVATE-fbChatEventMsg__participant\"\n }, pa.name)\n };\n return pa.name;\n }, ka = function(pa) {\n var qa = pa.indexOf(q.user);\n if ((qa > 0)) {\n return pa.splice(qa, 1).concat(pa)\n };\n return pa;\n }, la = function(pa, qa) {\n var ra = ka(qa.log_message_data.added_participants), sa = null, ta;\n if ((ra.length == 1)) {\n sa = [qa.author,ra[0],];\n q.getMulti(sa, function(ua) {\n if ((qa.author == q.user)) {\n ta = i.tx._(\"You added {subscriber1}.\", {\n subscriber1: ja(ua[ra[0]])\n });\n }\n else if ((ra[0] == q.user)) {\n ta = i.tx._(\"{actor} added you.\", {\n actor: ja(ua[qa.author])\n });\n }\n else ta = i.tx._(\"{actor} added {subscriber1}.\", {\n actor: ja(ua[qa.author]),\n subscriber1: ja(ua[ra[0]])\n });\n \n ;\n i.setContent(pa, ta);\n });\n }\n else if ((ra.length == 2)) {\n sa = [qa.author,].concat(ra);\n q.getMulti(sa, function(ua) {\n if ((qa.author == q.user)) {\n ta = i.tx._(\"You added {subscriber1} and {subscriber2}.\", {\n subscriber1: ja(ua[ra[0]]),\n subscriber2: ja(ua[ra[1]])\n });\n }\n else if ((ra[0] == q.user)) {\n ta = i.tx._(\"{actor} added you and {subscriber2}.\", {\n actor: ja(ua[qa.author]),\n subscriber2: ja(ua[ra[1]])\n });\n }\n else ta = i.tx._(\"{actor} added {subscriber1} and {subscriber2}.\", {\n actor: ja(ua[qa.author]),\n subscriber1: ja(ua[ra[0]]),\n subscriber2: ja(ua[ra[1]])\n });\n \n ;\n i.setContent(pa, ta);\n });\n }\n else if ((ra.length == 3)) {\n sa = [qa.author,].concat(ra);\n q.getMulti(sa, function(ua) {\n if ((qa.author == q.user)) {\n ta = i.tx._(\"You added {subscriber1}, {subscriber2} and {subscriber3}.\", {\n subscriber1: ja(ua[ra[0]]),\n subscriber2: ja(ua[ra[1]]),\n subscriber3: ja(ua[ra[2]])\n });\n }\n else if ((ra[0] == q.user)) {\n ta = i.tx._(\"{actor} added you, {subscriber2} and {subscriber3}.\", {\n actor: ja(ua[qa.author]),\n subscriber2: ja(ua[ra[1]]),\n subscriber3: ja(ua[ra[2]])\n });\n }\n else ta = i.tx._(\"{actor} added {subscriber1}, {subscriber2} and {subscriber3}.\", {\n actor: ja(ua[qa.author]),\n subscriber1: ja(ua[ra[0]]),\n subscriber2: ja(ua[ra[1]]),\n subscriber3: ja(ua[ra[2]])\n });\n \n ;\n i.setContent(pa, ta);\n });\n }\n else {\n sa = [qa.author,].concat(ra);\n q.getMulti(sa, function(ua) {\n var va = i.tx._(\"{num} more\", {\n num: (ra.length - 2)\n }), wa = i.create(\"span\", {\n className: \"more\"\n }, va), xa = i.create(\"div\");\n w.renderTooltipFlyout(xa, ra.slice(2).map(function(za) {\n return ua[za];\n }));\n if ((qa.author == q.user)) {\n ta = i.tx._(\"You added {subscriber1}, {subscriber2} and {more_people}.\", {\n subscriber1: ja(ua[ra[0]]),\n subscriber2: ja(ua[ra[1]]),\n more_people: wa\n });\n }\n else if ((ra[0] == q.user)) {\n ta = i.tx._(\"{actor} added you, {subscriber2} and {more_people}.\", {\n actor: ja(ua[qa.author]),\n subscriber2: ja(ua[ra[1]]),\n more_people: wa\n });\n }\n else ta = i.tx._(\"{actor} added {subscriber1}, {subscriber2} and {more_people}.\", {\n actor: ja(ua[qa.author]),\n subscriber1: ja(ua[ra[0]]),\n subscriber2: ja(ua[ra[1]]),\n more_people: wa\n });\n \n ;\n i.setContent(pa, ta);\n var ya = m.find(pa, \"span.more\");\n r.set(ya, xa, \"above\", \"center\");\n });\n }\n \n \n ;\n }, ma = function(pa, qa) {\n q.get(qa.author, function(ra) {\n var sa;\n if ((qa.author == q.user)) {\n sa = i.tx._(\"You left the conversation.\");\n }\n else sa = i.tx._(\"{actor} left the conversation.\", {\n actor: ja(ra)\n });\n ;\n i.setContent(pa, sa);\n });\n }, na = function(pa, qa) {\n var ra = \"We were unable to fetch previous messages in this conversation.\";\n i.setContent(pa, ra);\n }, oa = function(pa) {\n return ((pa.log_message_data.event_name === \"installing\") || (pa.log_message_data.event_name === \"install_canceled\"));\n };\n e.exports = w;\n});\n__d(\"MercurySheetPolicy\", [], function(a, b, c, d, e, f) {\n var g = {\n canReplaceOpenSheet: function(h, i) {\n if ((h.getType() == i.getType())) {\n return false\n };\n if ((h.isPermanent() && !i.isPermanent())) {\n return false\n };\n return true;\n }\n };\n e.exports = g;\n});\n__d(\"MercurySheetView\", [\"Animation\",\"ArbiterMixin\",\"MercurySheetPolicy\",\"CSS\",\"DOM\",\"Style\",\"MercurySheetTemplates\",\"Vector\",\"copyProperties\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"ArbiterMixin\"), i = b(\"MercurySheetPolicy\"), j = b(\"CSS\"), k = b(\"DOM\"), l = b(\"Style\"), m = b(\"MercurySheetTemplates\"), n = b(\"Vector\"), o = b(\"copyProperties\"), p = b(\"cx\"), q = 5000, r = function(s, t, u) {\n this._threadID = s;\n this._rootElement = t;\n this._tabMainElement = u;\n this._openSheet = null;\n };\n o(r.prototype, h, {\n destroy: function() {\n k.empty(this._rootElement);\n },\n _openCommon: function(s, t) {\n if ((this._openSheet && !i.canReplaceOpenSheet(this._openSheet, s))) {\n if (s.couldNotReplace) {\n s.couldNotReplace();\n };\n return;\n }\n ;\n this.clear(function() {\n this._openSheet = s;\n var u = m[\":fb:mercury:tab-sheet:loading\"].build().getRoot();\n k.setContent(this._rootElement, u);\n j.show(u);\n j.show(this._rootElement);\n s.render();\n if (t) {\n j.addClass(this._tabMainElement, \"sheetSlide\");\n j.addClass(this._tabMainElement, \"-cx-PRIVATE-fbMercuryTabSheet__sheetslide\");\n var v = n.getElementDimensions(this._rootElement).y;\n l.set(this._rootElement, \"bottom\", (v + \"px\"));\n this.resize();\n this._animation = new g(this._rootElement).to(\"bottom\", 0).duration(150).ease(g.ease.both).ondone(function() {\n j.removeClass(this._tabMainElement, \"sheetSlide\");\n j.removeClass(this._tabMainElement, \"-cx-PRIVATE-fbMercuryTabSheet__sheetslide\");\n this.resize();\n }.bind(this)).go();\n }\n else this.resize();\n ;\n if (!s.isPermanent()) {\n var w = q;\n if (s.getCloseTimeout) {\n w = s.getCloseTimeout();\n };\n var x = this.getAutoCloseCallback(s);\n this._sheetCloseHandler = this.close.bind(this, s, x).defer(w, false);\n if (s.timeoutCanBeReset) {\n s.setResetTimeoutCallback(this.resetTimeout.bind(this));\n };\n }\n ;\n }.bind(this));\n },\n getAutoCloseCallback: function(s) {\n if (!s.autoCloseCallback) {\n return null\n };\n return s.autoCloseCallback.bind(s);\n },\n resetTimeout: function(s, t) {\n clearTimeout(this._sheetCloseHandler);\n var u = this.getAutoCloseCallback(s);\n this._sheetCloseHandler = this.close.bind(this, s, u).defer(t, false);\n },\n set: function(s) {\n return this._openCommon(s, false);\n },\n open: function(s) {\n return this._openCommon(s, true);\n },\n close: function(s, t) {\n if ((this._openSheet != s)) {\n return\n };\n if (!this._openSheet) {\n (t && t());\n return;\n }\n ;\n if (this._animation) {\n this._animation.stop();\n };\n if (this._sheetCloseHandler) {\n clearTimeout(this._sheetCloseHandler);\n this._sheetCloseHandler = null;\n }\n ;\n j.addClass(this._tabMainElement, \"sheetSlide\");\n j.addClass(this._tabMainElement, \"-cx-PRIVATE-fbMercuryTabSheet__sheetslide\");\n var u = n.getElementDimensions(this._rootElement).y;\n this.resize();\n this._animation = new g(this._rootElement).to(\"bottom\", (u + \"px\")).duration(100).ease(g.ease.begin).ondone(function() {\n k.empty(this._rootElement);\n j.hide(this._rootElement);\n j.removeClass(this._tabMainElement, \"sheetSlide\");\n j.removeClass(this._tabMainElement, \"-cx-PRIVATE-fbMercuryTabSheet__sheetslide\");\n this._openSheet = null;\n this.resize();\n (t && t());\n }.bind(this)).go();\n },\n clear: function(s) {\n this.close(this._openSheet, s);\n },\n resize: function() {\n this.inform(\"resize\");\n }\n });\n e.exports = r;\n});\n__d(\"BanzaiLogger\", [\"Banzai\",], function(a, b, c, d, e, f) {\n var g = b(\"Banzai\"), h = \"logger\";\n function i(k) {\n return {\n log: function(l, m) {\n g.post(((h + \":\") + l), m, k);\n }\n };\n };\n var j = i();\n j.create = i;\n e.exports = j;\n});\n__d(\"MercuryStickersData\", [\"Arbiter\",\"MercuryStickersInitialData\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"MercuryStickersInitialData\"), i = h.packs, j = {\n getPacks: function() {\n return i;\n },\n updatePackData: function(k) {\n i = k.packs;\n g.inform(\"MercuryStickers/updatedPacks\");\n }\n };\n e.exports = j;\n});\n__d(\"MercuryStickers\", [\"Arbiter\",\"ArbiterMixin\",\"BanzaiLogger\",\"CSS\",\"DOM\",\"Event\",\"MercuryStickersData\",\"MercuryStickersFlyoutList.react\",\"Parent\",\"React\",\"SubscriptionsHandler\",\"Toggler\",\"UIPagelet\",\"XUISpinner.react\",\"copyProperties\",\"csx\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ArbiterMixin\"), i = b(\"BanzaiLogger\"), j = b(\"CSS\"), k = b(\"DOM\"), l = b(\"Event\"), m = b(\"MercuryStickersData\"), n = b(\"MercuryStickersFlyoutList.react\"), o = b(\"Parent\"), p = b(\"React\"), q = b(\"SubscriptionsHandler\"), r = b(\"Toggler\"), s = b(\"UIPagelet\"), t = b(\"XUISpinner.react\"), u = b(\"copyProperties\"), v = b(\"csx\"), w = b(\"cx\");\n function x(y) {\n this._packs = k.find(y, \".-cx-PRIVATE-fbMercuryStickersFlyout__packs\");\n this._packSelector = k.find(y, \".-cx-PRIVATE-fbMercuryStickersFlyout__selector\");\n this._loadedPacks = {\n emoticons: true\n };\n var z = o.byClass(y, \"uiToggle\"), aa = r.listen(\"show\", z, function() {\n this._renderPackList();\n this._subscriptions.addSubscriptions(g.subscribe(\"MercuryStickers/updatedPacks\", this._renderPackList.bind(this)));\n this._selectPack(m.getPacks()[0].id);\n r.unsubscribe(aa);\n }.bind(this));\n r.listen(\"show\", z, function() {\n i.log(\"MercuryStickersLoggerConfig\", {\n event: \"open_tray\"\n });\n });\n this._subscriptions = new q();\n this._subscriptions.addSubscriptions(l.listen(this._packs, \"click\", function(event) {\n var ba = o.byClass(event.getTarget(), \"-cx-PRIVATE-fbMercuryStickersFlyout__sticker\");\n if (ba) {\n this._selectedSticker(ba);\n r.hide(z);\n }\n ;\n }.bind(this)));\n };\n u(x.prototype, h, {\n _renderPackList: function() {\n p.renderComponent(n({\n onPackClick: this._selectPack.bind(this),\n packs: m.getPacks()\n }), this._packSelector);\n },\n _loadPack: function(y) {\n if (this._loadedPacks[y]) {\n return\n };\n var z = this._getPackWithID(y);\n p.renderComponent(t({\n className: \"-cx-PRIVATE-fbMercuryStickersFlyout__spinner\"\n }), z);\n this._loadedPacks[y] = true;\n s.loadFromEndpoint(\"StickerPackPagelet\", z, {\n id: y\n }, {\n crossPage: true\n });\n },\n _getPackWithID: function(y) {\n var z = k.scry(this._packs, (((\".-cx-PRIVATE-fbMercuryStickersFlyout__pack\" + \"[data-id=\\\"\") + y) + \"\\\"]\"))[0];\n if (!z) {\n z = k.create(\"div\", {\n className: \"-cx-PRIVATE-fbMercuryStickersFlyout__pack hidden_elem\",\n \"data-id\": y\n });\n k.appendContent(this._packs, z);\n }\n ;\n return z;\n },\n _selectedSticker: function(y) {\n var z = parseInt(y.getAttribute(\"data-id\"), 10);\n this.inform(\"stickerselected\", {\n id: z\n });\n },\n _selectPack: function(y) {\n k.scry(this._packs, \".-cx-PRIVATE-fbMercuryStickersFlyout__pack\").forEach(j.hide);\n this._loadPack(y);\n j.show(this._getPackWithID(y));\n i.log(\"MercuryStickersLoggerConfig\", {\n event: \"select_pack\",\n packid: y\n });\n },\n destroy: function() {\n (this._subscriptions && this._subscriptions.release());\n this._subscriptions = null;\n }\n });\n e.exports = x;\n});\n__d(\"Token\", [\"CSS\",\"DataStore\",\"DOM\",\"copyProperties\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"CSS\"), h = b(\"DataStore\"), i = b(\"DOM\"), j = b(\"copyProperties\"), k = b(\"tx\");\n function l(m, n) {\n this.info = m;\n this.paramName = n;\n };\n j(l.prototype, {\n getInfo: function() {\n return this.info;\n },\n getText: function() {\n return this.info.text;\n },\n getValue: function() {\n return this.info.uid;\n },\n isFreeform: function() {\n return !!this.info.freeform;\n },\n setSelected: function(m) {\n g.conditionClass(this.getElement(), \"uiTokenSelected\", m);\n return this;\n },\n getElement: function() {\n if (!this.element) {\n this.setElement(this.createElement());\n };\n return this.element;\n },\n setElement: function(m) {\n h.set(m, \"Token\", this);\n this.element = m;\n return this;\n },\n isRemovable: function() {\n return g.hasClass(this.element, \"removable\");\n },\n createElement: function(m, n) {\n var o = this.paramName, p = this.getText(), q = this.getValue(), r = i.create(\"a\", {\n href: \"#\",\n \"aria-label\": k._(\"Remove {item}\", {\n item: p\n }),\n className: \"remove uiCloseButton uiCloseButtonSmall\"\n });\n if (m) {\n g.addClass(r, \"uiCloseButtonSmallGray\");\n };\n var s = i.create(\"input\", {\n type: \"hidden\",\n value: q,\n name: (o + \"[]\"),\n autocomplete: \"off\"\n }), t = i.create(\"input\", {\n type: \"hidden\",\n value: p,\n name: ((\"text_\" + o) + \"[]\"),\n autocomplete: \"off\"\n }), u = i.create(\"span\", {\n className: \"removable uiToken\"\n }, [p,s,t,r,]);\n if (m) {\n g.addClass(u, \"uiTokenGray\");\n };\n if (n) {\n var v = i.create(\"i\", {\n className: n\n });\n i.prependContent(u, v);\n }\n ;\n return u;\n }\n });\n e.exports = l;\n});\n__d(\"WeakToken\", [\"Class\",\"CSS\",\"Token\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"CSS\"), i = b(\"Token\"), j = b(\"copyProperties\");\n function k(l, m) {\n this.parent.construct(this, l, m);\n };\n g.extend(k, i);\n j(k.prototype, {\n createElement: function() {\n var l = this.parent.createElement(true, \"UFIWeakReferenceIcon\");\n h.addClass(l, \"uiTokenWeakReference\");\n return l;\n }\n });\n e.exports = k;\n});\n__d(\"Tokenizer\", [\"Arbiter\",\"ArbiterMixin\",\"CSS\",\"DOM\",\"DOMQuery\",\"DataStore\",\"Event\",\"Focus\",\"Input\",\"Keys\",\"Parent\",\"StickyPlaceholderInput\",\"Style\",\"TextMetrics\",\"Token\",\"UserAgent\",\"WeakToken\",\"copyProperties\",\"createObjectFrom\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ArbiterMixin\"), i = b(\"CSS\"), j = b(\"DOM\"), k = b(\"DOMQuery\"), l = b(\"DataStore\"), m = b(\"Event\"), n = b(\"Focus\"), o = b(\"Input\"), p = b(\"Keys\"), q = b(\"Parent\"), r = b(\"StickyPlaceholderInput\"), s = b(\"Style\"), t = b(\"TextMetrics\"), u = b(\"Token\"), v = b(\"UserAgent\"), w = b(\"WeakToken\"), x = b(\"copyProperties\"), y = b(\"createObjectFrom\"), z = b(\"emptyFunction\"), aa = 20;\n function ba(ca, da) {\n this.element = ca;\n this.typeahead = da;\n this.input = da.getCore().getElement();\n l.set(this.element, \"Tokenizer\", this);\n };\n ba.getInstance = function(ca) {\n var da = q.byClass(ca, \"uiTokenizer\");\n return (da ? l.get(da, \"Tokenizer\") : null);\n };\n x(ba.prototype, h, {\n inline: false,\n maxTokens: null,\n excludeDuplicates: true,\n placeholder: \"\",\n init: function(ca, da, ea, fa) {\n this.init = z;\n this.tokenarea = ca;\n this.paramName = da;\n if (!this.placeholder) {\n this.placeholder = (this.input.getAttribute(\"data-placeholder\") || \"\");\n };\n x(this, (fa || {\n }));\n this.initEvents();\n this.initTypeahead();\n this.reset(ea);\n this.initBehaviors();\n this.adjustWidth.bind(this).defer();\n g.inform(\"Tokenizer/init\", this, g.BEHAVIOR_PERSISTENT);\n },\n reset: function(ca) {\n this.tokens = [];\n this.unique = {\n };\n if (ca) {\n this.populate(ca);\n }\n else j.empty(this.tokenarea);\n ;\n this.updateTokenarea();\n },\n populate: function(ca) {\n var da = [];\n this.tokens = this.getTokenElements().map(function(ea, fa) {\n var ga = ca[fa];\n da.push(this._tokenKey(ga));\n return this.createToken(ga, ea);\n }, this);\n this.unique = y(da, this.tokens);\n },\n getElement: function() {\n return this.element;\n },\n getTypeahead: function() {\n return this.typeahead;\n },\n getInput: function() {\n return this.input;\n },\n initBehaviors: function() {\n this.behaviors = (this.behaviors || []);\n if ((this.behaviors instanceof Array)) {\n this.behaviors.forEach(function(ea) {\n ea.behavior(this, ea.config);\n }.bind(this));\n }\n else for (var ca in ((this.behaviors || {\n }))) {\n var da = (window.TokenizerBehaviors && window.TokenizerBehaviors[ca]);\n da.call(null, this, this.behaviors[ca]);\n }\n ;\n },\n initTypeahead: function() {\n var ca = this.typeahead.getCore();\n ca.resetOnSelect = true;\n ca.setValueOnSelect = false;\n ca.preventFocusChangeOnTab = true;\n if (this.inline) {\n var da = this.typeahead.getView();\n i.addClass(da.getElement(), \"uiInlineTokenizerView\");\n }\n ;\n this.typeahead.subscribe(\"select\", function(ea, fa) {\n var ga = fa.selected;\n if ((\"uid\" in ga)) {\n this.updateInput();\n this.addToken(this.createToken(ga));\n }\n ;\n }.bind(this));\n this.typeahead.subscribe(\"blur\", this.handleBlur.bind(this));\n },\n handleBlur: function(event) {\n this.inform(\"blur\", {\n event: event\n });\n this.updatePlaceholder();\n },\n initEvents: function() {\n var ca = this.handleEvents.bind(this), da = ((v.firefox() < 4) ? \"keypress\" : \"keydown\");\n m.listen(this.tokenarea, {\n click: ca,\n keydown: ca\n });\n m.listen(this.input, \"paste\", this.paste.bind(this));\n m.listen(this.input, da, this.keydown.bind(this));\n },\n handleEvents: function(event) {\n var ca = event.getTarget(), da = (ca && this.getTokenElementFromTarget(ca));\n if (!da) {\n return\n };\n if (((event.type != \"keydown\") || (m.getKeyCode(event) == p.RETURN))) {\n this.processEvents(event, ca, da);\n };\n },\n processEvents: function(event, ca, da) {\n if (q.byClass(ca, \"remove\")) {\n var ea = da.nextSibling;\n ea = (ea && k.scry(da.nextSibling, \".remove\")[0]);\n var fa = this.getTokenFromElement(da);\n fa = this.addTokenData(fa, ca);\n this.removeToken(fa);\n this.focusOnTokenRemoval(event, ea);\n event.kill();\n }\n ;\n },\n focusOnTokenRemoval: function(event, ca) {\n n.set((((event.type == \"keydown\") && ca) || this.input));\n },\n addTokenData: function(ca, da) {\n return ca;\n },\n keydown: function(event) {\n this.inform(\"keydown\", {\n event: event\n });\n var ca = m.getKeyCode(event), da = this.input;\n if (((this.inline && (ca == p.BACKSPACE)) && o.isEmpty(da))) {\n var ea = this.getLastToken();\n if ((ea && ea.isRemovable())) {\n this.removeToken(ea);\n };\n }\n ;\n this.updateInput();\n },\n paste: function(event) {\n this.inform(\"paste\", {\n event: event\n });\n this.updateInput(true);\n },\n focusInput: function() {\n n.set(this.input);\n },\n updateInput: function(ca) {\n if (!this.inline) {\n return\n };\n setTimeout(function() {\n this.adjustWidth(this.input.value);\n if (ca) {\n this.input.value = this.input.value;\n };\n }.bind(this), 20);\n r.setPlaceholderText(this.input, \"\");\n this.inform(\"resize\");\n },\n setPlaceholder: function(ca) {\n this.placeholder = ca;\n if (this.stickyPlaceholder) {\n r.setPlaceholderText(this.input, ca);\n };\n this.updatePlaceholder();\n },\n updatePlaceholder: function() {\n if ((!this.inline || this.input.value)) {\n return\n };\n var ca = !this.tokens.length, da = \"\";\n if ((ca || this.stickyPlaceholder)) {\n this.adjustWidth(this.placeholder);\n da = this.placeholder;\n }\n else this.adjustWidth(this.input.value);\n ;\n r.setPlaceholderText(this.input, da);\n },\n adjustWidth: function(ca) {\n if ((!this.inline || !this._getIsInDOM())) {\n return\n };\n if ((!ca && (this.input.value === \"\"))) {\n ca = this.placeholder;\n };\n var da = aa;\n if ((((ca !== this.placeholder) || !this.getTokens().length) || this.stickyPlaceholder)) {\n var ea = this._getMetrics().measure(ca);\n da = ((ea.width + this._getWidthOffset()) + 10);\n }\n ;\n s.set(this.input, \"width\", (da + \"px\"));\n this.inform(\"resize\");\n },\n getToken: function(ca) {\n return (this.unique[ca] || null);\n },\n getTokens: function() {\n return (this.tokens || []);\n },\n getTokenElements: function() {\n return k.scry(this.tokenarea, \"span.uiToken\");\n },\n getTokenElementFromTarget: function(ca) {\n return q.byClass(ca, \"uiToken\");\n },\n getTokenFromElement: function(ca) {\n return l.get(ca, \"Token\");\n },\n getTokenValues: function() {\n if (!this.tokens) {\n return []\n };\n return this.tokens.map(function(ca) {\n return ca.getValue();\n });\n },\n getFirstToken: function() {\n return (this.tokens[0] || null);\n },\n getLastToken: function() {\n return (this.tokens[(this.tokens.length - 1)] || null);\n },\n hasMaxTokens: function() {\n return (this.maxTokens && (this.maxTokens <= this.tokens.length));\n },\n createToken: function(ca, da) {\n var ea = this.getToken(this._tokenKey(ca));\n if (!ea) {\n ea = (ca.weak_reference ? new w(ca, this.paramName) : new u(ca, this.paramName));\n };\n (da && ea.setElement(da));\n return ea;\n },\n addToken: function(ca) {\n if (this.hasMaxTokens()) {\n return\n };\n var da = this._tokenKey(ca.getInfo());\n if ((da in this.unique)) {\n return\n };\n this.unique[da] = ca;\n this.tokens.push(ca);\n this.insertToken(ca);\n this.updateTokenarea();\n this.inform(\"addToken\", ca);\n g.inform(\"Form/change\", {\n node: this.element\n });\n },\n insertToken: function(ca) {\n j.appendContent(this.tokenarea, ca.getElement());\n },\n removeToken: function(ca) {\n if (!ca) {\n return\n };\n var da = this.tokens.indexOf(ca);\n if ((da < 0)) {\n return\n };\n this.tokens.splice(this.tokens.indexOf(ca), 1);\n delete this.unique[this._tokenKey(ca.getInfo())];\n j.remove(ca.getElement());\n this.updateTokenarea();\n this.inform(\"removeToken\", ca);\n g.inform(\"Form/change\", {\n node: this.element\n });\n },\n removeAllTokens: function() {\n this.reset();\n this.inform(\"removeAllTokens\");\n },\n updateTokenarea: function() {\n var ca = this.typeahead.getCore(), da = this.getTokenValues();\n if (this.excludeDuplicates) {\n (this._exclusions || (this._exclusions = ca.getExclusions()));\n ca.setExclusions(da.concat(this._exclusions));\n }\n ;\n ca.setEnabled(!this.hasMaxTokens());\n this.updateTokenareaVisibility();\n this.updatePlaceholder();\n this.inform(\"resize\");\n },\n updateTokenareaVisibility: function() {\n i.conditionShow(this.tokenarea, (this.tokens.length !== 0));\n },\n _tokenKey: function(ca) {\n return (ca.uid + ((ca.freeform ? \":\" : \"\")));\n },\n _widthOffset: null,\n _getWidthOffset: function() {\n if ((this._widthOffset === null)) {\n var ca = this.input.clientWidth, da = s.getFloat(this.input, \"width\");\n if ((ca == da)) {\n this._widthOffset = (s.getFloat(this.input, \"paddingLeft\") + s.getFloat(this.input, \"paddingRight\"));\n }\n else this._widthOffset = 0;\n ;\n }\n ;\n return this._widthOffset;\n },\n _metrics: null,\n _getMetrics: function() {\n if (!this._metrics) {\n this._metrics = new t(this.input, this.inline);\n };\n return this._metrics;\n },\n _getIsInDOM: function() {\n return (this._isInDOM || (this._isInDOM = k.contains(document.body, this.input)));\n }\n });\n ba.init = function(ca, da) {\n ca.init(da.tokenarea, da.param_name, da.initial_info, da.options);\n };\n e.exports = ba;\n});\n__d(\"MercuryTypeahead\", [\"Event\",\"ArbiterMixin\",\"DOM\",\"DOMDimensions\",\"Input\",\"Keys\",\"MercuryTypeaheadTemplates\",\"Tokenizer\",\"Typeahead\",\"TypeaheadCore\",\"copyProperties\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"ArbiterMixin\"), i = b(\"DOM\"), j = b(\"DOMDimensions\"), k = b(\"Input\"), l = b(\"Keys\"), m = b(\"MercuryTypeaheadTemplates\"), n = b(\"Tokenizer\"), o = b(\"Typeahead\"), p = b(\"TypeaheadCore\"), q = b(\"copyProperties\"), r = b(\"cx\"), s = function(t, u) {\n this._domElement = null;\n this._typeahead = null;\n this._tokenizer = null;\n this._placeholder = \"\";\n this._exclusions = [];\n this._viewNodeOrID = null;\n this._viewOptions = {\n renderer: \"compact\",\n autoSelect: true\n };\n this._tokenizerBehaviors = [];\n this._heightPrev = null;\n this._dataSource = t;\n this._view = u;\n };\n q(s.prototype, h);\n q(s.prototype, {\n setPlaceholder: function(t) {\n this._placeholder = t;\n return this;\n },\n setExcludedParticipants: function(t) {\n this._exclusions = [];\n t.forEach(function(u) {\n var v = u.indexOf(\":\");\n if ((u.substr(0, v) == \"fbid\")) {\n this._exclusions.push(u.substr((v + 1)));\n };\n }.bind(this));\n return this;\n },\n setViewNodeID: function(t) {\n this._viewNodeOrID = t;\n },\n setViewNode: function(t) {\n this._viewNodeOrID = t;\n },\n setFullWidthView: function(t) {\n var u = i.create(\"div\", {\n className: \"-cx-PRIVATE-mercuryTypeahead__typeaheadview uiTypeaheadView\"\n });\n i.setContent(t, u);\n this.setViewNode(u);\n },\n setViewOption: function(t, u) {\n this._viewOptions[t] = u;\n },\n addTokenizerBehavior: function(t) {\n this._tokenizerBehaviors.push(t);\n },\n build: function(t) {\n if (this._domElement) {\n return\n };\n var u = m[\":fb:mercury:tokenizer\"].build(), v = m[\":fb:mercury:typeahead\"].build();\n this._domElement = u.getRoot();\n i.appendContent(this._domElement, v.getRoot());\n var w = v.getNode(\"textfield\");\n k.setPlaceholder(w, this._placeholder);\n w.setAttribute(\"data-placeholder\", this._placeholder);\n this._input = w;\n var x = {\n node_id: this._viewNodeOrID,\n ctor: this._view,\n options: this._viewOptions\n }, y = {\n ctor: p,\n options: {\n setValueOnSelect: true\n }\n };\n this._typeahead = new o(this._dataSource, x, y, v.getRoot());\n this._typeahead.init();\n var z = {\n inline: true,\n behaviors: this._tokenizerBehaviors\n };\n this._tokenizer = new n(this._domElement, this._typeahead);\n this._tokenizer.init(u.getNode(\"tokenarea\"), \"participants\", [], z);\n this._tokenizer.subscribe([\"addToken\",\"removeToken\",\"removeAllTokens\",], this._tokensChanged.bind(this));\n this._tokenizer.subscribe(\"resize\", function() {\n this.inform(\"resize\");\n }.bind(this));\n g.listen(w, \"focus\", function() {\n this._resetDataSource();\n this._typeahead.init();\n }.bind(this));\n g.listen(this._domElement, \"click\", this.focus.bind(this));\n g.listen(w, \"keydown\", this.keydown.bind(this));\n this._heightPrev = j.getElementDimensions(this._domElement).height;\n },\n getElement: function() {\n return this._domElement;\n },\n getSelectedParticipantIDs: function() {\n var t = [];\n if (this._tokenizer) {\n ((this._tokenizer.getTokenValues() || [])).forEach(function(u) {\n t.push((\"fbid:\" + u));\n });\n };\n return t;\n },\n getTokens: function() {\n var t = [];\n if (this._tokenizer) {\n t = this._tokenizer.getTokens();\n };\n return t;\n },\n getTokenizer: function() {\n return this._tokenizer;\n },\n keydown: function(event) {\n if ((this._tokenizer.inline && (event.keyCode == l.ESC))) {\n if (k.isEmpty(this._input)) {\n var t = this._tokenizer.getLastToken();\n if ((t && t.isRemovable())) {\n this._tokenizer.removeToken(t);\n };\n }\n else this._typeahead.getCore().reset();\n ;\n return false;\n }\n ;\n },\n reset: function() {\n (this._tokenizer && this._tokenizer.removeAllTokens());\n (this._typeahead && this._typeahead.getCore().reset());\n },\n focus: function() {\n (this._tokenizer && this._tokenizer.focusInput());\n },\n getTypeahead: function() {\n return this._typeahead;\n },\n _resetDataSource: function() {\n this._dataSource.setExclusions(this._exclusions);\n },\n _tokensChanged: function() {\n this.inform(\"tokens-changed\");\n }\n });\n e.exports = s;\n});"); |
| // 16070 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s97b96e14e87652e83077727426b04b05027d1f39"); |
| // 16071 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"4/uwC\",]);\n}\n;\n;\n__d(\"MercuryAudioPlayer\", [\"JSBNG__Event\",\"Arbiter\",\"DOM\",\"Flash\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Arbiter\"), i = b(\"DOM\"), j = b(\"Flash\"), k = b(\"copyProperties\"), l = 200;\n function m() {\n var v = i.create(\"audio\"), w = false;\n try {\n if (!!v.canPlayType) {\n if (v.canPlayType(\"video/mp4;\").replace(/^no$/, \"\")) {\n w = true;\n }\n ;\n }\n ;\n ;\n } finally {\n return w;\n };\n ;\n };\n;\n function n() {\n return j.isAvailable();\n };\n;\n var o = function() {\n this.interval = null;\n this.arbiterInstance = null;\n this.audio = i.create(\"audio\");\n g.listen(this.audio, \"playing\", function() {\n this.informAttachment(\"playing\", this.audio.currentTime);\n this.interval = JSBNG__setInterval(function() {\n this.informAttachment(\"playing\", this.audio.currentTime);\n }.bind(this), l);\n }.bind(this));\n g.listen(this.audio, \"ended\", function() {\n JSBNG__clearInterval(this.interval);\n this.informAttachment(\"finished\");\n }.bind(this));\n };\n k(o.prototype, {\n setAudio: function(v, w) {\n this.audio.setAttribute(\"src\", v);\n this.arbiterInstance = w;\n },\n informAttachment: function(v, w) {\n if (this.arbiterInstance) {\n this.arbiterInstance.inform(v, w);\n }\n ;\n ;\n },\n play: function() {\n this.audio.play();\n this.informAttachment(\"played\");\n },\n resume: function() {\n this.audio.play();\n this.informAttachment(\"played\");\n },\n pause: function() {\n this.audio.pause();\n JSBNG__clearInterval(this.interval);\n this.informAttachment(\"paused\");\n },\n getType: function() {\n return \"html5\";\n }\n });\n var p = function() {\n this.src = null;\n this.arbiterInstance = null;\n var v = i.create(\"div\");\n JSBNG__document.body.appendChild(v);\n this.swf = j.embed(\"/swf/SoundStreamPlayer.swf\", v, null, {\n });\n this.interval = null;\n h.subscribe(\"soundstream/finished\", function() {\n JSBNG__clearInterval(this.interval);\n this.informAttachment(\"finished\");\n }.bind(this));\n };\n k(p.prototype, {\n setAudio: function(v, w) {\n this.src = v;\n this.arbiterInstance = w;\n },\n informAttachment: function(v, w) {\n if (this.arbiterInstance) {\n this.arbiterInstance.inform(v, w);\n }\n ;\n ;\n },\n play: function() {\n this.swf.playSound(this.src);\n this.interval = JSBNG__setInterval(function() {\n var v = this.swf.getCurrentTime();\n this.informAttachment(\"playing\", v);\n }.bind(this), l);\n this.informAttachment(\"played\");\n },\n resume: function() {\n this.swf.resume();\n this.informAttachment(\"played\");\n },\n pause: function() {\n JSBNG__clearInterval(this.interval);\n this.swf.pause();\n this.informAttachment(\"paused\");\n },\n getType: function() {\n return \"flash\";\n }\n });\n function q() {\n if (m()) {\n return new o();\n }\n else if (n()) {\n return new p();\n }\n \n ;\n ;\n return false;\n };\n;\n var r = null, s = null, t = 0;\n function u(v, w) {\n this.src = v;\n this.arbiterInstance = w;\n this.audio_id = ++t;\n ((((r !== null)) || (r = q())));\n if (!r) {\n return false;\n }\n ;\n ;\n };\n;\n k(u.prototype, {\n getType: function() {\n if (!r) {\n return false;\n }\n else return r.getType()\n ;\n },\n play: function(v) {\n if (((v && ((s == this.audio_id))))) {\n r.resume();\n }\n else {\n this.pause();\n s = this.audio_id;\n r.setAudio(this.src, this.arbiterInstance);\n r.play();\n }\n ;\n ;\n },\n pause: function() {\n r.pause();\n }\n });\n e.exports = u;\n});\n__d(\"MercuryAttachmentAudioClip.react\", [\"Arbiter\",\"ArbiterMixin\",\"MercuryAudioPlayer\",\"Env\",\"JSLogger\",\"LeftRight.react\",\"React\",\"cx\",\"shield\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ArbiterMixin\"), i = b(\"MercuryAudioPlayer\"), j = b(\"Env\"), k = b(\"JSLogger\"), l = b(\"LeftRight.react\"), m = b(\"React\"), n = b(\"cx\"), o = b(\"shield\"), p = b(\"tx\"), q = \"MercuryAttachmentAudioClip/play\", r = k.create(\"mercury_audio_clip\"), s = m.createClass({\n displayName: \"AudioClip\",\n mixins: [h,],\n getInitialState: function() {\n this.subscribe(\"playing\", this.updateTime);\n this.subscribe(\"played\", o(this.setState, this, {\n playing: true,\n started: true\n }));\n this.subscribe(\"paused\", o(this.setState, this, {\n playing: false\n }));\n this.subscribe(\"finished\", o(this.setState, this, {\n playing: false,\n started: false,\n time: this.props.duration\n }));\n this.logged = false;\n var t = ((this.props.downloadOnly ? false : new i(this.props.src, this)));\n g.subscribe(q, function(u, v) {\n if (((this.props.src != v))) {\n this.setState({\n time: 0\n });\n }\n ;\n ;\n }.bind(this));\n return {\n time: 0,\n playing: false,\n started: false,\n duration: this.props.duration,\n audioPlayer: t\n };\n },\n updateTime: function(t, u) {\n this.setState({\n time: u\n });\n },\n play: function() {\n if (this.state.playing) {\n this.state.audioPlayer.pause();\n }\n else {\n this.state.audioPlayer.play(this.state.started);\n g.inform(q, this.props.src);\n if (!this.logged) {\n this.logged = true;\n r.log(\"play\", {\n uid: j.user,\n duration: this.props.duration\n });\n }\n ;\n ;\n }\n ;\n ;\n },\n _formatSeconds: function(t) {\n if (t) {\n t = Math.ceil(t);\n var u = ((t % 60));\n if (((u < 10))) {\n u = ((\"0\" + u));\n }\n ;\n ;\n var v = Math.floor(((t / 60)));\n return ((((v + \":\")) + u));\n }\n else return null\n ;\n },\n _renderPlayer: function(t, u) {\n return (m.DOM.a({\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__player\",\n style: {\n width: t\n },\n onClick: this.play\n }, m.DOM.span({\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__play\"\n }, m.DOM.i({\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__playicon\"\n })), m.DOM.span({\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__duration\"\n }, u), m.DOM.div({\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__scrubber\"\n })));\n },\n render: function() {\n var t = this.state.time, u = this.state.playing, v = this._formatSeconds(this.state.duration), w = ((this.props.width || 170)), x = null, y = Math.ceil(((((t * ((w + 2)))) / this.state.duration)));\n if (((this.state.audioPlayer && this.state.audioPlayer.getType()))) {\n var z = this._renderPlayer(w, v), aa = this._renderPlayer(w, v), ba = (((((\"-cx-PRIVATE-mercuryAttachmentAudioClip__controls\") + ((((u && ((t !== 0)))) ? ((\" \" + \"-cx-PRIVATE-mercuryAttachmentAudioClip__playing\")) : \"\")))) + ((((u && ((t === 0)))) ? ((\" \" + \"-cx-PRIVATE-mercuryAttachmentAudioClip__loading\")) : \"\"))));\n x = (m.DOM.div({\n className: ba\n }, z, m.DOM.div({\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__progresser\",\n style: {\n width: y\n }\n }, aa)));\n }\n else x = (m.DOM.div({\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__controls\"\n }, m.DOM.div({\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__player\"\n }, l(null, m.DOM.a({\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__downloadbox\",\n href: this.props.src\n }, m.DOM.span({\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__speaker\"\n }, m.DOM.i({\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__speakericon\"\n })), m.DOM.span({\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__downloadtext\"\n }, \"Voice Message\"), m.DOM.span({\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__durationinline\"\n }, v)), m.DOM.a({\n href: this.props.src,\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__download\"\n }, m.DOM.i({\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__downloadicon\"\n }))))));\n ;\n ;\n return (m.DOM.div({\n className: \"-cx-PRIVATE-mercuryAttachmentAudioClip__root\"\n }, x));\n }\n });\n e.exports = s;\n});\n__d(\"MercuryStickersFlyoutList.react\", [\"Animation\",\"React\",\"JSBNG__Image.react\",\"cx\",\"fbt\",\"ix\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"React\"), i = b(\"JSBNG__Image.react\"), j = b(\"cx\"), k = b(\"fbt\"), l = b(\"ix\"), m = 5, n = \"Sticker Store\", o = h.createClass({\n displayName: \"MercuryStickersFlyoutList\",\n _calculateNumPages: function(q) {\n return Math.max(1, Math.ceil(((((q.length - 1)) / m))));\n },\n getInitialState: function() {\n return {\n animating: false,\n selectedId: this.props.packs[0].id,\n page: 0,\n numPages: this._calculateNumPages(this.props.packs)\n };\n },\n componentWillReceiveProps: function(q) {\n this.setState({\n numPages: this._calculateNumPages(q.packs)\n });\n },\n shouldComponentUpdate: function(q, r) {\n return !r.animating;\n },\n _canGoPrev: function() {\n return ((this.state.page > 0));\n },\n _canGoNext: function() {\n return ((((this.state.page + 1)) < this.state.numPages));\n },\n _setPage: function(q) {\n if (this.state.animating) {\n return;\n }\n ;\n ;\n this.setState({\n animating: true,\n page: q\n });\n var r = this.refs.positioner.getDOMNode();\n new g(r).to(\"marginLeft\", ((-r.childNodes[q].offsetLeft + \"px\"))).ondone(function() {\n this.setState({\n animating: false\n });\n }.bind(this)).duration(200).go();\n },\n _back: function() {\n ((this._canGoPrev() && this._setPage(((this.state.page - 1)))));\n },\n _next: function() {\n ((this._canGoNext() && this._setPage(((this.state.page + 1)))));\n },\n render: function() {\n var q = this.props.packs, r = this.props.onPackClick, s = [];\n q.forEach(function(y, z) {\n s.push(p({\n key: y.id,\n onClick: function() {\n ((r && r(y.id)));\n this.setState({\n selectedId: y.id\n });\n }.bind(this),\n pack: y,\n selected: ((this.state.selectedId === y.id))\n }));\n }.bind(this));\n var t = [], u = [];\n s.forEach(function(y, z) {\n u.push(y);\n if (((((z > 0)) && ((((((z % m)) === 0)) || ((z === ((s.length - 1))))))))) {\n t.push(h.DOM.div({\n className: \"-cx-PRIVATE-fbMercuryStickersSelector__page\"\n }, u));\n u = [];\n }\n ;\n ;\n });\n var v = (((((\"-cx-PRIVATE-fbMercuryStickersSelector__left\") + ((\" \" + \"lfloat\")))) + ((!this._canGoPrev() ? ((\" \" + \"hidden_elem\")) : \"\")))), w = (((((\"-cx-PRIVATE-fbMercuryStickersSelector__right\") + ((\" \" + \"rfloat\")))) + ((!this._canGoNext() ? ((\" \" + \"hidden_elem\")) : \"\")))), x;\n if (((t.length > 1))) {\n x = h.DOM.a({\n className: w,\n onClick: this._next\n }, i({\n className: \"-cx-PRIVATE-fbMercuryStickersSelector__arrow\",\n src: l(\"/images/messaging/stickers/selector/rightarrow.png\")\n }));\n }\n ;\n ;\n return (h.DOM.div({\n className: \"-cx-PRIVATE-fbMercuryStickersSelector__root\"\n }, h.DOM.a({\n ajaxify: \"/ajax/messaging/stickers/store\",\n \"aria-label\": n,\n className: \"-cx-PRIVATE-fbMercuryStickersSelector__store rfloat\",\n \"data-hover\": \"tooltip\",\n ref: \"store\",\n rel: \"dialog\"\n }, i({\n className: \"-cx-PRIVATE-fbMercuryStickersSelector__storeicon\",\n src: l(\"/images/messaging/stickers/selector/store.png\")\n })), h.DOM.a({\n className: v,\n onClick: this._back\n }, i({\n className: \"-cx-PRIVATE-fbMercuryStickersSelector__arrow\",\n src: l(\"/images/messaging/stickers/selector/leftarrow.png\")\n })), x, h.DOM.div({\n className: \"-cx-PRIVATE-fbMercuryStickersSelector__icons\"\n }, h.DOM.div({\n className: \"-cx-PRIVATE-fbMercuryStickersSelector__positioner\",\n ref: \"positioner\"\n }, t))));\n }\n }), p = h.createClass({\n displayName: \"PackIcon\",\n render: function() {\n var q = this.props.pack, r = (((\"-cx-PRIVATE-fbMercuryStickersFlyout__packselector\") + ((this.props.selected ? ((\" \" + \"-cx-PRIVATE-fbMercuryStickersFlyout__selectedpack\")) : \"\"))));\n return (h.DOM.a({\n \"aria-label\": q.JSBNG__name,\n className: r,\n \"data-id\": q.id,\n \"data-hover\": \"tooltip\",\n onClick: function() {\n ((this.props.onClick && this.props.onClick(q.id)));\n }.bind(this),\n tabIndex: \"0\"\n }, h.DOM.img({\n className: \"-cx-PRIVATE-fbMercuryStickersFlyout__packicon\",\n src: q.icon\n }), h.DOM.img({\n className: \"-cx-PRIVATE-fbMercuryStickersFlyout__selectedicon\",\n src: q.selectedIcon\n })));\n }\n });\n e.exports = o;\n});\n__d(\"str2rstr\", [], function(a, b, c, d, e, f) {\n function g(h) {\n var i = \"\", j, k;\n for (var l = 0; ((l < h.length)); l++) {\n j = h.charCodeAt(l);\n k = ((((((l + 1)) < h.length)) ? h.charCodeAt(((l + 1))) : 0));\n if (((((((((55296 <= j)) && ((j <= 56319)))) && ((56320 <= k)))) && ((k <= 57343))))) {\n j = ((((65536 + ((((j & 1023)) << 10)))) + ((k & 1023))));\n l++;\n }\n ;\n ;\n if (((j <= 127))) {\n i += String.fromCharCode(j);\n }\n else if (((j <= 2047))) {\n i += String.fromCharCode(((192 | ((((j >>> 6)) & 31)))), ((128 | ((j & 63)))));\n }\n else if (((j <= 65535))) {\n i += String.fromCharCode(((224 | ((((j >>> 12)) & 15)))), ((128 | ((((j >>> 6)) & 63)))), ((128 | ((j & 63)))));\n }\n else if (((j <= 2097151))) {\n i += String.fromCharCode(((240 | ((((j >>> 18)) & 7)))), ((128 | ((((j >>> 12)) & 63)))), ((128 | ((((j >>> 6)) & 63)))), ((128 | ((j & 63)))));\n }\n \n \n \n ;\n ;\n };\n ;\n return i;\n };\n;\n e.exports = g;\n});\n__d(\"md5\", [\"str2rstr\",], function(a, b, c, d, e, f) {\n var g = b(\"str2rstr\");\n function h(u, v) {\n var w = u[0], x = u[1], y = u[2], z = u[3];\n w = j(w, x, y, z, v[0], 7, -680876936);\n z = j(z, w, x, y, v[1], 12, -389564586);\n y = j(y, z, w, x, v[2], 17, 606105819);\n x = j(x, y, z, w, v[3], 22, -1044525330);\n w = j(w, x, y, z, v[4], 7, -176418897);\n z = j(z, w, x, y, v[5], 12, 1200080426);\n y = j(y, z, w, x, v[6], 17, -1473231341);\n x = j(x, y, z, w, v[7], 22, -45705983);\n w = j(w, x, y, z, v[8], 7, 1770035416);\n z = j(z, w, x, y, v[9], 12, -1958414417);\n y = j(y, z, w, x, v[10], 17, -42063);\n x = j(x, y, z, w, v[11], 22, -1990404162);\n w = j(w, x, y, z, v[12], 7, 1804603682);\n z = j(z, w, x, y, v[13], 12, -40341101);\n y = j(y, z, w, x, v[14], 17, -1502002290);\n x = j(x, y, z, w, v[15], 22, 1236535329);\n w = k(w, x, y, z, v[1], 5, -165796510);\n z = k(z, w, x, y, v[6], 9, -1069501632);\n y = k(y, z, w, x, v[11], 14, 643717713);\n x = k(x, y, z, w, v[0], 20, -373897302);\n w = k(w, x, y, z, v[5], 5, -701558691);\n z = k(z, w, x, y, v[10], 9, 38016083);\n y = k(y, z, w, x, v[15], 14, -660478335);\n x = k(x, y, z, w, v[4], 20, -405537848);\n w = k(w, x, y, z, v[9], 5, 568446438);\n z = k(z, w, x, y, v[14], 9, -1019803690);\n y = k(y, z, w, x, v[3], 14, -187363961);\n x = k(x, y, z, w, v[8], 20, 1163531501);\n w = k(w, x, y, z, v[13], 5, -1444681467);\n z = k(z, w, x, y, v[2], 9, -51403784);\n y = k(y, z, w, x, v[7], 14, 1735328473);\n x = k(x, y, z, w, v[12], 20, -1926607734);\n w = l(w, x, y, z, v[5], 4, -378558);\n z = l(z, w, x, y, v[8], 11, -2022574463);\n y = l(y, z, w, x, v[11], 16, 1839030562);\n x = l(x, y, z, w, v[14], 23, -35309556);\n w = l(w, x, y, z, v[1], 4, -1530992060);\n z = l(z, w, x, y, v[4], 11, 1272893353);\n y = l(y, z, w, x, v[7], 16, -155497632);\n x = l(x, y, z, w, v[10], 23, -1094730640);\n w = l(w, x, y, z, v[13], 4, 681279174);\n z = l(z, w, x, y, v[0], 11, -358537222);\n y = l(y, z, w, x, v[3], 16, -722521979);\n x = l(x, y, z, w, v[6], 23, 76029189);\n w = l(w, x, y, z, v[9], 4, -640364487);\n z = l(z, w, x, y, v[12], 11, -421815835);\n y = l(y, z, w, x, v[15], 16, 530742520);\n x = l(x, y, z, w, v[2], 23, -995338651);\n w = m(w, x, y, z, v[0], 6, -198630844);\n z = m(z, w, x, y, v[7], 10, 1126891415);\n y = m(y, z, w, x, v[14], 15, -1416354905);\n x = m(x, y, z, w, v[5], 21, -57434055);\n w = m(w, x, y, z, v[12], 6, 1700485571);\n z = m(z, w, x, y, v[3], 10, -1894986606);\n y = m(y, z, w, x, v[10], 15, -1051523);\n x = m(x, y, z, w, v[1], 21, -2054922799);\n w = m(w, x, y, z, v[8], 6, 1873313359);\n z = m(z, w, x, y, v[15], 10, -30611744);\n y = m(y, z, w, x, v[6], 15, -1560198380);\n x = m(x, y, z, w, v[13], 21, 1309151649);\n w = m(w, x, y, z, v[4], 6, -145523070);\n z = m(z, w, x, y, v[11], 10, -1120210379);\n y = m(y, z, w, x, v[2], 15, 718787259);\n x = m(x, y, z, w, v[9], 21, -343485551);\n u[0] = s(w, u[0]);\n u[1] = s(x, u[1]);\n u[2] = s(y, u[2]);\n u[3] = s(z, u[3]);\n };\n;\n function i(u, v, w, x, y, z) {\n v = s(s(v, u), s(x, z));\n return s(((((v << y)) | ((v >>> ((32 - y)))))), w);\n };\n;\n function j(u, v, w, x, y, z, aa) {\n return i(((((v & w)) | (((~v) & x)))), u, v, y, z, aa);\n };\n;\n function k(u, v, w, x, y, z, aa) {\n return i(((((v & x)) | ((w & (~x))))), u, v, y, z, aa);\n };\n;\n function l(u, v, w, x, y, z, aa) {\n return i(((((v ^ w)) ^ x)), u, v, y, z, aa);\n };\n;\n function m(u, v, w, x, y, z, aa) {\n return i(((w ^ ((v | (~x))))), u, v, y, z, aa);\n };\n;\n function n(u) {\n var v = u.length, w = [1732584193,-271733879,-1732584194,271733878,], x;\n for (x = 64; ((x <= u.length)); x += 64) {\n h(w, o(u.substring(((x - 64)), x)));\n ;\n };\n ;\n u = u.substring(((x - 64)));\n var y = [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,];\n for (x = 0; ((x < u.length)); x++) {\n y[((x >> 2))] |= ((u.charCodeAt(x) << ((((x & 3)) << 3))));\n ;\n };\n ;\n y[((x >> 2))] |= ((128 << ((((x & 3)) << 3))));\n if (((x > 55))) {\n h(w, y);\n for (x = 0; ((x < 16)); x++) {\n y[x] = 0;\n ;\n };\n ;\n }\n ;\n ;\n y[14] = ((v * 8));\n h(w, y);\n return w;\n };\n;\n function o(u) {\n var v = [], w = 0;\n while (((w < 64))) {\n v[((w >> 2))] = ((((((u.charCodeAt(w++) | ((u.charCodeAt(w++) << 8)))) | ((u.charCodeAt(w++) << 16)))) | ((u.charCodeAt(w++) << 24))));\n ;\n };\n ;\n return v;\n };\n;\n var p = \"0123456789abcdef\".split(\"\");\n function q(u) {\n var v = \"\", w = 0;\n for (; ((w < 4)); w++) {\n v += ((p[((((u >> ((((w << 3)) + 4)))) & 15))] + p[((((u >> ((w << 3)))) & 15))]));\n ;\n };\n ;\n return v;\n };\n;\n function r(u) {\n for (var v = 0; ((v < u.length)); v++) {\n u[v] = q(u[v]);\n ;\n };\n ;\n return u.join(\"\");\n };\n;\n var s = function(u, v) {\n return ((((u + v)) & 4294967295));\n };\n function t(u) {\n if (((((null === u)) || ((undefined === u))))) {\n return null;\n }\n else {\n for (var v = 0; ((v < u.length)); v++) {\n if (((u[v] > \"\"))) {\n u = g(u);\n break;\n }\n ;\n ;\n };\n ;\n return r(n(u));\n }\n ;\n ;\n };\n;\n if (((t(\"hello\") != \"5d41402abc4b2a76b9719d911017c592\"))) {\n s = function(u, v) {\n var w = ((((u & 65535)) + ((v & 65535)))), x = ((((((u >> 16)) + ((v >> 16)))) + ((w >> 16))));\n return ((((x << 16)) | ((w & 65535))));\n };\n }\n;\n;\n e.exports = t;\n});\n__d(\"isRTL\", [], function(a, b, c, d, e, f) {\n var g = ((\"A-Za-z\\u00c0-\\u00d6\\u00d8-\\u00f6\\u00f8-\\u02b8\\u0300-\\u0590\\u0800-\\u1fff\" + \"\\u200e\\u2c00-\\ufb1c\\ufe00-\\ufe6f\\ufefd-\\uffff\")), h = \"\\u0591-\\u07ff\\u200f\\ufb1d-\\ufdff\\ufe70-\\ufefc\", i = new RegExp(((((((((\"^[^\" + g)) + \"]*[\")) + h)) + \"]\"))), j = new RegExp(((((\"[\" + g)) + \"]\")));\n function k(l) {\n var m = 0, n = 0;\n l.split(/\\s+/, 20).forEach(function(o) {\n if (/^https?:\\/\\//.test(o)) {\n return;\n }\n ;\n ;\n if (i.test(o)) {\n n++;\n m++;\n }\n else if (j.test(o)) {\n m++;\n }\n \n ;\n ;\n });\n return !!((m && ((((n / m)) > 13944))));\n };\n;\n e.exports = k;\n});\n__d(\"WaterfallIDGenerator\", [\"Env\",\"md5\",], function(a, b, c, d, e, f) {\n var g = b(\"Env\"), h = b(\"md5\");\n function i() {\n var l = 2147483647;\n return ((Math.JSBNG__random() * l));\n };\n;\n function j() {\n return Math.floor(((JSBNG__Date.now() / 1000)));\n };\n;\n var k = {\n generate: function() {\n return h([g.user,j(),i(),].join(\":\"));\n }\n };\n e.exports = k;\n});\n__d(\"FileForm\", [\"ArbiterMixin\",\"AsyncRequest\",\"AsyncResponse\",\"AsyncUploadRequest\",\"BehaviorsMixin\",\"DataStore\",\"DOMQuery\",\"Env\",\"JSBNG__Event\",\"Form\",\"JSONPTransport\",\"Parent\",\"URI\",\"copyProperties\",\"shield\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"AsyncRequest\"), i = b(\"AsyncResponse\"), j = b(\"AsyncUploadRequest\"), k = b(\"BehaviorsMixin\"), l = b(\"DataStore\"), m = b(\"DOMQuery\"), n = b(\"Env\"), o = b(\"JSBNG__Event\"), p = b(\"Form\"), q = b(\"JSONPTransport\"), r = b(\"Parent\"), s = b(\"URI\"), t = b(\"copyProperties\"), u = b(\"shield\");\n function v(y) {\n var z = {\n }, aa = m.scry(y, \"input[type=\\\"file\\\"]\");\n aa.forEach(function(ba) {\n z[ba.JSBNG__name] = ba.files;\n });\n return z;\n };\n;\n function w(y) {\n var z = m.scry(y, \"input[type=\\\"file\\\"]\");\n z.forEach(function(aa) {\n aa.files = null;\n });\n };\n;\n function x(y, z, aa) {\n if (((y.getAttribute(\"rel\") === \"async\"))) {\n throw new Error(\"FileForm cannot be used with Primer forms.\");\n }\n ;\n ;\n if (((y.getAttribute(\"method\").toUpperCase() !== \"POST\"))) {\n throw new Error(\"FileForm must be used with POST forms.\");\n }\n ;\n ;\n this._form = y;\n this._previousEncoding = this._form.enctype;\n this._form.enctype = this._form.encoding = \"multipart/form-data\";\n ((z && this.enableBehaviors(z)));\n this._options = ((aa || {\n }));\n this.setAllowCrossOrigin(this._options.allowCrossOrigin);\n this.setUploadInParallel(this._options.uploadInParallel);\n this._listener = o.listen(this._form, \"submit\", this._submit.bind(this));\n l.set(this._form, \"FileForm\", this);\n };\n;\n t(x, {\n EVENTS: [\"start\",\"submit\",\"initial\",\"progress\",\"success\",\"failure\",],\n getInstance: function(y) {\n return l.get(y, \"FileForm\");\n }\n });\n t(x.prototype, g, k, {\n getRoot: function() {\n return this._form;\n },\n setAllowCrossOrigin: function(y) {\n this._allowCrossOrigin = !!y;\n return this;\n },\n setUploadInParallel: function(y) {\n this._uploadInParallel = !!y;\n return this;\n },\n _submit: function(JSBNG__event) {\n if (((this.inform(\"submit\") === false))) {\n JSBNG__event.prevent();\n return;\n }\n ;\n ;\n var y = ((\"JSBNG__FormData\" in window));\n if (y) {\n if (((!s(this._form.action).isSameOrigin() && !this._allowCrossOrigin))) {\n y = false;\n }\n ;\n }\n ;\n ;\n return ((y ? this._sendViaXHR(JSBNG__event) : this._sendViaFrame(JSBNG__event)));\n },\n _sendViaFrame: function(JSBNG__event) {\n var y = this._request = new h();\n y.setStatusElement(this._getStatusElement());\n y.addStatusIndicator();\n y.setOption(\"useIframeTransport\", true);\n var z = y.handleResponse.bind(y), aa = new q(\"div\", this._form.action, z), ba = aa.getTransportFrame(), ca = aa.getRequestURI().addQueryData({\n __iframe: true,\n __user: n.user\n });\n this._form.setAttribute(\"action\", ca.toString());\n this._form.setAttribute(\"target\", ba.JSBNG__name);\n y.setJSONPTransport(aa);\n y.setURI(ca);\n y.setHandler(this.success.bind(this, null));\n y.setErrorHandler(this.failure.bind(this, null));\n y.setInitialHandler(u(this.initial, this, null));\n },\n _sendViaXHR: function(JSBNG__event) {\n var y;\n if (((this._uploadInParallel && j.isSupported()))) {\n y = new j().setData(p.serialize(this._form)).setFiles(v(this._form));\n var z = [y.subscribe(\"progress\", function(aa, ba) {\n this.progress(ba, ba.getProgressEvent());\n }.bind(this)),y.subscribe(\"initial\", function(aa, ba) {\n this.initial(ba, ba.getResponse());\n }.bind(this)),y.subscribe(\"success\", function(aa, ba) {\n this.success(ba, ba.getResponse());\n }.bind(this)),y.subscribe(\"start\", function(aa, ba) {\n this.inform(\"start\", {\n upload: ba\n });\n }.bind(this)),y.subscribe(\"failure\", function(aa, ba) {\n this.failure(ba, ba.getResponse());\n return false;\n }.bind(this)),y.subscribe(\"complete\", function() {\n while (z.length) {\n z.pop().unsubscribe();\n ;\n };\n ;\n }),];\n }\n else y = new h().setRawData(p.createFormData(this._form)).setHandler(this.success.bind(this, null)).setErrorHandler(this.failure.bind(this, null)).setUploadProgressHandler(this.progress.bind(this, null)).setInitialHandler(u(this.initial, this, null));\n ;\n ;\n y.setAllowCrossOrigin(this._allowCrossOrigin).setRelativeTo(this._form).setStatusElement(this._getStatusElement()).setURI(this._form.action).send();\n this._request = y;\n JSBNG__event.prevent();\n },\n initial: function(y) {\n return this.inform(\"initial\", {\n upload: y\n });\n },\n success: function(y, z) {\n var aa = {\n response: z,\n upload: y\n };\n if (((this.inform(\"success\", aa) !== false))) {\n o.fire(this._form, \"success\", aa);\n }\n ;\n ;\n this._cleanup();\n },\n failure: function(y, z) {\n var aa = {\n response: z,\n upload: y\n };\n if (((this.inform(\"failure\", aa) !== false))) {\n if (((o.fire(this._form, \"error\", aa) !== false))) {\n i.defaultErrorHandler(z);\n }\n ;\n }\n ;\n ;\n this._cleanup();\n },\n progress: function(y, JSBNG__event) {\n this.inform(\"progress\", {\n JSBNG__event: JSBNG__event,\n upload: y\n });\n },\n abort: function() {\n if (this._request) {\n this._request.abort();\n this._cleanup();\n }\n ;\n ;\n },\n clear: function() {\n w(this._form);\n },\n destroy: function() {\n this._cleanup();\n this._listener.remove();\n this._listener = null;\n this._form.enctype = this._form.encoding = this._previousEncoding;\n l.remove(this._form, \"FileForm\");\n },\n _cleanup: function() {\n this._request = null;\n },\n _getStatusElement: function() {\n return ((r.byClass(this._form, \"stat_elem\") || this._form));\n }\n });\n e.exports = x;\n});\n__d(\"FileFormResetOnSubmit\", [\"DOMQuery\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"DOMQuery\"), h = b(\"copyProperties\");\n function i(j) {\n this._form = j;\n };\n;\n h(i.prototype, {\n enable: function() {\n this._subscription = this._form.subscribe(\"submit\", Function.prototype.defer.bind(this._reset.bind(this)));\n },\n disable: function() {\n this._subscription.unsubscribe();\n this._subscription = null;\n },\n _reset: function() {\n var j = g.scry(this._form.getRoot(), \"input[type=\\\"file\\\"]\");\n j.forEach(function(k) {\n k.value = \"\";\n });\n }\n });\n e.exports = i;\n});\n__d(\"submitForm\", [\"DOM\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = function(i) {\n var j = g.scry(i, \"input[type=\\\"submit\\\"]\")[0];\n if (j) {\n j.click();\n }\n else {\n j = g.create(\"input\", {\n type: \"submit\",\n className: \"hidden_elem\"\n });\n g.appendContent(i, j);\n j.click();\n g.remove(j);\n }\n ;\n ;\n };\n e.exports = h;\n});\n__d(\"FormSubmitOnChange\", [\"JSBNG__Event\",\"copyProperties\",\"submitForm\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"copyProperties\"), i = b(\"submitForm\");\n function j(k) {\n this._form = k;\n };\n;\n h(j.prototype, {\n _listener: null,\n enable: function() {\n this._listener = g.listen(this._form.getRoot(), \"change\", this._submit.bind(this));\n },\n disable: function() {\n this._listener.remove();\n this._listener = null;\n },\n _submit: function() {\n i(this._form.getRoot());\n }\n });\n e.exports = j;\n});\n__d(\"MercuryFileUploader\", [\"ArbiterMixin\",\"JSBNG__CSS\",\"Dialog\",\"DOM\",\"JSBNG__Event\",\"FileForm\",\"FileFormResetOnSubmit\",\"FileInput\",\"FormSubmitOnChange\",\"MercuryAttachment\",\"MercuryAttachmentTemplates\",\"MercuryConstants\",\"SubscriptionsHandler\",\"copyProperties\",\"csx\",\"getObjectValues\",\"shield\",\"startsWith\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"JSBNG__CSS\"), i = b(\"Dialog\"), j = b(\"DOM\"), k = b(\"JSBNG__Event\"), l = b(\"FileForm\"), m = b(\"FileFormResetOnSubmit\"), n = b(\"FileInput\"), o = b(\"FormSubmitOnChange\"), p = b(\"MercuryAttachment\"), q = b(\"MercuryAttachmentTemplates\"), r = b(\"MercuryConstants\"), s = b(\"SubscriptionsHandler\"), t = b(\"copyProperties\"), u = b(\"csx\"), v = b(\"getObjectValues\"), w = b(\"shield\"), x = b(\"startsWith\"), y = b(\"tx\"), z = 0;\n function aa(ca, da, ea, fa) {\n this._parentElem = ca;\n this._attachments = {\n };\n this._imageIDs = {\n };\n this._uploading = {\n };\n this._uploadTemplates = {\n };\n this._uploadStartTimes = {\n };\n this._subscriptionsHandler = new s();\n this._fileForm = new l(da, [o,m,]);\n this._fileForm.setAllowCrossOrigin(true);\n this._fileForm.setUploadInParallel(true);\n var ga = j.JSBNG__find(da, \".-cx-PRIVATE-mercuryFileUploader__root\"), ha = j.JSBNG__find(ga, \".-cx-PRIVATE-mercuryFileUploader__button\");\n new n(ga, ha, ea);\n h.hide(this._parentElem);\n this._subscriptionsHandler.addSubscriptions(this._fileForm.subscribe(\"submit\", function() {\n var ia = ((\"upload_\" + z++));\n fa.value = ia;\n var ja = {\n count: 0,\n file_sizes: []\n };\n if (ea.files) {\n for (var ka = 0; ((ka < ea.files.length)); ka++) {\n if (((ea.files[ka].size > r.AttachmentMaxSize))) {\n this._fileForm.abort();\n this._fileForm.clear();\n new i().setTitle(\"The file you have selected is too large\").setBody(\"The file you have selected is too large. The maximum size is 25MB.\").setButtons(i.OK).setSemiModal(true).show();\n return false;\n }\n ;\n ;\n };\n ;\n for (var la = 0; ((la < ea.files.length)); la++) {\n this._addFileUploadRow(ia, ea.files[la].JSBNG__name);\n ja.count++;\n ja.file_sizes.push(ea.files[la].size);\n };\n ;\n }\n else {\n this._addFileUploadRow(ia, ea.value);\n ja.count = 1;\n }\n ;\n ;\n this.inform(\"submit\", ja);\n }.bind(this)), this._fileForm.subscribe(\"success\", this._onFileUploadSuccess.bind(this)), this._fileForm.subscribe(\"failure\", this._onFileUploadFailure.bind(this)), k.listen(ha, \"click\", w(this.inform, this, \"open\")));\n };\n;\n t(aa.prototype, g, {\n isUploading: function() {\n return !!Object.keys(this._uploading).length;\n },\n getAttachments: function() {\n return v(this._attachments);\n },\n getImageIDs: function() {\n return v(this._imageIDs);\n },\n removeAttachments: function() {\n v(this._uploadTemplates).forEach(function(ca) {\n if (ca) {\n j.remove(ca.getRoot());\n }\n ;\n ;\n });\n this._attachments = {\n };\n this._imageIDs = {\n };\n this._uploadTemplates = {\n };\n this._uploading = {\n };\n this._uploadStartTimes = {\n };\n h.hide(this._parentElem);\n this.inform(\"dom-updated\");\n },\n destroy: function() {\n this._subscriptionsHandler.release();\n this._fileForm.destroy();\n this.removeAttachments();\n },\n _addFileUploadRow: function(ca, da) {\n var ea = q[\":fb:mercury:upload-file-row\"].build(), fa = ba(da), ga = ((((ca + \"/\")) + fa));\n this._uploadTemplates[ga] = ea;\n this._uploading[ga] = true;\n this._uploadStartTimes[ga] = JSBNG__Date.now();\n j.appendContent(ea.getNode(\"iconText\"), fa);\n k.listen(ea.getNode(\"closeFileUpload\"), \"click\", this._removeFileUploader.bind(this, ga));\n j.appendContent(this._parentElem, ea.getRoot());\n h.show(this._parentElem);\n this.inform(\"dom-updated\");\n },\n _removeFileUploader: function(ca, JSBNG__event) {\n if (this._uploading[ca]) {\n this.inform(\"upload-canceled-during-upload\");\n }\n else if (((this._attachments[ca] || this._imageIDs[ca]))) {\n this.inform(\"upload-canceled-after-uploaded\");\n }\n \n ;\n ;\n delete this._attachments[ca];\n delete this._imageIDs[ca];\n delete this._uploading[ca];\n delete this._uploadStartTimes[ca];\n var da = this._uploadTemplates[ca];\n delete this._uploadTemplates[ca];\n if (da) {\n j.remove(da.getRoot());\n this.inform(\"dom-updated\");\n }\n ;\n ;\n this.inform(\"upload-canceled\");\n return false;\n },\n _updateFileUploader: function(ca, da) {\n var ea = this._uploadTemplates[ca], fa = p.getAttachIconClassByMime(da);\n h.addClass(ea.getNode(\"iconText\"), fa);\n h.addClass(ea.getRoot(), \"done\");\n },\n _onFileUploadSuccess: function(JSBNG__event, ca) {\n var da = ca.response.getPayload(), ea = da.uploadID, fa = da.metadata;\n for (var ga = 0; ((ga < fa.length)); ga++) {\n var ha = ((((ea + \"/\")) + fa[ga].filename));\n if (this._uploading[ha]) {\n delete this._uploading[ha];\n if (fa[ga].image_id) {\n this._imageIDs[ha] = fa[ga].image_id;\n }\n else this._attachments[ha] = fa[ga];\n ;\n ;\n this._updateFileUploader(ha, fa[ga].filetype);\n this.inform(\"one-upload-completed\", {\n upload_time_ms: ((JSBNG__Date.now() - this._uploadStartTimes[ha]))\n });\n }\n ;\n ;\n };\n ;\n if (!this.isUploading()) {\n this.inform(\"all-uploads-completed\", {\n count: this.getAttachments().length\n });\n }\n ;\n ;\n },\n _onFileUploadFailure: function(JSBNG__event, ca) {\n this.inform(\"one-upload-failed\");\n }\n });\n function ba(ca) {\n if (((ca && x(ca, \"C:\\\\fakepath\\\\\")))) {\n return ca.substring(12);\n }\n ;\n ;\n return ca;\n };\n;\n e.exports = aa;\n});\n__d(\"JoinableConversationMessageFilter\", [\"MercuryLogMessageType\",\"MercuryThreads\",\"MercuryParticipants\",], function(a, b, c, d, e, f) {\n var g = b(\"MercuryLogMessageType\"), h = b(\"MercuryThreads\").get(), i = b(\"MercuryParticipants\"), j = {\n _isFilterable: function(k) {\n var l = k.log_message_type;\n if (!l) {\n return false;\n }\n ;\n ;\n if (((l == g.JOINABLE_JOINED))) {\n return ((k.log_message_data.joined_participant !== i.user));\n }\n ;\n ;\n if (((((l == g.UNSUBSCRIBE)) || ((l == g.SUBSCRIBE))))) {\n var m = h.getThreadMetaNow(k.thread_id);\n if (((m && m.is_joinable))) {\n return ((k.author !== i.user));\n }\n ;\n ;\n return false;\n }\n ;\n ;\n return false;\n },\n filterMessages: function(k, l, m) {\n var n = [];\n for (var o = 0; ((o < l.length)); o++) {\n var p = l[o];\n if (j._isFilterable(p)) {\n if (m) {\n k(p);\n }\n ;\n ;\n }\n else n.push(p);\n ;\n ;\n };\n ;\n return n;\n }\n };\n e.exports = j;\n});\n__d(\"MercuryThreadMuter\", [\"AsyncDialog\",\"AsyncRequest\",\"Env\",\"MercuryThreads\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncDialog\"), h = b(\"AsyncRequest\"), i = b(\"Env\"), j = b(\"MercuryThreads\").get(), k = {\n getUserIDEmail: function() {\n return ((i.user + \"@facebook.com\"));\n },\n getThreadMuteSettingForUser: function(l) {\n return ((l.mute_settings && l.mute_settings[k.getUserIDEmail()]));\n },\n isThreadMuted: function(l) {\n return ((k.getThreadMuteSettingForUser(l) !== undefined));\n },\n showMuteChangeDialog: function(l, m) {\n g.send(new h(\"/ajax/mercury/mute_thread_dialog.php\").setData({\n muting: l\n }), function(n) {\n n.subscribe(\"JSBNG__confirm\", function() {\n this.hide();\n j.updateThreadMuteSetting(m, l);\n }.bind(n));\n });\n }\n };\n e.exports = k;\n});\n__d(\"JoinStatusTabSheet\", [\"copyProperties\",\"DOM\",\"MercuryLogMessageType\",\"MercuryParticipants\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"DOM\"), i = b(\"MercuryLogMessageType\"), j = b(\"MercuryParticipants\");\n function k(l, m) {\n this._rootElement = l;\n this._messageQueue = [];\n this._sheetView = m;\n };\n;\n g(k.prototype, {\n _setMessage: function(l, m) {\n var n = l.author, o = l.log_message_type;\n if (((o == i.JOINABLE_JOINED))) {\n var p = l.log_message_data.joined_participant;\n if (((p !== j.user))) {\n j.get(p, function(s) {\n h.setContent(m, h.tx._(\"{actor} joined the chat.\", {\n actor: s.JSBNG__name\n }));\n });\n }\n ;\n ;\n }\n else if (((o == i.UNSUBSCRIBE))) {\n if (((n !== j.user))) {\n j.get(n, function(s) {\n h.setContent(m, h.tx._(\"{actor} left the conversation.\", {\n actor: s.JSBNG__name\n }));\n });\n }\n ;\n ;\n }\n else if (((o == i.SUBSCRIBE))) {\n if (((n !== j.user))) {\n var q = l.log_message_data.added_participants;\n if (((q && ((q.length > 0))))) {\n var r = [n,q[0],];\n j.getMulti(r, function(s) {\n h.setContent(m, h.tx._(\"{actor} added {subscriber1}.\", {\n actor: s[n].JSBNG__name,\n subscriber1: s[q[0]].JSBNG__name\n }));\n });\n }\n ;\n ;\n }\n ;\n }\n \n \n ;\n ;\n },\n isPermanent: function() {\n return false;\n },\n getCloseTimeout: function() {\n return 3000;\n },\n getType: function() {\n return \"join_status_type\";\n },\n addToQueue: function(l) {\n this._messageQueue.push(l);\n if (((this._messageQueue.length === 1))) {\n this._open();\n }\n ;\n ;\n },\n render: function() {\n var l = this._messageQueue[0], m = this._getTemplate().build();\n this._setMessage(l, m.getNode(\"text\"));\n h.setContent(this._rootElement, m.getRoot());\n },\n _open: function() {\n this._sheetView.open(this);\n },\n autoCloseCallback: function() {\n this._messageQueue.shift();\n if (((this._messageQueue.length > 0))) {\n this._open();\n }\n ;\n ;\n },\n couldNotReplace: function() {\n this._open.bind(this).defer(this.getCloseTimeout(), false);\n }\n });\n e.exports = k;\n});\n__d(\"WebMessengerEvents\", [\"Arbiter\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"copyProperties\"), i = h(new g(), {\n MASTER_DOM_CHANGED: \"master-dom-changed\",\n DETAIL_DOM_CHANGED: \"detail-dom-changed\",\n FOCUS_COMPOSER: \"focus-composer\",\n FOCUS_SEARCH: \"focus-search\",\n FOCUS_AND_SELECT_SEARCH: \"focus-and-select-search\",\n SUBMIT_REPLY: \"submit-reply\",\n UPDATE_SELECTION: \"update-selection\",\n masterDOMChanged: function() {\n this.inform(i.MASTER_DOM_CHANGED);\n },\n detailDOMChanged: function() {\n this.inform(i.DETAIL_DOM_CHANGED);\n },\n focusComposer: function() {\n this.inform(i.FOCUS_COMPOSER);\n },\n focusSearch: function() {\n this.inform(i.FOCUS_SEARCH);\n },\n focusAndSelectSearch: function() {\n this.inform(i.FOCUS_AND_SELECT_SEARCH);\n },\n updateSelection: function(j) {\n this.inform(i.UPDATE_SELECTION, j);\n },\n submitReply: function() {\n this.inform(i.SUBMIT_REPLY);\n }\n });\n e.exports = i;\n});\n__d(\"WebMessengerSubscriptionsHandler\", [\"SubscriptionsHandler\",], function(a, b, c, d, e, f) {\n var g = b(\"SubscriptionsHandler\"), h = new g(\"webmessenger\");\n e.exports = h;\n});\n__d(\"isWebMessengerURI\", [], function(a, b, c, d, e, f) {\n function g(h) {\n return (/^(\\/messages)/).test(h.getPath());\n };\n;\n e.exports = g;\n});\n__d(\"WebMessengerWidthControl\", [\"Arbiter\",\"JSBNG__CSS\",\"CSSClassTransition\",\"DOMDimensions\",\"JSBNG__Event\",\"Style\",\"URI\",\"ViewportBounds\",\"WebMessengerEvents\",\"shield\",\"WebMessengerSubscriptionsHandler\",\"$\",\"cx\",\"isWebMessengerURI\",\"JSBNG__requestAnimationFrame\",\"throttle\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"JSBNG__CSS\"), i = b(\"CSSClassTransition\"), j = b(\"DOMDimensions\"), k = b(\"JSBNG__Event\"), l = b(\"Style\"), m = b(\"URI\"), n = b(\"ViewportBounds\"), o = b(\"WebMessengerEvents\"), p = b(\"shield\"), q = b(\"WebMessengerSubscriptionsHandler\"), r = b(\"$\"), s = b(\"cx\"), t = b(\"isWebMessengerURI\"), u = b(\"JSBNG__requestAnimationFrame\"), v = b(\"throttle\"), w = 205, x = 981, y = 257, z = 18, aa = 848, ba = 724, ca = 28942, da = 56, ea, fa, ga;\n function ha(ma, na, oa) {\n this.masterChanged = ma;\n this.detailChaned = na;\n q.addSubscriptions(k.listen(window, \"resize\", v(p(ia, this, this), 100)), g.subscribe([\"sidebar/initialized\",\"sidebar/show\",\"sidebar/hide\",], p(ia, this, this), g.SUBSCRIBE_NEW));\n var pa = ((la() ? da : 0));\n if (oa) {\n pa = w;\n }\n ;\n ;\n this._width = ((la() ? 0 : aa));\n ga = true;\n ia(this, pa);\n };\n;\n function ia(ma, na) {\n var oa = ((n.getRight() + n.getLeft()));\n oa = ((((oa || na)) || 0));\n var pa = ((j.getViewportWithoutScrollbarDimensions().width - oa)), qa = Math.round(Math.max(0, ((((pa / 2)) - ((x / 2))))));\n pa = ((((x + qa)) - y));\n pa -= z;\n pa = Math.max(ba, Math.min(aa, pa));\n if (((!isNaN(pa) && ((ma._width !== pa))))) {\n ma._width = pa;\n var ra = Math.round(((pa / ((1 + ca))))), sa = ((pa - ra));\n ma.masterChanged(sa);\n ma.detailChaned(ra);\n if (la()) {\n var ta = ((pa + y));\n ja(function() {\n if (fa) {\n JSBNG__document.body.className = fa;\n fa = \"\";\n }\n ;\n ;\n ka(((ta + \"px\")));\n h.removeClass(JSBNG__document.body, \"-cx-PRIVATE-fbWMWidthControl__firstload\");\n ((ga && o.detailDOMChanged()));\n ga = false;\n }, fa);\n }\n ;\n ;\n }\n ;\n ;\n };\n;\n function ja(ma, na) {\n ((na && h.addClass(JSBNG__document.documentElement, \"-cx-PRIVATE-fbWMWidthControl__animate\")));\n u(ma);\n ((na && h.removeClass.curry(JSBNG__document.documentElement, \"-cx-PRIVATE-fbWMWidthControl__animate\").defer(1000, false)));\n };\n;\n function ka(ma) {\n l.set(r(\"pageHead\"), \"width\", ma);\n l.set(r(\"globalContainer\"), \"width\", ma);\n };\n;\n function la() {\n if (!ea) {\n ea = h.hasClass(JSBNG__document.body, \"-cx-PUBLIC-hasLitestand__body\");\n }\n ;\n ;\n return ea;\n };\n;\n i.registerHandler(function(ma, na, oa, pa) {\n function qa(ra) {\n return ((la() && t(m(ra))));\n };\n ;\n if (qa(pa)) {\n fa = na;\n return true;\n }\n else if (qa(oa)) {\n ja(function() {\n ma.className = na;\n ka(\"\");\n }, true);\n return true;\n }\n \n ;\n ;\n });\n e.exports = ha;\n});\n__d(\"TextInputControl\", [\"JSBNG__Event\",\"function-extensions\",\"Class\",\"DOMControl\",\"Input\",\"copyProperties\",\"debounce\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\");\n b(\"function-extensions\");\n var h = b(\"Class\"), i = b(\"DOMControl\"), j = b(\"Input\"), k = b(\"copyProperties\"), l = b(\"debounce\");\n function m(n) {\n this.parent.construct(this, n);\n var o = this.getRoot(), p = l(this.update.bind(this), 0);\n g.listen(o, {\n input: p,\n keydown: p,\n paste: p\n });\n };\n;\n h.extend(m, i);\n k(m.prototype, {\n setMaxLength: function(n) {\n j.setMaxLength(this.getRoot(), n);\n return this;\n },\n getValue: function() {\n return j.getValue(this.getRoot());\n },\n isEmpty: function() {\n return j.isEmpty(this.getRoot());\n },\n setValue: function(n) {\n j.setValue(this.getRoot(), n);\n this.update();\n return this;\n },\n clear: function() {\n return this.setValue(\"\");\n },\n setPlaceholderText: function(n) {\n j.setPlaceholder(this.getRoot(), n);\n return this;\n }\n });\n e.exports = m;\n});\n__d(\"JSBNG__TextMetrics\", [\"JSBNG__Event\",\"DOM\",\"Style\",\"UserAgent\",\"debounce\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"DOM\"), i = b(\"Style\"), j = b(\"UserAgent\"), k = b(\"debounce\"), l;\n function m() {\n if (((typeof l === \"undefined\"))) {\n var p = h.create(\"div\", {\n className: \"webkitZoomTest\"\n }), q = function() {\n h.appendContent(JSBNG__document.body, p);\n l = ((100 / p.clientHeight));\n h.remove(p);\n };\n g.listen(window, \"resize\", k(q, 100));\n q();\n }\n ;\n ;\n return l;\n };\n;\n function n(p) {\n var q = p.clientWidth, r = ((i.get(p, \"-moz-box-sizing\") == \"border-box\"));\n if (r) {\n return q;\n }\n ;\n ;\n var s = ((i.getFloat(p, \"paddingLeft\") + i.getFloat(p, \"paddingRight\")));\n return ((q - s));\n };\n;\n function o(p, q) {\n this._node = p;\n this._flexible = !!q;\n var r = \"textarea\", s = \"textMetrics\";\n if (this._flexible) {\n r = \"div\";\n s += \" textMetricsInline\";\n }\n ;\n ;\n this._shadow = h.create(r, {\n className: s\n });\n var t = [\"fontSize\",\"fontStyle\",\"fontWeight\",\"fontFamily\",\"wordWrap\",];\n t.forEach(function(v) {\n i.set(this._shadow, v, i.get(p, v));\n }.bind(this));\n var u = i.get(p, \"lineHeight\");\n if (((j.chrome() || j.webkit()))) {\n u = ((Math.round(((parseInt(u, 10) * m()))) + \"px\"));\n }\n ;\n ;\n i.set(this._shadow, \"lineHeight\", u);\n JSBNG__document.body.appendChild(this._shadow);\n };\n;\n o.prototype.measure = function(p) {\n var q = this._node, r = this._shadow;\n p = ((((p || q.value)) + \"...\"));\n if (!this._flexible) {\n var s = n(q);\n i.set(r, \"width\", ((Math.max(s, 0) + \"px\")));\n }\n ;\n ;\n h.setContent(r, p);\n return {\n width: r.scrollWidth,\n height: r.scrollHeight\n };\n };\n o.prototype.destroy = function() {\n h.remove(this._shadow);\n };\n e.exports = o;\n});\n__d(\"TextAreaControl\", [\"JSBNG__Event\",\"Arbiter\",\"ArbiterMixin\",\"Class\",\"JSBNG__CSS\",\"DOMControl\",\"Style\",\"TextInputControl\",\"JSBNG__TextMetrics\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Arbiter\"), i = b(\"ArbiterMixin\"), j = b(\"Class\"), k = b(\"JSBNG__CSS\"), l = b(\"DOMControl\"), m = b(\"Style\"), n = b(\"TextInputControl\"), o = b(\"JSBNG__TextMetrics\"), p = b(\"copyProperties\");\n function q(s, t) {\n return ((m.getFloat(s, t) || 0));\n };\n;\n function r(s) {\n this.autogrow = k.hasClass(s, \"uiTextareaAutogrow\");\n this.parent.construct(this, s);\n this.width = null;\n g.listen(s, \"JSBNG__focus\", this._handleFocus.bind(this));\n };\n;\n j.extend(r, n);\n p(r.prototype, i, {\n setAutogrow: function(s) {\n this.autogrow = s;\n return this;\n },\n onupdate: function() {\n this.parent.onupdate();\n if (this.autogrow) {\n var s = this.getRoot();\n if (!this.metrics) {\n this.metrics = new o(s);\n }\n ;\n ;\n if (((typeof this.initialHeight === \"undefined\"))) {\n this.isBorderBox = ((((((m.get(s, \"box-sizing\") === \"border-box\")) || ((m.get(s, \"-moz-box-sizing\") === \"border-box\")))) || ((m.get(s, \"-webkit-box-sizing\") === \"border-box\"))));\n this.borderBoxOffset = ((((((q(s, \"padding-top\") + q(s, \"padding-bottom\"))) + q(s, \"border-top-width\"))) + q(s, \"border-bottom-width\")));\n this.initialHeight = ((s.offsetHeight - this.borderBoxOffset));\n }\n ;\n ;\n var t = this.metrics.measure(), u = Math.max(this.initialHeight, t.height);\n if (this.isBorderBox) {\n u += this.borderBoxOffset;\n }\n ;\n ;\n if (((u !== this.height))) {\n this.height = u;\n m.set(s, \"height\", ((u + \"px\")));\n h.inform(\"reflow\");\n this.inform(\"resize\");\n }\n ;\n ;\n }\n else if (this.metrics) {\n this.metrics.destroy();\n this.metrics = null;\n }\n \n ;\n ;\n },\n resetHeight: function() {\n this.height = -1;\n this.update();\n },\n _handleFocus: function() {\n this.width = null;\n }\n });\n r.getInstance = function(s) {\n return ((l.getInstance(s) || new r(s)));\n };\n e.exports = r;\n});\n__d(\"MessagesEmoticonView\", [\"DOM\",\"EmoticonsList\",\"JSBNG__Event\",\"Focus\",\"InputSelection\",\"Keys\",\"Parent\",\"SubscriptionsHandler\",\"TextAreaControl\",\"Toggler\",\"copyProperties\",\"endsWith\",\"startsWith\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"EmoticonsList\"), i = b(\"JSBNG__Event\"), j = b(\"Focus\"), k = b(\"InputSelection\"), l = b(\"Keys\"), m = b(\"Parent\"), n = b(\"SubscriptionsHandler\"), o = b(\"TextAreaControl\"), p = b(\"Toggler\"), q = b(\"copyProperties\"), r = b(\"endsWith\"), s = b(\"startsWith\"), t = h.symbols;\n function u(w, x, y) {\n var z = m.byClass(w, \"emoticon\");\n if (!z) {\n return;\n }\n ;\n ;\n var aa = \"emoticon_\", ba = null;\n z.className.split(\" \").forEach(function(ia) {\n if (s(ia, aa)) {\n ba = ia.substring(aa.length);\n }\n ;\n ;\n });\n if (!t[ba]) {\n return;\n }\n ;\n ;\n var ca = o.getInstance(x), da = ca.getValue(), ea = t[ba], fa = da.substring(0, y.start), ga = da.substring(y.end);\n if (((((y.start > 0)) && !r(fa, \" \")))) {\n ea = ((\" \" + ea));\n }\n ;\n ;\n if (!s(ga, \" \")) {\n ea += \" \";\n }\n ;\n ;\n var ha = ((((fa + ea)) + ga));\n y.start += ea.length;\n y.end = y.start;\n ca.setValue(ha);\n k.set(x, y.start, y.end);\n return true;\n };\n;\n function v(w, x) {\n var y = {\n start: 0,\n end: 0\n };\n function z() {\n y = k.get(x);\n };\n ;\n var aa = g.JSBNG__find(w, \".uiToggleFlyout\");\n this._subscriptions = new n();\n this._subscriptions.addSubscriptions(p.subscribe(\"show\", function(ba, ca) {\n if (((ca.active && g.contains(w, ca.active)))) {\n k.set(x, y.start, y.end);\n var da = g.scry(aa, \"a.emoticon\")[0];\n j.setWithoutOutline(da);\n }\n ;\n ;\n }), i.listen(aa, \"click\", function(JSBNG__event) {\n var ba = u(JSBNG__event.getTarget(), x, y);\n ((ba && p.hide(w)));\n }), i.listen(aa, \"keyup\", function(JSBNG__event) {\n if (((JSBNG__event.keyCode === l.ESC))) {\n p.hide(w);\n k.set(x, y.start, y.end);\n }\n ;\n ;\n }), i.listen(x, \"keyup\", z), i.listen(x, \"click\", z));\n };\n;\n q(v.prototype, {\n destroy: function() {\n this._subscriptions.release();\n this._subscriptions = null;\n }\n });\n q(v, {\n create: function(w, x) {\n return new v(w, x);\n }\n });\n e.exports = v;\n});\n__d(\"MercuryTypingReceiver\", [\"Arbiter\",\"ChannelConstants\",\"MercuryActionTypeConstants\",\"MercuryParticipants\",\"MercuryPayloadSource\",\"MercuryServerRequests\",\"MercuryThreads\",\"TypingDetector\",\"setTimeoutAcrossTransitions\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ChannelConstants\"), i = b(\"MercuryActionTypeConstants\"), j = b(\"MercuryParticipants\"), k = b(\"MercuryPayloadSource\"), l = b(\"MercuryServerRequests\").get(), m = b(\"MercuryThreads\").get(), n = b(\"TypingDetector\"), o = b(\"setTimeoutAcrossTransitions\"), p, q = {\n }, r = 30000, s = new g();\n function t(y) {\n var z = ((q[y] || {\n })), aa = Object.keys(z);\n aa.sort(function(ba, ca) {\n return ((z[ba] - z[ca]));\n });\n return aa;\n };\n;\n function u() {\n p = null;\n var y = JSBNG__Date.now(), z = {\n }, aa = false;\n {\n var fin307keys = ((window.top.JSBNG_Replay.forInKeys)((q))), fin307i = (0);\n var ba;\n for (; (fin307i < fin307keys.length); (fin307i++)) {\n ((ba) = (fin307keys[fin307i]));\n {\n var ca = false;\n {\n var fin308keys = ((window.top.JSBNG_Replay.forInKeys)(((q[ba] || {\n })))), fin308i = (0);\n var da;\n for (; (fin308i < fin308keys.length); (fin308i++)) {\n ((da) = (fin308keys[fin308i]));\n {\n if (((q[ba][da] < ((y - r))))) {\n delete q[ba][da];\n ca = true;\n }\n else aa = true;\n ;\n ;\n };\n };\n };\n ;\n if (ca) {\n z[ba] = t(ba);\n }\n ;\n ;\n };\n };\n };\n ;\n {\n var fin309keys = ((window.top.JSBNG_Replay.forInKeys)((z))), fin309i = (0);\n var ea;\n for (; (fin309i < fin309keys.length); (fin309i++)) {\n ((ea) = (fin309keys[fin309i]));\n {\n s.inform(\"state-changed\", z);\n break;\n };\n };\n };\n ;\n if (aa) {\n p = o(u, 3000);\n }\n ;\n ;\n };\n;\n function v(y, z) {\n if (((y in q))) {\n if (((z in q[y]))) {\n delete q[y][z];\n w(y);\n }\n ;\n }\n ;\n ;\n };\n;\n function w(y) {\n var z = {\n };\n z[y] = t(y);\n s.inform(\"state-changed\", z);\n };\n;\n function x(y) {\n if (y.thread) {\n return l.getClientThreadIDNow(y.thread);\n }\n ;\n ;\n if (((y.type === \"typ\"))) {\n return m.getThreadIdForUser(y.from);\n }\n ;\n ;\n return null;\n };\n;\n g.subscribe([h.getArbiterType(\"typ\"),h.getArbiterType(\"ttyp\"),], function(y, z) {\n var aa = z.obj, ba = x(aa);\n if (ba) {\n var ca = j.getIDForUser(aa.from);\n if (((aa.st == n.TYPING))) {\n q[ba] = ((q[ba] || {\n }));\n var da = q[ba][ca];\n q[ba][ca] = JSBNG__Date.now();\n if (!p) {\n p = o(u, 3000);\n }\n ;\n ;\n ((!da && w(ba)));\n }\n else if (((aa.st == n.INACTIVE))) {\n v(ba, ca);\n }\n \n ;\n ;\n }\n ;\n ;\n });\n l.subscribe(\"update-typing-state\", function(y, z) {\n var aa = z.payload_source;\n if (((aa != k.CLIENT_CHANNEL_MESSAGE))) {\n return;\n }\n ;\n ;\n var ba = z.actions;\n if (((!ba || !ba.length))) {\n return;\n }\n ;\n ;\n var ca = i.USER_GENERATED_MESSAGE;\n ba.forEach(function(da) {\n if (((((da.action_type == ca)) && ((da.author != j.user))))) {\n v(da.thread_id, da.author);\n }\n ;\n ;\n });\n });\n e.exports = s;\n});\n__d(\"formatUnixTimestamp\", [\"formatDate\",], function(a, b, c, d, e, f) {\n var g = b(\"formatDate\");\n function h(i, j, k, l) {\n var m = new JSBNG__Date(((i * 1000)));\n return g(m, j, k, l);\n };\n;\n e.exports = h;\n});\n__d(\"MercuryIndicatorController\", [\"ArbiterMixin\",\"DOM\",\"MercuryActionTypeConstants\",\"MercuryConfig\",\"MercuryDelayedRoger\",\"MercuryMessageSourceTags\",\"MercuryParticipants\",\"MercuryRoger\",\"MercuryThreads\",\"MercuryTypingReceiver\",\"DateFormatConfig\",\"arrayContains\",\"copyProperties\",\"formatUnixTimestamp\",\"removeFromArray\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"DOM\"), i = b(\"MercuryActionTypeConstants\"), j = b(\"MercuryConfig\"), k = b(\"MercuryDelayedRoger\"), l = b(\"MercuryMessageSourceTags\"), m = b(\"MercuryParticipants\"), n = b(\"MercuryRoger\"), o = b(\"MercuryThreads\").get(), p = b(\"MercuryTypingReceiver\"), q = b(\"DateFormatConfig\"), r = b(\"arrayContains\"), s = b(\"copyProperties\"), t = b(\"formatUnixTimestamp\"), u = b(\"removeFromArray\"), v = b(\"tx\"), w = [];\n function x(y) {\n this._threadID = y;\n this._canonicalUser = o.getCanonicalUserInThread(y);\n w.push(this);\n };\n;\n s(x.prototype, g, {\n destroy: function() {\n u(w, this);\n },\n setLastMessage: function(y) {\n this._lastMsg = y;\n this._handleStateChange();\n },\n _informStateChanged: function(y) {\n if (((((y.activity == \"none\")) && ((this._currentActivity == \"none\"))))) {\n return;\n }\n ;\n ;\n if (((this._lastMsg && m.isAuthor(this._lastMsg.author)))) {\n y.self_authored = true;\n }\n ;\n ;\n this._currentActivity = y.activity;\n this.inform(\"state-changed\", y);\n },\n _notifySentFrom: function() {\n var y, z, aa = this._lastMsg.location_text, ba = ((this._lastMsg.source_tags || []));\n if (aa) {\n y = v._(\"Sent from {location}\", {\n JSBNG__location: aa\n });\n z = \"sentFromMobile\";\n }\n else if (r(ba, l.MESSENGER)) {\n y = h.create(\"a\", {\n href: \"/mobile/messenger\",\n class: \"fcg\",\n target: \"_blank\"\n }, \"Sent from Messenger\");\n z = \"sentFromMobile\";\n }\n else if (r(ba, l.MOBILE)) {\n y = h.create(\"a\", {\n href: \"/mobile\",\n class: \"fcg\",\n target: \"_blank\"\n }, \"Sent from Mobile\");\n z = \"sentFromMobile\";\n }\n else if (r(ba, l.EMAIL)) {\n y = \"Sent from email\";\n z = \"sentFromEmail\";\n }\n else {\n this._informStateChanged({\n activity: \"none\"\n });\n return;\n }\n \n \n \n ;\n ;\n this._informStateChanged({\n activity: z,\n text: y\n });\n },\n _notifySeenTimestamp: function(y) {\n var z = ((n.getSeenTimestamp(this._threadID, y[0]) * 39458)), aa = ((JSBNG__Date.now() * 39477));\n if (((z < ((aa - 518400))))) {\n ba = \"M j\";\n }\n else if (((z < ((aa - 86400))))) {\n ba = \"D g:ia\";\n }\n else ba = \"g:ia\";\n \n ;\n ;\n var ba = ((q.formats[ba] || ba)), ca = t(z, ba, false, true);\n this._informStateChanged({\n activity: \"seen-timestamp\",\n text: v._(\"Seen {timestamp}\", {\n timestamp: ca\n })\n });\n },\n _checkNamesForCollision: function(y, z) {\n var aa = false;\n m.getMulti(y, function(ba) {\n function ca(fa) {\n if (((typeof ba[fa] !== \"undefined\"))) {\n return ba[fa].short_name.toLowerCase();\n }\n else return fa\n ;\n };\n ;\n var da = z.map(ca), ea = y.map(ca);\n aa = da.some(function(fa) {\n return ((ea.indexOf(fa) !== ea.lastIndexOf(fa)));\n });\n });\n return aa;\n },\n _notifySeenBy: function(y) {\n var z = this._lastMsg, aa = true;\n m.getMulti(y, function(ba) {\n aa = false;\n if (((this._lastMsg != z))) {\n return;\n }\n ;\n ;\n var ca = o.getThreadMetaNow(this._threadID), da = ((ca ? ca.participants.length : 0)), ea = ((y.length + ((z.author != m.user)))), fa, ga = false, ha = false, ia = ((((da > 2)) && ((ea >= ((da - 1))))));\n if (((!(ia) && ((da > 0))))) {\n ha = this._checkNamesForCollision(ca.participants, y);\n }\n ;\n ;\n if (ia) {\n fa = \"Seen by everyone\";\n }\n else if (((y.length == 1))) {\n fa = v._(\"Seen by {user}\", {\n user: ba[y[0]].short_name\n });\n }\n else if (((y.length == 2))) {\n fa = v._(\"Seen by {user1}, {user2}\", {\n user1: ba[y[0]].short_name,\n user2: ba[y[1]].short_name\n });\n }\n else if (((y.length == 3))) {\n fa = v._(\"Seen by {user1}, {user2}, {user3}\", {\n user1: ba[y[0]].short_name,\n user2: ba[y[1]].short_name,\n user3: ba[y[2]].short_name\n });\n }\n else if (((y.length > 3))) {\n var ja = ((Object.keys(ba).length - 2)), ka = v._(\"{num} more\", {\n num: ja\n }), la = h.create(\"span\", {\n className: \"more\"\n }, ka);\n fa = h.tx._(\"Seen by {user1}, {user2}, {=num more link}\", {\n user1: ba[y[0]].short_name,\n user2: ba[y[1]].short_name,\n \"=num more link\": la\n });\n ga = true;\n }\n \n \n \n \n ;\n ;\n ga = ((ga || ha));\n this._informStateChanged({\n activity: \"seen-by\",\n text: fa,\n seenBy: y,\n hasNameCollision: ha,\n tooltip: ga\n });\n }.bind(this));\n ((aa && this._informStateChanged({\n activity: \"none\"\n })));\n },\n _notifyTyping: function(y) {\n var z = this._lastMsg, aa = true;\n m.getMulti(y, function(ba) {\n aa = false;\n if (((this._lastMsg != z))) {\n return;\n }\n ;\n ;\n if (((this._canonicalUser || j.ChatMultiTypGK))) {\n var ca = o.getThreadMetaNow(this._threadID), da = ((ca ? ca.participants.length : 0)), ea, fa = false;\n if (((((da > 2)) && ((y.length >= ((da - 1))))))) {\n ea = \"Everyone is typing...\";\n }\n else if (((y.length == 1))) {\n ea = v._(\"{name} is typing...\", {\n JSBNG__name: ba[y[0]].short_name\n });\n }\n else if (((y.length == 2))) {\n ea = v._(\"{user1} and {user2} are typing...\", {\n user1: ba[y[0]].short_name,\n user2: ba[y[1]].short_name\n });\n }\n else if (((y.length == 3))) {\n ea = v._(\"{user1}, {user2}, and {user3} are typing...\", {\n user1: ba[y[0]].short_name,\n user2: ba[y[1]].short_name,\n user3: ba[y[2]].short_name\n });\n }\n else if (((y.length > 3))) {\n var ga = ((Object.keys(ba).length - 2)), ha = v._(\"{num} more\", {\n num: ga\n }), ia = h.create(\"a\", {\n href: \"#\"\n }, ha);\n ea = h.tx._(\"{user1}, {user2}, and {=num more link} are typing...\", {\n user1: ba[y[0]].short_name,\n user2: ba[y[1]].short_name,\n \"=num more link\": ia\n });\n fa = true;\n }\n \n \n \n \n ;\n ;\n this._informStateChanged({\n activity: \"typing\",\n text: ea,\n typing: y,\n tooltip: fa\n });\n }\n ;\n ;\n }.bind(this));\n ((aa && this._informStateChanged({\n activity: \"none\"\n })));\n },\n _handleStateChange: function() {\n var y = i.LOG_MESSAGE;\n if (((!this._lastMsg || ((this._lastMsg.action_type == y))))) {\n this._informStateChanged({\n activity: \"none\"\n });\n return;\n }\n ;\n ;\n if (((this._typing && this._typing.length))) {\n this._notifyTyping(this._typing);\n return;\n }\n ;\n ;\n if (((this._canonicalUser && ((this._lastMsg.author != m.user))))) {\n this._notifySentFrom();\n return;\n }\n ;\n ;\n var z = k.getSeenBy(this._threadID, true);\n if (z.length) {\n if (this._canonicalUser) {\n this._notifySeenTimestamp(z);\n return;\n }\n else {\n this._notifySeenBy(z);\n return;\n }\n ;\n }\n ;\n ;\n this._informStateChanged({\n activity: \"none\"\n });\n }\n });\n p.subscribe(\"state-changed\", function(y, z) {\n w.forEach(function(aa) {\n var ba = z[aa._threadID];\n if (((ba !== undefined))) {\n aa._typing = ba;\n aa._handleStateChange();\n }\n ;\n ;\n });\n });\n k.subscribe(\"state-changed\", function(y, z) {\n w.forEach(function(aa) {\n ((z[aa._threadID] && aa._handleStateChange()));\n });\n });\n e.exports = x;\n});\n__d(\"MercuryLastMessageIndicator\", [\"JSBNG__CSS\",\"MercuryIndicatorController\",\"DOM\",\"MercuryParticipants\",\"Tooltip\",\"copyProperties\",\"csx\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = b(\"MercuryIndicatorController\"), i = b(\"DOM\"), j = b(\"MercuryParticipants\"), k = b(\"Tooltip\"), l = b(\"copyProperties\"), m = b(\"csx\"), n = b(\"cx\");\n function o(p, q, r, s) {\n this._lastMessageIndicator = q;\n this._hideTyping = ((r || false));\n this._messagesView = s;\n this._controller = new h(p);\n this._subscription = this._controller.subscribe(\"state-changed\", this._handleStateChanged.bind(this));\n };\n;\n l(o.prototype, {\n destroy: function() {\n this._setClass(null);\n this._subscription.unsubscribe();\n this._controller.destroy();\n },\n setLastMessage: function(p) {\n this._controller.setLastMessage(p);\n },\n _handleStateChanged: function(p, q) {\n var r = this._messagesView.isScrolledToBottom();\n this._rerender(q);\n ((r && this._messagesView.scrollToBottom()));\n },\n _rerender: function(p) {\n if (((p.activity == \"none\"))) {\n this._setClass(null);\n return;\n }\n ;\n ;\n if (((this._hideTyping && ((p.activity == \"typing\"))))) {\n this._setClass(null);\n return;\n }\n ;\n ;\n g.conditionClass(this._lastMessageIndicator, \"-cx-PRIVATE-mercuryLastMessageIndicator__selfauthored\", p.self_authored);\n var q = i.JSBNG__find(this._lastMessageIndicator, \".-cx-PRIVATE-mercuryLastMessageIndicator__text\");\n if (p.text) {\n i.setContent(q, p.text);\n }\n else i.empty(q);\n ;\n ;\n if (((p.activity.substring(0, 4) == \"seen\"))) {\n this._setClass(\"seen\");\n if (((((p.activity == \"seen-by\")) && p.tooltip))) {\n j.getMulti(p.seenBy, function(r) {\n var s = i.create(\"div\");\n {\n var fin310keys = ((window.top.JSBNG_Replay.forInKeys)((r))), fin310i = (0);\n var t;\n for (; (fin310i < fin310keys.length); (fin310i++)) {\n ((t) = (fin310keys[fin310i]));\n {\n var u = i.create(\"div\");\n i.setContent(u, r[t].JSBNG__name);\n i.appendContent(s, u);\n };\n };\n };\n ;\n var v = p.hasNameCollision, w;\n if (v) {\n w = this._lastMessageIndicator;\n }\n else w = i.JSBNG__find(this._lastMessageIndicator, \"span.more\");\n ;\n ;\n k.set(w, s, \"above\", \"center\");\n }.bind(this));\n }\n else k.remove(this._lastMessageIndicator);\n ;\n ;\n }\n else this._setClass(p.activity);\n ;\n ;\n },\n _setClass: function(p) {\n if (((this._lastClass === p))) {\n return;\n }\n ;\n ;\n ((this._lastClass && g.removeClass(this._lastMessageIndicator, this._lastClass)));\n ((p && g.addClass(this._lastMessageIndicator, p)));\n this._lastClass = p;\n }\n });\n e.exports = o;\n});\n__d(\"MercuryStateCheck\", [\"Arbiter\",\"ChannelConstants\",\"MercuryFolders\",\"MessagingTag\",\"MercuryServerRequests\",\"URI\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ChannelConstants\"), i = b(\"MercuryFolders\"), j = b(\"MessagingTag\"), k = b(\"MercuryServerRequests\").get(), l = b(\"URI\"), m = b(\"copyProperties\"), n = m(new g(), {\n initialize: function() {\n g.subscribe(h.ON_INVALID_HISTORY, o);\n d([\"ChannelConnection\",], function(p) {\n p.subscribe(p.CONNECTED, function(q, r) {\n if (!r.init) {\n o();\n }\n ;\n ;\n });\n });\n }\n });\n function o() {\n var p;\n if (((l.getRequestURI().getPath().search(/messages/) !== -1))) {\n p = i.getSupportedFolders();\n }\n else p = [j.INBOX,];\n ;\n ;\n k.fetchMissedMessages(p);\n };\n;\n n.initialize();\n e.exports = n;\n});\n__d(\"MercuryAttachmentRenderer\", [\"MercuryAttachmentTemplates\",\"MercuryAttachmentAudioClip.react\",\"JSBNG__CSS\",\"MercuryConstants\",\"DOM\",\"JSBNG__Image.react\",\"JSXDOM\",\"MercuryAttachment\",\"MercuryAttachmentType\",\"MercuryMessages\",\"MercuryParticipants\",\"React\",\"Style\",\"URI\",\"UserAgent\",\"cx\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"MercuryAttachmentTemplates\"), h = b(\"MercuryAttachmentAudioClip.react\"), i = b(\"JSBNG__CSS\"), j = b(\"MercuryConstants\"), k = b(\"DOM\"), l = b(\"JSBNG__Image.react\"), m = b(\"JSXDOM\"), n = b(\"MercuryAttachment\"), o = b(\"MercuryAttachmentType\"), p = b(\"MercuryMessages\").get(), q = b(\"MercuryParticipants\"), r = b(\"React\"), s = b(\"Style\"), t = b(\"URI\"), u = b(\"UserAgent\"), v = b(\"cx\"), w = b(\"tx\"), x = ((u.ie() <= 8));\n function y(ba, ca) {\n var da = g[ca].build().setNodeContent(\"filename\", ba.JSBNG__name), ea = da.getNode(\"link\");\n ea.setAttribute(\"href\", ba.url);\n ((ba.rel && ea.setAttribute(\"rel\", ba.rel)));\n i.addClass(da.getRoot(), n.getAttachIconClass(ba.icon_type));\n return da;\n };\n;\n function z(ba, ca) {\n var da = g[ca].build().setNodeContent(\"filename\", ba.JSBNG__name);\n i.addClass(da.getRoot(), n.getAttachIconClass(ba.icon_type));\n return da;\n };\n;\n var aa = {\n renderAttachment: function(ba, ca, da, ea, fa) {\n var ga = 100, ha = ((ba ? 160 : 400)), ia = ca.attach_type, ja = null, ka = null, la = true, ma = j.MercurySupportedShareType;\n if (((ia == o.ERROR))) {\n ja = aa.renderError(ca);\n }\n ;\n ;\n if (((((!ba && ((ia == o.SHARE)))) && ca.share_xhp))) {\n ka = aa.renderShareXHP(ca, da.id);\n }\n ;\n ;\n if (((ia == o.STICKER))) {\n la = false;\n ka = aa.renderSticker(ca);\n }\n ;\n ;\n if (((!ka && ((ia == o.SHARE))))) {\n var na = ca.share_data_type;\n switch (na) {\n case ma.FB_PHOTO:\n ka = aa.renderPreview(ca, da, ea, fa);\n break;\n case ma.FB_VIDEO:\n ka = aa.renderVideoThumb(ca);\n break;\n case ma.FB_MUSIC_ALBUM:\n \n case ma.FB_SONG:\n \n case ma.FB_PLAYLIST:\n \n case ma.FB_MUSICIAN:\n \n case ma.FB_RADIO_STATION:\n ka = aa.renderMusic(ca);\n break;\n case ma.EXTERNAL:\n \n case ma.FB_TEMPLATE:\n \n case ma.FB_COUPON:\n \n case ma.FB_SOCIAL_REPORT_PHOTO:\n ka = aa.renderExternalLink(ca);\n break;\n default:\n if (ca.JSBNG__name) {\n ka = aa.renderShareLink(ca, ((da && da.id)), ba);\n }\n ;\n ;\n break;\n };\n ;\n }\n ;\n ;\n if (((!ka && ca.preview_loading))) {\n ka = aa.renderPreview(null);\n }\n ;\n ;\n if (((!ka && ca.preview_url))) {\n ka = aa.renderPreview(ca, da, ea, fa);\n }\n ;\n ;\n if (((!ka && ((ia == o.FILE))))) {\n if (((ca.metadata && ((ca.metadata.type == j.MercuryAttachmentAudioClip))))) {\n ka = k.create(\"div\");\n var oa = aa.renderAudioClip(ca, da.message_id, ga, ha);\n r.renderComponent(oa, ka);\n }\n else ka = ((ba ? aa.renderFileLink(ca) : aa.renderExtendedFileLink(ca)));\n ;\n }\n ;\n ;\n return {\n error: ja,\n JSBNG__content: ka,\n bubblePreferred: la\n };\n },\n renderError: function(ba) {\n var ca = g[\":fb:mercury:attachment:error\"].build();\n k.appendContent(ca.getNode(\"error\"), ba.error_msg);\n return ca.getRoot();\n },\n renderExternalLink: function(ba) {\n var ca = g[\":fb:mercury:attachment:external-link\"].build().setNodeContent(\"JSBNG__name\", ba.JSBNG__name);\n ((ba.base_url && ca.setNodeContent(\"shortLink\", ba.base_url)));\n var da = ca.getNode(\"preview\"), ea = ca.getNode(\"image-link\");\n ea.setAttribute(\"href\", ba.url);\n ((ba.rel && ea.setAttribute(\"rel\", ba.rel)));\n if (ba.preview_url) {\n var fa = ca.getNode(\"preview-image\");\n fa.setAttribute(\"src\", ba.preview_url);\n i.addClass(da, ba.preview_class);\n i.show(fa);\n }\n else {\n i.addClass(ca.getRoot(), \"noMedia\");\n i.hide(da);\n }\n ;\n ;\n ca.getNode(\"JSBNG__name\").setAttribute(\"href\", ba.url);\n d([\"LinkshimHandler\",], function(ga) {\n ga.setUpLinkshimHandling(ca.getNode(\"JSBNG__name\"));\n ga.setUpLinkshimHandling(ca.getNode(\"image-link\"));\n });\n if (ba.rel) {\n ca.getNode(\"JSBNG__name\").setAttribute(\"rel\", ba.rel);\n }\n ;\n ;\n return ca.getRoot();\n },\n renderFileLink: function(ba) {\n var ca = null;\n if (((ba.url === \"\"))) {\n ca = \":fb:mercury:attachment:file-name\";\n return z(ba, ca).getRoot();\n }\n else {\n ca = \":fb:mercury:attachment:file-link\";\n return y(ba, ca).getRoot();\n }\n ;\n ;\n },\n renderAudioClip: function(ba, ca, da, ea) {\n var fa = ((ba.metadata.duration / 1000)), ga = 200;\n if (((da && ea))) {\n if (((fa < 5))) {\n ga = da;\n }\n else ga = ((((((1 - Math.pow(10, ((((fa - 5)) / -30))))) * ((ea - da)))) + da));\n ;\n }\n ;\n ;\n return h({\n src: ba.url,\n duration: ((ba.metadata.duration / 1000)),\n JSBNG__showHelp: false,\n width: ga\n });\n },\n renderExtendedFileLink: function(ba) {\n var ca = null;\n if (((ba.url === \"\"))) {\n ca = \":fb:mercury:attachment:file-name\";\n return z(ba, ca).getRoot();\n }\n ;\n ;\n var ca = \":fb:mercury:attachment:extended-file-link\", da = y(ba, ca);\n if (ba.open_url) {\n var ea = da.getNode(\"openLinkContainer\");\n i.show(ea);\n var fa = da.getNode(\"openFile\");\n fa.setAttribute(\"href\", ba.open_url);\n }\n ;\n ;\n var ga = da.getNode(\"downloadFile\");\n ga.setAttribute(\"href\", ba.url);\n ((ba.rel && ga.setAttribute(\"rel\", ba.rel)));\n return da.getRoot();\n },\n renderMusic: function(ba) {\n var ca = g[\":fb:mercury:attachment:music\"].build().setNodeContent(\"filename\", ba.JSBNG__name), da = ca.getNode(\"link\");\n da.setAttribute(\"href\", ba.url);\n da.setAttribute(\"target\", \"_blank\");\n ((ba.rel && da.setAttribute(\"rel\", ba.rel)));\n var ea = ca.getNode(\"image-link\");\n ea.setAttribute(\"href\", ba.url);\n ((ba.rel && ea.setAttribute(\"rel\", ba.rel)));\n var fa = ca.getNode(\"preview-image\");\n fa.setAttribute(\"src\", ba.preview_url);\n i.show(fa);\n i.addClass(ca.getNode(\"icon_link\"), \"MercuryMusicIcon\");\n return ca.getRoot();\n },\n resizeContain: function(ba, ca) {\n var da = ((ba.width / ba.height)), ea = ((ca.width / ca.height));\n if (((ea < da))) {\n return {\n width: Math.min(((ba.height * ea)), ca.width),\n height: Math.min(ba.height, ca.height)\n };\n }\n else return {\n width: Math.min(ba.width, ca.width),\n height: Math.min(((ba.width / ea)), ca.height)\n }\n ;\n },\n renderPreview: function(ba, ca, da, ea) {\n var fa = g[\":fb:mercury:attachment:preview\"].build(), ga = fa.getNode(\"image-link\");\n if (ba) {\n ((ba.url && ga.setAttribute(\"href\", ba.url)));\n ((ba.rel && ga.setAttribute(\"rel\", ba.rel)));\n var ha;\n if (ba.preview_uploading) {\n i.addClass(ga, \"-cx-PRIVATE-mercuryImages__uploading\");\n if (((da >= 176))) {\n ha = \"/images/photos/dots_large.png\";\n }\n else if (((da >= 86))) {\n ha = \"/images/photos/dots_medium.png\";\n }\n else ha = \"/images/photos/dots_small.png\";\n \n ;\n ;\n s.set(ga, \"width\", ((da + \"px\")));\n s.set(ga, \"max-width\", ((da + \"px\")));\n if (((ba.preview_width && ba.preview_height))) {\n s.set(ga, \"padding-bottom\", ((((((ba.preview_height / ba.preview_width)) * 100)) + \"%\")));\n }\n ;\n ;\n }\n else if (((ba.metadata && ba.metadata.fbid))) {\n ha = t(\"/ajax/mercury/attachments/photo.php\").addQueryData({\n fbid: ba.metadata.fbid,\n mode: ea,\n width: da,\n height: da\n }).toString();\n }\n else ha = t(ba.preview_url).addQueryData({\n mode: ea,\n width: da,\n height: da\n }).toString();\n \n ;\n ;\n var ia = fa.getNode(\"preview-image\");\n if (ha) {\n if (((((((ea === \"contain\")) && ba.preview_width)) && ba.preview_height))) {\n var ja = aa.resizeContain({\n width: da,\n height: da\n }, {\n width: ba.preview_width,\n height: ba.preview_height\n });\n ia.setAttribute(\"width\", ja.width);\n ia.setAttribute(\"height\", ja.height);\n }\n ;\n ;\n if (((ba.preview_uploading || ((((ea === \"cover\")) && !x))))) {\n i.addClass(ga, \"-cx-PRIVATE-mercuryImages__usebackgroundimage\");\n s.set(ga, \"backgroundImage\", ((((\"url(\" + ha)) + \")\")));\n }\n else {\n ia.JSBNG__onload = function() {\n ia.removeAttribute(\"width\");\n ia.removeAttribute(\"height\");\n };\n ia.setAttribute(\"src\", ha);\n }\n ;\n ;\n }\n ;\n ;\n if (ca) {\n this.renderReportRespondLink(fa.getRoot(), ba, ca.message_id);\n }\n ;\n ;\n }\n else i.addClass(ga, \"-cx-PUBLIC-mercuryImages__loading\");\n ;\n ;\n return fa.getRoot();\n },\n renderShareLink: function(ba, ca, da) {\n var ea = g[\":fb:mercury:attachment:share-link\"].build().setNodeContent(\"JSBNG__name\", ba.JSBNG__name), fa = ea.getNode(\"link\");\n fa.setAttribute(\"href\", ba.url);\n ((ba.rel && fa.setAttribute(\"rel\", ba.rel)));\n return ea.getRoot();\n },\n renderVideoThumb: function(ba) {\n var ca = g[\":fb:mercury:attachment:video-thumb\"].build(), da = ca.getNode(\"thumb\");\n da.setAttribute(\"href\", ba.url);\n da.setAttribute(\"rel\", ba.rel);\n var ea = k.JSBNG__find(ca.getRoot(), \"img\");\n ea.src = ba.preview_url;\n return ca.getRoot();\n },\n renderShareXHP: function(ba, ca) {\n var da = k.create(\"div\");\n if (ba) {\n k.appendContent(da, ba.share_xhp);\n this.renderReportRespondLink(da, ba, ca);\n }\n ;\n ;\n return da;\n },\n renderSticker: function(ba) {\n var ca = k.create(\"div\"), da = {\n uri: ba.url,\n width: ba.metadata.width,\n height: ba.metadata.height\n }, ea = l({\n className: \"mvs\",\n src: da\n });\n r.renderComponent(ea, ca);\n return ca;\n },\n renderReportRespondLink: function(ba, ca, da) {\n if (!ca.is_social_report_attachment) {\n return null;\n }\n ;\n ;\n switch (ca.share_data_type) {\n case j.MercurySupportedShareType.FB_PHOTO:\n break;\n case j.MercurySupportedShareType.FB_SOCIAL_REPORT_PHOTO:\n return null;\n default:\n return null;\n };\n ;\n var ea = null;\n if (da) {\n ea = p.getMessagesFromIDs([da,])[0];\n }\n ;\n ;\n if (!ea) {\n return null;\n }\n ;\n ;\n if (((ea.author === q.user))) {\n return null;\n }\n ;\n ;\n var fa = null;\n q.get(ea.author, function(ga) {\n fa = k.create(\"a\", {\n rel: \"dialog-post\",\n className: \"-cx-PRIVATE-fbChatMessage__socialreportlink\",\n id: \"respond-link\",\n ajaxify: t(\"/ajax/report/social_resolution/photo/\").setQueryData({\n attachment_fbid: ca.attach_id,\n photo_fbid: ca.shared_object_id,\n sender_id: q.getUserID(ga.id)\n }).toString()\n });\n k.setContent(fa, w._(\"Respond to {name}'s request\", {\n JSBNG__name: ga.JSBNG__name\n }));\n k.appendContent(ba, fa);\n });\n },\n renderPhotoAttachments: function(ba, ca, da, ea) {\n var fa = ba.length;\n if (!fa) {\n return null;\n }\n ;\n ;\n var ga = m.div({\n className: \"-cx-PRIVATE-mercuryImages__photoattachment\"\n }), ha = (m.div({\n className: \"-cx-PUBLIC-fbChatMessage__resetpadding\"\n }, ga));\n if (((fa === 1))) {\n var ia = aa.renderPreview(ba[0], ca, da, \"contain\");\n k.appendContent(ga, ia);\n return ha;\n }\n ;\n ;\n var ja = ((((((fa == 2)) || ((fa == 4)))) ? 2 : 3)), ka = ((((da - ((((ja - 1)) * ea)))) / ja)), la = Math.ceil(((fa / ja))), ma = ((((la * ka)) + ((((la - 1)) * ea)))), na = (m.div({\n className: \"-cx-PRIVATE-mercuryImages__grid\",\n style: ((((\"padding-bottom: \" + ((((ma / da)) * 100)))) + \"%;\"))\n }));\n k.appendContent(ga, na);\n for (var oa = 0; ((oa < fa)); ++oa) {\n var pa = aa.renderPreview(ba[oa], ca, ka, \"cover\"), qa = ((oa % ja)), ra = Math.floor(((oa / ja)));\n i.addClass(pa, \"-cx-PRIVATE-mercuryImages__griditem\");\n s.apply(pa, {\n width: ((((((ka / da)) * 100)) + \"%\")),\n left: ((((((((qa * ((ka + ea)))) / da)) * 100)) + \"%\")),\n JSBNG__top: ((((((((ra * ((ka + ea)))) / ma)) * 100)) + \"%\"))\n });\n k.appendContent(na, pa);\n };\n ;\n return ha;\n },\n isPhotoAttachment: function(ba) {\n return ((((ba.attach_type == o.PHOTO)) || ((((ba.attach_type == o.FILE)) && ba.preview_url))));\n },\n isShareAttachment: function(ba) {\n return ((ba.attach_type == o.SHARE));\n },\n isFileAttachment: function(ba) {\n return ((ba.attach_type == o.FILE));\n },\n isErrorAttachment: function(ba) {\n return ((ba.attach_type == o.ERROR));\n },\n booleanLexicographicComparator: function(ba) {\n return function(ca, da) {\n for (var ea = 0; ((ea < ba.length)); ++ea) {\n var fa = ba[ea](ca), ga = ba[ea](da);\n if (((fa && !ga))) {\n return -1;\n }\n else if (((!fa && ga))) {\n return 1;\n }\n \n ;\n ;\n };\n ;\n return 0;\n };\n }\n };\n e.exports = aa;\n});\n__d(\"URLScraper\", [\"ArbiterMixin\",\"DataStore\",\"JSBNG__Event\",\"URLMatcher\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"DataStore\"), i = b(\"JSBNG__Event\"), j = b(\"URLMatcher\"), k = b(\"copyProperties\"), l = \"scraperLastPermissiveMatch\";\n function m(n) {\n this.input = n;\n this.enable();\n };\n;\n k(m.prototype, g, {\n reset: function() {\n h.set(this.input, l, null);\n },\n enable: function() {\n if (this.events) {\n return;\n }\n ;\n ;\n var n = function(o) {\n JSBNG__setTimeout(this.check.bind(this, o), 30);\n };\n this.events = i.listen(this.input, {\n paste: n.bind(this, false),\n keydown: n.bind(this, true)\n });\n },\n disable: function() {\n if (!this.events) {\n return;\n }\n ;\n ;\n {\n var fin311keys = ((window.top.JSBNG_Replay.forInKeys)((this.events))), fin311i = (0);\n var JSBNG__event;\n for (; (fin311i < fin311keys.length); (fin311i++)) {\n ((event) = (fin311keys[fin311i]));\n {\n this.events[JSBNG__event].remove();\n ;\n };\n };\n };\n ;\n this.events = null;\n },\n check: function(n) {\n var o = this.input.value;\n if (((n && m.trigger(o)))) {\n return;\n }\n ;\n ;\n var p = m.match(o), q = j.permissiveMatch(o);\n if (((q && ((q != h.get(this.input, l)))))) {\n h.set(this.input, l, q);\n this.inform(\"match\", {\n url: ((p || q)),\n alt_url: q\n });\n }\n ;\n ;\n }\n });\n k(m, j);\n e.exports = m;\n});\n__d(\"DOMHyperlink\", [\"Env\",\"JSXDOM\",\"TransformTextToDOMMixin\",\"UntrustedLink\",\"URI\",\"URLScraper\",\"copyProperties\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"Env\"), h = b(\"JSXDOM\"), i = b(\"TransformTextToDOMMixin\"), j = b(\"UntrustedLink\"), k = b(\"URI\"), l = b(\"URLScraper\"), m = b(\"copyProperties\"), n = b(\"cx\"), o = {\n MAX_ITEMS: 40,\n match: function(p, q) {\n var r = l.match(p);\n if (!r) {\n return false;\n }\n ;\n ;\n var s = p.indexOf(r), t = ((s + r.length));\n return {\n startIndex: s,\n endIndex: t,\n element: this._element(r, q)\n };\n },\n _element: function(p, q) {\n var r = p, s = r.replace(/\"/g, \"%22\");\n if (!(/^[a-z][a-z0-9\\-+.]+:\\/\\//i.test(p))) {\n s = ((\"http://\" + s));\n }\n ;\n ;\n if (!k.isValidURI(s)) {\n return r;\n }\n ;\n ;\n var t = h.a({\n className: \"-cx-PUBLIC-fbHTMLHyperlink__link\",\n href: s,\n target: \"_blank\",\n rel: \"nofollow\"\n }, r);\n if (((q && !k(s).isFacebookURI()))) {\n t.JSBNG__onmousedown = function(u) {\n j.bootstrap(this, g.lhsh, u);\n };\n }\n ;\n ;\n return t;\n }\n };\n e.exports = m(o, i);\n});\n__d(\"MercuryMessageRenderer\", [\"MercuryAttachmentRenderer\",\"JSBNG__CSS\",\"DOM\",\"DOMEmoji\",\"DOMEmote\",\"DOMHyperlink\",\"DOMQuery\",\"FBIDEmote\",\"JSXDOM\",\"MercuryLogMessageType\",\"MercuryParticipants\",\"Tooltip\",\"cx\",\"transformTextToDOM\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"MercuryAttachmentRenderer\"), h = b(\"JSBNG__CSS\"), i = b(\"DOM\"), j = b(\"DOMEmoji\"), k = b(\"DOMEmote\"), l = b(\"DOMHyperlink\"), m = b(\"DOMQuery\"), n = b(\"FBIDEmote\"), o = b(\"JSXDOM\"), p = b(\"MercuryLogMessageType\"), q = b(\"MercuryParticipants\"), r = b(\"Tooltip\"), s = b(\"cx\"), t = b(\"transformTextToDOM\"), u = b(\"tx\"), v = [\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\",], w = {\n renderDate: function(pa) {\n var qa = new JSBNG__Date();\n qa.setHours(0);\n qa.setMinutes(0);\n qa.setSeconds(0);\n qa.setMilliseconds(0);\n var ra = ((((((24 * 60)) * 60)) * 1000)), sa = ((qa.getTime() - pa.getTime()));\n if (((sa <= 0))) {\n return \"Today\";\n }\n else if (((sa < ra))) {\n return \"Yesterday\";\n }\n \n ;\n ;\n var ta = v[pa.getMonth()], ua = pa.getDate(), va = pa.getFullYear();\n if (((va != qa.getFullYear()))) {\n return u._(\"{month} {date}, {year}\", {\n month: ta,\n date: ua,\n year: va\n });\n }\n else return u._(\"{month} {date}\", {\n month: ta,\n date: ua\n })\n ;\n },\n renderTooltipFlyout: function(pa, qa) {\n qa.forEach(function(ra) {\n var sa = i.create(\"div\");\n i.setContent(sa, ra.JSBNG__name);\n i.appendContent(pa, sa);\n });\n },\n renderLogMessage: function(pa, qa, ra, sa) {\n z(pa, sa);\n aa(qa, sa);\n ba(ra, sa);\n },\n formatMessageBody: function(pa, qa, ra) {\n var sa = ((pa || \"\")).replace(/\\s+$/, \"\");\n if (!qa) {\n return y(sa, false, ra);\n }\n ;\n ;\n var ta = Object.keys(qa).map(function(wa) {\n return window.parseInt(wa);\n }).sort(function(wa, xa) {\n return ((wa - xa));\n }), ua = [], va = 0;\n ta.forEach(function(wa) {\n var xa = sa.slice(va, wa);\n if (xa) {\n ua.push(y(xa, false, ra));\n }\n ;\n ;\n va = ((wa + qa[wa].length));\n var ya = sa.slice(wa, va);\n if (ya) {\n ua.push(y(ya, true, ra));\n }\n ;\n ;\n });\n if (((va < sa.length))) {\n ua.push(y(sa.slice(va), false, ra));\n }\n ;\n ;\n return ((((ua.length === 0)) ? null : ((((ua.length === 1)) ? ua[0] : i.create(\"span\", {\n }, ua)))));\n }\n };\n function x(pa, qa) {\n var ra = pa.replace(/\\r\\n?/g, \"\\u000a\").split(/\\n{2,}/);\n return ra.filter(function(sa) {\n return sa.length;\n }).map(function(sa) {\n return o.p(null, qa(sa));\n });\n };\n;\n function y(pa, qa, ra) {\n if (((((pa.length === 0)) && !qa))) {\n return null;\n }\n ;\n ;\n var sa = function(ta) {\n return t(ta, [l.params(true),j,n,k,]);\n };\n return (o.span({\n className: ((qa ? \"highlight\" : null))\n }, ((ra ? x(pa, sa) : sa(pa)))));\n };\n;\n function z(pa, qa) {\n var ra = \"\", sa;\n switch (qa.log_message_type) {\n case p.JOINABLE_CREATED:\n \n case p.JOINABLE_JOINED:\n \n case p.SUBSCRIBE:\n ra = \"mercurySubscribeIcon\";\n break;\n case p.UNSUBSCRIBE:\n ra = \"mercuryUnsubscribeIcon\";\n break;\n case p.THREAD_NAME:\n ra = \"mercuryThreadNameIcon\";\n break;\n case p.THREAD_IMAGE:\n ra = \"mercuryThreadImageIcon\";\n break;\n case p.VIDEO_CALL:\n sa = qa.log_message_data.answered;\n if (((sa || oa(qa)))) {\n ra = \"mercuryVideoCallIcon\";\n }\n else ra = \"mercuryMissedVideoCallIcon\";\n ;\n ;\n break;\n case p.PHONE_CALL:\n sa = qa.log_message_data.answered;\n if (sa) {\n ra = \"mercuryPhoneCallIcon\";\n }\n else ra = \"mercuryMissedPhoneCallIcon\";\n ;\n ;\n break;\n case p.SERVER_ERROR:\n ra = \"mercuryErrorIcon\";\n break;\n };\n ;\n h.addClass(pa, ra);\n };\n;\n function aa(pa, qa) {\n switch (qa.log_message_type) {\n case p.JOINABLE_CREATED:\n ga(pa, qa);\n break;\n case p.JOINABLE_JOINED:\n ha(pa, qa);\n break;\n case p.SUBSCRIBE:\n la(pa, qa);\n break;\n case p.UNSUBSCRIBE:\n ma(pa, qa);\n break;\n case p.VIDEO_CALL:\n if (oa(qa)) {\n ca(pa, qa);\n }\n else ea(pa, qa);\n ;\n ;\n break;\n case p.PHONE_CALL:\n da(pa, qa);\n break;\n case p.THREAD_NAME:\n fa(pa, qa);\n break;\n case p.THREAD_IMAGE:\n ia(pa, qa);\n break;\n case p.SERVER_ERROR:\n na(pa, qa);\n break;\n };\n ;\n };\n;\n function ba(pa, qa) {\n var ra = qa.log_message_type;\n if (((ra == p.THREAD_IMAGE))) {\n var sa = qa.log_message_data.image;\n if (sa) {\n var ta = g.renderPreview(((sa.preview_url ? sa : null)));\n i.setContent(pa, ta);\n h.addClass(ta, \"-cx-PRIVATE-mercuryImages__logmessageattachment\");\n h.show(pa);\n }\n ;\n ;\n }\n ;\n ;\n };\n;\n var ca = function(pa, qa) {\n q.get(qa.author, function(ra) {\n var sa = i.create(\"span\", {\n className: \"-cx-PRIVATE-fbChatEventMsg__participant\"\n }, ra.short_name), ta;\n switch (qa.log_message_data.event_name) {\n case \"installing\":\n ta = i.tx._(\"{firstname} is setting up video calling...\", {\n firstname: sa\n });\n break;\n case \"installed\":\n ta = i.tx._(\"{firstname} finished setting up video calling.\", {\n firstname: sa\n });\n break;\n case \"install_canceled\":\n ta = i.tx._(\"You canceled the video calling installation. \", {\n firstname: sa\n });\n break;\n };\n ;\n if (ta) {\n i.setContent(pa, ta);\n }\n ;\n ;\n });\n }, da = function(pa, qa) {\n var ra = qa.log_message_data.caller, sa = qa.log_message_data.callee, ta = [ra,sa,];\n q.getMulti(ta, function(ua) {\n if (((ra == q.user))) {\n var va = i.create(\"span\", {\n className: \"-cx-PRIVATE-fbChatEventMsg__participant\"\n }, ua[sa].short_name), wa;\n if (qa.log_message_data.answered) {\n wa = i.tx._(\"You called {firstname}.\", {\n firstname: va\n });\n }\n else wa = i.tx._(\"{firstname} missed a call from you. \", {\n firstname: va\n });\n ;\n ;\n }\n else {\n var xa = i.create(\"span\", {\n className: \"-cx-PRIVATE-fbChatEventMsg__participant\"\n }, ua[ra].short_name);\n if (qa.log_message_data.answered) {\n wa = i.tx._(\"{firstname} called you.\", {\n firstname: xa\n });\n }\n else wa = i.tx._(\"You missed a call from {firstname}. \", {\n firstname: xa\n });\n ;\n ;\n }\n ;\n ;\n i.setContent(pa, wa);\n });\n }, ea = function(pa, qa) {\n var ra = qa.log_message_data.caller, sa = qa.log_message_data.callee, ta = [ra,sa,];\n q.getMulti(ta, function(ua) {\n if (((ra == q.user))) {\n var va = i.create(\"span\", {\n className: \"-cx-PRIVATE-fbChatEventMsg__participant\"\n }, ua[sa].short_name), wa;\n if (qa.log_message_data.answered) {\n wa = i.tx._(\"You called {firstname}.\", {\n firstname: va\n });\n }\n else wa = i.tx._(\"{firstname} missed a call from you. \", {\n firstname: va\n });\n ;\n ;\n }\n else {\n var xa = i.create(\"span\", {\n className: \"-cx-PRIVATE-fbChatEventMsg__participant\"\n }, ua[ra].short_name);\n if (qa.log_message_data.answered) {\n wa = i.tx._(\"{firstname} called you.\", {\n firstname: xa\n });\n }\n else wa = i.tx._(\"You missed a call from {firstname}. \", {\n firstname: xa\n });\n ;\n ;\n }\n ;\n ;\n i.setContent(pa, wa);\n });\n }, fa = function(pa, qa) {\n var ra = qa.log_message_data.JSBNG__name, sa = i.create(\"b\", {\n }, ra);\n if (((qa.author == q.user))) {\n if (ra) {\n i.setContent(pa, i.tx._(\"You named the conversation: {name}.\", {\n JSBNG__name: sa\n }));\n }\n else i.setContent(pa, i.tx._(\"You removed the conversation name.\"));\n ;\n ;\n }\n else q.get(qa.author, function(ta) {\n var ua, va = ja(ta);\n if (ra) {\n ua = i.tx._(\"{actor} named the conversation: {name}.\", {\n actor: va,\n JSBNG__name: sa\n });\n }\n else ua = i.tx._(\"{actor} removed the conversation name.\", {\n actor: va\n });\n ;\n ;\n i.setContent(pa, ua);\n });\n ;\n ;\n }, ga = function(pa, qa) {\n if (((qa.author == q.user))) {\n i.setContent(pa, i.tx._(\"Other people can join this chat from News Feed and add their friends.\"));\n }\n else q.get(qa.author, function(ra) {\n var sa = ja(ra);\n i.setContent(pa, i.tx._(\"{actor} shared this chat to News Feed. Other people can join and add their friends.\", {\n actor: sa\n }));\n });\n ;\n ;\n }, ha = function(pa, qa) {\n var ra = qa.log_message_data.joined_participant;\n if (((ra == q.user))) {\n i.setContent(pa, i.tx._(\"You joined the chat. Other people can join from News Feed and add their friends.\"));\n }\n else q.get(ra, function(sa) {\n var ta = ja(sa);\n i.setContent(pa, i.tx._(\"{actor} joined the chat.\", {\n actor: ta\n }));\n });\n ;\n ;\n }, ia = function(pa, qa) {\n if (((qa.author == q.user))) {\n if (qa.log_message_data.image) {\n i.setContent(pa, i.tx._(\"You changed the conversation picture.\"));\n }\n else i.setContent(pa, i.tx._(\"You removed the conversation picture.\"));\n ;\n ;\n }\n else q.get(qa.author, function(ra) {\n var sa = ja(ra), ta;\n if (qa.log_message_data.image) {\n ta = i.tx._(\"{actor} changed the conversation picture.\", {\n actor: sa\n });\n }\n else ta = i.tx._(\"{actor} removed the conversation picture.\", {\n actor: sa\n });\n ;\n ;\n i.setContent(pa, ta);\n });\n ;\n ;\n }, ja = function(pa) {\n if (pa.href) {\n return i.create(\"a\", {\n href: pa.href,\n className: \"-cx-PRIVATE-fbChatEventMsg__participant\"\n }, pa.JSBNG__name);\n }\n ;\n ;\n return pa.JSBNG__name;\n }, ka = function(pa) {\n var qa = pa.indexOf(q.user);\n if (((qa > 0))) {\n return pa.splice(qa, 1).concat(pa);\n }\n ;\n ;\n return pa;\n }, la = function(pa, qa) {\n var ra = ka(qa.log_message_data.added_participants), sa = null, ta;\n if (((ra.length == 1))) {\n sa = [qa.author,ra[0],];\n q.getMulti(sa, function(ua) {\n if (((qa.author == q.user))) {\n ta = i.tx._(\"You added {subscriber1}.\", {\n subscriber1: ja(ua[ra[0]])\n });\n }\n else if (((ra[0] == q.user))) {\n ta = i.tx._(\"{actor} added you.\", {\n actor: ja(ua[qa.author])\n });\n }\n else ta = i.tx._(\"{actor} added {subscriber1}.\", {\n actor: ja(ua[qa.author]),\n subscriber1: ja(ua[ra[0]])\n });\n \n ;\n ;\n i.setContent(pa, ta);\n });\n }\n else if (((ra.length == 2))) {\n sa = [qa.author,].concat(ra);\n q.getMulti(sa, function(ua) {\n if (((qa.author == q.user))) {\n ta = i.tx._(\"You added {subscriber1} and {subscriber2}.\", {\n subscriber1: ja(ua[ra[0]]),\n subscriber2: ja(ua[ra[1]])\n });\n }\n else if (((ra[0] == q.user))) {\n ta = i.tx._(\"{actor} added you and {subscriber2}.\", {\n actor: ja(ua[qa.author]),\n subscriber2: ja(ua[ra[1]])\n });\n }\n else ta = i.tx._(\"{actor} added {subscriber1} and {subscriber2}.\", {\n actor: ja(ua[qa.author]),\n subscriber1: ja(ua[ra[0]]),\n subscriber2: ja(ua[ra[1]])\n });\n \n ;\n ;\n i.setContent(pa, ta);\n });\n }\n else if (((ra.length == 3))) {\n sa = [qa.author,].concat(ra);\n q.getMulti(sa, function(ua) {\n if (((qa.author == q.user))) {\n ta = i.tx._(\"You added {subscriber1}, {subscriber2} and {subscriber3}.\", {\n subscriber1: ja(ua[ra[0]]),\n subscriber2: ja(ua[ra[1]]),\n subscriber3: ja(ua[ra[2]])\n });\n }\n else if (((ra[0] == q.user))) {\n ta = i.tx._(\"{actor} added you, {subscriber2} and {subscriber3}.\", {\n actor: ja(ua[qa.author]),\n subscriber2: ja(ua[ra[1]]),\n subscriber3: ja(ua[ra[2]])\n });\n }\n else ta = i.tx._(\"{actor} added {subscriber1}, {subscriber2} and {subscriber3}.\", {\n actor: ja(ua[qa.author]),\n subscriber1: ja(ua[ra[0]]),\n subscriber2: ja(ua[ra[1]]),\n subscriber3: ja(ua[ra[2]])\n });\n \n ;\n ;\n i.setContent(pa, ta);\n });\n }\n else {\n sa = [qa.author,].concat(ra);\n q.getMulti(sa, function(ua) {\n var va = i.tx._(\"{num} more\", {\n num: ((ra.length - 2))\n }), wa = i.create(\"span\", {\n className: \"more\"\n }, va), xa = i.create(\"div\");\n w.renderTooltipFlyout(xa, ra.slice(2).map(function(za) {\n return ua[za];\n }));\n if (((qa.author == q.user))) {\n ta = i.tx._(\"You added {subscriber1}, {subscriber2} and {more_people}.\", {\n subscriber1: ja(ua[ra[0]]),\n subscriber2: ja(ua[ra[1]]),\n more_people: wa\n });\n }\n else if (((ra[0] == q.user))) {\n ta = i.tx._(\"{actor} added you, {subscriber2} and {more_people}.\", {\n actor: ja(ua[qa.author]),\n subscriber2: ja(ua[ra[1]]),\n more_people: wa\n });\n }\n else ta = i.tx._(\"{actor} added {subscriber1}, {subscriber2} and {more_people}.\", {\n actor: ja(ua[qa.author]),\n subscriber1: ja(ua[ra[0]]),\n subscriber2: ja(ua[ra[1]]),\n more_people: wa\n });\n \n ;\n ;\n i.setContent(pa, ta);\n var ya = m.JSBNG__find(pa, \"span.more\");\n r.set(ya, xa, \"above\", \"center\");\n });\n }\n \n \n ;\n ;\n }, ma = function(pa, qa) {\n q.get(qa.author, function(ra) {\n var sa;\n if (((qa.author == q.user))) {\n sa = i.tx._(\"You left the conversation.\");\n }\n else sa = i.tx._(\"{actor} left the conversation.\", {\n actor: ja(ra)\n });\n ;\n ;\n i.setContent(pa, sa);\n });\n }, na = function(pa, qa) {\n var ra = \"We were unable to fetch previous messages in this conversation.\";\n i.setContent(pa, ra);\n }, oa = function(pa) {\n return ((((pa.log_message_data.event_name === \"installing\")) || ((pa.log_message_data.event_name === \"install_canceled\"))));\n };\n e.exports = w;\n});\n__d(\"MercurySheetPolicy\", [], function(a, b, c, d, e, f) {\n var g = {\n canReplaceOpenSheet: function(h, i) {\n if (((h.getType() == i.getType()))) {\n return false;\n }\n ;\n ;\n if (((h.isPermanent() && !i.isPermanent()))) {\n return false;\n }\n ;\n ;\n return true;\n }\n };\n e.exports = g;\n});\n__d(\"MercurySheetView\", [\"Animation\",\"ArbiterMixin\",\"MercurySheetPolicy\",\"JSBNG__CSS\",\"DOM\",\"Style\",\"MercurySheetTemplates\",\"Vector\",\"copyProperties\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"ArbiterMixin\"), i = b(\"MercurySheetPolicy\"), j = b(\"JSBNG__CSS\"), k = b(\"DOM\"), l = b(\"Style\"), m = b(\"MercurySheetTemplates\"), n = b(\"Vector\"), o = b(\"copyProperties\"), p = b(\"cx\"), q = 5000, r = function(s, t, u) {\n this._threadID = s;\n this._rootElement = t;\n this._tabMainElement = u;\n this._openSheet = null;\n };\n o(r.prototype, h, {\n destroy: function() {\n k.empty(this._rootElement);\n },\n _openCommon: function(s, t) {\n if (((this._openSheet && !i.canReplaceOpenSheet(this._openSheet, s)))) {\n if (s.couldNotReplace) {\n s.couldNotReplace();\n }\n ;\n ;\n return;\n }\n ;\n ;\n this.clear(function() {\n this._openSheet = s;\n var u = m[\":fb:mercury:tab-sheet:loading\"].build().getRoot();\n k.setContent(this._rootElement, u);\n j.show(u);\n j.show(this._rootElement);\n s.render();\n if (t) {\n j.addClass(this._tabMainElement, \"sheetSlide\");\n j.addClass(this._tabMainElement, \"-cx-PRIVATE-fbMercuryTabSheet__sheetslide\");\n var v = n.getElementDimensions(this._rootElement).y;\n l.set(this._rootElement, \"bottom\", ((v + \"px\")));\n this.resize();\n this._animation = new g(this._rootElement).to(\"bottom\", 0).duration(150).ease(g.ease.both).ondone(function() {\n j.removeClass(this._tabMainElement, \"sheetSlide\");\n j.removeClass(this._tabMainElement, \"-cx-PRIVATE-fbMercuryTabSheet__sheetslide\");\n this.resize();\n }.bind(this)).go();\n }\n else this.resize();\n ;\n ;\n if (!s.isPermanent()) {\n var w = q;\n if (s.getCloseTimeout) {\n w = s.getCloseTimeout();\n }\n ;\n ;\n var x = this.getAutoCloseCallback(s);\n this._sheetCloseHandler = this.close.bind(this, s, x).defer(w, false);\n if (s.timeoutCanBeReset) {\n s.setResetTimeoutCallback(this.resetTimeout.bind(this));\n }\n ;\n ;\n }\n ;\n ;\n }.bind(this));\n },\n getAutoCloseCallback: function(s) {\n if (!s.autoCloseCallback) {\n return null;\n }\n ;\n ;\n return s.autoCloseCallback.bind(s);\n },\n resetTimeout: function(s, t) {\n JSBNG__clearTimeout(this._sheetCloseHandler);\n var u = this.getAutoCloseCallback(s);\n this._sheetCloseHandler = this.close.bind(this, s, u).defer(t, false);\n },\n set: function(s) {\n return this._openCommon(s, false);\n },\n open: function(s) {\n return this._openCommon(s, true);\n },\n close: function(s, t) {\n if (((this._openSheet != s))) {\n return;\n }\n ;\n ;\n if (!this._openSheet) {\n ((t && t()));\n return;\n }\n ;\n ;\n if (this._animation) {\n this._animation.JSBNG__stop();\n }\n ;\n ;\n if (this._sheetCloseHandler) {\n JSBNG__clearTimeout(this._sheetCloseHandler);\n this._sheetCloseHandler = null;\n }\n ;\n ;\n j.addClass(this._tabMainElement, \"sheetSlide\");\n j.addClass(this._tabMainElement, \"-cx-PRIVATE-fbMercuryTabSheet__sheetslide\");\n var u = n.getElementDimensions(this._rootElement).y;\n this.resize();\n this._animation = new g(this._rootElement).to(\"bottom\", ((u + \"px\"))).duration(100).ease(g.ease.begin).ondone(function() {\n k.empty(this._rootElement);\n j.hide(this._rootElement);\n j.removeClass(this._tabMainElement, \"sheetSlide\");\n j.removeClass(this._tabMainElement, \"-cx-PRIVATE-fbMercuryTabSheet__sheetslide\");\n this._openSheet = null;\n this.resize();\n ((t && t()));\n }.bind(this)).go();\n },\n clear: function(s) {\n this.close(this._openSheet, s);\n },\n resize: function() {\n this.inform(\"resize\");\n }\n });\n e.exports = r;\n});\n__d(\"BanzaiLogger\", [\"Banzai\",], function(a, b, c, d, e, f) {\n var g = b(\"Banzai\"), h = \"logger\";\n function i(k) {\n return {\n log: function(l, m) {\n g.post(((((h + \":\")) + l)), m, k);\n }\n };\n };\n;\n var j = i();\n j.create = i;\n e.exports = j;\n});\n__d(\"MercuryStickersData\", [\"Arbiter\",\"MercuryStickersInitialData\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"MercuryStickersInitialData\"), i = h.packs, j = {\n getPacks: function() {\n return i;\n },\n updatePackData: function(k) {\n i = k.packs;\n g.inform(\"MercuryStickers/updatedPacks\");\n }\n };\n e.exports = j;\n});\n__d(\"MercuryStickers\", [\"Arbiter\",\"ArbiterMixin\",\"BanzaiLogger\",\"JSBNG__CSS\",\"DOM\",\"JSBNG__Event\",\"MercuryStickersData\",\"MercuryStickersFlyoutList.react\",\"Parent\",\"React\",\"SubscriptionsHandler\",\"Toggler\",\"UIPagelet\",\"XUISpinner.react\",\"copyProperties\",\"csx\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ArbiterMixin\"), i = b(\"BanzaiLogger\"), j = b(\"JSBNG__CSS\"), k = b(\"DOM\"), l = b(\"JSBNG__Event\"), m = b(\"MercuryStickersData\"), n = b(\"MercuryStickersFlyoutList.react\"), o = b(\"Parent\"), p = b(\"React\"), q = b(\"SubscriptionsHandler\"), r = b(\"Toggler\"), s = b(\"UIPagelet\"), t = b(\"XUISpinner.react\"), u = b(\"copyProperties\"), v = b(\"csx\"), w = b(\"cx\");\n function x(y) {\n this._packs = k.JSBNG__find(y, \".-cx-PRIVATE-fbMercuryStickersFlyout__packs\");\n this._packSelector = k.JSBNG__find(y, \".-cx-PRIVATE-fbMercuryStickersFlyout__selector\");\n this._loadedPacks = {\n emoticons: true\n };\n var z = o.byClass(y, \"uiToggle\"), aa = r.listen(\"show\", z, function() {\n this._renderPackList();\n this._subscriptions.addSubscriptions(g.subscribe(\"MercuryStickers/updatedPacks\", this._renderPackList.bind(this)));\n this._selectPack(m.getPacks()[0].id);\n r.unsubscribe(aa);\n }.bind(this));\n r.listen(\"show\", z, function() {\n i.log(\"MercuryStickersLoggerConfig\", {\n JSBNG__event: \"open_tray\"\n });\n });\n this._subscriptions = new q();\n this._subscriptions.addSubscriptions(l.listen(this._packs, \"click\", function(JSBNG__event) {\n var ba = o.byClass(JSBNG__event.getTarget(), \"-cx-PRIVATE-fbMercuryStickersFlyout__sticker\");\n if (ba) {\n this._selectedSticker(ba);\n r.hide(z);\n }\n ;\n ;\n }.bind(this)));\n };\n;\n u(x.prototype, h, {\n _renderPackList: function() {\n p.renderComponent(n({\n onPackClick: this._selectPack.bind(this),\n packs: m.getPacks()\n }), this._packSelector);\n },\n _loadPack: function(y) {\n if (this._loadedPacks[y]) {\n return;\n }\n ;\n ;\n var z = this._getPackWithID(y);\n p.renderComponent(t({\n className: \"-cx-PRIVATE-fbMercuryStickersFlyout__spinner\"\n }), z);\n this._loadedPacks[y] = true;\n s.loadFromEndpoint(\"StickerPackPagelet\", z, {\n id: y\n }, {\n crossPage: true\n });\n },\n _getPackWithID: function(y) {\n var z = k.scry(this._packs, ((((((\".-cx-PRIVATE-fbMercuryStickersFlyout__pack\" + \"[data-id=\\\"\")) + y)) + \"\\\"]\")))[0];\n if (!z) {\n z = k.create(\"div\", {\n className: \"-cx-PRIVATE-fbMercuryStickersFlyout__pack hidden_elem\",\n \"data-id\": y\n });\n k.appendContent(this._packs, z);\n }\n ;\n ;\n return z;\n },\n _selectedSticker: function(y) {\n var z = parseInt(y.getAttribute(\"data-id\"), 10);\n this.inform(\"stickerselected\", {\n id: z\n });\n },\n _selectPack: function(y) {\n k.scry(this._packs, \".-cx-PRIVATE-fbMercuryStickersFlyout__pack\").forEach(j.hide);\n this._loadPack(y);\n j.show(this._getPackWithID(y));\n i.log(\"MercuryStickersLoggerConfig\", {\n JSBNG__event: \"select_pack\",\n packid: y\n });\n },\n destroy: function() {\n ((this._subscriptions && this._subscriptions.release()));\n this._subscriptions = null;\n }\n });\n e.exports = x;\n});\n__d(\"Token\", [\"JSBNG__CSS\",\"DataStore\",\"DOM\",\"copyProperties\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = b(\"DataStore\"), i = b(\"DOM\"), j = b(\"copyProperties\"), k = b(\"tx\");\n function l(m, n) {\n this.info = m;\n this.paramName = n;\n };\n;\n j(l.prototype, {\n getInfo: function() {\n return this.info;\n },\n getText: function() {\n return this.info.text;\n },\n getValue: function() {\n return this.info.uid;\n },\n isFreeform: function() {\n return !!this.info.freeform;\n },\n setSelected: function(m) {\n g.conditionClass(this.getElement(), \"uiTokenSelected\", m);\n return this;\n },\n getElement: function() {\n if (!this.element) {\n this.setElement(this.createElement());\n }\n ;\n ;\n return this.element;\n },\n setElement: function(m) {\n h.set(m, \"Token\", this);\n this.element = m;\n return this;\n },\n isRemovable: function() {\n return g.hasClass(this.element, \"removable\");\n },\n createElement: function(m, n) {\n var o = this.paramName, p = this.getText(), q = this.getValue(), r = i.create(\"a\", {\n href: \"#\",\n \"aria-label\": k._(\"Remove {item}\", {\n JSBNG__item: p\n }),\n className: \"remove uiCloseButton uiCloseButtonSmall\"\n });\n if (m) {\n g.addClass(r, \"uiCloseButtonSmallGray\");\n }\n ;\n ;\n var s = i.create(\"input\", {\n type: \"hidden\",\n value: q,\n JSBNG__name: ((o + \"[]\")),\n autocomplete: \"off\"\n }), t = i.create(\"input\", {\n type: \"hidden\",\n value: p,\n JSBNG__name: ((((\"text_\" + o)) + \"[]\")),\n autocomplete: \"off\"\n }), u = i.create(\"span\", {\n className: \"removable uiToken\"\n }, [p,s,t,r,]);\n if (m) {\n g.addClass(u, \"uiTokenGray\");\n }\n ;\n ;\n if (n) {\n var v = i.create(\"i\", {\n className: n\n });\n i.prependContent(u, v);\n }\n ;\n ;\n return u;\n }\n });\n e.exports = l;\n});\n__d(\"WeakToken\", [\"Class\",\"JSBNG__CSS\",\"Token\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Class\"), h = b(\"JSBNG__CSS\"), i = b(\"Token\"), j = b(\"copyProperties\");\n function k(l, m) {\n this.parent.construct(this, l, m);\n };\n;\n g.extend(k, i);\n j(k.prototype, {\n createElement: function() {\n var l = this.parent.createElement(true, \"UFIWeakReferenceIcon\");\n h.addClass(l, \"uiTokenWeakReference\");\n return l;\n }\n });\n e.exports = k;\n});\n__d(\"Tokenizer\", [\"Arbiter\",\"ArbiterMixin\",\"JSBNG__CSS\",\"DOM\",\"DOMQuery\",\"DataStore\",\"JSBNG__Event\",\"Focus\",\"Input\",\"Keys\",\"Parent\",\"StickyPlaceholderInput\",\"Style\",\"JSBNG__TextMetrics\",\"Token\",\"UserAgent\",\"WeakToken\",\"copyProperties\",\"createObjectFrom\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ArbiterMixin\"), i = b(\"JSBNG__CSS\"), j = b(\"DOM\"), k = b(\"DOMQuery\"), l = b(\"DataStore\"), m = b(\"JSBNG__Event\"), n = b(\"Focus\"), o = b(\"Input\"), p = b(\"Keys\"), q = b(\"Parent\"), r = b(\"StickyPlaceholderInput\"), s = b(\"Style\"), t = b(\"JSBNG__TextMetrics\"), u = b(\"Token\"), v = b(\"UserAgent\"), w = b(\"WeakToken\"), x = b(\"copyProperties\"), y = b(\"createObjectFrom\"), z = b(\"emptyFunction\"), aa = 20;\n function ba(ca, da) {\n this.element = ca;\n this.typeahead = da;\n this.input = da.getCore().getElement();\n l.set(this.element, \"Tokenizer\", this);\n };\n;\n ba.getInstance = function(ca) {\n var da = q.byClass(ca, \"uiTokenizer\");\n return ((da ? l.get(da, \"Tokenizer\") : null));\n };\n x(ba.prototype, h, {\n inline: false,\n maxTokens: null,\n excludeDuplicates: true,\n placeholder: \"\",\n init: function(ca, da, ea, fa) {\n this.init = z;\n this.tokenarea = ca;\n this.paramName = da;\n if (!this.placeholder) {\n this.placeholder = ((this.input.getAttribute(\"data-placeholder\") || \"\"));\n }\n ;\n ;\n x(this, ((fa || {\n })));\n this.initEvents();\n this.initTypeahead();\n this.reset(ea);\n this.initBehaviors();\n this.adjustWidth.bind(this).defer();\n g.inform(\"Tokenizer/init\", this, g.BEHAVIOR_PERSISTENT);\n },\n reset: function(ca) {\n this.tokens = [];\n this.unique = {\n };\n if (ca) {\n this.populate(ca);\n }\n else j.empty(this.tokenarea);\n ;\n ;\n this.updateTokenarea();\n },\n populate: function(ca) {\n var da = [];\n this.tokens = this.getTokenElements().map(function(ea, fa) {\n var ga = ca[fa];\n da.push(this._tokenKey(ga));\n return this.createToken(ga, ea);\n }, this);\n this.unique = y(da, this.tokens);\n },\n getElement: function() {\n return this.element;\n },\n getTypeahead: function() {\n return this.typeahead;\n },\n getInput: function() {\n return this.input;\n },\n initBehaviors: function() {\n this.behaviors = ((this.behaviors || []));\n if (((this.behaviors instanceof Array))) {\n this.behaviors.forEach(function(ea) {\n ea.behavior(this, ea.config);\n }.bind(this));\n }\n else {\n var fin312keys = ((window.top.JSBNG_Replay.forInKeys)(((this.behaviors || {\n })))), fin312i = (0);\n var ca;\n for (; (fin312i < fin312keys.length); (fin312i++)) {\n ((ca) = (fin312keys[fin312i]));\n {\n var da = ((window.TokenizerBehaviors && window.TokenizerBehaviors[ca]));\n da.call(null, this, this.behaviors[ca]);\n };\n };\n }\n ;\n ;\n },\n initTypeahead: function() {\n var ca = this.typeahead.getCore();\n ca.resetOnSelect = true;\n ca.setValueOnSelect = false;\n ca.preventFocusChangeOnTab = true;\n if (this.inline) {\n var da = this.typeahead.getView();\n i.addClass(da.getElement(), \"uiInlineTokenizerView\");\n }\n ;\n ;\n this.typeahead.subscribe(\"select\", function(ea, fa) {\n var ga = fa.selected;\n if (((\"uid\" in ga))) {\n this.updateInput();\n this.addToken(this.createToken(ga));\n }\n ;\n ;\n }.bind(this));\n this.typeahead.subscribe(\"JSBNG__blur\", this.handleBlur.bind(this));\n },\n handleBlur: function(JSBNG__event) {\n this.inform(\"JSBNG__blur\", {\n JSBNG__event: JSBNG__event\n });\n this.updatePlaceholder();\n },\n initEvents: function() {\n var ca = this.handleEvents.bind(this), da = ((((v.firefox() < 4)) ? \"keypress\" : \"keydown\"));\n m.listen(this.tokenarea, {\n click: ca,\n keydown: ca\n });\n m.listen(this.input, \"paste\", this.paste.bind(this));\n m.listen(this.input, da, this.keydown.bind(this));\n },\n handleEvents: function(JSBNG__event) {\n var ca = JSBNG__event.getTarget(), da = ((ca && this.getTokenElementFromTarget(ca)));\n if (!da) {\n return;\n }\n ;\n ;\n if (((((JSBNG__event.type != \"keydown\")) || ((m.getKeyCode(JSBNG__event) == p.RETURN))))) {\n this.processEvents(JSBNG__event, ca, da);\n }\n ;\n ;\n },\n processEvents: function(JSBNG__event, ca, da) {\n if (q.byClass(ca, \"remove\")) {\n var ea = da.nextSibling;\n ea = ((ea && k.scry(da.nextSibling, \".remove\")[0]));\n var fa = this.getTokenFromElement(da);\n fa = this.addTokenData(fa, ca);\n this.removeToken(fa);\n this.focusOnTokenRemoval(JSBNG__event, ea);\n JSBNG__event.kill();\n }\n ;\n ;\n },\n focusOnTokenRemoval: function(JSBNG__event, ca) {\n n.set(((((((JSBNG__event.type == \"keydown\")) && ca)) || this.input)));\n },\n addTokenData: function(ca, da) {\n return ca;\n },\n keydown: function(JSBNG__event) {\n this.inform(\"keydown\", {\n JSBNG__event: JSBNG__event\n });\n var ca = m.getKeyCode(JSBNG__event), da = this.input;\n if (((((this.inline && ((ca == p.BACKSPACE)))) && o.isEmpty(da)))) {\n var ea = this.getLastToken();\n if (((ea && ea.isRemovable()))) {\n this.removeToken(ea);\n }\n ;\n ;\n }\n ;\n ;\n this.updateInput();\n },\n paste: function(JSBNG__event) {\n this.inform(\"paste\", {\n JSBNG__event: JSBNG__event\n });\n this.updateInput(true);\n },\n focusInput: function() {\n n.set(this.input);\n },\n updateInput: function(ca) {\n if (!this.inline) {\n return;\n }\n ;\n ;\n JSBNG__setTimeout(function() {\n this.adjustWidth(this.input.value);\n if (ca) {\n this.input.value = this.input.value;\n }\n ;\n ;\n }.bind(this), 20);\n r.setPlaceholderText(this.input, \"\");\n this.inform(\"resize\");\n },\n setPlaceholder: function(ca) {\n this.placeholder = ca;\n if (this.stickyPlaceholder) {\n r.setPlaceholderText(this.input, ca);\n }\n ;\n ;\n this.updatePlaceholder();\n },\n updatePlaceholder: function() {\n if (((!this.inline || this.input.value))) {\n return;\n }\n ;\n ;\n var ca = !this.tokens.length, da = \"\";\n if (((ca || this.stickyPlaceholder))) {\n this.adjustWidth(this.placeholder);\n da = this.placeholder;\n }\n else this.adjustWidth(this.input.value);\n ;\n ;\n r.setPlaceholderText(this.input, da);\n },\n adjustWidth: function(ca) {\n if (((!this.inline || !this._getIsInDOM()))) {\n return;\n }\n ;\n ;\n if (((!ca && ((this.input.value === \"\"))))) {\n ca = this.placeholder;\n }\n ;\n ;\n var da = aa;\n if (((((((ca !== this.placeholder)) || !this.getTokens().length)) || this.stickyPlaceholder))) {\n var ea = this._getMetrics().measure(ca);\n da = ((((ea.width + this._getWidthOffset())) + 10));\n }\n ;\n ;\n s.set(this.input, \"width\", ((da + \"px\")));\n this.inform(\"resize\");\n },\n getToken: function(ca) {\n return ((this.unique[ca] || null));\n },\n getTokens: function() {\n return ((this.tokens || []));\n },\n getTokenElements: function() {\n return k.scry(this.tokenarea, \"span.uiToken\");\n },\n getTokenElementFromTarget: function(ca) {\n return q.byClass(ca, \"uiToken\");\n },\n getTokenFromElement: function(ca) {\n return l.get(ca, \"Token\");\n },\n getTokenValues: function() {\n if (!this.tokens) {\n return [];\n }\n ;\n ;\n return this.tokens.map(function(ca) {\n return ca.getValue();\n });\n },\n getFirstToken: function() {\n return ((this.tokens[0] || null));\n },\n getLastToken: function() {\n return ((this.tokens[((this.tokens.length - 1))] || null));\n },\n hasMaxTokens: function() {\n return ((this.maxTokens && ((this.maxTokens <= this.tokens.length))));\n },\n createToken: function(ca, da) {\n var ea = this.getToken(this._tokenKey(ca));\n if (!ea) {\n ea = ((ca.weak_reference ? new w(ca, this.paramName) : new u(ca, this.paramName)));\n }\n ;\n ;\n ((da && ea.setElement(da)));\n return ea;\n },\n addToken: function(ca) {\n if (this.hasMaxTokens()) {\n return;\n }\n ;\n ;\n var da = this._tokenKey(ca.getInfo());\n if (((da in this.unique))) {\n return;\n }\n ;\n ;\n this.unique[da] = ca;\n this.tokens.push(ca);\n this.insertToken(ca);\n this.updateTokenarea();\n this.inform(\"addToken\", ca);\n g.inform(\"Form/change\", {\n node: this.element\n });\n },\n insertToken: function(ca) {\n j.appendContent(this.tokenarea, ca.getElement());\n },\n removeToken: function(ca) {\n if (!ca) {\n return;\n }\n ;\n ;\n var da = this.tokens.indexOf(ca);\n if (((da < 0))) {\n return;\n }\n ;\n ;\n this.tokens.splice(this.tokens.indexOf(ca), 1);\n delete this.unique[this._tokenKey(ca.getInfo())];\n j.remove(ca.getElement());\n this.updateTokenarea();\n this.inform(\"removeToken\", ca);\n g.inform(\"Form/change\", {\n node: this.element\n });\n },\n removeAllTokens: function() {\n this.reset();\n this.inform(\"removeAllTokens\");\n },\n updateTokenarea: function() {\n var ca = this.typeahead.getCore(), da = this.getTokenValues();\n if (this.excludeDuplicates) {\n ((this._exclusions || (this._exclusions = ca.getExclusions())));\n ca.setExclusions(da.concat(this._exclusions));\n }\n ;\n ;\n ca.setEnabled(!this.hasMaxTokens());\n this.updateTokenareaVisibility();\n this.updatePlaceholder();\n this.inform(\"resize\");\n },\n updateTokenareaVisibility: function() {\n i.conditionShow(this.tokenarea, ((this.tokens.length !== 0)));\n },\n _tokenKey: function(ca) {\n return ((ca.uid + ((ca.freeform ? \":\" : \"\"))));\n },\n _widthOffset: null,\n _getWidthOffset: function() {\n if (((this._widthOffset === null))) {\n var ca = this.input.clientWidth, da = s.getFloat(this.input, \"width\");\n if (((ca == da))) {\n this._widthOffset = ((s.getFloat(this.input, \"paddingLeft\") + s.getFloat(this.input, \"paddingRight\")));\n }\n else this._widthOffset = 0;\n ;\n ;\n }\n ;\n ;\n return this._widthOffset;\n },\n _metrics: null,\n _getMetrics: function() {\n if (!this._metrics) {\n this._metrics = new t(this.input, this.inline);\n }\n ;\n ;\n return this._metrics;\n },\n _getIsInDOM: function() {\n return ((this._isInDOM || (this._isInDOM = k.contains(JSBNG__document.body, this.input))));\n }\n });\n ba.init = function(ca, da) {\n ca.init(da.tokenarea, da.param_name, da.initial_info, da.options);\n };\n e.exports = ba;\n});\n__d(\"MercuryTypeahead\", [\"JSBNG__Event\",\"ArbiterMixin\",\"DOM\",\"DOMDimensions\",\"Input\",\"Keys\",\"MercuryTypeaheadTemplates\",\"Tokenizer\",\"Typeahead\",\"TypeaheadCore\",\"copyProperties\",\"cx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"ArbiterMixin\"), i = b(\"DOM\"), j = b(\"DOMDimensions\"), k = b(\"Input\"), l = b(\"Keys\"), m = b(\"MercuryTypeaheadTemplates\"), n = b(\"Tokenizer\"), o = b(\"Typeahead\"), p = b(\"TypeaheadCore\"), q = b(\"copyProperties\"), r = b(\"cx\"), s = function(t, u) {\n this._domElement = null;\n this._typeahead = null;\n this._tokenizer = null;\n this._placeholder = \"\";\n this._exclusions = [];\n this._viewNodeOrID = null;\n this._viewOptions = {\n renderer: \"compact\",\n autoSelect: true\n };\n this._tokenizerBehaviors = [];\n this._heightPrev = null;\n this._dataSource = t;\n this._view = u;\n };\n q(s.prototype, h);\n q(s.prototype, {\n setPlaceholder: function(t) {\n this._placeholder = t;\n return this;\n },\n setExcludedParticipants: function(t) {\n this._exclusions = [];\n t.forEach(function(u) {\n var v = u.indexOf(\":\");\n if (((u.substr(0, v) == \"fbid\"))) {\n this._exclusions.push(u.substr(((v + 1))));\n }\n ;\n ;\n }.bind(this));\n return this;\n },\n setViewNodeID: function(t) {\n this._viewNodeOrID = t;\n },\n setViewNode: function(t) {\n this._viewNodeOrID = t;\n },\n setFullWidthView: function(t) {\n var u = i.create(\"div\", {\n className: \"-cx-PRIVATE-mercuryTypeahead__typeaheadview uiTypeaheadView\"\n });\n i.setContent(t, u);\n this.setViewNode(u);\n },\n setViewOption: function(t, u) {\n this._viewOptions[t] = u;\n },\n addTokenizerBehavior: function(t) {\n this._tokenizerBehaviors.push(t);\n },\n build: function(t) {\n if (this._domElement) {\n return;\n }\n ;\n ;\n var u = m[\":fb:mercury:tokenizer\"].build(), v = m[\":fb:mercury:typeahead\"].build();\n this._domElement = u.getRoot();\n i.appendContent(this._domElement, v.getRoot());\n var w = v.getNode(\"textfield\");\n k.setPlaceholder(w, this._placeholder);\n w.setAttribute(\"data-placeholder\", this._placeholder);\n this._input = w;\n var x = {\n node_id: this._viewNodeOrID,\n ctor: this._view,\n options: this._viewOptions\n }, y = {\n ctor: p,\n options: {\n setValueOnSelect: true\n }\n };\n this._typeahead = new o(this._dataSource, x, y, v.getRoot());\n this._typeahead.init();\n var z = {\n inline: true,\n behaviors: this._tokenizerBehaviors\n };\n this._tokenizer = new n(this._domElement, this._typeahead);\n this._tokenizer.init(u.getNode(\"tokenarea\"), \"participants\", [], z);\n this._tokenizer.subscribe([\"addToken\",\"removeToken\",\"removeAllTokens\",], this._tokensChanged.bind(this));\n this._tokenizer.subscribe(\"resize\", function() {\n this.inform(\"resize\");\n }.bind(this));\n g.listen(w, \"JSBNG__focus\", function() {\n this._resetDataSource();\n this._typeahead.init();\n }.bind(this));\n g.listen(this._domElement, \"click\", this.JSBNG__focus.bind(this));\n g.listen(w, \"keydown\", this.keydown.bind(this));\n this._heightPrev = j.getElementDimensions(this._domElement).height;\n },\n getElement: function() {\n return this._domElement;\n },\n getSelectedParticipantIDs: function() {\n var t = [];\n if (this._tokenizer) {\n ((this._tokenizer.getTokenValues() || [])).forEach(function(u) {\n t.push(((\"fbid:\" + u)));\n });\n }\n ;\n ;\n return t;\n },\n getTokens: function() {\n var t = [];\n if (this._tokenizer) {\n t = this._tokenizer.getTokens();\n }\n ;\n ;\n return t;\n },\n getTokenizer: function() {\n return this._tokenizer;\n },\n keydown: function(JSBNG__event) {\n if (((this._tokenizer.inline && ((JSBNG__event.keyCode == l.ESC))))) {\n if (k.isEmpty(this._input)) {\n var t = this._tokenizer.getLastToken();\n if (((t && t.isRemovable()))) {\n this._tokenizer.removeToken(t);\n }\n ;\n ;\n }\n else this._typeahead.getCore().reset();\n ;\n ;\n return false;\n }\n ;\n ;\n },\n reset: function() {\n ((this._tokenizer && this._tokenizer.removeAllTokens()));\n ((this._typeahead && this._typeahead.getCore().reset()));\n },\n JSBNG__focus: function() {\n ((this._tokenizer && this._tokenizer.focusInput()));\n },\n getTypeahead: function() {\n return this._typeahead;\n },\n _resetDataSource: function() {\n this._dataSource.setExclusions(this._exclusions);\n },\n _tokensChanged: function() {\n this.inform(\"tokens-changed\");\n }\n });\n e.exports = s;\n});"); |
| // 16095 |
| o195.JSBNG__status = null; |
| // undefined |
| o195 = null; |
| // 16074 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o193,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y8/r/9g0s6xsMYpS.js",o194); |
| // undefined |
| o193 = null; |
| // undefined |
| o194 = null; |
| // 16149 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"WD1Wm\",]);\n}\n;\n__d(\"BlackbirdUpsellConstants\", [], function(a, b, c, d, e, f) {\n e.exports = {\n ACTION_UPSELL: \"upsell\",\n CLICK_TYPE_DISMISS_PROMO: \"dismiss_promo\",\n ACTION_EDUCATE: \"educate\",\n CLICK_TYPE_ENABLE_CHAT: \"enable_chat\",\n CLICK_TYPE_OPEN_SETTINGS: \"open_settings\"\n };\n});\n__d(\"AsyncLoader\", [\"copyProperties\",\"AsyncRequest\",\"BaseAsyncLoader\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"AsyncRequest\"), i = b(\"BaseAsyncLoader\");\n function j(k, l) {\n this._endpoint = k;\n this._type = l;\n };\n g(j.prototype, i.prototype);\n j.prototype.send = function(k, l, m, n, o) {\n new h(k).setData({\n ids: l\n }).setHandler(n).setErrorHandler(o).setAllowCrossPageTransition(true).setMethod(\"GET\").setReadOnly(true).send();\n };\n e.exports = j;\n});\n__d(\"BlackbirdUpsell\", [\"Event\",\"Arbiter\",\"AsyncRequest\",\"LegacyContextualDialog\",\"DOM\",\"LayerDestroyOnHide\",\"LayerHideOnTransition\",\"PresencePrivacy\",\"copyProperties\",\"BlackbirdUpsellConfig\",\"BlackbirdUpsellConstants\",\"BlackbirdUpsellTemplates\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Arbiter\"), i = b(\"AsyncRequest\"), j = b(\"LegacyContextualDialog\"), k = b(\"DOM\"), l = b(\"LayerDestroyOnHide\"), m = b(\"LayerHideOnTransition\"), n = b(\"PresencePrivacy\"), o = b(\"copyProperties\"), p = b(\"BlackbirdUpsellConfig\"), q = b(\"BlackbirdUpsellConstants\"), r = b(\"BlackbirdUpsellTemplates\"), s = \"/ajax/chat/blackbird/update_clicks.php\", t = \"/ajax/chat/blackbird/update_impressions.php\", u = \"/ajax/chat/blackbird/dismiss.php\", v = 235, w = null, x = null, y = false, z = false;\n function aa() {\n \n };\n o(aa, {\n shouldShow: function() {\n if (this._dialogDismissed) {\n return false\n };\n if (this.isEducation()) {\n return ((!!p.EducationGK && !p.EducationDismissed) && (p.EducationImpressions < p.EducationImpressionLimit));\n }\n else return (((!!p.UpsellGK && !p.UpsellDismissed) && (p.UpsellImpressions < p.UpsellImpressionLimit)) && (p.FriendCount >= p.UpsellMinFriendCount))\n ;\n },\n isEducation: function() {\n return (p.TimeOffline <= p.EducationTimeOfflineThresdhold);\n },\n getOfflineContent: function() {\n if (this.isEducation()) {\n return this._getEducationContent();\n }\n else return this._getUpsellContent()\n ;\n },\n _getEducationContent: function() {\n ga();\n var ka = r[\":fb:chat:blackbird:offline-educate\"].build(), la = ka.getNode(\"chatSettingsButton\");\n g.listen(la, \"click\", function() {\n h.inform(\"chat/advanced-settings-dialog-opened\");\n ja(q.CLICK_TYPE_OPEN_SETTINGS);\n da();\n });\n return ka.getRoot();\n },\n _getUpsellContent: function() {\n fa();\n var ka = r[\":fb:chat:blackbird:upsell\"].build(), la = ka.getNode(\"chatSettingsButton\");\n g.listen(la, \"click\", function() {\n h.inform(\"chat/advanced-settings-dialog-opened\");\n ia(q.CLICK_TYPE_OPEN_SETTINGS);\n ca();\n });\n var ma = ka.getNode(\"enableChatButton\");\n g.listen(ma, \"click\", function() {\n ia(q.CLICK_TYPE_ENABLE_CHAT);\n ca();\n });\n return ka.getRoot();\n },\n getBlackbirdContent: function(ka) {\n ga();\n switch (ka) {\n case n.ONLINE:\n return r[\":fb:chat:blackbird:most-friends-educate\"].build().getRoot();\n case n.OFFLINE:\n return r[\":fb:chat:blackbird:some-friends-educate\"].build().getRoot();\n };\n },\n showOfflineDialog: function(ka) {\n this.showDialog(ka, this.getOfflineContent.bind(this));\n },\n showBlackbirdDialog: function(ka, la) {\n this.showDialog(ka, this.getBlackbirdContent.curry(la));\n },\n showDialog: function(ka, la) {\n (!w && this._constructDialog());\n k.setContent(x, la());\n w.setContext(ka);\n w.show();\n },\n hide: function() {\n if ((w && w.isShown())) {\n w.hide();\n };\n },\n dismiss: function() {\n this.hide();\n if (this.isEducation()) {\n da();\n }\n else ca();\n ;\n },\n registerDismissClick: function() {\n if (this.isEducation()) {\n ja(q.CLICK_TYPE_DISMISS_PROMO);\n }\n else ia(q.CLICK_TYPE_DISMISS_PROMO);\n ;\n },\n isVisible: function() {\n return (z && !y);\n },\n _constructDialog: function() {\n var ka = r[\":fb:chat:blackbird:dialog-frame\"].build();\n x = ka.getNode(\"dialogContent\");\n w = new j();\n w.init(ka.getRoot());\n w.setPosition(\"above\").setWidth(v).setFixed(true).disableBehavior(l).disableBehavior(m);\n g.listen(ka.getNode(\"dialogCloseButton\"), \"click\", this.dismiss.bind(this));\n g.listen(ka.getNode(\"dialogCloseButton\"), \"click\", this.registerDismissClick.bind(this));\n }\n });\n function ba(ka, la) {\n if ((!y && z)) {\n y = true;\n n.inform(\"privacy-user-presence-changed\");\n var ma = new i(u);\n ma.setData({\n source: ka,\n impressions: la,\n time_offline: p.TimeOffline\n });\n ma.setErrorHandler(function() {\n y = false;\n });\n ma.send();\n }\n ;\n };\n function ca() {\n ba(q.ACTION_UPSELL, p.UpsellImpressions);\n };\n function da() {\n ba(q.ACTION_EDUCATE, p.EducationImpressions);\n };\n function ea(ka, la) {\n if (!z) {\n z = true;\n var ma = new i(t);\n ma.setData({\n action: ka,\n impressions: la,\n time_offline: p.TimeOffline\n });\n ma.setErrorHandler(function() {\n z = false;\n });\n ma.send();\n }\n ;\n };\n function fa() {\n ea(q.ACTION_UPSELL, p.UpsellImpressions);\n };\n function ga() {\n ea(q.ACTION_EDUCATE, p.EducationImpressions);\n };\n function ha(ka, la, ma, na) {\n var oa = new i(s);\n oa.setData({\n action: ka,\n impressions: ma,\n source: la,\n time_offline: na\n });\n oa.send();\n };\n function ia(ka) {\n ha(ka, q.ACTION_UPSELL, p.UpsellImpressions, p.TimeOffline);\n };\n function ja(ka) {\n ha(ka, q.ACTION_EDUCATE, p.EducateImpressions, p.TimeOffline);\n };\n h.subscribe(\"chat/advanced-settings-dialog-opened\", aa.dismiss.bind(aa));\n h.subscribe(\"chat-visibility/go-online\", aa.dismiss.bind(aa));\n h.subscribe(\"chat-visibility/go-offline\", aa.dismiss.bind(aa));\n e.exports = aa;\n});\n__d(\"ChatFavoriteNux\", [\"AsyncRequest\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = null, i = false, j = {\n tryShow: function(k) {\n if ((h && !i)) {\n h.setContext(k);\n h.show();\n i = true;\n }\n ;\n },\n tryHide: function() {\n if ((h && i)) {\n h.hide();\n h = null;\n }\n ;\n },\n registerDialog: function(k) {\n h = k;\n if (k) {\n k.subscribe(\"confirm\", this.dismissDialog);\n };\n },\n dismissDialog: function() {\n if (h) {\n new g(\"/ajax/chat/dismiss_favorite_nux.php\").send();\n h.hide();\n h = null;\n }\n ;\n }\n };\n e.exports = j;\n});\n__d(\"ChatGroupThreadsController\", [\"ArbiterMixin\",\"ChatConfig\",\"InitialMultichatList\",\"MercuryOrderedThreadlist\",\"MercuryServerRequests\",\"MercuryThreadInformer\",\"MercuryThreads\",\"MessagingTag\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"ChatConfig\"), i = b(\"InitialMultichatList\"), j = b(\"MercuryOrderedThreadlist\").get(), k = b(\"MercuryServerRequests\").get(), l = b(\"MercuryThreadInformer\").get(), m = b(\"MercuryThreads\").get(), n = b(\"MessagingTag\"), o = b(\"copyProperties\"), p, q = [], r = h.get(\"max_sidebar_multichats\", 3);\n function s(x) {\n var y = m.getThreadMetaNow(x);\n return ((y && !y.is_canonical) && m.canReply(x));\n };\n var t = i.payload;\n if (t) {\n k.handleUpdate(t);\n var u = (t.threads || []);\n q = u.map(function(x) {\n return x.thread_id;\n });\n }\n;\n if (q.length) {\n var v = m.getThreadMetaNow(q[(q.length - 1)]);\n p = (v && ((v.timestamp - 1)));\n }\n;\n if (!p) {\n p = Date.now();\n };\n var w = {\n };\n o(w, g, {\n getThreadIDs: function() {\n var x = 0;\n return q.filter(function(y) {\n return (((x < r) && s(y)) && ++x);\n });\n }\n });\n l.subscribe(\"threadlist-updated\", function() {\n q = j.getThreadlistUntilTimestamp(p, n.INBOX, n.GROUPS).filter(s);\n w.inform(\"update\");\n });\n e.exports = w;\n});\n__d(\"ChatHovercard\", [\"Arbiter\",\"AsyncLoader\",\"Hovercard\",\"JSLogger\",\"debounce\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncLoader\"), i = b(\"Hovercard\"), j = b(\"JSLogger\"), k = b(\"debounce\"), l = 5, m = new h(\"/ajax/chat/hovercard/sidebar.php\", \"hover\"), n = j.create(\"chat_hovercard\");\n g.subscribe(\"Hovercard/dirty\", m.reset.bind(m));\n function o(s, t) {\n m.get(s, function(u) {\n (function() {\n if (!u) {\n n.error(\"fetch_failure\", {\n id: s\n });\n return;\n }\n ;\n var v = i.getDialog(u);\n if (!v) {\n n.error(\"no_hovercard\", {\n id: s,\n endpoint: u\n });\n return;\n }\n ;\n if ((s == t.getActiveID())) {\n t.showHovercard(s, v);\n };\n }).defer();\n });\n };\n function p(s, t) {\n var u = [];\n function v(y) {\n if (((y >= 0) && (y < s.length))) {\n u.push(s[y]);\n };\n };\n var w = s.indexOf(t);\n if ((w > -1)) {\n v(w);\n for (var x = 1; (x < l); x++) {\n v((w + x));\n v((w - x));\n };\n }\n ;\n return u.filter(function(y) {\n return y;\n });\n };\n function q(s, t) {\n var u = t.getActiveID();\n if (u) {\n var v = s.getShowingUsers(), w = p(v, u);\n m.get(w, function() {\n \n });\n }\n ;\n };\n function r(s) {\n var t = s.getHoverController();\n t.registerDefault(o);\n t.subscribe(\"hover\", k(q.curry(s, t), 100));\n };\n e.exports = r;\n});\n__d(\"ChatOptions\", [\"Arbiter\",\"ChannelConstants\",\"JSLogger\",\"PresenceUtil\",\"copyProperties\",\"ChatOptionsInitialData\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ChannelConstants\"), i = b(\"JSLogger\"), j = b(\"PresenceUtil\"), k = b(\"copyProperties\"), l = i.create(\"chat_options\"), m = {\n };\n (function() {\n var o = b(\"ChatOptionsInitialData\");\n for (var p in o) {\n var q = o[p];\n m[p] = !!q;\n };\n })();\n var n = k(new g(), {\n getSetting: function(o) {\n return m[o];\n },\n setSetting: function(o, p, q) {\n if ((this.getSetting(o) == p)) {\n return\n };\n if (q) {\n q = (\"from_\" + q);\n l.log(q, {\n name: o,\n new_value: p,\n old_value: this.getSetting(o)\n });\n }\n ;\n m[o] = !!p;\n g.inform(\"chat/option-changed\", {\n name: o,\n value: p\n });\n }\n });\n g.subscribe(h.getArbiterType(\"setting\"), function(o, p) {\n var q = p.obj;\n if ((q.window_id === j.getSessionID())) {\n return\n };\n n.setSetting(q.setting, !!q.value, \"channel\");\n });\n g.subscribe(i.DUMP_EVENT, function(o, p) {\n p.chat_options = m;\n });\n e.exports = n;\n});\n__d(\"ChatOrderedListHover\", [\"function-extensions\",\"ArbiterMixin\",\"ChatFavoriteList\",\"CSS\",\"ErrorUtils\",\"Event\",\"LayerHideOnBlur\",\"Parent\",\"copyProperties\",\"cx\",\"setTimeoutAcrossTransitions\",\"shield\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"ArbiterMixin\"), h = b(\"ChatFavoriteList\"), i = b(\"CSS\"), j = b(\"ErrorUtils\"), k = b(\"Event\"), l = b(\"LayerHideOnBlur\"), m = b(\"Parent\"), n = b(\"copyProperties\"), o = b(\"cx\"), p = b(\"setTimeoutAcrossTransitions\"), q = b(\"shield\");\n function r(u) {\n i.addClass(u, \"fetching\");\n };\n function s(u) {\n i.removeClass(u, \"fetching\");\n };\n function t(u) {\n this._orderedList = u;\n this._root = u.getRoot();\n k.listen(this._root, \"mouseover\", this._mouseOver.bind(this));\n k.listen(this._root, \"mouseleave\", this._mouseLeave.bind(this));\n u.subscribe(\"click\", q(this._hide, this));\n };\n n(t.prototype, g, {\n _root: null,\n _activeItem: null,\n _hideTimeout: null,\n _showTimeout: null,\n _showingDialog: null,\n _showingID: null,\n _handlers: {\n },\n _defaultHandler: null,\n _mouseOver: function(event) {\n if (this._paused) {\n return\n };\n var u = event.getTarget(), v = (m.byClass(u, \"-cx-PRIVATE-fbChatOrderedList__item\") || m.byClass(u, \"-cx-PRIVATE-fbChatGroupThreadlist__groupchat\"));\n (v && this._setActiveItem(v));\n },\n _mouseLeave: function(event) {\n this._setActiveItem(null);\n },\n _clearTimeouts: function() {\n (this._showTimeout && clearTimeout(this._showTimeout));\n this._showTimeout = null;\n (this._hideTimeout && clearTimeout(this._hideTimeout));\n this._hideTimeout = null;\n },\n _hide: function() {\n if (this._showingDialog) {\n this._showingDialog.hide();\n this._showingDialog = null;\n this._showingID = null;\n }\n ;\n },\n _show: function() {\n var u = this.getActiveID(), v = false;\n if (this._handlers[u]) {\n v = true;\n j.applyWithGuard(this._handlers[u], {\n }, [u,this,]);\n }\n else if (this._defaultHandler) {\n v = true;\n j.applyWithGuard(this._defaultHandler, {\n }, [u,this,]);\n }\n \n ;\n if ((v && (this._showingID != this.getActiveID()))) {\n r(this._activeItem);\n };\n },\n _setActiveItem: function(u) {\n if (h.isEditMode()) {\n this._clearTimeouts();\n this._hide();\n return;\n }\n ;\n if ((u != this._activeItem)) {\n this._clearTimeouts();\n (this._activeItem && s(this._activeItem));\n this._activeItem = null;\n var v = (u ? 0 : 100);\n this._hideTimeout = p(function() {\n if ((this.getActiveID() != this._showingID)) {\n this._hide();\n };\n }.bind(this), v);\n if (u) {\n this._activeItem = u;\n var w = (v + 500);\n this._showTimeout = p(function() {\n this._show();\n }.bind(this), w);\n this.inform(\"hover\");\n }\n else this.inform(\"leave\");\n ;\n }\n ;\n },\n register: function(u, v) {\n if (!this._handlers[u]) {\n this._handlers[u] = v;\n return {\n unregister: function() {\n if ((u == this._showingID)) {\n this._hide();\n };\n delete this._handlers[u];\n var w = this._orderedList.getAllNodes(), x = w[u];\n (x && s(x));\n }.bind(this)\n };\n }\n ;\n },\n registerDefault: function(u) {\n this._defaultHandler = u;\n },\n getActiveID: function() {\n var u = (this._activeItem && this._orderedList.getUserForNode(this._activeItem));\n return (u || null);\n },\n showHovercard: function(u, v) {\n if (((u == this.getActiveID()) && (u != this._showingID))) {\n this._clearTimeouts();\n s(this._activeItem);\n this._hide();\n this._showingDialog = v;\n this._showingID = u;\n var w = v.subscribe(\"mouseenter\", this._setActiveItem.bind(this, this._activeItem)), x = v.subscribe(\"mouseleave\", function() {\n w.unsubscribe();\n this._setActiveItem(null);\n }.bind(this)), y = v.subscribe(\"hide\", function() {\n this.inform(\"hovercard_hide\");\n w.unsubscribe();\n x.unsubscribe();\n y.unsubscribe();\n }.bind(this));\n v.enableBehavior(l).setContext(this._activeItem).setPosition(\"left\").show();\n this.inform(\"hovercard_show\");\n }\n ;\n },\n setPaused: function(u) {\n this._paused = u;\n }\n });\n e.exports = t;\n});\n__d(\"ChatQuietLinks\", [\"Event\",\"DOM\",\"UserAgent\",\"DataStore\",\"Parent\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"DOM\"), i = b(\"UserAgent\"), j = b(\"DataStore\"), k = b(\"Parent\"), l = {\n }, m = {\n silenceLinks: function(q) {\n n(q, this.removeEmptyHrefs.bind(this));\n },\n nukeLinks: function(q) {\n n(q, this.removeAllHrefs.bind(this));\n },\n removeEmptyHrefs: function(q) {\n o(q, function(r) {\n return (!r || (r === \"#\"));\n });\n },\n removeAllHrefs: function(q) {\n o(q);\n },\n removeMessagesHrefs: function(q) {\n o(q, function(r) {\n return ((!r || (r === \"#\")) || (r.indexOf(\"/messages/\") != -1));\n });\n }\n };\n function n(q, r) {\n var s = !!i.chrome(), t = ((!!i.chrome() || (i.ie() >= 9)) || (i.firefox() >= 4));\n if (l[h.getID(q)]) {\n return\n };\n l[h.getID(q)] = true;\n if (!t) {\n return\n };\n if (!s) {\n (r && r(q));\n return;\n }\n ;\n g.listen(q, \"mouseover\", function u(v) {\n var w = k.byTag(v.getTarget(), \"a\");\n if (w) {\n var x = w.getAttribute(\"href\");\n if (p(x)) {\n j.set(w, \"stashedHref\", w.getAttribute(\"href\"));\n w.removeAttribute(\"href\");\n }\n ;\n }\n ;\n });\n g.listen(q, \"mouseout\", function u(v) {\n var w = k.byTag(v.getTarget(), \"a\"), x = (w && j.remove(w, \"stashedHref\"));\n if (p(x)) {\n w.setAttribute(\"href\", x);\n };\n });\n g.listen(q, \"mousedown\", function(u) {\n if (!u.isDefaultRequested()) {\n return true\n };\n var v = k.byTag(u.getTarget(), \"a\"), w = (v && j.get(v, \"stashedHref\"));\n if (p(w)) {\n v.setAttribute(\"href\", w);\n };\n });\n };\n function o(q, r) {\n var s = h.scry(q, \"a\");\n if (r) {\n s = s.filter(function(t) {\n return r(t.getAttribute(\"href\"));\n });\n };\n s.forEach(function(t) {\n t.removeAttribute(\"href\");\n t.setAttribute(\"tabindex\", 0);\n });\n };\n function p(q) {\n return (q && (q !== \"#\"));\n };\n e.exports = m;\n});\n__d(\"ChatSidebarThreadlist.react\", [\"ChatConfig\",\"ChatGroupThreadsController\",\"ChatSidebarConstants\",\"ChatSidebarItem.react\",\"ChatSidebarThread.react\",\"MercuryServerRequests\",\"MercuryThreads\",\"MercuryParticipants\",\"PresenceStatus\",\"React\",\"copyProperties\",\"cx\",\"fbt\",\"ix\",], function(a, b, c, d, e, f) {\n var g = b(\"ChatConfig\"), h = b(\"ChatGroupThreadsController\"), i = b(\"ChatSidebarConstants\"), j = b(\"ChatSidebarItem.react\"), k = b(\"ChatSidebarThread.react\"), l = b(\"MercuryServerRequests\").get(), m = b(\"MercuryThreads\").get(), n = b(\"MercuryParticipants\"), o = b(\"PresenceStatus\"), p = b(\"React\"), q = b(\"copyProperties\"), r = b(\"cx\"), s = b(\"fbt\"), t = b(\"ix\"), u = p.createClass({\n displayName: \"ChatSidebarThreadlist\",\n render: function() {\n var v = this.state.threadData, w = this.state.participantData, x = i.IMAGE_SIZE, y = t(\"/images/chat/sidebar/newGroupChat.png\");\n if (this.props.litestandSidebar) {\n x = (g.get(\"litestand_blended_sidebar\") ? i.LITESTAND_BLENDED_SIZE : i.LITESTAND_IMAGE_SIZE);\n y = (g.get(\"litestand_blended_sidebar\") ? t(\"/images/litestand/sidebar/blended/new_group_chat.png\") : t(\"/images/chat/sidebar/newGroupChatLitestand.png\"));\n }\n ;\n var z = \"New Group Chat...\";\n z = g.get(\"divebar_group_new_button_name\", z);\n var aa = [];\n if (this.props.showNewGroupsButton) {\n aa.push(p.DOM.li({\n className: ((((\"-cx-PRIVATE-fbChatGroupThreadlist__item\") + ((\" \" + \"-cx-PRIVATE-chatSidebarItem__noborder\"))) + ((this.props.offlineItems ? (\" \" + \"-cx-PRIVATE-chatSidebarItem__offlineitem\") : \"\")))),\n key: \"new\"\n }, j({\n images: y,\n imageSize: x,\n litestandSidebar: this.props.litestandSidebar,\n name: z\n })));\n };\n var ba = {\n };\n for (var ca in v) {\n var da = v[ca], ea = da.participants.map(function(ia) {\n return ((w || {\n }))[ia];\n }).filter(function(ia) {\n return ia;\n }), fa = da.participants.map(function(ia) {\n return n.getUserID(ia);\n }), ga = fa.sort().join(\"|\");\n if ((!ba[ga] && ea.length)) {\n ba[ga] = 1;\n var ha = l.getServerThreadIDNow(ca);\n aa.push(p.DOM.li({\n className: ((((\"-cx-PRIVATE-fbChatGroupThreadlist__groupchat\") + ((\" \" + \"-cx-PRIVATE-fbChatGroupThreadlist__item\"))) + ((this.props.offlineItems ? (\" \" + \"-cx-PRIVATE-chatSidebarItem__offlineitem\") : \"\")))),\n \"data-serverthreadid\": ha,\n \"data-threadid\": ca,\n key: ca\n }, k({\n image: da.image_src,\n imageSize: x,\n litestandSidebar: this.props.litestandSidebar,\n name: da.name,\n participants: ea,\n status: o.getGroup(fa),\n threadID: ca,\n unreadCount: da.unread_count\n })));\n }\n ;\n };\n return p.DOM.ul(null, aa);\n },\n getInitialState: function() {\n return {\n };\n },\n componentWillMount: function() {\n var v = function() {\n this.setState(this._calculateState());\n }.bind(this);\n this.token = h.subscribe(\"update\", v);\n v();\n },\n componentWillUnmount: function() {\n (this.token && this.token.unsubscribe());\n this.token = null;\n },\n _calculateState: function() {\n var v = false, w = {\n }, x = {\n }, y = h.getThreadIDs(), z = y.length;\n y.forEach(function(ba) {\n m.getThreadMeta(ba, function(ca) {\n x[ba] = ca;\n n.getMulti(ca.participants, function(da) {\n delete da[n.user];\n if (v) {\n this.setState(this._calculateState());\n }\n else q(w, da);\n ;\n z--;\n }.bind(this));\n }.bind(this));\n }.bind(this));\n if ((z === 0)) {\n return {\n threadData: x,\n participantData: w\n };\n }\n else {\n v = true;\n var aa = (this.state || {\n });\n return {\n threadData: q(aa.threadData, x),\n participantData: q(aa.participantData, w)\n };\n }\n ;\n }\n });\n e.exports = u;\n});\n__d(\"runAfterScrollingStops\", [\"Arbiter\",\"Event\",\"Run\",\"debounceAcrossTransitions\",\"emptyFunction\",\"throttle\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"Event\"), i = b(\"Run\"), j = b(\"debounceAcrossTransitions\"), k = b(\"emptyFunction\"), l = b(\"throttle\");\n function m(x, y, z) {\n if ((y && p[y])) {\n return\n };\n if (!o) {\n g.subscribe(\"page_transition\", w);\n o = true;\n }\n ;\n if (!n) {\n x();\n return;\n }\n ;\n (y && (p[y] = 1));\n q.push(x);\n if (!z) {\n if (s) {\n i.onLeave(w);\n s = false;\n }\n ;\n r.push((q.length - 1));\n }\n ;\n };\n var n, o, p = {\n }, q = [], r = [], s = true, t = 500, u = j(function() {\n n = false;\n var x = q;\n q = [];\n r = [];\n p = {\n };\n for (var y = 0, z = x.length; (y < z); ++y) {\n x[y]();;\n };\n }, t);\n function v() {\n n = true;\n u();\n };\n function w() {\n var x = r;\n r = [];\n s = true;\n for (var y = 0, z = x.length; (y < z); ++y) {\n q[x[y]] = k;;\n };\n };\n h.listen(window, \"scroll\", l.acrossTransitions(v, 250));\n e.exports = m;\n});\n__d(\"ChatOrderedList\", [\"Animation\",\"Arbiter\",\"ArbiterMixin\",\"AsyncDialog\",\"AsyncRequest\",\"AvailableList\",\"AvailableListConstants\",\"Bootloader\",\"CSS\",\"ChannelImplementation\",\"Chat\",\"ChatConfig\",\"ChatContexts\",\"ChatFavoriteList\",\"ChatFavoriteNux\",\"ChatGroupThreadsController\",\"ChatOrderedListHover\",\"ChatQuietLinks\",\"ChatSidebarThreadlist.react\",\"ChatTypeaheadConstants\",\"ChatVisibility\",\"DOM\",\"DataStore\",\"Ease\",\"Event\",\"ImageSourceRequest\",\"ImageSourceType\",\"JSLogger\",\"JSXDOM\",\"LastMobileActiveTimes\",\"MercuryParticipantTypes\",\"MercuryThreadInformer\",\"MercuryThreads\",\"OrderedFriendsList\",\"Parent\",\"PhotoResizeModeConst\",\"PresencePrivacy\",\"PresenceStatus\",\"React\",\"Rect\",\"ShortProfiles\",\"Style\",\"Tooltip\",\"TokenizeUtil\",\"URI\",\"Vector\",\"XHPTemplate\",\"copyProperties\",\"createObjectFrom\",\"csx\",\"cx\",\"debounceAcrossTransitions\",\"guid\",\"requestAnimationFrame\",\"runAfterScrollingStops\",\"shield\",\"throttle\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"Arbiter\"), i = b(\"ArbiterMixin\"), j = b(\"AsyncDialog\"), k = b(\"AsyncRequest\"), l = b(\"AvailableList\"), m = b(\"AvailableListConstants\"), n = b(\"Bootloader\"), o = b(\"CSS\"), p = b(\"ChannelImplementation\").instance, q = b(\"Chat\"), r = b(\"ChatConfig\"), s = b(\"ChatContexts\"), t = b(\"ChatFavoriteList\"), u = b(\"ChatFavoriteNux\"), v = b(\"ChatGroupThreadsController\"), w = b(\"ChatOrderedListHover\"), x = b(\"ChatQuietLinks\"), y = b(\"ChatSidebarThreadlist.react\"), z = b(\"ChatTypeaheadConstants\"), aa = b(\"ChatVisibility\"), ba = b(\"DOM\"), ca = b(\"DataStore\"), da = b(\"Ease\"), ea = b(\"Event\"), fa = b(\"ImageSourceRequest\"), ga = b(\"ImageSourceType\"), ha = b(\"JSLogger\"), ia = b(\"JSXDOM\"), ja = b(\"LastMobileActiveTimes\"), ka = b(\"MercuryParticipantTypes\"), la = b(\"MercuryThreadInformer\").get(), ma = b(\"MercuryThreads\").get(), na = b(\"OrderedFriendsList\"), oa = b(\"Parent\"), pa = b(\"PhotoResizeModeConst\"), qa = b(\"PresencePrivacy\"), ra = b(\"PresenceStatus\"), sa = b(\"React\"), ta = b(\"Rect\"), ua = b(\"ShortProfiles\"), va = b(\"Style\"), wa = b(\"Tooltip\"), xa = b(\"TokenizeUtil\"), ya = b(\"URI\"), za = b(\"Vector\"), ab = b(\"XHPTemplate\"), bb = b(\"copyProperties\"), cb = b(\"createObjectFrom\"), db = b(\"csx\"), eb = b(\"cx\"), fb = b(\"debounceAcrossTransitions\"), gb = b(\"guid\"), hb = b(\"requestAnimationFrame\"), ib = b(\"runAfterScrollingStops\"), jb = b(\"shield\"), kb = b(\"throttle\"), lb = b(\"tx\"), mb = r.get(\"chat_ranked_by_coefficient\", 0), nb = null, ob, pb, qb = 9;\n function rb(yb, zb, ac, bc, cc, dc) {\n this._isSidebar = yb;\n this._isLitestand = (r.get(\"litestand\", 0) || r.get(\"test_litestand_sidebar\", 0));\n this._isLitestandSidebar = (this._isSidebar && this._isLitestand);\n this._isLeftCollapsedSidebar = !!oa.byClass(zb, \"-cx-PUBLIC-litestandLeftSidebar__root\");\n this._root = zb;\n this._itemsMap = {\n };\n this._isVisible = false;\n this._excludedIds = {\n };\n this._numTopFriends = 5;\n this._hasRendered = false;\n this._preventRendering = false;\n this._hoverController = null;\n this._template = ac;\n this._messageTemplate = bc;\n this._favoriteMode = r.get(\"divebar_favorite_list\", 0);\n this._contextualDialog = cc;\n this._cachedItemHeight = null;\n this._cachedItemPadding = null;\n if ((dc && ba.scry(dc, \".-cx-PRIVATE-litestandSidebarPYMK__unit\").length)) {\n o.show(dc);\n this._pymk = dc;\n }\n ;\n this._usePlaceholder = (this._isLitestand && this._isSidebar);\n if (r.get(\"groups_in_divebar\")) {\n this._groupThreadsNode = ia.li({\n className: \"-cx-PRIVATE-fbChatOrderedList__groupthreads\"\n });\n this._updateGroupThreads();\n this._groupsList = (this._favoriteMode && ba.find(this._root, \".-cx-PRIVATE-fbChat__groupslist\"));\n }\n ;\n if (this._favoriteMode) {\n this._favoriteSidebar = ba.find(this._root, \".-cx-PUBLIC-fbChatOrderedList__favoritesidebar\");\n this._editButton = ba.scry(this._root, \".-cx-PRIVATE-fbChatOrderedList__friendsstickyarea .-cx-PRIVATE-fbChat__editbutton\")[0];\n this._favoriteList = ba.find(this._root, \".-cx-PRIVATE-fbChat__favoritelist\");\n this._activeNowList = ba.find(this._root, \".-cx-PRIVATE-fbChat__activenowlist\");\n this._activeNowLabel = ba.scry(this._root, \".-cx-PRIVATE-fbChatOrderedList__activenowlabel\")[0];\n if (this._activeNowLabel) {\n this._activeNowArea = oa.byClass(this._activeNowLabel, \"-cx-PRIVATE-fbChatOrderedList__activenowlabelcontainer\");\n };\n }\n ;\n this._orderedList = ba.find(this._root, \".fbChatOrderedList\");\n this._scrollableOrderedList = oa.byClass(this._root, \"scrollableOrderedList\");\n this._chatSidebar = oa.byClass(this._root, \"fbChatSidebar\");\n this._scrollableArea = oa.byClass(this._root, \"scrollable\");\n ea.listen(this._root, \"click\", this._onClick.bind(this));\n ea.listen(this._root, \"mouseenter\", this._mouseEnter.bind(this));\n ea.listen(this._root, \"mouseleave\", this._mouseLeave.bind(this));\n if (this._editButton) {\n ea.listen(this._editButton, \"click\", this.toggleEditMode.bind(this));\n h.subscribe([\"LitestandSidebarBookmarks/close\",\"LitestandSidebar/collapse\",], this._onEditEnd.bind(this));\n }\n ;\n h.subscribe([\"LitestandSidebar/collapse\",\"LitestandSidebar/expand\",], function(event) {\n if (this._isLitestandSidebar) {\n this.getHoverController().setPaused((event === \"LitestandSidebar/collapse\"));\n };\n this.render();\n }.bind(this));\n l.subscribe(m.ON_AVAILABILITY_CHANGED, jb(this.update, this));\n qa.subscribe(\"privacy-changed\", jb(this.update, this));\n p.subscribe([p.CONNECTED,p.RECONNECTING,p.SHUTDOWN,p.MUTE_WARNING,p.UNMUTE_WARNING,], jb(this.update, this));\n this.inform(\"initialized\", this, h.BEHAVIOR_PERSISTENT);\n this.render();\n h.subscribe(ha.DUMP_EVENT, function(ec, fc) {\n fc.chat_lists = (fc.chat_lists || {\n sorted_list: this.getCachedSortedList(),\n ordered_list: na.getList(),\n available_list: rb.getAvailableList(this._excludedIds),\n excluded_list: this._excludedIds\n });\n }.bind(this));\n h.subscribe(\"ChatOrderedList/itemHeightChange\", function() {\n this._cachedItemHeight = null;\n this._cachedItemPadding = null;\n }.bind(this));\n this._renderUnreadCount = r.get(\"divebar_message_count\");\n if (this._renderUnreadCount) {\n la.subscribe(\"threads-updated\", function(ec, fc) {\n for (var gc in fc) {\n var hc = ma.getCanonicalUserInThread(gc);\n if (((!this._renderedTopUsers || !((hc in this._renderedTopUsers))) || !this._itemsMap[hc])) {\n continue;\n };\n ma.getThreadMeta(gc, function(ic) {\n var jc = (ic && ic.unread_count);\n this._updateUnreadCount(hc, jc);\n }.bind(this));\n };\n }.bind(this));\n };\n };\n function sb(yb, zb) {\n var ac = tb(yb, zb);\n if ((ac !== 0)) {\n return ac\n };\n if (!mb) {\n var bc = wb(yb, zb);\n if ((bc !== 0)) {\n return bc\n };\n }\n ;\n return na.compare(yb, zb);\n };\n function tb(yb, zb) {\n var ac = qa.allows(yb), bc = qa.allows(zb);\n if ((ac !== bc)) {\n return (ac ? -1 : 1)\n };\n return 0;\n };\n var ub = {\n };\n function vb(yb) {\n return (ub[yb] || (ub[yb] = xa.flatten(yb)));\n };\n function wb(yb, zb) {\n var ac = ua.getNowUnsafe(yb), bc = ua.getNowUnsafe(zb), cc = vb((((ac || {\n })).name || \"~\")), dc = vb((((bc || {\n })).name || \"~\"));\n if ((cc !== dc)) {\n return ((cc < dc) ? -1 : 1)\n };\n return 0;\n };\n function xb(yb, zb) {\n var ac = (l.get(yb) === m.MOBILE), bc = (l.get(zb) === m.MOBILE);\n if ((ac !== bc)) {\n return (bc ? -1 : 1)\n };\n return wb(yb, zb);\n };\n bb(rb, {\n CONTEXT_CLASSES: {\n nearby: \"-cx-PRIVATE-fbChatOrderedList__contextnearby\",\n visiting: \"-cx-PRIVATE-fbChatOrderedList__contextvisiting\",\n neighbourhood: \"-cx-PRIVATE-fbChatOrderedList__contextneighbourhood\",\n listening: \"-cx-PRIVATE-fbChatOrderedList__contextlistening\"\n },\n getSortedList: function(yb, zb) {\n var ac = na.getList().filter(function(dc) {\n return (!((dc in yb)) && (qa.getFriendVisibility(dc) !== qa.BLACKLISTED));\n }), bc = [];\n if (!aa.isOnline()) {\n Array.prototype.push.apply(bc, ac);\n }\n else {\n if ((qa.getOnlinePolicy() === qa.ONLINE_TO_WHITELIST)) {\n ac = this._filterByWhitelist(ac);\n };\n if (r.get(\"chat_web_ranking_with_presence\")) {\n Array.prototype.push.apply(bc, ac);\n }\n else bc = this._splitOutTopFriends(ac, zb);\n ;\n }\n ;\n bc = bc.slice(0, zb);\n if ((bc.length === zb)) {\n var cc = rb.getAvailableList(bc.concat(yb)).length;\n (cc && bc.splice(-1));\n }\n ;\n if (!r.get(\"chat_web_ranking_with_presence\")) {\n bc.sort(sb);\n };\n nb = bc.slice();\n return bc;\n },\n _filterByWhitelist: function(yb) {\n var zb = yb, ac = {\n }, bc, cc;\n yb = [];\n for (bc = 0; (bc < zb.length); ++bc) {\n cc = zb[bc];\n if (qa.allows(cc)) {\n ac[cc] = true;\n yb.push(cc);\n }\n ;\n };\n var dc = qa.getWhitelist();\n for (bc = 0; (bc < dc.length); ++bc) {\n cc = dc[bc];\n if (!((cc in ac))) {\n yb.push(cc);\n };\n };\n for (bc = 0; (bc < zb.length); ++bc) {\n cc = zb[bc];\n if (!qa.allows(cc)) {\n yb.push(cc);\n };\n };\n return yb;\n },\n _splitOutTopFriends: function(yb, zb) {\n var ac = [], bc = [], cc = r.get(\"ordered_list.top_friends\", 0), dc = r.get(\"ordered_list.top_mobile\", 0), ec = zb, fc = yb.length;\n for (var gc = 0; ((gc < fc) && (ec > 0)); gc++) {\n var hc = yb[gc], ic = l.get(hc), jc = (ic === m.ACTIVE);\n if (((jc || (((ic === m.MOBILE) && (gc < dc)))) || (gc < cc))) {\n ac.push(hc);\n (jc && ec--);\n }\n else bc.push(hc);\n ;\n };\n if ((gc < fc)) {\n Array.prototype.push.apply(bc, yb.slice(gc));\n };\n if ((ac.length < zb)) {\n Array.prototype.push.apply(ac, bc);\n };\n return ac;\n },\n getAvailableList: function(yb) {\n var zb;\n if ((r.get(\"divebar_show_mobile_more_friends\") || r.get(\"divebar_show_mobile_more_friends_alphabetical\"))) {\n zb = l.getAvailableIDs();\n };\n if (!zb) {\n zb = l.getOnlineIDs();\n };\n return zb.filter(function(ac) {\n return !((ac in yb));\n });\n },\n _pause: function() {\n pb = true;\n },\n _unpause: function() {\n pb = false;\n },\n _registerToggleRenderItem: function(yb) {\n ea.listen(yb, \"click\", function() {\n pb = !pb;\n o.conditionClass(yb, \"checked\", pb);\n });\n }\n });\n bb(rb.prototype, i, {\n getAllNodes: function() {\n var yb = {\n }, zb = ba.scry(this._root, \"li.-cx-PRIVATE-fbChatOrderedList__item\");\n for (var ac = 0; (ac < zb.length); ac++) {\n var bc = ca.get(zb[ac], \"id\");\n if (bc) {\n yb[bc] = zb[ac];\n };\n };\n return yb;\n },\n getShowingUsers: function() {\n return ba.scry(this._root, \"li.-cx-PRIVATE-fbChatOrderedList__item,li.-cx-PRIVATE-fbChatGroupThreadlist__groupchat\").map(this.getUserForNode);\n },\n getUserForNode: function(yb) {\n return (ca.get(yb, \"id\") || ca.get(yb, \"serverthreadid\"));\n },\n getHoverController: function() {\n if (!this._hoverController) {\n this._hoverController = new w(this, this._contextualDialog);\n if ((this._isLitestandSidebar && this._isLitestandSidebarCollapsed())) {\n this._hoverController.setPaused(true);\n };\n }\n ;\n return this._hoverController;\n },\n _isLitestandSidebarCollapsed: function() {\n if (this._isLeftCollapsedSidebar) {\n return true\n };\n if (ob) {\n return !ob.isExpanded()\n };\n n.loadModules([\"LitestandSidebar\",], function(yb) {\n ob = yb;\n });\n return o.hasClass(document.documentElement, \"-cx-PUBLIC-hasLitestandBookmarksSidebar__collapsed\");\n },\n getPaddingOffset: function() {\n return (this._favoriteMode ? 24 : 8);\n },\n _calculateItemMeasurements: function() {\n var yb = this._orderedList, zb = this._template.build(), ac = zb.getRoot();\n ba.setContent(zb.getNode(\"name\"), \"test\");\n if (this._favoriteSidebar) {\n yb = this._favoriteList;\n o.addClass(this._favoriteSidebar, \"-cx-PRIVATE-fbChatOrderedList__measure\");\n }\n ;\n ac.style.visibility = \"hidden\";\n ba.appendContent(yb, ac);\n this._cachedItemHeight = za.getElementDimensions(ac).y;\n this._cachedItemPadding = (va.getFloat(zb.getNode(\"anchor\"), \"padding\") || 0);\n ba.remove(ac);\n if (this._favoriteSidebar) {\n o.removeClass(this._favoriteSidebar, \"-cx-PRIVATE-fbChatOrderedList__measure\");\n };\n },\n getItemHeight: function() {\n if ((this._cachedItemHeight === null)) {\n this._calculateItemMeasurements();\n };\n return this._cachedItemHeight;\n },\n getItemPadding: function() {\n if ((this._cachedItemPadding === null)) {\n this._calculateItemMeasurements();\n };\n return this._cachedItemPadding;\n },\n _updateGroupThreads: function() {\n if (this._groupThreadsNode) {\n var yb = qa.getVisibility(), zb = y({\n offlineItems: (p.disconnected() || !yb),\n litestandSidebar: ((this._isSidebar && this._isLitestand) && !r.get(\"test_old_divebar\")),\n showNewGroupsButton: r.get(\"divebar_has_new_groups_button\", false)\n });\n sa.renderComponent(zb, this._groupThreadsNode);\n }\n ;\n },\n _placeholderUpdate: function() {\n if ((!this._usePlaceholder || !this._scrollContainer)) {\n return\n };\n var yb = (this._root.offsetTop - this._scrollContainer.scrollTop);\n this._scrollContainerHeight = (this._scrollContainerHeight || this._scrollContainer.offsetHeight);\n var zb = this.getItemHeight(), ac = Math.ceil((this._scrollContainerHeight / zb)), bc = ((yb < 0) ? Math.max((Math.floor((-yb / zb)) - ac), 0) : 0), cc = ((bc + ac) + ac);\n this._cachedItems = (this._cachedItems || ba.scry(this._root, \"li.-cx-PRIVATE-fbChatOrderedList__item\"));\n for (var dc = 0, ec = this._cachedItems.length; (dc < ec); dc++) {\n o.conditionClass(this._cachedItems[dc], \"-cx-PRIVATE-fbChatOrderedList__hiddenitem\", ((dc < bc) || (dc > cc)));;\n };\n },\n _getListItem: function(yb, zb) {\n var ac = this._itemsMap[yb];\n if (!ac) {\n return\n };\n var bc = l.get(yb), cc = ra.isBirthday(yb), dc = (qa.allows(yb) && !p.disconnected());\n if ((ac.buttonNode === undefined)) {\n ac.buttonNode = ba.scry(ac.node, \".-cx-PRIVATE-fbChat__favoritebutton\")[0];\n ac.contextNode = ba.find(ac.node, \".-cx-PRIVATE-fbChatOrderedList__context\");\n ac.timeNode = ba.scry(ac.node, \".active_time\")[0];\n ac.statusNodes = ba.scry(ac.node, \"img.status\");\n }\n ;\n o.conditionClass(ac.node, \"-cx-PRIVATE-fbChatOrderedList__isfavorite\", zb);\n o.conditionClass(ac.node, \"-cx-PRIVATE-fbChat__isfavorite\", zb);\n o.conditionClass(ac.node, \"-cx-PRIVATE-litestandSidebarFavorites__favorite\", (this._isLitestand && zb));\n if (ac.buttonNode) {\n if (!this._isLitestand) {\n o.conditionClass(ac.buttonNode, \"-cx-PRIVATE-fbChatOrderedList__remove\", zb);\n o.conditionClass(ac.buttonNode, \"-cx-PRIVATE-fbChatOrderedList__add\", !zb);\n }\n \n };\n var ec = {\n active: false,\n mobile: false,\n birthday: false\n };\n ec.active = (bc === m.ACTIVE);\n ec.mobile = (bc === m.MOBILE);\n ec.birthday = cc;\n if (ec.mobile) {\n var fc = ja.getShortDisplay(yb);\n if ((ac.timeNode && (ac.lastActiveTime !== fc))) {\n ac.lastActiveTime = fc;\n ba.setContent(ac.timeNode, fc);\n }\n ;\n }\n else if (ac.lastActiveTime) {\n ac.lastActiveTime = null;\n ba.empty(ac.timeNode);\n }\n \n ;\n for (var gc in ec) {\n o.conditionClass(ac.node, gc, (ec[gc] && dc));;\n };\n o.conditionClass(ac.node, \"invis\", !dc);\n ac.statusNodes.forEach(function(hc) {\n if (((bc === m.ACTIVE) && dc)) {\n hc.alt = \"Online\";\n }\n else if (((bc === m.MOBILE) && dc)) {\n hc.alt = \"Mobile\";\n }\n else hc.alt = \"\";\n \n ;\n });\n this._applyContext(yb, ac);\n return ac.node;\n },\n getRoot: function() {\n return this._root;\n },\n getSortedList: function(yb) {\n return rb.getSortedList((yb || this._excludedIds), this._numTopFriends);\n },\n getCachedSortedList: function(yb) {\n if ((nb == null)) {\n nb = this.getSortedList(yb);\n };\n return nb;\n },\n toggleFavoriteSidebar: function(yb, zb) {\n function ac(dc, ec) {\n o.conditionShow(ec, dc);\n var fc = oa.byClass(ec, \"uiContextualLayerPositioner\");\n (fc && o.conditionShow(fc, dc));\n };\n o.conditionShow(this._orderedList, !yb);\n if (this._favoriteSidebar) {\n o.conditionShow(this._favoriteSidebar, yb);\n };\n var bc = ba.scry((this._scrollableOrderedList || this._root), \".-cx-PRIVATE-fbChatOrderedList__stickyarea\");\n bc.forEach(ac.curry(yb));\n var cc = ba.scry((this._scrollableOrderedList || this._root), \".-cx-PRIVATE-fbChatOrderedList__groupsstickyarea\");\n (cc.length && ac(zb, cc[0]));\n },\n hide: function() {\n if (!this._isVisible) {\n return\n };\n this._isVisible = false;\n u.tryHide();\n o.hide((this._scrollableOrderedList || this._root));\n this.inform(\"hide\");\n },\n _onFavoriteOrderChange: function() {\n var yb = this.sortableGroup.getOrder();\n t.updateList(yb);\n t.save();\n },\n _getFavoriteItems: function() {\n var yb = [], zb = t.get();\n for (var ac = 0; (ac < zb.length); ac++) {\n var bc = this._itemsMap[zb[ac]];\n if (bc) {\n yb.push(bc.node);\n };\n };\n return yb;\n },\n _getChatTabOpenLogData: function(yb) {\n var zb = o.hasClass(document.documentElement, \"sidebarMode\"), ac = {\n mode: (zb ? \"sidebar\" : \"chatNub\"),\n typehead: false\n };\n if ((this._scrollableArea && this._scrollContainer)) {\n var bc = za.getElementPosition(this._scrollableArea, \"viewport\").y, cc = za.getElementPosition(yb, \"viewport\").y, dc = this._scrollContainer.scrollTop;\n if ((cc > bc)) {\n ac.visible_slot = Math.round((((cc - bc)) / 32));\n var ec = Math.round((dc / 32));\n ac.global_slot = (ac.visible_slot + ec);\n }\n ;\n }\n ;\n if (zb) {\n ac.sidebar_height = (this._chatSidebar && this._chatSidebar.clientHeight);\n if (this._scrollContainer) {\n ac.buddylist_height = this._scrollContainer.clientHeight;\n };\n }\n ;\n return ac;\n },\n _resetFavoriteBounds: function() {\n var yb = t.get(), zb = yb.length;\n if (zb) {\n var ac = yb[0], bc = yb[(zb - 1)], cc = this._itemsMap[ac], dc = this._itemsMap[bc], ec = new ta(za.getElementPosition(cc.node).y, 0, (za.getElementPosition(dc.node).y + za.getElementDimensions(dc.node).y), 0);\n this.sortableGroup.setBoundingBox(ec);\n }\n ;\n },\n _createSortableGroup: function() {\n if (this.sortableGroup) {\n this.sortableGroup.destroy();\n };\n n.loadModules([\"SortableGroup\",], function(yb) {\n this.sortableGroup = new yb().setBeforeGrabCallback(this._resetFavoriteBounds.bind(this)).setOrderChangeHandler(this._onFavoriteOrderChange.bind(this));\n if (this._isLitestand) {\n this.sortableGroup.gutter = 1;\n };\n var zb = this._getFavoriteItems();\n for (var ac = 0; (ac < zb.length); ac++) {\n var bc = zb[ac];\n this.sortableGroup.addSortable(ca.get(bc, \"id\"), bc);\n };\n }.bind(this));\n },\n toggleEditMode: function() {\n u.dismissDialog();\n t.toggleEditMode();\n if (t.isEditMode()) {\n this._createSortableGroup();\n ba.setContent(this._editButton, \"DONE\");\n o.addClass(this._favoriteSidebar, \"-cx-PUBLIC-fbChatOrderedList__editfavoritemode\");\n this.inform(\"editStart\");\n }\n else this._onEditEnd();\n ;\n },\n _onEditEnd: function() {\n if (t.isEditMode()) {\n t.toggleEditMode();\n };\n ba.setContent(this._editButton, \"EDIT\");\n o.removeClass(this._favoriteSidebar, \"-cx-PUBLIC-fbChatOrderedList__editfavoritemode\");\n this.inform(\"editEnd\");\n },\n _onClick: function(event) {\n var yb = event.getTarget(), zb = oa.byTag(yb, \"li\");\n if (t.isEditMode()) {\n var ac = oa.byClass(yb, \"-cx-PRIVATE-fbChat__favoritebutton\");\n if ((ac && zb)) {\n var bc = ca.get(zb, \"id\");\n if (bc) {\n t.toggleID(bc);\n t.save();\n }\n ;\n this.update();\n }\n ;\n event.prevent();\n return false;\n }\n ;\n if (zb) {\n if (o.hasClass(zb, \"blackbirdWhitelist\")) {\n var cc = new ya(\"/ajax/chat/privacy/settings_dialog.php\").addQueryData({\n ref: \"whitelist_separator\"\n });\n j.send(new k(cc));\n event.prevent();\n return false;\n }\n ;\n var dc = ca.get(zb, \"id\"), ec = o.hasClass(zb, \"-cx-PRIVATE-fbChatGroupThreadlist__item\");\n if ((dc || ec)) {\n var fc = this._getChatTabOpenLogData(zb), gc = o.hasClass(document.documentElement, \"sidebarMode\"), hc = (qa.getOnlinePolicy() === qa.ONLINE_TO_WHITELIST), ic = (hc ? \"white_list\" : \"ordered_list\");\n if (ec) {\n dc = zb.getAttribute(\"data-threadid\");\n ic = (dc ? \"recent_threads_in_divebar\" : \"recent_threads_in_divebar_new\");\n }\n else if (((gc && this._favoriteMode) && !hc)) {\n while (zb.parentNode) {\n zb = zb.parentNode;\n if (o.hasClass(zb, \"-cx-PRIVATE-fbChatOrderedList__activenowlist\")) {\n ic = \"more_online_friends\";\n break;\n }\n ;\n if (o.hasClass(zb, \"-cx-PRIVATE-fbChatOrderedList__favoritelist\")) {\n break;\n };\n };\n }\n else while (zb.previousSibling) {\n zb = zb.previousSibling;\n if (o.hasClass(zb, \"-cx-PRIVATE-fbChatOrderedList__friendsseparator\")) {\n if (o.hasClass(zb, \"moreOnlineFriends\")) {\n ic = \"more_online_friends\";\n break;\n }\n ;\n if (o.hasClass(zb, \"blackbirdWhitelist\")) {\n ic = \"blackbird_offline_section\";\n break;\n }\n ;\n }\n ;\n }\n \n ;\n fc.source = ic;\n var jc = (ec ? z.THREAD_TYPE : ka.FRIEND);\n q.openTab(dc, jc, fc);\n this.inform(\"click\", {\n id: dc\n });\n }\n else if ((o.hasClass(zb, \"-cx-PRIVATE-fbChatOrderedList__friendsseparator\") && oa.byClass(yb, \"-cx-PRIVATE-fbChatOrderedList__separatorinner\"))) {\n this.scrollTo(zb);\n }\n else if (o.hasClass(zb, \"-cx-PRIVATE-litestandSidebarPYMK__root\")) {\n return\n }\n \n ;\n return false;\n }\n ;\n },\n _mouseEnter: function() {\n this._preventRendering = true;\n },\n _mouseLeave: function() {\n this._preventRendering = false;\n },\n setExcludedIds: function(yb) {\n this._excludedIds = cb((yb || []));\n },\n setNumTopFriends: function(yb) {\n if ((yb !== this._numTopFriends)) {\n this._numTopFriends = yb;\n this.render();\n }\n ;\n },\n _getOfflineToSectionItems: function() {\n var yb = (\"subheader-text-\" + gb()), zb = ba.create(\"a\", {\n href: \"#\",\n \"aria-describedby\": yb\n }, ba.tx._(\"Edit\")), ac = [], bc = ba.tx._(\"MORE FRIENDS\");\n ac.push(ia.li({\n className: \"-cx-PRIVATE-fbChatOrderedList__friendsseparator\"\n }, ia.div({\n className: \"-cx-PRIVATE-fbChatOrderedList__separatorouter\"\n }, ia.div({\n className: \"-cx-PRIVATE-fbChatOrderedList__separatorinner\"\n }, ia.span({\n className: \"-cx-PRIVATE-fbChatOrderedList__separatortext\"\n }, bc), ia.div({\n className: \"-cx-PRIVATE-fbChatOrderedList__separatordive\"\n }, ia.span({\n className: \"-cx-PRIVATE-fbChatOrderedList__separatorbar\"\n }))))));\n ac.push(ia.li({\n className: \"-cx-PRIVATE-fbChatOrderedList__friendsseparator blackbirdWhitelist\"\n }, ia.div({\n className: \"-cx-PRIVATE-fbChatOrderedList__separatorouter\"\n }, ia.div({\n className: \"fbChatOrderedList/separatorInner\"\n }, ia.div({\n className: \"fbChatOrderedList/separatorSubheader\"\n }, ia.span({\n id: yb,\n className: \"-cx-PRIVATE-fbChatOrderedList__separatorsubheadertext\"\n }, lb._(\"These friends can't see you on chat. {=link}\", {\n \"=link\": zb\n })))))));\n return ac;\n },\n _renderOrderedList: function() {\n if (((!this._isVisible || ((this._preventRendering && this._hasRendered))) || pb)) {\n return\n };\n this._hasRendered = true;\n this._cachedItems = null;\n var yb = [], zb, ac, bc = false, cc = false, dc = r.get(\"divebar_has_new_groups_button\", false), ec = o.hasClass(document.documentElement, \"sidebarMode\"), fc = qa.getVisibility(), gc = (qa.getOnlinePolicy() === qa.ONLINE_TO_WHITELIST), hc = (this._isLitestandSidebar && this._isLitestandSidebarCollapsed()), ic = r.get(\"groups_in_divebar\");\n (ic && this._updateGroupThreads());\n var jc = (ic && v.getThreadIDs().length), kc = (((ec && this._favoriteMode) && fc) && !gc);\n if ((((kc && ic) && jc) && this._groupThreadsNode)) {\n ba.setContent(this._groupsList, this._groupThreadsNode);\n x.nukeLinks(this._groupThreadsNode);\n x.nukeLinks(this._favoriteList);\n this.inform(\"render\");\n }\n ;\n var lc = ((kc && this._groupThreadsNode) && this._groupsList), mc = (lc && jc), nc = (this._isLitestand && !oa.byClass(this._root, \"-cx-PRIVATE-litestandSidebarBookmarks__expanded\"));\n if ((lc && ((jc || (nc && dc))))) {\n ba.setContent(this._groupsList, this._groupThreadsNode);\n o.show(this._groupsList);\n x.nukeLinks(this._favoriteList);\n this.inform(\"render\");\n }\n else (this._groupsList && o.hide(this._groupsList));\n ;\n var oc = (jc || 0);\n if ((dc && ((mc || !kc)))) {\n oc++;\n };\n var pc = [], qc, rc;\n if (kc) {\n (this._chatSidebar && o.addClass(this._chatSidebar, \"fbSidebarFavoriteList\"));\n pc = t.get();\n if (hc) {\n pc = pc.slice(0, Math.max(0, (this._numTopFriends - oc)));\n };\n for (qc = 0, rc = pc.length; (qc < rc); qc++) {\n zb = pc[qc];\n ac = this._getListItem(zb, true);\n if (ac) {\n yb.push(ac);\n }\n else {\n cc = true;\n this._renderListItem(zb, this.update.bind(this));\n }\n ;\n };\n }\n ;\n this.toggleFavoriteSidebar(kc, mc);\n var sc = (hc ? 1 : 0), tc = rb.getSortedList(cb(pc), Math.max(0, (((this._numTopFriends - pc.length) - oc) + sc)));\n if (kc) {\n if ((pc.length && tc.length)) {\n var uc = ba.create(\"li\", {\n className: \"-cx-PRIVATE-fbChatOrderedList__separator\"\n });\n yb.push(uc);\n }\n ;\n }\n else if ((jc || dc)) {\n (this._groupThreadsNode && yb.push(this._groupThreadsNode));\n }\n ;\n var vc = (qa.getVisibility() && (qa.getOnlinePolicy() == qa.ONLINE_TO_WHITELIST));\n for (var wc = 0, xc = tc.length; (wc < xc); wc++) {\n zb = tc[wc];\n if (vc) {\n if (!qa.allows(zb)) {\n if (((wc + 2) >= tc.length)) {\n break;\n };\n vc = false;\n var yc = this._getOfflineToSectionItems();\n yb.push(yc[0]);\n yb.push(yc[1]);\n xc -= 2;\n }\n \n };\n ac = this._getListItem(zb);\n if (ac) {\n yb.push(ac);\n }\n else this._renderListItem(zb, this.render.bind(this));\n ;\n };\n if (kc) {\n ba.setContent(this._favoriteList, yb);\n if (yb.length) {\n x.nukeLinks(this._favoriteList);\n };\n this.inform(\"render\");\n }\n ;\n var zc;\n if (hc) {\n zc = [];\n }\n else zc = rb.getAvailableList(this._excludedIds);\n ;\n var ad = pc.concat(tc), bd = cb(ad);\n zc = zc.filter(function(jd) {\n return !((jd in bd));\n });\n if (this._renderUnreadCount) {\n var cd = [];\n if (this._renderedTopUsers) {\n var dd = Object.keys(this._renderedTopUsers).filter(function(jd) {\n return !((jd in bd));\n });\n dd.forEach(function(jd) {\n this._updateUnreadCount(jd, 0);\n }.bind(this));\n ad.forEach(function(jd) {\n if (!((jd in this._renderedTopUsers))) {\n cd.push(jd);\n };\n }.bind(this));\n }\n else cd = ad;\n ;\n cd.forEach(function(jd) {\n ma.getThreadMeta(ma.getThreadIdForUser(jd), function(kd) {\n this._updateUnreadCount(jd, (kd && kd.unread_count));\n }.bind(this));\n }.bind(this));\n this._renderedTopUsers = bd;\n }\n ;\n if (r.get(\"divebar_show_mobile_more_friends_alphabetical\")) {\n zc.sort(wb);\n }\n else zc.sort(xb);\n ;\n var ed = \"MORE FRIENDS\";\n if (kc) {\n yb = [];\n }\n else if ((zc.length && yb.length)) {\n var fd;\n if (this._isLitestand) {\n fd = ia.span(null, ia.span({\n className: \"-cx-PRIVATE-fbChatOrderedList__separatorfulltext\"\n }, ed, \" \\u00b7 \", zc.length), ia.span({\n className: \"-cx-PRIVATE-fbChatOrderedList__separatorcollapsedtext\"\n }, \" +\", zc.length));\n }\n else fd = lb._(\"{MORE ONLINE FRIENDS} ({=count})\", {\n \"MORE ONLINE FRIENDS\": ed,\n \"=count\": zc.length\n });\n ;\n if (this._pymk) {\n bc = true;\n yb.push(this._pymk);\n }\n ;\n yb.push(ia.li({\n className: \"-cx-PRIVATE-fbChatOrderedList__friendsseparator moreOnlineFriends\"\n }, ia.div({\n className: \"-cx-PRIVATE-fbChatOrderedList__separatorouter\"\n }, ia.div({\n className: \"-cx-PRIVATE-fbChatOrderedList__separatorinner\"\n }, ia.span({\n className: \"-cx-PRIVATE-fbChatOrderedList__separatortext\"\n }, fd), ia.div({\n className: \"-cx-PRIVATE-fbChatOrderedList__separatordive\"\n }, ia.span({\n className: \"-cx-PRIVATE-fbChatOrderedList__separatorbar\"\n }))))));\n }\n \n ;\n for (qc = 0, rc = zc.length; (qc < rc); qc++) {\n zb = zc[qc];\n ac = this._getListItem(zb);\n if (ac) {\n yb.push(ac);\n }\n else this._renderListItem(zb, this.render.bind(this));\n ;\n };\n if (((!tc.length && !zc.length) && !oc)) {\n var gd = this._messageTemplate.render(), hd = ab.getNode(gd, \"message\");\n ba.setContent(hd, \"No one is available to chat.\");\n yb.push(gd);\n }\n ;\n if (yb.length) {\n if (kc) {\n o.show(this._activeNowList);\n if (this._activeNowLabel) {\n var id;\n o.show(this._activeNowArea);\n if (this._isLitestand) {\n id = ia.span(null, ia.span({\n className: \"-cx-PRIVATE-fbChatOrderedList__separatorfulltext\"\n }, ed, \" \\u00b7 \", zc.length), ia.span({\n className: \"-cx-PRIVATE-fbChatOrderedList__separatorcollapsedtext\"\n }, \" +\", zc.length));\n }\n else id = lb._(\"{MORE ONLINE FRIENDS} ({=count})\", {\n \"MORE ONLINE FRIENDS\": \"ACTIVE NOW\",\n \"=count\": zc.length\n });\n ;\n ba.setContent(this._activeNowLabel, id);\n }\n ;\n ba.setContent(this._activeNowList, yb);\n x.nukeLinks(this._activeNowList);\n }\n else {\n if ((this._pymk && !bc)) {\n yb.push(this._pymk);\n };\n ba.setContent(this._orderedList, yb);\n if (this._pymk) {\n x.removeMessagesHrefs(this.getRoot());\n }\n else x.nukeLinks(this.getRoot());\n ;\n }\n ;\n this.inform(\"render\");\n this._placeholderUpdate();\n if (!this._renderingAfterScroll) {\n this._renderingAfterScroll = true;\n this.render = fb(ib.curry(this._renderOrderedList.bind(this), \"ChatOrderedList/render\", true), 300);\n }\n ;\n }\n else if (kc) {\n o.hide(this._activeNowList);\n if (this._activeNowArea) {\n o.hide(this._activeNowArea);\n };\n }\n \n ;\n if (kc) {\n (this._editButton && u.tryShow(this._editButton));\n }\n else u.tryHide();\n ;\n if ((kc && !cc)) {\n if ((t.isEditMode() && t.hasChanged())) {\n this._createSortableGroup();\n }\n };\n },\n render: function() {\n this.render = fb(this._renderOrderedList.bind(this), 300);\n this.render();\n },\n _renderListItem: function(yb, zb) {\n ua.get(yb, function(ac) {\n var bc = this._template.render(), cc = ab.getNode(bc, \"profile-photo\");\n if (r.get(\"chat_use_client_side_image_requests\", 0)) {\n var dc = (this._isLitestand ? 24 : 28);\n new fa().setFBID(ac.id).setType(ga.PROFILE_PICTURE).setDimensions(dc, dc).setResizeMode(pa.COVER).setCallback(function(ic) {\n cc.setAttribute(\"src\", ic.uri);\n }).send();\n }\n else cc.setAttribute(\"src\", ac.thumbSrc);\n ;\n var ec = ab.getNode(bc, \"name\");\n ba.setContent(ec, ac.name);\n var fc = ab.getNode(bc, \"accessible-name\");\n ba.setContent(fc, ac.name);\n var gc = ab.getNode(bc, \"anchor\");\n gc.setAttribute(\"href\", (\"/messages/\" + yb));\n var hc = ab.getNode(bc, \"tooltip\");\n (hc && wa.set(hc, ac.name, \"right\"));\n ca.set(bc, \"id\", yb);\n this._itemsMap[yb] = {\n node: bc\n };\n (zb && zb(bc));\n }.bind(this));\n },\n _updateUnreadCount: function(yb, zb) {\n var ac = this._itemsMap[yb];\n if (!ac) {\n return\n };\n if (this._isSidebar) {\n this._unreadMessages = (this._unreadMessages || {\n });\n if (!!zb) {\n this._unreadMessages[yb] = true;\n }\n else delete this._unreadMessages[yb];\n ;\n h.inform(\"buddylist-nub/updateCount\", {\n count: Object.keys(this._unreadMessages).length\n });\n }\n ;\n ac.unreadCount = (ac.unreadCount || ba.find(ac.node, \".-cx-PRIVATE-fbChatOrderedList__unreadcount\"));\n zb = (zb ? zb : 0);\n ba.setContent(ac.unreadCount, ((zb > qb) ? (qb + \"+\") : zb));\n o.conditionClass(ac.unreadCount, \"-cx-PRIVATE-fbChatOrderedList__largecount\", (zb > qb));\n o.conditionClass(ac.node, \"-cx-PRIVATE-fbChatOrderedList__hasunreadcount\", zb);\n },\n show: function() {\n if (this._isVisible) {\n return\n };\n this._isVisible = true;\n o.show((this._scrollableOrderedList || this._root));\n this.render();\n this.inform(\"show\");\n },\n isVisible: function() {\n return this._isVisible;\n },\n update: function() {\n this._hasRendered = false;\n if (!this._renderRequest) {\n this._renderRequest = hb(function() {\n this.render();\n this._renderRequest = null;\n }.bind(this));\n };\n },\n setScrollContainer: function(yb) {\n if (ba.contains(yb, this._root)) {\n this._scrollContainer = yb;\n if (this._usePlaceholder) {\n ea.listen(yb, \"scroll\", kb.acrossTransitions(this._placeholderUpdate.bind(this)));\n ea.listen(window, \"resize\", kb.acrossTransitions(function() {\n this._scrollContainerHeight = null;\n this._placeholderUpdate();\n }.bind(this), 250));\n }\n ;\n }\n ;\n },\n scrollTo: function(yb) {\n if (!this._scrollContainer) {\n return\n };\n var zb = this._scrollContainer.scrollHeight, ac = this._scrollContainer.clientHeight, bc = this._scrollContainer.scrollTop, cc = Math.min(yb.offsetTop, (zb - ac));\n if ((bc !== cc)) {\n var dc = (this._isLitestand ? 600 : ((Math.abs((cc - bc)) / this._scrollContainer.clientHeight) * 500)), ec = (this._isLitestand ? da.easeOutExpo : g.ease.end);\n new g(this._scrollContainer).to(\"scrollTop\", cc).ease(ec).duration(dc).go();\n }\n ;\n },\n _applyContext: function(yb, zb) {\n var ac = (s.getShortDisplay(yb) || \"\");\n if (zb.contextNode) {\n ba.setContent(zb.contextNode, ac);\n o.conditionClass(zb.node, \"-cx-PRIVATE-fbChatOrderedList__hascontext\", ac);\n var bc = s.get(yb), cc = (bc ? bc.type : null);\n for (var dc in rb.CONTEXT_CLASSES) {\n var ec = ((dc === cc)), fc = (rb.CONTEXT_CLASSES[dc] || \"-cx-PRIVATE-fbChatOrderedList__contextother\");\n o.conditionClass(zb.contextNode, fc, ec);\n };\n }\n ;\n }\n });\n e.exports = rb;\n});\n__d(\"TypingDetectorController\", [\"AsyncRequest\",\"AvailableList\",\"AvailableListConstants\",\"ChannelConnection\",\"ChatVisibility\",\"Keys\",\"PresencePrivacy\",\"ShortProfiles\",\"TypingDetector\",\"copyProperties\",\"emptyFunction\",\"shield\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"AvailableList\"), i = b(\"AvailableListConstants\"), j = b(\"ChannelConnection\"), k = b(\"ChatVisibility\"), l = b(\"Keys\"), m = b(\"PresencePrivacy\"), n = b(\"ShortProfiles\"), o = b(\"TypingDetector\"), p = b(\"copyProperties\"), q = b(\"emptyFunction\"), r = b(\"shield\");\n function s(u) {\n if (!k.isOnline()) {\n return false\n };\n if (u) {\n var v = n.getNow(u);\n return ((v && (v.type == \"friend\")) && m.allows(u));\n }\n ;\n return true;\n };\n function t(u, v, w, x, y) {\n this.userID = u;\n this.input = v;\n this.source = w;\n this.threadID = y;\n this.remoteState = o.INACTIVE;\n this.notifyTimer = null;\n x = (x || {\n });\n this.notifyDelay = (x.notifyDelay || this.notifyDelay);\n this._typingDetector = new o(v);\n this._typingDetector.init(x);\n this._typingDetector.subscribe(\"change\", this._stateChange.bind(this));\n };\n p(t.prototype, {\n notifyDelay: 1000,\n setUserAndThread: function(u, v) {\n if (((this.userID !== u) || (this.threadID !== v))) {\n this.resetState();\n this.userID = u;\n this.threadID = v;\n }\n ;\n },\n setIgnoreEnter: function(u) {\n var v = (u ? [l.RETURN,] : []);\n this._typingDetector.setIgnoreKeys(v);\n },\n resetState: function() {\n this.remoteState = t.INACTIVE;\n this._typingDetector.reset();\n clearTimeout(this.notifyTimer);\n this.notifyTimer = null;\n },\n _stateChange: function(u, v) {\n if ((v != o.QUITTING)) {\n clearTimeout(this.notifyTimer);\n this.notifyTimer = r(this._notifyState, this, v).defer(this.notifyDelay, false);\n }\n else this._notifyState(v, true);\n ;\n },\n _notifyState: function(u, v) {\n if ((!this.userID && !this.threadID)) {\n return\n };\n var w = this.userID, x = s(w);\n if ((x && (u != this.remoteState))) {\n this.remoteState = u;\n if (j.disconnected()) {\n return\n };\n var y = {\n typ: u,\n to: w,\n source: this.source,\n thread: this.threadID\n };\n new g().setHandler(this._onTypResponse.bind(this, w)).setErrorHandler(q).setData(y).setURI(\"/ajax/messaging/typ.php\").setAllowCrossPageTransition(true).setOption(\"asynchronous\", !v).send();\n }\n ;\n },\n _onTypResponse: function(u, v) {\n var w = (v.getPayload() || {\n });\n if (w.offline) {\n h.set(u, i.OFFLINE, \"typing_response\");\n };\n }\n });\n e.exports = t;\n});\n__d(\"ChatBehavior\", [\"Arbiter\",\"AvailableList\",\"AvailableListConstants\",\"ChatConfig\",\"copyProperties\",\"MercuryConstants\",\"ChatSidebarCalloutData\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AvailableList\"), i = b(\"AvailableListConstants\"), j = b(\"ChatConfig\"), k = b(\"copyProperties\"), l = b(\"MercuryConstants\").ChatNotificationConstants, m = b(\"ChatSidebarCalloutData\").isShown, n = h.getWebChatNotification(), o = m, p = true, q = k(new g(), {\n ON_CHANGED: \"changed\",\n notifiesUserMessages: function() {\n return (n !== l.NO_USER_MESSAGE_NOTIFICATION);\n },\n ignoresRemoteTabRaise: function() {\n return o;\n },\n showsTabUnreadUI: function() {\n if (j.get(\"web_messenger_suppress_tab_unread\")) {\n return p\n };\n return true;\n }\n });\n function r() {\n q.inform(q.ON_CHANGED);\n };\n h.subscribe(i.ON_CHAT_NOTIFICATION_CHANGED, function() {\n var s = n, t = h.getWebChatNotification();\n n = t;\n if ((s != t)) {\n r();\n };\n });\n g.subscribe(\"chat/set_does_page_occlude_tabs\", function(s, t) {\n o = !!t;\n r();\n });\n g.subscribe(\"chat/set_show_tab_unread_ui\", function(s, t) {\n p = !!t;\n r();\n });\n e.exports = q;\n});\n__d(\"ChatSidebarSheet\", [\"Event\",\"function-extensions\",\"ArbiterMixin\",\"BlackbirdUpsell\",\"ChannelConnection\",\"ChannelConstants\",\"ChatBehavior\",\"ChatConfig\",\"ChatVisibility\",\"CSS\",\"DOM\",\"JSLogger\",\"PresencePrivacy\",\"React\",\"XUIButton.react\",\"csx\",\"cx\",\"copyProperties\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\");\n b(\"function-extensions\");\n var h = b(\"ArbiterMixin\"), i = b(\"BlackbirdUpsell\"), j = b(\"ChannelConnection\"), k = b(\"ChannelConstants\"), l = b(\"ChatBehavior\"), m = b(\"ChatConfig\"), n = b(\"ChatVisibility\"), o = b(\"CSS\"), p = b(\"DOM\"), q = b(\"JSLogger\"), r = b(\"PresencePrivacy\"), s = b(\"React\"), t = b(\"XUIButton.react\"), u = b(\"csx\"), v = b(\"cx\"), w = b(\"copyProperties\"), x = b(\"tx\"), y = q.create(\"sidebar_sheet\");\n function z(ca) {\n switch (ca) {\n case k.HINT_AUTH:\n return \"Your session has timed out. Please log in.\";\n case k.HINT_CONN:\n return x._(\"Facebook {Chat} is currently unavailable.\", {\n Chat: \"Chat\"\n });\n case k.HINT_MAINT:\n return x._(\"Facebook {Chat} is currently down for maintenance.\", {\n Chat: \"Chat\"\n });\n default:\n return x._(\"Facebook {Chat} is currently unavailable.\", {\n Chat: \"Chat\"\n });\n };\n };\n function aa(ca) {\n var da;\n if ((ca === null)) {\n da = \"Unable to connect to chat. Check your Internet connection.\";\n }\n else if ((ca > m.get(\"warning_countdown_threshold_msec\"))) {\n var ea = p.create(\"a\", {\n href: \"#\",\n className: \"fbChatReconnectLink\"\n }, \"Try again\");\n da = p.tx._(\"Unable to connect to chat. {try-again-link}\", {\n \"try-again-link\": ea\n });\n }\n else if ((ca > 1000)) {\n da = x._(\"Unable to connect to chat. Reconnecting in {seconds}...\", {\n seconds: Math.floor((ca / 1000))\n });\n }\n else da = \"Unable to connect to chat. Reconnecting...\";\n \n \n ;\n return da;\n };\n function ba(ca) {\n this._root = ca;\n this._litestandOffline = p.scry(ca, \".-cx-PRIVATE-fbChatSidebarOffline__placeholder\");\n this._message = p.find(ca, \"div.fbChatSidebarMessage div.message\");\n j.subscribe([j.CONNECTED,j.SHUTDOWN,j.RECONNECTING,], this._handleConnectionChange.bind(this));\n j.subscribe([j.MUTE_WARNING,j.UNMUTE_WARNING,], this._render.bind(this));\n r.subscribe(\"privacy-user-presence-changed\", this._render.bind(this));\n l.subscribe(l.ON_CHANGED, this._render.bind(this));\n this._render();\n };\n w(ba.prototype, h, {\n _channelStatus: null,\n _channelData: null,\n _handleConnectionChange: function(ca, da) {\n this._channelStatus = ca;\n this._channelData = da;\n this._render();\n },\n _showWarningTimeout: null,\n _warningMsgEventListener: null,\n _renderChannelDisconnect: function() {\n if ((this._channelStatus === j.SHUTDOWN)) {\n return p.setContent(this._message, z(this._channelData));\n }\n else if ((this._channelStatus === j.RECONNECTING)) {\n var ca = this._channelData;\n p.setContent(this._message, aa(ca));\n if ((ca > 1000)) {\n if ((ca > m.get(\"warning_countdown_threshold_msec\"))) {\n this._warningMsgEventListener = g.listen(this._message, \"click\", function(event) {\n if (o.hasClass(event.getTarget(), \"fbChatReconnectLink\")) {\n j.reconnect();\n return false;\n }\n ;\n });\n };\n this._showWarningTimeout = setTimeout(this._handleConnectionChange.bind(this, j.RECONNECTING, (ca - 1000)), 1000, false);\n }\n ;\n }\n \n ;\n },\n _goOnlineEventListener: null,\n _renderOffline: function() {\n if (this._isLitestand) {\n return\n };\n if ((this._litestandOffline && this._litestandOffline.length)) {\n this._renderLitestandOffline();\n };\n var ca = \"fbChatGoOnlineLink\", da = \"Turn on chat\", ea = p.create(\"a\", {\n href: \"#\",\n className: ca\n }, da), fa = p.tx._(\"{=Go online} to see who's available.\", {\n \"=Go online\": ea\n });\n p.setContent(this._message, fa);\n this._goOnlineEventListener = g.listen(this._message, \"click\", function(event) {\n if (o.hasClass(event.getTarget(), ca)) {\n y.log(\"sidebar_go_online\");\n n.goOnline();\n return false;\n }\n ;\n });\n },\n _renderLitestandOffline: function() {\n this._litestandOffline = this._litestandOffline[0];\n this._isLitestand = true;\n if (m.get(\"litestand_blended_sidebar\")) {\n s.renderComponent(t({\n className: \"-cx-PRIVATE-fbChatSidebarOffline__root -cx-PRIVATE-fbChatSidebarOffline__button\",\n href: {\n url: \"#\"\n },\n label: \"Turn on Chat\",\n onClick: function() {\n y.log(\"sidebar_go_online\");\n n.goOnline();\n }\n }), this._litestandOffline);\n this._litestandOffline = null;\n }\n else {\n s.renderComponent(s.DOM.a({\n className: \"-cx-PRIVATE-fbChatSidebarOffline__root -cx-PUBLIC-litestandLiquid__hover\",\n href: \"#\",\n onClick: function() {\n y.log(\"sidebar_go_online\");\n n.goOnline();\n }\n }, s.DOM.i({\n className: \"-cx-PRIVATE-fbChatSidebarOffline__leftborder\"\n }), s.DOM.div({\n className: \"-cx-PRIVATE-fbChatSidebarOffline__center\"\n }, s.DOM.div({\n className: \"-cx-PRIVATE-fbChatSidebarOffline__content\"\n }, s.DOM.i({\n className: \"-cx-PRIVATE-fbChatSidebarOffline__offlineicon\"\n }), s.DOM.div({\n className: \"-cx-PRIVATE-fbChatSidebarOffline__message\"\n }, p.tx._(\"Turn on Chat\")))), s.DOM.i({\n className: \"-cx-PRIVATE-fbChatSidebarOffline__rightborder\"\n }), s.DOM.div({\n className: \"-cx-PUBLIC-litestandSidebarBookmarks__tooltip\",\n \"data-hover\": \"tooltip\",\n \"data-tooltip-alignh\": \"center\",\n \"data-tooltip-position\": \"right\",\n \"aria-label\": \"Turn on Chat\"\n })), this._litestandOffline);\n this._litestandOffline = null;\n }\n ;\n },\n _renderBlackbirdUpsell: function() {\n p.setContent(this._message, i.getOfflineContent());\n },\n _renderBlackbird: function(ca) {\n p.setContent(this._message, i.getBlackbirdContent(ca));\n },\n _clear: function() {\n if (this._showWarningTimeout) {\n clearTimeout(this._showWarningTimeout);\n this._showWarningTimeout = null;\n }\n ;\n if (this._warningMsgEventListener) {\n this._warningMsgEventListener.remove();\n this._warningMsgEventListener = null;\n }\n ;\n if (this._goOnlineEventListener) {\n this._goOnlineEventListener.remove();\n this._goOnlineEventListener = null;\n }\n ;\n o.removeClass(this._root, \"upsell\");\n o.removeClass(this._root, \"offline\");\n o.removeClass(this._root, \"blackbird\");\n o.removeClass(this._root, \"error\");\n o.removeClass(this._root, \"notice\");\n p.empty(this._message);\n },\n _render: function() {\n this._clear();\n if (i.shouldShow()) {\n if (n.hasBlackbirdEnabled()) {\n var ca = (n.isOnline() ? \"blackbird\" : \"upsell\");\n o.addClass(this._root, ca);\n this._renderBlackbird(r.getVisibility());\n }\n else if (!n.isOnline()) {\n o.addClass(this._root, \"upsell\");\n this._renderBlackbirdUpsell();\n }\n \n ;\n }\n else if (!n.isOnline()) {\n o.addClass(this._root, \"offline\");\n this._renderOffline();\n }\n else if (j.disconnected()) {\n o.addClass(this._root, \"error\");\n this._renderChannelDisconnect();\n }\n else if (!l.notifiesUserMessages()) {\n o.addClass(this._root, \"notice\");\n p.setContent(this._message, \"Alerts are off while you use another client to chat.\");\n }\n \n \n \n ;\n this.inform(\"updated\");\n }\n });\n e.exports = ba;\n});\n__d(\"FBDesktopPlugin\", [\"CacheStorage\",\"DOM\",\"Env\",\"FBDesktopDetect\",\"URI\",\"Style\",], function(a, b, c, d, e, f) {\n var g = b(\"CacheStorage\"), h = b(\"DOM\"), i = b(\"Env\"), j = b(\"FBDesktopDetect\"), k = b(\"URI\"), l = b(\"Style\"), m = new g(\"localstorage\", \"_socialfox_\"), n = {\n _plugin: \"_not_checked\",\n arbiterInform: function(o, p) {\n var q = JSON.stringify({\n name: o,\n payload: p\n });\n this._transmitCommand(\"arbiterinform\", q);\n },\n bringToFront: function() {\n this._transmitCommand(\"bringtofront\");\n },\n dock: function() {\n this._transmitCommand(\"dock\");\n },\n getPlugin: function() {\n if ((this._plugin === \"_not_checked\")) {\n this._plugin = null;\n if (j.isPluginInstalled()) {\n var o = h.create(\"object\", {\n id: \"kiwi_plugin\",\n type: j.mimeType\n });\n l.set(o, \"width\", 0);\n l.set(o, \"height\", 0);\n var p = h.create(\"div\", {\n }, o);\n l.set(p, \"width\", 0);\n l.set(p, \"height\", 0);\n document.body.appendChild(p);\n this._plugin = o;\n }\n ;\n }\n ;\n return this._plugin;\n },\n getUserID: function() {\n var o = this.getPlugin();\n return ((o && (\"getUserID\" in o)) && o.getUserID());\n },\n getVersion: function() {\n var o = this.getPlugin();\n return ((o && (\"getVersion\" in o)) && o.getVersion());\n },\n isAppRunning: function() {\n var o = this.getPlugin();\n return ((o && (\"isAppRunning\" in o)) && o.isAppRunning());\n },\n launchApp: function() {\n var o = this.getPlugin();\n return ((o && (\"launchApp\" in o)) && o.launchApp());\n },\n login: function(o, p) {\n if (((p && o) && (o.length > 0))) {\n var q = this.getPlugin();\n if (q) {\n this._transmitCommand((((\"relogin\\u000a\" + o) + \"\\u000a\") + p));\n return;\n }\n ;\n }\n ;\n },\n logout: function(o) {\n o = (o || \"0\");\n var p = this.getPlugin();\n if (p) {\n p.logout(o);\n };\n },\n recheck: function() {\n if ((this._plugin === null)) {\n this._plugin = \"_not_checked\";\n };\n },\n shouldSuppressBeeper: function() {\n return this.isAppRunning();\n },\n shouldSuppressMessages: function() {\n if ((m && m.get(\"connected\"))) {\n return true\n };\n var o = this.getUserID();\n if (o) {\n return (o === i.user);\n }\n else return this.isAppRunning()\n ;\n },\n shouldSuppressSidebar: function() {\n var o = this.getPlugin(), p = ((o && (\"isAppDocked\" in o)) && o.isAppDocked()), q = (m && (m.get(\"active\") === \"true\"));\n return (p || q);\n },\n transferAuthToken: function(o, p) {\n if ((o && (o.length > 0))) {\n var q = this.getPlugin();\n if (q) {\n q.setAccessToken(o, p);\n var r = setInterval(function() {\n q.setAccessToken(o, p);\n }, 500);\n setTimeout(function() {\n clearInterval(r);\n }, (10 * 1000));\n }\n ;\n }\n ;\n if (this.redirectHome) {\n window.location.href = k().setPath().toString();\n };\n },\n _transmitCommand: function(o, p) {\n p = (p || \"\");\n var q = this.getPlugin();\n if ((q && (\"transmitCommand\" in q))) {\n q.transmitCommand(o, p);\n };\n }\n };\n e.exports = n;\n});\n__d(\"ChatSidebar\", [\"ChatOrderedList\",\"ChatTypeaheadBehavior\",\"ChatTypeaheadCore\",\"ChatTypeaheadDataSource\",\"ChatTypeaheadRenderer\",\"ChatTypeaheadView\",\"Typeahead\",\"Arbiter\",\"ArbiterMixin\",\"AsyncRequest\",\"AvailableList\",\"AvailableListConstants\",\"Bootloader\",\"ChannelConnection\",\"Chat\",\"ChatConfig\",\"ChatHovercard\",\"ChatImpressionLogger\",\"ChatOptions\",\"ChatSidebarSheet\",\"ChatVisibility\",\"CSS\",\"DOM\",\"DOMDimensions\",\"Event\",\"FBDesktopPlugin\",\"JSLogger\",\"JSXDOM\",\"KeyEventController\",\"OrderedFriendsList\",\"Parent\",\"PresencePrivacy\",\"ScrollableArea\",\"Style\",\"UserAgent\",\"ViewportBounds\",\"copyProperties\",\"createArrayFrom\",\"csx\",\"cx\",\"debounce\",\"emptyFunction\",\"fbt\",\"ge\",\"tx\",], function(a, b, c, d, e, f) {\n b(\"ChatOrderedList\");\n b(\"ChatTypeaheadBehavior\");\n b(\"ChatTypeaheadCore\");\n b(\"ChatTypeaheadDataSource\");\n b(\"ChatTypeaheadRenderer\");\n b(\"ChatTypeaheadView\");\n b(\"Typeahead\");\n var g = b(\"Arbiter\"), h = b(\"ArbiterMixin\"), i = b(\"AsyncRequest\"), j = b(\"AvailableList\"), k = b(\"AvailableListConstants\"), l = b(\"Bootloader\"), m = b(\"ChannelConnection\"), n = b(\"Chat\"), o = b(\"ChatConfig\"), p = b(\"ChatHovercard\"), q = b(\"ChatImpressionLogger\"), r = b(\"ChatOptions\"), s = b(\"ChatSidebarSheet\"), t = b(\"ChatVisibility\"), u = b(\"CSS\"), v = b(\"DOM\"), w = b(\"DOMDimensions\"), x = b(\"Event\"), y = b(\"FBDesktopPlugin\"), z = b(\"JSLogger\"), aa = b(\"JSXDOM\"), ba = b(\"KeyEventController\"), ca = b(\"OrderedFriendsList\"), da = b(\"Parent\"), ea = b(\"PresencePrivacy\"), fa = b(\"ScrollableArea\"), ga = b(\"Style\"), ha = b(\"UserAgent\"), ia = b(\"ViewportBounds\"), ja = b(\"copyProperties\"), ka = b(\"createArrayFrom\"), la = b(\"csx\"), ma = b(\"cx\"), na = b(\"debounce\"), oa = b(\"emptyFunction\"), pa = b(\"fbt\"), qa = b(\"ge\"), ra = b(\"tx\"), sa, ta = false, ua = false, va = false, wa = false, xa = false, ya = false, za, ab, bb, cb, db, eb = null, fb, gb, hb, ib, jb, kb, lb = 28, mb = 38, nb = z.create(\"chat_sidebar\");\n function ob() {\n if (gb) {\n return\n };\n u.removeClass(document.documentElement, \"sidebarMode\");\n if ((!wa || !yb.isVisible())) {\n g.inform(\"reflow\");\n return;\n }\n ;\n va = false;\n eb = null;\n za.hide();\n cb.getCore().reset();\n u.hide(ab);\n nb.rate(\"sidebar_hide\", wa);\n yb.inform(\"sidebar/hide\", yb);\n g.inform(\"sidebar/hide\", yb);\n g.inform(\"reflow\");\n };\n function pb() {\n var zb = yb.shouldShowSidebar();\n u.conditionClass(document.documentElement, \"sidebarCapable\", zb);\n if ((yb.isEnabled() && zb)) {\n sb();\n var ac;\n if (fb) {\n var bc = u.hasClass(ab, \"-cx-PRIVATE-litestandSidebarBookmarks__expanded\");\n if (bc) {\n return\n };\n kb = (kb || v.find(ab, \".-cx-PRIVATE-hasLitestandBookmarksSidebar__chatfooter\"));\n if (fb.has_favorites_editing) {\n jb = (jb || v.scry(ab, \".-cx-PRIVATE-litestandSidebarFavorites__sectionheader\")[0]);\n };\n ac = [kb,];\n }\n else ac = ka(ab.childNodes);\n ;\n var cc = rb(ac), dc = (za.getItemHeight() || 32), ec = (za.getPaddingOffset() || 8), fc;\n if (gb) {\n if (gb.isExpanded()) {\n ec = (ec + lb);\n if ((fb && fb.always_show_one_see_more)) {\n ec += dc;\n };\n }\n ;\n if (!n.isOnline()) {\n ec += mb;\n };\n var gc = Math.floor((za.getItemPadding() / 2));\n fc = Math.floor(((((cc - ec) + gc)) / dc));\n if (!za.isVisible()) {\n ga.set(sa, \"height\", (cc + \"px\"));\n };\n }\n else {\n fc = Math.floor((((cc - ec)) / ((dc + 1))));\n ga.set(sa, \"height\", (cc + \"px\"));\n }\n ;\n za.setNumTopFriends(fc);\n var hc = Math.floor((((cc - ec)) / dc));\n if (ub()) {\n hc = ((((hc - 2)) > 0) ? (hc - 2) : 0);\n };\n cb.getData().setMaxResults(hc);\n yb.inform(\"sidebar/resized\", yb);\n g.inform(\"sidebar/resized\", yb);\n g.inform(\"reflow\");\n }\n else ob();\n ;\n if (!wa) {\n wb();\n wa = true;\n }\n ;\n eb = null;\n };\n function qb() {\n if ((cb && yb.isVisible())) {\n cb.getCore().getElement().focus();\n };\n };\n function rb(zb) {\n if (!zb) {\n if (fb) {\n kb = (kb || v.find(ab, \".-cx-PRIVATE-hasLitestandBookmarksSidebar__chatfooter\"));\n zb = [kb,];\n }\n else zb = ka(ab.childNodes);\n \n };\n var ac = db.height;\n if ((gb && hb)) {\n ac -= hb.getFullHeight();\n };\n zb.forEach(function(bc) {\n if ((bc && (bc !== sa))) {\n ac -= w.getElementDimensions(bc).height;\n };\n });\n return Math.max(0, ac);\n };\n function sb() {\n if (yb.isVisible()) {\n return\n };\n va = true;\n eb = null;\n u.show(ab);\n u.addClass(document.documentElement, \"sidebarMode\");\n za.show();\n nb.rate(\"sidebar_show\", wa);\n yb.inform(\"sidebar/show\", yb);\n g.inform(\"sidebar/show\", yb);\n (ib && xb());\n };\n function tb() {\n r.setSetting(\"sidebar_mode\", yb.isEnabled(), \"sidebar\");\n new i(\"/ajax/chat/settings.php\").setHandler(oa).setErrorHandler(oa).setData({\n sidebar_mode: yb.isEnabled()\n }).setAllowCrossPageTransition(true).send();\n };\n function ub() {\n return o.get(\"divebar_typeahead_group_fof\", 0);\n };\n function vb() {\n return (ca.getList().length <= o.get(\"sidebar.min_friends\"));\n };\n function wb() {\n var zb = true;\n if (!yb.isEnabled()) {\n nb.log(\"state_not_enabled\");\n zb = false;\n }\n ;\n if (!yb.isViewportCapable()) {\n nb.log(\"state_not_shown_viewport\");\n zb = false;\n }\n ;\n if (ua) {\n nb.log(\"state_not_shown_hidden\");\n zb = false;\n }\n ;\n if (vb()) {\n nb.log(\"state_not_shown_num_friends\");\n zb = false;\n }\n ;\n if (y.shouldSuppressSidebar()) {\n nb.log(\"state_not_shown_fbdesktop\");\n zb = false;\n }\n ;\n nb.log((zb ? \"state_shown\" : \"state_not_shown\"));\n };\n function xb() {\n if (!yb.isVisible()) {\n return\n };\n var zb;\n if (!t.isOnline()) {\n zb = \"Offline\";\n }\n else if (m.disconnected()) {\n zb = \"Connection Lost\";\n }\n else zb = ra._(\"{Chat} {number-available}\", {\n Chat: \"Chat\",\n \"number-available\": ((\"(\" + j.getOnlineCount()) + \")\")\n });\n \n ;\n v.setContent(ib, zb);\n };\n var yb = {\n init: function(zb, ac, bc, cc) {\n yb.init = oa;\n xa = true;\n ab = zb;\n za = ac;\n cb = bc;\n bb = cc;\n sa = v.find(zb, \"div.fbChatSidebarBody\");\n gb = (cc && cc.ls_module);\n fb = (cc && cc.ls_config);\n if (gb) {\n g.subscribe(\"ViewportSizeChange\", function() {\n g.inform(\"ChatOrderedList/itemHeightChange\");\n pb();\n });\n g.subscribe(\"Sidebar/BookmarksHeightChange\", pb);\n l.loadModules([\"LitestandSidebarBookmarksDisplay\",], function(ec) {\n hb = ec;\n });\n }\n else x.listen(window, \"resize\", pb);\n ;\n ba.registerKey(\"q\", function() {\n var ec = null;\n if (kb) {\n ec = v.scry(kb, \".inputsearch\")[0];\n }\n else ec = v.scry(zb, \".inputsearch\")[0];\n ;\n if (ec) {\n ec.focus();\n return false;\n }\n ;\n });\n new p(ac);\n var dc = new s(zb);\n dc.subscribe(\"updated\", pb);\n g.subscribe(\"sidebar/invalidate\", pb);\n ac.setScrollContainer(da.byClass(ac.getRoot(), \"uiScrollableAreaWrap\"));\n ac.subscribe([\"render\",\"show\",\"hide\",], na(function(ec) {\n if (((ec === \"render\") && !ya)) {\n ya = true;\n yb.inform(\"sidebar/chatRendered\", null, g.BEHAVIOR_PERSISTENT);\n }\n ;\n var fc = ac.getRoot(), gc = fa.getInstance(fc);\n (gc && gc.adjustGripper());\n }));\n ac.subscribe([\"editStart\",\"editEnd\",], function(ec) {\n u.conditionClass(cb.getView().element, \"-cx-PUBLIC-fbChatOrderedList__editfavoritemode\", (ec == \"editStart\"));\n });\n if ((ha.firefox() >= 17)) {\n x.listen(window, \"storage\", function(ec) {\n if (((ec.key == \"_socialfox_active\") && (ec.oldValue != ec.newValue))) {\n pb();\n };\n });\n };\n g.subscribe(\"chat/option-changed\", function(ec, fc) {\n if ((fc.name == \"sidebar_mode\")) {\n ta = !!r.getSetting(\"sidebar_mode\");\n pb();\n }\n ;\n });\n bc.getCore().subscribe(\"sidebar/typeahead/active\", yb.updateOnActiveTypeahead);\n bc.subscribe(\"reset\", function() {\n if ((!bc.getCore().getValue() && !za.isVisible())) {\n yb.updateOnActiveTypeahead(null, false);\n };\n });\n if (gb) {\n bc.getCore().subscribe(\"sidebar/typeahead/preActive\", function(ec, fc) {\n if ((ta && cb.getView().isVisible())) {\n g.inform(ec, fc);\n }\n else pb();\n ;\n });\n }\n else g.subscribe(\"buddylist-nub/initialized\", function(ec, fc) {\n x.listen(fc.getButton(), \"click\", function(event) {\n yb.enable();\n return !yb.shouldShowSidebar();\n });\n });\n ;\n ta = !!r.getSetting(\"sidebar_mode\");\n (ha.ie() && x.listen(zb, \"click\", function(ec) {\n if (da.byClass(ec.getTarget(), \"-cx-PRIVATE-fbLitestandChatTypeahead__root\")) {\n qb();\n };\n }));\n ea.subscribe(\"privacy-user-presence-changed\", pb);\n pb();\n q.init(za);\n if (!gb) {\n ia.addRight(yb.getVisibleWidth);\n };\n yb.inform(\"sidebar/initialized\", yb, g.BEHAVIOR_PERSISTENT);\n g.inform(\"sidebar/initialized\", yb, g.BEHAVIOR_PERSISTENT);\n if (o.get(\"litestand_blended_sidebar\")) {\n ib = v.find(zb, \".-cx-PRIVATE-litestandBlendedSidebar__headertext\");\n j.subscribe(k.ON_AVAILABILITY_CHANGED, na(xb, 2000));\n m.subscribe([m.CONNECTED,m.RECONNECTING,m.SHUTDOWN,], xb);\n ea.subscribe(\"privacy-changed\", xb);\n xb();\n }\n ;\n },\n updateOnActiveTypeahead: function(zb, ac) {\n if (!va) {\n return\n };\n if (ac) {\n za.hide();\n if (gb) {\n u.addClass(ab, \"-cx-PRIVATE-fbChatTypeahead__active\");\n var bc = rb();\n if (jb) {\n bc += w.getElementDimensions(jb).height;\n };\n ga.set(sa, \"height\", (bc + \"px\"));\n }\n ;\n }\n else {\n za.show();\n if (gb) {\n ga.set(sa, \"height\", \"auto\");\n u.removeClass(ab, \"-cx-PRIVATE-fbChatTypeahead__active\");\n g.inform(\"sidebar/typeahead/active\", false);\n pb();\n }\n else pb();\n ;\n }\n ;\n },\n isInitialized: function() {\n return wa;\n },\n disable: function() {\n if (!yb.isEnabled()) {\n return\n };\n ta = false;\n tb();\n ob();\n },\n enable: function() {\n if (yb.isEnabled()) {\n return\n };\n ta = true;\n tb();\n pb();\n qb.defer();\n },\n forceEnsureLoaded: function() {\n if (xa) {\n return\n };\n if (qa(\"pagelet_sidebar\")) {\n return\n };\n d([\"UIPagelet\",], function(zb) {\n var ac = aa.div({\n id: \"pagelet_sidebar\"\n });\n v.appendContent(document.body, ac);\n zb.loadFromEndpoint(\"SidebarPagelet\", \"pagelet_sidebar\");\n });\n xa = true;\n },\n ensureLoaded: function() {\n if (!ta) {\n return\n };\n yb.forceEnsureLoaded();\n },\n hide: function() {\n if (ua) {\n return\n };\n ua = true;\n ob();\n },\n unhide: function() {\n if (!ua) {\n return\n };\n ua = false;\n pb();\n },\n getBody: function() {\n return sa;\n },\n getRoot: function() {\n return ab;\n },\n getVisibleWidth: function() {\n if ((!va || !ab)) {\n return 0\n };\n if ((eb === null)) {\n eb = ab.offsetWidth;\n };\n return eb;\n },\n isEnabled: function() {\n return ta;\n },\n isViewportCapable: function() {\n db = w.getViewportWithoutScrollbarDimensions();\n if (gb) {\n return true\n };\n var zb = o.get(\"sidebar.minimum_width\");\n return (db.width > zb);\n },\n shouldShowSidebar: function() {\n var zb = yb.isViewportCapable();\n return (gb || ((((zb && !ua) && ((!vb() || o.get(\"litestand_blended_sidebar\", false)))) && !y.shouldSuppressSidebar())));\n },\n isVisible: function() {\n return va;\n },\n resize: pb,\n toggle: function() {\n if (gb) {\n gb.toggle();\n }\n else (yb.isEnabled() ? yb.disable() : yb.enable());\n ;\n },\n isLitestandSidebar: function() {\n return !!gb;\n }\n };\n ja(yb, h);\n e.exports = yb;\n});\n__d(\"DropdownContextualHelpLink\", [\"DOM\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"ge\"), i = {\n set: function(j) {\n var k = h(\"navHelpCenter\");\n if ((k !== null)) {\n g.replace(k, j);\n };\n }\n };\n e.exports = i;\n});\n__d(\"ChatActivity\", [\"Event\",\"Arbiter\",\"AvailableList\",\"AvailableListConstants\",\"JSLogger\",\"MercuryConfig\",\"PresenceState\",\"UserActivity\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"Arbiter\"), i = b(\"AvailableList\"), j = b(\"AvailableListConstants\"), k = b(\"JSLogger\"), l = b(\"MercuryConfig\"), m = b(\"PresenceState\"), n = b(\"UserActivity\"), o = b(\"copyProperties\"), p = (l.activity_limit || 60000), q = (l.idle_limit || 1800000), r = (l.idle_poll_interval || 300000), s = k.create(\"chat_activity\"), t = Date.now(), u = t, v = true;\n function w() {\n var aa = Date.now();\n return !!((v && (((aa - t) < p))));\n };\n var x = o(new h(), {\n isActive: w\n });\n function y() {\n var aa = t;\n t = Date.now();\n if (((t - aa) > q)) {\n s.debug(\"idle_to_active\", aa);\n m.doSync();\n }\n ;\n x.inform(\"activity\");\n };\n i.subscribe(j.ON_AVAILABILITY_CHANGED, function() {\n if (!i.isUserIdle()) {\n u = Date.now();\n };\n });\n g.listen(window, \"focus\", function() {\n v = true;\n y();\n });\n g.listen(window, \"blur\", function() {\n v = false;\n });\n n.subscribe(function() {\n y();\n });\n function z(aa) {\n var ba = ((aa && aa.at) && m.verifyNumber(aa.at));\n if ((typeof ba !== \"number\")) {\n ba = null;\n };\n return (ba || 0);\n };\n setInterval(function() {\n var aa = Date.now(), ba = z(m.get()), ca = Math.max(t, ba, u);\n if (((aa - ca) > q)) {\n s.debug(\"idle\", {\n cookie: ba,\n local: t,\n presence: u\n });\n x.inform(\"idle\", (aa - ca));\n }\n ;\n }, r);\n m.registerStateStorer(function(aa) {\n var ba = z(aa);\n if ((ba < t)) {\n aa.at = t;\n };\n return aa;\n });\n h.subscribe(k.DUMP_EVENT, function(aa, ba) {\n ba.chat_activity = {\n activity_limit: p,\n idle_limit: q,\n idle_poll_interval: r,\n last_active_time: t,\n last_global_active_time: u\n };\n });\n e.exports = x;\n});\n__d(\"MercuryNotificationRenderer\", [\"MercuryAssert\",\"MercuryMessages\",\"MercuryParticipants\",\"MercuryThreads\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"MercuryAssert\"), h = b(\"MercuryMessages\").get(), i = b(\"MercuryParticipants\"), j = b(\"MercuryThreads\").get(), k = b(\"tx\");\n function l(m, n) {\n g.isThreadID(m);\n j.getThreadMeta(m, function(o) {\n h.getThreadMessagesRange(m, 0, 1, function(p) {\n var q = (p.length && p[(p.length - 1)]);\n if ((q && (q.author != i.user))) {\n i.get(q.author, function(r) {\n if (o.name) {\n n(k._(\"{senderName} messaged {groupName}\", {\n senderName: r.short_name,\n groupName: o.name\n }));\n }\n else n(k._(\"{name} messaged you\", {\n name: r.short_name\n }));\n ;\n });\n }\n else n(\"New message!\");\n ;\n });\n });\n };\n e.exports = {\n renderDocumentTitle: l\n };\n});\n__d(\"MercuryTimestampTracker\", [\"MercuryActionTypeConstants\",\"MercuryPayloadSource\",\"MercurySingletonMixin\",\"MercuryServerRequests\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"MercuryActionTypeConstants\"), h = b(\"MercuryPayloadSource\"), i = b(\"MercurySingletonMixin\"), j = b(\"MercuryServerRequests\"), k = b(\"copyProperties\");\n function l(m) {\n this._fbid = m;\n this._serverRequests = j.getForFBID(this._fbid);\n this._lastTimestamp = 0;\n this._serverRequests.subscribe(\"update-messages\", function(n, o) {\n if ((!o.actions || !o.actions.length)) {\n return\n };\n if (((o.payload_source == h.CLIENT_SEND_MESSAGE) || (o.payload_source == h.UNKNOWN))) {\n return\n };\n for (var p = 0; (p < o.actions.length); p++) {\n var q = o.actions[p], r = q.action_type;\n if ((((r == g.USER_GENERATED_MESSAGE) && q.thread_id) && (q.timestamp > this._lastTimestamp))) {\n this._lastTimestamp = q.timestamp;\n };\n };\n }.bind(this));\n };\n k(l.prototype, {\n getLastUserMessageTimestamp: function() {\n return this._lastTimestamp;\n }\n });\n k(l, i);\n e.exports = l;\n});\n__d(\"ChatTitleBarBlinker\", [\"ChatActivity\",\"DocumentTitle\",\"JSLogger\",\"MercuryThreadInformer\",\"MercuryNotificationRenderer\",\"PresenceState\",\"MercuryTimestampTracker\",], function(a, b, c, d, e, f) {\n var g = b(\"ChatActivity\"), h = b(\"DocumentTitle\"), i = b(\"JSLogger\"), j = b(\"MercuryThreadInformer\").get(), k = b(\"MercuryNotificationRenderer\"), l = b(\"PresenceState\"), m = b(\"MercuryTimestampTracker\").get(), n = i.create(\"chat_title\"), o = null, p = 0, q = false;\n function r() {\n if (o) {\n o.stop();\n o = null;\n return true;\n }\n ;\n return false;\n };\n function s(x) {\n var y = (x || m.getLastUserMessageTimestamp());\n if ((p <= y)) {\n p = y;\n if ((r() || q)) {\n l.doSync();\n };\n }\n ;\n };\n var t = {\n blink: function(x, y) {\n if ((!o && (p < y))) {\n k.renderDocumentTitle(x, function(z) {\n if (!o) {\n o = h.blink(z);\n };\n });\n };\n },\n stopBlinking: function() {\n s();\n },\n blinkingElsewhere: function() {\n q = true;\n }\n };\n function u(x) {\n var y = l.verifyNumber(x.sb2);\n if ((!y || (y <= p))) {\n return null\n };\n return y;\n };\n function v(x) {\n var y = (x && u(x));\n if (y) {\n p = y;\n n.debug(\"load\", p);\n r();\n q = false;\n }\n ;\n };\n function w(x) {\n var y = u(x);\n if (!y) {\n n.debug(\"store\", p);\n x.sb2 = p;\n q = false;\n }\n ;\n return x;\n };\n l.registerStateStorer(w);\n l.registerStateLoader(v);\n j.subscribe(\"thread-read-changed\", function(x, y) {\n var z = m.getLastUserMessageTimestamp(), aa = 0;\n for (var ba in y) {\n if (((y[ba].mark_as_read && (y[ba].timestamp >= z)) && (y[ba].timestamp > aa))) {\n aa = y[ba].timestamp;\n };\n };\n (aa && s(aa));\n });\n g.subscribe(\"activity\", function() {\n s();\n });\n (function() {\n var x = l.getInitial();\n if (x) {\n p = (u(x) || 0);\n };\n })();\n e.exports = t;\n});\n__d(\"swfobject\", [\"AsyncRequest\",\"Bootloader\",\"ControlledReferer\",\"copyProperties\",\"CSS\",\"DOM\",\"function-extensions\",\"ge\",\"htmlSpecialChars\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"Bootloader\"), i = b(\"ControlledReferer\"), j = b(\"copyProperties\"), k = b(\"CSS\"), l = b(\"DOM\");\n b(\"function-extensions\");\n var m = b(\"ge\"), n = b(\"htmlSpecialChars\");\n if ((typeof o == \"undefined\")) {\n var o = {\n }\n };\n if ((typeof o.util == \"undefined\")) {\n o.util = {\n };\n };\n if ((typeof o.SWFObjectUtil == \"undefined\")) {\n o.SWFObjectUtil = {\n };\n };\n o.SWFObject = function(u, v, w, x, y, z, aa, ba, ca, da) {\n if (!document.getElementById) {\n return\n };\n this.DETECT_KEY = (da ? da : \"detectflash\");\n this.skipDetect = o.util.getRequestParameter(this.DETECT_KEY);\n this.params = {\n };\n this.variables = {\n };\n this.attributes = [];\n this.fallback_html = \"\";\n this.fallback_js_fcn = function() {\n \n };\n if (u) {\n this.setAttribute(\"swf\", u);\n };\n if (v) {\n this.setAttribute(\"id\", v);\n };\n if (w) {\n this.setAttribute(\"width\", w);\n };\n if (x) {\n this.setAttribute(\"height\", x);\n };\n this.installedVer = o.SWFObjectUtil.getPlayerVersion();\n if (y) {\n if (!((y instanceof Array))) {\n y = [y,];\n };\n var ea;\n y.forEach(function(ha) {\n ea = new o.PlayerVersion(ha.toString().split(\".\"));\n if ((ea.major == this.installedVer.major)) {\n this.setAttribute(\"version\", ea);\n return;\n }\n else if ((!this.getAttribute(\"version\") || (ea.major < this.getAttribute(\"version\").major))) {\n this.setAttribute(\"version\", ea);\n }\n ;\n }.bind(this));\n }\n ;\n if (((!window.opera && document.all) && (this.installedVer.major > 7))) {\n if (!o.unloadSet) {\n o.SWFObjectUtil.prepUnload = function() {\n var ha = function() {\n \n }, ia = function() {\n \n };\n window.attachEvent(\"onunload\", o.SWFObjectUtil.cleanupSWFs);\n };\n window.attachEvent(\"onbeforeunload\", o.SWFObjectUtil.prepUnload);\n o.unloadSet = true;\n }\n \n };\n if (z) {\n this.addParam(\"bgcolor\", z);\n };\n var fa = (aa ? aa : \"high\");\n this.addParam(\"quality\", fa);\n this.setAttribute(\"useExpressInstall\", false);\n this.setAttribute(\"doExpressInstall\", false);\n var ga = ((ba) ? ba : window.location);\n this.setAttribute(\"xiRedirectUrl\", ga);\n this.setAttribute(\"redirectUrl\", \"\");\n if (ca) {\n this.setAttribute(\"redirectUrl\", ca);\n };\n this.setAttribute(\"useIframe\", false);\n };\n o.SWFObject.ieWorkaroundApplied = false;\n o.SWFObject.ensureIEWorkaroundAttached = function() {\n if ((!o.SWFObject.ieWorkaroundApplied && document.attachEvent)) {\n o.SWFObject.ieWorkaroundApplied = true;\n document.attachEvent(\"onpropertychange\", o.SWFObject.onDocumentPropertyChange);\n }\n ;\n };\n o.SWFObject.onDocumentPropertyChange = function(event) {\n if ((event.propertyName == \"title\")) {\n var u = document.title;\n if (((u != null) && (u.indexOf(\"#!\") != -1))) {\n u = u.substring(0, u.indexOf(\"#!\"));\n document.title = u;\n }\n ;\n }\n ;\n };\n j(o.SWFObject.prototype, {\n useExpressInstall: function(u) {\n this.xiSWFPath = (!u ? \"/swf/expressinstall.swf\" : u);\n this.setAttribute(\"useExpressInstall\", true);\n },\n setAttribute: function(u, v) {\n this.attributes[u] = v;\n },\n getAttribute: function(u) {\n return (this.attributes[u] || \"\");\n },\n addParam: function(u, v) {\n this.params[u] = v;\n },\n getParams: function() {\n return this.params;\n },\n addVariable: function(u, v) {\n this.variables[u] = v;\n },\n getVariable: function(u) {\n return (this.variables[u] || \"\");\n },\n getVariables: function() {\n return this.variables;\n },\n getVariablePairs: function() {\n var u = [], v, w = this.getVariables();\n for (v in w) {\n u[u.length] = ((v + \"=\") + w[v]);;\n };\n return u.join(\"&\");\n },\n getSWFHTML: function() {\n var u, v, w;\n if (((navigator.plugins && navigator.mimeTypes) && navigator.mimeTypes.length)) {\n if (this.getAttribute(\"doExpressInstall\")) {\n this.addVariable(\"MMplayerType\", \"PlugIn\");\n this.setAttribute(\"swf\", this.xiSWFPath);\n }\n ;\n v = {\n type: \"application/x-shockwave-flash\",\n src: this.getAttribute(\"swf\"),\n width: this.getAttribute(\"width\"),\n height: this.getAttribute(\"height\"),\n style: (this.getAttribute(\"style\") || \"display: block;\"),\n id: this.getAttribute(\"id\"),\n name: this.getAttribute(\"id\")\n };\n var x = this.getParams();\n for (var y in x) {\n v[y] = x[y];;\n };\n w = this.getVariablePairs();\n if (w) {\n v.flashvars = w;\n };\n u = t(\"embed\", v, null);\n }\n else {\n if (this.getAttribute(\"doExpressInstall\")) {\n this.addVariable(\"MMplayerType\", \"ActiveX\");\n this.setAttribute(\"swf\", this.xiSWFPath);\n }\n ;\n v = {\n id: this.getAttribute(\"id\"),\n classid: \"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\",\n width: this.getAttribute(\"width\"),\n height: this.getAttribute(\"height\"),\n style: (this.getAttribute(\"style\") || \"display: block;\")\n };\n var z = t(\"param\", {\n name: \"movie\",\n value: this.getAttribute(\"swf\")\n }, null), x = this.getParams();\n for (var y in x) {\n z += t(\"param\", {\n name: y,\n value: x[y]\n }, null);;\n };\n w = this.getVariablePairs();\n if (w) {\n z += t(\"param\", {\n name: \"flashvars\",\n value: w\n }, null);\n };\n u = t(\"object\", v, z);\n }\n ;\n return u;\n },\n write: function(u) {\n if (this.getAttribute(\"useExpressInstall\")) {\n var v = new o.PlayerVersion([6,0,65,]);\n if ((this.installedVer.versionIsValid(v) && !this.installedVer.versionIsValid(this.getAttribute(\"version\")))) {\n this.setAttribute(\"doExpressInstall\", true);\n this.addVariable(\"MMredirectURL\", escape(this.getAttribute(\"xiRedirectUrl\")));\n document.title = (document.title.slice(0, 47) + \" - Flash Player Installation\");\n this.addVariable(\"MMdoctitle\", document.title);\n }\n ;\n }\n ;\n var w = (((typeof u == \"string\")) ? document.getElementById(u) : u);\n if (!w) {\n return false\n };\n k.addClass(w, \"swfObject\");\n w.setAttribute(\"data-swfid\", this.getAttribute(\"id\"));\n if (((this.skipDetect || this.getAttribute(\"doExpressInstall\")) || this.installedVer.versionIsValid(this.getAttribute(\"version\")))) {\n if (!this.getAttribute(\"useIframe\")) {\n o.SWFObject.ensureIEWorkaroundAttached();\n w.innerHTML = this.getSWFHTML();\n }\n else this._createIframe(w);\n ;\n return true;\n }\n else {\n if ((this.getAttribute(\"redirectUrl\") != \"\")) {\n document.location.replace(this.getAttribute(\"redirectUrl\"));\n };\n var x = ((((((this.getAttribute(\"version\").major + \".\") + this.getAttribute(\"version\").minor) + \".\") + this.getAttribute(\"version\").release) + \".\") + this.getAttribute(\"version\").build), y = ((((((this.installedVer.major + \".\") + this.installedVer.minor) + \".\") + this.installedVer.release) + \".\") + this.installedVer.build);\n this.fallback_js_fcn(y, x);\n w.innerHTML = this.fallback_html;\n }\n ;\n return false;\n },\n _createIframe: function(u) {\n var v = l.create(\"iframe\", {\n width: this.getAttribute(\"width\"),\n height: this.getAttribute(\"height\"),\n frameBorder: 0\n });\n l.empty(u);\n u.appendChild(v);\n i.useFacebookRefererHtml(v, this.getSWFHTML(), this.getAttribute(\"iframeSource\"));\n }\n });\n o.SWFObjectUtil.getPlayerVersion = function() {\n var u = new o.PlayerVersion([0,0,0,0,]), v;\n if ((navigator.plugins && navigator.mimeTypes.length)) {\n for (var w = 0; (w < navigator.plugins.length); w++) {\n try {\n var y = navigator.plugins[w];\n if ((y.name == \"Shockwave Flash\")) {\n v = new o.PlayerVersion(y.description.replace(/([a-zA-Z]|\\s)+/, \"\").replace(/(\\s+(r|d)|\\s+b[0-9]+)/, \".\").split(\".\"));\n if ((((typeof u == \"undefined\") || (v.major > u.major)) || (((v.major == u.major) && (((v.minor > u.minor) || (((v.minor == u.minor) && (((v.release > u.release) || (((v.release == u.release) && (v.build > u.build))))))))))))) {\n u = v;\n };\n }\n ;\n } catch (x) {\n \n };\n };\n }\n else if ((navigator.userAgent && (navigator.userAgent.indexOf(\"Windows CE\") >= 0))) {\n var z = 1, aa = 3;\n while (z) {\n try {\n aa++;\n z = new ActiveXObject((\"ShockwaveFlash.ShockwaveFlash.\" + aa));\n u = new o.PlayerVersion([aa,0,0,]);\n } catch (ba) {\n z = null;\n };\n };\n }\n else {\n try {\n var z = new ActiveXObject(\"ShockwaveFlash.ShockwaveFlash.7\");\n } catch (ca) {\n try {\n var z = new ActiveXObject(\"ShockwaveFlash.ShockwaveFlash.6\");\n u = new o.PlayerVersion([6,0,21,]);\n z.AllowScriptAccess = \"always\";\n } catch (da) {\n if ((u.major == 6)) {\n return u\n };\n };\n try {\n z = new ActiveXObject(\"ShockwaveFlash.ShockwaveFlash\");\n } catch (ea) {\n \n };\n };\n if ((z != null)) {\n u = new o.PlayerVersion(z.GetVariable(\"$version\").split(\" \")[1].split(\",\"));\n };\n }\n \n ;\n return u;\n };\n o.PlayerVersion = function(u) {\n this.major = ((u[0] != null) ? parseInt(u[0], 10) : 0);\n this.minor = ((u[1] != null) ? parseInt(u[1], 10) : 0);\n this.release = ((u[2] != null) ? parseInt(u[2], 10) : 0);\n this.build = ((u[3] != null) ? parseInt(u[3], 10) : 0);\n };\n o.PlayerVersion.prototype.versionIsValid = function(u) {\n if ((this.major < u.major)) {\n return false\n };\n if ((this.major > u.major)) {\n return true\n };\n if ((this.minor < u.minor)) {\n return false\n };\n if ((this.minor > u.minor)) {\n return true\n };\n if ((this.release < u.release)) {\n return false\n };\n if ((this.release > u.release)) {\n return true\n };\n if ((this.build < u.build)) {\n return false\n };\n return true;\n };\n o.util = {\n getRequestParameter: function(u) {\n var v = (document.location.search || document.location.hash);\n if ((u == null)) {\n return v\n };\n if (v) {\n var w = v.substring(1).split(\"&\");\n for (var x = 0; (x < w.length); x++) {\n if ((w[x].substring(0, w[x].indexOf(\"=\")) == u)) {\n return w[x].substring(((w[x].indexOf(\"=\") + 1)))\n };\n };\n }\n ;\n return \"\";\n }\n };\n o.SWFObjectUtil.cleanupSWFs = function() {\n var u = document.getElementsByTagName(\"OBJECT\");\n for (var v = (u.length - 1); (v >= 0); v--) {\n u[v].style.display = \"none\";\n for (var w in u[v]) {\n if ((typeof u[v][w] == \"function\")) {\n u[v][w] = function() {\n \n };\n };\n };\n };\n };\n if ((!document.getElementById && document.all)) {\n document.getElementById = function(u) {\n return document.all[u];\n };\n };\n var p = o.util.getRequestParameter, q = o.SWFObject, r = o.SWFObject;\n o.spawn_flash_update_dialog = function() {\n new g().setURI(\"/ajax/flash_update_dialog.php\").setMethod(\"GET\").setReadOnly(true).send();\n };\n function s(u, v) {\n var w = m(u), x = o.SWFObjectUtil.getPlayerVersion(), y;\n v.forEach(function(ba) {\n ba = new o.PlayerVersion(ba.toString().split(\".\"));\n if ((ba.major == x.major)) {\n y = ba;\n return;\n }\n else if (((typeof y == \"undefined\") || (ba.major < y.major))) {\n y = ba;\n }\n ;\n }.bind(this));\n if ((w && (x.major > 0))) {\n var z = ((((((x.major + \".\") + x.minor) + \".\") + x.release) + \".\") + x.build), aa = ((((((y.major + \".\") + y.minor) + \".\") + y.release) + \".\") + y.build);\n l.setContent(w, l.tx._(\"Flash {required-version} is required to view this content. Your current version is {current-version}. Please download the latest Flash Player.\", {\n \"required-version\": aa,\n \"current-version\": z\n }));\n }\n ;\n };\n o.showFlashErrorDialog = function(u, v) {\n h.loadModules([\"ErrorDialog\",], function(w) {\n w.show(u, v);\n });\n };\n function t(u, v, w) {\n var x = /^[A-Za-z0-9\\-]+$/;\n if (!u.match(x)) {\n throw new Error((\"Invalid tag \" + u))\n };\n var y = (\"\\u003C\" + u);\n for (var z in v) {\n if (!z.match(x)) {\n throw new Error((\"Invalid attr \" + z))\n };\n y += ((((\" \" + z) + \"=\\\"\") + n(v[z])) + \"\\\"\");\n };\n if ((w === null)) {\n return (y + \"/\\u003E\");\n }\n else return (((((y + \"\\u003E\") + w) + \"\\u003C/\") + u) + \"\\u003E\")\n ;\n };\n e.exports = (a.deconcept || o);\n});\n__d(\"swfobject2\", [], function(a, b, c, d, e, f) {\n var g = function() {\n var h = \"undefined\", i = \"object\", j = \"Shockwave Flash\", k = \"ShockwaveFlash.ShockwaveFlash\", l = \"application/x-shockwave-flash\", m = \"SWFObjectExprInst\", n = \"onreadystatechange\", o = window, p = document, q = navigator, r = false, s = [ka,], t = [], u = [], v = [], w, x, y, z, aa = false, ba = false, ca, da, ea = true, fa = function() {\n var eb = (((typeof p.getElementById != h) && (typeof p.getElementsByTagName != h)) && (typeof p.createElement != h)), fb = q.userAgent.toLowerCase(), gb = q.platform.toLowerCase(), hb = (gb ? /win/.test(gb) : /win/.test(fb)), ib = (gb ? /mac/.test(gb) : /mac/.test(fb)), jb = (/webkit/.test(fb) ? parseFloat(fb.replace(/^.*webkit\\/(\\d+(\\.\\d+)?).*$/, \"$1\")) : false), kb = !+\"\\u000b1\", lb = [0,0,0,], mb = null;\n if (((typeof q.plugins != h) && (typeof q.plugins[j] == i))) {\n mb = q.plugins[j].description;\n if ((mb && !((((typeof q.mimeTypes != h) && q.mimeTypes[l]) && !q.mimeTypes[l].enabledPlugin)))) {\n r = true;\n kb = false;\n mb = mb.replace(/^.*\\s+(\\S+\\s+\\S+$)/, \"$1\");\n lb[0] = parseInt(mb.replace(/^(.*)\\..*$/, \"$1\"), 10);\n lb[1] = parseInt(mb.replace(/^.*\\.(.*)\\s.*$/, \"$1\"), 10);\n lb[2] = (/[a-zA-Z]/.test(mb) ? parseInt(mb.replace(/^.*[a-zA-Z]+(.*)$/, \"$1\"), 10) : 0);\n }\n ;\n }\n else if ((typeof o.ActiveXObject != h)) {\n try {\n var ob = new ActiveXObject(k);\n if (ob) {\n mb = ob.GetVariable(\"$version\");\n if (mb) {\n kb = true;\n mb = mb.split(\" \")[1].split(\",\");\n lb = [parseInt(mb[0], 10),parseInt(mb[1], 10),parseInt(mb[2], 10),];\n }\n ;\n }\n ;\n } catch (nb) {\n \n }\n }\n ;\n return {\n w3: eb,\n pv: lb,\n wk: jb,\n ie: kb,\n win: hb,\n mac: ib\n };\n }(), ga = function() {\n if (!fa.w3) {\n return\n };\n if (((((typeof p.readyState != h) && (p.readyState == \"complete\"))) || (((typeof p.readyState == h) && ((p.getElementsByTagName(\"body\")[0] || p.body)))))) {\n ha();\n };\n if (!aa) {\n if ((typeof p.addEventListener != h)) {\n p.addEventListener(\"DOMContentLoaded\", ha, false);\n };\n if ((fa.ie && fa.win)) {\n p.attachEvent(n, function() {\n if ((p.readyState == \"complete\")) {\n p.detachEvent(n, arguments.callee);\n ha();\n }\n ;\n });\n if ((o == top)) {\n (function() {\n if (aa) {\n return\n };\n try {\n p.documentElement.doScroll(\"left\");\n } catch (eb) {\n setTimeout(arguments.callee, 0);\n return;\n };\n ha();\n })();\n };\n }\n ;\n if (fa.wk) {\n (function() {\n if (aa) {\n return\n };\n if (!/loaded|complete/.test(p.readyState)) {\n setTimeout(arguments.callee, 0);\n return;\n }\n ;\n ha();\n })();\n };\n ja(ha);\n }\n ;\n }();\n function ha() {\n if (aa) {\n return\n };\n try {\n var fb = p.getElementsByTagName(\"body\")[0].appendChild(xa(\"span\"));\n fb.parentNode.removeChild(fb);\n } catch (eb) {\n return;\n };\n aa = true;\n var gb = s.length;\n for (var hb = 0; (hb < gb); hb++) {\n s[hb]();;\n };\n };\n function ia(eb) {\n if (aa) {\n eb();\n }\n else s[s.length] = eb;\n ;\n };\n function ja(eb) {\n if ((typeof o.addEventListener != h)) {\n o.addEventListener(\"load\", eb, false);\n }\n else if ((typeof p.addEventListener != h)) {\n p.addEventListener(\"load\", eb, false);\n }\n else if ((typeof o.attachEvent != h)) {\n ya(o, \"onload\", eb);\n }\n else if ((typeof o.onload == \"function\")) {\n var fb = o.onload;\n o.onload = function() {\n fb();\n eb();\n };\n }\n else o.onload = eb;\n \n \n \n ;\n };\n function ka() {\n if (r) {\n la();\n }\n else ma();\n ;\n };\n function la() {\n var eb = p.getElementsByTagName(\"body\")[0], fb = xa(i);\n fb.setAttribute(\"type\", l);\n fb.setAttribute(\"style\", \"visibility: hidden; position: absolute; top: -1000px;\");\n var gb = eb.appendChild(fb);\n if (gb) {\n var hb = 0;\n (function() {\n if ((typeof gb.GetVariable != h)) {\n var ib = gb.GetVariable(\"$version\");\n if (ib) {\n ib = ib.split(\" \")[1].split(\",\");\n fa.pv = [parseInt(ib[0], 10),parseInt(ib[1], 10),parseInt(ib[2], 10),];\n }\n ;\n }\n else if ((hb < 10)) {\n hb++;\n setTimeout(arguments.callee, 10);\n return;\n }\n \n ;\n gb = null;\n ma();\n })();\n }\n else ma();\n ;\n };\n function ma() {\n var eb = t.length;\n if ((eb > 0)) {\n for (var fb = 0; (fb < eb); fb++) {\n var gb = t[fb].id, hb = t[fb].callbackFn, ib = {\n success: false,\n id: gb\n };\n if ((fa.pv[0] > 0)) {\n var jb = wa(gb);\n if (jb) {\n if ((za(t[fb].swfVersion) && !((fa.wk && (fa.wk < 312))))) {\n bb(gb, true);\n if (hb) {\n ib.success = true;\n ib.ref = na(gb);\n hb(ib);\n }\n ;\n }\n else if ((t[fb].expressInstall && oa())) {\n var kb = {\n };\n kb.data = t[fb].expressInstall;\n kb.width = (jb.getAttribute(\"width\") || \"0\");\n kb.height = (jb.getAttribute(\"height\") || \"0\");\n if (jb.getAttribute(\"class\")) {\n kb.styleclass = jb.getAttribute(\"class\");\n };\n if (jb.getAttribute(\"align\")) {\n kb.align = jb.getAttribute(\"align\");\n };\n var lb = {\n }, mb = jb.getElementsByTagName(\"param\"), nb = mb.length;\n for (var ob = 0; (ob < nb); ob++) {\n if ((mb[ob].getAttribute(\"name\").toLowerCase() != \"movie\")) {\n lb[mb[ob].getAttribute(\"name\")] = mb[ob].getAttribute(\"value\");\n };\n };\n pa(kb, lb, gb, hb);\n }\n else {\n qa(jb);\n if (hb) {\n hb(ib);\n };\n }\n \n \n };\n }\n else {\n bb(gb, true);\n if (hb) {\n var pb = na(gb);\n if ((pb && (typeof pb.SetVariable != h))) {\n ib.success = true;\n ib.ref = pb;\n }\n ;\n hb(ib);\n }\n ;\n }\n ;\n }\n };\n };\n function na(eb) {\n var fb = null, gb = wa(eb);\n if ((gb && (gb.nodeName == \"OBJECT\"))) {\n if ((typeof gb.SetVariable != h)) {\n fb = gb;\n }\n else {\n var hb = gb.getElementsByTagName(i)[0];\n if (hb) {\n fb = hb;\n };\n }\n \n };\n return fb;\n };\n function oa() {\n return (((!ba && za(\"6.0.65\")) && ((fa.win || fa.mac))) && !((fa.wk && (fa.wk < 312))));\n };\n function pa(eb, fb, gb, hb) {\n ba = true;\n y = (hb || null);\n z = {\n success: false,\n id: gb\n };\n var ib = wa(gb);\n if (ib) {\n if ((ib.nodeName == \"OBJECT\")) {\n w = ra(ib);\n x = null;\n }\n else {\n w = ib;\n x = gb;\n }\n ;\n eb.id = m;\n if (((typeof eb.width == h) || ((!/%$/.test(eb.width) && (parseInt(eb.width, 10) < 310))))) {\n eb.width = \"310\";\n };\n if (((typeof eb.height == h) || ((!/%$/.test(eb.height) && (parseInt(eb.height, 10) < 137))))) {\n eb.height = \"137\";\n };\n p.title = (p.title.slice(0, 47) + \" - Flash Player Installation\");\n var jb = ((fa.ie && fa.win) ? \"ActiveX\" : \"PlugIn\"), kb = (((((\"MMredirectURL=\" + o.location.toString().replace(/&/g, \"%26\")) + \"&MMplayerType=\") + jb) + \"&MMdoctitle=\") + p.title);\n if ((typeof fb.flashvars != h)) {\n fb.flashvars += (\"&\" + kb);\n }\n else fb.flashvars = kb;\n ;\n if (((fa.ie && fa.win) && (ib.readyState != 4))) {\n var lb = xa(\"div\");\n gb += \"SWFObjectNew\";\n lb.setAttribute(\"id\", gb);\n ib.parentNode.insertBefore(lb, ib);\n ib.style.display = \"none\";\n (function() {\n if ((ib.readyState == 4)) {\n ib.parentNode.removeChild(ib);\n }\n else setTimeout(arguments.callee, 10);\n ;\n })();\n }\n ;\n sa(eb, fb, gb);\n }\n ;\n };\n function qa(eb) {\n if (((fa.ie && fa.win) && (eb.readyState != 4))) {\n var fb = xa(\"div\");\n eb.parentNode.insertBefore(fb, eb);\n fb.parentNode.replaceChild(ra(eb), fb);\n eb.style.display = \"none\";\n (function() {\n if ((eb.readyState == 4)) {\n eb.parentNode.removeChild(eb);\n }\n else setTimeout(arguments.callee, 10);\n ;\n })();\n }\n else eb.parentNode.replaceChild(ra(eb), eb);\n ;\n };\n function ra(eb) {\n var fb = xa(\"div\");\n if ((fa.win && fa.ie)) {\n fb.innerHTML = eb.innerHTML;\n }\n else {\n var gb = eb.getElementsByTagName(i)[0];\n if (gb) {\n var hb = gb.childNodes;\n if (hb) {\n var ib = hb.length;\n for (var jb = 0; (jb < ib); jb++) {\n if ((!(((hb[jb].nodeType == 1) && (hb[jb].nodeName == \"PARAM\"))) && !((hb[jb].nodeType == 8)))) {\n fb.appendChild(hb[jb].cloneNode(true));\n };\n };\n }\n ;\n }\n ;\n }\n ;\n return fb;\n };\n function sa(eb, fb, gb) {\n var hb, ib = wa(gb);\n if ((fa.wk && (fa.wk < 312))) {\n return hb\n };\n if (ib) {\n if ((typeof eb.id == h)) {\n eb.id = gb;\n };\n if ((fa.ie && fa.win)) {\n var jb = \"\";\n for (var kb in eb) {\n if ((eb[kb] != Object.prototype[kb])) {\n if ((kb.toLowerCase() == \"data\")) {\n fb.movie = eb[kb];\n }\n else if ((kb.toLowerCase() == \"styleclass\")) {\n jb += ((\" class=\\\"\" + eb[kb]) + \"\\\"\");\n }\n else if ((kb.toLowerCase() != \"classid\")) {\n jb += ((((\" \" + kb) + \"=\\\"\") + eb[kb]) + \"\\\"\");\n }\n \n \n };\n };\n var lb = \"\";\n for (var mb in fb) {\n if ((fb[mb] != Object.prototype[mb])) {\n lb += ((((\"\\u003Cparam name=\\\"\" + mb) + \"\\\" value=\\\"\") + fb[mb]) + \"\\\" /\\u003E\");\n };\n };\n ib.outerHTML = ((((\"\\u003Cobject classid=\\\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\\\"\" + jb) + \"\\u003E\") + lb) + \"\\u003C/object\\u003E\");\n u[u.length] = eb.id;\n hb = wa(eb.id);\n }\n else {\n var nb = xa(i);\n nb.setAttribute(\"type\", l);\n for (var ob in eb) {\n if ((eb[ob] != Object.prototype[ob])) {\n if ((ob.toLowerCase() == \"styleclass\")) {\n nb.setAttribute(\"class\", eb[ob]);\n }\n else if ((ob.toLowerCase() != \"classid\")) {\n nb.setAttribute(ob, eb[ob]);\n }\n \n };\n };\n for (var pb in fb) {\n if (((fb[pb] != Object.prototype[pb]) && (pb.toLowerCase() != \"movie\"))) {\n ta(nb, pb, fb[pb]);\n };\n };\n ib.parentNode.replaceChild(nb, ib);\n hb = nb;\n }\n ;\n }\n ;\n return hb;\n };\n function ta(eb, fb, gb) {\n var hb = xa(\"param\");\n hb.setAttribute(\"name\", fb);\n hb.setAttribute(\"value\", gb);\n eb.appendChild(hb);\n };\n function ua(eb) {\n var fb = wa(eb);\n if ((fb && (fb.nodeName == \"OBJECT\"))) {\n if ((fa.ie && fa.win)) {\n fb.style.display = \"none\";\n (function() {\n if ((fb.readyState == 4)) {\n va(eb);\n }\n else setTimeout(arguments.callee, 10);\n ;\n })();\n }\n else fb.parentNode.removeChild(fb);\n \n };\n };\n function va(eb) {\n var fb = wa(eb);\n if (fb) {\n for (var gb in fb) {\n if ((typeof fb[gb] == \"function\")) {\n fb[gb] = null;\n };\n };\n fb.parentNode.removeChild(fb);\n }\n ;\n };\n function wa(eb) {\n var fb = null;\n try {\n fb = p.getElementById(eb);\n } catch (gb) {\n \n };\n return fb;\n };\n function xa(eb) {\n return p.createElement(eb);\n };\n function ya(eb, fb, gb) {\n eb.attachEvent(fb, gb);\n v[v.length] = [eb,fb,gb,];\n };\n function za(eb) {\n var fb = fa.pv, gb = eb.split(\".\");\n gb[0] = parseInt(gb[0], 10);\n gb[1] = (parseInt(gb[1], 10) || 0);\n gb[2] = (parseInt(gb[2], 10) || 0);\n return (((((fb[0] > gb[0]) || (((fb[0] == gb[0]) && (fb[1] > gb[1])))) || ((((fb[0] == gb[0]) && (fb[1] == gb[1])) && (fb[2] >= gb[2]))))) ? true : false);\n };\n function ab(eb, fb, gb, hb) {\n if ((fa.ie && fa.mac)) {\n return\n };\n var ib = p.getElementsByTagName(\"head\")[0];\n if (!ib) {\n return\n };\n var jb = (((gb && (typeof gb == \"string\"))) ? gb : \"screen\");\n if (hb) {\n ca = null;\n da = null;\n }\n ;\n if ((!ca || (da != jb))) {\n var kb = xa(\"style\");\n kb.setAttribute(\"type\", \"text/css\");\n kb.setAttribute(\"media\", jb);\n ca = ib.appendChild(kb);\n if ((((fa.ie && fa.win) && (typeof p.styleSheets != h)) && (p.styleSheets.length > 0))) {\n ca = p.styleSheets[(p.styleSheets.length - 1)];\n };\n da = jb;\n }\n ;\n if ((fa.ie && fa.win)) {\n if ((ca && (typeof ca.addRule == i))) {\n ca.addRule(eb, fb);\n };\n }\n else if ((ca && (typeof p.createTextNode != h))) {\n ca.appendChild(p.createTextNode((((eb + \" {\") + fb) + \"}\")));\n }\n ;\n };\n function bb(eb, fb) {\n if (!ea) {\n return\n };\n var gb = (fb ? \"visible\" : \"hidden\");\n if ((aa && wa(eb))) {\n wa(eb).style.visibility = gb;\n }\n else ab((\"#\" + eb), (\"visibility:\" + gb));\n ;\n };\n function cb(eb) {\n var fb = /[\\\\\\\"<>\\.;]/, gb = (fb.exec(eb) != null);\n return ((gb && (typeof encodeURIComponent != h)) ? encodeURIComponent(eb) : eb);\n };\n var db = function() {\n if ((fa.ie && fa.win)) {\n window.attachEvent(\"onunload\", function() {\n var eb = v.length;\n for (var fb = 0; (fb < eb); fb++) {\n v[fb][0].detachEvent(v[fb][1], v[fb][2]);;\n };\n var gb = u.length;\n for (var hb = 0; (hb < gb); hb++) {\n ua(u[hb]);;\n };\n for (var ib in fa) {\n fa[ib] = null;;\n };\n fa = null;\n for (var jb in g) {\n g[jb] = null;;\n };\n g = null;\n });\n };\n }();\n return {\n registerObject: function(eb, fb, gb, hb) {\n if (((fa.w3 && eb) && fb)) {\n var ib = {\n };\n ib.id = eb;\n ib.swfVersion = fb;\n ib.expressInstall = gb;\n ib.callbackFn = hb;\n t[t.length] = ib;\n bb(eb, false);\n }\n else if (hb) {\n hb({\n success: false,\n id: eb\n });\n }\n ;\n },\n getObjectById: function(eb) {\n if (fa.w3) {\n return na(eb)\n };\n },\n embedSWF: function(eb, fb, gb, hb, ib, jb, kb, lb, mb, nb) {\n var ob = {\n success: false,\n id: fb\n };\n if (((((((fa.w3 && !((fa.wk && (fa.wk < 312)))) && eb) && fb) && gb) && hb) && ib)) {\n bb(fb, false);\n ia(function() {\n gb += \"\";\n hb += \"\";\n var pb = {\n };\n if ((mb && (typeof mb === i))) {\n for (var qb in mb) {\n pb[qb] = mb[qb];;\n }\n };\n pb.data = eb;\n pb.width = gb;\n pb.height = hb;\n var rb = {\n };\n if ((lb && (typeof lb === i))) {\n for (var sb in lb) {\n rb[sb] = lb[sb];;\n }\n };\n if ((kb && (typeof kb === i))) {\n for (var tb in kb) {\n if ((typeof rb.flashvars != h)) {\n rb.flashvars += (((\"&\" + tb) + \"=\") + kb[tb]);\n }\n else rb.flashvars = ((tb + \"=\") + kb[tb]);\n ;\n }\n };\n if (za(ib)) {\n var ub = sa(pb, rb, fb);\n if ((pb.id == fb)) {\n bb(fb, true);\n };\n ob.success = true;\n ob.ref = ub;\n }\n else if ((jb && oa())) {\n pb.data = jb;\n pa(pb, rb, fb, nb);\n return;\n }\n else bb(fb, true);\n \n ;\n if (nb) {\n nb(ob);\n };\n });\n }\n else if (nb) {\n nb(ob);\n }\n ;\n },\n switchOffAutoHideShow: function() {\n ea = false;\n },\n ua: fa,\n getFlashPlayerVersion: function() {\n return {\n major: fa.pv[0],\n minor: fa.pv[1],\n release: fa.pv[2]\n };\n },\n hasFlashPlayerVersion: za,\n createSWF: function(eb, fb, gb) {\n if (fa.w3) {\n return sa(eb, fb, gb);\n }\n else return undefined\n ;\n },\n showExpressInstall: function(eb, fb, gb, hb) {\n if ((fa.w3 && oa())) {\n pa(eb, fb, gb, hb);\n };\n },\n removeSWF: function(eb) {\n if (fa.w3) {\n ua(eb);\n };\n },\n createCSS: function(eb, fb, gb, hb) {\n if (fa.w3) {\n ab(eb, fb, gb, hb);\n };\n },\n addDomLoadEvent: ia,\n addLoadEvent: ja,\n getQueryParamValue: function(eb) {\n var fb = (p.location.search || p.location.hash);\n if (fb) {\n if (/\\?/.test(fb)) {\n fb = fb.split(\"?\")[1];\n };\n if ((eb == null)) {\n return cb(fb)\n };\n var gb = fb.split(\"&\");\n for (var hb = 0; (hb < gb.length); hb++) {\n if ((gb[hb].substring(0, gb[hb].indexOf(\"=\")) == eb)) {\n return cb(gb[hb].substring(((gb[hb].indexOf(\"=\") + 1))))\n };\n };\n }\n ;\n return \"\";\n },\n expressInstallCallback: function() {\n if (ba) {\n var eb = wa(m);\n if ((eb && w)) {\n eb.parentNode.replaceChild(w, eb);\n if (x) {\n bb(x, true);\n if ((fa.ie && fa.win)) {\n w.style.display = \"block\";\n };\n }\n ;\n if (y) {\n y(z);\n };\n }\n ;\n ba = false;\n }\n ;\n }\n };\n }();\n e.exports = g;\n});\n__d(\"SoundPlayer\", [\"Arbiter\",\"ChatConfig\",\"swfobject\",\"swfobject2\",\"URI\",\"createArrayFrom\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ChatConfig\"), i = b(\"swfobject\").SWFObject, j = b(\"swfobject2\"), k = b(\"URI\"), l = b(\"createArrayFrom\"), m = {\n }, n = null, o = false, p = \"so_sound_player\", q = \"/swf/SoundPlayer.swf?v=1\", r = \"10.0.22.87\", s = null, t = h.get(\"sound.useswfobject_2\", false), u = h.get(\"sound.force_flash\", false);\n function v(da) {\n var ea = k(da);\n if (!ea.getDomain()) {\n return k().setPath(ea.getPath()).toString()\n };\n return da;\n };\n function w(da) {\n var ea = k(da).getPath();\n if (/\\.mp3$/.test(ea)) {\n return \"audio/mpeg\"\n };\n if (/\\.og[ga]$/.test(ea)) {\n return \"audio/ogg\"\n };\n return \"\";\n };\n function x() {\n if ((!s && !u)) {\n var da = document.createElement(\"audio\");\n if ((!da || !da.canPlayType)) {\n return null\n };\n da.setAttribute(\"preload\", \"auto\");\n document.body.appendChild(da);\n s = da;\n }\n ;\n return s;\n };\n function y() {\n var da = (document[p] || window[p]);\n if (da) {\n if ((!da.playSound && da.length)) {\n da = da[0];\n }\n };\n return ((((da && da.playSound) && da.loopSound)) ? da : null);\n };\n function z() {\n return o;\n };\n function aa(da, ea, fa) {\n n = {\n path: da,\n sync: ea,\n loop: fa\n };\n };\n function ba() {\n o = true;\n if (n) {\n var da = y();\n if (n.loop) {\n da.loopSound(n.path, n.sync);\n }\n else da.playSound(n.path, n.sync);\n ;\n }\n ;\n };\n var ca = {\n init: function(da) {\n da = l(da);\n var ea;\n for (var fa = 0; (fa < da.length); ++fa) {\n ea = da[fa];\n if (m[ea]) {\n return\n };\n };\n var ga = x();\n for (fa = 0; (ga && (fa < da.length)); ++fa) {\n ea = da[fa];\n if (ga.canPlayType(ea)) {\n m[ea] = true;\n return;\n }\n ;\n };\n m[\"audio/mpeg\"] = true;\n if (y()) {\n return\n };\n try {\n g.registerCallback(ba, [\"sound/player_ready\",\"sound/ready\",]);\n var ia = document.createElement(\"div\");\n ia.id = \"sound_player_holder\";\n document.body.appendChild(ia);\n if (t) {\n j.embedSWF(q, ia.id, \"1px\", \"1px\", r, null, {\n swf_id: p\n }, {\n allowscriptaccess: \"always\",\n wmode: \"transparent\"\n }, null, function(ka) {\n window[p] = ka.ref;\n g.inform(\"sound/player_ready\");\n });\n }\n else {\n var ja = new i(q, p, \"1px\", \"1px\", [r,], \"#ffffff\");\n ja.addParam(\"allowscriptaccess\", \"always\");\n ja.addParam(\"wmode\", \"transparent\");\n ja.addVariable(\"swf_id\", p);\n ja.fallback_html = \" \";\n ja.write(ia.id);\n window[p] = ja;\n g.inform(\"sound/player_ready\");\n }\n ;\n } catch (ha) {\n \n };\n },\n play: function(da, ea) {\n da = l(da);\n var fa = x(), ga, ha;\n for (var ia = 0; (fa && (ia < da.length)); ++ia) {\n ga = da[ia];\n ha = w(ga);\n if (!fa.canPlayType(ha)) {\n continue;\n };\n ca.init([ha,]);\n fa.src = v(ga);\n if (ea) {\n fa.setAttribute(\"loop\", \"\");\n }\n else fa.removeAttribute(\"loop\");\n ;\n fa.play();\n return;\n };\n for (ia = 0; (ia < da.length); ++ia) {\n ga = v(da[ia]);\n ha = w(ga);\n if ((ha != \"audio/mpeg\")) {\n continue;\n };\n ca.init([ha,]);\n var ja = y();\n if (!z()) {\n aa(ga, true, ea);\n return;\n }\n else if (ja) {\n if (ea) {\n ja.loopSound(ga, true);\n }\n else ja.playSound(ga, true);\n ;\n return;\n }\n \n ;\n };\n },\n stop: function(da) {\n da = l(da);\n for (var ea = 0; (ea < da.length); ++ea) {\n var fa = v(da[ea]), ga = x(), ha = y();\n if ((ga && (ga.src == fa))) {\n ga.pause();\n ga.src = undefined;\n }\n else (ha && ha.stopSound(fa));\n ;\n };\n }\n };\n e.exports = ca;\n});\n__d(\"SoundSynchronizer\", [\"hasArrayNature\",\"SoundPlayer\",\"createArrayFrom\",], function(a, b, c, d, e, f) {\n var g = b(\"hasArrayNature\"), h = b(\"SoundPlayer\"), i = b(\"createArrayFrom\"), j = \"fb_sounds_playing3\";\n function k() {\n if (window.localStorage) {\n try {\n var p = window.localStorage[j];\n if (p) {\n p = JSON.parse(p);\n if (g(p)) {\n return p\n };\n }\n ;\n } catch (o) {\n \n }\n };\n return [];\n };\n function l(o) {\n if (window.localStorage) {\n var p = k();\n p.push(o);\n while ((p.length > 5)) {\n p.shift();;\n };\n try {\n window.localStorage[j] = JSON.stringify(p);\n } catch (q) {\n \n };\n }\n ;\n };\n function m(o) {\n return k().some(function(p) {\n return (p === o);\n });\n };\n var n = {\n play: function(o, p, q) {\n o = i(o);\n p = (p || ((o[0] + Math.floor((Date.now() / 1000)))));\n if (m(p)) {\n return\n };\n h.play(o, q);\n l(p);\n },\n isSupported: function() {\n return !!window.localStorage;\n }\n };\n e.exports = n;\n});\n__d(\"Sound\", [\"SoundPlayer\",\"SoundRPC\",\"SoundSynchronizer\",\"URI\",\"UserAgent\",], function(a, b, c, d, e, f) {\n var g = b(\"SoundPlayer\"), h = b(\"SoundRPC\"), i = b(\"SoundSynchronizer\"), j = b(\"URI\"), k = b(\"UserAgent\"), l = null, m = {\n init: function(q) {\n if (!l) {\n g.init(q);\n };\n },\n play: function(q, r, s) {\n if (l) {\n h.playRemote(l.contentWindow, q, r, false);\n }\n else h.playLocal(q, r, s);\n ;\n },\n stop: function(q) {\n if (!l) {\n g.stop(q);\n };\n }\n }, n = new j(location.href);\n if ((n.getSubdomain() && (n.getSubdomain() !== \"www\"))) {\n n.setSubdomain(\"www\");\n };\n var o = n.getDomain();\n function p() {\n if ((k.ie() < 9)) {\n return false\n };\n return (i.isSupported() && h.supportsRPC());\n };\n if (((n.isFacebookURI() && (location.host !== o)) && p())) {\n l = document.createElement(\"iframe\");\n l.setAttribute(\"src\", ((\"//\" + o) + \"/sound_iframe.php\"));\n l.style.display = \"none\";\n document.body.appendChild(l);\n }\n;\n e.exports = m;\n});\n__d(\"MercuryBrowserAlerts\", [\"ArbiterMixin\",\"ChatActivity\",\"ChatConfig\",\"ChatOptions\",\"ChatTitleBarBlinker\",\"MercuryParticipants\",\"MercuryThreadMuter\",\"MercuryThreads\",\"MessagingTag\",\"Sound\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"ChatActivity\"), i = b(\"ChatConfig\"), j = b(\"ChatOptions\"), k = b(\"ChatTitleBarBlinker\"), l = b(\"MercuryParticipants\"), m = b(\"MercuryThreadMuter\"), n = b(\"MercuryThreads\").get(), o = b(\"MessagingTag\"), p = b(\"Sound\"), q = b(\"copyProperties\");\n p.init([\"audio/ogg\",\"audio/mpeg\",]);\n function r(t) {\n if (j.getSetting(\"sound\")) {\n p.play([i.get(\"sound.notif_ogg_url\"),i.get(\"sound.notif_mp3_url\"),], t, false);\n };\n };\n var s = {\n messageReceived: function(t) {\n if ((((t.author == l.user) || !t.is_unread) || (((t.folder != o.INBOX) && (t.folder != o.ARCHIVED))))) {\n return\n };\n var u = t.thread_id, v = h.isActive();\n if (v) {\n var w = false;\n s.inform(\"before-alert\", {\n threadID: u,\n cancelAlert: function() {\n w = true;\n }\n });\n }\n ;\n n.getThreadMeta(u, function(x) {\n var y = m.isThreadMuted(x);\n if (y) {\n return\n };\n var z = t.timestamp;\n if (v) {\n (!w && r(z));\n }\n else {\n k.blink(u, z);\n r(z);\n }\n ;\n k.blinkingElsewhere();\n }.bind(this));\n }\n };\n e.exports = q(s, g);\n});\n__d(\"ActiveXSupport\", [], function(a, b, c, d, e, f) {\n var g = null, h = {\n isSupported: function() {\n if ((g !== null)) {\n return g\n };\n try {\n g = (!!window.ActiveXObject && !!new ActiveXObject(\"htmlfile\"));\n } catch (i) {\n g = false;\n };\n return g;\n }\n };\n e.exports = h;\n});\n__d(\"VideoCallSupport\", [\"MercuryConfig\",\"UserAgent\",], function(a, b, c, d, e, f) {\n var g = b(\"MercuryConfig\"), h = b(\"UserAgent\"), i = {\n newVCIsSupported: function() {\n return (g.NewVCGK && (((h.chrome() >= 24) || (h.firefox() >= 22))));\n }\n };\n e.exports = i;\n});\n__d(\"VideoCallRecordMessageDialog\", [\"AsyncDialog\",\"AsyncRequest\",\"Dialog\",\"URI\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncDialog\"), h = b(\"AsyncRequest\"), i = b(\"Dialog\"), j = b(\"URI\"), k = b(\"tx\"), l = {\n get: function(m, n) {\n var o = \"Would you like to leave a message?\", p = \"New Message\";\n return new i().setTitle(k._(\"{firstname} is Unavailable\", {\n firstname: n\n })).setBody(o).setButtons([{\n name: \"record-message\",\n label: p\n },i.CANCEL,]).setHandler(function() {\n var q = j(\"/ajax/messaging/composer.php\").setQueryData({\n ids: [m,],\n autoloadvideo: true\n }).toString();\n g.send(new h(q));\n });\n }\n };\n e.exports = l;\n});\n__d(\"VideoCallCore\", [\"Event\",\"ActiveXSupport\",\"Arbiter\",\"AsyncRequest\",\"AvailableList\",\"AvailableListConstants\",\"Bootloader\",\"ChannelConstants\",\"Cookie\",\"CSS\",\"Dialog\",\"MercuryConfig\",\"UserAgent\",\"VideoCallSupport\",\"emptyFunction\",\"ge\",\"VideoCallTemplates\",\"ShortProfiles\",\"VideoCallRecordMessageDialog\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"ActiveXSupport\"), i = b(\"Arbiter\"), j = b(\"AsyncRequest\"), k = b(\"AvailableList\"), l = b(\"AvailableListConstants\"), m = b(\"Bootloader\"), n = b(\"ChannelConstants\"), o = b(\"Cookie\"), p = b(\"CSS\"), q = b(\"Dialog\"), r = b(\"MercuryConfig\"), s = b(\"UserAgent\"), t = b(\"VideoCallSupport\"), u = b(\"emptyFunction\"), v = b(\"ge\");\n b(\"VideoCallTemplates\");\n var w = [], x = [], y = {\n isSupported: function() {\n if (t.newVCIsSupported()) {\n return true\n };\n if (s.windows()) {\n if (((s.ie() >= 9) && !s.ie64())) {\n return h.isSupported();\n }\n else return ((((((s.ie() >= 7) && !s.ie64())) || (s.firefox() >= 3.6)) || (s.chrome() >= 5)) || (s.opera() >= 12))\n ;\n }\n else if ((s.osx() > 10.4)) {\n return (((((s.firefox() >= 3.6) || (s.chrome() >= 5)) || (s.webkit() >= 500)) || (s.opera() >= 12)))\n }\n ;\n return false;\n },\n isInstalled: function() {\n var ca = false;\n if (this.isSupported()) {\n if (z()) {\n var da = null;\n try {\n da = new ActiveXObject(\"SkypeLimited.SkypeWebPlugin\");\n ca = !!da;\n } catch (ea) {\n \n };\n da = null;\n }\n else {\n ca = aa();\n if (r.VideoCallingNoJavaGK) {\n if ((ca && (s.osx() >= 10.8))) {\n if ((ca.description && (ca.description.charAt(0) != \"v\"))) {\n ca = false;\n }\n }\n };\n }\n \n };\n return ca;\n },\n mightReloadPostInstall: function() {\n return s.windows();\n },\n onVideoMessage: function(ca) {\n w.push(ca);\n m.loadModules([\"VideoCallController\",], u);\n },\n onRTCMessage: function(ca) {\n if (t.newVCIsSupported()) {\n x.push(ca);\n m.loadModules([\"FBRTCCallController\",], u);\n }\n ;\n },\n setMessageHandler: function(ca) {\n this.onVideoMessage = ca;\n if (ca) {\n while (w.length) {\n ca(w.shift());;\n }\n };\n },\n setRTCMessageHandler: function(ca) {\n this.onRTCMessage = ca;\n if (ca) {\n while (x.length) {\n ca(x.shift());;\n }\n };\n },\n availableForCall: function(ca) {\n var da = k.get(ca);\n return ((da == l.ACTIVE) || (da == l.IDLE));\n },\n onProfileButtonClick: function(ca) {\n y.startCallOrLeaveMessage(ca, \"profile_button_click\");\n },\n attachListenerToProfileButton: function(ca) {\n var da = v(\"videoCallProfileButton\");\n if (da) {\n if (!y.isSupported()) {\n p.hide(da);\n return;\n }\n ;\n g.listen(da, \"click\", function(event) {\n y.startCallOrLeaveMessage(ca, \"profile_button_click_timeline\");\n });\n }\n ;\n },\n startCallOrLeaveMessage: function(ca, da) {\n if (this.availableForCall(ca)) {\n y.showOutgoingCallDialog(ca, da);\n }\n else b(\"ShortProfiles\").get(ca, function(ea) {\n b(\"VideoCallRecordMessageDialog\").get(ca, ea.firstName).show();\n });\n ;\n },\n showOutgoingCallDialog: function(ca, da) {\n var ea = (da || \"unknown\");\n y.logClick(ca, ea);\n var fa = ((y.isInstalled() || r.NewVCGK) ? \"outgoing_dialog.php\" : \"intro.php\"), ga = (((\"/ajax/chat/video/\" + fa) + \"?idTarget=\") + ca);\n new q().setAllowCrossPageTransition(true).setAsync(new j(ga)).show();\n },\n logClick: function(ca, da) {\n new j().setURI(\"/ajax/chat/video/log_click.php\").setData({\n targetUserID: ca,\n clickSource: da\n }).setAllowCrossPageTransition(true).setErrorHandler(u).send();\n }\n };\n function z() {\n return ((s.ie() && s.windows()) && !s.opera());\n };\n function aa() {\n if (!navigator) {\n return null\n };\n navigator.plugins.refresh(false);\n var ca = navigator.mimeTypes[\"application/skypesdk-plugin\"];\n return (ca && ca.enabledPlugin);\n };\n function ba() {\n if (!y.mightReloadPostInstall()) {\n return\n };\n var ca = o.get(\"vcpwn\");\n if (ca) {\n o.clear(\"vcpwn\");\n var da = o.get(\"vctid\");\n if (da) {\n o.clear(\"vctid\");\n if (o.get(\"vctid\")) {\n return\n };\n if ((da && y.isInstalled())) {\n var ea = (\"/ajax/chat/video/outgoing_dialog.php?idTarget=\" + da);\n new q().setAllowCrossPageTransition(true).setAsync(new j(ea)).show();\n }\n ;\n }\n ;\n }\n ;\n };\n i.subscribe(n.getArbiterType(\"video\"), function(ca, da) {\n y.onVideoMessage(da.obj);\n });\n i.subscribe(n.getArbiterType(\"webrtc\"), function(ca, da) {\n y.onRTCMessage(da.obj);\n });\n i.subscribe(n.getArbiterType(\"chat_event\"), function(ca, da) {\n if ((da.obj.event_name == \"missed-call\")) {\n m.loadModules([\"VideoCallController\",], function(ea) {\n ea.onMissedCallEvent(da.obj);\n });\n };\n });\n ba();\n e.exports = y;\n});\n__d(\"ChatTabModel\", [\"function-extensions\",\"Arbiter\",\"ArbiterMixin\",\"ChatBehavior\",\"ChatConfig\",\"JSLogger\",\"MercuryAssert\",\"MercuryServerRequests\",\"MercuryThreads\",\"MercuryTimestampTracker\",\"PresenceInitialData\",\"PresenceState\",\"PresenceUtil\",\"areObjectsEqual\",\"copyProperties\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"Arbiter\"), h = b(\"ArbiterMixin\"), i = b(\"ChatBehavior\"), j = b(\"ChatConfig\"), k = b(\"JSLogger\"), l = b(\"MercuryAssert\"), m = b(\"MercuryServerRequests\").get(), n = b(\"MercuryThreads\").get(), o = b(\"MercuryTimestampTracker\").get(), p = b(\"PresenceInitialData\"), q = b(\"PresenceState\"), r = b(\"PresenceUtil\"), s = b(\"areObjectsEqual\"), t = b(\"copyProperties\"), u = [], v = null, w = null, x = null, y = null;\n function z() {\n return parseInt(p.serverTime, 10);\n };\n var aa = (j.get(\"tab_max_load_age\") || 3600000), ba = (z() - aa), ca = 0, da = 20, ea = k.create(\"chat_tab_model\"), fa = false;\n function ga(xa) {\n var ya = q.verifyNumber(xa.uct2);\n if ((!ya || (typeof ya !== \"number\"))) {\n ea.warn(\"bad_cookie_version\", xa.uct2);\n return null;\n }\n ;\n if (((ya < ca) || (ya < ba))) {\n return null\n };\n return ya;\n };\n function ha(xa) {\n var ya = ga(xa);\n if (!ya) {\n var za = {\n };\n za.old_tabs = ((xa && xa.t2) && JSON.stringify(xa.t2));\n za.old_promoted = (xa && xa.lm2);\n za.old_time = (xa && xa.uct2);\n za.old_reason = (xa && xa.tr);\n za.old_window = (xa && xa.tw);\n var ab;\n if ((w && xa.t2)) {\n for (var bb = 0; (bb < xa.t2.length); bb++) {\n var cb = xa.t2[bb];\n if ((cb.i === w)) {\n ab = cb.r;\n };\n }\n };\n var db = [];\n u.forEach(function(eb) {\n if (!eb.fragile) {\n var fb = {\n i: eb.id,\n si: eb.server_id\n };\n if ((eb.raised || (((eb.id === w) && ab)))) {\n fb.r = 1;\n };\n db.push(fb);\n }\n ;\n });\n xa.t2 = db;\n xa.uct2 = ca;\n xa.lm2 = v;\n xa.tr = y;\n xa.tw = r.getSessionID();\n za.new_tabs = JSON.stringify(xa.t2);\n za.new_promoted = xa.lm2;\n za.new_time = xa.uct2;\n za.new_reason = xa.tr;\n za.new_window = xa.tw;\n ea.debug(\"store\", za);\n }\n ;\n return xa;\n };\n function ia(xa) {\n if (xa) {\n var ya = ga(xa);\n if ((ya && (ya !== ca))) {\n var za = {\n };\n za.old_tabs = JSON.stringify(u);\n za.old_promoted = v;\n za.old_time = ca;\n za.old_reason = y;\n za.window_id = r.getSessionID();\n za.cookie_tabs = ((xa && xa.t2) && JSON.stringify(xa.t2));\n za.cookie_promoted = (xa && xa.lm2);\n za.cookie_time = (xa && xa.uct2);\n za.cookie_reason = (xa && xa.tr);\n za.cookie_window = (xa && xa.tw);\n ca = ya;\n y = \"load\";\n var ab = ja(xa.t2, (xa.lm2 || null));\n za.load_result = ab;\n za.new_tabs = JSON.stringify(u);\n za.new_promoted = v;\n za.new_time = ca;\n za.new_reason = y;\n var event = \"load\";\n if (!fa) {\n event += \"_init\";\n };\n ea.log(event, za);\n return ab;\n }\n ;\n }\n ;\n return false;\n };\n function ja(xa, ya) {\n if (ka(xa, ya)) {\n var za = u.filter(function(cb) {\n return cb.fragile;\n }), ab = {\n };\n v = null;\n u = xa.map(function(cb) {\n var db = {\n id: cb.i,\n server_id: cb.si\n };\n if ((db.id == ya)) {\n v = db.id;\n };\n if ((w == cb.i)) {\n var eb = pa(w);\n if ((eb != -1)) {\n db.raised = u[eb].raised;\n return db;\n }\n else return null\n ;\n }\n ;\n if (cb.r) {\n db.raised = true;\n };\n ab[db.id] = db;\n return db;\n });\n u = u.filter(function(cb) {\n return (cb != null);\n });\n if (x) {\n for (var bb in x) {\n if ((!ab[bb] || !ab[bb].raised)) {\n delete x[bb];\n };\n }\n };\n za = za.filter(function(cb) {\n return !ab[cb.id];\n });\n u = u.concat(za);\n oa();\n return true;\n }\n ;\n return false;\n };\n function ka(xa, ya) {\n if ((ya != v)) {\n return true\n };\n var za = u.filter(function(cb) {\n return !cb.fragile;\n });\n if ((xa.length != za.length)) {\n return true\n };\n for (var ab = 0, bb = xa.length; (ab < bb); ab++) {\n if ((xa[ab].id === w)) {\n continue;\n };\n if (!s(xa[ab], za[ab])) {\n return true\n };\n };\n return false;\n };\n function la(xa, ya, za) {\n var ab = ia(q.get());\n if (((ya === undefined) || (ya > ca))) {\n if (xa()) {\n ab = true;\n y = (za || null);\n na(ya);\n }\n ;\n }\n else ea.error(\"rejected\", {\n change_time: ya,\n state_time: ca\n });\n ;\n (ab && ma());\n };\n function ma() {\n if (fa) {\n va.inform(\"chat/tabs-changed\", va.get());\n };\n };\n function na(xa) {\n if ((xa === undefined)) {\n xa = Math.max((o.getLastUserMessageTimestamp() || 1), (ca + 1));\n };\n ca = xa;\n q.doSync();\n };\n function oa() {\n var xa = (u.length - da);\n if ((xa > 0)) {\n u = u.filter(function(ya) {\n return (ya.raised || (xa-- <= 0));\n });\n };\n };\n function pa(xa) {\n for (var ya = 0; (ya < u.length); ya++) {\n if ((u[ya].id == xa)) {\n return ya\n };\n };\n return -1;\n };\n function qa(xa, ya) {\n var za = n.getThreadMetaNow(xa);\n if (!za) {\n return false\n };\n if (za.is_canonical_user) {\n return sa(xa, ya);\n }\n else {\n var ab = ra(xa);\n if (ab) {\n m.getServerThreadID(xa, function(bb) {\n if (ta(xa, bb)) {\n na();\n ma();\n }\n ;\n });\n };\n return ab;\n }\n ;\n };\n function ra(xa) {\n if ((pa(xa) === -1)) {\n u.push({\n id: xa,\n fragile: true\n });\n ea.log(\"open_fragile_tab\", {\n tabs: JSON.stringify(u),\n opened: xa,\n window_id: r.getSessionID()\n });\n return true;\n }\n ;\n return false;\n };\n function sa(xa, ya) {\n var za = pa(xa);\n if ((za != -1)) {\n if (u[za].fragile) {\n u.splice(za, 1);\n }\n else {\n u[za].signatureID = ya;\n return true;\n }\n \n };\n for (var ab = 0; (ab <= u.length); ab++) {\n if (((ab == u.length) || u[ab].fragile)) {\n u.splice(ab, 0, {\n id: xa,\n signatureID: ya\n });\n oa();\n ea.log(\"open_tab\", {\n tabs: JSON.stringify(u),\n opened: xa,\n window_id: r.getSessionID()\n });\n return true;\n }\n ;\n };\n };\n function ta(xa, ya) {\n var za = pa(xa);\n if (((za != -1) && u[za].fragile)) {\n var ab = u[za];\n ab.fragile = false;\n ab.server_id = ya;\n var bb = [];\n u.forEach(function(cb) {\n if ((cb.id != xa)) {\n if ((ab && cb.fragile)) {\n bb.push(ab);\n ab = null;\n }\n ;\n bb.push(cb);\n }\n ;\n });\n if (ab) {\n bb.push(ab);\n };\n u = bb;\n ea.log(\"make_permanent\", {\n tabs: JSON.stringify(u),\n tab_id: xa,\n window_id: r.getSessionID()\n });\n return true;\n }\n ;\n return false;\n };\n function ua(xa) {\n var ya = pa(xa);\n if ((xa == v)) {\n v = null;\n };\n if ((ya != -1)) {\n u.splice(ya, 1);\n ea.log(\"close_tab\", {\n tabs: JSON.stringify(u),\n closed: xa,\n window_id: r.getSessionID()\n });\n return true;\n }\n ;\n return false;\n };\n q.registerStateStorer(ha);\n q.registerStateLoader(function(xa) {\n if (ia(xa)) {\n ma();\n };\n });\n function va() {\n \n };\n t(va, h, {\n indexOf: function(xa) {\n return pa(xa);\n },\n getTab: function(xa) {\n l.isThreadID(xa);\n var ya = this.indexOf(xa);\n if ((ya > -1)) {\n var za = u[ya];\n return t({\n }, za);\n }\n ;\n return null;\n },\n getEmptyTab: function() {\n for (var xa = 0; (xa < u.length); xa++) {\n var ya = u[xa].id;\n if (n.isNewEmptyLocalThread(ya)) {\n return ya\n };\n };\n return null;\n },\n getServerTime: function() {\n return z();\n },\n closeAllTabs: function() {\n if (u.length) {\n ea.log(\"close_all_tabs\", {\n closed_tabs: JSON.stringify(u),\n window_id: r.getSessionID()\n });\n u = [];\n v = null;\n if (x) {\n x = {\n };\n };\n na();\n ma();\n }\n ;\n },\n closeFragileTabs: function() {\n var xa = [];\n for (var ya = 0; (ya < u.length); ya++) {\n if ((u[ya].fragile && !n.isNewEmptyLocalThread(u[ya].id))) {\n xa.push(u[ya]);\n u.splice(ya);\n ma();\n break;\n }\n ;\n };\n ea.log(\"close_fragile_tabs\", {\n tabs: JSON.stringify(u),\n fragile_closed: xa,\n window_id: r.getSessionID()\n });\n },\n closeTab: function(xa, ya) {\n l.isThreadID(xa);\n var za = false;\n if (x) {\n delete x[xa];\n za = true;\n }\n ;\n la(function() {\n if (ua(xa)) {\n za = true;\n };\n return za;\n }, undefined, ya);\n },\n closeTabAndDemote: function(xa, ya, za) {\n l.isThreadID(xa);\n var ab = false;\n if (x) {\n delete x[xa];\n ab = true;\n }\n ;\n la(function() {\n if (ua(xa)) {\n if (v) {\n var bb = pa(v);\n if ((bb > ya)) {\n var cb = u.splice(bb, 1)[0];\n u.splice(ya, 0, cb);\n v = null;\n }\n ;\n }\n ;\n ab = true;\n }\n ;\n return ab;\n }, undefined, za);\n },\n raiseTab: function(xa, ya, za) {\n l.isThreadID(xa);\n var ab = false;\n if ((x && ya)) {\n x[xa] = true;\n ab = true;\n }\n ;\n if ((!ya && (xa === w))) {\n (ab && ma());\n return;\n }\n ;\n la(function() {\n if (qa(xa, za)) {\n ab = true;\n };\n var bb = pa(xa);\n if (((bb != -1) && !u[bb].raised)) {\n u[bb].raised = true;\n ab = true;\n ea.log(\"raise_tab\", {\n tabs: JSON.stringify(u),\n raised: xa,\n window_id: r.getSessionID()\n });\n }\n ;\n return ab;\n });\n },\n get: function() {\n var xa = u.map(function(ya) {\n var za = t({\n }, ya);\n delete za.fragile;\n if (x) {\n za.raised = x[za.id];\n };\n return za;\n });\n return {\n tabs: xa,\n promoted: v\n };\n },\n openFragileTab: function(xa) {\n l.isThreadID(xa);\n if (ra(xa)) {\n ma();\n };\n },\n openTab: function(xa) {\n l.isThreadID(xa);\n la(qa.curry(xa));\n },\n lowerTab: function(xa) {\n l.isThreadID(xa);\n var ya = false;\n if (x) {\n delete x[xa];\n ya = true;\n }\n ;\n la(function() {\n var za = pa(xa);\n if (((za != -1) && u[za].raised)) {\n delete u[za].raised;\n ea.log(\"lower_tab\", {\n tabs: JSON.stringify(u),\n lowered: xa,\n window_id: r.getSessionID()\n });\n ya = true;\n }\n ;\n return ya;\n });\n },\n raiseAndPromoteTab: function(xa, ya, za, ab, bb) {\n l.isThreadID(xa);\n var cb = false;\n if ((x && ya)) {\n x[xa] = true;\n cb = true;\n }\n ;\n if ((!ya && (xa === w))) {\n (cb && ma());\n return;\n }\n ;\n la(function() {\n if (qa(xa, za)) {\n cb = true;\n };\n var db = pa(xa);\n if (((db != -1) && ((!u[db].raised || (v != xa))))) {\n u[db].raised = true;\n v = xa;\n cb = true;\n ea.log(\"raise_and_promote_tab\", {\n tabs: JSON.stringify(u),\n promoted: xa,\n window_id: r.getSessionID()\n });\n }\n ;\n return cb;\n }, ab, bb);\n },\n promoteThreadInPlaceOfThread: function(xa, ya) {\n l.isThreadID(xa);\n l.isThreadID(ya);\n la(function() {\n var za = pa(xa), ab = pa(ya);\n if ((v === ya)) {\n v = xa;\n };\n var bb = u[za];\n u[za] = u[ab];\n u[ab] = bb;\n return true;\n });\n },\n squelchTab: function(xa) {\n l.isThreadID(xa);\n w = xa;\n this.lowerTab(xa);\n ea.log(\"squelch_tab\", {\n squelched: xa,\n tabs: JSON.stringify(u),\n window_id: r.getSessionID()\n });\n },\n clearSquelchedTab: function() {\n if (w) {\n ea.log(\"unsquelch_tab\", {\n squelched: w,\n tabs: JSON.stringify(u),\n window_id: r.getSessionID()\n });\n };\n w = null;\n },\n persistLocalRaised: function() {\n if (x) {\n la(function() {\n var xa = false;\n u.forEach(function(ya) {\n if ((ya.raised != x[ya.id])) {\n xa = true;\n if (x[ya.id]) {\n ya.raised = true;\n }\n else delete ya.raised;\n ;\n }\n ;\n });\n return xa;\n });\n ea.log(\"persist_local_raise\", {\n tabs: JSON.stringify(u),\n window_id: r.getSessionID()\n });\n }\n ;\n }\n });\n g.subscribe(k.DUMP_EVENT, function(xa, ya) {\n ya.chat_tabs = {\n promoted: v,\n tabs: u.map(function(za) {\n return t({\n }, za);\n }),\n time: ca,\n max_load_age: aa\n };\n });\n function wa() {\n var xa = i.ignoresRemoteTabRaise();\n if ((xa && !x)) {\n ea.log(\"start_ignore_remote_raise\");\n x = {\n };\n ma();\n }\n else if ((!xa && x)) {\n ea.log(\"stop_ignore_remote_raise\");\n x = null;\n ma();\n }\n \n ;\n };\n i.subscribe(i.ON_CHANGED, wa);\n wa();\n ia(q.getInitial(), true);\n if ((ca === 0)) {\n ca = (z() - 600000);\n };\n fa = true;\n e.exports = va;\n});\n__d(\"LinkshimHandler\", [\"Event\",\"LinkshimAsyncLink\",\"LinkshimHandlerConfig\",\"URI\",\"shield\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"LinkshimAsyncLink\"), i = b(\"LinkshimHandlerConfig\"), j = b(\"URI\"), k = b(\"shield\"), l = {\n setUpLinkshimHandling: function(r) {\n try {\n var t = j(r.getAttribute(\"href\")), u = m(t);\n if ((u && n(t))) {\n g.listen(r, \"mouseover\", k(h.swap, null, r, u));\n var v = p(t);\n g.listen(r, \"click\", function() {\n if (i.supports_meta_referrer) {\n h.referrer_log(r, v, o(t).toString());\n }\n else h.swap(r, t);\n ;\n });\n }\n ;\n } catch (s) {\n \n };\n }\n };\n function m(r) {\n return (r.getQueryData().u ? new j(r.getQueryData().u) : null);\n };\n function n(r) {\n return r.getQueryData().hasOwnProperty(\"s\");\n };\n function o(r) {\n return j(\"/si/ajax/l/render_linkshim_log/\").setSubdomain(\"www\").setQueryData(r.getQueryData());\n };\n function p(r) {\n var s;\n if (q()) {\n s = j(r).addQueryData({\n render_verification: true\n });\n }\n else s = m(r);\n ;\n return s;\n };\n function q() {\n var r = (i.render_verification_rate || 0);\n return (Math.floor(((Math.random() * r) + 1)) === r);\n };\n e.exports = l;\n});"); |
| // 16150 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s6c42554350258955c8b9ee2ffab9725ca8f6e1dc"); |
| // 16151 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"WD1Wm\",]);\n}\n;\n;\n__d(\"BlackbirdUpsellConstants\", [], function(a, b, c, d, e, f) {\n e.exports = {\n ACTION_UPSELL: \"upsell\",\n CLICK_TYPE_DISMISS_PROMO: \"dismiss_promo\",\n ACTION_EDUCATE: \"educate\",\n CLICK_TYPE_ENABLE_CHAT: \"enable_chat\",\n CLICK_TYPE_OPEN_SETTINGS: \"open_settings\"\n };\n});\n__d(\"AsyncLoader\", [\"copyProperties\",\"AsyncRequest\",\"BaseAsyncLoader\",], function(a, b, c, d, e, f) {\n var g = b(\"copyProperties\"), h = b(\"AsyncRequest\"), i = b(\"BaseAsyncLoader\");\n function j(k, l) {\n this._endpoint = k;\n this._type = l;\n };\n;\n g(j.prototype, i.prototype);\n j.prototype.send = function(k, l, m, n, o) {\n new h(k).setData({\n ids: l\n }).setHandler(n).setErrorHandler(o).setAllowCrossPageTransition(true).setMethod(\"GET\").setReadOnly(true).send();\n };\n e.exports = j;\n});\n__d(\"BlackbirdUpsell\", [\"JSBNG__Event\",\"Arbiter\",\"AsyncRequest\",\"LegacyContextualDialog\",\"DOM\",\"LayerDestroyOnHide\",\"LayerHideOnTransition\",\"PresencePrivacy\",\"copyProperties\",\"BlackbirdUpsellConfig\",\"BlackbirdUpsellConstants\",\"BlackbirdUpsellTemplates\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Arbiter\"), i = b(\"AsyncRequest\"), j = b(\"LegacyContextualDialog\"), k = b(\"DOM\"), l = b(\"LayerDestroyOnHide\"), m = b(\"LayerHideOnTransition\"), n = b(\"PresencePrivacy\"), o = b(\"copyProperties\"), p = b(\"BlackbirdUpsellConfig\"), q = b(\"BlackbirdUpsellConstants\"), r = b(\"BlackbirdUpsellTemplates\"), s = \"/ajax/chat/blackbird/update_clicks.php\", t = \"/ajax/chat/blackbird/update_impressions.php\", u = \"/ajax/chat/blackbird/dismiss.php\", v = 235, w = null, x = null, y = false, z = false;\n function aa() {\n \n };\n;\n o(aa, {\n shouldShow: function() {\n if (this._dialogDismissed) {\n return false;\n }\n ;\n ;\n if (this.isEducation()) {\n return ((((!!p.EducationGK && !p.EducationDismissed)) && ((p.EducationImpressions < p.EducationImpressionLimit))));\n }\n else return ((((((!!p.UpsellGK && !p.UpsellDismissed)) && ((p.UpsellImpressions < p.UpsellImpressionLimit)))) && ((p.FriendCount >= p.UpsellMinFriendCount))))\n ;\n },\n isEducation: function() {\n return ((p.TimeOffline <= p.EducationTimeOfflineThresdhold));\n },\n getOfflineContent: function() {\n if (this.isEducation()) {\n return this._getEducationContent();\n }\n else return this._getUpsellContent()\n ;\n },\n _getEducationContent: function() {\n ga();\n var ka = r[\":fb:chat:blackbird:offline-educate\"].build(), la = ka.getNode(\"chatSettingsButton\");\n g.listen(la, \"click\", function() {\n h.inform(\"chat/advanced-settings-dialog-opened\");\n ja(q.CLICK_TYPE_OPEN_SETTINGS);\n da();\n });\n return ka.getRoot();\n },\n _getUpsellContent: function() {\n fa();\n var ka = r[\":fb:chat:blackbird:upsell\"].build(), la = ka.getNode(\"chatSettingsButton\");\n g.listen(la, \"click\", function() {\n h.inform(\"chat/advanced-settings-dialog-opened\");\n ia(q.CLICK_TYPE_OPEN_SETTINGS);\n ca();\n });\n var ma = ka.getNode(\"enableChatButton\");\n g.listen(ma, \"click\", function() {\n ia(q.CLICK_TYPE_ENABLE_CHAT);\n ca();\n });\n return ka.getRoot();\n },\n getBlackbirdContent: function(ka) {\n ga();\n switch (ka) {\n case n.ONLINE:\n return r[\":fb:chat:blackbird:most-friends-educate\"].build().getRoot();\n case n.OFFLINE:\n return r[\":fb:chat:blackbird:some-friends-educate\"].build().getRoot();\n };\n ;\n },\n showOfflineDialog: function(ka) {\n this.showDialog(ka, this.getOfflineContent.bind(this));\n },\n showBlackbirdDialog: function(ka, la) {\n this.showDialog(ka, this.getBlackbirdContent.curry(la));\n },\n showDialog: function(ka, la) {\n ((!w && this._constructDialog()));\n k.setContent(x, la());\n w.setContext(ka);\n w.show();\n },\n hide: function() {\n if (((w && w.isShown()))) {\n w.hide();\n }\n ;\n ;\n },\n dismiss: function() {\n this.hide();\n if (this.isEducation()) {\n da();\n }\n else ca();\n ;\n ;\n },\n registerDismissClick: function() {\n if (this.isEducation()) {\n ja(q.CLICK_TYPE_DISMISS_PROMO);\n }\n else ia(q.CLICK_TYPE_DISMISS_PROMO);\n ;\n ;\n },\n isVisible: function() {\n return ((z && !y));\n },\n _constructDialog: function() {\n var ka = r[\":fb:chat:blackbird:dialog-frame\"].build();\n x = ka.getNode(\"dialogContent\");\n w = new j();\n w.init(ka.getRoot());\n w.setPosition(\"above\").setWidth(v).setFixed(true).disableBehavior(l).disableBehavior(m);\n g.listen(ka.getNode(\"dialogCloseButton\"), \"click\", this.dismiss.bind(this));\n g.listen(ka.getNode(\"dialogCloseButton\"), \"click\", this.registerDismissClick.bind(this));\n }\n });\n function ba(ka, la) {\n if (((!y && z))) {\n y = true;\n n.inform(\"privacy-user-presence-changed\");\n var ma = new i(u);\n ma.setData({\n source: ka,\n impressions: la,\n time_offline: p.TimeOffline\n });\n ma.setErrorHandler(function() {\n y = false;\n });\n ma.send();\n }\n ;\n ;\n };\n;\n function ca() {\n ba(q.ACTION_UPSELL, p.UpsellImpressions);\n };\n;\n function da() {\n ba(q.ACTION_EDUCATE, p.EducationImpressions);\n };\n;\n function ea(ka, la) {\n if (!z) {\n z = true;\n var ma = new i(t);\n ma.setData({\n action: ka,\n impressions: la,\n time_offline: p.TimeOffline\n });\n ma.setErrorHandler(function() {\n z = false;\n });\n ma.send();\n }\n ;\n ;\n };\n;\n function fa() {\n ea(q.ACTION_UPSELL, p.UpsellImpressions);\n };\n;\n function ga() {\n ea(q.ACTION_EDUCATE, p.EducationImpressions);\n };\n;\n function ha(ka, la, ma, na) {\n var oa = new i(s);\n oa.setData({\n action: ka,\n impressions: ma,\n source: la,\n time_offline: na\n });\n oa.send();\n };\n;\n function ia(ka) {\n ha(ka, q.ACTION_UPSELL, p.UpsellImpressions, p.TimeOffline);\n };\n;\n function ja(ka) {\n ha(ka, q.ACTION_EDUCATE, p.EducateImpressions, p.TimeOffline);\n };\n;\n h.subscribe(\"chat/advanced-settings-dialog-opened\", aa.dismiss.bind(aa));\n h.subscribe(\"chat-visibility/go-online\", aa.dismiss.bind(aa));\n h.subscribe(\"chat-visibility/go-offline\", aa.dismiss.bind(aa));\n e.exports = aa;\n});\n__d(\"ChatFavoriteNux\", [\"AsyncRequest\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = null, i = false, j = {\n tryShow: function(k) {\n if (((h && !i))) {\n h.setContext(k);\n h.show();\n i = true;\n }\n ;\n ;\n },\n tryHide: function() {\n if (((h && i))) {\n h.hide();\n h = null;\n }\n ;\n ;\n },\n registerDialog: function(k) {\n h = k;\n if (k) {\n k.subscribe(\"JSBNG__confirm\", this.dismissDialog);\n }\n ;\n ;\n },\n dismissDialog: function() {\n if (h) {\n new g(\"/ajax/chat/dismiss_favorite_nux.php\").send();\n h.hide();\n h = null;\n }\n ;\n ;\n }\n };\n e.exports = j;\n});\n__d(\"ChatGroupThreadsController\", [\"ArbiterMixin\",\"ChatConfig\",\"InitialMultichatList\",\"MercuryOrderedThreadlist\",\"MercuryServerRequests\",\"MercuryThreadInformer\",\"MercuryThreads\",\"MessagingTag\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"ChatConfig\"), i = b(\"InitialMultichatList\"), j = b(\"MercuryOrderedThreadlist\").get(), k = b(\"MercuryServerRequests\").get(), l = b(\"MercuryThreadInformer\").get(), m = b(\"MercuryThreads\").get(), n = b(\"MessagingTag\"), o = b(\"copyProperties\"), p, q = [], r = h.get(\"max_sidebar_multichats\", 3);\n function s(x) {\n var y = m.getThreadMetaNow(x);\n return ((((y && !y.is_canonical)) && m.canReply(x)));\n };\n;\n var t = i.payload;\n if (t) {\n k.handleUpdate(t);\n var u = ((t.threads || []));\n q = u.map(function(x) {\n return x.thread_id;\n });\n }\n;\n;\n if (q.length) {\n var v = m.getThreadMetaNow(q[((q.length - 1))]);\n p = ((v && ((v.timestamp - 1))));\n }\n;\n;\n if (!p) {\n p = JSBNG__Date.now();\n }\n;\n;\n var w = {\n };\n o(w, g, {\n getThreadIDs: function() {\n var x = 0;\n return q.filter(function(y) {\n return ((((((x < r)) && s(y))) && ++x));\n });\n }\n });\n l.subscribe(\"threadlist-updated\", function() {\n q = j.getThreadlistUntilTimestamp(p, n.INBOX, n.GROUPS).filter(s);\n w.inform(\"update\");\n });\n e.exports = w;\n});\n__d(\"ChatHovercard\", [\"Arbiter\",\"AsyncLoader\",\"Hovercard\",\"JSLogger\",\"debounce\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncLoader\"), i = b(\"Hovercard\"), j = b(\"JSLogger\"), k = b(\"debounce\"), l = 5, m = new h(\"/ajax/chat/hovercard/sidebar.php\", \"hover\"), n = j.create(\"chat_hovercard\");\n g.subscribe(\"Hovercard/dirty\", m.reset.bind(m));\n function o(s, t) {\n m.get(s, function(u) {\n (function() {\n if (!u) {\n n.error(\"fetch_failure\", {\n id: s\n });\n return;\n }\n ;\n ;\n var v = i.getDialog(u);\n if (!v) {\n n.error(\"no_hovercard\", {\n id: s,\n endpoint: u\n });\n return;\n }\n ;\n ;\n if (((s == t.getActiveID()))) {\n t.showHovercard(s, v);\n }\n ;\n ;\n }).defer();\n });\n };\n;\n function p(s, t) {\n var u = [];\n function v(y) {\n if (((((y >= 0)) && ((y < s.length))))) {\n u.push(s[y]);\n }\n ;\n ;\n };\n ;\n var w = s.indexOf(t);\n if (((w > -1))) {\n v(w);\n for (var x = 1; ((x < l)); x++) {\n v(((w + x)));\n v(((w - x)));\n };\n ;\n }\n ;\n ;\n return u.filter(function(y) {\n return y;\n });\n };\n;\n function q(s, t) {\n var u = t.getActiveID();\n if (u) {\n var v = s.getShowingUsers(), w = p(v, u);\n m.get(w, function() {\n \n });\n }\n ;\n ;\n };\n;\n function r(s) {\n var t = s.getHoverController();\n t.registerDefault(o);\n t.subscribe(\"hover\", k(q.curry(s, t), 100));\n };\n;\n e.exports = r;\n});\n__d(\"ChatOptions\", [\"Arbiter\",\"ChannelConstants\",\"JSLogger\",\"PresenceUtil\",\"copyProperties\",\"ChatOptionsInitialData\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ChannelConstants\"), i = b(\"JSLogger\"), j = b(\"PresenceUtil\"), k = b(\"copyProperties\"), l = i.create(\"chat_options\"), m = {\n };\n (function() {\n var o = b(\"ChatOptionsInitialData\");\n {\n var fin313keys = ((window.top.JSBNG_Replay.forInKeys)((o))), fin313i = (0);\n var p;\n for (; (fin313i < fin313keys.length); (fin313i++)) {\n ((p) = (fin313keys[fin313i]));\n {\n var q = o[p];\n m[p] = !!q;\n };\n };\n };\n ;\n })();\n var n = k(new g(), {\n getSetting: function(o) {\n return m[o];\n },\n setSetting: function(o, p, q) {\n if (((this.getSetting(o) == p))) {\n return;\n }\n ;\n ;\n if (q) {\n q = ((\"from_\" + q));\n l.log(q, {\n JSBNG__name: o,\n new_value: p,\n old_value: this.getSetting(o)\n });\n }\n ;\n ;\n m[o] = !!p;\n g.inform(\"chat/option-changed\", {\n JSBNG__name: o,\n value: p\n });\n }\n });\n g.subscribe(h.getArbiterType(\"setting\"), function(o, p) {\n var q = p.obj;\n if (((q.window_id === j.getSessionID()))) {\n return;\n }\n ;\n ;\n n.setSetting(q.setting, !!q.value, \"channel\");\n });\n g.subscribe(i.DUMP_EVENT, function(o, p) {\n p.chat_options = m;\n });\n e.exports = n;\n});\n__d(\"ChatOrderedListHover\", [\"function-extensions\",\"ArbiterMixin\",\"ChatFavoriteList\",\"JSBNG__CSS\",\"ErrorUtils\",\"JSBNG__Event\",\"LayerHideOnBlur\",\"Parent\",\"copyProperties\",\"cx\",\"setTimeoutAcrossTransitions\",\"shield\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"ArbiterMixin\"), h = b(\"ChatFavoriteList\"), i = b(\"JSBNG__CSS\"), j = b(\"ErrorUtils\"), k = b(\"JSBNG__Event\"), l = b(\"LayerHideOnBlur\"), m = b(\"Parent\"), n = b(\"copyProperties\"), o = b(\"cx\"), p = b(\"setTimeoutAcrossTransitions\"), q = b(\"shield\");\n function r(u) {\n i.addClass(u, \"fetching\");\n };\n;\n function s(u) {\n i.removeClass(u, \"fetching\");\n };\n;\n function t(u) {\n this._orderedList = u;\n this._root = u.getRoot();\n k.listen(this._root, \"mouseover\", this._mouseOver.bind(this));\n k.listen(this._root, \"mouseleave\", this._mouseLeave.bind(this));\n u.subscribe(\"click\", q(this._hide, this));\n };\n;\n n(t.prototype, g, {\n _root: null,\n _activeItem: null,\n _hideTimeout: null,\n _showTimeout: null,\n _showingDialog: null,\n _showingID: null,\n _handlers: {\n },\n _defaultHandler: null,\n _mouseOver: function(JSBNG__event) {\n if (this._paused) {\n return;\n }\n ;\n ;\n var u = JSBNG__event.getTarget(), v = ((m.byClass(u, \"-cx-PRIVATE-fbChatOrderedList__item\") || m.byClass(u, \"-cx-PRIVATE-fbChatGroupThreadlist__groupchat\")));\n ((v && this._setActiveItem(v)));\n },\n _mouseLeave: function(JSBNG__event) {\n this._setActiveItem(null);\n },\n _clearTimeouts: function() {\n ((this._showTimeout && JSBNG__clearTimeout(this._showTimeout)));\n this._showTimeout = null;\n ((this._hideTimeout && JSBNG__clearTimeout(this._hideTimeout)));\n this._hideTimeout = null;\n },\n _hide: function() {\n if (this._showingDialog) {\n this._showingDialog.hide();\n this._showingDialog = null;\n this._showingID = null;\n }\n ;\n ;\n },\n _show: function() {\n var u = this.getActiveID(), v = false;\n if (this._handlers[u]) {\n v = true;\n j.applyWithGuard(this._handlers[u], {\n }, [u,this,]);\n }\n else if (this._defaultHandler) {\n v = true;\n j.applyWithGuard(this._defaultHandler, {\n }, [u,this,]);\n }\n \n ;\n ;\n if (((v && ((this._showingID != this.getActiveID()))))) {\n r(this._activeItem);\n }\n ;\n ;\n },\n _setActiveItem: function(u) {\n if (h.isEditMode()) {\n this._clearTimeouts();\n this._hide();\n return;\n }\n ;\n ;\n if (((u != this._activeItem))) {\n this._clearTimeouts();\n ((this._activeItem && s(this._activeItem)));\n this._activeItem = null;\n var v = ((u ? 0 : 100));\n this._hideTimeout = p(function() {\n if (((this.getActiveID() != this._showingID))) {\n this._hide();\n }\n ;\n ;\n }.bind(this), v);\n if (u) {\n this._activeItem = u;\n var w = ((v + 500));\n this._showTimeout = p(function() {\n this._show();\n }.bind(this), w);\n this.inform(\"hover\");\n }\n else this.inform(\"leave\");\n ;\n ;\n }\n ;\n ;\n },\n register: function(u, v) {\n if (!this._handlers[u]) {\n this._handlers[u] = v;\n return {\n unregister: function() {\n if (((u == this._showingID))) {\n this._hide();\n }\n ;\n ;\n delete this._handlers[u];\n var w = this._orderedList.getAllNodes(), x = w[u];\n ((x && s(x)));\n }.bind(this)\n };\n }\n ;\n ;\n },\n registerDefault: function(u) {\n this._defaultHandler = u;\n },\n getActiveID: function() {\n var u = ((this._activeItem && this._orderedList.getUserForNode(this._activeItem)));\n return ((u || null));\n },\n showHovercard: function(u, v) {\n if (((((u == this.getActiveID())) && ((u != this._showingID))))) {\n this._clearTimeouts();\n s(this._activeItem);\n this._hide();\n this._showingDialog = v;\n this._showingID = u;\n var w = v.subscribe(\"mouseenter\", this._setActiveItem.bind(this, this._activeItem)), x = v.subscribe(\"mouseleave\", function() {\n w.unsubscribe();\n this._setActiveItem(null);\n }.bind(this)), y = v.subscribe(\"hide\", function() {\n this.inform(\"hovercard_hide\");\n w.unsubscribe();\n x.unsubscribe();\n y.unsubscribe();\n }.bind(this));\n v.enableBehavior(l).setContext(this._activeItem).setPosition(\"left\").show();\n this.inform(\"hovercard_show\");\n }\n ;\n ;\n },\n setPaused: function(u) {\n this._paused = u;\n }\n });\n e.exports = t;\n});\n__d(\"ChatQuietLinks\", [\"JSBNG__Event\",\"DOM\",\"UserAgent\",\"DataStore\",\"Parent\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"DOM\"), i = b(\"UserAgent\"), j = b(\"DataStore\"), k = b(\"Parent\"), l = {\n }, m = {\n silenceLinks: function(q) {\n n(q, this.removeEmptyHrefs.bind(this));\n },\n nukeLinks: function(q) {\n n(q, this.removeAllHrefs.bind(this));\n },\n removeEmptyHrefs: function(q) {\n o(q, function(r) {\n return ((!r || ((r === \"#\"))));\n });\n },\n removeAllHrefs: function(q) {\n o(q);\n },\n removeMessagesHrefs: function(q) {\n o(q, function(r) {\n return ((((!r || ((r === \"#\")))) || ((r.indexOf(\"/messages/\") != -1))));\n });\n }\n };\n function n(q, r) {\n var s = !!i.chrome(), t = ((((!!i.chrome() || ((i.ie() >= 9)))) || ((i.firefox() >= 4))));\n if (l[h.getID(q)]) {\n return;\n }\n ;\n ;\n l[h.getID(q)] = true;\n if (!t) {\n return;\n }\n ;\n ;\n if (!s) {\n ((r && r(q)));\n return;\n }\n ;\n ;\n g.listen(q, \"mouseover\", function u(v) {\n var w = k.byTag(v.getTarget(), \"a\");\n if (w) {\n var x = w.getAttribute(\"href\");\n if (p(x)) {\n j.set(w, \"stashedHref\", w.getAttribute(\"href\"));\n w.removeAttribute(\"href\");\n }\n ;\n ;\n }\n ;\n ;\n });\n g.listen(q, \"mouseout\", function u(v) {\n var w = k.byTag(v.getTarget(), \"a\"), x = ((w && j.remove(w, \"stashedHref\")));\n if (p(x)) {\n w.setAttribute(\"href\", x);\n }\n ;\n ;\n });\n g.listen(q, \"mousedown\", function(u) {\n if (!u.isDefaultRequested()) {\n return true;\n }\n ;\n ;\n var v = k.byTag(u.getTarget(), \"a\"), w = ((v && j.get(v, \"stashedHref\")));\n if (p(w)) {\n v.setAttribute(\"href\", w);\n }\n ;\n ;\n });\n };\n;\n function o(q, r) {\n var s = h.scry(q, \"a\");\n if (r) {\n s = s.filter(function(t) {\n return r(t.getAttribute(\"href\"));\n });\n }\n ;\n ;\n s.forEach(function(t) {\n t.removeAttribute(\"href\");\n t.setAttribute(\"tabindex\", 0);\n });\n };\n;\n function p(q) {\n return ((q && ((q !== \"#\"))));\n };\n;\n e.exports = m;\n});\n__d(\"ChatSidebarThreadlist.react\", [\"ChatConfig\",\"ChatGroupThreadsController\",\"ChatSidebarConstants\",\"ChatSidebarItem.react\",\"ChatSidebarThread.react\",\"MercuryServerRequests\",\"MercuryThreads\",\"MercuryParticipants\",\"PresenceStatus\",\"React\",\"copyProperties\",\"cx\",\"fbt\",\"ix\",], function(a, b, c, d, e, f) {\n var g = b(\"ChatConfig\"), h = b(\"ChatGroupThreadsController\"), i = b(\"ChatSidebarConstants\"), j = b(\"ChatSidebarItem.react\"), k = b(\"ChatSidebarThread.react\"), l = b(\"MercuryServerRequests\").get(), m = b(\"MercuryThreads\").get(), n = b(\"MercuryParticipants\"), o = b(\"PresenceStatus\"), p = b(\"React\"), q = b(\"copyProperties\"), r = b(\"cx\"), s = b(\"fbt\"), t = b(\"ix\"), u = p.createClass({\n displayName: \"ChatSidebarThreadlist\",\n render: function() {\n var v = this.state.threadData, w = this.state.participantData, x = i.IMAGE_SIZE, y = t(\"/images/chat/sidebar/newGroupChat.png\");\n if (this.props.litestandSidebar) {\n x = ((g.get(\"litestand_blended_sidebar\") ? i.LITESTAND_BLENDED_SIZE : i.LITESTAND_IMAGE_SIZE));\n y = ((g.get(\"litestand_blended_sidebar\") ? t(\"/images/litestand/sidebar/blended/new_group_chat.png\") : t(\"/images/chat/sidebar/newGroupChatLitestand.png\")));\n }\n ;\n ;\n var z = \"New Group Chat...\";\n z = g.get(\"divebar_group_new_button_name\", z);\n var aa = [];\n if (this.props.showNewGroupsButton) {\n aa.push(p.DOM.li({\n className: (((((\"-cx-PRIVATE-fbChatGroupThreadlist__item\") + ((\" \" + \"-cx-PRIVATE-chatSidebarItem__noborder\")))) + ((this.props.offlineItems ? ((\" \" + \"-cx-PRIVATE-chatSidebarItem__offlineitem\")) : \"\")))),\n key: \"new\"\n }, j({\n images: y,\n imageSize: x,\n litestandSidebar: this.props.litestandSidebar,\n JSBNG__name: z\n })));\n }\n ;\n ;\n var ba = {\n };\n {\n var fin314keys = ((window.top.JSBNG_Replay.forInKeys)((v))), fin314i = (0);\n var ca;\n for (; (fin314i < fin314keys.length); (fin314i++)) {\n ((ca) = (fin314keys[fin314i]));\n {\n var da = v[ca], ea = da.participants.map(function(ia) {\n return ((w || {\n }))[ia];\n }).filter(function(ia) {\n return ia;\n }), fa = da.participants.map(function(ia) {\n return n.getUserID(ia);\n }), ga = fa.sort().join(\"|\");\n if (((!ba[ga] && ea.length))) {\n ba[ga] = 1;\n var ha = l.getServerThreadIDNow(ca);\n aa.push(p.DOM.li({\n className: (((((\"-cx-PRIVATE-fbChatGroupThreadlist__groupchat\") + ((\" \" + \"-cx-PRIVATE-fbChatGroupThreadlist__item\")))) + ((this.props.offlineItems ? ((\" \" + \"-cx-PRIVATE-chatSidebarItem__offlineitem\")) : \"\")))),\n \"data-serverthreadid\": ha,\n \"data-threadid\": ca,\n key: ca\n }, k({\n image: da.image_src,\n imageSize: x,\n litestandSidebar: this.props.litestandSidebar,\n JSBNG__name: da.JSBNG__name,\n participants: ea,\n JSBNG__status: o.getGroup(fa),\n threadID: ca,\n unreadCount: da.unread_count\n })));\n }\n ;\n ;\n };\n };\n };\n ;\n return p.DOM.ul(null, aa);\n },\n getInitialState: function() {\n return {\n };\n },\n componentWillMount: function() {\n var v = function() {\n this.setState(this._calculateState());\n }.bind(this);\n this.token = h.subscribe(\"update\", v);\n v();\n },\n componentWillUnmount: function() {\n ((this.token && this.token.unsubscribe()));\n this.token = null;\n },\n _calculateState: function() {\n var v = false, w = {\n }, x = {\n }, y = h.getThreadIDs(), z = y.length;\n y.forEach(function(ba) {\n m.getThreadMeta(ba, function(ca) {\n x[ba] = ca;\n n.getMulti(ca.participants, function(da) {\n delete da[n.user];\n if (v) {\n this.setState(this._calculateState());\n }\n else q(w, da);\n ;\n ;\n z--;\n }.bind(this));\n }.bind(this));\n }.bind(this));\n if (((z === 0))) {\n return {\n threadData: x,\n participantData: w\n };\n }\n else {\n v = true;\n var aa = ((this.state || {\n }));\n return {\n threadData: q(aa.threadData, x),\n participantData: q(aa.participantData, w)\n };\n }\n ;\n ;\n }\n });\n e.exports = u;\n});\n__d(\"runAfterScrollingStops\", [\"Arbiter\",\"JSBNG__Event\",\"Run\",\"debounceAcrossTransitions\",\"emptyFunction\",\"throttle\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"JSBNG__Event\"), i = b(\"Run\"), j = b(\"debounceAcrossTransitions\"), k = b(\"emptyFunction\"), l = b(\"throttle\");\n function m(x, y, z) {\n if (((y && p[y]))) {\n return;\n }\n ;\n ;\n if (!o) {\n g.subscribe(\"page_transition\", w);\n o = true;\n }\n ;\n ;\n if (!n) {\n x();\n return;\n }\n ;\n ;\n ((y && (p[y] = 1)));\n q.push(x);\n if (!z) {\n if (s) {\n i.onLeave(w);\n s = false;\n }\n ;\n ;\n r.push(((q.length - 1)));\n }\n ;\n ;\n };\n;\n var n, o, p = {\n }, q = [], r = [], s = true, t = 500, u = j(function() {\n n = false;\n var x = q;\n q = [];\n r = [];\n p = {\n };\n for (var y = 0, z = x.length; ((y < z)); ++y) {\n x[y]();\n ;\n };\n ;\n }, t);\n function v() {\n n = true;\n u();\n };\n;\n function w() {\n var x = r;\n r = [];\n s = true;\n for (var y = 0, z = x.length; ((y < z)); ++y) {\n q[x[y]] = k;\n ;\n };\n ;\n };\n;\n h.listen(window, \"JSBNG__scroll\", l.acrossTransitions(v, 250));\n e.exports = m;\n});\n__d(\"ChatOrderedList\", [\"Animation\",\"Arbiter\",\"ArbiterMixin\",\"AsyncDialog\",\"AsyncRequest\",\"AvailableList\",\"AvailableListConstants\",\"Bootloader\",\"JSBNG__CSS\",\"ChannelImplementation\",\"Chat\",\"ChatConfig\",\"ChatContexts\",\"ChatFavoriteList\",\"ChatFavoriteNux\",\"ChatGroupThreadsController\",\"ChatOrderedListHover\",\"ChatQuietLinks\",\"ChatSidebarThreadlist.react\",\"ChatTypeaheadConstants\",\"ChatVisibility\",\"DOM\",\"DataStore\",\"Ease\",\"JSBNG__Event\",\"ImageSourceRequest\",\"ImageSourceType\",\"JSLogger\",\"JSXDOM\",\"LastMobileActiveTimes\",\"MercuryParticipantTypes\",\"MercuryThreadInformer\",\"MercuryThreads\",\"OrderedFriendsList\",\"Parent\",\"PhotoResizeModeConst\",\"PresencePrivacy\",\"PresenceStatus\",\"React\",\"JSBNG__Rect\",\"ShortProfiles\",\"Style\",\"Tooltip\",\"TokenizeUtil\",\"URI\",\"Vector\",\"XHPTemplate\",\"copyProperties\",\"createObjectFrom\",\"csx\",\"cx\",\"debounceAcrossTransitions\",\"guid\",\"JSBNG__requestAnimationFrame\",\"runAfterScrollingStops\",\"shield\",\"throttle\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"Animation\"), h = b(\"Arbiter\"), i = b(\"ArbiterMixin\"), j = b(\"AsyncDialog\"), k = b(\"AsyncRequest\"), l = b(\"AvailableList\"), m = b(\"AvailableListConstants\"), n = b(\"Bootloader\"), o = b(\"JSBNG__CSS\"), p = b(\"ChannelImplementation\").instance, q = b(\"Chat\"), r = b(\"ChatConfig\"), s = b(\"ChatContexts\"), t = b(\"ChatFavoriteList\"), u = b(\"ChatFavoriteNux\"), v = b(\"ChatGroupThreadsController\"), w = b(\"ChatOrderedListHover\"), x = b(\"ChatQuietLinks\"), y = b(\"ChatSidebarThreadlist.react\"), z = b(\"ChatTypeaheadConstants\"), aa = b(\"ChatVisibility\"), ba = b(\"DOM\"), ca = b(\"DataStore\"), da = b(\"Ease\"), ea = b(\"JSBNG__Event\"), fa = b(\"ImageSourceRequest\"), ga = b(\"ImageSourceType\"), ha = b(\"JSLogger\"), ia = b(\"JSXDOM\"), ja = b(\"LastMobileActiveTimes\"), ka = b(\"MercuryParticipantTypes\"), la = b(\"MercuryThreadInformer\").get(), ma = b(\"MercuryThreads\").get(), na = b(\"OrderedFriendsList\"), oa = b(\"Parent\"), pa = b(\"PhotoResizeModeConst\"), qa = b(\"PresencePrivacy\"), ra = b(\"PresenceStatus\"), sa = b(\"React\"), ta = b(\"JSBNG__Rect\"), ua = b(\"ShortProfiles\"), va = b(\"Style\"), wa = b(\"Tooltip\"), xa = b(\"TokenizeUtil\"), ya = b(\"URI\"), za = b(\"Vector\"), ab = b(\"XHPTemplate\"), bb = b(\"copyProperties\"), cb = b(\"createObjectFrom\"), db = b(\"csx\"), eb = b(\"cx\"), fb = b(\"debounceAcrossTransitions\"), gb = b(\"guid\"), hb = b(\"JSBNG__requestAnimationFrame\"), ib = b(\"runAfterScrollingStops\"), jb = b(\"shield\"), kb = b(\"throttle\"), lb = b(\"tx\"), mb = r.get(\"chat_ranked_by_coefficient\", 0), nb = null, ob, pb, qb = 9;\n function rb(yb, zb, ac, bc, cc, dc) {\n this._isSidebar = yb;\n this._isLitestand = ((r.get(\"litestand\", 0) || r.get(\"test_litestand_sidebar\", 0)));\n this._isLitestandSidebar = ((this._isSidebar && this._isLitestand));\n this._isLeftCollapsedSidebar = !!oa.byClass(zb, \"-cx-PUBLIC-litestandLeftSidebar__root\");\n this._root = zb;\n this._itemsMap = {\n };\n this._isVisible = false;\n this._excludedIds = {\n };\n this._numTopFriends = 5;\n this._hasRendered = false;\n this._preventRendering = false;\n this._hoverController = null;\n this._template = ac;\n this._messageTemplate = bc;\n this._favoriteMode = r.get(\"divebar_favorite_list\", 0);\n this._contextualDialog = cc;\n this._cachedItemHeight = null;\n this._cachedItemPadding = null;\n if (((dc && ba.scry(dc, \".-cx-PRIVATE-litestandSidebarPYMK__unit\").length))) {\n o.show(dc);\n this._pymk = dc;\n }\n ;\n ;\n this._usePlaceholder = ((this._isLitestand && this._isSidebar));\n if (r.get(\"groups_in_divebar\")) {\n this._groupThreadsNode = ia.li({\n className: \"-cx-PRIVATE-fbChatOrderedList__groupthreads\"\n });\n this._updateGroupThreads();\n this._groupsList = ((this._favoriteMode && ba.JSBNG__find(this._root, \".-cx-PRIVATE-fbChat__groupslist\")));\n }\n ;\n ;\n if (this._favoriteMode) {\n this._favoriteSidebar = ba.JSBNG__find(this._root, \".-cx-PUBLIC-fbChatOrderedList__favoritesidebar\");\n this._editButton = ba.scry(this._root, \".-cx-PRIVATE-fbChatOrderedList__friendsstickyarea .-cx-PRIVATE-fbChat__editbutton\")[0];\n this._favoriteList = ba.JSBNG__find(this._root, \".-cx-PRIVATE-fbChat__favoritelist\");\n this._activeNowList = ba.JSBNG__find(this._root, \".-cx-PRIVATE-fbChat__activenowlist\");\n this._activeNowLabel = ba.scry(this._root, \".-cx-PRIVATE-fbChatOrderedList__activenowlabel\")[0];\n if (this._activeNowLabel) {\n this._activeNowArea = oa.byClass(this._activeNowLabel, \"-cx-PRIVATE-fbChatOrderedList__activenowlabelcontainer\");\n }\n ;\n ;\n }\n ;\n ;\n this._orderedList = ba.JSBNG__find(this._root, \".fbChatOrderedList\");\n this._scrollableOrderedList = oa.byClass(this._root, \"scrollableOrderedList\");\n this._chatSidebar = oa.byClass(this._root, \"fbChatSidebar\");\n this._scrollableArea = oa.byClass(this._root, \"scrollable\");\n ea.listen(this._root, \"click\", this._onClick.bind(this));\n ea.listen(this._root, \"mouseenter\", this._mouseEnter.bind(this));\n ea.listen(this._root, \"mouseleave\", this._mouseLeave.bind(this));\n if (this._editButton) {\n ea.listen(this._editButton, \"click\", this.toggleEditMode.bind(this));\n h.subscribe([\"LitestandSidebarBookmarks/close\",\"LitestandSidebar/collapse\",], this._onEditEnd.bind(this));\n }\n ;\n ;\n h.subscribe([\"LitestandSidebar/collapse\",\"LitestandSidebar/expand\",], function(JSBNG__event) {\n if (this._isLitestandSidebar) {\n this.getHoverController().setPaused(((JSBNG__event === \"LitestandSidebar/collapse\")));\n }\n ;\n ;\n this.render();\n }.bind(this));\n l.subscribe(m.ON_AVAILABILITY_CHANGED, jb(this.update, this));\n qa.subscribe(\"privacy-changed\", jb(this.update, this));\n p.subscribe([p.CONNECTED,p.RECONNECTING,p.SHUTDOWN,p.MUTE_WARNING,p.UNMUTE_WARNING,], jb(this.update, this));\n this.inform(\"initialized\", this, h.BEHAVIOR_PERSISTENT);\n this.render();\n h.subscribe(ha.DUMP_EVENT, function(ec, fc) {\n fc.chat_lists = ((fc.chat_lists || {\n sorted_list: this.getCachedSortedList(),\n ordered_list: na.getList(),\n available_list: rb.getAvailableList(this._excludedIds),\n excluded_list: this._excludedIds\n }));\n }.bind(this));\n h.subscribe(\"ChatOrderedList/itemHeightChange\", function() {\n this._cachedItemHeight = null;\n this._cachedItemPadding = null;\n }.bind(this));\n this._renderUnreadCount = r.get(\"divebar_message_count\");\n if (this._renderUnreadCount) {\n la.subscribe(\"threads-updated\", function(ec, fc) {\n {\n var fin315keys = ((window.top.JSBNG_Replay.forInKeys)((fc))), fin315i = (0);\n var gc;\n for (; (fin315i < fin315keys.length); (fin315i++)) {\n ((gc) = (fin315keys[fin315i]));\n {\n var hc = ma.getCanonicalUserInThread(gc);\n if (((((!this._renderedTopUsers || !((hc in this._renderedTopUsers)))) || !this._itemsMap[hc]))) {\n continue;\n }\n ;\n ;\n ma.getThreadMeta(gc, function(ic) {\n var jc = ((ic && ic.unread_count));\n this._updateUnreadCount(hc, jc);\n }.bind(this));\n };\n };\n };\n ;\n }.bind(this));\n }\n ;\n ;\n };\n;\n function sb(yb, zb) {\n var ac = tb(yb, zb);\n if (((ac !== 0))) {\n return ac;\n }\n ;\n ;\n if (!mb) {\n var bc = wb(yb, zb);\n if (((bc !== 0))) {\n return bc;\n }\n ;\n ;\n }\n ;\n ;\n return na.compare(yb, zb);\n };\n;\n function tb(yb, zb) {\n var ac = qa.allows(yb), bc = qa.allows(zb);\n if (((ac !== bc))) {\n return ((ac ? -1 : 1));\n }\n ;\n ;\n return 0;\n };\n;\n var ub = {\n };\n function vb(yb) {\n return ((ub[yb] || (ub[yb] = xa.flatten(yb))));\n };\n;\n function wb(yb, zb) {\n var ac = ua.getNowUnsafe(yb), bc = ua.getNowUnsafe(zb), cc = vb(((((ac || {\n })).JSBNG__name || \"~\"))), dc = vb(((((bc || {\n })).JSBNG__name || \"~\")));\n if (((cc !== dc))) {\n return ((((cc < dc)) ? -1 : 1));\n }\n ;\n ;\n return 0;\n };\n;\n function xb(yb, zb) {\n var ac = ((l.get(yb) === m.MOBILE)), bc = ((l.get(zb) === m.MOBILE));\n if (((ac !== bc))) {\n return ((bc ? -1 : 1));\n }\n ;\n ;\n return wb(yb, zb);\n };\n;\n bb(rb, {\n CONTEXT_CLASSES: {\n nearby: \"-cx-PRIVATE-fbChatOrderedList__contextnearby\",\n visiting: \"-cx-PRIVATE-fbChatOrderedList__contextvisiting\",\n neighbourhood: \"-cx-PRIVATE-fbChatOrderedList__contextneighbourhood\",\n listening: \"-cx-PRIVATE-fbChatOrderedList__contextlistening\"\n },\n getSortedList: function(yb, zb) {\n var ac = na.getList().filter(function(dc) {\n return ((!((dc in yb)) && ((qa.getFriendVisibility(dc) !== qa.BLACKLISTED))));\n }), bc = [];\n if (!aa.isOnline()) {\n Array.prototype.push.apply(bc, ac);\n }\n else {\n if (((qa.getOnlinePolicy() === qa.ONLINE_TO_WHITELIST))) {\n ac = this._filterByWhitelist(ac);\n }\n ;\n ;\n if (r.get(\"chat_web_ranking_with_presence\")) {\n Array.prototype.push.apply(bc, ac);\n }\n else bc = this._splitOutTopFriends(ac, zb);\n ;\n ;\n }\n ;\n ;\n bc = bc.slice(0, zb);\n if (((bc.length === zb))) {\n var cc = rb.getAvailableList(bc.concat(yb)).length;\n ((cc && bc.splice(-1)));\n }\n ;\n ;\n if (!r.get(\"chat_web_ranking_with_presence\")) {\n bc.sort(sb);\n }\n ;\n ;\n nb = bc.slice();\n return bc;\n },\n _filterByWhitelist: function(yb) {\n var zb = yb, ac = {\n }, bc, cc;\n yb = [];\n for (bc = 0; ((bc < zb.length)); ++bc) {\n cc = zb[bc];\n if (qa.allows(cc)) {\n ac[cc] = true;\n yb.push(cc);\n }\n ;\n ;\n };\n ;\n var dc = qa.getWhitelist();\n for (bc = 0; ((bc < dc.length)); ++bc) {\n cc = dc[bc];\n if (!((cc in ac))) {\n yb.push(cc);\n }\n ;\n ;\n };\n ;\n for (bc = 0; ((bc < zb.length)); ++bc) {\n cc = zb[bc];\n if (!qa.allows(cc)) {\n yb.push(cc);\n }\n ;\n ;\n };\n ;\n return yb;\n },\n _splitOutTopFriends: function(yb, zb) {\n var ac = [], bc = [], cc = r.get(\"ordered_list.top_friends\", 0), dc = r.get(\"ordered_list.top_mobile\", 0), ec = zb, fc = yb.length;\n for (var gc = 0; ((((gc < fc)) && ((ec > 0)))); gc++) {\n var hc = yb[gc], ic = l.get(hc), jc = ((ic === m.ACTIVE));\n if (((((jc || ((((ic === m.MOBILE)) && ((gc < dc)))))) || ((gc < cc))))) {\n ac.push(hc);\n ((jc && ec--));\n }\n else bc.push(hc);\n ;\n ;\n };\n ;\n if (((gc < fc))) {\n Array.prototype.push.apply(bc, yb.slice(gc));\n }\n ;\n ;\n if (((ac.length < zb))) {\n Array.prototype.push.apply(ac, bc);\n }\n ;\n ;\n return ac;\n },\n getAvailableList: function(yb) {\n var zb;\n if (((r.get(\"divebar_show_mobile_more_friends\") || r.get(\"divebar_show_mobile_more_friends_alphabetical\")))) {\n zb = l.getAvailableIDs();\n }\n ;\n ;\n if (!zb) {\n zb = l.getOnlineIDs();\n }\n ;\n ;\n return zb.filter(function(ac) {\n return !((ac in yb));\n });\n },\n _pause: function() {\n pb = true;\n },\n _unpause: function() {\n pb = false;\n },\n _registerToggleRenderItem: function(yb) {\n ea.listen(yb, \"click\", function() {\n pb = !pb;\n o.conditionClass(yb, \"checked\", pb);\n });\n }\n });\n bb(rb.prototype, i, {\n getAllNodes: function() {\n var yb = {\n }, zb = ba.scry(this._root, \"li.-cx-PRIVATE-fbChatOrderedList__item\");\n for (var ac = 0; ((ac < zb.length)); ac++) {\n var bc = ca.get(zb[ac], \"id\");\n if (bc) {\n yb[bc] = zb[ac];\n }\n ;\n ;\n };\n ;\n return yb;\n },\n getShowingUsers: function() {\n return ba.scry(this._root, \"li.-cx-PRIVATE-fbChatOrderedList__item,li.-cx-PRIVATE-fbChatGroupThreadlist__groupchat\").map(this.getUserForNode);\n },\n getUserForNode: function(yb) {\n return ((ca.get(yb, \"id\") || ca.get(yb, \"serverthreadid\")));\n },\n getHoverController: function() {\n if (!this._hoverController) {\n this._hoverController = new w(this, this._contextualDialog);\n if (((this._isLitestandSidebar && this._isLitestandSidebarCollapsed()))) {\n this._hoverController.setPaused(true);\n }\n ;\n ;\n }\n ;\n ;\n return this._hoverController;\n },\n _isLitestandSidebarCollapsed: function() {\n if (this._isLeftCollapsedSidebar) {\n return true;\n }\n ;\n ;\n if (ob) {\n return !ob.isExpanded();\n }\n ;\n ;\n n.loadModules([\"LitestandSidebar\",], function(yb) {\n ob = yb;\n });\n return o.hasClass(JSBNG__document.documentElement, \"-cx-PUBLIC-hasLitestandBookmarksSidebar__collapsed\");\n },\n getPaddingOffset: function() {\n return ((this._favoriteMode ? 24 : 8));\n },\n _calculateItemMeasurements: function() {\n var yb = this._orderedList, zb = this._template.build(), ac = zb.getRoot();\n ba.setContent(zb.getNode(\"JSBNG__name\"), \"test\");\n if (this._favoriteSidebar) {\n yb = this._favoriteList;\n o.addClass(this._favoriteSidebar, \"-cx-PRIVATE-fbChatOrderedList__measure\");\n }\n ;\n ;\n ac.style.visibility = \"hidden\";\n ba.appendContent(yb, ac);\n this._cachedItemHeight = za.getElementDimensions(ac).y;\n this._cachedItemPadding = ((va.getFloat(zb.getNode(\"anchor\"), \"padding\") || 0));\n ba.remove(ac);\n if (this._favoriteSidebar) {\n o.removeClass(this._favoriteSidebar, \"-cx-PRIVATE-fbChatOrderedList__measure\");\n }\n ;\n ;\n },\n getItemHeight: function() {\n if (((this._cachedItemHeight === null))) {\n this._calculateItemMeasurements();\n }\n ;\n ;\n return this._cachedItemHeight;\n },\n getItemPadding: function() {\n if (((this._cachedItemPadding === null))) {\n this._calculateItemMeasurements();\n }\n ;\n ;\n return this._cachedItemPadding;\n },\n _updateGroupThreads: function() {\n if (this._groupThreadsNode) {\n var yb = qa.getVisibility(), zb = y({\n offlineItems: ((p.disconnected() || !yb)),\n litestandSidebar: ((((this._isSidebar && this._isLitestand)) && !r.get(\"test_old_divebar\"))),\n showNewGroupsButton: r.get(\"divebar_has_new_groups_button\", false)\n });\n sa.renderComponent(zb, this._groupThreadsNode);\n }\n ;\n ;\n },\n _placeholderUpdate: function() {\n if (((!this._usePlaceholder || !this._scrollContainer))) {\n return;\n }\n ;\n ;\n var yb = ((this._root.offsetTop - this._scrollContainer.scrollTop));\n this._scrollContainerHeight = ((this._scrollContainerHeight || this._scrollContainer.offsetHeight));\n var zb = this.getItemHeight(), ac = Math.ceil(((this._scrollContainerHeight / zb))), bc = ((((yb < 0)) ? Math.max(((Math.floor(((-yb / zb))) - ac)), 0) : 0)), cc = ((((bc + ac)) + ac));\n this._cachedItems = ((this._cachedItems || ba.scry(this._root, \"li.-cx-PRIVATE-fbChatOrderedList__item\")));\n for (var dc = 0, ec = this._cachedItems.length; ((dc < ec)); dc++) {\n o.conditionClass(this._cachedItems[dc], \"-cx-PRIVATE-fbChatOrderedList__hiddenitem\", ((((dc < bc)) || ((dc > cc)))));\n ;\n };\n ;\n },\n _getListItem: function(yb, zb) {\n var ac = this._itemsMap[yb];\n if (!ac) {\n return;\n }\n ;\n ;\n var bc = l.get(yb), cc = ra.isBirthday(yb), dc = ((qa.allows(yb) && !p.disconnected()));\n if (((ac.buttonNode === undefined))) {\n ac.buttonNode = ba.scry(ac.node, \".-cx-PRIVATE-fbChat__favoritebutton\")[0];\n ac.contextNode = ba.JSBNG__find(ac.node, \".-cx-PRIVATE-fbChatOrderedList__context\");\n ac.timeNode = ba.scry(ac.node, \".active_time\")[0];\n ac.statusNodes = ba.scry(ac.node, \"img.JSBNG__status\");\n }\n ;\n ;\n o.conditionClass(ac.node, \"-cx-PRIVATE-fbChatOrderedList__isfavorite\", zb);\n o.conditionClass(ac.node, \"-cx-PRIVATE-fbChat__isfavorite\", zb);\n o.conditionClass(ac.node, \"-cx-PRIVATE-litestandSidebarFavorites__favorite\", ((this._isLitestand && zb)));\n if (ac.buttonNode) {\n if (!this._isLitestand) {\n o.conditionClass(ac.buttonNode, \"-cx-PRIVATE-fbChatOrderedList__remove\", zb);\n o.conditionClass(ac.buttonNode, \"-cx-PRIVATE-fbChatOrderedList__add\", !zb);\n }\n ;\n }\n ;\n ;\n var ec = {\n active: false,\n mobile: false,\n birthday: false\n };\n ec.active = ((bc === m.ACTIVE));\n ec.mobile = ((bc === m.MOBILE));\n ec.birthday = cc;\n if (ec.mobile) {\n var fc = ja.getShortDisplay(yb);\n if (((ac.timeNode && ((ac.lastActiveTime !== fc))))) {\n ac.lastActiveTime = fc;\n ba.setContent(ac.timeNode, fc);\n }\n ;\n ;\n }\n else if (ac.lastActiveTime) {\n ac.lastActiveTime = null;\n ba.empty(ac.timeNode);\n }\n \n ;\n ;\n {\n var fin316keys = ((window.top.JSBNG_Replay.forInKeys)((ec))), fin316i = (0);\n var gc;\n for (; (fin316i < fin316keys.length); (fin316i++)) {\n ((gc) = (fin316keys[fin316i]));\n {\n o.conditionClass(ac.node, gc, ((ec[gc] && dc)));\n ;\n };\n };\n };\n ;\n o.conditionClass(ac.node, \"invis\", !dc);\n ac.statusNodes.forEach(function(hc) {\n if (((((bc === m.ACTIVE)) && dc))) {\n hc.alt = \"Online\";\n }\n else if (((((bc === m.MOBILE)) && dc))) {\n hc.alt = \"Mobile\";\n }\n else hc.alt = \"\";\n \n ;\n ;\n });\n this._applyContext(yb, ac);\n return ac.node;\n },\n getRoot: function() {\n return this._root;\n },\n getSortedList: function(yb) {\n return rb.getSortedList(((yb || this._excludedIds)), this._numTopFriends);\n },\n getCachedSortedList: function(yb) {\n if (((nb == null))) {\n nb = this.getSortedList(yb);\n }\n ;\n ;\n return nb;\n },\n toggleFavoriteSidebar: function(yb, zb) {\n function ac(dc, ec) {\n o.conditionShow(ec, dc);\n var fc = oa.byClass(ec, \"uiContextualLayerPositioner\");\n ((fc && o.conditionShow(fc, dc)));\n };\n ;\n o.conditionShow(this._orderedList, !yb);\n if (this._favoriteSidebar) {\n o.conditionShow(this._favoriteSidebar, yb);\n }\n ;\n ;\n var bc = ba.scry(((this._scrollableOrderedList || this._root)), \".-cx-PRIVATE-fbChatOrderedList__stickyarea\");\n bc.forEach(ac.curry(yb));\n var cc = ba.scry(((this._scrollableOrderedList || this._root)), \".-cx-PRIVATE-fbChatOrderedList__groupsstickyarea\");\n ((cc.length && ac(zb, cc[0])));\n },\n hide: function() {\n if (!this._isVisible) {\n return;\n }\n ;\n ;\n this._isVisible = false;\n u.tryHide();\n o.hide(((this._scrollableOrderedList || this._root)));\n this.inform(\"hide\");\n },\n _onFavoriteOrderChange: function() {\n var yb = this.sortableGroup.getOrder();\n t.updateList(yb);\n t.save();\n },\n _getFavoriteItems: function() {\n var yb = [], zb = t.get();\n for (var ac = 0; ((ac < zb.length)); ac++) {\n var bc = this._itemsMap[zb[ac]];\n if (bc) {\n yb.push(bc.node);\n }\n ;\n ;\n };\n ;\n return yb;\n },\n _getChatTabOpenLogData: function(yb) {\n var zb = o.hasClass(JSBNG__document.documentElement, \"sidebarMode\"), ac = {\n mode: ((zb ? \"JSBNG__sidebar\" : \"chatNub\")),\n typehead: false\n };\n if (((this._scrollableArea && this._scrollContainer))) {\n var bc = za.getElementPosition(this._scrollableArea, \"viewport\").y, cc = za.getElementPosition(yb, \"viewport\").y, dc = this._scrollContainer.scrollTop;\n if (((cc > bc))) {\n ac.visible_slot = Math.round(((((cc - bc)) / 32)));\n var ec = Math.round(((dc / 32)));\n ac.global_slot = ((ac.visible_slot + ec));\n }\n ;\n ;\n }\n ;\n ;\n if (zb) {\n ac.sidebar_height = ((this._chatSidebar && this._chatSidebar.clientHeight));\n if (this._scrollContainer) {\n ac.buddylist_height = this._scrollContainer.clientHeight;\n }\n ;\n ;\n }\n ;\n ;\n return ac;\n },\n _resetFavoriteBounds: function() {\n var yb = t.get(), zb = yb.length;\n if (zb) {\n var ac = yb[0], bc = yb[((zb - 1))], cc = this._itemsMap[ac], dc = this._itemsMap[bc], ec = new ta(za.getElementPosition(cc.node).y, 0, ((za.getElementPosition(dc.node).y + za.getElementDimensions(dc.node).y)), 0);\n this.sortableGroup.setBoundingBox(ec);\n }\n ;\n ;\n },\n _createSortableGroup: function() {\n if (this.sortableGroup) {\n this.sortableGroup.destroy();\n }\n ;\n ;\n n.loadModules([\"SortableGroup\",], function(yb) {\n this.sortableGroup = new yb().setBeforeGrabCallback(this._resetFavoriteBounds.bind(this)).setOrderChangeHandler(this._onFavoriteOrderChange.bind(this));\n if (this._isLitestand) {\n this.sortableGroup.gutter = 1;\n }\n ;\n ;\n var zb = this._getFavoriteItems();\n for (var ac = 0; ((ac < zb.length)); ac++) {\n var bc = zb[ac];\n this.sortableGroup.addSortable(ca.get(bc, \"id\"), bc);\n };\n ;\n }.bind(this));\n },\n toggleEditMode: function() {\n u.dismissDialog();\n t.toggleEditMode();\n if (t.isEditMode()) {\n this._createSortableGroup();\n ba.setContent(this._editButton, \"DONE\");\n o.addClass(this._favoriteSidebar, \"-cx-PUBLIC-fbChatOrderedList__editfavoritemode\");\n this.inform(\"editStart\");\n }\n else this._onEditEnd();\n ;\n ;\n },\n _onEditEnd: function() {\n if (t.isEditMode()) {\n t.toggleEditMode();\n }\n ;\n ;\n ba.setContent(this._editButton, \"EDIT\");\n o.removeClass(this._favoriteSidebar, \"-cx-PUBLIC-fbChatOrderedList__editfavoritemode\");\n this.inform(\"editEnd\");\n },\n _onClick: function(JSBNG__event) {\n var yb = JSBNG__event.getTarget(), zb = oa.byTag(yb, \"li\");\n if (t.isEditMode()) {\n var ac = oa.byClass(yb, \"-cx-PRIVATE-fbChat__favoritebutton\");\n if (((ac && zb))) {\n var bc = ca.get(zb, \"id\");\n if (bc) {\n t.toggleID(bc);\n t.save();\n }\n ;\n ;\n this.update();\n }\n ;\n ;\n JSBNG__event.prevent();\n return false;\n }\n ;\n ;\n if (zb) {\n if (o.hasClass(zb, \"blackbirdWhitelist\")) {\n var cc = new ya(\"/ajax/chat/privacy/settings_dialog.php\").addQueryData({\n ref: \"whitelist_separator\"\n });\n j.send(new k(cc));\n JSBNG__event.prevent();\n return false;\n }\n ;\n ;\n var dc = ca.get(zb, \"id\"), ec = o.hasClass(zb, \"-cx-PRIVATE-fbChatGroupThreadlist__item\");\n if (((dc || ec))) {\n var fc = this._getChatTabOpenLogData(zb), gc = o.hasClass(JSBNG__document.documentElement, \"sidebarMode\"), hc = ((qa.getOnlinePolicy() === qa.ONLINE_TO_WHITELIST)), ic = ((hc ? \"white_list\" : \"ordered_list\"));\n if (ec) {\n dc = zb.getAttribute(\"data-threadid\");\n ic = ((dc ? \"recent_threads_in_divebar\" : \"recent_threads_in_divebar_new\"));\n }\n else if (((((gc && this._favoriteMode)) && !hc))) {\n while (zb.parentNode) {\n zb = zb.parentNode;\n if (o.hasClass(zb, \"-cx-PRIVATE-fbChatOrderedList__activenowlist\")) {\n ic = \"more_online_friends\";\n break;\n }\n ;\n ;\n if (o.hasClass(zb, \"-cx-PRIVATE-fbChatOrderedList__favoritelist\")) {\n break;\n }\n ;\n ;\n };\n ;\n }\n else while (zb.previousSibling) {\n zb = zb.previousSibling;\n if (o.hasClass(zb, \"-cx-PRIVATE-fbChatOrderedList__friendsseparator\")) {\n if (o.hasClass(zb, \"moreOnlineFriends\")) {\n ic = \"more_online_friends\";\n break;\n }\n ;\n ;\n if (o.hasClass(zb, \"blackbirdWhitelist\")) {\n ic = \"blackbird_offline_section\";\n break;\n }\n ;\n ;\n }\n ;\n ;\n }\n \n ;\n ;\n fc.source = ic;\n var jc = ((ec ? z.THREAD_TYPE : ka.FRIEND));\n q.openTab(dc, jc, fc);\n this.inform(\"click\", {\n id: dc\n });\n }\n else if (((o.hasClass(zb, \"-cx-PRIVATE-fbChatOrderedList__friendsseparator\") && oa.byClass(yb, \"-cx-PRIVATE-fbChatOrderedList__separatorinner\")))) {\n this.JSBNG__scrollTo(zb);\n }\n else if (o.hasClass(zb, \"-cx-PRIVATE-litestandSidebarPYMK__root\")) {\n return;\n }\n \n \n ;\n ;\n return false;\n }\n ;\n ;\n },\n _mouseEnter: function() {\n this._preventRendering = true;\n },\n _mouseLeave: function() {\n this._preventRendering = false;\n },\n setExcludedIds: function(yb) {\n this._excludedIds = cb(((yb || [])));\n },\n setNumTopFriends: function(yb) {\n if (((yb !== this._numTopFriends))) {\n this._numTopFriends = yb;\n this.render();\n }\n ;\n ;\n },\n _getOfflineToSectionItems: function() {\n var yb = ((\"subheader-text-\" + gb())), zb = ba.create(\"a\", {\n href: \"#\",\n \"aria-describedby\": yb\n }, ba.tx._(\"Edit\")), ac = [], bc = ba.tx._(\"MORE FRIENDS\");\n ac.push(ia.li({\n className: \"-cx-PRIVATE-fbChatOrderedList__friendsseparator\"\n }, ia.div({\n className: \"-cx-PRIVATE-fbChatOrderedList__separatorouter\"\n }, ia.div({\n className: \"-cx-PRIVATE-fbChatOrderedList__separatorinner\"\n }, ia.span({\n className: \"-cx-PRIVATE-fbChatOrderedList__separatortext\"\n }, bc), ia.div({\n className: \"-cx-PRIVATE-fbChatOrderedList__separatordive\"\n }, ia.span({\n className: \"-cx-PRIVATE-fbChatOrderedList__separatorbar\"\n }))))));\n ac.push(ia.li({\n className: \"-cx-PRIVATE-fbChatOrderedList__friendsseparator blackbirdWhitelist\"\n }, ia.div({\n className: \"-cx-PRIVATE-fbChatOrderedList__separatorouter\"\n }, ia.div({\n className: \"fbChatOrderedList/separatorInner\"\n }, ia.div({\n className: \"fbChatOrderedList/separatorSubheader\"\n }, ia.span({\n id: yb,\n className: \"-cx-PRIVATE-fbChatOrderedList__separatorsubheadertext\"\n }, lb._(\"These friends can't see you on chat. {=link}\", {\n \"=link\": zb\n })))))));\n return ac;\n },\n _renderOrderedList: function() {\n if (((((!this._isVisible || ((this._preventRendering && this._hasRendered)))) || pb))) {\n return;\n }\n ;\n ;\n this._hasRendered = true;\n this._cachedItems = null;\n var yb = [], zb, ac, bc = false, cc = false, dc = r.get(\"divebar_has_new_groups_button\", false), ec = o.hasClass(JSBNG__document.documentElement, \"sidebarMode\"), fc = qa.getVisibility(), gc = ((qa.getOnlinePolicy() === qa.ONLINE_TO_WHITELIST)), hc = ((this._isLitestandSidebar && this._isLitestandSidebarCollapsed())), ic = r.get(\"groups_in_divebar\");\n ((ic && this._updateGroupThreads()));\n var jc = ((ic && v.getThreadIDs().length)), kc = ((((((ec && this._favoriteMode)) && fc)) && !gc));\n if (((((((kc && ic)) && jc)) && this._groupThreadsNode))) {\n ba.setContent(this._groupsList, this._groupThreadsNode);\n x.nukeLinks(this._groupThreadsNode);\n x.nukeLinks(this._favoriteList);\n this.inform(\"render\");\n }\n ;\n ;\n var lc = ((((kc && this._groupThreadsNode)) && this._groupsList)), mc = ((lc && jc)), nc = ((this._isLitestand && !oa.byClass(this._root, \"-cx-PRIVATE-litestandSidebarBookmarks__expanded\")));\n if (((lc && ((jc || ((nc && dc))))))) {\n ba.setContent(this._groupsList, this._groupThreadsNode);\n o.show(this._groupsList);\n x.nukeLinks(this._favoriteList);\n this.inform(\"render\");\n }\n else ((this._groupsList && o.hide(this._groupsList)));\n ;\n ;\n var oc = ((jc || 0));\n if (((dc && ((mc || !kc))))) {\n oc++;\n }\n ;\n ;\n var pc = [], qc, rc;\n if (kc) {\n ((this._chatSidebar && o.addClass(this._chatSidebar, \"fbSidebarFavoriteList\")));\n pc = t.get();\n if (hc) {\n pc = pc.slice(0, Math.max(0, ((this._numTopFriends - oc))));\n }\n ;\n ;\n for (qc = 0, rc = pc.length; ((qc < rc)); qc++) {\n zb = pc[qc];\n ac = this._getListItem(zb, true);\n if (ac) {\n yb.push(ac);\n }\n else {\n cc = true;\n this._renderListItem(zb, this.update.bind(this));\n }\n ;\n ;\n };\n ;\n }\n ;\n ;\n this.toggleFavoriteSidebar(kc, mc);\n var sc = ((hc ? 1 : 0)), tc = rb.getSortedList(cb(pc), Math.max(0, ((((((this._numTopFriends - pc.length)) - oc)) + sc))));\n if (kc) {\n if (((pc.length && tc.length))) {\n var uc = ba.create(\"li\", {\n className: \"-cx-PRIVATE-fbChatOrderedList__separator\"\n });\n yb.push(uc);\n }\n ;\n ;\n }\n else if (((jc || dc))) {\n ((this._groupThreadsNode && yb.push(this._groupThreadsNode)));\n }\n \n ;\n ;\n var vc = ((qa.getVisibility() && ((qa.getOnlinePolicy() == qa.ONLINE_TO_WHITELIST))));\n for (var wc = 0, xc = tc.length; ((wc < xc)); wc++) {\n zb = tc[wc];\n if (vc) {\n if (!qa.allows(zb)) {\n if (((((wc + 2)) >= tc.length))) {\n break;\n }\n ;\n ;\n vc = false;\n var yc = this._getOfflineToSectionItems();\n yb.push(yc[0]);\n yb.push(yc[1]);\n xc -= 2;\n }\n ;\n }\n ;\n ;\n ac = this._getListItem(zb);\n if (ac) {\n yb.push(ac);\n }\n else this._renderListItem(zb, this.render.bind(this));\n ;\n ;\n };\n ;\n if (kc) {\n ba.setContent(this._favoriteList, yb);\n if (yb.length) {\n x.nukeLinks(this._favoriteList);\n }\n ;\n ;\n this.inform(\"render\");\n }\n ;\n ;\n var zc;\n if (hc) {\n zc = [];\n }\n else zc = rb.getAvailableList(this._excludedIds);\n ;\n ;\n var ad = pc.concat(tc), bd = cb(ad);\n zc = zc.filter(function(jd) {\n return !((jd in bd));\n });\n if (this._renderUnreadCount) {\n var cd = [];\n if (this._renderedTopUsers) {\n var dd = Object.keys(this._renderedTopUsers).filter(function(jd) {\n return !((jd in bd));\n });\n dd.forEach(function(jd) {\n this._updateUnreadCount(jd, 0);\n }.bind(this));\n ad.forEach(function(jd) {\n if (!((jd in this._renderedTopUsers))) {\n cd.push(jd);\n }\n ;\n ;\n }.bind(this));\n }\n else cd = ad;\n ;\n ;\n cd.forEach(function(jd) {\n ma.getThreadMeta(ma.getThreadIdForUser(jd), function(kd) {\n this._updateUnreadCount(jd, ((kd && kd.unread_count)));\n }.bind(this));\n }.bind(this));\n this._renderedTopUsers = bd;\n }\n ;\n ;\n if (r.get(\"divebar_show_mobile_more_friends_alphabetical\")) {\n zc.sort(wb);\n }\n else zc.sort(xb);\n ;\n ;\n var ed = \"MORE FRIENDS\";\n if (kc) {\n yb = [];\n }\n else if (((zc.length && yb.length))) {\n var fd;\n if (this._isLitestand) {\n fd = ia.span(null, ia.span({\n className: \"-cx-PRIVATE-fbChatOrderedList__separatorfulltext\"\n }, ed, \" \\u00b7 \", zc.length), ia.span({\n className: \"-cx-PRIVATE-fbChatOrderedList__separatorcollapsedtext\"\n }, \" +\", zc.length));\n }\n else fd = lb._(\"{MORE ONLINE FRIENDS} ({=count})\", {\n \"MORE ONLINE FRIENDS\": ed,\n \"=count\": zc.length\n });\n ;\n ;\n if (this._pymk) {\n bc = true;\n yb.push(this._pymk);\n }\n ;\n ;\n yb.push(ia.li({\n className: \"-cx-PRIVATE-fbChatOrderedList__friendsseparator moreOnlineFriends\"\n }, ia.div({\n className: \"-cx-PRIVATE-fbChatOrderedList__separatorouter\"\n }, ia.div({\n className: \"-cx-PRIVATE-fbChatOrderedList__separatorinner\"\n }, ia.span({\n className: \"-cx-PRIVATE-fbChatOrderedList__separatortext\"\n }, fd), ia.div({\n className: \"-cx-PRIVATE-fbChatOrderedList__separatordive\"\n }, ia.span({\n className: \"-cx-PRIVATE-fbChatOrderedList__separatorbar\"\n }))))));\n }\n \n ;\n ;\n for (qc = 0, rc = zc.length; ((qc < rc)); qc++) {\n zb = zc[qc];\n ac = this._getListItem(zb);\n if (ac) {\n yb.push(ac);\n }\n else this._renderListItem(zb, this.render.bind(this));\n ;\n ;\n };\n ;\n if (((((!tc.length && !zc.length)) && !oc))) {\n var gd = this._messageTemplate.render(), hd = ab.getNode(gd, \"message\");\n ba.setContent(hd, \"No one is available to chat.\");\n yb.push(gd);\n }\n ;\n ;\n if (yb.length) {\n if (kc) {\n o.show(this._activeNowList);\n if (this._activeNowLabel) {\n var id;\n o.show(this._activeNowArea);\n if (this._isLitestand) {\n id = ia.span(null, ia.span({\n className: \"-cx-PRIVATE-fbChatOrderedList__separatorfulltext\"\n }, ed, \" \\u00b7 \", zc.length), ia.span({\n className: \"-cx-PRIVATE-fbChatOrderedList__separatorcollapsedtext\"\n }, \" +\", zc.length));\n }\n else id = lb._(\"{MORE ONLINE FRIENDS} ({=count})\", {\n \"MORE ONLINE FRIENDS\": \"ACTIVE NOW\",\n \"=count\": zc.length\n });\n ;\n ;\n ba.setContent(this._activeNowLabel, id);\n }\n ;\n ;\n ba.setContent(this._activeNowList, yb);\n x.nukeLinks(this._activeNowList);\n }\n else {\n if (((this._pymk && !bc))) {\n yb.push(this._pymk);\n }\n ;\n ;\n ba.setContent(this._orderedList, yb);\n if (this._pymk) {\n x.removeMessagesHrefs(this.getRoot());\n }\n else x.nukeLinks(this.getRoot());\n ;\n ;\n }\n ;\n ;\n this.inform(\"render\");\n this._placeholderUpdate();\n if (!this._renderingAfterScroll) {\n this._renderingAfterScroll = true;\n this.render = fb(ib.curry(this._renderOrderedList.bind(this), \"ChatOrderedList/render\", true), 300);\n }\n ;\n ;\n }\n else if (kc) {\n o.hide(this._activeNowList);\n if (this._activeNowArea) {\n o.hide(this._activeNowArea);\n }\n ;\n ;\n }\n \n ;\n ;\n if (kc) {\n ((this._editButton && u.tryShow(this._editButton)));\n }\n else u.tryHide();\n ;\n ;\n if (((kc && !cc))) {\n if (((t.isEditMode() && t.hasChanged()))) {\n this._createSortableGroup();\n }\n ;\n }\n ;\n ;\n },\n render: function() {\n this.render = fb(this._renderOrderedList.bind(this), 300);\n this.render();\n },\n _renderListItem: function(yb, zb) {\n ua.get(yb, function(ac) {\n var bc = this._template.render(), cc = ab.getNode(bc, \"profile-photo\");\n if (r.get(\"chat_use_client_side_image_requests\", 0)) {\n var dc = ((this._isLitestand ? 24 : 28));\n new fa().setFBID(ac.id).setType(ga.PROFILE_PICTURE).setDimensions(dc, dc).setResizeMode(pa.COVER).setCallback(function(ic) {\n cc.setAttribute(\"src\", ic.uri);\n }).send();\n }\n else cc.setAttribute(\"src\", ac.thumbSrc);\n ;\n ;\n var ec = ab.getNode(bc, \"JSBNG__name\");\n ba.setContent(ec, ac.JSBNG__name);\n var fc = ab.getNode(bc, \"accessible-name\");\n ba.setContent(fc, ac.JSBNG__name);\n var gc = ab.getNode(bc, \"anchor\");\n gc.setAttribute(\"href\", ((\"/messages/\" + yb)));\n var hc = ab.getNode(bc, \"tooltip\");\n ((hc && wa.set(hc, ac.JSBNG__name, \"right\")));\n ca.set(bc, \"id\", yb);\n this._itemsMap[yb] = {\n node: bc\n };\n ((zb && zb(bc)));\n }.bind(this));\n },\n _updateUnreadCount: function(yb, zb) {\n var ac = this._itemsMap[yb];\n if (!ac) {\n return;\n }\n ;\n ;\n if (this._isSidebar) {\n this._unreadMessages = ((this._unreadMessages || {\n }));\n if (!!zb) {\n this._unreadMessages[yb] = true;\n }\n else delete this._unreadMessages[yb];\n ;\n ;\n h.inform(\"buddylist-nub/updateCount\", {\n count: Object.keys(this._unreadMessages).length\n });\n }\n ;\n ;\n ac.unreadCount = ((ac.unreadCount || ba.JSBNG__find(ac.node, \".-cx-PRIVATE-fbChatOrderedList__unreadcount\")));\n zb = ((zb ? zb : 0));\n ba.setContent(ac.unreadCount, ((((zb > qb)) ? ((qb + \"+\")) : zb)));\n o.conditionClass(ac.unreadCount, \"-cx-PRIVATE-fbChatOrderedList__largecount\", ((zb > qb)));\n o.conditionClass(ac.node, \"-cx-PRIVATE-fbChatOrderedList__hasunreadcount\", zb);\n },\n show: function() {\n if (this._isVisible) {\n return;\n }\n ;\n ;\n this._isVisible = true;\n o.show(((this._scrollableOrderedList || this._root)));\n this.render();\n this.inform(\"show\");\n },\n isVisible: function() {\n return this._isVisible;\n },\n update: function() {\n this._hasRendered = false;\n if (!this._renderRequest) {\n this._renderRequest = hb(function() {\n this.render();\n this._renderRequest = null;\n }.bind(this));\n }\n ;\n ;\n },\n setScrollContainer: function(yb) {\n if (ba.contains(yb, this._root)) {\n this._scrollContainer = yb;\n if (this._usePlaceholder) {\n ea.listen(yb, \"JSBNG__scroll\", kb.acrossTransitions(this._placeholderUpdate.bind(this)));\n ea.listen(window, \"resize\", kb.acrossTransitions(function() {\n this._scrollContainerHeight = null;\n this._placeholderUpdate();\n }.bind(this), 250));\n }\n ;\n ;\n }\n ;\n ;\n },\n JSBNG__scrollTo: function(yb) {\n if (!this._scrollContainer) {\n return;\n }\n ;\n ;\n var zb = this._scrollContainer.scrollHeight, ac = this._scrollContainer.clientHeight, bc = this._scrollContainer.scrollTop, cc = Math.min(yb.offsetTop, ((zb - ac)));\n if (((bc !== cc))) {\n var dc = ((this._isLitestand ? 600 : ((((Math.abs(((cc - bc))) / this._scrollContainer.clientHeight)) * 500)))), ec = ((this._isLitestand ? da.easeOutExpo : g.ease.end));\n new g(this._scrollContainer).to(\"scrollTop\", cc).ease(ec).duration(dc).go();\n }\n ;\n ;\n },\n _applyContext: function(yb, zb) {\n var ac = ((s.getShortDisplay(yb) || \"\"));\n if (zb.contextNode) {\n ba.setContent(zb.contextNode, ac);\n o.conditionClass(zb.node, \"-cx-PRIVATE-fbChatOrderedList__hascontext\", ac);\n var bc = s.get(yb), cc = ((bc ? bc.type : null));\n {\n var fin317keys = ((window.top.JSBNG_Replay.forInKeys)((rb.CONTEXT_CLASSES))), fin317i = (0);\n var dc;\n for (; (fin317i < fin317keys.length); (fin317i++)) {\n ((dc) = (fin317keys[fin317i]));\n {\n var ec = ((dc === cc)), fc = ((rb.CONTEXT_CLASSES[dc] || \"-cx-PRIVATE-fbChatOrderedList__contextother\"));\n o.conditionClass(zb.contextNode, fc, ec);\n };\n };\n };\n ;\n }\n ;\n ;\n }\n });\n e.exports = rb;\n});\n__d(\"TypingDetectorController\", [\"AsyncRequest\",\"AvailableList\",\"AvailableListConstants\",\"ChannelConnection\",\"ChatVisibility\",\"Keys\",\"PresencePrivacy\",\"ShortProfiles\",\"TypingDetector\",\"copyProperties\",\"emptyFunction\",\"shield\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"AvailableList\"), i = b(\"AvailableListConstants\"), j = b(\"ChannelConnection\"), k = b(\"ChatVisibility\"), l = b(\"Keys\"), m = b(\"PresencePrivacy\"), n = b(\"ShortProfiles\"), o = b(\"TypingDetector\"), p = b(\"copyProperties\"), q = b(\"emptyFunction\"), r = b(\"shield\");\n function s(u) {\n if (!k.isOnline()) {\n return false;\n }\n ;\n ;\n if (u) {\n var v = n.getNow(u);\n return ((((v && ((v.type == \"friend\")))) && m.allows(u)));\n }\n ;\n ;\n return true;\n };\n;\n function t(u, v, w, x, y) {\n this.userID = u;\n this.input = v;\n this.source = w;\n this.threadID = y;\n this.remoteState = o.INACTIVE;\n this.notifyTimer = null;\n x = ((x || {\n }));\n this.notifyDelay = ((x.notifyDelay || this.notifyDelay));\n this._typingDetector = new o(v);\n this._typingDetector.init(x);\n this._typingDetector.subscribe(\"change\", this._stateChange.bind(this));\n };\n;\n p(t.prototype, {\n notifyDelay: 1000,\n setUserAndThread: function(u, v) {\n if (((((this.userID !== u)) || ((this.threadID !== v))))) {\n this.resetState();\n this.userID = u;\n this.threadID = v;\n }\n ;\n ;\n },\n setIgnoreEnter: function(u) {\n var v = ((u ? [l.RETURN,] : []));\n this._typingDetector.setIgnoreKeys(v);\n },\n resetState: function() {\n this.remoteState = t.INACTIVE;\n this._typingDetector.reset();\n JSBNG__clearTimeout(this.notifyTimer);\n this.notifyTimer = null;\n },\n _stateChange: function(u, v) {\n if (((v != o.QUITTING))) {\n JSBNG__clearTimeout(this.notifyTimer);\n this.notifyTimer = r(this._notifyState, this, v).defer(this.notifyDelay, false);\n }\n else this._notifyState(v, true);\n ;\n ;\n },\n _notifyState: function(u, v) {\n if (((!this.userID && !this.threadID))) {\n return;\n }\n ;\n ;\n var w = this.userID, x = s(w);\n if (((x && ((u != this.remoteState))))) {\n this.remoteState = u;\n if (j.disconnected()) {\n return;\n }\n ;\n ;\n var y = {\n typ: u,\n to: w,\n source: this.source,\n thread: this.threadID\n };\n new g().setHandler(this._onTypResponse.bind(this, w)).setErrorHandler(q).setData(y).setURI(\"/ajax/messaging/typ.php\").setAllowCrossPageTransition(true).setOption(\"asynchronous\", !v).send();\n }\n ;\n ;\n },\n _onTypResponse: function(u, v) {\n var w = ((v.getPayload() || {\n }));\n if (w.offline) {\n h.set(u, i.OFFLINE, \"typing_response\");\n }\n ;\n ;\n }\n });\n e.exports = t;\n});\n__d(\"ChatBehavior\", [\"Arbiter\",\"AvailableList\",\"AvailableListConstants\",\"ChatConfig\",\"copyProperties\",\"MercuryConstants\",\"ChatSidebarCalloutData\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AvailableList\"), i = b(\"AvailableListConstants\"), j = b(\"ChatConfig\"), k = b(\"copyProperties\"), l = b(\"MercuryConstants\").ChatNotificationConstants, m = b(\"ChatSidebarCalloutData\").isShown, n = h.getWebChatNotification(), o = m, p = true, q = k(new g(), {\n ON_CHANGED: \"changed\",\n notifiesUserMessages: function() {\n return ((n !== l.NO_USER_MESSAGE_NOTIFICATION));\n },\n ignoresRemoteTabRaise: function() {\n return o;\n },\n showsTabUnreadUI: function() {\n if (j.get(\"web_messenger_suppress_tab_unread\")) {\n return p;\n }\n ;\n ;\n return true;\n }\n });\n function r() {\n q.inform(q.ON_CHANGED);\n };\n;\n h.subscribe(i.ON_CHAT_NOTIFICATION_CHANGED, function() {\n var s = n, t = h.getWebChatNotification();\n n = t;\n if (((s != t))) {\n r();\n }\n ;\n ;\n });\n g.subscribe(\"chat/set_does_page_occlude_tabs\", function(s, t) {\n o = !!t;\n r();\n });\n g.subscribe(\"chat/set_show_tab_unread_ui\", function(s, t) {\n p = !!t;\n r();\n });\n e.exports = q;\n});\n__d(\"ChatSidebarSheet\", [\"JSBNG__Event\",\"function-extensions\",\"ArbiterMixin\",\"BlackbirdUpsell\",\"ChannelConnection\",\"ChannelConstants\",\"ChatBehavior\",\"ChatConfig\",\"ChatVisibility\",\"JSBNG__CSS\",\"DOM\",\"JSLogger\",\"PresencePrivacy\",\"React\",\"XUIButton.react\",\"csx\",\"cx\",\"copyProperties\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\");\n b(\"function-extensions\");\n var h = b(\"ArbiterMixin\"), i = b(\"BlackbirdUpsell\"), j = b(\"ChannelConnection\"), k = b(\"ChannelConstants\"), l = b(\"ChatBehavior\"), m = b(\"ChatConfig\"), n = b(\"ChatVisibility\"), o = b(\"JSBNG__CSS\"), p = b(\"DOM\"), q = b(\"JSLogger\"), r = b(\"PresencePrivacy\"), s = b(\"React\"), t = b(\"XUIButton.react\"), u = b(\"csx\"), v = b(\"cx\"), w = b(\"copyProperties\"), x = b(\"tx\"), y = q.create(\"sidebar_sheet\");\n function z(ca) {\n switch (ca) {\n case k.HINT_AUTH:\n return \"Your session has timed out. Please log in.\";\n case k.HINT_CONN:\n return x._(\"Facebook {Chat} is currently unavailable.\", {\n Chat: \"Chat\"\n });\n case k.HINT_MAINT:\n return x._(\"Facebook {Chat} is currently down for maintenance.\", {\n Chat: \"Chat\"\n });\n default:\n return x._(\"Facebook {Chat} is currently unavailable.\", {\n Chat: \"Chat\"\n });\n };\n ;\n };\n;\n function aa(ca) {\n var da;\n if (((ca === null))) {\n da = \"Unable to connect to chat. Check your Internet connection.\";\n }\n else if (((ca > m.get(\"warning_countdown_threshold_msec\")))) {\n var ea = p.create(\"a\", {\n href: \"#\",\n className: \"fbChatReconnectLink\"\n }, \"Try again\");\n da = p.tx._(\"Unable to connect to chat. {try-again-link}\", {\n \"try-again-link\": ea\n });\n }\n else if (((ca > 1000))) {\n da = x._(\"Unable to connect to chat. Reconnecting in {seconds}...\", {\n seconds: Math.floor(((ca / 1000)))\n });\n }\n else da = \"Unable to connect to chat. Reconnecting...\";\n \n \n ;\n ;\n return da;\n };\n;\n function ba(ca) {\n this._root = ca;\n this._litestandOffline = p.scry(ca, \".-cx-PRIVATE-fbChatSidebarOffline__placeholder\");\n this._message = p.JSBNG__find(ca, \"div.fbChatSidebarMessage div.message\");\n j.subscribe([j.CONNECTED,j.SHUTDOWN,j.RECONNECTING,], this._handleConnectionChange.bind(this));\n j.subscribe([j.MUTE_WARNING,j.UNMUTE_WARNING,], this._render.bind(this));\n r.subscribe(\"privacy-user-presence-changed\", this._render.bind(this));\n l.subscribe(l.ON_CHANGED, this._render.bind(this));\n this._render();\n };\n;\n w(ba.prototype, h, {\n _channelStatus: null,\n _channelData: null,\n _handleConnectionChange: function(ca, da) {\n this._channelStatus = ca;\n this._channelData = da;\n this._render();\n },\n _showWarningTimeout: null,\n _warningMsgEventListener: null,\n _renderChannelDisconnect: function() {\n if (((this._channelStatus === j.SHUTDOWN))) {\n return p.setContent(this._message, z(this._channelData));\n }\n else if (((this._channelStatus === j.RECONNECTING))) {\n var ca = this._channelData;\n p.setContent(this._message, aa(ca));\n if (((ca > 1000))) {\n if (((ca > m.get(\"warning_countdown_threshold_msec\")))) {\n this._warningMsgEventListener = g.listen(this._message, \"click\", function(JSBNG__event) {\n if (o.hasClass(JSBNG__event.getTarget(), \"fbChatReconnectLink\")) {\n j.reconnect();\n return false;\n }\n ;\n ;\n });\n }\n ;\n ;\n this._showWarningTimeout = JSBNG__setTimeout(this._handleConnectionChange.bind(this, j.RECONNECTING, ((ca - 1000))), 1000, false);\n }\n ;\n ;\n }\n \n ;\n ;\n },\n _goOnlineEventListener: null,\n _renderOffline: function() {\n if (this._isLitestand) {\n return;\n }\n ;\n ;\n if (((this._litestandOffline && this._litestandOffline.length))) {\n this._renderLitestandOffline();\n }\n ;\n ;\n var ca = \"fbChatGoOnlineLink\", da = \"Turn on chat\", ea = p.create(\"a\", {\n href: \"#\",\n className: ca\n }, da), fa = p.tx._(\"{=Go online} to see who's available.\", {\n \"=Go online\": ea\n });\n p.setContent(this._message, fa);\n this._goOnlineEventListener = g.listen(this._message, \"click\", function(JSBNG__event) {\n if (o.hasClass(JSBNG__event.getTarget(), ca)) {\n y.log(\"sidebar_go_online\");\n n.goOnline();\n return false;\n }\n ;\n ;\n });\n },\n _renderLitestandOffline: function() {\n this._litestandOffline = this._litestandOffline[0];\n this._isLitestand = true;\n if (m.get(\"litestand_blended_sidebar\")) {\n s.renderComponent(t({\n className: \"-cx-PRIVATE-fbChatSidebarOffline__root -cx-PRIVATE-fbChatSidebarOffline__button\",\n href: {\n url: \"#\"\n },\n label: \"Turn on Chat\",\n onClick: function() {\n y.log(\"sidebar_go_online\");\n n.goOnline();\n }\n }), this._litestandOffline);\n this._litestandOffline = null;\n }\n else {\n s.renderComponent(s.DOM.a({\n className: \"-cx-PRIVATE-fbChatSidebarOffline__root -cx-PUBLIC-litestandLiquid__hover\",\n href: \"#\",\n onClick: function() {\n y.log(\"sidebar_go_online\");\n n.goOnline();\n }\n }, s.DOM.i({\n className: \"-cx-PRIVATE-fbChatSidebarOffline__leftborder\"\n }), s.DOM.div({\n className: \"-cx-PRIVATE-fbChatSidebarOffline__center\"\n }, s.DOM.div({\n className: \"-cx-PRIVATE-fbChatSidebarOffline__content\"\n }, s.DOM.i({\n className: \"-cx-PRIVATE-fbChatSidebarOffline__offlineicon\"\n }), s.DOM.div({\n className: \"-cx-PRIVATE-fbChatSidebarOffline__message\"\n }, p.tx._(\"Turn on Chat\")))), s.DOM.i({\n className: \"-cx-PRIVATE-fbChatSidebarOffline__rightborder\"\n }), s.DOM.div({\n className: \"-cx-PUBLIC-litestandSidebarBookmarks__tooltip\",\n \"data-hover\": \"tooltip\",\n \"data-tooltip-alignh\": \"center\",\n \"data-tooltip-position\": \"right\",\n \"aria-label\": \"Turn on Chat\"\n })), this._litestandOffline);\n this._litestandOffline = null;\n }\n ;\n ;\n },\n _renderBlackbirdUpsell: function() {\n p.setContent(this._message, i.getOfflineContent());\n },\n _renderBlackbird: function(ca) {\n p.setContent(this._message, i.getBlackbirdContent(ca));\n },\n _clear: function() {\n if (this._showWarningTimeout) {\n JSBNG__clearTimeout(this._showWarningTimeout);\n this._showWarningTimeout = null;\n }\n ;\n ;\n if (this._warningMsgEventListener) {\n this._warningMsgEventListener.remove();\n this._warningMsgEventListener = null;\n }\n ;\n ;\n if (this._goOnlineEventListener) {\n this._goOnlineEventListener.remove();\n this._goOnlineEventListener = null;\n }\n ;\n ;\n o.removeClass(this._root, \"upsell\");\n o.removeClass(this._root, \"offline\");\n o.removeClass(this._root, \"blackbird\");\n o.removeClass(this._root, \"error\");\n o.removeClass(this._root, \"notice\");\n p.empty(this._message);\n },\n _render: function() {\n this._clear();\n if (i.shouldShow()) {\n if (n.hasBlackbirdEnabled()) {\n var ca = ((n.isOnline() ? \"blackbird\" : \"upsell\"));\n o.addClass(this._root, ca);\n this._renderBlackbird(r.getVisibility());\n }\n else if (!n.isOnline()) {\n o.addClass(this._root, \"upsell\");\n this._renderBlackbirdUpsell();\n }\n \n ;\n ;\n }\n else if (!n.isOnline()) {\n o.addClass(this._root, \"offline\");\n this._renderOffline();\n }\n else if (j.disconnected()) {\n o.addClass(this._root, \"error\");\n this._renderChannelDisconnect();\n }\n else if (!l.notifiesUserMessages()) {\n o.addClass(this._root, \"notice\");\n p.setContent(this._message, \"Alerts are off while you use another client to chat.\");\n }\n \n \n \n ;\n ;\n this.inform(\"updated\");\n }\n });\n e.exports = ba;\n});\n__d(\"FBDesktopPlugin\", [\"CacheStorage\",\"DOM\",\"Env\",\"FBDesktopDetect\",\"URI\",\"Style\",], function(a, b, c, d, e, f) {\n var g = b(\"CacheStorage\"), h = b(\"DOM\"), i = b(\"Env\"), j = b(\"FBDesktopDetect\"), k = b(\"URI\"), l = b(\"Style\"), m = new g(\"localstorage\", \"_socialfox_\"), n = {\n _plugin: \"_not_checked\",\n arbiterInform: function(o, p) {\n var q = JSON.stringify({\n JSBNG__name: o,\n payload: p\n });\n this._transmitCommand(\"arbiterinform\", q);\n },\n bringToFront: function() {\n this._transmitCommand(\"bringtofront\");\n },\n dock: function() {\n this._transmitCommand(\"dock\");\n },\n getPlugin: function() {\n if (((this._plugin === \"_not_checked\"))) {\n this._plugin = null;\n if (j.isPluginInstalled()) {\n var o = h.create(\"object\", {\n id: \"kiwi_plugin\",\n type: j.mimeType\n });\n l.set(o, \"width\", 0);\n l.set(o, \"height\", 0);\n var p = h.create(\"div\", {\n }, o);\n l.set(p, \"width\", 0);\n l.set(p, \"height\", 0);\n JSBNG__document.body.appendChild(p);\n this._plugin = o;\n }\n ;\n ;\n }\n ;\n ;\n return this._plugin;\n },\n getUserID: function() {\n var o = this.getPlugin();\n return ((((o && ((\"getUserID\" in o)))) && o.getUserID()));\n },\n getVersion: function() {\n var o = this.getPlugin();\n return ((((o && ((\"getVersion\" in o)))) && o.getVersion()));\n },\n isAppRunning: function() {\n var o = this.getPlugin();\n return ((((o && ((\"isAppRunning\" in o)))) && o.isAppRunning()));\n },\n launchApp: function() {\n var o = this.getPlugin();\n return ((((o && ((\"launchApp\" in o)))) && o.launchApp()));\n },\n login: function(o, p) {\n if (((((p && o)) && ((o.length > 0))))) {\n var q = this.getPlugin();\n if (q) {\n this._transmitCommand(((((((\"relogin\\u000a\" + o)) + \"\\u000a\")) + p)));\n return;\n }\n ;\n ;\n }\n ;\n ;\n },\n logout: function(o) {\n o = ((o || \"0\"));\n var p = this.getPlugin();\n if (p) {\n p.logout(o);\n }\n ;\n ;\n },\n recheck: function() {\n if (((this._plugin === null))) {\n this._plugin = \"_not_checked\";\n }\n ;\n ;\n },\n shouldSuppressBeeper: function() {\n return this.isAppRunning();\n },\n shouldSuppressMessages: function() {\n if (((m && m.get(\"connected\")))) {\n return true;\n }\n ;\n ;\n var o = this.getUserID();\n if (o) {\n return ((o === i.user));\n }\n else return this.isAppRunning()\n ;\n },\n shouldSuppressSidebar: function() {\n var o = this.getPlugin(), p = ((((o && ((\"isAppDocked\" in o)))) && o.isAppDocked())), q = ((m && ((m.get(\"active\") === \"true\"))));\n return ((p || q));\n },\n transferAuthToken: function(o, p) {\n if (((o && ((o.length > 0))))) {\n var q = this.getPlugin();\n if (q) {\n q.setAccessToken(o, p);\n var r = JSBNG__setInterval(function() {\n q.setAccessToken(o, p);\n }, 500);\n JSBNG__setTimeout(function() {\n JSBNG__clearInterval(r);\n }, ((10 * 1000)));\n }\n ;\n ;\n }\n ;\n ;\n if (this.redirectHome) {\n window.JSBNG__location.href = k().setPath().toString();\n }\n ;\n ;\n },\n _transmitCommand: function(o, p) {\n p = ((p || \"\"));\n var q = this.getPlugin();\n if (((q && ((\"transmitCommand\" in q))))) {\n q.transmitCommand(o, p);\n }\n ;\n ;\n }\n };\n e.exports = n;\n});\n__d(\"ChatSidebar\", [\"ChatOrderedList\",\"ChatTypeaheadBehavior\",\"ChatTypeaheadCore\",\"ChatTypeaheadDataSource\",\"ChatTypeaheadRenderer\",\"ChatTypeaheadView\",\"Typeahead\",\"Arbiter\",\"ArbiterMixin\",\"AsyncRequest\",\"AvailableList\",\"AvailableListConstants\",\"Bootloader\",\"ChannelConnection\",\"Chat\",\"ChatConfig\",\"ChatHovercard\",\"ChatImpressionLogger\",\"ChatOptions\",\"ChatSidebarSheet\",\"ChatVisibility\",\"JSBNG__CSS\",\"DOM\",\"DOMDimensions\",\"JSBNG__Event\",\"FBDesktopPlugin\",\"JSLogger\",\"JSXDOM\",\"KeyEventController\",\"OrderedFriendsList\",\"Parent\",\"PresencePrivacy\",\"ScrollableArea\",\"Style\",\"UserAgent\",\"ViewportBounds\",\"copyProperties\",\"createArrayFrom\",\"csx\",\"cx\",\"debounce\",\"emptyFunction\",\"fbt\",\"ge\",\"tx\",], function(a, b, c, d, e, f) {\n b(\"ChatOrderedList\");\n b(\"ChatTypeaheadBehavior\");\n b(\"ChatTypeaheadCore\");\n b(\"ChatTypeaheadDataSource\");\n b(\"ChatTypeaheadRenderer\");\n b(\"ChatTypeaheadView\");\n b(\"Typeahead\");\n var g = b(\"Arbiter\"), h = b(\"ArbiterMixin\"), i = b(\"AsyncRequest\"), j = b(\"AvailableList\"), k = b(\"AvailableListConstants\"), l = b(\"Bootloader\"), m = b(\"ChannelConnection\"), n = b(\"Chat\"), o = b(\"ChatConfig\"), p = b(\"ChatHovercard\"), q = b(\"ChatImpressionLogger\"), r = b(\"ChatOptions\"), s = b(\"ChatSidebarSheet\"), t = b(\"ChatVisibility\"), u = b(\"JSBNG__CSS\"), v = b(\"DOM\"), w = b(\"DOMDimensions\"), x = b(\"JSBNG__Event\"), y = b(\"FBDesktopPlugin\"), z = b(\"JSLogger\"), aa = b(\"JSXDOM\"), ba = b(\"KeyEventController\"), ca = b(\"OrderedFriendsList\"), da = b(\"Parent\"), ea = b(\"PresencePrivacy\"), fa = b(\"ScrollableArea\"), ga = b(\"Style\"), ha = b(\"UserAgent\"), ia = b(\"ViewportBounds\"), ja = b(\"copyProperties\"), ka = b(\"createArrayFrom\"), la = b(\"csx\"), ma = b(\"cx\"), na = b(\"debounce\"), oa = b(\"emptyFunction\"), pa = b(\"fbt\"), qa = b(\"ge\"), ra = b(\"tx\"), sa, ta = false, ua = false, va = false, wa = false, xa = false, ya = false, za, ab, bb, cb, db, eb = null, fb, gb, hb, ib, jb, kb, lb = 28, mb = 38, nb = z.create(\"chat_sidebar\");\n function ob() {\n if (gb) {\n return;\n }\n ;\n ;\n u.removeClass(JSBNG__document.documentElement, \"sidebarMode\");\n if (((!wa || !yb.isVisible()))) {\n g.inform(\"reflow\");\n return;\n }\n ;\n ;\n va = false;\n eb = null;\n za.hide();\n cb.getCore().reset();\n u.hide(ab);\n nb.rate(\"sidebar_hide\", wa);\n yb.inform(\"sidebar/hide\", yb);\n g.inform(\"sidebar/hide\", yb);\n g.inform(\"reflow\");\n };\n;\n function pb() {\n var zb = yb.shouldShowSidebar();\n u.conditionClass(JSBNG__document.documentElement, \"sidebarCapable\", zb);\n if (((yb.isEnabled() && zb))) {\n sb();\n var ac;\n if (fb) {\n var bc = u.hasClass(ab, \"-cx-PRIVATE-litestandSidebarBookmarks__expanded\");\n if (bc) {\n return;\n }\n ;\n ;\n kb = ((kb || v.JSBNG__find(ab, \".-cx-PRIVATE-hasLitestandBookmarksSidebar__chatfooter\")));\n if (fb.has_favorites_editing) {\n jb = ((jb || v.scry(ab, \".-cx-PRIVATE-litestandSidebarFavorites__sectionheader\")[0]));\n }\n ;\n ;\n ac = [kb,];\n }\n else ac = ka(ab.childNodes);\n ;\n ;\n var cc = rb(ac), dc = ((za.getItemHeight() || 32)), ec = ((za.getPaddingOffset() || 8)), fc;\n if (gb) {\n if (gb.isExpanded()) {\n ec = ((ec + lb));\n if (((fb && fb.always_show_one_see_more))) {\n ec += dc;\n }\n ;\n ;\n }\n ;\n ;\n if (!n.isOnline()) {\n ec += mb;\n }\n ;\n ;\n var gc = Math.floor(((za.getItemPadding() / 2)));\n fc = Math.floor(((((((cc - ec)) + gc)) / dc)));\n if (!za.isVisible()) {\n ga.set(sa, \"height\", ((cc + \"px\")));\n }\n ;\n ;\n }\n else {\n fc = Math.floor(((((cc - ec)) / ((dc + 1)))));\n ga.set(sa, \"height\", ((cc + \"px\")));\n }\n ;\n ;\n za.setNumTopFriends(fc);\n var hc = Math.floor(((((cc - ec)) / dc)));\n if (ub()) {\n hc = ((((((hc - 2)) > 0)) ? ((hc - 2)) : 0));\n }\n ;\n ;\n cb.getData().setMaxResults(hc);\n yb.inform(\"sidebar/resized\", yb);\n g.inform(\"sidebar/resized\", yb);\n g.inform(\"reflow\");\n }\n else ob();\n ;\n ;\n if (!wa) {\n wb();\n wa = true;\n }\n ;\n ;\n eb = null;\n };\n;\n function qb() {\n if (((cb && yb.isVisible()))) {\n cb.getCore().getElement().JSBNG__focus();\n }\n ;\n ;\n };\n;\n function rb(zb) {\n if (!zb) {\n if (fb) {\n kb = ((kb || v.JSBNG__find(ab, \".-cx-PRIVATE-hasLitestandBookmarksSidebar__chatfooter\")));\n zb = [kb,];\n }\n else zb = ka(ab.childNodes);\n ;\n }\n ;\n ;\n var ac = db.height;\n if (((gb && hb))) {\n ac -= hb.getFullHeight();\n }\n ;\n ;\n zb.forEach(function(bc) {\n if (((bc && ((bc !== sa))))) {\n ac -= w.getElementDimensions(bc).height;\n }\n ;\n ;\n });\n return Math.max(0, ac);\n };\n;\n function sb() {\n if (yb.isVisible()) {\n return;\n }\n ;\n ;\n va = true;\n eb = null;\n u.show(ab);\n u.addClass(JSBNG__document.documentElement, \"sidebarMode\");\n za.show();\n nb.rate(\"sidebar_show\", wa);\n yb.inform(\"sidebar/show\", yb);\n g.inform(\"sidebar/show\", yb);\n ((ib && xb()));\n };\n;\n function tb() {\n r.setSetting(\"sidebar_mode\", yb.isEnabled(), \"JSBNG__sidebar\");\n new i(\"/ajax/chat/settings.php\").setHandler(oa).setErrorHandler(oa).setData({\n sidebar_mode: yb.isEnabled()\n }).setAllowCrossPageTransition(true).send();\n };\n;\n function ub() {\n return o.get(\"divebar_typeahead_group_fof\", 0);\n };\n;\n function vb() {\n return ((ca.getList().length <= o.get(\"JSBNG__sidebar.min_friends\")));\n };\n;\n function wb() {\n var zb = true;\n if (!yb.isEnabled()) {\n nb.log(\"state_not_enabled\");\n zb = false;\n }\n ;\n ;\n if (!yb.isViewportCapable()) {\n nb.log(\"state_not_shown_viewport\");\n zb = false;\n }\n ;\n ;\n if (ua) {\n nb.log(\"state_not_shown_hidden\");\n zb = false;\n }\n ;\n ;\n if (vb()) {\n nb.log(\"state_not_shown_num_friends\");\n zb = false;\n }\n ;\n ;\n if (y.shouldSuppressSidebar()) {\n nb.log(\"state_not_shown_fbdesktop\");\n zb = false;\n }\n ;\n ;\n nb.log(((zb ? \"state_shown\" : \"state_not_shown\")));\n };\n;\n function xb() {\n if (!yb.isVisible()) {\n return;\n }\n ;\n ;\n var zb;\n if (!t.isOnline()) {\n zb = \"Offline\";\n }\n else if (m.disconnected()) {\n zb = \"Connection Lost\";\n }\n else zb = ra._(\"{Chat} {number-available}\", {\n Chat: \"Chat\",\n \"number-available\": ((((\"(\" + j.getOnlineCount())) + \")\"))\n });\n \n ;\n ;\n v.setContent(ib, zb);\n };\n;\n var yb = {\n init: function(zb, ac, bc, cc) {\n yb.init = oa;\n xa = true;\n ab = zb;\n za = ac;\n cb = bc;\n bb = cc;\n sa = v.JSBNG__find(zb, \"div.fbChatSidebarBody\");\n gb = ((cc && cc.ls_module));\n fb = ((cc && cc.ls_config));\n if (gb) {\n g.subscribe(\"ViewportSizeChange\", function() {\n g.inform(\"ChatOrderedList/itemHeightChange\");\n pb();\n });\n g.subscribe(\"Sidebar/BookmarksHeightChange\", pb);\n l.loadModules([\"LitestandSidebarBookmarksDisplay\",], function(ec) {\n hb = ec;\n });\n }\n else x.listen(window, \"resize\", pb);\n ;\n ;\n ba.registerKey(\"q\", function() {\n var ec = null;\n if (kb) {\n ec = v.scry(kb, \".inputsearch\")[0];\n }\n else ec = v.scry(zb, \".inputsearch\")[0];\n ;\n ;\n if (ec) {\n ec.JSBNG__focus();\n return false;\n }\n ;\n ;\n });\n new p(ac);\n var dc = new s(zb);\n dc.subscribe(\"updated\", pb);\n g.subscribe(\"sidebar/invalidate\", pb);\n ac.setScrollContainer(da.byClass(ac.getRoot(), \"uiScrollableAreaWrap\"));\n ac.subscribe([\"render\",\"show\",\"hide\",], na(function(ec) {\n if (((((ec === \"render\")) && !ya))) {\n ya = true;\n yb.inform(\"sidebar/chatRendered\", null, g.BEHAVIOR_PERSISTENT);\n }\n ;\n ;\n var fc = ac.getRoot(), gc = fa.getInstance(fc);\n ((gc && gc.adjustGripper()));\n }));\n ac.subscribe([\"editStart\",\"editEnd\",], function(ec) {\n u.conditionClass(cb.getView().element, \"-cx-PUBLIC-fbChatOrderedList__editfavoritemode\", ((ec == \"editStart\")));\n });\n if (((ha.firefox() >= 17))) {\n x.listen(window, \"storage\", function(ec) {\n if (((((ec.key == \"_socialfox_active\")) && ((ec.oldValue != ec.newValue))))) {\n pb();\n }\n ;\n ;\n });\n }\n ;\n ;\n g.subscribe(\"chat/option-changed\", function(ec, fc) {\n if (((fc.JSBNG__name == \"sidebar_mode\"))) {\n ta = !!r.getSetting(\"sidebar_mode\");\n pb();\n }\n ;\n ;\n });\n bc.getCore().subscribe(\"sidebar/typeahead/active\", yb.updateOnActiveTypeahead);\n bc.subscribe(\"reset\", function() {\n if (((!bc.getCore().getValue() && !za.isVisible()))) {\n yb.updateOnActiveTypeahead(null, false);\n }\n ;\n ;\n });\n if (gb) {\n bc.getCore().subscribe(\"sidebar/typeahead/preActive\", function(ec, fc) {\n if (((ta && cb.getView().isVisible()))) {\n g.inform(ec, fc);\n }\n else pb();\n ;\n ;\n });\n }\n else g.subscribe(\"buddylist-nub/initialized\", function(ec, fc) {\n x.listen(fc.getButton(), \"click\", function(JSBNG__event) {\n yb.enable();\n return !yb.shouldShowSidebar();\n });\n });\n ;\n ;\n ta = !!r.getSetting(\"sidebar_mode\");\n ((ha.ie() && x.listen(zb, \"click\", function(ec) {\n if (da.byClass(ec.getTarget(), \"-cx-PRIVATE-fbLitestandChatTypeahead__root\")) {\n qb();\n }\n ;\n ;\n })));\n ea.subscribe(\"privacy-user-presence-changed\", pb);\n pb();\n q.init(za);\n if (!gb) {\n ia.addRight(yb.getVisibleWidth);\n }\n ;\n ;\n yb.inform(\"sidebar/initialized\", yb, g.BEHAVIOR_PERSISTENT);\n g.inform(\"sidebar/initialized\", yb, g.BEHAVIOR_PERSISTENT);\n if (o.get(\"litestand_blended_sidebar\")) {\n ib = v.JSBNG__find(zb, \".-cx-PRIVATE-litestandBlendedSidebar__headertext\");\n j.subscribe(k.ON_AVAILABILITY_CHANGED, na(xb, 2000));\n m.subscribe([m.CONNECTED,m.RECONNECTING,m.SHUTDOWN,], xb);\n ea.subscribe(\"privacy-changed\", xb);\n xb();\n }\n ;\n ;\n },\n updateOnActiveTypeahead: function(zb, ac) {\n if (!va) {\n return;\n }\n ;\n ;\n if (ac) {\n za.hide();\n if (gb) {\n u.addClass(ab, \"-cx-PRIVATE-fbChatTypeahead__active\");\n var bc = rb();\n if (jb) {\n bc += w.getElementDimensions(jb).height;\n }\n ;\n ;\n ga.set(sa, \"height\", ((bc + \"px\")));\n }\n ;\n ;\n }\n else {\n za.show();\n if (gb) {\n ga.set(sa, \"height\", \"auto\");\n u.removeClass(ab, \"-cx-PRIVATE-fbChatTypeahead__active\");\n g.inform(\"sidebar/typeahead/active\", false);\n pb();\n }\n else pb();\n ;\n ;\n }\n ;\n ;\n },\n isInitialized: function() {\n return wa;\n },\n disable: function() {\n if (!yb.isEnabled()) {\n return;\n }\n ;\n ;\n ta = false;\n tb();\n ob();\n },\n enable: function() {\n if (yb.isEnabled()) {\n return;\n }\n ;\n ;\n ta = true;\n tb();\n pb();\n qb.defer();\n },\n forceEnsureLoaded: function() {\n if (xa) {\n return;\n }\n ;\n ;\n if (qa(\"pagelet_sidebar\")) {\n return;\n }\n ;\n ;\n d([\"UIPagelet\",], function(zb) {\n var ac = aa.div({\n id: \"pagelet_sidebar\"\n });\n v.appendContent(JSBNG__document.body, ac);\n zb.loadFromEndpoint(\"SidebarPagelet\", \"pagelet_sidebar\");\n });\n xa = true;\n },\n ensureLoaded: function() {\n if (!ta) {\n return;\n }\n ;\n ;\n yb.forceEnsureLoaded();\n },\n hide: function() {\n if (ua) {\n return;\n }\n ;\n ;\n ua = true;\n ob();\n },\n unhide: function() {\n if (!ua) {\n return;\n }\n ;\n ;\n ua = false;\n pb();\n },\n getBody: function() {\n return sa;\n },\n getRoot: function() {\n return ab;\n },\n getVisibleWidth: function() {\n if (((!va || !ab))) {\n return 0;\n }\n ;\n ;\n if (((eb === null))) {\n eb = ab.offsetWidth;\n }\n ;\n ;\n return eb;\n },\n isEnabled: function() {\n return ta;\n },\n isViewportCapable: function() {\n db = w.getViewportWithoutScrollbarDimensions();\n if (gb) {\n return true;\n }\n ;\n ;\n var zb = o.get(\"JSBNG__sidebar.minimum_width\");\n return ((db.width > zb));\n },\n shouldShowSidebar: function() {\n var zb = yb.isViewportCapable();\n return ((gb || ((((((zb && !ua)) && ((!vb() || o.get(\"litestand_blended_sidebar\", false))))) && !y.shouldSuppressSidebar()))));\n },\n isVisible: function() {\n return va;\n },\n resize: pb,\n toggle: function() {\n if (gb) {\n gb.toggle();\n }\n else ((yb.isEnabled() ? yb.disable() : yb.enable()));\n ;\n ;\n },\n isLitestandSidebar: function() {\n return !!gb;\n }\n };\n ja(yb, h);\n e.exports = yb;\n});\n__d(\"DropdownContextualHelpLink\", [\"DOM\",\"ge\",], function(a, b, c, d, e, f) {\n var g = b(\"DOM\"), h = b(\"ge\"), i = {\n set: function(j) {\n var k = h(\"navHelpCenter\");\n if (((k !== null))) {\n g.replace(k, j);\n }\n ;\n ;\n }\n };\n e.exports = i;\n});\n__d(\"ChatActivity\", [\"JSBNG__Event\",\"Arbiter\",\"AvailableList\",\"AvailableListConstants\",\"JSLogger\",\"MercuryConfig\",\"PresenceState\",\"UserActivity\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"Arbiter\"), i = b(\"AvailableList\"), j = b(\"AvailableListConstants\"), k = b(\"JSLogger\"), l = b(\"MercuryConfig\"), m = b(\"PresenceState\"), n = b(\"UserActivity\"), o = b(\"copyProperties\"), p = ((l.activity_limit || 60000)), q = ((l.idle_limit || 1800000)), r = ((l.idle_poll_interval || 300000)), s = k.create(\"chat_activity\"), t = JSBNG__Date.now(), u = t, v = true;\n function w() {\n var aa = JSBNG__Date.now();\n return !!((v && ((((aa - t)) < p))));\n };\n;\n var x = o(new h(), {\n isActive: w\n });\n function y() {\n var aa = t;\n t = JSBNG__Date.now();\n if (((((t - aa)) > q))) {\n s.debug(\"idle_to_active\", aa);\n m.doSync();\n }\n ;\n ;\n x.inform(\"activity\");\n };\n;\n i.subscribe(j.ON_AVAILABILITY_CHANGED, function() {\n if (!i.isUserIdle()) {\n u = JSBNG__Date.now();\n }\n ;\n ;\n });\n g.listen(window, \"JSBNG__focus\", function() {\n v = true;\n y();\n });\n g.listen(window, \"JSBNG__blur\", function() {\n v = false;\n });\n n.subscribe(function() {\n y();\n });\n function z(aa) {\n var ba = ((((aa && aa.at)) && m.verifyNumber(aa.at)));\n if (((typeof ba !== \"number\"))) {\n ba = null;\n }\n ;\n ;\n return ((ba || 0));\n };\n;\n JSBNG__setInterval(function() {\n var aa = JSBNG__Date.now(), ba = z(m.get()), ca = Math.max(t, ba, u);\n if (((((aa - ca)) > q))) {\n s.debug(\"idle\", {\n cookie: ba,\n local: t,\n presence: u\n });\n x.inform(\"idle\", ((aa - ca)));\n }\n ;\n ;\n }, r);\n m.registerStateStorer(function(aa) {\n var ba = z(aa);\n if (((ba < t))) {\n aa.at = t;\n }\n ;\n ;\n return aa;\n });\n h.subscribe(k.DUMP_EVENT, function(aa, ba) {\n ba.chat_activity = {\n activity_limit: p,\n idle_limit: q,\n idle_poll_interval: r,\n last_active_time: t,\n last_global_active_time: u\n };\n });\n e.exports = x;\n});\n__d(\"MercuryNotificationRenderer\", [\"MercuryAssert\",\"MercuryMessages\",\"MercuryParticipants\",\"MercuryThreads\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"MercuryAssert\"), h = b(\"MercuryMessages\").get(), i = b(\"MercuryParticipants\"), j = b(\"MercuryThreads\").get(), k = b(\"tx\");\n function l(m, n) {\n g.isThreadID(m);\n j.getThreadMeta(m, function(o) {\n h.getThreadMessagesRange(m, 0, 1, function(p) {\n var q = ((p.length && p[((p.length - 1))]));\n if (((q && ((q.author != i.user))))) {\n i.get(q.author, function(r) {\n if (o.JSBNG__name) {\n n(k._(\"{senderName} messaged {groupName}\", {\n senderName: r.short_name,\n groupName: o.JSBNG__name\n }));\n }\n else n(k._(\"{name} messaged you\", {\n JSBNG__name: r.short_name\n }));\n ;\n ;\n });\n }\n else n(\"New message!\");\n ;\n ;\n });\n });\n };\n;\n e.exports = {\n renderDocumentTitle: l\n };\n});\n__d(\"MercuryTimestampTracker\", [\"MercuryActionTypeConstants\",\"MercuryPayloadSource\",\"MercurySingletonMixin\",\"MercuryServerRequests\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"MercuryActionTypeConstants\"), h = b(\"MercuryPayloadSource\"), i = b(\"MercurySingletonMixin\"), j = b(\"MercuryServerRequests\"), k = b(\"copyProperties\");\n function l(m) {\n this._fbid = m;\n this._serverRequests = j.getForFBID(this._fbid);\n this._lastTimestamp = 0;\n this._serverRequests.subscribe(\"update-messages\", function(n, o) {\n if (((!o.actions || !o.actions.length))) {\n return;\n }\n ;\n ;\n if (((((o.payload_source == h.CLIENT_SEND_MESSAGE)) || ((o.payload_source == h.UNKNOWN))))) {\n return;\n }\n ;\n ;\n for (var p = 0; ((p < o.actions.length)); p++) {\n var q = o.actions[p], r = q.action_type;\n if (((((((r == g.USER_GENERATED_MESSAGE)) && q.thread_id)) && ((q.timestamp > this._lastTimestamp))))) {\n this._lastTimestamp = q.timestamp;\n }\n ;\n ;\n };\n ;\n }.bind(this));\n };\n;\n k(l.prototype, {\n getLastUserMessageTimestamp: function() {\n return this._lastTimestamp;\n }\n });\n k(l, i);\n e.exports = l;\n});\n__d(\"ChatTitleBarBlinker\", [\"ChatActivity\",\"DocumentTitle\",\"JSLogger\",\"MercuryThreadInformer\",\"MercuryNotificationRenderer\",\"PresenceState\",\"MercuryTimestampTracker\",], function(a, b, c, d, e, f) {\n var g = b(\"ChatActivity\"), h = b(\"DocumentTitle\"), i = b(\"JSLogger\"), j = b(\"MercuryThreadInformer\").get(), k = b(\"MercuryNotificationRenderer\"), l = b(\"PresenceState\"), m = b(\"MercuryTimestampTracker\").get(), n = i.create(\"chat_title\"), o = null, p = 0, q = false;\n function r() {\n if (o) {\n o.JSBNG__stop();\n o = null;\n return true;\n }\n ;\n ;\n return false;\n };\n;\n function s(x) {\n var y = ((x || m.getLastUserMessageTimestamp()));\n if (((p <= y))) {\n p = y;\n if (((r() || q))) {\n l.doSync();\n }\n ;\n ;\n }\n ;\n ;\n };\n;\n var t = {\n blink: function(x, y) {\n if (((!o && ((p < y))))) {\n k.renderDocumentTitle(x, function(z) {\n if (!o) {\n o = h.blink(z);\n }\n ;\n ;\n });\n }\n ;\n ;\n },\n stopBlinking: function() {\n s();\n },\n blinkingElsewhere: function() {\n q = true;\n }\n };\n function u(x) {\n var y = l.verifyNumber(x.sb2);\n if (((!y || ((y <= p))))) {\n return null;\n }\n ;\n ;\n return y;\n };\n;\n function v(x) {\n var y = ((x && u(x)));\n if (y) {\n p = y;\n n.debug(\"load\", p);\n r();\n q = false;\n }\n ;\n ;\n };\n;\n function w(x) {\n var y = u(x);\n if (!y) {\n n.debug(\"store\", p);\n x.sb2 = p;\n q = false;\n }\n ;\n ;\n return x;\n };\n;\n l.registerStateStorer(w);\n l.registerStateLoader(v);\n j.subscribe(\"thread-read-changed\", function(x, y) {\n var z = m.getLastUserMessageTimestamp(), aa = 0;\n {\n var fin318keys = ((window.top.JSBNG_Replay.forInKeys)((y))), fin318i = (0);\n var ba;\n for (; (fin318i < fin318keys.length); (fin318i++)) {\n ((ba) = (fin318keys[fin318i]));\n {\n if (((((y[ba].mark_as_read && ((y[ba].timestamp >= z)))) && ((y[ba].timestamp > aa))))) {\n aa = y[ba].timestamp;\n }\n ;\n ;\n };\n };\n };\n ;\n ((aa && s(aa)));\n });\n g.subscribe(\"activity\", function() {\n s();\n });\n (function() {\n var x = l.getInitial();\n if (x) {\n p = ((u(x) || 0));\n }\n ;\n ;\n })();\n e.exports = t;\n});\n__d(\"swfobject\", [\"AsyncRequest\",\"Bootloader\",\"ControlledReferer\",\"copyProperties\",\"JSBNG__CSS\",\"DOM\",\"function-extensions\",\"ge\",\"htmlSpecialChars\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"Bootloader\"), i = b(\"ControlledReferer\"), j = b(\"copyProperties\"), k = b(\"JSBNG__CSS\"), l = b(\"DOM\");\n b(\"function-extensions\");\n var m = b(\"ge\"), n = b(\"htmlSpecialChars\");\n if (((typeof o == \"undefined\"))) {\n var o = {\n };\n }\n;\n;\n if (((typeof o.util == \"undefined\"))) {\n o.util = {\n };\n }\n;\n;\n if (((typeof o.SWFObjectUtil == \"undefined\"))) {\n o.SWFObjectUtil = {\n };\n }\n;\n;\n o.SWFObject = function(u, v, w, x, y, z, aa, ba, ca, da) {\n if (!JSBNG__document.getElementById) {\n return;\n }\n ;\n ;\n this.DETECT_KEY = ((da ? da : \"detectflash\"));\n this.skipDetect = o.util.getRequestParameter(this.DETECT_KEY);\n this.params = {\n };\n this.variables = {\n };\n this.attributes = [];\n this.fallback_html = \"\";\n this.fallback_js_fcn = function() {\n \n };\n if (u) {\n this.setAttribute(\"swf\", u);\n }\n ;\n ;\n if (v) {\n this.setAttribute(\"id\", v);\n }\n ;\n ;\n if (w) {\n this.setAttribute(\"width\", w);\n }\n ;\n ;\n if (x) {\n this.setAttribute(\"height\", x);\n }\n ;\n ;\n this.installedVer = o.SWFObjectUtil.getPlayerVersion();\n if (y) {\n if (!((y instanceof Array))) {\n y = [y,];\n }\n ;\n ;\n var ea;\n y.forEach(function(ha) {\n ea = new o.PlayerVersion(ha.toString().split(\".\"));\n if (((ea.major == this.installedVer.major))) {\n this.setAttribute(\"version\", ea);\n return;\n }\n else if (((!this.getAttribute(\"version\") || ((ea.major < this.getAttribute(\"version\").major))))) {\n this.setAttribute(\"version\", ea);\n }\n \n ;\n ;\n }.bind(this));\n }\n ;\n ;\n if (((((!window.JSBNG__opera && JSBNG__document.all)) && ((this.installedVer.major > 7))))) {\n if (!o.unloadSet) {\n o.SWFObjectUtil.prepUnload = function() {\n var ha = function() {\n \n }, ia = function() {\n \n };\n window.JSBNG__attachEvent(\"JSBNG__onunload\", o.SWFObjectUtil.cleanupSWFs);\n };\n window.JSBNG__attachEvent(\"JSBNG__onbeforeunload\", o.SWFObjectUtil.prepUnload);\n o.unloadSet = true;\n }\n ;\n }\n ;\n ;\n if (z) {\n this.addParam(\"bgcolor\", z);\n }\n ;\n ;\n var fa = ((aa ? aa : \"high\"));\n this.addParam(\"quality\", fa);\n this.setAttribute(\"useExpressInstall\", false);\n this.setAttribute(\"doExpressInstall\", false);\n var ga = (((ba) ? ba : window.JSBNG__location));\n this.setAttribute(\"xiRedirectUrl\", ga);\n this.setAttribute(\"redirectUrl\", \"\");\n if (ca) {\n this.setAttribute(\"redirectUrl\", ca);\n }\n ;\n ;\n this.setAttribute(\"useIframe\", false);\n };\n o.SWFObject.ieWorkaroundApplied = false;\n o.SWFObject.ensureIEWorkaroundAttached = function() {\n if (((!o.SWFObject.ieWorkaroundApplied && JSBNG__document.JSBNG__attachEvent))) {\n o.SWFObject.ieWorkaroundApplied = true;\n JSBNG__document.JSBNG__attachEvent(\"onpropertychange\", o.SWFObject.onDocumentPropertyChange);\n }\n ;\n ;\n };\n o.SWFObject.onDocumentPropertyChange = function(JSBNG__event) {\n if (((JSBNG__event.propertyName == \"title\"))) {\n var u = JSBNG__document.title;\n if (((((u != null)) && ((u.indexOf(\"#!\") != -1))))) {\n u = u.substring(0, u.indexOf(\"#!\"));\n JSBNG__document.title = u;\n }\n ;\n ;\n }\n ;\n ;\n };\n j(o.SWFObject.prototype, {\n useExpressInstall: function(u) {\n this.xiSWFPath = ((!u ? \"/swf/expressinstall.swf\" : u));\n this.setAttribute(\"useExpressInstall\", true);\n },\n setAttribute: function(u, v) {\n this.attributes[u] = v;\n },\n getAttribute: function(u) {\n return ((this.attributes[u] || \"\"));\n },\n addParam: function(u, v) {\n this.params[u] = v;\n },\n getParams: function() {\n return this.params;\n },\n addVariable: function(u, v) {\n this.variables[u] = v;\n },\n getVariable: function(u) {\n return ((this.variables[u] || \"\"));\n },\n getVariables: function() {\n return this.variables;\n },\n getVariablePairs: function() {\n var u = [], v, w = this.getVariables();\n {\n var fin319keys = ((window.top.JSBNG_Replay.forInKeys)((w))), fin319i = (0);\n (0);\n for (; (fin319i < fin319keys.length); (fin319i++)) {\n ((v) = (fin319keys[fin319i]));\n {\n u[u.length] = ((((v + \"=\")) + w[v]));\n ;\n };\n };\n };\n ;\n return u.join(\"&\");\n },\n getSWFHTML: function() {\n var u, v, w;\n if (((((JSBNG__navigator.plugins && JSBNG__navigator.mimeTypes)) && JSBNG__navigator.mimeTypes.length))) {\n if (this.getAttribute(\"doExpressInstall\")) {\n this.addVariable(\"MMplayerType\", \"PlugIn\");\n this.setAttribute(\"swf\", this.xiSWFPath);\n }\n ;\n ;\n v = {\n type: \"application/x-shockwave-flash\",\n src: this.getAttribute(\"swf\"),\n width: this.getAttribute(\"width\"),\n height: this.getAttribute(\"height\"),\n style: ((this.getAttribute(\"style\") || \"display: block;\")),\n id: this.getAttribute(\"id\"),\n JSBNG__name: this.getAttribute(\"id\")\n };\n var x = this.getParams();\n {\n var fin320keys = ((window.top.JSBNG_Replay.forInKeys)((x))), fin320i = (0);\n var y;\n for (; (fin320i < fin320keys.length); (fin320i++)) {\n ((y) = (fin320keys[fin320i]));\n {\n v[y] = x[y];\n ;\n };\n };\n };\n ;\n w = this.getVariablePairs();\n if (w) {\n v.flashvars = w;\n }\n ;\n ;\n u = t(\"embed\", v, null);\n }\n else {\n if (this.getAttribute(\"doExpressInstall\")) {\n this.addVariable(\"MMplayerType\", \"ActiveX\");\n this.setAttribute(\"swf\", this.xiSWFPath);\n }\n ;\n ;\n v = {\n id: this.getAttribute(\"id\"),\n classid: \"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\",\n width: this.getAttribute(\"width\"),\n height: this.getAttribute(\"height\"),\n style: ((this.getAttribute(\"style\") || \"display: block;\"))\n };\n var z = t(\"param\", {\n JSBNG__name: \"movie\",\n value: this.getAttribute(\"swf\")\n }, null), x = this.getParams();\n {\n var fin321keys = ((window.top.JSBNG_Replay.forInKeys)((x))), fin321i = (0);\n var y;\n for (; (fin321i < fin321keys.length); (fin321i++)) {\n ((y) = (fin321keys[fin321i]));\n {\n z += t(\"param\", {\n JSBNG__name: y,\n value: x[y]\n }, null);\n ;\n };\n };\n };\n ;\n w = this.getVariablePairs();\n if (w) {\n z += t(\"param\", {\n JSBNG__name: \"flashvars\",\n value: w\n }, null);\n }\n ;\n ;\n u = t(\"object\", v, z);\n }\n ;\n ;\n return u;\n },\n write: function(u) {\n if (this.getAttribute(\"useExpressInstall\")) {\n var v = new o.PlayerVersion([6,0,65,]);\n if (((this.installedVer.versionIsValid(v) && !this.installedVer.versionIsValid(this.getAttribute(\"version\"))))) {\n this.setAttribute(\"doExpressInstall\", true);\n this.addVariable(\"MMredirectURL\", escape(this.getAttribute(\"xiRedirectUrl\")));\n JSBNG__document.title = ((JSBNG__document.title.slice(0, 47) + \" - Flash Player Installation\"));\n this.addVariable(\"MMdoctitle\", JSBNG__document.title);\n }\n ;\n ;\n }\n ;\n ;\n var w = ((((typeof u == \"string\")) ? JSBNG__document.getElementById(u) : u));\n if (!w) {\n return false;\n }\n ;\n ;\n k.addClass(w, \"swfObject\");\n w.setAttribute(\"data-swfid\", this.getAttribute(\"id\"));\n if (((((this.skipDetect || this.getAttribute(\"doExpressInstall\"))) || this.installedVer.versionIsValid(this.getAttribute(\"version\"))))) {\n if (!this.getAttribute(\"useIframe\")) {\n o.SWFObject.ensureIEWorkaroundAttached();\n w.innerHTML = this.getSWFHTML();\n }\n else this._createIframe(w);\n ;\n ;\n return true;\n }\n else {\n if (((this.getAttribute(\"redirectUrl\") != \"\"))) {\n JSBNG__document.JSBNG__location.replace(this.getAttribute(\"redirectUrl\"));\n }\n ;\n ;\n var x = ((((((((((((this.getAttribute(\"version\").major + \".\")) + this.getAttribute(\"version\").minor)) + \".\")) + this.getAttribute(\"version\").release)) + \".\")) + this.getAttribute(\"version\").build)), y = ((((((((((((this.installedVer.major + \".\")) + this.installedVer.minor)) + \".\")) + this.installedVer.release)) + \".\")) + this.installedVer.build));\n this.fallback_js_fcn(y, x);\n w.innerHTML = this.fallback_html;\n }\n ;\n ;\n return false;\n },\n _createIframe: function(u) {\n var v = l.create(\"div\", {\n width: this.getAttribute(\"width\"),\n height: this.getAttribute(\"height\"),\n frameBorder: 0\n });\n l.empty(u);\n u.appendChild(v);\n i.useFacebookRefererHtml(v, this.getSWFHTML(), this.getAttribute(\"iframeSource\"));\n }\n });\n o.SWFObjectUtil.getPlayerVersion = function() {\n var u = new o.PlayerVersion([0,0,0,0,]), v;\n if (((JSBNG__navigator.plugins && JSBNG__navigator.mimeTypes.length))) {\n for (var w = 0; ((w < JSBNG__navigator.plugins.length)); w++) {\n try {\n var y = JSBNG__navigator.plugins[w];\n if (((y.JSBNG__name == \"Shockwave Flash\"))) {\n v = new o.PlayerVersion(y.description.replace(/([a-zA-Z]|\\s)+/, \"\").replace(/(\\s+(r|d)|\\s+b[0-9]+)/, \".\").split(\".\"));\n if (((((((typeof u == \"undefined\")) || ((v.major > u.major)))) || ((((v.major == u.major)) && ((((v.minor > u.minor)) || ((((v.minor == u.minor)) && ((((v.release > u.release)) || ((((v.release == u.release)) && ((v.build > u.build))))))))))))))) {\n u = v;\n }\n ;\n ;\n }\n ;\n ;\n } catch (x) {\n \n };\n ;\n };\n ;\n }\n else if (((JSBNG__navigator.userAgent && ((JSBNG__navigator.userAgent.indexOf(\"Windows CE\") >= 0))))) {\n var z = 1, aa = 3;\n while (z) {\n try {\n aa++;\n z = new ActiveXObject(((\"ShockwaveFlash.ShockwaveFlash.\" + aa)));\n u = new o.PlayerVersion([aa,0,0,]);\n } catch (ba) {\n z = null;\n };\n ;\n };\n ;\n }\n else {\n try {\n var z = new ActiveXObject(\"ShockwaveFlash.ShockwaveFlash.7\");\n } catch (ca) {\n try {\n var z = new ActiveXObject(\"ShockwaveFlash.ShockwaveFlash.6\");\n u = new o.PlayerVersion([6,0,21,]);\n z.AllowScriptAccess = \"always\";\n } catch (da) {\n if (((u.major == 6))) {\n return u;\n }\n ;\n ;\n };\n ;\n try {\n z = new ActiveXObject(\"ShockwaveFlash.ShockwaveFlash\");\n } catch (ea) {\n \n };\n ;\n };\n ;\n if (((z != null))) {\n u = new o.PlayerVersion(z.GetVariable(\"$version\").split(\" \")[1].split(\",\"));\n }\n ;\n ;\n }\n \n ;\n ;\n return u;\n };\n o.PlayerVersion = function(u) {\n this.major = ((((u[0] != null)) ? parseInt(u[0], 10) : 0));\n this.minor = ((((u[1] != null)) ? parseInt(u[1], 10) : 0));\n this.release = ((((u[2] != null)) ? parseInt(u[2], 10) : 0));\n this.build = ((((u[3] != null)) ? parseInt(u[3], 10) : 0));\n };\n o.PlayerVersion.prototype.versionIsValid = function(u) {\n if (((this.major < u.major))) {\n return false;\n }\n ;\n ;\n if (((this.major > u.major))) {\n return true;\n }\n ;\n ;\n if (((this.minor < u.minor))) {\n return false;\n }\n ;\n ;\n if (((this.minor > u.minor))) {\n return true;\n }\n ;\n ;\n if (((this.release < u.release))) {\n return false;\n }\n ;\n ;\n if (((this.release > u.release))) {\n return true;\n }\n ;\n ;\n if (((this.build < u.build))) {\n return false;\n }\n ;\n ;\n return true;\n };\n o.util = {\n getRequestParameter: function(u) {\n var v = ((JSBNG__document.JSBNG__location.search || JSBNG__document.JSBNG__location.hash));\n if (((u == null))) {\n return v;\n }\n ;\n ;\n if (v) {\n var w = v.substring(1).split(\"&\");\n for (var x = 0; ((x < w.length)); x++) {\n if (((w[x].substring(0, w[x].indexOf(\"=\")) == u))) {\n return w[x].substring(((w[x].indexOf(\"=\") + 1)));\n }\n ;\n ;\n };\n ;\n }\n ;\n ;\n return \"\";\n }\n };\n o.SWFObjectUtil.cleanupSWFs = function() {\n var u = JSBNG__document.getElementsByTagName(\"OBJECT\");\n for (var v = ((u.length - 1)); ((v >= 0)); v--) {\n u[v].style.display = \"none\";\n {\n var fin322keys = ((window.top.JSBNG_Replay.forInKeys)((u[v]))), fin322i = (0);\n var w;\n for (; (fin322i < fin322keys.length); (fin322i++)) {\n ((w) = (fin322keys[fin322i]));\n {\n if (((typeof u[v][w] == \"function\"))) {\n u[v][w] = function() {\n \n };\n }\n ;\n ;\n };\n };\n };\n ;\n };\n ;\n };\n if (((!JSBNG__document.getElementById && JSBNG__document.all))) {\n JSBNG__document.getElementById = function(u) {\n return JSBNG__document.all[u];\n };\n }\n;\n;\n var p = o.util.getRequestParameter, q = o.SWFObject, r = o.SWFObject;\n o.spawn_flash_update_dialog = function() {\n new g().setURI(\"/ajax/flash_update_dialog.php\").setMethod(\"GET\").setReadOnly(true).send();\n };\n function s(u, v) {\n var w = m(u), x = o.SWFObjectUtil.getPlayerVersion(), y;\n v.forEach(function(ba) {\n ba = new o.PlayerVersion(ba.toString().split(\".\"));\n if (((ba.major == x.major))) {\n y = ba;\n return;\n }\n else if (((((typeof y == \"undefined\")) || ((ba.major < y.major))))) {\n y = ba;\n }\n \n ;\n ;\n }.bind(this));\n if (((w && ((x.major > 0))))) {\n var z = ((((((((((((x.major + \".\")) + x.minor)) + \".\")) + x.release)) + \".\")) + x.build)), aa = ((((((((((((y.major + \".\")) + y.minor)) + \".\")) + y.release)) + \".\")) + y.build));\n l.setContent(w, l.tx._(\"Flash {required-version} is required to view this content. Your current version is {current-version}. Please download the latest Flash Player.\", {\n \"required-version\": aa,\n \"current-version\": z\n }));\n }\n ;\n ;\n };\n;\n o.showFlashErrorDialog = function(u, v) {\n h.loadModules([\"ErrorDialog\",], function(w) {\n w.show(u, v);\n });\n };\n function t(u, v, w) {\n var x = /^[A-Za-z0-9\\-]+$/;\n if (!u.match(x)) {\n throw new Error(((\"Invalid tag \" + u)));\n }\n ;\n ;\n var y = ((\"\\u003C\" + u));\n {\n var fin323keys = ((window.top.JSBNG_Replay.forInKeys)((v))), fin323i = (0);\n var z;\n for (; (fin323i < fin323keys.length); (fin323i++)) {\n ((z) = (fin323keys[fin323i]));\n {\n if (!z.match(x)) {\n throw new Error(((\"Invalid attr \" + z)));\n }\n ;\n ;\n y += ((((((((\" \" + z)) + \"=\\\"\")) + n(v[z]))) + \"\\\"\"));\n };\n };\n };\n ;\n if (((w === null))) {\n return ((y + \"/\\u003E\"));\n }\n else return ((((((((((y + \"\\u003E\")) + w)) + \"\\u003C/\")) + u)) + \"\\u003E\"))\n ;\n };\n;\n e.exports = ((a.deconcept || o));\n});\n__d(\"swfobject2\", [], function(a, b, c, d, e, f) {\n var g = function() {\n var h = \"undefined\", i = \"object\", j = \"Shockwave Flash\", k = \"ShockwaveFlash.ShockwaveFlash\", l = \"application/x-shockwave-flash\", m = \"SWFObjectExprInst\", n = \"JSBNG__onreadystatechange\", o = window, p = JSBNG__document, q = JSBNG__navigator, r = false, s = [ka,], t = [], u = [], v = [], w, x, y, z, aa = false, ba = false, ca, da, ea = true, fa = function() {\n var eb = ((((((typeof p.getElementById != h)) && ((typeof p.getElementsByTagName != h)))) && ((typeof p.createElement != h)))), fb = q.userAgent.toLowerCase(), gb = q.platform.toLowerCase(), hb = ((gb ? /win/.test(gb) : /win/.test(fb))), ib = ((gb ? /mac/.test(gb) : /mac/.test(fb))), jb = ((/webkit/.test(fb) ? parseFloat(fb.replace(/^.*webkit\\/(\\d+(\\.\\d+)?).*$/, \"$1\")) : false)), kb = !+\"\\u000b1\", lb = [0,0,0,], mb = null;\n if (((((typeof q.plugins != h)) && ((typeof q.plugins[j] == i))))) {\n mb = q.plugins[j].description;\n if (((mb && !((((((typeof q.mimeTypes != h)) && q.mimeTypes[l])) && !q.mimeTypes[l].enabledPlugin))))) {\n r = true;\n kb = false;\n mb = mb.replace(/^.*\\s+(\\S+\\s+\\S+$)/, \"$1\");\n lb[0] = parseInt(mb.replace(/^(.*)\\..*$/, \"$1\"), 10);\n lb[1] = parseInt(mb.replace(/^.*\\.(.*)\\s.*$/, \"$1\"), 10);\n lb[2] = ((/[a-zA-Z]/.test(mb) ? parseInt(mb.replace(/^.*[a-zA-Z]+(.*)$/, \"$1\"), 10) : 0));\n }\n ;\n ;\n }\n else if (((typeof o.ActiveXObject != h))) {\n try {\n var ob = new ActiveXObject(k);\n if (ob) {\n mb = ob.GetVariable(\"$version\");\n if (mb) {\n kb = true;\n mb = mb.split(\" \")[1].split(\",\");\n lb = [parseInt(mb[0], 10),parseInt(mb[1], 10),parseInt(mb[2], 10),];\n }\n ;\n ;\n }\n ;\n ;\n } catch (nb) {\n \n };\n }\n \n ;\n ;\n return {\n w3: eb,\n pv: lb,\n wk: jb,\n ie: kb,\n win: hb,\n mac: ib\n };\n }(), ga = function() {\n if (!fa.w3) {\n return;\n }\n ;\n ;\n if (((((((typeof p.readyState != h)) && ((p.readyState == \"complete\")))) || ((((typeof p.readyState == h)) && ((p.getElementsByTagName(\"body\")[0] || p.body))))))) {\n ha();\n }\n ;\n ;\n if (!aa) {\n if (((typeof p.JSBNG__addEventListener != h))) {\n p.JSBNG__addEventListener(\"DOMContentLoaded\", ha, false);\n }\n ;\n ;\n if (((fa.ie && fa.win))) {\n p.JSBNG__attachEvent(n, function() {\n if (((p.readyState == \"complete\"))) {\n p.JSBNG__detachEvent(n, arguments.callee);\n ha();\n }\n ;\n ;\n });\n if (((o == JSBNG__top))) {\n (function() {\n if (aa) {\n return;\n }\n ;\n ;\n try {\n p.documentElement.doScroll(\"left\");\n } catch (eb) {\n JSBNG__setTimeout(arguments.callee, 0);\n return;\n };\n ;\n ha();\n })();\n }\n ;\n ;\n }\n ;\n ;\n if (fa.wk) {\n (function() {\n if (aa) {\n return;\n }\n ;\n ;\n if (!/loaded|complete/.test(p.readyState)) {\n JSBNG__setTimeout(arguments.callee, 0);\n return;\n }\n ;\n ;\n ha();\n })();\n }\n ;\n ;\n ja(ha);\n }\n ;\n ;\n }();\n function ha() {\n if (aa) {\n return;\n }\n ;\n ;\n try {\n var fb = p.getElementsByTagName(\"body\")[0].appendChild(xa(\"span\"));\n fb.parentNode.removeChild(fb);\n } catch (eb) {\n return;\n };\n ;\n aa = true;\n var gb = s.length;\n for (var hb = 0; ((hb < gb)); hb++) {\n s[hb]();\n ;\n };\n ;\n };\n ;\n function ia(eb) {\n if (aa) {\n eb();\n }\n else s[s.length] = eb;\n ;\n ;\n };\n ;\n function ja(eb) {\n if (((typeof o.JSBNG__addEventListener != h))) {\n o.JSBNG__addEventListener(\"load\", eb, false);\n }\n else if (((typeof p.JSBNG__addEventListener != h))) {\n p.JSBNG__addEventListener(\"load\", eb, false);\n }\n else if (((typeof o.JSBNG__attachEvent != h))) {\n ya(o, \"JSBNG__onload\", eb);\n }\n else if (((typeof o.JSBNG__onload == \"function\"))) {\n var fb = o.JSBNG__onload;\n o.JSBNG__onload = function() {\n fb();\n eb();\n };\n }\n else o.JSBNG__onload = eb;\n \n \n \n ;\n ;\n };\n ;\n function ka() {\n if (r) {\n la();\n }\n else ma();\n ;\n ;\n };\n ;\n function la() {\n var eb = p.getElementsByTagName(\"body\")[0], fb = xa(i);\n fb.setAttribute(\"type\", l);\n fb.setAttribute(\"style\", \"visibility: hidden; position: absolute; top: -1000px;\");\n var gb = eb.appendChild(fb);\n if (gb) {\n var hb = 0;\n (function() {\n if (((typeof gb.GetVariable != h))) {\n var ib = gb.GetVariable(\"$version\");\n if (ib) {\n ib = ib.split(\" \")[1].split(\",\");\n fa.pv = [parseInt(ib[0], 10),parseInt(ib[1], 10),parseInt(ib[2], 10),];\n }\n ;\n ;\n }\n else if (((hb < 10))) {\n hb++;\n JSBNG__setTimeout(arguments.callee, 10);\n return;\n }\n \n ;\n ;\n gb = null;\n ma();\n })();\n }\n else ma();\n ;\n ;\n };\n ;\n function ma() {\n var eb = t.length;\n if (((eb > 0))) {\n for (var fb = 0; ((fb < eb)); fb++) {\n var gb = t[fb].id, hb = t[fb].callbackFn, ib = {\n success: false,\n id: gb\n };\n if (((fa.pv[0] > 0))) {\n var jb = wa(gb);\n if (jb) {\n if (((za(t[fb].swfVersion) && !((fa.wk && ((fa.wk < 312))))))) {\n bb(gb, true);\n if (hb) {\n ib.success = true;\n ib.ref = na(gb);\n hb(ib);\n }\n ;\n ;\n }\n else if (((t[fb].expressInstall && oa()))) {\n var kb = {\n };\n kb.data = t[fb].expressInstall;\n kb.width = ((jb.getAttribute(\"width\") || \"0\"));\n kb.height = ((jb.getAttribute(\"height\") || \"0\"));\n if (jb.getAttribute(\"class\")) {\n kb.styleclass = jb.getAttribute(\"class\");\n }\n ;\n ;\n if (jb.getAttribute(\"align\")) {\n kb.align = jb.getAttribute(\"align\");\n }\n ;\n ;\n var lb = {\n }, mb = jb.getElementsByTagName(\"param\"), nb = mb.length;\n for (var ob = 0; ((ob < nb)); ob++) {\n if (((mb[ob].getAttribute(\"JSBNG__name\").toLowerCase() != \"movie\"))) {\n lb[mb[ob].getAttribute(\"JSBNG__name\")] = mb[ob].getAttribute(\"value\");\n }\n ;\n ;\n };\n ;\n pa(kb, lb, gb, hb);\n }\n else {\n qa(jb);\n if (hb) {\n hb(ib);\n }\n ;\n ;\n }\n \n ;\n }\n ;\n ;\n }\n else {\n bb(gb, true);\n if (hb) {\n var pb = na(gb);\n if (((pb && ((typeof pb.SetVariable != h))))) {\n ib.success = true;\n ib.ref = pb;\n }\n ;\n ;\n hb(ib);\n }\n ;\n ;\n }\n ;\n ;\n };\n }\n ;\n ;\n };\n ;\n function na(eb) {\n var fb = null, gb = wa(eb);\n if (((gb && ((gb.nodeName == \"OBJECT\"))))) {\n if (((typeof gb.SetVariable != h))) {\n fb = gb;\n }\n else {\n var hb = gb.getElementsByTagName(i)[0];\n if (hb) {\n fb = hb;\n }\n ;\n ;\n }\n ;\n }\n ;\n ;\n return fb;\n };\n ;\n function oa() {\n return ((((((!ba && za(\"6.0.65\"))) && ((fa.win || fa.mac)))) && !((fa.wk && ((fa.wk < 312))))));\n };\n ;\n function pa(eb, fb, gb, hb) {\n ba = true;\n y = ((hb || null));\n z = {\n success: false,\n id: gb\n };\n var ib = wa(gb);\n if (ib) {\n if (((ib.nodeName == \"OBJECT\"))) {\n w = ra(ib);\n x = null;\n }\n else {\n w = ib;\n x = gb;\n }\n ;\n ;\n eb.id = m;\n if (((((typeof eb.width == h)) || ((!/%$/.test(eb.width) && ((parseInt(eb.width, 10) < 310))))))) {\n eb.width = \"310\";\n }\n ;\n ;\n if (((((typeof eb.height == h)) || ((!/%$/.test(eb.height) && ((parseInt(eb.height, 10) < 137))))))) {\n eb.height = \"137\";\n }\n ;\n ;\n p.title = ((p.title.slice(0, 47) + \" - Flash Player Installation\"));\n var jb = ((((fa.ie && fa.win)) ? \"ActiveX\" : \"PlugIn\")), kb = ((((((((((\"MMredirectURL=\" + o.JSBNG__location.toString().replace(/&/g, \"%26\"))) + \"&MMplayerType=\")) + jb)) + \"&MMdoctitle=\")) + p.title));\n if (((typeof fb.flashvars != h))) {\n fb.flashvars += ((\"&\" + kb));\n }\n else fb.flashvars = kb;\n ;\n ;\n if (((((fa.ie && fa.win)) && ((ib.readyState != 4))))) {\n var lb = xa(\"div\");\n gb += \"SWFObjectNew\";\n lb.setAttribute(\"id\", gb);\n ib.parentNode.insertBefore(lb, ib);\n ib.style.display = \"none\";\n (function() {\n if (((ib.readyState == 4))) {\n ib.parentNode.removeChild(ib);\n }\n else JSBNG__setTimeout(arguments.callee, 10);\n ;\n ;\n })();\n }\n ;\n ;\n sa(eb, fb, gb);\n }\n ;\n ;\n };\n ;\n function qa(eb) {\n if (((((fa.ie && fa.win)) && ((eb.readyState != 4))))) {\n var fb = xa(\"div\");\n eb.parentNode.insertBefore(fb, eb);\n fb.parentNode.replaceChild(ra(eb), fb);\n eb.style.display = \"none\";\n (function() {\n if (((eb.readyState == 4))) {\n eb.parentNode.removeChild(eb);\n }\n else JSBNG__setTimeout(arguments.callee, 10);\n ;\n ;\n })();\n }\n else eb.parentNode.replaceChild(ra(eb), eb);\n ;\n ;\n };\n ;\n function ra(eb) {\n var fb = xa(\"div\");\n if (((fa.win && fa.ie))) {\n fb.innerHTML = eb.innerHTML;\n }\n else {\n var gb = eb.getElementsByTagName(i)[0];\n if (gb) {\n var hb = gb.childNodes;\n if (hb) {\n var ib = hb.length;\n for (var jb = 0; ((jb < ib)); jb++) {\n if (((!((((hb[jb].nodeType == 1)) && ((hb[jb].nodeName == \"PARAM\")))) && !((hb[jb].nodeType == 8))))) {\n fb.appendChild(hb[jb].cloneNode(true));\n }\n ;\n ;\n };\n ;\n }\n ;\n ;\n }\n ;\n ;\n }\n ;\n ;\n return fb;\n };\n ;\n function sa(eb, fb, gb) {\n var hb, ib = wa(gb);\n if (((fa.wk && ((fa.wk < 312))))) {\n return hb;\n }\n ;\n ;\n if (ib) {\n if (((typeof eb.id == h))) {\n eb.id = gb;\n }\n ;\n ;\n if (((fa.ie && fa.win))) {\n var jb = \"\";\n {\n var fin324keys = ((window.top.JSBNG_Replay.forInKeys)((eb))), fin324i = (0);\n var kb;\n for (; (fin324i < fin324keys.length); (fin324i++)) {\n ((kb) = (fin324keys[fin324i]));\n {\n if (((eb[kb] != Object.prototype[kb]))) {\n if (((kb.toLowerCase() == \"data\"))) {\n fb.movie = eb[kb];\n }\n else if (((kb.toLowerCase() == \"styleclass\"))) {\n jb += ((((\" class=\\\"\" + eb[kb])) + \"\\\"\"));\n }\n else if (((kb.toLowerCase() != \"classid\"))) {\n jb += ((((((((\" \" + kb)) + \"=\\\"\")) + eb[kb])) + \"\\\"\"));\n }\n \n \n ;\n }\n ;\n ;\n };\n };\n };\n ;\n var lb = \"\";\n {\n var fin325keys = ((window.top.JSBNG_Replay.forInKeys)((fb))), fin325i = (0);\n var mb;\n for (; (fin325i < fin325keys.length); (fin325i++)) {\n ((mb) = (fin325keys[fin325i]));\n {\n if (((fb[mb] != Object.prototype[mb]))) {\n lb += ((((((((\"\\u003Cparam name=\\\"\" + mb)) + \"\\\" value=\\\"\")) + fb[mb])) + \"\\\" /\\u003E\"));\n }\n ;\n ;\n };\n };\n };\n ;\n ib.outerHTML = ((((((((\"\\u003Cobject classid=\\\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\\\"\" + jb)) + \"\\u003E\")) + lb)) + \"\\u003C/object\\u003E\"));\n u[u.length] = eb.id;\n hb = wa(eb.id);\n }\n else {\n var nb = xa(i);\n nb.setAttribute(\"type\", l);\n {\n var fin326keys = ((window.top.JSBNG_Replay.forInKeys)((eb))), fin326i = (0);\n var ob;\n for (; (fin326i < fin326keys.length); (fin326i++)) {\n ((ob) = (fin326keys[fin326i]));\n {\n if (((eb[ob] != Object.prototype[ob]))) {\n if (((ob.toLowerCase() == \"styleclass\"))) {\n nb.setAttribute(\"class\", eb[ob]);\n }\n else if (((ob.toLowerCase() != \"classid\"))) {\n nb.setAttribute(ob, eb[ob]);\n }\n \n ;\n }\n ;\n ;\n };\n };\n };\n ;\n {\n var fin327keys = ((window.top.JSBNG_Replay.forInKeys)((fb))), fin327i = (0);\n var pb;\n for (; (fin327i < fin327keys.length); (fin327i++)) {\n ((pb) = (fin327keys[fin327i]));\n {\n if (((((fb[pb] != Object.prototype[pb])) && ((pb.toLowerCase() != \"movie\"))))) {\n ta(nb, pb, fb[pb]);\n }\n ;\n ;\n };\n };\n };\n ;\n ib.parentNode.replaceChild(nb, ib);\n hb = nb;\n }\n ;\n ;\n }\n ;\n ;\n return hb;\n };\n ;\n function ta(eb, fb, gb) {\n var hb = xa(\"param\");\n hb.setAttribute(\"JSBNG__name\", fb);\n hb.setAttribute(\"value\", gb);\n eb.appendChild(hb);\n };\n ;\n function ua(eb) {\n var fb = wa(eb);\n if (((fb && ((fb.nodeName == \"OBJECT\"))))) {\n if (((fa.ie && fa.win))) {\n fb.style.display = \"none\";\n (function() {\n if (((fb.readyState == 4))) {\n va(eb);\n }\n else JSBNG__setTimeout(arguments.callee, 10);\n ;\n ;\n })();\n }\n else fb.parentNode.removeChild(fb);\n ;\n }\n ;\n ;\n };\n ;\n function va(eb) {\n var fb = wa(eb);\n if (fb) {\n {\n var fin328keys = ((window.top.JSBNG_Replay.forInKeys)((fb))), fin328i = (0);\n var gb;\n for (; (fin328i < fin328keys.length); (fin328i++)) {\n ((gb) = (fin328keys[fin328i]));\n {\n if (((typeof fb[gb] == \"function\"))) {\n fb[gb] = null;\n }\n ;\n ;\n };\n };\n };\n ;\n fb.parentNode.removeChild(fb);\n }\n ;\n ;\n };\n ;\n function wa(eb) {\n var fb = null;\n try {\n fb = p.getElementById(eb);\n } catch (gb) {\n \n };\n ;\n return fb;\n };\n ;\n function xa(eb) {\n return p.createElement(eb);\n };\n ;\n function ya(eb, fb, gb) {\n eb.JSBNG__attachEvent(fb, gb);\n v[v.length] = [eb,fb,gb,];\n };\n ;\n function za(eb) {\n var fb = fa.pv, gb = eb.split(\".\");\n gb[0] = parseInt(gb[0], 10);\n gb[1] = ((parseInt(gb[1], 10) || 0));\n gb[2] = ((parseInt(gb[2], 10) || 0));\n return ((((((((fb[0] > gb[0])) || ((((fb[0] == gb[0])) && ((fb[1] > gb[1])))))) || ((((((fb[0] == gb[0])) && ((fb[1] == gb[1])))) && ((fb[2] >= gb[2])))))) ? true : false));\n };\n ;\n function ab(eb, fb, gb, hb) {\n if (((fa.ie && fa.mac))) {\n return;\n }\n ;\n ;\n var ib = p.getElementsByTagName(\"head\")[0];\n if (!ib) {\n return;\n }\n ;\n ;\n var jb = ((((gb && ((typeof gb == \"string\")))) ? gb : \"JSBNG__screen\"));\n if (hb) {\n ca = null;\n da = null;\n }\n ;\n ;\n if (((!ca || ((da != jb))))) {\n var kb = xa(\"style\");\n kb.setAttribute(\"type\", \"text/css\");\n kb.setAttribute(\"media\", jb);\n ca = ib.appendChild(kb);\n if (((((((fa.ie && fa.win)) && ((typeof p.styleSheets != h)))) && ((p.styleSheets.length > 0))))) {\n ca = p.styleSheets[((p.styleSheets.length - 1))];\n }\n ;\n ;\n da = jb;\n }\n ;\n ;\n if (((fa.ie && fa.win))) {\n if (((ca && ((typeof ca.addRule == i))))) {\n ca.addRule(eb, fb);\n }\n ;\n ;\n }\n else if (((ca && ((typeof p.createTextNode != h))))) {\n ca.appendChild(p.createTextNode(((((((eb + \" {\")) + fb)) + \"}\"))));\n }\n \n ;\n ;\n };\n ;\n function bb(eb, fb) {\n if (!ea) {\n return;\n }\n ;\n ;\n var gb = ((fb ? \"visible\" : \"hidden\"));\n if (((aa && wa(eb)))) {\n wa(eb).style.visibility = gb;\n }\n else ab(((\"#\" + eb)), ((\"visibility:\" + gb)));\n ;\n ;\n };\n ;\n function cb(eb) {\n var fb = /[\\\\\\\"<>\\.;]/, gb = ((fb.exec(eb) != null));\n return ((((gb && ((typeof encodeURIComponent != h)))) ? encodeURIComponent(eb) : eb));\n };\n ;\n var db = function() {\n if (((fa.ie && fa.win))) {\n window.JSBNG__attachEvent(\"JSBNG__onunload\", function() {\n var eb = v.length;\n for (var fb = 0; ((fb < eb)); fb++) {\n v[fb][0].JSBNG__detachEvent(v[fb][1], v[fb][2]);\n ;\n };\n ;\n var gb = u.length;\n for (var hb = 0; ((hb < gb)); hb++) {\n ua(u[hb]);\n ;\n };\n ;\n {\n var fin329keys = ((window.top.JSBNG_Replay.forInKeys)((fa))), fin329i = (0);\n var ib;\n for (; (fin329i < fin329keys.length); (fin329i++)) {\n ((ib) = (fin329keys[fin329i]));\n {\n fa[ib] = null;\n ;\n };\n };\n };\n ;\n fa = null;\n {\n var fin330keys = ((window.top.JSBNG_Replay.forInKeys)((g))), fin330i = (0);\n var jb;\n for (; (fin330i < fin330keys.length); (fin330i++)) {\n ((jb) = (fin330keys[fin330i]));\n {\n g[jb] = null;\n ;\n };\n };\n };\n ;\n g = null;\n });\n }\n ;\n ;\n }();\n return {\n registerObject: function(eb, fb, gb, hb) {\n if (((((fa.w3 && eb)) && fb))) {\n var ib = {\n };\n ib.id = eb;\n ib.swfVersion = fb;\n ib.expressInstall = gb;\n ib.callbackFn = hb;\n t[t.length] = ib;\n bb(eb, false);\n }\n else if (hb) {\n hb({\n success: false,\n id: eb\n });\n }\n \n ;\n ;\n },\n getObjectById: function(eb) {\n if (fa.w3) {\n return na(eb);\n }\n ;\n ;\n },\n embedSWF: function(eb, fb, gb, hb, ib, jb, kb, lb, mb, nb) {\n var ob = {\n success: false,\n id: fb\n };\n if (((((((((((((fa.w3 && !((fa.wk && ((fa.wk < 312)))))) && eb)) && fb)) && gb)) && hb)) && ib))) {\n bb(fb, false);\n ia(function() {\n gb += \"\";\n hb += \"\";\n var pb = {\n };\n if (((mb && ((typeof mb === i))))) {\n {\n var fin331keys = ((window.top.JSBNG_Replay.forInKeys)((mb))), fin331i = (0);\n var qb;\n for (; (fin331i < fin331keys.length); (fin331i++)) {\n ((qb) = (fin331keys[fin331i]));\n {\n pb[qb] = mb[qb];\n ;\n };\n };\n };\n }\n ;\n ;\n pb.data = eb;\n pb.width = gb;\n pb.height = hb;\n var rb = {\n };\n if (((lb && ((typeof lb === i))))) {\n {\n var fin332keys = ((window.top.JSBNG_Replay.forInKeys)((lb))), fin332i = (0);\n var sb;\n for (; (fin332i < fin332keys.length); (fin332i++)) {\n ((sb) = (fin332keys[fin332i]));\n {\n rb[sb] = lb[sb];\n ;\n };\n };\n };\n }\n ;\n ;\n if (((kb && ((typeof kb === i))))) {\n {\n var fin333keys = ((window.top.JSBNG_Replay.forInKeys)((kb))), fin333i = (0);\n var tb;\n for (; (fin333i < fin333keys.length); (fin333i++)) {\n ((tb) = (fin333keys[fin333i]));\n {\n if (((typeof rb.flashvars != h))) {\n rb.flashvars += ((((((\"&\" + tb)) + \"=\")) + kb[tb]));\n }\n else rb.flashvars = ((((tb + \"=\")) + kb[tb]));\n ;\n ;\n };\n };\n };\n }\n ;\n ;\n if (za(ib)) {\n var ub = sa(pb, rb, fb);\n if (((pb.id == fb))) {\n bb(fb, true);\n }\n ;\n ;\n ob.success = true;\n ob.ref = ub;\n }\n else if (((jb && oa()))) {\n pb.data = jb;\n pa(pb, rb, fb, nb);\n return;\n }\n else bb(fb, true);\n \n ;\n ;\n if (nb) {\n nb(ob);\n }\n ;\n ;\n });\n }\n else if (nb) {\n nb(ob);\n }\n \n ;\n ;\n },\n switchOffAutoHideShow: function() {\n ea = false;\n },\n ua: fa,\n getFlashPlayerVersion: function() {\n return {\n major: fa.pv[0],\n minor: fa.pv[1],\n release: fa.pv[2]\n };\n },\n hasFlashPlayerVersion: za,\n createSWF: function(eb, fb, gb) {\n if (fa.w3) {\n return sa(eb, fb, gb);\n }\n else return undefined\n ;\n },\n showExpressInstall: function(eb, fb, gb, hb) {\n if (((fa.w3 && oa()))) {\n pa(eb, fb, gb, hb);\n }\n ;\n ;\n },\n removeSWF: function(eb) {\n if (fa.w3) {\n ua(eb);\n }\n ;\n ;\n },\n createCSS: function(eb, fb, gb, hb) {\n if (fa.w3) {\n ab(eb, fb, gb, hb);\n }\n ;\n ;\n },\n addDomLoadEvent: ia,\n addLoadEvent: ja,\n getQueryParamValue: function(eb) {\n var fb = ((p.JSBNG__location.search || p.JSBNG__location.hash));\n if (fb) {\n if (/\\?/.test(fb)) {\n fb = fb.split(\"?\")[1];\n }\n ;\n ;\n if (((eb == null))) {\n return cb(fb);\n }\n ;\n ;\n var gb = fb.split(\"&\");\n for (var hb = 0; ((hb < gb.length)); hb++) {\n if (((gb[hb].substring(0, gb[hb].indexOf(\"=\")) == eb))) {\n return cb(gb[hb].substring(((gb[hb].indexOf(\"=\") + 1))));\n }\n ;\n ;\n };\n ;\n }\n ;\n ;\n return \"\";\n },\n expressInstallCallback: function() {\n if (ba) {\n var eb = wa(m);\n if (((eb && w))) {\n eb.parentNode.replaceChild(w, eb);\n if (x) {\n bb(x, true);\n if (((fa.ie && fa.win))) {\n w.style.display = \"block\";\n }\n ;\n ;\n }\n ;\n ;\n if (y) {\n y(z);\n }\n ;\n ;\n }\n ;\n ;\n ba = false;\n }\n ;\n ;\n }\n };\n }();\n e.exports = g;\n});\n__d(\"SoundPlayer\", [\"Arbiter\",\"ChatConfig\",\"swfobject\",\"swfobject2\",\"URI\",\"createArrayFrom\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"ChatConfig\"), i = b(\"swfobject\").SWFObject, j = b(\"swfobject2\"), k = b(\"URI\"), l = b(\"createArrayFrom\"), m = {\n }, n = null, o = false, p = \"so_sound_player\", q = \"/swf/SoundPlayer.swf?v=1\", r = \"10.0.22.87\", s = null, t = h.get(\"sound.useswfobject_2\", false), u = h.get(\"sound.force_flash\", false);\n function v(da) {\n var ea = k(da);\n if (!ea.getDomain()) {\n return k().setPath(ea.getPath()).toString();\n }\n ;\n ;\n return da;\n };\n;\n function w(da) {\n var ea = k(da).getPath();\n if (/\\.mp3$/.test(ea)) {\n return \"audio/mpeg\";\n }\n ;\n ;\n if (/\\.og[ga]$/.test(ea)) {\n return \"audio/ogg\";\n }\n ;\n ;\n return \"\";\n };\n;\n function x() {\n if (((!s && !u))) {\n var da = JSBNG__document.createElement(\"audio\");\n if (((!da || !da.canPlayType))) {\n return null;\n }\n ;\n ;\n da.setAttribute(\"preload\", \"auto\");\n JSBNG__document.body.appendChild(da);\n s = da;\n }\n ;\n ;\n return s;\n };\n;\n function y() {\n var da = ((JSBNG__document[p] || window[p]));\n if (da) {\n if (((!da.playSound && da.length))) {\n da = da[0];\n }\n ;\n }\n ;\n ;\n return ((((((da && da.playSound)) && da.loopSound)) ? da : null));\n };\n;\n function z() {\n return o;\n };\n;\n function aa(da, ea, fa) {\n n = {\n path: da,\n sync: ea,\n loop: fa\n };\n };\n;\n function ba() {\n o = true;\n if (n) {\n var da = y();\n if (n.loop) {\n da.loopSound(n.path, n.sync);\n }\n else da.playSound(n.path, n.sync);\n ;\n ;\n }\n ;\n ;\n };\n;\n var ca = {\n init: function(da) {\n da = l(da);\n var ea;\n for (var fa = 0; ((fa < da.length)); ++fa) {\n ea = da[fa];\n if (m[ea]) {\n return;\n }\n ;\n ;\n };\n ;\n var ga = x();\n for (fa = 0; ((ga && ((fa < da.length)))); ++fa) {\n ea = da[fa];\n if (ga.canPlayType(ea)) {\n m[ea] = true;\n return;\n }\n ;\n ;\n };\n ;\n m[\"audio/mpeg\"] = true;\n if (y()) {\n return;\n }\n ;\n ;\n try {\n g.registerCallback(ba, [\"sound/player_ready\",\"sound/ready\",]);\n var ia = JSBNG__document.createElement(\"div\");\n ia.id = \"sound_player_holder\";\n JSBNG__document.body.appendChild(ia);\n if (t) {\n j.embedSWF(q, ia.id, \"1px\", \"1px\", r, null, {\n swf_id: p\n }, {\n allowscriptaccess: \"always\",\n wmode: \"transparent\"\n }, null, function(ka) {\n window[p] = ka.ref;\n g.inform(\"sound/player_ready\");\n });\n }\n else {\n var ja = new i(q, p, \"1px\", \"1px\", [r,], \"#ffffff\");\n ja.addParam(\"allowscriptaccess\", \"always\");\n ja.addParam(\"wmode\", \"transparent\");\n ja.addVariable(\"swf_id\", p);\n ja.fallback_html = \" \";\n ja.write(ia.id);\n window[p] = ja;\n g.inform(\"sound/player_ready\");\n }\n ;\n ;\n } catch (ha) {\n \n };\n ;\n },\n play: function(da, ea) {\n da = l(da);\n var fa = x(), ga, ha;\n for (var ia = 0; ((fa && ((ia < da.length)))); ++ia) {\n ga = da[ia];\n ha = w(ga);\n if (!fa.canPlayType(ha)) {\n continue;\n }\n ;\n ;\n ca.init([ha,]);\n fa.src = v(ga);\n if (ea) {\n fa.setAttribute(\"loop\", \"\");\n }\n else fa.removeAttribute(\"loop\");\n ;\n ;\n fa.play();\n return;\n };\n ;\n for (ia = 0; ((ia < da.length)); ++ia) {\n ga = v(da[ia]);\n ha = w(ga);\n if (((ha != \"audio/mpeg\"))) {\n continue;\n }\n ;\n ;\n ca.init([ha,]);\n var ja = y();\n if (!z()) {\n aa(ga, true, ea);\n return;\n }\n else if (ja) {\n if (ea) {\n ja.loopSound(ga, true);\n }\n else ja.playSound(ga, true);\n ;\n ;\n return;\n }\n \n ;\n ;\n };\n ;\n },\n JSBNG__stop: function(da) {\n da = l(da);\n for (var ea = 0; ((ea < da.length)); ++ea) {\n var fa = v(da[ea]), ga = x(), ha = y();\n if (((ga && ((ga.src == fa))))) {\n ga.pause();\n ga.src = undefined;\n }\n else ((ha && ha.stopSound(fa)));\n ;\n ;\n };\n ;\n }\n };\n e.exports = ca;\n});\n__d(\"SoundSynchronizer\", [\"hasArrayNature\",\"SoundPlayer\",\"createArrayFrom\",], function(a, b, c, d, e, f) {\n var g = b(\"hasArrayNature\"), h = b(\"SoundPlayer\"), i = b(\"createArrayFrom\"), j = \"fb_sounds_playing3\";\n function k() {\n if (window.JSBNG__localStorage) {\n try {\n var p = window.JSBNG__localStorage[j];\n if (p) {\n p = JSON.parse(p);\n if (g(p)) {\n return p;\n }\n ;\n ;\n }\n ;\n ;\n } catch (o) {\n \n };\n }\n ;\n ;\n return [];\n };\n;\n function l(o) {\n if (window.JSBNG__localStorage) {\n var p = k();\n p.push(o);\n while (((p.length > 5))) {\n p.shift();\n ;\n };\n ;\n try {\n window.JSBNG__localStorage[j] = JSON.stringify(p);\n } catch (q) {\n \n };\n ;\n }\n ;\n ;\n };\n;\n function m(o) {\n return k().some(function(p) {\n return ((p === o));\n });\n };\n;\n var n = {\n play: function(o, p, q) {\n o = i(o);\n p = ((p || ((o[0] + Math.floor(((JSBNG__Date.now() / 1000)))))));\n if (m(p)) {\n return;\n }\n ;\n ;\n h.play(o, q);\n l(p);\n },\n isSupported: function() {\n return !!window.JSBNG__localStorage;\n }\n };\n e.exports = n;\n});\n__d(\"Sound\", [\"SoundPlayer\",\"SoundRPC\",\"SoundSynchronizer\",\"URI\",\"UserAgent\",], function(a, b, c, d, e, f) {\n var g = b(\"SoundPlayer\"), h = b(\"SoundRPC\"), i = b(\"SoundSynchronizer\"), j = b(\"URI\"), k = b(\"UserAgent\"), l = null, m = {\n init: function(q) {\n if (!l) {\n g.init(q);\n }\n ;\n ;\n },\n play: function(q, r, s) {\n if (l) {\n h.playRemote(l.contentWindow, q, r, false);\n }\n else h.playLocal(q, r, s);\n ;\n ;\n },\n JSBNG__stop: function(q) {\n if (!l) {\n g.JSBNG__stop(q);\n }\n ;\n ;\n }\n }, n = new j(JSBNG__location.href);\n if (((n.getSubdomain() && ((n.getSubdomain() !== \"www\"))))) {\n n.setSubdomain(\"www\");\n }\n;\n;\n var o = n.getDomain();\n function p() {\n if (((k.ie() < 9))) {\n return false;\n }\n ;\n ;\n return ((i.isSupported() && h.supportsRPC()));\n };\n;\n if (((((n.isFacebookURI() && ((JSBNG__location.host !== o)))) && p()))) {\n l = JSBNG__document.createElement(\"div\");\n l.setAttribute(\"src\", ((((\"//\" + o)) + \"/sound_iframe.php\")));\n l.style.display = \"none\";\n JSBNG__document.body.appendChild(l);\n }\n;\n;\n e.exports = m;\n});\n__d(\"MercuryBrowserAlerts\", [\"ArbiterMixin\",\"ChatActivity\",\"ChatConfig\",\"ChatOptions\",\"ChatTitleBarBlinker\",\"MercuryParticipants\",\"MercuryThreadMuter\",\"MercuryThreads\",\"MessagingTag\",\"Sound\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"ArbiterMixin\"), h = b(\"ChatActivity\"), i = b(\"ChatConfig\"), j = b(\"ChatOptions\"), k = b(\"ChatTitleBarBlinker\"), l = b(\"MercuryParticipants\"), m = b(\"MercuryThreadMuter\"), n = b(\"MercuryThreads\").get(), o = b(\"MessagingTag\"), p = b(\"Sound\"), q = b(\"copyProperties\");\n p.init([\"audio/ogg\",\"audio/mpeg\",]);\n function r(t) {\n if (j.getSetting(\"sound\")) {\n p.play([i.get(\"sound.notif_ogg_url\"),i.get(\"sound.notif_mp3_url\"),], t, false);\n }\n ;\n ;\n };\n;\n var s = {\n messageReceived: function(t) {\n if (((((((t.author == l.user)) || !t.is_unread)) || ((((t.folder != o.INBOX)) && ((t.folder != o.ARCHIVED))))))) {\n return;\n }\n ;\n ;\n var u = t.thread_id, v = h.isActive();\n if (v) {\n var w = false;\n s.inform(\"before-alert\", {\n threadID: u,\n cancelAlert: function() {\n w = true;\n }\n });\n }\n ;\n ;\n n.getThreadMeta(u, function(x) {\n var y = m.isThreadMuted(x);\n if (y) {\n return;\n }\n ;\n ;\n var z = t.timestamp;\n if (v) {\n ((!w && r(z)));\n }\n else {\n k.blink(u, z);\n r(z);\n }\n ;\n ;\n k.blinkingElsewhere();\n }.bind(this));\n }\n };\n e.exports = q(s, g);\n});\n__d(\"ActiveXSupport\", [], function(a, b, c, d, e, f) {\n var g = null, h = {\n isSupported: function() {\n if (((g !== null))) {\n return g;\n }\n ;\n ;\n try {\n g = ((!!window.ActiveXObject && !!new ActiveXObject(\"htmlfile\")));\n } catch (i) {\n g = false;\n };\n ;\n return g;\n }\n };\n e.exports = h;\n});\n__d(\"VideoCallSupport\", [\"MercuryConfig\",\"UserAgent\",], function(a, b, c, d, e, f) {\n var g = b(\"MercuryConfig\"), h = b(\"UserAgent\"), i = {\n newVCIsSupported: function() {\n return ((g.NewVCGK && ((((h.chrome() >= 24)) || ((h.firefox() >= 22))))));\n }\n };\n e.exports = i;\n});\n__d(\"VideoCallRecordMessageDialog\", [\"AsyncDialog\",\"AsyncRequest\",\"Dialog\",\"URI\",\"tx\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncDialog\"), h = b(\"AsyncRequest\"), i = b(\"Dialog\"), j = b(\"URI\"), k = b(\"tx\"), l = {\n get: function(m, n) {\n var o = \"Would you like to leave a message?\", p = \"New Message\";\n return new i().setTitle(k._(\"{firstname} is Unavailable\", {\n firstname: n\n })).setBody(o).setButtons([{\n JSBNG__name: \"record-message\",\n label: p\n },i.CANCEL,]).setHandler(function() {\n var q = j(\"/ajax/messaging/composer.php\").setQueryData({\n ids: [m,],\n autoloadvideo: true\n }).toString();\n g.send(new h(q));\n });\n }\n };\n e.exports = l;\n});\n__d(\"VideoCallCore\", [\"JSBNG__Event\",\"ActiveXSupport\",\"Arbiter\",\"AsyncRequest\",\"AvailableList\",\"AvailableListConstants\",\"Bootloader\",\"ChannelConstants\",\"Cookie\",\"JSBNG__CSS\",\"Dialog\",\"MercuryConfig\",\"UserAgent\",\"VideoCallSupport\",\"emptyFunction\",\"ge\",\"VideoCallTemplates\",\"ShortProfiles\",\"VideoCallRecordMessageDialog\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"ActiveXSupport\"), i = b(\"Arbiter\"), j = b(\"AsyncRequest\"), k = b(\"AvailableList\"), l = b(\"AvailableListConstants\"), m = b(\"Bootloader\"), n = b(\"ChannelConstants\"), o = b(\"Cookie\"), p = b(\"JSBNG__CSS\"), q = b(\"Dialog\"), r = b(\"MercuryConfig\"), s = b(\"UserAgent\"), t = b(\"VideoCallSupport\"), u = b(\"emptyFunction\"), v = b(\"ge\");\n b(\"VideoCallTemplates\");\n var w = [], x = [], y = {\n isSupported: function() {\n if (t.newVCIsSupported()) {\n return true;\n }\n ;\n ;\n if (s.windows()) {\n if (((((s.ie() >= 9)) && !s.ie64()))) {\n return h.isSupported();\n }\n else return ((((((((((s.ie() >= 7)) && !s.ie64())) || ((s.firefox() >= 3.6)))) || ((s.chrome() >= 5)))) || ((s.JSBNG__opera() >= 12))))\n ;\n }\n else if (((s.osx() > 10.4))) {\n return ((((((((s.firefox() >= 3.6)) || ((s.chrome() >= 5)))) || ((s.webkit() >= 500)))) || ((s.JSBNG__opera() >= 12))));\n }\n \n ;\n ;\n return false;\n },\n isInstalled: function() {\n var ca = false;\n if (this.isSupported()) {\n if (z()) {\n var da = null;\n try {\n da = new ActiveXObject(\"SkypeLimited.SkypeWebPlugin\");\n ca = !!da;\n } catch (ea) {\n \n };\n ;\n da = null;\n }\n else {\n ca = aa();\n if (r.VideoCallingNoJavaGK) {\n if (((ca && ((s.osx() >= 10.8))))) {\n if (((ca.description && ((ca.description.charAt(0) != \"v\"))))) {\n ca = false;\n }\n ;\n }\n ;\n }\n ;\n ;\n }\n ;\n }\n ;\n ;\n return ca;\n },\n mightReloadPostInstall: function() {\n return s.windows();\n },\n onVideoMessage: function(ca) {\n w.push(ca);\n m.loadModules([\"VideoCallController\",], u);\n },\n onRTCMessage: function(ca) {\n if (t.newVCIsSupported()) {\n x.push(ca);\n m.loadModules([\"FBRTCCallController\",], u);\n }\n ;\n ;\n },\n setMessageHandler: function(ca) {\n this.onVideoMessage = ca;\n if (ca) {\n while (w.length) {\n ca(w.shift());\n ;\n };\n }\n ;\n ;\n },\n setRTCMessageHandler: function(ca) {\n this.onRTCMessage = ca;\n if (ca) {\n while (x.length) {\n ca(x.shift());\n ;\n };\n }\n ;\n ;\n },\n availableForCall: function(ca) {\n var da = k.get(ca);\n return ((((da == l.ACTIVE)) || ((da == l.IDLE))));\n },\n onProfileButtonClick: function(ca) {\n y.startCallOrLeaveMessage(ca, \"profile_button_click\");\n },\n attachListenerToProfileButton: function(ca) {\n var da = v(\"videoCallProfileButton\");\n if (da) {\n if (!y.isSupported()) {\n p.hide(da);\n return;\n }\n ;\n ;\n g.listen(da, \"click\", function(JSBNG__event) {\n y.startCallOrLeaveMessage(ca, \"profile_button_click_timeline\");\n });\n }\n ;\n ;\n },\n startCallOrLeaveMessage: function(ca, da) {\n if (this.availableForCall(ca)) {\n y.showOutgoingCallDialog(ca, da);\n }\n else b(\"ShortProfiles\").get(ca, function(ea) {\n b(\"VideoCallRecordMessageDialog\").get(ca, ea.firstName).show();\n });\n ;\n ;\n },\n showOutgoingCallDialog: function(ca, da) {\n var ea = ((da || \"unknown\"));\n y.logClick(ca, ea);\n var fa = ((((y.isInstalled() || r.NewVCGK)) ? \"outgoing_dialog.php\" : \"intro.php\")), ga = ((((((\"/ajax/chat/video/\" + fa)) + \"?idTarget=\")) + ca));\n new q().setAllowCrossPageTransition(true).setAsync(new j(ga)).show();\n },\n logClick: function(ca, da) {\n new j().setURI(\"/ajax/chat/video/log_click.php\").setData({\n targetUserID: ca,\n clickSource: da\n }).setAllowCrossPageTransition(true).setErrorHandler(u).send();\n }\n };\n function z() {\n return ((((s.ie() && s.windows())) && !s.JSBNG__opera()));\n };\n;\n function aa() {\n if (!JSBNG__navigator) {\n return null;\n }\n ;\n ;\n JSBNG__navigator.plugins.refresh(false);\n var ca = JSBNG__navigator.mimeTypes[\"application/skypesdk-plugin\"];\n return ((ca && ca.enabledPlugin));\n };\n;\n function ba() {\n if (!y.mightReloadPostInstall()) {\n return;\n }\n ;\n ;\n var ca = o.get(\"vcpwn\");\n if (ca) {\n o.clear(\"vcpwn\");\n var da = o.get(\"vctid\");\n if (da) {\n o.clear(\"vctid\");\n if (o.get(\"vctid\")) {\n return;\n }\n ;\n ;\n if (((da && y.isInstalled()))) {\n var ea = ((\"/ajax/chat/video/outgoing_dialog.php?idTarget=\" + da));\n new q().setAllowCrossPageTransition(true).setAsync(new j(ea)).show();\n }\n ;\n ;\n }\n ;\n ;\n }\n ;\n ;\n };\n;\n i.subscribe(n.getArbiterType(\"video\"), function(ca, da) {\n y.onVideoMessage(da.obj);\n });\n i.subscribe(n.getArbiterType(\"webrtc\"), function(ca, da) {\n y.onRTCMessage(da.obj);\n });\n i.subscribe(n.getArbiterType(\"chat_event\"), function(ca, da) {\n if (((da.obj.event_name == \"missed-call\"))) {\n m.loadModules([\"VideoCallController\",], function(ea) {\n ea.onMissedCallEvent(da.obj);\n });\n }\n ;\n ;\n });\n ba();\n e.exports = y;\n});\n__d(\"ChatTabModel\", [\"function-extensions\",\"Arbiter\",\"ArbiterMixin\",\"ChatBehavior\",\"ChatConfig\",\"JSLogger\",\"MercuryAssert\",\"MercuryServerRequests\",\"MercuryThreads\",\"MercuryTimestampTracker\",\"PresenceInitialData\",\"PresenceState\",\"PresenceUtil\",\"areObjectsEqual\",\"copyProperties\",], function(a, b, c, d, e, f) {\n b(\"function-extensions\");\n var g = b(\"Arbiter\"), h = b(\"ArbiterMixin\"), i = b(\"ChatBehavior\"), j = b(\"ChatConfig\"), k = b(\"JSLogger\"), l = b(\"MercuryAssert\"), m = b(\"MercuryServerRequests\").get(), n = b(\"MercuryThreads\").get(), o = b(\"MercuryTimestampTracker\").get(), p = b(\"PresenceInitialData\"), q = b(\"PresenceState\"), r = b(\"PresenceUtil\"), s = b(\"areObjectsEqual\"), t = b(\"copyProperties\"), u = [], v = null, w = null, x = null, y = null;\n function z() {\n return parseInt(p.serverTime, 10);\n };\n;\n var aa = ((j.get(\"tab_max_load_age\") || 3600000)), ba = ((z() - aa)), ca = 0, da = 20, ea = k.create(\"chat_tab_model\"), fa = false;\n function ga(xa) {\n var ya = q.verifyNumber(xa.uct2);\n if (((!ya || ((typeof ya !== \"number\"))))) {\n ea.warn(\"bad_cookie_version\", xa.uct2);\n return null;\n }\n ;\n ;\n if (((((ya < ca)) || ((ya < ba))))) {\n return null;\n }\n ;\n ;\n return ya;\n };\n;\n function ha(xa) {\n var ya = ga(xa);\n if (!ya) {\n var za = {\n };\n za.old_tabs = ((((xa && xa.t2)) && JSON.stringify(xa.t2)));\n za.old_promoted = ((xa && xa.lm2));\n za.old_time = ((xa && xa.uct2));\n za.old_reason = ((xa && xa.tr));\n za.old_window = ((xa && xa.tw));\n var ab;\n if (((w && xa.t2))) {\n for (var bb = 0; ((bb < xa.t2.length)); bb++) {\n var cb = xa.t2[bb];\n if (((cb.i === w))) {\n ab = cb.r;\n }\n ;\n ;\n };\n }\n ;\n ;\n var db = [];\n u.forEach(function(eb) {\n if (!eb.fragile) {\n var fb = {\n i: eb.id,\n si: eb.server_id\n };\n if (((eb.raised || ((((eb.id === w)) && ab))))) {\n fb.r = 1;\n }\n ;\n ;\n db.push(fb);\n }\n ;\n ;\n });\n xa.t2 = db;\n xa.uct2 = ca;\n xa.lm2 = v;\n xa.tr = y;\n xa.tw = r.getSessionID();\n za.new_tabs = JSON.stringify(xa.t2);\n za.new_promoted = xa.lm2;\n za.new_time = xa.uct2;\n za.new_reason = xa.tr;\n za.new_window = xa.tw;\n ea.debug(\"store\", za);\n }\n ;\n ;\n return xa;\n };\n;\n function ia(xa) {\n if (xa) {\n var ya = ga(xa);\n if (((ya && ((ya !== ca))))) {\n var za = {\n };\n za.old_tabs = JSON.stringify(u);\n za.old_promoted = v;\n za.old_time = ca;\n za.old_reason = y;\n za.window_id = r.getSessionID();\n za.cookie_tabs = ((((xa && xa.t2)) && JSON.stringify(xa.t2)));\n za.cookie_promoted = ((xa && xa.lm2));\n za.cookie_time = ((xa && xa.uct2));\n za.cookie_reason = ((xa && xa.tr));\n za.cookie_window = ((xa && xa.tw));\n ca = ya;\n y = \"load\";\n var ab = ja(xa.t2, ((xa.lm2 || null)));\n za.load_result = ab;\n za.new_tabs = JSON.stringify(u);\n za.new_promoted = v;\n za.new_time = ca;\n za.new_reason = y;\n var JSBNG__event = \"load\";\n if (!fa) {\n JSBNG__event += \"_init\";\n }\n ;\n ;\n ea.log(JSBNG__event, za);\n return ab;\n }\n ;\n ;\n }\n ;\n ;\n return false;\n };\n;\n function ja(xa, ya) {\n if (ka(xa, ya)) {\n var za = u.filter(function(cb) {\n return cb.fragile;\n }), ab = {\n };\n v = null;\n u = xa.map(function(cb) {\n var db = {\n id: cb.i,\n server_id: cb.si\n };\n if (((db.id == ya))) {\n v = db.id;\n }\n ;\n ;\n if (((w == cb.i))) {\n var eb = pa(w);\n if (((eb != -1))) {\n db.raised = u[eb].raised;\n return db;\n }\n else return null\n ;\n }\n ;\n ;\n if (cb.r) {\n db.raised = true;\n }\n ;\n ;\n ab[db.id] = db;\n return db;\n });\n u = u.filter(function(cb) {\n return ((cb != null));\n });\n if (x) {\n {\n var fin334keys = ((window.top.JSBNG_Replay.forInKeys)((x))), fin334i = (0);\n var bb;\n for (; (fin334i < fin334keys.length); (fin334i++)) {\n ((bb) = (fin334keys[fin334i]));\n {\n if (((!ab[bb] || !ab[bb].raised))) {\n delete x[bb];\n }\n ;\n ;\n };\n };\n };\n }\n ;\n ;\n za = za.filter(function(cb) {\n return !ab[cb.id];\n });\n u = u.concat(za);\n oa();\n return true;\n }\n ;\n ;\n return false;\n };\n;\n function ka(xa, ya) {\n if (((ya != v))) {\n return true;\n }\n ;\n ;\n var za = u.filter(function(cb) {\n return !cb.fragile;\n });\n if (((xa.length != za.length))) {\n return true;\n }\n ;\n ;\n for (var ab = 0, bb = xa.length; ((ab < bb)); ab++) {\n if (((xa[ab].id === w))) {\n continue;\n }\n ;\n ;\n if (!s(xa[ab], za[ab])) {\n return true;\n }\n ;\n ;\n };\n ;\n return false;\n };\n;\n function la(xa, ya, za) {\n var ab = ia(q.get());\n if (((((ya === undefined)) || ((ya > ca))))) {\n if (xa()) {\n ab = true;\n y = ((za || null));\n na(ya);\n }\n ;\n ;\n }\n else ea.error(\"rejected\", {\n change_time: ya,\n state_time: ca\n });\n ;\n ;\n ((ab && ma()));\n };\n;\n function ma() {\n if (fa) {\n va.inform(\"chat/tabs-changed\", va.get());\n }\n ;\n ;\n };\n;\n function na(xa) {\n if (((xa === undefined))) {\n xa = Math.max(((o.getLastUserMessageTimestamp() || 1)), ((ca + 1)));\n }\n ;\n ;\n ca = xa;\n q.doSync();\n };\n;\n function oa() {\n var xa = ((u.length - da));\n if (((xa > 0))) {\n u = u.filter(function(ya) {\n return ((ya.raised || ((xa-- <= 0))));\n });\n }\n ;\n ;\n };\n;\n function pa(xa) {\n for (var ya = 0; ((ya < u.length)); ya++) {\n if (((u[ya].id == xa))) {\n return ya;\n }\n ;\n ;\n };\n ;\n return -1;\n };\n;\n function qa(xa, ya) {\n var za = n.getThreadMetaNow(xa);\n if (!za) {\n return false;\n }\n ;\n ;\n if (za.is_canonical_user) {\n return sa(xa, ya);\n }\n else {\n var ab = ra(xa);\n if (ab) {\n m.getServerThreadID(xa, function(bb) {\n if (ta(xa, bb)) {\n na();\n ma();\n }\n ;\n ;\n });\n }\n ;\n ;\n return ab;\n }\n ;\n ;\n };\n;\n function ra(xa) {\n if (((pa(xa) === -1))) {\n u.push({\n id: xa,\n fragile: true\n });\n ea.log(\"open_fragile_tab\", {\n tabs: JSON.stringify(u),\n opened: xa,\n window_id: r.getSessionID()\n });\n return true;\n }\n ;\n ;\n return false;\n };\n;\n function sa(xa, ya) {\n var za = pa(xa);\n if (((za != -1))) {\n if (u[za].fragile) {\n u.splice(za, 1);\n }\n else {\n u[za].signatureID = ya;\n return true;\n }\n ;\n }\n ;\n ;\n for (var ab = 0; ((ab <= u.length)); ab++) {\n if (((((ab == u.length)) || u[ab].fragile))) {\n u.splice(ab, 0, {\n id: xa,\n signatureID: ya\n });\n oa();\n ea.log(\"open_tab\", {\n tabs: JSON.stringify(u),\n opened: xa,\n window_id: r.getSessionID()\n });\n return true;\n }\n ;\n ;\n };\n ;\n };\n;\n function ta(xa, ya) {\n var za = pa(xa);\n if (((((za != -1)) && u[za].fragile))) {\n var ab = u[za];\n ab.fragile = false;\n ab.server_id = ya;\n var bb = [];\n u.forEach(function(cb) {\n if (((cb.id != xa))) {\n if (((ab && cb.fragile))) {\n bb.push(ab);\n ab = null;\n }\n ;\n ;\n bb.push(cb);\n }\n ;\n ;\n });\n if (ab) {\n bb.push(ab);\n }\n ;\n ;\n u = bb;\n ea.log(\"make_permanent\", {\n tabs: JSON.stringify(u),\n tab_id: xa,\n window_id: r.getSessionID()\n });\n return true;\n }\n ;\n ;\n return false;\n };\n;\n function ua(xa) {\n var ya = pa(xa);\n if (((xa == v))) {\n v = null;\n }\n ;\n ;\n if (((ya != -1))) {\n u.splice(ya, 1);\n ea.log(\"close_tab\", {\n tabs: JSON.stringify(u),\n JSBNG__closed: xa,\n window_id: r.getSessionID()\n });\n return true;\n }\n ;\n ;\n return false;\n };\n;\n q.registerStateStorer(ha);\n q.registerStateLoader(function(xa) {\n if (ia(xa)) {\n ma();\n }\n ;\n ;\n });\n function va() {\n \n };\n;\n t(va, h, {\n indexOf: function(xa) {\n return pa(xa);\n },\n getTab: function(xa) {\n l.isThreadID(xa);\n var ya = this.indexOf(xa);\n if (((ya > -1))) {\n var za = u[ya];\n return t({\n }, za);\n }\n ;\n ;\n return null;\n },\n getEmptyTab: function() {\n for (var xa = 0; ((xa < u.length)); xa++) {\n var ya = u[xa].id;\n if (n.isNewEmptyLocalThread(ya)) {\n return ya;\n }\n ;\n ;\n };\n ;\n return null;\n },\n getServerTime: function() {\n return z();\n },\n closeAllTabs: function() {\n if (u.length) {\n ea.log(\"close_all_tabs\", {\n closed_tabs: JSON.stringify(u),\n window_id: r.getSessionID()\n });\n u = [];\n v = null;\n if (x) {\n x = {\n };\n }\n ;\n ;\n na();\n ma();\n }\n ;\n ;\n },\n closeFragileTabs: function() {\n var xa = [];\n for (var ya = 0; ((ya < u.length)); ya++) {\n if (((u[ya].fragile && !n.isNewEmptyLocalThread(u[ya].id)))) {\n xa.push(u[ya]);\n u.splice(ya);\n ma();\n break;\n }\n ;\n ;\n };\n ;\n ea.log(\"close_fragile_tabs\", {\n tabs: JSON.stringify(u),\n fragile_closed: xa,\n window_id: r.getSessionID()\n });\n },\n closeTab: function(xa, ya) {\n l.isThreadID(xa);\n var za = false;\n if (x) {\n delete x[xa];\n za = true;\n }\n ;\n ;\n la(function() {\n if (ua(xa)) {\n za = true;\n }\n ;\n ;\n return za;\n }, undefined, ya);\n },\n closeTabAndDemote: function(xa, ya, za) {\n l.isThreadID(xa);\n var ab = false;\n if (x) {\n delete x[xa];\n ab = true;\n }\n ;\n ;\n la(function() {\n if (ua(xa)) {\n if (v) {\n var bb = pa(v);\n if (((bb > ya))) {\n var cb = u.splice(bb, 1)[0];\n u.splice(ya, 0, cb);\n v = null;\n }\n ;\n ;\n }\n ;\n ;\n ab = true;\n }\n ;\n ;\n return ab;\n }, undefined, za);\n },\n raiseTab: function(xa, ya, za) {\n l.isThreadID(xa);\n var ab = false;\n if (((x && ya))) {\n x[xa] = true;\n ab = true;\n }\n ;\n ;\n if (((!ya && ((xa === w))))) {\n ((ab && ma()));\n return;\n }\n ;\n ;\n la(function() {\n if (qa(xa, za)) {\n ab = true;\n }\n ;\n ;\n var bb = pa(xa);\n if (((((bb != -1)) && !u[bb].raised))) {\n u[bb].raised = true;\n ab = true;\n ea.log(\"raise_tab\", {\n tabs: JSON.stringify(u),\n raised: xa,\n window_id: r.getSessionID()\n });\n }\n ;\n ;\n return ab;\n });\n },\n get: function() {\n var xa = u.map(function(ya) {\n var za = t({\n }, ya);\n delete za.fragile;\n if (x) {\n za.raised = x[za.id];\n }\n ;\n ;\n return za;\n });\n return {\n tabs: xa,\n promoted: v\n };\n },\n openFragileTab: function(xa) {\n l.isThreadID(xa);\n if (ra(xa)) {\n ma();\n }\n ;\n ;\n },\n openTab: function(xa) {\n l.isThreadID(xa);\n la(qa.curry(xa));\n },\n lowerTab: function(xa) {\n l.isThreadID(xa);\n var ya = false;\n if (x) {\n delete x[xa];\n ya = true;\n }\n ;\n ;\n la(function() {\n var za = pa(xa);\n if (((((za != -1)) && u[za].raised))) {\n delete u[za].raised;\n ea.log(\"lower_tab\", {\n tabs: JSON.stringify(u),\n lowered: xa,\n window_id: r.getSessionID()\n });\n ya = true;\n }\n ;\n ;\n return ya;\n });\n },\n raiseAndPromoteTab: function(xa, ya, za, ab, bb) {\n l.isThreadID(xa);\n var cb = false;\n if (((x && ya))) {\n x[xa] = true;\n cb = true;\n }\n ;\n ;\n if (((!ya && ((xa === w))))) {\n ((cb && ma()));\n return;\n }\n ;\n ;\n la(function() {\n if (qa(xa, za)) {\n cb = true;\n }\n ;\n ;\n var db = pa(xa);\n if (((((db != -1)) && ((!u[db].raised || ((v != xa))))))) {\n u[db].raised = true;\n v = xa;\n cb = true;\n ea.log(\"raise_and_promote_tab\", {\n tabs: JSON.stringify(u),\n promoted: xa,\n window_id: r.getSessionID()\n });\n }\n ;\n ;\n return cb;\n }, ab, bb);\n },\n promoteThreadInPlaceOfThread: function(xa, ya) {\n l.isThreadID(xa);\n l.isThreadID(ya);\n la(function() {\n var za = pa(xa), ab = pa(ya);\n if (((v === ya))) {\n v = xa;\n }\n ;\n ;\n var bb = u[za];\n u[za] = u[ab];\n u[ab] = bb;\n return true;\n });\n },\n squelchTab: function(xa) {\n l.isThreadID(xa);\n w = xa;\n this.lowerTab(xa);\n ea.log(\"squelch_tab\", {\n squelched: xa,\n tabs: JSON.stringify(u),\n window_id: r.getSessionID()\n });\n },\n clearSquelchedTab: function() {\n if (w) {\n ea.log(\"unsquelch_tab\", {\n squelched: w,\n tabs: JSON.stringify(u),\n window_id: r.getSessionID()\n });\n }\n ;\n ;\n w = null;\n },\n persistLocalRaised: function() {\n if (x) {\n la(function() {\n var xa = false;\n u.forEach(function(ya) {\n if (((ya.raised != x[ya.id]))) {\n xa = true;\n if (x[ya.id]) {\n ya.raised = true;\n }\n else delete ya.raised;\n ;\n ;\n }\n ;\n ;\n });\n return xa;\n });\n ea.log(\"persist_local_raise\", {\n tabs: JSON.stringify(u),\n window_id: r.getSessionID()\n });\n }\n ;\n ;\n }\n });\n g.subscribe(k.DUMP_EVENT, function(xa, ya) {\n ya.chat_tabs = {\n promoted: v,\n tabs: u.map(function(za) {\n return t({\n }, za);\n }),\n time: ca,\n max_load_age: aa\n };\n });\n function wa() {\n var xa = i.ignoresRemoteTabRaise();\n if (((xa && !x))) {\n ea.log(\"start_ignore_remote_raise\");\n x = {\n };\n ma();\n }\n else if (((!xa && x))) {\n ea.log(\"stop_ignore_remote_raise\");\n x = null;\n ma();\n }\n \n ;\n ;\n };\n;\n i.subscribe(i.ON_CHANGED, wa);\n wa();\n ia(q.getInitial(), true);\n if (((ca === 0))) {\n ca = ((z() - 600000));\n }\n;\n;\n fa = true;\n e.exports = va;\n});\n__d(\"LinkshimHandler\", [\"JSBNG__Event\",\"LinkshimAsyncLink\",\"LinkshimHandlerConfig\",\"URI\",\"shield\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"LinkshimAsyncLink\"), i = b(\"LinkshimHandlerConfig\"), j = b(\"URI\"), k = b(\"shield\"), l = {\n setUpLinkshimHandling: function(r) {\n try {\n var t = j(r.getAttribute(\"href\")), u = m(t);\n if (((u && n(t)))) {\n g.listen(r, \"mouseover\", k(h.swap, null, r, u));\n var v = p(t);\n g.listen(r, \"click\", function() {\n if (i.supports_meta_referrer) {\n h.referrer_log(r, v, o(t).toString());\n }\n else h.swap(r, t);\n ;\n ;\n });\n }\n ;\n ;\n } catch (s) {\n \n };\n ;\n }\n };\n function m(r) {\n return ((r.getQueryData().u ? new j(r.getQueryData().u) : null));\n };\n;\n function n(r) {\n return r.getQueryData().hasOwnProperty(\"s\");\n };\n;\n function o(r) {\n return j(\"/si/ajax/l/render_linkshim_log/\").setSubdomain(\"www\").setQueryData(r.getQueryData());\n };\n;\n function p(r) {\n var s;\n if (q()) {\n s = j(r).addQueryData({\n render_verification: true\n });\n }\n else s = m(r);\n ;\n ;\n return s;\n };\n;\n function q() {\n var r = ((i.render_verification_rate || 0));\n return ((Math.floor(((((Math.JSBNG__random() * r)) + 1))) === r));\n };\n;\n e.exports = l;\n});"); |
| // 17938 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o3,o5); |
| // undefined |
| o5 = null; |
| // 17962 |
| o6["0"] = o49; |
| // undefined |
| o49 = null; |
| // 17969 |
| o6["1"] = o50; |
| // undefined |
| o50 = null; |
| // 17976 |
| o6["2"] = o64; |
| // undefined |
| o64 = null; |
| // 17983 |
| o6["3"] = o65; |
| // undefined |
| o65 = null; |
| // 17990 |
| o6["4"] = o66; |
| // undefined |
| o6 = null; |
| // undefined |
| o66 = null; |
| // 17943 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o46,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yN/r/Mt8gx_sQz92.js",o48); |
| // undefined |
| o46 = null; |
| // undefined |
| o48 = null; |
| // 18163 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"NMNM4\",]);\n}\n;\n__d(\"AppUseTracker\", [\"AsyncRequest\",\"PageTransitions\",\"Run\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"PageTransitions\"), i = b(\"Run\"), j = b(\"copyProperties\");\n function k() {\n if (!k.instance) {\n k.instance = this;\n };\n return k.instance;\n };\n j(k.prototype, {\n instance: null,\n endpoint: \"/ajax/apps/usage_update.php\",\n INITIAL_PING: 0,\n ONGOING_PING: 1,\n DISCOVERY_PING: 2,\n ENDING_PING: 3,\n _application_id: 0,\n _is_game: 0,\n _createRequest: function(l) {\n return new g().setURI(this.endpoint).setMethod(\"POST\").setData({\n app: this._application_id,\n is_game: this._is_game,\n type: l,\n condition: this._signal_on_page_transition\n });\n },\n init: function(l, m, n, o, p) {\n if ((window != window.top)) {\n return\n };\n this.cleanup();\n h.registerHandler(this.catchPageTransition.bind(this));\n this._application_id = l;\n this._is_game = m;\n this._timers.push(setTimeout(function() {\n this._createRequest(this.INITIAL_PING).send();\n var q = this._createRequest(this.ONGOING_PING);\n this._timers.push(setInterval(q.send.bind(q), o));\n }.bind(this), n));\n if (p) {\n this._timers.push(setTimeout(function() {\n this._createRequest(this.DISCOVERY_PING).send();\n }.bind(this), p));\n };\n i.onBeforeUnload(this.onBeforeUnload.bind(this));\n },\n catchPageTransition: function(l) {\n this._createRequest(this.ENDING_PING).send();\n this.cleanup();\n },\n onBeforeUnload: function() {\n this._createRequest(this.ENDING_PING).setOption(\"asynchronous\", false).send();\n this.cleanup();\n },\n cleanup: function() {\n if (this._timers) {\n for (var l = 0; (l < this._timers.length); l++) {\n clearInterval(this._timers[l]);;\n }\n };\n this._timers = [];\n }\n });\n e.exports = k;\n});\n__d(\"legacy:app-tracker\", [\"AppUseTracker\",], function(a, b, c, d) {\n a.AppUseTracker = b(\"AppUseTracker\");\n}, 3);\n__d(\"legacy:fbdesktop-detect\", [\"FBDesktopDetect\",], function(a, b, c, d) {\n a.FbDesktopDetect = b(\"FBDesktopDetect\");\n}, 3);\n__d(\"detect_broken_proxy_cache\", [\"AsyncSignal\",\"Cookie\",\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncSignal\"), h = b(\"Cookie\"), i = b(\"URI\");\n function j(k, l) {\n var m = h.get(l);\n if (((((m != k)) && ((m != null))) && ((k != \"0\")))) {\n var n = {\n c: \"si_detect_broken_proxy_cache\",\n m: ((((l + \" \") + k) + \" \") + m)\n }, o = new i(\"/common/scribe_endpoint.php\").getQualifiedURI().toString();\n new g(o, n).send();\n }\n ;\n };\n e.exports = j;\n});\n__d(\"legacy:detect-broken-proxy-cache\", [\"detect_broken_proxy_cache\",], function(a, b, c, d) {\n a.detect_broken_proxy_cache = b(\"detect_broken_proxy_cache\");\n}, 3);\n__d(\"IntlUtils\", [\"AsyncRequest\",\"Cookie\",\"goURI\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"Cookie\"), i = b(\"goURI\"), j = {\n setXmode: function(k) {\n (new g()).setURI(\"/ajax/intl/save_xmode.php\").setData({\n xmode: k\n }).setHandler(function() {\n document.location.reload();\n }).send();\n },\n setAmode: function(k) {\n new g().setURI(\"/ajax/intl/save_xmode.php\").setData({\n amode: k,\n app: false\n }).setHandler(function() {\n document.location.reload();\n }).send();\n },\n setLocale: function(k, l, m, n) {\n if (!m) {\n m = k.options[k.selectedIndex].value;\n };\n j.saveLocale(m, true, null, l, n);\n },\n saveLocale: function(k, l, m, n, o) {\n new g().setURI(\"/ajax/intl/save_locale.php\").setData({\n aloc: k,\n source: n,\n app_only: o\n }).setHandler(function(p) {\n if (l) {\n document.location.reload();\n }\n else i(m);\n ;\n }).send();\n },\n setLocaleCookie: function(k, l) {\n h.set(\"locale\", k, ((7 * 24) * 3600000));\n i(l);\n }\n };\n e.exports = j;\n});\n__d(\"legacy:intl-base\", [\"IntlUtils\",], function(a, b, c, d) {\n var e = b(\"IntlUtils\");\n a.intl_set_xmode = e.setXmode;\n a.intl_set_amode = e.setAmode;\n a.intl_set_locale = e.setLocale;\n a.intl_save_locale = e.saveLocale;\n a.intl_set_cookie_locale = e.setLocaleCookie;\n}, 3);\n__d(\"link_rel_preload\", [\"Bootloader\",\"Parent\",], function(a, b, c, d, e, f) {\n var g = b(\"Bootloader\"), h = b(\"Parent\");\n function i() {\n var j = /async(?:-post)?|dialog(?:-pipe|-post)?|theater|toggle/;\n document.documentElement.onmousedown = function(k) {\n k = (k || window.event);\n var l = (k.target || k.srcElement), m = h.byTag(l, \"A\");\n if (!m) {\n return\n };\n var n = m.getAttribute(\"ajaxify\"), o = m.href, p = (n || o);\n if (((n && o) && !(/#$/).test(o))) {\n var q = (k.which && (k.which != 1)), r = (((k.altKey || k.ctrlKey) || k.metaKey) || k.shiftKey);\n if ((q || r)) {\n return\n };\n }\n ;\n var s = (m.rel && m.rel.match(j));\n s = (s && s[0]);\n switch (s) {\n case \"dialog\":\n \n case \"dialog-post\":\n g.loadModules([\"Dialog\",]);\n break;\n case \"dialog-pipe\":\n g.loadModules([\"AjaxPipeRequest\",\"Dialog\",]);\n break;\n case \"async\":\n \n case \"async-post\":\n g.loadModules([\"AsyncRequest\",]);\n break;\n case \"theater\":\n g.loadModules([\"PhotoSnowlift\",], function(t) {\n t.preload(p, m);\n });\n break;\n case \"toggle\":\n g.loadModules([\"Toggler\",]);\n break;\n };\n return;\n };\n };\n e.exports = i;\n});\n__d(\"legacy:link-rel-preload\", [\"link_rel_preload\",], function(a, b, c, d) {\n a.link_rel_preload = b(\"link_rel_preload\");\n}, 3);\n__d(\"legacy:async\", [\"AsyncRequest\",\"AsyncResponse\",], function(a, b, c, d) {\n a.AsyncRequest = b(\"AsyncRequest\");\n a.AsyncResponse = b(\"AsyncResponse\");\n}, 3);\n__d(\"LoginFormController\", [\"Event\",\"ge\",\"Button\",], function(a, b, c, d, e, f) {\n var g = b(\"Event\"), h = b(\"ge\"), i = b(\"Button\");\n f.init = function(j, k) {\n g.listen(j, \"submit\", function() {\n i.setEnabled(k, false);\n i.setEnabled.curry(k, true).defer(15000);\n });\n var l = h(\"lgnjs\");\n if (l) {\n l.value = parseInt((Date.now() / 1000), 10);\n };\n };\n});\n__d(\"BanzaiNectar\", [\"Banzai\",], function(a, b, c, d, e, f) {\n var g = b(\"Banzai\");\n function h(j) {\n return {\n log: function(k, l, m) {\n var n = {\n e: l,\n a: m\n };\n g.post((\"nectar:\" + k), n, j);\n }\n };\n };\n var i = h();\n i.create = h;\n e.exports = i;\n});\n__d(\"DimensionLogging\", [\"BanzaiNectar\",\"DOMDimensions\",], function(a, b, c, d, e, f) {\n var g = b(\"BanzaiNectar\"), h = b(\"DOMDimensions\"), i = h.getViewportDimensions();\n g.log(\"browser_dimension\", \"homeload\", {\n x: i.width,\n y: i.height,\n sw: window.screen.width,\n sh: window.screen.height,\n aw: window.screen.availWidth,\n ah: window.screen.availHeight,\n at: window.screen.availTop,\n al: window.screen.availLeft\n });\n});\n__d(\"DimensionTracking\", [\"Cookie\",\"DOMDimensions\",\"Event\",\"debounce\",\"isInIframe\",], function(a, b, c, d, e, f) {\n var g = b(\"Cookie\"), h = b(\"DOMDimensions\"), i = b(\"Event\"), j = b(\"debounce\"), k = b(\"isInIframe\");\n function l() {\n var m = h.getViewportDimensions();\n g.set(\"wd\", ((m.width + \"x\") + m.height));\n };\n if (!k()) {\n l.defer(100);\n i.listen(window, \"resize\", j(l, 250));\n i.listen(window, \"focus\", l);\n }\n;\n});\n__d(\"HighContrastMode\", [\"AsyncSignal\",\"Cookie\",\"CSS\",\"DOM\",\"Env\",\"Style\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncSignal\"), h = b(\"Cookie\"), i = b(\"CSS\"), j = b(\"DOM\"), k = b(\"Env\"), l = b(\"Style\"), m = null, n = {\n init: function(o) {\n if (((m !== null) && (o.currentState !== m))) {\n return\n };\n var p = j.create(\"div\");\n j.appendContent(document.body, p);\n p.style.cssText = (((((((\"border: 1px solid;\" + \"border-color: red green;\") + \"position: fixed;\") + \"height: 5px;\") + \"top: -999px;\") + \"background-image: url(\") + o.spacerImage) + \");\");\n var q = l.get(p, \"background-image\"), r = l.get(p, \"border-top-color\"), s = l.get(p, \"border-right-color\"), t = ((r == s) || ((q && (((q == \"none\") || (q == \"url(invalid-url:)\")))))), u = (t ? \"1\" : \"0\");\n if ((u !== o.currentState)) {\n i.conditionClass(document.documentElement, \"highContrast\", t);\n if (k.user) {\n h.set(\"highContrastMode\", u);\n if (t) {\n new g(\"/ajax/highcontrast\").send();\n };\n }\n ;\n }\n ;\n j.remove(p);\n m = u;\n }\n };\n e.exports = n;\n});\nfunction tz_calculate(a) {\n var b = new Date(), c = (b.getTimezoneOffset() / 30), d = (b.getTime() / 1000), e = Math.round((((a - d)) / 1800)), f = (Math.round((c + e)) % 48);\n if ((f == 0)) {\n return 0;\n }\n else if ((f > 24)) {\n f -= (Math.ceil((f / 48)) * 48);\n }\n else if ((f < -28)) {\n f += (Math.ceil((f / -48)) * 48);\n }\n \n;\n return (f * 30);\n};\nfunction tz_autoset(a, b, c) {\n if ((!a || (undefined == b))) {\n return\n };\n if (window.tz_autoset.calculated) {\n return\n };\n window.tz_autoset.calculated = true;\n var d = -tz_calculate(a);\n if ((c || (d != b))) {\n var e = \"/ajax/timezone/update.php\";\n new AsyncRequest().setURI(e).setData({\n gmt_off: d,\n is_forced: c\n }).setErrorHandler(emptyFunction).setTransportErrorHandler(emptyFunction).setOption(\"suppressErrorAlerts\", true).send();\n }\n;\n};"); |
| // 18164 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s51fb00cac7bf7fde48b2ec1010e68d67259d8472"); |
| // 18165 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"NMNM4\",]);\n}\n;\n;\n__d(\"AppUseTracker\", [\"AsyncRequest\",\"PageTransitions\",\"Run\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"PageTransitions\"), i = b(\"Run\"), j = b(\"copyProperties\");\n function k() {\n if (!k.instance) {\n k.instance = this;\n }\n ;\n ;\n return k.instance;\n };\n;\n j(k.prototype, {\n instance: null,\n endpoint: \"/ajax/apps/usage_update.php\",\n INITIAL_PING: 0,\n ONGOING_PING: 1,\n DISCOVERY_PING: 2,\n ENDING_PING: 3,\n _application_id: 0,\n _is_game: 0,\n _createRequest: function(l) {\n return new g().setURI(this.endpoint).setMethod(\"POST\").setData({\n app: this._application_id,\n is_game: this._is_game,\n type: l,\n condition: this._signal_on_page_transition\n });\n },\n init: function(l, m, n, o, p) {\n if (((window != window.JSBNG__top))) {\n return;\n }\n ;\n ;\n this.cleanup();\n h.registerHandler(this.catchPageTransition.bind(this));\n this._application_id = l;\n this._is_game = m;\n this._timers.push(JSBNG__setTimeout(function() {\n this._createRequest(this.INITIAL_PING).send();\n var q = this._createRequest(this.ONGOING_PING);\n this._timers.push(JSBNG__setInterval(q.send.bind(q), o));\n }.bind(this), n));\n if (p) {\n this._timers.push(JSBNG__setTimeout(function() {\n this._createRequest(this.DISCOVERY_PING).send();\n }.bind(this), p));\n }\n ;\n ;\n i.onBeforeUnload(this.onBeforeUnload.bind(this));\n },\n catchPageTransition: function(l) {\n this._createRequest(this.ENDING_PING).send();\n this.cleanup();\n },\n onBeforeUnload: function() {\n this._createRequest(this.ENDING_PING).setOption(\"asynchronous\", false).send();\n this.cleanup();\n },\n cleanup: function() {\n if (this._timers) {\n for (var l = 0; ((l < this._timers.length)); l++) {\n JSBNG__clearInterval(this._timers[l]);\n ;\n };\n }\n ;\n ;\n this._timers = [];\n }\n });\n e.exports = k;\n});\n__d(\"legacy:app-tracker\", [\"AppUseTracker\",], function(a, b, c, d) {\n a.AppUseTracker = b(\"AppUseTracker\");\n}, 3);\n__d(\"legacy:fbdesktop-detect\", [\"FBDesktopDetect\",], function(a, b, c, d) {\n a.FbDesktopDetect = b(\"FBDesktopDetect\");\n}, 3);\n__d(\"detect_broken_proxy_cache\", [\"AsyncSignal\",\"Cookie\",\"URI\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncSignal\"), h = b(\"Cookie\"), i = b(\"URI\");\n function j(k, l) {\n var m = h.get(l);\n if (((((((m != k)) && ((m != null)))) && ((k != \"0\"))))) {\n var n = {\n c: \"si_detect_broken_proxy_cache\",\n m: ((((((((l + \" \")) + k)) + \" \")) + m))\n }, o = new i(\"/common/scribe_endpoint.php\").getQualifiedURI().toString();\n new g(o, n).send();\n }\n ;\n ;\n };\n;\n e.exports = j;\n});\n__d(\"legacy:detect-broken-proxy-cache\", [\"detect_broken_proxy_cache\",], function(a, b, c, d) {\n a.detect_broken_proxy_cache = b(\"detect_broken_proxy_cache\");\n}, 3);\n__d(\"IntlUtils\", [\"AsyncRequest\",\"Cookie\",\"goURI\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncRequest\"), h = b(\"Cookie\"), i = b(\"goURI\"), j = {\n setXmode: function(k) {\n (new g()).setURI(\"/ajax/intl/save_xmode.php\").setData({\n xmode: k\n }).setHandler(function() {\n JSBNG__document.JSBNG__location.reload();\n }).send();\n },\n setAmode: function(k) {\n new g().setURI(\"/ajax/intl/save_xmode.php\").setData({\n amode: k,\n app: false\n }).setHandler(function() {\n JSBNG__document.JSBNG__location.reload();\n }).send();\n },\n setLocale: function(k, l, m, n) {\n if (!m) {\n m = k.options[k.selectedIndex].value;\n }\n ;\n ;\n j.saveLocale(m, true, null, l, n);\n },\n saveLocale: function(k, l, m, n, o) {\n new g().setURI(\"/ajax/intl/save_locale.php\").setData({\n aloc: k,\n source: n,\n app_only: o\n }).setHandler(function(p) {\n if (l) {\n JSBNG__document.JSBNG__location.reload();\n }\n else i(m);\n ;\n ;\n }).send();\n },\n setLocaleCookie: function(k, l) {\n h.set(\"locale\", k, ((((7 * 24)) * 3600000)));\n i(l);\n }\n };\n e.exports = j;\n});\n__d(\"legacy:intl-base\", [\"IntlUtils\",], function(a, b, c, d) {\n var e = b(\"IntlUtils\");\n a.intl_set_xmode = e.setXmode;\n a.intl_set_amode = e.setAmode;\n a.intl_set_locale = e.setLocale;\n a.intl_save_locale = e.saveLocale;\n a.intl_set_cookie_locale = e.setLocaleCookie;\n}, 3);\n__d(\"link_rel_preload\", [\"Bootloader\",\"Parent\",], function(a, b, c, d, e, f) {\n var g = b(\"Bootloader\"), h = b(\"Parent\");\n function i() {\n var j = /async(?:-post)?|dialog(?:-pipe|-post)?|theater|toggle/;\n JSBNG__document.documentElement.JSBNG__onmousedown = function(k) {\n k = ((k || window.JSBNG__event));\n var l = ((k.target || k.srcElement)), m = h.byTag(l, \"A\");\n if (!m) {\n return;\n }\n ;\n ;\n var n = m.getAttribute(\"ajaxify\"), o = m.href, p = ((n || o));\n if (((((n && o)) && !(/#$/).test(o)))) {\n var q = ((k.which && ((k.which != 1)))), r = ((((((k.altKey || k.ctrlKey)) || k.metaKey)) || k.shiftKey));\n if (((q || r))) {\n return;\n }\n ;\n ;\n }\n ;\n ;\n var s = ((m.rel && m.rel.match(j)));\n s = ((s && s[0]));\n switch (s) {\n case \"dialog\":\n \n case \"dialog-post\":\n g.loadModules([\"Dialog\",]);\n break;\n case \"dialog-pipe\":\n g.loadModules([\"AjaxPipeRequest\",\"Dialog\",]);\n break;\n case \"async\":\n \n case \"async-post\":\n g.loadModules([\"AsyncRequest\",]);\n break;\n case \"theater\":\n g.loadModules([\"PhotoSnowlift\",], function(t) {\n t.preload(p, m);\n });\n break;\n case \"toggle\":\n g.loadModules([\"Toggler\",]);\n break;\n };\n ;\n return;\n };\n };\n;\n e.exports = i;\n});\n__d(\"legacy:link-rel-preload\", [\"link_rel_preload\",], function(a, b, c, d) {\n a.link_rel_preload = b(\"link_rel_preload\");\n}, 3);\n__d(\"legacy:async\", [\"AsyncRequest\",\"AsyncResponse\",], function(a, b, c, d) {\n a.AsyncRequest = b(\"AsyncRequest\");\n a.AsyncResponse = b(\"AsyncResponse\");\n}, 3);\n__d(\"LoginFormController\", [\"JSBNG__Event\",\"ge\",\"Button\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__Event\"), h = b(\"ge\"), i = b(\"Button\");\n f.init = function(j, k) {\n g.listen(j, \"submit\", function() {\n i.setEnabled(k, false);\n i.setEnabled.curry(k, true).defer(15000);\n });\n var l = h(\"lgnjs\");\n if (l) {\n l.value = parseInt(((JSBNG__Date.now() / 1000)), 10);\n }\n ;\n ;\n };\n});\n__d(\"BanzaiNectar\", [\"Banzai\",], function(a, b, c, d, e, f) {\n var g = b(\"Banzai\");\n function h(j) {\n return {\n log: function(k, l, m) {\n var n = {\n e: l,\n a: m\n };\n g.post(((\"nectar:\" + k)), n, j);\n }\n };\n };\n;\n var i = h();\n i.create = h;\n e.exports = i;\n});\n__d(\"DimensionLogging\", [\"BanzaiNectar\",\"DOMDimensions\",], function(a, b, c, d, e, f) {\n var g = b(\"BanzaiNectar\"), h = b(\"DOMDimensions\"), i = h.getViewportDimensions();\n g.log(\"browser_dimension\", \"homeload\", {\n x: i.width,\n y: i.height,\n sw: window.JSBNG__screen.width,\n sh: window.JSBNG__screen.height,\n aw: window.JSBNG__screen.availWidth,\n ah: window.JSBNG__screen.availHeight,\n at: window.JSBNG__screen.availTop,\n al: window.JSBNG__screen.availLeft\n });\n});\n__d(\"DimensionTracking\", [\"Cookie\",\"DOMDimensions\",\"JSBNG__Event\",\"debounce\",\"isInIframe\",], function(a, b, c, d, e, f) {\n var g = b(\"Cookie\"), h = b(\"DOMDimensions\"), i = b(\"JSBNG__Event\"), j = b(\"debounce\"), k = b(\"isInIframe\");\n function l() {\n var m = h.getViewportDimensions();\n g.set(\"wd\", ((((m.width + \"x\")) + m.height)));\n };\n;\n if (!k()) {\n l.defer(100);\n i.listen(window, \"resize\", j(l, 250));\n i.listen(window, \"JSBNG__focus\", l);\n }\n;\n;\n});\n__d(\"HighContrastMode\", [\"AsyncSignal\",\"Cookie\",\"JSBNG__CSS\",\"DOM\",\"Env\",\"Style\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncSignal\"), h = b(\"Cookie\"), i = b(\"JSBNG__CSS\"), j = b(\"DOM\"), k = b(\"Env\"), l = b(\"Style\"), m = null, n = {\n init: function(o) {\n if (((((m !== null)) && ((o.currentState !== m))))) {\n return;\n }\n ;\n ;\n var p = j.create(\"div\");\n j.appendContent(JSBNG__document.body, p);\n p.style.cssText = ((((((((((((((\"border: 1px solid;\" + \"border-color: red green;\")) + \"position: fixed;\")) + \"height: 5px;\")) + \"top: -999px;\")) + \"background-image: url(\")) + o.spacerImage)) + \");\"));\n var q = l.get(p, \"background-image\"), r = l.get(p, \"border-top-color\"), s = l.get(p, \"border-right-color\"), t = ((((r == s)) || ((q && ((((q == \"none\")) || ((q == \"url(invalid-url:)\")))))))), u = ((t ? \"1\" : \"0\"));\n if (((u !== o.currentState))) {\n i.conditionClass(JSBNG__document.documentElement, \"highContrast\", t);\n if (k.user) {\n h.set(\"highContrastMode\", u);\n if (t) {\n new g(\"/ajax/highcontrast\").send();\n }\n ;\n ;\n }\n ;\n ;\n }\n ;\n ;\n j.remove(p);\n m = u;\n }\n };\n e.exports = n;\n});\nfunction tz_calculate(a) {\n var b = new JSBNG__Date(), c = ((b.getTimezoneOffset() / 30)), d = ((b.getTime() / 1000)), e = Math.round(((((a - d)) / 1800))), f = ((Math.round(((c + e))) % 48));\n if (((f == 0))) {\n return 0;\n }\n else if (((f > 24))) {\n f -= ((Math.ceil(((f / 48))) * 48));\n }\n else if (((f < -28))) {\n f += ((Math.ceil(((f / -48))) * 48));\n }\n \n \n;\n;\n return ((f * 30));\n};\n;\nfunction tz_autoset(a, b, c) {\n if (((!a || ((undefined == b))))) {\n return;\n }\n;\n;\n if (window.tz_autoset.calculated) {\n return;\n }\n;\n;\n window.tz_autoset.calculated = true;\n var d = -tz_calculate(a);\n if (((c || ((d != b))))) {\n var e = \"/ajax/timezone/update.php\";\n new AsyncRequest().setURI(e).setData({\n gmt_off: d,\n is_forced: c\n }).setErrorHandler(emptyFunction).setTransportErrorHandler(emptyFunction).setOption(\"suppressErrorAlerts\", true).send();\n }\n;\n;\n};\n;"); |
| // 18174 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o67,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/yl/r/-vSG_5pzFFr.js",o68); |
| // undefined |
| o67 = null; |
| // undefined |
| o68 = null; |
| // 18225 |
| o2.readyState = 2; |
| // 18223 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o3,o71); |
| // undefined |
| o71 = null; |
| // 18229 |
| o2.readyState = 3; |
| // 18227 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o3,o79); |
| // undefined |
| o79 = null; |
| // 18233 |
| o2.readyState = 4; |
| // undefined |
| o2 = null; |
| // 18275 |
| o196.toString = f81632121_1344; |
| // undefined |
| o196 = null; |
| // 18231 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o3,o83); |
| // undefined |
| o3 = null; |
| // undefined |
| o83 = null; |
| // 18357 |
| JSBNG_Replay.s1406cdb8f82a4497c9e210b291001f76845e62bf_379[0](false); |
| // 18361 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"if (self.CavalryLogger) {\n CavalryLogger.start_js([\"WLpRY\",]);\n}\n;\n__d(\"AsyncDOM\", [\"CSS\",\"DOM\",], function(a, b, c, d, e, f) {\n var g = b(\"CSS\"), h = b(\"DOM\"), i = {\n invoke: function(j, k) {\n for (var l = 0; (l < j.length); ++l) {\n var m = j[l], n = m[0], o = m[1], p = m[2], q = m[3], r = (((p && k)) || null);\n if (o) {\n r = h.scry((r || document.documentElement), o)[0];\n };\n switch (n) {\n case \"eval\":\n (new Function(q)).apply(r);\n break;\n case \"hide\":\n g.hide(r);\n break;\n case \"show\":\n g.show(r);\n break;\n case \"setContent\":\n h.setContent(r, q);\n break;\n case \"appendContent\":\n h.appendContent(r, q);\n break;\n case \"prependContent\":\n h.prependContent(r, q);\n break;\n case \"insertAfter\":\n h.insertAfter(r, q);\n break;\n case \"insertBefore\":\n h.insertBefore(r, q);\n break;\n case \"remove\":\n h.remove(r);\n break;\n case \"replace\":\n h.replace(r, q);\n break;\n default:\n \n };\n };\n }\n };\n e.exports = i;\n});\n__d(\"Live\", [\"Arbiter\",\"AsyncDOM\",\"AsyncSignal\",\"ChannelConstants\",\"DataStore\",\"DOM\",\"ServerJS\",\"createArrayFrom\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncDOM\"), i = b(\"AsyncSignal\"), j = b(\"ChannelConstants\"), k = b(\"DataStore\"), l = b(\"DOM\"), m = b(\"ServerJS\"), n = b(\"createArrayFrom\"), o = b(\"emptyFunction\");\n function p(r, s) {\n s = JSON.parse(JSON.stringify(s));\n new m().setRelativeTo(r).handle(s);\n };\n var q = {\n logAll: false,\n startup: function() {\n q.startup = o;\n g.subscribe(j.getArbiterType(\"live\"), q.handleMessage.bind(q));\n },\n lookupLiveNode: function(r, s) {\n var t = l.scry(document.body, (((\".live_\" + r) + \"_\") + s));\n t.forEach(function(u) {\n if ((k.get(u, \"seqnum\") === undefined)) {\n var v = JSON.parse(u.getAttribute(\"data-live\"));\n k.set(u, \"seqnum\", v.seq);\n }\n ;\n });\n return t;\n },\n handleMessage: function(r, s) {\n var t = s.obj, u = t.fbid, v = t.assoc, w = this.lookupLiveNode(u, v);\n if (!w) {\n return false\n };\n w.forEach(function(x) {\n if (t.expseq) {\n var y = k.get(x, \"seqnum\"), z = k.get(x, \"message_buffer\");\n if ((z === undefined)) {\n z = {\n };\n k.set(x, \"message_buffer\", z);\n }\n ;\n var aa = {\n obj: t\n };\n z[t.expseq] = aa;\n if ((t.expseq != y)) {\n q.log(\"mismatch\", t.fbid, t.expseq, y);\n return false;\n }\n ;\n while (true) {\n y = k.get(x, \"seqnum\");\n var ba = z[y];\n if (ba) {\n h.invoke(ba.obj.updates, x);\n if (ba.obj.js) {\n p(x, ba.obj.js);\n };\n q.log(\"seqmatch\", t.fbid, \"exp\", t.expseq, \"cur\", y);\n delete z[y];\n }\n else break;\n ;\n };\n }\n else {\n h.invoke(t.updates, x);\n if (t.js) {\n p(x, t.js);\n };\n }\n ;\n });\n },\n log: function() {\n if (q.logAll) {\n var r = n(arguments).join(\":\");\n new i(\"/common/scribe_endpoint.php\", {\n c: \"live_sequence\",\n m: r\n }).send();\n }\n ;\n }\n };\n e.exports = q;\n});\n__d(\"legacy:live-js\", [\"Live\",], function(a, b, c, d) {\n a.Live = b(\"Live\");\n}, 3);\n__d(\"PluginLikebox\", [\"AsyncDOM\",\"AsyncRequest\",\"CSS\",\"DOMEvent\",\"DOMEventListener\",\"DOMQuery\",\"PluginLinkshim\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncDOM\"), h = b(\"AsyncRequest\"), i = b(\"CSS\"), j = b(\"DOMEvent\"), k = b(\"DOMEventListener\"), l = b(\"DOMQuery\"), m = b(\"PluginLinkshim\"), n = b(\"copyProperties\");\n function o(p, q) {\n this.stream_id = p;\n this.force_wall = q;\n this.load();\n m.globalizeLegacySymbol();\n k.add(l.find(document.body, \".pluginLikeboxStream\"), \"click\", function(r) {\n var s = new j(r), t = s.target.parentNode;\n if (i.hasClass(t, \"text_exposed_link\")) {\n s.kill();\n i.addClass(l.find(t, \"^.text_exposed_root\"), \"text_exposed\");\n }\n ;\n });\n };\n n(o.prototype, {\n load: function(p) {\n new h().setMethod(\"GET\").setURI(\"/plugins/likebox/stream\").setData({\n id: this.stream_id,\n dom: (p ? \"pluginLikeboxMoreStories\" : \"pluginLikeboxStream\"),\n force_wall: this.force_wall,\n nobootload: 1,\n inlinecss: 1,\n max_timestamp: p\n }).setReadOnly(true).setErrorHandler(function() {\n \n }).setHandler(this.handleResponse.bind(this)).send();\n },\n handleResponse: function(p) {\n if (p.inlinecss) {\n var q = document.createElement(\"style\");\n q.setAttribute(\"type\", \"text/css\");\n document.getElementsByTagName(\"head\")[0].appendChild(q);\n if (q.styleSheet) {\n q.styleSheet.cssText = p.inlinecss;\n }\n else q.appendChild(document.createTextNode(p.inlinecss));\n ;\n }\n ;\n g.invoke(p.domops);\n var r = l.scry(document.body, \"#pluginLikeboxMoreStories a\");\n if (!r.length) {\n return\n };\n r = r[0];\n var s = this;\n k.add(r, \"click\", function(t) {\n new j(t).kill();\n s.load(parseInt(r.getAttribute(\"data-timestamp\"), 10));\n var u = l.find(r.parentNode, \".uiMorePagerLoader\");\n i.addClass(u, \"uiMorePagerPrimary\");\n i.removeClass(u, \"uiMorePagerLoader\");\n i.hide(r);\n });\n }\n });\n e.exports = o;\n});\n__d(\"UFITracking\", [\"Bootloader\",], function(a, b, c, d, e, f) {\n var g = b(\"Bootloader\");\n function h(j) {\n g.loadModules([\"DOM\",\"collectDataAttributes\",], function(k, l) {\n j.forEach(function(m) {\n var n = k.scry(document.body, m);\n if ((!n || n.link_data)) {\n return\n };\n var o = l(n, [\"ft\",]).ft;\n if (Object.keys(o).length) {\n var p = k.create(\"input\", {\n type: \"hidden\",\n name: \"link_data\",\n value: JSON.stringify(o)\n });\n n.appendChild(p);\n }\n ;\n });\n });\n };\n var i = {\n addAllLinkData: function() {\n h([\"form.commentable_item\",]);\n },\n addAllLinkDataForQuestion: function() {\n h([\"form.fbEigenpollForm\",\"form.fbQuestionPollForm\",]);\n }\n };\n e.exports = i;\n});\n__d(\"legacy:ufi-tracking-js\", [\"UFITracking\",], function(a, b, c, d) {\n var e = b(\"UFITracking\");\n a.ufi_add_all_link_data = e.addAllLinkData;\n a.question_add_all_link_data = e.addAllLinkDataForQuestion;\n}, 3);"); |
| // 18362 |
| fpc.call(JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_1[0], o7,"s37c4222111f4c78f605ba919a787a2547370b021"); |
| // undefined |
| o7 = null; |
| // 18363 |
| geval("if (JSBNG__self.CavalryLogger) {\n CavalryLogger.start_js([\"WLpRY\",]);\n}\n;\n;\n__d(\"AsyncDOM\", [\"JSBNG__CSS\",\"DOM\",], function(a, b, c, d, e, f) {\n var g = b(\"JSBNG__CSS\"), h = b(\"DOM\"), i = {\n invoke: function(j, k) {\n for (var l = 0; ((l < j.length)); ++l) {\n var m = j[l], n = m[0], o = m[1], p = m[2], q = m[3], r = ((((p && k)) || null));\n if (o) {\n r = h.scry(((r || JSBNG__document.documentElement)), o)[0];\n }\n ;\n ;\n switch (n) {\n case \"eval\":\n (new Function(q)).apply(r);\n break;\n case \"hide\":\n g.hide(r);\n break;\n case \"show\":\n g.show(r);\n break;\n case \"setContent\":\n h.setContent(r, q);\n break;\n case \"appendContent\":\n h.appendContent(r, q);\n break;\n case \"prependContent\":\n h.prependContent(r, q);\n break;\n case \"insertAfter\":\n h.insertAfter(r, q);\n break;\n case \"insertBefore\":\n h.insertBefore(r, q);\n break;\n case \"remove\":\n h.remove(r);\n break;\n case \"replace\":\n h.replace(r, q);\n break;\n default:\n \n };\n ;\n };\n ;\n }\n };\n e.exports = i;\n});\n__d(\"Live\", [\"Arbiter\",\"AsyncDOM\",\"AsyncSignal\",\"ChannelConstants\",\"DataStore\",\"DOM\",\"ServerJS\",\"createArrayFrom\",\"emptyFunction\",], function(a, b, c, d, e, f) {\n var g = b(\"Arbiter\"), h = b(\"AsyncDOM\"), i = b(\"AsyncSignal\"), j = b(\"ChannelConstants\"), k = b(\"DataStore\"), l = b(\"DOM\"), m = b(\"ServerJS\"), n = b(\"createArrayFrom\"), o = b(\"emptyFunction\");\n function p(r, s) {\n s = JSON.parse(JSON.stringify(s));\n new m().setRelativeTo(r).handle(s);\n };\n;\n var q = {\n logAll: false,\n startup: function() {\n q.startup = o;\n g.subscribe(j.getArbiterType(\"live\"), q.handleMessage.bind(q));\n },\n lookupLiveNode: function(r, s) {\n var t = l.scry(JSBNG__document.body, ((((((\".live_\" + r)) + \"_\")) + s)));\n t.forEach(function(u) {\n if (((k.get(u, \"seqnum\") === undefined))) {\n var v = JSON.parse(u.getAttribute(\"data-live\"));\n k.set(u, \"seqnum\", v.seq);\n }\n ;\n ;\n });\n return t;\n },\n handleMessage: function(r, s) {\n var t = s.obj, u = t.fbid, v = t.assoc, w = this.lookupLiveNode(u, v);\n if (!w) {\n return false;\n }\n ;\n ;\n w.forEach(function(x) {\n if (t.expseq) {\n var y = k.get(x, \"seqnum\"), z = k.get(x, \"message_buffer\");\n if (((z === undefined))) {\n z = {\n };\n k.set(x, \"message_buffer\", z);\n }\n ;\n ;\n var aa = {\n obj: t\n };\n z[t.expseq] = aa;\n if (((t.expseq != y))) {\n q.log(\"mismatch\", t.fbid, t.expseq, y);\n return false;\n }\n ;\n ;\n while (true) {\n y = k.get(x, \"seqnum\");\n var ba = z[y];\n if (ba) {\n h.invoke(ba.obj.updates, x);\n if (ba.obj.js) {\n p(x, ba.obj.js);\n }\n ;\n ;\n q.log(\"seqmatch\", t.fbid, \"exp\", t.expseq, \"cur\", y);\n delete z[y];\n }\n else break;\n ;\n ;\n };\n ;\n }\n else {\n h.invoke(t.updates, x);\n if (t.js) {\n p(x, t.js);\n }\n ;\n ;\n }\n ;\n ;\n });\n },\n log: function() {\n if (q.logAll) {\n var r = n(arguments).join(\":\");\n new i(\"/common/scribe_endpoint.php\", {\n c: \"live_sequence\",\n m: r\n }).send();\n }\n ;\n ;\n }\n };\n e.exports = q;\n});\n__d(\"legacy:live-js\", [\"Live\",], function(a, b, c, d) {\n a.Live = b(\"Live\");\n}, 3);\n__d(\"PluginLikebox\", [\"AsyncDOM\",\"AsyncRequest\",\"JSBNG__CSS\",\"DOMEvent\",\"DOMEventListener\",\"DOMQuery\",\"PluginLinkshim\",\"copyProperties\",], function(a, b, c, d, e, f) {\n var g = b(\"AsyncDOM\"), h = b(\"AsyncRequest\"), i = b(\"JSBNG__CSS\"), j = b(\"DOMEvent\"), k = b(\"DOMEventListener\"), l = b(\"DOMQuery\"), m = b(\"PluginLinkshim\"), n = b(\"copyProperties\");\n function o(p, q) {\n this.stream_id = p;\n this.force_wall = q;\n this.load();\n m.globalizeLegacySymbol();\n k.add(l.JSBNG__find(JSBNG__document.body, \".pluginLikeboxStream\"), \"click\", function(r) {\n var s = new j(r), t = s.target.parentNode;\n if (i.hasClass(t, \"text_exposed_link\")) {\n s.kill();\n i.addClass(l.JSBNG__find(t, \"^.text_exposed_root\"), \"text_exposed\");\n }\n ;\n ;\n });\n };\n;\n n(o.prototype, {\n load: function(p) {\n new h().setMethod(\"GET\").setURI(\"/plugins/likebox/stream\").setData({\n id: this.stream_id,\n dom: ((p ? \"pluginLikeboxMoreStories\" : \"pluginLikeboxStream\")),\n force_wall: this.force_wall,\n nobootload: 1,\n inlinecss: 1,\n max_timestamp: p\n }).setReadOnly(true).setErrorHandler(function() {\n \n }).setHandler(this.handleResponse.bind(this)).send();\n },\n handleResponse: function(p) {\n if (p.inlinecss) {\n var q = JSBNG__document.createElement(\"style\");\n q.setAttribute(\"type\", \"text/css\");\n JSBNG__document.getElementsByTagName(\"head\")[0].appendChild(q);\n if (q.styleSheet) {\n q.styleSheet.cssText = p.inlinecss;\n }\n else q.appendChild(JSBNG__document.createTextNode(p.inlinecss));\n ;\n ;\n }\n ;\n ;\n g.invoke(p.domops);\n var r = l.scry(JSBNG__document.body, \"#pluginLikeboxMoreStories a\");\n if (!r.length) {\n return;\n }\n ;\n ;\n r = r[0];\n var s = this;\n k.add(r, \"click\", function(t) {\n new j(t).kill();\n s.load(parseInt(r.getAttribute(\"data-timestamp\"), 10));\n var u = l.JSBNG__find(r.parentNode, \".uiMorePagerLoader\");\n i.addClass(u, \"uiMorePagerPrimary\");\n i.removeClass(u, \"uiMorePagerLoader\");\n i.hide(r);\n });\n }\n });\n e.exports = o;\n});\n__d(\"UFITracking\", [\"Bootloader\",], function(a, b, c, d, e, f) {\n var g = b(\"Bootloader\");\n function h(j) {\n g.loadModules([\"DOM\",\"collectDataAttributes\",], function(k, l) {\n j.forEach(function(m) {\n var n = k.scry(JSBNG__document.body, m);\n if (((!n || n.link_data))) {\n return;\n }\n ;\n ;\n var o = l(n, [\"ft\",]).ft;\n if (Object.keys(o).length) {\n var p = k.create(\"input\", {\n type: \"hidden\",\n JSBNG__name: \"link_data\",\n value: JSON.stringify(o)\n });\n n.appendChild(p);\n }\n ;\n ;\n });\n });\n };\n;\n var i = {\n addAllLinkData: function() {\n h([\"form.commentable_item\",]);\n },\n addAllLinkDataForQuestion: function() {\n h([\"form.fbEigenpollForm\",\"form.fbQuestionPollForm\",]);\n }\n };\n e.exports = i;\n});\n__d(\"legacy:ufi-tracking-js\", [\"UFITracking\",], function(a, b, c, d) {\n var e = b(\"UFITracking\");\n a.ufi_add_all_link_data = e.addAllLinkData;\n a.question_add_all_link_data = e.addAllLinkDataForQuestion;\n}, 3);"); |
| // 18368 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_199[0](o137,false,"http://jsbngssl.static.xx.fbcdn.net/rsrc.php/v2/y_/r/gen4xnT_5g3.js",o197); |
| // undefined |
| o137 = null; |
| // undefined |
| o197 = null; |
| // 18402 |
| JSBNG_Replay.s1406cdb8f82a4497c9e210b291001f76845e62bf_379[0](false); |
| // 18439 |
| JSBNG_Replay.s1406cdb8f82a4497c9e210b291001f76845e62bf_379[0](false); |
| // 18705 |
| JSBNG_Replay.s1406cdb8f82a4497c9e210b291001f76845e62bf_379[0](false); |
| // 18710 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_404[0](false); |
| // 18736 |
| JSBNG_Replay.s1406cdb8f82a4497c9e210b291001f76845e62bf_379[0](false); |
| // 19726 |
| JSBNG_Replay.s1406cdb8f82a4497c9e210b291001f76845e62bf_379[0](false); |
| // 30138 |
| JSBNG_Replay.s1406cdb8f82a4497c9e210b291001f76845e62bf_379[0](false); |
| // 31139 |
| JSBNG_Replay.s1406cdb8f82a4497c9e210b291001f76845e62bf_379[0](false); |
| // 31706 |
| JSBNG_Replay.s1406cdb8f82a4497c9e210b291001f76845e62bf_379[0](false); |
| // 31724 |
| JSBNG_Replay.s1406cdb8f82a4497c9e210b291001f76845e62bf_379[0](false); |
| // 32400 |
| JSBNG_Replay.s1406cdb8f82a4497c9e210b291001f76845e62bf_379[0](false); |
| // 32409 |
| JSBNG_Replay.s1406cdb8f82a4497c9e210b291001f76845e62bf_379[0](false); |
| // 33351 |
| JSBNG_Replay.s1406cdb8f82a4497c9e210b291001f76845e62bf_379[0](false); |
| // 33964 |
| JSBNG_Replay.s1406cdb8f82a4497c9e210b291001f76845e62bf_379[0](false); |
| // 37874 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o8,o24); |
| // undefined |
| o24 = null; |
| // 37877 |
| JSBNG_Replay.s1406cdb8f82a4497c9e210b291001f76845e62bf_379[0](false); |
| // 41768 |
| o1.readyState = 2; |
| // 41766 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o8,o26); |
| // undefined |
| o26 = null; |
| // 41772 |
| o1.readyState = 3; |
| // 41770 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o8,o29); |
| // undefined |
| o29 = null; |
| // 41774 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o8,o31); |
| // undefined |
| o31 = null; |
| // 41780 |
| o1.readyState = 4; |
| // undefined |
| o1 = null; |
| // 41823 |
| o34.toString = f81632121_1344; |
| // undefined |
| o34 = null; |
| // 41831 |
| o35.hasOwnProperty = f81632121_1662; |
| // undefined |
| o35 = null; |
| // 43290 |
| o16.scrollTop = 386; |
| // undefined |
| o16 = null; |
| // 41778 |
| fpc.call(JSBNG_Replay.s0a1060a4e309eb327794aa50fb03bc4e8e002205_286[0], o8,o32); |
| // undefined |
| o8 = null; |
| // undefined |
| o32 = null; |
| // 43307 |
| JSBNG_Replay.s1406cdb8f82a4497c9e210b291001f76845e62bf_379[0](false); |
| // 46767 |
| JSBNG_Replay.s1406cdb8f82a4497c9e210b291001f76845e62bf_379[0](false); |
| // 48389 |
| fpc.call(JSBNG_Replay.s745724cb144ffb0314d39065d8a453b0cfbd0f73_148[0], o21,"JSBNG__onkeydown",o20); |
| // undefined |
| o20 = null; |
| // 48400 |
| JSBNG_Replay.s1406cdb8f82a4497c9e210b291001f76845e62bf_379[0](false); |
| // 48476 |
| fpc.call(JSBNG_Replay.s745724cb144ffb0314d39065d8a453b0cfbd0f73_148[0], o21,"JSBNG__onkeydown",o28); |
| // undefined |
| o28 = null; |
| // 48564 |
| fpc.call(JSBNG_Replay.s745724cb144ffb0314d39065d8a453b0cfbd0f73_148[0], o21,"JSBNG__onkeydown",o33); |
| // undefined |
| o33 = null; |
| // 48642 |
| fpc.call(JSBNG_Replay.s745724cb144ffb0314d39065d8a453b0cfbd0f73_148[0], o21,"JSBNG__onkeydown",o36); |
| // undefined |
| o36 = null; |
| // 48720 |
| fpc.call(JSBNG_Replay.s745724cb144ffb0314d39065d8a453b0cfbd0f73_148[0], o21,"JSBNG__onkeydown",o39); |
| // undefined |
| o21 = null; |
| // undefined |
| o39 = null; |
| // 48728 |
| JSBNG_Replay.s823dd4ac9f5a8b88b4949da5f69e231f14b053b0_235[0](o42); |
| // undefined |
| o42 = null; |
| // 48747 |
| cb(); return null; } |
| finalize(); })(); |