// can we convert this to AttachSpriteTo<T> ? :)
		public static IHTMLElement AttachSpriteTo(this Sprite e, INode parent)
		{
			var i = e.ToHTMLElement();

			parent.appendChild(i);

			return i;
		}
		public static IHTMLElement AttachAppletTo(this Applet e, INode parent)
		{
			var i = e.ToHTMLElement();

			parent.appendChild(i);

			return i;
		}
        public IHTMLTableColumn[] AddRowAsColumns(params string[] e)
        {
            INode[] u = new INode[e.Length];

            for (int i = 0; i < e.Length; i++)
            {
                u[i] = new ITextNode(e[i]);
            }

            return AddRowAsColumns(u);
        }
 public static void StreamLoremIpsum(INode e)
 {
     e.appendChild(new IHTMLSpan(LoremIpsum));
 }
 public void AttachTo(INode e)
 {
     e.appendChild(Element);
 }
        static bool IsNodeOrChildOfNode(INode owner, INode e)
        {
            INode p = e;

            while (p != null)
            {
                if (p == owner)
                    return true;

                p = p.parentNode;
            }

            return false;
        }
        public static IHTMLElement AttachTo(this XElement value, INode e = null)
        {
            if (e == null)
                e = Native.Document.body;

            var c = default(IHTMLDiv);

            if (e.ownerDocument != null)
            {
                c = (IHTMLDiv)e.ownerDocument.createElement("div");
            }
            else
            {
                c = new IHTMLDiv();
            }

            c.innerHTML = value.ToString();

            var x = c.firstChild;

            //Console.WriteLine("attach xml");

            e.appendChild(x);

            return (IHTMLElement)x;
        }
        // http://www.w3.org/TR/dom/#interface-mutationobserver
        public void observe(INode target, object options)
        {
            // X:\jsc.svn\examples\javascript\Test\TestShadowIFrame\TestShadowIFrame\Application.cs


        }