/*    HTTP Host:  static.ak.fbcdn.net                                          */
/*    Generated:  December 14th 2009 8:11:45 PM PST                            */
/*      Machine:  10.16.139.103                                                */
/*       Source:  Backing Store                                                */
/*     Location:  js/67x0r33w19gk4kcs.pkg.js h:3amdinr3                        */
/*       Locale:  nu_ll                                                        */
/*         Path:  js/67x0r33w19gk4kcs.pkg.js                                   */

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

function PageCache(_L0,_L1){if(this===window)return new PageCache(_L0,_L1);this._MAX_PAGE_NUM=typeof _L0=='undefined'?5:_L0;this._MAX_TTL=typeof _L1=='undefined'?600000:_L1;this._storage={};}copy_properties(PageCache.prototype,{_normalizeURI:function(uri){uri=new URI(uri);if(uri.getPath()=='/')uri.setPath('/home.php');return uri.getUnqualifiedURI().setFragment('').removeQueryData('ref').toString();},addPage:function(uri,_L1){uri=this._normalizeURI(uri);if(!this._storage[uri])this._storage[uri]={};var _L2=this._storage[uri];copy_properties(_L2,_L1);_L2.accessTime=_L2.genTime=(new Date()).getTime();this._clearCache();},updatePage:function(uri,obj){uri=this._normalizeURI(uri);if(!this._storage[uri])return;copy_properties(this._storage[uri],obj);},isPageInCache:function(uri){return !!this._storage[this._normalizeURI(uri)];},invalidatePage:function(uri){uri=this._normalizeURI(uri);delete this._storage[uri];},getPage:function(uri){this._clearCache();uri=this._normalizeURI(uri);var _L1=this._storage[uri];if(!_L1)return null;_L1.accessTime=(new Date()).getTime();return _L1;},_clearCache:function(){var _L0=(new Date()).getTime();var _L1=null;var _L2=0;for(var uri in this._storage){var _L4=this._storage[uri];var ttl=_L4.ttl||this._MAX_TTL;if(_L4.genTime<_L0-ttl){delete this._storage[uri];continue;}if(!_L1||this._storage[_L1].accessTime>_L4.accessTime)_L1=uri;_L2++;}if(_L2>this._MAX_PAGE_NUM&&_L1)delete this._storage[_L1];}});
var Quickling={PAGECACHE_EXEC:'quickling/pc',isActive:function(){return Quickling._is_active||false;},isFeatureEnabled:function(_L0){return Quickling._capabilities&&Quickling._capabilities[_L0];},init:function(_L0,_L1,_L2,_L3){if(Quickling._is_initialized)return;copy_properties(Quickling,{_is_initialized:true,_is_active:true,_session_length:_L1,_capabilities:_L2,_is_in_transition:false,_title_interval:false,_ie_cache_title:'',_prefetch:_L3,_cache_hit:false,_version:_L0});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(uri){return uri;};},_onNotifications:function(_L0,_L1){Util.log('Invalidate PageCache due to new notifications');Quickling._cache=new PageCache();Quickling._invalidate_msgs=[];},_onCacheInvalidates:function(_L0,_L1){if(Quickling.isFeatureEnabled('page_cache')&&_L1&&_L1.length){for(var ii=0;ii<_L1.length;ii++)if(parseInt(_L1[ii])===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;Util.log('The whole PageCache is invalidated by the server');Quickling._cache=new PageCache();Quickling._invalidate_msgs=[];return;}Quickling._invalidate_msgs=Quickling._invalidate_msgs.concat(_L1);}},_refresh_pagelets:function(){if(is_empty(window.__listeners))return;for(var ii=0;ii<Quickling._invalidate_msgs;ii++){var msg=Quickling._invalidate_msgs[ii];if(msg in window.__listeners)window.__listeners[msg].forEach(function(_L2){_L2.refresh();});}},registerPageCacheHook:function(_L0,id){if(!Quickling._is_initialized||!Quickling._is_active||Quickling._is_in_transition||!Quickling.isFeatureEnabled('page_cache'))return;var _L2,_L3=PageTransitions.getMostRecentURI();if(_L2=Quickling._cache.getPage(_L3)){if(id)for(var ii=0;ii<_L2.replays.length;ii++)if(_L2.replays[ii][0]==id){_L2.replays.splice(ii,1);ii--;}_L2.replays.push([id,_L0]);}},_onReplayableAjax:function(_L0,_L1){if(Quickling._is_in_transition)return;var _L2=Quickling._whitelist_regex;if(!_L2)_L2=Quickling._whitelist_regex=new RegExp(env_get('pagecache_whitelist_regex'));if(_L2.test(URI(_L1.getURI()).getPath()))return;Quickling.registerPageCacheHook(bind(_L1,_L1.replayResponse),_L1._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(_L0){var uri=URI.getRequestURI();var _L2=uri.getFragment();if(_L2.startsWith('/')){var _L3=_L2;}else var _L3=_L0;setTimeout(function(){PageTransitions.go(_L3,true);},0);},isPageActive:function(uri){if(uri=='#')return false;var uri=new URI(uri);if(uri.getDomain()&&uri.getDomain()!=URI().getDomain())return false;var _L1=Quickling.isPageActive.regex;if(!_L1)_L1=Quickling.isPageActive.regex=new RegExp(env_get('quickling_inactive_page_regex'));if(!Quickling.isFeatureEnabled('full_platform')){query=uri.getQueryData();if(query['_fb_qsub']&&query['_fb_qsub'].startsWith('apps'))if(!query['_fb_q'])return false;}var _L2=uri.getPath();var _L3=uri.getQueryData();if(_L3)_L2+='?'+URI.implodeQuery(_L3);if(_L1.test(_L2))return false;return true;},_setHTML:function(ele,_L1){if(ua.ie()<=6){ele.innerHTML=_L1;}else DOM.setContent(ele,HTML(_L1).setDeferred(true));},_transitionHandler:function(uri){if(Quickling._isTimeToRefresh())return false;if(!Quickling.isPageActive(uri))return false;uri=PageTransitions._revertSubDomain(uri);removeHook('onafterloadhooks');removeHook('onloadhooks');_runHooks('onleavehooks');window.ExitTime=(new Date()).getTime();Quickling._startQuicklingTransition();var _L1;if(Quickling.isFeatureEnabled('page_cache')&&(_L1=Quickling._cache.getPage(PageTransitions.getMostRecentURI()))){invoke_callbacks(_L1.onpagecache);_L1.incremental_updates=AsyncRequest.stashBundledRequest();window.ads_refreshing=false;}if(Quickling.isFeatureEnabled('page_cache')&&(_L1=Quickling._cache.getPage(uri))){var _L2={};_L2[Quickling.PAGECACHE_EXEC]=2;Arbiter.registerCallback(function(){$('content').style.visibility="visible";Quickling._cache_hit=true;invoke_callbacks(_L1.onafterload);invoke_callbacks(_L1.onafterpagecache);Quickling._cache_hit=false;Quickling._stopQuicklingTransition();},_L2);AsyncRequest.setBundledRequestProperties({stashedRequests:_L1.incremental_updates,callback:function(){Arbiter.inform(Quickling.PAGECACHE_EXEC,true,Arbiter.BEHAVIOR_EVENT);},onInitialResponse:Quickling._onInitialResponse,extra_data:{uri:uri.getQualifiedURI().toString(),version:Quickling._version},start_immediately:true});Quickling._preBootloadHandler();Bootloader.loadResources(_L1.bootload,null,true);Quickling._changePageTitle(_L1.title);var _L3=_L1.body_class||'';CSS.setClass(document.body,_L3+(CSS.hasClass(document.body,'chat_body')?' chat_body':''));var _L4=$('content');_L4.style.visibility="hidden";_L1.html=_L1.html.replace(/<span class=["']?muffin_tracking_pixel_start["']?><\/span>.*?<span class=["']?muffin_tracking_pixel_end["']?><\/span>/ig,'');Quickling._setHTML(_L4,_L1.html);if(_L4&&_L4.style.height=='1234px')_L4.style.height='';PageTransitions.transitionComplete();Quickling._cache_hit=true;invoke_callbacks(_L1.onload);Quickling._cache_hit=false;Quickling._refresh_pagelets();_L1.replays.forEach(function(_L7){_L7[1]();});PageTransitions.restoreScrollPosition();Arbiter.inform(Quickling.PAGECACHE_EXEC,true,Arbiter.BEHAVIOR_EVENT);}else{var _L5={version:Quickling._version};uri=new URI(uri).addQueryData({quickling:_L5});var _L6=Quickling._prefetch[uri.getPath()];if(_L6&&_L6.length)Bootloader.loadResources(_L6);Quickling._arbiter=new Arbiter();Quickling._arbiter_callback=Quickling._arbiter.registerCallback(function(){if(Quickling.isFeatureEnabled('page_cache')){var _L1=Quickling._cache.getPage(PageTransitions.getNextURI());if(_L1)_L1.html=$('content').innerHTML;}Quickling._stopQuicklingTransition();PageTransitions.transitionComplete();},['quickling_done']);new AsyncRequest().setPreBootloadHandler(Quickling._preBootloadHandler).setInitialHandler(Quickling._onInitialResponse).setHandler(Quickling._onresponse).setFinallyHandler(function(_L7){if(_L7.is_last)Quickling._arbiter.inform('quickling_done',true,Arbiter.BEHAVIOR_EVENT);Quickling._arbiter.inform('quickling_counter',true,Arbiter.BEHAVIOR_EVENT);}).setMethod('GET').setReadOnly(true).setOption('useIframeTransport',true).setURI(uri).send();}return true;},_preBootloadHandler:function(_L0){if(_L0){Quickling._arbiter.registerCallback(Quickling._arbiter_callback,['quickling_counter']);if(!_L0.is_first)return false;}var _L1=ge('content');if(_L1){_L1.style.height='1234px';DOM.empty(_L1);}DOMScroll.scrollTo(new Vector2(0,0,'document'),false);return _L0&&!_L0.getPayload().redirect;},_onInitialResponse:function(_L0){var _L1=_L0.getPayload();if(!_L1)return true;if(_L1.redirect){var _L2=PageTransitions._rewriteSubDomain(_L1.redirect);if(_L1.force||!Quickling.isPageActive(_L2)){go_or_replace(window.location,URI(_L1.redirect).removeQueryData('quickling'),true);}else PageTransitions.go(_L2,true);return false;}if(_L1.version&&_L1.version!=Quickling._version){go_or_replace(window.location,URI(_L1.uri).removeQueryData('quickling'),true);return false;}return true;},_changePageTitle:function(_L0){_L0=_L0||'Facebook';document.title=_L0;if(ua.ie()){Quickling._ie_cache_title=_L0;if(!Quickling._title_interval)Quickling._title_interval=window.setInterval(function(){var _L1=Quickling._ie_cache_title;var _L2=document.title;if(_L1!=_L2)document.title=_L1;},5000,false);}},cacheResponse:function(_L0,_L1){var _L2=_L0.payload;Quickling._cache.addPage(PageTransitions.getNextURI(),{title:_L2.title,body_class:_L2.body_class,html:_L2.content['content'],bootload:_L0.bootload||[],onload:_L0.onload||[],onafterload:_L0.onafterload||[],onpagecache:_L2.onpagecache||[],onafterpagecache:_L2.onafterpagecache||[],ttl:_L2.page_cache_ttl,replays:[]});if(_L1){invoke_callbacks(_L0.onload);onafterloadRegister(function(){invoke_callbacks(_L0.onafterload);});}},cacheAndExecResponse:function(_L0,_L1,_L2){var _L3=PageTransitions.getNextURI();var _L4=Quickling._cache.getPage(_L3);if(_L4){if(_L1.html)_L4.html=_L1.html;_L4.bootload=_L4.bootload.concat(_L0||[]);_L4.onload=_L4.onload.concat(_L1.onload||[]);_L4.onafterload=_L4.onafterload.concat(_L1.onafterload||[]);_L4.onpagecache=_L4.onpagecache.concat(_L1.onpagecache||[]);_L4.onafterpagecache=_L4.onafterpagecache.concat(_L1.onafterpagecache||[]);}else Util.error("Cannot find cached response for "+_L3);if(!_L2){invoke_callbacks(_L1.onload);onafterloadRegister(function(){invoke_callbacks(_L1.onafterload);});}},_onresponse:function(_L0){var _L1=_L0.payload;if(_L0.is_first){Quickling._changePageTitle(_L1.title);var _L2=_L1.body_class||'';CSS.setClass(document.body,_L2+(CSS.hasClass(document.body,'chat_body')?' chat_body':''));if(_L1.hasOnbeforeshow)$('content').style.visibility='hidden';}for(var _L3 in _L1.content){var div=ge(_L3);var _L5=_L1.content[_L3];if(div){if(_L5===undefined||_L5===null){Util.warn('Content for div id: '+_L3+' is null');}else Quickling._setHTML(div,_L5);}else Util.warn('Unknown content div id: '+_L3);}if(Quickling.isFeatureEnabled('page_cache'))if(_L0.is_first&&_L1.page_cache_ttl){Quickling.cacheResponse(_L0);}else if(!_L0.is_first)Quickling.cacheAndExecResponse(_L0.bootload,_L0,true);var _L6=ge('content');if(_L6&&_L6.style.height=='1234px')_L6.style.height='';},_isTimeToRefresh:function(){Quickling._load_count=(Quickling._load_count||0)+1;return Quickling._load_count>=Quickling._session_length;},_instrumentTimeoutFunc:function(_L0){window[_L0+'_native']=(function(_L1){var _L2=function _L2(_L3,_L4){return _L1(_L3,_L4);};return _L2;})(window[_L0]);window[_L0]=function _setTimeout(_L1,_L2,_L3){var _L4=window[_L0+'_native'](_L1,_L2);if(_L2>0)onunloadRegister(function(){clearInterval(_L4);},_L3);return _L4;};}};function onpagecacheRegister(_L0,id){id=(id===undefined?'':String(id));Quickling.registerPageCacheHook(_L0,id);}

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