/*1357656528,173214269*/

if (self.CavalryLogger) { CavalryLogger.start_js(["gHLv0"]); }

/** js/polyfill/Array.js */


/** js/polyfill/Array.prototype.js */


/** js/polyfill/Date.js */


/** js/polyfill/__DEV__.js */






self.__DEV__=self.__DEV__||0;

/** js/polyfill/Function.prototype.js */


/** js/polyfill/Function.prototype-shield.js */

























/** js/polyfill/JSON.js */


/** js/polyfill/JSON-shield.js */


















if(JSON.stringify(["\u2028\u2029"])==='["\u2028\u2029"]')
JSON.stringify=function(a){

var b=/\u2028/g,
c=/\u2029/g;

return function(d,e,f){
var g=a.call(this,d,e,f);
if(g){
if(-1<g.indexOf('\u2028'))
g=g.replace(b,'\\u2028');

if(-1<g.indexOf('\u2029'))
g=g.replace(c,'\\u2029');}


return g;};}

(JSON.stringify);

/** js/polyfill/Object.js */


/** js/polyfill/Object-shield.js */




























/** js/polyfill/Object.prototype.js */


/** js/polyfill/String.prototype.js */


/** js/polyfill/String.prototype.split.js */


/** js/polyfill/TypeChecker.js */












var __t=(function(){
var a=Object.prototype.toString,
b;

function c(f){
var g,
h;
if(f===undefined){
g='undefined';}else
if(f===null){
g='null';}else
if(a.call(f)==='[object Function]'){
g='function';}else{

g=typeof f;

if(g==='object'||g==='function')

if(f.nodeType===1&&typeof f.nodeName==='string'){

g='DOMElement';
h=f.nodeName.toUpperCase();}else{


g=a.call(f).slice(8,-1);
switch(g){
case 'Array':
if(f.length)
h=c(f[0]);


case 'Object':
case 'RegExp':
case 'Date':
g=g.toLowerCase();
break;}}}




return h?
g+'<'+h+'>':
g;}


function d(f,g){

if(/null|undefined/.test(g)&&/\?$/.test(f))
return true;



f=f.replace(/>*$|\?|$/,'<');
g=g.replace(/>*$|$/,'<');
var h=Math.min(f.length,g.length);

return f.substring(0,h)===g.substring(0,h);}


function e(){
var f=Array.prototype.slice.call(arguments),
g=f.length;
while(g--){
var h=f[g][1],
i=c(f[g][0]),
j=f[g][2]||'return value';

if(!d(h,i)){
var k=new TypeError('Type Mismatch for '+j+': expected '+
h+', actual '+i);
if(b){

try{throw k;}catch(
l){


l.framesToPop=f[g][2]?2:1;
b(l);}}else 


throw k;}}





return f[0][0];}

e.setHandler=function(f){
b=f;};

return e;})
();

/** js/polyfill/console.js */


/** js/polyfill/require.js */





(function(a){


if(a.require)
return;


var b=Object.prototype.toString,













c={},






d={},



e={},

f=0,

g=1,
h=2,

i=Object.prototype.hasOwnProperty;

















































































































function j(s){
if(a.ErrorUtils&&!a.ErrorUtils.inGuard())
return ErrorUtils.applyWithGuard(j,this,arguments);


var t=c[s],
u,v,w;

if(!c[s]){
w='Requiring unknown module "'+s+'"';



throw new Error(w);}


if(t.hasError)
throw new Error
('Requiring module "'+s+'" which threw an exception');


if(t.waiting){
w='Requiring module "'+s+'" with unresolved dependencies';














throw new Error(w);}


if(!t.exports){
var x=t.exports={},
y=t.factory;
if(typeof y==='string'){
var z='('+y+')';



y=eval.apply(a,[z]);}


if(b.call(y)==='[object Function]'){

var aa=[],
ba=t.dependencies,
ca=ba.length,
da;
if(t.special&h)
ca=Math.min(ca,y.length);


try{for(v=0;v<ca;v++){
u=ba[v];
aa.push(u==='module'?t:
(u==='exports'?x:j(u)));}

da=y.apply(t.context||a,aa);}catch(
ea){
t.hasError=true;
throw ea;}

if(da)








t.exports=da;}else 


t.exports=y;}





if(t.refcount--===1)
delete c[s];


return t.exports;}

























































function k(s,t,u,v,w,x){
if(t===undefined){
t=[];
u=s;
s=m();}else
if(u===undefined){
u=t;
if(b.call(s)==='[object Array]'){
t=s;
s=m();}else 

t=[];}



var y=c[s];






if(y){
if(x)
y.refcount+=x;


return;}else
if(!t&&!u&&x){


e[s]=(e[s]||0)+x;
return;}else{


y={id:s};
y.refcount=(e[s]||0)+(x||0);
delete e[s];}



















y.factory=u;
y.dependencies=t;
y.context=w;
y.special=v;
y.waitingMap={};
y.waiting=0;
y.hasError=false;
c[s]=y;
o(s);}









































function l(s,t,u){
k(s,t,undefined,g,u,1);}


function m(){
return '__mod__'+f++;}


function n(s,t){

if(!s.waitingMap[t]&&s.id!==t){
s.waiting++;
s.waitingMap[t]=1;
d[t]||(d[t]={});
d[t][s.id]=1;}}



function o(s){
var t=[],
u=c[s],
v,w,x;


for(w=0;w<u.dependencies.length;w++){
v=u.dependencies[w];
if(!c[v]){
n(u,v);}else
if(c[v].waiting)
for(x in c[v].waitingMap)
if(c[v].waitingMap[x])
n(u,x);}




if(u.waiting===0&&u.special&g)
t.push(s);



if(d[s]){
var y=d[s],
z;
d[s]=undefined;
for(v in y){
z=c[v];

for(x in u.waitingMap)
if(u.waitingMap[x])
n(z,x);



if(z.waitingMap[s]){
z.waitingMap[s]=undefined;
z.waiting--;}

if(z.waiting===0&&
z.special&g)
t.push(v);}}





for(w=0;w<t.length;w++)
j(t[w]);}



function p(s,t){
c[s]={id:s};
c[s].exports=t;}




p('module',0);
p('exports',0);

p('define',k);
p('global',a);
p('require',j);
p('requireDynamic',j);
p('requireLazy',l);

k.amd={};

a.define=k;
a.require=j;
a.requireDynamic=j;
a.requireLazy=l;

j.__debug={modules:c,deps:d};

var q=false,


r=function(s,t,u,v){
k(s,t,u,v||h);};








a.__d=function(s,t,u,v){
t=['global','require','requireDynamic','requireLazy','module',
'exports'].concat(t);
r(s,t,u,v);};



a.__e=a.__d;})

(this);

/** js/modules/core/copyProperties.js */
__d("copyProperties",[],function(a,b,c,d,e,f){










function g(h,i,j,k,l,m,n){
h=h||{};







var o=[i,j,k,l,m],
p=0,q;
while(o[p]){
q=o[p++];
for(var r in q)
h[r]=q[r];




if(q.hasOwnProperty&&q.hasOwnProperty('toString')&&
(typeof q.toString!='undefined')&&(h.toString!==q.toString))
h.toString=q.toString;}



return h;}


e.exports=g;});

/** js/modules/Env.js */
__d("Env",["copyProperties"],function(a,b,c,d,e,f){



var g=b('copyProperties'),

h=
{start:Date.now()};




if(a.Env){
g(h,a.Env);




a.Env=undefined;}


e.exports=h;});

/** js/lib/util/env.js */
__d("legacy:env",["Env"],function(a,b,c,d){



var e=b('Env');

a.Env=e;},

3);

/** js/lib/init.js */









function bagof(a){
return function(){
return a;};}





if(typeof Env=='undefined'||!Env.allowArrayReduce){
Array.prototype.reduce=null;
Array.prototype.reduceRight=null;}



document.documentElement.className=
document.documentElement.className.replace('no_js','');

/** js/chat/sidebar/SidebarPrelude.js */
__d("SidebarPrelude",[],function(a,b,c,d,e,f){



var g=
{addSidebarMode:function(h){


var i=document.documentElement;
if(i.clientWidth>h)
i.className=i.className+' sidebarMode';}};




e.exports=g;});

/** js/modules/ErrorUtils.js */
__d("ErrorUtils",["Env"],function(a,b,c,d,e,f){





var g=b('Env'),


h=[],


i=[],
j=10,


k=window.chrome&&'type' in new Error(),

l=
/^(\s+at\s)?((\w+)?.*)(\(|@)?.*(https?:[^:]*)(:(\d+))?(:(\d+))?/mg;





function m(y){
if(!y)
return;

y=y.split(/\n\n/)[0];
l.lastIndex=0;
var z=[],
aa;
while(aa=l.exec(y))
z.push('    at '+(aa[3]||'')+
(aa[3]?'(':'')+
aa[5]+':'+aa[7]+
(aa[9]?':'+aa[9]:'')+
(aa[3]?')':''));

return z.length?
z.join('\n'):
y;}









function n(y){
if(!y){
return {};}else
if(y._originalError)
return y;


var z=
{line:y.lineNumber||y.line,
message:y.message,
name:y.name,
script:y.fileName||y.sourceURL||y.script,
stack:m(y.stackTrace||y.stack)};



z._originalError=y;

if(y.framesToPop){
var aa=z.stack.split('\n');
aa.splice(0,y.framesToPop);
z.stack=aa.join('\n');
if(/(\w{3,5}:\/\/[^:]+):(\d+)/.test(aa[0])){
z.script=RegExp.$1;
z.line=parseInt(RegExp.$2,10);}}







if(k&&/(\w{3,5}:\/\/[^:]+):(\d+)/.test(y.stack)){
z.script=RegExp.$1;
z.line=parseInt(RegExp.$2,10);}



for(var ba in z)
(z[ba]==null&&delete z[ba]);

return z;}










function o(){

try{throw new Error();}catch(
y){
var z=n(y).stack;
return z&&z.replace(/[\s\S]*__getTrace__.*\n/,'');}}







function p(y,z){
y=n(y);
!z;







if(i.length<j)
i.push(y);


for(var aa=0;aa<h.length;aa++)

try{h[aa](y);}catch(
ba){
}}





var q=false;
function r(){return q;}


function s(){q=false;}











function t(y,z,aa,ba){

var ca=!q;

if(ca)
q=true;




try{var ea=y.apply(z,aa||[]);
if(ca)s();
return ea;}catch(
da){
if(ca)s();

var fa=n(da);
if(ba)
ba(fa);



if(y)
fa.callee=y.toString().substring(0,100);

if(aa)
fa.args=String(aa).substring(0,100);


var ga=g.nocatch||(/nocatch/).test(location.search);












p(fa,ga);

if(ga)
throw da;}}







function u(y){
function z(){
return t(y,this,arguments);}






return z;}





function v(y,z,aa){
p
({message:y,
script:z,
line:aa},
true);}

window.onerror=v;









function w(y,z){
h.push(y);

if(!z)
i.forEach(y);}



var x=
{addListener:w,
applyWithGuard:t,
getTrace:o,
guard:u,
history:i,
inGuard:r,
normalizeError:n,
onerror:v,
reportError:p};


e.exports=a.ErrorUtils=x;






































if(typeof __t!=='undefined')
__t.setHandler(p);});

/** js/modules/core/hasArrayNature.js */
__d("hasArrayNature",[],function(a,b,c,d,e,f){
















function g(h){


return (!!h&&

(typeof h=='object'||typeof h=='function')&&

('length' in h)&&

!('setInterval' in h)&&


(Object.prototype.toString.call(h)==="[object Array]"||

('callee' in h)||

('item' in h)));}




e.exports=g;});

/** js/modules/core/createArrayFrom.js */
__d("createArrayFrom",["hasArrayNature"],function(a,b,c,d,e,f){



var g=b('hasArrayNature');




















function h(i){
if(!g(i))
return [i];

if(i.item){

var j=i.length,k=new Array(j);
while(j--)k[j]=i[j];
return k;}

return Array.prototype.slice.call(i);}


e.exports=h;});

/** js/modules/Arbiter.js */
__d("Arbiter",["ErrorUtils","copyProperties","createArrayFrom","hasArrayNature"],function(a,b,c,d,e,f){



var g=b('ErrorUtils'),

h=b('copyProperties'),
i=b('createArrayFrom'),
j=b('hasArrayNature');



















if(!window.async_callback)













window.async_callback=function(m,n){
return m;};



function k(){
h(this,
{_listeners:[],
_events:{},
_callbacks:{},
_last_id:1,
_listen:{},
_index:{}});

h(this,k);}


h(k,

{SUBSCRIBE_NEW:'new',
SUBSCRIBE_ALL:'all',

BEHAVIOR_EVENT:'event',
BEHAVIOR_PERSISTENT:'persistent',
BEHAVIOR_STATE:'state',

LIVEMESSAGE:'livemessage',
BOOTLOAD:'bootload',
FUNCTION_EXTENSION:'function_ext',

















subscribe:function(m,n,o){
m=i(m);


var p=m.some(function(x){
return !x||typeof(x)!='string';});

if(p)



return null;


o=o||k.SUBSCRIBE_ALL;










var q=k._getInstance(this);


q._listeners.push({callback:n,types:m});


var r=q._listeners.length-1;
for(var s=0;s<m.length;s++){
var t=m[s];

if(!q._index[t])
q._index[t]=[];

q._index[t].push(r);

if(o==k.SUBSCRIBE_ALL)
if(t in q._events)
for(var u=0;u<q._events[t].length;u++){
var v=q._events[t][u],
w=g.applyWithGuard(n,null,[t,v]);
if(w===false){
q._events[t].splice(u,1);
u--;}}}






return new l(q,r);},









unsubscribe:function(m){













m.unsubscribe();},
























inform:g.guard(function(m,n,o){
var p=j(m);
m=i(m);
var q=k._getInstance(this),
r={};

o=o||k.BEHAVIOR_EVENT;
for(var s=0;s<m.length;s++){
var t=m[s],u=null;







if(o==k.BEHAVIOR_PERSISTENT){
u=q._events.length;
if(!(t in q._events))
q._events[t]=[];

q._events[t].push(n);
q._events[t]._stateful=false;}else
if(o==k.BEHAVIOR_STATE){
u=0;
q._events[t]=[n];
q._events[t]._stateful=true;}else
if(t in q._events)
q._events[t]._stateful=false;



a.ArbiterMonitor&&
a.ArbiterMonitor.record('event',t,n,q);
var v;
if(q._index[t]){
var w=i(q._index[t]);
for(var x=0;x<w.length;x++){
var y=q._listeners[w[x]];
if(y){
v=g.applyWithGuard(y.callback,null,[t,n]);
if(v===false){
if(u!==null)
q._events[t].splice(u,1);

break;}}}}





q._updateCallbacks(t,n);


a.ArbiterMonitor&&a.ArbiterMonitor.record('done',t,n,q);

r[t]=v;}


return p?r:r[m[0]];}),












query:function(m){
var n=k._getInstance(this);
if(!(m in n._events))
return null;








if(n._events[m].length)
return n._events[m][0];


return null;},





_instance:null,











_getInstance:function(m){
if(m instanceof k)
return m;


if(!k._instance)
k._instance=new k();


return k._instance;},




















registerCallback:function(m,n){
var o,p=0,q=k._getInstance(this),r=false;
if(typeof m=='function'){

o=q._last_id;
q._last_id++;
r=true;}else{

if(!q._callbacks[m])
return null;


o=m;}


if(j(n)){
var s={};
for(var t=0;t<n.length;t++)
s[n[t]]=1;

n=s;}


for(var u in n){

try{if(q.query(u))
continue;}catch(

v){

}
p+=n[u];
if(q._listen[u]===undefined)
q._listen[u]={};

q._listen[u][o]=(q._listen[u][o]||0)+n[u];}


if(p===0&&r){
g.applyWithGuard(m);
return null;}


if(!r){
q._callbacks[o].depnum+=p;}else 

q._callbacks[o]=
{callback:window.async_callback(m,'arbiter'),
depnum:p};


return o;},





_updateCallbacks:function(m,n){
if(n===null||!this._listen[m])
return;


for(var o in this._listen[m]){
this._listen[m][o]--;
if(this._listen[m][o]<=0)
delete this._listen[m][o];


this._callbacks[o].depnum--;
if(this._callbacks[o].depnum<=0){
var p=this._callbacks[o].callback;
delete this._callbacks[o];
g.applyWithGuard(p);}}}});









function l(m,n){
this._instance=m;
this._id=n;}


h(l.prototype,

{unsubscribe:function(){
var m=this._instance._listeners,
n=m[this._id];

if(!n)
return;


for(var o=0;o<n.types.length;o++){
var p=n.types[o],
q=this._instance._index[p];
if(q)
for(var r=0;r<q.length;r++)
if(q[r]==this._id){
q.splice(r,1);
if(q.length===0)

delete q[p];

break;}}




delete m[this._id];}});




e.exports=k;});

/** js/modules/ArbiterMixin.js */
__d("ArbiterMixin",["Arbiter"],function(a,b,c,d,e,f){



var g=b('Arbiter'),





h=




{_getArbiterInstance:function(){
return this._arbiter||(this._arbiter=new g());},


inform:function(i,j,k){
return this._getArbiterInstance().inform(i,j,k);},


subscribe:function(i,j,k){
return this._getArbiterInstance().subscribe(i,j,k);},


unsubscribe:function(i){
this._getArbiterInstance().unsubscribe(i);},


registerCallback:function(i,j){
this._getArbiterInstance().registerCallback(i,j);}};




e.exports=h;});

/** js/deprecated/ArbiterMixin-legacy.js */
__d("legacy:ArbiterMixin",["ArbiterMixin"],function(a,b,c,d){



a.ArbiterMixin=b('ArbiterMixin');},

3);

/** js/modules/core/emptyFunction.js */
__d("emptyFunction",["copyProperties"],function(a,b,c,d,e,f){



var g=b('copyProperties');

function h(j){
return function(){
return j;};}








function i(){}

g(i,
{thatReturns:h,
thatReturnsFalse:h(false),
thatReturnsTrue:h(true),
thatReturnsNull:h(null),
thatReturnsThis:function(){return this;},
thatReturnsArgument:function(j){return j;}});


e.exports=i;});

/** js/emptyFunction.js */
__d("legacy:emptyFunction",["emptyFunction"],function(a,b,c,d){



a.emptyFunction=b('emptyFunction');},

3);

/** js/lib/type/function.js */
__d("function-extensions",["createArrayFrom"],function(a,b,c,d,e,f){




var g=b('createArrayFrom');




Function.prototype.curry=function(){
var h=g(arguments);
return this.bind.apply(this,[null].concat(h));};













































Function.prototype.shield=function(h){
if(typeof this!='function')
throw new TypeError();


var i=this.bind.apply(this,g(arguments));
return function(){
return i();};};




















Function.prototype.defer=function(h,i){
if(typeof this!='function')
throw new TypeError();

h=h||0;


return setTimeout(this,h,i);};},









3);

/** js/modules/core/isEmpty.js */
__d("isEmpty",[],function(a,b,c,d,e,f){






function g(h){
if(h instanceof Array){
return h.length===0;}else
if(h instanceof Object){
for(var i in h)
return false;

return true;}else 

return !h;}



e.exports=g;});

/** js/modules/CSSLoader.js */
__d("CSSLoader",["isEmpty"],function(a,b,c,d,e,f){



var g=b('isEmpty'),








h=20,
i=5000,

j,
k,




l={},

m=[],

n,
o={};







function p(t){
if(k)
return;

k=true;

var u=document.createElement('link');
u.onload=function(){
j=true;
u.parentNode.removeChild(u);};

u.rel='stylesheet';
u.href='data:text/css;base64,';
t.appendChild(u);}






function q(){
var t,
u=[],
v=[];

if(Date.now()>=n){
for(t in o){
v.push(o[t].signal);
u.push(o[t].error);}

o={};}else 

for(t in o){
var w=o[t].signal,
x=window.getComputedStyle?
getComputedStyle(w,null):
w.currentStyle;
if(x&&parseInt(x.height,10)>1){
u.push(o[t].load);
v.push(w);
delete o[t];}}




for(var y=0;y<v.length;y++)
v[y].parentNode.removeChild(v[y]);


if(!g(u)){
for(y=0;y<u.length;y++)
u[y]();

n=Date.now()+i;}


return g(o);}








function r(t,u,v,w){


var x=document.createElement('meta');
x.id='bootloader_'+t.replace(/[^a-z0-9]/ig,'_');
u.appendChild(x);

var y=!g(o);
n=Date.now()+i;
o[t]={signal:x,load:v,error:w};
if(!y)
var z=setInterval(function aa(){
if(q())
clearInterval(z);},

h,false);}



var s=











{loadStyleSheet:function(t,u,v,w,x){
if(l[t])
throw new Error('CSS component '+t+' has already been requested.');


if(document.createStyleSheet){


var y;
for(var z=0;z<m.length;z++)
if(m[z].imports.length<31){
y=z;
break;}


if(y===undefined){
m.push(document.createStyleSheet());
y=m.length-1;}

m[y].addImport(u);
l[t]=
{styleSheet:m[y],
uri:u};

r(t,v,w,x);
return;}


var aa=document.createElement('link');
aa.rel='stylesheet';
aa.type='text/css';
aa.href=u;
l[t]={link:aa};

if(j){
aa.onload=function(){
aa.onload=aa.onerror=null;
w();};

aa.onerror=function(){
aa.onload=aa.onerror=null;
x();};}else{



r(t,v,w,x);
if(j===undefined)
p(v);}


v.appendChild(aa);},









registerLoadedStyleSheet:function(t,u){
if(l[t])
throw new Error
('CSS component '+t+' has been requested and should not be '+
'loaded more than once.');

l[t]={link:u};},







unloadStyleSheet:function(t){
if(!t in l)
return;

var u=l[t],
v=u.link;
if(v){
v.onload=v.onerror=null;
v.parentNode.removeChild(v);}else{



var w=u.styleSheet;
for(var x=0;x<w.imports.length;x++)
if(w.imports[x].href==u.uri){
w.removeImport(x);
break;}}



delete o[t];
delete l[t];}};



e.exports=s;});

/** js/modules/Bootloader.js */
__d("Bootloader",["function-extensions","Arbiter","CSSLoader","Env","createArrayFrom"],function(a,b,c,d,e,f){






b('function-extensions');

var g=b('Arbiter'),
h=b('CSSLoader'),
i=b('Env'),

j=b('createArrayFrom'),

k={},
l={},
m={},

n=null,
o={},
p={},

q=false,
r=[];




function s(w,x,y,z){






var aa=v.done.curry([y],w=='css');
if(w=='js'){
var ba=document.createElement('script');
ba.src=x;
ba.async=true;
var ca=o[y];
if(ca&&ca.crossOrigin&&i.crossorigin_attribute)
ba.crossOrigin='anonymous';

ba.onload=ba.onerror=aa;
ba.onreadystatechange=function(){
if(this.readyState in {loaded:1,complete:1})
aa();};


z.appendChild(ba);}else
if(w=='css')
h.loadStyleSheet(y,x,z,aa,function(){









aa();});}




function t(w){
if(!o[w])
return;

if(o[w].type=='css'){
h.unloadStyleSheet(w);
delete k[w];
g.inform(g.BOOTLOAD+'/'+w,null,g.BEHAVIOR_STATE);}}



function u(w,x){



if(!q){
r.push([w,x]);
return;}


w=j(w);
var y=[];
for(var z=0;z<w.length;++z){
if(!w[z])
continue;


var aa=m[w[z]];
if(aa){
var ba=aa.resources;


for(var ca=0;ca<ba.length;++ca)
y.push(ba[ca]);}}







v.loadResources(y,x);}








var v=

{configurePage:function(w){
var x={},
y=v.resolveResources(w),
z;

for(z=0;z<y.length;z++){
x[y[z].src]=y[z];
v.requested(y[z].name);}




var aa=document.getElementsByTagName('link');
for(z=0;z<aa.length;++z){
if(aa[z].rel!='stylesheet')
continue;


for(var ba in x)



if(aa[z].href.indexOf(ba)!==-1){
var ca=x[ba].name;
if(x[ba].permanent)
l[ca]=true;

delete x[ba];
h.registerLoadedStyleSheet(ca,aa[z]);
v.done([ca],true);
break;}}},
























loadComponents:function(w,x){
w=j(w);
var y=[],
z=[];
for(var aa=0;aa<w.length;aa++){
var ba=m[w[aa]];
if(ba&&!ba.module)
continue;

var ca='legacy:'+w[aa];
if(m[ca]){
w[aa]=ca;
y.push(ca);}else
if(ba&&ba.module){
y.push(w[aa]);
if(!ba.runWhenReady)
z.push(w[aa]);}}













u
(w,
y.length?d.curry(y,x):x);},














loadModules:function(w,x){
var y=[],
z=[];
for(var aa=0;aa<w.length;aa++){
var ba=m[w[aa]];
if(!ba||ba.module)
y.push(w[aa]);}




















u(w,d.curry(y,x));},















loadResources:function(w,x,y,z){
var aa;
w=v.resolveResources(j(w));
if(y){
var ba={};

for(aa=0;aa<w.length;++aa)
ba[w[aa].name]=true;


for(var ca in k)
if(!(ca in l)&&!(ca in ba)&&
!(ca in p))
t(ca);



p={};}

var da=[],
ea=[];
for(aa=0;aa<w.length;++aa){
var fa=w[aa];

if(fa.permanent)
l[fa.name]=true;


var ga=g.BOOTLOAD+'/'+fa.name;
if(g.query(ga)!==null)
continue;


if(!fa.nonblocking)
ea.push(ga);


if(!k[fa.name]){
v.requested(fa.name);
da.push(fa);
window.CavalryLogger&&
window.CavalryLogger.getInstance().measureResources(fa,z);}}



if(x)
x=g.registerCallback(x,ea);




var ha=document.documentMode||
+(/MSIE.(\d+)/.exec(navigator.userAgent)||[])[1],
ia=v.getHardpoint(),
ja=ha?ia:document.createDocumentFragment();

for(aa=0;aa<da.length;++aa)
s
(da[aa].type,
da[aa].src,
da[aa].name,
ja);

if(ia!==ja)
ia.appendChild(ja);

return x;},




















requestResource:function(w,x,y){
var z=v.getHardpoint();
s(w,x,y,z);},















done:function(w,x){







v.requested(w);

if(!x){


var y=
{sender:this};

g.inform(g.BOOTLOAD,y,g.BEHAVIOR_EVENT);}





for(var z=0;z<w.length;++z){
var aa=w[z];
g.inform(g.BOOTLOAD+'/'+aa,
true,
g.BEHAVIOR_STATE);}},











requested:function(w){
w=j(w);
for(var x=0;x<w.length;++x)
k[w[x]]=true;},












enableBootload:function(w){
for(var x in w)






if(!m[x])
m[x]=w[x];









if(!q){
q=true;
for(var y=0;y<r.length;y++)
u.apply(null,r[y]);

r=[];}},



getHardpoint:function(){
if(!n){
var w=document.getElementsByTagName('head');
n=w.length&&w[0]||document.body;}

return n;},







setResourceMap:function(w){
if(!w)
return;








var x=[];
for(var y in w)
if(!o[y]){




if(!w[y].name)
w[y].name=y;

o[y]=w[y];
if(o[y].preloadable)
x.push(o[y]);}



v.loadResources(x);},


resolveResources:function(w){
if(!w)
return [];

var x=[];
for(var y=0;y<w.length;++y)
if(typeof w[y]=='string'){
if(w[y] in o)
x.push(o[w[y]]);}else 










x.push(w[y]);


return x;},








loadEarlyResources:function(w){






v.setResourceMap(w);

var x=[];
for(var y in w){
var z=o[y];
x.push(z);
if(!z.permanent)
p[z.name]=z;}


v.loadResources(x);}};



e.exports=v;});

/** js/modules/core/ge.js */
__d("ge",[],function(a,b,c,d,e,f){












function g(j,k,l){
return typeof j!='string'?j:
!k?document.getElementById(j):
h(j,k,l);}


function h(j,k,l){
var m,n,o;

if(i(k)==j){
return k;}else
if(k.getElementsByTagName){


n=k.getElementsByTagName(l||'*');
for(o=0;o<n.length;o++)
if(i(n[o])==j)
return n[o];}else{






n=k.childNodes;
for(o=0;o<n.length;o++){
m=h(j,n[o]);
if(m)
return m;}}




return null;}








function i(j){

var k=j.getAttributeNode&&j.getAttributeNode('id');
return k?k.value:null;}


e.exports=g;});

/** js/modules/core/$.js */
__d("$",["ge"],function(a,b,c,d,e,f){



var g=b('ge');










function h(i){
var j=g(i);













return j;}


e.exports=h;});

/** js/modules/CSS.js */
__d("CSS",["$"],function(a,b,c,d,e,f){



var g=b('$'),

h='hidden_elem',

i=








{setClass:function(j,k){
g(j).className=k||'';
return j;},









hasClass:function(j,k){






j=g(j);
if(j.classList)
return !!k&&j.classList.contains(k);

return (' '+j.className+' ').indexOf(' '+k+' ')>-1;},









addClass:function(j,k){






j=g(j);
if(k)
if(j.classList){
j.classList.add(k);}else
if(!i.hasClass(j,k))
j.className=j.className+' '+k;


return j;},









removeClass:function(j,k){






j=g(j);
if(k)
if(j.classList){
j.classList.remove(k);}else
if(i.hasClass(j,k))
j.className=j.className.
replace(new RegExp('(^|\\s)'+k+'(?:\\s|$)','g'),'$1').
replace(/\s+/g,' ').
replace(/^\s*|\s*$/g,'');


return j;},










conditionClass:function(j,k,l){
return (l?i.addClass:i.removeClass)(j,k);},










toggleClass:function(j,k){
return i.conditionClass(j,k,!i.hasClass(j,k));},









shown:function(j){
return !i.hasClass(j,h);},







hide:function(j){
return i.addClass(j,h);},







show:function(j){
return i.removeClass(j,h);},







toggle:function(j){
return i.toggleClass(j,h);},








conditionShow:function(j,k){
return i.conditionClass(j,h,!k);}};




e.exports=i;});

/** js/fbx/BlueBarController.js */
__d("BlueBarController",["Bootloader","CSS"],function(a,b,c,d,e,f){



var g=b('Bootloader'),
h=b('CSS');

f.init=function(i){
if('getBoundingClientRect' in i){
var j=function(){
var k=i.getBoundingClientRect(),
l=Math.round(k.top)-document.documentElement.clientTop;
h.conditionClass(i.firstChild,'fixed_elem',l<=0);};


j();
g.loadModules(['Event'],function(k){
k.listen(window,'scroll',j);});}};});

/** js/lib/dom/css_core.js */
__d("legacy:css-core",["CSS"],function(a,b,c,d){



a.CSS=b('CSS');},

3);

/** js/lib/dom/dom_core.js */
__d("legacy:dom-core",["$","ge"],function(a,b,c,d){



a.$=b('$');
a.ge=b('ge');},

3);

/** js/modules/Parent.js */
__d("Parent",["CSS"],function(a,b,c,d,e,f){



var g=b('CSS'),

h=





{byTag:function(i,j){
j=j.toUpperCase();
while(i&&i.nodeName!=j)
i=i.parentNode;

return i;},






byClass:function(i,j){
while(i&&!g.hasClass(i,j))
i=i.parentNode;

return i;},






byAttribute:function(i,j){
while(i&&(!i.getAttribute||!i.getAttribute(j)))
i=i.parentNode;

return i;}};




e.exports=h;});

/** js/lib/dom/parent.js */
__d("legacy:parent",["Parent"],function(a,b,c,d){



a.Parent=b('Parent');},

3);

/** js/lib/event/arbiter.js */
__d("legacy:arbiter",["Arbiter"],function(a,b,c,d){



a.Arbiter=b('Arbiter');},

3);

/** js/lib/event/form_bubbling.js */
__d("event-form-bubbling",[],function(a,b,c,d,e,f){




a.Event=a.Event||function(){};














a.Event.__inlineSubmit=function(g,event){
var h=
(a.Event.__getHandler&&
a.Event.__getHandler(g,'submit'));

return h?null:a.Event.__bubbleSubmit(g,event);};








a.Event.__bubbleSubmit=function(g,event){
if(document.documentElement.attachEvent){
var h;
while(h!==false&&(g=g.parentNode))
h=g.onsubmit?
g.onsubmit(event):
a.Event.__fire&&a.Event.__fire(g,'submit',event);

return h;}};},



3);

/** js/modules/OnloadEvent.js */
__d("OnloadEvent",[],function(a,b,c,d,e,f){



var g=
{ONLOAD:'onload/onload',
ONLOAD_CALLBACK:'onload/onload_callback',
ONLOAD_DOMCONTENT:'onload/dom_content_ready',
ONLOAD_DOMCONTENT_CALLBACK:'onload/domcontent_callback',
ONBEFOREUNLOAD:'onload/beforeunload',
ONUNLOAD:'onload/unload'};


e.exports=g;});

/** js/modules/Run.js */
__d("Run",["Arbiter","OnloadEvent"],function(a,b,c,d,e,f){



var g=b('Arbiter'),
h=b('OnloadEvent'),

i=g.BEHAVIOR_STATE;
function j(x){
var y=a.CavalryLogger;
y&&y.getInstance().setTimeStamp(x);}














function k(){
return !window.loading_page_chrome;}
























function l(x){
var y=a.OnloadHooks;
if(window.loaded&&y){
y.runHook(x,'onlateloadhooks');}else 

q('onloadhooks',x);}












function m(x){
var y=a.OnloadHooks;
if(window.afterloaded&&y){
setTimeout(function(){
y.runHook(x,'onlateafterloadhooks');},
0);}else 

q('onafterloadhooks',x);}































function n(x,y){
if(y===undefined)
y=k();

y?
q('onbeforeleavehooks',x):
q('onbeforeunloadhooks',x);}








function o(x){



if(!window.onunload)
window.onunload=function(){
g.inform(h.ONUNLOAD,true,i);};


q('onunloadhooks',x);}






function p(x){
q('onleavehooks',x);}


function q(x,y){
window[x]=(window[x]||[]).concat(y);}


function r(x){
window[x]=[];}




function s(){
g.inform(h.ONLOAD_DOMCONTENT,true,i);}

a._domcontentready=s;








function t(){
var x=document,y=window;
if(x.addEventListener){
var z=/AppleWebKit.(\d+)/.exec(navigator.userAgent);
if(z&&z[1]<525){
var aa=setInterval(function(){
if(/loaded|complete/.test(x.readyState)){
s();
clearInterval(aa);}},

10);}else 

x.addEventListener("DOMContentLoaded",s,true);}else{


var ba='javascript:void(0)';
if(y.location.protocol=='https:')


ba='//:';






x.write
('<script onreadystatechange="if (this.readyState==\'complete\') {'+
'this.parentNode.removeChild(this);_domcontentready();}" '+
'defer="defer" src="'+ba+'"><\/script\>');}



var ca=y.onload;
y.onload=function(){
j('t_layout');
ca&&ca();
g.inform(h.ONLOAD,true,i);};


y.onbeforeunload=function(){
var da={};
g.inform(h.ONBEFOREUNLOAD,da,i);






if(!da.warn)
g.inform('onload/exit',true);

return da.warn;};}



var u=g.registerCallback(function(){
j('t_onload');
g.inform(h.ONLOAD_CALLBACK,true,i);},
[h.ONLOAD]),

v=g.registerCallback(function(){
j('t_domcontent');



var x={timeTriggered:Date.now()};
g.inform(h.ONLOAD_DOMCONTENT_CALLBACK,x,i);},
[h.ONLOAD_DOMCONTENT]);

t();

var w=
{onLoad:l,
onAfterLoad:m,
onLeave:p,
onBeforeUnload:n,
onUnload:o,

__domContentCallback:v,
__onloadCallback:u,

__removeHook:r};


e.exports=w;});

/** js/lib/event/onload.js */
__d("legacy:onload",["Run","OnloadEvent"],function(a,b,c,d){



var e=b('Run');

a.OnloadEvent=b('OnloadEvent');

a.onloadRegister_DEPRECATED=e.onLoad;
a.onloadRegister=function(){






return e.onLoad.apply(this,arguments);};


a.onafterloadRegister_DEPRECATED=e.onAfterLoad;
a.onafterloadRegister=function(){






return e.onAfterLoad.apply(this,arguments);};


a.onleaveRegister=e.onLeave;
a.onbeforeunloadRegister=e.onBeforeUnload;
a.onunloadRegister=e.onUnload;},

3);

/** js/lib/event/wait_for_load.js */
__d("wait_for_load",["Bootloader","Run"],function(a,b,c,d,e,f){




var g=b('Bootloader'),
h=b('Run');




function i(l,m){
return window.loaded&&m.call(l);}





function j(l,m,n){

g.loadComponents.call(g,m,n.bind(l));
return false;}

















function k(l,m,n){
n=n.bind(l,m);
if(window.loaded)
return n();

switch((m||event).type){
case 'load':
case 'focus':
h.onAfterLoad(n);
return;
case 'click':
var o=l.style,
p=document.body.style;

o.cursor=p.cursor='progress';
h.onAfterLoad(function(){
o.cursor=p.cursor='';
if(l.tagName.toLowerCase()=='a'){

if(false!==n()&&l.href)
window.location.href=l.href;}else

if(l.click)

l.click();});


break;}

return false;}


a.run_if_loaded=i;
a.run_with=j;
a.wait_for_load=k;},

3);

/** js/lib/intl/Intl.js */
__d("Intl",[],function(a,b,c,d,e,f){












var g;







function h(j){
if(typeof j!='string')
return false;


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'+
']*$'));}






h.punct_char_class=
'['+
'.!?'+
'\u3002'+
'\uFF01'+
'\uFF1F'+
'\u0964'+
'\u2026'+
'\u0EAF'+
'\u1801'+
'\u0E2F'+
'\uFF0E'+
']';















function i(j){
if(g){
var k=[],
l=[];


for(var m in g.patterns){
var n=g.patterns[m];


for(var o in g.meta){
var p=new RegExp(o.slice(1,-1),'g'),
q=g.meta[o];
m=m.replace(p,q);
n=n.replace(p,q);}

k.push(m);
l.push(n);}


for(var r=0;r<k.length;r++){
var s=new RegExp(k[r].slice(1,-1),'g');
if(l[r]=='javascript'){
j.replace(s,function(t){
return t.slice(1).toLowerCase();});}else 


j=j.replace(s,l[r]);}}





return j.replace(/\x01/g,'');}


e.exports=
{endsInPunct:h,
applyPhonologicalRules:i,
setPhonologicalRules:function(j){
g=j;}};});

/** js/lib/intl/tx.js */
__d("tx",["Intl"],function(a,b,c,d,e,f){



var g=b('Intl');





function h(j,k){
if(!k)
return j;












var l='\\{([^}]+)\\}('+g.endsInPunct.punct_char_class+'*)',
m=new RegExp(l,'g'),


n=[],
o=j.replace(m,
function(r,s,t){






var u=k[s];
if(u&&typeof u==='object'){
n.push(u);
return '\x17'+t;}

return u+(g.endsInPunct(u)?'':t);}).
split('\x17').map(g.applyPhonologicalRules);

if(o.length===1)
return o[0];



var p=[o[0]];
for(var q=0;q<n.length;q++)
p.push(n[q],o[q+1]);

return p;}


function i(j,k){





if(typeof _string_table=='undefined')
return;

j=_string_table[j];
return h(j,k);}


i._=h;

e.exports=i;});

/** js/lib/intl/intl-core.js */
__d("legacy:intl-core",["tx"],function(a,b,c,d){









var e=b('tx');

a.tx=e;
a._tx=e._;},

3);

/** js/lib/type/array.js */
__d("array-extensions",[],function(a,b,c,d,e,f){











Array.prototype.contains=function(g){
return this.indexOf(g)!=-1;};







Array.prototype.remove=function(g){
var h=this.indexOf(g);
if(h!=-1)
this.splice(h,1);};},



3);

/** js/modules/JSCC.js */
__d("JSCC",["isEmpty"],function(a,b,c,d,e,f){




var g=b('isEmpty'),

h={},
i={};

function j(m){
var n,
o=false;
return function(){
if(!o){
n=m();
o=true;}

return n;};}



function k(m,n){
if(g(m))
return;


for(var o in m){
h[o]=j(m[o]);
if(n){
if(!i[n])
i[n]=[];

i[n].push(o);}}}




var l=
{get:function(m){
if(!h[m])




throw new Error('JSCC entry is missing');

return h[m]();},






init:function(m){
k(m);},


initForPagelet:function(m,n){
k(n,m);},


clearForPagelet:function(m){
if(i[m]){
for(var n=0;n<i[m].length;n++){
var o=i[m][n];

delete h[o];}

delete i[m];}}};




e.exports=l;});

/** js/modules/ServerJS.js */
__d("ServerJS",["function-extensions","ErrorUtils","copyProperties","ge"],function(a,b,c,d,e,f){



b('function-extensions');

var g=b('ErrorUtils'),

h=b('copyProperties'),
i=b('ge'),

j=0;







function k(){
this._moduleMap={};
this._relativeTo=null;
this._moduleIDsToCleanup={};}


h(k.prototype,




















{handle:function(o){
if(o.__guard)
throw new Error
('ServerJS.handle called on data that has already been handled');

o.__guard=true;






l(o.define||[],this._handleDefine,this);
l(o.markup||[],this._handleMarkup,this);
l(o.elements||[],this._handleElement,this);
l(o.instances||[],this._handleInstance,this);
l(o.require||[],this._handleRequire,this);},









handlePartial:function(o){
(o.instances||[]).forEach(m.curry(this._moduleMap,3));
(o.markup||[]).forEach(m.curry(this._moduleMap,2));
this.handle(o);},







setRelativeTo:function(o){
this._relativeTo=o;
return this;},









cleanup:function(){
var o=[];
for(var p in this._moduleMap)
o.push(p);


d.call(null,o,n);
this._moduleMap={};



function q(s){
var t=this._moduleIDsToCleanup[s],
u=t[0],
v=t[1];

delete this._moduleIDsToCleanup[s];

var w=v?
'JS::call("'+u+'", "'+v+'", ...)':
'JS::requireModule("'+u+'")',
x=w+' did not fire because it has missing dependencies.';






throw new Error(x);}


for(var r in this._moduleIDsToCleanup)
g.applyWithGuard(q,this,[r]);},







_handleDefine:function(o,p,q){
define(o,p,function(){
this._replaceTransportMarkers(q);
return q;}.
bind(this));},














_handleRequire:function(o,p,q,r){
var s=[o].concat(q||[]),
t=(p?'__call__':'__requireModule__')+j++;



this._moduleIDsToCleanup[t]=[o,p];

define(t,s,function(u){


delete this._moduleIDsToCleanup[t];

r&&this._replaceTransportMarkers(r);
if(p){
if(!u[p])
throw new TypeError
('Module '+o+' has no method '+p);

u[p].apply(u,r||[]);}},

1,this,1);},



















_handleInstance:function(o,p,q,r){
var s=null;
if(p)
s=function(t){








this._replaceTransportMarkers(q);
var u=Object.create(t.prototype);
t.apply(u,q);
return u;}.
bind(this);

define(o,p,s,0,null,r);},











_handleMarkup:function(o,p,q){
define(o,['HTML'],function(r){
return r.replaceJSONWrapper(p).getRootNode();},
0,null,q);},








_handleElement:function(o,p,q,r){
var s=[],
t=0;















if(r){
s.push(r);
t=1;
q++;}


define(o,s,function(u){
var v=i(p,u);
if(!v){
var w='Could not find element '+p;





throw new Error(w);}

return v;},
t,null,q);},















_replaceTransportMarkers:function(o,p){
var q=(typeof p!=='undefined')?o[p]:o,
r;
if(Array.isArray(q)){
for(r=0;r<q.length;r++)
this._replaceTransportMarkers(q,r);}else

if(q&&typeof q=='object')
if(q.__m){


o[p]=b.call(null,q.__m);}else
if(q.__e){
o[p]=i(q.__e);}else
if(q.__rel){
o[p]=this._relativeTo;}else 

for(var s in q)
this._replaceTransportMarkers(q,s);}});










function l(o,p,q){
for(var r=0;r<o.length;r++)
g.applyWithGuard(p,q,[].concat(o[r]));}







function m(o,p,q){
var r=q[0];
if(!(r in o))
q[p]=(q[p]||0)+1;

o[r]=true;}


function n(){
return {};}


e.exports=k;});

/** js/modules/invokeCallbacks.js */
__d("invokeCallbacks",["ErrorUtils"],function(a,b,c,d,e,f){



var g=b('ErrorUtils');

function h(i,j){
if(i)
for(var k=0;k<i.length;k++)
g.applyWithGuard(new Function(i[k]),j);}




e.exports=h;});

/** js/modules/BigPipe.js */
__d("BigPipe",["Arbiter","Bootloader","Env","ErrorUtils","JSCC","OnloadEvent","Run","ServerJS","$","copyProperties","ge","hasArrayNature","invokeCallbacks"],function(a,b,c,d,e,f){





















var g=b('Arbiter'),
h=b('Bootloader'),
i=b('Env'),
j=b('ErrorUtils'),
k=b('JSCC'),
l=b('OnloadEvent'),
m=b('Run'),
n=b('ServerJS'),

o=b('$'),
p=b('copyProperties'),
q=b('ge'),
r=b('hasArrayNature'),
s=b('invokeCallbacks'),

t=document.documentMode||
+(/MSIE.(\d+)/.exec(navigator.userAgent)||[])[1],

u=g.BEHAVIOR_STATE,
v=g.BEHAVIOR_PERSISTENT;






function w(ba){
return (!ba||r(ba)&&ba.length===0)?{}:ba;}


function x(ba){
if(!ba||typeof ba==='string')
return ba;

if(ba.container_id){
var ca=o(ba.container_id);
ba=y(ca)||'';
ca.parentNode.removeChild(ca);
return ba;}

return null;}


function y(ba){
if(!ba.firstChild){

h.loadModules(['ErrorSignal'],function(da){
da.sendErrorSignal
('bigpipe',
'Pagelet markup container is empty.');});

return null;}

if(ba.firstChild.nodeType!==8)

return null;


var ca=ba.firstChild.nodeValue;

ca=ca.substring(1,ca.length-1);

return ca.replace(/\\([\s\S]|$)/g,'$1');}


function z(ba,ca){
var da=document.createElement('div'),

ea=t<7;
if(ea)







ba.appendChild(da);


da.innerHTML=ca;

var fa=document.createDocumentFragment();


while(da.firstChild)
fa.appendChild(da.firstChild);

ba.appendChild(fa);


if(ea)
ba.removeChild(da);}



function aa(ba){

p(this,
{arbiter:g,
rootNodeID:'content',
lid:0,
isAjax:false,
domContentCallback:m.__domContentCallback,
onloadCallback:m.__onloadCallback,
domContentEvt:l.ONLOAD_DOMCONTENT_CALLBACK,
onloadEvt:l.ONLOAD_CALLBACK,
forceFinish:false,
_phaseDoneCallbacks:[],
_currentPhase:0,
_lastPhase:-1});


p(this,ba);

if(this.automatic){
this._relevant_instance=aa._current_instance;}else 

aa._current_instance=this;


this._serverJS=new n();





g.inform('BigPipe/init',{lid:this.lid,arbiter:this.arbiter},
v);

this.arbiter.registerCallback(this.domContentCallback,
['pagelet_displayed_all']);




this._informEventExternal('phase_begin',{phase:0});
this.arbiter.inform('phase_begin_0',true,u);
this.onloadCallback=
this.arbiter.registerCallback(this.onloadCallback,
['pagelet_displayed_all']);




this.arbiter.registerCallback
(this._serverJS.cleanup.bind(this._serverJS),
[this.onloadEvt]);}



p(aa.prototype,

{_displayPageletHandler:function(ba){
if(this.displayCallback){
this.displayCallback(this._displayPagelet.bind(this,ba));}else 

this._displayPagelet(ba);},






_displayPagelet:function(ba){
this._informPageletEvent('display_start',ba.id);
ba.content=w(ba.content);

for(var ca in ba.content){
var da=ba.content[ca];

if(ba.append)
ca=this._getAppendTargetID(ba);

var ea=q(ca);
if(ea){
da=x(da);
if(da)
if(ba.append||t<8){



if(!ba.append)
while(ea.firstChild)
ea.removeChild(ea.firstChild);


z(ea,da);}else 

ea.innerHTML=da;




var fa=ea.getAttribute('data-referrer');
if(!fa)
ea.setAttribute('data-referrer',ca);


if(ba.cache_hit&&i.pc_debug)
ea.style.border='1px red solid';}}








if(ba.jsmods){
var ga=JSON.parse(JSON.stringify(ba.jsmods));
this._serverJS.handlePartial(ga);}


this._informPageletEvent('display',ba.id);
this.arbiter.inform(ba.id+'_displayed',true,u);},


_getAppendTargetID:function(ba){
if(!ba.append)
return null;

return (ba.append==='bigpipe_root')?
this.rootNodeID:ba.append;},






_downloadJsForPagelet:function(ba){
this._informPageletEvent('jsstart',ba.id);
h.loadResources(ba.js||[],function(){
this._informPageletEvent('jsdone',ba.id);
ba.requires=ba.requires||[];








if(!this.isAjax||ba.phase>=1)
ba.requires.push('uipage_onload');


var ca=function(){
this._informPageletEvent('preonload',ba.id);
this._isRelevantPagelet(ba)&&s(ba.onload);
this._informPageletEvent('onload',ba.id);





this.arbiter.inform('pagelet_onload',true,g.BEHAVIOR_EVENT);

ba.provides&&
this.arbiter.inform(ba.provides,true,u);}.
bind(this),

da=function(){
this._isRelevantPagelet(ba)&&
s(ba.onafterload);}.
bind(this);

this.arbiter.registerCallback(ca,ba.requires);
this.arbiter.registerCallback(da,[this.onloadEvt]);}.
bind(this),false,ba.id);},






_downloadDisplayDependenciesAndDisplayPagelet:function(ba){
this._informPageletEvent('css',ba.id);

var ca=(ba.css||[]).concat(ba.displayJS||[]);
h.loadResources(ca,function(){
var da=ba.display_dependency||[],
ea=[];
for(var fa=0;fa<da.length;fa++)
ea.push(da[fa]+'_displayed');

this.arbiter.registerCallback
(this._displayPageletHandler.bind(this,ba),ea);}.
bind(this),false,ba.id);},








onPageletArrive:j.guard(function(ba){
this._informPageletEvent('arrive',ba.id,ba.phase);

var ca=ba.phase;
if(!this._phaseDoneCallbacks[ca])
this._phaseDoneCallbacks[ca]=
this.arbiter.registerCallback(this._onPhaseDone.bind(this),
['phase_complete_'+ca]);


this.arbiter.registerCallback(this._phaseDoneCallbacks[ca],
[ba.id+'_displayed']);

var da=a.PageletCache;
if(da)
if(ba.cache_hit){
ba=da.loadFromCache(ba,this.arbiter);}else 

da.write(ba,this.arbiter);



this._processPagelet(ba);}),


_processPagelet:function(ba){
var ca=ba.phase,
da=this._getAppendTargetID(ba)||ba.id;
aa.pageletIDs[da]=da;

if(ba.the_end)
this._lastPhase=ba.phase;


if(ba.tti_phase!==undefined)
this._ttiPhase=ba.tti_phase;


if(ba.is_second_to_last_phase)
this._secondToLastPhase=ba.phase;


if(ba.jscc_map){
var ea=(eval)(ba.jscc_map);
k.initForPagelet(da,ea);}


h.setResourceMap(ba.resource_map);
h.enableBootload(w(ba.bootloadable));


var fa='phase_begin_'+ca;
this.arbiter.registerCallback
(this._downloadDisplayDependenciesAndDisplayPagelet.bind(this,ba),
[fa]);

var ga=[ba.id+'_displayed'];
if(!this.jsNonBlock)
ga.push(this.domContentEvt);


this.arbiter.registerCallback(this.onloadCallback,['pagelet_onload']);

this.arbiter.registerCallback
(this._downloadJsForPagelet.bind(this,ba),ga);


ba.is_last&&this.arbiter.inform('phase_complete_'+ca,
true,u);},









_onPhaseDone:function(){


if(this._currentPhase===this._ttiPhase)
this._informEventExternal('tti_bigpipe',{phase:this._ttiPhase});


var ba=this._currentPhase+1,

ca=(function(){

this._informEventExternal('phase_begin',{phase:ba});

this.arbiter.inform('phase_begin_'+ba,true,u);}).
bind(this);

if(this._currentPhase===this._lastPhase&&this._isRelevant())

this.arbiter.inform('pagelet_displayed_all',true,u);

this._currentPhase++;

if(t<=8){



setTimeout(ca,20);}else 

ca();},






_isRelevant:function(){
return this==aa._current_instance||
(this.automatic&&
this._relevant_instance==aa._current_instance)||
this.jsNonBlock||
this.forceFinish;},


_isRelevantPagelet:function(ba){

if(!this._isRelevant())
return false;




var ca=this._getAppendTargetID(ba)||ba.id;
return aa.pageletIDs.hasOwnProperty(ca);},








_informEventExternal:function(ba,ca){
ca=ca||{};
ca.ts=Date.now();
ca.lid=this.lid;
this.arbiter.inform(ba,ca,v);},









_informPageletEvent:function(ba,ca,da){
var ea={event:ba,id:ca};
if(da)
ea.phase=da;


this._informEventExternal('pagelet_event',ea);}});



aa.pageletIDs={};

e.exports=aa;});

/** js/lib/util/bootloader.js */
__d("legacy:bootloader",["Bootloader"],function(a,b,c,d){



a.Bootloader=b('Bootloader');},

3);

/** js/modules/Class.js */
__d("Class",["function-extensions","Arbiter"],function(a,b,c,d,e,f){



b('function-extensions');

var g=b('Arbiter'),

h={},
i=null,











j=

{extend:function(r,s){
if(!i)
i=g.subscribe(g.BOOTLOAD,l);

if(typeof s=='string'){
k(r,s);}else 

m(r,s);}};





function k(r,s){
r.__class_extending=true;





var t=g.registerCallback
(m.curry(r,s),
[g.FUNCTION_EXTENSION+'/'+s,g.BOOTLOAD]);

if(t!==null)




h[s]=true;}



function l(){
for(var r in h)
if(!!a[r]){
delete h[r];
if(!a[r].__class_extending){

g.inform(g.FUNCTION_EXTENSION+'/'+r,
true,
g.BEHAVIOR_STATE);}else 

a[r].__class_name=r;}}





function m(r,s){
delete r.__class_extending;
s=typeof s=='string'?a[s]:s;
var t=n(s,0),
u=n
(r,
t.prototype.__level+1);
u.parent=t;
if(!!r.__class_name)
g.inform
(g.FUNCTION_EXTENSION+'/'+r.__class_name,
true,
g.BEHAVIOR_STATE);}



function n(r,s){
if(r._metaprototype)
return r._metaprototype;

var t=new Function();






t.construct=o;
t.prototype.construct=q(r,s,true);
t.prototype.__level=s;
t.base=r;
r.prototype.parent=t;
r._metaprototype=t;
return t;}


function o(r){


p(r.parent);


var s=[],
t=r;
while(t.parent){
var u=new t.parent();
s.push(u);
u.__instance=r;
t=t.parent;}

r.parent=s[1];
s.reverse();
s.pop();
r.__parents=s;
r.__instance=r;


return r.parent.construct.apply(r.parent,arguments);}


function p(r){


if(r.initialized)return;
var s=r.base.prototype;
if(r.parent){
p(r.parent);
var t=r.parent.prototype;
for(var u in t)
if(u!='__level'&&u!='construct'&&s[u]===undefined)
s[u]=r.prototype[u]=t[u];}



r.initialized=true;


var v=r.prototype.__level;
for(var u in s)
if(u!='parent')
s[u]=r.prototype[u]=q(s[u],v);}




function q(r,s,t){
if(typeof r!='function'||r.__prototyped)
return r;

var u=function(){
var v=this.__instance;
if(v){
var w=v.parent;
v.parent=s?v.__parents[s-1]:null;
var x=arguments;
if(t){
x=[];
for(var y=1;y<arguments.length;y++)
x.push(arguments[y]);}


var z=r.apply(v,x);
v.parent=w;
return z;}else 

return r.apply(this,arguments);};


u.__prototyped=true;
return u;}


e.exports=j;});

/** js/lib/type/Class.js */
__d("legacy:Class",["Class"],function(a,b,c,d){



a.Class=b('Class');},

3);

/** js/lib/util/constructor-cache.js */
__d("legacy:constructor-cache",["JSCC"],function(a,b,c,d){



a.JSCC=b('JSCC');},

3);

/** js/modules/goURI.js */
__d("goURI",[],function(a,b,c,d,e,f){










function g(h,i,j){
h=h.toString();
if(!i&&a.PageTransitions&&PageTransitions.isInitialized()){
PageTransitions.go(h,j);}else
if(window.location.href==h){
window.location.reload();}else 

window.location.href=h;}



e.exports=g;});

/** js/lib/util/goURI.js */
__d("legacy:goURI",["goURI"],function(a,b,c,d){



a.goURI=b('goURI');},

3);

/** js/modules/InitialJSLoader.js */
__d("InitialJSLoader",["Arbiter","Bootloader","OnloadEvent","Run","ServerJS"],function(a,b,c,d,e,f){



var g=b('Arbiter'),
h=b('Bootloader'),
i=b('OnloadEvent'),
j=b('Run'),
k=b('ServerJS'),

l=
{INITIAL_JS_READY:'BOOTLOAD/JSREADY',






loadOnDOMContentReady:function(m,n){
g.subscribe(i.ONLOAD_DOMCONTENT_CALLBACK,function(){
function o(){
h.loadResources(m,function(){
g.inform
(l.INITIAL_JS_READY,
true,
g.BEHAVIOR_STATE);});}



if(n){
setTimeout(o,n);}else 

o();});},




handleServerJS:function(m){
var n=new k();
n.handle(m);
j.onAfterLoad(n.cleanup.bind(n));}};



e.exports=l;});

/** js/modules/lowerDomain.js */
__d("lowerDomain",[],function(a,b,c,d,e,f){









if(document.domain.toLowerCase().match(/(^|\.)facebook\..*/))
document.domain=
window.location.hostname.replace(/^.*(facebook\..*)$/i,'$1');});

/** js/lib/util/object_core.js */
__d("legacy:object-core-utils",["copyProperties","isEmpty"],function(a,b,c,d){



var e=b('copyProperties');



















function f(g,h){
return e(window[g]||(window[g]={}),h);}


a.is_empty=b('isEmpty');
a.add_properties=f;
a.copyProperties=e;},

3);

/** js/listeners/modules/PlaceholderListener.js */
__d("PlaceholderListener",["Arbiter","CSS","Parent"],function(a,b,c,d,e,f){



var g=b('Arbiter'),
h=b('CSS'),
i=b('Parent'),








j=document.documentElement,
k=function(m){
m=m||window.event;
var n=m.target||m.srcElement,
o=n.getAttribute('placeholder');

if(o){
var p=i.byClass(n,'focus_target');
if('focus'==m.type||'focusin'==m.type){



var q=n.value.replace(/\r\n/g,'\n'),
r=o.replace(/\r\n/g,'\n');

if(q==r&&
h.hasClass(n,'DOMControl_placeholder')){
n.value='';
h.removeClass(n,'DOMControl_placeholder');}

if(p)
l.expandInput(p);}else{


if(n.value===''){
h.addClass(n,'DOMControl_placeholder');
n.value=o;
p&&h.removeClass(p,'child_is_active');




n.style.direction='';}

p&&h.removeClass(p,'child_is_focused');}}};




if(j.addEventListener){
j.addEventListener('focus',k,true);
j.addEventListener('blur',k,true);}else{

j.attachEvent('onfocusin',k);
j.attachEvent('onfocusout',k);}


var l=
{expandInput:function(m){
h.addClass(m,'child_is_active');
h.addClass(m,'child_is_focused');
h.addClass(m,'child_was_focused');
g.inform('reflow');}};



e.exports=l;});

/** js/modules/clickRefAction.js */
__d("clickRefAction",["Arbiter"],function(a,b,c,d,e,f){



var g=b('Arbiter');






function h(l,m,n,o,p){
var q=l+'/'+m;
this.ue=q;
this._ue_ts=l;
this._ue_count=m;
this._context=n;
this._ns=null;
this._node=o;
this._type=p;}


h.prototype.set_namespace=function(l){
this._ns=l;
return this;};


h.prototype.coalesce_namespace=function(l){
if(this._ns===null)
this._ns=l;

return this;};


h.prototype.add_event=function(){
return this;};


var i=0,
j=[];


















function k(l,m,event,n,o){

var p=Date.now(),
q=event&&event.type;


o=o||{};
if(!m&&event)
m=event.getTarget();













var r=50;

if(m&&n!="FORCE")
for(var s=j.length-1;
s>=0&&((p-j[s]._ue_ts)<r);
--s)
if(j[s]._node==m&&j[s]._type==q)
return j[s];




var t=new h(p,i,l,m,q);


j.push(t);
while(j.length>10)
j.shift();



g.inform("ClickRefAction/new",
{cfa:t,
node:m,
mode:n,
event:event,
extra_data:o},
g.BEHAVIOR_PERSISTENT);

i++;

return t;}




e.exports=a.clickRefAction=k;});

/** js/modules/trackReferrer.js */
__d("trackReferrer",["Parent"],function(a,b,c,d,e,f){



var g=b('Parent');






function h(i,j){

i=g.byAttribute(i,'data-referrer');

if(i){
















var k=
/^(?:(?:[^:\/?#]+):)?(?:\/\/(?:[^\/?#]*))?([^?#]*)(?:\?([^#]*))?(?:#(.*))?/.
exec(j)[1]||'';

if(!k)
return;


var l=k+'|'+i.getAttribute('data-referrer'),

m=new Date();m.setTime(Date.now()+1000);
document.cookie="x-src="+encodeURIComponent(l)+"; "+
"expires="+m.toGMTString()+";path=/; domain="+
window.location.hostname.replace(/^.*(\.facebook\..*)$/i,'$1');}


return i;}


e.exports=h;});

/** js/logging/Miny.js */
__d("Miny",[],function(a,b,c,d,e,f){






var g='Miny1',


h={encode:[],decode:{}},
i='wxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-_'.split('');
function j(n){
for(var o=h.encode.length;o<n;o++){

var p=o.toString(32).split('');
p[p.length-1]=i[parseInt(p[p.length-1],32)];
p=p.join('');

h.encode[o]=p;
h.decode[p]=o;}


return h;}



function k(n){

var o=n.match(/\w+|\W+/g),



p={};
for(var q=0;q<o.length;q++)
p[o[q]]=(p[o[q]]||0)+1;




var r=Object.keys(p);
r.sort(function(u,v){
return p[u]<p[v]?1:(p[v]<p[u]?-1:0);});



var s=j(r.length).encode;
for(q=0;q<r.length;q++)
p[r[q]]=s[q];



var t=[];
for(q=0;q<o.length;q++)
t[q]=p[o[q]];



for(q=0;q<r.length;q++)
r[q]=r[q].replace(/'~'/g,'\\~');


return [g,r.length].
concat(r).
concat(t.join('')).
join('~');}



function l(n){
var o=n.split('~');

if(o.shift()!=g)
throw new Error('Not a Miny stream');

var p=parseInt(o.shift(),10),
q=o.pop();
q=q.match(/[0-9a-v]*[\-w-zA-Z_]/g);


var r=o,

s=j(p).decode,
t=[];
for(var u=0;u<q.length;u++)
t[u]=r[s[q[u]]];


return t.join('');}


var m=
{encode:k,
decode:l};


e.exports=m;});

/** js/modules/QueryString.js */
__d("QueryString",[],function(a,b,c,d,e,f){











function g(k){__t([k,'object','bag']);return __t([function(){
var l=[];
Object.keys(k).forEach(function(m){
var n=k[m];

if(typeof n==='undefined')
return;


if(n===null){
l.push(m);
return;}


l.push(encodeURIComponent(m)+
'='+
encodeURIComponent(n));});

return l.join('&');}.
apply(this,arguments),'string']);}




function h(k,l){__t([k,'string','str'],[l,'boolean?','strict']);return __t([function(){
var m={};
if(k==='')
return m;


var n=k.split('&');
for(var o=0;o<n.length;o++){
var p=n[o].split('=',2),
q=decodeURIComponent(p[0]);
if(l&&m.hasOwnProperty(q))
throw new URIError('Duplicate key: '+q);

m[q]=p.length===2?
decodeURIComponent(p[1]):
null;}

return m;}.
apply(this,arguments),'object']);}






function i(k,l){__t([k,'string','url']);return __t([function(){
return k+
(~k.indexOf('?')?'&':'?')+
(typeof l==='string'?
l:
j.encode(l));}.
apply(this,arguments),'string']);}

var j=
{encode:g,
decode:h,
appendToUrl:i};


e.exports=j;});

/** js/modules/XHR.js */
__d("XHR",["Env"],function(a,b,c,d,e,f){



var g=b('Env'),

h=1,

i=




{create:function(){

try{return a.XMLHttpRequest?
new a.XMLHttpRequest():new ActiveXObject("MSXML2.XMLHTTP.3.0");}catch(
j){}},












getAsyncParams:function(j){
var k=
{__user:g.user,
__a:1,








__req:(h++).toString(36)};




if(j=='POST'&&g.fb_dtsg)
k.fb_dtsg=g.fb_dtsg;




if(g.fb_isb)
k.fb_isb=g.fb_isb;


if(g.fbtrace_id)
k.fbtrace_id=g.fbtrace_id;


return k;}};



e.exports=i;});

/** js/logging/BanzaiAdapter.js */
__d("BanzaiAdapter",["Arbiter","Miny","QueryString","Run","XHR","BanzaiConfig"],function(a,b,c,d,e,f){





var g=b('Arbiter'),
h=b('Miny'),
i=b('QueryString'),
j=b('Run'),
k=b('XHR'),
l=null,
m=new g(),





n=c('BanzaiConfig'),

o='/ajax/bz',

p={},



q=p.adapter=
{config:n,

inform:function(r){
m.inform(r);},


subscribe:function(r,s){
m.subscribe(r,s);},


cleanup:function(){
if(l&&l.readyState<4)
l.abort();


if(l){
delete l.onreadystatechange;
l=null;}},



isSending:function(){
return !!l;},


send:function(r,s,t){
var u='POST';
l=k.create();
l.open(u,o,true);
l.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
l.onreadystatechange=function(){
if(l.readyState>=4){
var y=l.status;
q.cleanup();

if(y==200){
if(s)s();
q.inform(p.OK);}else{

if(t)t();
q.inform(p.ERROR);}}};





setTimeout(q.cleanup,p.SEND_TIMEOUT,false);


var v=k.getAsyncParams(u);
v.q=JSON.stringify(r);
v.ts=Date.now();

if(p.FBTRACE)
v.fbtrace=p.FBTRACE;


if(p.isEnabled('miny_compression')){
var w=Date.now(),
x=h.encode(v.q);


if(x.length<v.q.length){
v.q=x;
v.miny_encode_ms=Date.now()-w;}}



l.send(i.encode(v));},


onUnload:function(r){
j.onUnload(r);}};



e.exports=p;});

/** js/modules/core/pageID.js */
__d("pageID",[],function(a,b,c,d,e,f){






e.exports=Math.floor(2147483648*Math.random()).toString(36);});

/** js/modules/core/startsWith.js */
__d("startsWith",[],function(a,b,c,d,e,f){






function g(h,i,j){
var k=String(h);
j=Math.min(Math.max(j||0,0),k.length);
return k.lastIndexOf(String(i),j)===j;}


e.exports=g;});

/** js/logging/banzai/Banzai.js */
__d("Banzai",["BanzaiAdapter","pageID","startsWith"],function(a,b,c,d,e,f){
















































var g=b('BanzaiAdapter'),h=g.adapter,
i=b('pageID'),
j=b('startsWith'),

k='Banzai',
l='sequencer',

m,
n,









o,
p=[],

q={};


function r(){

if(o&&o.posts.length>0){
p.push(o);
o=null;}



if(!o)
o=
{page_id:i,
trigger:null,
posts:[]};



if(g.isEnabled(l))
o.sequence=[];}







function s(w){
var x=Date.now()+w;
if(!n||x<n){
n=x;
clearTimeout(m);
m=setTimeout(t,w,false);
return true;}}




function t(){

n=null;
s(g.BASIC.delay);


if(h.isSending())
return;



h.inform(g.SEND);


if(p.length<=0&&o.posts.length<=0){

h.inform(g.OK);
return;}



r();

var w=p;
p=[];

h.send(w,
null,
function(){
var x=Date.now()-(h.config.EXPIRY||g.EXPIRY),


y=w.map(function(z){
z.posts=z.posts.filter(function(aa){
return aa.options.retry&&aa.timestamp>x;});

return z;});


y=y.filter(function(z){
return z.posts.length>0;});


p=y.concat(p);});}





var u,
v=a.sessionStorage;
if(v){
u=
{store:function w(){







r();

var x=JSON.stringify(p);

try{v.setItem(k,x);}catch(
y){
var z=[];















throw new Error('Banzai failed to store '+
Math.round(x.length/1000)+'KB - '+z.join());}},


restore:function w(){
var x=v.getItem(k);
if(x){
v.removeItem(k);
p=p.concat(JSON.parse(x));}}};}else 




u=
{store:function(){},
restore:function(){}};








g.SEND='Banzai:SEND';
g.OK='Banzai:OK';
g.ERROR='Banzai:ERROR';
g.SHUTDOWN='Banzai:SHUTDOWN';
g.SEND_TIMEOUT=15000;
g.VITAL_WAIT=1000;
g.BASIC_WAIT=60000;



g.EXPIRY=30*60000;




g.VITAL=
{delay:h.config.MIN_WAIT||g.VITAL_WAIT};

g.BASIC=
{delay:h.config.MAX_WAIT||g.BASIC_WAIT};


g.FBTRACE=h.config.fbtrace,

g.isEnabled=function(w){





return h.config.gks&&h.config.gks[w];};



g.post=function(w,x,y){

var z=h.config.blacklist;
if(z)
for(var aa=0;aa<z.length;aa++)
if(j(w,z[aa]))
return;




var ba=[w,x];

if(!(w in q)){
q[w]=0;}else 

q[w]++;


ba.options=y||{};
ba.timestamp=Date.now();

o.posts.push(ba);

var ca=ba.options.delay;
if(ca==null)ca=g.BASIC_WAIT;

if(g.isEnabled(l))
o.sequence.push([w,q[w]]);


if(s(ca))

o.trigger=w;};



g.subscribe=h.subscribe;


g.getUnsentCount=function(){
var w=0;
for(var x=0;x<p.length;x++)
w+=p[x].posts.length;

if(o)
w+=o.posts.length;

return w;};







h.onUnload(function(){
h.inform(g.SHUTDOWN);
u.store();});



r();


u.restore();

s(g.BASIC.delay);

e.exports=g;});

/** js/modules/userAction.js */
__d("userAction",["Arbiter","Banzai","copyProperties"],function(a,b,c,d,e,f){



var g=b('Arbiter'),
h=b('Banzai'),

i=b('copyProperties'),

j=50,
k=[],
l={},
m={};

















function n(u,v,w,x,event){
var y=u+'/'+v,
z=t(x);

i(this,
{ue:y,
_uai_logged:false,
_uai_timeout:null,
_primary:{},
_fallback:{},

_default_ua_id:z||'-',
_default_action_type:event?event.type:'-',
_ts:u,
_ns:w,
_start_ts:u,
_prev_event:'s',
_ue_ts:u,
_ue_count:v,
_data_version:1,
_event_version:2,
_info_version:2});



this._log('ua:n',[1,y]);}


var o={store:true,delay:3000,retry:true};
i(n.prototype,
{_log:function(u,v){
var w=l[u]===true,
x=m[u],
y=x?
x[this._ns]:{},
z=y?
y[this._ua_id]:undefined;

if(h.isEnabled('useraction')&&
(z!==undefined?
z:w))
h.post(u,v,o);},



_get_action_type:function(){
return (this._primary._action_type||
this._fallback._action_type||
this._default_action_type);},


_get_ua_id:function(){
return (this._primary._ua_id||
this._fallback._ua_id||
this._default_ua_id);},



_log_uai:function(){
var u=
[this._info_version,
this.ue,
this._ns,
this._get_ua_id(),
this._get_action_type()];



this._log('ua:i',u);
this._uai_logged=true;
this._uai_timeout=null;},














uai:function(u,v,w){

if(!this._uai_logged){

this._uai_timeout&&clearTimeout(this._uai_timeout);


this._primary._ua_id=v;
this._primary._action_type=u;

if(w===undefined){

this._log_uai();}else
if(w===false){

this._uai_logged=true;}else{

var x=this;

w=w||0;
this._uai_timeout=setTimeout(function(){
x._log_uai.apply(x);},
w);}}


return this;},

















uai_fallback:function(u,v,w){

if(!this._uai_logged){
var x=this;


this._uai_timeout&&clearTimeout(this._uai_timeout);


this._fallback._ua_id=v;
this._fallback._action_type=u;

w=(w===undefined)?j:w;
this._uai_timeout=setTimeout(function(){
x._log_uai.apply(x);},
w);}

return this;},






add_event:function(u,v,w){

v=v||0;
var x=(Date.now()-v),
y=x-this._ts,


z=x-(w?w:this._ue_ts),

aa=
[this._event_version,
this.ue,
this._ns,
this._get_ua_id(),
this._prev_event,
u,
y,
z];



if(this._get_ua_id()){












this._log('ua:e',aa);

this._ts=x;
this._prev_event=u;}

return this;},




add_data:function(u){

var v=
[this._data_version,
this.ue,
u];


this._log('ua:d',v);

return this;}});




var p=0,
q=0,
r=null;










function s(u,v,event,w){

w=w||{};
var x=Date.now();

if(!v&&event)
v=event.getTarget();













if(v&&r)
if(x-q<j&&
v==r&&
w.mode=="DEDUP")






return k[k.length-1];



var y=new n(x,p,u,v,event);

r=v;


k.push(y);
while(k.length>10)
k.shift();




g.inform("UserAction/new",
{ua:y,
node:v,
mode:w.mode,
event:event});


q=x;
p++;

return y;}





function t(u){
if(!u||!u.nodeName)
return null;

return u.nodeName.toLowerCase();}







s.setUATypeConfig=function(u){
i(l,u);};








s.setCustomSampleConfig=function(u){
i(m,u);};






s.getCurrentUECount=function(){
return p;};




e.exports=a.userAction=s;});

/** js/modules/Primer.js */
__d("Primer",["function-extensions","Bootloader","CSS","ErrorUtils","Parent","clickRefAction","trackReferrer","userAction"],function(a,b,c,d,e,f){



b('function-extensions');

var g=b('Bootloader'),
h=b('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=document.documentElement;

function q(t,u){
t=j.byAttribute(t,u);
if(!t)
return;



do{var v=t.getAttribute(u);
JSON.parse(v).forEach(function(w){
var x=t;
g.loadModules.call(g,[w[0]],function(y){
y[w[1]](x);});});}while(


t=j.byAttribute(t.parentNode,u));
return false;}


p.onclick=i.guard(function(t){
t=t||window.event;
n=t.target||t.srcElement;

var u=q(n,'data-onclick'),

v=j.byTag(n,'A');
if(!v)return u;

var w=v.getAttribute('ajaxify'),
x=v.href,
y=w||x;

if(y){
k('a',v,t).coalesce_namespace('primer');
var z=m('primer',v,t,{mode:'DEDUP'}).
uai_fallback('click');
if(a.ArbiterMonitor)a.ArbiterMonitor.initUA(z,[v]);}



if(w&&x&&!(/#$/).test(x)){




var aa=t.which&&t.which===2,
ba=t.altKey||t.ctrlKey||t.metaKey||t.shiftKey;
if(aa||ba)
return;}



l(v,y);


var ca=v.rel&&v.rel.match(o);
ca=ca&&ca[0];

switch(ca){
case 'dialog':
case 'dialog-post':
g.loadModules(['AsyncDialog'],function(da){
da.bootstrap(y,v,ca);});

break;
case 'async':
case 'async-post':
g.loadModules(['AsyncRequest'],function(da){
da.bootstrap(y,v);});

break;
case 'theater':
g.loadModules(['PhotoSnowlift'],function(da){
da.bootstrap(y,v);});

break;
case 'toggle':
h.toggleClass(v.parentNode,'openToggler');
g.loadModules(['Toggler'],function(da){
da.bootstrap(v);});

break;

default:return u;
}

return false;});


p.onsubmit=i.guard(function(t){
t=t||window.event;
var u=t.target||t.srcElement;

if(u&&u.nodeName=='FORM'&&u.getAttribute('rel')=='async'){
k('f',u,t).coalesce_namespace('primer');
var v=m('primer',u,t,{mode:'DEDUP'}).
uai_fallback('submit');
if(a.ArbiterMonitor)a.ArbiterMonitor.initUA(v,[u]);

var w=n;
g.loadModules(['Form'],function(x){
x.bootstrap(u,w);});


return false;}});



var r=null,

s=i.guard(function(t,u){
u=u||window.event;
r=u.target||u.srcElement;

q(r,'data-on'+t);

var v=j.byAttribute(r,'data-hover');
if(!v)return;

switch(v.getAttribute('data-hover')){
case 'tooltip':
g.loadModules(['Tooltip'],function(w){
w.process(v,r);});

break;}});



p.onmouseover=s.curry('mouseover');
if(p.addEventListener){
p.addEventListener('focus',s.curry('focus'),true);}else 

p.attachEvent('onfocusin',s.curry('focus'));});

/** js/modules/QuicklingPrelude.js */
__d("QuicklingPrelude",[],function(a,b,c,d,e,f){

















var g=
/^(?:(?:[^:\/?#]+):)?(?:\/\/(?:[^\/?#]*))?([^?#]*)(?:\?([^#]*))?(?:#(.*))?/,
h='';

window.location.href.replace(g,function(i,j,k,l){
var m,n,o;
m=n=j+(k?'?'+k:'');
if(l){



l=l.replace(/^(!|%21)/,'');
o=l.charAt(0);
if(o=='/'||o=='\\')



m=l.replace(/^[\\\/]+/,'/');}







if(m!=n){


if(window._script_path)
document.cookie="rdir="+window._script_path+"; path=/; domain="+
window.location.hostname.replace(/^.*(\.facebook\..*)$/i,'$1');


window.location.replace(h+m);}});});

/** js/listeners/modules/SubmitOnEnterListener.js */
__d("SubmitOnEnterListener",["Bootloader","CSS"],function(a,b,c,d,e,f){



var g=b('Bootloader'),
h=b('CSS');







document.documentElement.onkeydown=function(i){
i=i||window.event;
var j=i.target||i.srcElement,
k=
i.keyCode==13&&
!i.altKey&&!i.ctrlKey&&!i.metaKey&&!i.shiftKey&&
h.hasClass(j,'enter_submit');
if(k){
g.loadModules
(['DOM','Input','trackReferrer','Form'],
function(l,m,n,o){
if(!m.isEmpty(j)){
var p=j.form,
q=
l.scry(p,'.enter_submit_target')[0]||
l.scry(p,'[type="submit"]')[0];
if(q){
var r=
o.getAttribute(p,'ajaxify')||
o.getAttribute(p,'action');
if(r)
n(p,r);

q.click();}}});




return false;}};});

/** js/ufi/modules/CommentPrelude.js */
__d("CommentPrelude",["CSS","Parent","clickRefAction","userAction"],function(a,b,c,d,e,f){



var g=b('CSS'),
h=b('Parent'),

i=b('clickRefAction'),
j=b('userAction');


function k(o,p){
j('ufi',o).uai('click');
i('ufi',o,null,'FORCE');


return l(o,p);}



function l(o,p){
var q=h.byTag(o,'form');
m(q);
var r=g.removeClass.curry(q,'hidden_add_comment');
if(window.ScrollAwareDOM){
window.ScrollAwareDOM.monitor(q,r);}else 

r();

if(p!==false)
(q.add_comment_text_text||q.add_comment_text).focus();

return false;}


function m(o){
var p=g.removeClass.curry(o,'collapsed_comments');
if(window.ScrollAwareDOM){
window.ScrollAwareDOM.monitor(o,p);}else 

p();}



var n=
{click:k,
expand:l,
uncollapse:m};


e.exports=n;});

/** js/ufi/prelude.js */
__d("legacy:ufi-comment-prelude-js",["CommentPrelude"],function(a,b,c,d){



var e=b('CommentPrelude');

a.fc_click=e.click;
a.fc_expand=e.expand;},

3);

/** js/lib/prelude.js */







































