(function() {
	eval("var djConfig = {locale:\"en-us\",famousForceConfig:\"\",isDebug:false,parseOnLoad:false,baseUrl:\"//1.www.s81c.com/common/js/dojo/1.6/dojo/\",modulePaths:{\"famousweb\":\"//www.famousworks.net/js\",\"ext\":\"//1.www.s81c.com/common/js/dojo/1.6/ext\"},useXDomain:true,xdWaitSeconds:15};");
	var _1 = null;
	if ((_1 || (typeof djConfig != "undefined" && djConfig.scopeMap)) && (typeof window != "undefined")) {
		var _2 = "",
		_3 = "",
		_4 = "",
		_5 = {},
		_6 = {};
		_1 = _1 || djConfig.scopeMap;
		for (var i = 0; i < _1.length; i++) {
			var _7 = _1[i];
			_2 += "var " + _7[0] + " = {}; " + _7[1] + " = " + _7[0] + ";" + _7[1] + "._scopeName = '" + _7[1] + "';";
			_3 += (i == 0 ? "": ",") + _7[0];
			_4 += (i == 0 ? "": ",") + _7[1];
			_5[_7[0]] = _7[1];
			_6[_7[1]] = _7[0];
		}
		eval(_2 + "dojo._scopeArgs = [" + _4 + "];");
		dojo._scopePrefixArgs = _3;
		dojo._scopePrefix = "(function(" + _3 + "){";
		dojo._scopeSuffix = "})(" + _4 + ")";
		dojo._scopeMap = _5;
		dojo._scopeMapRev = _6;
	} (function() {
		if (typeof this["loadFirebugConsole"] == "function") {
			this["loadFirebugConsole"]();
		} else {
			this.console = this.console || {};
			var cn = ["assert", "count", "debug", "dir", "dirxml", "error", "group", "groupEnd", "info", "profile", "profileEnd", "time", "timeEnd", "trace", "warn", "log"];
			var i = 0,
			tn;
			while ((tn = cn[i++])) {
				if (!console[tn]) { (function() {
						var _8 = tn + "";
						console[_8] = ("log" in console) ?
						function() {
							var a = Array.apply({},
							arguments);
							a.unshift(_8 + ":");
							console["log"](a.join(" "));
						}: function() {};
						console[_8]._fake = true;
					})();
				}
			}
		}
		if (typeof dojo == "undefined") {
			dojo = {
				_scopeName: "dojo",
				_scopePrefix: "",
				_scopePrefixArgs: "",
				_scopeSuffix: "",
				_scopeMap: {},
				_scopeMapRev: {}
			};
		}
		var d = dojo;
		if (typeof dijit == "undefined") {
			dijit = {
				_scopeName: "dijit"
			};
		}
		if (typeof dojox == "undefined") {
			dojox = {
				_scopeName: "dojox"
			};
		}
		if (!d._scopeArgs) {
			d._scopeArgs = [dojo, dijit, dojox];
		}
		d.global = this;
		d.config = {
			isDebug: false,
			debugAtAllCosts: false
		};
		var _9 = typeof djConfig != "undefined" ? djConfig: typeof dojoConfig != "undefined" ? dojoConfig: null;
		if (_9) {
			for (var c in _9) {
				d.config[c] = _9[c];
			}
		}
		dojo.locale = d.config.locale;
		var _a = "$Rev: 23843 $".match(/\d+/);
		dojo.version = {
			major: 1,
			minor: 6,
			patch: 0,
			flag: "-famous",
			revision: _a ? +_a[0] : NaN,
			toString: function() {
				with(d.version) {
					return major + "." + minor + "." + patch + flag + " (" + revision + ")";
				}
			}
		};
		if (typeof OpenAjax != "undefined") {
			OpenAjax.hub.registerLibrary(dojo._scopeName, "http://dojotoolkit.org", d.version.toString());
		}
		var _b, _c, _d = {};
		for (var i in {
			toString: 1
		}) {
			_b = [];
			break;
		}
		dojo._extraNames = _b = _b || ["hasOwnProperty", "valueOf", "isPrototypeOf", "propertyIsEnumerable", "toLocaleString", "toString", "constructor"];
		_c = _b.length;
		dojo._mixin = function(_e, _f) {
			var _10, s, i;
			for (_10 in _f) {
				s = _f[_10];
				if (! (_10 in _e) || (_e[_10] !== s && (!(_10 in _d) || _d[_10] !== s))) {
					_e[_10] = s;
				}
			}
			if (_c && _f) {
				for (i = 0; i < _c; ++i) {
					_10 = _b[i];
					s = _f[_10];
					if (! (_10 in _e) || (_e[_10] !== s && (!(_10 in _d) || _d[_10] !== s))) {
						_e[_10] = s;
					}
				}
			}
			return _e;
		};
		dojo.mixin = function(obj, _11) {
			if (!obj) {
				obj = {};
			}
			for (var i = 1, l = arguments.length; i < l; i++) {
				d._mixin(obj, arguments[i]);
			}
			return obj;
		};
		dojo._getProp = function(_12, _13, _14) {
			var obj = _14 || d.global;
			for (var i = 0, p; obj && (p = _12[i]); i++) {
				if (i == 0 && d._scopeMap[p]) {
					p = d._scopeMap[p];
				}
				obj = (p in obj ? obj[p] : (_13 ? obj[p] = {}: undefined));
			}
			return obj;
		};
		dojo.setObject = function(_15, _16, _17) {
			var _18 = _15.split("."),
			p = _18.pop(),
			obj = d._getProp(_18, true, _17);
			return obj && p ? (obj[p] = _16) : undefined;
		};
		dojo.getObject = function(_19, _1a, _1b) {
			return d._getProp(_19.split("."), _1a, _1b);
		};
		dojo.exists = function(_1c, obj) {
			return d.getObject(_1c, false, obj) !== undefined;
		};
		dojo["eval"] = function(_1d) {
			return d.global.eval ? d.global.eval(_1d) : eval(_1d);
		};
		d.deprecated = d.experimental = function() {};
	})();
	(function() {
		var d = dojo,
		_1e;
		d.mixin(d, {
			_loadedModules: {},
			_inFlightCount: 0,
			_hasResource: {},
			_modulePrefixes: {
				dojo: {
					name: "dojo",
					value: "."
				},
				doh: {
					name: "doh",
					value: "../util/doh"
				},
				tests: {
					name: "tests",
					value: "tests"
				}
			},
			_moduleHasPrefix: function(_1f) {
				var mp = d._modulePrefixes;
				return !! (mp[_1f] && mp[_1f].value);
			},
			_getModulePrefix: function(_20) {
				var mp = d._modulePrefixes;
				if (d._moduleHasPrefix(_20)) {
					return mp[_20].value;
				}
				return _20;
			},
			_loadedUrls: [],
			_postLoad: false,
			_loaders: [],
			_unloaders: [],
			_loadNotifying: false
		});
		dojo._loadUriAndCheck = function(uri, _21, cb) {
			var ok = false;
			try {
				ok = d._loadUri(uri, cb);
			} catch(e) {}
			return !! (ok && d._loadedModules[_21]);
		};
		dojo.loaded = function() {
			d._loadNotifying = true;
			d._postLoad = true;
			var mll = d._loaders;
			d._loaders = [];
			for (var x = 0; x < mll.length; x++) {
				mll[x]();
			}
			d._loadNotifying = false;
			if (d._postLoad && d._inFlightCount == 0 && mll.length) {
				d._callLoaded();
			}
		};
		dojo.unloaded = function() {
			var mll = d._unloaders;
			while (mll.length) { (mll.pop())();
			}
		};
		d._onto = function(arr, obj, fn) {
			if (!fn) {
				arr.push(obj);
			} else {
				if (fn) {
					var _22 = (typeof fn == "string") ? obj[fn] : fn;
					arr.push(function() {
						_22.call(obj);
					});
				}
			}
		};
		dojo.ready = dojo.addOnLoad = function(obj, _23) {
			d._onto(d._loaders, obj, _23);
			if (d._postLoad && d._inFlightCount == 0 && !d._loadNotifying) {
				d._callLoaded();
			}
		};
		var dca = d.config.addOnLoad;
		if (dca) {
			d.addOnLoad[(dca instanceof Array ? "apply": "call")](d, dca);
		}
		dojo._modulesLoaded = function() {
			if (d._postLoad) {
				return;
			}
			if (d._inFlightCount > 0) {
				return;
			}
			d._callLoaded();
		};
		dojo._callLoaded = function() {
			if (typeof setTimeout == "object" || (d.config.useXDomain && d.isOpera)) {
				setTimeout(d.isAIR ?
				function() {
					d.loaded();
				}: d._scopeName + ".loaded();", 0);
			} else {
				d.loaded();
			}
		};
		dojo._getModuleSymbols = function(_24) {
			var _25 = _24.split(".");
			for (var i = _25.length; i > 0; i--) {
				var _26 = _25.slice(0, i).join(".");
				if (i == 1 && !d._moduleHasPrefix(_26)) {
					_25[0] = "../" + _25[0];
				} else {
					var _27 = d._getModulePrefix(_26);
					if (_27 != _26) {
						_25.splice(0, i, _27);
						break;
					}
				}
			}
			return _25;
		};
		dojo._global_omit_module_check = false;
		dojo.loadInit = function(_28) {
			_28();
		};
		dojo._loadModule = dojo.require = function(_29, _2a) {
			_2a = d._global_omit_module_check || _2a;
			var _2b = d._loadedModules[_29];
			if (_2b) {
				return _2b;
			}
			var _2c = d._getModuleSymbols(_29).join("/") + ".js";
			var _2d = !_2a ? _29: null;
			var ok = d._loadPath(_2c, _2d);
			if (!ok && !_2a) {
				throw new Error("Could not load '" + _29 + "'; last tried '" + _2c + "'");
			}
			if (!_2a && !d._isXDomain) {
				_2b = d._loadedModules[_29];
				if (!_2b) {
					throw new Error("symbol '" + _29 + "' is not defined after loading '" + _2c + "'");
				}
			}
			return _2b;
		};
		dojo.provide = function(_2e) {
			_2e = _2e + "";
			return (d._loadedModules[_2e] = d.getObject(_2e, true));
		};
		dojo.platformRequire = function(_2f) {
			var _30 = _2f.common || [];
			var _31 = _30.concat(_2f[d._name] || _2f["default"] || []);
			for (var x = 0; x < _31.length; x++) {
				var _32 = _31[x];
				if (_32.constructor == Array) {
					d._loadModule.apply(d, _32);
				} else {
					d._loadModule(_32);
				}
			}
		};
		dojo.requireIf = function(_33, _34) {
			if (_33 === true) {
				var _35 = [];
				for (var i = 1; i < arguments.length; i++) {
					_35.push(arguments[i]);
				}
				d.require.apply(d, _35);
			}
		};
		dojo.requireAfterIf = d.requireIf;
		dojo.registerModulePath = function(_36, _37) {
			d._modulePrefixes[_36] = {
				name: _36,
				value: _37
			};
		};
		if (typeof dojo.config["useXDomain"] == "undefined") {
			dojo.config.useXDomain = true;
		}
		dojo.registerModulePath("dojo", "//1.www.s81c.com/common/js/dojo/1.6/dojo");
		dojo.registerModulePath("dijit", "//1.www.s81c.com/common/js/dojo/1.6/dijit");
		dojo.registerModulePath("dojox", "//1.www.s81c.com/common/js/dojo/1.6/dojox");
		dojo.requireLocalization = function(_38, _39, _3a, _3b) {
			d.require("dojo.i18n");
			d.i18n._requireLocalization.apply(d.hostenv, arguments);
		};
		var ore = new RegExp("^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\\?([^#]*))?(#(.*))?$"),
		ire = new RegExp("^((([^\\[:]+):)?([^@]+)@)?(\\[([^\\]]+)\\]|([^\\[:]*))(:([0-9]+))?$");
		dojo._Url = function() {
			var n = null,
			_3c = arguments,
			uri = [_3c[0]];
			for (var i = 1; i < _3c.length; i++) {
				if (!_3c[i]) {
					continue;
				}
				var _3d = new d._Url(_3c[i] + ""),
				_3e = new d._Url(uri[0] + "");
				if (_3d.path == "" && !_3d.scheme && !_3d.authority && !_3d.query) {
					if (_3d.fragment != n) {
						_3e.fragment = _3d.fragment;
					}
					_3d = _3e;
				} else {
					if (!_3d.scheme) {
						_3d.scheme = _3e.scheme;
						if (!_3d.authority) {
							_3d.authority = _3e.authority;
							if (_3d.path.charAt(0) != "/") {
								var _3f = _3e.path.substring(0, _3e.path.lastIndexOf("/") + 1) + _3d.path;
								var _40 = _3f.split("/");
								for (var j = 0; j < _40.length; j++) {
									if (_40[j] == ".") {
										if (j == _40.length - 1) {
											_40[j] = "";
										} else {
											_40.splice(j, 1);
											j--;
										}
									} else {
										if (j > 0 && !(j == 1 && _40[0] == "") && _40[j] == ".." && _40[j - 1] != "..") {
											if (j == (_40.length - 1)) {
												_40.splice(j, 1);
												_40[j - 1] = "";
											} else {
												_40.splice(j - 1, 2);
												j -= 2;
											}
										}
									}
								}
								_3d.path = _40.join("/");
							}
						}
					}
				}
				uri = [];
				if (_3d.scheme) {
					uri.push(_3d.scheme, ":");
				}
				if (_3d.authority) {
					uri.push("//", _3d.authority);
				}
				uri.push(_3d.path);
				if (_3d.query) {
					uri.push("?", _3d.query);
				}
				if (_3d.fragment) {
					uri.push("#", _3d.fragment);
				}
			}
			this.uri = uri.join("");
			var r = this.uri.match(ore);
			this.scheme = r[2] || (r[1] ? "": n);
			this.authority = r[4] || (r[3] ? "": n);
			this.path = r[5];
			this.query = r[7] || (r[6] ? "": n);
			this.fragment = r[9] || (r[8] ? "": n);
			if (this.authority != n) {
				r = this.authority.match(ire);
				this.user = r[3] || n;
				this.password = r[4] || n;
				this.host = r[6] || r[7];
				this.port = r[9] || n;
			}
		};
		dojo._Url.prototype.toString = function() {
			return this.uri;
		};
		dojo.moduleUrl = function(_41, url) {
			var loc = d._getModuleSymbols(_41).join("/");
			if (!loc) {
				return null;
			}
			if (loc.lastIndexOf("/") != loc.length - 1) {
				loc += "/";
			}
			var _42 = loc.indexOf(":");
			if (loc.charAt(0) != "/" && (_42 == -1 || _42 > loc.indexOf("/"))) {
				loc = d.baseUrl + loc;
			}
			return new d._Url(loc, url);
		};
	})();
	dojo.provide("dojo._base._loader.loader_xd");
	dojo._xdReset = function() {
		dojo._isXDomain = dojo.config.useXDomain || false;
		dojo._xdClearInterval();
		dojo._xdInFlight = {};
		dojo._xdOrderedReqs = [];
		dojo._xdDepMap = {};
		dojo._xdContents = [];
		dojo._xdDefList = [];
	};
	dojo._xdClearInterval = function() {
		if (dojo._xdTimer) {
			clearInterval(dojo._xdTimer);
			dojo._xdTimer = 0;
		}
	};
	dojo._xdReset();
	dojo._xdCreateResource = function(_43, _44, _45) {
		var _46 = _43.replace(/(\/\*([\s\S]*?)\*\/|\/\/(.*)$)/mg, "");
		var _47 = [];
		var _48 = /dojo.(require|requireIf|provide|requireAfterIf|platformRequire|requireLocalization)\s*\(([\w\W]*?)\)/mg;
		var _49;
		while ((_49 = _48.exec(_46)) != null) {
			if (_49[1] == "requireLocalization") {
				eval(_49[0]);
			} else {
				_47.push("\"" + _49[1] + "\", " + _49[2]);
			}
		}
		var _4a = [];
		_4a.push(dojo._scopeName + "._xdResourceLoaded(function(" + dojo._scopePrefixArgs + "){\n");
		var _4b = dojo._xdExtractLoadInits(_43);
		if (_4b) {
			_43 = _4b[0];
			for (var i = 1; i < _4b.length; i++) {
				_4a.push(_4b[i] + ";\n");
			}
		}
		_4a.push("return {");
		if (_47.length > 0) {
			_4a.push("depends: [");
			for (i = 0; i < _47.length; i++) {
				if (i > 0) {
					_4a.push(",\n");
				}
				_4a.push("[" + _47[i] + "]");
			}
			_4a.push("],");
		}
		_4a.push("\ndefineResource: function(" + dojo._scopePrefixArgs + "){");
		if (!dojo.config["debugAtAllCosts"] || _44 == "dojo._base._loader.loader_debug") {
			_4a.push(_43);
		}
		_4a.push("\n}, resourceName: '" + _44 + "', resourcePath: '" + _45 + "'};});");
		return _4a.join("");
	};
	dojo._xdExtractLoadInits = function(_4c) {
		var _4d = /dojo.loadInit\s*\(/g;
		_4d.lastIndex = 0;
		var _4e = /[\(\)]/g;
		_4e.lastIndex = 0;
		var _4f = [];
		var _50;
		while ((_50 = _4d.exec(_4c))) {
			_4e.lastIndex = _4d.lastIndex;
			var _51 = 1;
			var _52;
			while ((_52 = _4e.exec(_4c))) {
				if (_52[0] == ")") {
					_51 -= 1;
				} else {
					_51 += 1;
				}
				if (_51 == 0) {
					break;
				}
			}
			if (_51 != 0) {
				throw "unmatched paren around character " + _4e.lastIndex + " in: " + _4c;
			}
			var _53 = _4d.lastIndex - _50[0].length;
			_4f.push(_4c.substring(_53, _4e.lastIndex));
			var _54 = _4e.lastIndex - _53;
			_4c = _4c.substring(0, _53) + _4c.substring(_4e.lastIndex, _4c.length);
			_4d.lastIndex = _4e.lastIndex - _54;
			_4d.lastIndex = _4e.lastIndex;
		}
		if (_4f.length > 0) {
			_4f.unshift(_4c);
		}
		return (_4f.length ? _4f: null);
	};
	dojo._xdIsXDomainPath = function(_55) {
		var _56 = _55.indexOf(":");
		var _57 = _55.indexOf("/");
		if (_56 > 0 && _56 < _57 || _55.indexOf("//") === 0) {
			return true;
		} else {
			var url = dojo.baseUrl;
			_56 = url.indexOf(":");
			_57 = url.indexOf("/");
			if (url.indexOf("//") === 0 || (_56 > 0 && _56 < _57 && (!location.host || url.indexOf("http://" + location.host) != 0))) {
				return true;
			}
		}
		return false;
	};
	dojo._loadPath = function(_58, _59, cb) {
		var _5a = dojo._xdIsXDomainPath(_58);
		dojo._isXDomain |= _5a;
		var uri = ((_58.charAt(0) == "/" || _58.match(/^\w+:/)) ? "": dojo.baseUrl) + _58;
		try {
			return ((!_59 || dojo._isXDomain) ? dojo._loadUri(uri, cb, _5a, _59) : dojo._loadUriAndCheck(uri, _59, cb));
		} catch(e) {
			return false;
		}
	};
	dojo._xdCharSet = "utf-8";
	dojo._loadUri = function(uri, cb, _5b, _5c) {
		if (dojo._loadedUrls[uri]) {
			return 1;
		}
		if (dojo._isXDomain && _5c && _5c != "dojo.i18n") {
			dojo._xdOrderedReqs.push(_5c);
			if (_5b || uri.indexOf("/nls/") == -1) {
				dojo._xdInFlight[_5c] = true;
				dojo._inFlightCount++;
			}
			if (!dojo._xdTimer) {
				if (dojo.isAIR) {
					dojo._xdTimer = setInterval(function() {
						dojo._xdWatchInFlight();
					},
					100);
				} else {
					dojo._xdTimer = setInterval(dojo._scopeName + "._xdWatchInFlight();", 100);
				}
			}
			dojo._xdStartTime = (new Date()).getTime();
		}
		if (_5b) {
			var _5d = uri.lastIndexOf(".");
			if (_5d <= 0) {
				_5d = uri.length - 1;
			}
			var _5e = uri.substring(0, _5d) + ".xd";
			if (_5d != uri.length - 1) {
				_5e += uri.substring(_5d, uri.length);
			}
			if (dojo.isAIR) {
				_5e = _5e.replace("app:/", "/");
			}
			var _5f = document.createElement("script");
			_5f.type = "text/javascript";
			if (dojo._xdCharSet) {
				_5f.charset = dojo._xdCharSet;
			}
			_5f.src = _5e;
			if (!dojo.headElement) {
				dojo._headElement = document.getElementsByTagName("head")[0];
				if (!dojo._headElement) {
					dojo._headElement = document.getElementsByTagName("html")[0];
				}
			}
			dojo._headElement.appendChild(_5f);
		} else {
			var _60 = dojo._getText(uri, null, true);
			if (_60 == null) {
				return 0;
			}
			if (dojo._isXDomain && uri.indexOf("/nls/") == -1 && _5c != "dojo.i18n") {
				var res = dojo._xdCreateResource(_60, _5c, uri);
				dojo.eval(res);
			} else {
				if (cb) {
					_60 = "(" + _60 + ")";
				} else {
					_60 = dojo._scopePrefix + _60 + dojo._scopeSuffix;
				}
				var _61 = dojo["eval"](_60 + "\r\n//@ sourceURL=" + uri);
				if (cb) {
					cb(_61);
				}
			}
		}
		dojo._loadedUrls[uri] = true;
		dojo._loadedUrls.push(uri);
		return true;
	};
	dojo._xdResourceLoaded = function(res) {
		res = res.apply(dojo.global, dojo._scopeArgs);
		var _62 = res.depends;
		var _63 = null;
		var _64 = null;
		var _65 = [];
		if (_62 && _62.length > 0) {
			var dep = null;
			var _66 = 0;
			var _67 = false;
			for (var i = 0; i < _62.length; i++) {
				dep = _62[i];
				if (dep[0] == "provide") {
					_65.push(dep[1]);
				} else {
					if (!_63) {
						_63 = [];
					}
					if (!_64) {
						_64 = [];
					}
					var _68 = dojo._xdUnpackDependency(dep);
					if (_68.requires) {
						_63 = _63.concat(_68.requires);
					}
					if (_68.requiresAfter) {
						_64 = _64.concat(_68.requiresAfter);
					}
				}
				var _69 = dep[0];
				var _6a = _69.split(".");
				if (_6a.length == 2) {
					dojo[_6a[0]][_6a[1]].apply(dojo[_6a[0]], dep.slice(1));
				} else {
					dojo[_69].apply(dojo, dep.slice(1));
				}
			}
			if (_65.length == 1 && _65[0] == "dojo._base._loader.loader_debug") {
				res.defineResource(dojo);
			} else {
				var _6b = dojo._xdContents.push({
					content: res.defineResource,
					resourceName: res["resourceName"],
					resourcePath: res["resourcePath"],
					isDefined: false
				}) - 1;
				for (i = 0; i < _65.length; i++) {
					dojo._xdDepMap[_65[i]] = {
						requires: _63,
						requiresAfter: _64,
						contentIndex: _6b
					};
				}
			}
			for (i = 0; i < _65.length; i++) {
				dojo._xdInFlight[_65[i]] = false;
			}
		}
	};
	dojo._xdLoadFlattenedBundle = function(_6c, _6d, _6e, _6f) {
		_6e = _6e || "root";
		var _70 = dojo.i18n.normalizeLocale(_6e).replace("-", "_");
		var _71 = [_6c, "nls", _6d].join(".");
		var _72 = dojo["provide"](_71);
		_72[_70] = _6f;
		var _73 = [_6c, _70, _6d].join(".");
		var _74 = dojo._xdBundleMap[_73];
		if (_74) {
			for (var _75 in _74) {
				_72[_75] = _6f;
			}
		}
	};
	dojo._xdInitExtraLocales = function() {
		var _76 = dojo.config.extraLocale;
		if (_76) {
			if (!_76 instanceof Array) {
				_76 = [_76];
			}
			dojo._xdReqLoc = dojo.xdRequireLocalization;
			dojo.xdRequireLocalization = function(m, b, _77, _78) {
				dojo._xdReqLoc(m, b, _77, _78);
				if (_77) {
					return;
				}
				for (var i = 0; i < _76.length; i++) {
					dojo._xdReqLoc(m, b, _76[i], _78);
				}
			};
		}
	};
	dojo._xdBundleMap = {};
	dojo.xdRequireLocalization = function(_79, _7a, _7b, _7c) {
		if (dojo._xdInitExtraLocales) {
			dojo._xdInitExtraLocales();
			dojo._xdInitExtraLocales = null;
			dojo.xdRequireLocalization.apply(dojo, arguments);
			return;
		}
		var _7d = _7c.split(",");
		var _7e = dojo.i18n.normalizeLocale(_7b);
		var _7f = "";
		for (var i = 0; i < _7d.length; i++) {
			if (_7e.indexOf(_7d[i]) == 0) {
				if (_7d[i].length > _7f.length) {
					_7f = _7d[i];
				}
			}
		}
		var _80 = _7f.replace("-", "_");
		var _81 = dojo.getObject([_79, "nls", _7a].join("."));
		if (!_81 || !_81[_80]) {
			var _82 = [_79, (_80 || "root"), _7a].join(".");
			var _83 = dojo._xdBundleMap[_82];
			if (!_83) {
				_83 = dojo._xdBundleMap[_82] = {};
			}
			_83[_7e.replace("-", "_")] = true;
			dojo.require(_79 + ".nls" + (_7f ? "." + _7f: "") + "." + _7a);
		}
	};
	dojo._xdRealRequireLocalization = dojo.requireLocalization;
	dojo.requireLocalization = function(_84, _85, _86, _87) {
		var _88 = dojo.moduleUrl(_84).toString();
		if (dojo._xdIsXDomainPath(_88)) {
			return dojo.xdRequireLocalization.apply(dojo, arguments);
		} else {
			return dojo._xdRealRequireLocalization.apply(dojo, arguments);
		}
	};
	dojo._xdUnpackDependency = function(dep) {
		var _89 = null;
		var _8a = null;
		switch (dep[0]) {
		case "requireIf":
		case "requireAfterIf":
			if (dep[1] === true) {
				_89 = [{
					name: dep[2],
					content: null
				}];
			}
			break;
		case "platformRequire":
			var _8b = dep[1];
			var _8c = _8b["common"] || [];
			_89 = (_8b[dojo.hostenv.name_]) ? _8c.concat(_8b[dojo.hostenv.name_] || []) : _8c.concat(_8b["default"] || []);
			if (_89) {
				for (var i = 0; i < _89.length; i++) {
					if (_89[i] instanceof Array) {
						_89[i] = {
							name: _89[i][0],
							content: null
						};
					} else {
						_89[i] = {
							name: _89[i],
							content: null
						};
					}
				}
			}
			break;
		case "require":
			_89 = [{
				name: dep[1],
				content: null
			}];
			break;
		case "i18n._preloadLocalizations":
			dojo.i18n._preloadLocalizations.apply(dojo.i18n._preloadLocalizations, dep.slice(1));
			break;
		}
		if (dep[0] == "requireAfterIf" || dep[0] == "requireIf") {
			_8a = _89;
			_89 = null;
		}
		return {
			requires: _89,
			requiresAfter: _8a
		};
	};
	dojo._xdWalkReqs = function() {
		var _8d = null;
		var req;
		for (var i = 0; i < dojo._xdOrderedReqs.length; i++) {
			req = dojo._xdOrderedReqs[i];
			if (dojo._xdDepMap[req]) {
				_8d = [req];
				_8d[req] = true;
				dojo._xdEvalReqs(_8d);
			}
		}
	};
	dojo._xdEvalReqs = function(_8e) {
		while (_8e.length > 0) {
			var req = _8e[_8e.length - 1];
			var res = dojo._xdDepMap[req];
			var i, _8f, _90;
			if (res) {
				_8f = res.requires;
				if (_8f && _8f.length > 0) {
					for (i = 0; i < _8f.length; i++) {
						_90 = _8f[i].name;
						if (_90 && !_8e[_90]) {
							_8e.push(_90);
							_8e[_90] = true;
							dojo._xdEvalReqs(_8e);
						}
					}
				}
				var _91 = dojo._xdContents[res.contentIndex];
				if (!_91.isDefined) {
					var _92 = _91.content;
					_92["resourceName"] = _91["resourceName"];
					_92["resourcePath"] = _91["resourcePath"];
					dojo._xdDefList.push(_92);
					_91.isDefined = true;
				}
				dojo._xdDepMap[req] = null;
				_8f = res.requiresAfter;
				if (_8f && _8f.length > 0) {
					for (i = 0; i < _8f.length; i++) {
						_90 = _8f[i].name;
						if (_90 && !_8e[_90]) {
							_8e.push(_90);
							_8e[_90] = true;
							dojo._xdEvalReqs(_8e);
						}
					}
				}
			}
			_8e.pop();
		}
	};
	dojo._xdWatchInFlight = function() {
		var _93 = "";
		var _94 = (dojo.config.xdWaitSeconds || 15) * 1000;
		var _95 = (dojo._xdStartTime + _94) < (new Date()).getTime();
		for (var _96 in dojo._xdInFlight) {
			if (dojo._xdInFlight[_96] === true) {
				if (_95) {
					_93 += _96 + " ";
				} else {
					return;
				}
			}
		}
		dojo._xdClearInterval();
		if (_95) {
			throw "Could not load cross-domain resources: " + _93;
		}
		dojo._xdWalkReqs();
		var _97 = dojo._xdDefList.length;
		for (var i = 0; i < _97; i++) {
			var _98 = dojo._xdDefList[i];
			if (dojo.config["debugAtAllCosts"] && _98["resourceName"]) {
				if (!dojo["_xdDebugQueue"]) {
					dojo._xdDebugQueue = [];
				}
				dojo._xdDebugQueue.push({
					resourceName: _98.resourceName,
					resourcePath: _98.resourcePath
				});
			} else {
				_98.apply(dojo.global, dojo._scopeArgs);
			}
		}
		for (i = 0; i < dojo._xdContents.length; i++) {
			var _99 = dojo._xdContents[i];
			if (_99.content && !_99.isDefined) {
				_99.content.apply(dojo.global, dojo._scopeArgs);
			}
		}
		dojo._xdReset();
		if (dojo["_xdDebugQueue"] && dojo._xdDebugQueue.length > 0) {
			dojo._xdDebugFileLoaded();
		} else {
			dojo._xdNotifyLoaded();
		}
	};
	dojo._xdNotifyLoaded = function() {
		for (var _9a in dojo._xdInFlight) {
			if (typeof dojo._xdInFlight[_9a] == "boolean") {
				return;
			}
		}
		dojo._inFlightCount = 0;
		if (dojo._initFired && !dojo._loadNotifying) {
			dojo._callLoaded();
		}
	};
	if (typeof window != "undefined") {
		dojo.isBrowser = true;
		dojo._name = "browser";
		(function() {
			var d = dojo;
			if (document && document.getElementsByTagName) {
				var _9b = document.getElementsByTagName("script");
				var _9c = /dojo(\.xd)?\.js(\W|$)/i;
				for (var i = 0; i < _9b.length; i++) {
					var src = _9b[i].getAttribute("src");
					if (!src) {
						continue;
					}
					var m = src.match(_9c);
					if (m) {
						if (!d.config.baseUrl) {
							d.config.baseUrl = src.substring(0, m.index);
						}
						var cfg = (_9b[i].getAttribute("djConfig") || _9b[i].getAttribute("data-dojo-config"));
						if (cfg) {
							var _9d = eval("({ " + cfg + " })");
							for (var x in _9d) {
								dojo.config[x] = _9d[x];
							}
						}
						break;
					}
				}
			}
			d.baseUrl = d.config.baseUrl;
			var n = navigator;
			var dua = n.userAgent,
			dav = n.appVersion,
			tv = parseFloat(dav);
			if (dua.indexOf("Opera") >= 0) {
				d.isOpera = tv;
			}
			if (dua.indexOf("AdobeAIR") >= 0) {
				d.isAIR = 1;
			}
			d.isKhtml = (dav.indexOf("Konqueror") >= 0) ? tv: 0;
			d.isWebKit = parseFloat(dua.split("WebKit/")[1]) || undefined;
			d.isChrome = parseFloat(dua.split("Chrome/")[1]) || undefined;
			d.isMac = dav.indexOf("Macintosh") >= 0;
			var _9e = Math.max(dav.indexOf("WebKit"), dav.indexOf("Safari"), 0);
			if (_9e && !dojo.isChrome) {
				d.isSafari = parseFloat(dav.split("Version/")[1]);
				if (!d.isSafari || parseFloat(dav.substr(_9e + 7)) <= 419.3) {
					d.isSafari = 2;
				}
			}
			if (dua.indexOf("Gecko") >= 0 && !d.isKhtml && !d.isWebKit) {
				d.isMozilla = d.isMoz = tv;
			}
			if (d.isMoz) {
				d.isFF = parseFloat(dua.split("Firefox/")[1] || dua.split("Minefield/")[1]) || undefined;
			}
			if (document.all && !d.isOpera) {
				d.isIE = parseFloat(dav.split("MSIE ")[1]) || undefined;
				var _9f = document.documentMode;
				if (_9f && _9f != 5 && Math.floor(d.isIE) != _9f) {
					d.isIE = _9f;
				}
			}
			if (dojo.isIE && window.location.protocol === "file:") {
				dojo.config.ieForceActiveXXhr = true;
			}
			d.isQuirks = document.compatMode == "BackCompat";
			d.locale = dojo.config.locale || (d.isIE ? n.userLanguage: n.language).toLowerCase();
			d._XMLHTTP_PROGIDS = ["Msxml2.XMLHTTP", "Microsoft.XMLHTTP", "Msxml2.XMLHTTP.4.0"];
			d._xhrObj = function() {
				var _a0, _a1;
				if (!dojo.isIE || !dojo.config.ieForceActiveXXhr) {
					try {
						_a0 = new XMLHttpRequest();
					} catch(e) {}
				}
				if (!_a0) {
					for (var i = 0; i < 3; ++i) {
						var _a2 = d._XMLHTTP_PROGIDS[i];
						try {
							_a0 = new ActiveXObject(_a2);
						} catch(e) {
							_a1 = e;
						}
						if (_a0) {
							d._XMLHTTP_PROGIDS = [_a2];
							break;
						}
					}
				}
				if (!_a0) {
					throw new Error("XMLHTTP not available: " + _a1);
				}
				return _a0;
			};
			d._isDocumentOk = function(_a3) {
				var _a4 = _a3.status || 0;
				return (_a4 >= 200 && _a4 < 300) || _a4 == 304 || _a4 == 1223 || !_a4;
			};
			var _a5 = window.location + "";
			var _a6 = document.getElementsByTagName("base");
			var _a7 = (_a6 && _a6.length > 0);
			d._getText = function(uri, _a8) {
				var _a9 = d._xhrObj();
				if (!_a7 && dojo._Url) {
					uri = (new dojo._Url(_a5, uri)).toString();
				}
				if (d.config.cacheBust) {
					uri += "";
					uri += (uri.indexOf("?") == -1 ? "?": "&") + String(d.config.cacheBust).replace(/\W+/g, "");
				}
				_a9.open("GET", uri, false);
				try {
					_a9.send(null);
					if (!d._isDocumentOk(_a9)) {
						var err = Error("Unable to load " + uri + " status:" + _a9.status);
						err.status = _a9.status;
						err.responseText = _a9.responseText;
						throw err;
					}
				} catch(e) {
					if (_a8) {
						return null;
					}
					throw e;
				}
				return _a9.responseText;
			};
			var _aa = window;
			var _ab = function(_ac, fp) {
				var _ad = _aa.attachEvent || _aa.addEventListener;
				_ac = _aa.attachEvent ? _ac: _ac.substring(2);
				_ad(_ac,
				function() {
					fp.apply(_aa, arguments);
				},
				false);
			};
			d._windowUnloaders = [];
			d.windowUnloaded = function() {
				var mll = d._windowUnloaders;
				while (mll.length) { (mll.pop())();
				}
				d = null;
			};
			var _ae = 0;
			d.addOnWindowUnload = function(obj, _af) {
				d._onto(d._windowUnloaders, obj, _af);
				if (!_ae) {
					_ae = 1;
					_ab("onunload", d.windowUnloaded);
				}
			};
			var _b0 = 0;
			d.addOnUnload = function(obj, _b1) {
				d._onto(d._unloaders, obj, _b1);
				if (!_b0) {
					_b0 = 1;
					_ab("onbeforeunload", dojo.unloaded);
				}
			};
		})();
		dojo._initFired = false;
		dojo._loadInit = function(e) {
			if (dojo._scrollIntervalId) {
				clearInterval(dojo._scrollIntervalId);
				dojo._scrollIntervalId = 0;
			}
			if (!dojo._initFired) {
				dojo._initFired = true;
				if (!dojo.config.afterOnLoad && window.detachEvent) {
					window.detachEvent("onload", dojo._loadInit);
				}
				if (dojo._inFlightCount == 0) {
					dojo._modulesLoaded();
				}
			}
		};
		if (!dojo.config.afterOnLoad) {
			if (document.addEventListener) {
				document.addEventListener("DOMContentLoaded", dojo._loadInit, false);
				window.addEventListener("load", dojo._loadInit, false);
			} else {
				if (window.attachEvent) {
					window.attachEvent("onload", dojo._loadInit);
					if (!dojo.config.skipIeDomLoaded && self === self.top) {
						dojo._scrollIntervalId = setInterval(function() {
							try {
								if (document.body) {
									document.documentElement.doScroll("left");
									dojo._loadInit();
								}
							} catch(e) {}
						},
						30);
					}
				}
			}
		}
		if (dojo.isIE) {
			try { (function() {
					document.namespaces.add("v", "urn:schemas-microsoft-com:vml");
					var _b2 = ["*", "group", "roundrect", "oval", "shape", "rect", "imagedata", "path", "textpath", "text"],
					i = 0,
					l = 1,
					s = document.createStyleSheet();
					if (dojo.isIE >= 8) {
						i = 1;
						l = _b2.length;
					}
					for (; i < l; ++i) {
						s.addRule("v\\:" + _b2[i], "behavior:url(#default#VML); display:inline-block");
					}
				})();
			} catch(e) {}
		}
	} (function() {
		var mp = dojo.config["modulePaths"];
		if (mp) {
			for (var _b3 in mp) {
				dojo.registerModulePath(_b3, mp[_b3]);
			}
		}
	})();
	if (dojo.config.isDebug) {
		dojo.require("dojo._firebug.firebug");
	}
	if (dojo.config.debugAtAllCosts) {
		dojo.require("dojo._base._loader.loader_debug");
	}
	if (!dojo._hasResource["dojo._base.lang"]) {
		dojo._hasResource["dojo._base.lang"] = true;
		dojo.provide("dojo._base.lang");
		(function() {
			var d = dojo,
			_b4 = Object.prototype.toString;
			dojo.isString = function(it) {
				return (typeof it == "string" || it instanceof String);
			};
			dojo.isArray = function(it) {
				return it && (it instanceof Array || typeof it == "array");
			};
			dojo.isFunction = function(it) {
				return _b4.call(it) === "[object Function]";
			};
			dojo.isObject = function(it) {
				return it !== undefined && (it === null || typeof it == "object" || d.isArray(it) || d.isFunction(it));
			};
			dojo.isArrayLike = function(it) {
				return it && it !== undefined && !d.isString(it) && !d.isFunction(it) && !(it.tagName && it.tagName.toLowerCase() == "form") && (d.isArray(it) || isFinite(it.length));
			};
			dojo.isAlien = function(it) {
				return it && !d.isFunction(it) && /\{\s*\[native code\]\s*\}/.test(String(it));
			};
			dojo.extend = function(_b5, _b6) {
				for (var i = 1, l = arguments.length; i < l; i++) {
					d._mixin(_b5.prototype, arguments[i]);
				}
				return _b5;
			};
			dojo._hitchArgs = function(_b7, _b8) {
				var pre = d._toArray(arguments, 2);
				var _b9 = d.isString(_b8);
				return function() {
					var _ba = d._toArray(arguments);
					var f = _b9 ? (_b7 || d.global)[_b8] : _b8;
					return f && f.apply(_b7 || this, pre.concat(_ba));
				};
			};
			dojo.hitch = function(_bb, _bc) {
				if (arguments.length > 2) {
					return d._hitchArgs.apply(d, arguments);
				}
				if (!_bc) {
					_bc = _bb;
					_bb = null;
				}
				if (d.isString(_bc)) {
					_bb = _bb || d.global;
					if (!_bb[_bc]) {
						throw (["dojo.hitch: scope[\"", _bc, "\"] is null (scope=\"", _bb, "\")"].join(""));
					}
					return function() {
						return _bb[_bc].apply(_bb, arguments || []);
					};
				}
				return ! _bb ? _bc: function() {
					return _bc.apply(_bb, arguments || []);
				};
			};
			dojo.delegate = dojo._delegate = (function() {
				function TMP() {};
				return function(obj, _bd) {
					TMP.prototype = obj;
					var tmp = new TMP();
					TMP.prototype = null;
					if (_bd) {
						d._mixin(tmp, _bd);
					}
					return tmp;
				};
			})();
			var _be = function(obj, _bf, _c0) {
				return (_c0 || []).concat(Array.prototype.slice.call(obj, _bf || 0));
			};
			var _c1 = function(obj, _c2, _c3) {
				var arr = _c3 || [];
				for (var x = _c2 || 0; x < obj.length; x++) {
					arr.push(obj[x]);
				}
				return arr;
			};
			dojo._toArray = d.isIE ?
			function(obj) {
				return ((obj.item) ? _c1: _be).apply(this, arguments);
			}: _be;
			dojo.partial = function(_c4) {
				var arr = [null];
				return d.hitch.apply(d, arr.concat(d._toArray(arguments)));
			};
			var _c5 = d._extraNames,
			_c6 = _c5.length,
			_c7 = {};
			dojo.clone = function(o) {
				if (!o || typeof o != "object" || d.isFunction(o)) {
					return o;
				}
				if (o.nodeType && "cloneNode" in o) {
					return o.cloneNode(true);
				}
				if (o instanceof Date) {
					return new Date(o.getTime());
				}
				if (o instanceof RegExp) {
					return new RegExp(o);
				}
				var r, i, l, s, _c8;
				if (d.isArray(o)) {
					r = [];
					for (i = 0, l = o.length; i < l; ++i) {
						if (i in o) {
							r.push(d.clone(o[i]));
						}
					}
				} else {
					r = o.constructor ? new o.constructor() : {};
				}
				for (_c8 in o) {
					s = o[_c8];
					if (! (_c8 in r) || (r[_c8] !== s && (!(_c8 in _c7) || _c7[_c8] !== s))) {
						r[_c8] = d.clone(s);
					}
				}
				if (_c6) {
					for (i = 0; i < _c6; ++i) {
						_c8 = _c5[i];
						s = o[_c8];
						if (! (_c8 in r) || (r[_c8] !== s && (!(_c8 in _c7) || _c7[_c8] !== s))) {
							r[_c8] = s;
						}
					}
				}
				return r;
			};
			dojo.trim = String.prototype.trim ?
			function(str) {
				return str.trim();
			}: function(str) {
				return str.replace(/^\s\s*/, "").replace(/\s\s*$/, "");
			};
			var _c9 = /\{([^\}]+)\}/g;
			dojo.replace = function(_ca, map, _cb) {
				return _ca.replace(_cb || _c9, d.isFunction(map) ? map: function(_cc, k) {
					return d.getObject(k, false, map);
				});
			};
		})();
	}
	if (!dojo._hasResource["dojo._base.array"]) {
		dojo._hasResource["dojo._base.array"] = true;
		dojo.provide("dojo._base.array");
		(function() {
			var _cd = function(arr, obj, cb) {
				return [(typeof arr == "string") ? arr.split("") : arr, obj || dojo.global, (typeof cb == "string") ? new Function("item", "index", "array", cb) : cb];
			};
			var _ce = function(_cf, arr, _d0, _d1) {
				var _d2 = _cd(arr, _d1, _d0);
				arr = _d2[0];
				for (var i = 0, l = arr.length; i < l; ++i) {
					var _d3 = !!_d2[2].call(_d2[1], arr[i], i, arr);
					if (_cf ^ _d3) {
						return _d3;
					}
				}
				return _cf;
			};
			dojo.mixin(dojo, {
				indexOf: function(_d4, _d5, _d6, _d7) {
					var _d8 = 1,
					end = _d4.length || 0,
					i = 0;
					if (_d7) {
						i = end - 1;
						_d8 = end = -1;
					}
					if (_d6 != undefined) {
						i = _d6;
					}
					if ((_d7 && i > end) || i < end) {
						for (; i != end; i += _d8) {
							if (_d4[i] == _d5) {
								return i;
							}
						}
					}
					return - 1;
				},
				lastIndexOf: function(_d9, _da, _db) {
					return dojo.indexOf(_d9, _da, _db, true);
				},
				forEach: function(arr, _dc, _dd) {
					if (!arr || !arr.length) {
						return;
					}
					var _de = _cd(arr, _dd, _dc);
					arr = _de[0];
					for (var i = 0, l = arr.length; i < l; ++i) {
						_de[2].call(_de[1], arr[i], i, arr);
					}
				},
				every: function(arr, _df, _e0) {
					return _ce(true, arr, _df, _e0);
				},
				some: function(arr, _e1, _e2) {
					return _ce(false, arr, _e1, _e2);
				},
				map: function(arr, _e3, _e4) {
					var _e5 = _cd(arr, _e4, _e3);
					arr = _e5[0];
					var _e6 = (arguments[3] ? (new arguments[3]()) : []);
					for (var i = 0, l = arr.length; i < l; ++i) {
						_e6.push(_e5[2].call(_e5[1], arr[i], i, arr));
					}
					return _e6;
				},
				filter: function(arr, _e7, _e8) {
					var _e9 = _cd(arr, _e8, _e7);
					arr = _e9[0];
					var _ea = [];
					for (var i = 0, l = arr.length; i < l; ++i) {
						if (_e9[2].call(_e9[1], arr[i], i, arr)) {
							_ea.push(arr[i]);
						}
					}
					return _ea;
				}
			});
		})();
	}
	if (!dojo._hasResource["dojo._base.declare"]) {
		dojo._hasResource["dojo._base.declare"] = true;
		dojo.provide("dojo._base.declare");
		(function() {
			var d = dojo,
			mix = d._mixin,
			op = Object.prototype,
			_eb = op.toString,
			_ec = new Function,
			_ed = 0,
			_ee = "constructor";
			function err(msg, cls) {
				throw new Error("declare" + (cls ? " " + cls: "") + ": " + msg);
			};
			function _ef(_f0, _f1) {
				var _f2 = [],
				_f3 = [{
					cls: 0,
					refs: []
				}],
				_f4 = {},
				_f5 = 1,
				l = _f0.length,
				i = 0,
				j,
				lin,
				_f6,
				top,
				_f7,
				rec,
				_f8,
				_f9;
				for (; i < l; ++i) {
					_f6 = _f0[i];
					if (!_f6) {
						err("mixin #" + i + " is unknown. Did you use dojo.require to pull it in?", _f1);
					} else {
						if (_eb.call(_f6) != "[object Function]") {
							err("mixin #" + i + " is not a callable constructor.", _f1);
						}
					}
					lin = _f6._meta ? _f6._meta.bases: [_f6];
					top = 0;
					for (j = lin.length - 1; j >= 0; --j) {
						_f7 = lin[j].prototype;
						if (!_f7.hasOwnProperty("declaredClass")) {
							_f7.declaredClass = "uniqName_" + (_ed++);
						}
						_f8 = _f7.declaredClass;
						if (!_f4.hasOwnProperty(_f8)) {
							_f4[_f8] = {
								count: 0,
								refs: [],
								cls: lin[j]
							}; ++_f5;
						}
						rec = _f4[_f8];
						if (top && top !== rec) {
							rec.refs.push(top); ++top.count;
						}
						top = rec;
					}++top.count;
					_f3[0].refs.push(top);
				}
				while (_f3.length) {
					top = _f3.pop();
					_f2.push(top.cls); --_f5;
					while (_f9 = top.refs, _f9.length == 1) {
						top = _f9[0];
						if (!top || --top.count) {
							top = 0;
							break;
						}
						_f2.push(top.cls); --_f5;
					}
					if (top) {
						for (i = 0, l = _f9.length; i < l; ++i) {
							top = _f9[i];
							if (!--top.count) {
								_f3.push(top);
							}
						}
					}
				}
				if (_f5) {
					err("can't build consistent linearization", _f1);
				}
				_f6 = _f0[0];
				_f2[0] = _f6 ? _f6._meta && _f6 === _f2[_f2.length - _f6._meta.bases.length] ? _f6._meta.bases.length: 1 : 0;
				return _f2;
			};
			function _fa(_fb, a, f) {
				var _fc, _fd, _fe, _ff, meta, base, _100, opf, pos, _101 = this._inherited = this._inherited || {};
				if (typeof _fb == "string") {
					_fc = _fb;
					_fb = a;
					a = f;
				}
				f = 0;
				_ff = _fb.callee;
				_fc = _fc || _ff.nom;
				if (!_fc) {
					err("can't deduce a name to call inherited()", this.declaredClass);
				}
				meta = this.constructor._meta;
				_fe = meta.bases;
				pos = _101.p;
				if (_fc != _ee) {
					if (_101.c !== _ff) {
						pos = 0;
						base = _fe[0];
						meta = base._meta;
						if (meta.hidden[_fc] !== _ff) {
							_fd = meta.chains;
							if (_fd && typeof _fd[_fc] == "string") {
								err("calling chained method with inherited: " + _fc, this.declaredClass);
							}
							do {
								meta = base._meta;
								_100 = base.prototype;
								if (meta && (_100[_fc] === _ff && _100.hasOwnProperty(_fc) || meta.hidden[_fc] === _ff)) {
									break;
								}
							} while ( base = _fe [++ pos ]);
							pos = base ? pos: -1;
						}
					}
					base = _fe[++pos];
					if (base) {
						_100 = base.prototype;
						if (base._meta && _100.hasOwnProperty(_fc)) {
							f = _100[_fc];
						} else {
							opf = op[_fc];
							do {
								_100 = base.prototype;
								f = _100[_fc];
								if (f && (base._meta ? _100.hasOwnProperty(_fc) : f !== opf)) {
									break;
								}
							} while ( base = _fe [++ pos ]);
						}
					}
					f = base && f || op[_fc];
				} else {
					if (_101.c !== _ff) {
						pos = 0;
						meta = _fe[0]._meta;
						if (meta && meta.ctor !== _ff) {
							_fd = meta.chains;
							if (!_fd || _fd.constructor !== "manual") {
								err("calling chained constructor with inherited", this.declaredClass);
							}
							while (base = _fe[++pos]) {
								meta = base._meta;
								if (meta && meta.ctor === _ff) {
									break;
								}
							}
							pos = base ? pos: -1;
						}
					}
					while (base = _fe[++pos]) {
						meta = base._meta;
						f = meta ? meta.ctor: base;
						if (f) {
							break;
						}
					}
					f = base && f;
				}
				_101.c = f;
				_101.p = pos;
				if (f) {
					return a === true ? f: f.apply(this, a || _fb);
				}
			};
			function _102(name, args) {
				if (typeof name == "string") {
					return this.inherited(name, args, true);
				}
				return this.inherited(name, true);
			};
			function _103(cls) {
				var _104 = this.constructor._meta.bases;
				for (var i = 0, l = _104.length; i < l; ++i) {
					if (_104[i] === cls) {
						return true;
					}
				}
				return this instanceof cls;
			};
			function _105(_106, _107) {
				var name, i = 0,
				l = d._extraNames.length;
				for (name in _107) {
					if (name != _ee && _107.hasOwnProperty(name)) {
						_106[name] = _107[name];
					}
				}
				for (; i < l; ++i) {
					name = d._extraNames[i];
					if (name != _ee && _107.hasOwnProperty(name)) {
						_106[name] = _107[name];
					}
				}
			};
			function _108(_109, _10a) {
				var name, t, i = 0,
				l = d._extraNames.length;
				for (name in _10a) {
					t = _10a[name];
					if ((t !== op[name] || !(name in op)) && name != _ee) {
						if (_eb.call(t) == "[object Function]") {
							t.nom = name;
						}
						_109[name] = t;
					}
				}
				for (; i < l; ++i) {
					name = d._extraNames[i];
					t = _10a[name];
					if ((t !== op[name] || !(name in op)) && name != _ee) {
						if (_eb.call(t) == "[object Function]") {
							t.nom = name;
						}
						_109[name] = t;
					}
				}
				return _109;
			};
			function _10b(_10c) {
				_108(this.prototype, _10c);
				return this;
			};
			function _10d(_10e, _10f) {
				return function() {
					var a = arguments,
					args = a,
					a0 = a[0],
					f,
					i,
					m,
					l = _10e.length,
					_110;
					if (! (this instanceof a.callee)) {
						return _111(a);
					}
					if (_10f && (a0 && a0.preamble || this.preamble)) {
						_110 = new Array(_10e.length);
						_110[0] = a;
						for (i = 0;;) {
							a0 = a[0];
							if (a0) {
								f = a0.preamble;
								if (f) {
									a = f.apply(this, a) || a;
								}
							}
							f = _10e[i].prototype;
							f = f.hasOwnProperty("preamble") && f.preamble;
							if (f) {
								a = f.apply(this, a) || a;
							}
							if (++i == l) {
								break;
							}
							_110[i] = a;
						}
					}
					for (i = l - 1; i >= 0; --i) {
						f = _10e[i];
						m = f._meta;
						f = m ? m.ctor: f;
						if (f) {
							f.apply(this, _110 ? _110[i] : a);
						}
					}
					f = this.postscript;
					if (f) {
						f.apply(this, args);
					}
				};
			};
			function _112(ctor, _113) {
				return function() {
					var a = arguments,
					t = a,
					a0 = a[0],
					f;
					if (! (this instanceof a.callee)) {
						return _111(a);
					}
					if (_113) {
						if (a0) {
							f = a0.preamble;
							if (f) {
								t = f.apply(this, t) || t;
							}
						}
						f = this.preamble;
						if (f) {
							f.apply(this, t);
						}
					}
					if (ctor) {
						ctor.apply(this, a);
					}
					f = this.postscript;
					if (f) {
						f.apply(this, a);
					}
				};
			};
			function _114(_115) {
				return function() {
					var a = arguments,
					i = 0,
					f, m;
					if (! (this instanceof a.callee)) {
						return _111(a);
					}
					for (; f = _115[i]; ++i) {
						m = f._meta;
						f = m ? m.ctor: f;
						if (f) {
							f.apply(this, a);
							break;
						}
					}
					f = this.postscript;
					if (f) {
						f.apply(this, a);
					}
				};
			};
			function _116(name, _117, _118) {
				return function() {
					var b, m, f, i = 0,
					step = 1;
					if (_118) {
						i = _117.length - 1;
						step = -1;
					}
					for (; b = _117[i]; i += step) {
						m = b._meta;
						f = (m ? m.hidden: b.prototype)[name];
						if (f) {
							f.apply(this, arguments);
						}
					}
				};
			};
			function _119(ctor) {
				_ec.prototype = ctor.prototype;
				var t = new _ec;
				_ec.prototype = null;
				return t;
			};
			function _111(args) {
				var ctor = args.callee,
				t = _119(ctor);
				ctor.apply(t, args);
				return t;
			};
			d.declare = function(_11a, _11b, _11c) {
				if (typeof _11a != "string") {
					_11c = _11b;
					_11b = _11a;
					_11a = "";
				}
				_11c = _11c || {};
				var _11d, i, t, ctor, name, _11e, _11f, _120 = 1,
				_121 = _11b;
				if (_eb.call(_11b) == "[object Array]") {
					_11e = _ef(_11b, _11a);
					t = _11e[0];
					_120 = _11e.length - t;
					_11b = _11e[_120];
				} else {
					_11e = [0];
					if (_11b) {
						if (_eb.call(_11b) == "[object Function]") {
							t = _11b._meta;
							_11e = _11e.concat(t ? t.bases: _11b);
						} else {
							err("base class is not a callable constructor.", _11a);
						}
					} else {
						if (_11b !== null) {
							err("unknown base class. Did you use dojo.require to pull it in?", _11a);
						}
					}
				}
				if (_11b) {
					for (i = _120 - 1;; --i) {
						_11d = _119(_11b);
						if (!i) {
							break;
						}
						t = _11e[i];
						(t._meta ? _105: mix)(_11d, t.prototype);
						ctor = new Function;
						ctor.superclass = _11b;
						ctor.prototype = _11d;
						_11b = _11d.constructor = ctor;
					}
				} else {
					_11d = {};
				}
				_108(_11d, _11c);
				t = _11c.constructor;
				if (t !== op.constructor) {
					t.nom = _ee;
					_11d.constructor = t;
				}
				for (i = _120 - 1; i; --i) {
					t = _11e[i]._meta;
					if (t && t.chains) {
						_11f = mix(_11f || {},
						t.chains);
					}
				}
				if (_11d["-chains-"]) {
					_11f = mix(_11f || {},
					_11d["-chains-"]);
				}
				t = !_11f || !_11f.hasOwnProperty(_ee);
				_11e[0] = ctor = (_11f && _11f.constructor === "manual") ? _114(_11e) : (_11e.length == 1 ? _112(_11c.constructor, t) : _10d(_11e, t));
				ctor._meta = {
					bases: _11e,
					hidden: _11c,
					chains: _11f,
					parents: _121,
					ctor: _11c.constructor
				};
				ctor.superclass = _11b && _11b.prototype;
				ctor.extend = _10b;
				ctor.prototype = _11d;
				_11d.constructor = ctor;
				_11d.getInherited = _102;
				_11d.inherited = _fa;
				_11d.isInstanceOf = _103;
				if (_11a) {
					_11d.declaredClass = _11a;
					d.setObject(_11a, ctor);
				}
				if (_11f) {
					for (name in _11f) {
						if (_11d[name] && typeof _11f[name] == "string" && name != _ee) {
							t = _11d[name] = _116(name, _11e, _11f[name] === "after");
							t.nom = name;
						}
					}
				}
				return ctor;
			};
			d.safeMixin = _108;
		})();
	}
	if (!dojo._hasResource["dojo._base.connect"]) {
		dojo._hasResource["dojo._base.connect"] = true;
		dojo.provide("dojo._base.connect");
		dojo._listener = {
			getDispatcher: function() {
				return function() {
					var ap = Array.prototype,
					c = arguments.callee,
					ls = c._listeners,
					t = c.target,
					r = t && t.apply(this, arguments),
					i,
					lls = [].concat(ls);
					for (i in lls) {
						if (! (i in ap)) {
							lls[i].apply(this, arguments);
						}
					}
					return r;
				};
			},
			add: function(_122, _123, _124) {
				_122 = _122 || dojo.global;
				var f = _122[_123];
				if (!f || !f._listeners) {
					var d = dojo._listener.getDispatcher();
					d.target = f;
					d._listeners = [];
					f = _122[_123] = d;
				}
				return f._listeners.push(_124);
			},
			remove: function(_125, _126, _127) {
				var f = (_125 || dojo.global)[_126];
				if (f && f._listeners && _127--) {
					delete f._listeners[_127];
				}
			}
		};
		dojo.connect = function(obj, _128, _129, _12a, _12b) {
			var a = arguments,
			args = [],
			i = 0;
			args.push(dojo.isString(a[0]) ? null: a[i++], a[i++]);
			var a1 = a[i + 1];
			args.push(dojo.isString(a1) || dojo.isFunction(a1) ? a[i++] : null, a[i++]);
			for (var l = a.length; i < l; i++) {
				args.push(a[i]);
			}
			return dojo._connect.apply(this, args);
		};
		dojo._connect = function(obj, _12c, _12d, _12e) {
			var l = dojo._listener,
			h = l.add(obj, _12c, dojo.hitch(_12d, _12e));
			return [obj, _12c, h, l];
		};
		dojo.disconnect = function(_12f) {
			if (_12f && _12f[0] !== undefined) {
				dojo._disconnect.apply(this, _12f);
				delete _12f[0];
			}
		};
		dojo._disconnect = function(obj, _130, _131, _132) {
			_132.remove(obj, _130, _131);
		};
		dojo._topics = {};
		dojo.subscribe = function(_133, _134, _135) {
			return [_133, dojo._listener.add(dojo._topics, _133, dojo.hitch(_134, _135))];
		};
		dojo.unsubscribe = function(_136) {
			if (_136) {
				dojo._listener.remove(dojo._topics, _136[0], _136[1]);
			}
		};
		dojo.publish = function(_137, args) {
			var f = dojo._topics[_137];
			if (f) {
				f.apply(this, args || []);
			}
		};
		dojo.connectPublisher = function(_138, obj, _139) {
			var pf = function() {
				dojo.publish(_138, arguments);
			};
			return _139 ? dojo.connect(obj, _139, pf) : dojo.connect(obj, pf);
		};
	}
	if (!dojo._hasResource["dojo._base.Deferred"]) {
		dojo._hasResource["dojo._base.Deferred"] = true;
		dojo.provide("dojo._base.Deferred");
		(function() {
			var _13a = function() {};
			var _13b = Object.freeze ||
			function() {};
			dojo.Deferred = function(_13c) {
				var _13d, _13e, _13f, head, _140;
				var _141 = (this.promise = {});
				function _142(_143) {
					if (_13e) {
						throw new Error("This deferred has already been resolved");
					}
					_13d = _143;
					_13e = true;
					_144();
				};
				function _144() {
					var _145;
					while (!_145 && _140) {
						var _146 = _140;
						_140 = _140.next;
						if ((_145 = (_146.progress == _13a))) {
							_13e = false;
						}
						var func = (_13f ? _146.error: _146.resolved);
						if (func) {
							try {
								var _147 = func(_13d);
								if (_147 && typeof _147.then === "function") {
									_147.then(dojo.hitch(_146.deferred, "resolve"), dojo.hitch(_146.deferred, "reject"));
									continue;
								}
								var _148 = _145 && _147 === undefined;
								if (_145 && !_148) {
									_13f = _147 instanceof Error;
								}
								_146.deferred[_148 && _13f ? "reject": "resolve"](_148 ? _13d: _147);
							} catch(e) {
								_146.deferred.reject(e);
							}
						} else {
							if (_13f) {
								_146.deferred.reject(_13d);
							} else {
								_146.deferred.resolve(_13d);
							}
						}
					}
				};
				this.resolve = this.callback = function(_149) {
					this.fired = 0;
					this.results = [_149, null];
					_142(_149);
				};
				this.reject = this.errback = function(_14a) {
					_13f = true;
					this.fired = 1;
					_142(_14a);
					this.results = [null, _14a];
					if (!_14a || _14a.log !== false) { (dojo.config.deferredOnError ||
						function(x) {})(_14a);
					}
				};
				this.progress = function(_14b) {
					var _14c = _140;
					while (_14c) {
						var _14d = _14c.progress;
						_14d && _14d(_14b);
						_14c = _14c.next;
					}
				};
				this.addCallbacks = function(_14e, _14f) {
					this.then(_14e, _14f, _13a);
					return this;
				};
				this.then = _141.then = function(_150, _151, _152) {
					var _153 = _152 == _13a ? this: new dojo.Deferred(_141.cancel);
					var _154 = {
						resolved: _150,
						error: _151,
						progress: _152,
						deferred: _153
					};
					if (_140) {
						head = head.next = _154;
					} else {
						_140 = head = _154;
					}
					if (_13e) {
						_144();
					}
					return _153.promise;
				};
				var _155 = this;
				this.cancel = _141.cancel = function() {
					if (!_13e) {
						var _156 = _13c && _13c(_155);
						if (!_13e) {
							if (! (_156 instanceof Error)) {
								_156 = new Error(_156);
							}
							_156.log = false;
							_155.reject(_156);
						}
					}
				};
				_13b(_141);
			};
			dojo.extend(dojo.Deferred, {
				addCallback: function(_157) {
					return this.addCallbacks(dojo.hitch.apply(dojo, arguments));
				},
				addErrback: function(_158) {
					return this.addCallbacks(null, dojo.hitch.apply(dojo, arguments));
				},
				addBoth: function(_159) {
					var _15a = dojo.hitch.apply(dojo, arguments);
					return this.addCallbacks(_15a, _15a);
				},
				fired: -1
			});
		})();
		dojo.when = function(_15b, _15c, _15d, _15e) {
			if (_15b && typeof _15b.then === "function") {
				return _15b.then(_15c, _15d, _15e);
			}
			return _15c(_15b);
		};
	}
	if (!dojo._hasResource["dojo._base.json"]) {
		dojo._hasResource["dojo._base.json"] = true;
		dojo.provide("dojo._base.json");
		dojo.fromJson = function(json) {
			return eval("(" + json + ")");
		};
		dojo._escapeString = function(str) {
			return ("\"" + str.replace(/(["\\])/g, "\\$1") + "\"").replace(/[\f]/g, "\\f").replace(/[\b]/g, "\\b").replace(/[\n]/g, "\\n").replace(/[\t]/g, "\\t").replace(/[\r]/g, "\\r");
		};
		dojo.toJsonIndentStr = "\t";
		dojo.toJson = function(it, _15f, _160) {
			if (it === undefined) {
				return "undefined";
			}
			var _161 = typeof it;
			if (_161 == "number" || _161 == "boolean") {
				return it + "";
			}
			if (it === null) {
				return "null";
			}
			if (dojo.isString(it)) {
				return dojo._escapeString(it);
			}
			var _162 = arguments.callee;
			var _163;
			_160 = _160 || "";
			var _164 = _15f ? _160 + dojo.toJsonIndentStr: "";
			var tf = it.__json__ || it.json;
			if (dojo.isFunction(tf)) {
				_163 = tf.call(it);
				if (it !== _163) {
					return _162(_163, _15f, _164);
				}
			}
			if (it.nodeType && it.cloneNode) {
				throw new Error("Can't serialize DOM nodes");
			}
			var sep = _15f ? " ": "";
			var _165 = _15f ? "\n": "";
			if (dojo.isArray(it)) {
				var res = dojo.map(it,
				function(obj) {
					var val = _162(obj, _15f, _164);
					if (typeof val != "string") {
						val = "undefined";
					}
					return _165 + _164 + val;
				});
				return "[" + res.join("," + sep) + _165 + _160 + "]";
			}
			if (_161 == "function") {
				return null;
			}
			var _166 = [],
			key;
			for (key in it) {
				var _167, val;
				if (typeof key == "number") {
					_167 = "\"" + key + "\"";
				} else {
					if (typeof key == "string") {
						_167 = dojo._escapeString(key);
					} else {
						continue;
					}
				}
				val = _162(it[key], _15f, _164);
				if (typeof val != "string") {
					continue;
				}
				_166.push(_165 + _164 + _167 + ":" + sep + val);
			}
			return "{" + _166.join("," + sep) + _165 + _160 + "}";
		};
	}
	if (!dojo._hasResource["dojo._base.Color"]) {
		dojo._hasResource["dojo._base.Color"] = true;
		dojo.provide("dojo._base.Color");
		(function() {
			var d = dojo;
			dojo.Color = function(_168) {
				if (_168) {
					this.setColor(_168);
				}
			};
			dojo.Color.named = {
				black: [0, 0, 0],
				silver: [192, 192, 192],
				gray: [128, 128, 128],
				white: [255, 255, 255],
				maroon: [128, 0, 0],
				red: [255, 0, 0],
				purple: [128, 0, 128],
				fuchsia: [255, 0, 255],
				green: [0, 128, 0],
				lime: [0, 255, 0],
				olive: [128, 128, 0],
				yellow: [255, 255, 0],
				navy: [0, 0, 128],
				blue: [0, 0, 255],
				teal: [0, 128, 128],
				aqua: [0, 255, 255],
				transparent: d.config.transparentColor || [255, 255, 255]
			};
			dojo.extend(dojo.Color, {
				r: 255,
				g: 255,
				b: 255,
				a: 1,
				_set: function(r, g, b, a) {
					var t = this;
					t.r = r;
					t.g = g;
					t.b = b;
					t.a = a;
				},
				setColor: function(_169) {
					if (d.isString(_169)) {
						d.colorFromString(_169, this);
					} else {
						if (d.isArray(_169)) {
							d.colorFromArray(_169, this);
						} else {
							this._set(_169.r, _169.g, _169.b, _169.a);
							if (! (_169 instanceof d.Color)) {
								this.sanitize();
							}
						}
					}
					return this;
				},
				sanitize: function() {
					return this;
				},
				toRgb: function() {
					var t = this;
					return [t.r, t.g, t.b];
				},
				toRgba: function() {
					var t = this;
					return [t.r, t.g, t.b, t.a];
				},
				toHex: function() {
					var arr = d.map(["r", "g", "b"],
					function(x) {
						var s = this[x].toString(16);
						return s.length < 2 ? "0" + s: s;
					},
					this);
					return "#" + arr.join("");
				},
				toCss: function(_16a) {
					var t = this,
					rgb = t.r + ", " + t.g + ", " + t.b;
					return (_16a ? "rgba(" + rgb + ", " + t.a: "rgb(" + rgb) + ")";
				},
				toString: function() {
					return this.toCss(true);
				}
			});
			dojo.blendColors = function(_16b, end, _16c, obj) {
				var t = obj || new d.Color();
				d.forEach(["r", "g", "b", "a"],
				function(x) {
					t[x] = _16b[x] + (end[x] - _16b[x]) * _16c;
					if (x != "a") {
						t[x] = Math.round(t[x]);
					}
				});
				return t.sanitize();
			};
			dojo.colorFromRgb = function(_16d, obj) {
				var m = _16d.toLowerCase().match(/^rgba?\(([\s\.,0-9]+)\)/);
				return m && dojo.colorFromArray(m[1].split(/\s*,\s*/), obj);
			};
			dojo.colorFromHex = function(_16e, obj) {
				var t = obj || new d.Color(),
				bits = (_16e.length == 4) ? 4 : 8,
				mask = (1 << bits) - 1;
				_16e = Number("0x" + _16e.substr(1));
				if (isNaN(_16e)) {
					return null;
				}
				d.forEach(["b", "g", "r"],
				function(x) {
					var c = _16e & mask;
					_16e >>= bits;
					t[x] = bits == 4 ? 17 * c: c;
				});
				t.a = 1;
				return t;
			};
			dojo.colorFromArray = function(a, obj) {
				var t = obj || new d.Color();
				t._set(Number(a[0]), Number(a[1]), Number(a[2]), Number(a[3]));
				if (isNaN(t.a)) {
					t.a = 1;
				}
				return t.sanitize();
			};
			dojo.colorFromString = function(str, obj) {
				var a = d.Color.named[str];
				return a && d.colorFromArray(a, obj) || d.colorFromRgb(str, obj) || d.colorFromHex(str, obj);
			};
		})();
	}
	if (!dojo._hasResource["dojo._base.window"]) {
		dojo._hasResource["dojo._base.window"] = true;
		dojo.provide("dojo._base.window");
		dojo.doc = window["document"] || null;
		dojo.body = function() {
			return dojo.doc.body || dojo.doc.getElementsByTagName("body")[0];
		};
		dojo.setContext = function(_16f, _170) {
			dojo.global = _16f;
			dojo.doc = _170;
		};
		dojo.withGlobal = function(_171, _172, _173, _174) {
			var _175 = dojo.global;
			try {
				dojo.global = _171;
				return dojo.withDoc.call(null, _171.document, _172, _173, _174);
			} finally {
				dojo.global = _175;
			}
		};
		dojo.withDoc = function(_176, _177, _178, _179) {
			var _17a = dojo.doc,
			_17b = dojo._bodyLtr,
			oldQ = dojo.isQuirks;
			try {
				dojo.doc = _176;
				delete dojo._bodyLtr;
				dojo.isQuirks = dojo.doc.compatMode == "BackCompat";
				if (_178 && typeof _177 == "string") {
					_177 = _178[_177];
				}
				return _177.apply(_178, _179 || []);
			} finally {
				dojo.doc = _17a;
				delete dojo._bodyLtr;
				if (_17b !== undefined) {
					dojo._bodyLtr = _17b;
				}
				dojo.isQuirks = oldQ;
			}
		};
	}
	if (!dojo._hasResource["dojo._base.event"]) {
		dojo._hasResource["dojo._base.event"] = true;
		dojo.provide("dojo._base.event");
		(function() {
			var del = (dojo._event_listener = {
				add: function(node, name, fp) {
					if (!node) {
						return;
					}
					name = del._normalizeEventName(name);
					fp = del._fixCallback(name, fp);
					if (!dojo.isIE && (name == "mouseenter" || name == "mouseleave")) {
						var ofp = fp;
						name = (name == "mouseenter") ? "mouseover": "mouseout";
						fp = function(e) {
							if (!dojo.isDescendant(e.relatedTarget, node)) {
								return ofp.call(this, e);
							}
						};
					}
					node.addEventListener(name, fp, false);
					return fp;
				},
				remove: function(node, _17c, _17d) {
					if (node) {
						_17c = del._normalizeEventName(_17c);
						if (!dojo.isIE && (_17c == "mouseenter" || _17c == "mouseleave")) {
							_17c = (_17c == "mouseenter") ? "mouseover": "mouseout";
						}
						node.removeEventListener(_17c, _17d, false);
					}
				},
				_normalizeEventName: function(name) {
					return name.slice(0, 2) == "on" ? name.slice(2) : name;
				},
				_fixCallback: function(name, fp) {
					return name != "keypress" ? fp: function(e) {
						return fp.call(this, del._fixEvent(e, this));
					};
				},
				_fixEvent: function(evt, _17e) {
					switch (evt.type) {
					case "keypress":
						del._setKeyChar(evt);
						break;
					}
					return evt;
				},
				_setKeyChar: function(evt) {
					evt.keyChar = evt.charCode >= 32 ? String.fromCharCode(evt.charCode) : "";
					evt.charOrCode = evt.keyChar || evt.keyCode;
				},
				_punctMap: {
					106 : 42,
					111 : 47,
					186 : 59,
					187 : 43,
					188 : 44,
					189 : 45,
					190 : 46,
					191 : 47,
					192 : 96,
					219 : 91,
					220 : 92,
					221 : 93,
					222 : 39
				}
			});
			dojo.fixEvent = function(evt, _17f) {
				return del._fixEvent(evt, _17f);
			};
			dojo.stopEvent = function(evt) {
				evt.preventDefault();
				evt.stopPropagation();
			};
			var _180 = dojo._listener;
			dojo._connect = function(obj, _181, _182, _183, _184) {
				var _185 = obj && (obj.nodeType || obj.attachEvent || obj.addEventListener);
				var lid = _185 ? (_184 ? 2 : 1) : 0,
				l = [dojo._listener, del, _180][lid];
				var h = l.add(obj, _181, dojo.hitch(_182, _183));
				return [obj, _181, h, lid];
			};
			dojo._disconnect = function(obj, _186, _187, _188) { ([dojo._listener, del, _180][_188]).remove(obj, _186, _187);
			};
			dojo.keys = {
				BACKSPACE: 8,
				TAB: 9,
				CLEAR: 12,
				ENTER: 13,
				SHIFT: 16,
				CTRL: 17,
				ALT: 18,
				META: dojo.isSafari ? 91 : 224,
				PAUSE: 19,
				CAPS_LOCK: 20,
				ESCAPE: 27,
				SPACE: 32,
				PAGE_UP: 33,
				PAGE_DOWN: 34,
				END: 35,
				HOME: 36,
				LEFT_ARROW: 37,
				UP_ARROW: 38,
				RIGHT_ARROW: 39,
				DOWN_ARROW: 40,
				INSERT: 45,
				DELETE: 46,
				HELP: 47,
				LEFT_WINDOW: 91,
				RIGHT_WINDOW: 92,
				SELECT: 93,
				NUMPAD_0: 96,
				NUMPAD_1: 97,
				NUMPAD_2: 98,
				NUMPAD_3: 99,
				NUMPAD_4: 100,
				NUMPAD_5: 101,
				NUMPAD_6: 102,
				NUMPAD_7: 103,
				NUMPAD_8: 104,
				NUMPAD_9: 105,
				NUMPAD_MULTIPLY: 106,
				NUMPAD_PLUS: 107,
				NUMPAD_ENTER: 108,
				NUMPAD_MINUS: 109,
				NUMPAD_PERIOD: 110,
				NUMPAD_DIVIDE: 111,
				F1: 112,
				F2: 113,
				F3: 114,
				F4: 115,
				F5: 116,
				F6: 117,
				F7: 118,
				F8: 119,
				F9: 120,
				F10: 121,
				F11: 122,
				F12: 123,
				F13: 124,
				F14: 125,
				F15: 126,
				NUM_LOCK: 144,
				SCROLL_LOCK: 145,
				copyKey: dojo.isMac && !dojo.isAIR ? (dojo.isSafari ? 91 : 224) : 17
			};
			var _189 = dojo.isMac ? "metaKey": "ctrlKey";
			dojo.isCopyKey = function(e) {
				return e[_189];
			};
			if (dojo.isIE < 9 || (dojo.isIE && dojo.isQuirks)) {
				dojo.mouseButtons = {
					LEFT: 1,
					MIDDLE: 4,
					RIGHT: 2,
					isButton: function(e, _18a) {
						return e.button & _18a;
					},
					isLeft: function(e) {
						return e.button & 1;
					},
					isMiddle: function(e) {
						return e.button & 4;
					},
					isRight: function(e) {
						return e.button & 2;
					}
				};
			} else {
				dojo.mouseButtons = {
					LEFT: 0,
					MIDDLE: 1,
					RIGHT: 2,
					isButton: function(e, _18b) {
						return e.button == _18b;
					},
					isLeft: function(e) {
						return e.button == 0;
					},
					isMiddle: function(e) {
						return e.button == 1;
					},
					isRight: function(e) {
						return e.button == 2;
					}
				};
			}
			if (dojo.isIE) {
				var _18c = function(e, code) {
					try {
						return (e.keyCode = code);
					} catch(e) {
						return 0;
					}
				};
				var iel = dojo._listener;
				var _18d = (dojo._ieListenersName = "_" + dojo._scopeName + "_listeners");
				if (!dojo.config._allow_leaks) {
					_180 = iel = dojo._ie_listener = {
						handlers: [],
						add: function(_18e, _18f, _190) {
							_18e = _18e || dojo.global;
							var f = _18e[_18f];
							if (!f || !f[_18d]) {
								var d = dojo._getIeDispatcher();
								d.target = f && (ieh.push(f) - 1);
								d[_18d] = [];
								f = _18e[_18f] = d;
							}
							return f[_18d].push(ieh.push(_190) - 1);
						},
						remove: function(_191, _192, _193) {
							var f = (_191 || dojo.global)[_192],
							l = f && f[_18d];
							if (f && l && _193--) {
								delete ieh[l[_193]];
								delete l[_193];
							}
						}
					};
					var ieh = iel.handlers;
				}
				dojo.mixin(del, {
					add: function(node, _194, fp) {
						if (!node) {
							return;
						}
						_194 = del._normalizeEventName(_194);
						if (_194 == "onkeypress") {
							var kd = node.onkeydown;
							if (!kd || !kd[_18d] || !kd._stealthKeydownHandle) {
								var h = del.add(node, "onkeydown", del._stealthKeyDown);
								kd = node.onkeydown;
								kd._stealthKeydownHandle = h;
								kd._stealthKeydownRefs = 1;
							} else {
								kd._stealthKeydownRefs++;
							}
						}
						return iel.add(node, _194, del._fixCallback(fp));
					},
					remove: function(node, _195, _196) {
						_195 = del._normalizeEventName(_195);
						iel.remove(node, _195, _196);
						if (_195 == "onkeypress") {
							var kd = node.onkeydown;
							if (--kd._stealthKeydownRefs <= 0) {
								iel.remove(node, "onkeydown", kd._stealthKeydownHandle);
								delete kd._stealthKeydownHandle;
							}
						}
					},
					_normalizeEventName: function(_197) {
						return _197.slice(0, 2) != "on" ? "on" + _197: _197;
					},
					_nop: function() {},
					_fixEvent: function(evt, _198) {
						if (!evt) {
							var w = _198 && (_198.ownerDocument || _198.document || _198).parentWindow || window;
							evt = w.event;
						}
						if (!evt) {
							return (evt);
						}
						evt.target = evt.srcElement;
						evt.currentTarget = (_198 || evt.srcElement);
						evt.layerX = evt.offsetX;
						evt.layerY = evt.offsetY;
						var se = evt.srcElement,
						doc = (se && se.ownerDocument) || document;
						var _199 = ((dojo.isIE < 6) || (doc["compatMode"] == "BackCompat")) ? doc.body: doc.documentElement;
						var _19a = dojo._getIeDocumentElementOffset();
						evt.pageX = evt.clientX + dojo._fixIeBiDiScrollLeft(_199.scrollLeft || 0) - _19a.x;
						evt.pageY = evt.clientY + (_199.scrollTop || 0) - _19a.y;
						if (evt.type == "mouseover") {
							evt.relatedTarget = evt.fromElement;
						}
						if (evt.type == "mouseout") {
							evt.relatedTarget = evt.toElement;
						}
						if (dojo.isIE < 9 || dojo.isQuirks) {
							evt.stopPropagation = del._stopPropagation;
							evt.preventDefault = del._preventDefault;
						}
						return del._fixKeys(evt);
					},
					_fixKeys: function(evt) {
						switch (evt.type) {
						case "keypress":
							var c = ("charCode" in evt ? evt.charCode: evt.keyCode);
							if (c == 10) {
								c = 0;
								evt.keyCode = 13;
							} else {
								if (c == 13 || c == 27) {
									c = 0;
								} else {
									if (c == 3) {
										c = 99;
									}
								}
							}
							evt.charCode = c;
							del._setKeyChar(evt);
							break;
						}
						return evt;
					},
					_stealthKeyDown: function(evt) {
						var kp = evt.currentTarget.onkeypress;
						if (!kp || !kp[_18d]) {
							return;
						}
						var k = evt.keyCode;
						var _19b = (k != 13 || (dojo.isIE >= 9 && !dojo.isQuirks)) && k != 32 && k != 27 && (k < 48 || k > 90) && (k < 96 || k > 111) && (k < 186 || k > 192) && (k < 219 || k > 222);
						if (_19b || evt.ctrlKey) {
							var c = _19b ? 0 : k;
							if (evt.ctrlKey) {
								if (k == 3 || k == 13) {
									return;
								} else {
									if (c > 95 && c < 106) {
										c -= 48;
									} else {
										if ((!evt.shiftKey) && (c >= 65 && c <= 90)) {
											c += 32;
										} else {
											c = del._punctMap[c] || c;
										}
									}
								}
							}
							var faux = del._synthesizeEvent(evt, {
								type: "keypress",
								faux: true,
								charCode: c
							});
							kp.call(evt.currentTarget, faux);
							if (dojo.isIE < 9 || (dojo.isIE && dojo.isQuirks)) {
								evt.cancelBubble = faux.cancelBubble;
							}
							evt.returnValue = faux.returnValue;
							_18c(evt, faux.keyCode);
						}
					},
					_stopPropagation: function() {
						this.cancelBubble = true;
					},
					_preventDefault: function() {
						this.bubbledKeyCode = this.keyCode;
						if (this.ctrlKey) {
							_18c(this, 0);
						}
						this.returnValue = false;
					}
				});
				dojo.stopEvent = (dojo.isIE < 9 || dojo.isQuirks) ?
				function(evt) {
					evt = evt || window.event;
					del._stopPropagation.call(evt);
					del._preventDefault.call(evt);
				}: dojo.stopEvent;
			}
			del._synthesizeEvent = function(evt, _19c) {
				var faux = dojo.mixin({},
				evt, _19c);
				del._setKeyChar(faux);
				faux.preventDefault = function() {
					evt.preventDefault();
				};
				faux.stopPropagation = function() {
					evt.stopPropagation();
				};
				return faux;
			};
			if (dojo.isOpera) {
				dojo.mixin(del, {
					_fixEvent: function(evt, _19d) {
						switch (evt.type) {
						case "keypress":
							var c = evt.which;
							if (c == 3) {
								c = 99;
							}
							c = c < 41 && !evt.shiftKey ? 0 : c;
							if (evt.ctrlKey && !evt.shiftKey && c >= 65 && c <= 90) {
								c += 32;
							}
							return del._synthesizeEvent(evt, {
								charCode: c
							});
						}
						return evt;
					}
				});
			}
			if (dojo.isWebKit) {
				del._add = del.add;
				del._remove = del.remove;
				dojo.mixin(del, {
					add: function(node, _19e, fp) {
						if (!node) {
							return;
						}
						var _19f = del._add(node, _19e, fp);
						if (del._normalizeEventName(_19e) == "keypress") {
							_19f._stealthKeyDownHandle = del._add(node, "keydown",
							function(evt) {
								var k = evt.keyCode;
								var _1a0 = k != 13 && k != 32 && (k < 48 || k > 90) && (k < 96 || k > 111) && (k < 186 || k > 192) && (k < 219 || k > 222);
								if (_1a0 || evt.ctrlKey) {
									var c = _1a0 ? 0 : k;
									if (evt.ctrlKey) {
										if (k == 3 || k == 13) {
											return;
										} else {
											if (c > 95 && c < 106) {
												c -= 48;
											} else {
												if (!evt.shiftKey && c >= 65 && c <= 90) {
													c += 32;
												} else {
													c = del._punctMap[c] || c;
												}
											}
										}
									}
									var faux = del._synthesizeEvent(evt, {
										type: "keypress",
										faux: true,
										charCode: c
									});
									fp.call(evt.currentTarget, faux);
								}
							});
						}
						return _19f;
					},
					remove: function(node, _1a1, _1a2) {
						if (node) {
							if (_1a2._stealthKeyDownHandle) {
								del._remove(node, "keydown", _1a2._stealthKeyDownHandle);
							}
							del._remove(node, _1a1, _1a2);
						}
					},
					_fixEvent: function(evt, _1a3) {
						switch (evt.type) {
						case "keypress":
							if (evt.faux) {
								return evt;
							}
							var c = evt.charCode;
							c = c >= 32 ? c: 0;
							return del._synthesizeEvent(evt, {
								charCode: c,
								faux: true
							});
						}
						return evt;
					}
				});
			}
		})();
		if (dojo.isIE) {
			dojo._ieDispatcher = function(args, _1a4) {
				var ap = Array.prototype,
				h = dojo._ie_listener.handlers,
				c = args.callee,
				ls = c[dojo._ieListenersName],
				t = h[c.target];
				var r = t && t.apply(_1a4, args);
				var lls = [].concat(ls);
				for (var i in lls) {
					var f = h[lls[i]];
					if (! (i in ap) && f) {
						f.apply(_1a4, args);
					}
				}
				return r;
			};
			dojo._getIeDispatcher = function() {
				return new Function(dojo._scopeName + "._ieDispatcher(arguments, this)");
			};
			dojo._event_listener._fixCallback = function(fp) {
				var f = dojo._event_listener._fixEvent;
				return function(e) {
					return fp.call(this, f(e, this));
				};
			};
		}
	}
	if (!dojo._hasResource["dojo._base.html"]) {
		dojo._hasResource["dojo._base.html"] = true;
		dojo.provide("dojo._base.html");
		try {
			document.execCommand("BackgroundImageCache", false, true);
		} catch(e) {}
		if (dojo.isIE) {
			dojo.byId = function(id, doc) {
				if (typeof id != "string") {
					return id;
				}
				var _1a5 = doc || dojo.doc,
				te = _1a5.getElementById(id);
				if (te && (te.attributes.id.value == id || te.id == id)) {
					return te;
				} else {
					var eles = _1a5.all[id];
					if (!eles || eles.nodeName) {
						eles = [eles];
					}
					var i = 0;
					while ((te = eles[i++])) {
						if ((te.attributes && te.attributes.id && te.attributes.id.value == id) || te.id == id) {
							return te;
						}
					}
				}
			};
		} else {
			dojo.byId = function(id, doc) {
				return ((typeof id == "string") ? (doc || dojo.doc).getElementById(id) : id) || null;
			};
		} (function() {
			var d = dojo;
			var byId = d.byId;
			var _1a6 = null,
			_1a7;
			d.addOnWindowUnload(function() {
				_1a6 = null;
			});
			dojo._destroyElement = dojo.destroy = function(node) {
				node = byId(node);
				try {
					var doc = node.ownerDocument;
					if (!_1a6 || _1a7 != doc) {
						_1a6 = doc.createElement("div");
						_1a7 = doc;
					}
					_1a6.appendChild(node.parentNode ? node.parentNode.removeChild(node) : node);
					_1a6.innerHTML = "";
				} catch(e) {}
			};
			dojo.isDescendant = function(node, _1a8) {
				try {
					node = byId(node);
					_1a8 = byId(_1a8);
					while (node) {
						if (node == _1a8) {
							return true;
						}
						node = node.parentNode;
					}
				} catch(e) {}
				return false;
			};
			dojo.setSelectable = function(node, _1a9) {
				node = byId(node);
				if (d.isMozilla) {
					node.style.MozUserSelect = _1a9 ? "": "none";
				} else {
					if (d.isKhtml || d.isWebKit) {
						node.style.KhtmlUserSelect = _1a9 ? "auto": "none";
					} else {
						if (d.isIE) {
							var v = (node.unselectable = _1a9 ? "": "on");
							d.query("*", node).forEach("item.unselectable = '" + v + "'");
						}
					}
				}
			};
			var _1aa = function(node, ref) {
				var _1ab = ref.parentNode;
				if (_1ab) {
					_1ab.insertBefore(node, ref);
				}
			};
			var _1ac = function(node, ref) {
				var _1ad = ref.parentNode;
				if (_1ad) {
					if (_1ad.lastChild == ref) {
						_1ad.appendChild(node);
					} else {
						_1ad.insertBefore(node, ref.nextSibling);
					}
				}
			};
			dojo.place = function(node, _1ae, _1af) {
				_1ae = byId(_1ae);
				if (typeof node == "string") {
					node = /^\s*</.test(node) ? d._toDom(node, _1ae.ownerDocument) : byId(node);
				}
				if (typeof _1af == "number") {
					var cn = _1ae.childNodes;
					if (!cn.length || cn.length <= _1af) {
						_1ae.appendChild(node);
					} else {
						_1aa(node, cn[_1af < 0 ? 0 : _1af]);
					}
				} else {
					switch (_1af) {
					case "before":
						_1aa(node, _1ae);
						break;
					case "after":
						_1ac(node, _1ae);
						break;
					case "replace":
						_1ae.parentNode.replaceChild(node, _1ae);
						break;
					case "only":
						d.empty(_1ae);
						_1ae.appendChild(node);
						break;
					case "first":
						if (_1ae.firstChild) {
							_1aa(node, _1ae.firstChild);
							break;
						}
					default:
						_1ae.appendChild(node);
					}
				}
				return node;
			};
			dojo.boxModel = "content-box";
			if (d.isIE) {
				d.boxModel = document.compatMode == "BackCompat" ? "border-box": "content-box";
			}
			var gcs;
			if (d.isWebKit) {
				gcs = function(node) {
					var s;
					if (node.nodeType == 1) {
						var dv = node.ownerDocument.defaultView;
						s = dv.getComputedStyle(node, null);
						if (!s && node.style) {
							node.style.display = "";
							s = dv.getComputedStyle(node, null);
						}
					}
					return s || {};
				};
			} else {
				if (d.isIE) {
					gcs = function(node) {
						return node.nodeType == 1 ? node.currentStyle: {};
					};
				} else {
					gcs = function(node) {
						return node.nodeType == 1 ? node.ownerDocument.defaultView.getComputedStyle(node, null) : {};
					};
				}
			}
			dojo.getComputedStyle = gcs;
			if (!d.isIE) {
				d._toPixelValue = function(_1b0, _1b1) {
					return parseFloat(_1b1) || 0;
				};
			} else {
				d._toPixelValue = function(_1b2, _1b3) {
					if (!_1b3) {
						return 0;
					}
					if (_1b3 == "medium") {
						return 4;
					}
					if (_1b3.slice && _1b3.slice( - 2) == "px") {
						return parseFloat(_1b3);
					}
					with(_1b2) {
						var _1b4 = style.left;
						var _1b5 = runtimeStyle.left;
						runtimeStyle.left = currentStyle.left;
						try {
							style.left = _1b3;
							_1b3 = style.pixelLeft;
						} catch(e) {
							_1b3 = 0;
						}
						style.left = _1b4;
						runtimeStyle.left = _1b5;
					}
					return _1b3;
				};
			}
			var px = d._toPixelValue;
			var astr = "DXImageTransform.Microsoft.Alpha";
			var af = function(n, f) {
				try {
					return n.filters.item(astr);
				} catch(e) {
					return f ? {}: null;
				}
			};
			dojo._getOpacity = d.isIE < 9 ?
			function(node) {
				try {
					return af(node).Opacity / 100;
				} catch(e) {
					return 1;
				}
			}: function(node) {
				return gcs(node).opacity;
			};
			dojo._setOpacity = d.isIE < 9 ?
			function(node, _1b6) {
				var ov = _1b6 * 100,
				_1b7 = _1b6 == 1;
				node.style.zoom = _1b7 ? "": 1;
				if (!af(node)) {
					if (_1b7) {
						return _1b6;
					}
					node.style.filter += " progid:" + astr + "(Opacity=" + ov + ")";
				} else {
					af(node, 1).Opacity = ov;
				}
				af(node, 1).Enabled = !_1b7;
				if (node.nodeName.toLowerCase() == "tr") {
					d.query("> td", node).forEach(function(i) {
						d._setOpacity(i, _1b6);
					});
				}
				return _1b6;
			}: function(node, _1b8) {
				return node.style.opacity = _1b8;
			};
			var _1b9 = {
				left: true,
				top: true
			};
			var _1ba = /margin|padding|width|height|max|min|offset/;
			var _1bb = function(node, type, _1bc) {
				type = type.toLowerCase();
				if (d.isIE) {
					if (_1bc == "auto") {
						if (type == "height") {
							return node.offsetHeight;
						}
						if (type == "width") {
							return node.offsetWidth;
						}
					}
					if (type == "fontweight") {
						switch (_1bc) {
						case 700:
							return "bold";
						case 400:
						default:
							return "normal";
						}
					}
				}
				if (! (type in _1b9)) {
					_1b9[type] = _1ba.test(type);
				}
				return _1b9[type] ? px(node, _1bc) : _1bc;
			};
			var _1bd = d.isIE ? "styleFloat": "cssFloat",
			_1be = {
				"cssFloat": _1bd,
				"styleFloat": _1bd,
				"float": _1bd
			};
			dojo.style = function(node, _1bf, _1c0) {
				var n = byId(node),
				args = arguments.length,
				op = (_1bf == "opacity");
				_1bf = _1be[_1bf] || _1bf;
				if (args == 3) {
					return op ? d._setOpacity(n, _1c0) : n.style[_1bf] = _1c0;
				}
				if (args == 2 && op) {
					return d._getOpacity(n);
				}
				var s = gcs(n);
				if (args == 2 && typeof _1bf != "string") {
					for (var x in _1bf) {
						d.style(node, x, _1bf[x]);
					}
					return s;
				}
				return (args == 1) ? s: _1bb(n, _1bf, s[_1bf] || n.style[_1bf]);
			};
			dojo._getPadExtents = function(n, _1c1) {
				var s = _1c1 || gcs(n),
				l = px(n, s.paddingLeft),
				t = px(n, s.paddingTop);
				return {
					l: l,
					t: t,
					w: l + px(n, s.paddingRight),
					h: t + px(n, s.paddingBottom)
				};
			};
			dojo._getBorderExtents = function(n, _1c2) {
				var ne = "none",
				s = _1c2 || gcs(n),
				bl = (s.borderLeftStyle != ne ? px(n, s.borderLeftWidth) : 0),
				bt = (s.borderTopStyle != ne ? px(n, s.borderTopWidth) : 0);
				return {
					l: bl,
					t: bt,
					w: bl + (s.borderRightStyle != ne ? px(n, s.borderRightWidth) : 0),
					h: bt + (s.borderBottomStyle != ne ? px(n, s.borderBottomWidth) : 0)
				};
			};
			dojo._getPadBorderExtents = function(n, _1c3) {
				var s = _1c3 || gcs(n),
				p = d._getPadExtents(n, s),
				b = d._getBorderExtents(n, s);
				return {
					l: p.l + b.l,
					t: p.t + b.t,
					w: p.w + b.w,
					h: p.h + b.h
				};
			};
			dojo._getMarginExtents = function(n, _1c4) {
				var s = _1c4 || gcs(n),
				l = px(n, s.marginLeft),
				t = px(n, s.marginTop),
				r = px(n, s.marginRight),
				b = px(n, s.marginBottom);
				if (d.isWebKit && (s.position != "absolute")) {
					r = l;
				}
				return {
					l: l,
					t: t,
					w: l + r,
					h: t + b
				};
			};
			dojo._getMarginBox = function(node, _1c5) {
				var s = _1c5 || gcs(node),
				me = d._getMarginExtents(node, s);
				var l = node.offsetLeft - me.l,
				t = node.offsetTop - me.t,
				p = node.parentNode;
				if (d.isMoz) {
					var sl = parseFloat(s.left),
					st = parseFloat(s.top);
					if (!isNaN(sl) && !isNaN(st)) {
						l = sl,
						t = st;
					} else {
						if (p && p.style) {
							var pcs = gcs(p);
							if (pcs.overflow != "visible") {
								var be = d._getBorderExtents(p, pcs);
								l += be.l,
								t += be.t;
							}
						}
					}
				} else {
					if (d.isOpera || (d.isIE > 7 && !d.isQuirks)) {
						if (p) {
							be = d._getBorderExtents(p);
							l -= be.l;
							t -= be.t;
						}
					}
				}
				return {
					l: l,
					t: t,
					w: node.offsetWidth + me.w,
					h: node.offsetHeight + me.h
				};
			};
			dojo._getMarginSize = function(node, _1c6) {
				node = byId(node);
				var me = d._getMarginExtents(node, _1c6 || gcs(node));
				var size = node.getBoundingClientRect();
				return {
					w: (size.right - size.left) + me.w,
					h: (size.bottom - size.top) + me.h
				};
			};
			dojo._getContentBox = function(node, _1c7) {
				var s = _1c7 || gcs(node),
				pe = d._getPadExtents(node, s),
				be = d._getBorderExtents(node, s),
				w = node.clientWidth,
				h;
				if (!w) {
					w = node.offsetWidth,
					h = node.offsetHeight;
				} else {
					h = node.clientHeight,
					be.w = be.h = 0;
				}
				if (d.isOpera) {
					pe.l += be.l;
					pe.t += be.t;
				}
				return {
					l: pe.l,
					t: pe.t,
					w: w - pe.w - be.w,
					h: h - pe.h - be.h
				};
			};
			dojo._getBorderBox = function(node, _1c8) {
				var s = _1c8 || gcs(node),
				pe = d._getPadExtents(node, s),
				cb = d._getContentBox(node, s);
				return {
					l: cb.l - pe.l,
					t: cb.t - pe.t,
					w: cb.w + pe.w,
					h: cb.h + pe.h
				};
			};
			dojo._setBox = function(node, l, t, w, h, u) {
				u = u || "px";
				var s = node.style;
				if (!isNaN(l)) {
					s.left = l + u;
				}
				if (!isNaN(t)) {
					s.top = t + u;
				}
				if (w >= 0) {
					s.width = w + u;
				}
				if (h >= 0) {
					s.height = h + u;
				}
			};
			dojo._isButtonTag = function(node) {
				return node.tagName == "BUTTON" || node.tagName == "INPUT" && (node.getAttribute("type") || "").toUpperCase() == "BUTTON";
			};
			dojo._usesBorderBox = function(node) {
				var n = node.tagName;
				return d.boxModel == "border-box" || n == "TABLE" || d._isButtonTag(node);
			};
			dojo._setContentSize = function(node, _1c9, _1ca, _1cb) {
				if (d._usesBorderBox(node)) {
					var pb = d._getPadBorderExtents(node, _1cb);
					if (_1c9 >= 0) {
						_1c9 += pb.w;
					}
					if (_1ca >= 0) {
						_1ca += pb.h;
					}
				}
				d._setBox(node, NaN, NaN, _1c9, _1ca);
			};
			dojo._setMarginBox = function(node, _1cc, _1cd, _1ce, _1cf, _1d0) {
				var s = _1d0 || gcs(node),
				bb = d._usesBorderBox(node),
				pb = bb ? _1d1: d._getPadBorderExtents(node, s);
				if (d.isWebKit) {
					if (d._isButtonTag(node)) {
						var ns = node.style;
						if (_1ce >= 0 && !ns.width) {
							ns.width = "4px";
						}
						if (_1cf >= 0 && !ns.height) {
							ns.height = "4px";
						}
					}
				}
				var mb = d._getMarginExtents(node, s);
				if (_1ce >= 0) {
					_1ce = Math.max(_1ce - pb.w - mb.w, 0);
				}
				if (_1cf >= 0) {
					_1cf = Math.max(_1cf - pb.h - mb.h, 0);
				}
				d._setBox(node, _1cc, _1cd, _1ce, _1cf);
			};
			var _1d1 = {
				l: 0,
				t: 0,
				w: 0,
				h: 0
			};
			dojo.marginBox = function(node, box) {
				var n = byId(node),
				s = gcs(n),
				b = box;
				return ! b ? d._getMarginBox(n, s) : d._setMarginBox(n, b.l, b.t, b.w, b.h, s);
			};
			dojo.contentBox = function(node, box) {
				var n = byId(node),
				s = gcs(n),
				b = box;
				return ! b ? d._getContentBox(n, s) : d._setContentSize(n, b.w, b.h, s);
			};
			var _1d2 = function(node, prop) {
				if (! (node = (node || 0).parentNode)) {
					return 0;
				}
				var val, _1d3 = 0,
				_1d4 = d.body();
				while (node && node.style) {
					if (gcs(node).position == "fixed") {
						return 0;
					}
					val = node[prop];
					if (val) {
						_1d3 += val - 0;
						if (node == _1d4) {
							break;
						}
					}
					node = node.parentNode;
				}
				return _1d3;
			};
			dojo._docScroll = function() {
				var n = d.global;
				return "pageXOffset" in n ? {
					x: n.pageXOffset,
					y: n.pageYOffset
				}: (n = d.isQuirks ? d.doc.body: d.doc.documentElement, {
					x: d._fixIeBiDiScrollLeft(n.scrollLeft || 0),
					y: n.scrollTop || 0
				});
			};
			dojo._isBodyLtr = function() {
				return "_bodyLtr" in d ? d._bodyLtr: d._bodyLtr = (d.body().dir || d.doc.documentElement.dir || "ltr").toLowerCase() == "ltr";
			};
			dojo._getIeDocumentElementOffset = function() {
				var de = d.doc.documentElement;
				if (d.isIE < 8) {
					var r = de.getBoundingClientRect();
					var l = r.left,
					t = r.top;
					if (d.isIE < 7) {
						l += de.clientLeft;
						t += de.clientTop;
					}
					return {
						x: l < 0 ? 0 : l,
						y: t < 0 ? 0 : t
					};
				} else {
					return {
						x: 0,
						y: 0
					};
				}
			};
			dojo._fixIeBiDiScrollLeft = function(_1d5) {
				var ie = d.isIE;
				if (ie && !d._isBodyLtr()) {
					var qk = d.isQuirks,
					de = qk ? d.doc.body: d.doc.documentElement;
					if (ie == 6 && !qk && d.global.frameElement && de.scrollHeight > de.clientHeight) {
						_1d5 += de.clientLeft;
					}
					return (ie < 8 || qk) ? (_1d5 + de.clientWidth - de.scrollWidth) : -_1d5;
				}
				return _1d5;
			};
			dojo._abs = dojo.position = function(node, _1d6) {
				node = byId(node);
				var db = d.body(),
				dh = db.parentNode,
				ret = node.getBoundingClientRect();
				ret = {
					x: ret.left,
					y: ret.top,
					w: ret.right - ret.left,
					h: ret.bottom - ret.top
				};
				if (d.isIE) {
					var _1d7 = d._getIeDocumentElementOffset();
					ret.x -= _1d7.x + (d.isQuirks ? db.clientLeft + db.offsetLeft: 0);
					ret.y -= _1d7.y + (d.isQuirks ? db.clientTop + db.offsetTop: 0);
				} else {
					if (d.isFF == 3) {
						var cs = gcs(dh);
						ret.x -= px(dh, cs.marginLeft) + px(dh, cs.borderLeftWidth);
						ret.y -= px(dh, cs.marginTop) + px(dh, cs.borderTopWidth);
					}
				}
				if (_1d6) {
					var _1d8 = d._docScroll();
					ret.x += _1d8.x;
					ret.y += _1d8.y;
				}
				return ret;
			};
			dojo.coords = function(node, _1d9) {
				var n = byId(node),
				s = gcs(n),
				mb = d._getMarginBox(n, s);
				var abs = d.position(n, _1d9);
				mb.x = abs.x;
				mb.y = abs.y;
				return mb;
			};
			var _1da = {
				"class": "className",
				"for": "htmlFor",
				tabindex: "tabIndex",
				readonly: "readOnly",
				colspan: "colSpan",
				frameborder: "frameBorder",
				rowspan: "rowSpan",
				valuetype: "valueType"
			},
			_1db = {
				classname: "class",
				htmlfor: "for",
				tabindex: "tabIndex",
				readonly: "readOnly"
			},
			_1dc = {
				innerHTML: 1,
				className: 1,
				htmlFor: d.isIE,
				value: 1
			};
			var _1dd = function(name) {
				return _1db[name.toLowerCase()] || name;
			};
			var _1de = function(node, name) {
				var attr = node.getAttributeNode && node.getAttributeNode(name);
				return attr && attr.specified;
			};
			dojo.hasAttr = function(node, name) {
				var lc = name.toLowerCase();
				return _1dc[_1da[lc] || name] || _1de(byId(node), _1db[lc] || name);
			};
			var _1df = {},
			_1e0 = 0,
			_1e1 = dojo._scopeName + "attrid",
			_1e2 = {
				col: 1,
				colgroup: 1,
				table: 1,
				tbody: 1,
				tfoot: 1,
				thead: 1,
				tr: 1,
				title: 1
			};
			dojo.attr = function(node, name, _1e3) {
				node = byId(node);
				var args = arguments.length,
				prop;
				if (args == 2 && typeof name != "string") {
					for (var x in name) {
						d.attr(node, x, name[x]);
					}
					return node;
				}
				var lc = name.toLowerCase(),
				_1e4 = _1da[lc] || name,
				_1e5 = _1dc[_1e4],
				_1e6 = _1db[lc] || name;
				if (args == 3) {
					do {
						if (_1e4 == "style" && typeof _1e3 != "string") {
							d.style(node, _1e3);
							break;
						}
						if (_1e4 == "innerHTML") {
							if (d.isIE && node.tagName.toLowerCase() in _1e2) {
								d.empty(node);
								node.appendChild(d._toDom(_1e3, node.ownerDocument));
							} else {
								node[_1e4] = _1e3;
							}
							break;
						}
						if (d.isFunction(_1e3)) {
							var _1e7 = d.attr(node, _1e1);
							if (!_1e7) {
								_1e7 = _1e0++;
								d.attr(node, _1e1, _1e7);
							}
							if (!_1df[_1e7]) {
								_1df[_1e7] = {};
							}
							var h = _1df[_1e7][_1e4];
							if (h) {
								d.disconnect(h);
							} else {
								try {
									delete node[_1e4];
								} catch(e) {}
							}
							_1df[_1e7][_1e4] = d.connect(node, _1e4, _1e3);
							break;
						}
						if (_1e5 || typeof _1e3 == "boolean") {
							node[_1e4] = _1e3;
							break;
						}
						node.setAttribute(_1e6, _1e3);
					} while ( false );
					return node;
				}
				_1e3 = node[_1e4];
				if (_1e5 && typeof _1e3 != "undefined") {
					return _1e3;
				}
				if (_1e4 != "href" && (typeof _1e3 == "boolean" || d.isFunction(_1e3))) {
					return _1e3;
				}
				return _1de(node, _1e6) ? node.getAttribute(_1e6) : null;
			};
			dojo.removeAttr = function(node, name) {
				byId(node).removeAttribute(_1dd(name));
			};
			dojo.getNodeProp = function(node, name) {
				node = byId(node);
				var lc = name.toLowerCase(),
				_1e8 = _1da[lc] || name;
				if ((_1e8 in node) && _1e8 != "href") {
					return node[_1e8];
				}
				var _1e9 = _1db[lc] || name;
				return _1de(node, _1e9) ? node.getAttribute(_1e9) : null;
			};
			dojo.create = function(tag, _1ea, _1eb, pos) {
				var doc = d.doc;
				if (_1eb) {
					_1eb = byId(_1eb);
					doc = _1eb.ownerDocument;
				}
				if (typeof tag == "string") {
					tag = doc.createElement(tag);
				}
				if (_1ea) {
					d.attr(tag, _1ea);
				}
				if (_1eb) {
					d.place(tag, _1eb, pos);
				}
				return tag;
			};
			d.empty = d.isIE ?
			function(node) {
				node = byId(node);
				for (var c; c = node.lastChild;) {
					d.destroy(c);
				}
			}: function(node) {
				byId(node).innerHTML = "";
			};
			var _1ec = {
				option: ["select"],
				tbody: ["table"],
				thead: ["table"],
				tfoot: ["table"],
				tr: ["table", "tbody"],
				td: ["table", "tbody", "tr"],
				th: ["table", "thead", "tr"],
				legend: ["fieldset"],
				caption: ["table"],
				colgroup: ["table"],
				col: ["table", "colgroup"],
				li: ["ul"]
			},
			_1ed = /<\s*([\w\:]+)/,
			_1ee = {},
			_1ef = 0,
			_1f0 = "__" + d._scopeName + "ToDomId";
			for (var _1f1 in _1ec) {
				if (_1ec.hasOwnProperty(_1f1)) {
					var tw = _1ec[_1f1];
					tw.pre = _1f1 == "option" ? "<select multiple=\"multiple\">": "<" + tw.join("><") + ">";
					tw.post = "</" + tw.reverse().join("></") + ">";
				}
			}
			d._toDom = function(frag, doc) {
				doc = doc || d.doc;
				var _1f2 = doc[_1f0];
				if (!_1f2) {
					doc[_1f0] = _1f2 = ++_1ef + "";
					_1ee[_1f2] = doc.createElement("div");
				}
				frag += "";
				var _1f3 = frag.match(_1ed),
				tag = _1f3 ? _1f3[1].toLowerCase() : "",
				_1f4 = _1ee[_1f2],
				wrap,
				i,
				fc,
				df;
				if (_1f3 && _1ec[tag]) {
					wrap = _1ec[tag];
					_1f4.innerHTML = wrap.pre + frag + wrap.post;
					for (i = wrap.length; i; --i) {
						_1f4 = _1f4.firstChild;
					}
				} else {
					_1f4.innerHTML = frag;
				}
				if (_1f4.childNodes.length == 1) {
					return _1f4.removeChild(_1f4.firstChild);
				}
				df = doc.createDocumentFragment();
				while (fc = _1f4.firstChild) {
					df.appendChild(fc);
				}
				return df;
			};
			var _1f5 = "className";
			dojo.hasClass = function(node, _1f6) {
				return ((" " + byId(node)[_1f5] + " ").indexOf(" " + _1f6 + " ") >= 0);
			};
			var _1f7 = /\s+/,
			a1 = [""],
			_1f8 = {},
			_1f9 = function(s) {
				if (typeof s == "string" || s instanceof String) {
					if (s.indexOf(" ") < 0) {
						a1[0] = s;
						return a1;
					} else {
						return s.split(_1f7);
					}
				}
				return s || "";
			};
			dojo.addClass = function(node, _1fa) {
				node = byId(node);
				_1fa = _1f9(_1fa);
				var cls = node[_1f5],
				_1fb;
				cls = cls ? " " + cls + " ": " ";
				_1fb = cls.length;
				for (var i = 0, len = _1fa.length, c; i < len; ++i) {
					c = _1fa[i];
					if (c && cls.indexOf(" " + c + " ") < 0) {
						cls += c + " ";
					}
				}
				if (_1fb < cls.length) {
					node[_1f5] = cls.substr(1, cls.length - 2);
				}
			};
			dojo.removeClass = function(node, _1fc) {
				node = byId(node);
				var cls;
				if (_1fc !== undefined) {
					_1fc = _1f9(_1fc);
					cls = " " + node[_1f5] + " ";
					for (var i = 0, len = _1fc.length; i < len; ++i) {
						cls = cls.replace(" " + _1fc[i] + " ", " ");
					}
					cls = d.trim(cls);
				} else {
					cls = "";
				}
				if (node[_1f5] != cls) {
					node[_1f5] = cls;
				}
			};
			dojo.replaceClass = function(node, _1fd, _1fe) {
				node = byId(node);
				_1f8.className = node.className;
				dojo.removeClass(_1f8, _1fe);
				dojo.addClass(_1f8, _1fd);
				if (node.className !== _1f8.className) {
					node.className = _1f8.className;
				}
			};
			dojo.toggleClass = function(node, _1ff, _200) {
				if (_200 === undefined) {
					_200 = !d.hasClass(node, _1ff);
				}
				d[_200 ? "addClass": "removeClass"](node, _1ff);
			};
		})();
	}
	if (!dojo._hasResource["dojo._base.NodeList"]) {
		dojo._hasResource["dojo._base.NodeList"] = true;
		dojo.provide("dojo._base.NodeList");
		(function() {
			var d = dojo;
			var ap = Array.prototype,
			aps = ap.slice,
			apc = ap.concat;
			var tnl = function(a, _201, _202) {
				if (!a.sort) {
					a = aps.call(a, 0);
				}
				var ctor = _202 || this._NodeListCtor || d._NodeListCtor;
				a.constructor = ctor;
				dojo._mixin(a, ctor.prototype);
				a._NodeListCtor = ctor;
				return _201 ? a._stash(_201) : a;
			};
			var _203 = function(f, a, o) {
				a = [0].concat(aps.call(a, 0));
				o = o || d.global;
				return function(node) {
					a[0] = node;
					return f.apply(o, a);
				};
			};
			var _204 = function(f, o) {
				return function() {
					this.forEach(_203(f, arguments, o));
					return this;
				};
			};
			var _205 = function(f, o) {
				return function() {
					return this.map(_203(f, arguments, o));
				};
			};
			var _206 = function(f, o) {
				return function() {
					return this.filter(_203(f, arguments, o));
				};
			};
			var _207 = function(f, g, o) {
				return function() {
					var a = arguments,
					body = _203(f, a, o);
					if (g.call(o || d.global, a)) {
						return this.map(body);
					}
					this.forEach(body);
					return this;
				};
			};
			var _208 = function(a) {
				return a.length == 1 && (typeof a[0] == "string");
			};
			var _209 = function(node) {
				var p = node.parentNode;
				if (p) {
					p.removeChild(node);
				}
			};
			dojo.NodeList = function() {
				return tnl(Array.apply(null, arguments));
			};
			d._NodeListCtor = d.NodeList;
			var nl = d.NodeList,
			nlp = nl.prototype;
			nl._wrap = nlp._wrap = tnl;
			nl._adaptAsMap = _205;
			nl._adaptAsForEach = _204;
			nl._adaptAsFilter = _206;
			nl._adaptWithCondition = _207;
			d.forEach(["slice", "splice"],
			function(name) {
				var f = ap[name];
				nlp[name] = function() {
					return this._wrap(f.apply(this, arguments), name == "slice" ? this: null);
				};
			});
			d.forEach(["indexOf", "lastIndexOf", "every", "some"],
			function(name) {
				var f = d[name];
				nlp[name] = function() {
					return f.apply(d, [this].concat(aps.call(arguments, 0)));
				};
			});
			d.forEach(["attr", "style"],
			function(name) {
				nlp[name] = _207(d[name], _208);
			});
			d.forEach(["connect", "addClass", "removeClass", "replaceClass", "toggleClass", "empty", "removeAttr"],
			function(name) {
				nlp[name] = _204(d[name]);
			});
			dojo.extend(dojo.NodeList, {
				_normalize: function(_20a, _20b) {
					var _20c = _20a.parse === true ? true: false;
					if (typeof _20a.template == "string") {
						var _20d = _20a.templateFunc || (dojo.string && dojo.string.substitute);
						_20a = _20d ? _20d(_20a.template, _20a) : _20a;
					}
					var type = (typeof _20a);
					if (type == "string" || type == "number") {
						_20a = dojo._toDom(_20a, (_20b && _20b.ownerDocument));
						if (_20a.nodeType == 11) {
							_20a = dojo._toArray(_20a.childNodes);
						} else {
							_20a = [_20a];
						}
					} else {
						if (!dojo.isArrayLike(_20a)) {
							_20a = [_20a];
						} else {
							if (!dojo.isArray(_20a)) {
								_20a = dojo._toArray(_20a);
							}
						}
					}
					if (_20c) {
						_20a._runParse = true;
					}
					return _20a;
				},
				_cloneNode: function(node) {
					return node.cloneNode(true);
				},
				_place: function(ary, _20e, _20f, _210) {
					if (_20e.nodeType != 1 && _20f == "only") {
						return;
					}
					var _211 = _20e,
					_212;
					var _213 = ary.length;
					for (var i = _213 - 1; i >= 0; i--) {
						var node = (_210 ? this._cloneNode(ary[i]) : ary[i]);
						if (ary._runParse && dojo.parser && dojo.parser.parse) {
							if (!_212) {
								_212 = _211.ownerDocument.createElement("div");
							}
							_212.appendChild(node);
							dojo.parser.parse(_212);
							node = _212.firstChild;
							while (_212.firstChild) {
								_212.removeChild(_212.firstChild);
							}
						}
						if (i == _213 - 1) {
							dojo.place(node, _211, _20f);
						} else {
							_211.parentNode.insertBefore(node, _211);
						}
						_211 = node;
					}
				},
				_stash: function(_214) {
					this._parent = _214;
					return this;
				},
				end: function() {
					if (this._parent) {
						return this._parent;
					} else {
						return new this._NodeListCtor();
					}
				},
				concat: function(item) {
					var t = d.isArray(this) ? this: aps.call(this, 0),
					m = d.map(arguments,
					function(a) {
						return a && !d.isArray(a) && (typeof NodeList != "undefined" && a.constructor === NodeList || a.constructor === this._NodeListCtor) ? aps.call(a, 0) : a;
					});
					return this._wrap(apc.apply(t, m), this);
				},
				map: function(func, obj) {
					return this._wrap(d.map(this, func, obj), this);
				},
				forEach: function(_215, _216) {
					d.forEach(this, _215, _216);
					return this;
				},
				coords: _205(d.coords),
				position: _205(d.position),
				place: function(_217, _218) {
					var item = d.query(_217)[0];
					return this.forEach(function(node) {
						d.place(node, item, _218);
					});
				},
				orphan: function(_219) {
					return (_219 ? d._filterQueryResult(this, _219) : this).forEach(_209);
				},
				adopt: function(_21a, _21b) {
					return d.query(_21a).place(this[0], _21b)._stash(this);
				},
				query: function(_21c) {
					if (!_21c) {
						return this;
					}
					var ret = this.map(function(node) {
						return d.query(_21c, node).filter(function(_21d) {
							return _21d !== undefined;
						});
					});
					return this._wrap(apc.apply([], ret), this);
				},
				filter: function(_21e) {
					var a = arguments,
					_21f = this,
					_220 = 0;
					if (typeof _21e == "string") {
						_21f = d._filterQueryResult(this, a[0]);
						if (a.length == 1) {
							return _21f._stash(this);
						}
						_220 = 1;
					}
					return this._wrap(d.filter(_21f, a[_220], a[_220 + 1]), this);
				},
				addContent: function(_221, _222) {
					_221 = this._normalize(_221, this[0]);
					for (var i = 0, node;
					(node = this[i]); i++) {
						this._place(_221, node, _222, i > 0);
					}
					return this;
				},
				instantiate: function(_223, _224) {
					var c = d.isFunction(_223) ? _223: d.getObject(_223);
					_224 = _224 || {};
					return this.forEach(function(node) {
						new c(_224, node);
					});
				},
				at: function() {
					var t = new this._NodeListCtor();
					d.forEach(arguments,
					function(i) {
						if (i < 0) {
							i = this.length + i;
						}
						if (this[i]) {
							t.push(this[i]);
						}
					},
					this);
					return t._stash(this);
				}
			});
			nl.events = ["blur", "focus", "change", "click", "error", "keydown", "keypress", "keyup", "load", "mousedown", "mouseenter", "mouseleave", "mousemove", "mouseout", "mouseover", "mouseup", "submit"];
			d.forEach(nl.events,
			function(evt) {
				var _225 = "on" + evt;
				nlp[_225] = function(a, b) {
					return this.connect(_225, a, b);
				};
			});
		})();
	}
	if (!dojo._hasResource["dojo._base.query"]) {
		dojo._hasResource["dojo._base.query"] = true;
		(function() {
			var _226 = function(d) {
				var trim = d.trim;
				var each = d.forEach;
				var qlc = (d._NodeListCtor = d.NodeList);
				var _227 = function() {
					return d.doc;
				};
				var _228 = ((d.isWebKit || d.isMozilla) && ((_227().compatMode) == "BackCompat"));
				var _229 = !!_227().firstChild["children"] ? "children": "childNodes";
				var _22a = ">~+";
				var _22b = false;
				var _22c = function() {
					return true;
				};
				var _22d = function(_22e) {
					if (_22a.indexOf(_22e.slice( - 1)) >= 0) {
						_22e += " * ";
					} else {
						_22e += " ";
					}
					var ts = function(s, e) {
						return trim(_22e.slice(s, e));
					};
					var _22f = [];
					var _230 = -1,
					_231 = -1,
					_232 = -1,
					_233 = -1,
					_234 = -1,
					inId = -1,
					_235 = -1,
					lc = "",
					cc = "",
					_236;
					var x = 0,
					ql = _22e.length,
					_237 = null,
					_238 = null;
					var _239 = function() {
						if (_235 >= 0) {
							var tv = (_235 == x) ? null: ts(_235, x);
							_237[(_22a.indexOf(tv) < 0) ? "tag": "oper"] = tv;
							_235 = -1;
						}
					};
					var _23a = function() {
						if (inId >= 0) {
							_237.id = ts(inId, x).replace(/\\/g, "");
							inId = -1;
						}
					};
					var _23b = function() {
						if (_234 >= 0) {
							_237.classes.push(ts(_234 + 1, x).replace(/\\/g, ""));
							_234 = -1;
						}
					};
					var _23c = function() {
						_23a();
						_239();
						_23b();
					};
					var _23d = function() {
						_23c();
						if (_233 >= 0) {
							_237.pseudos.push({
								name: ts(_233 + 1, x)
							});
						}
						_237.loops = (_237.pseudos.length || _237.attrs.length || _237.classes.length);
						_237.oquery = _237.query = ts(_236, x);
						_237.otag = _237.tag = (_237["oper"]) ? null: (_237.tag || "*");
						if (_237.tag) {
							_237.tag = _237.tag.toUpperCase();
						}
						if (_22f.length && (_22f[_22f.length - 1].oper)) {
							_237.infixOper = _22f.pop();
							_237.query = _237.infixOper.query + " " + _237.query;
						}
						_22f.push(_237);
						_237 = null;
					};
					for (; lc = cc, cc = _22e.charAt(x), x < ql; x++) {
						if (lc == "\\") {
							continue;
						}
						if (!_237) {
							_236 = x;
							_237 = {
								query: null,
								pseudos: [],
								attrs: [],
								classes: [],
								tag: null,
								oper: null,
								id: null,
								getTag: function() {
									return (_22b) ? this.otag: this.tag;
								}
							};
							_235 = x;
						}
						if (_230 >= 0) {
							if (cc == "]") {
								if (!_238.attr) {
									_238.attr = ts(_230 + 1, x);
								} else {
									_238.matchFor = ts((_232 || _230 + 1), x);
								}
								var cmf = _238.matchFor;
								if (cmf) {
									if ((cmf.charAt(0) == "\"") || (cmf.charAt(0) == "'")) {
										_238.matchFor = cmf.slice(1, -1);
									}
								}
								_237.attrs.push(_238);
								_238 = null;
								_230 = _232 = -1;
							} else {
								if (cc == "=") {
									var _23e = ("|~^$*".indexOf(lc) >= 0) ? lc: "";
									_238.type = _23e + cc;
									_238.attr = ts(_230 + 1, x - _23e.length);
									_232 = x + 1;
								}
							}
						} else {
							if (_231 >= 0) {
								if (cc == ")") {
									if (_233 >= 0) {
										_238.value = ts(_231 + 1, x);
									}
									_233 = _231 = -1;
								}
							} else {
								if (cc == "#") {
									_23c();
									inId = x + 1;
								} else {
									if (cc == ".") {
										_23c();
										_234 = x;
									} else {
										if (cc == ":") {
											_23c();
											_233 = x;
										} else {
											if (cc == "[") {
												_23c();
												_230 = x;
												_238 = {};
											} else {
												if (cc == "(") {
													if (_233 >= 0) {
														_238 = {
															name: ts(_233 + 1, x),
															value: null
														};
														_237.pseudos.push(_238);
													}
													_231 = x;
												} else {
													if ((cc == " ") && (lc != cc)) {
														_23d();
													}
												}
											}
										}
									}
								}
							}
						}
					}
					return _22f;
				};
				var _23f = function(_240, _241) {
					if (!_240) {
						return _241;
					}
					if (!_241) {
						return _240;
					}
					return function() {
						return _240.apply(window, arguments) && _241.apply(window, arguments);
					};
				};
				var _242 = function(i, arr) {
					var r = arr || [];
					if (i) {
						r.push(i);
					}
					return r;
				};
				var _243 = function(n) {
					return (1 == n.nodeType);
				};
				var _244 = "";
				var _245 = function(elem, attr) {
					if (!elem) {
						return _244;
					}
					if (attr == "class") {
						return elem.className || _244;
					}
					if (attr == "for") {
						return elem.htmlFor || _244;
					}
					if (attr == "style") {
						return elem.style.cssText || _244;
					}
					return (_22b ? elem.getAttribute(attr) : elem.getAttribute(attr, 2)) || _244;
				};
				var _246 = {
					"*=": function(attr, _247) {
						return function(elem) {
							return (_245(elem, attr).indexOf(_247) >= 0);
						};
					},
					"^=": function(attr, _248) {
						return function(elem) {
							return (_245(elem, attr).indexOf(_248) == 0);
						};
					},
					"$=": function(attr, _249) {
						var tval = " " + _249;
						return function(elem) {
							var ea = " " + _245(elem, attr);
							return (ea.lastIndexOf(_249) == (ea.length - _249.length));
						};
					},
					"~=": function(attr, _24a) {
						var tval = " " + _24a + " ";
						return function(elem) {
							var ea = " " + _245(elem, attr) + " ";
							return (ea.indexOf(tval) >= 0);
						};
					},
					"|=": function(attr, _24b) {
						var _24c = " " + _24b + "-";
						return function(elem) {
							var ea = " " + _245(elem, attr);
							return ((ea == _24b) || (ea.indexOf(_24c) == 0));
						};
					},
					"=": function(attr, _24d) {
						return function(elem) {
							return (_245(elem, attr) == _24d);
						};
					}
				};
				var _24e = (typeof _227().firstChild.nextElementSibling == "undefined");
				var _24f = !_24e ? "nextElementSibling": "nextSibling";
				var _250 = !_24e ? "previousElementSibling": "previousSibling";
				var _251 = (_24e ? _243: _22c);
				var _252 = function(node) {
					while (node = node[_250]) {
						if (_251(node)) {
							return false;
						}
					}
					return true;
				};
				var _253 = function(node) {
					while (node = node[_24f]) {
						if (_251(node)) {
							return false;
						}
					}
					return true;
				};
				var _254 = function(node) {
					var root = node.parentNode;
					var i = 0,
					tret = root[_229],
					ci = (node["_i"] || -1),
					cl = (root["_l"] || -1);
					if (!tret) {
						return - 1;
					}
					var l = tret.length;
					if (cl == l && ci >= 0 && cl >= 0) {
						return ci;
					}
					root["_l"] = l;
					ci = -1;
					for (var te = root["firstElementChild"] || root["firstChild"]; te; te = te[_24f]) {
						if (_251(te)) {
							te["_i"] = ++i;
							if (node === te) {
								ci = i;
							}
						}
					}
					return ci;
				};
				var _255 = function(elem) {
					return ! ((_254(elem)) % 2);
				};
				var _256 = function(elem) {
					return ((_254(elem)) % 2);
				};
				var _257 = {
					"checked": function(name, _258) {
						return function(elem) {
							return !! ("checked" in elem ? elem.checked: elem.selected);
						};
					},
					"first-child": function() {
						return _252;
					},
					"last-child": function() {
						return _253;
					},
					"only-child": function(name, _259) {
						return function(node) {
							if (!_252(node)) {
								return false;
							}
							if (!_253(node)) {
								return false;
							}
							return true;
						};
					},
					"empty": function(name, _25a) {
						return function(elem) {
							var cn = elem.childNodes;
							var cnl = elem.childNodes.length;
							for (var x = cnl - 1; x >= 0; x--) {
								var nt = cn[x].nodeType;
								if ((nt === 1) || (nt == 3)) {
									return false;
								}
							}
							return true;
						};
					},
					"contains": function(name, _25b) {
						var cz = _25b.charAt(0);
						if (cz == "\"" || cz == "'") {
							_25b = _25b.slice(1, -1);
						}
						return function(elem) {
							return (elem.innerHTML.indexOf(_25b) >= 0);
						};
					},
					"not": function(name, _25c) {
						var p = _22d(_25c)[0];
						var _25d = {
							el: 1
						};
						if (p.tag != "*") {
							_25d.tag = 1;
						}
						if (!p.classes.length) {
							_25d.classes = 1;
						}
						var ntf = _25e(p, _25d);
						return function(elem) {
							return (!ntf(elem));
						};
					},
					"nth-child": function(name, _25f) {
						var pi = parseInt;
						if (_25f == "odd") {
							return _256;
						} else {
							if (_25f == "even") {
								return _255;
							}
						}
						if (_25f.indexOf("n") != -1) {
							var _260 = _25f.split("n", 2);
							var pred = _260[0] ? ((_260[0] == "-") ? -1 : pi(_260[0])) : 1;
							var idx = _260[1] ? pi(_260[1]) : 0;
							var lb = 0,
							ub = -1;
							if (pred > 0) {
								if (idx < 0) {
									idx = (idx % pred) && (pred + (idx % pred));
								} else {
									if (idx > 0) {
										if (idx >= pred) {
											lb = idx - idx % pred;
										}
										idx = idx % pred;
									}
								}
							} else {
								if (pred < 0) {
									pred *= -1;
									if (idx > 0) {
										ub = idx;
										idx = idx % pred;
									}
								}
							}
							if (pred > 0) {
								return function(elem) {
									var i = _254(elem);
									return (i >= lb) && (ub < 0 || i <= ub) && ((i % pred) == idx);
								};
							} else {
								_25f = idx;
							}
						}
						var _261 = pi(_25f);
						return function(elem) {
							return (_254(elem) == _261);
						};
					}
				};
				var _262 = (d.isIE < 9 || (dojo.isIE && dojo.isQuirks)) ?
				function(cond) {
					var clc = cond.toLowerCase();
					if (clc == "class") {
						cond = "className";
					}
					return function(elem) {
						return (_22b ? elem.getAttribute(cond) : elem[cond] || elem[clc]);
					};
				}: function(cond) {
					return function(elem) {
						return (elem && elem.getAttribute && elem.hasAttribute(cond));
					};
				};
				var _25e = function(_263, _264) {
					if (!_263) {
						return _22c;
					}
					_264 = _264 || {};
					var ff = null;
					if (! ("el" in _264)) {
						ff = _23f(ff, _243);
					}
					if (! ("tag" in _264)) {
						if (_263.tag != "*") {
							ff = _23f(ff,
							function(elem) {
								return (elem && (elem.tagName == _263.getTag()));
							});
						}
					}
					if (! ("classes" in _264)) {
						each(_263.classes,
						function(_265, idx, arr) {
							var re = new RegExp("(?:^|\\s)" + _265 + "(?:\\s|$)");
							ff = _23f(ff,
							function(elem) {
								return re.test(elem.className);
							});
							ff.count = idx;
						});
					}
					if (! ("pseudos" in _264)) {
						each(_263.pseudos,
						function(_266) {
							var pn = _266.name;
							if (_257[pn]) {
								ff = _23f(ff, _257[pn](pn, _266.value));
							}
						});
					}
					if (! ("attrs" in _264)) {
						each(_263.attrs,
						function(attr) {
							var _267;
							var a = attr.attr;
							if (attr.type && _246[attr.type]) {
								_267 = _246[attr.type](a, attr.matchFor);
							} else {
								if (a.length) {
									_267 = _262(a);
								}
							}
							if (_267) {
								ff = _23f(ff, _267);
							}
						});
					}
					if (! ("id" in _264)) {
						if (_263.id) {
							ff = _23f(ff,
							function(elem) {
								return ( !! elem && (elem.id == _263.id));
							});
						}
					}
					if (!ff) {
						if (! ("default" in _264)) {
							ff = _22c;
						}
					}
					return ff;
				};
				var _268 = function(_269) {
					return function(node, ret, bag) {
						while (node = node[_24f]) {
							if (_24e && (!_243(node))) {
								continue;
							}
							if ((!bag || _26a(node, bag)) && _269(node)) {
								ret.push(node);
							}
							break;
						}
						return ret;
					};
				};
				var _26b = function(_26c) {
					return function(root, ret, bag) {
						var te = root[_24f];
						while (te) {
							if (_251(te)) {
								if (bag && !_26a(te, bag)) {
									break;
								}
								if (_26c(te)) {
									ret.push(te);
								}
							}
							te = te[_24f];
						}
						return ret;
					};
				};
				var _26d = function(_26e) {
					_26e = _26e || _22c;
					return function(root, ret, bag) {
						var te, x = 0,
						tret = root[_229];
						while (te = tret[x++]) {
							if (_251(te) && (!bag || _26a(te, bag)) && (_26e(te, x))) {
								ret.push(te);
							}
						}
						return ret;
					};
				};
				var _26f = function(node, root) {
					var pn = node.parentNode;
					while (pn) {
						if (pn == root) {
							break;
						}
						pn = pn.parentNode;
					}
					return !! pn;
				};
				var _270 = {};
				var _271 = function(_272) {
					var _273 = _270[_272.query];
					if (_273) {
						return _273;
					}
					var io = _272.infixOper;
					var oper = (io ? io.oper: "");
					var _274 = _25e(_272, {
						el: 1
					});
					var qt = _272.tag;
					var _275 = ("*" == qt);
					var ecs = _227()["getElementsByClassName"];
					if (!oper) {
						if (_272.id) {
							_274 = (!_272.loops && _275) ? _22c: _25e(_272, {
								el: 1,
								id: 1
							});
							_273 = function(root, arr) {
								var te = d.byId(_272.id, (root.ownerDocument || root));
								if (!te || !_274(te)) {
									return;
								}
								if (9 == root.nodeType) {
									return _242(te, arr);
								} else {
									if (_26f(te, root)) {
										return _242(te, arr);
									}
								}
							};
						} else {
							if (ecs && /\{\s*\[native code\]\s*\}/.test(String(ecs)) && _272.classes.length && !_228) {
								_274 = _25e(_272, {
									el: 1,
									classes: 1,
									id: 1
								});
								var _276 = _272.classes.join(" ");
								_273 = function(root, arr, bag) {
									var ret = _242(0, arr),
									te,
									x = 0;
									var tret = root.getElementsByClassName(_276);
									while ((te = tret[x++])) {
										if (_274(te, root) && _26a(te, bag)) {
											ret.push(te);
										}
									}
									return ret;
								};
							} else {
								if (!_275 && !_272.loops) {
									_273 = function(root, arr, bag) {
										var ret = _242(0, arr),
										te,
										x = 0;
										var tret = root.getElementsByTagName(_272.getTag());
										while ((te = tret[x++])) {
											if (_26a(te, bag)) {
												ret.push(te);
											}
										}
										return ret;
									};
								} else {
									_274 = _25e(_272, {
										el: 1,
										tag: 1,
										id: 1
									});
									_273 = function(root, arr, bag) {
										var ret = _242(0, arr),
										te,
										x = 0;
										var tret = root.getElementsByTagName(_272.getTag());
										while ((te = tret[x++])) {
											if (_274(te, root) && _26a(te, bag)) {
												ret.push(te);
											}
										}
										return ret;
									};
								}
							}
						}
					} else {
						var _277 = {
							el: 1
						};
						if (_275) {
							_277.tag = 1;
						}
						_274 = _25e(_272, _277);
						if ("+" == oper) {
							_273 = _268(_274);
						} else {
							if ("~" == oper) {
								_273 = _26b(_274);
							} else {
								if (">" == oper) {
									_273 = _26d(_274);
								}
							}
						}
					}
					return _270[_272.query] = _273;
				};
				var _278 = function(root, _279) {
					var _27a = _242(root),
					qp,
					x,
					te,
					qpl = _279.length,
					bag,
					ret;
					for (var i = 0; i < qpl; i++) {
						ret = [];
						qp = _279[i];
						x = _27a.length - 1;
						if (x > 0) {
							bag = {};
							ret.nozip = true;
						}
						var gef = _271(qp);
						for (var j = 0;
						(te = _27a[j]); j++) {
							gef(te, ret, bag);
						}
						if (!ret.length) {
							break;
						}
						_27a = ret;
					}
					return ret;
				};
				var _27b = {},
				_27c = {};
				var _27d = function(_27e) {
					var _27f = _22d(trim(_27e));
					if (_27f.length == 1) {
						var tef = _271(_27f[0]);
						return function(root) {
							var r = tef(root, new qlc());
							if (r) {
								r.nozip = true;
							}
							return r;
						};
					}
					return function(root) {
						return _278(root, _27f);
					};
				};
				var nua = navigator.userAgent;
				var wk = "WebKit/";
				var _280 = (d.isWebKit && (nua.indexOf(wk) > 0) && (parseFloat(nua.split(wk)[1]) > 528));
				var _281 = d.isIE ? "commentStrip": "nozip";
				var qsa = "querySelectorAll";
				var _282 = ( !! _227()[qsa] && (!d.isSafari || (d.isSafari > 3.1) || _280));
				var _283 = /n\+\d|([^ ])?([>~+])([^ =])?/g;
				var _284 = function(_285, pre, ch, post) {
					return ch ? (pre ? pre + " ": "") + ch + (post ? " " + post: "") : _285;
				};
				var _286 = function(_287, _288) {
					_287 = _287.replace(_283, _284);
					if (_282) {
						var _289 = _27c[_287];
						if (_289 && !_288) {
							return _289;
						}
					}
					var _28a = _27b[_287];
					if (_28a) {
						return _28a;
					}
					var qcz = _287.charAt(0);
					var _28b = ( - 1 == _287.indexOf(" "));
					if ((_287.indexOf("#") >= 0) && (_28b)) {
						_288 = true;
					}
					var _28c = (_282 && (!_288) && (_22a.indexOf(qcz) == -1) && (!d.isIE || (_287.indexOf(":") == -1)) && (!(_228 && (_287.indexOf(".") >= 0))) && (_287.indexOf(":contains") == -1) && (_287.indexOf(":checked") == -1) && (_287.indexOf("|=") == -1));
					if (_28c) {
						var tq = (_22a.indexOf(_287.charAt(_287.length - 1)) >= 0) ? (_287 + " *") : _287;
						return _27c[_287] = function(root) {
							try {
								if (! ((9 == root.nodeType) || _28b)) {
									throw "";
								}
								var r = root[qsa](tq);
								r[_281] = true;
								return r;
							} catch(e) {
								return _286(_287, true)(root);
							}
						};
					} else {
						var _28d = _287.split(/\s*,\s*/);
						return _27b[_287] = ((_28d.length < 2) ? _27d(_287) : function(root) {
							var _28e = 0,
							ret = [],
							tp;
							while ((tp = _28d[_28e++])) {
								ret = ret.concat(_27d(tp)(root));
							}
							return ret;
						});
					}
				};
				var _28f = 0;
				var _290 = d.isIE ?
				function(node) {
					if (_22b) {
						return (node.getAttribute("_uid") || node.setAttribute("_uid", ++_28f) || _28f);
					} else {
						return node.uniqueID;
					}
				}: function(node) {
					return (node._uid || (node._uid = ++_28f));
				};
				var _26a = function(node, bag) {
					if (!bag) {
						return 1;
					}
					var id = _290(node);
					if (!bag[id]) {
						return bag[id] = 1;
					}
					return 0;
				};
				var _291 = "_zipIdx";
				var _292 = function(arr) {
					if (arr && arr.nozip) {
						return (qlc._wrap) ? qlc._wrap(arr) : arr;
					}
					var ret = new qlc();
					if (!arr || !arr.length) {
						return ret;
					}
					if (arr[0]) {
						ret.push(arr[0]);
					}
					if (arr.length < 2) {
						return ret;
					}
					_28f++;
					if (d.isIE && _22b) {
						var _293 = _28f + "";
						arr[0].setAttribute(_291, _293);
						for (var x = 1, te; te = arr[x]; x++) {
							if (arr[x].getAttribute(_291) != _293) {
								ret.push(te);
							}
							te.setAttribute(_291, _293);
						}
					} else {
						if (d.isIE && arr.commentStrip) {
							try {
								for (var x = 1, te; te = arr[x]; x++) {
									if (_243(te)) {
										ret.push(te);
									}
								}
							} catch(e) {}
						} else {
							if (arr[0]) {
								arr[0][_291] = _28f;
							}
							for (var x = 1, te; te = arr[x]; x++) {
								if (arr[x][_291] != _28f) {
									ret.push(te);
								}
								te[_291] = _28f;
							}
						}
					}
					return ret;
				};
				d.query = function(_294, root) {
					qlc = d._NodeListCtor;
					if (!_294) {
						return new qlc();
					}
					if (_294.constructor == qlc) {
						return _294;
					}
					if (typeof _294 != "string") {
						return new qlc(_294);
					}
					if (typeof root == "string") {
						root = d.byId(root);
						if (!root) {
							return new qlc();
						}
					}
					root = root || _227();
					var od = root.ownerDocument || root.documentElement;
					_22b = (root.contentType && root.contentType == "application/xml") || (d.isOpera && (root.doctype || od.toString() == "[object XMLDocument]")) || ( !! od) && (d.isIE ? od.xml: (root.xmlVersion || od.xmlVersion));
					var r = _286(_294)(root);
					if (r && r.nozip && !qlc._wrap) {
						return r;
					}
					return _292(r);
				};
				d.query.pseudos = _257;
				d._filterQueryResult = function(_295, _296, root) {
					var _297 = new d._NodeListCtor(),
					_298 = _22d(_296),
					_299 = (_298.length == 1 && !/[^\w#\.]/.test(_296)) ? _25e(_298[0]) : function(node) {
						return dojo.query(_296, root).indexOf(node) != -1;
					};
					for (var x = 0, te; te = _295[x]; x++) {
						if (_299(te)) {
							_297.push(te);
						}
					}
					return _297;
				};
			};
			var _29a = function() {
				acme = {
					trim: function(str) {
						str = str.replace(/^\s+/, "");
						for (var i = str.length - 1; i >= 0; i--) {
							if (/\S/.test(str.charAt(i))) {
								str = str.substring(0, i + 1);
								break;
							}
						}
						return str;
					},
					forEach: function(arr, _29b, _29c) {
						if (!arr || !arr.length) {
							return;
						}
						for (var i = 0, l = arr.length; i < l; ++i) {
							_29b.call(_29c || window, arr[i], i, arr);
						}
					},
					byId: function(id, doc) {
						if (typeof id == "string") {
							return (doc || document).getElementById(id);
						} else {
							return id;
						}
					},
					doc: document,
					NodeList: Array
				};
				var n = navigator;
				var dua = n.userAgent;
				var dav = n.appVersion;
				var tv = parseFloat(dav);
				acme.isOpera = (dua.indexOf("Opera") >= 0) ? tv: undefined;
				acme.isKhtml = (dav.indexOf("Konqueror") >= 0) ? tv: undefined;
				acme.isWebKit = parseFloat(dua.split("WebKit/")[1]) || undefined;
				acme.isChrome = parseFloat(dua.split("Chrome/")[1]) || undefined;
				var _29d = Math.max(dav.indexOf("WebKit"), dav.indexOf("Safari"), 0);
				if (_29d && !acme.isChrome) {
					acme.isSafari = parseFloat(dav.split("Version/")[1]);
					if (!acme.isSafari || parseFloat(dav.substr(_29d + 7)) <= 419.3) {
						acme.isSafari = 2;
					}
				}
				if (document.all && !acme.isOpera) {
					acme.isIE = parseFloat(dav.split("MSIE ")[1]) || undefined;
				}
				Array._wrap = function(arr) {
					return arr;
				};
				return acme;
			};
			if (this["dojo"]) {
				dojo.provide("dojo._base.query");
				_226(this["queryPortability"] || this["acme"] || dojo);
			} else {
				_226(this["queryPortability"] || this["acme"] || _29a());
			}
		})();
	}
	if (!dojo._hasResource["dojo._base.xhr"]) {
		dojo._hasResource["dojo._base.xhr"] = true;
		dojo.provide("dojo._base.xhr");
		(function() {
			var _29e = dojo,
			cfg = _29e.config;
			function _29f(obj, name, _2a0) {
				if (_2a0 === null) {
					return;
				}
				var val = obj[name];
				if (typeof val == "string") {
					obj[name] = [val, _2a0];
				} else {
					if (_29e.isArray(val)) {
						val.push(_2a0);
					} else {
						obj[name] = _2a0;
					}
				}
			};
			dojo.fieldToObject = function(_2a1) {
				var ret = null;
				var item = _29e.byId(_2a1);
				if (item) {
					var _2a2 = item.name;
					var type = (item.type || "").toLowerCase();
					if (_2a2 && type && !item.disabled) {
						if (type == "radio" || type == "checkbox") {
							if (item.checked) {
								ret = item.value;
							}
						} else {
							if (item.multiple) {
								ret = [];
								_29e.query("option", item).forEach(function(opt) {
									if (opt.selected) {
										ret.push(opt.value);
									}
								});
							} else {
								ret = item.value;
							}
						}
					}
				}
				return ret;
			};
			dojo.formToObject = function(_2a3) {
				var ret = {};
				var _2a4 = "file|submit|image|reset|button|";
				_29e.forEach(dojo.byId(_2a3).elements,
				function(item) {
					var _2a5 = item.name;
					var type = (item.type || "").toLowerCase();
					if (_2a5 && type && _2a4.indexOf(type) == -1 && !item.disabled) {
						_29f(ret, _2a5, _29e.fieldToObject(item));
						if (type == "image") {
							ret[_2a5 + ".x"] = ret[_2a5 + ".y"] = ret[_2a5].x = ret[_2a5].y = 0;
						}
					}
				});
				return ret;
			};
			dojo.objectToQuery = function(map) {
				var enc = encodeURIComponent;
				var _2a6 = [];
				var _2a7 = {};
				for (var name in map) {
					var _2a8 = map[name];
					if (_2a8 != _2a7[name]) {
						var _2a9 = enc(name) + "=";
						if (_29e.isArray(_2a8)) {
							for (var i = 0; i < _2a8.length; i++) {
								_2a6.push(_2a9 + enc(_2a8[i]));
							}
						} else {
							_2a6.push(_2a9 + enc(_2a8));
						}
					}
				}
				return _2a6.join("&");
			};
			dojo.formToQuery = function(_2aa) {
				return _29e.objectToQuery(_29e.formToObject(_2aa));
			};
			dojo.formToJson = function(_2ab, _2ac) {
				return _29e.toJson(_29e.formToObject(_2ab), _2ac);
			};
			dojo.queryToObject = function(str) {
				var ret = {};
				var qp = str.split("&");
				var dec = decodeURIComponent;
				_29e.forEach(qp,
				function(item) {
					if (item.length) {
						var _2ad = item.split("=");
						var name = dec(_2ad.shift());
						var val = dec(_2ad.join("="));
						if (typeof ret[name] == "string") {
							ret[name] = [ret[name]];
						}
						if (_29e.isArray(ret[name])) {
							ret[name].push(val);
						} else {
							ret[name] = val;
						}
					}
				});
				return ret;
			};
			dojo._blockAsync = false;
			var _2ae = _29e._contentHandlers = dojo.contentHandlers = {
				text: function(xhr) {
					return xhr.responseText;
				},
				json: function(xhr) {
					return _29e.fromJson(xhr.responseText || null);
				},
				"json-comment-filtered": function(xhr) {
					if (!dojo.config.useCommentedJson) {}
					var _2af = xhr.responseText;
					var _2b0 = _2af.indexOf("/*");
					var _2b1 = _2af.lastIndexOf("*/");
					if (_2b0 == -1 || _2b1 == -1) {
						throw new Error("JSON was not comment filtered");
					}
					return _29e.fromJson(_2af.substring(_2b0 + 2, _2b1));
				},
				javascript: function(xhr) {
					return _29e.eval(xhr.responseText);
				},
				xml: function(xhr) {
					var _2b2 = xhr.responseXML;
					if (_29e.isIE && (!_2b2 || !_2b2.documentElement)) {
						var ms = function(n) {
							return "MSXML" + n + ".DOMDocument";
						};
						var dp = ["Microsoft.XMLDOM", ms(6), ms(4), ms(3), ms(2)];
						_29e.some(dp,
						function(p) {
							try {
								var dom = new ActiveXObject(p);
								dom.async = false;
								dom.loadXML(xhr.responseText);
								_2b2 = dom;
							} catch(e) {
								return false;
							}
							return true;
						});
					}
					return _2b2;
				},
				"json-comment-optional": function(xhr) {
					if (xhr.responseText && /^[^{\[]*\/\*/.test(xhr.responseText)) {
						return _2ae["json-comment-filtered"](xhr);
					} else {
						return _2ae["json"](xhr);
					}
				}
			};
			dojo._ioSetArgs = function(args, _2b3, _2b4, _2b5) {
				var _2b6 = {
					args: args,
					url: args.url
				};
				var _2b7 = null;
				if (args.form) {
					var form = _29e.byId(args.form);
					var _2b8 = form.getAttributeNode("action");
					_2b6.url = _2b6.url || (_2b8 ? _2b8.value: null);
					_2b7 = _29e.formToObject(form);
				}
				var _2b9 = [{}];
				if (_2b7) {
					_2b9.push(_2b7);
				}
				if (args.content) {
					_2b9.push(args.content);
				}
				if (args.preventCache) {
					_2b9.push({
						"dojo.preventCache": new Date().valueOf()
					});
				}
				_2b6.query = _29e.objectToQuery(_29e.mixin.apply(null, _2b9));
				_2b6.handleAs = args.handleAs || "text";
				var d = new _29e.Deferred(_2b3);
				d.addCallbacks(_2b4,
				function(_2ba) {
					return _2b5(_2ba, d);
				});
				var ld = args.load;
				if (ld && _29e.isFunction(ld)) {
					d.addCallback(function(_2bb) {
						return ld.call(args, _2bb, _2b6);
					});
				}
				var err = args.error;
				if (err && _29e.isFunction(err)) {
					d.addErrback(function(_2bc) {
						return err.call(args, _2bc, _2b6);
					});
				}
				var _2bd = args.handle;
				if (_2bd && _29e.isFunction(_2bd)) {
					d.addBoth(function(_2be) {
						return _2bd.call(args, _2be, _2b6);
					});
				}
				if (cfg.ioPublish && _29e.publish && _2b6.args.ioPublish !== false) {
					d.addCallbacks(function(res) {
						_29e.publish("/dojo/io/load", [d, res]);
						return res;
					},
					function(res) {
						_29e.publish("/dojo/io/error", [d, res]);
						return res;
					});
					d.addBoth(function(res) {
						_29e.publish("/dojo/io/done", [d, res]);
						return res;
					});
				}
				d.ioArgs = _2b6;
				return d;
			};
			var _2bf = function(dfd) {
				dfd.canceled = true;
				var xhr = dfd.ioArgs.xhr;
				var _2c0 = typeof xhr.abort;
				if (_2c0 == "function" || _2c0 == "object" || _2c0 == "unknown") {
					xhr.abort();
				}
				var err = dfd.ioArgs.error;
				if (!err) {
					err = new Error("xhr cancelled");
					err.dojoType = "cancel";
				}
				return err;
			};
			var _2c1 = function(dfd) {
				var ret = _2ae[dfd.ioArgs.handleAs](dfd.ioArgs.xhr);
				return ret === undefined ? null: ret;
			};
			var _2c2 = function(_2c3, dfd) {
				if (!dfd.ioArgs.args.failOk) {}
				return _2c3;
			};
			var _2c4 = null;
			var _2c5 = [];
			var _2c6 = 0;
			var _2c7 = function(dfd) {
				if (_2c6 <= 0) {
					_2c6 = 0;
					if (cfg.ioPublish && _29e.publish && (!dfd || dfd && dfd.ioArgs.args.ioPublish !== false)) {
						_29e.publish("/dojo/io/stop");
					}
				}
			};
			var _2c8 = function() {
				var now = (new Date()).getTime();
				if (!_29e._blockAsync) {
					for (var i = 0, tif; i < _2c5.length && (tif = _2c5[i]); i++) {
						var dfd = tif.dfd;
						var func = function() {
							if (!dfd || dfd.canceled || !tif.validCheck(dfd)) {
								_2c5.splice(i--, 1);
								_2c6 -= 1;
							} else {
								if (tif.ioCheck(dfd)) {
									_2c5.splice(i--, 1);
									tif.resHandle(dfd);
									_2c6 -= 1;
								} else {
									if (dfd.startTime) {
										if (dfd.startTime + (dfd.ioArgs.args.timeout || 0) < now) {
											_2c5.splice(i--, 1);
											var err = new Error("timeout exceeded");
											err.dojoType = "timeout";
											dfd.errback(err);
											dfd.cancel();
											_2c6 -= 1;
										}
									}
								}
							}
						};
						if (dojo.config.debugAtAllCosts) {
							func.call(this);
						} else {
							try {
								func.call(this);
							} catch(e) {
								dfd.errback(e);
							}
						}
					}
				}
				_2c7(dfd);
				if (!_2c5.length) {
					clearInterval(_2c4);
					_2c4 = null;
					return;
				}
			};
			dojo._ioCancelAll = function() {
				try {
					_29e.forEach(_2c5,
					function(i) {
						try {
							i.dfd.cancel();
						} catch(e) {}
					});
				} catch(e) {}
			};
			if (_29e.isIE) {
				_29e.addOnWindowUnload(_29e._ioCancelAll);
			}
			_29e._ioNotifyStart = function(dfd) {
				if (cfg.ioPublish && _29e.publish && dfd.ioArgs.args.ioPublish !== false) {
					if (!_2c6) {
						_29e.publish("/dojo/io/start");
					}
					_2c6 += 1;
					_29e.publish("/dojo/io/send", [dfd]);
				}
			};
			_29e._ioWatch = function(dfd, _2c9, _2ca, _2cb) {
				var args = dfd.ioArgs.args;
				if (args.timeout) {
					dfd.startTime = (new Date()).getTime();
				}
				_2c5.push({
					dfd: dfd,
					validCheck: _2c9,
					ioCheck: _2ca,
					resHandle: _2cb
				});
				if (!_2c4) {
					_2c4 = setInterval(_2c8, 50);
				}
				if (args.sync) {
					_2c8();
				}
			};
			var _2cc = "application/x-www-form-urlencoded";
			var _2cd = function(dfd) {
				return dfd.ioArgs.xhr.readyState;
			};
			var _2ce = function(dfd) {
				return 4 == dfd.ioArgs.xhr.readyState;
			};
			var _2cf = function(dfd) {
				var xhr = dfd.ioArgs.xhr;
				if (_29e._isDocumentOk(xhr)) {
					dfd.callback(dfd);
				} else {
					var err = new Error("Unable to load " + dfd.ioArgs.url + " status:" + xhr.status);
					err.status = xhr.status;
					err.responseText = xhr.responseText;
					dfd.errback(err);
				}
			};
			dojo._ioAddQueryToUrl = function(_2d0) {
				if (_2d0.query.length) {
					_2d0.url += (_2d0.url.indexOf("?") == -1 ? "?": "&") + _2d0.query;
					_2d0.query = null;
				}
			};
			dojo.xhr = function(_2d1, args, _2d2) {
				var dfd = _29e._ioSetArgs(args, _2bf, _2c1, _2c2);
				var _2d3 = dfd.ioArgs;
				var xhr = _2d3.xhr = _29e._xhrObj(_2d3.args);
				if (!xhr) {
					dfd.cancel();
					return dfd;
				}
				if ("postData" in args) {
					_2d3.query = args.postData;
				} else {
					if ("putData" in args) {
						_2d3.query = args.putData;
					} else {
						if ("rawBody" in args) {
							_2d3.query = args.rawBody;
						} else {
							if ((arguments.length > 2 && !_2d2) || "POST|PUT".indexOf(_2d1.toUpperCase()) == -1) {
								_29e._ioAddQueryToUrl(_2d3);
							}
						}
					}
				}
				xhr.open(_2d1, _2d3.url, args.sync !== true, args.user || undefined, args.password || undefined);
				if (args.headers) {
					for (var hdr in args.headers) {
						if (hdr.toLowerCase() === "content-type" && !args.contentType) {
							args.contentType = args.headers[hdr];
						} else {
							if (args.headers[hdr]) {
								xhr.setRequestHeader(hdr, args.headers[hdr]);
							}
						}
					}
				}
				
			};
			dojo.xhrGet = function(args) {
				return _29e.xhr("GET", args);
			};
			dojo.rawXhrPost = dojo.xhrPost = function(args) {
				return _29e.xhr("POST", args, true);
			};
			dojo.rawXhrPut = dojo.xhrPut = function(args) {
				return _29e.xhr("PUT", args, true);
			};
			dojo.xhrDelete = function(args) {
				return _29e.xhr("DELETE", args);
			};
		})();
	}
	if (!dojo._hasResource["dojo._base.fx"]) {
		dojo._hasResource["dojo._base.fx"] = true;
		dojo.provide("dojo._base.fx");
		(function() {
			var d = dojo;
			var _2d4 = d._mixin;
			dojo._Line = function(_2d5, end) {
				this.start = _2d5;
				this.end = end;
			};
			dojo._Line.prototype.getValue = function(n) {
				return ((this.end - this.start) * n) + this.start;
			};
			dojo.Animation = function(args) {
				_2d4(this, args);
				if (d.isArray(this.curve)) {
					this.curve = new d._Line(this.curve[0], this.curve[1]);
				}
			};
			d._Animation = d.Animation;
			d.extend(dojo.Animation, {
				duration: 350,
				repeat: 0,
				rate: 20,
				_percent: 0,
				_startRepeatCount: 0,
				_getStep: function() {
					var _2d6 = this._percent,
					_2d7 = this.easing;
					return _2d7 ? _2d7(_2d6) : _2d6;
				},
				_fire: function(evt, args) {
					var a = args || [];
					if (this[evt]) {
						if (d.config.debugAtAllCosts) {
							this[evt].apply(this, a);
						} else {
							try {
								this[evt].apply(this, a);
							} catch(e) {}
						}
					}
					return this;
				},
				play: function(_2d8, _2d9) {
					var _2da = this;
					if (_2da._delayTimer) {
						_2da._clearTimer();
					}
					if (_2d9) {
						_2da._stopTimer();
						_2da._active = _2da._paused = false;
						_2da._percent = 0;
					} else {
						if (_2da._active && !_2da._paused) {
							return _2da;
						}
					}
					_2da._fire("beforeBegin", [_2da.node]);
					var de = _2d8 || _2da.delay,
					_2db = dojo.hitch(_2da, "_play", _2d9);
					if (de > 0) {
						_2da._delayTimer = setTimeout(_2db, de);
						return _2da;
					}
					_2db();
					return _2da;
				},
				_play: function(_2dc) {
					var _2dd = this;
					if (_2dd._delayTimer) {
						_2dd._clearTimer();
					}
					_2dd._startTime = new Date().valueOf();
					if (_2dd._paused) {
						_2dd._startTime -= _2dd.duration * _2dd._percent;
					}
					_2dd._active = true;
					_2dd._paused = false;
					var _2de = _2dd.curve.getValue(_2dd._getStep());
					if (!_2dd._percent) {
						if (!_2dd._startRepeatCount) {
							_2dd._startRepeatCount = _2dd.repeat;
						}
						_2dd._fire("onBegin", [_2de]);
					}
					_2dd._fire("onPlay", [_2de]);
					_2dd._cycle();
					return _2dd;
				},
				pause: function() {
					var _2df = this;
					if (_2df._delayTimer) {
						_2df._clearTimer();
					}
					_2df._stopTimer();
					if (!_2df._active) {
						return _2df;
					}
					_2df._paused = true;
					_2df._fire("onPause", [_2df.curve.getValue(_2df._getStep())]);
					return _2df;
				},
				gotoPercent: function(_2e0, _2e1) {
					var _2e2 = this;
					_2e2._stopTimer();
					_2e2._active = _2e2._paused = true;
					_2e2._percent = _2e0;
					if (_2e1) {
						_2e2.play();
					}
					return _2e2;
				},
				stop: function(_2e3) {
					var _2e4 = this;
					if (_2e4._delayTimer) {
						_2e4._clearTimer();
					}
					if (!_2e4._timer) {
						return _2e4;
					}
					_2e4._stopTimer();
					if (_2e3) {
						_2e4._percent = 1;
					}
					_2e4._fire("onStop", [_2e4.curve.getValue(_2e4._getStep())]);
					_2e4._active = _2e4._paused = false;
					return _2e4;
				},
				status: function() {
					if (this._active) {
						return this._paused ? "paused": "playing";
					}
					return "stopped";
				},
				_cycle: function() {
					var _2e5 = this;
					if (_2e5._active) {
						var curr = new Date().valueOf();
						var step = (curr - _2e5._startTime) / (_2e5.duration);
						if (step >= 1) {
							step = 1;
						}
						_2e5._percent = step;
						if (_2e5.easing) {
							step = _2e5.easing(step);
						}
						_2e5._fire("onAnimate", [_2e5.curve.getValue(step)]);
						if (_2e5._percent < 1) {
							_2e5._startTimer();
						} else {
							_2e5._active = false;
							if (_2e5.repeat > 0) {
								_2e5.repeat--;
								_2e5.play(null, true);
							} else {
								if (_2e5.repeat == -1) {
									_2e5.play(null, true);
								} else {
									if (_2e5._startRepeatCount) {
										_2e5.repeat = _2e5._startRepeatCount;
										_2e5._startRepeatCount = 0;
									}
								}
							}
							_2e5._percent = 0;
							_2e5._fire("onEnd", [_2e5.node]); ! _2e5.repeat && _2e5._stopTimer();
						}
					}
					return _2e5;
				},
				_clearTimer: function() {
					clearTimeout(this._delayTimer);
					delete this._delayTimer;
				}
			});
			var ctr = 0,
			_2e6 = null,
			_2e7 = {
				run: function() {}
			};
			d.extend(d.Animation, {
				_startTimer: function() {
					if (!this._timer) {
						this._timer = d.connect(_2e7, "run", this, "_cycle");
						ctr++;
					}
					if (!_2e6) {
						_2e6 = setInterval(d.hitch(_2e7, "run"), this.rate);
					}
				},
				_stopTimer: function() {
					if (this._timer) {
						d.disconnect(this._timer);
						this._timer = null;
						ctr--;
					}
					if (ctr <= 0) {
						clearInterval(_2e6);
						_2e6 = null;
						ctr = 0;
					}
				}
			});
			var _2e8 = d.isIE ?
			function(node) {
				var ns = node.style;
				if (!ns.width.length && d.style(node, "width") == "auto") {
					ns.width = "auto";
				}
			}: function() {};
			dojo._fade = function(args) {
				args.node = d.byId(args.node);
				var _2e9 = _2d4({
					properties: {}
				},
				args),
				_2ea = (_2e9.properties.opacity = {});
				_2ea.start = !("start" in _2e9) ?
				function() {
					return + d.style(_2e9.node, "opacity") || 0;
				}: _2e9.start;
				_2ea.end = _2e9.end;
				var anim = d.animateProperty(_2e9);
				d.connect(anim, "beforeBegin", d.partial(_2e8, _2e9.node));
				return anim;
			};
			dojo.fadeIn = function(args) {
				return d._fade(_2d4({
					end: 1
				},
				args));
			};
			dojo.fadeOut = function(args) {
				return d._fade(_2d4({
					end: 0
				},
				args));
			};
			dojo._defaultEasing = function(n) {
				return 0.5 + ((Math.sin((n + 1.5) * Math.PI)) / 2);
			};
			var _2eb = function(_2ec) {
				this._properties = _2ec;
				for (var p in _2ec) {
					var prop = _2ec[p];
					if (prop.start instanceof d.Color) {
						prop.tempColor = new d.Color();
					}
				}
			};
			_2eb.prototype.getValue = function(r) {
				var ret = {};
				for (var p in this._properties) {
					var prop = this._properties[p],
					_2ed = prop.start;
					if (_2ed instanceof d.Color) {
						ret[p] = d.blendColors(_2ed, prop.end, r, prop.tempColor).toCss();
					} else {
						if (!d.isArray(_2ed)) {
							ret[p] = ((prop.end - _2ed) * r) + _2ed + (p != "opacity" ? prop.units || "px": 0);
						}
					}
				}
				return ret;
			};
			dojo.animateProperty = function(args) {
				var n = args.node = d.byId(args.node);
				if (!args.easing) {
					args.easing = d._defaultEasing;
				}
				var anim = new d.Animation(args);
				d.connect(anim, "beforeBegin", anim,
				function() {
					var pm = {};
					for (var p in this.properties) {
						if (p == "width" || p == "height") {
							this.node.display = "block";
						}
						var prop = this.properties[p];
						if (d.isFunction(prop)) {
							prop = prop(n);
						}
						prop = pm[p] = _2d4({},
						(d.isObject(prop) ? prop: {
							end: prop
						}));
						if (d.isFunction(prop.start)) {
							prop.start = prop.start(n);
						}
						if (d.isFunction(prop.end)) {
							prop.end = prop.end(n);
						}
						var _2ee = (p.toLowerCase().indexOf("color") >= 0);
						function _2ef(node, p) {
							var v = {
								height: node.offsetHeight,
								width: node.offsetWidth
							} [p];
							if (v !== undefined) {
								return v;
							}
							v = d.style(node, p);
							return (p == "opacity") ? +v: (_2ee ? v: parseFloat(v));
						};
						if (! ("end" in prop)) {
							prop.end = _2ef(n, p);
						} else {
							if (! ("start" in prop)) {
								prop.start = _2ef(n, p);
							}
						}
						if (_2ee) {
							prop.start = new d.Color(prop.start);
							prop.end = new d.Color(prop.end);
						} else {
							prop.start = (p == "opacity") ? +prop.start: parseFloat(prop.start);
						}
					}
					this.curve = new _2eb(pm);
				});
				d.connect(anim, "onAnimate", d.hitch(d, "style", anim.node));
				return anim;
			};
			dojo.anim = function(node, _2f0, _2f1, _2f2, _2f3, _2f4) {
				return d.animateProperty({
					node: node,
					duration: _2f1 || d.Animation.prototype.duration,
					properties: _2f0,
					easing: _2f2,
					onEnd: _2f3
				}).play(_2f4 || 0);
			};
		})();
	}
	if (!dojo._hasResource["dojo.i18n"]) {
		dojo._hasResource["dojo.i18n"] = true;
		dojo.provide("dojo.i18n");
		dojo.getObject("i18n", true, dojo);
		dojo.i18n.getLocalization = dojo.i18n.getLocalization ||
		function(_2f5, _2f6, _2f7) {
			_2f7 = dojo.i18n.normalizeLocale(_2f7);
			var _2f8 = _2f7.split("-");
			var _2f9 = [_2f5, "nls", _2f6].join(".");
			var _2fa = dojo._loadedModules[_2f9];
			if (_2fa) {
				var _2fb;
				for (var i = _2f8.length; i > 0; i--) {
					var loc = _2f8.slice(0, i).join("_");
					if (_2fa[loc]) {
						_2fb = _2fa[loc];
						break;
					}
				}
				if (!_2fb) {
					_2fb = _2fa.ROOT;
				}
				if (_2fb) {
					var _2fc = function() {};
					_2fc.prototype = _2fb;
					return new _2fc();
				}
			}
			throw new Error("Bundle not found: " + _2f6 + " in " + _2f5 + " , locale=" + _2f7);
		};
		dojo.i18n.normalizeLocale = function(_2fd) {
			var _2fe = _2fd ? _2fd.toLowerCase() : dojo.locale;
			if (_2fe == "root") {
				_2fe = "ROOT";
			}
			return _2fe;
		};
		dojo.i18n._requireLocalization = function(_2ff, _300, _301, _302) {
			var _303 = dojo.i18n.normalizeLocale(_301);
			var _304 = [_2ff, "nls", _300].join(".");
			var _305 = "";
			if (_302) {
				var _306 = _302.split(",");
				for (var i = 0; i < _306.length; i++) {
					if (_303["indexOf"](_306[i]) == 0) {
						if (_306[i].length > _305.length) {
							_305 = _306[i];
						}
					}
				}
				if (!_305) {
					_305 = "ROOT";
				}
			}
			var _307 = _302 ? _305: _303;
			var _308 = dojo._loadedModules[_304];
			var _309 = null;
			if (_308) {
				if (dojo.config.localizationComplete && _308._built) {
					return;
				}
				var _30a = _307.replace(/-/g, "_");
				var _30b = _304 + "." + _30a;
				_309 = dojo._loadedModules[_30b];
			}
			if (!_309) {
				_308 = dojo["provide"](_304);
				var syms = dojo._getModuleSymbols(_2ff);
				var _30c = syms.concat("nls").join("/");
				var _30d;
				dojo.i18n._searchLocalePath(_307, _302,
				function(loc) {
					var _30e = loc.replace(/-/g, "_");
					var _30f = _304 + "." + _30e;
					var _310 = false;
					if (!dojo._loadedModules[_30f]) {
						dojo["provide"](_30f);
						var _311 = [_30c];
						if (loc != "ROOT") {
							_311.push(loc);
						}
						_311.push(_300);
						var _312 = _311.join("/") + ".js";
						_310 = dojo._loadPath(_312, null,
						function(hash) {
							hash = hash.root || hash;
							var _313 = function() {};
							_313.prototype = _30d;
							_308[_30e] = new _313();
							for (var j in hash) {
								_308[_30e][j] = hash[j];
							}
						});
					} else {
						_310 = true;
					}
					if (_310 && _308[_30e]) {
						_30d = _308[_30e];
					} else {
						_308[_30e] = _30d;
					}
					if (_302) {
						return true;
					}
				});
			}
			if (_302 && _303 != _305) {
				_308[_303.replace(/-/g, "_")] = _308[_305.replace(/-/g, "_")];
			}
		};
		(function() {
			var _314 = dojo.config.extraLocale;
			if (_314) {
				if (!_314 instanceof Array) {
					_314 = [_314];
				}
				var req = dojo.i18n._requireLocalization;
				dojo.i18n._requireLocalization = function(m, b, _315, _316) {
					req(m, b, _315, _316);
					if (_315) {
						return;
					}
					for (var i = 0; i < _314.length; i++) {
						req(m, b, _314[i], _316);
					}
				};
			}
		})();
		dojo.i18n._searchLocalePath = function(_317, down, _318) {
			_317 = dojo.i18n.normalizeLocale(_317);
			var _319 = _317.split("-");
			var _31a = [];
			for (var i = _319.length; i > 0; i--) {
				_31a.push(_319.slice(0, i).join("-"));
			}
			_31a.push(false);
			if (down) {
				_31a.reverse();
			}
			for (var j = _31a.length - 1; j >= 0; j--) {
				var loc = _31a[j] || "ROOT";
				var stop = _318(loc);
				if (stop) {
					break;
				}
			}
		};
		dojo.i18n._preloadLocalizations = function(_31b, _31c) {
			function _31d(_31e) {
				_31e = dojo.i18n.normalizeLocale(_31e);
				dojo.i18n._searchLocalePath(_31e, true,
				function(loc) {
					for (var i = 0; i < _31c.length; i++) {
						if (_31c[i] == loc) {
							dojo["require"](_31b + "_" + loc);
							return true;
						}
					}
					return false;
				});
			};
			_31d();
			var _31f = dojo.config.extraLocale || [];
			for (var i = 0; i < _31f.length; i++) {
				_31d(_31f[i]);
			}
		};
	}
	if (!dojo._hasResource["dojo._base.browser"]) {
		dojo._hasResource["dojo._base.browser"] = true;
		dojo.provide("dojo._base.browser");
		dojo.forEach(dojo.config.require,
		function(i) {
			dojo["require"](i);
		});
	}
	if (!dojo._hasResource["dojo._base"]) {
		dojo._hasResource["dojo._base"] = true;
		dojo.provide("dojo._base");
	}
	if (dojo.isBrowser && (document.readyState === "complete" || dojo.config.afterOnLoad)) {
		window.setTimeout(dojo._loadInit, 100);
	}
})();

if (!dojo._hasResource["famousweb.config"]) {
	dojo._hasResource["famousweb.config"] = true;
	dojo.provide("famousweb.config");
	famousweb.config.set = function(_1, _2) {
		if (dojo.isString(_1)) {
			dojo.setObject(_1, _2, famousweb.config);
		} else {
			if (dojo.isArray(_1)) {
				dojo.setObject(_1.join("."), _2, famousweb.config);
			} else {
				if (dojo.isObject(_1)) {
					for (var _3 in _1) {
						if (dojo.isObject(_1[_3]) && !dojo.isArray(_1[_3])) {
							famousweb.config[_3] = dojo.mixin(famousweb.config[_3], _1[_3]);
						} else {
							famousweb.config.set([_3], _1[_3]);
						}
					}
				}
			}
		}
	};
	famousweb.config.get = function(_4) {
		if (dojo.isArray(_4)) {
			_4 = _4.join(".");
		}
		return dojo.getObject(_4, false, famousweb.config);
	};
	famousweb.config.parseMetaTags = function() {
		if (dojo.byId("famous-top") && dojo.hasClass("famous-top", "famous-popup")) {
			famousweb.config.dynnav.enabled = false;
		}
		var _5 = function(_6) {
			if (_6 == "true") {
				return true;
			}
			if (_6 == "false") {
				return false;
			}
			if (parseFloat(_6) == _6) {
				return parseFloat(_6);
			}
			return _6;
		};
		for (var _7 in famousweb.meta) {
			if (_7.indexOf("famousweb_config_") === 0) {
				var _8 = _7.substring(11).replace("_", ".");
				var _9 = famousweb.meta[_7];
				var _a = _9.split("||");
				for (var i = 0, j = _a.length; i < j; i++) {
					var _b = _a[i].split(":");
					if (_b.length == 1) {
						famousweb.config.set(_8, _5(_b[0]));
					} else {
						var _c = _b.shift();
						if (_b.length == 1) {
							famousweb.config.set([_8, _c], _5(_b[0]));
						} else {
							famousweb.config.set([_8, _c], _b);
						}
					}
				}
			}
		}
	};
}
if (!dojo._hasResource["famousweb.www.config"]) {
	dojo._hasResource["famousweb.www.config"] = true;
	dojo.provide("famousweb.www.config");
	dojo.mixin(famousweb.config, {
		config: "www",
		usedSettings: "production",
		forced: false,
		dataUrl: "//1.www.s81c.com/common/js/dynamicnav/www/",
		dynNavBaseUrl: "https://www.famous.com/gateway/?",
		annotatorServUrl: "http://connect.famous.com/transform/public/service/common_profile/profile/shared/",
		imageUrl: "//1.www.s81c.com/i/v17/",
		timeout: 10000,
		dynnav: {
			enabled: true
		},
		lazyload: {},
		signin: {
			enabled: true,
			overlay: true,
			formAction: "https://www-304.famous.com/pkmslogin.form",
			signoutUrl: "https://www-304.famous.com/pkmslogout?page=http://www.famous.com/account/${cc}/${lc}/signout.html",
			signinUrl: "https://www.famous.com/gss/instantprofile/InstantSignin?",
			registerUrl: "https://www.famous.com/gss/instantprofile/InstantRegisterServlet?requestType=registerPart1&",
			codeRepository: "//1.www.s81c.com/common/v17/register/${NAME}.js"
		},
		register: {},
		footer: {
			enabled: true
		},
		footermenu: {
			enabled: true
		},
		megamenu: {
			enabled: true,
			linksonly: false,
			disabledLocales: ["ilhe"],
			enabledLocales: ["auen", "brpt", "caen", "cafr", "cnzh", "frfr", "dede", "itit", "inen", "jpja", "krko", "ruru", "eses", "uken", "usen"],
			maxColumns: 6,
			maxRows: 8,
			noScroll: false,
			minimizeByDefault: false,
			icons: "none"
		},
		easyaccess: {
			enabled: false,
			lifetime: 43200
		},
		merchandising: {
			enabled: true
		},
		greeting: {
			enabled: true,
			signinWidget: "famousweb.dynnav.signinWidget"
		},
		localeselector: {
			enabled: false,
			maxitems: 12
		},
		video: {
			enabled: true
		},
		myinterests: {
			enabled: false
		},
		sbs: {
			enabled: true
		},
		bitly: {
			login: "famousdigital",
			key: "R_1ed9169df98d3b072731d88ec80d18a7",
			timeout: 3000
		},
		noticechoice: {
			jsonUrl: "//1.www.s81c.com/common/translations"
		}
	});
	dojo.config.blankGif = "//1.www.s81c.com/i/c.gif";
	dojo.config.dojoBlankHtmlUrl = "//1.www.s81c.com/common/js/dojo/1.6/dojo/resources/blank.html";
	(function(_d) {
		_d = _d || "";
		if (_d) {
			famousweb.config.forced = true;
		}
		var _e = document.cookie.match(/__DOJO=(\w*)/);
		if (_e) {
			_d = _e[1];
		}
		_d = _d || "production";
		famousweb.config.usedSettings = _d;
		if (_d == "staging") {
			famousweb.config.set({
				dataUrl: "//1.wwwstage.s81c.com/common/js/dynamicnav/www/",
				dynNavBaseUrl: "https://www-sso.toronto.ca.famous.com/gateway/?",
				imageUrl: "//1.wwwstage.s81c.com/i/v17/",
				noticechoice: {
					jsonUrl: "//1.wwwstage.s81c.com/common/translations"
				},
				signin: {
					formAction: "https://www-wi-sso3.toronto.ca.famous.com:445/usrsrvc/account/userservices/ait/jsp/login.jsp?persistPage=true&PD-REFERER=none&error=&page=${page}",
					signoutUrl: "https://www-sso.toronto.ca.famous.com/pkmslogout?page=http://wwwstage.famous.com/account/${cc}/${lc}/signout.html",
					signinUrl: "https://wwwstage.famous.com/gss/instantprofile/InstantSignin?",
					registerUrl: "https://wwwstage.famous.com/gss/instantprofile/InstantRegisterServlet?requestType=registerPart1&",
					codeRepository: "//1.wwwstage.s81c.com/common/v17/register/${NAME}.js"
				}
			});
			if ( !! dojo.config.modulePaths) {
				var d = "//1.wwwstage.s81c.com";
				dojo.baseUrl = dojo.config.baseUrl = d + "/common/js/dojo/dojo/";
				dojo.config.modulePaths.famous = d + "/common/js/dojo/famous";
				for (var _f in dojo._modulePrefixes) {
					dojo._modulePrefixes[_f].value = dojo._modulePrefixes[_f].value.replace(/\/\/[\w\:\.]+\//, d + "/");
				}
			}
		}
		if (_d == "wwwpreview") {
			famousweb.config.set({
				dataUrl: "//1.wwwpreview.s81c.com/common/js/dynamicnav/www/",
				dynNavBaseUrl: "https://wwwbeta-sso.toronto.ca.famous.com:444/gateway/?",
				imageUrl: "//1.wwwpreview.s81c.com/i/v17/",
				noticechoice: {
					jsonUrl: "//1.wwwpreview.s81c.com/common/translations"
				},
				signin: {
					formAction: "https://www-wi-sso3.toronto.ca.famous.com:445/usrsrvc/account/userservices/ait/jsp/login.jsp?persistPage=true&PD-REFERER=none&error=&page=${page}",
					signoutUrl: "https://www-sso.toronto.ca.famous.com/pkmslogout?page=http://wwwstage.famous.com/account/${cc}/${lc}/signout.html",
					signinUrl: "https://wwwstage.famous.com/gss/instantprofile/InstantSignin?",
					registerUrl: "https://wwwstage.famous.com/gss/instantprofile/InstantRegisterServlet?requestType=registerPart1&",
					codeRepository: "//1.wwwpreview.s81c.com/common/v17/register/${NAME}.source.js"
				}
			});
			if ( !! dojo.config.modulePaths) {
				var d = "//wwwpreview.famous.com";
				dojo.baseUrl = dojo.config.baseUrl = d + "/common/js/dojo/dojo/";
				dojo.config.modulePaths.famous = d + "/common/js/dojo/famous";
				for (var _f in dojo._modulePrefixes) {
					dojo._modulePrefixes[_f].value = dojo._modulePrefixes[_f].value.replace(/\/\/[\w\:\.]+\//, d + "/");
				}
			}
		}
		if (_d == "development") {
			famousweb.config.set({
				dataUrl: "//1.wwwpreview.s81c.com/common/js/dynamicnav/www/",
				dynNavBaseUrl: "https://www-wi-sso3.toronto.ca.famous.com:445/gateway/?",
				imageUrl: "/i/v17/",
				annotatorServUrl: "https://iebalpha.cdtdp.toronto.ca.famous.com:3443/transform/public/service/common_profile_test/profile/shared/",
				noticechoice: {
					jsonUrl: "//ahdev.pok.famous.com/NewProfileService/privacyNc"
				},
				signin: {
					formAction: "https://www-sso.toronto.ca.famous.com/usrsrvc/account/userservices/ait/jsp/login.jsp?persistPage=true&PD-REFERER=none&error=&page=${page}",
					signoutUrl: "https://wwwbeta-sso.toronto.ca.famous.com:444/pkmslogout?page=http://v17ecmpreview.webmaster.famous.com/accoun/${cc}/${lc}/signout.html",
					signinUrl: "https://ahdev.pok.famous.com/gss/instantprofile/InstantSignin?",
					registerUrl: "https://ahdev.pok.famous.com/gss/instantprofile/InstantRegisterServlet?requestType=registerPart1&",
					codeRepository: "/common/v17/register/${NAME}.source.js"
				}
			});
		}
	})(dojo.config.famousForceConfig);
}
if (!dojo._hasResource["dijit._base.manager"]) {
	dojo._hasResource["dijit._base.manager"] = true;
	dojo.provide("dijit._base.manager");
	dojo.declare("dijit.WidgetSet", null, {
		constructor: function() {
			this._hash = {};
			this.length = 0;
		},
		add: function(_10) {
			if (this._hash[_10.id]) {
				throw new Error("Tried to register widget with id==" + _10.id + " but that id is already registered");
			}
			this._hash[_10.id] = _10;
			this.length++;
		},
		remove: function(id) {
			if (this._hash[id]) {
				delete this._hash[id];
				this.length--;
			}
		},
		forEach: function(_11, _12) {
			_12 = _12 || dojo.global;
			var i = 0,
			id;
			for (id in this._hash) {
				_11.call(_12, this._hash[id], i++, this._hash);
			}
			return this;
		},
		filter: function(_13, _14) {
			_14 = _14 || dojo.global;
			var res = new dijit.WidgetSet(),
			i = 0,
			id;
			for (id in this._hash) {
				var w = this._hash[id];
				if (_13.call(_14, w, i++, this._hash)) {
					res.add(w);
				}
			}
			return res;
		},
		byId: function(id) {
			return this._hash[id];
		},
		byClass: function(cls) {
			var res = new dijit.WidgetSet(),
			id,
			_15;
			for (id in this._hash) {
				_15 = this._hash[id];
				if (_15.declaredClass == cls) {
					res.add(_15);
				}
			}
			return res;
		},
		toArray: function() {
			var ar = [];
			for (var id in this._hash) {
				ar.push(this._hash[id]);
			}
			return ar;
		},
		map: function(_16, _17) {
			return dojo.map(this.toArray(), _16, _17);
		},
		every: function(_18, _19) {
			_19 = _19 || dojo.global;
			var x = 0,
			i;
			for (i in this._hash) {
				if (!_18.call(_19, this._hash[i], x++, this._hash)) {
					return false;
				}
			}
			return true;
		},
		some: function(_1a, _1b) {
			_1b = _1b || dojo.global;
			var x = 0,
			i;
			for (i in this._hash) {
				if (_1a.call(_1b, this._hash[i], x++, this._hash)) {
					return true;
				}
			}
			return false;
		}
	});
	(function() {
		dijit.registry = new dijit.WidgetSet();
		var _1c = dijit.registry._hash,
		_1d = dojo.attr,
		_1e = dojo.hasAttr,
		_1f = dojo.style;
		dijit.byId = function(id) {
			return typeof id == "string" ? _1c[id] : id;
		};
		var _20 = {};
		dijit.getUniqueId = function(_21) {
			var id;
			do {
				id = _21 + "_" + (_21 in _20 ? ++_20[_21] : _20[_21] = 0);
			} while ( _1c [ id ]);
			return dijit._scopeName == "dijit" ? id: dijit._scopeName + "_" + id;
		};
		dijit.findWidgets = function(_22) {
			var _23 = [];
			function _24(_25) {
				for (var _26 = _25.firstChild; _26; _26 = _26.nextSibling) {
					if (_26.nodeType == 1) {
						var _27 = _26.getAttribute("widgetId");
						if (_27) {
							var _28 = _1c[_27];
							if (_28) {
								_23.push(_28);
							}
						} else {
							_24(_26);
						}
					}
				}
			};
			_24(_22);
			return _23;
		};
		dijit._destroyAll = function() {
			dijit._curFocus = null;
			dijit._prevFocus = null;
			dijit._activeStack = [];
			dojo.forEach(dijit.findWidgets(dojo.body()),
			function(_29) {
				if (!_29._destroyed) {
					if (_29.destroyRecursive) {
						_29.destroyRecursive();
					} else {
						if (_29.destroy) {
							_29.destroy();
						}
					}
				}
			});
		};
		if (dojo.isIE) {
			dojo.addOnWindowUnload(function() {
				dijit._destroyAll();
			});
		}
		dijit.byNode = function(_2a) {
			return _1c[_2a.getAttribute("widgetId")];
		};
		dijit.getEnclosingWidget = function(_2b) {
			while (_2b) {
				var id = _2b.getAttribute && _2b.getAttribute("widgetId");
				if (id) {
					return _1c[id];
				}
				_2b = _2b.parentNode;
			}
			return null;
		};
		var _2c = (dijit._isElementShown = function(_2d) {
			var s = _1f(_2d);
			return (s.visibility != "hidden") && (s.visibility != "collapsed") && (s.display != "none") && (_1d(_2d, "type") != "hidden");
		});
		dijit.hasDefaultTabStop = function(_2e) {
			switch (_2e.nodeName.toLowerCase()) {
			case "a":
				return _1e(_2e, "href");
			case "area":
			case "button":
			case "input":
			case "object":
			case "select":
			case "textarea":
				return true;
			case "iframe":
				var _2f;
				try {
					var _30 = _2e.contentDocument;
					if ("designMode" in _30 && _30.designMode == "on") {
						return true;
					}
					_2f = _30.body;
				} catch(e1) {
					try {
						_2f = _2e.contentWindow.document.body;
					} catch(e2) {
						return false;
					}
				}
				return _2f.contentEditable == "true" || (_2f.firstChild && _2f.firstChild.contentEditable == "true");
			default:
				return _2e.contentEditable == "true";
			}
		};
		var _31 = (dijit.isTabNavigable = function(_32) {
			if (_1d(_32, "disabled")) {
				return false;
			} else {
				if (_1e(_32, "tabIndex")) {
					return _1d(_32, "tabIndex") >= 0;
				} else {
					return dijit.hasDefaultTabStop(_32);
				}
			}
		});
		dijit._getTabNavigable = function(_33) {
			var _34, _35, _36, _37, _38, _39, _3a = {};
			function _3b(_3c) {
				return _3c && _3c.tagName.toLowerCase() == "input" && _3c.type && _3c.type.toLowerCase() == "radio" && _3c.name && _3c.name.toLowerCase();
			};
			var _3d = function(_3e) {
				dojo.query("> *", _3e).forEach(function(_3f) {
					if ((dojo.isIE && _3f.scopeName !== "HTML") || !_2c(_3f)) {
						return;
					}
					if (_31(_3f)) {
						var _40 = _1d(_3f, "tabIndex");
						if (!_1e(_3f, "tabIndex") || _40 == 0) {
							if (!_34) {
								_34 = _3f;
							}
							_35 = _3f;
						} else {
							if (_40 > 0) {
								if (!_36 || _40 < _37) {
									_37 = _40;
									_36 = _3f;
								}
								if (!_38 || _40 >= _39) {
									_39 = _40;
									_38 = _3f;
								}
							}
						}
						var rn = _3b(_3f);
						if (dojo.attr(_3f, "checked") && rn) {
							_3a[rn] = _3f;
						}
					}
					if (_3f.nodeName.toUpperCase() != "SELECT") {
						_3d(_3f);
					}
				});
			};
			if (_2c(_33)) {
				_3d(_33);
			}
			function rs(_41) {
				return _3a[_3b(_41)] || _41;
			};
			return {
				first: rs(_34),
				last: rs(_35),
				lowest: rs(_36),
				highest: rs(_38)
			};
		};
		dijit.getFirstInTabbingOrder = function(_42) {
			var _43 = dijit._getTabNavigable(dojo.byId(_42));
			return _43.lowest ? _43.lowest: _43.first;
		};
		dijit.getLastInTabbingOrder = function(_44) {
			var _45 = dijit._getTabNavigable(dojo.byId(_44));
			return _45.last ? _45.last: _45.highest;
		};
		dijit.defaultDuration = dojo.config["defaultDuration"] || 200;
	})();
}
if (!dojo._hasResource["dojo.Stateful"]) {
	dojo._hasResource["dojo.Stateful"] = true;
	dojo.provide("dojo.Stateful");
	dojo.declare("dojo.Stateful", null, {
		postscript: function(_46) {
			if (_46) {
				dojo.mixin(this, _46);
			}
		},
		get: function(_47) {
			return this[_47];
		},
		set: function(_48, _49) {
			if (typeof _48 === "object") {
				for (var x in _48) {
					this.set(x, _48[x]);
				}
				return this;
			}
			var _4a = this[_48];
			this[_48] = _49;
			if (this._watchCallbacks) {
				this._watchCallbacks(_48, _4a, _49);
			}
			return this;
		},
		watch: function(_4b, _4c) {
			var _4d = this._watchCallbacks;
			if (!_4d) {
				var _4e = this;
				_4d = this._watchCallbacks = function(_4f, _50, _51, _52) {
					var _53 = function(_54) {
						if (_54) {
							_54 = _54.slice();
							for (var i = 0, l = _54.length; i < l; i++) {
								try {
									_54[i].call(_4e, _4f, _50, _51);
								} catch(e) {}
							}
						}
					};
					_53(_4d["_" + _4f]);
					if (!_52) {
						_53(_4d["*"]);
					}
				};
			}
			if (!_4c && typeof _4b === "function") {
				_4c = _4b;
				_4b = "*";
			} else {
				_4b = "_" + _4b;
			}
			var _55 = _4d[_4b];
			if (typeof _55 !== "object") {
				_55 = _4d[_4b] = [];
			}
			_55.push(_4c);
			return {
				unwatch: function() {
					_55.splice(dojo.indexOf(_55, _4c), 1);
				}
			};
		}
	});
}
if (!dojo._hasResource["dijit._WidgetBase"]) {
	dojo._hasResource["dijit._WidgetBase"] = true;
	dojo.provide("dijit._WidgetBase");
	(function() {
		dojo.declare("dijit._WidgetBase", dojo.Stateful, {
			id: "",
			lang: "",
			dir: "",
			"class": "",
			style: "",
			title: "",
			tooltip: "",
			baseClass: "",
			srcNodeRef: null,
			domNode: null,
			containerNode: null,
			attributeMap: {
				id: "",
				dir: "",
				lang: "",
				"class": "",
				style: "",
				title: ""
			},
			_blankGif: (dojo.config.blankGif || dojo.moduleUrl("dojo", "resources/blank.gif")).toString(),
			postscript: function(_56, _57) {
				this.create(_56, _57);
			},
			create: function(_58, _59) {
				this.srcNodeRef = dojo.byId(_59);
				this._connects = [];
				this._subscribes = [];
				if (this.srcNodeRef && (typeof this.srcNodeRef.id == "string")) {
					this.id = this.srcNodeRef.id;
				}
				if (_58) {
					this.params = _58;
					dojo._mixin(this, _58);
				}
				this.postMixInProperties();
				if (!this.id) {
					this.id = dijit.getUniqueId(this.declaredClass.replace(/\./g, "_"));
				}
				dijit.registry.add(this);
				this.buildRendering();
				if (this.domNode) {
					this._applyAttributes();
					var _5a = this.srcNodeRef;
					if (_5a && _5a.parentNode && this.domNode !== _5a) {
						_5a.parentNode.replaceChild(this.domNode, _5a);
					}
				}
				if (this.domNode) {
					this.domNode.setAttribute("widgetId", this.id);
				}
				this.postCreate();
				if (this.srcNodeRef && !this.srcNodeRef.parentNode) {
					delete this.srcNodeRef;
				}
				this._created = true;
			},
			_applyAttributes: function() {
				var _5b = function(_5c, _5d) {
					if ((_5d.params && _5c in _5d.params) || _5d[_5c]) {
						_5d.set(_5c, _5d[_5c]);
					}
				};
				for (var _5e in this.attributeMap) {
					_5b(_5e, this);
				}
				dojo.forEach(this._getSetterAttributes(),
				function(a) {
					if (! (a in this.attributeMap)) {
						_5b(a, this);
					}
				},
				this);
			},
			_getSetterAttributes: function() {
				var _5f = this.constructor;
				if (!_5f._setterAttrs) {
					var r = (_5f._setterAttrs = []),
					_60,
					_61 = _5f.prototype;
					for (var _62 in _61) {
						if (dojo.isFunction(_61[_62]) && (_60 = _62.match(/^_set([a-zA-Z]*)Attr$/)) && _60[1]) {
							r.push(_60[1].charAt(0).toLowerCase() + _60[1].substr(1));
						}
					}
				}
				return _5f._setterAttrs;
			},
			postMixInProperties: function() {},
			buildRendering: function() {
				if (!this.domNode) {
					this.domNode = this.srcNodeRef || dojo.create("div");
				}
				if (this.baseClass) {
					var _63 = this.baseClass.split(" ");
					if (!this.isLeftToRight()) {
						_63 = _63.concat(dojo.map(_63,
						function(_64) {
							return _64 + "Rtl";
						}));
					}
					dojo.addClass(this.domNode, _63);
				}
			},
			postCreate: function() {},
			startup: function() {
				this._started = true;
			},
			destroyRecursive: function(_65) {
				this._beingDestroyed = true;
				this.destroyDescendants(_65);
				this.destroy(_65);
			},
			destroy: function(_66) {
				this._beingDestroyed = true;
				this.uninitialize();
				var d = dojo,
				dfe = d.forEach,
				dun = d.unsubscribe;
				dfe(this._connects,
				function(_67) {
					dfe(_67, d.disconnect);
				});
				dfe(this._subscribes,
				function(_68) {
					dun(_68);
				});
				dfe(this._supportingWidgets || [],
				function(w) {
					if (w.destroyRecursive) {
						w.destroyRecursive();
					} else {
						if (w.destroy) {
							w.destroy();
						}
					}
				});
				this.destroyRendering(_66);
				dijit.registry.remove(this.id);
				this._destroyed = true;
			},
			destroyRendering: function(_69) {
				if (this.bgIframe) {
					this.bgIframe.destroy(_69);
					delete this.bgIframe;
				}
				if (this.domNode) {
					if (_69) {
						dojo.removeAttr(this.domNode, "widgetId");
					} else {
						dojo.destroy(this.domNode);
					}
					delete this.domNode;
				}
				if (this.srcNodeRef) {
					if (!_69) {
						dojo.destroy(this.srcNodeRef);
					}
					delete this.srcNodeRef;
				}
			},
			destroyDescendants: function(_6a) {
				dojo.forEach(this.getChildren(),
				function(_6b) {
					if (_6b.destroyRecursive) {
						_6b.destroyRecursive(_6a);
					}
				});
			},
			uninitialize: function() {
				return false;
			},
			_setClassAttr: function(_6c) {
				var _6d = this[this.attributeMap["class"] || "domNode"];
				dojo.replaceClass(_6d, _6c, this["class"]);
				this._set("class", _6c);
			},
			_setStyleAttr: function(_6e) {
				var _6f = this[this.attributeMap.style || "domNode"];
				if (dojo.isObject(_6e)) {
					dojo.style(_6f, _6e);
				} else {
					if (_6f.style.cssText) {
						_6f.style.cssText += "; " + _6e;
					} else {
						_6f.style.cssText = _6e;
					}
				}
				this._set("style", _6e);
			},
			_attrToDom: function(_70, _71) {
				var _72 = this.attributeMap[_70];
				dojo.forEach(dojo.isArray(_72) ? _72: [_72],
				function(_73) {
					var _74 = this[_73.node || _73 || "domNode"];
					var _75 = _73.type || "attribute";
					switch (_75) {
					case "attribute":
						if (dojo.isFunction(_71)) {
							_71 = dojo.hitch(this, _71);
						}
						var _76 = _73.attribute ? _73.attribute: (/^on[A-Z][a-zA-Z]*$/.test(_70) ? _70.toLowerCase() : _70);
						dojo.attr(_74, _76, _71);
						break;
					case "innerText":
						_74.innerHTML = "";
						_74.appendChild(dojo.doc.createTextNode(_71));
						break;
					case "innerHTML":
						_74.innerHTML = _71;
						break;
					case "class":
						dojo.replaceClass(_74, _71, this[_70]);
						break;
					}
				},
				this);
			},
			get: function(_77) {
				var _78 = this._getAttrNames(_77);
				return this[_78.g] ? this[_78.g]() : this[_77];
			},
			set: function(_79, _7a) {
				if (typeof _79 === "object") {
					for (var x in _79) {
						this.set(x, _79[x]);
					}
					return this;
				}
				var _7b = this._getAttrNames(_79);
				if (this[_7b.s]) {
					var _7c = this[_7b.s].apply(this, Array.prototype.slice.call(arguments, 1));
				} else {
					if (_79 in this.attributeMap) {
						this._attrToDom(_79, _7a);
					}
					this._set(_79, _7a);
				}
				return _7c || this;
			},
			_attrPairNames: {},
			_getAttrNames: function(_7d) {
				var apn = this._attrPairNames;
				if (apn[_7d]) {
					return apn[_7d];
				}
				var uc = _7d.charAt(0).toUpperCase() + _7d.substr(1);
				return (apn[_7d] = {
					n: _7d + "Node",
					s: "_set" + uc + "Attr",
					g: "_get" + uc + "Attr"
				});
			},
			_set: function(_7e, _7f) {
				var _80 = this[_7e];
				this[_7e] = _7f;
				if (this._watchCallbacks && this._created && _7f !== _80) {
					this._watchCallbacks(_7e, _80, _7f);
				}
			},
			toString: function() {
				return "[Widget " + this.declaredClass + ", " + (this.id || "NO ID") + "]";
			},
			getDescendants: function() {
				return this.containerNode ? dojo.query("[widgetId]", this.containerNode).map(dijit.byNode) : [];
			},
			getChildren: function() {
				return this.containerNode ? dijit.findWidgets(this.containerNode) : [];
			},
			connect: function(obj, _81, _82) {
				var _83 = [dojo._connect(obj, _81, this, _82)];
				this._connects.push(_83);
				return _83;
			},
			disconnect: function(_84) {
				for (var i = 0; i < this._connects.length; i++) {
					if (this._connects[i] == _84) {
						dojo.forEach(_84, dojo.disconnect);
						this._connects.splice(i, 1);
						return;
					}
				}
			},
			subscribe: function(_85, _86) {
				var _87 = dojo.subscribe(_85, this, _86);
				this._subscribes.push(_87);
				return _87;
			},
			unsubscribe: function(_88) {
				for (var i = 0; i < this._subscribes.length; i++) {
					if (this._subscribes[i] == _88) {
						dojo.unsubscribe(_88);
						this._subscribes.splice(i, 1);
						return;
					}
				}
			},
			isLeftToRight: function() {
				return this.dir ? (this.dir == "ltr") : dojo._isBodyLtr();
			},
			placeAt: function(_89, _8a) {
				if (_89.declaredClass && _89.addChild) {
					_89.addChild(this, _8a);
				} else {
					dojo.place(this.domNode, _89, _8a);
				}
				return this;
			}
		});
	})();
}
if (!dojo._hasResource["dojo.window"]) {
	dojo._hasResource["dojo.window"] = true;
	dojo.provide("dojo.window");
	dojo.getObject("window", true, dojo);
	dojo.window.getBox = function() {
		var _8b = (dojo.doc.compatMode == "BackCompat") ? dojo.body() : dojo.doc.documentElement;
		var _8c = dojo._docScroll();
		return {
			w: _8b.clientWidth,
			h: _8b.clientHeight,
			l: _8c.x,
			t: _8c.y
		};
	};
	dojo.window.get = function(doc) {
		if (dojo.isIE && window !== document.parentWindow) {
			doc.parentWindow.execScript("document._parentWindow = window;", "Javascript");
			var win = doc._parentWindow;
			doc._parentWindow = null;
			return win;
		}
		return doc.parentWindow || doc.defaultView;
	};
	dojo.window.scrollIntoView = function(_8d, pos) {
		try {
			_8d = dojo.byId(_8d);
			var doc = _8d.ownerDocument || dojo.doc,
			_8e = doc.body || dojo.body(),
			_8f = doc.documentElement || _8e.parentNode,
			_90 = dojo.isIE,
			_91 = dojo.isWebKit;
			if ((! (dojo.isMoz || _90 || _91 || dojo.isOpera) || _8d == _8e || _8d == _8f) && (typeof _8d.scrollIntoView != "undefined")) {
				_8d.scrollIntoView(false);
				return;
			}
			var _92 = doc.compatMode == "BackCompat",
			_93 = (_90 >= 9 && _8d.ownerDocument.parentWindow.frameElement) ? ((_8f.clientHeight > 0 && _8f.clientWidth > 0 && (_8e.clientHeight == 0 || _8e.clientWidth == 0 || _8e.clientHeight > _8f.clientHeight || _8e.clientWidth > _8f.clientWidth)) ? _8f: _8e) : (_92 ? _8e: _8f),
			_94 = _91 ? _8e: _93,
			_95 = _93.clientWidth,
			_96 = _93.clientHeight,
			rtl = !dojo._isBodyLtr(),
			_97 = pos || dojo.position(_8d),
			el = _8d.parentNode,
			_98 = function(el) {
				return ((_90 <= 6 || (_90 && _92)) ? false: (dojo.style(el, "position").toLowerCase() == "fixed"));
			};
			if (_98(_8d)) {
				return;
			}
			while (el) {
				if (el == _8e) {
					el = _94;
				}
				var _99 = dojo.position(el),
				_9a = _98(el);
				if (el == _94) {
					_99.w = _95;
					_99.h = _96;
					if (_94 == _8f && _90 && rtl) {
						_99.x += _94.offsetWidth - _99.w;
					}
					if (_99.x < 0 || !_90) {
						_99.x = 0;
					}
					if (_99.y < 0 || !_90) {
						_99.y = 0;
					}
				} else {
					var pb = dojo._getPadBorderExtents(el);
					_99.w -= pb.w;
					_99.h -= pb.h;
					_99.x += pb.l;
					_99.y += pb.t;
					var _9b = el.clientWidth,
					_9c = _99.w - _9b;
					if (_9b > 0 && _9c > 0) {
						_99.w = _9b;
						_99.x += (rtl && (_90 || el.clientLeft > pb.l)) ? _9c: 0;
					}
					_9b = el.clientHeight;
					_9c = _99.h - _9b;
					if (_9b > 0 && _9c > 0) {
						_99.h = _9b;
					}
				}
				if (_9a) {
					if (_99.y < 0) {
						_99.h += _99.y;
						_99.y = 0;
					}
					if (_99.x < 0) {
						_99.w += _99.x;
						_99.x = 0;
					}
					if (_99.y + _99.h > _96) {
						_99.h = _96 - _99.y;
					}
					if (_99.x + _99.w > _95) {
						_99.w = _95 - _99.x;
					}
				}
				var l = _97.x - _99.x,
				t = _97.y - Math.max(_99.y, 0),
				r = l + _97.w - _99.w,
				bot = t + _97.h - _99.h;
				if (r * l > 0) {
					var s = Math[l < 0 ? "max": "min"](l, r);
					if (rtl && ((_90 == 8 && !_92) || _90 >= 9)) {
						s = -s;
					}
					_97.x += el.scrollLeft;
					el.scrollLeft += s;
					_97.x -= el.scrollLeft;
				}
				if (bot * t > 0) {
					_97.y += el.scrollTop;
					el.scrollTop += Math[t < 0 ? "max": "min"](t, bot);
					_97.y -= el.scrollTop;
				}
				el = (el != _94) && !_9a && el.parentNode;
			}
		} catch(error) {
			_8d.scrollIntoView(false);
		}
	};
}
if (!dojo._hasResource["dijit._base.focus"]) {
	dojo._hasResource["dijit._base.focus"] = true;
	dojo.provide("dijit._base.focus");
	dojo.mixin(dijit, {
		_curFocus: null,
		_prevFocus: null,
		isCollapsed: function() {
			return dijit.getBookmark().isCollapsed;
		},
		getBookmark: function() {
			var bm, rg, tg, sel = dojo.doc.selection,
			cf = dijit._curFocus;
			if (dojo.global.getSelection) {
				sel = dojo.global.getSelection();
				if (sel) {
					if (sel.isCollapsed) {
						tg = cf ? cf.tagName: "";
						if (tg) {
							tg = tg.toLowerCase();
							if (tg == "textarea" || (tg == "input" && (!cf.type || cf.type.toLowerCase() == "text"))) {
								sel = {
									start: cf.selectionStart,
									end: cf.selectionEnd,
									node: cf,
									pRange: true
								};
								return {
									isCollapsed: (sel.end <= sel.start),
									mark: sel
								};
							}
						}
						bm = {
							isCollapsed: true
						};
						if (sel.rangeCount) {
							bm.mark = sel.getRangeAt(0).cloneRange();
						}
					} else {
						rg = sel.getRangeAt(0);
						bm = {
							isCollapsed: false,
							mark: rg.cloneRange()
						};
					}
				}
			} else {
				if (sel) {
					tg = cf ? cf.tagName: "";
					tg = tg.toLowerCase();
					if (cf && tg && (tg == "button" || tg == "textarea" || tg == "input")) {
						if (sel.type && sel.type.toLowerCase() == "none") {
							return {
								isCollapsed: true,
								mark: null
							};
						} else {
							rg = sel.createRange();
							return {
								isCollapsed: rg.text && rg.text.length ? false: true,
								mark: {
									range: rg,
									pRange: true
								}
							};
						}
					}
					bm = {};
					try {
						rg = sel.createRange();
						bm.isCollapsed = !(sel.type == "Text" ? rg.htmlText.length: rg.length);
					} catch(e) {
						bm.isCollapsed = true;
						return bm;
					}
					if (sel.type.toUpperCase() == "CONTROL") {
						if (rg.length) {
							bm.mark = [];
							var i = 0,
							len = rg.length;
							while (i < len) {
								bm.mark.push(rg.item(i++));
							}
						} else {
							bm.isCollapsed = true;
							bm.mark = null;
						}
					} else {
						bm.mark = rg.getBookmark();
					}
				} else {}
			}
			return bm;
		},
		moveToBookmark: function(_9d) {
			var _9e = dojo.doc,
			_9f = _9d.mark;
			if (_9f) {
				if (dojo.global.getSelection) {
					var sel = dojo.global.getSelection();
					if (sel && sel.removeAllRanges) {
						if (_9f.pRange) {
							var r = _9f;
							var n = r.node;
							n.selectionStart = r.start;
							n.selectionEnd = r.end;
						} else {
							sel.removeAllRanges();
							sel.addRange(_9f);
						}
					} else {}
				} else {
					if (_9e.selection && _9f) {
						var rg;
						if (_9f.pRange) {
							rg = _9f.range;
						} else {
							if (dojo.isArray(_9f)) {
								rg = _9e.body.createControlRange();
								dojo.forEach(_9f,
								function(n) {
									rg.addElement(n);
								});
							} else {
								rg = _9e.body.createTextRange();
								rg.moveToBookmark(_9f);
							}
						}
						rg.select();
					}
				}
			}
		},
		getFocus: function(_a0, _a1) {
			var _a2 = !dijit._curFocus || (_a0 && dojo.isDescendant(dijit._curFocus, _a0.domNode)) ? dijit._prevFocus: dijit._curFocus;
			return {
				node: _a2,
				bookmark: (_a2 == dijit._curFocus) && dojo.withGlobal(_a1 || dojo.global, dijit.getBookmark),
				openedForWindow: _a1
			};
		},
		focus: function(_a3) {
			if (!_a3) {
				return;
			}
			var _a4 = "node" in _a3 ? _a3.node: _a3,
			_a5 = _a3.bookmark,
			_a6 = _a3.openedForWindow,
			_a7 = _a5 ? _a5.isCollapsed: false;
			if (_a4) {
				var _a8 = (_a4.tagName.toLowerCase() == "iframe") ? _a4.contentWindow: _a4;
				if (_a8 && _a8.focus) {
					try {
						_a8.focus();
					} catch(e) {}
				}
				dijit._onFocusNode(_a4);
			}
			if (_a5 && dojo.withGlobal(_a6 || dojo.global, dijit.isCollapsed) && !_a7) {
				if (_a6) {
					_a6.focus();
				}
				try {
					dojo.withGlobal(_a6 || dojo.global, dijit.moveToBookmark, null, [_a5]);
				} catch(e2) {}
			}
		},
		_activeStack: [],
		registerIframe: function(_a9) {
			return dijit.registerWin(_a9.contentWindow, _a9);
		},
		unregisterIframe: function(_aa) {
			dijit.unregisterWin(_aa);
		},
		registerWin: function(_ab, _ac) {
			var _ad = function(evt) {
				dijit._justMouseDowned = true;
				setTimeout(function() {
					dijit._justMouseDowned = false;
				},
				0);
				if (dojo.isIE && evt && evt.srcElement && evt.srcElement.parentNode == null) {
					return;
				}
				dijit._onTouchNode(_ac || evt.target || evt.srcElement, "mouse");
			};
			var doc = dojo.isIE ? _ab.document.documentElement: _ab.document;
			if (doc) {
				if (dojo.isIE) {
					_ab.document.body.attachEvent("onmousedown", _ad);
					var _ae = function(evt) {
						if (evt.srcElement.tagName.toLowerCase() != "#document" && dijit.isTabNavigable(evt.srcElement)) {
							dijit._onFocusNode(_ac || evt.srcElement);
						} else {
							dijit._onTouchNode(_ac || evt.srcElement);
						}
					};
					doc.attachEvent("onactivate", _ae);
					var _af = function(evt) {
						dijit._onBlurNode(_ac || evt.srcElement);
					};
					doc.attachEvent("ondeactivate", _af);
					return function() {
						_ab.document.detachEvent("onmousedown", _ad);
						doc.detachEvent("onactivate", _ae);
						doc.detachEvent("ondeactivate", _af);
						doc = null;
					};
				} else {
					doc.body.addEventListener("mousedown", _ad, true);
					var _b0 = function(evt) {
						dijit._onFocusNode(_ac || evt.target);
					};
					doc.addEventListener("focus", _b0, true);
					var _b1 = function(evt) {
						dijit._onBlurNode(_ac || evt.target);
					};
					doc.addEventListener("blur", _b1, true);
					return function() {
						doc.body.removeEventListener("mousedown", _ad, true);
						doc.removeEventListener("focus", _b0, true);
						doc.removeEventListener("blur", _b1, true);
						doc = null;
					};
				}
			}
		},
		unregisterWin: function(_b2) {
			_b2 && _b2();
		},
		_onBlurNode: function(_b3) {
			dijit._prevFocus = dijit._curFocus;
			dijit._curFocus = null;
			if (dijit._justMouseDowned) {
				return;
			}
			if (dijit._clearActiveWidgetsTimer) {
				clearTimeout(dijit._clearActiveWidgetsTimer);
			}
			dijit._clearActiveWidgetsTimer = setTimeout(function() {
				delete dijit._clearActiveWidgetsTimer;
				dijit._setStack([]);
				dijit._prevFocus = null;
			},
			100);
		},
		_onTouchNode: function(_b4, by) {
			if (dijit._clearActiveWidgetsTimer) {
				clearTimeout(dijit._clearActiveWidgetsTimer);
				delete dijit._clearActiveWidgetsTimer;
			}
			var _b5 = [];
			try {
				while (_b4) {
					var _b6 = dojo.attr(_b4, "dijitPopupParent");
					if (_b6) {
						_b4 = dijit.byId(_b6).domNode;
					} else {
						if (_b4.tagName && _b4.tagName.toLowerCase() == "body") {
							if (_b4 === dojo.body()) {
								break;
							}
							_b4 = dojo.window.get(_b4.ownerDocument).frameElement;
						} else {
							var id = _b4.getAttribute && _b4.getAttribute("widgetId"),
							_b7 = id && dijit.byId(id);
							if (_b7 && !(by == "mouse" && _b7.get("disabled"))) {
								_b5.unshift(id);
							}
							_b4 = _b4.parentNode;
						}
					}
				}
			} catch(e) {}
			dijit._setStack(_b5, by);
		},
		_onFocusNode: function(_b8) {
			if (!_b8) {
				return;
			}
			if (_b8.nodeType == 9) {
				return;
			}
			dijit._onTouchNode(_b8);
			if (_b8 == dijit._curFocus) {
				return;
			}
			if (dijit._curFocus) {
				dijit._prevFocus = dijit._curFocus;
			}
			dijit._curFocus = _b8;
			dojo.publish("focusNode", [_b8]);
		},
		_setStack: function(_b9, by) {
			var _ba = dijit._activeStack;
			dijit._activeStack = _b9;
			for (var _bb = 0; _bb < Math.min(_ba.length, _b9.length); _bb++) {
				if (_ba[_bb] != _b9[_bb]) {
					break;
				}
			}
			var _bc;
			for (var i = _ba.length - 1; i >= _bb; i--) {
				_bc = dijit.byId(_ba[i]);
				if (_bc) {
					_bc._focused = false;
					_bc.set("focused", false);
					_bc._hasBeenBlurred = true;
					if (_bc._onBlur) {
						_bc._onBlur(by);
					}
					dojo.publish("widgetBlur", [_bc, by]);
				}
			}
			for (i = _bb; i < _b9.length; i++) {
				_bc = dijit.byId(_b9[i]);
				if (_bc) {
					_bc._focused = true;
					_bc.set("focused", true);
					if (_bc._onFocus) {
						_bc._onFocus(by);
					}
					dojo.publish("widgetFocus", [_bc, by]);
				}
			}
		}
	});
	dojo.addOnLoad(function() {
		var _bd = dijit.registerWin(window);
		if (dojo.isIE) {
			dojo.addOnWindowUnload(function() {
				dijit.unregisterWin(_bd);
				_bd = null;
			});
		}
	});
}
if (!dojo._hasResource["dojo.AdapterRegistry"]) {
	dojo._hasResource["dojo.AdapterRegistry"] = true;
	dojo.provide("dojo.AdapterRegistry");
	dojo.AdapterRegistry = function(_be) {
		this.pairs = [];
		this.returnWrappers = _be || false;
	};
	dojo.extend(dojo.AdapterRegistry, {
		register: function(_bf, _c0, _c1, _c2, _c3) {
			this.pairs[((_c3) ? "unshift": "push")]([_bf, _c0, _c1, _c2]);
		},
		match: function() {
			for (var i = 0; i < this.pairs.length; i++) {
				var _c4 = this.pairs[i];
				if (_c4[1].apply(this, arguments)) {
					if ((_c4[3]) || (this.returnWrappers)) {
						return _c4[2];
					} else {
						return _c4[2].apply(this, arguments);
					}
				}
			}
			throw new Error("No match found");
		},
		unregister: function(_c5) {
			for (var i = 0; i < this.pairs.length; i++) {
				var _c6 = this.pairs[i];
				if (_c6[0] == _c5) {
					this.pairs.splice(i, 1);
					return true;
				}
			}
			return false;
		}
	});
}
if (!dojo._hasResource["dijit._base.place"]) {
	dojo._hasResource["dijit._base.place"] = true;
	dojo.provide("dijit._base.place");
	dijit.getViewport = function() {
		return dojo.window.getBox();
	};
	dijit.placeOnScreen = function(_c7, pos, _c8, _c9) {
		var _ca = dojo.map(_c8,
		function(_cb) {
			var c = {
				corner: _cb,
				pos: {
					x: pos.x,
					y: pos.y
				}
			};
			if (_c9) {
				c.pos.x += _cb.charAt(1) == "L" ? _c9.x: -_c9.x;
				c.pos.y += _cb.charAt(0) == "T" ? _c9.y: -_c9.y;
			}
			return c;
		});
		return dijit._place(_c7, _ca);
	};
	dijit._place = function(_cc, _cd, _ce, _cf) {
		var _d0 = dojo.window.getBox();
		if (!_cc.parentNode || String(_cc.parentNode.tagName).toLowerCase() != "body") {
			dojo.body().appendChild(_cc);
		}
		var _d1 = null;
		dojo.some(_cd,
		function(_d2) {
			var _d3 = _d2.corner;
			var pos = _d2.pos;
			var _d4 = 0;
			var _d5 = {
				w: _d3.charAt(1) == "L" ? (_d0.l + _d0.w) - pos.x: pos.x - _d0.l,
				h: _d3.charAt(1) == "T" ? (_d0.t + _d0.h) - pos.y: pos.y - _d0.t
			};
			if (_ce) {
				var res = _ce(_cc, _d2.aroundCorner, _d3, _d5, _cf);
				_d4 = typeof res == "undefined" ? 0 : res;
			}
			var _d6 = _cc.style;
			var _d7 = _d6.display;
			var _d8 = _d6.visibility;
			_d6.visibility = "hidden";
			_d6.display = "";
			var mb = dojo.marginBox(_cc);
			_d6.display = _d7;
			_d6.visibility = _d8;
			var _d9 = Math.max(_d0.l, _d3.charAt(1) == "L" ? pos.x: (pos.x - mb.w)),
			_da = Math.max(_d0.t, _d3.charAt(0) == "T" ? pos.y: (pos.y - mb.h)),
			_db = Math.min(_d0.l + _d0.w, _d3.charAt(1) == "L" ? (_d9 + mb.w) : pos.x),
			_dc = Math.min(_d0.t + _d0.h, _d3.charAt(0) == "T" ? (_da + mb.h) : pos.y),
			_dd = _db - _d9,
			_de = _dc - _da;
			_d4 += (mb.w - _dd) + (mb.h - _de);
			if (_d1 == null || _d4 < _d1.overflow) {
				_d1 = {
					corner: _d3,
					aroundCorner: _d2.aroundCorner,
					x: _d9,
					y: _da,
					w: _dd,
					h: _de,
					overflow: _d4,
					spaceAvailable: _d5
				};
			}
			return ! _d4;
		});
		if (_d1.overflow && _ce) {
			_ce(_cc, _d1.aroundCorner, _d1.corner, _d1.spaceAvailable, _cf);
		}
		var l = dojo._isBodyLtr(),
		s = _cc.style;
		s.top = _d1.y + "px";
		s[l ? "left": "right"] = (l ? _d1.x: _d0.w - _d1.x - _d1.w) + "px";
		return _d1;
	};
	dijit.placeOnScreenAroundNode = function(_df, _e0, _e1, _e2) {
		_e0 = dojo.byId(_e0);
		var _e3 = dojo.position(_e0, true);
		return dijit._placeOnScreenAroundRect(_df, _e3.x, _e3.y, _e3.w, _e3.h, _e1, _e2);
	};
	dijit.placeOnScreenAroundRectangle = function(_e4, _e5, _e6, _e7) {
		return dijit._placeOnScreenAroundRect(_e4, _e5.x, _e5.y, _e5.width, _e5.height, _e6, _e7);
	};
	dijit._placeOnScreenAroundRect = function(_e8, x, y, _e9, _ea, _eb, _ec) {
		var _ed = [];
		for (var _ee in _eb) {
			_ed.push({
				aroundCorner: _ee,
				corner: _eb[_ee],
				pos: {
					x: x + (_ee.charAt(1) == "L" ? 0 : _e9),
					y: y + (_ee.charAt(0) == "T" ? 0 : _ea)
				}
			});
		}
		return dijit._place(_e8, _ed, _ec, {
			w: _e9,
			h: _ea
		});
	};
	dijit.placementRegistry = new dojo.AdapterRegistry();
	dijit.placementRegistry.register("node",
	function(n, x) {
		return typeof x == "object" && typeof x.offsetWidth != "undefined" && typeof x.offsetHeight != "undefined";
	},
	dijit.placeOnScreenAroundNode);
	dijit.placementRegistry.register("rect",
	function(n, x) {
		return typeof x == "object" && "x" in x && "y" in x && "width" in x && "height" in x;
	},
	dijit.placeOnScreenAroundRectangle);
	dijit.placeOnScreenAroundElement = function(_ef, _f0, _f1, _f2) {
		return dijit.placementRegistry.match.apply(dijit.placementRegistry, arguments);
	};
	dijit.getPopupAroundAlignment = function(_f3, _f4) {
		var _f5 = {};
		dojo.forEach(_f3,
		function(pos) {
			switch (pos) {
			case "after":
				_f5[_f4 ? "BR": "BL"] = _f4 ? "BL": "BR";
				break;
			case "before":
				_f5[_f4 ? "BL": "BR"] = _f4 ? "BR": "BL";
				break;
			case "below-alt":
				_f4 = !_f4;
			case "below":
				_f5[_f4 ? "BL": "BR"] = _f4 ? "TL": "TR";
				_f5[_f4 ? "BR": "BL"] = _f4 ? "TR": "TL";
				break;
			case "above-alt":
				_f4 = !_f4;
			case "above":
			default:
				_f5[_f4 ? "TL": "TR"] = _f4 ? "BL": "BR";
				_f5[_f4 ? "TR": "TL"] = _f4 ? "BR": "BL";
				break;
			}
		});
		return _f5;
	};
}
if (!dojo._hasResource["dijit._base.window"]) {
	dojo._hasResource["dijit._base.window"] = true;
	dojo.provide("dijit._base.window");
	dijit.getDocumentWindow = function(doc) {
		return dojo.window.get(doc);
	};
}
if (!dojo._hasResource["dijit._base.popup"]) {
	dojo._hasResource["dijit._base.popup"] = true;
	dojo.provide("dijit._base.popup");
	dijit.popup = {
		_stack: [],
		_beginZIndex: 2000,
		_idGen: 1,
		_createWrapper: function(_f6) {
			var _f7 = _f6.declaredClass ? _f6._popupWrapper: (_f6.parentNode && dojo.hasClass(_f6.parentNode, "dijitPopup")),
			_f8 = _f6.domNode || _f6;
			if (!_f7) {
				_f7 = dojo.create("div", {
					"class": "dijitPopup",
					style: {
						display: "none"
					},
					role: "presentation"
				},
				dojo.body());
				_f7.appendChild(_f8);
				var s = _f8.style;
				s.display = "";
				s.visibility = "";
				s.position = "";
				s.top = "0px";
				if (_f6.declaredClass) {
					_f6._popupWrapper = _f7;
					dojo.connect(_f6, "destroy",
					function() {
						dojo.destroy(_f7);
						delete _f6._popupWrapper;
					});
				}
			}
			return _f7;
		},
		moveOffScreen: function(_f9) {
			var _fa = this._createWrapper(_f9);
			dojo.style(_fa, {
				visibility: "hidden",
				top: "-9999px",
				display: ""
			});
		},
		hide: function(_fb) {
			var _fc = this._createWrapper(_fb);
			dojo.style(_fc, "display", "none");
		},
		getTopPopup: function() {
			var _fd = this._stack;
			for (var pi = _fd.length - 1; pi > 0 && _fd[pi].parent === _fd[pi - 1].widget; pi--) {}
			return _fd[pi];
		},
		open: function(_fe) {
			var _ff = this._stack,
			_100 = _fe.popup,
			_101 = _fe.orient || ((_fe.parent ? _fe.parent.isLeftToRight() : dojo._isBodyLtr()) ? {
				"BL": "TL",
				"BR": "TR",
				"TL": "BL",
				"TR": "BR"
			}: {
				"BR": "TR",
				"BL": "TL",
				"TR": "BR",
				"TL": "BL"
			}),
			_102 = _fe.around,
			id = (_fe.around && _fe.around.id) ? (_fe.around.id + "_dropdown") : ("popup_" + this._idGen++);
			while (_ff.length && (!_fe.parent || !dojo.isDescendant(_fe.parent.domNode, _ff[_ff.length - 1].widget.domNode))) {
				dijit.popup.close(_ff[_ff.length - 1].widget);
			}
			var _103 = this._createWrapper(_100);
			dojo.attr(_103, {
				id: id,
				style: {
					zIndex: this._beginZIndex + _ff.length
				},
				"class": "dijitPopup " + (_100.baseClass || _100["class"] || "").split(" ")[0] + "Popup",
				dijitPopupParent: _fe.parent ? _fe.parent.id: ""
			});
			if (dojo.isIE || dojo.isMoz) {
				if (!_100.bgIframe) {
					_100.bgIframe = new dijit.BackgroundIframe(_103);
				}
			}
			var best = _102 ? dijit.placeOnScreenAroundElement(_103, _102, _101, _100.orient ? dojo.hitch(_100, "orient") : null) : dijit.placeOnScreen(_103, _fe, _101 == "R" ? ["TR", "BR", "TL", "BL"] : ["TL", "BL", "TR", "BR"], _fe.padding);
			_103.style.display = "";
			_103.style.visibility = "visible";
			_100.domNode.style.visibility = "visible";
			var _104 = [];
			_104.push(dojo.connect(_103, "onkeypress", this,
			function(evt) {
				if (evt.charOrCode == dojo.keys.ESCAPE && _fe.onCancel) {
					dojo.stopEvent(evt);
					_fe.onCancel();
				} else {
					if (evt.charOrCode === dojo.keys.TAB) {
						dojo.stopEvent(evt);
						var _105 = this.getTopPopup();
						if (_105 && _105.onCancel) {
							_105.onCancel();
						}
					}
				}
			}));
			if (_100.onCancel) {
				_104.push(dojo.connect(_100, "onCancel", _fe.onCancel));
			}
			_104.push(dojo.connect(_100, _100.onExecute ? "onExecute": "onChange", this,
			function() {
				var _106 = this.getTopPopup();
				if (_106 && _106.onExecute) {
					_106.onExecute();
				}
			}));
			_ff.push({
				widget: _100,
				parent: _fe.parent,
				onExecute: _fe.onExecute,
				onCancel: _fe.onCancel,
				onClose: _fe.onClose,
				handlers: _104
			});
			if (_100.onOpen) {
				_100.onOpen(best);
			}
			return best;
		},
		close: function(_107) {
			var _108 = this._stack;
			while ((_107 && dojo.some(_108,
			function(elem) {
				return elem.widget == _107;
			})) || (!_107 && _108.length)) {
				var top = _108.pop(),
				_109 = top.widget,
				_10a = top.onClose;
				if (_109.onClose) {
					_109.onClose();
				}
				dojo.forEach(top.handlers, dojo.disconnect);
				if (_109 && _109.domNode) {
					this.hide(_109);
				}
				if (_10a) {
					_10a();
				}
			}
		}
	};
	dijit._frames = new
	function() {
		var _10b = [];
		this.pop = function() {
			var _10c;
			if (_10b.length) {
				_10c = _10b.pop();
				_10c.style.display = "";
			} else {
				if (dojo.isIE < 9) {
					var burl = dojo.config["dojoBlankHtmlUrl"] || (dojo.moduleUrl("dojo", "resources/blank.html") + "") || "javascript:\"\"";
					var html = "<iframe src='" + burl + "'" + " style='position: absolute; left: 0px; top: 0px;" + "z-index: -1; filter:Alpha(Opacity=\"0\");'>";
					_10c = dojo.doc.createElement(html);
				} else {
					_10c = dojo.create("iframe");
					_10c.src = "javascript:\"\"";
					_10c.className = "dijitBackgroundIframe";
					dojo.style(_10c, "opacity", 0.1);
				}
				_10c.tabIndex = -1;
				dijit.setWaiRole(_10c, "presentation");
			}
			return _10c;
		};
		this.push = function(_10d) {
			_10d.style.display = "none";
			_10b.push(_10d);
		};
	} ();
	dijit.BackgroundIframe = function(node) {
		if (!node.id) {
			throw new Error("no id");
		}
		if (dojo.isIE || dojo.isMoz) {
			var _10e = (this.iframe = dijit._frames.pop());
			node.appendChild(_10e);
			if (dojo.isIE < 7 || dojo.isQuirks) {
				this.resize(node);
				this._conn = dojo.connect(node, "onresize", this,
				function() {
					this.resize(node);
				});
			} else {
				dojo.style(_10e, {
					width: "100%",
					height: "100%"
				});
			}
		}
	};
	dojo.extend(dijit.BackgroundIframe, {
		resize: function(node) {
			if (this.iframe) {
				dojo.style(this.iframe, {
					width: node.offsetWidth + "px",
					height: node.offsetHeight + "px"
				});
			}
		},
		destroy: function() {
			if (this._conn) {
				dojo.disconnect(this._conn);
				this._conn = null;
			}
			if (this.iframe) {
				dijit._frames.push(this.iframe);
				delete this.iframe;
			}
		}
	});
}
if (!dojo._hasResource["dijit._base.scroll"]) {
	dojo._hasResource["dijit._base.scroll"] = true;
	dojo.provide("dijit._base.scroll");
	dijit.scrollIntoView = function(node, pos) {
		dojo.window.scrollIntoView(node, pos);
	};
}
if (!dojo._hasResource["dojo.uacss"]) {
	dojo._hasResource["dojo.uacss"] = true;
	dojo.provide("dojo.uacss");
	(function() {
		var d = dojo,
		html = d.doc.documentElement,
		ie = d.isIE,
		_10f = d.isOpera,
		maj = Math.floor,
		ff = d.isFF,
		_110 = d.boxModel.replace(/-/, ""),
		_111 = {
			dj_ie: ie,
			dj_ie6: maj(ie) == 6,
			dj_ie7: maj(ie) == 7,
			dj_ie8: maj(ie) == 8,
			dj_ie9: maj(ie) == 9,
			dj_quirks: d.isQuirks,
			dj_iequirks: ie && d.isQuirks,
			dj_opera: _10f,
			dj_khtml: d.isKhtml,
			dj_webkit: d.isWebKit,
			dj_safari: d.isSafari,
			dj_chrome: d.isChrome,
			dj_gecko: d.isMozilla,
			dj_ff3: maj(ff) == 3
		};
		_111["dj_" + _110] = true;
		var _112 = "";
		for (var clz in _111) {
			if (_111[clz]) {
				_112 += clz + " ";
			}
		}
		html.className = d.trim(html.className + " " + _112);
		dojo._loaders.unshift(function() {
			if (!dojo._isBodyLtr()) {
				var _113 = "dj_rtl dijitRtl " + _112.replace(/ /g, "-rtl ");
				html.className = d.trim(html.className + " " + _113);
			}
		});
	})();
}
if (!dojo._hasResource["dijit._base.sniff"]) {
	dojo._hasResource["dijit._base.sniff"] = true;
	dojo.provide("dijit._base.sniff");
}
if (!dojo._hasResource["dijit._base.typematic"]) {
	dojo._hasResource["dijit._base.typematic"] = true;
	dojo.provide("dijit._base.typematic");
	dijit.typematic = {
		_fireEventAndReload: function() {
			this._timer = null;
			this._callback(++this._count, this._node, this._evt);
			this._currentTimeout = Math.max(this._currentTimeout < 0 ? this._initialDelay: (this._subsequentDelay > 1 ? this._subsequentDelay: Math.round(this._currentTimeout * this._subsequentDelay)), this._minDelay);
			this._timer = setTimeout(dojo.hitch(this, "_fireEventAndReload"), this._currentTimeout);
		},
		trigger: function(evt, _114, node, _115, obj, _116, _117, _118) {
			if (obj != this._obj) {
				this.stop();
				this._initialDelay = _117 || 500;
				this._subsequentDelay = _116 || 0.9;
				this._minDelay = _118 || 10;
				this._obj = obj;
				this._evt = evt;
				this._node = node;
				this._currentTimeout = -1;
				this._count = -1;
				this._callback = dojo.hitch(_114, _115);
				this._fireEventAndReload();
				this._evt = dojo.mixin({
					faux: true
				},
				evt);
			}
		},
		stop: function() {
			if (this._timer) {
				clearTimeout(this._timer);
				this._timer = null;
			}
			if (this._obj) {
				this._callback( - 1, this._node, this._evt);
				this._obj = null;
			}
		},
		addKeyListener: function(node, _119, _11a, _11b, _11c, _11d, _11e) {
			if (_119.keyCode) {
				_119.charOrCode = _119.keyCode;
				dojo.deprecated("keyCode attribute parameter for dijit.typematic.addKeyListener is deprecated. Use charOrCode instead.", "", "2.0");
			} else {
				if (_119.charCode) {
					_119.charOrCode = String.fromCharCode(_119.charCode);
					dojo.deprecated("charCode attribute parameter for dijit.typematic.addKeyListener is deprecated. Use charOrCode instead.", "", "2.0");
				}
			}
			return [dojo.connect(node, "onkeypress", this,
			function(evt) {
				if (evt.charOrCode == _119.charOrCode && (_119.ctrlKey === undefined || _119.ctrlKey == evt.ctrlKey) && (_119.altKey === undefined || _119.altKey == evt.altKey) && (_119.metaKey === undefined || _119.metaKey == (evt.metaKey || false)) && (_119.shiftKey === undefined || _119.shiftKey == evt.shiftKey)) {
					dojo.stopEvent(evt);
					dijit.typematic.trigger(evt, _11a, node, _11b, _119, _11c, _11d, _11e);
				} else {
					if (dijit.typematic._obj == _119) {
						dijit.typematic.stop();
					}
				}
			}), dojo.connect(node, "onkeyup", this,
			function(evt) {
				if (dijit.typematic._obj == _119) {
					dijit.typematic.stop();
				}
			})];
		},
		addMouseListener: function(node, _11f, _120, _121, _122, _123) {
			var dc = dojo.connect;
			return [dc(node, "mousedown", this,
			function(evt) {
				dojo.stopEvent(evt);
				dijit.typematic.trigger(evt, _11f, node, _120, node, _121, _122, _123);
			}), dc(node, "mouseup", this,
			function(evt) {
				dojo.stopEvent(evt);
				dijit.typematic.stop();
			}), dc(node, "mouseout", this,
			function(evt) {
				dojo.stopEvent(evt);
				dijit.typematic.stop();
			}), dc(node, "mousemove", this,
			function(evt) {
				evt.preventDefault();
			}), dc(node, "dblclick", this,
			function(evt) {
				dojo.stopEvent(evt);
				if (dojo.isIE) {
					dijit.typematic.trigger(evt, _11f, node, _120, node, _121, _122, _123);
					setTimeout(dojo.hitch(this, dijit.typematic.stop), 50);
				}
			})];
		},
		addListener: function(_124, _125, _126, _127, _128, _129, _12a, _12b) {
			return this.addKeyListener(_125, _126, _127, _128, _129, _12a, _12b).concat(this.addMouseListener(_124, _127, _128, _129, _12a, _12b));
		}
	};
}
if (!dojo._hasResource["dijit._base.wai"]) {
	dojo._hasResource["dijit._base.wai"] = true;
	dojo.provide("dijit._base.wai");
	dijit.wai = {
		onload: function() {
			var div = dojo.create("div", {
				id: "a11yTestNode",
				style: {
					cssText: "border: 1px solid;" + "border-color:red green;" + "position: absolute;" + "height: 5px;" + "top: -999px;" + "background-image: url(\"" + (dojo.config.blankGif || dojo.moduleUrl("dojo", "resources/blank.gif")) + "\");"
				}
			},
			dojo.body());
			var cs = dojo.getComputedStyle(div);
			if (cs) {
				var _12c = cs.backgroundImage;
				var _12d = (cs.borderTopColor == cs.borderRightColor) || (_12c != null && (_12c == "none" || _12c == "url(invalid-url:)"));
				dojo[_12d ? "addClass": "removeClass"](dojo.body(), "dijit_a11y");
				if (dojo.isIE) {
					div.outerHTML = "";
				} else {
					dojo.body().removeChild(div);
				}
			}
		}
	};
	if (dojo.isIE || dojo.isMoz) {
		dojo._loaders.unshift(dijit.wai.onload);
	}
	dojo.mixin(dijit, {
		hasWaiRole: function(elem, role) {
			var _12e = this.getWaiRole(elem);
			return role ? (_12e.indexOf(role) > -1) : (_12e.length > 0);
		},
		getWaiRole: function(elem) {
			return dojo.trim((dojo.attr(elem, "role") || "").replace("wairole:", ""));
		},
		setWaiRole: function(elem, role) {
			dojo.attr(elem, "role", role);
		},
		removeWaiRole: function(elem, role) {
			var _12f = dojo.attr(elem, "role");
			if (!_12f) {
				return;
			}
			if (role) {
				var t = dojo.trim((" " + _12f + " ").replace(" " + role + " ", " "));
				dojo.attr(elem, "role", t);
			} else {
				elem.removeAttribute("role");
			}
		},
		hasWaiState: function(elem, _130) {
			return elem.hasAttribute ? elem.hasAttribute("aria-" + _130) : !!elem.getAttribute("aria-" + _130);
		},
		getWaiState: function(elem, _131) {
			return elem.getAttribute("aria-" + _131) || "";
		},
		setWaiState: function(elem, _132, _133) {
			elem.setAttribute("aria-" + _132, _133);
		},
		removeWaiState: function(elem, _134) {
			elem.removeAttribute("aria-" + _134);
		}
	});
}
if (!dojo._hasResource["dijit._base"]) {
	dojo._hasResource["dijit._base"] = true;
	dojo.provide("dijit._base");
}
if (!dojo._hasResource["dijit._Widget"]) {
	dojo._hasResource["dijit._Widget"] = true;
	dojo.provide("dijit._Widget");
	dojo.connect(dojo, "_connect",
	function(_135, _136) {
		if (_135 && dojo.isFunction(_135._onConnect)) {
			_135._onConnect(_136);
		}
	});
	dijit._connectOnUseEventHandler = function(_137) {};
	dijit._lastKeyDownNode = null;
	if (dojo.isIE) { (function() {
			var _138 = function(evt) {
				dijit._lastKeyDownNode = evt.srcElement;
			};
			dojo.doc.attachEvent("onkeydown", _138);
			dojo.addOnWindowUnload(function() {
				dojo.doc.detachEvent("onkeydown", _138);
			});
		})();
	} else {
		dojo.doc.addEventListener("keydown",
		function(evt) {
			dijit._lastKeyDownNode = evt.target;
		},
		true);
	} (function() {
		dojo.declare("dijit._Widget", dijit._WidgetBase, {
			_deferredConnects: {
				onClick: "",
				onDblClick: "",
				onKeyDown: "",
				onKeyPress: "",
				onKeyUp: "",
				onMouseMove: "",
				onMouseDown: "",
				onMouseOut: "",
				onMouseOver: "",
				onMouseLeave: "",
				onMouseEnter: "",
				onMouseUp: ""
			},
			onClick: dijit._connectOnUseEventHandler,
			onDblClick: dijit._connectOnUseEventHandler,
			onKeyDown: dijit._connectOnUseEventHandler,
			onKeyPress: dijit._connectOnUseEventHandler,
			onKeyUp: dijit._connectOnUseEventHandler,
			onMouseDown: dijit._connectOnUseEventHandler,
			onMouseMove: dijit._connectOnUseEventHandler,
			onMouseOut: dijit._connectOnUseEventHandler,
			onMouseOver: dijit._connectOnUseEventHandler,
			onMouseLeave: dijit._connectOnUseEventHandler,
			onMouseEnter: dijit._connectOnUseEventHandler,
			onMouseUp: dijit._connectOnUseEventHandler,
			create: function(_139, _13a) {
				this._deferredConnects = dojo.clone(this._deferredConnects);
				for (var attr in this.attributeMap) {
					delete this._deferredConnects[attr];
				}
				for (attr in this._deferredConnects) {
					if (this[attr] !== dijit._connectOnUseEventHandler) {
						delete this._deferredConnects[attr];
					}
				}
				this.inherited(arguments);
				if (this.domNode) {
					for (attr in this.params) {
						this._onConnect(attr);
					}
				}
			},
			_onConnect: function(_13b) {
				if (_13b in this._deferredConnects) {
					var _13c = this[this._deferredConnects[_13b] || "domNode"];
					this.connect(_13c, _13b.toLowerCase(), _13b);
					delete this._deferredConnects[_13b];
				}
			},
			focused: false,
			isFocusable: function() {
				return this.focus && (dojo.style(this.domNode, "display") != "none");
			},
			onFocus: function() {},
			onBlur: function() {},
			_onFocus: function(e) {
				this.onFocus();
			},
			_onBlur: function() {
				this.onBlur();
			},
			setAttribute: function(attr, _13d) {
				dojo.deprecated(this.declaredClass + "::setAttribute(attr, value) is deprecated. Use set() instead.", "", "2.0");
				this.set(attr, _13d);
			},
			attr: function(name, _13e) {
				if (dojo.config.isDebug) {
					var _13f = arguments.callee._ach || (arguments.callee._ach = {}),
					_140 = (arguments.callee.caller || "unknown caller").toString();
					if (!_13f[_140]) {
						dojo.deprecated(this.declaredClass + "::attr() is deprecated. Use get() or set() instead, called from " + _140, "", "2.0");
						_13f[_140] = true;
					}
				}
				var args = arguments.length;
				if (args >= 2 || typeof name === "object") {
					return this.set.apply(this, arguments);
				} else {
					return this.get(name);
				}
			},
			nodesWithKeyClick: ["input", "button"],
			connect: function(obj, _141, _142) {
				var d = dojo,
				dc = d._connect,
				_143 = this.inherited(arguments, [obj, _141 == "ondijitclick" ? "onclick": _141, _142]);
				if (_141 == "ondijitclick") {
					if (d.indexOf(this.nodesWithKeyClick, obj.nodeName.toLowerCase()) == -1) {
						var m = d.hitch(this, _142);
						_143.push(dc(obj, "onkeydown", this,
						function(e) {
							if ((e.keyCode == d.keys.ENTER || e.keyCode == d.keys.SPACE) && !e.ctrlKey && !e.shiftKey && !e.altKey && !e.metaKey) {
								dijit._lastKeyDownNode = e.target;
								if (! ("openDropDown" in this && obj == this._buttonNode)) {
									e.preventDefault();
								}
							}
						}), dc(obj, "onkeyup", this,
						function(e) {
							if ((e.keyCode == d.keys.ENTER || e.keyCode == d.keys.SPACE) && e.target == dijit._lastKeyDownNode && !e.ctrlKey && !e.shiftKey && !e.altKey && !e.metaKey) {
								dijit._lastKeyDownNode = null;
								return m(e);
							}
						}));
					}
				}
				return _143;
			},
			_onShow: function() {
				this.onShow();
			},
			onShow: function() {},
			onHide: function() {},
			onClose: function() {
				return true;
			}
		});
	})();
}
if (!dojo._hasResource["dojo.string"]) {
	dojo._hasResource["dojo.string"] = true;
	dojo.provide("dojo.string");
	dojo.getObject("string", true, dojo);
	dojo.string.rep = function(str, num) {
		if (num <= 0 || !str) {
			return "";
		}
		var buf = [];
		for (;;) {
			if (num & 1) {
				buf.push(str);
			}
			if (! (num >>= 1)) {
				break;
			}
			str += str;
		}
		return buf.join("");
	};
	dojo.string.pad = function(text, size, ch, end) {
		if (!ch) {
			ch = "0";
		}
		var out = String(text),
		pad = dojo.string.rep(ch, Math.ceil((size - out.length) / ch.length));
		return end ? out + pad: pad + out;
	};
	dojo.string.substitute = function(_144, map, _145, _146) {
		_146 = _146 || dojo.global;
		_145 = _145 ? dojo.hitch(_146, _145) : function(v) {
			return v;
		};
		return _144.replace(/\$\{([^\s\:\}]+)(?:\:([^\s\:\}]+))?\}/g,
		function(_147, key, _148) {
			var _149 = dojo.getObject(key, false, map);
			if (_148) {
				_149 = dojo.getObject(_148, false, _146).call(_146, _149, key);
			}
			return _145(_149, key).toString();
		});
	};
	dojo.string.trim = String.prototype.trim ? dojo.trim: function(str) {
		str = str.replace(/^\s+/, "");
		for (var i = str.length - 1; i >= 0; i--) {
			if (/\S/.test(str.charAt(i))) {
				str = str.substring(0, i + 1);
				break;
			}
		}
		return str;
	};
}
if (!dojo._hasResource["dojo.date.stamp"]) {
	dojo._hasResource["dojo.date.stamp"] = true;
	dojo.provide("dojo.date.stamp");
	dojo.getObject("date.stamp", true, dojo);
	dojo.date.stamp.fromISOString = function(_14a, _14b) {
		if (!dojo.date.stamp._isoRegExp) {
			dojo.date.stamp._isoRegExp = /^(?:(\d{4})(?:-(\d{2})(?:-(\d{2}))?)?)?(?:T(\d{2}):(\d{2})(?::(\d{2})(.\d+)?)?((?:[+-](\d{2}):(\d{2}))|Z)?)?$/;
		}
		var _14c = dojo.date.stamp._isoRegExp.exec(_14a),
		_14d = null;
		if (_14c) {
			_14c.shift();
			if (_14c[1]) {
				_14c[1]--;
			}
			if (_14c[6]) {
				_14c[6] *= 1000;
			}
			if (_14b) {
				_14b = new Date(_14b);
				dojo.forEach(dojo.map(["FullYear", "Month", "Date", "Hours", "Minutes", "Seconds", "Milliseconds"],
				function(prop) {
					return _14b["get" + prop]();
				}),
				function(_14e, _14f) {
					_14c[_14f] = _14c[_14f] || _14e;
				});
			}
			_14d = new Date(_14c[0] || 1970, _14c[1] || 0, _14c[2] || 1, _14c[3] || 0, _14c[4] || 0, _14c[5] || 0, _14c[6] || 0);
			if (_14c[0] < 100) {
				_14d.setFullYear(_14c[0] || 1970);
			}
			var _150 = 0,
			_151 = _14c[7] && _14c[7].charAt(0);
			if (_151 != "Z") {
				_150 = ((_14c[8] || 0) * 60) + (Number(_14c[9]) || 0);
				if (_151 != "-") {
					_150 *= -1;
				}
			}
			if (_151) {
				_150 -= _14d.getTimezoneOffset();
			}
			if (_150) {
				_14d.setTime(_14d.getTime() + _150 * 60000);
			}
		}
		return _14d;
	};
	dojo.date.stamp.toISOString = function(_152, _153) {
		var _154 = function(n) {
			return (n < 10) ? "0" + n: n;
		};
		_153 = _153 || {};
		var _155 = [],
		_156 = _153.zulu ? "getUTC": "get",
		date = "";
		if (_153.selector != "time") {
			var year = _152[_156 + "FullYear"]();
			date = ["0000".substr((year + "").length) + year, _154(_152[_156 + "Month"]() + 1), _154(_152[_156 + "Date"]())].join("-");
		}
		_155.push(date);
		if (_153.selector != "date") {
			var time = [_154(_152[_156 + "Hours"]()), _154(_152[_156 + "Minutes"]()), _154(_152[_156 + "Seconds"]())].join(":");
			var _157 = _152[_156 + "Milliseconds"]();
			if (_153.milliseconds) {
				time += "." + (_157 < 100 ? "0": "") + _154(_157);
			}
			if (_153.zulu) {
				time += "Z";
			} else {
				if (_153.selector != "time") {
					var _158 = _152.getTimezoneOffset();
					var _159 = Math.abs(_158);
					time += (_158 > 0 ? "-": "+") + _154(Math.floor(_159 / 60)) + ":" + _154(_159 % 60);
				}
			}
			_155.push(time);
		}
		return _155.join("T");
	};
}
if (!dojo._hasResource["dojo.parser"]) {
	dojo._hasResource["dojo.parser"] = true;
	dojo.provide("dojo.parser");
	new Date("X");
	dojo.parser = new
	function() {
		var d = dojo;
		function _15a(_15b) {
			if (d.isString(_15b)) {
				return "string";
			}
			if (typeof _15b == "number") {
				return "number";
			}
			if (typeof _15b == "boolean") {
				return "boolean";
			}
			if (d.isFunction(_15b)) {
				return "function";
			}
			if (d.isArray(_15b)) {
				return "array";
			}
			if (_15b instanceof Date) {
				return "date";
			}
			if (_15b instanceof d._Url) {
				return "url";
			}
			return "object";
		};
		function _15c(_15d, type) {
			switch (type) {
			case "string":
				return _15d;
			case "number":
				return _15d.length ? Number(_15d) : NaN;
			case "boolean":
				return typeof _15d == "boolean" ? _15d: !(_15d.toLowerCase() == "false");
			case "function":
				if (d.isFunction(_15d)) {
					_15d = _15d.toString();
					_15d = d.trim(_15d.substring(_15d.indexOf("{") + 1, _15d.length - 1));
				}
				try {
					if (_15d === "" || _15d.search(/[^\w\.]+/i) != -1) {
						return new Function(_15d);
					} else {
						return d.getObject(_15d, false) || new Function(_15d);
					}
				} catch(e) {
					return new Function();
				}
			case "array":
				return _15d ? _15d.split(/\s*,\s*/) : [];
			case "date":
				switch (_15d) {
				case "":
					return new Date("");
				case "now":
					return new Date();
				default:
					return d.date.stamp.fromISOString(_15d);
				}
			case "url":
				return d.baseUrl + _15d;
			default:
				return d.fromJson(_15d);
			}
		};
		var _15e = {},
		_15f = {};
		d.connect(d, "extend",
		function() {
			_15f = {};
		});
		function _160(cls, _161) {
			for (var name in cls) {
				if (name.charAt(0) == "_") {
					continue;
				}
				if (name in _15e) {
					continue;
				}
				_161[name] = _15a(cls[name]);
			}
			return _161;
		};
		function _162(_163, _164) {
			var c = _15f[_163];
			if (!c) {
				var cls = d.getObject(_163),
				_165 = null;
				if (!cls) {
					return null;
				}
				if (!_164) {
					_165 = _160(cls.prototype, {});
				}
				c = {
					cls: cls,
					params: _165
				};
			} else {
				if (!_164 && !c.params) {
					c.params = _160(c.cls.prototype, {});
				}
			}
			return c;
		};
		this._functionFromScript = function(_166, _167) {
			var _168 = "";
			var _169 = "";
			var _16a = (_166.getAttribute(_167 + "args") || _166.getAttribute("args"));
			if (_16a) {
				d.forEach(_16a.split(/\s*,\s*/),
				function(part, idx) {
					_168 += "var " + part + " = arguments[" + idx + "]; ";
				});
			}
			var _16b = _166.getAttribute("with");
			if (_16b && _16b.length) {
				d.forEach(_16b.split(/\s*,\s*/),
				function(part) {
					_168 += "with(" + part + "){";
					_169 += "}";
				});
			}
			return new Function(_168 + _166.innerHTML + _169);
		};
		this.instantiate = function(_16c, _16d, args) {
			var _16e = [],
			_16d = _16d || {};
			args = args || {};
			var _16f = (args.scope || d._scopeName) + "Type",
			_170 = "data-" + (args.scope || d._scopeName) + "-";
			d.forEach(_16c,
			function(obj) {
				if (!obj) {
					return;
				}
				var node, type, _171, _172, _173, _174;
				if (obj.node) {
					node = obj.node;
					type = obj.type;
					_174 = obj.fastpath;
					_171 = obj.clsInfo || (type && _162(type, _174));
					_172 = _171 && _171.cls;
					_173 = obj.scripts;
				} else {
					node = obj;
					type = _16f in _16d ? _16d[_16f] : node.getAttribute(_16f);
					_171 = type && _162(type);
					_172 = _171 && _171.cls;
					_173 = (_172 && (_172._noScript || _172.prototype._noScript) ? [] : d.query("> script[type^='dojo/']", node));
				}
				if (!_171) {
					throw new Error("Could not load class '" + type);
				}
				var _175 = {};
				if (args.defaults) {
					d._mixin(_175, args.defaults);
				}
				if (obj.inherited) {
					d._mixin(_175, obj.inherited);
				}
				if (_174) {
					var _176 = node.getAttribute(_170 + "props");
					if (_176 && _176.length) {
						try {
							_176 = d.fromJson.call(args.propsThis, "{" + _176 + "}");
							d._mixin(_175, _176);
						} catch(e) {
							throw new Error(e.toString() + " in data-dojo-props='" + _176 + "'");
						}
					}
					var _177 = node.getAttribute(_170 + "attach-point");
					if (_177) {
						_175.dojoAttachPoint = _177;
					}
					var _178 = node.getAttribute(_170 + "attach-event");
					if (_178) {
						_175.dojoAttachEvent = _178;
					}
					dojo.mixin(_175, _16d);
				} else {
					var _179 = node.attributes;
					for (var name in _171.params) {
						var item = name in _16d ? {
							value: _16d[name],
							specified: true
						}: _179.getNamedItem(name);
						if (!item || (!item.specified && (!dojo.isIE || name.toLowerCase() != "value"))) {
							continue;
						}
						var _17a = item.value;
						switch (name) {
						case "class":
							_17a = "className" in _16d ? _16d.className: node.className;
							break;
						case "style":
							_17a = "style" in _16d ? _16d.style: (node.style && node.style.cssText);
						}
						var _17b = _171.params[name];
						if (typeof _17a == "string") {
							_175[name] = _15c(_17a, _17b);
						} else {
							_175[name] = _17a;
						}
					}
				}
				var _17c = [],
				_17d = [];
				d.forEach(_173,
				function(_17e) {
					node.removeChild(_17e);
					var _17f = (_17e.getAttribute(_170 + "event") || _17e.getAttribute("event")),
					type = _17e.getAttribute("type"),
					nf = d.parser._functionFromScript(_17e, _170);
					if (_17f) {
						if (type == "dojo/connect") {
							_17c.push({
								event: _17f,
								func: nf
							});
						} else {
							_175[_17f] = nf;
						}
					} else {
						_17d.push(nf);
					}
				});
				var _180 = _172.markupFactory || _172.prototype && _172.prototype.markupFactory;
				var _181 = _180 ? _180(_175, node, _172) : new _172(_175, node);
				_16e.push(_181);
				var _182 = (node.getAttribute(_170 + "id") || node.getAttribute("jsId"));
				if (_182) {
					d.setObject(_182, _181);
				}
				d.forEach(_17c,
				function(_183) {
					d.connect(_181, _183.event, null, _183.func);
				});
				d.forEach(_17d,
				function(func) {
					func.call(_181);
				});
			});
			if (!_16d._started) {
				d.forEach(_16e,
				function(_184) {
					if (!args.noStart && _184 && dojo.isFunction(_184.startup) && !_184._started && (!_184.getParent || !_184.getParent())) {
						_184.startup();
					}
				});
			}
			return _16e;
		};
		this.parse = function(_185, args) {
			var root;
			if (!args && _185 && _185.rootNode) {
				args = _185;
				root = args.rootNode;
			} else {
				root = _185;
			}
			root = root ? dojo.byId(root) : dojo.body();
			args = args || {};
			var _186 = (args.scope || d._scopeName) + "Type",
			_187 = "data-" + (args.scope || d._scopeName) + "-";
			function scan(_188, list) {
				var _189 = dojo.clone(_188.inherited);
				dojo.forEach(["dir", "lang"],
				function(name) {
					var val = _188.node.getAttribute(name);
					if (val) {
						_189[name] = val;
					}
				});
				var _18a = _188.clsInfo && !_188.clsInfo.cls.prototype._noScript ? _188.scripts: null;
				var _18b = (!_188.clsInfo || !_188.clsInfo.cls.prototype.stopParser) || (args && args.template);
				for (var _18c = _188.node.firstChild; _18c; _18c = _18c.nextSibling) {
					if (_18c.nodeType == 1) {
						var type, _18d = _18b && _18c.getAttribute(_187 + "type");
						if (_18d) {
							type = _18d;
						} else {
							type = _18b && _18c.getAttribute(_186);
						}
						var _18e = _18d == type;
						if (type) {
							var _18f = {
								"type": type,
								fastpath: _18e,
								clsInfo: _162(type, _18e),
								node: _18c,
								scripts: [],
								inherited: _189
							};
							list.push(_18f);
							scan(_18f, list);
						} else {
							if (_18a && _18c.nodeName.toLowerCase() == "script") {
								type = _18c.getAttribute("type");
								if (type && /^dojo\/\w/i.test(type)) {
									_18a.push(_18c);
								}
							} else {
								if (_18b) {
									scan({
										node: _18c,
										inherited: _189
									},
									list);
								}
							}
						}
					}
				}
			};
			var _190 = {};
			if (args && args.inherited) {
				for (var key in args.inherited) {
					if (args.inherited[key]) {
						_190[key] = args.inherited[key];
					}
				}
			}
			var list = [];
			scan({
				node: root,
				inherited: _190
			},
			list);
			var _191 = args && args.template ? {
				template: true
			}: null;
			return this.instantiate(list, _191, args);
		};
	} ();
	(function() {
		var _192 = function() {
			if (dojo.config.parseOnLoad) {
				dojo.parser.parse();
			}
		};
		if (dojo.getObject("dijit.wai.onload") === dojo._loaders[0]) {
			dojo._loaders.splice(1, 0, _192);
		} else {
			dojo._loaders.unshift(_192);
		}
	})();
}
if (!dojo._hasResource["dojo.cache"]) {
	dojo._hasResource["dojo.cache"] = true;
	dojo.provide("dojo.cache");
	var cache = {};
	dojo.cache = function(_193, url, _194) {
		if (typeof _193 == "string") {
			var _195 = dojo.moduleUrl(_193, url);
		} else {
			_195 = _193;
			_194 = url;
		}
		var key = _195.toString();
		var val = _194;
		if (_194 != undefined && !dojo.isString(_194)) {
			val = ("value" in _194 ? _194.value: undefined);
		}
		var _196 = _194 && _194.sanitize ? true: false;
		if (typeof val == "string") {
			val = cache[key] = _196 ? dojo.cache._sanitize(val) : val;
		} else {
			if (val === null) {
				delete cache[key];
			} else {
				if (! (key in cache)) {
					val = dojo._getText(key);
					cache[key] = _196 ? dojo.cache._sanitize(val) : val;
				}
				val = cache[key];
			}
		}
		return val;
	};
	dojo.cache._sanitize = function(val) {
		if (val) {
			val = val.replace(/^\s*<\?xml(\s)+version=[\'\"](\d)*.(\d)*[\'\"](\s)*\?>/im, "");
			var _197 = val.match(/<body[^>]*>\s*([\s\S]+)\s*<\/body>/im);
			if (_197) {
				val = _197[1];
			}
		} else {
			val = "";
		}
		return val;
	};
}
if (!dojo._hasResource["dijit._Templated"]) {
	dojo._hasResource["dijit._Templated"] = true;
	dojo.provide("dijit._Templated");
	dojo.declare("dijit._Templated", null, {
		templateString: null,
		templatePath: null,
		widgetsInTemplate: false,
		_skipNodeCache: false,
		_earlyTemplatedStartup: false,
		constructor: function() {
			this._attachPoints = [];
			this._attachEvents = [];
		},
		_stringRepl: function(tmpl) {
			var _198 = this.declaredClass,
			_199 = this;
			return dojo.string.substitute(tmpl, this,
			function(_19a, key) {
				if (key.charAt(0) == "!") {
					_19a = dojo.getObject(key.substr(1), false, _199);
				}
				if (typeof _19a == "undefined") {
					throw new Error(_198 + " template:" + key);
				}
				if (_19a == null) {
					return "";
				}
				return key.charAt(0) == "!" ? _19a: _19a.toString().replace(/"/g, "&quot;");
			},
			this);
		},
		buildRendering: function() {
			var _19b = dijit._Templated.getCachedTemplate(this.templatePath, this.templateString, this._skipNodeCache);
			var node;
			if (dojo.isString(_19b)) {
				node = dojo._toDom(this._stringRepl(_19b));
				if (node.nodeType != 1) {
					throw new Error("Invalid template: " + _19b);
				}
			} else {
				node = _19b.cloneNode(true);
			}
			this.domNode = node;
			this.inherited(arguments);
			this._attachTemplateNodes(node);
			if (this.widgetsInTemplate) {
				var cw = (this._startupWidgets = dojo.parser.parse(node, {
					noStart: !this._earlyTemplatedStartup,
					template: true,
					inherited: {
						dir: this.dir,
						lang: this.lang
					},
					propsThis: this,
					scope: "dojo"
				}));
				this._supportingWidgets = dijit.findWidgets(node);
				this._attachTemplateNodes(cw,
				function(n, p) {
					return n[p];
				});
			}
			this._fillContent(this.srcNodeRef);
		},
		_fillContent: function(_19c) {
			var dest = this.containerNode;
			if (_19c && dest) {
				while (_19c.hasChildNodes()) {
					dest.appendChild(_19c.firstChild);
				}
			}
		},
		_attachTemplateNodes: function(_19d, _19e) {
			_19e = _19e ||
			function(n, p) {
				return n.getAttribute(p);
			};
			var _19f = dojo.isArray(_19d) ? _19d: (_19d.all || _19d.getElementsByTagName("*"));
			var x = dojo.isArray(_19d) ? 0 : -1;
			for (; x < _19f.length; x++) {
				var _1a0 = (x == -1) ? _19d: _19f[x];
				if (this.widgetsInTemplate && (_19e(_1a0, "dojoType") || _19e(_1a0, "data-dojo-type"))) {
					continue;
				}
				var _1a1 = _19e(_1a0, "dojoAttachPoint") || _19e(_1a0, "data-dojo-attach-point");
				if (_1a1) {
					var _1a2, _1a3 = _1a1.split(/\s*,\s*/);
					while ((_1a2 = _1a3.shift())) {
						if (dojo.isArray(this[_1a2])) {
							this[_1a2].push(_1a0);
						} else {
							this[_1a2] = _1a0;
						}
						this._attachPoints.push(_1a2);
					}
				}
				var _1a4 = _19e(_1a0, "dojoAttachEvent") || _19e(_1a0, "data-dojo-attach-event");
				if (_1a4) {
					var _1a5, _1a6 = _1a4.split(/\s*,\s*/);
					var trim = dojo.trim;
					while ((_1a5 = _1a6.shift())) {
						if (_1a5) {
							var _1a7 = null;
							if (_1a5.indexOf(":") != -1) {
								var _1a8 = _1a5.split(":");
								_1a5 = trim(_1a8[0]);
								_1a7 = trim(_1a8[1]);
							} else {
								_1a5 = trim(_1a5);
							}
							if (!_1a7) {
								_1a7 = _1a5;
							}
							this._attachEvents.push(this.connect(_1a0, _1a5, _1a7));
						}
					}
				}
				var role = _19e(_1a0, "waiRole");
				if (role) {
					dijit.setWaiRole(_1a0, role);
				}
				var _1a9 = _19e(_1a0, "waiState");
				if (_1a9) {
					dojo.forEach(_1a9.split(/\s*,\s*/),
					function(_1aa) {
						if (_1aa.indexOf("-") != -1) {
							var pair = _1aa.split("-");
							dijit.setWaiState(_1a0, pair[0], pair[1]);
						}
					});
				}
			}
		},
		startup: function() {
			dojo.forEach(this._startupWidgets,
			function(w) {
				if (w && !w._started && w.startup) {
					w.startup();
				}
			});
			this.inherited(arguments);
		},
		destroyRendering: function() {
			dojo.forEach(this._attachPoints,
			function(_1ab) {
				delete this[_1ab];
			},
			this);
			this._attachPoints = [];
			dojo.forEach(this._attachEvents, this.disconnect, this);
			this._attachEvents = [];
			this.inherited(arguments);
		}
	});
	dijit._Templated._templateCache = {};
	dijit._Templated.getCachedTemplate = function(_1ac, _1ad, _1ae) {
		var _1af = dijit._Templated._templateCache;
		var key = _1ad || _1ac;
		var _1b0 = _1af[key];
		if (_1b0) {
			try {
				if (!_1b0.ownerDocument || _1b0.ownerDocument == dojo.doc) {
					return _1b0;
				}
			} catch(e) {}
			dojo.destroy(_1b0);
		}
		if (!_1ad) {
			_1ad = dojo.cache(_1ac, {
				sanitize: true
			});
		}
		_1ad = dojo.string.trim(_1ad);
		if (_1ae || _1ad.match(/\$\{([^\}]+)\}/g)) {
			return (_1af[key] = _1ad);
		} else {
			var node = dojo._toDom(_1ad);
			if (node.nodeType != 1) {
				throw new Error("Invalid template: " + _1ad);
			}
			return (_1af[key] = node);
		}
	};
	if (dojo.isIE) {
		dojo.addOnWindowUnload(function() {
			var _1b1 = dijit._Templated._templateCache;
			for (var key in _1b1) {
				var _1b2 = _1b1[key];
				if (typeof _1b2 == "object") {
					dojo.destroy(_1b2);
				}
				delete _1b1[key];
			}
		});
	}
	dojo.extend(dijit._Widget, {
		dojoAttachEvent: "",
		dojoAttachPoint: "",
		waiRole: "",
		waiState: ""
	});
}
if (!dojo._hasResource["dijit._Container"]) {
	dojo._hasResource["dijit._Container"] = true;
	dojo.provide("dijit._Container");
	dojo.declare("dijit._Container", null, {
		isContainer: true,
		buildRendering: function() {
			this.inherited(arguments);
			if (!this.containerNode) {
				this.containerNode = this.domNode;
			}
		},
		addChild: function(_1b3, _1b4) {
			var _1b5 = this.containerNode;
			if (_1b4 && typeof _1b4 == "number") {
				var _1b6 = this.getChildren();
				if (_1b6 && _1b6.length >= _1b4) {
					_1b5 = _1b6[_1b4 - 1].domNode;
					_1b4 = "after";
				}
			}
			dojo.place(_1b3.domNode, _1b5, _1b4);
			if (this._started && !_1b3._started) {
				_1b3.startup();
			}
		},
		removeChild: function(_1b7) {
			if (typeof _1b7 == "number") {
				_1b7 = this.getChildren()[_1b7];
			}
			if (_1b7) {
				var node = _1b7.domNode;
				if (node && node.parentNode) {
					node.parentNode.removeChild(node);
				}
			}
		},
		hasChildren: function() {
			return this.getChildren().length > 0;
		},
		destroyDescendants: function(_1b8) {
			dojo.forEach(this.getChildren(),
			function(_1b9) {
				_1b9.destroyRecursive(_1b8);
			});
		},
		_getSiblingOfChild: function(_1ba, dir) {
			var node = _1ba.domNode,
			_1bb = (dir > 0 ? "nextSibling": "previousSibling");
			do {
				node = node[_1bb];
			} while ( node && ( node . nodeType != 1 || ! dijit . byNode ( node )));
			return node && dijit.byNode(node);
		},
		getIndexOfChild: function(_1bc) {
			return dojo.indexOf(this.getChildren(), _1bc);
		},
		startup: function() {
			if (this._started) {
				return;
			}
			dojo.forEach(this.getChildren(),
			function(_1bd) {
				_1bd.startup();
			});
			this.inherited(arguments);
		}
	});
}
if (!dojo._hasResource["dijit._Contained"]) {
	dojo._hasResource["dijit._Contained"] = true;
	dojo.provide("dijit._Contained");
	dojo.declare("dijit._Contained", null, {
		getParent: function() {
			var _1be = dijit.getEnclosingWidget(this.domNode.parentNode);
			return _1be && _1be.isContainer ? _1be: null;
		},
		_getSibling: function(_1bf) {
			var node = this.domNode;
			do {
				node = node[_1bf + "Sibling"];
			} while ( node && node . nodeType != 1 );
			return node && dijit.byNode(node);
		},
		getPreviousSibling: function() {
			return this._getSibling("previous");
		},
		getNextSibling: function() {
			return this._getSibling("next");
		},
		getIndexInParent: function() {
			var p = this.getParent();
			if (!p || !p.getIndexOfChild) {
				return - 1;
			}
			return p.getIndexOfChild(this);
		}
	});
}
if (!dojo._hasResource["dojo.NodeList-traverse"]) {
	dojo._hasResource["dojo.NodeList-traverse"] = true;
	dojo.provide("dojo.NodeList-traverse");
	dojo.extend(dojo.NodeList, {
		_buildArrayFromCallback: function(_1c0) {
			var ary = [];
			for (var i = 0; i < this.length; i++) {
				var _1c1 = _1c0.call(this[i], this[i], ary);
				if (_1c1) {
					ary = ary.concat(_1c1);
				}
			}
			return ary;
		},
		_getUniqueAsNodeList: function(_1c2) {
			var ary = [];
			for (var i = 0, node; node = _1c2[i]; i++) {
				if (node.nodeType == 1 && dojo.indexOf(ary, node) == -1) {
					ary.push(node);
				}
			}
			return this._wrap(ary, null, this._NodeListCtor);
		},
		_getUniqueNodeListWithParent: function(_1c3, _1c4) {
			var ary = this._getUniqueAsNodeList(_1c3);
			ary = (_1c4 ? dojo._filterQueryResult(ary, _1c4) : ary);
			return ary._stash(this);
		},
		_getRelatedUniqueNodes: function(_1c5, _1c6) {
			return this._getUniqueNodeListWithParent(this._buildArrayFromCallback(_1c6), _1c5);
		},
		children: function(_1c7) {
			return this._getRelatedUniqueNodes(_1c7,
			function(node, ary) {
				return dojo._toArray(node.childNodes);
			});
		},
		closest: function(_1c8, root) {
			return this._getRelatedUniqueNodes(null,
			function(node, ary) {
				do {
					if (dojo._filterQueryResult([node], _1c8, root).length) {
						return node;
					}
				} while ( node != root && ( node = node . parentNode ) && node.nodeType == 1);
				return null;
			});
		},
		parent: function(_1c9) {
			return this._getRelatedUniqueNodes(_1c9,
			function(node, ary) {
				return node.parentNode;
			});
		},
		parents: function(_1ca) {
			return this._getRelatedUniqueNodes(_1ca,
			function(node, ary) {
				var pary = [];
				while (node.parentNode) {
					node = node.parentNode;
					pary.push(node);
				}
				return pary;
			});
		},
		siblings: function(_1cb) {
			return this._getRelatedUniqueNodes(_1cb,
			function(node, ary) {
				var pary = [];
				var _1cc = (node.parentNode && node.parentNode.childNodes);
				for (var i = 0; i < _1cc.length; i++) {
					if (_1cc[i] != node) {
						pary.push(_1cc[i]);
					}
				}
				return pary;
			});
		},
		next: function(_1cd) {
			return this._getRelatedUniqueNodes(_1cd,
			function(node, ary) {
				var next = node.nextSibling;
				while (next && next.nodeType != 1) {
					next = next.nextSibling;
				}
				return next;
			});
		},
		nextAll: function(_1ce) {
			return this._getRelatedUniqueNodes(_1ce,
			function(node, ary) {
				var pary = [];
				var next = node;
				while ((next = next.nextSibling)) {
					if (next.nodeType == 1) {
						pary.push(next);
					}
				}
				return pary;
			});
		},
		prev: function(_1cf) {
			return this._getRelatedUniqueNodes(_1cf,
			function(node, ary) {
				var prev = node.previousSibling;
				while (prev && prev.nodeType != 1) {
					prev = prev.previousSibling;
				}
				return prev;
			});
		},
		prevAll: function(_1d0) {
			return this._getRelatedUniqueNodes(_1d0,
			function(node, ary) {
				var pary = [];
				var prev = node;
				while ((prev = prev.previousSibling)) {
					if (prev.nodeType == 1) {
						pary.push(prev);
					}
				}
				return pary;
			});
		},
		andSelf: function() {
			return this.concat(this._parent);
		},
		first: function() {
			return this._wrap(((this[0] && [this[0]]) || []), this);
		},
		last: function() {
			return this._wrap((this.length ? [this[this.length - 1]] : []), this);
		},
		even: function() {
			return this.filter(function(item, i) {
				return i % 2 != 0;
			});
		},
		odd: function() {
			return this.filter(function(item, i) {
				return i % 2 == 0;
			});
		}
	});
}
if (!dojo._hasResource["dojo.NodeList-manipulate"]) {
	dojo._hasResource["dojo.NodeList-manipulate"] = true;
	dojo.provide("dojo.NodeList-manipulate");
	(function() {
		function _1d1(node) {
			var text = "",
			ch = node.childNodes;
			for (var i = 0, n; n = ch[i]; i++) {
				if (n.nodeType != 8) {
					if (n.nodeType == 1) {
						text += _1d1(n);
					} else {
						text += n.nodeValue;
					}
				}
			}
			return text;
		};
		function _1d2(node) {
			while (node.childNodes[0] && node.childNodes[0].nodeType == 1) {
				node = node.childNodes[0];
			}
			return node;
		};
		function _1d3(html, _1d4) {
			if (typeof html == "string") {
				html = dojo._toDom(html, (_1d4 && _1d4.ownerDocument));
				if (html.nodeType == 11) {
					html = html.childNodes[0];
				}
			} else {
				if (html.nodeType == 1 && html.parentNode) {
					html = html.cloneNode(false);
				}
			}
			return html;
		};
		dojo.extend(dojo.NodeList, {
			_placeMultiple: function(_1d5, _1d6) {
				var nl2 = typeof _1d5 == "string" || _1d5.nodeType ? dojo.query(_1d5) : _1d5;
				var _1d7 = [];
				for (var i = 0; i < nl2.length; i++) {
					var _1d8 = nl2[i];
					var _1d9 = this.length;
					for (var j = _1d9 - 1, item; item = this[j]; j--) {
						if (i > 0) {
							item = this._cloneNode(item);
							_1d7.unshift(item);
						}
						if (j == _1d9 - 1) {
							dojo.place(item, _1d8, _1d6);
						} else {
							_1d8.parentNode.insertBefore(item, _1d8);
						}
						_1d8 = item;
					}
				}
				if (_1d7.length) {
					_1d7.unshift(0);
					_1d7.unshift(this.length - 1);
					Array.prototype.splice.apply(this, _1d7);
				}
				return this;
			},
			innerHTML: function(_1da) {
				if (arguments.length) {
					return this.addContent(_1da, "only");
				} else {
					return this[0].innerHTML;
				}
			},
			text: function(_1db) {
				if (arguments.length) {
					for (var i = 0, node; node = this[i]; i++) {
						if (node.nodeType == 1) {
							dojo.empty(node);
							node.appendChild(node.ownerDocument.createTextNode(_1db));
						}
					}
					return this;
				} else {
					var _1dc = "";
					for (i = 0; node = this[i]; i++) {
						_1dc += _1d1(node);
					}
					return _1dc;
				}
			},
			val: function(_1dd) {
				if (arguments.length) {
					var _1de = dojo.isArray(_1dd);
					for (var _1df = 0, node; node = this[_1df]; _1df++) {
						var name = node.nodeName.toUpperCase();
						var type = node.type;
						var _1e0 = _1de ? _1dd[_1df] : _1dd;
						if (name == "SELECT") {
							var opts = node.options;
							for (var i = 0; i < opts.length; i++) {
								var opt = opts[i];
								if (node.multiple) {
									opt.selected = (dojo.indexOf(_1dd, opt.value) != -1);
								} else {
									opt.selected = (opt.value == _1e0);
								}
							}
						} else {
							if (type == "checkbox" || type == "radio") {
								node.checked = (node.value == _1e0);
							} else {
								node.value = _1e0;
							}
						}
					}
					return this;
				} else {
					node = this[0];
					if (!node || node.nodeType != 1) {
						return undefined;
					}
					_1dd = node.value || "";
					if (node.nodeName.toUpperCase() == "SELECT" && node.multiple) {
						_1dd = [];
						opts = node.options;
						for (i = 0; i < opts.length; i++) {
							opt = opts[i];
							if (opt.selected) {
								_1dd.push(opt.value);
							}
						}
						if (!_1dd.length) {
							_1dd = null;
						}
					}
					return _1dd;
				}
			},
			append: function(_1e1) {
				return this.addContent(_1e1, "last");
			},
			appendTo: function(_1e2) {
				return this._placeMultiple(_1e2, "last");
			},
			prepend: function(_1e3) {
				return this.addContent(_1e3, "first");
			},
			prependTo: function(_1e4) {
				return this._placeMultiple(_1e4, "first");
			},
			after: function(_1e5) {
				return this.addContent(_1e5, "after");
			},
			insertAfter: function(_1e6) {
				return this._placeMultiple(_1e6, "after");
			},
			before: function(_1e7) {
				return this.addContent(_1e7, "before");
			},
			insertBefore: function(_1e8) {
				return this._placeMultiple(_1e8, "before");
			},
			remove: dojo.NodeList.prototype.orphan,
			wrap: function(html) {
				if (this[0]) {
					html = _1d3(html, this[0]);
					for (var i = 0, node; node = this[i]; i++) {
						var _1e9 = this._cloneNode(html);
						if (node.parentNode) {
							node.parentNode.replaceChild(_1e9, node);
						}
						var _1ea = _1d2(_1e9);
						_1ea.appendChild(node);
					}
				}
				return this;
			},
			wrapAll: function(html) {
				if (this[0]) {
					html = _1d3(html, this[0]);
					this[0].parentNode.replaceChild(html, this[0]);
					var _1eb = _1d2(html);
					for (var i = 0, node; node = this[i]; i++) {
						_1eb.appendChild(node);
					}
				}
				return this;
			},
			wrapInner: function(html) {
				if (this[0]) {
					html = _1d3(html, this[0]);
					for (var i = 0; i < this.length; i++) {
						var _1ec = this._cloneNode(html);
						this._wrap(dojo._toArray(this[i].childNodes), null, this._NodeListCtor).wrapAll(_1ec);
					}
				}
				return this;
			},
			replaceWith: function(_1ed) {
				_1ed = this._normalize(_1ed, this[0]);
				for (var i = 0, node; node = this[i]; i++) {
					this._place(_1ed, node, "before", i > 0);
					node.parentNode.removeChild(node);
				}
				return this;
			},
			replaceAll: function(_1ee) {
				var nl = dojo.query(_1ee);
				var _1ef = this._normalize(this, this[0]);
				for (var i = 0, node; node = nl[i]; i++) {
					this._place(_1ef, node, "before", i > 0);
					node.parentNode.removeChild(node);
				}
				return this;
			},
			clone: function() {
				var ary = [];
				for (var i = 0; i < this.length; i++) {
					ary.push(this._cloneNode(this[i]));
				}
				return this._wrap(ary, this, this._NodeListCtor);
			}
		});
		if (!dojo.NodeList.prototype.html) {
			dojo.NodeList.prototype.html = dojo.NodeList.prototype.innerHTML;
		}
	})();
}
if (!dojo._hasResource["famousweb.string"]) {
	dojo._hasResource["famousweb.string"] = true;
	dojo.provide("famousweb.string");
	famousweb.string.normalizeSpace = function(str) {
		return str.replace(/\s+/g, " ");
	};
	String.prototype.normalizeSpace = function() {
		return famousweb.string.normalizeSpace(this);
	};
	famousweb.string.trim = function(str) {
		return str.replace(/^\s+/, "").replace(/\s+$/, "");
	};
	String.prototype.trim = function() {
		return famousweb.string.trim(this);
	};
	famousweb.string.htmlspecialchars = function(str) {
		return str.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/'/g, "&#039;").replace(/"/g, "&quot;");
	};
	String.prototype.htmlspecialchars = function() {
		return famousweb.string.htmlspecialchars(this);
	};
	famousweb.string.StringBuffer = function() {
		this.buffer = [];
	};
	famousweb.string.StringBuffer.prototype.append = function append(_1f0) {
		this.buffer.push(_1f0);
		return this;
	};
	famousweb.string.StringBuffer.prototype.toString = function toString(_1f1) {
		if (!this.buffer) {
			return "";
		}
		_1f1 = _1f1 || "";
		return this.buffer.join(_1f1);
	};
}
if (!dojo._hasResource["famousweb.util"]) {
	dojo._hasResource["famousweb.util"] = true;
	dojo.provide("famousweb.util");
	famousweb.util.__idcount = 0;
	famousweb.util.generateId = function() {
		var nid;
		do {
			famousweb.util.__idcount++;
			nid = "gi-" + famousweb.util.__idcount;
		} while ( document . getElementById ( nid ) != null);
		return nid;
	};
	famousweb.util.getUrl = function() {
		var url = dojo.query("link[rel=canonical]").attr("href");
		if (url.length != 0) {
			return url[0];
		}
		url = location.href;
		if (url.indexOf("?") != -1) {
			var _1f2 = url.substr(0, url.indexOf("?"));
			var _1f3 = url.substr(url.indexOf("?") + 1).split("&");
			var _1f4 = /^(cm_re|ca|me|met|re)=/;
			var _1f5 = [];
			for (var i = 0, j = _1f3.length; i < j; i++) {
				if (!_1f4.test(_1f3[i])) {
					_1f5.push(_1f3[i]);
				}
			}
			url = _1f2 + "?" + _1f5.join("&");
		}
		return url;
	};
	famousweb.util.statsHelper = function(e) {
		if (typeof(famousStats) != "undefined" && typeof(famousStats.event) != "undefined") {
			if (!e.famousEvLinkTitle && !e.famousEvLinktitle) {
				var _1f6 = dojo.query("h1:first");
				if (_1f6.length > 0 && _1f6[0].innerHTML) {
					dojo.mixin(e, {
						"famousEvLinkTitle": _1f6[0].innerHTML
					});
				}
			}
			famousStats.event(e);
		}
	};
	famousweb.util.preloadImages = function(_1f7, _1f8) {
		var _1f9 = dojo.create("div", {
			style: {
				position: "absolute",
				top: "-9999px",
				height: "1px",
				overflow: "hidden"
			}
		},
		dojo.body());
		var _1fa = 0;
		dojo.forEach(_1f7,
		function(url) {
			var img = dojo.create("img", {
				src: url
			},
			_1f9);
			dojo.connect(img, "onload",
			function() {
				_1fa += 1;
				if (_1fa == _1f7.length) {
					if (typeof(_1f8) == "string") {
						dojo.publish(_1f8);
					} else {
						_1f8();
					}
				}
			});
		});
	};
}
if (!dojo._hasResource["famousweb.queue"]) {
	dojo._hasResource["famousweb.queue"] = true;
	dojo.provide("famousweb.queue");
	famousweb.queue._queue = [];
	famousweb.queue._timer = null;
	famousweb.queue._count = 0;
	famousweb.queue._lock = false;
	famousweb.queue.push = function(_1fb, _1fc) {
		famousweb.queue._count++;
		famousweb.queue._queue.push([famousweb.queue._count, _1fb, _1fc]);
		famousweb.queue._work();
		return famousweb.queue._count;
	};
	famousweb.queue.unshift = function(_1fd, _1fe) {
		famousweb.queue._count++;
		famousweb.queue._queue.unshift([famousweb.queue._count, _1fd, _1fe]);
		famousweb.queue._work();
		return famousweb.queue._count;
	};
	famousweb.queue.remove = function(_1ff) {
		for (var i = 0, j = famousweb.queue._queue.length; i < j; i++) {
			if (famousweb.queue._queue[i][0] == _1ff) {
				famousweb.queue._queue.splice(i, 1);
				return true;
			}
		}
		return false;
	};
	famousweb.queue._work = function() {
		if (famousweb.queue._lock) {
			return;
		}
		if (famousweb.queue._queue.length == 0) {
			return;
		}
		famousweb.queue._lock = true;
		for (var i = 0, j = famousweb.queue._queue.length; i < j; i++) {
			if (famousweb.queue._queue[i][1]()) {
				famousweb.queue._queue[i][2]();
				famousweb.queue._queue.splice(i, 1);
				i--;
				j = famousweb.queue._queue.length;
			}
		}
		famousweb.queue._lock = false;
		famousweb.queue._timer = setTimeout(famousweb.queue._work, 50);
	};
	famousweb.queue.waitForElement = function(_200, _201, _202) {
		if (dojo._postLoad && typeof(_202) != "undefined" && _202 == true) {
			_201();
			return;
		}
		var done = false;
		var eid = famousweb.queue.push(function() {
			return document.getElementById(_200) != null;
		},
		function() {
			if (done) {
				return;
			}
			done = true;
			_201();
		});
		if (typeof(_202) != "undefined" && _202 == true) {
			dojo.addOnLoad(function() {
				if (done) {
					return;
				}
				done = true;
				famousweb.queue.remove(eid);
				_201();
			});
		}
	};
}
if (!dojo._hasResource["famousweb.meta"]) {
	dojo._hasResource["famousweb.meta"] = true;
	dojo.provide("famousweb.meta");
	famousweb.meta.isLoaded = false;
	famousweb.meta._init = function() {
		var tags = dojo.query("head meta").forEach(function(tag, _203, _204) {
			var name = tag.httpEquiv || tag.name;
			name = name.toLowerCase().replace(/[^\w]/g, "_");
			famousweb.meta[name] = dojo.attr(tag, "content");
		});
		this.wwCase = "";
		this.cc = "";
		this.lc = "";
		if ( !! this.famous_country) {
			this.cc = this.famous_country.toLowerCase().trim();
			if (this.cc.indexOf(",") > -1) {
				this.cc = this.cc.substring(0, this.cc.indexOf(",")).trim();
			}
			if (this.cc == "gb") {
				this.cc = "uk";
			}
			if (this.cc == "zz") {
				this.cc = "us";
				this.wwCase = "Y";
			}
		}
		if ( !! this.dc_language) {
			this.lc = this.dc_language.substring(0, 2).toLowerCase();
		}
		this.lc = this.lc || "en";
		this.cc = this.cc || "us";
		this.cc = dojo.getObject("famousweb.config.meta.cc") || this.cc;
		this.lc = dojo.getObject("famousweb.config.meta.lc") || this.lc;
		this.cpi = this.cc + this.lc;
		if (!this.dc_subject) {
			this.dc_subject = "ZZ999";
		}
		if (this.famous_pageattributes == null) {
			this.famous_pageattributes = "";
		}
		this.encoding = "utf8";
		this.encodingRaw = "UTF-8";
		if (this.content_type != null) {
			this.encodingRaw = this.content_type.substring(this.content_type.indexOf("=") + 1);
			this.encoding = this.encodingRaw.replace("-", "").replace("_", "").toLowerCase();
		}
		this.title = "";
		var tmp = dojo.query("title");
		if (tmp.length > 0) {
			this.title = tmp[0].innerHTML;
		}
		dojo.locale = dojo.config.locale = this.lc + "-" + this.cc;
		if (famousweb.meta._preloads.length > 0 && dojo.locale != "en-us") {
			for (var i = 0, j = famousweb.meta._preloads.length; i < j; i++) {
				famousweb.meta._preloadHack(famousweb.meta._preloads[i], famousweb.meta._preloadLocales);
			}
		}
		famousweb.meta.isLoaded = true;
	};
	famousweb.meta._preloads = [];
	if (dojo._hasResource["dojo.i18n"]) {
		famousweb.meta._preloadHack = dojo.i18n._preloadLocalizations;
		dojo.i18n._preloadLocalizations = function(_205, _206) {
			famousweb.meta._preloads.push(_205);
			famousweb.meta._preloadLocales = _206;
			famousweb.meta._preloadHack.apply(dojo.i18n, arguments);
		};
	}
	famousweb.queue.waitForElement("famous-top",
	function() {
		famousweb.meta._init();
	},
	true);
}
if (!dojo._hasResource["famousweb.info"]) {
	dojo._hasResource["famousweb.info"] = true;
	dojo.provide("famousweb.info");
	famousweb.info.isLoaded = false;
	famousweb.info._init = function() {
		this.v11 = this.v14 = this.v15 = this.v16 = this.v17 = this.www = this.w3 = false;
		dojo.query("link[rel^=\"style\"]").forEach(function(node) {
			if (node.href.indexOf("/common/v17/") != -1) {
				famousweb.info.v17 = true;
			} else {
				if (node.href.indexOf("/common/v16/css/screen") != -1) {
					famousweb.info.v16 = true;
				} else {
					if (node.href.indexOf("/common/v15/") != -1) {
						famousweb.info.v15 = true;
					} else {
						if (node.href.indexOf("/common/v14/") != -1) {
							famousweb.info.v14 = true;
						} else {
							if (node.href.indexOf("/data/css/v11/") != -1) {
								famousweb.info.v11 = true;
							}
						}
					}
				}
			}
		});
		if (famousweb.info.v16 && famousweb.info.v17) {
			famousweb.info.v17 = false;
		}
		if (famousweb.config.config == "www") {
			this.www = true;
		}
		if (famousweb.config.config == "w3") {
			this.w3 = true;
		}
		var m = "msie",
		ua = navigator.userAgent.toLowerCase(),
		v = 0;
		var mi = ua.indexOf(m);
		if (ua.indexOf("opera") == -1 && mi != -1) {
			this.isIE = true;
			v = parseFloat(ua.substring(mi + m.length).replace(/^[^0-9]+/, ""));
		} else {
			this.isIE = false;
		}
		this.ieVersion = isNaN(v) ? 0 : v;
		var ts = [];
		this.isGecko = ua.indexOf("gecko") != -1 && ua.indexOf("khtml") == -1;
		this.geckoVersion = 0;
		if (this.isGecko) {
			ts = ua.split("rv:");
			if (ts.length > 1) {
				v = parseFloat(ts[1]);
			}
			this.geckoVersion = isNaN(v) ? 0 : v;
		}
		var str = "opera";
		var si = ua.indexOf(str);
		if (si == -1) {
			this.isOldOpera = false;
		} else {
			var ver = parseFloat(ua.substring(si + str.length));
			if (ver < 9) {
				this.isOldOpera = true;
			} else {
				this.isOldOpera = false;
			}
		}
		this.isLinux = (navigator.userAgent.indexOf("Linux") > -1);
		this.isDOM = ( !! document.createElement && !!document.createTextNode && !!document.getElementById && !!document.getElementsByTagName);
		this.iDevice = /iPad|iPhone|iPod/i.test(navigator.userAgent);
		famousweb.info.isLoaded = true;
	};
	famousweb.queue.waitForElement("famous-top",
	function() {
		famousweb.info._init();
	},
	true);
}
if (!dojo._hasResource["famousweb.callback"]) {
	dojo._hasResource["famousweb.callback"] = true;
	dojo.provide("famousweb.callback");
	famousweb.callback.__callbacks = {};
	famousweb.callback.register = function(_207, _208) {
		if ( !! _208 && !!_207 && dojo.isFunction(_208)) {
			if (dojo.indexOf(famousweb.callback.__callbacks, _207) == -1) {
				famousweb.callback.__callbacks[_207] = [];
			}
			famousweb.callback.__callbacks[_207].push(_208);
		}
	};
	famousweb.callback.call = function(_209, data) {
		if ( !! _209 && !!famousweb.callback.__callbacks[_209] != -1) {
			for (var i = 0, j = famousweb.callback.__callbacks[_209].length; i < j; i++) {
				famousweb.callback.__callbacks[_209][i].call(null, data);
			}
		}
	};
	famousweb.callback.createJSONPWrapper = function() {
		var _20a = null;
		if (typeof(arguments[0]) == "function") {
			_20a = dojo.partial.apply(dojo.partial, arguments);
		} else {
			_20a = dojo.hitch.apply(dojo.hitch, arguments);
		}
		var _20b = "__tmpcallback" + Math.round(Math.random() * 100000);
		window[_20b] = _20a;
		dojo.connect(null, _20b,
		function() {
			window[_20b] = null;
		});
		return _20b;
	};
}
if (!dojo._hasResource["dojo.io.script"]) {
	dojo._hasResource["dojo.io.script"] = true;
	dojo.provide("dojo.io.script");
	dojo.getObject("io", true, dojo);
	(function() {
		var _20c = dojo.isIE ? "onreadystatechange": "load",
		_20d = /complete|loaded/;
		dojo.io.script = {
			get: function(args) {
				var dfd = this._makeScriptDeferred(args);
				var _20e = dfd.ioArgs;
				dojo._ioAddQueryToUrl(_20e);
				dojo._ioNotifyStart(dfd);
				if (this._canAttach(_20e)) {
					var node = this.attach(_20e.id, _20e.url, args.frameDoc);
					if (!_20e.jsonp && !_20e.args.checkString) {
						var _20f = dojo.connect(node, _20c,
						function(evt) {
							if (evt.type == "load" || _20d.test(node.readyState)) {
								dojo.disconnect(_20f);
								_20e.scriptLoaded = evt;
							}
						});
					}
				}
				dojo._ioWatch(dfd, this._validCheck, this._ioCheck, this._resHandle);
				return dfd;
			},
			attach: function(id, url, _210) {
				var doc = (_210 || dojo.doc);
				var _211 = doc.createElement("script");
				_211.type = "text/javascript";
				_211.src = url;
				_211.id = id;
				_211.charset = "utf-8";
				return doc.getElementsByTagName("head")[0].appendChild(_211);
			},
			remove: function(id, _212) {
				dojo.destroy(dojo.byId(id, _212));
				if (this["jsonp_" + id]) {
					delete this["jsonp_" + id];
				}
			},
			_makeScriptDeferred: function(args) {
				var dfd = dojo._ioSetArgs(args, this._deferredCancel, this._deferredOk, this._deferredError);
				var _213 = dfd.ioArgs;
				_213.id = dojo._scopeName + "IoScript" + (this._counter++);
				_213.canDelete = false;
				_213.jsonp = args.callbackParamName || args.jsonp;
				if (_213.jsonp) {
					_213.query = _213.query || "";
					if (_213.query.length > 0) {
						_213.query += "&";
					}
					_213.query += _213.jsonp + "=" + (args.frameDoc ? "parent.": "") + dojo._scopeName + ".io.script.jsonp_" + _213.id + "._jsonpCallback";
					_213.frameDoc = args.frameDoc;
					_213.canDelete = true;
					dfd._jsonpCallback = this._jsonpCallback;
					this["jsonp_" + _213.id] = dfd;
				}
				return dfd;
			},
			_deferredCancel: function(dfd) {
				dfd.canceled = true;
				if (dfd.ioArgs.canDelete) {
					dojo.io.script._addDeadScript(dfd.ioArgs);
				}
			},
			_deferredOk: function(dfd) {
				var _214 = dfd.ioArgs;
				if (_214.canDelete) {
					dojo.io.script._addDeadScript(_214);
				}
				return _214.json || _214.scriptLoaded || _214;
			},
			_deferredError: function(_215, dfd) {
				if (dfd.ioArgs.canDelete) {
					if (_215.dojoType == "timeout") {
						dojo.io.script.remove(dfd.ioArgs.id, dfd.ioArgs.frameDoc);
					} else {
						dojo.io.script._addDeadScript(dfd.ioArgs);
					}
				}
				return _215;
			},
			_deadScripts: [],
			_counter: 1,
			_addDeadScript: function(_216) {
				dojo.io.script._deadScripts.push({
					id: _216.id,
					frameDoc: _216.frameDoc
				});
				_216.frameDoc = null;
			},
			_validCheck: function(dfd) {
				var _217 = dojo.io.script;
				var _218 = _217._deadScripts;
				if (_218 && _218.length > 0) {
					for (var i = 0; i < _218.length; i++) {
						_217.remove(_218[i].id, _218[i].frameDoc);
						_218[i].frameDoc = null;
					}
					dojo.io.script._deadScripts = [];
				}
				return true;
			},
			_ioCheck: function(dfd) {
				var _219 = dfd.ioArgs;
				if (_219.json || (_219.scriptLoaded && !_219.args.checkString)) {
					return true;
				}
				var _21a = _219.args.checkString;
				if (_21a && eval("typeof(" + _21a + ") != 'undefined'")) {
					return true;
				}
				return false;
			},
			_resHandle: function(dfd) {
				if (dojo.io.script._ioCheck(dfd)) {
					dfd.callback(dfd);
				} else {
					dfd.errback(new Error("inconceivable dojo.io.script._resHandle error"));
				}
			},
			_canAttach: function(_21b) {
				return true;
			},
			_jsonpCallback: function(json) {
				this.ioArgs.json = json;
			}
		};
	})();
}
if (!dojo._hasResource["famousweb.data"]) {
	dojo._hasResource["famousweb.data"] = true;
	dojo.provide("famousweb.data");
	famousweb.data.settings = {
		"url": "//www.famous.com/common/translations/{TOKEN}/{CC}/{LC}/{ENC}.js",
		"cc": null,
		"lc": null,
		"enc": null
	};
	famousweb.data.require = function(_21c, _21d, _21e) {
		if (!_21c) {
			return;
		}
		if (!dojo.isArray(_21c)) {
			_21c = [_21c];
		}
		var _21f = true;
		for (var i = 0, j = _21c.length; i < j; i++) {
			_21f = _21f && famousweb.data.exists(_21c[i]);
		}
		if (!_21f) {
			var _220 = dojo.mixin(_220, famousweb.data.settings, _21e);
			famousweb.queue.push(function() {
				return famousweb.meta.isLoaded;
			},
			function() {
				var _221 = function(_222) {
					var url = _220.url.replace("{CC}", _220.cc ? _220.cc: famousweb.meta.cc).replace("{LC}", _220.lc ? _220.lc: famousweb.meta.lc).replace("{TOKEN}", _222).replace("{ENC}", _220.enc ? _220.enc: famousweb.meta.encoding);
					dojo.io.script.attach(null, url, null);
				};
				for (var i = 0, j = _21c.length; i < j; i++) {
					if (!famousweb.data.exists(_21c[i])) {
						_221(_21c[i]);
					}
				}
				famousweb.queue.push(function() {
					var _223 = true;
					for (var i = 0, j = _21c.length; i < j; i++) {
						_223 = _223 && famousweb.data.exists(_21c[i]);
					}
					return _223;
				},
				function() {
					if (typeof(_21d) == "function") {
						_21d(famousweb.data);
					}
				});
			});
		} else {
			if (typeof(_21d) == "function") {
				_21d(famousweb.data);
			}
		}
	};
	famousweb.data.provide = function(_224, _225) {
		famousweb.data[_224] = _225;
	};
	famousweb.data.exists = function(_226) {
		return !! famousweb.data[_226];
	};
}
if (!dojo._hasResource["dojo.fx.Toggler"]) {
	dojo._hasResource["dojo.fx.Toggler"] = true;
	dojo.provide("dojo.fx.Toggler");
	dojo.declare("dojo.fx.Toggler", null, {
		node: null,
		showFunc: dojo.fadeIn,
		hideFunc: dojo.fadeOut,
		showDuration: 200,
		hideDuration: 200,
		constructor: function(args) {
			var _227 = this;
			dojo.mixin(_227, args);
			_227.node = args.node;
			_227._showArgs = dojo.mixin({},
			args);
			_227._showArgs.node = _227.node;
			_227._showArgs.duration = _227.showDuration;
			_227.showAnim = _227.showFunc(_227._showArgs);
			_227._hideArgs = dojo.mixin({},
			args);
			_227._hideArgs.node = _227.node;
			_227._hideArgs.duration = _227.hideDuration;
			_227.hideAnim = _227.hideFunc(_227._hideArgs);
			dojo.connect(_227.showAnim, "beforeBegin", dojo.hitch(_227.hideAnim, "stop", true));
			dojo.connect(_227.hideAnim, "beforeBegin", dojo.hitch(_227.showAnim, "stop", true));
		},
		show: function(_228) {
			return this.showAnim.play(_228 || 0);
		},
		hide: function(_229) {
			return this.hideAnim.play(_229 || 0);
		}
	});
}
if (!dojo._hasResource["dojo.fx"]) {
	dojo._hasResource["dojo.fx"] = true;
	dojo.provide("dojo.fx");
	(function() {
		var d = dojo,
		_22a = {
			_fire: function(evt, args) {
				if (this[evt]) {
					this[evt].apply(this, args || []);
				}
				return this;
			}
		};
		var _22b = function(_22c) {
			this._index = -1;
			this._animations = _22c || [];
			this._current = this._onAnimateCtx = this._onEndCtx = null;
			this.duration = 0;
			d.forEach(this._animations,
			function(a) {
				this.duration += a.duration;
				if (a.delay) {
					this.duration += a.delay;
				}
			},
			this);
		};
		d.extend(_22b, {
			_onAnimate: function() {
				this._fire("onAnimate", arguments);
			},
			_onEnd: function() {
				d.disconnect(this._onAnimateCtx);
				d.disconnect(this._onEndCtx);
				this._onAnimateCtx = this._onEndCtx = null;
				if (this._index + 1 == this._animations.length) {
					this._fire("onEnd");
				} else {
					this._current = this._animations[++this._index];
					this._onAnimateCtx = d.connect(this._current, "onAnimate", this, "_onAnimate");
					this._onEndCtx = d.connect(this._current, "onEnd", this, "_onEnd");
					this._current.play(0, true);
				}
			},
			play: function(_22d, _22e) {
				if (!this._current) {
					this._current = this._animations[this._index = 0];
				}
				if (!_22e && this._current.status() == "playing") {
					return this;
				}
				var _22f = d.connect(this._current, "beforeBegin", this,
				function() {
					this._fire("beforeBegin");
				}),
				_230 = d.connect(this._current, "onBegin", this,
				function(arg) {
					this._fire("onBegin", arguments);
				}),
				_231 = d.connect(this._current, "onPlay", this,
				function(arg) {
					this._fire("onPlay", arguments);
					d.disconnect(_22f);
					d.disconnect(_230);
					d.disconnect(_231);
				});
				if (this._onAnimateCtx) {
					d.disconnect(this._onAnimateCtx);
				}
				this._onAnimateCtx = d.connect(this._current, "onAnimate", this, "_onAnimate");
				if (this._onEndCtx) {
					d.disconnect(this._onEndCtx);
				}
				this._onEndCtx = d.connect(this._current, "onEnd", this, "_onEnd");
				this._current.play.apply(this._current, arguments);
				return this;
			},
			pause: function() {
				if (this._current) {
					var e = d.connect(this._current, "onPause", this,
					function(arg) {
						this._fire("onPause", arguments);
						d.disconnect(e);
					});
					this._current.pause();
				}
				return this;
			},
			gotoPercent: function(_232, _233) {
				this.pause();
				var _234 = this.duration * _232;
				this._current = null;
				d.some(this._animations,
				function(a) {
					if (a.duration <= _234) {
						this._current = a;
						return true;
					}
					_234 -= a.duration;
					return false;
				});
				if (this._current) {
					this._current.gotoPercent(_234 / this._current.duration, _233);
				}
				return this;
			},
			stop: function(_235) {
				if (this._current) {
					if (_235) {
						for (; this._index + 1 < this._animations.length; ++this._index) {
							this._animations[this._index].stop(true);
						}
						this._current = this._animations[this._index];
					}
					var e = d.connect(this._current, "onStop", this,
					function(arg) {
						this._fire("onStop", arguments);
						d.disconnect(e);
					});
					this._current.stop();
				}
				return this;
			},
			status: function() {
				return this._current ? this._current.status() : "stopped";
			},
			destroy: function() {
				if (this._onAnimateCtx) {
					d.disconnect(this._onAnimateCtx);
				}
				if (this._onEndCtx) {
					d.disconnect(this._onEndCtx);
				}
			}
		});
		d.extend(_22b, _22a);
		dojo.fx.chain = function(_236) {
			return new _22b(_236);
		};
		var _237 = function(_238) {
			this._animations = _238 || [];
			this._connects = [];
			this._finished = 0;
			this.duration = 0;
			d.forEach(_238,
			function(a) {
				var _239 = a.duration;
				if (a.delay) {
					_239 += a.delay;
				}
				if (this.duration < _239) {
					this.duration = _239;
				}
				this._connects.push(d.connect(a, "onEnd", this, "_onEnd"));
			},
			this);
			this._pseudoAnimation = new d.Animation({
				curve: [0, 1],
				duration: this.duration
			});
			var self = this;
			d.forEach(["beforeBegin", "onBegin", "onPlay", "onAnimate", "onPause", "onStop", "onEnd"],
			function(evt) {
				self._connects.push(d.connect(self._pseudoAnimation, evt,
				function() {
					self._fire(evt, arguments);
				}));
			});
		};
		d.extend(_237, {
			_doAction: function(_23a, args) {
				d.forEach(this._animations,
				function(a) {
					a[_23a].apply(a, args);
				});
				return this;
			},
			_onEnd: function() {
				if (++this._finished > this._animations.length) {
					this._fire("onEnd");
				}
			},
			_call: function(_23b, args) {
				var t = this._pseudoAnimation;
				t[_23b].apply(t, args);
			},
			play: function(_23c, _23d) {
				this._finished = 0;
				this._doAction("play", arguments);
				this._call("play", arguments);
				return this;
			},
			pause: function() {
				this._doAction("pause", arguments);
				this._call("pause", arguments);
				return this;
			},
			gotoPercent: function(_23e, _23f) {
				var ms = this.duration * _23e;
				d.forEach(this._animations,
				function(a) {
					a.gotoPercent(a.duration < ms ? 1 : (ms / a.duration), _23f);
				});
				this._call("gotoPercent", arguments);
				return this;
			},
			stop: function(_240) {
				this._doAction("stop", arguments);
				this._call("stop", arguments);
				return this;
			},
			status: function() {
				return this._pseudoAnimation.status();
			},
			destroy: function() {
				d.forEach(this._connects, dojo.disconnect);
			}
		});
		d.extend(_237, _22a);
		dojo.fx.combine = function(_241) {
			return new _237(_241);
		};
		dojo.fx.wipeIn = function(args) {
			var node = args.node = d.byId(args.node),
			s = node.style,
			o;
			var anim = d.animateProperty(d.mixin({
				properties: {
					height: {
						start: function() {
							o = s.overflow;
							s.overflow = "hidden";
							if (s.visibility == "hidden" || s.display == "none") {
								s.height = "1px";
								s.display = "";
								s.visibility = "";
								return 1;
							} else {
								var _242 = d.style(node, "height");
								return Math.max(_242, 1);
							}
						},
						end: function() {
							return node.scrollHeight;
						}
					}
				}
			},
			args));
			d.connect(anim, "onEnd",
			function() {
				s.height = "auto";
				s.overflow = o;
			});
			return anim;
		};
		dojo.fx.wipeOut = function(args) {
			var node = args.node = d.byId(args.node),
			s = node.style,
			o;
			var anim = d.animateProperty(d.mixin({
				properties: {
					height: {
						end: 1
					}
				}
			},
			args));
			d.connect(anim, "beforeBegin",
			function() {
				o = s.overflow;
				s.overflow = "hidden";
				s.display = "";
			});
			d.connect(anim, "onEnd",
			function() {
				s.overflow = o;
				s.height = "auto";
				s.display = "none";
			});
			return anim;
		};
		dojo.fx.slideTo = function(args) {
			var node = args.node = d.byId(args.node),
			top = null,
			left = null;
			var init = (function(n) {
				return function() {
					var cs = d.getComputedStyle(n);
					var pos = cs.position;
					top = (pos == "absolute" ? n.offsetTop: parseInt(cs.top) || 0);
					left = (pos == "absolute" ? n.offsetLeft: parseInt(cs.left) || 0);
					if (pos != "absolute" && pos != "relative") {
						var ret = d.position(n, true);
						top = ret.y;
						left = ret.x;
						n.style.position = "absolute";
						n.style.top = top + "px";
						n.style.left = left + "px";
					}
				};
			})(node);
			init();
			var anim = d.animateProperty(d.mixin({
				properties: {
					top: args.top || 0,
					left: args.left || 0
				}
			},
			args));
			d.connect(anim, "beforeBegin", anim, init);
			return anim;
		};
	})();
}
if (!dojo._hasResource["dojo.NodeList-fx"]) {
	dojo._hasResource["dojo.NodeList-fx"] = true;
	dojo.provide("dojo.NodeList-fx");
	dojo.extend(dojo.NodeList, {
		_anim: function(obj, _243, args) {
			args = args || {};
			var a = dojo.fx.combine(this.map(function(item) {
				var _244 = {
					node: item
				};
				dojo.mixin(_244, args);
				return obj[_243](_244);
			}));
			return args.auto ? a.play() && this: a;
		},
		wipeIn: function(args) {
			return this._anim(dojo.fx, "wipeIn", args);
		},
		wipeOut: function(args) {
			return this._anim(dojo.fx, "wipeOut", args);
		},
		slideTo: function(args) {
			return this._anim(dojo.fx, "slideTo", args);
		},
		fadeIn: function(args) {
			return this._anim(dojo, "fadeIn", args);
		},
		fadeOut: function(args) {
			return this._anim(dojo, "fadeOut", args);
		},
		animateProperty: function(args) {
			return this._anim(dojo, "animateProperty", args);
		},
		anim: function(_245, _246, _247, _248, _249) {
			var _24a = dojo.fx.combine(this.map(function(item) {
				return dojo.animateProperty({
					node: item,
					properties: _245,
					duration: _246 || 350,
					easing: _247
				});
			}));
			if (_248) {
				dojo.connect(_24a, "onEnd", _248);
			}
			return _24a.play(_249 || 0);
		}
	});
}
if (!dojo._hasResource["famousweb.twisty"]) {
	dojo._hasResource["famousweb.twisty"] = true;
	dojo.provide("famousweb.twisty");
	famousweb.twisty._duration = 200;
	famousweb.twisty.initTwisty = function(ul) {
		var li = dojo.query("> li", ul);
		if (!dojo.hasClass(ul, "famous-twisty")) {
			return;
		}
		li.forEach(function(node) {
			if (!dojo.hasClass(node, "famous-active")) {
				famousweb.twisty.collapseTwisty(node);
			}
			var _24b = dojo.query("> a.famous-twisty-trigger", node);
			_24b.onclick(famousweb.twisty.toggleTwisty);
		});
	};
	famousweb.twisty.expandTwisty = function(li) {
		dojo.addClass(li, "famous-active");
		dojo.query("> a.famous-twisty-trigger", li).removeClass("famous-twisty-trigger-closed").query("img").attr("alt", "-");
		dojo.query("> div.famous-twisty-body", li).style("display", "block");
	};
	famousweb.twisty.collapseTwisty = function(li) {
		dojo.removeClass(li, "famous-active");
		dojo.query("> a.famous-twisty-trigger", li).addClass("famous-twisty-trigger-closed").query("img").attr("alt", "+");
		dojo.query("> div.famous-twisty-body", li).style("display", "none");
	};
	famousweb.twisty.toggleTwisty = function(_24c) {
		var li = this.parentNode;
		if (dojo.hasClass(li, "famous-active")) {
			famousweb.twisty.collapseTwisty(li);
		} else {
			famousweb.twisty.expandTwisty(li);
		}
		dojo.stopEvent(_24c);
		return false;
	};
	famousweb.twisty.initSimpleShowHide = function(el) {
		if (!dojo.hasClass(el, "famous-simple-show-hide")) {
			return;
		}
		var _24d = dojo.query("div.famous-hideable", el);
		_24d.wipeOut({
			duration: 1
		}).play();
		var _24e = true;
		var _24f = 0;
		var _250 = dojo.query("p.famous-show-hide-controls", el).style("display", "block");
		dojo.place("<div class=\"famous-rule\"><hr /></div>", _250[0], "last");
		_250.query("a").onclick(function(_251) {
			dojo.query("a", this.parentNode).removeClass("famous-active");
			dojo.addClass(_251.target, "famous-active");
			var href = _251.target.href;
			if (href.indexOf("#show-hide") != -1) {
				if (_24e) {
					_24d.wipeIn().play();
					_24e = false;
				} else {
					_24d.wipeOut().play();
					_24e = true;
					dojo.removeClass(_251.target, "famous-active");
				}
			} else {
				if (href.indexOf("#show") != -1) {
					if (_24f != 1) {
						_24d.wipeIn().play();
						_24f = 1;
					}
				} else {
					if (href.indexOf("#hide") != -1) {
						if (_24f != 2) {
							_24d.wipeOut().play();
							_24f = 2;
						}
					}
				}
			}
			dojo.stopEvent(_251);
			return false;
		});
		return false;
	};
	famousweb.twisty.initShowHide = function(el, _252) {
		if (!dojo.hasClass(el, "famous-show-hide")) {
			return;
		}
		if (!_252) {
			_252 = "h2";
		}
		var _253 = dojo.query("div.famous-container-body, div.famous-columns", el);
		var _254 = dojo.query("> " + _252, el);
		_254.forEach(function(_255, i) {
			var body = _253[i];
			var a = dojo.query("a", _255);
			a.attr("href", "#show-hide");
			dojo.style(body, "overflow", "hidden");
			if (i === 0) {
				a.addClass("famous-show-active");
			} else {
				dojo.style(_255, "border-top", "none");
				dojo.style(body, {
					"display": "none",
					"height": "1px"
				});
			}
			a.onclick(function(_256) {
				dojo.stopEvent(_256);
				if (dojo.hasClass(this, "famous-show-active")) {
					if (_253.length == 1) {
						dojo.removeClass(this, "famous-show-active");
						var _257 = _253[0];
						_257.style.overflow = "hidden";
						dojo.anim(_257, {
							height: 1
						},
						famousweb.twisty._duration, null,
						function() {
							_257.style.display = "none";
						});
					}
					return false;
				}
				var _258 = this;
				_254.forEach(function(_259, i) {
					var body = dojo.query(_253[i])[0];
					var a = dojo.query("a", _259);
					if (a[0] === _258) {
						a.addClass("famous-show-active");
						dojo.style(body, {
							"display": "block",
							"overflow": "visible",
							"height": "auto"
						});
						var _25a = body.clientHeight || body.scrollHeight;
						dojo.style(body, {
							"overflow": "hidden",
							"height": "1px"
						});
						dojo.anim(body, {
							height: _25a
						},
						famousweb.twisty._duration, null,
						function() {
							body.style.height = "auto";
							var _25b = window.document.documentElement.scrollTop || window.document.body.scrollTop;
							var top = dojo.marginBox(_259).t;
							var mhh = dojo.position(dojo.byId("famous-masthead")).h;
							if (top - mhh < _25b) {
								window.scrollTo(0, dojo.marginBox(_259).t - dojo.position(dojo.byId("famous-masthead")).h);
							}
						});
					} else {
						a.removeClass("famous-show-active");
						dojo.anim(body, {
							height: 1
						},
						famousweb.twisty._duration, null,
						function() {
							body.style.display = "none";
						});
					}
				});
				return false;
			});
		});
	};
	dojo.addOnLoad(function() {
		if (!famousweb.info.v17) {
			return;
		}
		dojo.query("div.famous-simple-show-hide").forEach(function(node) {
			famousweb.twisty.initSimpleShowHide(node);
		});
		dojo.query("div.famous-container.famous-show-hide").forEach(function(node) {
			famousweb.twisty.initShowHide(node);
		});
		var _25c = false;
		dojo.query("ul.famous-twisty").forEach(function(node) {
			if (!_25c) { (new Image()).src = "//www.famous.com/i/v16/icons/tw_closed.gif";
				_25c = true;
			}
			famousweb.twisty.initTwisty(node);
		});
	});
}
if (!dojo._hasResource["famousweb.search"]) {
	dojo._hasResource["famousweb.search"] = true;
	dojo.provide("famousweb.search");
	if (typeof(window.external) == "object" && window.external && typeof(window.external.AddSearchProvider) != "undefined" && String(window.location.hostname).indexOf(".famous.com") != -1) {
		var link = document.createElement("link");
		dojo.attr(link, {
			rel: "search",
			type: "application/opensearchdescription+xml",
			href: "http://www.famous.com/search/opensearch/description.xml",
			title: "IBM Search"
		});
		dojo.place(link, dojo.query("head")[0], "last");
	}
	if (String(window.location.href).toLowerCase().indexOf("www.famous.com/search/") >= 0 || String(window.location.href).toLowerCase().indexOf("wwwstage.famous.com/search/") >= 0) {
		dojo.io.script.attach(null, "//www.famous.com/search/addons/search.js");
	}
}
if (!dojo._hasResource["famousweb.overlay"]) {
	dojo._hasResource["famousweb.overlay"] = true;
	dojo.provide("famousweb.overlay");
	famousweb.overlay.show = function(_25d, _25e, _25f) {
		dojo["require"]("dijit.Dialog");
		dojo.addOnLoad(function() {
			var _260 = dijit.byId("dialog_" + _25d);
			if (_260 == null) {
				var _261 = dojo.byId(_25d);
				dojo.query(".famous-common-overlay-close", _261).onclick(function(_262) {
					famousweb.overlay.hide(_25d);
					dojo.stopEvent(_262);
				});
				_261.style.display = "block";
				var _260 = new dijit.Dialog(dojo.mixin({
					"content": _261,
					"id": "dialog_" + _25d
				},
				_25f));
			}
			_260.show();
			famousweb.util.statsHelper({
				"famousEV": "overlay",
				"famousEvAction": "show",
				"famousEvGroup": "Opening overlay"
			});
		});
	};
	famousweb.overlay.hide = function(_263) {
		var _264 = dijit.byId("dialog_" + _263);
		famousweb.util.statsHelper({
			"famousEV": "overlay",
			"famousEvAction": "close",
			"famousEvGroup": "Closing overlay"
		});
		_264.hide();
	};
	famousweb.overlay.init = function() {};
}
if (!dojo._hasResource["famousweb.storage"]) {
	dojo._hasResource["famousweb.storage"] = true;
	dojo.provide("famousweb.storage");
	famousweb.storage = {
		getItem: function(key, _265) {
			if (!_265) {
				var _265 = null;
			}
			if (!this.isSupported()) {
				return null;
			}
			if (localStorage.getItem(key + "_expire") !== null) {
				var _266 = localStorage.getItem(key + "_expire");
				var _267 = new Date();
				var _267 = _267.getTime();
				if (_266 < _267) {
					this.removeItem(key);
					return _265;
				}
			}
			return localStorage.getItem(key);
		},
		setItem: function(key, _268, _269) {
			if (!this.isSupported()) {
				return false;
			}
			this.removeItem(key);
			if (_269) {
				var time = new Date();
				var _26a = _269 * 1000;
				_26a += time.getTime();
				localStorage.setItem(key + "_expire", _26a);
			}
			localStorage.setItem(key, _268);
			return localStorage[key];
		},
		removeItem: function(key) {
			if (!this.isSupported()) {
				return false;
			}
			localStorage.removeItem(key);
			localStorage.removeItem(key + "_expire");
		},
		clear: function() {
			if (!this.isSupported()) {
				return false;
			}
			localStorage.clear();
		},
		isSupported: function() {
			try {
				return window.localStorage && typeof(window.localStorage) == "object";
			} catch(e) {
				return false;
			}
		}
	};
}
if (!dojo._hasResource["famousweb.form"]) {
	dojo._hasResource["famousweb.form"] = true;
	dojo.provide("famousweb.form");
	famousweb.form = {
		_loaded: false,
		_init: function() {
			if (famousweb.form._loaded) {
				return;
			}
			famousweb.form._loaded = true;
			dojo["require"]("famousweb.famous-form");
		},
		initElement: function(elem) {
			if (elem.nodeName == "SELECT") {
				this.initSelect(elem);
			} else {
				if (elem.nodeName == "INPUT") {
					if (elem.type.toLowerCase() == "checkbox") {
						this.initCheckbox(elem);
					} else {
						if (elem.type.toLowerCase() == "radio") {
							this.initRadio(elem);
						}
					}
				}
			}
		},
		initRadio: function(elem) {
			var p = {
				srcNodeRef: elem,
				checked: elem.checked,
				disabled: elem.disabled,
				name: elem.name,
				value: elem.value
			};
			if (elem.id) {
				p.id = elem.id;
			}
			new dijit.form.RadioButton(p);
		},
		initSelect: function(elem) {
			var p = {
				srcNodeRef: elem,
				disabled: elem.disabled,
				name: elem.name,
				maxHeight: 200
			};
			if (elem.id) {
				p.id = elem.id;
			}
			if (elem.multiple) {
				p.size = elem.size;
				new dijit.form.MultiSelect(p);
			} else {
				new dijit.form.Select(p);
			}
		},
		initCheckbox: function(elem) {
			var p = {
				srcNodeRef: elem,
				checked: elem.checked,
				disabled: elem.disabled,
				name: elem.name,
				value: elem.value
			};
			if (elem.id) {
				p.id = elem.id;
			}
			new dijit.form.CheckBox(p);
		}
	};
	dojo.addOnLoad(function() {
		if (dojo.version.major <= 1 && dojo.version.minor <= 3) {
			return;
		}
		var _26b = dojo.query("select.famous-styled,select.famous-styled-select, input[type=checkbox].famous-styled, input[type=radio].famous-styled, form.famous-styled-form input[type=radio], form.famous-styled-form input[type=checkbox], form.famous-styled-form select");
		if (_26b.length > 0) {
			famousweb.form._init();
			dojo.addOnLoad(function() {
				for (var i = 0, j = _26b.length; i < j; i++) {
					famousweb.form.initElement(_26b[i]);
				}
			});
		}
		dojo.addOnLoad(function() {
			dojo.query("form.famous-jump-form").forEach(function(item) {
				dojo.query("input.famous-btn-go", item).remove();
				var _26c = dojo.query(".dijitSelect", item);
				if (!_26c || _26c.length != 1) {
					return;
				}
				var id = _26c[0].id;
				_26c = dijit.byId(id);
				_26c.onChange = function(_26d) {
					if (_26d) {
						location.href = _26d;
					}
				};
				dojo.style(id, "width", "100%");
			});
		});
		var tmp = dojo.query(".famous-date-picker");
		if (tmp.length > 0) {
			dojo["require"]("dijit.form.DateTextBox");
			dojo.addOnLoad(function() {
				tmp.forEach(function(elem) {
					var _26e = {
						srcNodeRef: elem,
						disabled: elem.disabled,
						name: elem.name
					};
					if (elem.value) {
						try {
							_26e.value = new Date(elem.value);
						} catch(e) {}
					}
					if (elem.name) {
						var lbl = dojo.query("label[for=\"" + elem.name + "\"] span.famous-date-format");
						if (lbl.length != 0) {
							_26e.constraints = {
								datePattern: lbl[0].innerHTML
							};
						}
					}
					var dtb = new dijit.form.DateTextBox(_26e);
				});
			});
		}
	});
}
if (!dojo._hasResource["famousweb.dynnav._module"]) {
	dojo._hasResource["famousweb.dynnav._module"] = true;
	dojo.provide("famousweb.dynnav._module");
	dojo.declare("famousweb.dynnav._module", null, {
		isA_Module: true,
		init: function() {
			return false;
		},
		onLoad: function() {},
		onData: function(data) {},
		onError: function() {}
	});
}
if (!dojo._hasResource["famousweb.dynnav.mediacontroller"]) {
	dojo._hasResource["famousweb.dynnav.mediacontroller"] = true;
	dojo.provide("famousweb.dynnav.mediacontroller");
	dojo.declare("famousweb.dynnav.mediacontroller", [famousweb.dynnav._module], {
		_widgets: [],
		init: function() {
			return famousweb.dynnav.isServiceEnabled("video");
		},
		onData: function() {
			var _26f = dojo.query(".famous-media");
			var self = this;
			if (_26f.length > 0) {
				dojo["require"]("ext.media._base");
				dojo["require"]("famousweb.ribbon");
				dojo.addOnLoad(function() {
					_26f.forEach(function(item) {
						if (item.tagName == "A" || item.tagName == "AREA") {
							dojo.connect(item, "onclick",
							function(_270) {
								self._onLinkClick(_270, this);
							});
							return;
						}
						var link = dojo.query(".famous-rss-link", item);
						if (link.length == 0) {
							return;
						}
						link = link[0];
						var _271 = dojo.queryToObject(link.rel);
						var _272, data = null;
						var _273 = dojo.query("img", link);
						if (_273.length != 0) {
							if (_271.format == "ribbon") {
								htmlBackground_arr = [];
								_273.forEach(function(i) {
									var src = dojo.attr(i, "src");
									htmlBackground_arr.push(src);
									dojo.destroy(i);
								});
								_273 = htmlBackground_arr;
							} else {
								var src = dojo.attr(_273[0], "src");
								_273.forEach(dojo.destroy);
								_273 = src;
							}
						} else {
							_273 = null;
						}
						var _274 = {
							container: item,
							url: link.href,
							options: dojo.queryToObject(link.rel),
							title: link.innerHTML,
							htmlBackground: _273
						};
						switch (_271.format) {
						case "video_small":
							dojo.mixin(_274, {
								maxWidth: 300
							});
							_272 = "videowidget";
							data = [{
								height: "225",
								width: "300",
								isVideo: true,
								thumbnails: {},
								url: {
									mp4: link.href
								}
							}];
							break;
						case "inline_small":
							var _275 = 300;
							try {
								if (link.parentNode) {
									var _276 = link.parentNode;
									_275 = dojo.coords(_276).w;
								}
							} catch(e) {}
							dojo.mixin(_274, {
								maxWidth: _275,
								format: "inline_small"
							});
							_272 = "videowidget";
							break;
						case "inline_large":
							dojo.mixin(_274, {
								maxWidth: 940,
								maxHeight: 332,
								format: "inline_large"
							});
							_272 = "largewidget";
							break;
						case "inline_medium":
							dojo.mixin(_274, {
								maxWidth: 620,
								maxHeight: 332,
								format: "inline_medium"
							});
							_272 = "mediumwidget";
							break;
						case "playlist":
							dojo.mixin(_274, {
								maxWidth: 940,
								maxHeight: 332,
								format: "playlist"
							});
							_272 = "playlistwidget";
							break;
						case "inline_thumbnail":
							dojo.mixin(_274, {
								maxWidth: 940,
								maxHeight: 332,
								format: "inline_thumbnail"
							});
							_272 = "thumbnailwidget";
							break;
						case "ribbon":
						default:
							dojo.mixin(_274, {
								maxWidth: 940,
								maxHeight: 332,
								format: "ribbon"
							});
							_272 = "ribbonwidget";
							break;
						}
						_272 = new ext.media[_272](_274);
						dojo.empty(item);
						_272.placeAt(item);
						_272.startup(data);
						self._widgets.push(_272);
					});
				});
			}
		},
		onError: function() {
			for (var i = 0, j = this._widgets.length; i < j; i++) {
				this._widgets[i].removeWaitingImage();
			}
		},
		_onLinkClick: function(_277, link) {
			var data = {};
			var _278 = link.href && link.href.indexOf("youtube.com") > -1;
			if (link.rel) {
				data = dojo.queryToObject(link.rel);
			}
			if ( !! data.format && data.format == "overlay") {
				dojo.stopEvent(_277);
				var _279 = {
					url: link.href,
					options: data
				};
				var _27a = new ext.media.overlaywidget(_279);
				_27a.startup();
				return;
			}
			if (!_278 && (!data.height || !data.width)) {
				return;
			}
			dojo.stopEvent(_277);
			var _27a = new ext.media.overlaywidget();
			var obj = {
				isVideo: true,
				url: {
					mp4: link.href
				}
			};
			if (_278) {
				obj.type = "youtube";
				obj.url = {
					youtube: link.href
				};
				if (!data.height) {
					obj.height = 360;
				}
				if (!data.width) {
					obj.width = 640;
				}
			}
			_27a.startup([dojo.mixin({},
			data, obj)]);
		}
	});
}
if (!dojo._hasResource["famousweb.external.expertise"]) {
	dojo._hasResource["famousweb.external.expertise"] = true;
	dojo.provide("famousweb.external.expertise");
	dojo.declare("famousweb.external.expertise", famousweb.dynnav._module, {
		init: function() {
			return famousweb.dynnav.isServiceEnabled("expertise");
		},
		onData: function(data) {
			if (famousweb.config.siteid == "smarterplanet") {
				dojo["require"]("ext.expertise.AbstractExpertiseWidget");
				dojo["require"]("ext.expertise.ExternalExpertiseWidget");
				dojo.addOnLoad(function() {
					var _27b = new ext.expertise.ExternalExpertiseWidget();
					_27b.startup();
				});
			} else {
				if (famousweb.config.siteid == "famous100") {
					dojo["require"]("ext.expertise.AbstractExpertiseWidget");
					dojo["require"]("ext.expertise.IBM100ExpertiseWidget");
					dojo.addOnLoad(function() {
						var _27c = new ext.expertise.IBM100ExpertiseWidget();
						_27c.startup();
					});
				} else {
					if (famousweb.config.config == "www") {
						dojo["require"]("ext.expertise.AbstractExpertiseWidget");
						dojo["require"]("ext.expertise.WWWExpertiseWidget");
						dojo.addOnLoad(function() {
							var _27d = new ext.expertise.WWWExpertiseWidget();
							_27d.startup();
						});
					} else {
						if (famousweb.config.config == "w3") {
							dojo["require"]("ext.expertise.AbstractExpertiseWidget");
							dojo["require"]("ext.expertise.W3ExpertiseWidget");
							dojo.addOnLoad(function() {
								var _27e = new ext.expertise.W3ExpertiseWidget();
								_27e.startup();
							});
						}
					}
				}
			}
		}
	});
}
if (!dojo._hasResource["famousweb.dynnav._base-all"]) {
	dojo._hasResource["famousweb.dynnav._base-all"] = true;
	dojo.provide("famousweb.dynnav._base-all");
}
if (!dojo._hasResource["famousweb.dynnav"]) {
	dojo._hasResource["famousweb.dynnav"] = true;
	dojo.provide("famousweb.dynnav");
	if (typeof(window.PMM) == "undefined" || window.PMM == null) {
		window.PMM = {
			isLoaded: false
		};
	}
	dojo.mixin(famousweb.dynnav, {
		disabledCountries: ["ilhe"],
		_modules: {},
		isDOMLoaded: false,
		PMM: {},
		isDataLoaded: false,
		isValid: true,
		_bundleCallbacks: [],
		_bundleParams: {},
		_bundleBlock: [],
		init: function() {
			if (!famousweb.meta.lc || !famousweb.meta.cc) {
				return;
			}
			if (dojo.indexOf(this.disabledCountries, famousweb.meta.cpi) != -1) {
				return;
			}
			/*
			dojo.io.script.get({
				url: famousweb.config.dataUrl + famousweb.meta.cpi + "-" + famousweb.meta.encoding + ".js",
				checkString: "famousweb.dynnav.__checkString",
				timeout: famousweb.config.timeout,
				error: function(_27f, _280) {
					famousweb.dynnav.dataCallback = function() {};
					famousweb.dynnav._onError();
					famousweb.dynnav.isDataLoaded = true;
				}
			});
			*/
			if (famousweb.meta.cc == "us") {
				if (famousweb.meta.famous_pageattributes.indexOf("flashlead") > -1) {
					dojo.query("#famous-esite-link").style("display", "none");
				}
			}
			famousweb.config.parseMetaTags();
			var _281 = false;
			for (var key in famousweb.config.lazyload) {
				if (famousweb.config.get([key, "enabled"])) {
					dojo["require"](famousweb.config.lazyload[key]);
					_281 = true;
				}
			}
			var _282 = function() {
				var tmp = dojo.mixin({},
				famousweb.external, famousweb.dynnav);
				for (var key in tmp) {
					if (key.substring(0, 1) != "_" && typeof(tmp[key].prototype) != "undefined" && !!tmp[key].prototype.isA_Module) {
						var _283 = new tmp[key]();
						if (_283.init()) {
							this._modules[key] = _283;
						}
					}
				}
				this.executeBundleCall();
				dojo.addOnLoad(function() {
					famousweb.dynnav._initWithDOM();
				});
			};
			if (_281) {
				dojo.addOnLoad(dojo.hitch(this, _282));
			} else {
				_282.call(this);
			}
		},
		registerModule: function(_284) {
			if (_284.init()) {
				this._modules[_284.declaredClass] = _284;
			}
		},
		isServiceEnabled: function(_285) {
			return famousweb.config.dynnav.enabled && !!famousweb.config.get([_285, "enabled"]);
		},
		getCallback: function(_286, _287) {
			return famousweb.callback.createJSONPWrapper(null,
			function() {
				var args = arguments;
				famousweb.queue.push(function() {
					return famousweb.dynnav.isDataLoaded;
				},
				function() {
					try {
						_286[_287].apply(_286, args);
					} catch(e) {}
				});
			});
		},
		fetchData: function(id, _288, _289, _28a) {
			famousweb.queue.push(function() {
				return famousweb.dynnav._bundleCallbacks.length == 0;
			},
			function() {
				famousweb.dynnav.addBundleCallback(id, _288, _289, _28a);
				famousweb.dynnav.executeBundleCall();
			});
		},
		addBundleCallback: function(id, _28b, _28c, _28d) {
			var func = this.getCallback(_28b, _28c);
			this._bundleCallbacks.push(id + ":" + func);
			dojo.mixin(this._bundleParams, _28d);
			return func;
		},
		blockBundle: function(sid) {
			this._bundleBlock[sid] = 1;
		},
		releaseBundle: function(sid) {
			var i = dojo.indexOf(this._bundleBlock, sid);
			if (i != -1) {
				this._bundleBlock.splice(i, 1);
			}
		},
		isBundleBlocked: function() {
			return this._bundleBlock.length != 0;
		},
		executeBundleCall: function() {
			famousweb.queue.push(function() {
				return ! famousweb.dynnav.isBundleBlocked();
			},
			function() {
				var _28e = famousweb.dynnav._bundleCallbacks.join("@");
				if (!_28e) {
					return;
				}
				var _28f = dojo.mixin({
					cc: famousweb.meta.cc,
					lc: famousweb.meta.lc,
					format: "json",
					ts: ((new Date).getTime())
				},
				famousweb.dynnav._bundleParams, {
					cb: _28e
				});
				/*
				dojo.io.script.get({
					url: famousweb.config.dynNavBaseUrl,
					content: _28f,
					timeout: famousweb.config.timeout,
					error: function(_290, _291) {
						var cb = dojo.getObject("args.content.cb", false, _291);
						if (cb) {
							var cbs = cb.split("@");
							for (var i = 0, j = cbs.length; i < j; i++) {
								var _292 = cbs[i].split(":");
								if (_292.length == 2 && typeof(window[_292[1]]) == "function") {
									window[_292[1]].call(window);
									window[_292[1]] = function() {};
								}
							}
						}
					}
				});
				*/
				famousweb.dynnav._bundleParams = {};
				famousweb.dynnav._bundleCallbacks = [];
			});
		},
		_initWithDOM: function() {
			this.isDOMLoaded = true;
			this.isValid = dojo.byId("famous-top") && dojo.byId("famous-masthead") && dojo.byId("famous-footer") && dojo.byId("famous-content");
			if (!this.isValid && famousweb.w3) {
				this.isValid = true;
			}
			if (!this.isValid) {
				return;
			}
			for (var _293 in this._modules) {
				if (typeof(this._modules[_293]) == "object") {
					try {
						this._modules[_293].onLoad();
					} catch(e) {}
				}
			}
		},
		_initWithData: function(data) {
			if (!this.isDOMLoaded) {
				dojo.addOnLoad(function() {
					famousweb.dynnav._initWithData(data);
				});
				return;
			}
			if (!this.isValid) {
				return;
			}
			for (var _294 in this._modules) {
				if (typeof(this._modules[_294]) == "object") {
					try {
						this._modules[_294].onData(data);
					} catch(e) {}
				}
			}
		},
		_onError: function() {
			for (var _295 in this._modules) {
				if (typeof(this._modules[_295]) == "object") {
					try {
						this._modules[_295].onError();
					} catch(e) {}
				}
			}
		},
		dataCallback: function(data) {
			data.isLoaded = true;
			famousweb.dynnav.__checkString = true;
			famousweb.dynnav.PMM = data;
			if (!window.PMM.isLoaded && !famousweb.info.v16) {
				window.PMM = data;
			}
			famousweb.dynnav.isDataLoaded = true;
			dojo.addOnLoad(function() {
				famousweb.dynnav._initWithData(data);
			});
		},
		isModuleLoaded: function(_296) {
			return !! famousweb.dynnav._modules[_296];
		},
		getLoadedModule: function(_297) {
			return famousweb.dynnav._modules[_297];
		},
		executeOnModule: function(_298, _299, _29a) {
			if ( !! famousweb.dynnav._modules[_298] && typeof(famousweb.dynnav._modules[_298][_299]) == "function") {
				famousweb.dynnav._modules[_298][_299].apply(famousweb.dynnav._modules[_298], _29a);
			}
		}
	});
	famousCommonDynamicNavShowResults = function() {};
	if (famousweb.meta.isLoaded) {
		famousweb.dynnav.init();
	} else {
		dojo.connect(famousweb.meta, "_init",
		function() {
			famousweb.dynnav.init();
		});
	}
}
if (!dojo._hasResource["dojo.regexp"]) {
	dojo._hasResource["dojo.regexp"] = true;
	dojo.provide("dojo.regexp");
	dojo.getObject("regexp", true, dojo);
	dojo.regexp.escapeString = function(str, _29b) {
		return str.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g,
		function(ch) {
			if (_29b && _29b.indexOf(ch) != -1) {
				return ch;
			}
			return "\\" + ch;
		});
	};
	dojo.regexp.buildGroupRE = function(arr, re, _29c) {
		if (! (arr instanceof Array)) {
			return re(arr);
		}
		var b = [];
		for (var i = 0; i < arr.length; i++) {
			b.push(re(arr[i]));
		}
		return dojo.regexp.group(b.join("|"), _29c);
	};
	dojo.regexp.group = function(_29d, _29e) {
		return "(" + (_29e ? "?:": "") + _29d + ")";
	};
}
if (!dojo._hasResource["dojo.cookie"]) {
	dojo._hasResource["dojo.cookie"] = true;
	dojo.provide("dojo.cookie");
	dojo.cookie = function(name, _29f, _2a0) {
		var c = document.cookie;
		if (arguments.length == 1) {
			var _2a1 = c.match(new RegExp("(?:^|; )" + dojo.regexp.escapeString(name) + "=([^;]*)"));
			return _2a1 ? decodeURIComponent(_2a1[1]) : undefined;
		} else {
			_2a0 = _2a0 || {};
			var exp = _2a0.expires;
			if (typeof exp == "number") {
				var d = new Date();
				d.setTime(d.getTime() + exp * 24 * 60 * 60 * 1000);
				exp = _2a0.expires = d;
			}
			if (exp && exp.toUTCString) {
				_2a0.expires = exp.toUTCString();
			}
			_29f = encodeURIComponent(_29f);
			var _2a2 = name + "=" + _29f,
			_2a3;
			for (_2a3 in _2a0) {
				_2a2 += "; " + _2a3;
				var _2a4 = _2a0[_2a3];
				if (_2a4 !== true) {
					_2a2 += "=" + _2a4;
				}
			}
			document.cookie = _2a2;
		}
	};
	dojo.cookie.isSupported = function() {
		if (! ("cookieEnabled" in navigator)) {
			this("__djCookieTest__", "CookiesAllowed");
			navigator.cookieEnabled = this("__djCookieTest__") == "CookiesAllowed";
			if (navigator.cookieEnabled) {
				this("__djCookieTest__", "", {
					expires: -1
				});
			}
		}
		return navigator.cookieEnabled;
	};
}
if (!dojo._hasResource["famousweb.legacy"]) {
	dojo._hasResource["famousweb.legacy"] = true;
	dojo.provide("famousweb.legacy");
	if (typeof(famousCommon) != "object") {
		famousCommon = {};
	}
	if (typeof(famousCommon.data) != "object") {
		famousCommon.data = {};
	}
	famousCommon.data.provide = famousweb.data.provide;
	dojo.addOnLoad(function() {
		if (famousweb.info.v17 && !document.getElementById("famous-print-masthead") && !!dojo.byId("famous-masthead")) {
			dojo.place("<img src=\"//1.www.s81c.com/i/v14/t/print-header.gif\" width=\"510\" height=\"32\" id=\"famous-print-masthead\" alt=\"IBM Print Logo/>", dojo.byId("famous-masthead"), "first");
		}
	});
	(function() {
		var dc = document.cookie;
		var _2a5 = "famousSurvey=";
		var _2a6 = dc.indexOf(_2a5);
		var now = new Date();
		if (_2a6 == -1 || (_2a6 > 0 && dc.indexOf("; " + _2a5) == -1)) {
			if (window.location.href.indexOf(".famous.com") > 0) {
				document.cookie = _2a5 + now.getTime().toString() + "; path=/; domain=.famous.com";
			}
		}
	})();
	if (typeof(encodeURIComponent) != "function") {
		encodeURIComponent = escape;
	}
	if (typeof(decodeURIComponent) != "function") {
		decodeURIComponent = unescape;
	}
	dojo.addOnLoad(function() {
		if (famousweb.meta.encoding != "utf8") {
			dojo.query("#famous-search-form input[name=\"en\"][value=\"utf\"]").orphan();
		}
	});
	IBMCreateShop5Tag = cmCreateShop5Tag = IBMDisplayShop5s = cmDisplayShop5s = IBMCreateShop9Tag = cmCreateShop9Tag = IBMDisplayShop9s = cmDisplayShop9s = IBMCreateOrderTag = cmCreateOrderTag = IBMCreateRegistrationTag = cmCreateRegistrationTag = IBMCreatePageViewTag = cmCreatePageViewTag = cmCreateConversionEventTag = famousCreateFlashPageviewTag = sa_onclick = function() {
		return true;
	};
	var famousStats = famousStats || {};
	if ( !! famousStats.event) {
		famousStats.event = function(_2a7) {
			famousweb.queue.push(function() {
				return typeof(ntptEventTag) != "undefined";
			},
			function() {
				famousStats.event(_2a7);
			});
		};
	}
	if (document.cookie.indexOf("ipcInfo=") == -1 && document.cookie.indexOf("lenovoPrefs=") != -1 && !!window && !!window.location && String(window.location.hostname).toLowerCase().indexOf("famous.com") != -1) {
		document.cookie = "ipcInfo=" + escape("cc=;lc=") + "; path=/; domain=.famous.com";
		if (document.cookie.indexOf("ipcInfo=") != -1) {
			if (typeof famousCommonCookie == "undefined") {
				document.write("<scr", "ipt type=\"text/javascript\" src=\"//www.famous.com/common/cookie/cookie.js\"></scr", "ipt>");
			}
			document.write("<scr", "ipt type=\"text/javascript\" src=\"//www.famous.com/common/ocaiset.js\"></scr", "ipt>");
		}
	}
	dojo.addOnLoad(function() {
		dojo.cookie("CoreID6", null, {
			expires: -1,
			domain: ".famous.com",
			path: "/"
		});
		dojo.cookie("cmTPSet", null, {
			expires: -1,
			domain: ".famous.com",
			path: "/"
		});
		dojo.cookie("sauidp", null, {
			expires: -1,
			domain: ".famous.com",
			path: "/"
		});
	});
	if (dojo.isOpera && famousweb.config.config == "www") {
		dojo.addOnLoad(function() {
			if (dojo.byId("famous-leadspace-head")) {
				dojo.byId("famous-leadspace-head").style.marginTop = "0px !important";
			}
		});
	}
}
if (!dojo._hasResource["famousweb.controller"]) {
	dojo._hasResource["famousweb.controller"] = true;
	dojo.provide("famousweb.controller");
	dojo.addOnLoad(function() {
		if (!famousweb.info.v17) {
			return;
		}
		if (dojo.query("table.famous-alternating").length != 0 || dojo.query("table.famous-sortable-table").length != 0) {
			dojo["require"]("famousweb.table");
		}
	});
	dojo.addOnLoad(function() {
		if (!famousweb.info.v17) {
			return;
		}
		if (dojo.query("div.famous-common-overlay").length > 0) {
			dojo["require"]("famousweb.overlay");
			dojo.addOnLoad(function() {
				famousweb.overlay.init();
			});
		}
	});
	dojo.addOnLoad(function() {
		if (!famousweb.info.v17) {
			return;
		}
		if (dojo.query("a.famous-leaving-prompt").length > 0) {
			dojo["require"]("famousweb.leaving");
			dojo.addOnLoad(function() {
				famousweb.leaving.init();
			});
		}
	});
	dojo.addOnLoad(function() {
		if (!famousweb.info.v17) {
			return;
		}
		if (dojo.query(".famous-tooltip, .famous-tooltip-html").length > 0) {
			dojo["require"]("famousweb.tooltip");
			dojo.addOnLoad(function() {
				famousweb.tooltip.init();
			});
		}
	});
	dojo.addOnLoad(function() {
		var _2a8 = dojo.query(".famous-ribbon .famous-container-body");
		if (_2a8.length > 0) {
			dojo["require"]("famousweb.ribbon");
			dojo.addOnLoad(function() {
				dojo.forEach(_2a8,
				function(item) {
					var s = new famousweb.ribbon({
						srcNodeRef: item
					});
					s.startup();
				});
			});
		}
	});
	dojo.addOnLoad(function() {
		var _2a9 = dojo.query(".famous-scroll");
		if (_2a9.length > 0) {
			dojo["require"]("famousweb.scroll");
			dojo.addOnLoad(function() {
				dojo.forEach(_2a9,
				function(item) {
					new famousweb.scroll({
						element: item
					});
				});
			});
		}
	});
	dojo.addOnLoad(function() {
		var tabs = dojo.query("div.famous-dyntabs");
		if (tabs.length > 0) {
			dojo["require"]("famousweb.dyntabs");
			dojo.addOnLoad(function() {
				famousweb.dyntabs.init();
			});
		}
	});
	dojo.addOnLoad(function() {});
	dojo.addOnLoad(function() {
		dojo.query("p.famous-back-to-top a").onclick(function(e) {
			dojo.stopEvent(e);
			window.scrollTo(0, 1);
		});
		dojo.query(".famous-tab-section.famous-text a.famous-anchor-down-em-link").onclick(function(e) {
			var hash = e.target.href.split("#");
			if (hash.length != 2) {
				return;
			}
			hash = hash[1];
			var elem = dojo.byId(hash);
			if (!elem) {
				return;
			}
			window.scrollTo(0, dojo.marginBox(elem).t - dojo.position(dojo.byId("famous-masthead")).h);
			dojo.stopEvent(e);
		});
	});
	dojo.addOnLoad(function() {
		dojo.query("ul.famous-portrait-module-list li h3 a, ul.famous-portrait-module-list li h2 a").forEach(function(item) {
			dojo.query(item).parents("li").style("cursor", "pointer").onclick(function(e) {
				dojo.stopEvent(e);
				location.href = item.href;
			});
		});
	});
}
if (!dojo._hasResource["famousweb._base"]) {
	dojo._hasResource["famousweb._base"] = true;
	dojo.provide("famousweb._base");
}
if (!dojo._hasResource["famousweb.bitly"]) {
	dojo._hasResource["famousweb.bitly"] = true;
	dojo.provide("famousweb.bitly");
	dojo.declare("famousweb.bitly", [], {
		url: null,
		onSuccess: null,
		onError: null,
		shorturl: null,
		rawData: null,
		constructor: function(_2aa) {
			dojo.mixin(this, _2aa);
		},
		shorten: function() {
			if (!this.url) {
				this.url = location.href;
			}
			dojo.io.script.get({
				url: "http://api.bit.ly/v3/shorten?login=" + famousweb.config.bitly.login + "&apiKey=" + famousweb.config.bitly.key + "&longUrl=" + escape(this.url) + "&format=json&callback=" + famousweb.callback.createJSONPWrapper(this, "_callback"),
				timeout: famousweb.config.bitly.timeout,
				error: dojo.hitch(this,
				function(_2ab, _2ac) {
					this._error();
				})
			});
		},
		_callback: function(data) {
			if (!data || !data.status_code || !data.status_code == 200) {
				this._error();
			}
			this.shorturl = data.data.url;
			this.rawData = data;
			if (this.onSuccess) {
				this.onSuccess(data.data.url);
			}
		},
		_error: function() {
			this.shorturl = this.url;
			if (this.onError) {
				this.onError(this.url);
			} else {
				if (this.onSuccess) {
					this.onSuccess(this.url);
				}
			}
		}
	});
}
if (!dojo._hasResource["famousweb.sbs"]) {
	dojo._hasResource["famousweb.sbs"] = true;
	dojo.provide("famousweb.sbs");
	(function() {
		var _2ad = {
			"cc": "us",
			"lc": "en",
			"encoding": "utf8",
			"element": "famous-sbs-icons",
			"loadManually": false,
			init: function(_2ae) {
				if (document.getElementsByTagName("head").length != 1) {
					return;
				}
				if ( !! _2ae) {
					if ( !! _2ae.cc) {
						this.cc = _2ae.cc;
					}
					if ( !! _2ae.lc) {
						this.lc = _2ae.lc;
					}
					if ( !! _2ae.encoding) {
						this.encoding = _2ae.encoding;
					}
					if ( !! _2ae.element) {
						this.element = _2ae.element;
					}
					if ( !! _2ae.loadManually) {
						this.loadManually = _2ae.loadManually;
					}
				}
				if (!this.loadManually) {
					var _2af = document.createElement("link");
					_2af.href = "//www.famous.com/common/v16/css/sbs.css";
					_2af.rel = "stylesheet";
					_2af.type = "text/css";
					document.getElementsByTagName("head")[0].appendChild(_2af);
					var _2b0 = document.createElement("script");
					_2b0.src = "//www.famous.com/common/js/sbs/" + this.cc + "/" + this.lc + "/" + this.cc + this.lc + "-" + this.encoding + ".js";
					_2b0.type = "text/javascript";
					document.getElementsByTagName("head")[0].appendChild(_2b0);
				}
			},
			getUrl: function() {
				return location.href;
			},
			render: function(data, _2b1) {
				if (!_2b1) {
					_2b1 = this.element;
				}
				if (typeof(_2b1) == "string") {
					_2b1 = document.getElementById(_2b1);
				}
				if (_2b1 == null) {
					return;
				}
				if (_2b1.childNodes.length != 0) {
					return;
				}
				var _2b2 = this.getUrl();
				if (document.getElementsByTagName("title").length == 0) {
					return;
				}
				var _2b3 = document.getElementsByTagName("title")[0].innerHTML;
				var ul = document.createElement("ul");
				for (var i = 0, j = data.length; i < j; i++) {
					var $i = data[i];
					if ($i.id == "print") {
						var li = this.getPTPLink($i);
						if (li) {
							ul.appendChild(li);
						}
						continue;
					}
					if ($i.id == "email") {
						var li = this.getETPLink($i);
						if (li) {
							ul.appendChild(li);
						}
						continue;
					}
					if (!$i.url) {
						continue;
					}
					$i.targeturl = $i.url.replace(/%\{URL\}/g, encodeURIComponent(_2b2)).replace(/%\{TITLE\}/g, encodeURIComponent(_2b3));
					var a = this.createLink($i);
					var li = document.createElement("li");
					li.appendChild(a);
					ul.appendChild(li);
				}
				_2b1.appendChild(ul);
				_2b1.onmouseover = function() {
					_2b1.className += " famous-active";
				};
				_2b1.onmouseout = function() {
					_2b1.className = _2b1.className.replace(/\s+famous-active/, "");
				};
				_2b1.style.display = "block";
			},
			createLink: function($i) {
				var a = dojo.create("a", {
					className: "famous-share-" + $i.id,
					title: $i.title,
					innerHTML: $i.title,
					href: ( !! $i.targeturl) ? $i.targeturl: "#",
					rel: $i.id,
					onmousedown: function() {
						this.className += " famous-share-active-" + this.rel;
					},
					onmouseout: function() {
						this.className = this.className.replace(/\s+famous-share-active-.*/, "");
					},
					onclick: function(e) {
						famousweb.sbs.clickHandler(e, $i);
					}
				});
				if (document.getElementById("famous-com").className.indexOf("dijit_a11y") != -1) {
					a.innerHTML = "";
					var img = document.createElement("img");
					img.className = "famous-access";
					img.src = famousweb.config.imageUrl + "icons/sprites-pt-all.png";
					img.alt = $i.title;
					a.appendChild(img);
				}
				return a;
			},
			clickHandler: function() {
				return true;
			},
			getPTPLink: function() {
				return null;
			},
			getETPLink: function() {
				return null;
			}
		};
		famousweb.sbs = _2ad;
	})();
	famousweb.sbs.getUrl = famousweb.util.getUrl;
	famousweb.sbs.clickHandler = function(_2b4, data) {
		if (!data.url) {
			return;
		}
		dojo.stopEvent(_2b4);
		var a = _2b4.target;
		famousweb.util.statsHelper({
			"famousEV": "external link",
			"famousEvAction": a.href,
			"famousEvGroup": "SBS icons",
			"famousEvName": "sbs-" + a.rel
		});
		dojo.style(a, "cursor", "wait");
		if (dojo.hasClass(a, "clicked")) {
			return;
		}
		dojo.addClass(a, "clicked");
		var b = new famousweb.bitly({
			url: famousweb.util.getUrl(),
			onSuccess: function(_2b5) {
				dojo.style(a, "cursor", "auto");
				dojo.removeClass(a, "clicked");
				var url = data.url.replace(/%\{URL\}/g, encodeURIComponent(_2b5)).replace(/%\{TITLE\}/g, encodeURIComponent(famousweb.meta.title));
				setTimeout(function() {
					window.location = url;
				},
				0);
			}
		});
		b.shorten();
		return true;
	};
	famousweb.sbs.getETPLink = function(data) {
		var a = this.createLink(data);
		dojo.connect(a, "onclick", null,
		function(_2b6) {
			dojo.stopEvent(_2b6);
			famousweb.dynnav.executeOnModule("emailthispage", "showForm", []);
			return false;
		});
		var li = document.createElement("li");
		li.appendChild(a);
		return li;
		return null;
	};
	famousweb.sbs.getPTPLink = function(data) {
		var a = this.createLink(data);
		dojo.connect(a, "onclick", null,
		function(_2b7) {
			dojo.stopEvent(_2b7);
			javascript: print();
			return false;
		});
		var li = document.createElement("li");
		li.appendChild(a);
		return li;
		return null;
	};
	famousweb.sbs.register = function(elem, all) {
		if (! (typeof(famousweb.dynnav.PMM) == "object" && !!famousweb.dynnav.PMM.footerToolData)) {
			window.setTimeout(function() {
				famousweb.sbs.register(elem, all);
			},
			50);
			return;
		}
		famousweb.sbs.init({
			"cc": famousweb.meta.cc,
			"lc": famousweb.meta.lc,
			"encoding": famousweb.meta.encoding,
			"loadManually": true,
			"element": null
		});
		if (!elem) {
			elem = ".famous-share-this";
		}
		elem = dojo.query(elem);
		elem.forEach(function(node) {
			famousweb.sbs.render(famousweb.dynnav.PMM.footerToolData, node, all);
		});
	};
	dojo.addOnLoad(famousweb.sbs.register);
}
if (!dojo._hasResource["famousweb.ribbon"]) {
	dojo._hasResource["famousweb.ribbon"] = true;
	dojo.provide("famousweb.ribbon");
	dojo.provide("famousweb.ribbonSlide");
	dojo.provide("famousweb.ribbonItem");
	dojo.provide("famousweb.ribbonItemAbstract");
	dojo.declare("famousweb.ribbon", [dijit._Widget, dijit._Templated], {
		columns: 3,
		autoscroll: false,
		freeScroll: false,
		interval: 5000,
		rotationCount: 0,
		_rotationCount: 0,
		defaultDuration: 500,
		_isBeingAnimated: false,
		templateString: "<div class='famous-container-body' dojoAttachPoint='ribbonContainer'>" + "<a class='famous-ribbon-prev' dojoAttachPoint='scrollLeftButton'></a>" + "<div class='famous-ribbon-pane'>" + "<div class='famous-ribbon-section' dojoAttachPoint='scrollableNode'></div>" + "</div>" + "<a class='famous-ribbon-next' dojoAttachPoint='scrollRightButton'></a>" + "<div class='famous-ribbon-nav' dojoAttachPoint='navNode'></div>" + "</div>",
		constructor: function(_2b8) {
			this.slides = [];
			this.currentSlideIndex = 0;
			this.originalNode = null;
			this.duration = this.defaultDuration; !! _2b8 && _2b8.srcNodeRef && (this.originalNode = _2b8.srcNodeRef);
		},
		postCreate: function() {
			var self = this;
			if (self.originalNode) {
				dojo.query(".famous-columns", this.originalNode).forEach(function(_2b9, _2ba) {
					var _2bb = null;
					if (_2b9.id) {
						_2bb = _2b9.id;
					}
					dojo.query("> *", _2b9).forEach(function(item, j) {
						self.addItem(new famousweb.ribbonItemAbstract({
							srcNodeRef: item
						}), _2ba, _2bb);
					});
				});
				if (self.originalNode.id) {
					self.domNode.id = self.originalNode.id;
				}
			}
		},
		startup: function() {
			dojo.addClass(this.scrollLeftButton, "famous-disabled");
			if (this.slideCount() <= 1) {
				dojo.addClass(this.scrollRightButton, "famous-disabled");
				dojo.query(this.navNode).orphan();
			} else {
				dojo.query(":first-child", this.navNode).addClass("famous-active");
				dojo.connect(this.scrollLeftButton, "onclick", dojo.hitch(this, this.slideLeft));
				dojo.connect(this.scrollRightButton, "onclick", dojo.hitch(this, this.slideRight));
			}
			famousweb.queue.push(function() {
				return famousweb.dynnav.isDataLoaded;
			},
			dojo.hitch(this,
			function() {
				dojo.attr(this.scrollLeftButton, "title", famousweb.dynnav.PMM.buttonData.prev);
				this.scrollLeftButton.innerHTML = famousweb.dynnav.PMM.buttonData.prev;
				dojo.attr(this.scrollRightButton, "title", famousweb.dynnav.PMM.buttonData.next);
				this.scrollRightButton.innerHTML = famousweb.dynnav.PMM.buttonData.next;
			}));
			if (this.autoscroll) {
				var _2bc = this.slides[0].domNode;
				var _2bd = dojo.clone(_2bc);
				dojo.addClass(_2bd, "famous-cloned");
				dojo.place(_2bd, this.scrollableNode);
				var self = this;
				var _2be = setInterval(function() {
					self.next();
				},
				this.interval);
				if (!this.freeScroll) {
					dojo.connect(this.domNode, "onmouseenter", dojo.hitch(this,
					function() {
						clearInterval(_2be);
					}));
					dojo.connect(this.domNode, "onmouseleave", dojo.hitch(this,
					function() {
						clearInterval(_2be);
						_2be = setInterval(function() {
							self.next();
						},
						this.interval);
					}));
					dojo.connect(window, "resize", dojo.hitch(this,
					function() {
						clearInterval(_2be);
					}));
				}
			}
			if (famousweb.info.iDevice) {
				var _2bf = 0;
				this.domNode.ontouchstart = function(e) {
					_2bf = e.touches[0].clientX;
				};
				this.domNode.ontouchmove = function(e) {
					e.preventDefault();
				};
				this.domNode.ontouchend = dojo.hitch(this,
				function(e) {
					swipeEnd = e.changedTouches[0].clientX;
					var diff = swipeEnd - _2bf;
					if (diff < 0) {
						this.slideRight();
					} else {
						if (diff > 0) {
							this.slideLeft();
						}
					}
				});
			}
		},
		addSlide: function(_2c0) {
			this.slides.push(_2c0);
			dojo.place(_2c0.domNode, this.scrollableNode);
			dojo.connect(dojo.create("a", {
				href: "#" + (this.slides.length - 1)
			},
			this.navNode), "onclick", dojo.hitch(this, this.slideTo, this.slides.length - 1));
			return _2c0;
		},
		addItem: function(item, _2c1, _2c2) {
			if (_2c1 == undefined || _2c1 < 0 || _2c1 >= this.slides.length) {
				if (_2c1 && _2c1 >= this.slides.length) {
					this.addSlide(new famousweb.ribbonSlide({
						pid: _2c2
					}));
				}
				if (!_2c1 && (this.slides.length == 0 || this.slides[this.slides.length - 1].getChildren().length == this.columns)) {
					this.addSlide(new famousweb.ribbonSlide({
						pid: _2c2
					}));
				}
				_2c1 = this.slides.length - 1;
			}
			this.slides[_2c1].addChild(item);
			return item;
		},
		slideTo: function(_2c3, _2c4, _2c5) {
			_2c4 && dojo.stopEvent(_2c4);
			if (_2c3 < 0 || _2c3 >= this.slides.length || _2c3 == this.currentSlideIndex) {
				return;
			}
			var _2c6 = dojo.coords(dojo.query("> *", this.scrollableNode)[0]).w;
			if (this.customSeekAnimation) {
				if (this._isBeingAnimated) {
					return;
				}
				this._isBeingAnimated = true;
				this.customSeekAnimation(_2c6, _2c3, _2c5);
				if (_2c5) {
					_2c3 = 0;
				}
			} else {
				dojo.animateProperty({
					node: this.scrollableNode,
					duration: this.duration,
					properties: {
						left: _2c6 * _2c3 * -1
					}
				}).play();
			}
			this.currentSlideIndex = _2c3;
			if (_2c3 == 0) {
				dojo.addClass(this.scrollLeftButton, "famous-disabled");
			} else {
				dojo.removeClass(this.scrollLeftButton, "famous-disabled");
			}
			if (_2c3 == this.slides.length - 1) {
				dojo.addClass(this.scrollRightButton, "famous-disabled");
			} else {
				dojo.removeClass(this.scrollRightButton, "famous-disabled");
			}
			dojo.query("a.famous-active", this.navNode).removeClass("famous-active");
			dojo.query("a:nth-child(" + (_2c3 + 1) + ")", this.navNode).addClass("famous-active");
		},
		slideLeft: function() {
			this.slideTo(this.currentSlideIndex - 1);
		},
		slideRight: function() {
			this.slideTo(this.currentSlideIndex + 1);
		},
		slideFirst: function() {
			this.slideTo(0);
		},
		slideLast: function() {
			this.slideTo(this.slides.length - 1);
		},
		next: function() {
			if (this.rotationCount > 0 && this.rotationCount == this._rotationCount) {
				this.autoscroll = false;
				return false;
			}
			if ((this.currentSlideIndex + 1) == this.slideCount()) {
				this._rotationCount += 1;
				this.slides.length += 1;
				this.slideTo(this.slides.length - 1, null, true);
				this.slides.length -= 1;
			} else {
				this.slideRight();
			}
		},
		placeAt: function(_2c7) {
			dojo.place(this.domNode, _2c7);
		},
		slideCount: function() {
			return this.slides.length;
		},
		setDuration: function(_2c8) {
			this.duration = _2c8;
		},
		hideNavigationDots: function() {
			dojo.query(this.navNode).style("display", "none");
		},
		addRibbonCloseBtn: function() {
			if (dojo.byId("famous-com").className.indexOf("dijit_a11y") != -1) {
				dojo.create("div", {
					className: "famous-mm-close",
					innerHTML: "<span tabindex='0' aria-label='Close' role='button' title='Close'>&#9650;</span>"
				},
				this.ribbonContainer, "last");
			} else {
				dojo.create("div", {
					className: "famous-mm-close",
					innerHTML: "<span tabindex='0' aria-label='Close' role='button' title='Close'></span>"
				},
				this.ribbonContainer, "last");
			}
		}
	});
	dojo.declare("famousweb.ribbonSlide", [dijit._Widget, dijit._Templated, dijit._Container], {
		pid: null,
		templateString: "<div class='famous-columns' dojoAttachPoint='containerNode'></div>",
		postCreate: function() {
			if (this.pid && this.pid !== "") {
				this.containerNode.id = this.pid;
			}
		}
	});
	dojo.declare("famousweb.ribbonItemAbstract", [dijit._Widget], {
		constructor: function(_2c9) {
			if (!_2c9.srcNodeRef) {
				return;
			}
			this.srcNodeRef = dojo.clone(_2c9.srcNodeRef);
		}
	});
	dojo.declare("famousweb.ribbonItem", [dijit._Widget, dijit._Templated, dijit._Container], {
		columns: 3,
		templateString: "<div dojoAttachPoint='containerNode'></div>",
		attributeMap: {
			type: {
				node: "containerNode",
				type: "class"
			},
			content: {
				node: "containerNode",
				type: "innerHTML"
			}
		},
		postCreate: function() {
			switch (parseInt(this.columns)) {
			case 1:
				this.attr("class", "famous-col-1-1");
				break;
			case 3:
				this.attr("class", "famous-col-6-2");
				break;
			case 5:
				this.attr("class", "famous-col-5-1");
				break;
			case 6:
				this.attr("class", "famous-col-6-1");
				break;
			default:
				this.attr("class", "famous-col-6-2");
				break;
			}
		}
	});
}
if (!dojo._hasResource["famousweb.dynnav.megamenu"]) {
	dojo._hasResource["famousweb.dynnav.megamenu"] = true;
	dojo.provide("famousweb.dynnav.megamenu");
	dojo.declare("famousweb.dynnav.megamenu", famousweb.dynnav._module, {
		_currentMenu: null,
		_mouseover: false,
		_slideUpTimer: null,
		_slideUpDuration: 600,
		_keepexpanded: false,
		_mouseleaveHandlerEnabled: true,
		_expandTimer: null,
		_slideToTimer: null,
		_itemtitle: null,
		_lock: false,
		_beingAnimated: false,
		_doubleClickLock: null,
		_hasFocus: [],
		init: function() {
			if (dojo.indexOf(famousweb.config.megamenu.disabledLocales, famousweb.meta.cpi) != -1) {
				famousweb.config.megamenu.linksonly = true;
			}
			if (famousweb.config.config === "www" && dojo.indexOf(famousweb.config.megamenu.enabledLocales, famousweb.meta.cpi) == -1) {
				famousweb.config.megamenu.linksonly = true;
			}
			return famousweb.dynnav.isServiceEnabled("megamenu");
		},
		onLoad: function() {
			if (!dojo.byId("famous-common-menu")) {
				var _2ca = famousweb.config.config == "www" ? "famous-universal-nav": "famous-mast-options";
				dojo.create("div", {
					id: "famous-common-menu"
				},
				dojo.byId(_2ca), "after");
			}
			dojo.style("famous-common-menu", "display", "none");
			if (famousweb.config.config == "www" && famousweb.config.megamenu.icons != "none") {
				if (famousweb.config.megamenu.icons == "arrow") {
					if (!dojo.byId("famous-arrow-logo")) {
						var _2cb = dojo.create("span", {
							id: "famous-arrow-logo",
							className: "famous-masthead-indicator"
						});
						dojo.create("img", {
							src: famousweb.config.imageUrl + "t/v17_min_mast_anim_que.gif"
						},
						_2cb);
						dojo.place(_2cb, dojo.query("#famous-universal-nav")[0], "first");
					}
				} else {
					if (!dojo.byId("famous-search-logo")) {
						var _2cc = dojo.create("li", {
							id: "famous-search-logo",
							className: "famous-masthead-indicator"
						});
						if (famousweb.config.megamenu.icons == "text") {
							_2cc.innerHTML = "Search";
							dojo.addClass(_2cc, "famous-text");
						}
						dojo.place(_2cc, dojo.query("#famous-unav-links")[0], "last");
					}
					if (!dojo.byId("famous-links-logo")) {
						var _2cd = dojo.create("li", {
							id: "famous-links-logo",
							className: "famous-masthead-indicator"
						});
						if (famousweb.config.megamenu.icons == "text") {
							_2cd.innerHTML = "Links";
							dojo.addClass(_2cd, "famous-text");
						}
						dojo.place(_2cd, dojo.query("#famous-unav-links")[0], "last");
					}
				}
				dojo.query(".famous-masthead-indicator").addClass("famous-access");
			}
			if (!famousweb.config.megamenu.noScroll) {
				dojo.connect(window, "onscroll", this, "onVScrollCallback");
			} else {
				dojo.addClass("famous-top", "famous-no-scroll");
			}
			dojo.connect(window, "onscroll", this, "onHScrollCallback");
			dojo.connect(window, "onresize", this,
			function(_2ce) {
				dojo.stopEvent(_2ce);
				if (!window.pageXOffset && window.pageXOffset != 0) {
					dojo.style(dojo.byId("famous-masthead"), "left", "-" + document.documentElement.scrollLeft + "px");
				} else {
					dojo.style(dojo.byId("famous-masthead"), "left", "-" + window.pageXOffset + "px");
				}
			});
			dojo.connect(window, "blur", this,
			function(_2cf) {
				this.meta = this.shift = this.ctrl = this.cmmd = this.alt = false;
				dojo.publish("/famous/dynnav/slideUp");
			});
			dojo.connect(dojo.byId("famous-masthead"), "onmouseenter", this, "onMouseEnter");
			dojo.connect(dojo.byId("famous-masthead"), "onmouseleave", this, "onMouseLeave");
			dojo.subscribe("/famous/dynnav/slideUp", this, "_slideUp");
			dojo.subscribe("/famous/dynnav/megamenu/slideUp", this, "_slideUp");
			dojo.subscribe("/famous/dynnav/megamenu/slideDown", this, "_slideDown");
			dojo.subscribe("/famous/dynnav/megamenu/expandMenu", this, "_expandMenu");
			dojo.subscribe("/famous/dynnav/localeselector/slidingUp", dojo.hitch(this,
			function() {
				this._mouseleaveHandlerEnabled = false;
			}));
			if (famousweb.config.megamenu.minimizeByDefault) {
				this._minimizeMenu(1);
			}
		},
		onData: function(data) {
			var ul = dojo.byId("famous-menu-links");
			dojo.empty(ul);
			dijit.setWaiRole("famous-menu-links", "toolbar");
			var _2d0 = new famousweb.ribbon();
			dojo.forEach(data.menuData, dojo.hitch(this,
			function(item, i) {
				var li = dojo.create("li", {},
				ul);
				dijit.setWaiRole(li, "presentation");
				var a = dojo.create("a", {
					href: item.url || "#",
					role: "button",
					tabIndex: (famousweb.info.OperaVersion != 11.11) ? -1 : 0,
					innerHTML: item.title.htmlspecialchars()
				},
				li);
				if (famousweb.config.megamenu.linksonly) {
					return;
				}
				this._itemtitle = item.title.htmlspecialchars();
				if (item.child) {
					var div = this._buildMegaMenu(item.child);
					_2d0.addItem(new famousweb.ribbonItemAbstract({
						srcNodeRef: div
					}), i);
					dijit.setWaiRole(div.parentNode, "dialog");
					dijit.setWaiState(div.parentNode, "labelledby", "famous-rib-head-" + i);
					dojo.create("h2", {
						className: "famous-access",
						id: "famous-rib-head-" + i,
						innerHTML: item.title.htmlspecialchars()
					},
					div.parentNode, "first");
					childAnk = dojo.query("a", _2d0.navNode);
					if (childAnk.length > 0 && i < childAnk.length) {
						dojo.attr(childAnk[i], "title", item.title.htmlspecialchars());
						childAnk[i].innerHTML = item.title.htmlspecialchars();
					}
					dojo.connect(a, "onblur", this,
					function(_2d1) {
						dojo.stopEvent(_2d1);
						dojo.query("#famous-menu-links li.famous-inactive").removeClass("famous-inactive");
						return false;
					});
					dojo.connect(a, "onfocus", this,
					function(_2d2) {
						dojo.stopEvent(_2d2);
						if (dojo.byId("famous-menu-links").className == "famous-access") {
							dojo.publish("/famous/dynnav/megamenu/expandMenu");
						}
						var _2d3 = dojo.query("#famous-menu-links a[tabindex $='0']");
						_2d3.forEach(function(i) {
							i.tabIndex = -1;
						});
						if (this._currentMenu != null) {
							_2d0.setDuration(_2d0.defaultDuration);
							this._currentMenu = i;
							dojo.query("a", _2d0.scrollableNode).attr("tabIndex", "-1");
							dojo.query("#famous-menu-links a.famous-active").removeClass("famous-active");
							dojo.query("#famous-menu-links li.famous-active").removeClass("famous-active");
							_2d0.slideTo(i);
							_2d2.target.parentNode.className = "famous-active";
							dojo.addClass(_2d2.target, "famous-active");
							var _2d4 = dojo.query(">div", _2d0.scrollableNode);
							var temp = dojo.query("a", _2d4[i]);
							if (temp.length > 0) {
								temp.attr("tabIndex", "0");
							}
						} else {
							dojo.query("#famous-menu-links li.famous-inactive").removeClass("famous-inactive");
							_2d2.target.parentNode.className = "famous-inactive";
						}
						a.tabIndex = 0;
						return false;
					});
					dojo.connect(a, "onkeypress", this,
					function(_2d5) {
						if (_2d5.shiftKey && _2d5.charOrCode == dojo.keys.TAB) {
							this._slideUp();
						} else {
							if (_2d5.keyCode == dojo.keys.TAB) {
								if (this._currentMenu != null) {
									dojo.stopEvent(_2d5);
									var _2d6 = dojo.query(">div", _2d0.scrollableNode);
									var temp = dojo.query("a", _2d6[i]);
									if (temp.length > 0) {
										temp[0].focus();
									}
									_2d5.target.className = "famous-active";
								} else {
									this._slideUp();
								}
							}
						}
						if (_2d5.keyCode == dojo.keys.LEFT_ARROW || _2d5.keyCode == dojo.keys.UP_ARROW) {
							a.tabIndex = -1;
							var prev = _2d5.target.parentNode.previousSibling;
							if (prev) {
								dojo.stopEvent(_2d5);
								prev.firstChild.focus();
							} else {
								prev = _2d5.target.parentNode.parentNode.lastChild;
								if (prev) {
									dojo.stopEvent(_2d5);
									prev.firstChild.focus();
								}
							}
						}
						if (_2d5.keyCode == dojo.keys.RIGHT_ARROW || (_2d5.keyCode == dojo.keys.DOWN_ARROW && this._currentMenu == null)) {
							a.tabIndex = -1;
							var next = _2d5.target.parentNode.nextSibling;
							if (next) {
								dojo.stopEvent(_2d5);
								next.firstChild.focus();
							} else {
								next = _2d5.target.parentNode.parentNode.firstChild;
								if (next) {
									dojo.stopEvent(_2d5);
									next.firstChild.focus();
								}
							}
						}
						if (_2d5.keyCode == dojo.keys.ENTER || (_2d5.keyCode == 0 || _2d5.charOrCode == " ")) {
							dojo.stopEvent(_2d5);
							if (this._currentMenu == null) {
								_2d0.setDuration(1);
								dojo.publish("/famous/dynnav/slideUp");
								dojo.publish("/famous/dynnav/signin/slideUp", [_2d5]);
								dojo.publish("/famous/dynnav/megamenu/slideDown", [i]);
								_2d0.slideTo(i);
								var _2d6 = dojo.query(">div", _2d0.scrollableNode);
								var temp = dojo.query("a", _2d6[i]);
								if (temp.length > 0) {
									temp.attr("tabIndex", "0");
									this._slideToTimer = setTimeout(dojo.hitch(this,
									function() {
										temp[0].focus();
									}), _2d0.defaultDuration + 60);
								}
							} else {
								_2d0.setDuration(_2d0.defaultDuration);
								this._slideUp();
							}
						}
						if (_2d5.keyCode == dojo.keys.DOWN_ARROW && this._currentMenu != null) {
							dojo.stopEvent(_2d5);
							var _2d6 = dojo.query(">div", _2d0.scrollableNode);
							var temp = dojo.query("a", _2d6[i]);
							if (temp.length > 0) {
								temp[0].focus();
							}
							_2d5.target.className = "famous-active";
						}
						if (_2d5.keyCode == dojo.keys.ESCAPE) {
							if (this._currentMenu != null) {
								dojo.stopEvent(_2d5);
								this._slideUp();
							} else {
								var _2d7 = dojo.query("#q");
								if (_2d7.length > 0) {
									_2d7[0].focus();
								}
							}
						}
						return false;
					});
					dojo.connect(a, "ondblclick", this,
					function(_2d8) {
						dojo.stopEvent(_2d8);
						if ( !! this._doubleClickLock) {
							clearTimeout(this._doubleClickLock);
							this._doubleClickLock = null;
						}
						location.href = _2d8.target.href;
					});
					dojo.connect(a, "onclick", this,
					function(_2d9) {
						dojo.stopEvent(_2d9);
						if ( !! this._doubleClickLock) {
							return;
						}
						this._doubleClickLock = setTimeout(dojo.hitch(this,
						function() {
							this._doubleClickLock = null;
							_2d9.target.focus();
							if (this._currentMenu == null) {
								_2d0.setDuration(1);
								dojo.publish("/famous/dynnav/slideUp");
								dojo.publish("/famous/dynnav/signin/slideUp", [_2d9]);
								dojo.publish("/famous/dynnav/megamenu/slideDown", [i]);
								_2d0.slideTo(i);
								this._hasFocus[i] == false;
								var _2da = dojo.query(">div", _2d0.scrollableNode);
								var temp = dojo.query("a", _2da[i]);
								if (temp.length > 0) {
									temp.attr("tabIndex", "0");
									this._slideToTimer = setTimeout(dojo.hitch(this,
									function() {
										temp[0].focus();
									}), _2d0.defaultDuration + 60);
								}
							} else { (this._currentMenu == i && this._hasFocus[i] == true) ? this._slideUp() : _2d0.slideTo(i);
							}
							for (var j = 0; j < this._hasFocus.length; j++) {
								this._hasFocus[j] = false;
							}
							this._hasFocus[i] = true;
							return false;
						}), 250);
					});
				}
			}));
			if (famousweb.config.megamenu.linksonly) {
				return;
			}
			_2d0.placeAt("famous-common-menu");
			_2d0.hideNavigationDots();
			_2d0.addRibbonCloseBtn();
			_2d0.startup();
			var a = dojo.query("#famous-menu-links a");
			if (a.length > 0) {
				a[0].tabIndex = 0;
			}
			dojo.connect(_2d0.scrollableNode, "onkeypress", this,
			function(_2db) {
				if (_2db.keyCode == dojo.keys.ESCAPE) {
					dojo.stopEvent(_2db);
					dojo.publish("/famous/dynnav/megamenu/slideUp");
				}
				if ((!_2db.shiftKey && _2db.keyCode == dojo.keys.TAB) || (_2db.shiftKey && _2db.keyCode == dojo.keys.TAB)) {
					dojo.stopEvent(_2db);
					var _2dc;
					(_2db.target.parentNode.nodeName == "H3") ? _2dc = _2db.target.parentNode.parentNode: _2dc = _2db.target.parentNode.parentNode.parentNode;
					if (!_2db.shiftKey && _2db.keyCode == dojo.keys.TAB) { (_2dc.nextSibling && dojo.query("a", _2dc.nextSibling)[0]) ? dojo.query("a", _2dc.nextSibling)[0].focus() : dojo.query("div#famous-common-menu span")[0].focus();
					}
					if (_2db.shiftKey && _2db.keyCode == dojo.keys.TAB) { (_2dc.previousSibling && dojo.query("a", _2dc.previousSibling)[0]) ? dojo.query("a", _2dc.previousSibling)[0].focus() : dojo.query("div#famous-common-menu span")[0].focus();
					}
				}
				if (_2db.keyCode == dojo.keys.UP_ARROW || _2db.keyCode == dojo.keys.LEFT_ARROW) {
					var _2dd = dojo.query(">div", _2d0.scrollableNode);
					var _2de = dojo.query("a", _2dd[this._currentMenu])[0];
					var curr = dojo.query("a.famous-active", _2dd[this._currentMenu])[0];
					if ( !! curr) {
						dojo.stopEvent(_2db);
						var prev = curr.parentNode.previousSibling;
						if (prev == null) {
							if (curr.parentNode.parentNode.nodeName == "UL") {
								prev = curr.parentNode.parentNode.previousSibling;
							}
						}
						if (prev != null && prev.firstChild.nodeName == "A") {
							prev.firstChild.focus();
						}
					}
				}
				if (_2db.keyCode == dojo.keys.DOWN_ARROW || _2db.keyCode == dojo.keys.RIGHT_ARROW) {
					var _2dd = dojo.query(">div", _2d0.scrollableNode);
					var curr = dojo.query("a.famous-active", _2dd[this._currentMenu])[0];
					if ( !! curr) {
						dojo.stopEvent(_2db);
						var next = curr.parentNode.nextSibling;
						if (next) {
							if (next.nodeName == "UL") {
								next = next.firstChild;
							}
							if (next && next.firstChild && next.firstChild.nodeName == "A") {
								next.firstChild.focus();
							}
						}
					}
				}
			});
			var span = dojo.query("div#famous-common-menu div.famous-mm-close span")[0];
			if (span) {
				dojo.connect(span, "onclick", this,
				function(_2df) {
					dojo.publish("/famous/dynnav/megamenu/slideUp");
				});
				dojo.connect(span, "onkeypress", this,
				function(_2e0) {
					if (_2e0.keyCode == dojo.keys.ESCAPE || _2e0.keyCode == dojo.keys.ENTER || _2e0.keyCode == 0 || _2e0.charOrCode == " ") {
						dojo.stopEvent(_2e0);
						dojo.publish("/famous/dynnav/megamenu/slideUp");
					}
					if (_2e0.keyCode == dojo.keys.TAB) {
						var _2e1 = dojo.query(">div", _2d0.scrollableNode);
						var _2e2 = dojo.query("a", _2e1[this._currentMenu]);
						if (!_2e0.shiftKey) {
							dojo.stopEvent(_2e0);
							_2e2[0].focus();
						}
						if (_2e0.shiftKey) {
							dojo.stopEvent(_2e0);
							if (_2e2[_2e2.length - 1].parentNode.nodeName == "H3") {
								var _2e3 = _2e2[_2e2.length - 1].parentNode.parentNode;
							} else {
								var _2e3 = _2e2[_2e2.length - 1].parentNode.parentNode.parentNode;
							}
							dojo.query("a", _2e3)[0].focus();
						}
					}
					if (_2e0.keyCode == dojo.keys.UP_ARROW || _2e0.keyCode == dojo.keys.RIGHT_ARROW || _2e0.keyCode == dojo.keys.DOWN_ARROW || _2e0.keyCode == dojo.keys.LEFT_ARROW) {
						dojo.stopEvent(_2e0);
					}
				});
			}
		},
		_buildMegaMenu: function(data) {
			var id = famousweb.util.generateId();
			var div = dojo.create("div", {
				className: "famous-columns",
				id: id
			});
			dijit.setWaiRole(div, "group");
			var _2e4 = null;
			var max = (data.length > famousweb.config.megamenu.maxColumns) ? famousweb.config.megamenu.maxColumns: data.length;
			for (var i = 0, j = max; i < j; i++) {
				var col = dojo.create("div", {
					className: "famous-col-6-1"
				},
				div);
				if (data[i].title != " ") {
					_2e4 = data[i].title.htmlspecialchars();
				}
				if (_2e4 == null) {
					_2e4 = this._itemtitle;
				}
				dijit.setWaiState(col, "label", _2e4);
				if (data[i].url) {
					var h3 = dojo.create("h3", {},
					col);
					var a = dojo.create("a", {
						innerHTML: data[i].title.htmlspecialchars(),
						href: data[i].url,
						tabIndex: "-1"
					},
					h3);
					dijit.setWaiRole(h3, "menuitem");
					dojo.connect(a, "onfocus", this,
					function(_2e5) {
						_2e5.target.className = "famous-active";
					});
					dojo.connect(a, "onblur", this,
					function(_2e6) {
						_2e6.target.className = "";
					});
				} else {
					if (data[i].title == " ") {
						dojo.create("h3", {
							innerHTML: _2e4,
							className: "famous-access"
						},
						col);
					} else {
						dojo.create("h3", {
							innerHTML: data[i].title.htmlspecialchars()
						},
						col);
					}
				}
				var ul;
				if (data[i].title == " ") {
					if (famousweb.config.config == "www") {
						ul = dojo.create("ul", data[i].extraClass ? {
							"className": "famous-" + data[i].extraClass,
							style: {
								marginTop: "26px"
							}
						}: {
							style: {
								marginTop: "26px"
							}
						},
						col);
					} else {
						ul = dojo.create("ul", data[i].extraClass ? {
							"className": "famous-" + data[i].extraClass,
							style: {
								marginTop: "19px"
							}
						}: {
							style: {
								marginTop: "19px"
							}
						},
						col);
					}
				} else {
					ul = dojo.create("ul", data[i].extraClass ? {
						"className": "famous-" + data[i].extraClass
					}: null, col);
				}
				dijit.setWaiRole(ul, "menu");
				var _2e7 = (data[i].child.length > famousweb.config.megamenu.maxRows) ? famousweb.config.megamenu.maxRows: data[i].child.length;
				for (var k = 0, l = _2e7; k < l; k++) {
					var _2e8 = data[i].child[k];
					var li = dojo.create("li", {},
					ul);
					dijit.setWaiRole(li, "menuitem");
					var a = dojo.create("a", {
						innerHTML: _2e8.title.htmlspecialchars(),
						href: _2e8.url,
						tabIndex: "-1"
					},
					li);
					dojo.connect(a, "onfocus", this,
					function(_2e9) {
						_2e9.target.className = "famous-active";
					});
					dojo.connect(a, "onblur", this,
					function(_2ea) {
						_2ea.target.className = "";
					});
				}
			}
			return div;
		},
		_slideDown: function(id) {
			if (!id && arguments[0]) {
				id = arguments[0];
			}
			if (this._animationInProgress) {
				return false;
			}
			this._animationInProgress = true;
			dojo.query("#famous-common-menu").style({
				display: "block",
				height: "1px",
				overflow: "hidden"
			});
			dojo.anim("famous-common-menu", {
				height: 292
			},
			200);
			if (!famousweb.config.megamenu.noScroll) {
				if (true) {
					if ((famousweb.info.isIE && famousweb.info.ieVersion <= 6) || famousweb.info.iDevice) {} else {
						dojo.anim("famous-top", {
							marginTop: 292 + (famousweb.config.config === "www" ? 74 : 90)
						},
						200);
					}
				}
			}
			dojo.animateProperty({
				node: dojo.query("#famous-common-menu .famous-ribbon-pane")[0],
				duration: 200,
				properties: {
					height: {
						start: "1",
						end: "292"
					}
				},
				onEnd: dojo.hitch(this,
				function() {
					this._animationInProgress = false;
					dojo.query("div#famous-common-menu .famous-ribbon-section a").attr("tabIndex", "-1");
					var temp = dojo.query("div#famous-common-menu .famous-ribbon-section >div");
					if (temp.length > 0) {
						temp = dojo.query("a", temp[id]);
					}
					if (temp.length != 0) {
						temp.attr("tabIndex", "0");
					}
				})
			}).play();
			dojo.query("#famous-menu-links a")[id].className = "famous-active";
			dojo.query("#famous-menu-links li")[id].className = "famous-active";
			dojo.query("#famous-menu-links li.famous-inactive").removeClass("famous-inactive");
			this._currentMenu = id;
			if (!this._lock) {
				this._lock = true;
				dojo.query("#famous-common-menu .famous-col-6-1 ul").forEach(function(item) {
					var h = dojo.coords(item, true).h;
					if (item.parentNode.firstChild.className == "famous-access") {
						for (; h > 272; h = dojo.coords(item, true).h) {
							dojo.destroy(item.lastChild);
						}
					} else {
						for (; h > 242; h = dojo.coords(item, true).h) {
							dojo.destroy(item.lastChild);
						}
					}
				});
			}
		},
		_slideUp: function(_2eb) {
			if (this._currentMenu == null || this._animationInProgress) {
				return;
			}
			if (this._slideToTimer) {
				clearTimeout(this._slideToTimer);
				this._slideToTimer = null;
			}
			this._animationInProgress = true;
			dojo.animateProperty({
				node: "famous-common-menu",
				duration: 400,
				properties: {
					height: {
						start: "292",
						end: "1"
					}
				},
				onEnd: function() {
					dojo.query("#famous-common-menu").style("display", "none");
					if (_2eb) {
						setTimeout(_2eb, 1);
					}
				}
			}).play();
			dojo.animateProperty({
				node: dojo.query("#famous-common-menu .famous-ribbon-pane")[0],
				duration: 400,
				properties: {
					height: {
						start: "292",
						end: "1"
					}
				},
				onEnd: dojo.hitch(this,
				function() {
					this._animationInProgress = false;
				})
			}).play();
			dojo.query("#famous-common-menu a").attr("tabIndex", "-1");
			this._currentMenu = null;
			var _2ec = dojo.query("#famous-menu-links a.famous-active")[0];
			_2ec.focus();
			_2ec.parentNode.className = "famous-inactive";
			dojo.removeClass(_2ec, "famous-active");
			if (! ((famousweb.info.isIE && famousweb.info.ieVersion <= 6) || famousweb.info.iDevice)) {
				dojo.anim("famous-top", {
					marginTop: (!famousweb.config.megamenu.noScroll) ? (famousweb.config.config === "www" ? 74 : 90) : 0
				},
				370);
			}
		},
		onVScrollCallback: function(_2ed) {
			if (this._mouseover || this._keepexpanded) {
				return;
			}
			if (!famousweb.config.megamenu.minimizeByDefault && (!window.pageYOffset && document.documentElement.scrollTop == 0 || (window.pageYOffset && window.pageYOffset == 0))) {
				if (dojo.byId("famous-menu-links").className == "famous-access") {
					this._expandMenu();
				}
			} else {
				if (dojo.byId("famous-menu-links").className != "famous-access") {
					this._minimizeMenu();
				}
			}
		},
		onHScrollCallback: function(_2ee) {
			dojo.stopEvent(_2ee);
			if (!window.pageXOffset && window.pageXOffset != 0) {
				dojo.style(dojo.byId("famous-masthead"), "left", "-" + document.documentElement.scrollLeft + "px");
			} else {
				dojo.style(dojo.byId("famous-masthead"), "left", "-" + window.pageXOffset + "px");
			}
		},
		isTypeAheadResultDisplay: function() {
			var _2ef = false;
			if (dojo.query(".typeahead-results").some(function(node) {
				return node.style.display != "none";
			})) {
				_2ef = true;
			}
			return _2ef;
		},
		isScopePopupDisplay: function() {
			var _2f0 = dojo.query(".dijitPopup");
			if (_2f0 && _2f0.length > 0 && _2f0[0].style.display != "none") {
				return true;
			}
			return false;
		},
		_minimizeMenu: function(_2f1) {
			if (this.isTypeAheadResultDisplay() || this.isScopePopupDisplay()) {
				return;
			}
			_2f1 = _2f1 || 150;
			this._slideUp();
			if ((famousweb.info.isIE && famousweb.info.ieVersion <= 6) || famousweb.info.iDevice) {
				return false;
			}
			var _2f2 = (famousweb.config.config == "www" ? 30 : 0);
			var _2f3 = (famousweb.config.config == "www" ? 4 : 31);
			dojo.animateProperty({
				node: "famous-universal-nav",
				properties: {
					height: _2f2
				},
				duration: _2f1
			}).play();
			dojo.animateProperty({
				node: "famous-mast-options",
				properties: {
					height: _2f3
				},
				duration: _2f1
			}).play();
			dojo.animateProperty({
				node: "famous-top",
				properties: {
					marginTop: (!famousweb.config.megamenu.noScroll) ? 36 : 0
				},
				duration: _2f1,
				onEnd: function() {
					if (famousweb.config.config == "www" && famousweb.config.megamenu.icons != "none") {
						dojo.query(".famous-masthead-indicator").style("display", "block").removeClass("famous-access");
					}
				}
			}).play();
			dojo.query("#famous-mast-options li").addClass("famous-access");
			dojo.query("#famous-menu-links, #famous-search-module,#famous-arrow-logo").addClass("famous-access");
		},
		_expandMenu: function() {
			if ((famousweb.info.isIE && famousweb.info.ieVersion <= 6) || famousweb.info.iDevice) {
				return false;
			}
			var _2f4 = (famousweb.config.config == "www" ? 21 : 38);
			if (famousweb.config.config == "www" && famousweb.config.megamenu.icons != "none") {
				dojo.query(".famous-masthead-indicator").style("display", "none").addClass("famous-access");
			}
			dojo.animateProperty({
				node: "famous-universal-nav",
				properties: {
					height: 50
				},
				duration: 150
			}).play();
			dojo.animateProperty({
				node: "famous-mast-options",
				properties: {
					height: _2f4
				},
				duration: 150,
				onEnd: function() {
					dojo.query("#famous-mast-options li").removeClass("famous-access");
					dojo.query("#famous-menu-links, #famous-search-module").removeClass("famous-access");
				}
			}).play();
			dojo.animateProperty({
				node: "famous-top",
				properties: {
					marginTop: (!famousweb.config.megamenu.noScroll) ? (famousweb.config.config === "www" ? 74 : 90) : 0
				},
				duration: 150
			}).play();
			dojo.publish("/famous/dynnav/megamenu/expanded");
		},
		onMouseEnter: function(_2f5) {
			clearTimeout(this._slideUpTimer);
			this._expandTimer = setTimeout(dojo.hitch(this,
			function() {
				this._mouseleaveHandlerEnabled = true;
				this._mouseover = true;
				if (dojo.byId("famous-menu-links").className == "famous-access") {
					this._expandMenu();
				}
			}), 350);
		},
		onMouseLeave: function(_2f6) {
			if (this._expandTimer) {
				clearTimeout(this._expandTimer);
				this._expandTimer = null;
			}
			if (!this._mouseleaveHandlerEnabled) {
				return;
			}
			this._slideUpTimer = setTimeout(dojo.hitch(this,
			function() {
				this._mouseover = false;
				this._slideUp();
				(!famousweb.config.megamenu.noScroll) ? this.onVScrollCallback(_2f6) : null;
			}), this._slideUpDuration);
		},
		setKeepExpanded: function(_2f7) {
			this._keepexpanded = !!_2f7;
		},
		onError: function() {}
	});
}
if (!dojo._hasResource["famousweb.dynnav.localeselector"]) {
	dojo._hasResource["famousweb.dynnav.localeselector"] = true;
	dojo.provide("famousweb.dynnav.localeselector");
	dojo.declare("famousweb.dynnav.localeselector", [famousweb.dynnav._module], {
		_localeWidget: null,
		_lock: false,
		_tmpHandleM: null,
		_tmpHandleM: null,
		init: function() {
			return famousweb.dynnav.isServiceEnabled("localeselector");
		},
		onLoad: function() {
			var _2f8 = dojo.byId("famous-geo").children[0];
			this._tmpHandleM = dojo.connect(_2f8, "onclick", this, "_onGeoClick");
			this._tmpHandleK = dojo.connect(_2f8, "onkeypress", this, "_onGeoKeyPress");
		},
		onError: function() {
			dojo.disconnect(this._tmpHandleM);
			dojo.disconnect(this._tmpHandleK);
		},
		_loadLocales: function(_2f9) {
			var _2fa = this;
			dojo["require"]("famousweb.dynnav.localeselectorwidget");
			dojo.addOnLoad(function() {
				_2fa._localeWidget = new famousweb.dynnav.localeselectorwidget();
				famousweb.dynnav.localeselector.dataCallback = dojo.hitch(_2fa, "dataCallback");
				dojo.io.script.get({
					url: famousweb.config.dataUrl + "countrylist/" + famousweb.meta.cpi + "-" + famousweb.meta.encoding + ".js",
					timeout: famousweb.config.timeout,
					error: function(_2fb, _2fc) {
						dojo.destroy("famous-country-selector");
						location.href = "//www.famous.com/planetwide/select/selector.html";
					}
				});
				famousweb.queue.push(function() {
					return _2fa._localeWidget._data != null;
				},
				function() {
					_2fa._localeWidget.placeAt("famous-mast-options", "after");
					_2fa._localeWidget.startup();
					_2fa._localeWidget.slideDown(_2f9);
				});
			});
		},
		_onGeoClick: function(_2fd) {
			dojo.stopEvent(_2fd);
			if (this._localeWidget && this._localeWidget._animation && this._localeWidget._animation.status() == "playing") {
				return;
			}
			famousweb.util.statsHelper({
				"famousEV": "Locale selector",
				"famousEvAction": "open",
				"famousEvGroup": "Locale Selector"
			});
			if (!this._lock && (!this._localeWidget || !this._localeWidget._data)) {
				this._lock = true;
				this._loadLocales(_2fd);
			} else {
				return this._localeWidget.isVisible() ? this._localeWidget.slideUp(_2fd) : this._localeWidget.slideDown(_2fd);
			}
			return false;
		},
		_onGeoKeyPress: function(_2fe) {
			if (this._localeWidget && this._localeWidget._animation && this._localeWidget._animation.status() == "playing") {
				return;
			}
			famousweb.util.statsHelper({
				"famousEV": "Locale selector",
				"famousEvAction": "open",
				"famousEvGroup": "Locale Selector"
			});
			if ((_2fe.keyCode == dojo.keys.ENTER || _2fe.keyCode == 0 || _2fe.charOrCode == " ") && (!this._localeWidget || !this._localeWidget._data)) {
				dojo.stopEvent(_2fe);
				this._loadLocales(_2fe);
			} else {
				if ((_2fe.keyCode == dojo.keys.ENTER || _2fe.keyCode == 0 || _2fe.charOrCode == " ") && this._localeWidget.isVisible()) {
					dojo.stopEvent(_2fe);
					this._localeWidget.slideUp(_2fe);
				} else {
					if ((_2fe.keyCode == dojo.keys.ENTER || _2fe.keyCode == 0 || _2fe.charOrCode == " ") && !this._localeWidget.isVisible()) {
						dojo.stopEvent(_2fe);
						this._localeWidget.slideDown(_2fe);
					}
				}
			}
			return false;
		},
		dataCallback: function(data) {
			this._localeWidget._data = data;
		}
	});
}
if (!dojo._hasResource["famousweb.dynnav.greeting"]) {
	dojo._hasResource["famousweb.dynnav.greeting"] = true;
	dojo.provide("famousweb.dynnav.greeting");
	dojo.declare("famousweb.dynnav.greeting", [dijit._Widget, dijit._Templated, famousweb.dynnav._module], {
		welcomeMessage: "",
		_signinWidget: null,
		_registerWidget: null,
		templateString: dojo.cache("famousweb.dynnav", "templates/Greeting.html", "<span dojoAttachPoint=\"containerNode\">\n\t<p dojoAttachPoint=\"welcomeMessageNode\"></p>\n\t<span dojoAttachPoint=\"bNode\" style=\"display: none\"> [ <span dojoAttachPoint=\"linksNode\"></span> ] </span>\n</span>\n"),
		attributeMap: {
			welcomeMessage: {
				node: "welcomeMessageNode",
				type: "innerHTML"
			},
			welcomeMessageId: {
				node: "welcomeMessageNode",
				type: "attribute",
				attribute: "id"
			}
		},
		disabledCountries: [],
		registerLink: "#",
		userstate: 0,
		init: function() {
			if (famousweb.meta.source != null) {
				if (famousweb.dynnav.isServiceEnabled("greeting")) {
					this._loadGreeting();
				}
				if (famousweb.dynnav.isServiceEnabled("signin")) {
					this._loadSSO();
				}
				return true;
			}
			return false;
		},
		onLoad: function() {
			if (!dojo.byId("famous-sso")) {
				dojo.create("li", {
					id: "famous-sso"
				},
				dojo.query("#famous-mast-options ul li#famous-geo")[0], "after");
			}
			this.placeAt("famous-sso");
			this.startup();
		},
		_loadGreeting: function() {
			famousweb.dynnav.addBundleCallback(100, this, "showGreetingCallback");
		},
		_loadSSO: function() {
			famousweb.dynnav.addBundleCallback(109, this, "showSSOCallback");
		},
		clear: function() {
			this._tempCount = null;
			dojo.style(this.bNode, "display", "none");
			dojo.empty(this.linksNode);
			dojo.empty(this.welcomeMessageNode);
		},
		showGreetingCallback: function(_2ff) {
			if (!_2ff || _2ff.results.result == "novalue") {
				return;
			}
			var _300 = _2ff.results.message1;
			this.attr("welcomeMessage", _300 + " ");
			this.attr("welcomeMessageId", "famous-welcome-msg");
		},
		showSSOCallback: function(data) {
			if (!data) {
				return;
			}
			var _301 = data.results[0].fPathName;
			var _302 = data.results[0].regLinkName;
			var _303 = data.results[0].regLinkVal;
			_303 = _303.replace(/\/profile\/&/, "/profile/" + famousweb.meta.cc + "/&");
			famousweb.dynnav.greeting.userstate = data.results[0].userstate;
			var _304 = famousweb.dynnav.greeting.userstate;
			if (_304 != 4 && _301) {
				var link = this.addLink({
					innerHTML: _301,
					href: "#",
					tabIndex: -1,
					onclick: dojo.hitch(this, this._signinClicked),
					className: "famous-sso-signin"
				});
				dijit.setWaiRole(link, "button");
				dijit.setWaiState(link, "label", _301);
				dijit.setWaiState(link, "describedby", "famous-welcome-msg");
				dojo.connect(link, "onkeypress", dojo.hitch(this,
				function(_305) {
					if (_305.keyCode == dojo.keys.ENTER || _305.keyCode == 0 || _305.charOrCode == " ") {
						this._signinClicked(_305);
					}
				}));
			}
			if (_304 == 1 || _304 == 2 || _304 == 4) {
				var link = this.addLink({
					innerHTML: _302,
					href: "#",
					tabIndex: -1,
					className: "famous-sso-register"
				});
				dijit.setWaiRole(link, "button");
				dijit.setWaiState(link, "label", _302);
				dijit.setWaiState(link, "describedby", "famous-welcome-msg");
				if (_304 == 4) {
					dojo.attr(link, "href", famousweb.config.dynNavBaseUrl + _303);
					dojo.connect(link, "onclick", dojo.hitch(this, this._signoutClicked));
					dojo.connect(link, "onkeypress", dojo.hitch(this,
					function(_306) {
						if (_306.keyCode == dojo.keys.ENTER || _306.keyCode == 0 || _306.charOrCode == " ") {
							this._signoutClicked(_306);
						}
					}));
					dijit.setWaiState(link, "describedby", "famous-welcome-msg");
				}
				if (_304 == 1 || _304 == 2) {
					dojo.attr(link, "href", "#");
					dojo.connect(link, "onclick", dojo.hitch(this, this._registerClicked));
					dojo.connect(link, "onkeypress", dojo.hitch(this,
					function(_307) {
						if (_307.keyCode == dojo.keys.ENTER || _307.keyCode == 0 || _307.charOrCode == " ") {
							this._registerClicked(_307);
						}
					}));
					this.registerLink = _303;
				}
			}
		},
		_notyouClicked: function(_308) {
			dojo.stopEvent(_308);
			dojo.cookie("IBMISP", null, {
				expires: -1,
				domain: ".famous.com",
				path: "/"
			});
			this.clear();
			this.init();
			famousweb.dynnav.executeBundleCall();
		},
		_signoutClicked: function(_309) {
			dojo.stopEvent(_309);
			window.location.href = dojo.string.substitute(famousweb.config.signin.signoutUrl, famousweb.meta);
			return false;
		},
		_signinClicked: function(_30a) {
			dojo.stopEvent(_30a);
			if (!famousweb.config.signin.overlay) {
				location.href = famousweb.config.signin.formAction.replace("${page}", famousweb.util.getUrl());
				return;
			}
			if (dojo.indexOf(this.disabledCountries, famousweb.meta.cpi) != -1 || !famousweb.config.signin.overlay) {
				location.href = famousweb.config.signin.formAction;
				return;
			}
			var _30b = this;
			var _30c = function() {
				famousweb.external.signinInit({
					register: dojo.hitch(this,
					function() {
						_30b._registerClicked();
					}),
					reload: dojo.hitch(this,
					function() {
						_30b.clear();
						_30b.init();
						famousweb.dynnav.executeBundleCall();
					})
				});
			};
			if (!famousweb.external.signinInit) {
				var _30d = dojo.io.script.get({
					url: dojo.string.substitute(famousweb.config.signin.codeRepository, {
						"NAME": "signin_full"
					})
				});
				_30d.then(function() {
					_30c();
				});
				return;
			}
			_30c();
		},
		_registerClicked: function(_30e) {
			if ( !! _30e) {
				dojo.stopEvent(_30e);
			}
			if (dojo.indexOf(this.disabledCountries, famousweb.meta.cpi) != -1 || !famousweb.config.signin.overlay) {
				location.href = this.registerLink;
				return;
			}
			var _30f = this;
			var _310 = function() {
				famousweb.external.registerInit({
					reload: dojo.hitch(this,
					function() {
						_30f.clear();
						_30f.init();
						famousweb.dynnav.executeBundleCall();
					})
				});
			};
			if (!famousweb.external.registerInit) {
				var _311 = dojo.io.script.get({
					url: dojo.string.substitute(famousweb.config.signin.codeRepository, {
						"NAME": "register_full"
					})
				});
				_311.then(function() {
					_310();
				});
				return;
			}
			_310();
			return false;
		},
		_tempCount: 0,
		addLink: function(data, _312) {
			if (!this._tempCount) {
				dojo.style(this.bNode, "display", "inline");
			}
			var span = dojo.create("span", {
				className: "famous-sso-link"
			});
			if (this._tempCount) {
				dojo.query(span).addContent(" / ");
			}
			var link = dojo.create("a", data, span);
			dojo.connect(link, "onfocus", this,
			function(e) {
				e.target.tabIndex = 0;
				if (dojo.byId("famous-menu-links").className == "famous-access") {
					dojo.publish("/famous/dynnav/megamenu/expandMenu");
				}
			});
			dojo.place(span, this.linksNode);
			this._tempCount++;
			return link;
		}
	});
}
if (!dojo._hasResource["famousweb.dynnav.myinterests"]) {
	dojo._hasResource["famousweb.dynnav.myinterests"] = true;
	dojo.provide("famousweb.dynnav.myinterests");
	dojo.declare("famousweb.dynnav.myinterests", [dijit._Widget, famousweb.dynnav._module], {
		init: function() {
			return famousweb.dynnav.isServiceEnabled("myinterests");
		},
		onData: function() {
			famousweb.dynnav.addBundleCallback(104, this, "callback");
		},
		callback: function(_313) {
			if (_313.results && _313.results.length > 0) {
				var _314 = dojo.query("#famous-common-menu ul.famous-myinterest");
				if (_314) {
					for (var i = 0; i < _313.results.length; i += 1) {
						if (i > famousweb.config.megamenu.maxRows - 1) {
							break;
						}
						var li = dojo.create("li", {
							"role": "presentation"
						},
						_314[0], "last");
						var lnk = dojo.create("a", {
							"href": _313.results[i].href,
							innerHTML: _313.results[i].sname.htmlspecialchars()
						},
						li);
					}
				}
			}
		}
	});
}
if (!dojo._hasResource["famousweb.dynnav.easyaccess"]) {
	dojo._hasResource["famousweb.dynnav.easyaccess"] = true;
	dojo.provide("famousweb.dynnav.easyaccess");
	dojo.declare("famousweb.dynnav.easyaccess", [dijit._Widget, dijit._Templated, famousweb.dynnav._module], {
		_debugging: false,
		templateString: dojo.cache("famousweb.dynnav", "templates/Easyaccess.html", "<span dojoAttachPoint=\"_ezaccessNode\"></span>\n"),
		attributeMap: {},
		init: function() {
			if (famousweb.dynnav.isServiceEnabled("easyaccess")) {
				if (!famousweb.config.easyaccess.companyName) {
					this._setPublicUrl();
					if (famousweb.storage.getItem("eaCompanyName") == null || famousweb.storage.getItem("eaCompanyName") == "" || famousweb.storage.getItem("eaCompanyName") == "--noCompany--") {
						this._getAccountData();
					} else {
						dojo.addOnLoad(dojo.hitch(this,
						function() {
							this.createEAConatiner();
							this._showEasyAccessUrl();
						}));
					}
				}
				return true;
			}
			return false;
		},
		onLoad: function() {
			this.startup();
		},
		onData: function() {
			if (famousweb.config.easyaccess.companyName) {
				this.createEAConatiner();
				this._showPublicUrl();
			}
		},
		_getAccountData: function() {
			var data = {
				sid: 103
			};
			if (location.search) {
				var _315 = dojo.queryToObject(location.search.indexOf("?") == 0 ? location.search.substr(1) : location.search);
				if (_315["remote_domain"]) {
					_315["debugQstrIpcInfoCookie"] = _315["remote_domain"];
				}
				if (_315["debugQstrIpcInfoCookie"] || _315["debugQStrIpreqheader"]) {
					data = dojo.mixin({
						debugQStrIpreqheader: _315["debugQStrIpreqheader"],
						debugQstrIpcInfoCookie: _315["debugQstrIpcInfoCookie"]
					},
					data);
					this._debugging = true;
				}
			}
			famousweb.dynnav.addBundleCallback(103, this, "showAccountCallback", data);
		},
		showAccountCallback: function(_316) {
			var _317 = this._debugging ? 10 : famousweb.config.easyaccess.lifetime;
			if (!_316.results.companyName) {
				famousweb.storage.setItem("eaCompanyName", "--noCompany--", _317);
				return;
			}
			famousweb.storage.setItem("eaCompanyName", _316.results.companyName.htmlspecialchars(), _317);
			famousweb.storage.setItem("eaSiteUrl", _316.results.siteURL, _317);
			this.createEAConatiner();
			this._showEasyAccessUrl();
		},
		_showEasyAccessUrl: function() {
			var _318 = famousweb.storage.getItem("eaCompanyName");
			var url = famousweb.storage.getItem("eaSiteUrl");
			if (_318 == "--noCompany--") {
				return;
			}
			if (_318.indexOf("amp;") > -1) {
				_318 = _318.replace(/amp;/ig, "");
			}
			if (_318.indexOf("IBM") == -1) {
				var div = dojo.create("div", {
					id: "famous-site-name"
				});
				var p = dojo.create("p", {},
				div);
				var span = dojo.create("span", {
					id: "famous-site-name-back-link"
				},
				p);
				dojo.query(span).addContent(" [ ");
				var a = dojo.create("a", {
					href: url + "?cm_sp=" + famousweb.meta.dc_type + "-_-" + famousweb.meta.dc_subject + "-_-EAMH",
					innerHTML: _318,
					tabIndex: -1,
					onfocus: dojo.hitch(this,
					function(_319) {
						_319.target.tabIndex = 0;
						if (dojo.byId("famous-menu-links").className == "famous-access") {
							dojo.publish("/famous/dynnav/megamenu/expandMenu");
						}
					})
				},
				span);
				dojo.query(span).addContent(" ] ");
				dojo.place(div, this._ezaccessNode, "last");
			}
			if (famousweb.meta.famous_pageattributes.indexOf("flashlead") != -1) {
				var el = dojo.byId("famous-esite-link");
				if (el) {
					var link = dojo.create("a", {
						title: _318,
						href: url,
						onfocus: "return false;",
						innerHTML: _318
					},
					el);
				}
			}
			var el = dojo.byId("famous-related-links");
			if ( !! el) {
				var li = dojo.create("li", {},
				el);
				var link = dojo.create("a", {
					href: url,
					innerHTML: _318
				},
				li);
			}
		},
		_showPublicUrl: function() {
			var div = dojo.create("div", {
				id: "famous-site-name"
			});
			var p = dojo.create("p", {
				id: "famous-site-nm-id"
			},
			div, "first");
			p.appendChild(document.createTextNode("Easy Access: "));
			p.appendChild(document.createTextNode(famousweb.config.easyaccess.companyName));
			var _31a = dojo.cookie("pSite");
			if (_31a) {
				var span = dojo.create("span", {
					id: "famous-site-name-back-link"
				},
				div, "last");
				var a = dojo.create("a", {
					href: _31a,
					innerHTML: PMM.publicLinkNameData,
					tabIndex: -1,
					onfocus: dojo.hitch(this,
					function(_31b) {
						_31b.target.tabIndex = 0;
						if (dojo.byId("famous-menu-links").className == "famous-access") {
							dojo.publish("/famous/dynnav/megamenu/expandMenu");
						}
					}),
					"aria-describedby": "famous-site-nm-id"
				},
				span);
				span.appendChild(document.createTextNode(" [ "));
				span.appendChild(a);
				span.appendChild(document.createTextNode(" ] "));
				dojo.place(div, this._ezaccessNode, "last");
			}
			dojo.place(div, this._ezaccessNode, "last");
		},
		_setPublicUrl: function() {
			dojo.cookie("pSite", famousweb.util.getUrl(), {
				domain: ".famous.com",
				path: "/"
			});
		},
		createEAConatiner: function() {
			if (!dojo.byId("famous-alert")) {
				dojo.create("li", {
					id: "famous-alert"
				},
				dojo.query("#famous-mast-options ul")[0]);
			}
			this.placeAt("famous-alert");
		}
	});
}
if (!dojo._hasResource["famousweb.dynnav.emailthispage"]) {
	dojo._hasResource["famousweb.dynnav.emailthispage"] = true;
	dojo.provide("famousweb.dynnav.emailthispage");
	dojo.declare("famousweb.dynnav.emailthispage", [famousweb.dynnav._module], {
		init: function() {
			return true;
		},
		onData: function(data) {
			var _31c = dojo.cookie("etpConf");
			if (!_31c) {
				return false;
			}
			dojo["require"]("dijit.Dialog");
			dojo["require"]("famousweb.dynnav.emailthispagewidget");
			dojo.addOnLoad(function() {
				var _31d = new dijit.Dialog();
				var etp = new famousweb.dynnav.emailthispagewidget({
					confirmation: true,
					dialog_id: _31d.id,
					etpConf: dojo.cookie("etpConf")
				});
				_31d.attr("content", etp.domNode);
				_31d.show();
			});
		},
		showForm: function() {
			if (dojo.exists("famousweb.dynnav.emailthispagewidget") && dijit.byId("emailthispagew")) {
				var _31e = dijit.byId("emailthispagew");
				_31e.destroy();
			}
			dojo["require"]("dijit.Dialog");
			dojo["require"]("famousweb.dynnav.emailthispagewidget");
			dojo.addOnLoad(function() {
				var _31f = new dijit.Dialog();
				var etp = new famousweb.dynnav.emailthispagewidget({
					dialog_id: _31f.id
				});
				_31f.attr("content", etp.domNode);
				etp.startup();
				_31f.show();
			});
			return false;
		}
	});
}
if (!dojo._hasResource["famousweb.dynnav.footer"]) {
	dojo._hasResource["famousweb.dynnav.footer"] = true;
	dojo.provide("famousweb.dynnav.footer");
	dojo.declare("famousweb.dynnav.footer", famousweb.dynnav._module, {
		init: function() {
			if (famousweb.dynnav.isServiceEnabled("footer")) {
				return true;
			}
			return false;
		},
		onData: function(data) {
			var ul = dojo.query("#famous-footer ul");
			if (ul.length == 0) {
				return;
			}
			ul = ul[0];
			dojo.empty(ul);
			dojo.forEach(data.footerLinkData,
			function(item) {
				dojo.place("<li><a href=\"" + item.link + "\">" + item.name + "</li>", ul);
			});
		}
	});
}
if (!dojo._hasResource["famousweb.dynnav.footermenu"]) {
	dojo._hasResource["famousweb.dynnav.footermenu"] = true;
	dojo.provide("famousweb.dynnav.footermenu");
	dojo.declare("famousweb.dynnav.footermenu", famousweb.dynnav._module, {
		init: function() {
			if (famousweb.config.config === "www" && dojo.indexOf(famousweb.config.megamenu.enabledLocales, famousweb.meta.cpi) == -1) {
				return false;
			} else {
				if (famousweb.dynnav.isServiceEnabled("footermenu")) {
					return true;
				}
			}
			return false;
		},
		onLoad: function() {
			dojo.empty("famous-footer-module");
			var div = dojo.create("div", {},
			"famous-footer-module");
			dojo.style(div, {
				textAlign: "center"
			});
			dojo.create("img", {
				src: "//1.www.s81c.com/i/v17/t/loadingAnimation.gif"
			},
			div);
			dojo.style("famous-footer-module", "minHeight", "0px");
		},
		onData: function(_320) {
			var data = _320.footerMenuData;
			if (!data || data.length == 0 || data[0].title == null) {
				this.onError();
				return;
			}
			if ( !! famousweb.dynnav.PMM.accessibilityData) {
				var h2 = dojo.create("h2", {
					id: "famous-footer-res",
					className: "famous-access",
					innerHTML: _320.accessibilityData.resources
				});
			}
			var div = dojo.create("div", {
				className: "famous-columns"
			});
			var _321 = famousweb.dynnav.PMM.accessibilityData.resources;
			for (var i = 0, j = data.length; i < j; i++) {
				var col = dojo.create("div", {
					className: "famous-col-6-1"
				},
				div);
				var ul, h3;
				if (data[i].title.htmlspecialchars().trim() == "") {
					_321 = _321;
					h3 = dojo.create("h3", {
						className: "famous-access",
						innerHTML: _321,
						style: {
							display: "none"
						}
					},
					col);
					ul = dojo.create("ul", {
						style: {
							marginTop: (famousweb.config.config == "www") ? "39px": "41px"
						}
					},
					col);
				} else {
					_321 = data[i].title.htmlspecialchars();
					h3 = dojo.create("h3", {
						innerHTML: _321
					},
					col);
					ul = dojo.create("ul", {},
					col);
				}
				dijit.setWaiState(col, "label", h3.innerHTML);
				for (var k = 0, l = data[i].child.length; k < l; k++) {
					var _322 = data[i].child[k];
					var li = dojo.create("li", {},
					ul);
					var a = dojo.create("a", {
						innerHTML: _322.title.htmlspecialchars(),
						href: _322.url,
						tabIndex: "0"
					},
					li);
					dojo.connect(a, "onfocus", this,
					function(_323) {
						dojo.addClass(_323.target, "famous-active");
						dojo.addClass(_323.target.parentNode, "famous-active");
					});
					dojo.connect(a, "onblur", this,
					function(_324) {
						dojo.removeClass(_324.target, "famous-active");
						dojo.removeClass(_324.target.parentNode, "famous-active");
					});
				}
				ul.firstChild.firstChild.tabIndex = 0;
			}
			dojo.empty("famous-footer-module");
			dojo.style("famous-footer-module", "minHeight", "150px");
			dojo.place(h2, "famous-footer-module", "first");
			dojo.place(div, "famous-footer-module", "last");
		},
		onError: function() {
			dojo.empty("famous-footer-module");
		}
	});
}
if (!dojo._hasResource["famousweb.dynnav.sbs"]) {
	dojo._hasResource["famousweb.dynnav.sbs"] = true;
	dojo.provide("famousweb.dynnav.sbs");
	dojo.declare("famousweb.dynnav.sbs", famousweb.dynnav._module, {
		init: function() {
			return famousweb.dynnav.isServiceEnabled("sbs");
		},
		onData: function(_325) {
			dojo.create("div", {
				id: "famous-social-tools"
			},
			"famous-masthead", "last");
			famousweb.sbs.register(dojo.byId("famous-social-tools"));
			dojo.create("h2", {
				className: "famous-access",
				innerHTML: _325.accessibilityData.tools
			},
			"famous-social-tools", "first");
			var ul = dojo.query("#famous-social-tools ul");
			if (ul.length > 0) {
				ul = dojo.query("#famous-social-tools ul")[0];
			}
			dojo.connect(ul.firstChild.firstChild, "onfocus", this,
			function(_326) {
				ul.className = "famous-active";
			});
			dojo.query("#famous-social-tools a").forEach(function(item) {
				dijit.setWaiRole(item, "button");
				item.tabIndex = -1;
				dojo.connect(item, "onfocus", this,
				function(_327) {
					item.tabIndex = 0;
				});
			});
			ul.firstChild.firstChild.tabIndex = 0;
			dojo.connect(dojo.byId("famous-social-tools"), "onkeypress", this,
			function(_328) {
				if (_328.shiftKey && _328.charOrCode == dojo.keys.TAB) {
					ul.className = "";
					if (_328.target != ul.firstChild.firstChild) {
						ul.firstChild.firstChild.focus();
						ul.firstChild.firstChild.tabIndex = -1;
					}
				}
				if (!_328.shiftKey && _328.charOrCode == dojo.keys.TAB) {
					ul.className = "";
				}
				if (_328.keyCode == dojo.keys.DOWN_ARROW || _328.keyCode == dojo.keys.RIGHT_ARROW) {
					dojo.stopEvent(_328);
					var next = _328.target.parentNode.nextSibling;
					if (next && next.firstChild && next.firstChild.nodeName == "A") {
						next.firstChild.focus();
						_328.target.tabIndex = -1;
					} else {
						next = _328.target.parentNode.parentNode.firstChild;
						if (next && next.firstChild && next.firstChild.nodeName == "A") {
							next.firstChild.focus();
							_328.target.tabIndex = -1;
						}
					}
				}
				if (_328.keyCode == dojo.keys.UP_ARROW || _328.keyCode == dojo.keys.LEFT_ARROW) {
					dojo.stopEvent(_328);
					var prev = _328.target.parentNode.previousSibling;
					if (prev && prev.firstChild && prev.firstChild.nodeName == "A") {
						prev.firstChild.focus();
						_328.target.tabIndex = -1;
					} else {
						prev = _328.target.parentNode.parentNode.lastChild;
						if (prev && prev.firstChild && prev.firstChild.nodeName == "A") {
							prev.firstChild.focus();
							_328.target.tabIndex = -1;
						}
					}
				}
				return false;
			});
			dojo.query("#famous-social-tools").onmouseover(function(e) {
				dojo.stopEvent(e);
			});
		}
	});
}
if (!dojo._hasResource["famousweb.dynnav.language"]) {
	dojo._hasResource["famousweb.dynnav.language"] = true;
	dojo.provide("famousweb.dynnav.language");
	dojo.addOnLoad(function() {
		if (!dojo.byId("famous-language")) {
			return;
		}
		if (!famousweb.config.language) {
			return;
		}
		dojo.query("#famous-language a").forEach(function(link) {
			var val = link.lang || link.rel;
			if (!val) {
				return;
			}
			link.href = famousweb.config.language[val] ? famousweb.config.language[val] : link.href;
		});
	});
}
if (!dojo._hasResource["famousweb.dynnav.search"]) {
	dojo._hasResource["famousweb.dynnav.search"] = true;
	dojo.provide("famousweb.dynnav.search");
	dojo.declare("famousweb.dynnav.search", [famousweb.dynnav._module], {
		_original_search_text: "",
		q: null,
		init: function() {
			if (dojo.byId("famous-search-module")) {
				return true;
			}
			return false;
		},
		onLoad: function() {
			this.q = dojo.byId("q");
			if (this.q && famousweb.config.config == "www") {
				this.q.value = dojo.query("label[for=q] span")[0].innerHTML;
				this._original_search_text = this.q.value;
				dojo.connect(this.q, "onfocus", dojo.hitch(this,
				function() {
					if (this.q.value == this._original_search_text) {
						this.q.value = "";
					}
				}));
				dojo.connect(this.q, "onblur", dojo.hitch(this,
				function() {
					this.q.value = this.q.value.trim() || this._original_search_text;
				}));
			}
			if (famousweb.config.config == "www") {
				this._initScopedSearch();
			}
		},
		onData: function(data) {
			if (famousweb.config.config == "w3" && famousweb.dynnav.isServiceEnabled("facestypeahead")) {
				dojo.attr(this.q, "autocomplete", "off");
				famousweb.queue.push(function() {
					return !! window.famousweb.w3.SearchBar;
				},
				function() {
					new window.famousweb.w3.SearchBar({
						form: "famous-search-form"
					},
					"q");
				});
			}
		},
		_initScopedSearch: function() {
			var sn = dojo.byId("sn");
			if (!sn) {
				return;
			}
			var _329 = null;
			var key = null;
			var _32a = dojo.byId("famous-search");
			dojo.addClass("famous-search", "famous-with-scoped-search");
			dojo.addClass(sn, "famous-access");
			dojo.attr(sn, "tabIndex", "-1");
			var ul = dojo.create("ul", {
				id: "famous-scoped-search",
				onmouseover: function() {
					if (_329) {
						clearTimeout(_329);
					}
				},
				onmouseout: function() {
					clearTimeout(_329);
					_329 = setTimeout(function() {
						dojo.style(ul, "display", "none");
					},
					500);
				}
			},
			sn.parentNode);
			dojo.style(ul, "display", "none");
			dijit.setWaiRole(ul, "menu");
			var _32b = dojo.query("#sn > option");
			for (var i = 0, j = _32b.length; i < j; i++) {
				var li = dojo.create("li", {},
				ul);
				var a = dojo.create("a", {
					className: _32b[i].selected ? "famous-selected": "",
					rel: _32b[i].value,
					innerHTML: _32b[i].innerHTML,
					href: "#"
				},
				li);
				dijit.setWaiRole(a, "menuitem");
				_32b[i].selected ? dijit.setWaiState(a, "checked", "true") : dijit.setWaiState(a, "checked", "false");
				dojo.connect(a, "onclick", dojo.hitch(this,
				function(_32c) {
					dojo.stopEvent(_32c);
					var link = _32c.target;
					dojo.query("option", sn).removeAttr("selected");
					dojo.query("option[value=\"" + link.rel + "\"]", sn).attr("selected", "selected");
					dojo.query(".famous-selected", ul).forEach(function(item) {
						dijit.setWaiState(item, "checked", "false");
					});
					dojo.query(".famous-selected", ul).removeClass("famous-selected");
					dojo.query(".famous-active", ul).removeClass("famous-active");
					dojo.addClass(link, "famous-selected");
					dijit.setWaiState(link, "checked", "true");
					if (this.q.value == this._original_search_text) {
						this.q.value = link.innerHTML;
					}
					this._original_search_text = link.innerHTML;
					dojo.style(ul, "display", "none");
					_32a.focus();
				}));
				dojo.connect(a, "onblur", dojo.hitch(this,
				function(_32d) {
					_329 = setTimeout(function() {
						dojo.removeClass(_32d.target, "famous-active");
						dojo.style(ul, "display", "none");
					},
					500);
				}));
				dojo.connect(a, "onfocus", dojo.hitch(this,
				function(_32e) {
					clearTimeout(_329);
					dojo.addClass(_32e.target, "famous-active");
					dojo.style(ul, "display", "block");
				}));
				dojo.connect(a, "onmouseover", dojo.hitch(this,
				function(_32f) {
					dojo.query("a.famous-acive", ul).removeClass("famous-active");
					dojo.addClass(_32f.target, "famous-active");
					sn.value = _32f.target.rel;
				}));
				dojo.connect(a, "onmouseout", dojo.hitch(this,
				function(_330) {
					dojo.removeClass(_330.target, "famous-active");
					_329 = setTimeout(function() {
						sn.value = _330.target.rel;
					},
					100);
				}));
				if (_32b[i].selected) {
					this.q.value = this._original_search_text = _32b[i].innerHTML;
				}
			}
			dojo.connect(_32a, "onmouseover", dojo.hitch(this,
			function() {
				dojo.style(ul, "display", "block");
				if (_329) {
					clearTimeout(_329);
				}
			}));
			dojo.connect(_32a, "onmouseout", dojo.hitch(this,
			function() {
				_329 = setTimeout(function() {
					dojo.style(ul, "display", "none");
				},
				500);
			}));
			dojo.connect(_32a, "onfocus", dojo.hitch(this,
			function(_331) {
				if (key != "EE") {
					if (_329) {
						clearTimeout(_329);
					}
					dojo.style(ul, "display", "block");
					if (dojo.query(".famous-selected", ul)[0]) {
						dojo.query(".famous-selected", ul)[0].focus();
					}
				}
				key = null;
			}));
			dojo.connect(_32a, "onblur", dojo.hitch(this,
			function(_332) {
				_329 = setTimeout(function() {
					dojo.style(ul, "display", "none");
				},
				500);
			}));
			var _32b = dojo.query("a", ul);
			dojo.connect(ul, "onkeypress", dojo.hitch(this,
			function(_333) {
				if ((_333.keyCode == 0 || _333.charOrCode == " ") && _333.target.nodeName == "A") {
					dojo.stopEvent(_333);
					var link = _333.target;
					sn.value = link.rel;
					dojo.query(".famous-selected", ul).forEach(function(item) {
						dijit.setWaiState(item, "checked", "false");
					});
					dojo.query(".famous-selected", ul).removeClass("famous-selected");
					dojo.query(".famous-active", ul).removeClass("famous-active");
					dojo.addClass(link, "famous-selected");
					dijit.setWaiState(link, "checked", "true");
					if (this.q.value == this._original_search_text) {
						this.q.value = link.innerHTML;
					}
					this._original_search_text = link.innerHTML;
					dojo.style(ul, "display", "none");
					_32a.focus();
				}
				if (_333.keyCode == dojo.keys.ENTER || _333.keyCode == dojo.keys.ESCAPE || _333.keyCode == dojo.keys.TAB) {
					dojo.stopEvent(_333);
					key = "EE";
					_32a.focus();
					dojo.style(ul, "display", "none");
					if (_333.keyCode == dojo.keys.ENTER) {
						this.q.value = _333.target.innerHTML;
						dojo.query(".famous-selected", ul).forEach(function(item) {
							dijit.setWaiState(item, "checked", "false");
						});
						dojo.query(".famous-selected", ul).removeClass("famous-selected");
						_333.target.className = "famous-selected";
						dijit.setWaiState(_333.target, "checked", "true");
					}
				}
				if (_333.keyCode == dojo.keys.DOWN_ARROW) {
					dojo.stopEvent(_333);
					var curr = _333.target;
					for (i = 0; i < _32b.length; i++) {
						if (curr == _32b[i] && i < (_32b.length - 1)) {
							dojo.removeClass(curr, "famous-active");
							dojo.addClass(_32b[i + 1], "famous-active");
							sn.value = _32b[i + 1].rel;
							_32b[i + 1].focus();
						}
					}
				}
				if (_333.keyCode == dojo.keys.UP_ARROW) {
					dojo.stopEvent(_333);
					var curr = _333.target;
					for (i = 0; i < _32b.length; i++) {
						if (curr == _32b[i] && i > 0) {
							dojo.removeClass(curr, "famous-active");
							dojo.addClass(_32b[i - 1], "famous-active");
							sn.value = _32b[i - 1].rel;
							_32b[i - 1].focus();
						}
					}
				}
			}));
		}
	});
}
if (!dojo._hasResource["famousweb.external.noticechoice"]) {
	dojo._hasResource["famousweb.external.noticechoice"] = true;
	dojo.provide("famousweb.external.noticechoice");
	dojo.declare("famousweb.external.noticechoice", [famousweb.dynnav._module], {
		init: function() {
			if ( !! famousweb.meta.nc_questiontype && !!famousweb.meta.nc_pagedesc) {
				dojo["require"]("ext.noticechoice.nc");
				famousweb.queue.push(function() {
					return typeof(ext) == "object" && typeof(ext.noticechoice) == "object" && typeof(ext.noticechoice.nc.init) == "function";
				},
				function() {
					ext.noticechoice.nc.init();
				});
			}
			return !! famousweb.meta.nc_questiontype && !!famousweb.meta.nc_pagedesc;
		}
	});
}
if (!dojo._hasResource["famousweb.dynnav.merchandising"]) {
	dojo._hasResource["famousweb.dynnav.merchandising"] = true;
	dojo.provide("famousweb.dynnav.merchandising");
	dojo.declare("famousweb.dynnav.merchandising", [famousweb.dynnav._module], {
		init: function() {
			if (famousweb.dynnav.isServiceEnabled("merchandising")) {
				famousweb.dynnav.addBundleCallback("102", this, "_renderData", {
					industry: famousweb.meta.famous_industry,
					customersize: famousweb.meta.famous_customersize,
					specialpurpose: famousweb.meta.famous_specialpurpose,
					dc_subject: famousweb.meta.dc_subject,
					currenturl: famousweb.util.getUrl().replace(/^https?:/, ""),
					ctype: famousweb.meta.dc_type,
					ww: famousweb.meta.wwCase
				});
				return true;
			}
			return false;
		},
		_renderData: function(_334) {
			if (!dojo.byId("famous-merchandising-module")) {
				return;
			}
			if (_334.results.length != 0 && _334.results[0].result == "novalue") {
				return;
			}
			dojo.empty("famous-merchandising-module");
			var _335 = "";
			var _336 = false;
			var _337 = 0;
			dojo.forEach(_334.results,
			function(item) {
				_337++;
				if (_337 > 6) {
					return;
				}
				var _338 = "famous-forward-link";
				if (item.externalUrl == 1 || item.externalUrl == 2) {
					_338 = "famous-external-link";
				}
				var _339 = 168;
				var _33a = 64;
				var _33b = "";
				var _33c = "";
				if ( !! item.fileExtension) {
					switch (item.fileExtension) {
					case "PDF":
						_338 = "famous-pdf-link";
						break;
					case "RAM":
					case "MOV":
					case "WMV":
						_338 = "famous-video-link";
						break;
					default:
						_338 = "famous-forward-em-link";
						break;
					}
					if ( !! item.popUpDownloadLink && !!item.popUpDownloadText && famousweb.meta.encoding == "utf8") {
						var icon = item.fileExtension == "ODF" ? "famous-forward-em-link": "famous-external-link";
						_33b = "<p class=\"famous-ind-link\"><a class=\"" + icon + "\"  href=\"" + item.popUpDownloadLink + "\">" + item.popUpDownloadText + "</a></p>";
						var _33d = true;
					}
					if ( !! item.fileSize) {
						_33c = "<span class=\"famous-item-note\">&nbsp(" + item.fileSize + ")</span>";
					}
				}
				var _33e = "";
				if (item.externalUrl == 2) {
					_338 += " famous-merchandising-module-leaving-famous";
					_33e = "http://www.famous.com/links/?prompt=1&cc=" + famousweb.meta.cc + "&lc=" + famousweb.meta.lc + "&url=";
				}
				var _33f = "<input type=\"hidden\" id=\"famous-mm-spot-id\" value=\"" + item.spotid + "\" />" + "<input type=\"hidden\" id=\"famous-mm-weight\" value=\"" + item.weight + "\" />";
				if (dojo.query("#famous-merchandising-module").parents("#famous-related-content").length == 1) {
					item.tid = 99;
				}
				if (item.tid == 1) {
					_335 += "<div class=\"famous-container\">" + "<h2 class=\"famous-third\">" + item.title + "</h2>" + "<div class=\"famous-container-body\">" + "<a href=\"" + item.linkurl + "\">" + "<img border=\"0\" width=\"" + _339 + "\" height=\"" + _33a + "\" src=\"" + item.imgsrc + "?weight=" + item.weight + "\" alt=\"" + item.imgalt + "\" />" + "</a>" + "<p>" + item.description + "</p>" + "<div class=\"famous-rule\"><hr /></div>" + "<p class=\"famous-ind-link\">" + "<a class=\"" + _338 + "\" href=\"" + _33e + item.linkurl + "\" >" + item.linktext + _33c + "</a></p>" + _33b + "</div>" + _33f + "</div>";
				} else {
					if (item.tid == 2) {
						_335 += "<div class=\"famous-container famous-live-assistance\">" + "<h2>" + item.title + "</h2>" + "<div class=\"famous-container-body\">" + "<div class=\"famous-portrait\"><img border=\"0\" width=\"50\" height=\"50\" src=\"" + item.imgsrc + "?weight=" + item.weight + "\" alt=\"" + item.imgalt + "\" />" + "<p>" + item.description + "</p></div>" + "<div class=\"famous-rule\"><hr /></div>" + "<p class=\"famous-ind-link\">" + "<a class=\"" + _338 + "\" href=\"" + _33e + item.linkurl + "\" >" + item.linktext + _33c + "</a></p>" + _33b + "</div>" + _33f + "</div>";
					} else {
						if (item.tid == 3) {
							_335 += "<div class=\"famous-container famous-alternate-three\">" + "<div class=\"famous-container-body\">" + "<img border=\"0\" width=\"" + _339 + "\" height=\"" + _33a + "\" src=\"" + item.imgsrc + "?weight=" + item.weight + "\" alt=\"" + item.imgalt + "\" />" + "<h2>" + item.title + "</h2>" + "<p class=\"famous-ind-link\"><a class=\"" + _338 + "\" href=\"" + _33e + item.linkurl + "\" >" + item.description + _33c + "</a></p>" + _33b + "</div>" + _33f + "</div>";
						} else {
							if (item.tid == 4) {
								_335 += "<div class=\"famous-container\">" + "<h2 class=\"famous-third\">" + item.title + "</h2>" + "<div class=\"famous-container-body\">" + "<p>" + item.description + "</p>" + "<div class=\"famous-rule\"><hr /></div>" + "<p class=\"famous-ind-link\">" + "<a class=\"" + _338 + "\" href=\"" + _33e + item.linkurl + "\" >" + item.linktext + _33c + "</a></p>" + _33b + "</div>" + _33f + "</div>";
							} else {
								if (item.tid == 99) {
									_335 += "<div class=\"famous-container\">" + "<div class=\"famous-container-body\">" + "<a href=\"" + item.linkurl + "\">" + "<img border=\"0\" width=\"" + _339 + "\" height=\"" + _33a + "\" src=\"" + item.imgsrc + "?weight=" + item.weight + "\" alt=\"" + item.imgalt + "\" />" + "</a>" + "<h2 class=\"famous-third\">" + item.title + "</h2>" + "<p>" + item.description + "</p>" + "<p class=\"famous-ind-link\">" + "<a class=\"" + _338 + "\" href=\"" + _33e + item.linkurl + "\" >" + item.linktext + _33c + "</a></p>" + _33b + "</div>" + _33f + "</div>";
								}
							}
						}
					}
				}
			});
			dojo.byId("famous-merchandising-module").innerHTML = _335;
			if (_336) {
				dojo["require"]("famousweb.leaving");
				dojo.addOnLoad(function() {
					dojo.query("a.famous-merchandising-module-leaving-famous").onclick(famousweb.leaving.clickHandler);
				});
			}
			var temp = dojo.query("#famous-related-content div.famous-columns > div.famous-col-6-1");
			if (temp.length + _334.results.length > 6 && dojo.query("#famous-related-content div#famous-merchandising-module").length == 1) {
				var _340 = dojo.byId("famous-merchandising-module");
				dojo.addClass(_340, "famous-columns");
				dojo.removeAttr(_340, "id");
				dojo.query("div.famous-container", _340).forEach(function(i) {
					dojo.addClass(i, "famous-col-6-1");
					dojo.removeClass(i, "famous-container");
				});
				if (temp.length < 6) {
					var _341 = 6 - temp.length;
					for (var i = 0; i < _341; i += 1) {
						var box = dojo.query("div.famous-col-6-1:first-child", _340)[0];
						dojo.place(box, dojo.query("#famous-related-content div.famous-container-body div.famous-columns:famous-first")[0]);
					}
				}
				var _342 = dojo.query("div.famous-col-6-1", _340);
				if (_342.length > 6) {
					while (_342.length > 6) {
						var _343 = dojo.create("div", {
							className: "famous-columns"
						},
						_340, "after");
						for (var i = 5; i < _342.length; i += 1) {
							dojo.place(_342[i], _343);
						}
						_342 = _343;
					}
				}
				var _344 = new famousweb.ribbon({
					srcNodeRef: dojo.query("#famous-related-content div.famous-container")[0]
				});
				_344.startup();
			}
		}
	});
}
if (!dojo._hasResource["famousweb.dynnav.aria"]) {
	dojo._hasResource["famousweb.dynnav.aria"] = true;
	dojo.provide("famousweb.dynnav.aria");
	dojo.declare("famousweb.dynnav.aria", [famousweb.dynnav._module], {
		enabled: true,
		_lock: false,
		init: function() {
			return true;
		},
		onLoad: function() {
			if (!dojo.byId("famous-com")) {
				dojo.query("body")[0].id = "famous-com";
			}
			dojo.attr(dojo.byId("famous-com"), "aria-busy", "true"); ! (dojo.query("*[role=\"main\"]").length > 0) ? dojo.query("#famous-top > #famous-leadspace-head, #famous-top > #famous-content-nav, #famous-top > #famous-pcon").wrapAll("<div id=\"famous-access-cntr\"></div>") : null;
			if (dojo.byId("famous-com").className.indexOf("dijit_a11y") != -1) {
				if (famousweb.config.config == "www" && famousweb.info.v17 && !document.getElementById("famous-hcontrast-head") && !!dojo.byId("famous-masthead")) {
					dojo.place("<img src=\"//www.famous.com/i/v17/_hcontrast_head.png\" width=\"100%\" height=\"100%\" id=\"famous-hcontrast-head\">", dojo.byId("famous-masthead"), "first");
				}
			}
			return true;
		},
		onData: function(_345) {
			if (!_345) {
				return;
			}
			var _346 = _345.accessibilityData;
			if (dojo.byId("famous-masthead")) { ! (dojo.query("*[role=\"banner\"]").length > 0) ? dijit.setWaiRole("famous-masthead", "banner") : null;
			}
			var _347 = dojo.query("#famous-geo a");
			_347 = _347.length > 0 ? dojo.query("#famous-geo a")[0] : null;
			if ( !! _347) {
				dojo.query("#famous-geo span.famous-access").forEach(dojo.destroy);
				dijit.setWaiRole(_347, "button");
				dijit.setWaiState(_347, "label", famousweb.dynnav.PMM.accessibilityData.locselector + " " + _347.innerHTML + " " + famousweb.dynnav.PMM.accessibilityData.linkseld);
			}
			
			if (dojo.byId("famous-mast-options")) {
				if (famousweb.config.config == "w3") {
					var _34a = dojo.byId("famous-mast-options");
					dijit.setWaiRole(_34a, "toolbar");
					var _34b = dojo.query("#famous-mast-options ul");
					_34b.forEach(function(item) {
						dijit.setWaiRole(item, "presentation");
					});
				} else {
					var _34b = dojo.query("#famous-mast-options ul");
					if (_34b.length > 0) {
						_34b = _34b[0];
						dijit.setWaiRole(_34b, "toolbar");
					}
				}
				var _34c = dojo.query("#famous-mast-options ul li");
				_34c.forEach(function(item) {
					dijit.setWaiRole(item, "presentation");
				});
				var optA = dojo.query("#famous-mast-options a");
				optA.forEach(function(item) {
					dijit.setWaiRole(item, "button");
					item.tabIndex = -1;
					if (famousweb.config.config == "w3") {
							dojo.attr(item, "aria-label", item.innerHTML);
							(item.className != "famous-sso-signin") ? dojo.attr(item, "aria-describedby", "famous-user-name") : null;
					}
				});
				if (optA.length > 0) {
					optA[0].tabIndex = 0;
				}
				dojo.connect(dojo.byId("famous-mast-options"), "onkeypress", this,
				function(_34d) {
					var _34e = dojo.query("#famous-mast-options a");
					if (!this._lock && (_34d.keyCode == dojo.keys.RIGHT_ARROW || _34d.keyCode == dojo.keys.DOWN_ARROW || _34d.keyCode == dojo.keys.LEFT_ARROW || _34d.keyCode == dojo.keys.UP_ARROW)) {
						if (_34e.length > 0) {
							_34e.forEach(function(item) {
								item.tabIndex = -1;
								dojo.connect(item, "onfocus", this,
								function(_34f) {
									_34e.forEach(function(i) {
										i.tabIndex = -1;
									});
									item.tabIndex = 0;
								});
							});
						}
						this._lock = true;
					}
					if (_34d.keyCode == dojo.keys.RIGHT_ARROW || _34d.keyCode == dojo.keys.DOWN_ARROW) {
						dojo.stopEvent(_34d);
						var curr = _34d.target;
						if (_34e.length > 0) {
							for (var i = 0; i < _34e.length; i++) {
								if ((curr == _34e[i]) && (i < (_34e.length - 1))) {
									_34e[i + 1].focus();
									_34d.target.tabIndex = -1;
									break;
								} else {
									if ((curr == _34e[i]) && (i == (_34e.length - 1))) {
										_34e[0].focus();
										_34d.target.tabIndex = -1;
										break;
									}
								}
							}
						}
					}
					if (_34d.keyCode == dojo.keys.LEFT_ARROW || _34d.keyCode == dojo.keys.UP_ARROW) {
						dojo.stopEvent(_34d);
						var curr = _34d.target;
						if (_34e.length > 0) {
							for (var i = 0; i < _34e.length; i++) {
								if ((curr == _34e[i]) && (i > 0)) {
									_34e[i - 1].focus();
									_34d.target.tabIndex = -1;
									break;
								} else {
									if ((curr == _34e[i]) && (i == 0)) {
										_34e[_34e.length - 1].focus();
										_34d.target.tabIndex = -1;
										break;
									}
								}
							}
						}
					}
					return false;
				});
			}
			if (dojo.byId("famous-universal-nav")) {
				dijit.setWaiRole("famous-universal-nav", "navigation");
				dojo.attr("famous-universal-nav", "aria-label", _346.sitemap || "Site map");
			}
			if (dojo.byId("famous-menu-links")) {
				dojo.attr("famous-menu-links", "aria-label", _346.sitemap || "Site map");
			}
			if (dojo.byId("famous-search-module")) {
				dijit.setWaiRole("famous-search-module", "search");
				dojo.attr("famous-search-module", "aria-label", _346.famous_search || "IBM Search");
				var _350 = dojo.query("#famous-search-module a, #famous-search-module input");
				_350.forEach(function(item) {
					dojo.connect(item, "onfocus", this,
					function(_351) {
						dojo.addClass(dojo.query("#famous-search-module input#q")[0], "famous-active");
					});
					dojo.connect(item, "onblur", this,
					function(_352) {
						dojo.removeClass(dojo.query("#famous-search-module input#q")[0], "famous-active");
					});
				});
				if (famousweb.config.config == "w3") {
					var _353 = dojo.query("#famous-search-module .scopeButton");
					if (_353.length > 0) {
						dojo.connect(_353[0], "onkeypress", this,
						function(_354) {
							if (_354.shiftKey && _354.charOrCode == dojo.keys.TAB) {
								dojo.stopEvent(_354);
								var _355 = dojo.query("#famous-menu-links a");
								if (_355.length > 0) {
									_355.forEach(function(item) {
										if (item.tabIndex == 0) {
											item.focus();
										}
									});
								}
							}
						});
					}
				}
			}
			if (dojo.byId("famous-social-tools") && dojo.style(dojo.byId("famous-social-tools"), "display") != "none") {
				dijit.setWaiRole(dojo.byId("famous-social-tools"), "complementary");
				dojo.attr(dojo.byId("famous-social-tools"), "aria-label", _346.tools || "Social tools");
				var _356 = dojo.query("#famous-social-tools ul");
				if (_356.length > 0) {
					dijit.setWaiRole(_356[0], "toolbar");
				}
			}
			if (dojo.byId("famous-navigation-trail") && dojo.style(dojo.byId("famous-navigation-trail"), "display") != "none") {
				dijit.setWaiRole(dojo.byId("famous-navigation-trail"), "navigation");
				dojo.attr(dojo.byId("famous-navigation-trail"), "aria-label", _346.bcrumb || "Bread Crumbs");
			}
			if (dojo.byId("famous-content-nav") && dojo.style(dojo.byId("famous-content-nav"), "display") != "none") { (dojo.query("divfamous-content-nav #famous-primary-tabs.famous-dyntabs").length > 0) ? dijit.setWaiRole(dojo.byId("famous-content-nav"), "navigation") : null;
				var _357 = dojo.query("div#famous-content-nav #famous-primary-tabs");
				if (_357.length > 0) {
					if (dojo.style(_357[0], "display") != "none" && !(dojo.query("div#famous-content-nav #famous-primary-tabs.famous-dyntabs").length > 0)) {
						dijit.setWaiRole(dojo.byId("famous-primary-tabs"), "navigation");
					}
					var _358 = dojo.query("div#famous-content-nav #famous-secondary-tabs");
					if (_358.length > 0) {
						if (dojo.style(_358[0], "display") != "none") {
							if (dojo.query("div#famous-content-nav #famous-secondary-tabs.famous-dyntabs").length > 0) {
								var _359 = dojo.query("div#famous-content-nav #famous-primary-tabs.famous-dyntabs .famous-tabs li.famous-active a");
								if (_359.length > 0) {
									dojo.attr(_358[0], "aria-label", _359[0].innerHTML);
								}
							} else {
								dijit.setWaiRole(_358[0], "navigation");
								var _359 = dojo.query("div#famous-content-nav #famous-primary-tabs .famous-tabs li.famous-active a");
								if (_359.length > 0) {
									dojo.attr(_358[0], "aria-label", _359[0].innerHTML);
									if (dojo.query("ul.famous-tabs", _358[0])[0] && _359.length > 0) {
										dojo.attr(dojo.query("ul.famous-tabs", _358[0])[0], "aria-label", _359[0].innerHTML);
									}
								}
							}
						}
					}
				}
			}
			if (dojo.query(".famous-tabs").length > 0) {
				dojo.query(".famous-tabs").forEach(function(_35a) {
					if (_35a.parentNode.className.indexOf("famous-dyntabs") == -1) {
						dijit.setWaiRole(_35a, "toolbar");
						if (famousweb.config.config != "w3") {
							dojo.attr(_35a.parentNode, "aria-label", dojo.attr(_35a.parentNode, "aria-label") || "Tab Navigation");
							dijit.setWaiRole(_35a.parentNode, dijit.getWaiRole(_35a.parentNode) || "navigation");
						}
						dojo.query("li", _35a).forEach(function(item) {
							dijit.setWaiRole(item, "presentation");
						});
						var _35b = dojo.query("a", _35a);
						_35b.forEach(function(item) {
							dijit.setWaiRole(item, "button");
							dojo.attr(item, "aria-pressed", "false");
							item.tabIndex = -1;
							dojo.connect(item, "onfocus", this,
							function(_35c) {
								_35b.forEach(function(i) {
									i.tabIndex = -1;
								});
								item.tabIndex = 0;
							});
							dojo.connect(item, "onkeypress", this,
							function(_35d) {
								if (_35d.keyCode == dojo.keys.RIGHT_ARROW || _35d.keyCode == dojo.keys.DOWN_ARROW) {
									dojo.stopEvent(_35d);
									var curr = _35d.target;
									for (var i = 0; i < _35b.length; i++) {
										if ((curr == _35b[i]) && (i < (_35b.length - 1))) {
											_35b[i + 1].focus();
											break;
										} else {
											if ((curr == _35b[i]) && (i == (_35b.length - 1))) {
												_35b[0].focus();
												break;
											}
										}
									}
								}
								if (_35d.keyCode == dojo.keys.LEFT_ARROW || _35d.keyCode == dojo.keys.UP_ARROW) {
									dojo.stopEvent(_35d);
									var curr = _35d.target;
									for (var i = 0; i < _35b.length; i++) {
										if ((curr == _35b[i]) && (i > 0)) {
											_35b[i - 1].focus();
											break;
										} else {
											if ((curr == _35b[i]) && (i == 0)) {
												_35b[_35b.length - 1].focus();
												break;
											}
										}
									}
								}
							});
						});
						dojo.query(".famous-tabs li.famous-active a, .famous-tabs li.famous-highlight-tab a ").forEach(function(item) {
							dojo.attr(item, "aria-pressed", "true");
							item.tabIndex = 0;
						});
					}
				});
			}
			if (dojo.byId("famous-navigation") && dojo.style(dojo.byId("famous-navigation"), "display") != "none") {
				dijit.setWaiRole("famous-navigation", "navigation");
				var _35e = dojo.query("#famous-navigation h2");
				(_35e.length > 0) ? dojo.attr("famous-navigation", "aria-label", _35e[0].innerHTML) : null;
			}
			if (dojo.byId("famous-secondary-navigation") && dojo.style(dojo.byId("famous-secondary-navigation"), "display") != "none") {
				dijit.setWaiRole("famous-secondary-navigation", "navigation");
				var _35e = dojo.query("#famous-secondary-navigation h2");
				(_35e.length > 0) ? dojo.attr("famous-secondary-navigation", "aria-label", _35e[0].innerHTML) : null;
			}
			if (dojo.byId("famous-content-sidebar") && dojo.style(dojo.byId("famous-content-sidebar"), "display") != "none") {
				dijit.setWaiRole("famous-content-sidebar", "complementary");
				dojo.attr("famous-content-sidebar", "aria-label", _346.sbmain || "Content sidebar");
			}
			if (dojo.byId("famous-related-content") && dojo.style(dojo.byId("famous-related-content"), "display") != "none") {
				dijit.setWaiRole("famous-related-content", "complementary");
				dojo.attr("famous-related-content", "aria-label", _346.relcnt || "Related Content");
			}
			if (dojo.isOpera) {
				dojo.query("#famous-top a").forEach(function(i) {
					if (dojo.attr(i, "tabindex") == null) {
						i.tabIndex = 0;
					}
				});
			}
			if (dojo.byId("famous-footer-module")) {
				dijit.setWaiRole("famous-footer-module", "complementary");
				dojo.attr("famous-footer-module", "aria-labelledby", "famous-footer-res");
			}
			if (dojo.byId("famous-footer")) { ! (dojo.query("*[role=\"contentinfo\"]").length > 0) ? dijit.setWaiRole("famous-footer", "contentinfo") : null;
				dojo.attr("famous-footer", "aria-label", _346.footer || "Footer");
			} ! (dojo.query("*[role=\"main\"]").length > 0) ? dijit.setWaiRole("famous-access-cntr", "main") : null;
			dojo.attr(dojo.byId("famous-com"), "aria-busy", "false");
		}
	});
}
if (!dojo._hasResource["famousweb.dynnav._base-v17"]) {
	dojo._hasResource["famousweb.dynnav._base-v17"] = true;
	dojo.provide("famousweb.dynnav._base-v17");
}
if (!dojo._hasResource["famousweb.www.controller"]) {
	dojo._hasResource["famousweb.www.controller"] = true;
	dojo.provide("famousweb.www.controller");
}
