/*
HTTP Host: static.ak.fbcdn.net
Generated: March 12th 2010 9:22:26 AM PST
Machine: 10.16.139.107
Locale: nu_ll
Path: js/aq0va8ch1k0g8cgo.pkg.js
*/

if (window.CavalryLogger) { CavalryLogger.start_js(["js\/aq0va8ch1k0g8cgo.pkg.js"]); }

function UIHelpLink(b,c,a){this._root=$(b);this._title=c;this._body=a;this._anchor=this._root.find('a');this._anchor.listen('click',this.click.bind(this));}UIHelpLink.prototype.click=function(){new ContextualDialog().setContext(this._anchor).setTitle(this._title).setBody(this._body).setButtons(Dialog.OK).show();return false;};
var Configurable={getOption:function(a){if(typeof(this.option[a])=='undefined')return null;return this.option[a];},setOption:function(a,b){if(!(typeof(this.option[a])=='undefined'))this.option[a]=b;return this;},getOptions:function(){return this.option;}};
function Nectar(){}copy_properties(Nectar,{linkHandler:function(c,a){var b=Nectar.getNectarParams();b.ia=1;var e=a.href;if(!e){e=URI.getRequestURI().toString();b.err=1;}b.url=e;var d='/ajax/nectar.php'+'?'+URI.implodeQuery({nctr:b})+'&';new AsyncSignal(d,{}).send();return c;},getNectarParams:function(){var c={};var a=env_get('nctrlid');if(a)c.id=a;var b=env_get('nctrlnid');if(b)c.nid=b;if(a||b)c.ct=(new Date()).getTime();copy_properties(c,Nectar.extraData.get_query_data());return c;},extraData:function(){var a={};var b=[];return {set_item:function(c,e,d){var f=a[c];if(f===undefined){if(d)b.push(c);f=[];a[c]=f;}return f.push(e);},get_item:function(c){return a[c]||[];},get_query_data:function(){var c,f,d,e={};for(c=0;c<b.length;c++){d=b[c];f=a[d];if(f)e[d]=f.join(',');}a=[];b=[];return e;}};}()});
function NectarPhotosLog(){}copy_properties(NectarPhotosLog,{PHOTOS_BUF_LEN:20,showPhotoHandler:function(g,b){var e,c,a,f;c=b.node;e=b.pid;a=b.aid;f=b.ss;var d=Nectar.extraData.get_item('pts');if(e!==undefined){if(d.length==0){Nectar.extraData.set_item('url',c.href,false);Nectar.extraData.set_item('aid',a,true);Nectar.extraData.set_item('ss',f,false);}Nectar.extraData.set_item('pts',e,true);}d=Nectar.extraData.get_item('pts');if(d.length>=NectarPhotosLog.PHOTOS_BUF_LEN)NectarPhotosLog.flushLog();return false;},flushLog:function(){var a=Nectar.extraData.get_item('pts');if(a.length>0){var b=Nectar.extraData.get_item('url')[0];Nectar.linkHandler(false,{href:b});}return false;}});onloadRegister(function(){Arbiter.subscribe(PhotostreamConstants.ShowPhoto,NectarPhotosLog.showPhotoHandler);});onbeforeunloadRegister(function(){NectarPhotosLog.flushLog();},false);
function PageCache(a,b){if(this===window)return new PageCache(a,b);this._MAX_PAGE_NUM=typeof a=='undefined'?5:a;this._MAX_TTL=typeof b=='undefined'?600000:b;this._storage={};}copy_properties(PageCache.prototype,{_normalizeURI:function(a){a=new URI(a);if(a.getPath()=='/')a.setPath('/home.php');return a.getUnqualifiedURI().setFragment('').removeQueryData('ref').toString();},addPage:function(c,b){c=this._normalizeURI(c);if(!this._storage[c])this._storage[c]={};var a=this._storage[c];copy_properties(a,b);a.accessTime=a.genTime=(new Date()).getTime();this._clearCache();},updatePage:function(b,a){b=this._normalizeURI(b);if(!this._storage[b])return;copy_properties(this._storage[b],a);},isPageInCache:function(a){return !!this._storage[this._normalizeURI(a)];},invalidatePage:function(a){a=this._normalizeURI(a);delete this._storage[a];},getPage:function(b){this._clearCache();b=this._normalizeURI(b);var a=this._storage[b];if(!a)return null;a.accessTime=(new Date()).getTime();return a;},_clearCache:function(){var a=(new Date()).getTime();var b=null;var d=0;for(var f in this._storage){var c=this._storage[f];var e=c.ttl||this._MAX_TTL;if(c.genTime<a-e){delete this._storage[f];continue;}if(!b||this._storage[b].accessTime>c.accessTime)b=f;d++;}if(d>this._MAX_PAGE_NUM&&b)delete this._storage[b];}});
var Quickling={PAGECACHE_EXEC:'quickling/pc',isActive:function(){return Quickling._is_active||false;},isFeatureEnabled:function(a){return Quickling._capabilities&&Quickling._capabilities[a];},init:function(d,c,a,b){if(Quickling._is_initialized)return;copy_properties(Quickling,{_is_initialized:true,_is_active:true,_session_length:c,_capabilities:a,_is_in_transition:false,_title_interval:false,_ie_cache_title:'',_prefetch:b,_cache_hit:false,_version:d});Quickling._instrumentTimeoutFunc('setInterval');Quickling._instrumentTimeoutFunc('setTimeout');PageTransitions.registerHandler(Quickling._transitionHandler);if(Quickling.isFeatureEnabled('page_cache')){Quickling._cache=new PageCache();Quickling._invalidate_msgs=[];Arbiter.subscribe(Arbiter.NEW_NOTIFICATIONS,Quickling._onNotifications);Arbiter.subscribe(Arbiter.REPLAYABLE_AJAX,Quickling._onReplayableAjax);Arbiter.subscribe(Arbiter.PAGECACHE_INVALIDATE,Quickling._onCacheInvalidates);}if(!Quickling.isFeatureEnabled('domain_rewrite'))PageTransitions._rewriteSubDomain=PageTransitions._revertSubDomain=function(e){return e;};},_onNotifications:function(b,a){Quickling._cache=new PageCache();Quickling._invalidate_msgs=[];},_onCacheInvalidates:function(c,b){if(Quickling.isFeatureEnabled('page_cache')&&b&&b.length){for(var a=0;a<b.length;a++)if(parseInt(b[a])===0){if(Quickling._is_in_transition&&!Quickling.isFeatureEnabled('flush_cache_in_transition'))break;if(Quickling._cache.isPageInCache(PageTransitions.getMostRecentURI())&&!Quickling.isFeatureEnabled('flush_cache_in_page_write'))break;Quickling._cache=new PageCache();Quickling._invalidate_msgs=[];return;}Quickling._invalidate_msgs=Quickling._invalidate_msgs.concat(b);}},_refresh_pagelets:function(){if(is_empty(window.__listeners))return;for(var a=0;a<Quickling._invalidate_msgs;a++){var b=Quickling._invalidate_msgs[a];if(b in window.__listeners)window.__listeners[b].forEach(function(c){c.refresh();});}},registerPageCacheHook:function(a,c){if(!Quickling._is_initialized||!Quickling._is_active||Quickling._is_in_transition||!Quickling.isFeatureEnabled('page_cache'))return;var b=PageTransitions.getMostRecentURI();var e=Quickling._cache.getPage(b);if(e){if(c)for(var d=0;d<e.replays.length;d++)if(e.replays[d][0]==c){e.replays.splice(d,1);d--;}e.replays.push([c,a]);}},_onReplayableAjax:function(c,b){if((PageTransitions.getNextURI().toString()!=PageTransitions.getMostRecentURI().toString()))return;if(Quickling._is_in_transition)return;var a=Quickling._whitelist_regex;if(!a)a=Quickling._whitelist_regex=new RegExp(env_get('pagecache_whitelist_regex'));if(a.test(URI(b.getURI()).getPath()))return;Quickling.registerPageCacheHook(bind(b,b.replayResponse),b._replayKey);},_startQuicklingTransition:function(){Quickling._is_in_transition=true;window.channelManager&&window.channelManager.setActionRequest(true);},_stopQuicklingTransition:function(){(function(){Quickling._is_in_transition=false;}).defer();},isCacheHit:function(){return Quickling._cache_hit;},goHashOrGoHere:function(d){var c=URI.getRequestURI();var b=c.getFragment();if(b.startsWith('/')){var a=b;}else var a=d;setTimeout(function(){PageTransitions.go(a,true);},0);},isPageActive:function(d){if(d=='#')return false;d=new URI(d);if(d.getDomain()&&d.getDomain()!=URI().getDomain())return false;var b=Quickling.isPageActive.regex;if(!b)b=Quickling.isPageActive.regex=new RegExp(env_get('quickling_inactive_page_regex'));if(!Quickling.isFeatureEnabled('full_platform')){query=d.getQueryData();if(query._fb_qsub&&query._fb_qsub.startsWith('apps'))if(!query['_fb_q'])return false;}var c=d.getPath();var a=d.getQueryData();if(a)c+='?'+URI.implodeQuery(a);if(b.test(c))return false;return true;},_setHTML:function(a,b){if(ua.ie()<=6){a.innerHTML=b;}else DOM.setContent(a,HTML(b).setDeferred(true));},_transitionHandler:function(j){Quickling.current_request=null;if(Quickling._isTimeToRefresh())return false;if(!Quickling.isPageActive(j))return false;j=PageTransitions._revertSubDomain(j);removeHook('onafterloadhooks');removeHook('onloadhooks');_runHooks('onleavehooks');window.ExitTime=(new Date()).getTime();Quickling._startQuicklingTransition();$('content').style.visibility="visible";var f;if(Quickling.isFeatureEnabled('page_cache')&&(f=Quickling._cache.getPage(PageTransitions.getMostRecentURI()))){invoke_callbacks(f.onpagecache);f.incremental_updates=AsyncRequest.stashBundledRequest();window.ads_refreshing=false;}if(Quickling.isFeatureEnabled('page_cache')&&(f=Quickling._cache.getPage(j))){var e=null;var b={};b[Quickling.PAGECACHE_EXEC]=2;var a=new Arbiter();a.registerCallback(function(){$('content').style.visibility="visible";if(Quickling.current_request!==e)return;if(e&&e.cavalry){e.cavalry.setTimeStamp('t_domcontent');e.cavalry.setTimeStamp('t_hooks');e.cavalry.setTimeStamp('t_layout');e.cavalry.setTimeStamp('t_onload');}Quickling._cache_hit=true;invoke_callbacks(f.onafterload);invoke_callbacks(f.onafterpagecache);Quickling._cache_hit=false;Quickling._stopQuicklingTransition();},b);e=Quickling.current_request=AsyncRequest.setBundledRequestProperties({stashedRequests:f.incremental_updates,callback:function(){if(e&&e.cavalry)e.cavalry&&e.cavalry.setTimeStamp('t_html');a.inform(Quickling.PAGECACHE_EXEC,true,Arbiter.BEHAVIOR_EVENT);},onInitialResponse:Quickling._onInitialResponse,extra_data:{uri:j.getQualifiedURI().toString(),version:Quickling._version},start_immediately:true});Quickling._preBootloadHandler();Bootloader.loadResources(f.bootload,null,true);Quickling._changePageTitle(f.title);Quickling._replaceSyndicationLinks(f.syndication_links||[]);var c=f.body_class||'';CSS.setClass(document.body,c+(CSS.hasClass(document.body,'chat_body')?' chat_body':''));var d=$('content');d.style.visibility="hidden";f.html=f.html.replace(/<span class=["']?muffin_tracking_pixel_start["']?><\/span>.*?<span class=["']?muffin_tracking_pixel_end["']?><\/span>/ig,'');Quickling._setHTML(d,f.html);if(d&&d.style.height=='1234px')d.style.height='';PageTransitions.transitionComplete();Quickling._cache_hit=true;invoke_callbacks(f.onload);Quickling._cache_hit=false;Quickling._refresh_pagelets();f.replays.forEach(function(k){k[1]();});PageTransitions.restoreScrollPosition();a.inform(Quickling.PAGECACHE_EXEC,true,Arbiter.BEHAVIOR_EVENT);}else{var h={version:Quickling._version};j=new URI(j).addQueryData({quickling:h});var g=Quickling._prefetch[j.getPath()];if(g&&g.length)Bootloader.loadResources(g);var i=new AsyncRequest();Quickling.current_request=i;i.quickling_arbiter=new Arbiter();i.quickling_domcontent_callback=i.quickling_arbiter.registerCallback(function(){if(Quickling.isFeatureEnabled('page_cache')){var k=Quickling._cache.getPage(PageTransitions.getNextURI());if(k)k.html=$('content').innerHTML;}Quickling._stopQuicklingTransition();PageTransitions.transitionComplete();i.cavalry&&i.cavalry.setTimeStamp('t_domcontent');i.quickling_arbiter.inform('quickling_dom_content',true,Arbiter.BEHAVIOR_STATE);},['quickling_html_ready']);i.quickling_onload_callback=i.quickling_arbiter.registerCallback(function(){if(i.cavalry){i.cavalry.setTimeStamp('t_hooks');i.cavalry.setTimeStamp('t_layout');i.cavalry.setTimeStamp('t_onload');}i.quickling_arbiter.inform('quickling_onafterload',true,Arbiter.BEHAVIOR_STATE);},['quickling_dom_content']);i.setPreBootloadHandler(Quickling._preBootloadHandler).setInitialHandler(Quickling._onInitialResponse).setHandler(Quickling._onresponse).setFinallyHandler(function(k){if(k.is_last){i.cavalry&&i.cavalry.setTimeStamp('t_html');this.quickling_arbiter.inform('quickling_html_ready',true,Arbiter.BEHAVIOR_STATE);}}).setMethod('GET').setReadOnly(true).setOption('useIframeTransport',true).setURI(j).send();}return true;},_preBootloadHandler:function(l){if(l&&!l.getPayload().redirect){var j=l.getPayload();var k=l.getRequest();if(!k||!k.quickling_arbiter)return false;if(k!=Quickling.current_request)return false;var a=k.quickling_arbiter;if(j.id){a.registerCallback(k.quickling_domcontent_callback,['quickling_displayed_'+j.id]);a.registerCallback(k.quickling_onload_callback,['quickling_onload_'+j.id]);}if(Quickling.isFeatureEnabled('page_cache'))if(l.is_first&&j.page_cache_ttl){Quickling.cacheResponse(l);}else if(!l.is_first)Quickling.cacheAndExecResponse(l.bootload,l,true);var d=[],h=[],b=l.bootload;for(var g=0,i=b?b.length:0;g<i;g++){var m=l.bootload[g];if(m.type=='js'){h.push(m);}else if(m.type=='css')d.push(m);}l.bootload=d;var f=function(){if(k!=Quickling.current_request)return;PageTransitions.unifyURI();invoke_callbacks(l.onload);a.inform('quickling_onload_'+j.id,true,Arbiter.BEHAVIOR_STATE);if(j.provides)for(var n=0;n<j.provides.length;n++)a.inform(j.provides[n],true,Arbiter.BEHAVIOR_STATE);};a.registerCallback(function(){Bootloader.loadResources(h,function(){a.inform('quickling_js_ready_'+j.id,true,Arbiter.BEHAVIOR_STATE);});},['quickling_dom_content']);a.registerCallback(f,['quickling_js_ready_'+j.id].concat(j.requires||[]));var e=function(){if(k!=Quickling.current_request)return;invoke_callbacks(l.onafterload);};a.registerCallback(e,['quickling_onafterload']);if(!l.is_first)return false;}var c=ge('content');if(c){c.style.height='1234px';DOM.empty(c);}DOMScroll.scrollTo(new Vector2(0,0,'document'),false);return l&&!l.getPayload().redirect;},_onInitialResponse:function(d){var a=d.getPayload();var c=d.getRequest();if(c!=Quickling.current_request)return false;if(!a)return true;if(a.redirect){var b=PageTransitions._rewriteSubDomain(a.redirect);if(a.force||!Quickling.isPageActive(b)){go_or_replace(window.location,URI(a.redirect).removeQueryData('quickling'),true);}else PageTransitions.go(b,true);return false;}if(a.version&&a.version!=Quickling._version){go_or_replace(window.location,URI(a.uri).removeQueryData('quickling'),true);return false;}return true;},_changePageTitle:function(a){a=a||'Facebook';document.title=a;if(ua.ie()){Quickling._ie_cache_title=a;if(!Quickling._title_interval)Quickling._title_interval=window.setInterval(function(){var b=Quickling._ie_cache_title;var c=document.title;if(b!=c)document.title=b;},5000,false);}},_replaceSyndicationLinks:function(d){var c=document.getElementsByTagName('link');for(var b=0;b<c.length;++b){if(c[b].rel!='alternate')continue;DOM.remove(c[b]);}if(d.length){var a=DOM.find(document,'head');a&&DOM.appendContent(a,HTML(d[0]));}},cacheResponse:function(c,a){var b=c.payload;Quickling._cache.addPage(PageTransitions.getNextURI(),{title:b.title,syndication:b.syndication||[],body_class:b.body_class,html:b.content.content,bootload:c.bootload||[],onload:c.onload||[],onafterload:c.onafterload||[],onpagecache:b.onpagecache||[],onafterpagecache:b.onafterpagecache||[],ttl:b.page_cache_ttl,replays:[]});if(a){invoke_callbacks(c.onload);onafterloadRegister(function(){invoke_callbacks(c.onafterload);});}},cacheAndExecResponse:function(a,d,e){var b=PageTransitions.getNextURI();var c=Quickling._cache.getPage(b);if(c){if(d.html)c.html=d.html;c.bootload=c.bootload.concat(a||[]);c.onload=c.onload.concat(d.onload||[]);c.onafterload=c.onafterload.concat(d.onafterload||[]);c.onpagecache=c.onpagecache.concat(d.onpagecache||[]);c.onafterpagecache=c.onafterpagecache.concat(d.onafterpagecache||[]);}if(!e){invoke_callbacks(d.onload);onafterloadRegister(function(){invoke_callbacks(d.onafterload);});}},_onresponse:function(i){var g=i.payload;var h=i.getRequest();if(!h||!h.quickling_arbiter)return AsyncRequest.suppressOnloadToken;if(h!=Quickling.current_request)return AsyncRequest.suppressOnloadToken;var a=h.quickling_arbiter;if(i.is_first){Quickling._changePageTitle(g.title);Quickling._replaceSyndicationLinks(g.syndication||[]);var b=g.body_class||'';CSS.setClass(document.body,b+(CSS.hasClass(document.body,'chat_body')?' chat_body':''));if(g.hasOnbeforeshow)$('content').style.visibility='hidden';}var d=function(){for(var m in g.content){var l=ge(m);var j=g.content[m];if(l)if(!(j===undefined||j===null))Quickling._setHTML(l,j);}var k=ge('content');if(k&&k.style.height=='1234px')k.style.height='';a.inform('quickling_displayed_'+g.id,true,Arbiter.BEHAVIOR_STATE);};var f=g.parent_ids;if(f&&f.length>0){var c=[];for(var e=0;e<f.length;e++)c.push('quickling_displayed_'+f[e]);a.registerCallback(d,c);}else d();return AsyncRequest.suppressOnloadToken;},_isTimeToRefresh:function(){Quickling._load_count=(Quickling._load_count||0)+1;return Quickling._load_count>=Quickling._session_length;},_instrumentTimeoutFunc:function(a){window[a+'_native']=(function(c){var b=function b(e,d){return c(e,d);};return b;})(window[a]);window[a]=function _setTimeout(d,c,b){var e=window[a+'_native'](d,c);if(c>0)onunloadRegister(function(){clearInterval(e);},b);return e;};}};function onpagecacheRegister(a,b){b=(b===undefined?'':String(b));Quickling.registerPageCacheHook(a,b);}
function Task(a,b){copy_properties(this,{task:a,option:{synchronous:!!b},status:Task.WAITING,result:null,queue:null});}copy_properties(Task,{WAITING:0,READY:1,RUNNING:2,DONE:3,ERROR:4});copy_properties(Task.prototype,Configurable);copy_properties(Task.prototype,{run:function(){this.status=Task.RUNNING;try{var a=this.task();}catch(exception){this.status=Task.ERROR;exception._task=this;throw exception;}if(this.getOption('synchronous'))this.didComplete(a);},didComplete:function(a){this.result=a;this.status=Task.DONE;if(this.queue)this.queue.didCompleteTask(this);return this;}});function TaskQueue(){copy_properties(this,{queue:[],executingTasks:0,executionDepth:0,option:{synchronous:true,concurrency:2}});}copy_properties(TaskQueue.prototype,Configurable);copy_properties(TaskQueue.prototype,{addTask:function(a){this.queue.push(a);a.queue=this;return a;},didCompleteTask:function(a){this.executingTasks--;this.reapQueue();if(!this.executionDepth)this.start();},runTask:function(a){this.executingTasks++;if(this.getOption('synchronous')){try{a.run();}catch(exception){this.didCompleteTask();}}else setTimeout(bind(a,'run'),10);},reapQueue:function(){var c;var a,b;for(a=0,b=this.queue.length;a<b;a++){c=this.queue[a].status;if(c!=Task.DONE&&c!=Task.ERROR)break;}if(a)this.queue=this.queue.slice(a);},start:function(){this.executionDepth++;while(this.executingTasks<this.getOption('concurrency')){for(var a=0,b=this.queue.length;a<b;a++)if(this.queue[a].status==Task.READY){this.runTask(this.queue[a]);break;}if(a==b)break;}this.executionDepth--;},ready:function(c){c=c||1;for(var a=0,b=this.queue.length;a<b;a++)if(this.queue[a].status==Task.WAITING){this.queue[a].status=Task.READY;if(!(--c))break;}this.start();}});
function PrivacyTransition(){}copy_properties(PrivacyTransition,{GET_PARAM_NAME:'privacy_wizard_version',continueOn:function(){URI(this._propagateGetParam('/privacy/transition.php')).setSubdomain('www').go(true);return false;},skipForNow:function(){new AsyncRequest('/ajax/privacy/wizard_skip.php').setHandler(function(){Dialog.getCurrent().hide();}).send();return false;},_propagateGetParam:function(d){var b=this.GET_PARAM_NAME;var c=URI.getRequestURI().getQueryData()[this.GET_PARAM_NAME];if(c){var a={};a[this.GET_PARAM_NAME]=c;d=URI(d).addQueryData(a);}return d;}});

if (window.Bootloader) { Bootloader.done(["js\/aq0va8ch1k0g8cgo.pkg.js"]); }