var gloader={_requests:[],_modules:{},_extras:{},util:{},map:{js:{},css:{},parse:function(G){var H={name:G[0],versions:[]};var K={};var I=["$name","$version","$server","$base"];for(var B=0;B<I.length;B++){K[I[B]]=undefined;}K.$name=H.name;for(var C=1;C<G.length;C++){var F=G[C];for(var J in F){if(F[J]===null){delete F[J];delete K[J];}else{if(typeof F[J].shift!="undefined"){var E=F[J][1];F[J]=new String(F[J][0]);F[J].css=E;K[J]=F[J];}else{if(typeof F[J]=="string"){F[J]=new String(F[J]);F[J].css=null;K[J]=F[J];}else{throw"version[v] is "+F[J];}}}}for(var L in K){if(typeof F[L]=="undefined"){F[L]=K[L];}}for(var B=0;B<I.length;B++){var A=I[B];if(typeof F[A]=="undefined"){continue;}var D=new RegExp("\\{\\"+A+"\\}","g");for(var J in F){var E=(F[J].css)?F[J].css:"";F[J]=new String(F[J].replace(D,F[A]));F[J].css=E;if(F[J].css){F[J].css=F[J].css.replace(D,F[A]);}}}H.versions.push(F);}return H;},add:function(){var D=gloader.map.parse(arguments);for(var B=0;B<D.versions.length;B++){var A=D.versions[B];for(var C in A){if(C.charAt(0)=="$"){continue;}var E=A.$name+"/"+A.$version+"/"+C;gloader.map.js[E]=A[C];gloader.map.css[E]=A[C].css;}}},include:function(A){if(gloader.map.$include[A]){return false;}else{document.write('<script type="text/javascript" src="'+A+'"><\/script>\n');gloader.map.$include[A]=true;return true;}},$include:{},latest:function(H,D){if(gloader.map.$latest[H+"/"+D]){return gloader.map.$latest[H+"/"+D];}var A=D;var G=D.split(".");if(G.length<3){if(G[0]==parseInt(G[0])&&(typeof G[1]=="undefined"||G[1]==parseInt(G[1]))){var C=[G[0],null,null];var E;for(E in gloader.map.js){var B=E.split("/");if(B[0]==H&&B[2]==H){var F=B[1].split(".");if(F[0]==G[0]){if(typeof G[1]=="undefined"||(G[1]>=F[1]&&(C[1]==null||C[1]<F[1]))){C[1]=F[1];C[2]=F[2];}}}}if(C[2]!=null){A=C.join(".");}}}gloader.map.$latest[H+"/"+D]=A;return A;},$latest:{}},settings:{ns:"bbc.glow.gloader",get:function(A){var D=" "+gloader.settings.ns+"."+A+"=";var C=document.cookie.split(";");for(var B=0;B<C.length;B++){if((" "+C[B]).indexOf(D)>-1){return unescape(C[B].split("=")[1]);}}},set:function(A,B){var C=gloader.settings.ns+"."+A;document.cookie=C+"="+escape(B)+"; path=/;";},clear:function(A){var B=new Date();B.setTime(B.getTime()-1);var C=gloader.settings.ns+"."+A;document.cookie=C+"=; path=/; expires=Thu, 01-Jan-70 00:00:01 GMT;";}},loadDebug:function(){gloader.settings.set("debug","1");location.reload();},unloadDebug:function(){gloader.settings.clear("debug");location.reload();},load:function(){var F={};if(typeof arguments[arguments.length-1].length=="undefined"){F=arguments[arguments.length-1];arguments.length--;}var B=new gloader.Request(F);gloader._requests.push(B);var E=[];for(var C=0;C<arguments.length;C++){E.push(arguments[C]);}var D=gloader.toIds(E);B.args=[];for(var C=0;C<D.length;C++){B.include(D[C]);if(D[C].match(/\/[^.]+$/)){B.args.push(D[C]);}}var A=B.waits.length;for(var C=0;C<B.waits.length;C++){if(gloader._modules[B.waits[C]]&&gloader._modules[B.waits[C]].status==gloader.Module.IMPLEMENTED){A--;}}if(A>0){B.status=gloader.Request.WAITING;gloader.request(D,B.async);gloader.resolve();}else{B.complete();}},request:function(D,E){for(var C=0;C<D.length;C++){if(gloader._extras[D[C]]){gloader._modules[D[C]]=new gloader.Module(D[C]);var B=gloader._extras[D[C]];delete gloader._extras[D[C]];gloader.provide(B);}else{if(!gloader._modules[D[C]]){gloader._modules[D[C]]=new gloader.Module(D[C]);gloader._modules[D[C]].status=gloader.Module.REQUESTED;}}}for(var A in gloader._modules){if(gloader._modules[A].status<gloader.Module.FETCHED||gloader._modules[A].css){gloader._modules[A].css=null;gloader.fetch(gloader._modules[A],E);}}},fetch:function(B,C){var A=gloader.map.css[B.id];if(A&&!gloader._fetched[A]){gloader._fetched[A]=1;if(document){var E;if(E=document.getElementsByTagName("head")[0]){var D;if(D=document.createElement("link")){D.href=A;D.rel="stylesheet";D.type="text/css";D.className="gloaded";E.appendChild(D);}}else{document.write('<link rel="stylesheet" type="text/css" href="'+A+'">');}}}if(gloader._modules[B.id].status>=gloader.Module.FETCHED){return false;}gloader._modules[B.id].status=gloader.Module.FETCHED;var G=gloader.map.js[B.id];if(G&&!gloader._fetched[G]){gloader._fetched[G]=1;if(C){var E=document.getElementsByTagName("head")[0];var F=document.createElement("script");F.type="text/javascript";F.src=G;E.appendChild(F);}else{document.write('<script type="text/javascript" class="gloaded" src="'+G+'"><\/script>\n');}}},_fetched:{},provide:function(B){B.id=B.library[0]+"/"+B.library[1]+"/"+B.name;if(!gloader._modules[B.id]){gloader._extras[B.id]=B;return;}gloader._modules[B.id].status=gloader.Module.PROVIDED;gloader._modules[B.id].builder=B.builder;gloader._modules[B.id].builder.args=[];var F=gloader._modules[B.id].depends=(B.depends)?gloader.toIds(B.depends):[];if(F.length>0){var E=[];for(var D=0;D<F.length;D++){var G=gloader.getRequests(B);var A={async:true,ids:[]};for(var C=0;C<G.length;C++){G[C].include(F[D]);A.ids.push(F[D]);if(G[C].async===false){A.async=false;}}E.push(A);if(F[D].match(/\/[^.]+$/)){gloader._modules[B.id].builder.args.push(F[D]);}}for(var D=0;D<E.length;D++){gloader.request(E[D].ids,E[D].async);}}else{gloader.implement(B);}gloader.resolve();},module:function(A){if(!A.depends){A.depends=[];}A.depends.unshift(A.library);gloader.provide(A);},library:function(A){if(!A.depends){A.depends=[];}A.library=[A.name,A.version];gloader.provide(A);},implement:function(B){if(gloader._modules[B.id].status!=gloader.Module.PROVIDED){return;}gloader._modules[B.id].status=gloader.Module.IMPLEMENTED;for(var A=0;A<gloader._modules[B.id].builder.args.length;A++){var C=gloader._modules[B.id].builder.args[A];gloader._modules[B.id].builder.args[A]=gloader._modules[B.builder.args[A]].implementation;gloader._modules[B.id].builder.args[A].name=C;}gloader._modules[B.id].implementation=gloader._modules[B.id].builder.apply(null,gloader._modules[B.id].builder.args);for(var A=0;A<gloader._requests.length;A++){gloader._requests[A].release(B.id);}},resolve:function(){MODULES:for(var A in gloader._modules){var C=gloader._modules[A];if(C.status==gloader.Module.PROVIDED){for(var B=0;B<C.depends.length;B++){var D=gloader._modules[C.depends[B]];if(!D||D.status!=gloader.Module.IMPLEMENTED){continue MODULES;}}gloader.implement(C);gloader.resolve();}}},getRequests:function(A){var E=[];REQUESTS:for(var C=0;C<gloader._requests.length;C++){var D=gloader._requests[C];for(var B=0;B<D.waits.length;B++){if(D.waits[B]==A.id){E.push(D);break REQUESTS;}}}return E;},toIds:function(G){var B=[];for(var D=0;D<G.length;D++){var E=G[D];var H=E.shift();var A=E.shift();var F=H+"/"+gloader.map.latest(H,A);B.push(F+"/"+H);for(var C=0;C<E.length;C++){B.push(F+"/"+E[C]);}}return B;}};gloader.Request=function(A){this.waits=[];this.status=gloader.Request.INITIAL;if(A.onLoad){A.onload=A.onLoad;}if(A.onTimeout){A.ontimeout=A.onTimeout;}if(!A.async&&!A.onload){this.setGlobal=true;}this.async=(typeof A.async!="undefined")?A.async:false;this.onload=A.onload||function(){};if(A.ontimeout){if(typeof A.timeout=="undefined"){A.timeout=20000;}this.timeoutRef=setTimeout(A.ontimeout,A.timeout);}};gloader.Request.INITIAL=-1;gloader.Request.WAITING=0;gloader.Request.COMPLETED=1;gloader.Request.prototype.include=function(B){for(var A=0;A<this.waits.length;A++){if(this.waits[A]==B){return;}}this.waits.push(B);};gloader.Request.prototype.release=function(C){var A=0;for(var B=0;B<this.waits.length;B++){var E=gloader._modules[this.waits[B]];if(E&&E.status==gloader.Module.IMPLEMENTED){A++;}}if(A==this.waits.length){if(this.setGlobal){for(var B=0;B<this.waits.length;B++){var D=gloader._modules[this.waits[B]];window[D.name]=gloader._modules[this.waits[B]].implementation;}}this.complete();}};gloader.Request.prototype.complete=function(){if(this.status==gloader.Request.COMPLETED){return;}this.status=gloader.Request.COMPLETED;if(this.timeoutRef){clearTimeout(this.timeoutRef);}for(var A=0;A<this.args.length;A++){this.args[A]=gloader._modules[this.args[A]].implementation;}this.onload.apply(null,this.args);};gloader.Module=function(A){this.id=A;this.name=A.split("/").pop();this.status=gloader.Module.INITIAL;this.css=gloader.map.css[A];};gloader.Module.INITIAL=-1;gloader.Module.REQUESTED=0;gloader.Module.FETCHED=1;gloader.Module.PROVIDED=2;gloader.Module.IMPLEMENTED=3;gloader.isReady=false;(function(){var d=document;if(
/*@cc_on!@*/
false){(function(){try{d.documentElement.doScroll("left");}catch(e){setTimeout(arguments.callee,50);return;}gloader.isReady=true;})();}else{if(typeof d.readyState!="undefined"){var f=function(){/loaded|complete/.test(d.readyState)?gloader.isReady=true:setTimeout(f,10);};f();}else{var callback=function(){if(arguments.callee.fired){return;}arguments.callee.fired=true;gloader.isReady=true;};d.addEventListener("DOMContentLoaded",callback,false);var oldOnload=window.onload;window.onload=function(){if(oldOnload){oldOnload();}callback();};}}})();gloader.mapGlow=function(){var B=gloader.settings.get("debug");var A=(B)?"{$base}/glow/glow.debug.js":"{$base}/glow/glow.js";var D=(B)?"{$base}/fx/fx.debug.js":"{$base}/fx/fx.js";var C=(B)?"{$base}/widgets/widgets.debug.js":"{$base}/widgets/widgets.js";gloader.map.add("glow",{$version:"1.0.0",$server:(window.location.protocol=="https:")?"https://ssl.bbc.co.uk":"http://www.bbc.co.uk",$base:"{$server}/glow/{$version}/gloader",glow:A,"glow.anim":D,"glow.data":A,"glow.debug":A,"glow.dom":A,"glow.dragdrop":D,"glow.events":A,"glow.net":A,"glow.tweens":D,"glow.widgets":[C,"{$base}/widgets/widgets.css"],"glow.widgets.InfoPanel":C,"glow.widgets.Mask":C,"glow.widgets.Overlay":C,"glow.widgets.Panel":C,"glow.widgets.Sortable":C},{$version:"1.0.1"},{$version:"1.0.2"},{$version:"1.1.0","glow.anim":A,"glow.dragdrop":A,"glow.tweens":A,"glow.embed":A,"glow.forms":A},{$version:"1.1.1"});};gloader.mapGlow();