text: // jshint -W001
  
  "use strict";
  
  // Identifiers provided by the ECMAScript standard.
  
  exports.reservedVars = {
  	arguments : false,
  	NaN       : false
  };
  
  exports.ecmaIdentifiers = {
  	Array              : false,
  	Boolean            : false,
  	Date               : false,
  	decodeURI          : false,
  	decodeURIComponent : false,
  	encodeURI          : false,
  	encodeURIComponent : false,
  	Error              : false,
  	"eval"             : false,
  	EvalError          : false,
  	Function           : false,
  	hasOwnProperty     : false,
  	isFinite           : false,
  	isNaN              : false,
  	JSON               : false,
  	Math               : false,
  	Map                : false,
  	Number             : false,
  	Object             : false,
  	parseInt           : false,
  	parseFloat         : false,
  	RangeError         : false,
  	ReferenceError     : false,
  	RegExp             : false,
  	Set                : false,
  	String             : false,
  	SyntaxError        : false,
  	TypeError          : false,
  	URIError           : false,
  	WeakMap            : false
  };
  
  // Global variables commonly provided by a web browser environment.
  
  exports.browser = {
  	Audio                : false,
  	Blob                 : false,
  	addEventListener     : false,
  	applicationCache     : false,
  	atob                 : false,
  	blur                 : false,
  	btoa                 : false,
  	CanvasGradient       : false,
  	CanvasPattern        : false,
  	CanvasRenderingContext2D: false,
  	clearInterval        : false,
  	clearTimeout         : false,
  	close                : false,
  	closed               : false,
  	CustomEvent          : false,
  	DOMParser            : false,
  	defaultStatus        : false,
  	document             : false,
  	Element              : false,
  	ElementTimeControl   : false,
  	event                : false,
  	FileReader           : false,
  	FormData             : false,
  	focus                : false,
  	frames               : false,
  	getComputedStyle     : false,
  	HTMLElement          : false,
  	HTMLAnchorElement    : false,
  	HTMLBaseElement      : false,
  	HTMLBlockquoteElement: false,
  	HTMLBodyElement      : false,
  	HTMLBRElement        : false,
  	HTMLButtonElement    : false,
  	HTMLCanvasElement    : false,
  	HTMLDirectoryElement : false,
  	HTMLDivElement       : false,
  	HTMLDListElement     : false,
  	HTMLFieldSetElement  : false,
  	HTMLFontElement      : false,
  	HTMLFormElement      : false,
  	HTMLFrameElement     : false,
  	HTMLFrameSetElement  : false,
  	HTMLHeadElement      : false,
  	HTMLHeadingElement   : false,
  	HTMLHRElement        : false,
  	HTMLHtmlElement      : false,
  	HTMLIFrameElement    : false,
  	HTMLImageElement     : false,
  	HTMLInputElement     : false,
  	HTMLIsIndexElement   : false,
  	HTMLLabelElement     : false,
  	HTMLLayerElement     : false,
  	HTMLLegendElement    : false,
  	HTMLLIElement        : false,
  	HTMLLinkElement      : false,
  	HTMLMapElement       : false,
  	HTMLMenuElement      : false,
  	HTMLMetaElement      : false,
  	HTMLModElement       : false,
  	HTMLObjectElement    : false,
  	HTMLOListElement     : false,
  	HTMLOptGroupElement  : false,
  	HTMLOptionElement    : false,
  	HTMLParagraphElement : false,
  	HTMLParamElement     : false,
  	HTMLPreElement       : false,
  	HTMLQuoteElement     : false,
  	HTMLScriptElement    : false,
  	HTMLSelectElement    : false,
  	HTMLStyleElement     : false,
  	HTMLTableCaptionElement: false,
  	HTMLTableCellElement : false,
  	HTMLTableColElement  : false,
  	HTMLTableElement     : false,
  	HTMLTableRowElement  : false,
  	HTMLTableSectionElement: false,
  	HTMLTextAreaElement  : false,
  	HTMLTitleElement     : false,
  	HTMLUListElement     : false,
  	HTMLVideoElement     : false,
  	history              : false,
  	Image                : false,
  	length               : false,
  	localStorage         : false,
  	location             : false,
  	MessageChannel       : false,
  	MessageEvent         : false,
  	MessagePort          : false,
  	MouseEvent           : false,
  	moveBy               : false,
  	moveTo               : false,
  	MutationObserver     : false,
  	name                 : false,
  	Node                 : false,
  	NodeFilter           : false,
  	navigator            : false,
  	onbeforeunload       : true,
  	onblur               : true,
  	onerror              : true,
  	onfocus              : true,
  	onload               : true,
  	onresize             : true,
  	onunload             : true,
  	open                 : false,
  	openDatabase         : false,
  	opener               : false,
  	Option               : false,
  	parent               : false,
  	print                : false,
  	removeEventListener  : false,
  	resizeBy             : false,
  	resizeTo             : false,
  	screen               : false,
  	scroll               : false,
  	scrollBy             : false,
  	scrollTo             : false,
  	sessionStorage       : false,
  	setInterval          : false,
  	setTimeout           : false,
  	SharedWorker         : false,
  	status               : false,
  	SVGAElement          : false,
  	SVGAltGlyphDefElement: false,
  	SVGAltGlyphElement   : false,
  	SVGAltGlyphItemElement: false,
  	SVGAngle             : false,
  	SVGAnimateColorElement: false,
  	SVGAnimateElement    : false,
  	SVGAnimateMotionElement: false,
  	SVGAnimateTransformElement: false,
  	SVGAnimatedAngle     : false,
  	SVGAnimatedBoolean   : false,
  	SVGAnimatedEnumeration: false,
  	SVGAnimatedInteger   : false,
  	SVGAnimatedLength    : false,
  	SVGAnimatedLengthList: false,
  	SVGAnimatedNumber    : false,
  	SVGAnimatedNumberList: false,
  	SVGAnimatedPathData  : false,
  	SVGAnimatedPoints    : false,
  	SVGAnimatedPreserveAspectRatio: false,
  	SVGAnimatedRect      : false,
  	SVGAnimatedString    : false,
  	SVGAnimatedTransformList: false,
  	SVGAnimationElement  : false,
  	SVGCSSRule           : false,
  	SVGCircleElement     : false,
  	SVGClipPathElement   : false,
  	SVGColor             : false,
  	SVGColorProfileElement: false,
  	SVGColorProfileRule  : false,
  	SVGComponentTransferFunctionElement: false,
  	SVGCursorElement     : false,
  	SVGDefsElement       : false,
  	SVGDescElement       : false,
  	SVGDocument          : false,
  	SVGElement           : false,
  	SVGElementInstance   : false,
  	SVGElementInstanceList: false,
  	SVGEllipseElement    : false,
  	SVGExternalResourcesRequired: false,
  	SVGFEBlendElement    : false,
  	SVGFEColorMatrixElement: false,
  	SVGFEComponentTransferElement: false,
  	SVGFECompositeElement: false,
  	SVGFEConvolveMatrixElement: false,
  	SVGFEDiffuseLightingElement: false,
  	SVGFEDisplacementMapElement: false,
  	SVGFEDistantLightElement: false,
  	SVGFEFloodElement    : false,
  	SVGFEFuncAElement    : false,
  	SVGFEFuncBElement    : false,
  	SVGFEFuncGElement    : false,
  	SVGFEFuncRElement    : false,
  	SVGFEGaussianBlurElement: false,
  	SVGFEImageElement    : false,
  	SVGFEMergeElement    : false,
  	SVGFEMergeNodeElement: false,
  	SVGFEMorphologyElement: false,
  	SVGFEOffsetElement   : false,
  	SVGFEPointLightElement: false,
  	SVGFESpecularLightingElement: false,
  	SVGFESpotLightElement: false,
  	SVGFETileElement     : false,
  	SVGFETurbulenceElement: false,
  	SVGFilterElement     : false,
  	SVGFilterPrimitiveStandardAttributes: false,
  	SVGFitToViewBox      : false,
  	SVGFontElement       : false,
  	SVGFontFaceElement   : false,
  	SVGFontFaceFormatElement: false,
  	SVGFontFaceNameElement: false,
  	SVGFontFaceSrcElement: false,
  	SVGFontFaceUriElement: false,
  	SVGForeignObjectElement: false,
  	SVGGElement          : false,
  	SVGGlyphElement      : false,
  	SVGGlyphRefElement   : false,
  	SVGGradientElement   : false,
  	SVGHKernElement      : false,
  	SVGICCColor          : false,
  	SVGImageElement      : false,
  	SVGLangSpace         : false,
  	SVGLength            : false,
  	SVGLengthList        : false,
  	SVGLineElement       : false,
  	SVGLinearGradientElement: false,
  	SVGLocatable         : false,
  	SVGMPathElement      : false,
  	SVGMarkerElement     : false,
  	SVGMaskElement       : false,
  	SVGMatrix            : false,
  	SVGMetadataElement   : false,
  	SVGMissingGlyphElement: false,
  	SVGNumber            : false,
  	SVGNumberList        : false,
  	SVGPaint             : false,
  	SVGPathElement       : false,
  	SVGPathSeg           : false,
  	SVGPathSegArcAbs     : false,
  	SVGPathSegArcRel     : false,
  	SVGPathSegClosePath  : false,
  	SVGPathSegCurvetoCubicAbs: false,
  	SVGPathSegCurvetoCubicRel: false,
  	SVGPathSegCurvetoCubicSmoothAbs: false,
  	SVGPathSegCurvetoCubicSmoothRel: false,
  	SVGPathSegCurvetoQuadraticAbs: false,
  	SVGPathSegCurvetoQuadraticRel: false,
  	SVGPathSegCurvetoQuadraticSmoothAbs: false,
  	SVGPathSegCurvetoQuadraticSmoothRel: false,
  	SVGPathSegLinetoAbs  : false,
  	SVGPathSegLinetoHorizontalAbs: false,
  	SVGPathSegLinetoHorizontalRel: false,
  	SVGPathSegLinetoRel  : false,
  	SVGPathSegLinetoVerticalAbs: false,
  	SVGPathSegLinetoVerticalRel: false,
  	SVGPathSegList       : false,
  	SVGPathSegMovetoAbs  : false,
  	SVGPathSegMovetoRel  : false,
  	SVGPatternElement    : false,
  	SVGPoint             : false,
  	SVGPointList         : false,
  	SVGPolygonElement    : false,
  	SVGPolylineElement   : false,
  	SVGPreserveAspectRatio: false,
  	SVGRadialGradientElement: false,
  	SVGRect              : false,
  	SVGRectElement       : false,
  	SVGRenderingIntent   : false,
  	SVGSVGElement        : false,
  	SVGScriptElement     : false,
  	SVGSetElement        : false,
  	SVGStopElement       : false,
  	SVGStringList        : false,
  	SVGStylable          : false,
  	SVGStyleElement      : false,
  	SVGSwitchElement     : false,
  	SVGSymbolElement     : false,
  	SVGTRefElement       : false,
  	SVGTSpanElement      : false,
  	SVGTests             : false,
  	SVGTextContentElement: false,
  	SVGTextElement       : false,
  	SVGTextPathElement   : false,
  	SVGTextPositioningElement: false,
  	SVGTitleElement      : false,
  	SVGTransform         : false,
  	SVGTransformList     : false,
  	SVGTransformable     : false,
  	SVGURIReference      : false,
  	SVGUnitTypes         : false,
  	SVGUseElement        : false,
  	SVGVKernElement      : false,
  	SVGViewElement       : false,
  	SVGViewSpec          : false,
  	SVGZoomAndPan        : false,
  	TimeEvent            : false,
  	top                  : false,
  	URL                  : false,
  	WebSocket            : false,
  	window               : false,
  	Worker               : false,
  	XMLHttpRequest       : false,
  	XMLSerializer        : false,
  	XPathEvaluator       : false,
  	XPathException       : false,
  	XPathExpression      : false,
  	XPathNamespace       : false,
  	XPathNSResolver      : false,
  	XPathResult          : false
  };
  
  exports.devel = {
  	alert  : false,
  	confirm: false,
  	console: false,
  	Debug  : false,
  	opera  : false,
  	prompt : false
  };
  
  exports.worker = {
  	importScripts: true,
  	postMessage  : true,
  	self         : true
  };
  
  // Widely adopted global names that are not part of ECMAScript standard
  exports.nonstandard = {
  	escape  : false,
  	unescape: false
  };
  
  // Globals provided by popular JavaScript environments.
  
  exports.couch = {
  	"require" : false,
  	respond   : false,
  	getRow    : false,
  	emit      : false,
  	send      : false,
  	start     : false,
  	sum       : false,
  	log       : false,
  	exports   : false,
  	module    : false,
  	provides  : false
  };
  
  exports.node = {
  	__filename    : false,
  	__dirname     : false,
  	GLOBAL        : false,
  	global        : false,
  	module        : false,
  	require       : false,
  
  	// These globals are writeable because Node allows the following
  	// usage pattern: var Buffer = require("buffer").Buffer;
  
  	Buffer        : true,
  	console       : true,
  	exports       : true,
  	process       : true,
  	setTimeout    : true,
  	clearTimeout  : true,
  	setInterval   : true,
  	clearInterval : true,
  	setImmediate  : true, // v0.9.1+
  	clearImmediate: true  // v0.9.1+
  };
  
  exports.phantom = {
  	phantom      : true,
  	require      : true,
  	WebPage      : true,
  	console      : true, // in examples, but undocumented
  	exports      : true  // v1.7+
  };
  
  exports.rhino = {
  	defineClass  : false,
  	deserialize  : false,
  	gc           : false,
  	help         : false,
  	importPackage: false,
  	"java"       : false,
  	load         : false,
  	loadClass    : false,
  	print        : false,
  	quit         : false,
  	readFile     : false,
  	readUrl      : false,
  	runCommand   : false,
  	seal         : false,
  	serialize    : false,
  	spawn        : false,
  	sync         : false,
  	toint32      : false,
  	version      : false
  };
  
  exports.shelljs = {
  	target       : false,
  	echo         : false,
  	exit         : false,
  	cd           : false,
  	pwd          : false,
  	ls           : false,
  	find         : false,
  	cp           : false,
  	rm           : false,
  	mv           : false,
  	mkdir        : false,
  	test         : false,
  	cat          : false,
  	sed          : false,
  	grep         : false,
  	which        : false,
  	dirs         : false,
  	pushd        : false,
  	popd         : false,
  	env          : false,
  	exec         : false,
  	chmod        : false,
  	config       : false,
  	error        : false,
  	tempdir      : false
  };
  
  exports.typed = {
  	ArrayBuffer         : false,
  	ArrayBufferView     : false,
  	DataView            : false,
  	Float32Array        : false,
  	Float64Array        : false,
  	Int16Array          : false,
  	Int32Array          : false,
  	Int8Array           : false,
  	Uint16Array         : false,
  	Uint32Array         : false,
  	Uint8Array          : false,
  	Uint8ClampedArray   : false
  };
  
  exports.wsh = {
  	ActiveXObject            : true,
  	Enumerator               : true,
  	GetObject                : true,
  	ScriptEngine             : true,
  	ScriptEngineBuildVersion : true,
  	ScriptEngineMajorVersion : true,
  	ScriptEngineMinorVersion : true,
  	VBArray                  : true,
  	WSH                      : true,
  	WScript                  : true,
  	XDomainRequest           : true
  };
  
  // Globals provided by popular JavaScript libraries.
  
  exports.dojo = {
  	dojo     : false,
  	dijit    : false,
  	dojox    : false,
  	define   : false,
  	"require": false
  };
  
  exports.jquery = {
  	"$"    : false,
  	jQuery : false
  };
  
  exports.mootools = {
  	"$"           : false,
  	"$$"          : false,
  	Asset         : false,
  	Browser       : false,
  	Chain         : false,
  	Class         : false,
  	Color         : false,
  	Cookie        : false,
  	Core          : false,
  	Document      : false,
  	DomReady      : false,
  	DOMEvent      : false,
  	DOMReady      : false,
  	Drag          : false,
  	Element       : false,
  	Elements      : false,
  	Event         : false,
  	Events        : false,
  	Fx            : false,
  	Group         : false,
  	Hash          : false,
  	HtmlTable     : false,
  	Iframe        : false,
  	IframeShim    : false,
  	InputValidator: false,
  	instanceOf    : false,
  	Keyboard      : false,
  	Locale        : false,
  	Mask          : false,
  	MooTools      : false,
  	Native        : false,
  	Options       : false,
  	OverText      : false,
  	Request       : false,
  	Scroller      : false,
  	Slick         : false,
  	Slider        : false,
  	Sortables     : false,
  	Spinner       : false,
  	Swiff         : false,
  	Tips          : false,
  	Type          : false,
  	typeOf        : false,
  	URI           : false,
  	Window        : false
  };
  
  exports.prototypejs = {
  	"$"               : false,
  	"$$"              : false,
  	"$A"              : false,
  	"$F"              : false,
  	"$H"              : false,
  	"$R"              : false,
  	"$break"          : false,
  	"$continue"       : false,
  	"$w"              : false,
  	Abstract          : false,
  	Ajax              : false,
  	Class             : false,
  	Enumerable        : false,
  	Element           : false,
  	Event             : false,
  	Field             : false,
  	Form              : false,
  	Hash              : false,
  	Insertion         : false,
  	ObjectRange       : false,
  	PeriodicalExecuter: false,
  	Position          : false,
  	Prototype         : false,
  	Selector          : false,
  	Template          : false,
  	Toggle            : false,
  	Try               : false,
  	Autocompleter     : false,
  	Builder           : false,
  	Control           : false,
  	Draggable         : false,
  	Draggables        : false,
  	Droppables        : false,
  	Effect            : false,
  	Sortable          : false,
  	SortableObserver  : false,
  	Sound             : false,
  	Scriptaculous     : false
  };
  
  exports.yui = {
  	YUI       : false,
  	Y         : false,
  	YUI_config: false
  };
  
  