/*    HTTP Host:  b.static.ak.fbcdn.net                                        */
/*    Generated:  December 14th 2009 8:14:31 PM PST                            */
/*      Machine:  10.16.139.105                                                */
/*       Source:  Backing Store                                                */
/*     Location:  js/9x3a801t8ow0kcc0.pkg.js h:ctldf9ng                        */
/*       Locale:  nu_ll                                                        */
/*         Path:  js/9x3a801t8ow0kcc0.pkg.js                                   */

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

if(navigator&&navigator.userAgent&&document.domain.toLowerCase().match(/(^|\.)facebook\..*/)&&!(parseInt((/Gecko\/([0-9]+)/.exec(navigator.userAgent)||[]).pop(),10)<=20060508))document.domain=window.location.hostname.replace(/^.*(facebook\..*)$/i,'$1');var onloadRegister=window.onloadRegister||function(h){onloadhooks.push(h);};var onloadhooks=window.onloadhooks||[];var onafterloadRegister=window.onafterloadRegister||function(h){onafterloadhooks.push(h);};var onafterloadhooks=window.onafterloadhooks||[];function run_if_loaded(_L0,f){if(window.loaded)return f.call(_L0);}function run_with(_L0,_L1,f){Bootloader.loadComponents(_L1,bind(_L0,f));return false;}function wait_for_load(_L0,e,f){f=bind(_L0,f,e);if(window.loaded)return f();switch((e||event).type){case 'load':case 'focus':onloadRegister(f);return;case 'click':var es=_L0.style,ds=document.body.style;es.cursor=ds.cursor='progress';onafterloadRegister(function(){es.cursor=ds.cursor='';if(_L0.tagName.toLowerCase()=='a'){if(false!==f()&&_L0.href)window.location.href=_L0.href;}else if(_L0.click)_L0.click();});break;}return false;}function bind(obj,_L1){var _L2=[];for(var ii=2;ii<arguments.length;ii++)_L2.push(arguments[ii]);var fn=function(){var _L5=obj||(this==window?false:this);var _L6=_L2.slice();for(var jj=0;jj<arguments.length;jj++)_L6.push(arguments[jj]);if(typeof(_L1)=="string"){if(_L5[_L1])return _L5[_L1].apply(_L5,_L6);}else return _L1.apply(_L5,_L6);};if(typeof _L1=='string'){fn.name=_L1;}else if(_L1&&_L1.name)fn.name=_L1.name;fn.toString=function(){return bind._toString(obj,_L2,_L1);};return fn;}var curry=bind(null,bind,null);bind._toString=bind._toString||function(obj,_L1,_L2){return (typeof _L2=='string')?('late bind<'+_L2+'>'):('bound<'+_L2.toString()+'>');};window.loadFirebugConsole&&loadFirebugConsole();
function eval_global(js){if('string'!=typeof(js)){throw new Error('JS sent to eval_global is not a string.  Only strings '+'are permitted.');}else if(''==js)return;var obj=document.createElement('script');obj.type='text/javascript';try{obj.appendChild(document.createTextNode(js));}catch(e){obj.text=js;}var _L2=(document.getElementsByTagName("head")[0]||document.documentElement);_L2.appendChild(obj);_L2.removeChild(obj);}
function hasArrayNature(obj){if(!obj)return false;if(typeof obj!='object')return false;if(obj instanceof Array)return true;if(!('length' in obj))return false;if('callee' in obj)return true;if('push' in obj&&'pop' in obj)return true;return false;}function copy_properties(u,v){if(!u||!v)throw new TypeError("Can not copy between types "+typeof(u)+" and "+typeof(v)+".");for(var k in v)u[k]=v[k];if(v.hasOwnProperty&&v.hasOwnProperty('toString')&&(typeof v.toString!='undefined')&&(u.toString!==v.toString))u.toString=v.toString;return u;}function arrayize(obj){if(!hasArrayNature(obj))return [obj];return obj;}function is_empty(obj){if(obj instanceof Array){return obj.length==0;}else if(obj instanceof Object){for(var i in obj)return false;return true;}else return !obj;}
function Arbiter(){copy_properties(this,{_listeners:[],_events:{}});copy_properties(this,Arbiter);}copy_properties(Arbiter,{SUBSCRIBE_NEW:'new',SUBSCRIBE_ALL:'all',BEHAVIOR_EVENT:'event',BEHAVIOR_PERSISTENT:'persistent',BEHAVIOR_STATE:'state',LIVEMESSAGE:'livemessage',BOOTLOAD:'bootload',FUNCTION_EXTENSION:'function_ext',PAGE_TRANSITION:'pagetransitions/transition',CONTEXT_CHANGE:'ui/context-change',PROFILE_PUBLISHER:'profile/publisher',REPLAYABLE_AJAX:'ajax/replayable',PAGECACHE_INVALIDATE:'pagecache/invalidate',NEW_NOTIFICATIONS:'chat/new_notifications',BEEPS_EXPIRED:'beeper/beeps_expired',USER_ACTIVITY:'useractivity/activity',LIST_EDITOR_LISTS_CHANGED:'listeditor/friend_lists_changed',BALANCE_SET:'credits/balance_set',ONLOAD_DOMCONTENT:'onload/dom_content_ready',subscribe:function(_L0,_L1,_L2){if(!_L0)return null;var a=Arbiter._getInstance(this);a._listeners.push({callback:_L1,types:_L0});_L2=_L2||Arbiter.SUBSCRIBE_ALL;if(_L2==Arbiter.SUBSCRIBE_ALL){if(!(_L0 instanceof Array))_L0=[_L0];var _L4;var _L5;var ret;for(var idx=0;idx<_L0.length;idx++){_L5=_L0[idx];if(typeof _L5!="string")throw new TypeError("Event types must be strings.");if(_L5 in a._events)for(var ii=0;ii<a._events[_L5].length;ii++){_L4=a._events[_L5][ii];ret=_L1.apply(null,[_L5,_L4]);if(ret===false){a._events[_L5].splice(ii,1);ii--;}}}}else if(_L2!=Arbiter.SUBSCRIBE_NEW)throw new TypeError("Bad subscription policy.");return {arbiterID:a._listeners.length-1};},unsubscribe:function(_L0){if(!('arbiterID' in _L0))throw new TypeError("Not an arbiter token.");delete Arbiter._getInstance(this)._listeners[_L0.arbiterID];},inform:function(_L0,e,_L2){var a=Arbiter._getInstance(this);var idx=null;_L2=_L2||Arbiter.BEHAVIOR_EVENT;if(_L2==Arbiter.BEHAVIOR_PERSISTENT){idx=a._events.length;if(!(_L0 in a._events))a._events[_L0]=[];a._events[_L0].push(e);a._events[_L0]._stateful=false;}else if(_L2==Arbiter.BEHAVIOR_STATE){idx=0;a._events[_L0]=[e];a._events[_L0]._stateful=true;}else if(_L0 in a._events)a._events[_L0]._stateful=false;var res;for(var ii=0;ii<a._listeners.length;ii++)if(a._listeners[ii])if(Arbiter._checkType(_L0,a._listeners[ii].types)){res=a._listeners[ii].callback.apply(null,[_L0,e]);if(res===false){if(idx!==null)a._events[_L0].splice(idx,1);break;}}a._updateCallbacks(_L0,e);},query:function(_L0){var a=Arbiter._getInstance(this);if(!(_L0 in a._events))return null;if(!a._events[_L0]._stateful)throw new Error("Querying state of an unstateful event.");if(a._events[_L0].length)return a._events[_L0][0];return null;},_instance:null,_getInstance:function(_L0){if(_L0 instanceof Arbiter)return _L0;if(!Arbiter._instance)Arbiter._instance=new Arbiter();return Arbiter._instance;},_checkType:function(_L0,_L1){if(_L0===_L1)return true;if(_L1.length)for(var ii=0;ii<_L1.length;ii++)if(_L1[ii]===_L0)return true;return false;},_callbacks:{},_last_id:1,_listen:{},registerCallback:function(_L0,_L1){var _L2,_L3=0,a=Arbiter._getInstance(this),_L5=false;if(typeof _L0=='function'){_L2=a._last_id;a._last_id++;_L5=true;}else{if(!a._callbacks[_L0])return null;_L2=_L0;}if(_L1 instanceof Array){var tmp={};for(var i=0;i<_L1.length;i++)tmp[_L1[i]]=1;_L1=tmp;}for(var _L8 in _L1){try{if(a.query(_L8))continue;}catch(ex){}_L3+=_L1[_L8];if(a._listen[_L8]===undefined)a._listen[_L8]={};a._listen[_L8][_L2]=(a._listen[_L8][_L2]||0)+_L1[_L8];}if(_L3==0&&_L5){_L0();return null;}if(!_L5){a._callbacks[_L2].depnum+=_L3;}else a._callbacks[_L2]={callback:_L0,depnum:_L3};return _L2;},_updateCallbacks:function(_L0,_L1){if(_L1===null||!this._listen[_L0])return;for(var cid in this._listen[_L0]){this._listen[_L0][cid]--;if(this._listen[_L0][cid]<=0)delete this._listen[_L0][cid];this._callbacks[cid].depnum--;if(this._callbacks[cid].depnum<=0){var _L3=this._callbacks[cid].callback;delete this._callbacks[cid];_L3();}}}});
var Bootloader=window.Bootloader=(window.Bootloader&&window.Bootloader.realBootloader)?window.Bootloader:(function(_L0){return {realBootloader:true,configurePage:function(_L1){var _L2=document.getElementsByTagName('link');this._cssLinks=[];for(var ii=0;ii<_L2.length;++ii){if(_L2[ii].rel!='stylesheet')continue;for(var k in _L1)if(_L2[ii].href.indexOf(k)!==-1){var _L5=_L1[k][0],_L6=_L1[k][1];this._cssLinkMap[_L5]=this._cssLinks.length;if(_L6)this._permanent[_L5]=true;delete _L1[k];break;}this._cssLinks.push(_L2[ii]);}},loadComponents:function(_L1,_L2){_L1=arrayize(_L1);var _L3=[];for(var ii=0;ii<_L1.length;++ii){if(!_L1[ii])continue;var _L5=this._componentMap[_L1[ii]];if(!!_L5){for(var jj=0;jj<_L5.length;++jj)_L3.push(_L5[jj]);}else ;}return this.loadResources(_L3,_L2);},preloadComponents:function(){var _L1=[];for(var i in this._componentMap)_L1.push(i);this.loadComponents(_L1);},loadResources:function(_L1,_L2,_L3){_L1=arrayize(_L1);if(_L3){var map={};for(var ii=0;ii<_L1.length;++ii)map[_L1[ii].name]=true;for(var k in this._requested)if(!(k in this._permanent)&&!(k in map))this._unloadResource(k);}var _L7=[];var _L8=[];for(var ii=0;ii<_L1.length;++ii){var _L9=_L1[ii];if(_L9.permanent)this._permanent[_L9.name]=true;var s=Arbiter.BOOTLOAD+'/'+_L9.name;if(Arbiter.query(s)!==null)continue;_L8.push(s);if(!this._requested[_L9.name]){this.requested(_L9.name);_L7.push(_L9);}}if(_L2)_L2=Arbiter.registerCallback(_L2,_L8);for(var ii=0;ii<_L7.length;++ii)this.requestResource(_L7[ii].type,_L7[ii].src,_L7[ii].name);return _L2;},_fetchWithIframe:function(_L1){var _L2=null,doc=null;if(!this._iframe){_L2=this._iframe=document.createElement('iframe');copy_properties(_L2.style,{width:'0',height:'0',frameborder:'0',left:'0',top:'0',position:'absolute'});_L2.src="about:blank";_L2.id='bootloader_iframe';this._getHardpoint().appendChild(_L2);}setTimeout(function(){var _L2=document.getElementById('bootloader_iframe');var doc=(_L2.contentDocument?_L2.contentDocument:(_L2.contentWindow?_L2.contentWindow.document:window.frames.bootloader_iframe.document));var js=doc.createElement("script");if(_L1.charAt(0)=='/')_L1=location.protocol+'//'+location.host+_L1;js.src=_L1;js.type='text/javascript';doc.getElementsByTagName('head')[0].appendChild(js);},0);},requestResource:function(_L1,_L2,_L3){var h=this._getHardpoint();switch(_L1){case 'js':if(/\/rsrc.php\/(v[^\/]+\/)?(z[^\/]+\/)?p\//.test(_L2)){this._fetchWithIframe(_L2);}else{var _L5=document.createElement('script');_L5.src=_L2;_L5.type='text/javascript';h.appendChild(_L5);}break;case 'css':var _L6=null;for(var jj=0;jj<this._cssLinks.length;++jj)if(this._cssLinks[jj]._unused){_L6=this._cssLinks[jj];if(_L3)this._cssLinkMap[_L3]=jj;break;}if(!_L6){var _L6=document.createElement('link');_L6.rel="stylesheet";_L6.type="text/css";_L6.media="all";_L6.href=_L2;this._cssLinks.push(_L6);h.appendChild(_L6);}else _L6.href=_L2;_L6._unused=false;var id=Bootloader._getDivIdForCSSComponent(_L3);var div=document.getElementById(id);if(!div){div=document.createElement('div');div.id=id;document.body.appendChild(div);setTimeout(bind(Bootloader,Bootloader._pollCSS,_L3,Bootloader._CSS_POLL_EXPIRATION),Bootloader._CSS_POLL_INTERVAL,false);}break;default:throw new TypeError("Bad resource type `"+_L1+"'.");}},_getDivIdForCSSComponent:function(_L1){return 'bootloader_'+_L1.replace(/[^a-z0-9]/ig,'_');},_pollCSS:function(_L1,_L2){var id=Bootloader._getDivIdForCSSComponent(_L1);var div=document.getElementById(id);if(!div)return;var _L5='42';var _L6;var _L7=div.offsetHeight==_L5||div.currentStyle&&div.currentStyle['height']==_L5+'px'||window.getComputedStyle&&(_L6=document.defaultView.getComputedStyle(div,null))&&_L6.getPropertyValue('height')==_L5+'px';if(_L7||_L2<=0){Bootloader.done([_L1],true);div.parentNode.removeChild(div);if(!_L7&&window.Util)Util.error('Bootloading css file/package %s times out.',_L1);}else setTimeout(bind(Bootloader,Bootloader._pollCSS,_L1,_L2-Bootloader._CSS_POLL_INTERVAL),Bootloader._CSS_POLL_INTERVAL,false);},done:function(_L1,_L2){var _L3=(_L0&&_L0._preloaded)||[];(_L0||{})._preloaded=[];for(var ii=0;ii<_L3.length;++ii)_L1.push(_L3[ii]);this.requested(_L1);if(!_L2){var _L5={sender:this};Arbiter.inform(Arbiter.BOOTLOAD,_L5,Arbiter.BEHAVIOR_EVENT);}for(var ii=0;ii<_L1.length;++ii){var _L6=_L1[ii];Arbiter.inform(Arbiter.BOOTLOAD+'/'+_L6,true,Arbiter.BEHAVIOR_STATE);}},requested:function(_L1){_L1=arrayize(_L1);for(var ii=0;ii<_L1.length;++ii)this._requested[_L1[ii]]=true;},enableBootload:function(map){for(var _L2 in map)if(!this._componentMap[_L2])this._componentMap[_L2]=map[_L2];if(_L0)for(var i=0;i<_L0._pending.length;i++){var _L4=_L0._pending[i],_L5=_L4.components,_L6=true;for(var j=0;j<_L5.length;j++)if(!this._componentMap[_L5[j]]){_L6=false;break;}if(_L6){Bootloader.loadComponents(_L5,_L4.callback);_L0._pending.splice(i,1);}}onafterloadRegister(function(){Bootloader.preloadComponents();});},_unloadResource:function(_L1){if(this._cssLinks&&(_L1 in this._cssLinkMap)){var _L2=this._cssLinkMap[_L1];var _L3=this._cssLinks[_L2];_L3.href=Bootloader._UNUSED_CSS_URL;_L3._unused=true;delete this._cssLinkMap[_L1];delete this._requested[_L1];Arbiter.inform(Arbiter.BOOTLOAD+'/'+_L1,null,Arbiter.BEHAVIOR_STATE);}},_getHardpoint:function(){if(!this._hardpoint){var n,_L2=document.getElementsByTagName('head');if(_L2.length){n=_L2[0];}else n=document.body;this._hardpoint=n;}return this._hardpoint;},_requested:{},_permanent:{},_componentMap:{},_cssLinkMap:{},_cssLinks:[],_hardpoint:null,_CSS_POLL_EXPIRATION:5000,_CSS_POLL_INTERVAL:20,_UNUSED_CSS_URL:'javascript:void(0)'};})(window.Bootloader);
Function.prototype.extend=function(_L0){if(typeof _L0!='string')throw new TypeError('You must extend() with the name of a class, not the function object. '+'This generally means you need to replace "Dog.extend(Animal);" with '+'"Dog.extend(\'Animal\');".');if(!Metaprototype._arbiterHandle)Metaprototype._arbiterHandle=Arbiter.subscribe(Arbiter.BOOTLOAD,Metaprototype._onbootload.bind(Metaprototype));Metaprototype._queue(this,_L0);};function Metaprototype(){}copy_properties(Metaprototype,{_pending:{},_queue:function(_L0,_L1){_L0.__class_extending=true;var _L2=Arbiter.registerCallback(bind(Metaprototype,Metaprototype._apply,_L0,_L1),[Arbiter.FUNCTION_EXTENSION+'/'+_L1,Arbiter.BOOTLOAD]);if(_L2!==null)this._pending[_L1]=true;},_onbootload:function(_L0,_L1){this._update();},_update:function(){for(var _L0 in this._pending)if(!!window[_L0]){delete this._pending[_L0];if(!window[_L0].__class_extending){Arbiter.inform(Arbiter.FUNCTION_EXTENSION+'/'+_L0,true,Arbiter.BEHAVIOR_STATE);}else window[_L0].__class_name=_L0;}},_apply:function(_L0,_L1){delete _L0.__class_extending;var _L2=__metaprototype(window[_L1],0);var _L3=__metaprototype(_L0,_L2.prototype.__level+1);_L3.parent=_L2;if(!!_L0.__class_name)Arbiter.inform(Arbiter.FUNCTION_EXTENSION+'/'+_L0.__class_name,true,Arbiter.BEHAVIOR_STATE);}});function __metaprototype(obj,_L1){if(obj.__metaprototype)return obj.__metaprototype;var _L2=new Function();_L2.construct=__metaprototype_construct;_L2.prototype.construct=__metaprototype_wrap(obj,_L1,true);_L2.prototype.__level=_L1;_L2.base=obj;obj.prototype.parent=_L2;obj.__metaprototype=_L2;return _L2;}function __metaprototype_construct(_L0){__metaprototype_init(_L0.parent);var _L1=[];var obj=_L0;while(obj.parent){_L1.push(new_obj=new obj.parent());new_obj.__instance=_L0;obj=obj.parent;}_L0.parent=_L1[1];_L1.reverse();_L1.pop();_L0.__parents=_L1;_L0.__instance=_L0;return _L0.parent.construct.apply(_L0.parent,arguments);}function __metaprototype_init(_L0){if(_L0.initialized)return;var _L1=_L0.base.prototype;if(_L0.parent){__metaprototype_init(_L0.parent);var _L2=_L0.parent.prototype;for(i in _L2)if(i!='__level'&&i!='construct'&&_L1[i]===undefined)_L1[i]=_L0.prototype[i]=_L2[i];}_L0.initialized=true;var _L3=_L0.prototype.__level;for(i in _L1)if(i!='parent')_L1[i]=_L0.prototype[i]=__metaprototype_wrap(_L1[i],_L3);}function __metaprototype_wrap(_L0,_L1,_L2){if(typeof _L0!='function'||_L0.__prototyped)return _L0;var _L3=function(){var _L4=this.__instance;if(_L4){var _L5=_L4.parent;_L4.parent=_L1?_L4.__parents[_L1-1]:null;if(_L2){var _L6=[];for(var i=1;i<arguments.length;i++)_L6.push(arguments[i]);var ret=_L0.apply(_L4,_L6);}else var ret=_L0.apply(_L4,arguments);_L4.parent=_L5;return ret;}else return _L0.apply(this,arguments);};_L3.__prototyped=true;return _L3;}Function.prototype.mixin=function(){var _L0=arguments.length;var _L1=[this.prototype];for(var ii=0;ii<_L0;ii++)_L1.push(arguments[ii]);Function.mixin.apply(null,_L1);};Function.mixin=function(){var _L0=arguments[0];var _L1=arguments.length;var _L2;for(var ii=1;ii<_L1;ii++){_L2=arguments[ii];if((typeof _L2=='string'&&typeof Mixins[_L2]!='object')&&typeof _L2!='object'&&typeof _L2!='function')throw new TypeError('mixin was called with an invalid argument. mixin '+'may be called with a variable number of '+'arguments, but each must either be an object or '+'the name of a mixin in "Mixins"');_L2=Mixins[_L2]||_L2;copy_properties(_L0,_L2);}};Function.prototype.bind=function(_L0){var _L1=[arguments[0],this];var _L2=arguments.length;for(var ii=1;ii<_L2;ii++)_L1.push(arguments[ii]);return bind.apply(null,_L1);};Function.prototype.curry=Function.prototype.bind.bind(null,null);Function.prototype.shield=function(_L0){if(typeof this!='function')throw new TypeException();var _L1=this.bind.apply(this,to_array(arguments));return function(){return _L1();};};Function.prototype.defer=function(_L0){return this.delay(_L0)();};Function.prototype.delay=function(_L0,_L1){if(typeof this!='function')throw new TypeError();var _L2=this;return function(){var _L3=arguments;return setTimeout(function(){_L2.apply(_L1||null,_L3);},_L0||0);};};Function.prototype.deferUntil=function(_L0,_L1,_L2){if(typeof this!='function')throw new TypeError();if(_L1&&typeof _L1!='number')throw new TypeError();if(_L0()){this();return;}var _L3=this,_L4=null,_L5=(new Date()).getTime();var fn=function(){if(_L0()||_L1&&((new Date()).getTime()-_L5)>=_L1){_L3();_L4&&clearInterval(_L4);}};_L4=setInterval(fn,50,_L2);return _L4;};Function.prototype.recur=function(_L0,_L1){if(typeof this!='function')throw new TypeError();return setInterval(this,_L0,_L1);};Function.prototype.occur=function(){if(typeof this!='function')throw new TypeError();return this.apply(this,arguments);};Function.prototype.memoize=function(){if(typeof this!='function')throw new TypeError();var _L0={};var _L1=this;return function(){var key=JSON.encode(arguments);if(!(key in _L0))_L0[key]=_L1.apply(this,arguments);return _L0[key];};};Function.prototype.toString=(function(_L0){return function(_L1){var _L2=_L0.call(this);if(_L1)return _L2;var _L3=_L2.split('\n'),_L4=5;if(_L3.length>_L4)_L3.splice(3,_L3.length-_L4,'    ...');return _L3.join('\n');};})(Function.prototype.toString);function bagofholding(){return undefined;}function abstractMethod(){throw new Error('You must implement this function in your base class.');}function identity(_L0){return _L0;}function truth(){return true;}function fireonce(fn){var _L1=false;return function(){if(!_L1){_L1=true;return fn();}};}
var Mixins={Arbiter:{_getArbiterInstance:function(){return this._arbiter||(this._arbiter=new Arbiter());},inform:function(_L0,_L1,_L2){this._getArbiterInstance().inform(_L0,_L1,_L2);},subscribe:function(_L0,_L1,_L2){return this._getArbiterInstance().subscribe(_L0,_L1,_L2);},unsubscribe:function(_L0){this._getArbiterInstance().unsubscribe(_L0);}},Options:{setOptions:function(_L0){this.options=copy_properties(this.options||{},_L0||{});}}};
function object(o){var F=new Function();F.prototype=o;return new F();}function is_scalar(v){switch(typeof(v)){case 'string':case 'number':case 'null':case 'boolean':return true;}return false;}function keys(obj){if(hasArrayNature(obj))throw new TypeError('keys() was passed an array.');var _L1=[];for(var i in obj)_L1.push(i);return _L1;}function values(obj){if(hasArrayNature(obj))throw new TypeError('values() was passed an array; use to_array().');var _L1=[];for(var i in obj)_L1.push(obj[i]);return _L1;}function count(obj){if(hasArrayNature(obj))throw new TypeError('count() was passed an array.');var _L1=0;for(var i in obj)_L1++;return _L1;}function are_equal(a,b){return JSON.encode(a)==JSON.encode(b);}function merge(){var ret={};for(var i=0;i<arguments.length;i++)copy_properties(ret,arguments[i]);return ret;}function obj_filter_keys(obj,_L1){var ret={};for(var ii=0;ii<_L1.length;ii++){var key=_L1[ii];if(key in obj)ret[key]=obj[key];}return ret;}function obj_intersect_keys(){var ret={};var _L1=arguments[0];oloop:for(var j in _L1){if(!_L1.hasOwnProperty(j))continue;iloop:for(var ii=1;ii<arguments.length;ii++){var obj=arguments[ii];for(var k in obj)if(k===j){if(arguments.length-1===ii)ret[j]=_L1[j];continue iloop;}continue oloop;};};return ret;}function head(obj){for(var i in obj)return obj[i];return null;}Object.from=function(_L0,_L1){if(!hasArrayNature(_L0))throw new TypeError('Must pass an array of keys.');var _L2={};var _L3=hasArrayNature(_L1);if(typeof _L1=='undefined')_L1=true;for(var i=_L0.length;i--;)_L2[_L0[i]]=_L3?_L1[i]:_L1;return _L2;};function coalesce(){for(var i=0;i<arguments.length;++i)if(arguments[i]!=null)return arguments[i];return null;}
function to_array(obj){var ret=[];for(var i=0,l=obj.length;i<l;++i)ret.push(obj[i]);return ret;}var $A=to_array;Array.prototype.alloc=function(_L0){return _L0?new Array(_L0):[];};Array.prototype.map=function(_L0,_L1){if(this==window)throw new TypeError();if(typeof(_L0)!=="function")throw new TypeError();var ii;var len=this.length;var r=this.alloc(len);for(ii=0;ii<len;++ii)if(ii in this)r[ii]=_L0.call(_L1,this[ii],ii,this);return r;};Array.prototype.forEach=function(_L0,_L1){this.map(_L0,_L1);return this;};Array.prototype.each=function(_L0,_L1){return this.forEach.apply(this,arguments);};Array.prototype.filter=function(_L0,_L1){_L0=_L0||identity;if(this==window)throw new TypeError();if(typeof(_L0)!=="function")throw new TypeError();var ii,val,len=this.length,r=this.alloc();for(ii=0;ii<len;++ii)if(ii in this){val=this[ii];if(_L0.call(_L1,val,ii,this))r.push(val);}return r;};Array.prototype.every=function(_L0,_L1){return (this.filter(_L0,_L1).length==this.length);};Array.prototype.some=function(_L0,_L1){return (this.filter(_L0,_L1).length>0);};Array.prototype.pull=function(_L0){if(this==window)throw new TypeError();if(typeof(_L0)=='string'){var _L1=_L0;_L0=function(){return this[_L1];};}if(typeof(_L0)!=='function')throw new TypeError();var _L2=Array.prototype.slice.call(arguments,1);var len=this.length;var r=this.alloc(len);for(ii=0;ii<len;++ii)if(ii in this)r[ii]=_L0.apply(this[ii],_L2);return r;};Array.prototype.pullEach=function(_L0){this.pull.apply(this,arguments);return this;};Array.prototype.filterEach=function(_L0){var map=this.pull.apply(this,arguments);var len=this.length;var r=this.alloc();for(var ii=0;ii<len;++ii)if(ii in this)r.push(this[ii]);return r;};Array.prototype.reduce=null;Array.prototype.reduceRight=null;Array.prototype.sort=(function(_L0){return function(_L1){return (this==window)?null:(_L1?_L0.call(this,function(a,b){return _L1(a,b);}):_L0.call(this));};})(Array.prototype.sort);Array.prototype.reverse=(function(_L0){return function(){return (this==window)?null:_L0.call(this);};})(Array.prototype.reverse);Array.prototype.concat=(function(_L0){return function(){return (this==window)?null:_L0.apply(this,arguments);};})(Array.prototype.concat);Array.prototype.slice=(function(_L0){return function(){return (this==window)?null:_L0.apply(this,arguments);};})(Array.prototype.slice);Array.prototype.clone=Array.prototype.slice;if(Array.prototype.indexOf){Array.prototype.indexOf=(function(_L0){return function(val,_L2){return (this==window)?null:_L0.apply(this,arguments);};})(Array.prototype.indexOf);}else Array.prototype.indexOf=function(val,_L1){if(this==window)throw new TypeError();var len=this.length;var _L3=Number(_L1)||0;_L3=(_L3<0)?Math.ceil(_L3):Math.floor(_L3);if(_L3<0)_L3+=len;for(;_L3<len;_L3++)if(_L3 in this&&this[_L3]===val)return _L3;return -1;};Array.prototype.contains=function(val){return this.indexOf(val)!=-1;};Array.prototype.remove=function(val){var _L1=this.indexOf(val);if(_L1!=-1)this.splice(_L1,1);};function mapToInt(_L0){return _L0.map(function(val,i){return parseInt(val,10);});}function unique(_L0){var obj={};var res=[];for(var i=0;i<_L0.length;i++){var val=_L0[i];if(!obj[val])res.push(val);obj[val]=1;}return res;}function array_set_add(_L0,_L1){if(!_L0.contains(_L1))_L0.push(_L1);return _L0;}function array_intersect(a1,a2){var ret=[];for(var i=0;i<a1.length;i++)if(a2.contains(a1[i]))ret.push(a1[i]);return ret;}
var ua={ie:function(){return ua._populate()||this._ie;},firefox:function(){return ua._populate()||this._firefox;},opera:function(){return ua._populate()||this._opera;},safari:function(){return ua._populate()||this._safari;},safariPreWebkit:function(){return ua._populate()||this._safari<500;},windows:function(){return ua._populate()||this._windows;},osx:function(){return ua._populate()||this._osx;},linux:function(){return ua._populate()||this._linux;},_populated:false,_populate:function(){if(ua._populated)return;ua._populated=true;var _L0=/(?:MSIE.(\d+\.\d+))|(?:(?:Firefox|GranParadiso|Iceweasel).(\d+\.\d+))|(?:Opera.(\d+\.\d+))|(?:AppleWebKit.(\d+(?:\.\d+)?))/.exec(navigator.userAgent);var os=/(Mac OS X)|(Windows;)|(Linux)/.exec(navigator.userAgent);if(_L0){ua._ie=_L0[1]?parseFloat(_L0[1]):NaN;if(ua._ie>=8&&!window.HTMLCollection)ua._ie=7;ua._firefox=_L0[2]?parseFloat(_L0[2]):NaN;ua._opera=_L0[3]?parseFloat(_L0[3]):NaN;ua._safari=_L0[4]?parseFloat(_L0[4]):NaN;}else ua._ie=ua._firefox=ua._opera=ua._safari=NaN;if(os){ua._osx=!!os[1];ua._windows=!!os[2];ua._linux=!!os[3];}else ua._osx=ua._windows=ua._linux=false;}};
OnloadEvent={ONLOAD:'onload/onload',ONLOAD_CALLBACK:'onload/onload_callback',ONBEFOREUNLOAD:'onload/beforeunload',ONUNLOAD:'onload/unload'};function _include_quickling_events_default(){return !window.loading_page_chrome;}function onbeforeunloadRegister(_L0,_L1){if(_L1===undefined)_L1=_include_quickling_events_default();if(_L1){_addHook('onbeforeleavehooks',_L0);}else _addHook('onbeforeunloadhooks',_L0);}function onunloadRegister(_L0,_L1){if(_L1===undefined)_L1=_include_quickling_events_default();if(_L1){_addHook('onleavehooks',_L0);}else _addHook('onunloadhooks',_L0);}function _addHook(_L0,_L1){(window[_L0]?window[_L0]:(window[_L0]=[])).push(_L1);}function removeHook(_L0){window[_L0]=[];}function _domcontentready(){window.CavalryLogger&&CavalryLogger.getInstance().setTimeStamp('t_domcontent');Arbiter.inform(Arbiter.ONLOAD_DOMCONTENT,true,Arbiter.BEHAVIOR_STATE);}function _bootstrapEventHandlers(){if(document.addEventListener){if(ua.safari()<525){var _L0=setInterval(function(){if(/loaded|complete/.test(document.readyState)){_domcontentready();clearInterval(_L0);}},10);}else document.addEventListener("DOMContentLoaded",function(){_domcontentready();},true);}else{var src='javascript:void(0)';if(window.location.protocol=='https:')src='//:';document.write('<script onreadystatechange="if (this.readyState==\'complete\') {'+'this.parentNode.removeChild(this);_domcontentready();}" '+'defer="defer" src="'+src+'"><\/script\>');}window.onload=function(){window.CavalryLogger&&CavalryLogger.getInstance().setTimeStamp('t_layout');var _L2=document&&document.body&&document.body.offsetWidth;window.CavalryLogger&&CavalryLogger.getInstance().setTimeStamp('t_onload');Arbiter.inform(OnloadEvent.ONLOAD,true,Arbiter.BEHAVIOR_STATE);};window.onbeforeunload=function(){var e={};Arbiter.inform(OnloadEvent.ONBEFOREUNLOAD,e,Arbiter.BEHAVIOR_STATE);return e.warn;};window.onunload=function(){Arbiter.inform(OnloadEvent.ONUNLOAD,true,Arbiter.BEHAVIOR_STATE);};}onload_callback=Arbiter.registerCallback(function(){Arbiter.inform(OnloadEvent.ONLOAD_CALLBACK,true,Arbiter.BEHAVIOR_STATE);},[OnloadEvent.ONLOAD]);if(!window._eventHandlersBootstrapped){_eventHandlersBootstrapped=true;_bootstrapEventHandlers();}
function env_get(k){return typeof(window['Env'])!='undefined'&&Env[k];}function muffinize(str){var _L1='a';var _L2='d';var _L3=[_L1,_L2].join('');return str.replace(/muffin/g,_L3);}var Util=window.Util||{isDevelopmentEnvironment:function(){return env_get('dev');},warn:bagofholding,error:bagofholding,info:bagofholding,group:bagofholding,groupEnd:bagofholding,log:bagofholding,stack:bagofholding,trace:bagofholding};
function _fbt(_L0){return fbt(arguments);}function fbt(_L0){if(arguments.length==1)return _L0;var _L1=new Object();var _L2;var _L3=1;var _L4=/(?:[^\{]|^)(\{\w\})(?!\})/g;while((_L2=_L4.exec(_L0))!=null){var _L5=_L2[1].slice(1,-1);while(!(_L5 in _L1))if(_L3<arguments.length){var arg=arguments[_L3++];var _L7=typeof arg;if(arg==null){Util.error('fbt: null value for arg for text: %s',_L0);}else if(arg instanceof Array||_L7=="array"){Util.error(sprintf('fbt: cannot use Array type as arg in js fbt. '+'Use Object instead. text: %s',_L0));}else if(_L7=='number'||_L7=='string'){_L1[_L5]=arg;}else if(_L7=='object'){copy_properties(_L1,arg);}else Util.error(sprintf('fbt: cannot use %s type as arg in fbt: %s',_L7,_L0));}else{Util.error('fbt: Too few arguments for text: %s',_L0);break;}}if(_L3<arguments.length&&typeof arguments[_L3++]=="string"&&_L3<arguments.length)Util.error('fbt: Too many arguments.');return fbt_replace_braces(_L0,_L1);}function fbts(_L0,_L1){return fbt.apply(this,to_array(arguments).slice(1));}function fbt_replace_braces(_L0,_L1){if(_L1)if(typeof _L1!='object'){Util.error('intl.js: the 2nd argument must be a keyed array (not a string) for tx('+_L0+', ...)');}else for(var key in _L1){var reg=new RegExp("([^\\{]|^)\\{"+key+"\\}(?!\\})",'g');_L0=_L0.replace(reg,'$1'+_L1[key]);}return _L0.replace(/\{\{/g,'{').replace(/\}\}/g,'}');}function tx(str,_L1){if(typeof _string_table=='undefined')return;str=_string_table[str];return _tx(str,_L1);}function intl_ends_in_punct(str){if(typeof str!='string')return false;return str.match(new RegExp(intl_ends_in_punct.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'+']*$'));}intl_ends_in_punct.punct_char_class='['+'.!?'+'\u3002'+'\uFF01'+'\uFF1F'+'\u0964'+'\u2026'+'\u0EAF'+'\u1801'+'\u0E2F'+'\uFF0E'+']';function intl_phonological_rules(str){var _L1=window.intl_locale_rewrites;var _L2;var _L3=str;try{if(_L1){var _L4=[];var _L5=[];for(var p in _L1['patterns']){var pat=p;var rep=_L1['patterns'][p];for(var m in _L1['meta']){_L2=new RegExp(m.slice(1,-1),'g');pat=pat.replace(_L2,_L1['meta'][m]);rep=rep.replace(_L2,_L1['meta'][m]);}_L4[_L4.length]=pat;_L5[_L5.length]=rep;}for(var ii=0;ii<_L4.length;ii++){_L2=new RegExp(_L4[ii].slice(1,-1),'g');if(_L5[ii]=='javascript'){if(m=new String(str.match(_L2)))str=str.replace(_L2,m.slice(1).toLowerCase());}else str=str.replace(_L2,_L5[ii]);}}}catch(e){Util.log(e);str=_L3;}_L2=new RegExp('\x01','g');str=str.replace(_L2,'');return str;}function _tx(str,_L1){if(_L1)if(typeof _L1!='object'){Util.error('intl.js: the 2nd argument must be a keyed array (not a string) for tx('+str+', ...)');}else{var _L2;for(var key in _L1){if(intl_ends_in_punct(_L1[key])){_L2=new RegExp('\{'+key+'\}'+intl_ends_in_punct.punct_char_class+'*','g');}else _L2=new RegExp('\{'+key+'\}','g');var _L4='';if(_L1[key][0]!='~')_L4='\x01';str=str.replace(_L2,_L4+_L1[key]+_L4);}str=intl_phonological_rules(str);}return str;}
InitialJSLoader={INITIAL_JS_READY:'BOOTLOAD/JSREADY',load:function(_L0){InitialJSLoader.callback=Bootloader.loadResources(_L0,InitialJSLoader.callback);},callback:Arbiter.registerCallback(function(){Arbiter.inform(InitialJSLoader.INITIAL_JS_READY,true,Arbiter.BEHAVIOR_STATE);},[Arbiter.ONLOAD_DOMCONTENT])};
function chain(u,v){var fn,_L3=[];for(var ii=0;ii<arguments.length;ii++)_L3.push(arguments[ii]);fn=function(_L5){_L5=_L5||window.event;for(var ii=0;ii<_L3.length;ii++)if(_L3[ii]&&_L3[ii].apply(this,arguments)===false){return false;}else if(_L5&&_L5.cancelBubble)return true;return true;};fn.toString=function(){return chain._toString(_L3);};return fn;}if(!chain._toString)chain._toString=function(_L0){var ret='chained fns',_L2=_L0.filter();for(var i=0;i<_L0.length;i++)ret+='\n'+_L0[i].toString();return ret;};
function goURI(uri,_L1){uri=uri.toString();if(!_L1&&window.PageTransitions&&PageTransitions.isInitialized()){PageTransitions.go(uri);}else if(window.location.href==uri){window.location.reload();}else window.location.href=uri;}function loadExternalJavascript(_L0,_L1,_L2){if(_L0 instanceof Array){var url=_L0.shift(0);if(url){loadExternalJavascript(url,function(){if(_L0.length){loadExternalJavascript(_L0,_L1,_L2);}else _L1&&_L1();},_L2);}else if(_L1)_L1();}else{var _L4=_L2?document.body:document.getElementsByTagName('head')[0];var _L5=document.createElement('script');_L5.type='text/javascript';_L5.src=_L0;if(_L1){_L5.onerror=_L5.onload=_L1;_L5.onreadystatechange=function(){if(this.readyState=="complete"||this.readyState=="loaded")_L1();};}_L4.appendChild(_L5);return _L5;}}var rsrcProvideAndRequire=function(){var _L0={},_L1={};function _L2(_L4,_L5,_L6){if(_L4 in _L1){_L6=_L6||{};for(var ii in _L1[_L4].requires)if(!(ii in _L6)){for(var jj in _L1[_L4].provides)_L6[jj]=1;if((ii in _L5)||_L2(ii,_L5,_L6))return true;}}return false;}function _L3(){do{var hit=false;for(var ii in _L1){var res=_L1[ii];for(var jj in res.requires)if(!_L0[jj]&&!_L2(jj,res.provides)){res=null;break;}if(res){for(jj in res.provides){delete _L1[jj];_L0[jj]=1;}res.fn.call();hit=true;}}}while(hit);}return function(_L4,_L5,fn){if(window.disableRPAR){fn();return;}var _L7={provides:_L4,requires:_L5,fn:fn};for(var ii in _L4)_L1[ii]=_L7;_L3();};}();function invoke_callbacks(_L0){if(_L0)for(var ii=0;ii<_L0.length;ii++)try{(new Function(_L0[ii]))();}catch(exception){Util.error('Error %x in executing hooks: %s',exception,_L0[ii].toString());}}
var CSSLite=(function(){var _L0=function(_L1){return _L1.replace(/\s+/g,' ').trim();};return {hasClass:function(_L1,_L2){return (' '+_L1.className+' ').indexOf(' '+_L2+' ')>-1;},addClass:function(_L1,_L2){if(_L2&&!CSSLite.hasClass(_L1,_L2))_L1.className=_L0(_L1.className+' '+_L2);return _L1;},removeClass:function(_L1,_L2){if(_L2&&CSSLite.hasClass(_L1,_L2))_L1.className=_L0(_L1.className.replace(new RegExp('(^|\\s)'+_L2+'(?:\\s|$)'),'$1'));return _L1;}};})();
var NodeAugment=(function(){var _L0={},_L1=!!window.HTMLElement,_L2=_L1?HTMLElement.prototype:{},_L3=function(u,v){for(var i in v)u[i]=v[i];},_L4=function(fn){return function(){return fn.apply(null,[this].concat([].slice.call(arguments)));};};return {add:function(_L5,tag){var obj=_L2;if(tag){tag=tag.toUpperCase();obj=_L0[tag]||(_L0[tag]={});}for(var i in _L5)if(typeof _L5[i]=='function')obj[i]=_L4(_L5[i]);},extend:function(_L5){if(!_L5||_L5==window||_L5.nodeType!=1||_L5.nodeName in {OBJECT:1,EMBED:1,APPLET:1})return _L5;!_L1&&_L3(_L5,_L2);_L3(_L5,_L0[_L5.nodeName]||{});return _L5;}};})();
DataStore=window.DataStore||{_storage:{},_elements:{},_tokenCounter:1,_NOT_IN_DOM_CONST:1,_getStorage:function(_L0){var _L1;if(typeof _L0=='string'){_L1='str_'+_L0;}else{_L1='elem_'+(_L0.__FB_TOKEN||(_L0.__FB_TOKEN=[DataStore._tokenCounter++]))[0];DataStore._elements[_L1]=_L0;}return DataStore._storage[_L1]||(DataStore._storage[_L1]={});},_shouldDeleteData:function(_L0){if(!_L0.nodeName)return false;try{if(null!=_L0.offsetParent)return false;}catch(ex){}if(document.documentElement.contains){return !document.documentElement.contains(_L0);}else return (document.documentElement.compareDocumentPosition(_L0)&DataStore._NOT_IN_DOM_CONST);},set:function(_L0,key,_L2){var _L3=DataStore._getStorage(_L0);_L3[key]=_L2;return _L0;},get:function(_L0,key,_L2){var _L3=DataStore._getStorage(_L0);var _L4=_L3[key];if((undefined===_L4)&&(typeof _L0.getAttribute=='function')){var _L5=_L0.getAttribute('data-'+key);_L4=(null===_L5)?undefined:_L5;}if((_L2!==undefined)&&(_L4===undefined))_L4=_L3[key]=_L2;return _L4;},remove:function(_L0,key){var _L2=DataStore._getStorage(_L0);delete _L2[key];return _L0;},cleanup:function(){var _L0,_L1;for(_L0 in DataStore._elements){_L1=DataStore._elements[_L0];if(DataStore._shouldDeleteData(_L1)){delete DataStore._storage[_L0];delete DataStore._elements[_L0];}}}};
window.Event=window.Event||function(){};Event.prototype=Event.prototype||{};Event.DATASTORE_KEY='Event.listeners';function $E(e){e=e||window.event||{};if(!e._inherits_from_prototype)for(var k in Event.prototype)try{e[k]=Event.prototype[k];}catch(ignored){}return e;}(function(){copy_properties(Event.prototype,{_inherits_from_prototype:true,stop:function(){this.cancelBubble=true;this.stopPropagation&&this.stopPropagation();return this;},prevent:function(){this.returnValue=false;this.preventDefault&&this.preventDefault();return this;},kill:function(){this.stop().prevent();return false;},getTarget:function(){var _L6=this.target||this.srcElement;return _L6?$(_L6):null;},getRelatedTarget:function(){var _L6=this.relatedTarget||this.fromElement;return _L6?$(_L6):null;},getModifiers:function(){var m={control:!!this.ctrlKey,shift:!!this.shiftKey,alt:!!this.altKey,meta:!!this.metaKey};m.access=ua.osx()?m.control:m.alt;m.any=m.control||m.shift||m.alt||m.meta;return m;}});copy_properties(Event,{listen:function(_L6,_L7,_L8,_L9){if(typeof _L6=='string')_L6=$(_L6,true);if(typeof _L9=='undefined')_L9=Event.Priority.NORMAL;if(typeof _L7=='object'){var _La={};for(var t in _L7)_La[t]=Event.listen(_L6,t,_L7[t],_L9);return _La;}if(_L7.match(/^on/i))throw new TypeError("Bad event name `"+event+"': use `click', not `onclick'.");_L7=_L7.toLowerCase();var _Lc=DataStore.get(_L6,key,{});if(_L3[_L7]){var _Ld=_L3[_L7];_L7=_Ld.base;_L8=_Ld.wrap(_L8);}_L4(_L6,_L7);var _Le=_Lc[_L7];if(!(_L9 in _Le))_Le[_L9]=[];var id=_Le[_L9].length,ref=new EventHandlerRef(_L8,_Le[_L9],id);_Le[_L9].push(ref);return ref;},stop:function(e){return $E(e).stop();},prevent:function(e){return $E(e).prevent();},kill:function(e){return $E(e).kill();},getKeyCode:function(_L6){_L6=$E(_L6);if(!_L6)return false;switch(_L6.keyCode){case 63232:return 38;case 63233:return 40;case 63234:return 37;case 63235:return 39;case 63272:case 63273:case 63275:return null;case 63276:return 33;case 63277:return 34;}if(_L6.shiftKey)switch(_L6.keyCode){case 33:case 34:case 37:case 38:case 39:case 40:return null;}return _L6.keyCode;},getPriorities:function(){if(!_L0){var _L6=values(Event.Priority);_L6.sort(function(a,b){return a-b;});_L0=_L6;}return _L0;}});var _L0=null,key=Event.DATASTORE_KEY;var _L2=function(_L6){return function(e){if(!DOM.contains(this,e.getRelatedTarget()))return _L6.call(this,e);};};var _L3={'mouseenter':{base:'mouseover',wrap:_L2},'mouseleave':{base:'mouseout',wrap:_L2}};var _L4=function(_L6,_L7){var _L8='on'+_L7,_L9=DataStore.get(_L6,key);if(_L7 in _L9){if(_L6[_L8]!==_L5)throw new Error("`"+_L8+"' listen handler gone!");return;}_L9[_L7]={};var _La=_L6[_L8];_L6[_L8]=_L5;if(_La)Event.listen(_L6,_L7,_La,Event.Priority.TRADITIONAL);};var _L5=function(_L6){_L6=$E(_L6);var _L7=_L6.type;if(!DataStore.get(this,key))throw new Error("Bad listenHandler context.");var _L8=DataStore.get(this,key)[_L7];if(!_L8)throw new Error("No registered handlers for `"+_L7+"'.");var _L0=Event.getPriorities();for(var _L9=0;_L9<_L0.length;_L9++){var _La=_L0[_L9];if(_La in _L8){var _Lb=_L8[_La];for(var idx=0;idx<_Lb.length;idx++){if(!_Lb[idx])continue;var _Ld=_Lb[idx].fire(this,_L6);if(_Ld===false){return _L6.kill();}else if(_L6.returnValue===false){return false;}else if(_L6.cancelBubble)return _L6.stop();}}}};})();NodeAugment.add({listen:Event.listen});Event.Priority={URGENT:-20,TRADITIONAL:-10,NORMAL:0};function EventHandlerRef(_L0,_L1,_L2){this._handler=_L0;this._container=_L1;this._index=_L2;}EventHandlerRef.prototype={remove:function(){delete this._handler;delete this._container[this._index];},fire:function(_L0,_L1){return this._handler.call(_L0,_L1);}};function addEventBase(obj,_L1,fn,_L3){if(obj.addEventListener){obj.addEventListener(_L1,fn,false);}else if(obj.attachEvent){var _L4=_L1+fn+_L3;obj["e"+_L4]=fn;obj[_L4]=function(){obj["e"+_L4](window.event);};obj.attachEvent("on"+_L1,obj[_L4]);}return fn;}function removeEventBase(obj,_L1,fn,_L3){if(obj.removeEventListener){obj.removeEventListener(_L1,fn,false);}else if(obj.detachEvent){var _L4=_L1+fn+_L3;if(obj[_L4]){obj.detachEvent("on"+_L1,obj[_L4]);obj[_L4]=null;obj["e"+_L4]=null;}}}
function Vector2(x,y,_L2){copy_properties(this,{x:parseFloat(x),y:parseFloat(y),domain:_L2||'pure'});}copy_properties(Vector2.prototype,{toString:function(){return '('+this.x+', '+this.y+')';},add:function(vx,vy){if(arguments.length==1){if(vx.domain!='pure')vx=vx.convertTo(this.domain);return this.add(vx.x,vx.y);}var dx=parseFloat(vx);var dy=parseFloat(vy);return new Vector2(this.x+dx,this.y+dy,this.domain);},mul:function(sx,sy){if(typeof(sy)=="undefined")sy=sx;return new Vector2(this.x*sx,this.y*sy,this.domain);},sub:function(vx,vy){if(arguments.length==1){return this.add(vx.mul(-1));}else return this.add(-vx,-vy);},distanceTo:function(v){return this.sub(v).magnitude();},magnitude:function(){return Math.sqrt((this.x*this.x)+(this.y*this.y));},convertTo:function(_L0){if(_L0!='pure'&&_L0!='viewport'&&_L0!='document'){Util.error('Domain %q is not valid; legitimate coordinate domains are %q, %q, '+'%q.',_L0,'pure','viewport','document');return new Vector2(0,0);}if(_L0==this.domain)return new Vector2(this.x,this.y,this.domain);if(_L0=='pure')return new Vector2(this.x,this.y);if(this.domain=='pure'){Util.error('Unable to covert a pure vector to %q coordinates; a pure vector is '+'abstract and does not exist in any document coordinate system. If '+'you need to hack around this, create the vector explicitly in some '+'document coordinate domain, by passing a third argument to the '+'constructor. But you probably don\'t, and are just using the class '+'wrong. Stop doing that.',_L0);return new Vector2(0,0);}var o=Vector2.getScrollPosition('document');var x=this.x,y=this.y;if(this.domain=='document'){x-=o.x;y-=o.y;}else{x+=o.x;y+=o.y;}return new Vector2(x,y,_L0);},setElementPosition:function(el){var p=this.convertTo('document');el.style.left=parseInt(p.x)+'px';el.style.top=parseInt(p.y)+'px';return this;},setElementDimensions:function(el){return this.setElementWidth(el).setElementHeight(el);},setElementWidth:function(el){el.style.width=parseInt(this.x,10)+'px';return this;},setElementHeight:function(el){el.style.height=parseInt(this.y,10)+'px';return this;},scrollElementBy:function(el){if(el==document.body)el=DOMScroll.getScrollRoot();if(el==document.body){window.scrollBy(this.x,this.y);}else{el.scrollLeft+=this.x;el.scrollTop+=this.y;}return this;}});copy_properties(Vector2,{compass:{east:'e',west:'w',north:'n',south:'s',center:'center',northeast:'ne',northwest:'nw',southeast:'se',southwest:'sw'},getEventPosition:function(e,_L1){_L1=_L1||'document';e=$E(e);var x=e.pageX||(e.clientX+(document.documentElement.scrollLeft||document.body.scrollLeft));var y=e.pageY||(e.clientY+(document.documentElement.scrollTop||document.body.scrollTop));var v=new Vector2(x,y,'document');if(DOMScroll.getScrollWrapper())v=v.add(Vector2.getScrollPosition());return v.convertTo(_L1);},getScrollPosition:function(_L0){_L0=_L0||'document';var _L1=DOMScroll.getScrollWrapper();if(_L1){var x=_L1.scrollLeft;var y=_L1.scrollTop;}else{var x=document.body.scrollLeft||document.documentElement.scrollLeft;var y=document.body.scrollTop||document.documentElement.scrollTop;}return (new Vector2(x,y,'document').convertTo(_L0));},getElementPosition:function(el,_L1){_L1=_L1||'document';if(!el)return;if(ua.safari()<500&&el.tagName=='TR')el=el.firstChild;var _L2=el.offsetLeft;var top=el.offsetTop;var op=el.offsetParent;var _L5=DOMScroll.getScrollWrapper()||document.body;var _L6=false;while(el.parentNode&&_L5!=el.parentNode&&document.body!=el.parentNode){el=el.parentNode;if(!isNaN(el.scrollTop))if(!(ua.opera()<9.5)||!operaIgnoreScroll[window.getComputedStyle(el,'').getPropertyValue('display')]){top-=el.scrollTop;_L2-=el.scrollLeft;}if(op==el){if(ua.safari()<500&&el.tagName=='TR'){top+=el.firstChild.offsetTop;_L2+=el.firstChild.offsetLeft;}else{top+=el.offsetTop;_L2+=el.offsetLeft;}op=el.offsetParent;}if(op&&CSS.getStyle(op,'position')=='fixed'){_L6=true;top+=op.offsetTop;_L2+=op.offsetLeft;break;}}if(_L6){var _L7=Vector2.getScrollPosition('document');_L2+=_L7.x;top+=_L7.y;}return (new Vector2(_L2,top,'document').convertTo(_L1));},getElementDimensions:function(el,_L1){if(ua.safariPreWebkit()&&el.nodeName=='TR'){var tds=el.getElementsByTagName('td');var _L3=Vector2.getElementCompassPoint(tds[tds.length-1],Vector2.compass.southeast,_L1).sub(Vector2.getElementPosition(tds[0],'document',_L1));return _L3;}var x=(_L1?el.clientWidth:el.offsetWidth)||0;var y=(_L1?el.clientHeight:el.offsetHeight)||0;return new Vector2(x,y);},getHiddenElementDimensions:function(el){var _L1=$(el);var els=_L1.style;var _L3=els.visibility;var _L4=els.position;var _L5=els.display;if(_L5=='none'){els.visibility='hidden';els.position='absolute';els.display='block';}var _L6=Vector2.getElementDimensions(_L1);els.display=_L5;els.position=_L4;els.visibility=_L3;return _L6;},getElementCompassPoint:function(el,_L1,_L2){_L1=_L1||Vector2.compass.southeast;var p=Vector2.getElementPosition(el);var d=Vector2.getElementDimensions(el,_L2);var c=Vector2.compass;switch(_L1){case c.east:return p.add(d.x,d.y*.5);case c.west:return p.add(0,d.y*.5);case c.north:return p.add(d.x*.5,0);case c.south:return p.add(d.x*.5,d.y);case c.center:return p.add(d.mul(.5));case c.northwest:return p;case c.northeast:return p.add(d.x,0);case c.southwest:return p.add(0,d.y);case c.southeast:return p.add(d);}Util.error('Unknown compass point %s.',_L1);return p;},getViewportDimensions:function(){var x=(window&&window.innerWidth)||(document&&document.documentElement&&document.documentElement.clientWidth)||(document&&document.body&&document.body.clientWidth)||0;var y=(window&&window.innerHeight)||(document&&document.documentElement&&document.documentElement.clientHeight)||(document&&document.body&&document.body.clientHeight)||0;return new Vector2(x,y,'viewport');},getDocumentDimensions:function(){var _L0=DOMScroll.getScrollWrapper();var x=(_L0&&_L0.scrollWidth)||(document&&document.documentElement&&document.documentElement.scrollWidth)||(document&&document.body&&document.body.scrollWidth)||0;var y=(_L0&&_L0.scrollHeight)||(document&&document.documentElement&&document.documentElement.scrollHeight)||(document&&document.body&&document.body.scrollHeight)||0;return new Vector2(x,y,'document');},scrollIntoView:function(el){var _L1=el.offsetParent;var _L2=Rect(el);var _L3=_L2.boundWithin(Rect(_L1)).getPositionVector();_L2.getPositionVector().sub(_L3).scrollElementBy(_L1);}});var operaIgnoreScroll={'table':true,'inline-table':true,'inline':true};function elementX(obj){return Vector2.getElementPosition(obj,'document').x;}function elementY(obj){return Vector2.getElementPosition(obj,'document').y;}NodeAugment.add({getPosition:Vector2.getElementPosition,getDimensions:Vector2.getElementDimensions,getHiddenDimensions:Vector2.getHiddenElementDimensions,getCompassPoint:Vector2.getElementCompassPoint});
var DOMScroll={_scrollWrapper:0,usingScrollWrapper:function(){return env_get('use_scroll_wrapper');},getScrollWrapper:function(){if(DOMScroll._scrollWrapper===0)DOMScroll._scrollWrapper=DOMScroll.usingScrollWrapper()?ge('scroll_wrapper'):null;return DOMScroll._scrollWrapper;},getScrollRoot:function(){return DOMScroll.getScrollWrapper()||document.body;},SCROLL_CHANGE:'scroll_change',_hasScrollListeners:false,_isScrolled:null,registerScrollChangeHandler:function(cb){Arbiter.subscribe(DOMScroll.SCROLL_CHANGE,cb);if(!DOMScroll._hasScrollListeners){DOMScroll._hasScrollListeners=true;Event.listen(window,'resize',DOMScroll.updateScrollState);}},updateScrollState:function(){if(DOMScroll.usingScrollWrapper()){var _L0=DOMScroll.getScrollWrapper();var _L1=Vector2.getElementDimensions(_L0);var _L2=Vector2.getElementDimensions(_L0,true);var _L3=(_L1.y>_L2.y);var _L4=(_L1.x>_L2.x);}else{var _L5=Vector2.getViewportDimensions();var _L6=Vector2.getDocumentDimensions();var _L3=(_L6.x>_L5.x);var _L4=(_L6.y>_L5.y);}_L3+=0;_L4+=0;var _L7=(DOMScroll._isScrolled===null)||(_L3!=DOMScroll._isScrolled.x)||(_L4!=DOMScroll._isScrolled.y);if(_L7){DOMScroll._isScrolled=new Vector2(_L3,_L4);var _L8={sender:DOMScroll,is_scrolled:DOMScroll.getScrollState()};Arbiter.inform(DOMScroll.SCROLL_CHANGE,_L8,Arbiter.BEHAVIOR_STATE);}},getScrollState:function(){if(DOMScroll._isScrolled===null)DOMScroll.updateScrollState();return DOMScroll._isScrolled;},_scrollbarSize:null,_initScrollbarSize:function(){var _L0=$N('p');_L0.style.width='100%';_L0.style.height='200px';var _L1=$N('div');_L1.style.position='absolute';_L1.style.top='0px';_L1.style.left='0px';_L1.style.visibility='hidden';_L1.style.width='200px';_L1.style.height='150px';_L1.style.overflow='hidden';_L1.appendChild(_L0);document.body.appendChild(_L1);var w1=_L0.offsetWidth;_L1.style.overflow='scroll';var w2=_L0.offsetWidth;if(w1==w2)w2=_L1.clientWidth;document.body.removeChild(_L1);DOMScroll._scrollbarSize=w1-w2;if(DOMScroll._scrollbarSize<5)DOMScroll._scrollbarSize=15;},getScrollbarSize:function(){if(DOMScroll._scrollbarSize===null)DOMScroll._initScrollbarSize();return DOMScroll._scrollbarSize;},scrollTo:function(v,_L1,_L2,_L3){_L1=_L1||_L1===undefined;if(!(v instanceof Vector2)){var x=Vector2.getScrollPosition().x;var y=Vector2.getElementPosition($(v)).y;y=y-Math.min(0,Math.max(Vector2.getViewportDimensions().y/3,100));v=new Vector2(x,y,'document');}if(_L2){v.y-=Vector2.getViewportDimensions().y/2;}else if(_L3){v.y-=Vector2.getViewportDimensions().y;v.y+=_L3;}v=v.convertTo('document');var _L6=DOMScroll.getScrollWrapper();if(_L1&&window.animation){var _L7=_L6||document.body;animation(_L7).to('scrollTop',v.y).to('scrollLeft',v.x).ease(animation.ease.end).duration(750).go();}else if(_L6){_L6.scrollTop=v.y;_L6.scrollLeft=v.x;}else if(window.scrollTo)window.scrollTo(v.x,v.y);}};
function List(_L0){if(arguments.length>1){for(var ii=0;ii<arguments.length;ii++)this.push(arguments[ii]);}else this.resize(_L0||0);}List.prototype.length=0;List.prototype.size=function(){return this.length;};List.prototype.resize=function(_L0){this.length=_L0;return this;};List.prototype.alloc=function(n){return new List(n);};List.prototype.toString=function(){return '['+this.join(', ')+']';};List.prototype.push=Array.prototype.push;List.prototype.pop=Array.prototype.pop;List.prototype.join=Array.prototype.join;List.prototype.map=Array.prototype.map;List.prototype.forEach=Array.prototype.forEach;List.prototype.each=Array.prototype.each;List.prototype.filter=Array.prototype.filter;List.prototype.every=Array.prototype.every;List.prototype.some=Array.prototype.some;List.prototype.pull=Array.prototype.pull;List.prototype.pullEach=Array.prototype.pullEach;List.prototype.pullFilter=Array.prototype.pullFilter;List.prototype.splice=Array.prototype.splice;
function HTML(_L0){if(this===window){if(_L0 instanceof HTML)return _L0;return new HTML(_L0);}this._content=_L0;this._defer=false;this._extra_action='';this._nodes=null;this._inline_js=bagofholding;this._has_option_elements=false;return this;}copy_properties(HTML.prototype,{toString:function(){var str=this._content;if(this._extra_action)str+='<script type="text/javascript">'+this._extra_action+'</scr'+'ipt>';return str;},setAction:function(js){this._extra_action=js;return this;},getAction:function(){this._fillCache();var fn=function(){this._inline_js();eval_global(this._extra_action);}.bind(this);if(this.getDeferred()){return fn.defer.bind(fn);}else return fn;},setDeferred:function(_L0){this._defer=!!_L0;return this;},getDeferred:function(){return this._defer;},getContent:function(){return this._content;},getNodes:function(){this._fillCache();return this._nodes;},getRootNode:function(){return this.getNodes()[0];},hasOptionElements:function(){this._fillCache();return this._has_option_elements;},_fillCache:function(){if(null!==this._nodes)return;var _L0=this._content;if(!_L0){this._nodes=[];return;}_L0=_L0.replace(/(<(\w+)[^>]*?)\/>/g,function(all,_Lc,tag){return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?all:_Lc+'></'+tag+'>';});var _L1=_L0.trim().toLowerCase(),_L2=document.createElement('div'),_L3=false;var _L4=(!_L1.indexOf('<opt')&&[1,'<select multiple="multiple" class="__WRAPPER">','</select>'])||(!_L1.indexOf('<leg')&&[1,'<fieldset class="__WRAPPER">','</fieldset>'])||(_L1.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,'<table class="__WRAPPER">','</table>'])||(!_L1.indexOf('<tr')&&[2,'<table><tbody class="__WRAPPER">','</tbody></table>'])||((!_L1.indexOf('<td')||!_L1.indexOf('<th'))&&[3,'<table><tbody><tr class="__WRAPPER">','</tr></tbody></table>'])||(!_L1.indexOf('<col')&&[2,'<table><tbody></tbody><colgroup class="__WRAPPER">','</colgroup></table>'])||null;if(null===_L4){_L2.className='__WRAPPER';if(ua.ie()){_L4=[0,'<span style="display:none">&nbsp;</span>',''];_L3=true;}else _L4=[0,'',''];}_L2.innerHTML=_L4[1]+_L0+_L4[2];while(_L4[0]--)_L2=_L2.lastChild;if(_L3)_L2.removeChild(_L2.firstChild);if(_L2.className!='__WRAPPER')Util.warn('HTML._fillCache: HTML markup is not well formed.');if(0!=_L2.getElementsByTagName('option').length)this._has_option_elements=true;if(ua.ie()){var _L5;if(!_L1.indexOf('<table')&&-1==_L1.indexOf('<tbody')){_L5=_L2.firstChild&&_L2.firstChild.childNodes;}else if(_L4[1]=='<table>'&&-1==_L1.indexOf('<tbody')){_L5=_L2.childNodes;}else _L5=[];for(var ii=_L5.length-1;ii>=0;--ii)if(_L5[ii].nodeName&&_L5[ii].nodeName.toLowerCase()=='tbody'&&_L5[ii].childNodes.length==0)_L5[ii].parentNode.removeChild(_L5[ii]);}var _L7=_L2.getElementsByTagName('script');var _L8=[];for(var i=0;i<_L7.length;i++)if(_L7[i].src){_L8.push(Bootloader.requestResource.bind(Bootloader,'js',_L7[i].src));}else _L8.push(eval_global.bind(null,_L7[i].innerHTML));for(var i=_L7.length-1;i>=0;i--)_L7[i].parentNode.removeChild(_L7[i]);var _La=function(){for(var ii=0;ii<_L8.length;ii++)_L8[ii]();};this._nodes=to_array(_L2.childNodes);this._inline_js=_La;}});
var DOM={tryElement:function(id,_L1){if(typeof(id)=='undefined'){Util.error('Tried to get "undefined" element!');return null;}var obj;var aug=_L1?identity:NodeAugment.extend;if(typeof(id)=='string'){if(id=='book')Util.error('FB95: Trying to get #book element from JS. #book no'+'longer exists.');obj=document.getElementById(id);if(!(ua.ie()>=7&&ua.ie()<8))return aug(obj);if(!obj){return null;}else if(typeof(obj.id)=='string'&&obj.id==id){return aug(obj);}else{var _L4=document.getElementsByName(id);if(!_L4||!_L4.length)return null;var _L5=[];for(var ii=0;ii<_L4.length;ii++){var c=_L4[ii];if(!c.id&&id)continue;if(typeof(c.id)=='string'&&c.id!=id)continue;_L5.push(_L4[ii]);}if(!_L5.length)return null;return aug(_L5[0]);}}return aug(id);},getElement:function(id,_L1){var el=DOM.tryElement.apply(null,$A(arguments),_L1);if(!el)Util.warn('Tried to get element %q, but it is not present in the page. (Use '+'ge() to test for the presence of an element.)',arguments[0]);return el;},find:function(_L0,_L1){var _L2=DOM.scry(_L0,_L1);if(1!=_L2.length){Util.error('DOM.find located %d elements that matched the selector `%s\''+'.  Please only use find when you are sure that 1 element '+'should match (like $).  Otherwise, please use DOM.scry.',_L2.length,_L1);return null;}return _L2[0];},scry:function(_L0,_L1,_L2){var _L3=_L1.split(' ');var _L4=[_L0||document];var _L5=_L4[0]==document;for(var i=0;i<_L3.length;i++){if(_L4.length==0)break;if(_L3[i]=='')continue;var _L7=_L3[i];var _L8=[];var _L9=false;if(_L7.charAt(0)=='^')if(i==0){_L9=true;_L7=_L7.slice(1);}else{Util.error('upwards looking selectors only supported on first selector');return;}_L7=_L7.replace(/\./g,' .');_L7=_L7.replace(/\#/g,' #');_L7=_L7.replace(/\[/g,' [');var _La=_L7.split(' ');var tag=_La[0]||'*';var _Lc=_La[1]&&_La[1].charAt(0)=='#';if(i==0&&tag=='*'&&_L5&&Util.isDevelopmentEnvironment()&&!_Lc)Util.error('DOM.scry was called without a tag in the selector. You '+'should probably use DOM.scry like `%s` instead of `%s`.','div'+_L1,_L1);if(_Lc){var _Ld=ge(_La[1].slice(1),true);if(_Ld&&('*'==tag||_Ld.tagName.toLowerCase()==tag))for(var _Le=0;_Le<_L4.length;_Le++)if(_L9&&DOM.contains(_Ld,_L4[_Le])){_L8=[_Ld];break;}else if(document==_L4[_Le]||DOM.contains(_L4[_Le],_Ld)){_L8=[_Ld];break;}}else{var _Lf=[];var _L10=_L4.length;for(var ii=0;ii<_L10;ii++){if(_L9){var _L12=[];var _L13=_L4[ii].parentNode;var all=tag=='*';while(DOM.isNode(_L13)){if(all||_L13.tagName.toLowerCase()==tag)_L12.push(_L13);_L13=_L13.parentNode;}}else var _L12=_L4[ii].getElementsByTagName(tag);var _L15=_L12.length;for(var jj=0;jj<_L15;jj++)_Lf.push(_L12[jj]);}var _L17;var _L18;for(var _L19=1;_L19<_La.length;_L19++){var _L1a=_La[_L19];if(_L1a.charAt(0)=='.'){_L17=true;_L18=new RegExp('\\b'+_L1a.substring(1)+'\\b');}else _L17=false;for(var ii=0;ii<_Lf.length;ii++){var _L1b=_Lf[ii];if(!_L1b)continue;if(_L17){if(!_L18.test(_L1b.className))delete _Lf[ii];continue;}else{var _L1c=_L1a.slice(1,_L1a.length-1);if(_L1c.indexOf('=')==-1){if(_L1b.getAttribute(_L1c)===null){delete _Lf[ii];continue;}}else{var _L1d=_L1c.split('=');var attr=_L1d[0];var _L1f=_L1d[1];_L1f=_L1f.slice(1,_L1f.length-1);if(_L1b.getAttribute(attr)!=_L1f){delete _Lf[ii];continue;}}}}}for(var ii=0;ii<_Lf.length;ii++)if(_Lf[ii]){_L8.push(_Lf[ii]);if(_L9)break;}}_L4=_L8;}var list=null;if(!_L2){for(var ii=0;ii<_L4.length;ii++)$(_L4[ii]);list=new NodeList();list.push.apply(list,$A(_L4));}else list=_L4;return list;},getBoxWidth:function(obj){var pL=parseInt(CSS.getStyle(obj,'paddingLeft'),10),pR=parseInt(CSS.getStyle(obj,'paddingRight'),10),bL=parseInt(CSS.getStyle(obj,'borderLeftWidth'),10),bR=parseInt(CSS.getStyle(obj,'borderRightWidth'),10);return obj.offsetWidth-(pL?pL:0)-(pR?pR:0)-(bL?bL:0)-(bR?bR:0);},getBoxHeight:function(obj){var pT=parseInt(CSS.getStyle(obj,'paddingTop'),10),pB=parseInt(CSS.getStyle(obj,'paddingBottom'),10),bT=parseInt(CSS.getStyle(obj,'borderTopWidth'),10),bW=parseInt(CSS.getStyle(obj,'borderBottomWidth'),10);return obj.offsetHeight-(pT?pT:0)-(pB?pB:0)-(bT?bT:0)-(bW?bW:0);},setText:function(el,_L1){if(DOM.isNode(el,DOM.NODE_TYPES.TEXT)){el.data=_L1;}else{DOM.empty(el);el.appendChild(document.createTextNode(_L1));}},getText:(function(){var div=document.createElement('div'),_L1=div.innerText==null?'textContent':'innerText';return function(el){if(!el){return '';}else if(DOM.isNode(el,DOM.NODE_TYPES.TEXT)){return el.data;}else return el[_L1];};})(),_getSelectionPrivate:function(_L0){var _L1=_L0?false:'';if(document.selection&&document.selection.createRange&&document.selection.createRange.text){_L1=_L0?true:document.selection.createRange().text;}else if(document.getSelection){_L1=_L0?true:document.getSelection();}else if(window.getSelection)_L1=_L0?true:window.getSelection();return _L1;},getSelectionSupported:function(){return DOM._getSelectionPrivate(true);},getSelection:function(){return DOM._getSelectionPrivate(false);},create:function(_L0,_L1,_L2,_L3){_L0=document.createElement(_L0);if(_L1){_L1=copy_properties({},_L1);if(_L1.style){copy_properties(_L0.style,_L1.style);delete _L1.style;}for(var k in _L1)if(k.toLowerCase().indexOf('on')==0){if(typeof _L1[k]!='function')Util.error('Handlers passed to DOM.create must be functions; '+'handler passed for '+k+' was '+(typeof _L1[k])+'.');Event.listen(_L0,k.substr(2),_L1[k]);delete _L1[k];}copy_properties(_L0,_L1);}if(_L2!=undefined)DOM.setContent(_L0,_L2);return $(_L0,_L3);},setID:function(_L0,id){_L0.id=id;},prependContent:function(_L0,_L1){if(!DOM.isNode(_L0))throw new Error('DOM.prependContent: reference element is not a node');var _L2=function(_L3){if(_L0.firstChild){_L0.insertBefore(_L3,_L0.firstChild);}else _L0.appendChild(_L3);};return DOM._addContent(_L1,_L2,_L0);},insertAfter:function(_L0,_L1){if(!DOM.isNode(_L0)||!_L0.parentNode)throw new Error('DOM.insertAfter: reference element is not a node');var _L2=function(_L3){if(_L0.nextSibling){_L0.parentNode.insertBefore(_L3,_L0.nextSibling);}else _L0.parentNode.appendChild(_L3);};return DOM._addContent(_L1,_L2,_L0.parentNode);},insertBefore:function(_L0,_L1){if(!DOM.isNode(_L1)||!_L1.parentNode)throw new Error('DOM.insertBefore: reference element is not a node or '+'does not have a parent.');var _L2=function(_L3){_L1.parentNode.insertBefore(_L3,_L1);};return DOM._addContent(_L0,_L2,_L1.parentNode);},setContent:function(el,_L1){if(!DOM.isNode(el))throw new Error('DOM.setContent: reference element is not a node');DOM.empty(el);return DOM.appendContent(el,_L1);},appendContent:function(_L0,_L1){if(!DOM.isNode(_L0))throw new Error('DOM.appendContent: reference element is not a node');var _L2=function(_L3){_L0.appendChild(_L3);};return DOM._addContent(_L1,_L2,_L0);},replace:function(_L0,_L1){if(!DOM.isNode(_L0)||!_L0.parentNode)throw new Error('DOM.replace: reference element must be a node with a'+' parent');var _L2=function(_L3){_L0.parentNode.replaceChild(_L3,_L0);};return DOM._addContent(_L1,_L2,_L0.parentNode);},_gettingCaretPosition:false,getCaretPosition:function(_L0){_L0=$(_L0);if(!DOM.isNode(_L0,['input','textarea']))return {start:undefined,end:undefined};if(!document.selection)return {start:_L0.selectionStart,end:_L0.selectionEnd};if(DOM.isNode(_L0,'input')){var _L1=document.selection.createRange();return {start:-_L1.moveStart('character',-_L0.value.length),end:-_L1.moveEnd('character',-_L0.value.length)};}else{if(!DOM._gettingCaretPosition){DOM._gettingCaretPosition=true;_L0.focus();DOM._gettingCaretPosition=false;}var _L1=document.selection.createRange();var _L2=_L1.duplicate();_L2.moveToElementText(_L0);_L2.setEndPoint('StartToEnd',_L1);var end=_L0.value.length-_L2.text.length;_L2.setEndPoint('StartToStart',_L1);return {start:_L0.value.length-_L2.text.length,end:end};}},setCaretPosition:function(obj,_L1,end){obj=$(obj);if(document.selection){if(obj.tagName=='TEXTAREA'){var i=obj.value.indexOf("\r",0);while(i!=-1&&i<end){end--;if(i<_L1)_L1--;i=obj.value.indexOf("\r",i+1);}}var _L4=obj.createTextRange();_L4.collapse(true);_L4.moveStart('character',_L1);if(end!=undefined)_L4.moveEnd('character',end-_L1);_L4.select();}else{obj.selectionStart=_L1;var _L5=end==undefined?_L1:end;obj.selectionEnd=Math.min(_L5,obj.value.length);obj.focus();}},remove:function(_L0,_L1){_L0=$(_L0,true);if(_L0.parentNode){_L0.parentNode.removeChild(_L0);if(!_L1&&ua.ie()<8)try{}catch(ignored){}}},empty:function(_L0){_L0=$(_L0,true);while(_L0.firstChild)DOM.remove(_L0.firstChild);},contains:function(_L0,_L1){_L0=ge(_L0,true);_L1=ge(_L1,true);if(!_L0||!_L1){return false;}else if(_L0===_L1){return true;}else if(DOM.isNode(_L0,'#text')){return false;}else if(DOM.isNode(_L1,'#text')){return DOM.contains(_L0,_L1.parentNode);}else if(_L0.contains){return _L0.contains(_L1);}else if(_L0.compareDocumentPosition){return !!(_L0.compareDocumentPosition(_L1)&16);}else return false;},getRootElement:function(){var _L0=null;if(window.Quickling&&Quickling.isActive())_L0=ge('content');return _L0||DOMScroll.getScrollRoot();},suppressSelection:function(_L0){if(typeof _L0.onselectstart!='undefined'){_L0.listen('selectstart',function(){return false;});}else if(typeof _L0.style.MozUserSelect!='undefined'){_L0.style.MozUserSelect='none';}else _L0.listen('mousedown',function(){return false;});return _L0;},isNode:function(o,_L1){if(typeof(Node)=='undefined')Node=null;try{if(!o||!((Node!=undefined&&o instanceof Node)||o.nodeName))return false;}catch(ignored){return false;}if(typeof(_L1)!=='undefined'){_L1=arrayize(_L1).map(function(i){return (i+'').toUpperCase();});var _L2,_L3;try{_L2=new String(o.nodeName).toUpperCase();_L3=o.nodeType;}catch(ignored){return false;}for(var ii=0;ii<_L1.length;ii++)try{if(_L2==_L1[ii]||_L3==_L1[ii])return true;}catch(ignored){}return false;}return true;},NODE_TYPES:{ELEMENT:1,ATTRIBUTE:2,TEXT:3,CDATA_SECTION:4,ENTITY_REFERENCE:5,ENTITY:6,PROCESSING_INSTRUCTION:7,COMMENT:8,DOCUMENT:9,DOCUMENT_TYPE:10,DOCUMENT_FRAGMENT:11,NOTATION_NODE:12},_addContent:function(_L0,_L1,_L2){var _L3,_L4=new NodeList(),_L5=[];var _L6=document.createDocumentFragment();if(!(_L0 instanceof Array))_L0=[_L0];for(var ii=0;ii<_L0.length;ii++){_L3=_L0[ii];if(_L3 instanceof HTML){_L5.push(_L3.getAction());var _L8=_L3.getNodes(),_L9;for(var jj=0;jj<_L8.length;jj++){_L9=(ua.safari()||(ua.ie()&&_L3.hasOptionElements()))?_L8[jj]:_L8[jj].cloneNode(true);_L4.push(_L9);_L6.appendChild(_L9);}}else if(is_scalar(_L3)){var _Lb=document.createTextNode(_L3);_L4.push(_Lb);_L6.appendChild(_Lb);}else if(DOM.isNode(_L3)){_L4.push(_L3);_L6.appendChild(_L3);}else if(_L3 instanceof Array){Util.error('DOM._addContent: Nested arrays not supported');}else if(_L3!==null)Util.error('DOM._addContent: No way to set content %q.',_L3);}_L1(_L6);for(var ii=0;ii<_L5.length;ii++)_L5[ii]();return _L4;},getNearest:function(_L0,tag){while(_L0&&!DOM.isNode(_L0,tag))_L0=_L0.parentNode;return _L0;},findParentByClass:function(_L0,cls){while(DOM.isNode(_L0)){if(CSS.hasClass(_L0,cls))return _L0;_L0=_L0.parentNode;}return null;}};function NodeList(_L0){if(!NodeList._augmented){copy_properties(NodeList.prototype,NodeList._getAugment());NodeList._augmented=true;}List.call(this,_L0);}NodeList.prototype=new List();copy_properties(NodeList.prototype,{toString:function(){return '[NodeList]';}});copy_properties(NodeList,{_augmented:false,_getAugment:function(){var _L0=function(_L3,fn){return function(){var _L5=$A(arguments);return this[_L3](function(_L6,idx,_L8){return fn.apply(null,[_L6].concat(_L5));});};};var _L1=function(fn){return function(){fn.apply(this,$A(arguments));return this;};};var _L2=function(_L3,fn){return function(){var _L5=fn.apply(this,$A(arguments));var _L6=new _L3();for(var ii=0;ii<_L5.length;ii++)_L6.push.apply(_L6,$A(_L5[ii]));return _L6;};};return {scry:_L2(NodeList,_L0('map',DOM.scry)),addClass:_L1(_L0('map',CSS.addClass)),removeClass:_L1(_L0('map',CSS.removeClass)),hasClass:_L0('every',CSS.hasClass),toggleClass:_L1(_L0('map',CSS.toggleClass)),getStyle:_L0('map',CSS.getStyle),setStyle:_L1(_L0('map',CSS.setStyle))};}});function $N(_L0,_L1,_L2){if(typeof _L1!='object'||DOM.isNode(_L1)||_L1 instanceof Array||_L1 instanceof HTML){_L2=_L1;_L1=null;}return DOM.create(_L0,_L1,_L2);}var ge=DOM.tryElement;var $$=function _$$(_L0){if(Util.isDevelopmentEnvironment()&&_L0&&!(/^[a-zA-Z1-6]+$/).test(_L0)&&-1==_L0.indexOf('#'))Util.warn('$$() has been called with `%s\' as a selector. You should not use only '+'class or attribute selectors from the document element, because these '+'can not be efficiently queried. Call DOM.find() or DOM.scry() with a '+'root element, or look at DOM.scry() for more information.',_L0);return DOM.scry.apply(null,[document].concat($A(arguments)));};var $=DOM.getElement;NodeAugment.add({setContent:DOM.setContent,prependContent:DOM.prependContent,appendContent:DOM.appendContent,replace:DOM.replace,remove:DOM.remove,empty:DOM.empty,scry:DOM.scry,find:DOM.find,isNode:DOM.isNode,setText:DOM.setText,getText:DOM.getText});
function show(){for(var i=0;i<arguments.length;i++){var _L1=ge(arguments[i]);if(_L1&&_L1.style)_L1.style.display='';}return false;}function hide(){for(var i=0;i<arguments.length;i++){var _L1=ge(arguments[i]);if(_L1&&_L1.style)_L1.style.display='none';}return false;}function shown(el){el=ge(el);return (el.style.display!='none'&&!(el.style.display==''&&el.offsetWidth==0));}function toggle(){for(var i=0;i<arguments.length;i++){var _L1=$(arguments[i]);_L1.style.display=CSS.getStyle(_L1,"display")=='block'?'none':'block';}return false;}function toggleDisplayNone(){for(var i=0;i<arguments.length;i++){var _L1=$(arguments[i]);if(shown(_L1)){hide(_L1);}else show(_L1);}return false;}function set_inner_html(obj,_L1,_L2){DOM.setContent(obj,HTML(_L1).setDeferred(!!_L2));}function expandCollapseInplace(_L0,_L1){topElem=ge(_L0);bottomElem=ge(_L1);if(!topElem||!bottomElem)return false;topElemHeight=topElem.clientHeight;if(shown(_L1)){bottomElemHeight=bottomElem.clientHeight;newHeight=topElemHeight+bottomElemHeight;topElem.style.height=newHeight+'px';CSS.addClass(bottomElem,'hidden_elem');}else{CSS.removeClass(bottomElem,'hidden_elem');bottomElemHeight=bottomElem.clientHeight;newHeight=topElemHeight-bottomElemHeight;topElem.style.height=newHeight+'px';}return true;}
var KEYS={BACKSPACE:8,TAB:9,RETURN:13,ESC:27,SPACE:32,LEFT:37,UP:38,RIGHT:39,DOWN:40,DELETE:46};
var BigPipe={_ct:function(o){return ('length' in o&&o.length===0)?{}:o;},_executeLastPagelet:function(_L0){Bootloader.enableBootload(BigPipe._ct(_L0.bootloadable));Bootloader.loadResources(_L0.css.concat(_L0.js));onloadRegister(bind(null,invoke_callbacks,_L0.hooks.onload));onafterloadRegister(bind(null,invoke_callbacks,_L0.hooks.onafterload));},_displayPagelet:function(_L0){var _L1=document.getElementById(_L0.id);if(_L1){_L1.innerHTML=_L0.html;}else window.Util&&Util.error('Error: no pagelet div has id: "'+_L0.id+'"');},_downloadJsForPagelet:function(_L0){Arbiter.registerCallback(onload_callback,['pagelet_arrive']);Bootloader.loadResources(_L0.css.concat(_L0.js),function(){rsrcProvideAndRequire(BigPipe._ct(_L0.provides),BigPipe._ct(_L0.requires),function(){onloadRegister(bind(null,invoke_callbacks,_L0.hooks.onload));onafterloadRegister(bind(null,invoke_callbacks,_L0.hooks.onafterload));if(_L0.page_cache)onloadRegister(function(){var _L1=_L0.hooks;_L1.html=$("content").innerHTML;Quickling.cacheAndExecResponse(_L0.css.concat(_L0.js),_L1,true);});Arbiter.inform('pagelet_arrive',true,Arbiter.BEHAVIOR_EVENT);});});},_executePagelet:function(_L0){Bootloader.enableBootload(BigPipe._ct(_L0.bootloadable));Bootloader.loadResources(_L0.css,bind(null,BigPipe._displayPagelet,_L0));BigPipe._downloadJsForPagelet(_L0);},_executePageletCssFirst:function(_L0){if(BigPipe._cssDoneCallback===null)BigPipe._cssDoneCallback=Arbiter.registerCallback(function(){for(var ii=0;ii<BigPipe._queue.length;ii++){var _L0=BigPipe._queue[ii];BigPipe._displayPagelet(_L0);BigPipe._downloadJsForPagelet(_L0);}},['pagelet_done_css']);if(!_L0.delayed){Bootloader.enableBootload(BigPipe._ct(_L0.bootloadable));if(!_L0.is_last){Arbiter.registerCallback(BigPipe._cssDoneCallback,['pagelet_css']);Bootloader.loadResources(_L0.css,function(){Arbiter.inform('pagelet_css',true,Arbiter.BEHAVIOR_EVENT);});}else{Bootloader.loadResources(_L0.css);Arbiter.inform('pagelet_done_css',true,Arbiter.BEHAVIOR_STATE);}BigPipe._queue.push(_L0);}else onafterloadRegister(bind(BigPipe,BigPipe._executePagelet,_L0));},onPageletArrive:function(_L0){if(_L0.id){if(window._pagelet_css_first){BigPipe._executePageletCssFirst(_L0);}else if(_L0.delayed){onloadRegister(bind(BigPipe,BigPipe._executePagelet,_L0));}else BigPipe._executePagelet(_L0);}else BigPipe._executeLastPagelet(_L0);},_cssDoneCallback:null,_queue:[]};
function fc_expand(_L0){var _L1=_L0.form;if(CSSLite.hasClass(_L1,'hidden_add_button')){CSSLite.removeClass(_L1,'collapsed_comments');CSSLite.removeClass(_L1,'hidden_add_button');CSSLite.removeClass(_L1,'hidden_add_comment');_L1.add_comment_text.focus();}return false;}

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