public HtmlProxy(FileLocation location)
		{
            _includes = new IResource[0];
            _references = _builds = _includes;
			_location = location;
			_version = ChecksumHelper.GetCombinedChecksum(location.Version, _includes, _builds);
		}
		public ExtendedCSSResource(bool? compress, bool defaultCompress, IResource[] references, IImageResource[] imageIncludes, ICSSResource[] includes, ICSSResource[] builds, FileLocation location, bool hasContent)
		{
			_defaultCompress = defaultCompress;
			_hasContent = hasContent;
			_compress = compress;
			_builds = builds;
			_references = references;
			_includes = includes;
			_imageIncludes = imageIncludes;
			_location = location;
			_version = ChecksumHelper.GetCombinedChecksum(location.Version, _includes, _builds);
		}
		public ProxyImageResource(string mime, FileLocation location) : base(mime, location) { }
		public ProxySwiffClassResource(FileLocation location, string className, IResource swiffCode) 
			: base(location, className, swiffCode)
		{
		}
		public ProxySwiffClassResource(FileLocation location, string className, IResource swiffCode, Dictionary<string, string> parameters)
			: base(location, className, swiffCode, parameters)
		{
		}
		public PlainCSSResource(IResource[] references, FileLocation location, bool hasContent)
		{
			_references = references;
			_location = location;
			_hasContent = hasContent;
		}
		public PlainFlashResource(FileLocation location)
		{
			_location = location;
		}
		public ProxyFlashResource(FileLocation location) : base(location) { }
		public PlainImageResource(string mimeType, FileLocation location)
		{
			_mime = mimeType;
			_location = location;
		}
		private static IJavaScriptCompressor compressor = new YUICompressor(); // new Dean.Edwards.ECMAScriptPacker(Dean.Edwards.ECMAScriptPacker.PackerEncoding.None, false, false);

		public PlainJavaScriptResource(IResource[] references, FileLocation location, bool hasContent)
		{
			_hasContent = hasContent;
			_references = references;
			_location = location;
		}