if(!window['google']){
	window['google'] = {};
}
if(!window['google']['loader']){
	window['google']['loader'] = {};
	google.loader.ServiceBase = 'http://www.google.com/uds';
	google.loader.GoogleApisBase = 'http://ajax.googleapis.com/ajax';
	google.loader.ApiKey = 'notsupplied';
	google.loader.KeyVerified = true;
	google.loader.LoadFailure = false;
	google.loader.AdditionalParams = '';
	(function(){
		function v(a){
			if(a in z){
				return z[a];
			}
			return z[a] = navigator.userAgent.toLowerCase().indexOf(a) != -1;
		}
		var z = {};
		function D(){
			return v("msie");
		}
		function E(){
			return v("safari") || v("konqueror");
		}
		function J(a, b){
			var c = function(){};
			c.prototype = b.prototype;
			a.G = b.prototype;
			a.prototype = new c;
		}
		function O(a,b){
			var c = a._JSAPI_boundArgs || [];
			c = c.concat(Array.prototype.slice.call(arguments,2));
			if(typeof a._JSAPI_boundSelf != "undefined"){
				b = a._JSAPI_boundSelf;
			}
			if(typeof a._JSAPI_boundFn != "undefined"){
				a = a._JSAPI_boundFn;
			}
			var d = function(){
				var e = c.concat(Array.prototype.slice.call(arguments));
				return a.apply(b,e);
			};
			d._JSAPI_boundArgs = c;
			d._JSAPI_boundSelf = b;
			d._JSAPI_boundFn = a;
			return d;
		}
		function A(a){
			var b = new Error(a);
			b.toString = function(){
				return this.message;
			};
			return b;
		}
		var g = {};
		var w = {};
		var F = {};
		var T = {};
		var r = null;
		var L = false;
		function R(a,b,c){
			var d = g[":"+a];
			if(!d){
				throw A("Module: '"+a+"' not found!");
			}else{
				if(c && !c["language"] && c["locale"]){
					c["language"] = c["locale"];
				}
				var e = c && c["callback"] != null;
				if(e && !d.l()){
					throw A("Module: '"+a+"' must be loaded before DOM onLoad!");
				}else if(e){
					if(d.h(b,c)){
						window.setTimeout(c["callback"],0);
					}else{
						d.i(b,c);
					}
				}else{
					if(!d.h(b,c)){
						d.i(b,c);
					}
				}
			}
		}
		function Y(a,b){
			if(b){
				X(a);
			}else{
				y(window,"load",a);
			}
		}
		function y(a,b,c){
			if(a.addEventListener){
				a.addEventListener(b,c,false);
			}else if(a.attachEvent){
				a.attachEvent("on"+b,c);
			}else{
				var d = a["on"+b];
				if(d != null){
					a["on"+b] = P([c,d]);
				}
				a["on"+b] = c;
			}
		}
		function P(a){
			return function(){
				for(var b = 0;b < a.length;b++){
					a[b]();
				}
			};
		}
		var o=[];
		function X(a){
			if(o.length==0){
				y(window,"load",s);
				if(!D() && !E() && v("mozilla") || window.opera){
					window.addEventListener("DOMContentLoaded",s,false);
				}else if(D()){
					window.setTimeout(G,10);
					document.attachEvent("onreadystatechange",I);
				}else if(E()){
					window.setTimeout(H,10);
				}
			}
			o.push(a);
		}
		function G(){
			try{
				if(o.length > 0){
					document.documentElement.doScroll("left");
				}
			}
			catch(a){
				window.setTimeout(G,10);
				return;
			}
			s();
		}
		var K = {
			loaded:true,
			complete:true
		};
		function I(){
			if(K[document.readyState]){
				document.detachEvent("onreadystatechange",I);
				s();
			}
		}
		function H(){
			if(K[document.readyState]){
				s();
			}else if(o.length > 0){
				window.setTimeout(H,10);
			}
		}
		function s(){
			for(var a = 0;a < o.length;a++){
				o[a]();
			}
			o.length = 0;
		}
		function W(a){
			var b = window.location.href;
			var c;
			var d = b.length;
			for(var e in a){
				var h = b.indexOf(e);
				if(h != -1 && h < d){
					c = e;
					d = h;
				}
			}
			r = c ? a[c] : null;
		}
		function q(a,b,c){
			if(c){
				var d;
				if(a == "script"){
					d = document.createElement("script");
					d.type = "text/javascript";
					d.src = b;
				}else if(a == "css"){
					d = document.createElement("link");
					d.type = "text/css";
					d.href = b;
					d.rel = "stylesheet";
				}
				var e = document.getElementsByTagName("head")[0];
				if(!e){
					e = document.body.parentNode.appendChild(document.createElement("head"));
				}
				e.appendChild(d);
			}else{
				if(a == "script"){
					document.write('<script src="'+b+'" type="text/javascript"><\/script>');
				}else if(a == "css"){
					document.write('<link href="'+b+'" type="text/css" rel="stylesheet"></link>');
				}
			}
		}
		function i(a,b){
			var c = a.split(/\./);
			var d = window;
			for(var e = 0;e < c.length-1;e++){
				if(!d[c[e]]){
					d[c[e]] = {};
				}
				d = d[c[e]];
			}
			d[c[c.length-1]] = b;
		}
		function Q(a,b,c){
			a[b] = c;
		}
		function U(a){
			w = a;
		}
		function V(a){
			for(var b in a){
				if(typeof b == "string" && b && b.charAt(0) == ":" && !g[b]){
					g[b] = new m(b.substring(1),a[b]);
				}
			}
		}
		i("google.load",R);
		i("google.setOnLoadCallback",Y);
		i("google.loader.writeLoadTag",q);
		i("google.loader.setApiKeyLookupMap",W);
		i("google.loader.callbacks",F);
		i("google.loader.eval",T);
		i("google.loader.rfm",U);
		i("google.loader.rpl",V);
		i("google_exportSymbol",i);
		i("google_exportProperty",Q);
		function f(a){
			this.a = a;
			this.p = {};
			this.b = {};
			this.initialLoad = true;
		}
		f.prototype.d = function(a,b){
			var c = "";
			if(b != undefined){
				if(b["language"] != undefined){
					c += "&hl="+encodeURIComponent(b["language"]);
				}
				if(b["nocss"] != undefined){
					c += "&output="+encodeURIComponent("nocss="+b["nocss"]);
				}
				if(b["nooldnames"] != undefined){
					c += "&nooldnames="+encodeURIComponent(b["nooldnames"]);
				}
				if(b["packages"] != undefined){
					c += "&packages="+encodeURIComponent(b["packages"]);
				}
				if(b["callback"] != null){
					c += "&async=2";
				}
				if(b["other_params"] != undefined){
					c += "&"+b["other_params"];
				}
			}
			if(!this.initialLoad){
				c += "&output="+encodeURIComponent("noinitial=true");
				if(google[this.a] && google[this.a].JSHash){
					c += "&sig="+encodeURIComponent(google[this.a].JSHash);
				}
			}
			if(r != null && !L){
				c += "&key="+encodeURIComponent(r);
				L = true;
			}
			return google.loader.ServiceBase+"/?file="+this.a+"&v="+a+google.loader.AdditionalParams+c;
		};
		f.prototype.n = function(a){
			var b = null;
			if(a){
				b = a["packages"];
			}
			var c = null;
			if(b){
				if(typeof b == "string"){
					c = [a["packages"]];
				}else if(b.length){
					c = [];
					for(var d = 0;d < b.length;d++){
						if(typeof b[d] == "string"){
							c.push(b[d].replace(/^\s*|\s*$/,"").toLowerCase());
						}
					}
				}
			}
			if(!c){
				c = ["default"];
			}
			var e=[];
			for(var d = 0;d < c.length;d++){
				if(!this.p[":"+c[d]]){
					e.push(c[d]);
				}
			}
			return e;
		};
		f.prototype.i = function(a,b){
			var c = this.n(b);//1
			var d = b && b["callback"] != null;//false
			if(d){
				var e = new x(b["callback"]);
			}
			for(var h = c.length-1;h >= 0;h--){
				var k = c[h];
				if(this.b[":"+k]){
					c.splice(h,1);
				}else{
					this.b[":"+k]=[];
				}
				if(d){
					e.s(k);
					this.b[":"+k].push(e);
				}
			}
			if(c.length){
				if(b && b["packages"]){
					b["packages"] = c.sort().join(",");
				}
				if(!b && w[":"+this.a] != null && w[":"+this.a].versions[":"+a] != null && !google.loader.AdditionalParams && this.initialLoad){
					var l = w[":"+this.a];
					google[this.a] = google[this.a] || {};
					for(var t in l.properties){
						if(t&&t.charAt(0) == ":"){
							google[this.a][t.substring(1)] = l.properties[t];
						}
					}
					q("script",google.loader.ServiceBase+l.path+l.js,d);
					if(l.css){
						q("css",google.loader.ServiceBase+l.path+l.css,d);
					}
				}else{
					q("script",this.d(a,b),d);
				}
				if(this.initialLoad){
					this.initialLoad = false;
				}
			}
		};
		f.prototype.g = function(a){
			for(var b = 0;b < a.components.length;b++){
				this.p[":"+a.components[b]] = true;
				var c = this.b[":"+a.components[b]];
				if(c){
					for(var d = 0;d < c.length;d++){
						c[d].u(a.components[b]);
					}
					delete this.b[":"+a.components[b]];
				}
			}
			u("hl",this.a);
		};
		f.prototype.h = function(a,b){
			return this.n(b).length == 0;
		};
		f.prototype.l = function(){
			return true;
		};
		function x(a){
			this.t = a;
			this.j = {};
			this.k = 0;
		}
		x.prototype.s = function(a){
			this.k++;
			this.j[":"+a] = true;
		};
		x.prototype.u = function(a){
			if(this.j[":"+a]){
				this.j[":"+a] = false;
				this.k--;
				if(this.k == 0){
					window.setTimeout(this.t,0);
				}
			}
		};
		function S(a){
			g[":"+a.module].g(a);
		}
		i("google.loader.loaded",S);
		function j(a,b,c,d,e,h,k){
			this.a = a;
			this.A = b;
			this.z = c;
			this.o = d;
			this.r = e;
			this.w = h;
			this.q = k || {};
			this.e = false;
			this.m = false;
			this.f = [];
			F[this.a] = O(this.g,this);
		}
		J(j,f);
		j.prototype.i = function(a,b){
			var c = b && b["callback"] != null;
			if(c){
				this.f.push(b["callback"]);
				b["callback"] = "google.loader.callbacks."+this.a;
			}else{
				this.e = true;
			}
			q("script",this.d(a,b),c);
		};
		j.prototype.h = function(a,b){
			var c = b && b["callback"] != null;
			if(c){
				return this.m;
			}else{
				return this.e;
			}
		};
		j.prototype.g = function(){
			this.m = true;
			for(var a = 0;a < this.f.length;a++){
				window.setTimeout(this.f[a],0);
			}
			this.f = [];
		};
		j.prototype.d = function(a,b){
			var c = "";
			if(this.o != null){
				c += "&"+this.o+"="+encodeURIComponent(r?r:google.loader.ApiKey);
			}
			if(this.r != null){
				c += "&"+this.r+"="+encodeURIComponent(a);
			}
			var d = this.A;
			if(b != null){
				for(var e in b){
					if(this.q[":"+e] != null){
						var h = b[e];
						var k = this.q[":"+e];
						if(typeof k == "string"){
							c += "&"+k+"="+encodeURIComponent(h);
						}else{
							c += "&"+k(h);
						}
					}else if(e == "other_params"){
						c += "&"+b[e];
					}else if(e == "base_domain"){
						d = d.replace(/^[^\/]*/,b[e]);
					}
				}
			}
			google[this.a] = {};
			if(!this.z && c != ""){
				c = "?"+c.substring(1);
			}
			u("el",this.a);
			return "http://"+d+c;
		};
		j.prototype.l = function(){
			return this.w
		};
		function m(a,b){
			this.a = a;
			this.c = b;
			this.e = false;
		}
		J(m,f);
		m.prototype.i = function(a,b){
			this.e = true;
			q("script",this.d(a,b),false);
		};
		m.prototype.h = function(a,b){
			return this.e;
		};
		m.prototype.g = function(){};
		m.prototype.d = function(a,b){
			if(!this.c["versions"][":"+a]){
				if(this.c["aliases"]){
					var c = this.c["aliases"][":"+a];
					if(c){
						a = c;
					}
				}
				if(!this.c["versions"][":"+a]){
					throw A("Module: '"+this.a+"' with version '"+a+"' not found!");
				}
			}
			var d = b && b["uncompressed"] ? "uncompressed" : "compressed";
			var e = google.loader.GoogleApisBase+"/libs/"+this.a+"/"+a+"/"+this.c["versions"][":"+a][d];
			u("el",this.a);
			return e;
		};
		m.prototype.l = function(){
			return false;
		};
		function n(){};
		var C=n.v=false;
		var M=n.B=5;
		var p=n.F=[];
		var N=n.D=function(){
			if(!C){
				y(window,"unload",B);
				C=(n.v=true);
			}
		};
		var u=n.record=function(a,b){
			N();
			var c = a+(b?"|"+b:"");
			p.push("r"+p.length+"="+encodeURIComponent(c));
			var d = p.length > M ? 0 : 15000;
			window.setTimeout(B,d);
		};
		var B = n.C = function(){
			if(p.length){
				var a = new Image;
				a.src = google.loader.ServiceBase+"/stats?"+p.join("&")+"&nocache="+Number(new Date);
				p.length = 0;
			}
		};
		i("google.loader.recordStat",u);
		g[":search"] = new f("search");
		g[":feeds"] = new f("feeds");
		g[":language"] = new f("language");
		g[":elements"] = new f("elements");
		g[":maps"] = new j("maps","maps.google.com/maps?file=googleapi",true,"key","v",true,{":language":"hl",":callback":function(a){return "callback="+encodeURIComponent(a)+"&async=2";}});
		g[":gdata"] = new f("gdata");
		g[":sharing"] = new j("sharing","www.google.com/s2/sharing/js",false,"key","v",false,{":locale":"hl"});
		g[":annotations"] = new j("annotations","www.google.com/reviews/scripts/annotations_bootstrap.js",false,"key","v",true,{":language":"hl",":country":"gl",":callback":"callback"});
		g[":visualization"] = new f("visualization");
		g[":books"] = new j("books","books.google.com/books/api.js",false,"key","v",true,{":language":"hl",":callback":"callback"});
		g[":earth"] = new f("earth");
	})();
	
	google.loader.rpl({":scriptaculous":{"versions":{":1.8.1":{"uncompressed":"scriptaculous.js","compressed":"scriptaculous.js"}},"aliases":{":1.8":"1.8.1",":1":"1.8.1"}},":mootools":{"versions":{":1.11":{"uncompressed":"mootools.js","compressed":"mootools-yui-compressed.js"}},"aliases":{":1":"1.11"}},":prototype":{"versions":{":1.6.0.2":{"uncompressed":"prototype.js","compressed":"prototype.js"}},"aliases":{":1":"1.6.0.2",":1.6":"1.6.0.2"}},":jquery":{"versions":{":1.2.3":{"uncompressed":"jquery.js","compressed":"jquery.min.js"},":1.2.6":{"uncompressed":"jquery.js","compressed":"jquery.min.js"}},"aliases":{":1":"1.2.6",":1.2":"1.2.6"}},":dojo":{"versions":{":1.1.1":{"uncompressed":"dojo/dojo.xd.js.uncompressed.js","compressed":"dojo/dojo.xd.js"}},"aliases":{":1":"1.1.1",":1.1":"1.1.1"}}});
}